From 575bfbda90f2ba66dd0cb18be5815c864cf67350 Mon Sep 17 00:00:00 2001
From: tongfei <244188119@qq.com>
Date: Sat, 11 Nov 2023 14:31:53 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=EF=BC=9A?=
=?UTF-8?q?=E5=85=B6=E4=BB=96=E5=85=A5=E5=BA=93=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/WMS.Web.Api/Controllers/TestController.cs | 4 +-
src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml | 2 +-
src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml | 5 ---
src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml | 7 ++++
.../Dto/Erp/ErpMiscellaneousDto.cs | 5 +--
src/WMS.Web.Domain/Mappers/InStockMapper.cs | 40 +++++++++++--------
.../QuartzJob/InStockOrderQuartzJob.cs | 23 ++++++++++-
.../Services/InStockTaskService.cs | 10 ++---
.../Services/Public/ErpService.cs | 23 +++++------
9 files changed, 73 insertions(+), 46 deletions(-)
diff --git a/src/WMS.Web.Api/Controllers/TestController.cs b/src/WMS.Web.Api/Controllers/TestController.cs
index 80d0cf7a..49e5eb59 100644
--- a/src/WMS.Web.Api/Controllers/TestController.cs
+++ b/src/WMS.Web.Api/Controllers/TestController.cs
@@ -64,7 +64,7 @@ namespace WMS.Web.Api.Controllers
///
- /// 测试:同步采购单的入库
+ /// 测试:同步
///
///
[HttpGet]
@@ -77,7 +77,7 @@ namespace WMS.Web.Api.Controllers
bool isTransaction = false;
//3.同步数据
- var result = await _inStockTaskService.SsynPurchaseInStock(null,isTransaction);
+ var result = await _inStockTaskService.SysnMiscellaneous(null,isTransaction);
if (!result.IsSuccess) isRollback = true;
//4.提交事务
diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml
index a6143f36..222acae4 100644
--- a/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml
+++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml
@@ -401,7 +401,7 @@
- 测试:同步采购单的入库
+ 测试:同步
diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml
index 4bb85e65..82f4f3d0 100644
--- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml
+++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml
@@ -555,11 +555,6 @@
erp:其他入库单
-
-
- id
-
-
单据编号
diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
index 548be548..b99fee19 100644
--- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
+++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
@@ -2463,6 +2463,13 @@
+
+
+ 同步:入库单类型的数据(采购订单,其他入库单,)
+
+
+
+
执行方法
diff --git a/src/WMS.Web.Core/Dto/Erp/ErpMiscellaneousDto.cs b/src/WMS.Web.Core/Dto/Erp/ErpMiscellaneousDto.cs
index e52f6d38..b7275f6f 100644
--- a/src/WMS.Web.Core/Dto/Erp/ErpMiscellaneousDto.cs
+++ b/src/WMS.Web.Core/Dto/Erp/ErpMiscellaneousDto.cs
@@ -7,12 +7,9 @@ namespace WMS.Web.Core.Dto.Erp
///
/// erp:其他入库单
///
+ [Serializable]
public class ErpMiscellaneousDto
{
- ///
- /// id
- ///
- public int Id { get; set; }
///
/// 单据编号
///
diff --git a/src/WMS.Web.Domain/Mappers/InStockMapper.cs b/src/WMS.Web.Domain/Mappers/InStockMapper.cs
index 915d594c..b39b17ab 100644
--- a/src/WMS.Web.Domain/Mappers/InStockMapper.cs
+++ b/src/WMS.Web.Domain/Mappers/InStockMapper.cs
@@ -2,6 +2,7 @@
using System;
using System.Collections.Generic;
using System.Text;
+using WMS.Web.Core.Dto.Erp;
using WMS.Web.Core.Dto.Erp.Purchase;
using WMS.Web.Core.Dto.InStock;
using WMS.Web.Core.Dto.InStockTask;
@@ -20,16 +21,6 @@ namespace WMS.Web.Domain.Mappers
.ForMember(x => x.Boxs, opt => opt.Ignore())
.ForMember(x => x.Details, opt => opt.Ignore());
CreateMap();
- //.ForMember(x => x.SupplierId, opt => opt.Ignore())
- //.ForMember(x => x.OrgId, opt => opt.Ignore())
- //.ForMember(x => x.StockId, opt => opt.Ignore())
- //.ForMember(x => x.StockCode, opt => opt.Ignore())
- //.ForMember(x => x.FactoryPrice, opt => opt.Ignore())
- //.ForMember(x => x.AccruedQty, opt => opt.Ignore())
- //.ForMember(x => x.DeliveredQty, opt => opt.Ignore())
- //.ForMember(x => x.RealityQty, opt => opt.Ignore())
- //.ForMember(x => x.Remark, opt => opt.Ignore())
- //.ForMember(x => x.CreateTime, opt => opt.Ignore());
CreateMap();
CreateMap()
.ForMember(x => x.Boxs, opt => opt.Ignore())
@@ -39,17 +30,20 @@ namespace WMS.Web.Domain.Mappers
- CreateMap().ReverseMap();
- CreateMap()
- .ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.FBillNo))
- .ForMember(x => x.CreateTime, ops => ops.MapFrom(x => x.FCreateDate));
+ CreateMap().ReverseMap();
CreateMap()
.ForMember(x => x.Details, ops => ops.Ignore());
-
CreateMap();
+ #region ERP-dto映射到wsm的任务表中
+
+ //ERP采购订单
+ CreateMap()
+ .ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.FBillNo))
+ .ForMember(x => x.CreateTime, ops => ops.MapFrom(x => x.FCreateDate));
+
CreateMap()
.ForMember(x => x.SupplierId, ops => ops.MapFrom(x => x.FSupplierId))
.ForMember(x => x.OrgId, ops => ops.MapFrom(x => x.FPurchaseOrgId))
@@ -60,7 +54,21 @@ namespace WMS.Web.Domain.Mappers
.ForMember(x => x.AccruedQty, ops => ops.MapFrom(x => x.FQty))
.ForMember(x => x.Remark, ops => ops.MapFrom(x => x.FEntryNote))
.ReverseMap();
-
+
+
+ //ERP其他入库单
+ CreateMap()
+ .ForMember(x => x.OrgId, ops => ops.MapFrom(x => x.StockOrgId))
+ .ForMember(x => x.MaterialId, ops => ops.MapFrom(x => x.MaterialId))
+ .ForMember(x => x.StockCode, ops => ops.MapFrom(x => x.StockCode))
+ .ForMember(x => x.AccruedQty, ops => ops.MapFrom(x => x.Qty))
+ .ForMember(x => x.Remark, ops => ops.MapFrom(x => x.Remark));
+
+ CreateMap()
+ .ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.BillNo))
+ .ForMember(x => x.CreateTime, ops => ops.MapFrom(x => x.CreateTime));
+ #endregion
+
}
}
}
diff --git a/src/WMS.Web.Domain/QuartzJob/InStockOrderQuartzJob.cs b/src/WMS.Web.Domain/QuartzJob/InStockOrderQuartzJob.cs
index ebc2734c..9e0a858b 100644
--- a/src/WMS.Web.Domain/QuartzJob/InStockOrderQuartzJob.cs
+++ b/src/WMS.Web.Domain/QuartzJob/InStockOrderQuartzJob.cs
@@ -7,6 +7,7 @@ using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
+using WMS.Web.Core.Internal.Results;
using WMS.Web.Domain.Infrastructure;
using WMS.Web.Domain.IService;
using WMS.Web.Domain.IService.Public;
@@ -55,7 +56,7 @@ namespace WMS.Web.Domain.QuartzJob
var begindatetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"同步金蝶入库单数据:执行开始时间->{begindatetime}");
//3.同步数据
- var result = await _inStockTaskService.SsynPurchaseInStock(null,isTransaction);
+ var result = await this.InStock(isTransaction);
if (!result.IsSuccess)
{
_logger.LogInformation($"同步金蝶入库单数据:执行失败->{result.Message}");
@@ -76,5 +77,25 @@ namespace WMS.Web.Domain.QuartzJob
}
}
+
+ ///
+ /// 同步:入库单类型的数据(采购订单,其他入库单,)
+ ///
+ ///
+ ///
+ public async Task InStock(bool isTransaction)
+ {
+ //1.同步数据:采购订单
+ var purchase_result = await _inStockTaskService.SsynPurchaseInStock(null, isTransaction);
+ if (!purchase_result.IsSuccess)
+ return Result.ReFailure(purchase_result.Message,purchase_result.Status);
+
+ //2.同步数据:其他入库单
+ var miscellaneou_result = await _inStockTaskService.SysnMiscellaneous(null, isTransaction);
+ if (!miscellaneou_result.IsSuccess)
+ return Result.ReFailure(miscellaneou_result.Message, miscellaneou_result.Status);
+
+ return Result.ReSuccess();
+ }
}
}
diff --git a/src/WMS.Web.Domain/Services/InStockTaskService.cs b/src/WMS.Web.Domain/Services/InStockTaskService.cs
index 1fa352c2..41109096 100644
--- a/src/WMS.Web.Domain/Services/InStockTaskService.cs
+++ b/src/WMS.Web.Domain/Services/InStockTaskService.cs
@@ -169,7 +169,7 @@ namespace WMS.Web.Domain.Services
//2.2.提交修改
var isSuccess = await _inStockTaskRepositories.UpdateRange(data_list, isTransaction);
if (!isSuccess)
- return ResultList.ReFailure(ResultCodes.DateWriteError);
+ return Result.ReFailure(ResultCodes.DateWriteError);
//2.3剔除:已修改的单据
foreach (var item in erp_removeList)
@@ -198,7 +198,7 @@ namespace WMS.Web.Domain.Services
//3.1提交新增
var isSuccess = await _inStockTaskRepositories.AddRange(add_entitys, isTransaction);
if (!isSuccess)
- return ResultList.ReFailure(ResultCodes.DateWriteError);
+ return Result.ReFailure(ResultCodes.DateWriteError);
}
return Result.ReSuccess();
@@ -243,7 +243,7 @@ namespace WMS.Web.Domain.Services
//2.2.提交修改
var isSuccess = await _inStockTaskRepositories.UpdateRange(data_list, isTransaction);
if (!isSuccess)
- return ResultList.ReFailure(ResultCodes.DateWriteError);
+ return Result.ReFailure(ResultCodes.DateWriteError);
//2.3剔除:已修改的单据
foreach (var item in erp_removeList)
@@ -261,7 +261,7 @@ namespace WMS.Web.Domain.Services
{
var dto = new InStockTask();
dto.SourceBillNo = item;
- dto.Create(InstockType.Purchase);
+ dto.Create(InstockType.Miscellaneous);
//找到当前对应来源单据编号的集合数据
var current_erp_details = erp_list.Where(x => x.BillNo == item).ToList();
@@ -272,7 +272,7 @@ namespace WMS.Web.Domain.Services
//3.1提交新增
var isSuccess = await _inStockTaskRepositories.AddRange(add_entitys, isTransaction);
if (!isSuccess)
- return ResultList.ReFailure(ResultCodes.DateWriteError);
+ return Result.ReFailure(ResultCodes.DateWriteError);
}
return Result.ReSuccess();
diff --git a/src/WMS.Web.Domain/Services/Public/ErpService.cs b/src/WMS.Web.Domain/Services/Public/ErpService.cs
index 2e775b33..fe4f3172 100644
--- a/src/WMS.Web.Domain/Services/Public/ErpService.cs
+++ b/src/WMS.Web.Domain/Services/Public/ErpService.cs
@@ -164,7 +164,7 @@ namespace WMS.Web.Domain.Services.Public
var query = new ErpBillQueryDto(token_result.Data);
var param = new ErpBillQueryParamDto(FormIdParam.PUR_PurchaseOrder.ToString());
param.FieldKeys = "FBillNo,FSupplierId,FPurchaseOrgId,FModel,FMaterialName,FMaterialId,FSOSTOCKID,FQty,FEntryNote,FCreateDate,FCHUCHANGPRICE,FSOSTOCKID.FNumber,FStockInQty,FDocumentStatus,FBillTypeID,FMRPCloseStatus,FBillTypeID.FName";
- param.Limit = 10;
+ param.Limit = 10000;
//查询条件:备注其中的条件值以金蝶的值为准!!!
//1.创建时间在两天前和当天时间之间
//2.审核状态:已审核
@@ -275,8 +275,8 @@ namespace WMS.Web.Domain.Services.Public
//3.获取金蝶其他入库订单:拼接参数和条件
var query = new ErpBillQueryDto(token_result.Data);
var param = new ErpBillQueryParamDto(FormIdParam.STK_MISCELLANEOUS.ToString());
- param.FieldKeys = "FID,FBillNo,FStockOrgId,FMATERIALID,FSTOCKID,FSTOCKID.FNumber,FQty,FCreateDate,FEntryNote";
- param.Limit = 10;
+ param.FieldKeys = "FBillNo,FStockOrgId,FMATERIALID,FSTOCKID,FSTOCKID.FNumber,FQty,FCreateDate,FEntryNote";
+ param.Limit = 10000;
//查询条件:备注其中的条件值以金蝶的值为准!!!
//1.创建时间在两天前和当天时间之间
//2.审核状态:已审核
@@ -332,15 +332,14 @@ namespace WMS.Web.Domain.Services.Public
foreach (var item in result)
{
var lis = new ErpMiscellaneousDto();
- lis.Id = Convert.ToInt32(item[0]);
- lis.BillNo =item[1];
- lis.StockOrgId = Convert.ToInt32(item[2]);
- lis.MaterialId = Convert.ToInt32(item[3]);
- lis.StockId = Convert.ToInt32(item[4]);
- lis.StockCode = item[5];
- lis.Qty = Convert.ToDecimal(item[6]);
- lis.CreateTime = Convert.ToDateTime(item[7]);
- lis.Remark = item[8];
+ lis.BillNo =item[0];
+ lis.StockOrgId = Convert.ToInt32(item[1]);
+ lis.MaterialId = Convert.ToInt32(item[2]);
+ lis.StockId = Convert.ToInt32(item[3]);
+ lis.StockCode = item[4];
+ lis.Qty = Convert.ToDecimal(item[5]);
+ lis.CreateTime = Convert.ToDateTime(item[6]);
+ lis.Remark = item[7];
erp_list.Add(lis);
}
return ResultList.ReSuccess(erp_list);