From 98eaddc1893a3b1d6dfe9c2ecb876233ef225144 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期四, 26 六月 2025 09:13:54 +0800
Subject: [PATCH] 1
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 433 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 351 insertions(+), 82 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
index 8067210..ff3257c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs"
@@ -3,7 +3,11 @@
using Mapster;
using Masuit.Tools;
using Microsoft.AspNetCore.Mvc;
+using Microsoft.IdentityModel.Tokens;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
using SqlSugar;
+using System.ComponentModel.Design;
+using System.Linq.Expressions;
using System.Net.NetworkInformation;
using System.Reflection;
using System.Text;
@@ -37,6 +41,7 @@
private readonly IMapper _mapper;
private readonly ILocationInfoRepository _locationRepository;
private readonly IDt_HandAutomaticRepository _handAutomaticRepository;
+ private readonly IDt_HostErrorMessageRepository _errorMessageRepository;
public Dt_TaskService(IDt_TaskRepository BaseDal,
IUnitOfWorkManage unitOfWorkManage,
@@ -47,7 +52,8 @@
IStockInfoDetailRepository stockInfoDetailRepository,
IDt_StationManagerRepository stationManagerRepository,
IDt_HandAutomaticRepository handAutomaticRepository,
- IDt_StationManagerService stationManagerService) : base(BaseDal)
+ IDt_StationManagerService stationManagerService,
+ IDt_HostErrorMessageRepository errorMessageRepository) : base(BaseDal)
{
_unitOfWorkManage = unitOfWorkManage;
_stockInfoRepository = stockInfoRepository;
@@ -57,6 +63,7 @@
_stationManagerRepository = stationManagerRepository;
_handAutomaticRepository = handAutomaticRepository;
_stationManagerService = stationManagerService;
+ _errorMessageRepository = errorMessageRepository;
}
@@ -67,11 +74,11 @@
WebResponseContent content = new WebResponseContent();
try
{
- var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
- if (HandAutomatic != null)
- {
- return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
- }
+ //var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
+ //if (HandAutomatic != null)
+ //{
+ // return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
+ //}
var station = _stationManagerRepository.QueryFirst(x => x.HostName == taskDTO.SourceAddress && x.stationType == 1);
if (station == null)
{
@@ -101,7 +108,7 @@
};
task_call task_Call = new task_call()
{
- d_task_type = "16" ,
+ d_task_type = "32" ,
d_floor = "1",
d_involed1 = taskNew.SourceAddress,
d_involed2 = InsertHyphenEveryTwoChars(taskNew.TargetAddress),
@@ -110,8 +117,10 @@
location.LocationStatus = (int)LocationEnum.Lock;
_locationRepository.UpdateData(location);
BaseDal.AddData(taskNew);
- SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
- return content.OK();
+ var x = SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ LogFactory.GetLog("PDA").InfoFormat(true, $"InboundTask璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(taskDTO)}{Environment.NewLine}", "");
+ return content.OK("鍏ュ簱浠诲姟涓嬪彂鎴愬姛锛�");
}
catch (Exception ex)
{
@@ -124,11 +133,11 @@
WebResponseContent content = new WebResponseContent();
try
{
- var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
- if (HandAutomatic != null)
- {
- return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
- }
+ //var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
+ //if (HandAutomatic != null)
+ //{
+ // return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
+ //}
var station = _stationManagerRepository.QueryFirst(x => x.HostName == taskDTO.SourceAddress && x.stationType == 1);
if (station == null)
{
@@ -164,7 +173,7 @@
};
task_call task_Call = new task_call()
{
- d_task_type = "16",
+ d_task_type = "32",
d_floor = "1",
d_involed1 = taskNew.SourceAddress,
d_involed2 = InsertHyphenEveryTwoChars(taskNew.TargetAddress),
@@ -173,8 +182,10 @@
location.LocationStatus = (int)LocationEnum.Lock;
_locationRepository.UpdateData(location);
BaseDal.AddData(taskNew);
- SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
- return content.OK();
+ var x = SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ LogFactory.GetLog("PDA").InfoFormat(true, $"SamplingInboundTask璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(taskDTO)}{Environment.NewLine}", "");
+ return content.OK("鎶芥鍏ュ簱浠诲姟涓嬪彂鎴愬姛锛�");
}
catch (Exception ex)
{
@@ -186,11 +197,6 @@
WebResponseContent content = new WebResponseContent();
try
{
- var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
- if (HandAutomatic != null)
- {
- return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
- }
StationStatus stationOut = _stationManagerService.GetStationStatus("B001");
if (stationOut == null)
{
@@ -213,23 +219,12 @@
{
return content.Error("鏈壘鍒板嚭搴撶珯鍙颁俊鎭�");
}
- var stock = _stockInfoRepository.QueryFirst(x => x.LocationCode == taskDTO.SourceAddress);
- if (stock == null)
- {
- return content.Error("璇ユ墭鐩樺簱瀛樹笉瀛樺湪");
- }
- Dt_Task task = BaseDal.QueryFirst(x => x.PalletCode == stock.PalletCode);
+
+ Dt_Task task = BaseDal.QueryFirst(x => x.PalletCode == taskDTO.PalletCode);
if (task != null)
{
return content.Error("璇ユ墭鐩樺凡瀛樺湪浠诲姟");
}
-
- var location = _locationRepository.QueryFirst(x => x.LocationCode == stock.LocationCode);
- if (location.LocationStatus != (int)LocationEnum.InStock)
- {
- return content.Error("璇ュ簱浣嶄笉鏄湁璐х姸鎬侊紝璇风‘璁ょ姸鎬佸啀涓嬪彂浠诲姟锛�");
- }
-
Dt_Task taskNew = new Dt_Task()
{
TaskNum = BaseDal.GetTaskNo().Result,
@@ -238,27 +233,27 @@
Grade = 1,
SeqNo = Convert.ToInt32(0),
CommandID = Convert.ToInt32(0),
- SourceAddress = station.stationName,
- TargetAddress = stock.LocationCode,
- CurrentAddress = station.stationName,
- NextAddress = stock.LocationCode,
+ SourceAddress = taskDTO.SourceAddress,
+ TargetAddress = station.stationName,
+ CurrentAddress = taskDTO.SourceAddress,
+ NextAddress = station.stationName,
TaskType = (int)TaskOutboundTypeEnum.Outbound,
TaskState = (int)TaskOutStatusEnum.OutNew,
Roadway = "PDA",
};
task_call task_Call = new task_call()
{
- d_task_type = "32",
+ d_task_type = "64",
d_floor = "1",
d_involed1 = InsertHyphenEveryTwoChars(taskNew.SourceAddress),
d_involed2 = taskNew.TargetAddress,
d_involed5 = taskNew.TaskNum.ToString(),
};
- location.LocationStatus = (int)LocationEnum.Lock;
- _locationRepository.UpdateData(location);
BaseDal.AddData(taskNew);
- SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
- return content.OK();
+ var x = SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ LogFactory.GetLog("PDA").InfoFormat(true, $"OutboundTask璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(taskDTO)}{Environment.NewLine}", "");
+ return content.OK("鍑哄簱浠诲姟涓嬪彂鎴愬姛锛�");
}
catch (Exception ex)
{
@@ -270,11 +265,7 @@
WebResponseContent content = new WebResponseContent();
try
{
- var HandAutomatic = _handAutomaticRepository.QueryFirst(x => true && x.HandAutomatic == "Automatic");
- if (HandAutomatic != null)
- {
- return content.Error("褰撳墠涓嶆槸鎵嬪姩妯″紡");
- }
+
StationStatus stationOut = _stationManagerService.GetStationStatus("B002");
if (stationOut == null)
{
@@ -313,36 +304,38 @@
{
return content.Error("璇ュ簱浣嶄笉鏄湁璐х姸鎬侊紝璇风‘璁ょ姸鎬佸啀涓嬪彂浠诲姟锛�");
}
+ station.stationHasTask = "鎶芥鍑哄簱";
+ _stationManagerRepository.UpdateData(station);
Dt_Task taskNew = new Dt_Task()
{
TaskNum = BaseDal.GetTaskNo().Result,
- PalletCode = taskDTO.PalletCode,
+ PalletCode = stock.PalletCode,
Dispatchertime = DateTime.Now,
Grade = 1,
SeqNo = Convert.ToInt32(0),
CommandID = Convert.ToInt32(0),
- SourceAddress = station.stationName,
- TargetAddress = stock.LocationCode,
- CurrentAddress = station.stationName,
- NextAddress = stock.LocationCode,
+ TargetAddress = station.stationName,
+ SourceAddress = stock.LocationCode,
+ NextAddress = station.stationName,
+ CurrentAddress = stock.LocationCode,
TaskType = (int)TaskOutboundTypeEnum.OutQuality,
TaskState = (int)TaskOutStatusEnum.OutNew,
Roadway = "PDA",
};
task_call task_Call = new task_call()
{
- d_task_type = "32",
+ d_task_type = "128",
d_floor = "1",
d_involed1 = InsertHyphenEveryTwoChars(taskNew.SourceAddress),
d_involed2 = taskNew.TargetAddress,
d_involed5 = taskNew.TaskNum.ToString(),
};
- location.LocationStatus = (int)LocationEnum.Lock;
- _locationRepository.UpdateData(location);
BaseDal.AddData(taskNew);
- SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
- return content.OK();
+ var x = SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ LogFactory.GetLog("PDA").InfoFormat(true, $"SamplingOutboundTask璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(taskDTO)}{Environment.NewLine}", "");
+ return content.OK("鎶芥鍑哄簱浠诲姟涓嬪彂鎴愬姛锛�");
}
catch (Exception ex)
{
@@ -377,7 +370,16 @@
public DtLocationInfo GetLocation()
{
List<DtLocationInfo> locations = _locationRepository.QueryData(x => x.LocationStatus == (int)LocationEnum.Free);
- return locations.OrderBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).FirstOrDefault();
+ var location = locations.OrderBy(x => x.Row).ThenBy(x => x.Column).ThenBy(x => x.Layer).FirstOrDefault();
+ if(location != null)
+ {
+ var task = BaseDal.QueryFirst(x => x.SourceAddress == location.LocationName || x.TargetAddress == location.LocationName);
+ if(task != null)
+ {
+ GetLocation();
+ }
+ }
+ return location;
}
public WebResponseContent TaskComplete(int? TaskNum)
@@ -395,7 +397,6 @@
return CompleteInboundTask(task);
case (int)TaskOutboundTypeEnum.Outbound:
- //case (int)TaskStationTypeEnum..:
LogFactory.GetLog("浠诲姟瀹屾垚").InfoFormat(true, "鍑哄簱浠诲姟", "");
return CompleteOutboundTask(task);
@@ -437,17 +438,21 @@
task.TaskState = (int)TaskInStatusEnum.AGV_InExecuting;
BaseDal.Update(task);
break;
-
case (int)TaskOutboundTypeEnum.Outbound:
case (int)TaskOutboundTypeEnum.OutQuality:
- task.TaskState = (int)TaskInStatusEnum.AGV_InExecuting;
+ case (int)TaskStationTypeEnum.StationToStation:
+ task.TaskState = (int)TaskOutStatusEnum.AGV_OutExecuting;
+ BaseDal.Update(task);
+ break;
+ case (int)TaskRelocationTypeEnum.Relocation:
+ task.TaskState = (int)TaskRelocationStatusEnum.AGV_RelocationExecuting;
+ BaseDal.Update(task);
+ break;
+ case (int)TaskFireAlarmTypeEnum.FireAlarmOut:
+ task.TaskState = (int)TaskFireAlarmStatusEnum.AGV_FireAlarmExecuting;
BaseDal.Update(task);
break;
- case (int)TaskRelocationTypeEnum.Relocation:
- task.TaskState = (int)TaskInStatusEnum.AGV_InExecuting;
- BaseDal.Update(task);
- break;
default:
return content.Error("浠诲姟绫诲瀷涓嶅瓨鍦�");
}
@@ -481,7 +486,7 @@
Creater = "system",
LocationId = locationInf.Id,
};
- _stockInfoRepository.AddData(stock);
+ SqlSugarHelper.DbWMS.Insertable(stock).ExecuteCommand();
_locationRepository.UpdateData(locationInf);
TaskMoveHty(task);
_unitOfWorkManage.CommitTran();
@@ -529,19 +534,9 @@
{
_unitOfWorkManage.BeginTran();
task.TaskState = 135;
- var locationInf = _locationRepository.QueryFirst(x => x.LocationCode == task.SourceAddress);
- locationInf.LocationStatus = 0;
- var stock = _stockInfoRepository.QueryFirst(x => x.PalletCode == task.PalletCode);
- if(stock!=null)
- {
- DtStockInfo_Hty stockInfo_Hty = stock.Adapt<DtStockInfo_Hty>();
- stockInfo_Hty.ModifyDate = DateTime.Now;
- AddStockInfoHty(stockInfo_Hty);
+ AddStcokHty(task.PalletCode, task.SourceAddress);
- _stockInfoRepository.DeleteData(stock);
- }
- _locationRepository.UpdateData(locationInf);
TaskMoveHty(task);
_unitOfWorkManage.CommitTran();
@@ -550,13 +545,56 @@
}
catch (Exception ex)
{
- _unitOfWorkManage.RollbackTran();
+ _unitOfWorkManage.RollbackTran();
LogFactory.GetLog("鍑哄簱浠诲姟瀹屾垚").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}", "");
return content.Error(ex.Message);
}
}
-
+ public WebResponseContent CompleteFireAlarmboundTask(Dt_Task task)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ _unitOfWorkManage.BeginTran();
+ task.TaskState = (int)TaskFireAlarmStatusEnum.AGV_FireAlarmFinish;
+
+ AddStcokHty(task.PalletCode,task.SourceAddress);
+
+ TaskMoveHty(task);
+ _unitOfWorkManage.CommitTran();
+ LogFactory.GetLog("鐏鍑哄簱浠诲姟瀹屾垚").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(task)}", "");
+ return content.OK();
+ }
+ catch (Exception ex)
+ {
+ _unitOfWorkManage.RollbackTran();
+ LogFactory.GetLog("鐏鍑哄簱浠诲姟瀹屾垚").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}", "");
+ return content.Error(ex.Message);
+ }
+ }
+
+ public void AddStcokHty(string PalletCode,string Location)
+ {
+ //var stock = _stockInfoRepository.QueryFirst(x => x.PalletCode == PalletCode);
+ var stock = SqlSugarHelper.DbWMS.Queryable<DtStockInfo>().Where(x => x.PalletCode == PalletCode).First();
+ if (stock != null)
+ {
+ DtStockInfo_Hty stockInfo_Hty = stock.Adapt<DtStockInfo_Hty>();
+ stockInfo_Hty.ModifyDate = DateTime.Now;
+
+ AddStockInfoHty(stockInfo_Hty);
+
+ //_stockInfoRepository.DeleteData(stock);
+ SqlSugarHelper.DbWMS.Deleteable(stock).ExecuteCommand();
+ }
+ var locationInf = _locationRepository.QueryFirst(x => x.LocationCode == Location);
+ if (locationInf != null)
+ {
+ locationInf.LocationStatus = 0;
+ _locationRepository.UpdateData(locationInf);
+ }
+ }
public WebResponseContent CompleteSamplingOutboundTask(Dt_Task task)
{
@@ -613,6 +651,105 @@
return content.Error(ex.Message);
}
}
+
+ public void UpdateTask(string SourceAddress,string TargetAddress, string PalletCode)
+ {
+ var task = BaseDal.QueryFirst(x => x.PalletCode == PalletCode);
+ if (task != null)
+ {
+ task.SourceAddress = SourceAddress;
+ task.TargetAddress = TargetAddress;
+ BaseDal.UpdateData(task);
+ InsertAGVTask(task);
+ }
+ }
+ private int InsertAGVTask(Dt_Task task)
+ {
+ var AgvTask = SqlSugarHelper.DbAGV.Queryable<task_call>().Where(x => x.d_involed5 == task.TaskNum.ToString()).First();
+ if (AgvTask != null)
+ {
+ string SourceAddress = string.Empty;
+ string TargetAddress = string.Empty;
+ if (task.TaskType == (int)TaskInboundTypeEnum.Inbound)
+ {
+ SourceAddress = task.SourceAddress;
+ TargetAddress = InsertHyphenEveryTwoChars(task.TargetAddress);
+ }
+ else if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+ {
+ SourceAddress = InsertHyphenEveryTwoChars(task.SourceAddress);
+ TargetAddress = task.TargetAddress;
+ }
+ else if (task.TaskType == (int)TaskRelocationTypeEnum.Relocation)
+ {
+ TargetAddress = InsertHyphenEveryTwoChars(task.TargetAddress);
+ SourceAddress = InsertHyphenEveryTwoChars(task.SourceAddress);
+ }
+ else if (task.TaskType == (int)TaskStationTypeEnum.StationToStation)
+ {
+ TargetAddress = task.TargetAddress;
+ SourceAddress = task.SourceAddress;
+ }
+ else if (task.TaskType == (int)TaskFireAlarmTypeEnum.FireAlarmOut)
+ {
+ TargetAddress = task.TargetAddress;
+ SourceAddress = task.SourceAddress;
+ }
+
+ AgvTask.d_involed1 = SourceAddress;
+ AgvTask.d_involed2 = TargetAddress;
+ var x = SqlSugarHelper.DbAGV.Updateable(AgvTask).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ return x;
+ }
+ else
+ {
+ string SourceAddress = string.Empty;
+ string TargetAddress = string.Empty;
+ string AGVType = string.Empty;
+ if (task.TaskType == (int)TaskInboundTypeEnum.Inbound)
+ {
+ SourceAddress = task.SourceAddress;
+ AGVType = "2";
+ TargetAddress = InsertHyphenEveryTwoChars(task.TargetAddress);
+ }
+ else if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+ {
+ SourceAddress = InsertHyphenEveryTwoChars(task.SourceAddress);
+ TargetAddress = task.TargetAddress;
+ AGVType = "4";
+ }
+ else if (task.TaskType == (int)TaskRelocationTypeEnum.Relocation)
+ {
+ TargetAddress = InsertHyphenEveryTwoChars(task.TargetAddress);
+ SourceAddress = InsertHyphenEveryTwoChars(task.SourceAddress);
+ AGVType = "16";
+ }
+ else if (task.TaskType == (int)TaskStationTypeEnum.StationToStation)
+ {
+ TargetAddress = task.TargetAddress;
+ SourceAddress = task.SourceAddress;
+ AGVType = "8";
+ }
+ else if (task.TaskType == (int)TaskFireAlarmTypeEnum.FireAlarmOut)
+ {
+ TargetAddress = task.TargetAddress;
+ SourceAddress = task.SourceAddress;
+ AGVType = "1";
+ }
+ task_call task_Call = new task_call()
+ {
+ d_task_type = AGVType,
+ d_floor = "1",
+ d_involed1 = SourceAddress,
+ d_involed2 = TargetAddress,
+ d_involed5 = task.TaskNum.ToString(),
+ };
+ var x = SqlSugarHelper.DbAGV.Insertable(task_Call).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
+ return x;
+ }
+ }
public WebResponseContent TaskMoveHty(Dt_Task task)
{
WebResponseContent content = new WebResponseContent();
@@ -627,7 +764,8 @@
var AgvTask = SqlSugarHelper.DbAGV.Queryable<task_call>().Where(x => x.d_involed5 == taskNum).First();
if (AgvTask != null)
{
- SqlSugarHelper.DbAGV.Deleteable(AgvTask).ExecuteCommand();
+ var x=SqlSugarHelper.DbAGV.Deleteable(AgvTask).ExecuteCommand();
+ LogFactory.GetLog("鎻掑叆鏁版嵁鍒癆GV").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(x)}", "");
}
_unitOfWorkManage.CommitTran();
return content.OK();
@@ -638,6 +776,100 @@
LogFactory.GetLog("鍒犻櫎浠诲姟").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}", "");
return content.Error(ex.Message);
}
+ }
+
+ public WebResponseContent GetTaskInfo()
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Expression<Func<Dt_Task, bool>> expression = x => true;
+ if (!App.User.IsSuperAdmin)
+ {
+ expression = x => x.Creater == App.User.UserName;
+ }
+
+ var task = BaseDal.QueryData(x => true).ToList();
+ var newTask = task.OrderByDescending(x => x.CreateDate).Select(x => new
+ {
+ x.TaskNum,
+ x.PalletCode,
+ x.SourceAddress,
+ x.TargetAddress,
+ TaskType = new List<string> { GetTaskTypeDesc(x.TaskType) }[0], // 姣忎釜浠诲姟鐙珛鐢熸垚 TaskType
+ TaskState = new List<string> { GetTaskStateDesc(x.TaskState) }[0] // 姣忎釜浠诲姟鐙珛鐢熸垚 TaskState
+ }).ToList();
+
+ content = WebResponseContent.Instance.OK(data: newTask);
+ }
+ catch (Exception ex)
+ {
+ content = WebResponseContent.Instance.Error(ex.Message);
+ }
+ return content;
+ }
+
+ public WebResponseContent GetHostError()
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ Expression<Func<Dt_Task, bool>> expression = x => true;
+ if (!App.User.IsSuperAdmin)
+ {
+ expression = x => x.Creater == App.User.UserName;
+ }
+
+ var now = DateTime.Now;
+ var startOfDay = new DateTime(now.Year, now.Month, now.Day);
+ var newTask = _errorMessageRepository.QueryData(x =>x.CreateDate> startOfDay).OrderByDescending(x => x.CreateDate).Select(x => new
+ {
+ x.id,
+ x.ErrorCode,
+ x.ErrorMessage,
+ x.Grade,
+ x.CreateDate
+ }).ToList();
+
+ content = WebResponseContent.Instance.OK(data: newTask);
+ }
+ catch (Exception ex)
+ {
+ content = WebResponseContent.Instance.Error(ex.Message);
+ }
+ return content;
+ }
+
+
+ public string GetTaskTypeDesc(int taskType)
+ {
+ return taskType switch
+ {
+ (int)TaskInboundTypeEnum.Inbound => TaskInboundTypeEnum.Inbound.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskRelocationTypeEnum.Relocation => TaskRelocationTypeEnum.Relocation.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskStationTypeEnum.StationToStation => TaskStationTypeEnum.StationToStation.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskFireAlarmTypeEnum.FireAlarmOut => TaskFireAlarmTypeEnum.FireAlarmOut.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskOutboundTypeEnum.Outbound => TaskOutboundTypeEnum.Outbound.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskOutboundTypeEnum.OutQuality => TaskOutboundTypeEnum.OutQuality.GetIntegralRuleTypeEnumDesc(),
+ };
+ }
+ public string GetTaskStateDesc(int? taskState)
+ {
+ return taskState switch
+ {
+ (int)TaskInStatusEnum.InNew => TaskInStatusEnum.InNew.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskInStatusEnum.AGV_InExecuting => TaskInStatusEnum.AGV_InExecuting.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskInStatusEnum.AGV_InFinish => TaskInStatusEnum.AGV_InFinish.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskRelocationStatusEnum.RelocationNew => TaskRelocationStatusEnum.RelocationNew.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskRelocationStatusEnum.AGV_RelocationExecuting => TaskRelocationStatusEnum.AGV_RelocationExecuting.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskRelocationStatusEnum.AGV_RelocationFinish => TaskRelocationStatusEnum.AGV_RelocationFinish.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskOutStatusEnum.OutNew => TaskOutStatusEnum.OutNew.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskOutStatusEnum.AGV_OutExecuting => TaskOutStatusEnum.AGV_OutExecuting.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskOutStatusEnum.AGV_OutFinish => TaskOutStatusEnum.AGV_OutFinish.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskFireAlarmStatusEnum.FireAlarmNew => TaskFireAlarmStatusEnum.FireAlarmNew.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskFireAlarmStatusEnum.AGV_FireAlarmExecuting => TaskFireAlarmStatusEnum.AGV_FireAlarmExecuting.GetIntegralRuleTypeEnumDesc(),
+ (int)TaskFireAlarmStatusEnum.FireAlarmFinish => TaskFireAlarmStatusEnum.FireAlarmFinish.GetIntegralRuleTypeEnumDesc(),
+ };
}
#endregion 澶栭儴鎺ュ彛鏂规硶
@@ -683,5 +915,42 @@
}
}
+ public override WebResponseContent DeleteData(object[] key)
+ {
+ WebResponseContent content = new WebResponseContent();
+ // 鍒涘缓鍘嗗彶浠诲姟瀹炰緥妯″瀷
+ try
+ {
+ foreach (var item in key)
+ {
+ //var task = BaseDal.QueryFirst(x => x.TaskId == Convert.ToInt32(item));
+ //var taskHty = task.Adapt<Dt_Task_Hty>();
+ //taskHty.Creater = App.User.UserName != null ? App.User.UserName : "System";
+ //_taskHtyRepository.AddData(taskHty);
+
+ //return base.DeleteData(key);
+ Dt_Task task = BaseDal.QueryFirst(x => x.TaskId == Convert.ToInt32(item));
+ if (task == null)
+ {
+ return content.Error("鏈壘鍒颁换鍔′俊鎭�!");
+ }
+ var taskHtyNG = CreateHistoricalTask(task, true);
+
+ // 鎵ц鏁版嵁搴撲簨鍔�
+
+ // 娣诲姞鍘嗗彶浠诲姟
+ var isTaskHtyAdd = _task_HtyRepository.AddData(taskHtyNG) > 0;
+
+ // 鍒犻櫎浠诲姟鏁版嵁
+ var isTaskDelete = BaseDal.Delete(task.TaskId);
+ }
+ return content.OK("鍒犻櫎鎴愬姛!");
+ }
+ catch (Exception ex)
+ {
+ return content.Error("鍒犻櫎浠诲姟寮傚父锛�" + ex.Message);
+ }
+ }
+
#endregion private 鍐呴儴鏂规硶
}
\ No newline at end of file
--
Gitblit v1.9.3