| | |
| | | { |
| | | // 先根据任务批次号字段获取时间戳中间表-TimeCuoInfoCom 数据,并进行后续调用,处理成功删除时间戳中间表-TimeCuoInfoCom 数据 |
| | | |
| | | //int n = 0; //行号 |
| | | int n = 0; //行号 |
| | | sendERPTaskInfoList.ForEach(a => |
| | | { |
| | | //n = n + 1; |
| | | n = n + 1; |
| | | #region 计算单据编号 |
| | | string FBillNO = ""; |
| | | int num = 0; |
| | |
| | | CMMLog.Info($"SendERPTaskCompleteFunc: {FBillNO}"); |
| | | #endregion |
| | | |
| | | CMMLog.Info($"SendERPTaskCompleteFunc:INSERT INTO T_JY_PRDINSTOCKOP (FBillNO,FSourceBillNo,FEntryID,FSEQ,FQTY,FStockNumber,FLot,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','{a.orderCode}','{a.FEntryID}','1','{a.totalNeedWeight}','CK020','{a.lotCode}','{a.productTime}','{a.invalidationTime}','{a.taskNo}','1','0')"); |
| | | string sql = $"INSERT INTO T_JY_PRDINSTOCKOP (FBillNO,FSourceBillNo,FEntryID,FSEQ,FQTY,FStockNumber,FLot,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','{a.orderCode}','{a.FEntryID}','1','{a.totalNeedWeight}','CK020','{a.lotCode}','{a.productTime}','{a.invalidationTime}','{a.taskNo}','1','0')"; |
| | | if(new SqlHelper<object>().ExecuteSql(sql, false)) |
| | | if(!string.IsNullOrEmpty(a.orderCode) && a.orderCode.Length >= 2 && a.orderCode.Substring(0,2) == "MO") |
| | | { |
| | | #region 反馈信息给mes 对接文档 https://365.kdocs.cn/l/cltzoEaznLco |
| | | bool result = sendMes(a, true); |
| | | |
| | | if (!result) |
| | | CMMLog.Info($"SendERPTaskCompleteFunc:INSERT INTO T_JY_PRDINSTOCKOP (FBillNO,FSourceBillNo,FEntryID,FSEQ,FQTY,FStockNumber,FLot,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','{a.orderCode}','{a.FEntryID}','1','{a.totalNeedWeight}','CK020','{a.lotCode}','{a.productTime}','{a.invalidationTime}','{a.taskNo}','1','0')"); |
| | | string sql = $"INSERT INTO T_JY_PRDINSTOCKOP (FBillNO,FSourceBillNo,FEntryID,FSEQ,FQTY,FStockNumber,FLot,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','{a.orderCode}','{a.FEntryID}','1','{a.totalNeedWeight}','CK020','{a.lotCode}','{a.productTime}','{a.invalidationTime}','{a.taskNo}','1','0')"; |
| | | if (new SqlHelper<object>().ExecuteSql(sql, false)) |
| | | { |
| | | //将数据存入中间表,重新发送 |
| | | MongoDBSingleton.Instance.Insert<SendMESTaskInfoTable>(new SendMESTaskInfoTable |
| | | #region 反馈信息给mes 对接文档 https://365.kdocs.cn/l/cltzoEaznLco |
| | | bool result = sendMes(a, true); |
| | | |
| | | if (!result) |
| | | { |
| | | taskNo = a.taskNo, |
| | | Bit = a.Bit, |
| | | packingMachineNumber = a.packingMachineNumber, |
| | | materiCode = a.materiCode, |
| | | materiName = a.materiName, |
| | | materialSpec = a.materialSpec, |
| | | totalWeight = a.totalWeight, |
| | | lotCode = a.lotCode, |
| | | timeStamp = a.timeStamp, |
| | | productTime = a.productTime, |
| | | invalidationTime = a.invalidationTime, |
| | | isFinish = a.isFinish, |
| | | dateTime = a.dateTime, |
| | | orderCode = a.orderCode, |
| | | totalNeedWeight = a.totalNeedWeight, |
| | | netWeight = a.netWeight, |
| | | FEntryID = a.FEntryID |
| | | }); |
| | | //将数据存入中间表,重新发送 |
| | | MongoDBSingleton.Instance.Insert<SendMESTaskInfoTable>(new SendMESTaskInfoTable |
| | | { |
| | | taskNo = a.taskNo, |
| | | Bit = a.Bit, |
| | | packingMachineNumber = a.packingMachineNumber, |
| | | materiCode = a.materiCode, |
| | | materiName = a.materiName, |
| | | materialSpec = a.materialSpec, |
| | | totalWeight = a.totalWeight, |
| | | lotCode = a.lotCode, |
| | | timeStamp = a.timeStamp, |
| | | productTime = a.productTime, |
| | | invalidationTime = a.invalidationTime, |
| | | isFinish = a.isFinish, |
| | | dateTime = a.dateTime, |
| | | orderCode = a.orderCode, |
| | | totalNeedWeight = a.totalNeedWeight, |
| | | netWeight = a.netWeight, |
| | | FEntryID = a.FEntryID |
| | | }); |
| | | } |
| | | #endregion |
| | | |
| | | //插入成功 清除中间表 |
| | | MongoDBSingleton.Instance.Remove<SendErpTaskInfoTable>(Query.EQ("_id", a._id), "SendErpTaskInfoTable", RemoveFlags.None); |
| | | MongoDBSingleton.Instance.Remove<TimeCuoInfoCom>(Query.EQ("timeStamp", int.Parse(a.timeStamp)), "TimeCuoInfoCom", RemoveFlags.None); |
| | | } |
| | | #endregion |
| | | } |
| | | else |
| | | { |
| | | CMMLog.Info($"SendERPTaskCompleteFunc:INSERT INTO T_JY_SPInStockADD (FBillNO,FStockOrgNumber,FPrdOrgNumber,FSeq,FMaterialNumber,Flot,FInStockType,FMustQty,FStockNumber,FWorkShopNumber,FStockStatus,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','02','02','{n}','{a.materiCode}','{a.lotCode}','1','{a.totalWeight}','CK020','BM000161','1','{a.productTime}','{a.invalidationTime}','{a.taskNo}',{sendERPTaskInfoList.Count},'0')"); |
| | | string sql = $"INSERT INTO T_JY_SPInStockADD (FBillNO,FStockOrgNumber,FPrdOrgNumber,FSeq,FMaterialNumber,Flot,FInStockType,FMustQty,FStockNumber,FWorkShopNumber,FStockStatus,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','02','02','{n}','{a.materiCode}','{a.lotCode}','1','{a.totalWeight}','CK020','BM000161','1','{a.productTime}','{a.invalidationTime}','{a.taskNo}',{sendERPTaskInfoList.Count},'0')"; |
| | | new SqlHelper<object>().ExecuteSql(sql, false); |
| | | |
| | | //插入成功 清除中间表 |
| | | MongoDBSingleton.Instance.Remove<SendErpTaskInfoTable>(Query.EQ("_id", a._id), "SendErpTaskInfoTable", RemoveFlags.None); |
| | | MongoDBSingleton.Instance.Remove<TimeCuoInfoCom>(Query.EQ("timeStamp", int.Parse(a.timeStamp)), "TimeCuoInfoCom", RemoveFlags.None); |
| | | } |
| | | |
| | | }); |
| | | } |
| | | } |