| | |
| | | try |
| | | { |
| | | sqlCount += "SELECT DISTINCT COUNT(tb1.ID) FROM BllArrivalNotice AS tb1 "; |
| | | sqlString += "SELECT DISTINCT tb1.*,tb3.RealName as CreateUserName,tb4.RealName as UpdateUserName FROM BllArrivalNotice AS tb1 "; |
| | | sqlString += "SELECT DISTINCT tb1.*,tb3.RealName as CreateUserName,tb4.RealName as UpdateUserName,tb5.RealName as CheckUserName FROM BllArrivalNotice AS tb1 "; |
| | | sqlPub += "LEFT JOIN BllArrivalNoticeDetail AS tb2 ON tb1.ASNNo = tb2.ASNNo "; |
| | | sqlPub += "LEFT JOIN SysUserInfor AS tb3 ON tb1.CreateUser = tb3.Id "; |
| | | sqlPub += "LEFT JOIN SysUserInfor AS tb4 ON tb1.UpdateUser = tb4.Id "; |
| | | sqlPub += "LEFT JOIN SysUserInfor AS tb5 ON tb1.CheckUser = tb5.Id "; |
| | | sqlPub += $"WHERE tb1.ASNNo LIKE '%{model.ASNNo}%' AND tb2.LotNo LIKE '%{model.LotNo}%' "; |
| | | sqlPub += $"AND tb2.SkuNo LIKE '%{model.SkuNo}%' AND tb2.SkuName LIKE '%{model.SkuName}%' "; |
| | | sqlPub += $"AND tb1.CustomerName LIKE '%{model.CustomerName}%' "; |
| | |
| | | { |
| | | try |
| | | { |
| | | string skuType = string.Empty; |
| | | switch(model.Type)//0:原料 1:包材 2:成品 3:耗材 4:半成品 |
| | | { |
| | | case "0"://成品入库 |
| | | skuType = "(2)"; |
| | | break; |
| | | case "1"://采购入库 |
| | | skuType = "(0,1,3)"; |
| | | break; |
| | | case "2"://中间品入库 |
| | | skuType = "(4)"; |
| | | break; |
| | | case "3"://退货入库 |
| | | skuType = "(2)"; |
| | | break; |
| | | case "4"://车间余料退回入库 |
| | | skuType = "(0,1,3)"; |
| | | break; |
| | | case "5"://其它入库 |
| | | skuType = "(2)"; |
| | | break; |
| | | case "6"://代储入库 |
| | | skuType = "(2)"; |
| | | break; |
| | | } |
| | | |
| | | Expression<Func<SysMaterials, bool>> item = Expressionable.Create<SysMaterials>() |
| | | .AndIF(!string.IsNullOrWhiteSpace(model.IsControlled), it => it.IsControlled == model.IsControlled) |
| | | .AndIF(true, it => skuType.Contains(it.Type)) |
| | | .AndIF(true, it => it.IsDel == "0") |
| | | .And(it => it.SkuNo != "100099") |
| | | .AndIF(!string.IsNullOrWhiteSpace(model.SkuNo), |
| | |
| | | { |
| | | throw new Exception("未查询到单据明细信息"); |
| | | } |
| | | if (userId == notice.UpdateUser) |
| | | { |
| | | throw new Exception("复核失败,复核人员和关闭订单人员不能相同!"); |
| | | } |
| | | var list = new List<AsnDetail>(); |
| | | foreach (var d in detail) |
| | | { |
| | |
| | | OrderCode = notice.OrderCode, |
| | | AsnDetails = list |
| | | }; |
| | | // 通过接口发送至erp |
| | | var jsonData = JsonConvert.SerializeObject(soInfo); |
| | | |
| | | #region 通过接口发送至erp |
| | | //系统对接后放开 |
| | | /*var jsonData = JsonConvert.SerializeObject(soInfo); |
| | | |
| | | var response = HttpHelper.DoPost(url, jsonData, "入库单完成上传", "ERP"); |
| | | |
| | | //解析返回数据 |
| | | var obj = JsonConvert.DeserializeObject<ErpModel>(response); |
| | | var obj = JsonConvert.DeserializeObject<ErpModel>(response);//解析返回数据 |
| | | if (obj.Success != 0) |
| | | { |
| | | throw new Exception("上传失败" + obj.Message); |
| | | } |
| | | }*/ |
| | | #endregion |
| | | |
| | | notice.Status = "4"; |
| | | notice.UpdateTime = DateTime.Now; |
| | | notice.UpdateUser = userId; |
| | | notice.CheckTime = DateTime.Now; |
| | | notice.CheckUser = userId; |
| | | Db.Updateable(notice).ExecuteCommand(); |
| | | |
| | | new OperationASNServer().AddLogOperationAsn("入库作业", "入库单据", notice.ASNNo, "复核", $"复核了单据号为{notice.ASNNo}的单据信息", userId); |
| | | return true; |
| | | } |
| | | catch (Exception e) |