From d17f184fdf3c56d30da95155d0a90c584bba2a40 Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Mon, 8 Jul 2024 17:33:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E7=BB=91=E5=AE=9A=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MES/base/BaseDeviceController.cs | 12 +++++++ .../MES/base/BaseWorkStationController.cs | 8 ++--- DOAN.Model/MES/base/Dto/BaseWorkStationDto.cs | 31 +++++++++++++++++++ DOAN.Service/MES/base/BaseDeviceService.cs | 22 +++++++++++++ .../MES/base/BaseWorkStationService.cs | 12 +++++-- .../MES/base/IService/IBaseDeviceService.cs | 1 + .../base/IService/IBaseWorkStationService.cs | 4 +-- 7 files changed, 82 insertions(+), 8 deletions(-) diff --git a/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs b/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs index 13e3a78..f25d13e 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/base/BaseDeviceController.cs @@ -37,6 +37,18 @@ namespace DOAN.Admin.WebApi.Controllers var response = _BaseDeviceService.GetList(parm); return SUCCESS(response); } + /// + /// 查询设备信息列表 未绑定工位的设备 + /// + /// + /// + [HttpGet("list_no_bind")] + [ActionPermissionFilter(Permission = "baseManagement:basedevice:list")] + public IActionResult QueryBaseDevice_nobind([FromQuery] BaseDeviceQueryDto parm) + { + var response = _BaseDeviceService.GetList_nobind(parm); + return SUCCESS(response); + } /// diff --git a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs index f95b8e1..c6f0356 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/base/BaseWorkStationController.cs @@ -60,11 +60,11 @@ namespace DOAN.Admin.WebApi.Controllers [HttpPost] [ActionPermissionFilter(Permission = "baseManagement:baseworkstation:add")] [Log(Title = "工位", BusinessType = BusinessType.INSERT)] - public IActionResult AddBaseWorkStation([FromBody] BaseWorkStationDto parm) + public IActionResult AddBaseWorkStation([FromBody] BaseWorkStationDto2 parm) { var modal = parm.Adapt().ToCreate(HttpContext); - var response = _BaseWorkStationService.AddBaseWorkStation(modal); + var response = _BaseWorkStationService.AddBaseWorkStation(modal,parm.BindedDeviceArray); return SUCCESS(response); } @@ -76,10 +76,10 @@ namespace DOAN.Admin.WebApi.Controllers [HttpPut] [ActionPermissionFilter(Permission = "baseManagement:baseworkstation:edit")] [Log(Title = "工位", BusinessType = BusinessType.UPDATE)] - public IActionResult UpdateBaseWorkStation([FromBody] BaseWorkStationDto parm) + public IActionResult UpdateBaseWorkStation([FromBody] BaseWorkStationDto2 parm) { var modal = parm.Adapt().ToUpdate(HttpContext); - var response = _BaseWorkStationService.UpdateBaseWorkStation(modal); + var response = _BaseWorkStationService.UpdateBaseWorkStation(modal, parm.BindedDeviceArray); return ToResponse(response); } diff --git a/DOAN.Model/MES/base/Dto/BaseWorkStationDto.cs b/DOAN.Model/MES/base/Dto/BaseWorkStationDto.cs index 75487c0..c00d5fc 100644 --- a/DOAN.Model/MES/base/Dto/BaseWorkStationDto.cs +++ b/DOAN.Model/MES/base/Dto/BaseWorkStationDto.cs @@ -42,5 +42,36 @@ namespace DOAN.Model.MES.base_.Dto + } + /// + /// 添加工位和修改工位使用 + /// + public class BaseWorkStationDto2 + { + [Required(ErrorMessage = "主键不能为空")] + public int Id { get; set; } + + public int? FkWorkProcesses { get; set; } + + public string DictWorkType { get; set; } + + public string WorkStationDescription { get; set; } + + public int[] BindedDeviceArray { get; set; } + + public int? Status { 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/BaseDeviceService.cs b/DOAN.Service/MES/base/BaseDeviceService.cs index ba0164c..b4b0617 100644 --- a/DOAN.Service/MES/base/BaseDeviceService.cs +++ b/DOAN.Service/MES/base/BaseDeviceService.cs @@ -41,7 +41,29 @@ namespace DOAN.Service.MES.base_ return response; } + /// + /// 查询设备信息列表 未绑定工位的设备 + /// + /// + /// + public PagedInfo GetList_nobind(BaseDeviceQueryDto parm) + { + var predicate = Expressionable.Create() + .AndIF(!string.IsNullOrEmpty(parm.DeviceCode), it => it.DeviceCode.Contains(parm.DeviceCode)) + .AndIF(!string.IsNullOrEmpty(parm.DeviceName), it => it.DeviceName.Contains(parm.DeviceName)) + .AndIF(!string.IsNullOrEmpty(parm.DeviceSpecification), it => it.DeviceSpecification.Contains(parm.DeviceSpecification)) + .AndIF(!string.IsNullOrEmpty(parm.DeviceSupplier), it => it.DeviceSupplier.Contains(parm.DeviceSupplier)) + .AndIF(parm.FkWorkStation > -1, it => it.FkWorkStation == parm.FkWorkStation) + .AndIF(parm.Status > -1, it => it.Status == parm.Status) + .And(it=>it.FkWorkStation==null) + ; + var response = Queryable() + .Where(predicate.ToExpression()) + .ToPage(parm); + + return response; + } /// /// 获取详情 diff --git a/DOAN.Service/MES/base/BaseWorkStationService.cs b/DOAN.Service/MES/base/BaseWorkStationService.cs index 5cbe3f6..cd50e1a 100644 --- a/DOAN.Service/MES/base/BaseWorkStationService.cs +++ b/DOAN.Service/MES/base/BaseWorkStationService.cs @@ -58,8 +58,12 @@ namespace DOAN.Service.MES.base_ /// /// /// - public BaseWorkStation AddBaseWorkStation(BaseWorkStation model) + public BaseWorkStation AddBaseWorkStation(BaseWorkStation model, int[] BindedDeviceArray) { + // 处理绑定 + Context.Updateable().SetColumns(it => it.FkWorkStation == model.Id) + .Where(it => BindedDeviceArray.Contains(it.Id)) + .Where(it => it.FkWorkStation == null).ExecuteCommand(); return Context.Insertable(model).ExecuteReturnEntity(); } @@ -68,8 +72,12 @@ namespace DOAN.Service.MES.base_ /// /// /// - public int UpdateBaseWorkStation(BaseWorkStation model) + public int UpdateBaseWorkStation(BaseWorkStation model,int[] BindedDeviceArray) { + // 处理绑定 + 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/IBaseDeviceService.cs b/DOAN.Service/MES/base/IService/IBaseDeviceService.cs index 2c3495b..18e3278 100644 --- a/DOAN.Service/MES/base/IService/IBaseDeviceService.cs +++ b/DOAN.Service/MES/base/IService/IBaseDeviceService.cs @@ -13,6 +13,7 @@ namespace DOAN.Service.Business.IBusinessService public interface IBaseDeviceService : IBaseService { PagedInfo GetList(BaseDeviceQueryDto parm); + PagedInfo GetList_nobind(BaseDeviceQueryDto parm); BaseDevice GetInfo(int Id); diff --git a/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs b/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs index f947c62..ca9a7dc 100644 --- a/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs +++ b/DOAN.Service/MES/base/IService/IBaseWorkStationService.cs @@ -15,9 +15,9 @@ namespace DOAN.Service.MES.base_.IService BaseWorkStation GetInfo(int Id); - BaseWorkStation AddBaseWorkStation(BaseWorkStation parm); + BaseWorkStation AddBaseWorkStation(BaseWorkStation parm, int[] BindedDeviceArray); - int UpdateBaseWorkStation(BaseWorkStation parm); + int UpdateBaseWorkStation(BaseWorkStation parm, int[] BindedDeviceArray); } }