diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseDService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseDService.cs index 97f5181a..47fff03a 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseDService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPurchaseDService.cs @@ -214,47 +214,95 @@ namespace Tnb.WarehouseMgr erpRequestData.Add("vdef3", wmsPurchaseH?.service_num ?? ""); List> erpRequestDataDetails = new List>(); - foreach (WmsInstockD item in allInstockDetails) - { - erpRequestDataDetails.Add(new Dictionary() - { - ["castunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? "", - ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? "", - // ["cbodywarehouseid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", - //["cbodywarehouseid"] = erpWarehouserelaHs.Find(x => x.erp_warehousecode == basWarehouse.whcode)?.erp_warehouseid ?? "", - // ["cbodywarehouseid"] = "1001A11000000002OOGU", - ["cbodywarehouseid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", - ["cgeneralbid"] = null, - ["cgeneralhid"] = null, - ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialoid ?? "", - ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialvid ?? "", - ["corpoid"] = erpOrg.corpoid, - ["corpvid"] = erpOrg.corpvid, - ["crowno"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, - ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? "", - ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", - ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? "", - ["dbizdate"] = wmsPurchaseH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), - ["nnum"] = item.qty, - ["nshouldnum"] = item.pr_qty, - // ["pk_creqwareid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", - // ["pk_creqwareid"] = "1001A11000000002OOGU", - ["pk_creqwareid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", - ["pk_group"] = erpOrg.pk_group, - ["pk_org"] = erpOrg.pk_org, - ["pk_org_v"] = erpOrg.pk_org_v, - ["pseudocolumn"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, - ["vbatchcode"] = item.code_batch, - ["csourcebillhid"] = wmsPurchaseH?.erp_arriveorder_pk ?? "", - ["csourcebillbid"] = wmsPurchaseD?.erp_arriveorder_b_pk ?? "", - ["vsourcebillcode"] = wmsPurchaseH?.bill_code ?? "", - ["lineno"] = wmsPurchaseOrderDs?.lineno ?? "", - ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", - ["flargess"] = wmsPurchaseD.gift==1, - ["ntaxprice"] = wmsPurchaseD.price, - }); - } + #region 老版代码,回传多条采购收货明细 + + //foreach (WmsInstockD item in allInstockDetails) + //{ + // erpRequestDataDetails.Add(new Dictionary() + // { + // ["castunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? "", + // ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? "", + // // ["cbodywarehouseid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + // //["cbodywarehouseid"] = erpWarehouserelaHs.Find(x => x.erp_warehousecode == basWarehouse.whcode)?.erp_warehouseid ?? "", + // // ["cbodywarehouseid"] = "1001A11000000002OOGU", + // ["cbodywarehouseid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", + // ["cgeneralbid"] = null, + // ["cgeneralhid"] = null, + // ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialoid ?? "", + // ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == item.material_id)?.cmaterialvid ?? "", + // ["corpoid"] = erpOrg.corpoid, + // ["corpvid"] = erpOrg.corpvid, + // ["crowno"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, + // ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == item.unit_id)?.Id ?? ""))?.cunitid ?? "", + // ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", + // ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? "", + // ["dbizdate"] = wmsPurchaseH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), + // ["nnum"] = item.qty, + // ["nshouldnum"] = item.pr_qty, + // // ["pk_creqwareid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + // // ["pk_creqwareid"] = "1001A11000000002OOGU", + // ["pk_creqwareid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", + // ["pk_group"] = erpOrg.pk_group, + // ["pk_org"] = erpOrg.pk_org, + // ["pk_org_v"] = erpOrg.pk_org_v, + // ["pseudocolumn"] = (allInstockDetails.FindIndex(x => x.id == item.id) + 1) * 10, + // ["vbatchcode"] = item.code_batch, + // ["csourcebillhid"] = wmsPurchaseH?.erp_arriveorder_pk ?? "", + // ["csourcebillbid"] = wmsPurchaseD?.erp_arriveorder_b_pk ?? "", + // ["vsourcebillcode"] = wmsPurchaseH?.bill_code ?? "", + // ["lineno"] = wmsPurchaseOrderDs?.lineno ?? "", + // ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", + // ["flargess"] = wmsPurchaseD.gift==1, + // ["ntaxprice"] = wmsPurchaseD.price, + + // }); + //} + #endregion + + #region 新版,只回传一条物料相同的汇总采购收货明细 + + erpRequestDataDetails.Add(new Dictionary() + { + ["castunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == allInstockDetails.First().unit_id)?.Id ?? ""))?.cunitid ?? "", + ["cbodytranstypecode"] = erpExtendFields.Find(x => x.table_id == tranTypeId)?.transaction_type_id ?? "", + // ["cbodywarehouseid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + //["cbodywarehouseid"] = erpWarehouserelaHs.Find(x => x.erp_warehousecode == basWarehouse.whcode)?.erp_warehouseid ?? "", + // ["cbodywarehouseid"] = "1001A11000000002OOGU", + ["cbodywarehouseid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", + ["cgeneralbid"] = null, + ["cgeneralhid"] = null, + ["cmaterialoid"] = erpExtendFields.Find(x => x.table_id == allInstockDetails.First().material_id)?.cmaterialoid ?? "", + ["cmaterialvid"] = erpExtendFields.Find(x => x.table_id == allInstockDetails.First().material_id)?.cmaterialvid ?? "", + ["corpoid"] = erpOrg.corpoid, + ["corpvid"] = erpOrg.corpvid, + ["crowno"] = 10, + ["cunitid"] = erpExtendFields.Find(x => x.table_id == (unitDatas.Find(x => x.EnCode == allInstockDetails.First().unit_id)?.Id ?? ""))?.cunitid ?? "", + ["cvendorid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", + ["cvendorvid"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_vid ?? "", + ["dbizdate"] = wmsPurchaseH.create_time.ToString("yyyy-MM-dd HH:mm:ss"), + ["nnum"] = allInstockDetails.Sum(r => r.qty), + ["nshouldnum"] = allInstockDetails.Sum(r => r.pr_qty), + // ["pk_creqwareid"] = erpExtendFields.Find(x => x.table_id == instock.warehouse_id)?.cotherwhid ?? "", + // ["pk_creqwareid"] = "1001A11000000002OOGU", + ["pk_creqwareid"] = wmsPurchaseD?.erp_wh_type ?? "1001A11000000002OOGU", + ["pk_group"] = erpOrg.pk_group, + ["pk_org"] = erpOrg.pk_org, + ["pk_org_v"] = erpOrg.pk_org_v, + ["pseudocolumn"] = 10, + ["vbatchcode"] = allInstockDetails.First().code_batch, + ["csourcebillhid"] = wmsPurchaseH?.erp_arriveorder_pk ?? "", + ["csourcebillbid"] = wmsPurchaseD?.erp_arriveorder_b_pk ?? "", + ["vsourcebillcode"] = wmsPurchaseH?.bill_code ?? "", + ["lineno"] = wmsPurchaseOrderDs?.lineno ?? "", + ["vfree1"] = erpExtendFields.Find(x => x.table_id == supplierId)?.supplier_id ?? "", + ["flargess"] = wmsPurchaseD.gift == 1, + ["ntaxprice"] = wmsPurchaseD.price, + + }); + + + #endregion erpRequestData.Add("dtls", erpRequestDataDetails); requestData.Add(erpRequestData); }