wms 通用函数提交
This commit is contained in:
@@ -31,10 +31,23 @@ namespace Tnb.WarehouseMgr.Entities.Consts
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public const string PRETASK_BILL_STATUS_START_ID = "26126834032677";
|
public const string PRETASK_BILL_STATUS_START_ID = "26126834032677";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
/// 预任务单据状态-已完成Id
|
||||||
|
/// </summary>
|
||||||
|
public const string PRETASK_BILL_STATUS_COMPLE_ID = "26126860808229";
|
||||||
|
//
|
||||||
|
/// <summary>
|
||||||
/// 任务单据状态-已下达Id
|
/// 任务单据状态-已下达Id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public const string TASK_BILL_STATUS_YXD_ID = "26126853976101";
|
public const string TASK_BILL_STATUS_YXD_ID = "26126853976101";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
/// 任务单据状态-执行中Id
|
||||||
|
/// </summary>
|
||||||
|
public const string TASK_BILL_STATUS_RUNING_ID = "26126856028453";
|
||||||
|
/// <summary>
|
||||||
|
/// 任务单据状态-已完成ID
|
||||||
|
/// </summary>
|
||||||
|
public const string TASK_BILL_STATUS_COMPLE_ID = "26126860808229";
|
||||||
|
/// <summary>
|
||||||
/// 预任务生成业务类型-载具移入Id
|
/// 预任务生成业务类型-载具移入Id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public const string BIZTYPE_MOVEIN_ID = "26121988909861";
|
public const string BIZTYPE_MOVEIN_ID = "26121988909861";
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
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 TaskCompleUpInput
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 任务执行Ids
|
||||||
|
/// </summary>
|
||||||
|
public List<string> disTaskIds { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -14,6 +14,6 @@ namespace Tnb.WarehouseMgr.Entities.Dto.Inputs
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 任务执行Ids
|
/// 任务执行Ids
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public List<string> DisTaskIds { get; set; }
|
public List<string> disTaskIds { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -355,21 +355,49 @@ namespace Tnb.WarehouseMgr
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task TaskExecuteAfter()
|
public async Task TaskExecuteAfter(TaskExecuteAfterUpInput input)
|
||||||
{
|
{
|
||||||
//更新任务执行表单据状态
|
//更新任务执行表单据状态
|
||||||
//清空载具库位数据
|
try
|
||||||
//清空起始库位,状态改为空闲、锁定状态,未锁定
|
{
|
||||||
|
await _db.Ado.BeginTranAsync();
|
||||||
|
|
||||||
|
await _db.Updateable<WmsDistaskH>().SetColumns(it => new WmsDistaskH { status = WmsWareHouseConst.TASK_BILL_STATUS_RUNING_ID }).Where(it => input.disTaskIds.Contains(it.id)).ExecuteCommandAsync();
|
||||||
|
//清空载具库位数据
|
||||||
|
var carryIds = await _db.Queryable<WmsDistaskH>().Where(it => input.disTaskIds.Contains(it.id)).Select(it => it.carry_id).ToListAsync();
|
||||||
|
if (carryIds?.Count > 0)
|
||||||
|
{
|
||||||
|
await _db.Updateable<WmsCarryH>().SetColumns(it => new WmsCarryH { location_id = null, location_code = null }).Where(it => carryIds.Contains(it.id)).ExecuteCommandAsync();
|
||||||
|
}
|
||||||
|
var startLocationIds = await _db.Queryable<WmsDistaskH>().Where(it => input.disTaskIds.Contains(it.id)).Select(it => it.startlocation_id).ToListAsync();
|
||||||
|
//更新起始库位,状态改为空闲、锁定状态,未锁定
|
||||||
|
if (startLocationIds?.Count > 0)
|
||||||
|
{
|
||||||
|
await _db.Updateable<BasLocation>().SetColumns(it => new BasLocation { is_use = "0", is_lock = 0 }).Where(it => startLocationIds.Contains(it.id)).ExecuteCommandAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
await _db.Ado.CommitTranAsync();
|
||||||
|
}
|
||||||
|
catch (Exception)
|
||||||
|
{
|
||||||
|
await _db.Ado.RollbackTranAsync();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 任务完成
|
/// 任务完成
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task TaskComplate()
|
public async Task TaskComplate(TaskCompleUpInput input)
|
||||||
{
|
{
|
||||||
//更新任务执行表,单据状态为 完成
|
//更新任务执行表,单据状态为 完成
|
||||||
|
await _db.Updateable<WmsDistaskH>().SetColumns(it => new WmsDistaskH { status = WmsWareHouseConst.TASK_BILL_STATUS_COMPLE_ID }).Where(it => input.disTaskIds.Contains(it.id)).ExecuteCommandAsync();
|
||||||
//更新预任务申请表,单据状态为 已完成
|
//更新预任务申请表,单据状态为 已完成
|
||||||
|
var preTaskIds = await _db.Queryable<WmsDistaskH>().Where(it => input.disTaskIds.Contains(it.id)).Select(it => it.pretask_id).ToListAsync();
|
||||||
|
if(preTaskIds?.Count > 0)
|
||||||
|
{
|
||||||
|
await _db.Updateable<WmsPretaskH>().SetColumns(it => new WmsPretaskH { status = WmsWareHouseConst.PRETASK_BILL_STATUS_COMPLE_ID }).Where(it => preTaskIds.Contains(it.id)).ExecuteCommandAsync();
|
||||||
|
}
|
||||||
//更新载具,锁定状态为未锁定,更新载具的库位当前任务的目标库位
|
//更新载具,锁定状态为未锁定,更新载具的库位当前任务的目标库位
|
||||||
//更新库位信息,使用状态为 使用,锁定状态为未锁定
|
//更新库位信息,使用状态为 使用,锁定状态为未锁定
|
||||||
//更新业务主表的单据状态
|
//更新业务主表的单据状态
|
||||||
|
|||||||
Reference in New Issue
Block a user