diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index 88d59770..e7f3f83e 100644 Binary files a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 and b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 differ diff --git a/src/WMS.Web.Api/Controllers/TestController.cs b/src/WMS.Web.Api/Controllers/TestController.cs index bf3be68b..bb31ddfc 100644 --- a/src/WMS.Web.Api/Controllers/TestController.cs +++ b/src/WMS.Web.Api/Controllers/TestController.cs @@ -232,7 +232,9 @@ namespace WMS.Web.Api.Controllers if (!_env.IsDevelopment()) return ""; ////var result = await this._erpService.BillQueryForOrg(); //var result = await this._erpService.BillQueryForBillType(); - var result = await this._erpService.BillQueryForMaterial(); + // var result = await this._erpService.BillQueryForMaterial(); + var result = await this._erpService.BillQueryForMaterial(false); + //var list = new List(); //foreach (var item in result.Data.ToList()) //{ diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 2e56b730..7cae496f 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -1292,6 +1292,41 @@ 创建日期 + + + 产品线(1级) + + + + + 产品分类(2级) + + + + + 产品分组(3级) + + + + + SPU + + + + + 产品线(1级)名称 + + + + + 产品分类(2级)名称 + + + + + 产品分组(3级)名称 + + 金蝶组织-基本信息 diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml index b2cf4180..3a8400db 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml @@ -1544,6 +1544,41 @@ 是否启用批号管理 + + + 产品线(1级) + + + + + 产品分类(2级) + + + + + 产品分组(3级) + + + + + SPU + + + + + 产品线(1级)名称 + + + + + 产品分类(2级)名称 + + + + + 产品分组(3级)名称 + + wms移箱记录 diff --git a/src/WMS.Web.Core/Dto/Erp/Material/ErpMaterialDto.cs b/src/WMS.Web.Core/Dto/Erp/Material/ErpMaterialDto.cs index 13d09dbb..4b599f4a 100644 --- a/src/WMS.Web.Core/Dto/Erp/Material/ErpMaterialDto.cs +++ b/src/WMS.Web.Core/Dto/Erp/Material/ErpMaterialDto.cs @@ -81,6 +81,39 @@ namespace WMS.Web.Core.Dto.Erp /// 创建日期 /// public DateTime? FCreateDate { get; set; } - + + /// + /// 产品线(1级) + /// + public string FProductLines1 { get; set; } + + /// + /// 产品分类(2级) + /// + public string FProductCATs1 { get; set; } + /// + /// 产品分组(3级) + /// + public string FMaterialGroup { get; set; } + + /// + /// SPU + /// + public string F_Product { get; set; } + + /// + /// 产品线(1级)名称 + /// + public string FProductLines1FName { get; set; } + /// + /// 产品分类(2级)名称 + /// + public string FProductCATs1FName { get; set; } + /// + /// 产品分组(3级)名称 + /// + public string FMaterialGroupFName { get; set; } + + } } diff --git a/src/WMS.Web.Domain/Entitys/Materials.cs b/src/WMS.Web.Domain/Entitys/Materials.cs index 700d7878..97c1c601 100644 --- a/src/WMS.Web.Domain/Entitys/Materials.cs +++ b/src/WMS.Web.Domain/Entitys/Materials.cs @@ -71,6 +71,40 @@ namespace WMS.Web.Domain.Entitys public bool IsBatchManage { get; set; } + /// + /// 产品线(1级) + /// + public string FProductLines1 { get; set; } + + /// + /// 产品分类(2级) + /// + public string FProductCATs1 { get; set; } + /// + /// 产品分组(3级) + /// + public string FMaterialGroup { get; set; } + + /// + /// SPU + /// + public string F_Product { get; set; } + + /// + /// 产品线(1级)名称 + /// + public string FProductLines1FName { get; set; } + /// + /// 产品分类(2级)名称 + /// + public string FProductCATs1FName { get; set; } + /// + /// 产品分组(3级)名称 + /// + public string FMaterialGroupFName { get; set; } + + + } diff --git a/src/WMS.Web.Domain/Services/InStockTaskService.cs b/src/WMS.Web.Domain/Services/InStockTaskService.cs index 5a03a084..ecfad986 100644 --- a/src/WMS.Web.Domain/Services/InStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/InStockTaskService.cs @@ -257,8 +257,8 @@ namespace WMS.Web.Domain.Services { if (billNos == null || billNos.Count == 0) { - // var beginTime = DateTime.Now.AddHours(-20);//默认拉去8小时以内的数据,ALTER BY YZH - var beginTime = DateTime.Now.AddDays(-200);//默认拉去8小时以内的数据,ALTER BY YZH这里要改回去 + var beginTime = DateTime.Now.AddHours(-20);//默认拉去8小时以内的数据,ALTER BY YZH + // var beginTime = DateTime.Now.AddDays(-200);//默认拉去8小时以内的数据,ALTER BY YZH这里要改回去 //6.同步数据:生产入库单 diff --git a/src/WMS.Web.Domain/Services/OutStockTaskService.cs b/src/WMS.Web.Domain/Services/OutStockTaskService.cs index 9bb63a46..3b7b3fd3 100644 --- a/src/WMS.Web.Domain/Services/OutStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/OutStockTaskService.cs @@ -432,8 +432,12 @@ namespace WMS.Web.Domain.Services { //DateTime begin = await _erpOpsSyncDateRepositories.Get(ErpOpsSyncType.OutStock); if (begin == null) - begin = DateTime.Now.AddHours(-232);//默认拉去8小时以内的数据,ALTER BY YZH - //更新时间范围内所有 + begin = DateTime.Now.AddHours(-8);//默认拉去8小时以内的数据,ALTER BY YZH + // begin = DateTime.Now.AddDays(-200);//默认拉去8小时以内的数据,ALTER BY YZH + //更新时间范围内所有 + //result = await BillQueryForTransferOutOutStock(false, null, begin); + //if (!result.IsSuccess) isRollback = true; + result = await BillQueryForSalOutStock(false, null, begin); if (!result.IsSuccess) isRollback = true; result = await BillQueryForTransferDirectOutStock(false, null, begin); @@ -480,6 +484,11 @@ namespace WMS.Web.Domain.Services else if (entity.Type == OutStockType.Miscellaneous) MisDeliveryOut_Nos.AddRange(entity.Details.SelectMany(s => s.ErpDetails).Select(s => s.SourceBillNo)); } + if (TransferOut_Nos.Count() > 0) + { + result = await BillQueryForTransferOutOutStock(false, TransferOut_Nos); + if (!result.IsSuccess) isRollback = true; + } if (SalOutStock_Nos.Count() > 0) { @@ -491,11 +500,7 @@ namespace WMS.Web.Domain.Services result = await BillQueryForTransferDirectOutStock(false, TransferDirect_Nos); if (!result.IsSuccess) isRollback = true; } - if (TransferOut_Nos.Count() > 0) - { - result = await BillQueryForTransferOutOutStock(false, TransferOut_Nos); - if (!result.IsSuccess) isRollback = true; - } + if (AssembledApp_Nos.Count() > 0) { result = await BillQueryForAssembledAppOutStock(false, AssembledApp_Nos); diff --git a/src/WMS.Web.Domain/Services/Public/ErpService.cs b/src/WMS.Web.Domain/Services/Public/ErpService.cs index 6c38ba5d..56faa335 100644 --- a/src/WMS.Web.Domain/Services/Public/ErpService.cs +++ b/src/WMS.Web.Domain/Services/Public/ErpService.cs @@ -530,9 +530,9 @@ namespace WMS.Web.Domain.Services.Public //2.时间条件:可能还有其它条件 //var beginTime = DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd 00:00:00"); - // var beginStr = DateTime.Now.AddDays(-3).ToString("yyyy-MM-dd HH:mm:ss"); - var beginStr = DateTime.Now.AddDays(-180).ToString("yyyy-MM-dd HH:mm:ss"); - // var beginStr = DateTime.Now.AddDays(-180).ToString("yyyy-MM-dd HH:mm:ss"); + var beginStr = DateTime.Now.AddDays(-3).ToString("yyyy-MM-dd HH:mm:ss"); + // var beginStr = DateTime.Now.AddDays(-180).ToString("yyyy-MM-dd HH:mm:ss"); + // var beginStr = DateTime.Now.AddDays(-180).ToString("yyyy-MM-dd HH:mm:ss"); if (beginTime != null) beginStr = beginTime?.ToString("yyyy-MM-dd HH:mm:ss"); var endTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //3.获取金蝶分步式入库订单:拼接参数和条件 @@ -1087,7 +1087,7 @@ namespace WMS.Web.Domain.Services.Public //3.获取金蝶物料:拼接参数和条件 var query = new ErpBillQueryDto(token_result.Data); var param = new ErpBillQueryParamDto(FormIdParam.BD_MATERIAL.ToString()); - param.FieldKeys = "FMATERIALID,FName,FNumber,FSpecification,FBaseUnitId,FBaseUnitId.FName,FBaseUnitId.FNumber,FBARCODE,FUseOrgId,FUseOrgId.FNumber,FIsBatchManage"; + param.FieldKeys = "FMATERIALID,FName,FNumber,FSpecification,FBaseUnitId,FBaseUnitId.FName,FBaseUnitId.FNumber,FBARCODE,FUseOrgId,FUseOrgId.FNumber,FIsBatchManage,FProductLines1,FProductCATs1,FMaterialGroup,F_Product,FModifyDate,FCreateDate,FProductLines1.FName,FProductCATs1.FName,FMaterialGroup.FName"; param.Limit = 10000; //查询条件:备注其中的条件值以金蝶的值为准!!! @@ -1137,6 +1137,17 @@ namespace WMS.Web.Domain.Services.Public lis.OrgId = Convert.ToInt32(item[8]); lis.OrgCode = item[9]; lis.IsBatchManage = Convert.ToBoolean(item[10]); + lis.FProductLines1 =item[11]; + lis.FProductCATs1 = item[12]; + lis.FMaterialGroup = item[13]; + lis.F_Product = item[14]; + lis.FModifyDate =Convert.ToDateTime( item[15]); + lis.FCreateDate =Convert.ToDateTime( item[16]); + lis.F_Product = item[14]; + lis.FProductLines1FName=item[17]; + lis.FProductCATs1FName = item[18]; + lis.FMaterialGroupFName = item[19]; + erp_materials_list.Add(lis); } //4.6页面的叠加 @@ -2220,7 +2231,7 @@ namespace WMS.Web.Domain.Services.Public //3.获取金蝶采购订单:拼接参数和条件 var query = new ErpBillQueryDto(token_result.Data); var param = new ErpBillQueryParamDto(FormIdParam.STK_TRANSFEROUT.ToString()); - param.FieldKeys = "FBillNo,'',FStockOrgID,FStockInOrgID,FMaterialID.FNumber,FSrcStockID.FNumber,FSrcStockLocId,FQty,FEntryNote,FCreateDate,FSTKTRSOUTENTRY_FEntryID,FStockOrgID.FNumber,FDestStockID.FName"; + param.FieldKeys = "FBillNo,'',FStockOrgID,FStockInOrgID,FMaterialID.FNumber,FSrcStockID.FNumber,FSrcStockLocId,FQty,FEntryNote,FCreateDate,FSTKTRSOUTENTRY_FEntryID,FStockOrgID.FNumber,FDestStockID.FName,FSrcBillTypeId"; param.Limit = 10000; //查询条件:备注其中的条件值以金蝶的值为准!!! //1.创建时间在两天前和当天时间之间 @@ -2231,10 +2242,12 @@ namespace WMS.Web.Domain.Services.Public //7.V01.05.00: 当金蝶系统物料明细行调出仓库和调入仓库相同, 数据不需要拉取 //param.FilterString = "FDocumentStatus='C' and FBillTypeID='de3bcacc98434ec68a358aa5abcd9183'"; param.FilterString = " 1=1"; - param.FilterString += " and FSrcBillType<>'STK_TRANSFERIN'";//add by yzh + param.FilterString += " and FSrcBillTypeId<>'STK_TransferDirect'";//add by yzh if (isCheck) param.FilterString += " and FDocumentStatus='C'"; param.FilterString += " and FMaterialID.FERPCLSID not in (10,11,6)"; param.FilterString += " and FSrcStockID!=FDestStockID"; + // param.FilterString += " and FBillNo='FBDC112453'"; + //string srt = JsonConvert.SerializeObject(stocks_codes); //param.FilterString += " and FSrcStockID.FNumber in (" + stocks_codes + ")"; //param.FilterString += " and FStockOrgID.FNumber in (" + stocks_orgs + ")"; diff --git a/src/WMS.Web.Domain/Services/Public/MaterialService.cs b/src/WMS.Web.Domain/Services/Public/MaterialService.cs index 1fcf0a2a..fa09400d 100644 --- a/src/WMS.Web.Domain/Services/Public/MaterialService.cs +++ b/src/WMS.Web.Domain/Services/Public/MaterialService.cs @@ -77,7 +77,7 @@ namespace WMS.Web.Domain.Services mats = mats_result.Data.ToList(); //3.通过hash,更快的时间内判断元素是否存在于集合中,提高性能(10W数据十几毫秒级别) - var entitys = mats + var entitys = mats .Where(item => !materialNumberSet.Contains(item.MaterialNumber)) .Select(item => _mapper.Map(item)) .ToList(); @@ -92,8 +92,8 @@ namespace WMS.Web.Domain.Services //修改有更新的数据 if (mats.Count != 0) { - var isFModifyDateMatNumbs = mats.Where(x => x.FModifyDate>=DateTime.Now.AddDays(-2)).Select(x =>new { MaterialNumber= x.MaterialNumber, Specifications=x.Specifications }).ToList(); - //取:金蝶拉取的已启用批号管理的物料并且本地数据库中的未启用批号管理的物料;来更新批号管理修改为true + var isFModifyDateMatNumbs = mats.Where(x => x.FModifyDate>=DateTime.Now.AddDays(-10)).Select(x =>new { MaterialNumber= x.MaterialNumber, Specifications=x.Specifications }).ToList(); + // _logger.LogInformation("取到需要同步的金蝶修改物料规格yzh:" + isFModifyDateMatNumbs.Count+"个"); List s = new List();