原材料/成品调拨出库接口、采购收货添加是否赠品、单价、是否自制字段
This commit is contained in:
@@ -1001,8 +1001,19 @@ namespace Tnb.WarehouseMgr
|
||||
wmsTransferOrderH.create_id = WmsWareHouseConst.ErpUserId;
|
||||
wmsTransferOrderH.create_time = DateTime.Now;
|
||||
wmsTransferOrderH.org_id = WmsWareHouseConst.AdministratorOrgId;
|
||||
await db.Insertable(wmsTransferOrderH).ExecuteCommandAsync();
|
||||
|
||||
var _erpExtendField = await db.Queryable<ErpExtendField>().InnerJoin<DictionaryDataEntity>((a, b) => a.table_id == b.Id)
|
||||
.Where((a, b) => a.transaction_type_id == input.transaction_type).Select((a, b) => b).FirstAsync();
|
||||
if (_erpExtendField != null)
|
||||
{
|
||||
wmsTransferOrderH.transaction_type = _erpExtendField.EnCode;
|
||||
}
|
||||
else
|
||||
{
|
||||
_LoggerErp2Mes.LogWarning($@"【TransferOrder】表头交易类型{input.transaction_type}在wms系统中未找到!");
|
||||
throw new AppFriendlyException($@"表头交易类型{input.transaction_type}在wms系统中未找到!", 500);
|
||||
}
|
||||
await db.Insertable(wmsTransferOrderH).ExecuteCommandAsync();
|
||||
|
||||
List<WmsTransferOrderD> wmsTransferOrderDs = new List<WmsTransferOrderD>();
|
||||
foreach (var detail in input.details)
|
||||
@@ -1047,7 +1058,7 @@ namespace Tnb.WarehouseMgr
|
||||
if (warehouse_outstock.id == WmsWareHouseConst.WAREHOUSE_YCL_ID)
|
||||
{
|
||||
WmsRawmatTransferoutstockH wmsRawmatTransferoutstockH = new WmsRawmatTransferoutstockH();
|
||||
string code = await _billRuleService.GetBillNumber("WmsRawmatTransferoutstockH");
|
||||
string code = await _billRuleService.GetBillNumber("RawmatTransferoutstock");
|
||||
wmsRawmatTransferoutstockH.bill_code = code;
|
||||
wmsRawmatTransferoutstockH.create_id = WmsWareHouseConst.ErpUserId;
|
||||
wmsRawmatTransferoutstockH.create_time = DateTime.Now;
|
||||
@@ -1056,6 +1067,9 @@ namespace Tnb.WarehouseMgr
|
||||
wmsRawmatTransferoutstockH.warehouse_code = warehouse_outstock.whcode;
|
||||
wmsRawmatTransferoutstockH.erp_pk = input.erp_pk;
|
||||
wmsRawmatTransferoutstockH.transfer_order_id = wmsTransferOrderH.bill_code;
|
||||
wmsRawmatTransferoutstockH.issuance_status = "0";
|
||||
wmsRawmatTransferoutstockH.transaction_type = _erpExtendField.EnCode;
|
||||
wmsRawmatTransferoutstockH.org_id = WmsWareHouseConst.AdministratorOrgId;
|
||||
List<WmsRawmatTransferoutstockD> wmsRawmatTransferoutstockDs = new List <WmsRawmatTransferoutstockD>();
|
||||
foreach (var detail in input.details)
|
||||
{
|
||||
@@ -1073,13 +1087,13 @@ namespace Tnb.WarehouseMgr
|
||||
throw new AppFriendlyException($@"表体明细中单位{detail.unit_code}在wms系统中未找到!", 500);
|
||||
}
|
||||
|
||||
|
||||
wmsRawmatTransferoutstockD.qty = detail.qty;
|
||||
wmsRawmatTransferoutstockD.code_batch = detail.code_batch;
|
||||
wmsRawmatTransferoutstockD.erp_line_pk = detail.erp_line_pk;
|
||||
wmsRawmatTransferoutstockD.create_id = WmsWareHouseConst.ErpUserId;
|
||||
wmsRawmatTransferoutstockD.create_time = DateTime.Now;
|
||||
wmsRawmatTransferoutstockD.lineno = detail.lineno;
|
||||
wmsRawmatTransferoutstockD.actual_qty = 0;
|
||||
|
||||
var material = await db.Queryable<BasMaterial>().Where(p => p.code == detail.material_code).FirstAsync();
|
||||
if (material != null)
|
||||
@@ -1098,15 +1112,53 @@ namespace Tnb.WarehouseMgr
|
||||
else if(warehouse_outstock.id == WmsWareHouseConst.WAREHOUSE_CP_ID)
|
||||
{
|
||||
WmsTransferOutstockH wmsTransferOutstockH = new WmsTransferOutstockH();
|
||||
string code = await _billRuleService.GetBillNumber("WmsTransferOutstockH");
|
||||
string code = await _billRuleService.GetBillNumber("WmsTransferOutstock");
|
||||
wmsTransferOutstockH.bill_code = code;
|
||||
wmsTransferOutstockH.create_id = WmsWareHouseConst.ErpUserId;
|
||||
wmsTransferOutstockH.create_time = DateTime.Now;
|
||||
wmsTransferOutstockH.warehouse_code = warehouse_outstock.whcode;
|
||||
wmsTransferOutstockH.erp_pk = input.erp_pk;
|
||||
wmsTransferOutstockH.transfer_order_id = wmsTransferOrderH.bill_code;
|
||||
wmsTransferOutstockH.issuance_status = "0";
|
||||
wmsTransferOutstockH.transaction_type = _erpExtendField.EnCode;
|
||||
wmsTransferOutstockH.org_id = WmsWareHouseConst.AdministratorOrgId;
|
||||
List<WmsTransferOutstockD> wmsTransferOutstockDs = new List<WmsTransferOutstockD>();
|
||||
foreach (var detail in input.details)
|
||||
{
|
||||
WmsTransferOutstockD wmsTransferOutstockD = new WmsTransferOutstockD();
|
||||
wmsTransferOutstockD.bill_id = wmsTransferOutstockH.id;
|
||||
var erpExtendField = await db.Queryable<ErpExtendField>().InnerJoin<DictionaryDataEntity>((a, b) => a.table_id == b.Id).Where((a, b) => a.cunitid == detail.unit_code).Select((a, b) => b).FirstAsync();
|
||||
if (erpExtendField != null)
|
||||
{
|
||||
wmsTransferOutstockD.unit_id = erpExtendField.Id;
|
||||
wmsTransferOutstockD.unit_code = erpExtendField.EnCode;
|
||||
}
|
||||
else
|
||||
{
|
||||
_LoggerErp2Mes.LogWarning($@"【TransferOrder】表体明细中单位{detail.unit_code}在wms系统中未找到!");
|
||||
throw new AppFriendlyException($@"表体明细中单位{detail.unit_code}在wms系统中未找到!", 500);
|
||||
}
|
||||
|
||||
|
||||
wmsTransferOutstockD.pr_qty = detail.qty;
|
||||
wmsTransferOutstockD.xf_qty = 0;
|
||||
wmsTransferOutstockD.qty = 0;
|
||||
wmsTransferOutstockD.pi_code = detail.code_batch;
|
||||
wmsTransferOutstockD.erp_line_pk = detail.erp_line_pk;
|
||||
wmsTransferOutstockD.create_id = WmsWareHouseConst.ErpUserId;
|
||||
wmsTransferOutstockD.create_time = DateTime.Now;
|
||||
wmsTransferOutstockD.lineno = detail.lineno;
|
||||
|
||||
var material = await db.Queryable<BasMaterial>().Where(p => p.code == detail.material_code).FirstAsync();
|
||||
if (material != null)
|
||||
{
|
||||
wmsTransferOutstockD.material_id = material.id;
|
||||
wmsTransferOutstockD.material_code = material.code;
|
||||
wmsTransferOutstockD.material_desc = material.material_specification;
|
||||
}
|
||||
|
||||
wmsTransferOutstockDs.Add(wmsTransferOutstockD);
|
||||
}
|
||||
await db.Insertable(wmsTransferOutstockH).ExecuteCommandAsync();
|
||||
await db.Insertable(wmsTransferOutstockDs).ExecuteCommandAsync();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user