Browse Source

修改 Kitting叫料

dev_DY_CC
郑勃旭 1 year ago
parent
commit
6a12303ee2
  1. 33
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/ItemContainerController.cs
  2. 5
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/IssueJobs/KittingIssueJobsController.cs
  3. 92
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/IssueRequest/KittingRequestController.cs
  4. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/ItemContainers/IItemContainerAppService.cs
  5. 9
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ItemContainers/ItemContainerAppService.cs
  6. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/KittingIssueJobs/DTOs/KittingIssueJobDTO.cs

33
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/ItemContainerController.cs

@ -0,0 +1,33 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp.AspNetCore.Mvc;
using Win_in.Sfs.Basedata.Application.Contracts;
namespace Win_in.Sfs.Wms.Pda.Controllers.BaseDatas;
/// <summary>
/// </summary>
[ApiController]
[Route($"{PdaHostConst.ROOT_ROUTE}item-container")]
public class ItemContainerController : AbpController
{
private readonly IItemContainerAppService _itemContainerAppService;
public ItemContainerController(IItemContainerAppService itemContainerAppService)
{
_itemContainerAppService = itemContainerAppService;
}
/// <summary>
/// 根据名称获取物品
/// </summary>
/// <param name="itemCode"></param>
/// <returns></returns>
[HttpGet("by-item")]
public virtual async Task<ItemContainerDTO> GetListByItemNameAsync(string itemCode)
{
var dto = await _itemContainerAppService.GetByItemCodeAsync(itemCode).ConfigureAwait(false);
return dto;
}
}

5
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/IssueJobs/KittingIssueJobsController.cs

@ -23,9 +23,10 @@ public class KittingIssueJobsController : AbpController
private readonly IUserWorkGroupAppService _userWorkGroupAppService;
public KittingIssueJobsController(IKittingIssueJobAppService kittingIssueJobAppService)
public KittingIssueJobsController(IKittingIssueJobAppService kittingIssueJobAppService, IUserWorkGroupAppService userWorkGroupAppService)
{
_kittingIssueJobAppService = kittingIssueJobAppService;
_userWorkGroupAppService = userWorkGroupAppService;
}
/// <summary>
@ -134,7 +135,7 @@ public class KittingIssueJobsController : AbpController
}
/// <summary>
/// 获取盘点任务详情
/// 获取任务详情
/// </summary>
/// <param name="id"></param>
/// <returns></returns>

92
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/IssueRequest/KittingRequestController.cs

