This commit is contained in:
2025-06-17 14:34:47 +08:00
parent 05cedd2457
commit 90bcfc9033
13 changed files with 204 additions and 27 deletions

View File

@@ -530,7 +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(-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.获取金蝶分步式入库订单:拼接参数和条件
@@ -546,6 +548,7 @@ namespace WMS.Web.Domain.Services.Public
//当金蝶系统物料明细行调出仓库和调入仓库相同, 数据不需要拉取
//param.FilterString = " FDocumentStatus='C' and FBillTypeID='e65a4f29743a44b7b67dc8145e1f9c92'";
param.FilterString = " 1=1";
param.FilterString += " and FSrcBillType<>'STK_TRANSFERIN'";
if (isCheck) param.FilterString += " and FDocumentStatus='C'";
param.FilterString += " and FSrcStockId!=FDestStockId";
for (int i = 0; i < stocks.Count(); i++)
@@ -668,7 +671,7 @@ namespace WMS.Web.Domain.Services.Public
if (i == 0)
{
param.FilterString += " and (";
param.FilterString += $"(FSTOCKID.FNumber='{stocks[i].Code}' and FPrdOrgId.FNumber='{stocks[i].ErpOrgCode}')";
param.FilterString += $"(FSTOCKID.FNumber='{stocks[i].Code}' and FPrdOrgId.FNumber='{stocks[i].ErpOrgCode}')";
// param.FilterString += $"( FPrdOrgId.FNumber='{stocks[i].ErpOrgCode}')";
}
else
@@ -724,7 +727,7 @@ namespace WMS.Web.Domain.Services.Public
lis.OrgCode = item[3];
lis.ErpDetailId = Convert.ToInt32(item[12]);
lis.Type = (int)InstockType.ProduceSotck;
lis.SaleBillNo= item[1];
lis.SaleBillNo = item[1];
erp_list.Add(lis);
}
//_logger.LogInformation("分步式调入条数:" + erp_list.Count);
@@ -738,6 +741,7 @@ namespace WMS.Web.Domain.Services.Public
}
/// <summary>
/// erp:单据查询-组装拆卸单-组装(成品入库)
/// </summary>
@@ -2227,6 +2231,7 @@ 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
if (isCheck) param.FilterString += " and FDocumentStatus='C'";
param.FilterString += " and FMaterialID.FERPCLSID not in (10,11,6)";
param.FilterString += " and FSrcStockID!=FDestStockID";

View File

@@ -32,6 +32,30 @@ namespace WMS.Web.Domain.Services
_materialsRepositories = materialsRepositories;
}
//public string GetSpecifications(mats_result entitys, string MaterialNumber)
//{
// string strReturn = "";
// foreach (var item in entitys)
// {
// if (item.MaterialNumber == MaterialNumber)
// {
// if (strReturn == "")
// {
// strReturn = item.Specifications;
// }
// else
// {
// strReturn = strReturn + "," + item.SerialNumber;
// }
// }
// }
// return strReturn;
//}
/// <summary>
/// 同步金蝶新的物料
/// </summary>
@@ -40,7 +64,7 @@ namespace WMS.Web.Domain.Services
{
try
{
_logger.LogInformation("同步金蝶新物料:开始->" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
_logger.LogInformation("同步SyncNewMaterials新金蝶新物料:开始->" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
//1.获取全部物料编码
var materialNumbers = await _materialsRepositories.GetAllNumbers();
//1.1通过hash处理
@@ -65,6 +89,64 @@ namespace WMS.Web.Domain.Services
if (!isSuccess)
return Result.ReFailure(ResultCodes.DateWriteError);
}
//修改有更新的数据
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
_logger.LogInformation("取到需要同步的金蝶修改物料规格yzh" + isFModifyDateMatNumbs.Count+"个");
List<string> s = new List<string>();
foreach (var ismat in isFModifyDateMatNumbs)
{
s.Add(ismat.MaterialNumber);
}
var updateList = await _materialsRepositories.GetEntityListAddMaterial(s);
if (isFModifyDateMatNumbs.Count != 0)
{
//updateList.ForEach(x => { x.Specifications = ; });
foreach(var entity in updateList)
{
// entity.Specifications = mats_result[];
foreach (var mat in isFModifyDateMatNumbs)
{
if (entity.MaterialNumber== mat.MaterialNumber)
{
entity.Specifications = mat.Specifications;
continue;
}
}
}
var isSuccess = await _materialsRepositories.UpdateRange(updateList);
if (!isSuccess)
_logger.LogInformation("同步金蝶修改物料-修改物料规格yzh失败");
else
_logger.LogInformation("同步金蝶修改物料-修改物料规格yzh成功->" + updateList.Count + "条");
}
// List<string> s = new List<string>();
//foreach (var ismat in isFModifyDateMatNumbs)
// {
// s.Add(ismat.MaterialNumber);
// }
// var updateList = await _materialsRepositories.GetEntityListAddMaterial(s);
// if (updateList.Count != 0)
// {
// updateList.ForEach(x => { x.Specifications = ; });
// var isSuccess = await _materialsRepositories.UpdateRange(updateList);
// if (!isSuccess)
// _logger.LogInformation("同步金蝶新物料-修改物料:失败");
// else
// _logger.LogInformation("同步金蝶新物料-修改物料:成功->" + updateList.Count + "条");
// }
}
//5.修改物料数据
if (mats.Count != 0)
{