接口新增
This commit is contained in:
@@ -6,6 +6,7 @@ using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using WMS.Web.Core.Dto;
|
||||
using WMS.Web.Core.Dto.InStock;
|
||||
using WMS.Web.Core.Dto.InStockTask;
|
||||
using WMS.Web.Core.Internal.Results;
|
||||
using WMS.Web.Domain.Infrastructure;
|
||||
using WMS.Web.Domain.IService;
|
||||
@@ -63,6 +64,22 @@ namespace WMS.Web.Api.Controllers
|
||||
return await _inStockService.Shelf(dto, loginInfo);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 通过箱号获取到入库任务单数据
|
||||
/// </summary>
|
||||
/// <param name="boxBillNo"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet]
|
||||
[Route("GetTaskByBox")]
|
||||
public async Task<Result<InStockTaskInfoDto>> GetTaskByBox([FromQuery] string boxBillNo)
|
||||
{
|
||||
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
|
||||
if (loginInfo == null || loginInfo.UserInfo == null)
|
||||
return Result<InStockTaskInfoDto>.ReFailure(ResultCodes.Token_Invalid_Error);
|
||||
|
||||
return await _inStockService.GetInfoByBox(boxBillNo);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 同步金蝶
|
||||
/// </summary>
|
||||
|
||||
@@ -68,6 +68,13 @@
|
||||
<param name="dto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Api.Controllers.InStockController.GetTaskByBox(System.String)">
|
||||
<summary>
|
||||
通过箱号获取到入库任务单数据
|
||||
</summary>
|
||||
<param name="boxBillNo"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Api.Controllers.InStockController.Sync(WMS.Web.Core.Dto.OperateRequest)">
|
||||
<summary>
|
||||
同步金蝶
|
||||
|
||||
@@ -525,6 +525,31 @@
|
||||
表单所在的子系统内码,字符串类型(非必录)
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:WMS.Web.Core.Dto.Erp.ErpPushDto">
|
||||
<summary>
|
||||
下推
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpPushDto.FormId">
|
||||
<summary>
|
||||
业务对象表单Id(必录)
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpPushDto.Numbers">
|
||||
<summary>
|
||||
业务对象表单Id(必录)
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpPushDto.DetailsId">
|
||||
<summary>
|
||||
分录内码集合,逗号分隔(分录下推时必录) 注(按分录下推时,单据内码和编码不需要填,否则按整单下推)
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.Erp.ErpPushDto.Type">
|
||||
<summary>
|
||||
目标单据类型内码
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:WMS.Web.Core.Dto.Erp.ErpSave`1">
|
||||
<summary>
|
||||
Erp同步数据时单据头
|
||||
|
||||
@@ -1399,6 +1399,13 @@
|
||||
<param name="loginInfo"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.IService.IInStockService.GetInfoByBox(System.String)">
|
||||
<summary>
|
||||
获取任务单:根据箱号信息
|
||||
</summary>
|
||||
<param name="boxBillNo"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.IService.IInStockService.Save(WMS.Web.Core.Dto.InStock.SaveInStockRequest,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
保存-出库单
|
||||
@@ -2001,6 +2008,13 @@
|
||||
<param name="loginInfo"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.InStockService.GetInfoByBox(System.String)">
|
||||
<summary>
|
||||
获取任务单:根据箱号信息
|
||||
</summary>
|
||||
<param name="boxBillNo"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.InStockService.Save(WMS.Web.Core.Dto.InStock.SaveInStockRequest,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
保存-出库单
|
||||
@@ -2119,6 +2133,13 @@
|
||||
<param name="formId"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.Public.ErpService.Push(WMS.Web.Core.Dto.Erp.ErpPushDto)">
|
||||
<summary>
|
||||
下推
|
||||
</summary>
|
||||
<param name="dto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.Public.HttpClientService.GetAsync``1(System.String,System.Int32)">
|
||||
<summary>
|
||||
Get方法
|
||||
|
||||
@@ -39,6 +39,13 @@ namespace WMS.Web.Domain.IService
|
||||
/// <returns></returns>
|
||||
Task<Result> Shelf(SaveInStockRequest instock, LoginInDto loginInfo);
|
||||
|
||||
/// <summary>
|
||||
/// 获取任务单:根据箱号信息
|
||||
/// </summary>
|
||||
/// <param name="boxBillNo"></param>
|
||||
/// <returns></returns>
|
||||
Task<Result<InStockTaskInfoDto>> GetInfoByBox(string boxBillNo);
|
||||
|
||||
/// <summary>
|
||||
/// 保存-出库单
|
||||
/// </summary>
|
||||
|
||||
@@ -27,6 +27,12 @@ namespace WMS.Web.Domain.Mappers
|
||||
CreateMap<ErpPurchaseInStockResultDto, InStockTask>()
|
||||
.ForMember(x => x.SourceBillNo, ops => ops.MapFrom(x => x.FBillNo));
|
||||
|
||||
CreateMap<InStockTask, InStockTaskInfoDto>()
|
||||
.ForMember(x => x.Details, ops => ops.Ignore());
|
||||
|
||||
CreateMap<InStockTaskDetails, InStockTaskDetailsInfoDto>();
|
||||
|
||||
|
||||
CreateMap<ErpPurchaseInStockResultDto, InStockTaskDetails>()
|
||||
.ForMember(x => x.SupplierId, ops => ops.MapFrom(x => x.FSupplierId))
|
||||
.ForMember(x => x.OrgId, ops => ops.MapFrom(x => x.FPurchaseOrgId))
|
||||
|
||||
@@ -109,18 +109,36 @@ namespace WMS.Web.Domain.Services
|
||||
return Result.ReSuccess();
|
||||
}
|
||||
|
||||
public async Task<Result<InStockTaskDetailsInfoDto>> GetInfoByBox(string boxBillNo)
|
||||
/// <summary>
|
||||
/// 获取任务单:根据箱号信息
|
||||
/// </summary>
|
||||
/// <param name="boxBillNo"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<Result<InStockTaskInfoDto>> GetInfoByBox(string boxBillNo)
|
||||
{
|
||||
//1.先判断:箱号已经绑定了入库任务单中;备注:业务说法就是箱是否收货了
|
||||
var isBind= await _inStockTaskRepositories.IsExist(boxBillNo);
|
||||
if (!isBind)
|
||||
return Result<InStockTaskDetailsInfoDto>.ReFailure(ResultCodes.Box_NoBind_Task_Data);
|
||||
var tast= await _inStockTaskRepositories.GetBy(boxBillNo);
|
||||
if (tast==null)
|
||||
return Result<InStockTaskInfoDto>.ReFailure(ResultCodes.Box_NoBind_Task_Data);
|
||||
|
||||
var boxBillNos=new List<string>();
|
||||
boxBillNos.Add(boxBillNo);
|
||||
//2.找到箱对应的物料信息
|
||||
var box= await _boxRepositories.GetBox(boxBillNos);
|
||||
return null;
|
||||
var box= await _boxRepositories.GetByNo(boxBillNo);
|
||||
if(box==null)
|
||||
return Result<InStockTaskInfoDto>.ReFailure(ResultCodes.BoxNoData);
|
||||
|
||||
//3.组装返回数据
|
||||
var result = _mapper.Map<InStockTaskInfoDto>(tast);
|
||||
foreach (var item in tast.Details)
|
||||
{
|
||||
//3.1判断当前物料是否相同
|
||||
var isHave = box.Details.Where(x => x.MaterialId == item.MaterialId).Any();
|
||||
if (!isHave)
|
||||
continue;
|
||||
//3.2映射返回明细对象
|
||||
var task_detail = _mapper.Map<InStockTaskDetailsInfoDto>(item);
|
||||
result.Details.Add(task_detail);
|
||||
}
|
||||
return Result<InStockTaskInfoDto>.ReSuccess(result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user