From efc5dece153d8e51f9e18e136a35558c4ae8a894 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 09 五月 2024 14:47:33 +0800
Subject: [PATCH] update
---
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java | 546 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 530 insertions(+), 16 deletions(-)
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java
index 6e29d15..19f7773 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java
@@ -9,22 +9,37 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.apache.poi.xwpf.usermodel.*;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.api.dto.message.MessageDTO;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.api.ISysBaseAPI;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.eam.entity.*;
+import org.jeecg.modules.eam.model.MaintenanceCycleVo;
import org.jeecg.modules.eam.service.*;
+import org.jeecg.modules.system.entity.*;
+import org.jeecg.modules.system.service.*;
+import org.jeecgframework.poi.excel.entity.ImportParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
+import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.InputStream;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Date;
@@ -63,6 +78,19 @@
@Lazy
private IMaintenanceStandardWorkInstructionService maintenanceStandardWorkInstructionService;
+ @Autowired
+ private IMaintenanceProjectService maintenanceProjectService;
+
+ @Autowired
+ @Lazy
+ private IdentityService sysIdentityService;
+ @Autowired
+ @Lazy
+ private IMaintenanceProjectCategoryService maintenanceProjectCategoryService;
+ @Lazy
+ @Autowired
+ private IMaintenanceCycleService maintenanceCycleService;
+
// @Autowired
@@ -72,6 +100,16 @@
// private IUploadService uploadService;
@Autowired
private ISysBaseAPI sysBaseApi;
+ @Autowired
+ private ISysUserService sysUserService;
+ @Resource
+ private ISysRoleService sysRoleService;
+ @Resource
+ private ISysDictService sysDictService;
+ @Resource
+ private ISysDictItemService sysDictItemService;
+ @Resource
+ private ISysUserRoleService sysUserRoleService;
/**
* 鍒嗛〉鍒楄〃鏌ヨ
@@ -113,12 +151,22 @@
/**
- * 鏃ュ父淇濆吇宸ュ崟鍒涘缓 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯
+ * 浜屼繚 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯
* qsw 2023-4-26
*/
@GetMapping("getMaintenanceStandard2List")
public Result<?> getMaintenanceStandard2List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) {
IPage<Map<String, Object>> maintenanceStandardList = maintenanceStandardService.getMaintenanceStandard2List(pageNo, pageSize, params);
+ return Result.ok(maintenanceStandardList);
+ }
+
+ /**
+ * 涓変繚 缁勪欢閫氳繃浣跨敤閮ㄩ棬杩囨护鑾峰彇淇濆吇鏍囧噯
+ * qsw 2023-12-12
+ */
+ @GetMapping("getMaintenanceStandard3List")
+ public Result<?> getMaintenanceStandard3List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) {
+ IPage<Map<String, Object>> maintenanceStandardList = maintenanceStandardService.getMaintenanceStandard3List(pageNo, pageSize, params);
return Result.ok(maintenanceStandardList);
}
@@ -135,12 +183,37 @@
@Transactional(rollbackFor = {Exception.class})
public Result<String> add(@RequestBody MaintenanceStandard maintenanceStandard) {
// maintenanceStandard.setType("daily");
+
+ String maintenanceType = maintenanceStandard.getMaintenanceType();
+ String equipmentId = maintenanceStandard.getEquipmentId();
+ List<MaintenanceStandard> maintenanceStandards = maintenanceStandardService.lambdaQuery()
+ .eq(MaintenanceStandard::getEquipmentId, equipmentId)
+ .eq(MaintenanceStandard::getMaintenanceType, maintenanceType)
+ .eq(MaintenanceStandard::getDelFlag, "0")
+ .eq(MaintenanceStandard::getVersionStatus, "2").list();
+ if(maintenanceStandards.size() > 0){
+ return Result.error("淇濆吇鏍囧噯宸插瓨鍦ㄤ笉鍏佽閲嶅鎻愪氦锛�");
+ }
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ maintenanceStandard.setWritePerson(sysUser.getRealname());
+ maintenanceStandard.setAssignMode("1");
maintenanceStandardService.save(maintenanceStandard);
+
+ Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId());
+ List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType());
List<MaintenanceStandardDetail> maintenanceStandardDetaillist = maintenanceStandard.getMaintenanceStandardDetaillist();
for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetaillist) {
+ if(maintenanceCycle.size() > 0){
+ maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.get(0).getValue());
+ }
maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId());
maintenanceStandardDetail.setPhoto(maintenanceStandardDetail.getPhoto());
maintenanceStandardDetailService.saveOrUpdate(maintenanceStandardDetail);
+ }
+ if("2".equals(maintenanceType)){
+ this.maintenance2StandardAlert(maintenanceStandard.getApprovalStatus(),maintenanceStandard.getNum());
+ }else{
+ this.maintenance3StandardAlert(maintenanceStandard.getApprovalStatus(),maintenanceStandard.getNum());
}
return Result.OK("娣诲姞鎴愬姛锛�");
}
@@ -156,6 +229,7 @@
@RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
@Transactional(rollbackFor = {Exception.class})
public Result<String> edit(@RequestBody MaintenanceStandard maintenanceStandard) {
+ maintenanceStandard.setApprovalStatus("1");
maintenanceStandardService.updateById(maintenanceStandard);
//1.鍒犻櫎鍘熶繚鍏婚」鐩�
List<MaintenanceStandardDetail> maintenanceStandardDetailList = maintenanceStandardDetailService.lambdaQuery().eq(MaintenanceStandardDetail::getMaintenanceStandardId, maintenanceStandard.getId()).eq(MaintenanceStandardDetail::getDelFlag, 0).eq(MaintenanceStandardDetail::getStatus, "1").list();
@@ -164,10 +238,20 @@
maintenanceStandardDetailService.updateById(dailyInspectionStandardDetail);
}
//2.閲嶆柊鎸佷箙淇濆吇椤圭洰
+ Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId());
+ List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType());
List<MaintenanceStandardDetail> maintenanceStandardDetails = maintenanceStandard.getMaintenanceStandardDetaillist();
for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetails) {
+ if(maintenanceCycle.size() > 0){
+ maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.get(0).getValue());
+ }
maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId());
maintenanceStandardDetailService.saveOrUpdate(maintenanceStandardDetail);
+ }
+ if("2".equals(maintenanceStandard.getMaintenanceType())){
+ this.maintenance2StandardAlert(maintenanceStandard.getApprovalStatus(),maintenanceStandard.getNum());
+ }else{
+ this.maintenance3StandardAlert(maintenanceStandard.getApprovalStatus(),maintenanceStandard.getNum());
}
return Result.OK("缂栬緫鎴愬姛!");
}
@@ -246,9 +330,259 @@
* @param response
* @return
*/
- @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
- public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
- return super.importExcel(request, response, MaintenanceStandard.class);
+ @RequestMapping(value = "/importExcelOfTwoMaintenance", method = RequestMethod.POST)
+ public Result<?> importExcelOfTwoMaintenance(HttpServletRequest request, HttpServletResponse response) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+ String exceptionInfo = "";
+ String msgInfo = "";
+ int exceptionNum = 0;
+ for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+ MultipartFile file = entity.getValue();
+ try {
+ InputStream fis = file.getInputStream();
+ XWPFDocument document = new XWPFDocument(fis);
+ XWPFParagraph mainTitleParagraph = document.getParagraphs().get(0);
+ if (mainTitleParagraph != null) {
+ // 鑾峰彇涓绘爣棰樻枃鏈唴瀹�
+ String mainTitle = mainTitleParagraph.getText();
+ if(mainTitle.equals("鐢熶骇璁惧浜岀骇淇濆吇瑙勮寖")){
+ for (XWPFTable table : document.getTables()) {
+ // 閬嶅巻琛ㄦ牸涓殑鎵�鏈夎
+ int rowNumber = 0;
+ String equipmentNum = "";
+ Equipment equipment = null;
+ MaintenanceStandard maintenanceStandard = null;
+ XWPFTableRow row0= table.getRow(0);
+ if(ObjectUtils.isNotNull(row0)){
+ XWPFTableCell cellEquipmentNum = row0.getCell(3);
+ if(ObjectUtils.isNotNull(cellEquipmentNum)){
+ equipmentNum =cellEquipmentNum.getText();
+ equipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentNum).eq("del_flag",0),false);
+ if(ObjectUtils.isNotNull(equipment)){
+ maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("maintenance_type","2").eq("version_status","2").eq("del_flag",0).eq("equipment_id",equipment.getId()),false);
+ if(ObjectUtils.isNull(maintenanceStandard)){
+ maintenanceStandard = new MaintenanceStandard();
+ maintenanceStandard.setNum(sysIdentityService.getNumByTypeAndLength("DailyMaintenanceStandard",4));
+ maintenanceStandard.setEquipmentId(equipment.getId());
+ maintenanceStandard.setAssignMode("1");
+ maintenanceStandard.setVersion("1.0");
+ maintenanceStandard.setType("daily");
+ maintenanceStandard.setMaintenanceType("2");
+ maintenanceStandard.setVersionStatus("2");
+ maintenanceStandard.setDelFlag(0);
+ maintenanceStandard.setApprovalStatus("5");
+ maintenanceStandardService.save(maintenanceStandard);
+ }
+ else {
+ msgInfo += equipment.getNum()+ ",";
+ continue;
+ }
+ }
+ else {
+
+ continue;
+ }
+ }
+ else {
+ continue;
+ }
+ }
+ else {
+ continue;
+ }
+ String role0 = "";
+ for (XWPFTableRow row : table.getRows()) {
+ XWPFTableCell cell0 = row.getCell(0);
+ XWPFTableCell cell2 = row.getCell(2);
+ if(rowNumber>1){
+ String role = cell0.getText();
+ if(StringUtils.isNotBlank(role)){
+ role0=role;
+ }
+ }
+ if(rowNumber>2){
+ String projectName = cell2.getText();
+ MaintenanceStandardDetail maintenanceStandardDetail = new MaintenanceStandardDetail();
+ MaintenanceProjectCategory maintenanceProjectCategory = maintenanceProjectCategoryService.getOne(new QueryWrapper<MaintenanceProjectCategory>().eq("name","浜岀骇淇濆吇").eq("del_flag",0),false);
+ if(ObjectUtils.isNotNull(maintenanceProjectCategory)){
+ MaintenanceProject maintenanceProject = maintenanceProjectService.getOne(new QueryWrapper<MaintenanceProject>().eq("name",projectName).eq("del_flag",0).eq("maintenance_project_category_id",maintenanceProjectCategory.getId()),false);
+ MaintenanceCycle maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","6鏈�").eq("version_status",2).eq("del_flag",0),false);
+ if (!ObjectUtils.isNotNull(maintenanceProject)) {
+ maintenanceProject = new MaintenanceProject();
+ maintenanceProject.setNum(sysIdentityService.getNumByTypeAndLength("MainOfTwo", 4));
+ maintenanceProject.setName(projectName);
+ maintenanceProject.setMaintenanceProjectCategoryId(maintenanceProjectCategory.getId());
+ maintenanceProject.setDelFlag(0);
+ maintenanceProjectService.save(maintenanceProject);
+ }
+ maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId());
+ if(role0.equals("缁翠慨浜哄憳淇濆吇鍐呭")){
+ maintenanceStandardDetail.setMaintenanceRole("maintenance");
+ } else if(role0.equals("鎿嶄綔浜哄憳淇濆吇鍐呭")){
+ maintenanceStandardDetail.setMaintenanceRole("operator");
+ }
+ if(ObjectUtils.isNotNull(maintenanceCycle)){
+ maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId());
+ }
+ maintenanceStandardDetail.setDelFlag(0);
+ maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId());
+ maintenanceStandardDetailService.save(maintenanceStandardDetail);
+
+ }
+
+ }
+ rowNumber++;
+ }
+ }
+ }
+ if(mainTitle.equals("鐢熶骇璁惧涓夌骇淇濆吇瑙勮寖")){
+
+ for (XWPFTable table : document.getTables()) {
+ // 閬嶅巻琛ㄦ牸涓殑鎵�鏈夎
+ int rowNumber = 0;
+ String equipmentNum = "";
+ Equipment equipment = null;
+ MaintenanceStandard maintenanceStandard = null;
+ MaintenanceCycle maintenanceCycle = null;
+ XWPFTableRow row0= table.getRow(0);
+ if(ObjectUtils.isNotNull(row0)){
+ XWPFTableCell cellEquipmentNum = row0.getCell(3);
+ if(ObjectUtils.isNotNull(cellEquipmentNum)){
+ equipmentNum =cellEquipmentNum.getText();
+ equipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentNum).eq("del_flag",0),false);
+ if(ObjectUtils.isNotNull(equipment)){
+ maintenanceStandard = maintenanceStandardService.getOne(new QueryWrapper<MaintenanceStandard>().eq("maintenance_type","3").eq("version_status",2).eq("del_flag",0).eq("equipment_id",equipment.getId()),false);
+ String abc = equipment.getEquipmentImportanceId();
+ if(StringUtils.isNotBlank(abc)){
+ if(abc.equals("A")){
+ maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","3骞�").eq("version_status",2).eq("del_flag",0),false);
+ }else {
+ maintenanceCycle = maintenanceCycleService.getOne(new QueryWrapper<MaintenanceCycle>().eq("name","4骞�").eq("version_status",2).eq("del_flag",0),false);
+ }
+ }
+ else{
+ return Result.error("瀵煎叆澶辫触锛岃璁惧娌℃湁缁存姢ABC鏍囪瘑");
+ }
+ if(ObjectUtils.isNull(maintenanceStandard)){
+ maintenanceStandard = new MaintenanceStandard();
+ maintenanceStandard.setNum(sysIdentityService.getNumByTypeAndLength("DailyMaintenanceStandard",4));
+ maintenanceStandard.setEquipmentId(equipment.getId());
+ maintenanceStandard.setAssignMode("1");
+ maintenanceStandard.setVersion("1.0");
+ maintenanceStandard.setVersionStatus("2");
+ maintenanceStandard.setType("daily");
+ maintenanceStandard.setMaintenanceType("3");
+ maintenanceStandard.setApprovalStatus("5");
+ maintenanceStandardService.save(maintenanceStandard);
+ }
+ else {
+ msgInfo += equipment.getNum()+ ",";
+ continue;
+ }
+ }
+ else {
+ continue;
+ }
+ }
+ else {
+ continue;
+ }
+ }
+ else {
+ continue;
+ }
+ String location0 = "";
+ for (XWPFTableRow row : table.getRows()) {
+ XWPFTableCell cell0 = row.getCell(0);
+ XWPFTableCell cell1 = row.getCell(1);
+ XWPFTableCell cell2 = row.getCell(2);
+ if(rowNumber>2){
+ String location = cell0.getText();
+ if(StringUtils.isNotBlank(location)){
+ location0=location;
+ }
+ String projectName = cell1.getText();
+ String projectStandard = cell2.getText();
+ MaintenanceStandardDetail maintenanceStandardDetail = new MaintenanceStandardDetail();
+ MaintenanceProjectCategory maintenanceProjectCategory = maintenanceProjectCategoryService.getOne(new QueryWrapper<MaintenanceProjectCategory>().eq("name","涓夌骇淇濆吇").eq("del_flag",0),false);
+ if(ObjectUtils.isNotNull(maintenanceProjectCategory)){
+ MaintenanceProject maintenanceProject = maintenanceProjectService.getOne(new QueryWrapper<MaintenanceProject>().eq("name",projectName).eq("standard",projectStandard).eq("del_flag",0).eq("maintenance_project_category_id",maintenanceProjectCategory.getId()),false);
+ if (!ObjectUtils.isNotNull(maintenanceProject)) {
+ maintenanceProject = new MaintenanceProject();
+ maintenanceProject.setNum(sysIdentityService.getNumByTypeAndLength("MainOfTwo", 4));
+ maintenanceProject.setName(projectName);
+ maintenanceProject.setStandard(projectStandard);
+ maintenanceProject.setLocation(location0);
+ maintenanceProject.setMaintenanceProjectCategoryId(maintenanceProjectCategory.getId());
+ maintenanceProject.setDelFlag(0);
+ maintenanceProjectService.save(maintenanceProject);
+ }
+ maintenanceStandardDetail.setMaintenanceProjectId(maintenanceProject.getId());
+ maintenanceStandardDetail.setLocation(location0);
+ maintenanceStandardDetail.setMaintenanceCycleId(maintenanceCycle.getId());
+ maintenanceStandardDetail.setMaintenanceStandardId(maintenanceStandard.getId());
+ maintenanceStandardDetailService.save(maintenanceStandardDetail);
+ }
+
+ }
+ rowNumber++;
+ }
+ }
+ }
+ if(msgInfo == ""){
+ return Result.OK("瀵煎叆鎴愬姛");
+ }else{
+ return Result.OK("缁熶竴缂栫爜鏄細"+msgInfo+"鐨勪繚鍏绘爣鍑嗗凡瀛樺湪锛岃鍏堟墜鍔ㄥけ鏁堝啀閲嶆柊瀵煎叆!");
+ }
+ } else {
+ System.out.println("鏃犳硶瑙f瀽璇ユ枃浠�");
+ }
+
+ fis.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+ return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
+ }
+ /**
+ * 閫氳繃excel瀵煎叆鏁版嵁
+ *
+ * @param request
+ * @param response
+ * @return
+ */
+ @RequestMapping(value = "/importExcelOfThreeMaintenance", method = RequestMethod.POST)
+ public Result<?> importExcelOfThreeMaintenance(HttpServletRequest request, HttpServletResponse response) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+ String exceptionInfo = "";
+ int exceptionNum = 0;
+ for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+ MultipartFile file = entity.getValue();
+ try {
+ InputStream fis = file.getInputStream();
+ XWPFDocument document = new XWPFDocument(fis);
+ XWPFParagraph mainTitleParagraph = document.getParagraphs().get(0);
+ if (mainTitleParagraph != null) {
+ // 鑾峰彇涓绘爣棰樻枃鏈唴瀹�
+ String mainTitle = mainTitleParagraph.getText();
+
+ } else {
+ System.out.println("鏃犳硶瑙f瀽璇ユ枃浠�");
+ }
+
+ fis.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }
+ return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
}
/**
@@ -266,21 +600,37 @@
//浣滀笟鎸囧涔�
List<MaintenanceStandardWorkInstruction> maintenanceStandardWorkInstructionList = maintenanceStandardWorkInstructionService.lambdaQuery().eq(MaintenanceStandardWorkInstruction::getMaintenanceStandardId,maintenanceStandard.getId())
.eq(MaintenanceStandardWorkInstruction::getDelFlag, CommonConstant.DEL_FLAG_0).list();
+
maintenanceStandard.setId("");
maintenanceStandard.setCreateTime(new Date());
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ maintenanceStandard.setWritePerson(sysUser.getRealname());
+ maintenanceStandard.setApprovalStatus("1");
+ maintenanceStandard.setTakeEffectTime(null);
+ maintenanceStandard.setLoseEfficacyTime(null);
+ maintenanceStandard.setApprovalFeedback(null);
+ maintenanceStandard.setAuditFeedback(null);
+ maintenanceStandard.setAuditPerson(null);
+ maintenanceStandard.setApprovalPerson(null);
maintenanceStandardService.save(maintenanceStandard);
//鏄庣粏淇℃伅
List<MaintenanceStandardDetail> maintenanceStandardDetailList = maintenanceStandard.getMaintenanceStandardDetaillist();
MaintenanceStandardDetail isd = null;
+ Equipment equipment = equipmentService.getById(maintenanceStandard.getEquipmentId());
+ List<MaintenanceCycleVo> maintenanceCycle = maintenanceStandardService.getPeriodicMaintenanceCycle(equipment.getEquipmentImportanceId(), maintenanceStandard.getMaintenanceType());
for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetailList) {
isd = new MaintenanceStandardDetail();
isd.setMaintenanceStandardId(maintenanceStandard.getId());
isd.setLocation(maintenanceStandardDetail.getLocation());
isd.setPhoto(maintenanceStandardDetail.getPhoto());
isd.setMaintenanceProjectId(maintenanceStandardDetail.getMaintenanceProjectId());
- isd.setMaintenanceCycleId(maintenanceStandardDetail.getMaintenanceCycleId());
+// isd.setMaintenanceCycleId(maintenanceStandardDetail.getMaintenanceCycleId());
isd.setMaintenanceMode(maintenanceStandardDetail.getMaintenanceMode());
isd.setMaintenanceRequire(maintenanceStandardDetail.getMaintenanceRequire());
+ isd.setMaintenanceRole(maintenanceStandardDetail.getMaintenanceRole());
+ if(maintenanceCycle.size() > 0){
+ isd.setMaintenanceCycleId(maintenanceCycle.get(0).getValue());
+ }
maintenanceStandardDetailService.save(isd);
}
if(CollectionUtils.isNotEmpty(maintenanceStandardPlanningMaterialList)){
@@ -339,21 +689,185 @@
@Transactional(rollbackFor = { Exception.class })
public Result<String> versionTakeEffect(@RequestBody MaintenanceStandard maintenanceStandard) {
- List<MaintenanceStandard> maintenanceStandardList = maintenanceStandardService.lambdaQuery()
- .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
- .eq(MaintenanceStandard::getVersionStatus, "2").list();
- for (MaintenanceStandard standard : maintenanceStandardList) {
- standard.setVersionStatus("3");
- standard.setLoseEfficacyTime(new Date());
- maintenanceStandardService.updateById(standard);
- }
- maintenanceStandard.setTakeEffectTime(new Date());
+// List<MaintenanceStandard> maintenanceStandardList = maintenanceStandardService.lambdaQuery()
+// .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
+// .eq(MaintenanceStandard::getVersionStatus, "2").list();
+// for (MaintenanceStandard standard : maintenanceStandardList) {
+// standard.setVersionStatus("3");
+// standard.setLoseEfficacyTime(new Date());
+// maintenanceStandardService.updateById(standard);
+// }
+// maintenanceStandard.setTakeEffectTime(new Date());
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ maintenanceStandard.setLoseEfficacyPerson(sysUser.getRealname());
+ maintenanceStandard.setLoseEfficacyTime(new Date());
boolean b = maintenanceStandardService.updateById(maintenanceStandard);
if (b){
- return Result.OK("鐢熸晥鎴愬姛!");
+ return Result.OK("澶辨晥鎴愬姛!");
}else{
- return Result.error("鐢熸晥澶辫触!");
+ return Result.error("澶辨晥澶辫触!");
}
}
+ /**
+ * 绛惧娴佺▼
+ * qsw 2023-11-16
+ */
+ @RequestMapping(value = "/auditApproval", method = {RequestMethod.PUT,RequestMethod.POST})
+ @Transactional(rollbackFor = { Exception.class })
+ public Result<String> auditApproval(@RequestBody MaintenanceStandard maintenanceStandard) {
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ String approvalStatus = maintenanceStandard.getApprovalStatus();
+ if("5".equals(approvalStatus)){//瀹℃牳閫氳繃鍚庯紝鐗堟湰鐢熸晥
+ List<MaintenanceStandard> dailyMaintenanceStandards = maintenanceStandardService.lambdaQuery()
+ .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
+ .eq(MaintenanceStandard::getVersionStatus, "2").list();
+ for (MaintenanceStandard dailyMaintenanceStandard : dailyMaintenanceStandards) {
+ dailyMaintenanceStandard.setVersionStatus("3");
+ dailyMaintenanceStandard.setLoseEfficacyTime(new Date());
+ dailyMaintenanceStandard.setLoseEfficacyPerson(sysUser.getRealname());
+ maintenanceStandardService.updateById(dailyMaintenanceStandard);
+ }
+ maintenanceStandard.setApprovalPerson(sysUser.getRealname());
+ maintenanceStandard.setVersionStatus("2");
+ maintenanceStandard.setTakeEffectTime(new Date());
+ }else if("3".equals(approvalStatus)){
+ maintenanceStandard.setAuditPerson(sysUser.getRealname());
+ }
+ boolean b = maintenanceStandardService.updateById(maintenanceStandard);
+ if (b){
+ //绛惧娴佺▼娑堟伅閫氱煡
+ if(!"5".equals(approvalStatus)){//宸茬紪鍒�
+ if("2".equals(maintenanceStandard.getMaintenanceType())){
+ this.maintenance2StandardAlert(approvalStatus,maintenanceStandard.getNum());
+ }else{
+ this.maintenance3StandardAlert(approvalStatus,maintenanceStandard.getNum());
+ }
+ }
+ return Result.OK("瀹℃牳鎴愬姛!");
+ }else{
+ return Result.error("瀹℃牳澶辫触!");
+ }
+ }
+
+ /**
+ *浜岀骇淇濆吇鏍囧噯绛惧娴佺▼娑堟伅鎻愰啋
+ * qsw 2024-3-11
+ */
+ void maintenance2StandardAlert(String approvalStatus,String standardNum){
+
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ SysDict sysDict = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","info_type"),false);
+ SysDictItem sysDictItem = null;
+ String roleDictItem = "";
+ if("1".equals(approvalStatus)){//宸茬紪鍒�
+ roleDictItem = "浜岀骇淇濆吇鏍囧噯瀹℃牳";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","浜岀骇淇濆吇鏍囧噯瀹℃牳")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("2".equals(approvalStatus)){//椹冲洖缂栧埗
+ roleDictItem = "浜岀骇淇濆吇鏍囧噯缂栧埗";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","浜岀骇淇濆吇鏍囧噯缂栧埗")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("3".equals(approvalStatus)){//宸插鏍�
+ roleDictItem = "浜岀骇淇濆吇鏍囧噯瀹℃壒";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","浜岀骇淇濆吇鏍囧噯瀹℃壒")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("4".equals(approvalStatus)){//椹冲洖瀹℃牳
+ roleDictItem = "浜岀骇淇濆吇鏍囧噯瀹℃牳";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","浜岀骇淇濆吇鏍囧噯瀹℃牳")
+ .eq("dict_id",sysDict.getId()),false);
+ }
+ String roleCode = sysDictItem.getItemValue();
+ SysRole sysRole = sysRoleService.getOne(new QueryWrapper<SysRole>().eq("role_code",roleCode),false);
+ List<SysUserRole> sysUserRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("role_id",sysRole.getId()));
+ for(SysUserRole sysUserRole:sysUserRoles){
+ SysUser user = sysUserService.getById(sysUserRole.getUserId());
+ String msg = "";
+ if("1".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑浜岀骇淇濆吇鏍囧噯缂栧埗鎴愬姛锛岃鍒颁簩绾т繚鍏绘爣鍑嗛〉闈㈠鏍革紒";
+ }else if("2".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑浜岀骇淇濆吇鏍囧噯宸查┏鍥烇紝璇峰埌浜岀骇淇濆吇鏍囧噯椤甸潰鏌ョ湅锛�";
+ }else if("3".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑浜岀骇淇濆吇鏍囧噯瀹℃牳閫氳繃锛岃鍒颁簩绾т繚鍏绘爣鍑嗛〉闈㈠鎵癸紒";
+ }else if("4".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑浜岀骇淇濆吇鏍囧噯宸查┏鍥烇紝璇峰埌浜岀骇淇濆吇鏍囧噯椤甸潰鏌ョ湅锛�";
+ }
+ MessageDTO messageDTO = new MessageDTO();
+ messageDTO.setTitle("浜岀骇淇濆吇鏍囧噯绛惧娑堟伅鎻愰啋锛�");
+ messageDTO.setContent(msg);
+ messageDTO.setCategory(roleDictItem);
+ messageDTO.setFromUser("浜岀骇淇濆吇鏍囧噯绛惧娑堟伅鎻愰啋鎻愰啋灏忓姪鎵�");
+ messageDTO.setToUser(user.getUsername());
+ sysBaseApi.sendSysAnnouncement(messageDTO);
+ }
+ }
+
+ /**
+ *涓夌骇淇濆吇鏍囧噯绛惧娴佺▼娑堟伅鎻愰啋
+ * qsw 2024-3-11
+ */
+ void maintenance3StandardAlert(String approvalStatus,String standardNum){
+
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ SysDict sysDict = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","info_type"),false);
+ SysDictItem sysDictItem = null;
+ String roleDictItem = "";
+ if("1".equals(approvalStatus)){//宸茬紪鍒�
+ roleDictItem = "涓夌骇淇濆吇鏍囧噯瀹℃牳";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","涓夌骇淇濆吇鏍囧噯瀹℃牳")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("2".equals(approvalStatus)){//椹冲洖缂栧埗
+ roleDictItem = "涓夌骇淇濆吇鏍囧噯缂栧埗";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","涓夌骇淇濆吇鏍囧噯缂栧埗")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("3".equals(approvalStatus)){//宸插鏍�
+ roleDictItem = "涓夌骇淇濆吇鏍囧噯瀹℃壒";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","涓夌骇淇濆吇鏍囧噯瀹℃壒")
+ .eq("dict_id",sysDict.getId()),false);
+ }else if("4".equals(approvalStatus)){//椹冲洖瀹℃牳
+ roleDictItem = "涓夌骇淇濆吇鏍囧噯瀹℃牳";
+ sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>()
+ .eq("item_text","涓夌骇淇濆吇鏍囧噯瀹℃牳")
+ .eq("dict_id",sysDict.getId()),false);
+ }
+ String roleCode = sysDictItem.getItemValue();
+ SysRole sysRole = sysRoleService.getOne(new QueryWrapper<SysRole>().eq("role_code",roleCode),false);
+ List<SysUserRole> sysUserRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("role_id",sysRole.getId()));
+ for(SysUserRole sysUserRole:sysUserRoles){
+ SysUser user = sysUserService.getById(sysUserRole.getUserId());
+ String msg = "";
+ if("1".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑涓夌骇淇濆吇鏍囧噯缂栧埗鎴愬姛锛岃鍒颁笁绾т繚鍏绘爣鍑嗛〉闈㈠鏍革紒";
+ }else if("2".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑涓夌骇淇濆吇鏍囧噯宸查┏鍥烇紝璇峰埌涓夌骇淇濆吇鏍囧噯椤甸潰鏌ョ湅锛�";
+ }else if("3".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑涓夌骇淇濆吇鏍囧噯瀹℃牳閫氳繃锛岃鍒颁笁绾т繚鍏绘爣鍑嗛〉闈㈠鎵癸紒";
+ }else if("4".equals(approvalStatus)){
+ msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗐��"+standardNum+"銆戠殑涓夌骇淇濆吇鏍囧噯宸查┏鍥烇紝璇峰埌涓夌骇淇濆吇鏍囧噯椤甸潰鏌ョ湅锛�";
+ }
+ MessageDTO messageDTO = new MessageDTO();
+ messageDTO.setTitle("涓夌骇淇濆吇鏍囧噯绛惧娑堟伅鎻愰啋锛�");
+ messageDTO.setContent(msg);
+ messageDTO.setCategory(roleDictItem);
+ messageDTO.setFromUser("涓夌骇淇濆吇鏍囧噯绛惧娑堟伅鎻愰啋鎻愰啋灏忓姪鎵�");
+ messageDTO.setToUser(user.getUsername());
+ sysBaseApi.sendSysAnnouncement(messageDTO);
+ }
+ }
+
+
+ // 鑾峰彇鍚堝苟鍗曞厓鏍肩殑鍊�
+ private String getMergedCellValue(XWPFTableCell cell) {
+ // 瀵逛簬鍚堝苟鍗曞厓鏍硷紝鑾峰彇绗竴涓钀界殑鏂囨湰浣滀负鍚堝苟鍗曞厓鏍肩殑鍊�
+ return cell.getParagraphs().get(0).getText();
+ }
+
+
}
--
Gitblit v1.9.3