Browse Source

添加PDA无单位

dev_DY_CC
赵新宇 5 months ago
parent
commit
fcd5083330
  1. 50
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/CountJobController.cs
  2. 13
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/CountJobs/CountJobAppService.cs
  3. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/CountAdjustRequests/CountAdjustRequestForDongyangAppService.cs

50
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/CountJobController.cs

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Text.Json; using System.Text.Json;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
@ -7,6 +8,7 @@ using Volo.Abp;
using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Dtos;
using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc;
using Win_in.Sfs.Auth.Application.Contracts; using Win_in.Sfs.Auth.Application.Contracts;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Application.Contracts;
@ -25,6 +27,8 @@ public class CountJobController : AbpController
private readonly IUserWorkGroupAppService _userWorkGroupAppService; private readonly IUserWorkGroupAppService _userWorkGroupAppService;
private readonly IItemBasicAppService _itemBasicAppService;
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
@ -32,10 +36,11 @@ public class CountJobController : AbpController
/// <param name="userWorkGroupAppService"></param> /// <param name="userWorkGroupAppService"></param>
public CountJobController( public CountJobController(
ICountJobAppService countJobAppService ICountJobAppService countJobAppService
, IUserWorkGroupAppService userWorkGroupAppService) , IUserWorkGroupAppService userWorkGroupAppService, IItemBasicAppService itemBasicAppService)
{ {
_userWorkGroupAppService = userWorkGroupAppService; _userWorkGroupAppService = userWorkGroupAppService;
_countJobAppService = countJobAppService; _countJobAppService = countJobAppService;
_itemBasicAppService = itemBasicAppService;
} }
/// <summary> /// <summary>
@ -220,6 +225,11 @@ public class CountJobController : AbpController
[HttpPost("finish/{id}")] [HttpPost("finish/{id}")]
public virtual async Task FinishAsync(Guid id, [FromBody] CountJobDTO dto) public virtual async Task FinishAsync(Guid id, [FromBody] CountJobDTO dto)
{ {
var errors=await Check(dto).ConfigureAwait(false);
if (errors.Count > 0)
{
throw new UserFriendlyException(string.Join(',', errors));
}
await _countJobAppService.CompleteAsync(id, dto).ConfigureAwait(false); await _countJobAppService.CompleteAsync(id, dto).ConfigureAwait(false);
} }
@ -246,7 +256,45 @@ public class CountJobController : AbpController
[HttpPost("handle-note")] [HttpPost("handle-note")]
public virtual async Task HandleForNoteAsync(Guid id, CountJobDTO dto) public virtual async Task HandleForNoteAsync(Guid id, CountJobDTO dto)
{ {
var errors = await Check(dto).ConfigureAwait(false);
if (errors.Count > 0)
{
throw new UserFriendlyException(string.Join(',', errors));
}
await _countJobAppService.CompleteAsync(id, dto).ConfigureAwait(false); await _countJobAppService.CompleteAsync(id, dto).ConfigureAwait(false);
} }
private async Task<List<string>> Check(CountJobDTO dto)
{
List<string> errors = new List<string>();
foreach (var itm in dto.Details)
{
var item = await _itemBasicAppService.GetByCodeAsync(itm.ItemCode).ConfigureAwait(false);
if (item == null)
{
errors.Add($"ERP料号{itm.ItemCode}不存在");
//validationRresult.Add(new ValidationResult($"ERP料号{importInput.ItemCode}不存在", new[] { "ERP料号" }));
}
else if (item.StdPackQty == 0)
{
errors.Add($"ERP料号{itm.ItemCode}的物品信息中标准包装等于0或不存在");
//validationRresult.Add(
// new ValidationResult($"ERP料号{importInput.ItemCode}的物品信息中标准包装等于0或不存在", new[] { "标准包装" }));
}
else
{
itm.ItemName = item.Name;
itm.ItemDesc1 = item.Desc1;
itm.ItemDesc2 = item.Desc2;
itm.StdPackQty = item.StdPackQty;
itm.Uom = item.BasicUom;
}
}
return errors;
}
} }

13
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/CountJobs/CountJobAppService.cs

@ -268,6 +268,19 @@ public class CountJobAppService
public override async Task<CountJobDTO> CompleteAsync(Guid id, CountJobDTO dto) public override async Task<CountJobDTO> CompleteAsync(Guid id, CountJobDTO dto)
{ {
var partlist = dto.Details.Select(p => p.ItemCode);
var input = new CountJobCheckInput var input = new CountJobCheckInput
{ {
JobStatuses = new List<EnumJobStatus>() { EnumJobStatus.Doing }, JobStatuses = new List<EnumJobStatus>() { EnumJobStatus.Doing },

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/CountAdjustRequests/CountAdjustRequestForDongyangAppService.cs

@ -155,6 +155,7 @@ public class CountAdjustRequestForDongyangAppService : CountAdjustRequestAppServ
detail.ItemDesc1 = itemBasic.Desc1; detail.ItemDesc1 = itemBasic.Desc1;
detail.ItemDesc2 = itemBasic.Desc2; detail.ItemDesc2 = itemBasic.Desc2;
detail.StdPackQty = itemBasic.StdPackQty; detail.StdPackQty = itemBasic.StdPackQty;
detail.Uom = itemBasic.BasicUom;
} }
var location = await LocationAclService.GetByCodeAsync(detail.LocationCode).ConfigureAwait(false); var location = await LocationAclService.GetByCodeAsync(detail.LocationCode).ConfigureAwait(false);

Loading…
Cancel
Save