|
|
@ -15,6 +15,7 @@ using Win_in.Sfs.Shared.Domain; |
|
|
|
using Win_in.Sfs.Shared.Domain.Shared; |
|
|
|
using Win_in.Sfs.Wms.Inventory.Application.Contracts; |
|
|
|
using Win_in.Sfs.Wms.Store.Application.Contracts; |
|
|
|
using Win_in.Sfs.Wms.Store.Domain; |
|
|
|
|
|
|
|
namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs; |
|
|
|
|
|
|
@ -46,5 +47,125 @@ public class ThirdLocationJobController : AbpController |
|
|
|
_dictApp = dictApp; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 执行任务明细
|
|
|
|
/// </summary>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("ExecuteDetail/{masterId}")] |
|
|
|
public async Task ExecuteDetailAsync(Guid masterId, List<ThirdLocationJobDetailDTO> detailDtoList) |
|
|
|
{ |
|
|
|
await _thirdLocationJobAppService.ExecuteDetailAsync(masterId,detailDtoList).ConfigureAwait(false); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取上架任务详情
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="id"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet("{id}")] |
|
|
|
|
|
|
|
public virtual async Task<ActionResult<ThirdLocationJobDTO>> GetAsync(Guid id) |
|
|
|
{ |
|
|
|
var result = await _thirdLocationJobAppService.GetAsync(id).ConfigureAwait(false); |
|
|
|
return Ok(result); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取列表
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="pageSize"></param>
|
|
|
|
/// <param name="pageIndex"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet("list")] |
|
|
|
public virtual async Task<PagedResultDto<ThirdLocationJobDTO>> GetListAsync(int pageSize, int pageIndex) |
|
|
|
{ |
|
|
|
var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false); |
|
|
|
var jsonCodes = JsonSerializer.Serialize(wlgCodes); |
|
|
|
|
|
|
|
var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing ,(int)EnumJobStatus.Partial}; |
|
|
|
var jsonStatus = JsonSerializer.Serialize(status); |
|
|
|
|
|
|
|
var request = new SfsJobRequestInputBase |
|
|
|
{ |
|
|
|
MaxResultCount = pageSize, |
|
|
|
SkipCount = (pageIndex - 1) * pageSize, |
|
|
|
Sorting = $"{nameof(ThirdLocationJobDTO.Priority)} ASC", |
|
|
|
Condition = new Condition |
|
|
|
{ |
|
|
|
Filters = new List<Filter> |
|
|
|
{ |
|
|
|
new(nameof(ThirdLocationJobDTO.WorkGroupCode),jsonCodes,"In"), |
|
|
|
new(nameof(ThirdLocationJobDTO.JobStatus),jsonStatus,"In") |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
var list = await _thirdLocationJobAppService.GetPagedListByFilterAsync(request, true).ConfigureAwait(false); |
|
|
|
return list; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取列表 筛选
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="sfsRequestDTO"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("list")] |
|
|
|
public virtual async Task<PagedResultDto<ThirdLocationJobDTO>> GetListAsync(SfsJobRequestInputBase sfsRequestDTO) |
|
|
|
{ |
|
|
|
var list = await _thirdLocationJobAppService.GetPagedListByFilterAsync(sfsRequestDTO, true).ConfigureAwait(false); |
|
|
|
return list; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取任务数量
|
|
|
|
/// </summary>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet("count")] |
|
|
|
public virtual async Task<ActionResult<long>> CountAsync() |
|
|
|
{ |
|
|
|
var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false); |
|
|
|
var jsonCodes = JsonSerializer.Serialize(wlgCodes); |
|
|
|
|
|
|
|
var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing ,(int)EnumJobStatus.Partial}; |
|
|
|
var jsonStatus = JsonSerializer.Serialize(status); |
|
|
|
|
|
|
|
var request = new SfsJobRequestInputBase |
|
|
|
{ |
|
|
|
Sorting = $"{nameof(ThirdLocationJobDTO.Priority)} ASC", |
|
|
|
Condition = new Condition |
|
|
|
{ |
|
|
|
Filters = new List<Filter> |
|
|
|
{ |
|
|
|
new(nameof(ThirdLocationJobDTO.WorkGroupCode),jsonCodes,"In"), |
|
|
|
new(nameof(ThirdLocationJobDTO.JobStatus),jsonStatus,"In") |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
var count = await _thirdLocationJobAppService.GetCountByFilterAsync(request).ConfigureAwait(false); |
|
|
|
|
|
|
|
return Ok(count); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 承接任务
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="id"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("take/{id}")] |
|
|
|
public virtual async Task TakeAsync(Guid id) |
|
|
|
{ |
|
|
|
await _thirdLocationJobAppService.AcceptAsync(id).ConfigureAwait(false); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 取消承接任务
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="id"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("cancel-take/{id}")] |
|
|
|
public virtual async Task CancelTakeAsync(Guid id) |
|
|
|
{ |
|
|
|
await _thirdLocationJobAppService.CancelAcceptAsync(id).ConfigureAwait(false); |
|
|
|
} |
|
|
|
} |
|
|
|