暂存仓呼叫其它入库
This commit is contained in:
@@ -1119,7 +1119,7 @@ where carry_code = '{coderesult}' and status = '{WmsWareHouseConst.TASK_BILL_STA
|
||||
// 获取下到输送线9和10的未完成的转库单
|
||||
List<WmsMaterialTransfer> WmsMaterialTransfers = db_Floor2UpMachinecodetimer.Queryable<WmsMaterialTransfer>()
|
||||
.InnerJoin<WmsMaterialTransferCarry>((a, b) => a.id == b.bill_id)
|
||||
.Where((a, b) => a.warehouse_instock == "33780009364245" && a.warehouse_outstock == "2" && a.remainbindracknum > 0
|
||||
.Where((a, b) => (a.warehouse_instock == WmsWareHouseConst.WAREHOUSE_ZCC_ID || a.warehouse_instock == WmsWareHouseConst.WAREHOUSE_HCC_ID) && a.warehouse_outstock == "2" && a.remainbindracknum > 0
|
||||
&& b.carry_code == barcode).ToList();
|
||||
|
||||
if (WmsMaterialTransfers.Count() == 0)
|
||||
@@ -1228,7 +1228,6 @@ where carry_code = '{coderesult}' and status = '{WmsWareHouseConst.TASK_BILL_STA
|
||||
}).Where(r => r.id == WmsMaterialTransfer.id).ExecuteCommandAsync();
|
||||
LoggerFloor2UpDownMachine.LogInformation($@"【上升降机】回写转库单的剩余可绑定料架数量");
|
||||
|
||||
|
||||
// 开始码垛
|
||||
bool result_开始码垛 = await Floor2UpDownMachinecode_SetTag(MechanicalArmConsts.上升降机当前码垛位, target.stackingposition.ToString());
|
||||
LoggerFloor2UpDownMachine.LogInformation($@"【上升降机】码垛位{target.stackingposition}码垛结果 {result_开始码垛}");
|
||||
|
||||
@@ -144,4 +144,9 @@ public partial class WmsCarryH : BaseEntity<string>
|
||||
/// 入库时间
|
||||
/// </summary>
|
||||
public DateTime? instock_time { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 转库单ID
|
||||
/// </summary>
|
||||
public string? material_tranfer_billid { get; set; }
|
||||
}
|
||||
|
||||
@@ -54,4 +54,9 @@ public partial class WmsPrdInstockD : BaseEntity<string>
|
||||
/// </summary>
|
||||
public string? status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 生产仓库
|
||||
/// </summary>
|
||||
public string? scwarehouse_id { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@@ -704,7 +704,8 @@ namespace Tnb.WarehouseMgr
|
||||
|
||||
string transfer_type = "";
|
||||
// 中储仓到暂存仓
|
||||
if (warehouse_outstock.id == WmsWareHouseConst.WAREHOUSE_ZC_ID && warehouse_instock.id == WmsWareHouseConst.WAREHOUSE_ZCC_ID)
|
||||
if (warehouse_outstock.id == WmsWareHouseConst.WAREHOUSE_ZC_ID
|
||||
&& (warehouse_instock.id == WmsWareHouseConst.WAREHOUSE_ZCC_ID || warehouse_instock.id == WmsWareHouseConst.WAREHOUSE_HCC_ID))
|
||||
{
|
||||
int count = input.details.Where(r => string.IsNullOrEmpty(r.station_code)).Count();
|
||||
if (count > 0)
|
||||
|
||||
@@ -1220,7 +1220,8 @@ namespace Tnb.WarehouseMgr
|
||||
Logger.LogInformation($@"【上升降机】更新料架 {target.rackcode} 在二楼配送的目标工位 {targetWorkstation}");
|
||||
await _db.Updateable<WmsCarryH>().SetColumns(r => new WmsCarryH
|
||||
{
|
||||
work_station = targetWorkstation
|
||||
work_station = targetWorkstation,
|
||||
material_tranfer_billid = wmsMaterialTransferD.bill_id
|
||||
}).Where(r => r.id == target.rackid).ExecuteCommandAsync();
|
||||
}
|
||||
else if (target.note == "下升降机")
|
||||
@@ -2474,6 +2475,7 @@ namespace Tnb.WarehouseMgr
|
||||
[HttpPost]
|
||||
public async Task TaskComplate(TaskCompleUpInput input)
|
||||
{
|
||||
|
||||
var db = _db.CopyNew();
|
||||
try
|
||||
{
|
||||
@@ -2629,11 +2631,63 @@ namespace Tnb.WarehouseMgr
|
||||
work_station = ""
|
||||
}).Where(r => r.id == dt.carry_id).ExecuteCommandAsync();
|
||||
|
||||
await QTRK2BIP(dt, db);
|
||||
// require_code是任务单
|
||||
//string mo_task_code = dt.require_code;
|
||||
}
|
||||
else if (dt.biz_type == "erp_qtrk")
|
||||
{
|
||||
await QTRK2BIP(dt, db);
|
||||
}
|
||||
#endregion
|
||||
|
||||
List<WmsDistaskCode> disTaskCodes = await db.Queryable<WmsDistaskCode>().Where(it => it.bill_id == dt.id).ToListAsync();
|
||||
WareHouseUpInput upInput = new() { bizTypeId = dt.biz_type, requireId = dt.require_id!, require_code = dt.require_code!, source_id = dt.source_id!
|
||||
, source_code = dt.source_code!, distaskCodes = disTaskCodes, carryIds = disTasks.Select(x => x.carry_id).ToList(),
|
||||
bill_code = dt.bill_code!,area_code= dt.area_code!,wmsDistaskH = dt!
|
||||
};
|
||||
|
||||
/*if (!_userManager?.LoginType.IsNullOrEmpty() ?? false)
|
||||
{
|
||||
upInput.loginType = "app";
|
||||
}
|
||||
else
|
||||
{
|
||||
upInput.loginType = "web";
|
||||
}*/
|
||||
upInput.loginType = "web";//(!string.IsNullOrEmpty(_userManager?.LoginType) ? "app" : "web") ?? "web";
|
||||
if (dt.is_sign == 1 && dt.chain_type == "3")
|
||||
{
|
||||
await DoUpdate(upInput);
|
||||
}
|
||||
}
|
||||
}
|
||||
Logger.Information($"【TaskComplate】 任务操作完成提交事务 {string.Join(",", input.disTaskIds)}");
|
||||
await db.Ado.CommitTranAsync();
|
||||
|
||||
Logger.Information($"【TaskComplate】 任务操作完成 {string.Join(",", input.disTaskIds)}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.Error($"任务结束失败", ex);
|
||||
Logger.Error($"任务结束失败堆栈异常", ex);
|
||||
await db.Ado.RollbackTranAsync();
|
||||
throw;
|
||||
}
|
||||
finally
|
||||
{
|
||||
_ = GenTaskExecute();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async Task QTRK2BIP(WmsDistaskH? dt, ISqlSugarClient db)
|
||||
{
|
||||
if (string.IsNullOrEmpty(dt.source_id))
|
||||
{
|
||||
Logger.LogWarning($"上传其它入库到BIP时,转库单ID为空,无法上传 任务信息:{JsonConvert.SerializeObject(dt)}");
|
||||
return;
|
||||
}
|
||||
WmsMaterialTransfer wmsMaterialTransfer = await db.Queryable<WmsMaterialTransfer>().SingleAsync(x => x.id == dt.source_id);
|
||||
List<WmsMaterialTransferD> wmsMaterialTransferDs = await db.Queryable<WmsMaterialTransferD>().Where(x => x.bill_id == dt.source_id).ToListAsync();
|
||||
List<String> materialIds = wmsMaterialTransferDs.Select(x => x.material_id).Distinct().ToList();
|
||||
@@ -2723,46 +2777,8 @@ namespace Tnb.WarehouseMgr
|
||||
|
||||
await db.Insertable(thirdWebapiRecord).ExecuteCommandAsync();
|
||||
}
|
||||
#endregion
|
||||
|
||||
List<WmsDistaskCode> disTaskCodes = await db.Queryable<WmsDistaskCode>().Where(it => it.bill_id == dt.id).ToListAsync();
|
||||
WareHouseUpInput upInput = new() { bizTypeId = dt.biz_type, requireId = dt.require_id!, require_code = dt.require_code!, source_id = dt.source_id!
|
||||
, source_code = dt.source_code!, distaskCodes = disTaskCodes, carryIds = disTasks.Select(x => x.carry_id).ToList(),
|
||||
bill_code = dt.bill_code!,area_code= dt.area_code!,wmsDistaskH = dt!
|
||||
};
|
||||
|
||||
/*if (!_userManager?.LoginType.IsNullOrEmpty() ?? false)
|
||||
{
|
||||
upInput.loginType = "app";
|
||||
}
|
||||
else
|
||||
{
|
||||
upInput.loginType = "web";
|
||||
}*/
|
||||
upInput.loginType = "web";//(!string.IsNullOrEmpty(_userManager?.LoginType) ? "app" : "web") ?? "web";
|
||||
if (dt.is_sign == 1 && dt.chain_type == "3")
|
||||
{
|
||||
await DoUpdate(upInput);
|
||||
}
|
||||
}
|
||||
}
|
||||
Logger.Information($"【TaskComplate】 任务操作完成提交事务 {string.Join(",", input.disTaskIds)}");
|
||||
await db.Ado.CommitTranAsync();
|
||||
|
||||
Logger.Information($"【TaskComplate】 任务操作完成 {string.Join(",", input.disTaskIds)}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.Error($"任务结束失败", ex);
|
||||
Logger.Error($"任务结束失败堆栈异常", ex);
|
||||
await db.Ado.RollbackTranAsync();
|
||||
throw;
|
||||
}
|
||||
finally
|
||||
{
|
||||
_ = GenTaskExecute();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 出入库策略启用、禁用状态修改
|
||||
/// </summary>
|
||||
|
||||
@@ -1624,7 +1624,7 @@ namespace Tnb.WarehouseMgr
|
||||
commonCreatePretaskInput.carry_code = wmsCarryH.carry_code;
|
||||
commonCreatePretaskInput.task_type = "";
|
||||
commonCreatePretaskInput.biz_type = "FloorCallMaterial";
|
||||
commonCreatePretaskInput.source_id = "";
|
||||
commonCreatePretaskInput.source_id = wmsCarryH.material_tranfer_billid;
|
||||
commonCreatePretaskInput.require_code = "";
|
||||
commonCreatePretaskInput.require_id = prdMoTask.id;
|
||||
commonCreatePretaskInput.require_code = prdMoTask.mo_task_code;
|
||||
|
||||
Reference in New Issue
Block a user