From 9b5e244eda40fa6a10331cfe1a60c9d181901d8d Mon Sep 17 00:00:00 2001 From: jianghaiqing Date: Fri, 7 Jul 2023 13:45:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=BB=E5=8A=A1=E5=AE=8C?= =?UTF-8?q?=E6=88=90=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TaskManagePlat/TaskManageService.cs | 12 ++-- .../ServiceWorkFlowBaseService.cs | 60 ++++++++++++++++++- 2 files changed, 65 insertions(+), 7 deletions(-) diff --git a/Myshipping.Application/Service/TaskManagePlat/TaskManageService.cs b/Myshipping.Application/Service/TaskManagePlat/TaskManageService.cs index 7762ddfd..effaf77c 100644 --- a/Myshipping.Application/Service/TaskManagePlat/TaskManageService.cs +++ b/Myshipping.Application/Service/TaskManagePlat/TaskManageService.cs @@ -1539,7 +1539,7 @@ namespace Myshipping.Application model.STATUS = TaskStatusEnum.Complete.ToString(); model.STATUS_NAME = TaskStatusEnum.Complete.GetDescription(); - _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new + await _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new { it.COMPLETE_DATE, it.COMPLETE_DEAL, @@ -1547,7 +1547,7 @@ namespace Myshipping.Application it.IS_COMPLETE, it.STATUS, it.STATUS_NAME - }).ExecuteCommand(); + }).ExecuteCommandAsync(); } else if (taskOperTypeEnum == TaskOperTypeEnum.CANCEL_TASK) { @@ -1556,7 +1556,7 @@ namespace Myshipping.Application model.STATUS = TaskStatusEnum.Cancel.ToString(); model.STATUS_NAME = TaskStatusEnum.Cancel.GetDescription(); - _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new + await _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new { it.COMPLETE_DATE, it.COMPLETE_DEAL, @@ -1564,7 +1564,7 @@ namespace Myshipping.Application it.IS_COMPLETE, it.STATUS, it.STATUS_NAME - }).ExecuteCommand(); + }).ExecuteCommandAsync(); } else if (model.TASK_TYPE == TaskBusiTypeEnum.ABORT_CHANGE_SHIP.ToString()) { @@ -1585,14 +1585,14 @@ namespace Myshipping.Application model.UpdatedUserId = UserManager.UserId; model.UpdatedUserName = UserManager.Name; - _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new + await _taskBaseInfoRepository.AsUpdateable(model).UpdateColumns(it => new { it.UpdatedTime, it.UpdatedUserId, it.UpdatedUserName, it.STATUS, it.STATUS_NAME - }).ExecuteCommand(); + }).ExecuteCommandAsync(); } } diff --git a/Myshipping.Application/Service/TrackingSystem/ServiceWorkFlowBaseService.cs b/Myshipping.Application/Service/TrackingSystem/ServiceWorkFlowBaseService.cs index f1e45bd0..72ac61d7 100644 --- a/Myshipping.Application/Service/TrackingSystem/ServiceWorkFlowBaseService.cs +++ b/Myshipping.Application/Service/TrackingSystem/ServiceWorkFlowBaseService.cs @@ -11,6 +11,7 @@ using Myshipping.Application.Entity; using Myshipping.Application.Helper; using Myshipping.Core; using Myshipping.Core.Entity; +using MySqlX.XDevAPI.Common; using SqlSugar; using System; using System.Collections.Generic; @@ -921,7 +922,64 @@ namespace Myshipping.Application [HttpPost("/ServiceWorkFlowBase/PublishRelease")] public async Task PublishRelease([FromBody]string[] pkIds) { - return new TaskManageOrderResultDto(); + TaskManageOrderResultDto result = new TaskManageOrderResultDto(); + + try + { + if (pkIds.Length == 0) + { + throw Oops.Oh($"服务流程主键数组不能为空", typeof(InvalidOperationException)); + } + + var list = _serviceWorkFlowBaseRepository.AsQueryable() + .Where(a => pkIds.Contains(a.PK_ID)).ToList(); + + if (list.Count == 0) + throw Oops.Oh($"服务流程获取失败,请服务流程信息是否存在", typeof(InvalidOperationException)); + + if (list.Count != pkIds.Length) + throw Oops.Oh($"部分服务流程获取失败,请服务流程信息是否存在", typeof(InvalidOperationException)); + + List rltList = new List(); + + //list.ForEach(pr => { + + // rltList.Add(InnerExcuteServiceWF(pr, OperateTypeEnum.Delete).GetAwaiter().GetResult()); + //}); + + result.succ = true; + result.msg = rltList.FirstOrDefault().msg; + + result.ext = rltList; + + var succ = rltList.Count(x => x.succ); + var fail = rltList.Count(x => !x.succ); + + if (succ > 0) + { + result.batchTotal = succ.ToString(); + } + else + { + result.batchTotal = "- "; + } + + if (fail > 0) + { + result.batchTotal += "/" + fail.ToString(); + } + else + { + result.batchTotal += " -"; + } + } + catch (Exception ex) + { + result.succ = false; + result.msg = $"启用服务项目异常,原因:{ex.Message}"; + } + + return result; } #region 获取展示服务流程时间轴列表