From d4680594e792d5a79948e1f9ef1558bdcc6750c8 Mon Sep 17 00:00:00 2001 From: "JinLu.Yin" <411641505@qq.com> Date: Wed, 11 May 2022 23:43:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=BA=8F=E5=A4=B4=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pro/controller/ProProcessController.java | 132 +++++++++++++++++ .../com/ktg/mes/pro/domain/ProProcess.java | 136 ++++++++++++++++++ .../ktg/mes/pro/mapper/ProProcessMapper.java | 65 +++++++++ .../mes/pro/service/IProProcessService.java | 64 +++++++++ .../service/impl/ProProcessServiceImpl.java | 130 +++++++++++++++++ .../resources/mapper/pro/ProProcessMapper.xml | 112 +++++++++++++++ 6 files changed, 639 insertions(+) create mode 100644 ktg-mes/src/main/java/com/ktg/mes/pro/controller/ProProcessController.java create mode 100644 ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProProcess.java create mode 100644 ktg-mes/src/main/java/com/ktg/mes/pro/mapper/ProProcessMapper.java create mode 100644 ktg-mes/src/main/java/com/ktg/mes/pro/service/IProProcessService.java create mode 100644 ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProProcessServiceImpl.java create mode 100644 ktg-mes/src/main/resources/mapper/pro/ProProcessMapper.xml diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/controller/ProProcessController.java b/ktg-mes/src/main/java/com/ktg/mes/pro/controller/ProProcessController.java new file mode 100644 index 0000000..94a1abf --- /dev/null +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/controller/ProProcessController.java @@ -0,0 +1,132 @@ +package com.ktg.mes.pro.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.ktg.common.constant.UserConstants; +import org.aspectj.weaver.loadtime.Aj; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ktg.common.annotation.Log; +import com.ktg.common.core.controller.BaseController; +import com.ktg.common.core.domain.AjaxResult; +import com.ktg.common.enums.BusinessType; +import com.ktg.mes.pro.domain.ProProcess; +import com.ktg.mes.pro.service.IProProcessService; +import com.ktg.common.utils.poi.ExcelUtil; +import com.ktg.common.core.page.TableDataInfo; + +/** + * 生产工序Controller + * + * @author yinjinlu + * @date 2022-05-11 + */ +@RestController +@RequestMapping("/pro/process") +public class ProProcessController extends BaseController +{ + @Autowired + private IProProcessService proProcessService; + + /** + * 查询生产工序列表 + */ + @PreAuthorize("@ss.hasPermi('pro:process:list')") + @GetMapping("/list") + public TableDataInfo list(ProProcess proProcess) + { + startPage(); + List list = proProcessService.selectProProcessList(proProcess); + return getDataTable(list); + } + + /** + * 查询所有可用工序的清单 + * @return + */ + @PreAuthorize("@ss.hasPermi('pro:process:list')") + @GetMapping("/listAll") + public AjaxResult listAll(){ + ProProcess process = new ProProcess(); + process.setEnableFlag("Y"); + List list =proProcessService.selectProProcessList(process); + return AjaxResult.success(list); + } + + /** + * 导出生产工序列表 + */ + @PreAuthorize("@ss.hasPermi('pro:process:export')") + @Log(title = "生产工序", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ProProcess proProcess) + { + List list = proProcessService.selectProProcessList(proProcess); + ExcelUtil util = new ExcelUtil(ProProcess.class); + util.exportExcel(response, list, "生产工序数据"); + } + + /** + * 获取生产工序详细信息 + */ + @PreAuthorize("@ss.hasPermi('pro:process:query')") + @GetMapping(value = "/{processId}") + public AjaxResult getInfo(@PathVariable("processId") Long processId) + { + return AjaxResult.success(proProcessService.selectProProcessByProcessId(processId)); + } + + /** + * 新增生产工序 + */ + @PreAuthorize("@ss.hasPermi('pro:process:add')") + @Log(title = "生产工序", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ProProcess proProcess) + { + if(UserConstants.NOT_UNIQUE.equals(proProcessService.checkProcessCodeUnique(proProcess))){ + return AjaxResult.error("工序编码已存在!"); + } + if(UserConstants.NOT_UNIQUE.equals(proProcessService.checkProcessNameUnique(proProcess))){ + return AjaxResult.error("工序名称已存在!"); + } + return toAjax(proProcessService.insertProProcess(proProcess)); + } + + /** + * 修改生产工序 + */ + @PreAuthorize("@ss.hasPermi('pro:process:edit')") + @Log(title = "生产工序", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ProProcess proProcess) + { + if(UserConstants.NOT_UNIQUE.equals(proProcessService.checkProcessCodeUnique(proProcess))){ + return AjaxResult.error("工序编码已存在!"); + } + if(UserConstants.NOT_UNIQUE.equals(proProcessService.checkProcessNameUnique(proProcess))){ + return AjaxResult.error("工序名称已存在!"); + } + return toAjax(proProcessService.updateProProcess(proProcess)); + } + + /** + * 删除生产工序 + */ + @PreAuthorize("@ss.hasPermi('pro:process:remove')") + @Log(title = "生产工序", businessType = BusinessType.DELETE) + @DeleteMapping("/{processIds}") + public AjaxResult remove(@PathVariable Long[] processIds) + { + return toAjax(proProcessService.deleteProProcessByProcessIds(processIds)); + } +} diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProProcess.java b/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProProcess.java new file mode 100644 index 0000000..e204b75 --- /dev/null +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/domain/ProProcess.java @@ -0,0 +1,136 @@ +package com.ktg.mes.pro.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ktg.common.annotation.Excel; +import com.ktg.common.core.domain.BaseEntity; + +/** + * 生产工序对象 pro_process + * + * @author yinjinlu + * @date 2022-05-11 + */ +public class ProProcess extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 工序ID */ + private Long processId; + + /** 工序编码 */ + @Excel(name = "工序编码") + private String processCode; + + /** 工序名称 */ + @Excel(name = "工序名称") + private String processName; + + /** 是否启用 */ + @Excel(name = "是否启用") + private String enableFlag; + + /** 预留字段1 */ + private String attr1; + + /** 预留字段2 */ + private String attr2; + + /** 预留字段3 */ + private Long attr3; + + /** 预留字段4 */ + private Long attr4; + + public void setProcessId(Long processId) + { + this.processId = processId; + } + + public Long getProcessId() + { + return processId; + } + public void setProcessCode(String processCode) + { + this.processCode = processCode; + } + + public String getProcessCode() + { + return processCode; + } + public void setProcessName(String processName) + { + this.processName = processName; + } + + public String getProcessName() + { + return processName; + } + public void setEnableFlag(String enableFlag) + { + this.enableFlag = enableFlag; + } + + public String getEnableFlag() + { + return enableFlag; + } + public void setAttr1(String attr1) + { + this.attr1 = attr1; + } + + public String getAttr1() + { + return attr1; + } + public void setAttr2(String attr2) + { + this.attr2 = attr2; + } + + public String getAttr2() + { + return attr2; + } + public void setAttr3(Long attr3) + { + this.attr3 = attr3; + } + + public Long getAttr3() + { + return attr3; + } + public void setAttr4(Long attr4) + { + this.attr4 = attr4; + } + + public Long getAttr4() + { + return attr4; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("processId", getProcessId()) + .append("processCode", getProcessCode()) + .append("processName", getProcessName()) + .append("enableFlag", getEnableFlag()) + .append("remark", getRemark()) + .append("attr1", getAttr1()) + .append("attr2", getAttr2()) + .append("attr3", getAttr3()) + .append("attr4", getAttr4()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/mapper/ProProcessMapper.java b/ktg-mes/src/main/java/com/ktg/mes/pro/mapper/ProProcessMapper.java new file mode 100644 index 0000000..6bbba34 --- /dev/null +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/mapper/ProProcessMapper.java @@ -0,0 +1,65 @@ +package com.ktg.mes.pro.mapper; + +import java.util.List; +import com.ktg.mes.pro.domain.ProProcess; + +/** + * 生产工序Mapper接口 + * + * @author yinjinlu + * @date 2022-05-11 + */ +public interface ProProcessMapper +{ + /** + * 查询生产工序 + * + * @param processId 生产工序主键 + * @return 生产工序 + */ + public ProProcess selectProProcessByProcessId(Long processId); + + /** + * 查询生产工序列表 + * + * @param proProcess 生产工序 + * @return 生产工序集合 + */ + public List selectProProcessList(ProProcess proProcess); + + public ProProcess checkProcessCodeUnique(ProProcess proProcess); + public ProProcess checkProcessNameUnique(ProProcess proProcess); + + + /** + * 新增生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + public int insertProProcess(ProProcess proProcess); + + /** + * 修改生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + public int updateProProcess(ProProcess proProcess); + + /** + * 删除生产工序 + * + * @param processId 生产工序主键 + * @return 结果 + */ + public int deleteProProcessByProcessId(Long processId); + + /** + * 批量删除生产工序 + * + * @param processIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteProProcessByProcessIds(Long[] processIds); +} diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProProcessService.java b/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProProcessService.java new file mode 100644 index 0000000..6445670 --- /dev/null +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/service/IProProcessService.java @@ -0,0 +1,64 @@ +package com.ktg.mes.pro.service; + +import java.util.List; +import com.ktg.mes.pro.domain.ProProcess; + +/** + * 生产工序Service接口 + * + * @author yinjinlu + * @date 2022-05-11 + */ +public interface IProProcessService +{ + /** + * 查询生产工序 + * + * @param processId 生产工序主键 + * @return 生产工序 + */ + public ProProcess selectProProcessByProcessId(Long processId); + + /** + * 查询生产工序列表 + * + * @param proProcess 生产工序 + * @return 生产工序集合 + */ + public List selectProProcessList(ProProcess proProcess); + + public String checkProcessCodeUnique(ProProcess proProcess); + public String checkProcessNameUnique(ProProcess proProcess); + + /** + * 新增生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + public int insertProProcess(ProProcess proProcess); + + /** + * 修改生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + public int updateProProcess(ProProcess proProcess); + + /** + * 批量删除生产工序 + * + * @param processIds 需要删除的生产工序主键集合 + * @return 结果 + */ + public int deleteProProcessByProcessIds(Long[] processIds); + + /** + * 删除生产工序信息 + * + * @param processId 生产工序主键 + * @return 结果 + */ + public int deleteProProcessByProcessId(Long processId); +} diff --git a/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProProcessServiceImpl.java b/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProProcessServiceImpl.java new file mode 100644 index 0000000..8512e3a --- /dev/null +++ b/ktg-mes/src/main/java/com/ktg/mes/pro/service/impl/ProProcessServiceImpl.java @@ -0,0 +1,130 @@ +package com.ktg.mes.pro.service.impl; + +import java.util.List; + +import com.ktg.common.constant.UserConstants; +import com.ktg.common.utils.DateUtils; +import com.ktg.common.utils.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ktg.mes.pro.mapper.ProProcessMapper; +import com.ktg.mes.pro.domain.ProProcess; +import com.ktg.mes.pro.service.IProProcessService; + +/** + * 生产工序Service业务层处理 + * + * @author yinjinlu + * @date 2022-05-11 + */ +@Service +public class ProProcessServiceImpl implements IProProcessService +{ + @Autowired + private ProProcessMapper proProcessMapper; + + /** + * 查询生产工序 + * + * @param processId 生产工序主键 + * @return 生产工序 + */ + @Override + public ProProcess selectProProcessByProcessId(Long processId) + { + return proProcessMapper.selectProProcessByProcessId(processId); + } + + /** + * 查询生产工序列表 + * + * @param proProcess 生产工序 + * @return 生产工序 + */ + @Override + public List selectProProcessList(ProProcess proProcess) + { + return proProcessMapper.selectProProcessList(proProcess); + } + + /** + * 检查工序编码是否唯一 + * @param proProcess + * @return + */ + @Override + public String checkProcessCodeUnique(ProProcess proProcess) { + ProProcess process = proProcessMapper.checkProcessCodeUnique(proProcess); + Long processId = proProcess.getProcessId()==null?-1L:proProcess.getProcessId(); + if(StringUtils.isNotNull(process) && process.getProcessId().longValue() != processId.longValue()){ + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } + + + /** + * 检查工序名称是否唯一 + * @param proProcess + * @return + */ + @Override + public String checkProcessNameUnique(ProProcess proProcess) { + ProProcess process = proProcessMapper.checkProcessNameUnique(proProcess); + Long processId = proProcess.getProcessId()==null?-1L:proProcess.getProcessId(); + if(StringUtils.isNotNull(process) && process.getProcessId().longValue() != processId.longValue()){ + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } + + /** + * 新增生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + @Override + public int insertProProcess(ProProcess proProcess) + { + proProcess.setCreateTime(DateUtils.getNowDate()); + return proProcessMapper.insertProProcess(proProcess); + } + + /** + * 修改生产工序 + * + * @param proProcess 生产工序 + * @return 结果 + */ + @Override + public int updateProProcess(ProProcess proProcess) + { + proProcess.setUpdateTime(DateUtils.getNowDate()); + return proProcessMapper.updateProProcess(proProcess); + } + + /** + * 批量删除生产工序 + * + * @param processIds 需要删除的生产工序主键 + * @return 结果 + */ + @Override + public int deleteProProcessByProcessIds(Long[] processIds) + { + return proProcessMapper.deleteProProcessByProcessIds(processIds); + } + + /** + * 删除生产工序信息 + * + * @param processId 生产工序主键 + * @return 结果 + */ + @Override + public int deleteProProcessByProcessId(Long processId) + { + return proProcessMapper.deleteProProcessByProcessId(processId); + } +} diff --git a/ktg-mes/src/main/resources/mapper/pro/ProProcessMapper.xml b/ktg-mes/src/main/resources/mapper/pro/ProProcessMapper.xml new file mode 100644 index 0000000..b43691a --- /dev/null +++ b/ktg-mes/src/main/resources/mapper/pro/ProProcessMapper.xml @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + + + + + select process_id, process_code, process_name, enable_flag, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from pro_process + + + + + + + + + + + + insert into pro_process + + process_code, + process_name, + enable_flag, + remark, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + + + #{processCode}, + #{processName}, + #{enableFlag}, + #{remark}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + + + + + update pro_process + + process_code = #{processCode}, + process_name = #{processName}, + enable_flag = #{enableFlag}, + remark = #{remark}, + attr1 = #{attr1}, + attr2 = #{attr2}, + attr3 = #{attr3}, + attr4 = #{attr4}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where process_id = #{processId} + + + + delete from pro_process where process_id = #{processId} + + + + delete from pro_process where process_id in + + #{processId} + + + \ No newline at end of file