@ -1,6 +1,14 @@
using System;
using System.Collections.Generic;
using System.Text.Json;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.AspNetCore.Mvc;
using Win_in.Sfs.Auth.Application.Contracts;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Application.Contracts;
namespace Win_in.Sfs.Wms.Pda.Controllers.Stores;
@ -14,12 +22,16 @@ public class KittingRequestController : AbpController
{
private readonly IKittingIssueRequestAppService _kittingIssueRequestAppService;
private readonly IUserWorkGroupAppService _userWorkGroupAppService;
/// <summary>
/// </summary>
/// <param name="kittingIssueRequestAppService"></param>
public KittingRequestController(IKittingIssueRequestAppService kittingIssueRequestAppService)
public KittingRequestController(IKittingIssueRequestAppService kittingIssueRequestAppService,
IUserWorkGroupAppService userWorkGroupAppService)
{
_kittingIssueRequestAppService = kittingIssueRequestAppService;
_userWorkGroupAppService = userWorkGroupAppService;
}
/// <summary>
@ -32,4 +44,82 @@ public class KittingRequestController : AbpController
{
await _kittingIssueRequestAppService.CreateAndHandleAsync(input).ConfigureAwait(false);
}
/// <summary>
/// </summary>
/// <param name="pageSize"></param>
/// <param name="pageIndex"></param>
/// <param name="isFinished"></param>
/// <returns></returns>
[HttpPost("list")]
public virtual async Task<PagedResultDto<KittingIssueRequestDTO>> GetListAsync(int pageSize, int pageIndex,
bool isFinished)
{
var status = new List<int>();
if (isFinished)
{
status.Add((int)EnumRequestStatus.Completed);
}
else
{
status.Add((int)EnumRequestStatus.Partial);
status.Add((int)EnumRequestStatus.Handling);
status.Add((int)EnumRequestStatus.New);
}
var jsonStatus = JsonSerializer.Serialize(status);
var request = new SfsStoreRequestInputBase
{
MaxResultCount = pageSize,
SkipCount = (pageIndex - 1) * pageSize,
Sorting = $"{nameof(ContainerJobDTO.CreationTime)} ASC",
Condition = new Condition
{
Filters = new List<Filter> { new(nameof(ContainerJobDTO.JobStatus), jsonStatus, "In") }
}
};
var list = await _kittingIssueRequestAppService.GetPagedListByFilterAsync(request, true).ConfigureAwait(false);
return list;
}
/// <summary>
/// </summary>
/// <param name="id"></param>
[HttpPost("handle/{id}")]
public virtual async Task HandleAsync(Guid id)
{
await _kittingIssueRequestAppService.HandleAsync(id).ConfigureAwait(false);
}
/// <summary>
/// 根据Job Number 获取盘点任务列表
/// </summary>
/// <param name="jobNumber"></param>
/// <returns></returns>
[HttpGet("by-number/{requestNumber}")]
public virtual async Task<ActionResult<KittingIssueRequestDTO>> GetByNumberAsync(string requestNumber)
{
var jobDto = await _kittingIssueRequestAppService.GetByNumberAsync(requestNumber).ConfigureAwait(false);
if (jobDto == null)
{
throw new UserFriendlyException($"未找到编号为 {requestNumber} 的请求");
}
return jobDto;
}
/// <summary>
/// 获取任务详情
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("{id}")]
public virtual async Task<ActionResult<KittingIssueRequestDTO>> GetAsync(Guid id)
{
var result = await _kittingIssueRequestAppService.GetAsync(id).ConfigureAwait(false);
return Ok(result);
}
}

1
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/ItemContainers/IItemContainerAppService.cs

@ -8,4 +8,5 @@ public interface IItemContainerAppService : ISfsBaseDataAppServiceBase<ItemConta
{
Task<List<ItemContainerDTO>> GetListByItemCodeAsync(string itemCode);
Task UpsertAndItemBasicUomAsync(string itemCode,decimal stdPackQty);
Task<ItemContainerDTO> GetByItemCodeAsync(string itemCode);
}

9
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ItemContainers/ItemContainerAppService.cs

@ -8,6 +8,7 @@ using Microsoft.AspNetCore.Mvc;
using Volo.Abp;
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.ObjectMapping;
using Volo.Abp.Uow;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
@ -81,7 +82,6 @@ public class ItemContainerAppService
return dtos;
}
protected override async Task ValidateImportModelAsync(ItemContainerImportInput importInput, List<ValidationResult> validationRresult)
{
await base.CheckItemBasicPackUomAsync(importInput.ItemCode, importInput.BasicUom, validationRresult).ConfigureAwait(false);
@ -97,4 +97,11 @@ public class ItemContainerAppService
await _repository.UpsertAsync(entity).ConfigureAwait(false);
await ItemBasicAppService.UpsertStdPackQtyAsync(itemCode, stdPackQty).ConfigureAwait(false);
}
[HttpPut("get-by-item")]
public async Task<ItemContainerDTO> GetByItemCodeAsync(string itemCode)
{
var entity = await _repository.FindAsync(p => p.ItemCode == itemCode).ConfigureAwait(false);
return ObjectMapper.Map<ItemContainer, ItemContainerDTO>(entity);
}
}

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/KittingIssueJobs/DTOs/KittingIssueJobDTO.cs

@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Microsoft.EntityFrameworkCore;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;

Loading…
Cancel
Save