From 165db0ead414f18edbafef5c57100f01d4206001 Mon Sep 17 00:00:00 2001
From: 18942506660 <18942506660@A18942506660>
Date: Fri, 1 Dec 2023 17:08:38 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/WMS.Web.Core/Dto/Erp/ErpNumberDto.cs | 26 +++++++++++++++++++
.../Dto/Erp/TakeStock/ErpTakeStockSaveDto.cs | 2 +-
.../Services/Public/ErpService.cs | 11 ++++----
.../Services/TakeStockService.cs | 6 +++--
4 files changed, 37 insertions(+), 8 deletions(-)
diff --git a/src/WMS.Web.Core/Dto/Erp/ErpNumberDto.cs b/src/WMS.Web.Core/Dto/Erp/ErpNumberDto.cs
index 500f384d..107fe37a 100644
--- a/src/WMS.Web.Core/Dto/Erp/ErpNumberDto.cs
+++ b/src/WMS.Web.Core/Dto/Erp/ErpNumberDto.cs
@@ -20,4 +20,30 @@ namespace WMS.Web.Core.Dto.Erp
[JsonProperty("FNumber")]
public string Number { get; set; }
}
+
+ ///
+ /// 盘点子仓库
+ ///
+ public class ErpSubStockDto
+ {
+ public ErpSubStockDto() { }
+ public ErpSubStockDto(string code)
+ {
+ if (code.Equals("GD"))
+ this.GD = new ErpNumberDto(code);
+ if (code.Equals("HD"))
+ this.HD = new ErpNumberDto(code);
+ }
+ ///
+ /// GD仓
+ ///
+ [JsonProperty("FSTOCKLOCID__FF100005")]
+ public ErpNumberDto GD { get; set; } = new ErpNumberDto("");
+
+ ///
+ /// HD仓
+ ///
+ [JsonProperty("FSTOCKLOCID__FF100007")]
+ public ErpNumberDto HD { get; set; } = new ErpNumberDto("");
+ }
}
diff --git a/src/WMS.Web.Core/Dto/Erp/TakeStock/ErpTakeStockSaveDto.cs b/src/WMS.Web.Core/Dto/Erp/TakeStock/ErpTakeStockSaveDto.cs
index d80ed522..2708f6c5 100644
--- a/src/WMS.Web.Core/Dto/Erp/TakeStock/ErpTakeStockSaveDto.cs
+++ b/src/WMS.Web.Core/Dto/Erp/TakeStock/ErpTakeStockSaveDto.cs
@@ -108,7 +108,7 @@ namespace WMS.Web.Core.Dto.Erp.TakeStock
/// 仓位ID
///
[JsonProperty("FStockLocId")]
- public string SubStockId { get; set; }
+ public ErpSubStockDto SubStockId { get; set; }
///
/// 盘点前数量(wms系统数量)
///
diff --git a/src/WMS.Web.Domain/Services/Public/ErpService.cs b/src/WMS.Web.Domain/Services/Public/ErpService.cs
index f45859ef..65916b0d 100644
--- a/src/WMS.Web.Domain/Services/Public/ErpService.cs
+++ b/src/WMS.Web.Domain/Services/Public/ErpService.cs
@@ -803,7 +803,7 @@ namespace WMS.Web.Domain.Services.Public
///
///
///
- public async Task> BillQueryForMaterial(int id)
+ public async Task> BillQueryForMaterial(int id)
{
//1.获取缓存中的物料数据;
var cache_key = "erp_materials_list";
@@ -1276,8 +1276,9 @@ namespace WMS.Web.Domain.Services.Public
list.Add(lis);
}
- //5.供应商集合进行缓存
- _memoryCache.Set(cache_key, list, new MemoryCacheEntryOptions().SetAbsoluteExpiration(TimeSpan.FromHours(12)));
+ //5.供应商集合进行缓存 只有查询全部的时候才缓存
+ if (code == null)
+ _memoryCache.Set(cache_key, list, new MemoryCacheEntryOptions().SetAbsoluteExpiration(TimeSpan.FromHours(12)));
_logger.LogInformation($"子仓库拉取-总条数:{list.Count}");
return ResultList.ReSuccess(list);
}
@@ -1306,7 +1307,7 @@ namespace WMS.Web.Domain.Services.Public
var token_result = await this.Init();
if (!token_result.IsSuccess)
return Result.ReFailure(token_result.Message, token_result.Status);
- var query = new ErpBillQueryDto(token_result.Data,formId);
+ var query = new ErpBillQueryDto(token_result.Data, formId);
var param = new ErpSave(formId, dto);
query.Data = JsonConvert.SerializeObject(param);
//保存
@@ -1317,7 +1318,7 @@ namespace WMS.Web.Domain.Services.Public
if (jobject["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToLower() == "true")
{
//保存成功后返回Id 后续操作根据Id操作
- string id =jobject["Result"]["ResponseStatus"]["SuccessEntitys"][0]["Id"].ToString();
+ string id = jobject["Result"]["ResponseStatus"]["SuccessEntitys"][0]["Id"].ToString();
return Result.ReSuccess(id);
}
diff --git a/src/WMS.Web.Domain/Services/TakeStockService.cs b/src/WMS.Web.Domain/Services/TakeStockService.cs
index efb499a5..b48c1566 100644
--- a/src/WMS.Web.Domain/Services/TakeStockService.cs
+++ b/src/WMS.Web.Domain/Services/TakeStockService.cs
@@ -129,11 +129,13 @@ namespace WMS.Web.Domain.Services
var materials = materials_result.Data.ToList();
var unitNumber = _erpBasicDataExtendService.GetMaterialUnitNumber(materials, entity.MaterialId);
var res = await _erpService.BillQueryForStock();
+ var resSub = await _erpService.BillQueryForSubStock();
var stock = res.Data.FirstOrDefault(f => f.Code == entity.StockCode);//需要根据单点code搜索
- var subStock = res.Data.FirstOrDefault(f => f.Code == subStockCode);//需要根据单点code搜索
+ var subStock = resSub.Data.FirstOrDefault(f => f.Code == subStockCode);//需要根据单点code搜索
if (stock == null) return Result.ReFailure(ResultCodes.ErpStockNoData);
//组装dto
#region 组装dto
+ //子仓库 ORICO_JD:1000008 GD:1000005 HD:1000007 AD:1000004
List detils = new List();
detils.Add(new ErpTakeStockDetailsSaveDto()
{
@@ -142,7 +144,7 @@ namespace WMS.Web.Domain.Services
MaterialId = new ErpNumberDto(_erpBasicDataExtendService.GetMaterialNumber(materials, entity.MaterialId)),
UnitId = new ErpNumberDto(unitNumber), //物料带出来
StockId = new ErpNumberDto(stock.Code),
- SubStockId = subStock?.Id.ToString(),
+ SubStockId =new ErpSubStockDto(resSub.Data.FirstOrDefault(f => f.Id == entity.Erp_SubStockId).Code),
BeforeQty = entity.BeforeQty,
AfterQty = entity.AfterQty,
FinalQty = entity.FinalQty,