From 20488a1824d17d824d1b870e73f9e25f16aeb7fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=A5=89=E6=BA=90?= <1976974459@qq.com> Date: Wed, 21 Jun 2023 13:20:52 +0800 Subject: [PATCH] =?UTF-8?q?2023-06-21=EF=BC=8C=E8=AE=BE=E5=A4=87=E5=92=8C?= =?UTF-8?q?=E8=B4=A8=E9=87=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/pms/controller/EamController.java | 39 +++++-- .../sys/modules/pms/mapper/EamMapper.java | 15 ++- .../modules/pms/mapper/Impl/EamDaoImpl.java | 16 +-- .../sys/modules/pms/service/EamService.java | 5 + .../pms/service/Impl/EamServiceImpl.java | 103 ++++++++++++++++-- src/main/resources/mapper/pms/EamMapper.xml | 76 ++++++++++++- 6 files changed, 219 insertions(+), 35 deletions(-) diff --git a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java index 6143ede8..62ac4e32 100644 --- a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java +++ b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java @@ -8,6 +8,7 @@ import com.xujie.sys.modules.pms.data.*; import com.xujie.sys.modules.pms.entity.vo.PartSpareVo; import com.xujie.sys.modules.pms.service.EamService; import com.xujie.sys.modules.pms.util.ResponseData; +import com.xujie.sys.modules.sys.entity.SysUserEntity; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -755,17 +756,8 @@ public class EamController { */ @PostMapping("getEmpyDeptList") public Object getEmpyDeptList(@RequestBody EmpyDept empyDept) { - Map resultMap = new HashMap<>(); - try { - List list = eamService.getEmpyDeptList(empyDept); - resultMap.put("rows", list); - resultMap.put("success", true); - - } catch (Exception e) { - resultMap.put("msg", e.getMessage()); - resultMap.put("success", false); - } - return resultMap; + List list = eamService.getEmpyDeptList(empyDept); + return R.ok().put("rows", list); } /** @@ -1865,5 +1857,30 @@ public class EamController { return R.ok(); } + /** + * @description: 查询设备的点检历史记录 + * @author: fengyuan_yang + * @date: 2023/6/20 17:31 + * @param: [data] + * @return: com.xujie.sys.common.utils.R + **/ + @PostMapping("/queryHistoryRecord") + public R queryHistoryRecord(@RequestBody EamWorkOrderInData data){ + List list = eamService.queryHistoryRecord(data); + return R.ok().put("rows", list); + } + + /** + * @description: 获取可用的MES账号 + * @author: fengyuan_yang + * @date: 2023/6/21 12:07 + * @param: [data] + * @return: com.xujie.sys.common.utils.R + **/ + @PostMapping("/getMesList") + public R getMesList(@RequestBody SysUserEntity data){ + List list = eamService.getMesList(data); + return R.ok().put("rows", list); + } } diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java index 98dee60c..d4d6684e 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.xujie.sys.modules.oss.entity.SysOssEntity; import com.xujie.sys.modules.pms.data.*; import com.xujie.sys.modules.pms.entity.vo.PartSpareVo; +import com.xujie.sys.modules.sys.entity.SysUserEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -1052,7 +1053,7 @@ public interface EamMapper { String selectDeptByObjectID(String site, String objectID); - String selectDeptByUserName(String site, String username); + List selectAdminIdByUserName(String site, String username); void defectReportWorkOrder(EamWorkOrderInData inData); @@ -1061,4 +1062,16 @@ public interface EamMapper { List selectNameByMes(EamAdminData data); void submitDefect(EamWorkOrderInData data); + + List queryHistoryRecord(EamWorkOrderInData data); + + List getEmpyDeptList(EmpyDept empyDept); + + void saveAdminDepartment(String site, String adminID, String deptId); + + List getDeptList(String site, String adminID); + + void deleteAdminDepartment(String site, String adminID); + + List getMesList(SysUserEntity data); } diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/Impl/EamDaoImpl.java b/src/main/java/com/xujie/sys/modules/pms/mapper/Impl/EamDaoImpl.java index bb7e15bd..b5a3a776 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/Impl/EamDaoImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/Impl/EamDaoImpl.java @@ -454,14 +454,14 @@ public class EamDaoImpl implements EamDao { public void saveNewEamAdmin(EamAdminData inData){ StringBuilder sql = new StringBuilder(); Map paramMap = new HashMap<>(); - sql.append("Insert into eam_admin (Site,AdminID,AdminName,Active,Phone,Department,Email,Tel,LevelID,MesUser,CreatedDate,update_date, update_by, created_by) "); - sql.append(" values (:Site,:AdminID,:AdminName,:Active,:Phone,:Department,:Email,:Tel,:LevelID,:MesUser,GetDate(),getDate(), :updateBy, :createdBy)"); + sql.append("Insert into eam_admin (Site,AdminID,AdminName,Active,Phone,Email,Tel,LevelID,MesUser,CreatedDate,update_date, update_by, created_by) "); + sql.append(" values (:Site,:AdminID,:AdminName,:Active,:Phone,:Email,:Tel,:LevelID,:MesUser,GetDate(),getDate(), :updateBy, :createdBy)"); paramMap.put("Site", inData.getSite()); paramMap.put("AdminID", inData.getAdminID()); paramMap.put("AdminName", inData.getAdminName()); paramMap.put("Active", inData.getActive()); paramMap.put("Phone", inData.getPhone()); - paramMap.put("Department", inData.getDepartment()); +// paramMap.put("Department", inData.getDepartment()); paramMap.put("Email", inData.getEmail()); paramMap.put("Tel", inData.getTel()); paramMap.put("LevelID", inData.getLevelID()); @@ -660,14 +660,14 @@ public class EamDaoImpl implements EamDao { @Override public List getEmpyDeptList(EmpyDept empyDept) { StringBuilder sql = new StringBuilder(); - sql.append(" select site , dept_id, dept_name " ); - sql.append(" from view_empy_dept "); - sql.append(" where site =:site "); + sql.append(" select site, dept_id, dept_name "); + sql.append(" from view_empy_dept "); + sql.append(" where site = :site "); if(StringUtils.isNotEmpty(empyDept.getDeptId())){ - sql.append( " dept_id = :deptId" ); + sql.append(" dept_id = :deptId "); } if(StringUtils.isNotEmpty(empyDept.getDeptName())){ - sql.append( " dept_name = :deptName" ); + sql.append(" dept_name = :deptName"); } return parameterJdbcTemplate.query(sql.toString(), new BeanPropertySqlParameterSource(empyDept) ,new BeanPropertyRowMapper<>(EmpyDept.class)); diff --git a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java index 6892bf4b..72bf791e 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java @@ -7,6 +7,7 @@ import com.xujie.sys.modules.oss.entity.SysOssEntity; import com.xujie.sys.modules.pms.data.*; import com.xujie.sys.modules.pms.entity.vo.PartSpareVo; import com.xujie.sys.modules.pms.util.ResponseData; +import com.xujie.sys.modules.sys.entity.SysUserEntity; import org.springframework.stereotype.Service; import org.springframework.web.bind.annotation.RequestBody; @@ -1075,4 +1076,8 @@ public interface EamService { List selectNameByMes(EamAdminData data); void submitDefect(EamWorkOrderInData data); + + List queryHistoryRecord(EamWorkOrderInData data); + + List getMesList(SysUserEntity data); } diff --git a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java index 0e836d0f..6cff6efb 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java @@ -13,6 +13,7 @@ import com.xujie.sys.modules.pms.mapper.EamMapper; import com.xujie.sys.modules.pms.service.EamService; import com.xujie.sys.modules.pms.util.ResponseData; import com.xujie.sys.modules.report.dao.ProcedureDao; +import com.xujie.sys.modules.sys.entity.SysUserEntity; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -266,25 +267,43 @@ public class EamServiceImpl implements EamService { //------------------------机修人员---------------------------- @Override public PageUtils eamAdminSearch(EamAdminData inData){ - IPage eamAdminList = this.eamMapper.eamAdminSearch( - new Page(inData.getPage(), inData.getLimit()), inData); + IPage eamAdminList = this.eamMapper.eamAdminSearch(new Page(inData.getPage(), inData.getLimit()), inData); + // 拼接部门 + for(EamAdminData data : eamAdminList.getRecords()){ + List deptList = eamMapper.getDeptList(data.getSite(), data.getAdminID()); + String dept = ""; + for (int i = 0; i < deptList.size(); i++) { + if (dept.equals("")){ + dept = deptList.get(i); + }else { + dept = dept + ";" + deptList.get(i); + } + } + data.setDepartment(dept); + } return new PageUtils(eamAdminList); } @Override + @Transactional public ResponseData eamAdminSave(EamAdminData inData){ - ResponseData responseData=new ResponseData(); - List checkEamAdmin=eamDao.checkEamAdmin(inData); - if(checkEamAdmin.size()>0){ + ResponseData responseData = new ResponseData(); + List checkEamAdmin = eamDao.checkEamAdmin(inData); + if(checkEamAdmin.size() > 0){ throw new RuntimeException("该人员编码已存在!"); } - EamAdminLevelData checkIn=new EamAdminLevelData(); + EamAdminLevelData checkIn = new EamAdminLevelData(); checkIn.setSite(inData.getSite()); checkIn.setAdminLevelID(inData.getLevelID()); - List checkEamAdminLevel=eamDao.checkEamAdminLevel(checkIn); - if(checkEamAdminLevel.size()==0){ + List checkEamAdminLevel = eamDao.checkEamAdminLevel(checkIn); + if(checkEamAdminLevel.size() == 0){ throw new RuntimeException("该等级编码不存在!"); } + // 保存人员所属部门 + String[] deptList = inData.getDepartment().split(";"); + for (String deptId : deptList){ + eamMapper.saveAdminDepartment(inData.getSite(), inData.getAdminID(), deptId); + } eamDao.saveNewEamAdmin(inData); responseData.setMsg("保存成功!"); responseData.setSuccess(true); @@ -292,6 +311,7 @@ public class EamServiceImpl implements EamService { return responseData; } @Override + @Transactional public ResponseData eamAdminEdit(EamAdminData inData){ ResponseData responseData=new ResponseData(); List checkEamAdmin=eamDao.checkEamAdmin(inData); @@ -305,6 +325,13 @@ public class EamServiceImpl implements EamService { if(checkEamAdminLevel.size()==0){ throw new RuntimeException("该等级编码不存在!"); } + // 修改人员所属部门 + String[] deptList = inData.getDepartment().split(";"); + // 删除旧数据 + eamMapper.deleteAdminDepartment(inData.getSite(), inData.getAdminID()); + for (String deptId : deptList){ + eamMapper.saveAdminDepartment(inData.getSite(), inData.getAdminID(), deptId); + } eamDao.eamAdminEdit(inData); responseData.setMsg("修改成功!"); responseData.setSuccess(true); @@ -313,8 +340,12 @@ public class EamServiceImpl implements EamService { } @Override + @Transactional public ResponseData eamAdminDelete(EamAdminData inData){ - ResponseData responseData=new ResponseData(); + ResponseData responseData = new ResponseData(); + // 删除部门记录 + eamMapper.deleteAdminDepartment(inData.getSite(), inData.getAdminID()); + // 删除人员记录 eamDao.eamAdminDelete(inData); responseData.setMsg("删除成功!"); responseData.setSuccess(true); @@ -453,9 +484,16 @@ public class EamServiceImpl implements EamService { + /** + * @description: 查询部门列表 + * @author: fengyuan_yang + * @date: 2023/6/21 9:39 + * @param: [empyDept] + * @return: java.util.List + **/ @Override public List getEmpyDeptList(EmpyDept empyDept) { - return eamDao.getEmpyDeptList(empyDept); + return eamMapper.getEmpyDeptList(empyDept); } @@ -973,8 +1011,9 @@ public class EamServiceImpl implements EamService { // 查询设备所属部门 String objDepartment = eamMapper.selectDeptByObjectID(ewoData.getSite(), ewoData.getObjectID()); // 查询用户所属部门 - String userDepartment = eamMapper.selectDeptByUserName(ewoData.getSite(), inData.getUsername()); - if (objDepartment.equals(userDepartment)){ + List adminIDList = eamMapper.selectAdminIdByUserName(ewoData.getSite(), inData.getUsername()); + List deptList = eamMapper.getDeptList(ewoData.getSite(), adminIDList.get(0)); + if (deptList.contains(objDepartment)){ list.add(ewoData); } } @@ -1629,4 +1668,44 @@ public class EamServiceImpl implements EamService { eamMapper.submitDefect(data); } + /** + * @description: 查询设备的点检历史记录 + * @author: fengyuan_yang + * @date: 2023/6/20 17:39 + * @param: [data] + * @return: java.util.List + **/ + @Override + public List queryHistoryRecord(EamWorkOrderInData data) { + // 查询设备的历史记录 + List list = eamMapper.queryHistoryRecord(data); + // 拼接机修人员 + for(EamWorkOrderInData ewoData : list){ + List actualOperatorList = eamMapper.getActualOperatorList(ewoData.getSite(), ewoData.getOrderNo(), ewoData.getFunctionType()); + String operator = ""; + for (int i = 0; i < actualOperatorList.size(); i++) { + if (operator.equals("")){ + operator = actualOperatorList.get(i); + }else { + operator = operator + ";" + actualOperatorList.get(i); + } + } + ewoData.setActualOperatorName(operator); + } + return list; + } + + /** + * @description: 获取可用的MES账号 + * @author: fengyuan_yang + * @date: 2023/6/21 12:11 + * @param: [data] + * @return: java.util.List + **/ + @Override + public List getMesList(SysUserEntity data) { + List list = eamMapper.getMesList(data); + return list; + } + } diff --git a/src/main/resources/mapper/pms/EamMapper.xml b/src/main/resources/mapper/pms/EamMapper.xml index 681be6cc..8be43f43 100644 --- a/src/main/resources/mapper/pms/EamMapper.xml +++ b/src/main/resources/mapper/pms/EamMapper.xml @@ -10,7 +10,6 @@ ea.AdminID, ea.AdminName, ea.Phone, - ea.Department, ea.Email, ea.Tel, ea.LevelID, @@ -1466,8 +1465,8 @@ b.MinValue,b.ItemRemark,b.ItemType - + SELECT AdminID FROM eam_admin WHERE site = #{site} AND MesUser = #{username} @@ -1498,4 +1497,75 @@ b.MinValue,b.ItemRemark,b.ItemType WHERE Site = #{site} AND OrderNo = #{orderNo} + + + + + + + + + + INSERT INTO eam_admin_dept + (Site, admin_id, dept_id) + VALUES (#{site}, #{adminID}, #{deptId}) + + + + + + + + DELETE FROM eam_admin_dept + WHERE site = #{site} + AND admin_id = #{adminID} + + + +