拉取源数据的方式

This commit is contained in:
tongfei
2023-12-01 14:20:17 +08:00
parent 5f6d1d0de0
commit b6052dea49
15 changed files with 110 additions and 21 deletions

View File

@@ -92,17 +92,18 @@ namespace WMS.Web.Api.Controllers
// return "";
//return JsonConvert.SerializeObject(result.Data);
var bis = new List<string>() { "CGDD224198", "CGDD224199", "CGDD224200", "CGDD224202", "SUB00006680", "CGDD224203", "SUB000066801", "CGDD224204", "CGDD224205", "CGDD224206", "CGDD224207", "SUB00006681", "CGDD224208", "CGDD224209", "SUB00006682", "CGDD224210", "CGDD224211", "CGDD224212", "CGDD224213", "CGDD224216", "SUB00006683", "CGDD224218", "CGDD224219", "CGDD224220", "CGDD224221", "CGDD224222", "CGDD224223", "CGDD224224", "CGDD224225", "CGDD224226", "CGDD224227", "CGDD224229", "CGDD224230", "CGDD224231", "CGDD224232", "CGDD224233", "SUB00006685", "SUB00006686", "CGDD224234", "CGDD224235", "CGDD224236", "CGDD224237", "CGDD224238", "CGDD224239", "CGDD224240", "CGDD224241", "CGDD224242", "CGDD224243", "CGDD224244", "CGDD224245", "CGDD224246", "CGDD224247", "CGDD224248", "CGDD224249", "CGDD224250", "CGDD224251" };
// var result = await this._erpService.BillQueryForSupplier();
var result = await this._erpService.BillQueryForPurchaseInStock(bis);
var result= await this._erpService.BillQueryForAssembledApp_Assembly();
//var result= await this._erpService.BillQueryForAssembledApp_Assembly();
var result2 = await this._erpService.BillQueryForAssembledApp_Disassembly();
//var result2 = await this._erpService.BillQueryForAssembledApp_Disassembly();
var list= result.Data.ToList();
list.AddRange(result2.Data.ToList());
//var list= result.Data.ToList();
//list.AddRange(result2.Data.ToList());
var tt = JsonConvert.SerializeObject(list);
var tt = JsonConvert.SerializeObject(result);
//var tttt = new List<string>() { "ABCD14200999" };
//var boxInventorys = await _boxInventoryRepositories.Get(142);

View File

@@ -650,6 +650,11 @@
组织
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Erp.ErpInStockResultDto.ErpDetailId">
<summary>
erp的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Erp.ErpInStockResultDto.OrgCode">
<summary>
组织编码
@@ -1275,6 +1280,11 @@
组织ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.BoxDetailsInStockTaskDto.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.BoxDetailsInStockTaskDto.MaterialId">
<summary>
物料ID
@@ -1550,6 +1560,11 @@
明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoNoPurchaseDetailsQueryResponse.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoNoPurchaseDetailsQueryResponse.SupplierId">
<summary>
供应商
@@ -1620,6 +1635,11 @@
明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoQueryResponse.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoQueryResponse.SupplierId">
<summary>
供应商
@@ -2020,6 +2040,11 @@
供应商
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStock.NoPurchaseShelfDetailsRequest.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStock.NoPurchaseShelfDetailsRequest.Qty">
<summary>
入库数量
@@ -2072,7 +2097,7 @@
</member>
<member name="P:WMS.Web.Core.Dto.InStock.SaveInStockDetailsRequest.OrgCode">
<summary>
组织编码:这个值是可以通过模糊搜索仓位带出来仓库也会一并带出这个值
组织编码:仓位-仓库-带出
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStock.SaveInStockDetailsRequest.StockCode">
@@ -2085,6 +2110,11 @@
仓位ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStock.SaveInStockDetailsRequest.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStock.SaveInStockDetailsRequest.MaterialId">
<summary>
物料Id

View File

@@ -570,6 +570,11 @@
箱ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.InStockDetails.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.InStockDetails.SourceBillNo">
<summary>
来源单号
@@ -758,6 +763,11 @@
单据头ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.InStockTaskDetails.ErpDetailId">
<summary>
对应金蝶的明细ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.InStockTaskDetails.SupplierId">
<summary>
供应商Id

View File

@@ -18,6 +18,11 @@ namespace WMS.Web.Core.Dto.Erp
/// </summary>
public int OrgId { get; set; }
/// <summary>
/// erp的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 组织编码
/// </summary>

View File

@@ -83,6 +83,11 @@ namespace WMS.Web.Core.Dto.InStock
[Required(ErrorMessage = "供应商不能为空")]
public int SupplierId { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 入库数量
///</summary>

View File

@@ -40,7 +40,7 @@ namespace WMS.Web.Core.Dto.InStock
public int OrgId { get; set; }
/// <summary>
/// 组织编码:这个值是可以通过模糊搜索仓位带出来仓库也会一并带出这个值
/// 组织编码:仓位-仓库-带出
/// </summary>
public string OrgCode { get; set; }
@@ -55,6 +55,11 @@ namespace WMS.Web.Core.Dto.InStock
[Required(ErrorMessage = " 仓位不能为空")]
public int SubStockId { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 物料Id
///</summary>

View File

@@ -45,6 +45,11 @@ namespace WMS.Web.Core.Dto.InStockTask
/// </summary>
public int OrgId { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 物料ID
/// </summary>

View File

@@ -72,6 +72,11 @@ namespace WMS.Web.Core.Dto.InStockTask
/// </summary>
public int DetailsId { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 供应商
/// </summary>

View File

@@ -18,6 +18,11 @@ namespace WMS.Web.Core.Dto.InStockTask
/// </summary>
public int DetailsId { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 供应商
/// </summary>

View File

@@ -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>

View File

@@ -22,6 +22,10 @@ namespace WMS.Web.Domain.Entitys
/// </summary>
public int Fid { get; set; }
/// <summary>
/// 对应金蝶的明细ID
/// </summary>
public int ErpDetailId { get; set; }
/// <summary>
/// 供应商Id
/// </summary>
public int SupplierId { get; set; }

View File

@@ -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;

View File

@@ -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修改数量

View File

@@ -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);
}

View File

@@ -308,7 +308,8 @@ namespace WMS.Web.Repositories
DeliveredQty = s.detail.DeliveredQty,
ReceiveQty = s.detail.ReceiveQty,
AvailableQty = s.detail.AccruedQty - s.detail.ReceiveQty - s.detail.DeliveredQty,
Remark = s.detail.Remark
Remark = s.detail.Remark,
ErpDetailId=s.detail.ErpDetailId
}).ToListAsync();
return list;
@@ -363,7 +364,8 @@ namespace WMS.Web.Repositories
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
Qty = s.AccruedQty,
DeliveredQty = s.DeliveredQty,
Remark = s.Remark
Remark = s.Remark,
ErpDetailId=s.ErpDetailId
}).ToListAsync();
//找箱
var task_box = await _context.InstockTaskBox.Where(x => ids.Contains(x.TaskId))