diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Consts/WmsWareHouseConst.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Consts/WmsWareHouseConst.cs
index ea87929d..88261f3e 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Consts/WmsWareHouseConst.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Consts/WmsWareHouseConst.cs
@@ -19,6 +19,10 @@ namespace Tnb.WarehouseMgr.Entities.Consts
///
public const string WMS_PRETASK_H_ENCODE = "PreTaskGen";
///
+ /// 任务执行ENCODE
+ ///
+ public const string WMS_TASK_EXECUTE_ENCODE = "WmsTaskRequest";
+ ///
/// 预任务单据状态-待下发Id
///
public const string PRETASK_BILL_STATUS_DXF_ID = "26126822610469";
@@ -38,6 +42,12 @@ namespace Tnb.WarehouseMgr.Entities.Consts
/// 预任务单据状态-已完成Id
///
public const string PRETASK_BILL_STATUS_CANCEL_ID = "26126842129701";
+
+ //
+ ///
+ /// 任务单据状态-待执行Id
+ ///
+ public const string TASK_BILL_STATUS_DZX_ID = "26126851525157";
//
///
/// 任务单据状态-已下达Id
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/GenPreTaskUpInput.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/GenPreTaskUpInput.cs
index 0c4907b6..f4decc33 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/GenPreTaskUpInput.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/GenPreTaskUpInput.cs
@@ -20,6 +20,10 @@ namespace Tnb.WarehouseMgr.Entities.Dto
///
public string CarryId { get; set; }
///
+ /// 载具Code
+ ///
+ public string CarryCode { get; set; }
+ ///
/// 载具起始库位Id
///
public string CarryStartLocationId { get; set; }
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWareHouseService.cs b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWareHouseService.cs
index ca5fb036..52e6804a 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWareHouseService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWareHouseService.cs
@@ -1 +1 @@
-using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Tnb.BasicData.Entities;
using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Dto;
namespace Tnb.WarehouseMgr.Interfaces
{
///
/// 库房业务(出入库)接口
///
public interface IWareHouseService
{
///
/// 入库策略
///
///
///
Task> InStockStrategy([FromQuery] InStockStrategyQuery input);
///
/// 出库策略
///
///
///
//Task> OutStockStrategy([FromQuery] OutStockStrategyQuery input);
///
/// 路径算法
///
///
///
///
Task> PathAlgorithms(string pStartId, string pEndId);
///
/// 生成预任务
///
///
///
Task GenPreTask(List preTasks);
///
/// 生成预任务成功后操作
///
///
///
Task GenTaskHandleAfter(GenPreTaskUpInput input);
}
}
\ No newline at end of file
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Tnb.BasicData.Entities;
using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Dto;
namespace Tnb.WarehouseMgr.Interfaces
{
///
/// 库房业务(出入库)接口
///
public interface IWareHouseService
{
///
/// 入库策略
///
///
///
Task> InStockStrategy([FromQuery] InStockStrategyQuery input);
///
/// 出库策略
///
///
///
//Task> OutStockStrategy([FromQuery] OutStockStrategyQuery input);
///
/// 路径算法
///
///
///
///
Task> PathAlgorithms(string pStartId, string pEndId);
///
/// 生成预任务
///
///
///
Task GenPreTask(List preTasks);
///
/// 生成预任务成功后操作
///
///
///
Task GenInStockTaskHandleAfter(GenPreTaskUpInput input);
}
}
\ No newline at end of file
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WareHouseService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WareHouseService.cs
index ed3d97f3..2e015270 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WareHouseService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WareHouseService.cs
@@ -47,10 +47,12 @@ namespace Tnb.WarehouseMgr
{
private readonly ISqlSugarClient _db;
private readonly IDictionaryDataService _dictionaryDataService;
- public WareHouseService(ISqlSugarRepository repository, IDictionaryDataService dictionaryDataService)
+ private readonly IBillRullService _billRullService;
+ public WareHouseService(ISqlSugarRepository repository, IDictionaryDataService dictionaryDataService, IBillRullService billRullService)
{
_db = repository.AsSugarClient();
_dictionaryDataService = dictionaryDataService;
+ _billRullService= billRullService;
}
///
/// 根据载具Id带出库位、仓库信息
@@ -231,6 +233,7 @@ namespace Tnb.WarehouseMgr
items.ForEach(x =>
{
x.is_chain = 0;
+
x.chain_type = "0";
});
}
@@ -266,6 +269,12 @@ namespace Tnb.WarehouseMgr
{
var moveNum = itGroup.First().move_num;
var items = itGroup.Adapt>();
+ items.ForEach(x =>
+ {
+ x.status = WmsWareHouseConst.TASK_BILL_STATUS_DZX_ID;
+ x.bill_code = _billRullService.GetBillNumber(WmsWareHouseConst.WMS_TASK_EXECUTE_ENCODE).GetAwaiter().GetResult();
+ x.is_sign = 1;
+ });
var areaPreTasks = itGroup.ToList();
if (moveNum == 1)
{
@@ -460,16 +469,14 @@ namespace Tnb.WarehouseMgr
///
///
[NonAction]
- public async Task GenTaskHandleAfter(GenPreTaskUpInput input)
+ public async Task GenInStockTaskHandleAfter(GenPreTaskUpInput input)
{
try
{
await _db.Ado.BeginTranAsync();
- //根据载具移入Id,回更单据状态
- await _db.Updateable().SetColumns(it => new WmsMoveInstock { status = WmsWareHouseConst.BILLSTATUS_ON_ID }).Where(it => it.id == input.PreTaskId).ExecuteCommandAsync();
//根据生成的预任务,插入预任务操作记录
await _db.Insertable(input.PreTaskRecord).ExecuteCommandAsync();
- if(input.PreTaskHandleCodes.Count > 0)
+ if (input.PreTaskHandleCodes.Count > 0)
{
await _db.Insertable(input.PreTaskHandleCodes).ExecuteCommandAsync();
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveInStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveInStockService.cs
index 63e394d2..d1273e6c 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveInStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveInStockService.cs
@@ -138,8 +138,10 @@ namespace Tnb.WarehouseMgr
handleH.create_id = _userManager.UserId;
handleH.create_time = DateTime.Now;
preTaskUpInput.PreTaskRecord = handleH;
+ //根据载具移入Id,回更单据状态
+ await _db.Updateable().SetColumns(it => new WmsMoveInstock { status = WmsWareHouseConst.BILLSTATUS_ON_ID }).Where(it => it.id == preTaskUpInput.PreTaskId).ExecuteCommandAsync();
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveOutStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveOutStockService.cs
index d4610965..4e6ea11c 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveOutStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsCarryMoveOutStockService.cs
@@ -124,7 +124,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.location_id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyInstockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyInstockService.cs
index 5adddff7..2b9b5057 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyInstockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyInstockService.cs
@@ -125,7 +125,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyOutstockService .cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyOutstockService .cs
index 03277942..7f0cad59 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyOutstockService .cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsEmptyOutstockService .cs
@@ -149,7 +149,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveInStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveInStockService.cs
index c7340eaf..9d9f3e51 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveInStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveInStockService.cs
@@ -127,7 +127,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.location_id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveOutStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveOutStockService.cs
index c5044282..0b12afc7 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveOutStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDACarryMoveOutStockService.cs
@@ -124,7 +124,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.location_id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs
index 33c6c57c..270e933a 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAEmptyInstockService.cs
@@ -125,7 +125,7 @@ namespace Tnb.WarehouseMgr
preTaskUpInput.LocationIds = points.Select(x => x.id).ToList();
preTaskUpInput.PreTaskRecords = preTasks.Adapt>();
preTaskUpInput.PreTaskRecords.ForEach(x => x.id = SnowflakeIdHelper.NextId());
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _wareHouseService.GenInStockTaskHandleAfter(preTaskUpInput);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAInStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAInStockService.cs
index 001de9db..56c393ec 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAInStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsPDAInStockService.cs
@@ -157,7 +157,6 @@ namespace Tnb.WarehouseMgr
handleCode.code_batch = jo.Value(nameof(WmsHandleCode.code_batch));
handleCode.codeqty = jo.Value(nameof(WmsHandleCode.codeqty));
handleCode.unit_id = _db.Queryable().Single(it => it.id == materialId).unit_id;
- //handleCode.unit_code=_db.Queryable().Single(it => it.id == materialId);
handleCode.create_id = _userManager.UserId;
handleCode.create_time = DateTime.Now;
preTaskUpInput.PreTaskHandleCodes.Add(handleCode);
@@ -165,7 +164,9 @@ namespace Tnb.WarehouseMgr
}
}
}
- await _wareHouseService.GenTaskHandleAfter(preTaskUpInput);
+ await _db.Insertable(preTaskUpInput.PreTaskRecord).ExecuteCommandAsync();
+ await _db.Updateable().SetColumns(it => new WmsCarryH { carry_code = input.data[nameof(WmsCarryH.carry_code)].ToString(), is_lock = 1, location_id = preTaskUpInput.CarryStartLocationId, location_code = preTaskUpInput.CarryStartLocationCode }).Where(it => it.id == preTaskUpInput.CarryId).ExecuteCommandAsync();
+
}
}
}