tt
This commit is contained in:
Binary file not shown.
@@ -71,7 +71,7 @@ namespace WMS.Web.Domain.Services
|
||||
public async Task<Result> Save(List<SaveTakeStockRequest> dto, LoginInDto loginInfo)
|
||||
{
|
||||
_logger.LogInformation($"盘点保存:{JsonConvert.SerializeObject(dto)} 盘点人:{loginInfo.UserInfo.StaffId}");
|
||||
dto = dto.Where(w => w.AfterQty != w.BeforeQty).ToList();
|
||||
//dto = dto.Where(w => w.AfterQty != w.BeforeQty).ToList();
|
||||
if (dto.Count() == 0) return Result.ReSuccess();
|
||||
if (dto.GroupBy(g => g.BoxId).Count() > 1)
|
||||
return Result.ReFailure(ResultCodes.TakeStockBoxError);
|
||||
@@ -199,14 +199,20 @@ namespace WMS.Web.Domain.Services
|
||||
var sc_erpBasicDataExtendService = scope.ServiceProvider.GetRequiredService<IErpBasicDataExtendService>();
|
||||
var sc_takeStockRepositories = scope.ServiceProvider.GetRequiredService<ITakeStockRepositories>();
|
||||
|
||||
if (entity.Details.Count() == 0) return Result.ReSuccess();
|
||||
var details = entity.Details.Where(w => w.FinalQty > 0).ToList();
|
||||
if (details.Count() == 0)
|
||||
{
|
||||
entity.Sync(true, "", SyncStatus.Success, "");
|
||||
await sc_takeStockRepositories.Edit(entity, true);
|
||||
return Result.ReSuccess();
|
||||
}
|
||||
var materials_result = await sc_erpService.BillQueryForMaterial();
|
||||
if (!materials_result.IsSuccess) return Result.ReFailure(ResultCodes.ErpMaterialError);
|
||||
var materials = materials_result.Data.ToList();
|
||||
|
||||
var subs = await _erpService.BillQueryForSubStock();
|
||||
List<(string materialNumber, string orgCode, string stockCode, int subStockId)> requestInventory = new List<(string materialNumber, string orgCode, string stockCode, int subStockId)>();
|
||||
foreach (var d in entity.Details)
|
||||
foreach (var d in details)
|
||||
{
|
||||
int subStockId = subs.Data.FirstOrDefault(w => w.OrgCode.Equals(d.OrgCode) && w.StockCode.Equals(d.Erp_SubStockCode))?.Id ?? 0;
|
||||
requestInventory.Add((_erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId), d.OrgCode, d.StockCode, subStockId));
|
||||
@@ -223,7 +229,7 @@ namespace WMS.Web.Domain.Services
|
||||
#region 组装dto
|
||||
//子仓库 ORICO_JD:1000008 GD:1000005 HD:1000007 AD:1000004
|
||||
List<ErpTakeStockDetailsSaveDto> detils = new List<ErpTakeStockDetailsSaveDto>();
|
||||
foreach (var d in entity.Details)
|
||||
foreach (var d in details)
|
||||
{
|
||||
int subStockId = subs.Data.FirstOrDefault(w => w.OrgCode.Equals(d.OrgCode) && w.StockCode.Equals(d.Erp_SubStockCode))?.Id ?? 0;
|
||||
var number = _erpBasicDataExtendService.GetMaterialNumber(materials, d.MaterialId);
|
||||
|
||||
@@ -217,7 +217,7 @@ namespace WMS.Web.Repositories
|
||||
.GroupJoin(_context.TakeStock, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
|
||||
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
|
||||
.OrderByDescending(o => o.detail.Id)
|
||||
.Where(adv => 1 == 1);
|
||||
.Where(adv => 1 == 1 && adv.detail.FinalQty > 0);
|
||||
|
||||
if (!string.IsNullOrEmpty(dto.MaterialNumber))
|
||||
query = query.Where(w => mIds.Contains(w.detail.MaterialId));
|
||||
|
||||
Reference in New Issue
Block a user