From 0e450768c357b45701a2e5ed162f4e93b3dd617c Mon Sep 17 00:00:00 2001
From: zhangchengsong <zhangchengsong@hnkhzn.com>
Date: 星期三, 15 四月 2026 20:53:24 +0800
Subject: [PATCH] 最新
---
项目代码/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 347 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 332 insertions(+), 15 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 09db673..bc2ae13 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -16,6 +16,7 @@
#endregion << 鐗� 鏈� 娉� 閲� >>
using AutoMapper;
+using HslCommunication;
using Microsoft.AspNetCore.Mvc.RazorPages;
using NetTaste;
using Newtonsoft.Json;
@@ -38,6 +39,7 @@
using System.Threading.Tasks;
using WIDESEA_Comm.Http;
using WIDESEA_Common.Log;
+using WIDESEA_Core.Enums;
using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
@@ -46,10 +48,14 @@
using WIDESEAWCS_Core.Utilities;
using WIDESEAWCS_DTO.Enum;
using WIDESEAWCS_DTO.TaskInfo;
+using WIDESEAWCS_ISystemRepository;
using WIDESEAWCS_ISystemServices;
using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
+using WIDESEAWCS_Model;
using WIDESEAWCS_Model.Models;
+using WIDESEAWCS_Model.Models.System;
+using WIDESEAWCS_QuartzJob;
using WIDESEAWCS_QuartzJob.Models;
using WIDESEAWCS_QuartzJob.Service;
using WIDESEAWCS_TaskInfoRepository;
@@ -67,6 +73,7 @@
private readonly IMapper _mapper;
private readonly IUnitOfWorkManage _unitOfWorkManage;
private readonly IDt_roadwayinfoService _Dt_roadwayinfoService;
+ private readonly IDt_PlatformStationRepository _dt_PlatformStation;
private Dictionary<string, OrderByType> _taskOrderBy = new()
{
@@ -80,7 +87,7 @@
public string urlWMSdeverror = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlWMSdeverror"];
public string urlWMSliftinposition = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlWMSliftinposition"];
- public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ITask_HtyService task_HtyService, ITask_HtyRepository task_HtyRepository, IUnitOfWorkManage unitOfWork, IDt_roadwayinfoService dt_RoadwayinfoService) : base(BaseDal)
+ public TaskService(ITaskRepository BaseDal, IDt_PlatformStationRepository dt_PlatformStation, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ITask_HtyService task_HtyService, ITask_HtyRepository task_HtyRepository, IUnitOfWorkManage unitOfWork, IDt_roadwayinfoService dt_RoadwayinfoService) : base(BaseDal)
{
_routerService = routerService;
_taskExecuteDetailService = taskExecuteDetailService;
@@ -90,6 +97,13 @@
_mapper = mapper;
_unitOfWorkManage = unitOfWork;
_Dt_roadwayinfoService = dt_RoadwayinfoService;
+ _dt_PlatformStation = dt_PlatformStation;
+ }
+
+ //鏍规嵁浠诲姟鍙凤紝鏌ヨ浠诲姟
+ public Dt_Task? CurrtaskInfo(int taskNum)
+ {
+ return BaseDal.QueryData().Where(x => x.TaskNum == taskNum).FirstOrDefault();
}
/// <summary>
@@ -97,7 +111,7 @@
/// </summary>
/// <param name="taskNum">浠诲姟鍙�</param>
/// <returns></returns>
- public WebResponseContent StackCraneTaskCompleted(int taskNum)
+ public WebResponseContent StackCraneTaskCompleted(int taskNum,string PalletCode)
{
WebResponseContent content = new WebResponseContent();
try
@@ -109,26 +123,61 @@
{
task.TaskState = (int)TaskOutStatusEnum.OutFinish;
BaseDal.UpdateData(task);
-
string Result = WMSTaskStatusEnum.outsuccess.GetDescription();
- //鍚屾缁欎笂娓稿弽棣堜换鍔″畬鎴�
- CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, "invmd", "");
- if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
-
+ if (task.Creater.Equals("WMS"))
+ {
+ //鍚屾缁欎笂娓稿弽棣堜换鍔″畬鎴�
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success")
+ {
+ WriteLog.Write_Log("璋冨彇涓婃父杩斿洖澶辫触", "瀹屾垚鍫嗗灈鏈轰换鍔″け璐�", $"鏉$爜:銆恵task.PalletCode}銆�,浠诲姟鍙凤細銆恵task.TaskNum}銆�");
+ return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ }
task.ModifyDate = DateTime.Now;
BaseDal.DeleteData(task);
_task_HtyService.AddTaskHty(task);
_taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鍑哄簱瀹屾垚");
}
- else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound && task.TaskState == (int)TaskInStatusEnum.SC_InExecuting)
+ else if (task.TaskType == (int)TaskTypeEnum.Inbound && task.TaskState == (int)TaskInStatusEnum.SC_InExecuting)
{
task.TaskState = (int)TaskInStatusEnum.InFinish;
+ BaseDal.UpdateData(task);
string Result = WMSTaskStatusEnum.insuccess.GetDescription();
- CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, "invmd", "");
-
- if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
-
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success")
+ {
+ WriteLog.Write_Log("璋冨彇涓婃父杩斿洖澶辫触", "瀹屾垚鍫嗗灈鏈轰换鍔″け璐�", $"鏉$爜:銆恵task.PalletCode}銆�,浠诲姟鍙凤細銆恵task.TaskNum}銆�");
+ return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ }
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = "System";
+ BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鍏ュ簱瀹屾垚");
+ }
+ else if (task.TaskType == (int)TaskTypeEnum.Inventorybound && task.TaskState == (int)TaskinventoryStatusEnum.SC_inventoryExecuting)
+ {
+ task.TaskState = (int)TaskinventoryStatusEnum.inventoryFinish;
+ BaseDal.UpdateData(task);
+ string Result = WMSTaskStatusEnum.insuccess.GetDescription();
+
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success")
+ {
+ WriteLog.Write_Log("璋冨彇涓婃父杩斿洖澶辫触", "瀹屾垚鍫嗗灈鏈轰换鍔″け璐�", $"鏉$爜:銆恵task.PalletCode}銆�,浠诲姟鍙凤細銆恵task.TaskNum}銆�");
+ return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ }
task.ModifyDate = DateTime.Now;
task.Modifier = "System";
BaseDal.DeleteData(task);
@@ -221,10 +270,10 @@
task.ModifyDate = DateTime.Now;
task.Modifier = "System";
BaseDal.UpdateData(task);
-
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
//鍙嶉鑷充笂娓�
- CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, "invmd", "");
-
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ Console.WriteLine(command.ToJsonString());
_taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, App.User.UserId > 0 ? $"浜哄伐鎵嬪姩灏嗕换鍔$姸鎬佷粠銆恵oldState}銆戣烦杞埌銆恵task.TaskState}銆�" : $"绯荤粺鑷姩娴佺▼锛屼换鍔$姸鎬佷粠銆恵oldState}銆戣浆鍒般�恵task.TaskState}銆�");
content = WebResponseContent.Instance.OK();
@@ -437,5 +486,273 @@
return BaseDal.QueryData(x => x.Roadway == deviceNo && (x.TaskState == (int)TaskInStatusEnum.InNew || x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
}
+ public Dt_Task CutStackerCraneTask(string deviceNo)
+ {
+ Dt_Task dt_Task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && (x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting || x.TaskState == (int)TaskInStatusEnum.SC_InExecuting));
+ return dt_Task;
+ }
+ /// <summary>
+ /// 鎵嬪姩鍙栨秷浠诲姟
+ /// </summary>
+ /// <param name="taskNum"></param>
+ /// <returns></returns>
+ public WebResponseContent TaskCancel(int taskNum)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
+ if (task != null)
+ {
+ //涓婃姤鍏ュ簱浠诲姟寮傚父
+ if (task.TaskType == (int)TaskTypeEnum.Inbound)
+ {
+ string Result = WMSTaskStatusEnum.inerror.GetDescription();
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屼换鍔″彇娑堝け璐ワ紝鏉$爜锛歿task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ BaseDal.DeleteData(task);
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = App.User?.UserName;
+ task.Remark = "浜哄伐鎵嬪姩鍙栨秷";
+ BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ content.Status = true;
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error($"鍙栨秷澶辫触,鍙兘鍙栨秷鍏ュ簱浠诲姟");
+ }
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error($"鍙栨秷澶辫触,璇ヤ换鍔°�恵taskNum}銆戜笉瀛樺湪");
+ }
+ return content;
+ }
+ catch (Exception e)
+ {
+ return WebResponseContent.Instance.Error();
+ }
+ }
+ /// <summary>
+ ///鎵嬪姩瀹屾垚浠诲姟
+ /// </summary>
+ /// <param name="taskNum"></param>
+ /// <returns></returns>
+ public WebResponseContent TaskHandCompleted(int taskNum)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
+ if (task == null) return WebResponseContent.Instance.Error($"鏈壘鍒拌浠诲姟淇℃伅,浠诲姟鍙�:銆恵taskNum}銆�");
+
+ if (task.TaskType == (int)TaskTypeEnum.Outbound)
+ {
+ string Result = WMSTaskStatusEnum.outsuccess.GetDescription();
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = App.User?.UserName;
+ task.Remark = "浜哄伐鎵嬪姩瀹屾垚";
+ BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鎵嬪姩鍑哄簱瀹屾垚");
+ }
+ else if (task.TaskType == (int)TaskTypeEnum.Inbound)
+ {
+ string Result = WMSTaskStatusEnum.insuccess.GetDescription();
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = App.User?.UserName;
+ task.Remark = "浜哄伐鎵嬪姩瀹屾垚";
+ BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鎵嬪姩鍏ュ簱瀹屾垚");
+ }
+ else if (task.TaskType == (int)TaskTypeEnum.Inventorybound)
+ {;
+ string Result = WMSTaskStatusEnum.insuccess.GetDescription();
+ if (task.Creater.Equals("WMS"))
+ {
+ Dt_roadwayinfo roadwayinfo = _Dt_roadwayinfoService.GetRoadwayinfo(task.Roadway);
+ CommandResult command = taskreturn(int.Parse(task.WMStaskid), Result, roadwayinfo.WarehouseInvType, "");
+ if (command.status != "success") return content.Error($"璋冨彇涓婃父杩斿洖澶辫触锛屽畬鎴愬爢鍨涙満浠诲姟澶辫触锛屾潯鐮侊細{task.PalletCode},浠诲姟鍙凤細{task.TaskNum}");
+ }
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = App.User?.UserName;
+ task.Remark = "浜哄伐鎵嬪姩瀹屾垚";
+ BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鎵嬪姩鍏ュ簱瀹屾垚");
+ }
+ else
+ {
+ throw new Exception($"浠诲姟绫诲瀷閿欒,鏈壘鍒拌浠诲姟绫诲瀷,浠诲姟鍙�:銆恵taskNum}銆�,浠诲姟绫诲瀷:銆恵task.TaskType}銆�");
+ }
+ content.OK();
+ }
+ catch (Exception ex)
+ {
+ content.Error($"浠诲姟瀹屾垚寮傚父,浠诲姟鍙�:銆恵taskNum}銆戯紝鍘熷洜锛歿ex.Message}");
+ }
+ return content;
+ }
+
+ /// <summary>
+ /// 鎵嬪姩鍒涘缓浠诲姟
+ /// </summary>
+ /// <param name="transfer"></param>
+ /// <returns></returns>
+ public WebResponseContent CreateManualTask(Dt_Task transfer)
+ {
+
+
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceName.Contains("鍫嗗灈鏈�"));
+ // 鍒ゆ柇璁惧鏄惁瀛樺湪
+ if (device == null)
+ {
+ content.Error("鎵嬪姩鍒涘缓浠诲姟澶辫触锛屽師鍥狅細鏈壘鍒板爢鍨涙満璁惧");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟鍒涘缓澶辫触", "鍒涘缓澶辫触", $"鍘熷洜锛氭湭鎵惧埌鍫嗗灈鏈鸿澶�,鎵樼洏缂栧彿锛歿transfer.PalletCode}锛屼换鍔$被鍨嬶細{transfer.TaskType},璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ return content;
+ }
+
+ // 鍒ゆ柇鍦板潃鏄惁灞炰簬褰撳墠璁惧搴�
+ if (transfer.SourceAddress.Contains(device.DeviceCode) && transfer.TargetAddress.Contains(device.DeviceCode))
+ {
+ // 鍏ュ簱
+ if (transfer.TaskType == 200)
+ {
+ Dt_PlatformStation _PlatformStation = _dt_PlatformStation.QueryFirst(x => x.Station_code == transfer.SourceAddress);
+ if (_PlatformStation == null)
+ {
+ content.Error($"鎵嬪姩鍒涘缓浠诲姟澶辫触,鍘熷洜:{device.DeviceCode}搴撲笉瀛樺湪杩欎釜搴撳彛锛歿transfer.SourceAddress}");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟鍒涘缓澶辫触", "鍒涘缓澶辫触", $"鎵樼洏缂栧彿锛歿transfer.PalletCode}锛屼换鍔$被鍨嬶細{transfer.TaskType},璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ }
+ else
+ {
+ // 姝e父鍒涘缓浠诲姟
+ transfer.TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum));
+ transfer.TaskState = 200;
+ transfer.CurrentAddress = transfer.SourceAddress;
+ transfer.NextAddress = transfer.TargetAddress;
+ transfer.Roadway = device.DeviceCode;
+ transfer.Creater = "WCS";
+ transfer.Grade = 1;
+ transfer.CreateDate = DateTime.Now;
+ _unitOfWorkManage.BeginTran();
+ BaseDal.AddData(transfer);
+ _unitOfWorkManage.CommitTran();
+ content.OK("鎵嬪姩浠诲姟鍒涘缓鎴愬姛锛�");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟鍒涘缓鎴愬姛", "鍒涘缓鎴愬姛", $"鎵樼洏缂栧彿锛歿transfer.PalletCode}锛屼换鍔$被鍨嬶細{transfer.TaskType},璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ }
+ return content;
+
+ }
+ // 鍑哄簱
+ else if (transfer.TaskType == 100)
+ {
+ Dt_PlatformStation _PlatformStation = _dt_PlatformStation.QueryFirst(x => x.Station_code == transfer.TargetAddress);
+ if (_PlatformStation == null)
+ {
+ content.Error($"鎵嬪姩鍒涘缓浠诲姟澶辫触,鍘熷洜:{device.DeviceCode}搴撲笉瀛樺湪杩欎釜搴撳彛锛歿transfer.TargetAddress}");
+ }
+ else
+ {
+ // 姝e父鍒涘缓浠诲姟
+ transfer.TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum));
+ transfer.TaskState = 100;
+ transfer.CurrentAddress = transfer.SourceAddress;
+ transfer.NextAddress = transfer.TargetAddress;
+ transfer.Roadway = device.DeviceCode;
+ transfer.Creater = "WCS";
+ transfer.Grade = 1;
+ transfer.CreateDate = DateTime.Now;
+ _unitOfWorkManage.BeginTran();
+ BaseDal.AddData(transfer);
+ _unitOfWorkManage.CommitTran();
+ content.OK("鎵嬪姩浠诲姟鍒涘缓鎴愬姛锛�");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟鍒涘缓鎴愬姛", "鍒涘缓鎴愬姛", $"鎵樼洏缂栧彿锛歿transfer.PalletCode}锛屼换鍔$被鍨嬶細{transfer.TaskType},璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ }
+ return content;
+ }
+
+
+ }
+ else
+ {
+ content.Error($"鎵嬪姩鍒涘缓浠诲姟澶辫触,鍘熷洜:{device.DeviceCode}搴撳湴鍧�涓嶅尮閰�,璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟鍒涘缓澶辫触", "鍒涘缓澶辫触", $"鎵樼洏缂栧彿锛歿transfer.PalletCode}锛屼换鍔$被鍨嬶細{transfer.TaskType},璧峰鍦板潃锛歿transfer.SourceAddress}锛岀洰鏍囧湴鍧�锛歿transfer.TargetAddress}");
+ }
+ }
+ catch (Exception ex)
+ {
+ content.Error($"鎵嬪姩鍒涘缓浠诲姟澶辫触锛岀郴缁熷紓甯革細{ex.Message}");
+ WriteLog.Write_Log("鎵嬪姩浠诲姟寮傚父", "寮傚父", ex.ToString());
+ }
+ return content;
+ }
+ /// <summary>
+ /// 鎵嬪姩鍒犻櫎浠诲姟
+ /// </summary>
+ /// <param name="taskNum"></param>
+ /// <returns></returns>
+
+ public WebResponseContent CreateDelete(int taskNum)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
+ if (task == null)
+ return WebResponseContent.Instance.Error($"鏈壘鍒拌浠诲姟淇℃伅,浠诲姟鍙�:銆恵taskNum}銆�");
+ task.ModifyDate = DateTime.Now;
+ task.Modifier = App.User?.UserName;
+ task.Remark = "浜哄伐鎵嬪姩鍒犻櫎";
+ content.Status = BaseDal.DeleteData(task);
+ _task_HtyService.AddTaskHty(task);
+ _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鎵嬪姩鍒犻櫎浠诲姟");
+ }
+ catch(Exception e)
+ {
+ WebResponseContent.Instance.Error(e.Message);
+ }
+ return content;
+ }
+ /// <summary>
+ /// 缂栬緫
+ /// </summary>
+ /// <param name="saveModel"></param>
+ /// <returns></returns>
+ public override WebResponseContent UpdateData(SaveModel saveModel)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ string json = JsonConvert.SerializeObject(saveModel.MainData);
+ Dt_Task task = JsonConvert.DeserializeObject<Dt_Task>(json);
+ content.Status = BaseDal.UpdateData(task);
+ }catch(Exception e)
+ {
+ WebResponseContent.Instance.Error(e.Message);
+ }
+ return content;
+ }
}
}
--
Gitblit v1.9.3