出库签收代码调整

This commit is contained in:
alex
2023-06-26 18:26:54 +08:00
parent 65b6bb31ce
commit 25bdc6af84
4 changed files with 77 additions and 5 deletions

View File

@@ -15,6 +15,10 @@ namespace Tnb.WarehouseMgr.Entities.Consts
/// </summary>
public const string WMS_INSTOCK_D_BILL_STATUS_TYPEID = "25065133038101";
/// <summary>
/// 业务类型TypeId
/// </summary>
public const string WMS_BIZTYPE_ID = "25043955941909";
/// <summary>
/// 预任务生成EnCode
/// </summary>
public const string WMS_PRETASK_H_ENCODE = "PreTaskGen";

View File

@@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tnb.WarehouseMgr.Entities.Dto.Inputs
{
/// <summary>
/// 出库签收输入参数
/// </summary>
public class SignForDeliveryInput
{
/// <summary>
/// 任务ID
/// </summary>
public string disTaskId { get; set; }
/// <summary>
/// 载具ID
/// </summary>
public string carryId { get; set; }
/// <summary>
/// 服务模块
/// </summary>
public string serviceModule { get; set; }
}
}

View File

@@ -164,7 +164,7 @@ namespace Tnb.WarehouseMgr
carryObj.location_id = null;
carryObj.location_code = null;
carryObj.out_status = "0";
carryObj.is_check = 0;
carryObj.is_check = 1;
carryObj.status = 1;
carryObj.bale_num = null;
carryObj.collocation_scheme_id = null;

View File

@@ -1,15 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using JNPF.Common.Contracts;
using JNPF.Common.Enums;
using JNPF.Common.Extension;
using JNPF.FriendlyException;
using JNPF.Systems.Interfaces.System;
using Microsoft.AspNetCore.Mvc;
using Microsoft.CodeAnalysis.Operations;
using SqlSugar;
using Tnb.BasicData.Entities;
using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Consts;
using Tnb.WarehouseMgr.Entities.Dto.Inputs;
using Tnb.WarehouseMgr.Interfaces;
namespace Tnb.WarehouseMgr
{
@@ -19,10 +26,14 @@ namespace Tnb.WarehouseMgr
public class WmsSignForDeliveryService : BaseWareHouseService
{
private readonly ISqlSugarClient _db;
public WmsSignForDeliveryService(ISqlSugarRepository<WmsDistaskH> repository)
private readonly IWmsCarryService _wareCarryService;
private readonly IDictionaryDataService _dictionaryDataService;
private static Dictionary<string, object> _dicBizType = new();
public WmsSignForDeliveryService(ISqlSugarRepository<WmsDistaskH> repository, IWmsCarryService wareCarryService, IDictionaryDataService dictionaryDataService)
{
_db = repository.AsSugarClient();
_wareCarryService = wareCarryService;
_dictionaryDataService = dictionaryDataService;
}
/// <summary>
/// 根据载具ID获取对应的执行任务记录
@@ -35,10 +46,40 @@ namespace Tnb.WarehouseMgr
var item = await _db.Queryable<WmsDistaskH>().FirstAsync(it => it.carry_id == carryId && it.status == WmsWareHouseConst.TASK_BILL_STATUS_COMPLE_ID && it.is_sign == 0);
return item;
}
/// <summary>
/// 出库签收
/// </summary>
/// <returns></returns>
[HttpPost]
public async Task SaveData()
public async Task SignForDelivery(SignForDeliveryInput input)
{
if (_dicBizType.Count < 1)
{
_dicBizType = await _dictionaryDataService.GetDictionaryByTypeId(WmsWareHouseConst.WMS_BIZTYPE_ID);
}
var carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.id == input.carryId);
if (carry != null)
{
var disTask = await _db.Queryable<WmsDistaskH>().SingleAsync(it => it.id == input.disTaskId);
if (disTask != null)
{
if (_dicBizType.ContainsKey(disTask.biz_type))
{
switch (_dicBizType[disTask.biz_type])
{
case "空载具出库":
case "寄存出库":
case "齐套出库":
case "一般出库":
await _wareCarryService.UpdateNullCarry(carry);
break;
}
}
}
var loc = await _db.Queryable<BasLocation>().SingleAsync(it => it.id == carry.location_id);
loc.is_use = "0";
await _db.Updateable(loc).UpdateColumns(it => it.is_use).ExecuteCommandAsync();
}
}
}
}