From 1f95d9a630f4333710d92b6563a8cceed2b199f4 Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期四, 21 九月 2023 14:30:25 +0800 Subject: [PATCH] 现场问题修改 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java | 274 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 254 insertions(+), 20 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java index 7ce31aa..6eb37cb 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java @@ -7,12 +7,16 @@ import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.dto.message.MessageDTO; import org.jeecg.common.api.vo.Result; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.base.entity.SysUpload; 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.DepartVo; import org.jeecg.modules.eam.service.*; @@ -24,10 +28,14 @@ import org.jeecg.common.system.base.controller.JeecgController; +import org.jeecgframework.poi.excel.ExcelImportUtil; +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 io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -65,8 +73,7 @@ @Autowired private IProcessParametersTemplateService processParametersTemplateService; -// @Autowired -// private IUploadRelaService uploadRelaService; + @Autowired private ISysBaseAPI sysBaseApi; @@ -88,6 +95,9 @@ @Autowired private ICalibrationOrderReportService calibrationOrderReportService; + + @Autowired + private IEquipmentCategoryService equipmentCategoryService; /** * 鍒嗛〉鍒楄〃鏌ヨ * @@ -118,9 +128,13 @@ if(StringUtils.isNotBlank(equipment.getTechnologyStatus())){ queryWrapper.eq("technology_status",equipment.getTechnologyStatus()); } + if(StringUtils.isNotBlank(equipment.getEquipmentCategoryId())){ + queryWrapper.eq("equipment_category_id",equipment.getEquipmentCategoryId()); + } queryWrapper.eq("status","1"); queryWrapper.eq("del_flag",0); + queryWrapper.orderByDesc("create_time"); Page<Equipment> page = new Page<Equipment>(pageNo, pageSize); IPage<Equipment> pageList = equipmentService.page(page, queryWrapper); @@ -171,11 +185,19 @@ @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper<Equipment> queryWrapper = QueryGenerator.initQueryWrapper(equipment, req.getParameterMap()); +// queryWrapper.eq("status","1"); +// queryWrapper.eq("del_flag",0); Page<Equipment> page = new Page<Equipment>(pageNo, pageSize); IPage<Equipment> pageList = equipmentService.page(page, queryWrapper); return Result.OK(pageList); } - + + @GetMapping(value = "/pageEquipment") + public Result<IPage<Equipment>> pageEquipment(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) { + IPage<Equipment> pageList = equipmentService.pageEquipment(pageNo, pageSize, params); + return Result.OK(pageList); + } + /** * 娣诲姞 * @@ -218,7 +240,7 @@ } return Result.OK("娣诲姞鎴愬姛锛�"); } - + /** * 缂栬緫 * @@ -277,7 +299,7 @@ } return Result.OK("缂栬緫鎴愬姛!"); } - + /** * 閫氳繃id鍒犻櫎 * @@ -294,7 +316,7 @@ equipmentService.updateById(equipment); return Result.OK("鍒犻櫎鎴愬姛!"); } - + /** * 鎵归噺鍒犻櫎 * @@ -315,7 +337,7 @@ // this.equipmentService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); } - + /** * 閫氳繃id鏌ヨ * @@ -342,21 +364,21 @@ //@RequiresPermissions("org.jeecg.modules.demo:mom_eam_equipment:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, Equipment equipment) { - return super.exportXls(request, equipment, Equipment.class, "mom_eam_equipment"); + return super.exportXls(request, equipment, Equipment.class, "璁惧鍙拌处瀵煎嚭"); } - /** - * 閫氳繃excel瀵煎叆鏁版嵁 - * - * @param request - * @param response - * @return - */ - //@RequiresPermissions("mom_eam_equipment:importExcel") - @RequestMapping(value = "/importExcel", method = RequestMethod.POST) - public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, Equipment.class); - } +// /** +// * 閫氳繃excel瀵煎叆鏁版嵁 +// * +// * @param request +// * @param response +// * @return +// */ +// //@RequiresPermissions("mom_eam_equipment:importExcel") +// @RequestMapping(value = "/importExcel", method = RequestMethod.POST) +// public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { +// return super.importExcel(request, response, Equipment.class); +// } /** @@ -387,6 +409,7 @@ @GetMapping(value = "/getResumeInspectionRecordList") public Result<?> getResumeInspectionRecordList(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) { IPage<Map<String, Object>> resumeInspectionRecordList = equipmentService.getResumeInspectionRecordList(pageNo, pageSize, params); + LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal(); for (Map<String, Object> record : resumeInspectionRecordList.getRecords()) { String id = (String)record.get("id"); String inspectionType = (String)record.get("inspectionType"); @@ -499,6 +522,217 @@ queryWrapper.in("equipment_status",statusList); IPage<Equipment> pageList = equipmentService.page(page, queryWrapper); return Result.OK(pageList); + }/** + * 瀵煎叆 + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + @Transactional(rollbackFor = Exception.class) + public Result<?> importExcel(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(); + ImportParams params = new ImportParams(); + params.setNeedSave(true); + try { + List<EquipmentImportVo> list = ExcelImportUtil.importExcel(file.getInputStream(), EquipmentImportVo.class, params); + for(int i = 0;i<list.size();i++){ + EquipmentImportVo equipmentImportVo = list.get(i); + EquipmentCategory equipmentCategory = equipmentCategoryService.getOne(new QueryWrapper<EquipmentCategory>().eq("name",equipmentImportVo.getEquipmentCategoryName()),false); + if(StringUtils.isBlank(equipmentImportVo.getNum())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁熶竴缂栫爜缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getName())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍚嶇О缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getUseId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:浣跨敤閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } +// else if(StringUtils.isBlank(equipmentImportVo.getEquipmentUda1())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:宸ュ尯缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } + else if(StringUtils.isBlank(equipmentImportVo.getManageId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁存姢閮ㄩ棬缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getTeamId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:缁翠慨鐝粍缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getEquipmentImportanceId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:ABC鏍囪瘑缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getEquipmentCategoryName())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍒嗙被缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getEquipmentStatus())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鐘舵�佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getTechnologyStatus())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鎶�鏈己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getFactoryModelId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:杞﹂棿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getWorkCenterId())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:浜х嚎缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(ObjectUtils.isNotNull(equipmentImportVo.getWarrantyStart())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璐ㄤ繚寮�濮嬫棩鏈熺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getPropertyStatus())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勪骇鐘舵�佺己澶�,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + //闈炲繀濉」 +// else if(StringUtils.isBlank(equipmentImportVo.getEquipmentUda5())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍔熻兘浣嶇疆缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getLocation())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:瀹夎浣嶇疆缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getProjectApprovalNo())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:绔嬮」鍗″彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getFundSource())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勯噾鏉ユ簮缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getAcceptanceCheckDate())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:楠屾敹鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶鏃ユ湡缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if(StringUtils.isBlank(equipmentImportVo.getFactoryNo())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鍑哄巶缂栧彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } +// else if( StringUtils.isBlank(equipmentImportVo.getConstructorId())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璧勪骇鍒堕�犲晢缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } + else if(StringUtils.isBlank(equipmentImportVo.getModel())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍨嬪彿缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } + else if(StringUtils.isBlank(equipmentImportVo.getSpecification())){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧瑙勬牸缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + } +// else if(StringUtils.isBlank(equipmentImportVo.getGpo())){ +// exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璁惧鍔熺巼缂哄け,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; +// exceptionNum++; +// } + else if(ObjectUtils.isNull(equipmentCategory)) + { + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璇ヨ澶囨墍灞炵被鍒笉瀛樺湪锛岃鍏堢淮鎶よ澶囩被鍒�;"; + exceptionNum++; + } + else{ + if(equipmentImportVo.getPropertyStatus().equals("warranty")){ + if( + ObjectUtils.isNull(equipmentImportVo.getWarrantyStart()) + ||ObjectUtils.isNull(equipmentImportVo.getWarrantyEnd()) + ){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:璇ヨ澶囧浜庤川淇濇湡锛岃川淇濅俊鎭己澶憋紝璇峰厛缁存姢璐ㄤ繚寮�濮嬫椂闂存垨缁撴潫鏃堕棿;"; + exceptionNum++; + } + + }else{ + Equipment oriEquipment = equipmentService.getOne(new QueryWrapper<Equipment>().eq("num",equipmentImportVo.getNum()),false); + if(ObjectUtils.isNull(oriEquipment)){ + Equipment equipment = new Equipment(); + equipment.setNum(equipmentImportVo.getNum()) + .setName(equipmentImportVo.getName()) + .setUseId(equipmentImportVo.getUseId()) + .setEquipmentUda1(equipmentImportVo.getEquipmentUda1()) + .setManageId(equipmentImportVo.getManageId()) + .setTeamId(equipmentImportVo.getTeamId()) + .setTechnologyStatus(equipmentImportVo.getTechnologyStatus()) + .setEquipmentImportanceId(equipmentImportVo.getEquipmentImportanceId()) + .setEquipmentCategoryId(equipmentCategory.getId()) + .setSpecificEquipment(equipmentImportVo.getKeyEquipmentIdentification()) + .setSecurityConfiguration(equipmentImportVo.getSecurityConfiguration()) + .setCoolingSystem(equipmentImportVo.getCoolingSystem()) + .setFireExtinguisher(equipmentImportVo.getFireExtinguisher()) + .setFireExtinguisherValidityPeriod(equipmentImportVo.getFireExtinguisherValidityPeriod()) + .setOperatingSystem(equipmentImportVo.getOperatingSystem()) + .setSystem(equipmentImportVo.getSystem()) + .setPort(equipmentImportVo.getPort()) + .setCoordinateNum(equipmentImportVo.getCoordinateNum()) + .setEquipmentStatus(equipmentImportVo.getEquipmentStatus()) + .setEquipmentUda3(equipmentImportVo.getEquipmentUda3()) + .setEquipmentUda4(equipmentImportVo.getEquipmentUda4()) + .setEquipmentUda5(equipmentImportVo.getEquipmentUda5()) + .setLocation(equipmentImportVo.getLocation()) + .setLastVerificationDate(equipmentImportVo.getLeaveFactoryDate()) + .setProjectApprovalNo(equipmentImportVo.getProjectApprovalNo()) + .setFundSource(equipmentImportVo.getFundSource()) + .setAcceptanceCheckDate(equipmentImportVo.getAcceptanceCheckDate()) + .setFactoryNumber(equipmentImportVo.getFactoryNumber()) + .setConstructorId(equipmentImportVo.getConstructorId()) + .setSourceCountry(equipmentImportVo.getSourceCountry()) + .setModel(equipmentImportVo.getModel()) + .setSpecification(equipmentImportVo.getSpecification()) + .setFactoryModelId(equipmentImportVo.getFactoryModelId()) + .setWorkCenterId(equipmentImportVo.getWorkCenterId()) + .setPropertyStatus(equipmentImportVo.getPropertyStatus()) + .setWarrantyStart(equipmentImportVo.getWarrantyStart()) + .setWarrantyEnd(equipmentImportVo.getWarrantyEnd()) + .setGpo(equipmentImportVo.getGpo()); + equipmentService.save(equipment); + }else { + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐ワ紝鍘熷洜锛氱粺涓�缂栫爜宸插瓨鍦紝鏁版嵁閲嶅瀵煎叆;"; + exceptionNum++; + } + } + + } + } + if(exceptionNum!=0){ + String headInfo = "灏忓鎻愰啋鎮�!璁惧鍙拌处锛氬鍏ユ垚鍔�"+(list.size()-exceptionNum)+"鏉�,澶辫触"+exceptionNum+"鏉�"; + MessageDTO messageDTO = new MessageDTO(); + messageDTO.setTitle(headInfo); + messageDTO.setFromUser("鏁版嵁瀵煎叆灏忓姪鎵�-灏忓"); + messageDTO.setCategory("瀵煎叆鎿嶄綔闄勫姞淇℃伅"); + messageDTO.setContent(exceptionInfo); + messageDTO.setToUser(user.getUsername()); + sysBaseApi.sendSysAnnouncement(messageDTO); + return Result.OK(headInfo+",鍙湪-绯荤粺娑堟伅-鏌ョ湅瀵煎叆璇︽儏"); + } + return Result.OK("瀵煎叆鎴愬姛锛屽凡瀵煎叆鍏ㄩ儴鏁版嵁銆�"); + } catch (Exception e) { + log.error(e.getMessage(), e); + return Result.error("鏂囦欢瀵煎叆澶辫触:" + e.getMessage()); + } + } + return Result.error("鏂囦欢瀵煎叆澶辫触锛�"); } + } -- Gitblit v1.9.3