拉取源数据的方式
This commit is contained in:
@@ -30,6 +30,11 @@ namespace WMS.Web.Domain.Entitys
|
||||
/// </summary>
|
||||
public int BoxId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 对应金蝶的明细ID
|
||||
/// </summary>
|
||||
public int ErpDetailId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 来源单号
|
||||
/// </summary>
|
||||
|
||||
@@ -20,7 +20,11 @@ namespace WMS.Web.Domain.Entitys
|
||||
/// <summary>
|
||||
/// 单据头ID
|
||||
/// </summary>
|
||||
public int Fid { get; set; }
|
||||
public int Fid { get; set; }
|
||||
/// <summary>
|
||||
/// 对应金蝶的明细ID
|
||||
/// </summary>
|
||||
public int ErpDetailId { get; set; }
|
||||
/// <summary>
|
||||
/// 供应商Id
|
||||
/// </summary>
|
||||
|
||||
@@ -170,13 +170,14 @@ namespace WMS.Web.Domain.Services
|
||||
{
|
||||
//这里找任务单的物料条件:物料ID和应入库数量大于收货数量,防止有同样的物料数据,收货的时候 会有收货数量,只要找到没有收完的就行了
|
||||
var current_task_Det = tast.Details.Where(x => x.MaterialId == item.MaterialId && x.AccruedQty > x.ReceiveQty).FirstOrDefault();
|
||||
|
||||
//3.2映射返回明细对象
|
||||
var box_task_detail = new BoxDetailsInStockTaskDto();
|
||||
box_task_detail.SupplierId = current_task_Det == null ? 0 : current_task_Det.SupplierId;
|
||||
box_task_detail.OrgId = current_task_Det == null ? 0 : current_task_Det.OrgId;
|
||||
box_task_detail.ReceiveQty = current_task_Det == null ? 0 : current_task_Det.ReceiveQty;
|
||||
box_task_detail.AccruedQty = current_task_Det == null ? 0 : current_task_Det.AccruedQty;
|
||||
|
||||
box_task_detail.ErpDetailId= current_task_Det == null ? 0 : current_task_Det.ErpDetailId;
|
||||
|
||||
box_task_detail.MaterialId = item.MaterialId;
|
||||
box_task_detail.BoxMaterialQty = item.Qty;
|
||||
|
||||
@@ -276,8 +276,8 @@ namespace WMS.Web.Domain.Services
|
||||
var erp_list_dets= erp_list.Where(t => t.BillNo == x.SourceBillNo).ToList();
|
||||
if (erp_list_dets != null && erp_list_dets.Count != 0 && erp_list_dets.Count > x.Details.Count)
|
||||
{
|
||||
var xd_mids=x.Details.Select(xd => xd.MaterialId).ToList();
|
||||
var task_no_materials= erp_list_dets.Where(ed => !xd_mids.Contains(ed.MaterialId)).ToList();
|
||||
var xd_detids=x.Details.Select(xd => xd.ErpDetailId).ToList();
|
||||
var task_no_materials= erp_list_dets.Where(ed => !xd_detids.Contains(ed.ErpDetailId)).ToList();
|
||||
var Add_task_no_materials= _mapper.Map<List<InStockTaskDetails>>(task_no_materials);
|
||||
x.Details.AddRange(Add_task_no_materials);
|
||||
}
|
||||
@@ -292,7 +292,7 @@ namespace WMS.Web.Domain.Services
|
||||
continue;
|
||||
|
||||
//2.1.1对比erp的物料信息
|
||||
var erp_data = erp_list.Where(x => x.BillNo == data.SourceBillNo && x.MaterialId == item.MaterialId).FirstOrDefault();
|
||||
var erp_data = erp_list.Where(x =>x.ErpDetailId==item.ErpDetailId).FirstOrDefault();
|
||||
if (erp_data != null)
|
||||
{
|
||||
//2.1.2修改数量
|
||||
|
||||
@@ -163,7 +163,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶采购订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.PUR_PurchaseOrder.ToString());
|
||||
param.FieldKeys = "FBillNo,FSupplierId,FPurchaseOrgId,FMaterialId,FSOSTOCKID,FQty,FEntryNote,FCreateDate,FCHUCHANGPRICE,FSOSTOCKID.FNumber,FStockInQty,FPurchaseOrgId.FNumber";
|
||||
param.FieldKeys = "FBillNo,FSupplierId,FPurchaseOrgId,FMaterialId,FSOSTOCKID,FQty,FEntryNote,FCreateDate,FCHUCHANGPRICE,FSOSTOCKID.FNumber,FStockInQty,FPurchaseOrgId.FNumber,FPOOrderEntry_FEntryID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -233,6 +233,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.StockCode = item[9];
|
||||
lis.DeliveredQty = Convert.ToDecimal(item[10]);
|
||||
lis.OrgCode = item[11];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[12]);
|
||||
lis.Type = (int)InstockType.Purchase;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
@@ -271,7 +272,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶其他入库订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_MISCELLANEOUS.ToString());
|
||||
param.FieldKeys = "FBillNo,FStockOrgId,FMATERIALID,FSTOCKID,FSTOCKID.FNumber,FQty,FCreateDate,FEntryNote,FStockOrgId.FNumber";
|
||||
param.FieldKeys = "FBillNo,FStockOrgId,FMATERIALID,FSTOCKID,FSTOCKID.FNumber,FQty,FCreateDate,FEntryNote,FStockOrgId.FNumber,FEntryID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -336,6 +337,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.CreateTime = Convert.ToDateTime(item[6]);
|
||||
lis.Remark = item[7];
|
||||
lis.OrgCode = item[8];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[9]);
|
||||
lis.Type = (int)InstockType.Miscellaneous;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
@@ -374,7 +376,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶直接调拨入库订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_TransferDirect.ToString());
|
||||
param.FieldKeys = "FBillNo,FStockOrgId,FMaterialId,FDestStockId,FDestStockId.FNumber,FQty,FCreateDate,FNoteEntry,FStockOrgId.FNumber";
|
||||
param.FieldKeys = "FBillNo,FStockOrgId,FMaterialId,FDestStockId,FDestStockId.FNumber,FQty,FCreateDate,FNoteEntry,FStockOrgId.FNumber,FEntryID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -440,6 +442,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.CreateTime = Convert.ToDateTime(item[6]);
|
||||
lis.Remark = item[7];
|
||||
lis.OrgCode = item[8];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[9]);
|
||||
lis.Type = (int)InstockType.Stkdirecttransfers;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
@@ -478,7 +481,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶分步式入库订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_TRANSFERIN.ToString());
|
||||
param.FieldKeys = "FBillNo,FStockOrgID,FMaterialID,FDestStockID,FDestStockID.FNumber,FQty,FCreateDate,FEntryNote,FStockOrgID.FNumber";
|
||||
param.FieldKeys = "FBillNo,FStockOrgID,FMaterialID,FDestStockID,FDestStockID.FNumber,FQty,FCreateDate,FEntryNote,FStockOrgID.FNumber,FEntryID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -543,6 +546,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.CreateTime = Convert.ToDateTime(item[6]);
|
||||
lis.Remark = item[7];
|
||||
lis.OrgCode = item[8];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[9]);
|
||||
lis.Type = (int)InstockType.StktransferInst;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
@@ -582,7 +586,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶分步式入库订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_AssembledApp.ToString());
|
||||
param.FieldKeys = "FBillNo,FOwnerIdHead,FMaterialID,FStockID,FStockID.FNumber,FQty,FCreateDate,FDescription,FOwnerIdHead.FNumber";
|
||||
param.FieldKeys = "FBillNo,FOwnerIdHead,FMaterialID,FStockID,FStockID.FNumber,FQty,FCreateDate,FDescription,FOwnerIdHead.FNumber,FEntryID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -648,6 +652,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.CreateTime = Convert.ToDateTime(item[6]);
|
||||
lis.Remark = item[7];
|
||||
lis.OrgCode = item[8];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[9]);
|
||||
lis.Type = (int)InstockType.Assembled;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
@@ -686,7 +691,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
//3.获取金蝶分步式入库订单:拼接参数和条件
|
||||
var query = new ErpBillQueryDto(token_result.Data);
|
||||
var param = new ErpBillQueryParamDto(FormIdParam.STK_AssembledApp.ToString());
|
||||
param.FieldKeys = "FBillNo,FSubProOwnerIdH,FMaterialID,FStockIDSETY,FStockIDSETY.FNumber,FQtySETY,FCreateDate,FDescriptionSETY,FSubProOwnerIdH.FNumber";
|
||||
param.FieldKeys = "FBillNo,FSubProOwnerIdH,FMaterialID,FStockIDSETY,FStockIDSETY.FNumber,FQtySETY,FCreateDate,FDescriptionSETY,FSubProOwnerIdH.FNumber,FSubEntity_FDetailID";
|
||||
param.Limit = 10000;
|
||||
//查询条件:备注其中的条件值以金蝶的值为准!!!
|
||||
//1.创建时间在两天前和当天时间之间
|
||||
@@ -752,6 +757,7 @@ namespace WMS.Web.Domain.Services.Public
|
||||
lis.CreateTime = Convert.ToDateTime(item[6]);
|
||||
lis.Remark = item[7];
|
||||
lis.OrgCode = item[8];
|
||||
lis.ErpDetailId = Convert.ToInt32(item[9]);
|
||||
lis.Type = (int)InstockType.Assembled;
|
||||
erp_list.Add(lis);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user