From b005bae80cfaaa8392e32b06bc0052945c6e8fa7 Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Tue, 9 Jul 2024 10:37:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MES/base/BaseDeviceController.cs | 2 +- .../MES/base/BaseWorkProcessesController.cs | 18 +++++------ .../MES/base/BaseWorkStationController.cs | 15 +++++++++ DOAN.Model/MES/base/BaseWorkProcesses.cs | 3 ++ .../MES/base/Dto/BaseWorkProcessesDto.cs | 32 +++++++++++++++++++ .../MES/base/BaseWorkProcessesService.cs | 29 +++++++++++++++-- .../MES/base/BaseWorkStationService.cs | 28 +++++++++++----- .../IService/IBaseWorkProcessesService.cs | 6 ++-- .../base/IService/IBaseWorkStationService.cs | 6 ++-- 9 files changed, 113 insertions(+), 26 deletions(-) diff --git a/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs b/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs index 75d55c5..d31023f 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs @@ -38,7 +38,7 @@ namespace DOAN.Admin.WebApi.Controllers return SUCCESS(response); } /// - /// 查询设备信息列表 未绑定工位的设备 + /// 查询设备信息列表 未绑定工位的设备和已经绑定的 /// /// /// diff --git a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkProcessesController.cs b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkProcessesController.cs index 47645fb..995d4a1 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkProcessesController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkProcessesController.cs @@ -30,7 +30,7 @@ namespace DOAN.Admin.WebApi.Controllers /// /// [HttpGet("list")] - [ActionPermissionFilter(Permission = "business:baseworkprocesses:list")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkprocesses:list")] public IActionResult QueryBaseWorkProcesses([FromQuery] BaseWorkProcessesQueryDto parm) { var response = _BaseWorkProcessesService.GetList(parm); @@ -44,7 +44,7 @@ namespace DOAN.Admin.WebApi.Controllers /// /// [HttpGet("{Id}")] - [ActionPermissionFilter(Permission = "business:baseworkprocesses:query")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkprocesses:query")] public IActionResult GetBaseWorkProcesses(int Id) { var response = _BaseWorkProcessesService.GetInfo(Id); @@ -58,13 +58,13 @@ namespace DOAN.Admin.WebApi.Controllers /// /// [HttpPost] - [ActionPermissionFilter(Permission = "business:baseworkprocesses:add")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkprocesses:add")] [Log(Title = "生产工序", BusinessType = BusinessType.INSERT)] - public IActionResult AddBaseWorkProcesses([FromBody] BaseWorkProcessesDto parm) + public IActionResult AddBaseWorkProcesses([FromBody] BaseWorkProcessesDto2 parm) { var modal = parm.Adapt().ToCreate(HttpContext); - var response = _BaseWorkProcessesService.AddBaseWorkProcesses(modal); + var response = _BaseWorkProcessesService.AddBaseWorkProcesses(modal, parm.BindedWorkStationArray); return SUCCESS(response); } @@ -74,12 +74,12 @@ namespace DOAN.Admin.WebApi.Controllers /// /// [HttpPut] - [ActionPermissionFilter(Permission = "business:baseworkprocesses:edit")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkprocesses:edit")] [Log(Title = "生产工序", BusinessType = BusinessType.UPDATE)] - public IActionResult UpdateBaseWorkProcesses([FromBody] BaseWorkProcessesDto parm) + public IActionResult UpdateBaseWorkProcesses([FromBody] BaseWorkProcessesDto2 parm) { var modal = parm.Adapt().ToUpdate(HttpContext); - var response = _BaseWorkProcessesService.UpdateBaseWorkProcesses(modal); + var response = _BaseWorkProcessesService.UpdateBaseWorkProcesses(modal, parm.BindedWorkStationArray); return ToResponse(response); } @@ -89,7 +89,7 @@ namespace DOAN.Admin.WebApi.Controllers /// /// [HttpDelete("{ids}")] - [ActionPermissionFilter(Permission = "business:baseworkprocesses:delete")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkprocesses:delete")] [Log(Title = "生产工序", BusinessType = BusinessType.DELETE)] public IActionResult DeleteBaseWorkProcesses(string ids) { diff --git a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs index c6f0356..0397161 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs @@ -38,6 +38,21 @@ namespace DOAN.Admin.WebApi.Controllers } + /// + /// 查询工位列表 未绑定的工位和已经绑定的 + /// + /// + /// + [HttpGet("drop_down_list")] + [ActionPermissionFilter(Permission = "baseManagement:baseworkstation:list")] + public IActionResult QueryBaseWorkStation_Drop_down(int id) + { + var response = _BaseWorkStationService.GetList_Drop_down(id); + return SUCCESS(response); + } + + + /// /// 查询工位详情 /// diff --git a/DOAN.Model/MES/base/BaseWorkProcesses.cs b/DOAN.Model/MES/base/BaseWorkProcesses.cs index 0ee0658..cf5d169 100644 --- a/DOAN.Model/MES/base/BaseWorkProcesses.cs +++ b/DOAN.Model/MES/base/BaseWorkProcesses.cs @@ -28,6 +28,9 @@ namespace DOAN.Model.MES.base_ /// public int? Status { get; set; } + [Navigate(NavigateType.OneToMany, nameof(BaseWorkStation.FkWorkProcesses))] + public List BindedWorkStationArray { get; set; } + /// /// 备注 /// diff --git a/DOAN.Model/MES/base/Dto/BaseWorkProcessesDto.cs b/DOAN.Model/MES/base/Dto/BaseWorkProcessesDto.cs index a35f56e..1032f3a 100644 --- a/DOAN.Model/MES/base/Dto/BaseWorkProcessesDto.cs +++ b/DOAN.Model/MES/base/Dto/BaseWorkProcessesDto.cs @@ -7,6 +7,9 @@ namespace DOAN.Model.MES.base_.Dto /// public class BaseWorkProcessesQueryDto : PagerInfo { + public string Name { get; set; } + + public int? Status { get; set; } } /// @@ -34,5 +37,34 @@ namespace DOAN.Model.MES.base_.Dto + } + + /// + /// 生产工序输入输出对象 + /// + public class BaseWorkProcessesDto2 + { + public int? Id { get; set; } + + public string DictWorkType { get; set; } + + public string Name { get; set; } + + public int? Status { get; set; } + + public int[] BindedWorkStationArray { get; set; } + + public string Remark { get; set; } + + public string CreatedBy { get; set; } + + public DateTime? CreatedTime { get; set; } + + public string UpdatedBy { get; set; } + + public DateTime? UpdatedTime { get; set; } + + + } } \ No newline at end of file diff --git a/DOAN.Service/MES/base/BaseWorkProcessesService.cs b/DOAN.Service/MES/base/BaseWorkProcessesService.cs index aec8d9a..17d229d 100644 --- a/DOAN.Service/MES/base/BaseWorkProcessesService.cs +++ b/DOAN.Service/MES/base/BaseWorkProcessesService.cs @@ -8,6 +8,7 @@ using DOAN.Model.MES.base_; using DOAN.Repository; using DOAN.Service.MES.base_.IService; using System.Linq; +using Mapster; namespace DOAN.Service.Business { @@ -24,7 +25,10 @@ namespace DOAN.Service.Business /// public PagedInfo GetList(BaseWorkProcessesQueryDto parm) { - var predicate = Expressionable.Create(); + var predicate = Expressionable.Create() + .AndIF(!string.IsNullOrEmpty(parm.Name),it=>it.Name == parm.Name) + .AndIF(parm.Status>-1,it=>it.Status==parm.Status) + ; var response = Queryable() .Where(predicate.ToExpression()) @@ -42,6 +46,7 @@ namespace DOAN.Service.Business public BaseWorkProcesses GetInfo(int Id) { var response = Queryable() + .Includes(x => x.BindedWorkStationArray) .Where(x => x.Id == Id) .First(); @@ -53,8 +58,12 @@ namespace DOAN.Service.Business /// /// /// - public BaseWorkProcesses AddBaseWorkProcesses(BaseWorkProcesses model) + public BaseWorkProcesses AddBaseWorkProcesses(BaseWorkProcesses model, int[] BindedWorkStationArray) { + // 处理绑定 + Context.Updateable().SetColumns(it => it.FkWorkProcesses == model.Id) + .Where(it => BindedWorkStationArray.Contains(it.Id)) + .Where(it => it.FkWorkProcesses == null).ExecuteCommand(); return Context.Insertable(model).ExecuteReturnEntity(); } @@ -63,8 +72,22 @@ namespace DOAN.Service.Business /// /// /// - public int UpdateBaseWorkProcesses(BaseWorkProcesses model) + public int UpdateBaseWorkProcesses(BaseWorkProcesses model, int[] BindedWorkStationArray) { + + UseTran2(() => + { + //解绑 + Context.Updateable().SetColumns(it => it.FkWorkProcesses == null) + .Where(it => it.FkWorkProcesses == model.Id) + .ExecuteCommand(); + // 处理绑定 + Context.Updateable().SetColumns(it => it.FkWorkProcesses == model.Id) + .Where(it => BindedWorkStationArray.Contains(it.Id)) + .Where(it => it.FkWorkProcesses == null).ExecuteCommand(); + }); + + //var response = Update(w => w.Id == model.Id, it => new BaseWorkProcesses() //{ // DictWorkType = model.DictWorkType, diff --git a/DOAN.Service/MES/base/BaseWorkStationService.cs b/DOAN.Service/MES/base/BaseWorkStationService.cs index 4902925..9329fb2 100644 --- a/DOAN.Service/MES/base/BaseWorkStationService.cs +++ b/DOAN.Service/MES/base/BaseWorkStationService.cs @@ -8,6 +8,7 @@ using DOAN.Model.MES.base_; using DOAN.Repository; using DOAN.Service.MES.base_.IService; using System.Linq; +using Mapster; namespace DOAN.Service.MES.base_ { @@ -38,6 +39,13 @@ namespace DOAN.Service.MES.base_ return response; } + public List GetList_Drop_down(int id) + { + var response = Context.Queryable().Where(it => (it.Status == 1 && it.FkWorkProcesses == null) || (it.Status == 1 && it.FkWorkProcesses == id)) + .ToList().Adapt>(); + return response; + } + /// /// 获取详情 @@ -75,14 +83,18 @@ namespace DOAN.Service.MES.base_ /// public int UpdateBaseWorkStation(BaseWorkStation model,int[] BindedDeviceArray) { - //解绑 - Context.Updateable().SetColumns(it=>it.FkWorkStation==null) - .Where(it => it.FkWorkStation == model.Id) - .ExecuteCommand(); - // 处理绑定 - Context.Updateable().SetColumns(it => it.FkWorkStation == model.Id) - .Where(it => BindedDeviceArray.Contains(it.Id)) - .Where(it => it.FkWorkStation == null).ExecuteCommand(); + UseTran2(() => + { + //解绑 + Context.Updateable().SetColumns(it => it.FkWorkStation == null) + .Where(it => it.FkWorkStation == model.Id) + .ExecuteCommand(); + // 处理绑定 + Context.Updateable().SetColumns(it => it.FkWorkStation == model.Id) + .Where(it => BindedDeviceArray.Contains(it.Id)) + .Where(it => it.FkWorkStation == null).ExecuteCommand(); + }); + //var response = Update(w => w.Id == model.Id, it => new BaseWorkStation() //{ // FkWorkProcesses = model.FkWorkProcesses, diff --git a/DOAN.Service/MES/base/IService/IBaseWorkProcessesService.cs b/DOAN.Service/MES/base/IService/IBaseWorkProcessesService.cs index a29eb2e..ae86527 100644 --- a/DOAN.Service/MES/base/IService/IBaseWorkProcessesService.cs +++ b/DOAN.Service/MES/base/IService/IBaseWorkProcessesService.cs @@ -13,11 +13,13 @@ namespace DOAN.Service.MES.base_.IService { PagedInfo GetList(BaseWorkProcessesQueryDto parm); + + BaseWorkProcesses GetInfo(int Id); - BaseWorkProcesses AddBaseWorkProcesses(BaseWorkProcesses parm); + BaseWorkProcesses AddBaseWorkProcesses(BaseWorkProcesses parm,int[] BindedDeviceArray); - int UpdateBaseWorkProcesses(BaseWorkProcesses parm); + int UpdateBaseWorkProcesses(BaseWorkProcesses parm, int[] BindedDeviceArray); } } diff --git a/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs b/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs index ca9a7dc..cf564c7 100644 --- a/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs +++ b/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs @@ -12,12 +12,12 @@ namespace DOAN.Service.MES.base_.IService public interface IBaseWorkStationService : IBaseService { PagedInfo GetList(BaseWorkStationQueryDto parm); - + List GetList_Drop_down(int id); BaseWorkStation GetInfo(int Id); - BaseWorkStation AddBaseWorkStation(BaseWorkStation parm, int[] BindedDeviceArray); + BaseWorkStation AddBaseWorkStation(BaseWorkStation parm, int[] BindedWorkStationArray); - int UpdateBaseWorkStation(BaseWorkStation parm, int[] BindedDeviceArray); + int UpdateBaseWorkStation(BaseWorkStation parm, int[] BindedWorkStationArray); } }