From 8f0d94b96853b2b12bd1dd10c862277edb5f685a Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期一, 02 三月 2026 08:46:21 +0800
Subject: [PATCH] 添加日志表

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/RGV/FOURBOT/GetBlockPodContentDto.cs  |    9 +
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs               |   13 ++
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs                  |    6 
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs            |   10 +
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/TrackloginfoService.cs   |   64 ++++++++++++
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs               |   30 ++++-
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskJob.cs                     |    4 
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs            |    7 +
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/ITrackloginfoService.cs |   32 ++++++
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_trackloginfo.cs |   91 ++++++++++++++++++
 10 files changed, 250 insertions(+), 16 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/TrackloginfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/TrackloginfoService.cs"
new file mode 100644
index 0000000..83dd713
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_BasicInfoService/TrackloginfoService.cs"
@@ -0,0 +1,64 @@
+锘縰sing Newtonsoft.Json;
+using SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.BaseRepository;
+using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_IBasicInfoService;
+using WIDESEAWCS_Model.Models;
+
+
+namespace WIDESEAWCS_BasicInfoService
+{
+    public class TrackloginfoService : ServiceBase<Dt_trackloginfo, IRepository<Dt_trackloginfo>>, ITrackloginfoService
+    {
+        public TrackloginfoService(IRepository<Dt_trackloginfo> BaseDal) : base(BaseDal)
+        {
+        }
+
+        public IRepository<Dt_trackloginfo> Repository => BaseDal;
+
+
+        public WebResponseContent AddTrackLog<T>(T entity, WebResponseContent content, string logName, string logCode, string description)
+        {
+            WebResponseContent content1 = new WebResponseContent();
+            try
+            {
+                if (entity == null || content == null)
+                    return content1;
+                if (!content.Status)
+                {
+                    //string sql = @"select top 3 tracklog_message from dt_trackloginfo ORDER BY tracklog_createtime desc";
+                    List<string> obj = BaseDal.QueryData().OrderByDescending(x => x.tracklog_createtime).Select(x => x.tracklog_message).Take(3).ToList();
+                    if (null != obj)
+                    {
+                        if (obj.Contains(content.Message))
+                            return content1;
+                    }
+                }
+                Dt_trackloginfo trackloginfo = new Dt_trackloginfo()
+                {
+                    tracklog_name = logName,
+                    tracklog_content = JsonConvert.SerializeObject(entity),
+                    tracklog_createtime = DateTime.Now,
+                    tracklog_type = content.Status ? "鎴愬姛" : "澶辫触",
+                    tracklog_code = content.Status ? logCode : ("4" + logCode),
+                    tracklog_des = description,
+                    tracklog_message = content.Status ? "" : content.Message,
+                    tracklog_operator = "system"/*UserContext.Current.UserName*/
+                };
+
+                BaseDal.AddData(trackloginfo);
+            }
+            catch (Exception ex)
+            {
+                content1.Message = ex.Message;
+            }
+            return content1;
+        }
+    }
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/RGV/FOURBOT/GetBlockPodContentDto.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/RGV/FOURBOT/GetBlockPodContentDto.cs"
index 5cf84b5..1f0a270 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/RGV/FOURBOT/GetBlockPodContentDto.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/RGV/FOURBOT/GetBlockPodContentDto.cs"
@@ -9,19 +9,24 @@
     /// <summary>
     /// 闃荤鎵樼洏鏌ヨ璇锋眰鍐呭DTO
     /// </summary>
+    public class GetBlockPodContentListDto
+    {
+        public List<GetBlockPodContentDto> content { get; set; } = new List<GetBlockPodContentDto>();
+    }
+
     public class GetBlockPodContentDto
     {
         /// <summary>
         /// 鍊欓�夋墭鐩樺彿鍒楄〃
         /// </summary>
-        public List<string> CandidatePodIDs { get; set; } = new List<string>();
+        public List<string> candidatePodIDs { get; set; } = new List<string>();
 
         /// <summary>
         /// 闇�瑕佸嚭搴撶殑鏁伴噺
         /// 0-琛ㄧず鍏ㄩ儴鍑�
         /// 闈�0-琛ㄧず浠巔odIDs涓彇num涓樆纰嶆渶灏戠殑鎵樼洏
         /// </summary>
-        public int Num { get; set; } = 0;
+        public int num { get; set; } = 0;
     }
     public class ReturnBlockPodResultDto
     {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/ITrackloginfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/ITrackloginfoService.cs"
new file mode 100644
index 0000000..a06f25b
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_IBasicInfoService/ITrackloginfoService.cs"
@@ -0,0 +1,32 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Core;
+using WIDESEAWCS_Core.BaseRepository;
+using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_Model.Models;
+
+
+namespace WIDESEAWCS_IBasicInfoService
+{
+    public interface ITrackloginfoService : IService<Dt_trackloginfo>
+    {
+        public IRepository<Dt_trackloginfo> Repository { get; }
+
+        /// <summary>
+        /// 璁板綍鏃ュ織
+        /// </summary>
+        /// <typeparam name="TEntity"></typeparam>
+        /// <param name="entity">鍙傛暟</param>
+        /// <param name="content">杩斿洖缁撴灉</param>
+        /// <param name="logName">鏃ュ織鍚嶇О</param>
+        /// <param name="logCode">鏃ュ織浠g爜</param>
+        /// <param name="description">鎿嶄綔璇存槑</param>
+        /// <returns></returns>
+        public WebResponseContent AddTrackLog<T>(T entity, WebResponseContent content, string logName, string logCode, string description);
+    }
+
+     
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_trackloginfo.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_trackloginfo.cs"
new file mode 100644
index 0000000..483df52
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/BasicInfo/Dt_trackloginfo.cs"
@@ -0,0 +1,91 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations.Schema;
+using System.ComponentModel.DataAnnotations;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEAWCS_Core.DB.Models;
+using SqlSugar;
+
+namespace WIDESEAWCS_Model.Models
+{
+    [SugarTable(nameof(Dt_trackloginfo), "鎺ュ彛鏃ュ織")]
+    public class Dt_trackloginfo : BaseEntity
+    {
+        /// <summary>
+        ///涓婚敭
+        /// </summary>
+        [Key]
+        [Display(Name = "涓婚敭")]
+        [Column(TypeName = "int")]
+        [Required(AllowEmptyStrings = false)]
+        public int tracklog_id { get; set; }
+
+        /// <summary>
+        ///鎿嶄綔鍚嶇О
+        /// </summary>
+        [Display(Name = "鎿嶄綔鍚嶇О")]
+        [MaxLength(100)]
+        [Column(TypeName = "nvarchar(100)")]
+        [Required(AllowEmptyStrings = false)]
+        public string tracklog_name { get; set; }
+
+        /// <summary>
+        ///鍙傛暟浼犻�掑唴瀹�
+        /// </summary>
+        [Display(Name = "鍙傛暟浼犻�掑唴瀹�")]
+        [Column(TypeName = "nvarchar(max)")]
+        public string tracklog_content { get; set; }
+
+        /// <summary>
+        ///绫诲瀷
+        /// </summary>
+        [Display(Name = "绫诲瀷")]
+        [MaxLength(20)]
+        [Column(TypeName = "nvarchar(20)")]
+        [Required(AllowEmptyStrings = false)]
+        public string tracklog_type { get; set; }
+
+        /// <summary>
+        ///鎻忚堪
+        /// </summary>
+        [Display(Name = "鎻忚堪")]
+        [Column(TypeName = "nvarchar(max)")]
+        [Required(AllowEmptyStrings = false)]
+        public string tracklog_des { get; set; }
+
+        /// <summary>
+        ///鏃ュ織浠g爜
+        /// </summary>
+        [Display(Name = "鏃ュ織浠g爜")]
+        [MaxLength(20)]
+        [Column(TypeName = "nvarchar(20)")]
+        [Required(AllowEmptyStrings = false)]
+        public string tracklog_code { get; set; }
+
+        /// <summary>
+        ///閿欒淇℃伅
+        /// </summary>
+        [Display(Name = "閿欒淇℃伅")]
+        [Column(TypeName = "nvarchar(max)")]
+        public string tracklog_message { get; set; }
+
+        /// <summary>
+        ///鎿嶄綔鑰�
+        /// </summary>
+        [Display(Name = "鎿嶄綔鑰�")]
+        [MaxLength(40)]
+        [Column(TypeName = "nvarchar(40)")]
+        [Required(AllowEmptyStrings = false)]
+        public string tracklog_operator { get; set; }
+
+        /// <summary>
+        ///鍒涘缓鏃堕棿"
+        /// </summary>
+        [Display(Name = "鍒涘缓鏃堕棿")]
+        [Column(TypeName = "datetime")]
+        [Required(AllowEmptyStrings = false)]
+        public DateTime tracklog_createtime { get; set; }
+    }
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
index 2c2ef26..b542669 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
@@ -3,6 +3,7 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection.Metadata;
 using System.Text;
 using System.Text.Json;
 using System.Threading.Tasks;
@@ -30,11 +31,14 @@
         /// <exception cref="NotImplementedException"></exception>
         public WebResponseContent UpdateTaskStatus(object TaskDTO, DeviceTypeEnum deviceTypeEnum)
         {
+
+            WebResponseContent content = new WebResponseContent();
+            GALAXISUpdateTaskStatus gALAXIS = new();
             try
             {
                 if (deviceTypeEnum == DeviceTypeEnum.GALAXIS)
                 {
-                    GALAXISUpdateTaskStatus? gALAXIS = TaskDTO.Serialize().DeserializeObject<GALAXISUpdateTaskStatus>();
+                    //GALAXISUpdateTaskStatus? gALAXIS = TaskDTO.Serialize().DeserializeObject<GALAXISUpdateTaskStatus>();
                     if (gALAXIS == null) throw new Exception("鍙傛暟杞崲澶辫触锛�");
                     var task = BaseDal.QueryFirst(x => x.WMSTaskNum == gALAXIS.taskId);
                     if (task == null) throw new Exception($"鏈壘鍒颁换鍔�,浠诲姟缂栧彿銆恵gALAXIS.taskId}銆�");
@@ -66,6 +70,10 @@
             {
                 return WebResponseContent.Instance.Error(ex.Message);
             }
+            finally
+            {
+                _trackloginfoService.AddTrackLog(gALAXIS, content, "涓嬪彂鍑箰澹獳GV浠诲姟", "", "");
+            }
         }
         #endregion
 
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 507cece..bb6a084 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -42,6 +42,7 @@
 {
     public partial class TaskService : ServiceBase<Dt_Task, IRepository<Dt_Task>>, ITaskService
     {
+        private readonly ITrackloginfoService _trackloginfoService;
         private readonly IRouterService _routerService;
         private readonly ITaskExecuteDetailService _taskExecuteDetailService;
         private readonly IHKLocationInfoService _hKLocationInfoService;
@@ -69,7 +70,7 @@
         /// </summary>
         public IRepository<Dt_Task> Repository => BaseDal;
 
-        public TaskService(IRepository<Dt_Task> BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, IRepository<Dt_TaskExecuteDetail> taskExecuteDetailRepository, IMapper mapper, IKLSLocationInfoService kLSLocationInfoService, IRGVLocationInfoService rGVLocationInfoService, IHKLocationInfoService hKLocationInfoService, IApiInfoService apiInfoService) : base(BaseDal)
+        public TaskService(IRepository<Dt_Task> BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, IRepository<Dt_TaskExecuteDetail> taskExecuteDetailRepository, IMapper mapper, IKLSLocationInfoService kLSLocationInfoService, IRGVLocationInfoService rGVLocationInfoService, IHKLocationInfoService hKLocationInfoService, IApiInfoService apiInfoService,ITrackloginfoService trackloginfoService) : base(BaseDal)
         {
             _routerService = routerService;
             _taskExecuteDetailService = taskExecuteDetailService;
@@ -78,7 +79,8 @@
             _kLSLocationInfoService = kLSLocationInfoService;
             _rGVLocationInfoService = rGVLocationInfoService;
             _hKLocationInfoService = hKLocationInfoService;
-            _apiInfoService = apiInfoService;   
+            _apiInfoService = apiInfoService;
+            _trackloginfoService = trackloginfoService;
         }
         public WebResponseContent ReceiveWMSTask([NotNull] List<WMSTasksDTO> taskDTOs)
         {
@@ -256,6 +258,7 @@
                     if (agvContent.success == true && agvContent.code == 0)
                     {
 
+                        BaseDal.UpdateData(dt_Task);
                         return content.OK("淇敼浠诲姟浼樺厛绾ф垚鍔�", dt_Task);
                     }
                     else {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs"
index 3edca3b..e18593a 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs"
@@ -1,9 +1,11 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection.Metadata;
 using System.Text;
 using System.Threading.Tasks;
 using WIDESEAWCS_Common.TaskEnum;
+using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.Helper;
 using WIDESEAWCS_DTO;
 using WIDESEAWCS_Model.Models;
@@ -16,6 +18,7 @@
         #region 涓嬪彂鍑箰澹獳GV浠诲姟
         public void SendGALAXISTask(List<Dt_Task> tasks)
         {
+            WebResponseContent content = new WebResponseContent(); // 鍒涘缓鍝嶅簲瀵硅薄
             GALAXISTaskInfo gALAXISTaskInfo = new();
             try
             {
@@ -38,6 +41,7 @@
                 Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(GALAXISTaskInfo)) ?? throw new Exception("鏈壘鍒板嚡涔愬+AGV浠诲姟涓嬪彂鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�");
                 string response = HttpHelper.Post(apiInfo.ApiAddress, gALAXISTaskInfo.Serialize());
                 GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>();
+                content.Data = agvContent;
                 if (agvContent.success)
                 {
                     if (agvContent.data.returnStatus != 0) throw new Exception(agvContent.data.returnInfo);
@@ -45,12 +49,19 @@
                     {
                         task.TaskState = (int)TaskStatusEnum.Execut;
                     });
+                    content.OK();
                     _taskService.UpdateData(tasks);
                 }
             }
             catch (Exception ex)
             {
-                WriteError(nameof(TaskJob), ex.Message, ex);
+                content.Error(ex.Message);
+                //WriteError(nameof(TaskJob), ex.Message, ex);
+            }
+            finally
+            {
+                _trackloginfoService.AddTrackLog(gALAXISTaskInfo.Serialize(), content, "涓嬪彂鍑箰澹獳GV浠诲姟","","");
+                //dt_trackloginfoService.Instance.AddTrackLog(outTaskInfo, content, "鎺ユ敹瀹囪埅WMS鍑哄簱浠诲姟涓嬪彂", "", $"{msg},鍙樻洿缁撴灉:{content.Status}");
             }
         }
         #endregion
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs"
index 10a85c8..ea6d384 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs"
@@ -1,4 +1,5 @@
-锘縰sing System;
+锘縰sing Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -42,7 +43,13 @@
                     FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>();
                     if (fOURBOTReturn.returnCode == 0)
                     {
-                        FOURBOTnewMovePodTaskResponseData fOURBO = fOURBOTReturn.data as FOURBOTnewMovePodTaskResponseData ?? throw new Exception("鏈幏鍙栧埌鍥涘悜杞﹁繑鍥炵殑浠诲姟ID");
+                        string dataJson = fOURBOTReturn.data.ToString();
+                        FOURBOTnewMovePodTaskResponseData? fOURBO = JsonConvert.DeserializeObject<FOURBOTnewMovePodTaskResponseData>(dataJson);
+                        if (fOURBO == null || fOURBO.taskID == 0)
+                        {
+                            throw new Exception($"鏈幏鍙栧埌鍥涘悜杞﹁繑鍥炵殑浠诲姟ID锛岃繑鍥炴暟鎹細{response}");
+                        }
+                        //FOURBOTnewMovePodTaskResponseData fOURBO = fOURBOTReturn.data as FOURBOTnewMovePodTaskResponseData ?? throw new Exception("鏈幏鍙栧埌鍥涘悜杞﹁繑鍥炵殑浠诲姟ID");
                         item.RGVTaskId = fOURBO.taskID;
                         item.TaskState = (int)TaskStatusEnum.Execut;
                     }
@@ -67,10 +74,21 @@
             {
                 Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(GetBlockPodContentDto)) ?? throw new Exception("鏈壘鍒板洓鍚戣溅浠诲姟涓嬪彂鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�");
                 List<Dt_Task> dt_Tasks = new List<Dt_Task>();
-                //var PalletCodes = tasks.Select(x => x.PalletCode).ToList();
-                GetBlockPodContentDto content = new GetBlockPodContentDto();
-                content.CandidatePodIDs = tasks.Select(x => x.PalletCode).ToList();
-                string response = HttpHelper.Post(apiInfo.ApiAddress, content.Serialize());
+                var PalletCodes = tasks.Select(x => x.PalletCode).ToList();
+                //GetBlockPodContentDto content = new GetBlockPodContentDto();
+                var request = new GetBlockPodContentListDto
+                {
+                    content = new List<GetBlockPodContentDto>
+                    {
+                        new GetBlockPodContentDto
+                        {
+                            candidatePodIDs = PalletCodes,
+                            num = 0 // 0琛ㄧず鍏ㄩ儴鍑猴紝濡傛灉闇�瑕侀檺鍒舵暟閲忓彲浠ヨ皟鏁�
+                        }
+                    }
+                };
+                //content.candidatePodIDs = tasks.Select(x => x.PalletCode).ToList();
+                string response = HttpHelper.Post(apiInfo.ApiAddress, request.Serialize());
                 FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>();
                 if (fOURBOTReturn.returnCode == 0)
                 {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs"
index 7036521..78e48f6 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskExtend.cs"
@@ -36,7 +36,7 @@
                     Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPOutbound).ToList();
                     if (Tasks.Count > 0) IsMoveTask(Tasks);
                     #endregion
-
+                    
                     #region 鏌ユ壘娴峰悍AGV浠诲姟
                     Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.Carry || x.TaskType == (int)TaskTypeEnum.CJCarry || x.TaskType == (int)TaskTypeEnum.CJInbound || x.TaskType == (int)TaskTypeEnum.CJOutbound).ToList();
                     if (Tasks.Count > 0) SendHIKROBOTTask(Tasks);
@@ -59,7 +59,7 @@
             try
             {
                 #region 涓嬪彂澶栧舰妫�娴嬮�氳繃鐨勫洓鍚戣溅浠诲姟
-                var Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && x.ExceptionMessage.IsNullOrEmpty()).ToList();
+                var Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.CheckShapeingOk && string.IsNullOrEmpty(x.ExceptionMessage)).ToList();
                 if (Tasks.Count > 0) SendCheckShapeingOkTask(Tasks);
                 #endregion
 
@@ -72,7 +72,7 @@
 
                 #region 涓嬪彂鍥涘悜杞︽壒閲忕Щ搴撲换鍔�
                 Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.RGV_NewMoveTask).ToList();
-                if (Tasks.Count > 0) SendMoveTasks(Tasks); 
+                if (Tasks.Count > 0) SendMoveTasks(Tasks);
                 #endregion
 
                 #region 澶勭悊寰呯Щ搴撳悗鍥涘悜杞﹀嚭搴撲换鍔�
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskJob.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskJob.cs"
index 258f45d..2c8265a 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskJob.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/TaskJob.cs"
@@ -30,13 +30,15 @@
         private readonly IApiInfoService _apiInfoService;
         private readonly IRGVLocationInfoService _rGVLocationInfoService;
         private readonly IStationMangerService _stationMangerService;
+        private readonly ITrackloginfoService _trackloginfoService;
 
-        public TaskJob(ITaskService taskService, IApiInfoService apiInfoService, IRGVLocationInfoService rGVLocationInfoService, IStationMangerService stationMangerService)
+        public TaskJob(ITaskService taskService, IApiInfoService apiInfoService, IRGVLocationInfoService rGVLocationInfoService, IStationMangerService stationMangerService, ITrackloginfoService trackloginfoService)
         {
             _taskService = taskService;//娉ㄥ叆
             _apiInfoService = apiInfoService;
             _rGVLocationInfoService = rGVLocationInfoService;
             _stationMangerService = stationMangerService;
+            _trackloginfoService = trackloginfoService;
         }
 
         public Task Execute(IJobExecutionContext context)

--
Gitblit v1.9.3