From 1d6d68d6643f845f8894294d7ee2269670222e6e Mon Sep 17 00:00:00 2001 From: “linengliang” <vanSuperEnergy@163.com> Date: 星期三, 23 八月 2023 18:03:42 +0800 Subject: [PATCH] lnl,设备台账导入+页面调整 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java | 161 ++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 144 insertions(+), 17 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 93ed2a8..deb81e9 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; @@ -88,6 +96,9 @@ @Autowired private ICalibrationOrderReportService calibrationOrderReportService; + + @Autowired + private IEquipmentCategoryService equipmentCategoryService; /** * 鍒嗛〉鍒楄〃鏌ヨ * @@ -179,7 +190,7 @@ IPage<Equipment> pageList = equipmentService.page(page, queryWrapper); return Result.OK(pageList); } - + /** * 娣诲姞 * @@ -222,7 +233,7 @@ } return Result.OK("娣诲姞鎴愬姛锛�"); } - + /** * 缂栬緫 * @@ -281,7 +292,7 @@ } return Result.OK("缂栬緫鎴愬姛!"); } - + /** * 閫氳繃id鍒犻櫎 * @@ -298,7 +309,7 @@ equipmentService.updateById(equipment); return Result.OK("鍒犻櫎鎴愬姛!"); } - + /** * 鎵归噺鍒犻櫎 * @@ -319,7 +330,7 @@ // this.equipmentService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); } - + /** * 閫氳繃id鏌ヨ * @@ -349,18 +360,18 @@ return super.exportXls(request, equipment, Equipment.class, "mom_eam_equipment"); } - /** - * 閫氳繃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); +// } /** @@ -391,6 +402,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"); @@ -503,6 +515,121 @@ 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()) + || StringUtils.isBlank(equipmentImportVo.getName()) + || StringUtils.isBlank(equipmentImportVo.getUseId()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentUda1()) + || StringUtils.isBlank(equipmentImportVo.getManageId()) + || StringUtils.isBlank(equipmentImportVo.getTeamId()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentImportanceId()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentCategoryName()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentStatus()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentUda3()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentUda5()) + || StringUtils.isBlank(equipmentImportVo.getEquipmentUda2()) + || StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate()) + || StringUtils.isBlank(equipmentImportVo.getProjectApprovalNo()) + || StringUtils.isBlank(equipmentImportVo.getFundSource()) + || StringUtils.isBlank(equipmentImportVo.getAcceptanceCheckDate()) + || StringUtils.isBlank(equipmentImportVo.getLeaveFactoryDate()) + || StringUtils.isBlank(equipmentImportVo.getFactoryNo()) + || StringUtils.isBlank(equipmentImportVo.getConstructorId()) + || StringUtils.isBlank(equipmentImportVo.getSourceCountry()) + || StringUtils.isBlank(equipmentImportVo.getModel()) + || StringUtils.isBlank(equipmentImportVo.getSpecification()) + || StringUtils.isBlank(equipmentImportVo.getGpo()) + ){ + exceptionInfo = exceptionInfo+"绗�"+(i+2)+"琛屽鍏ュけ璐�,鍘熷洜:鏁版嵁鏈夋湭濉」,璇峰~鍐欏繀濉」鍚庡啀瀵煎叆;"; + exceptionNum++; + }else if(ObjectUtils.isNull(equipmentCategory)) + { + 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()) + .setEquipmentImportanceId(equipmentImportVo.getEquipmentImportanceId()) + .setEquipmentCategoryId(equipmentCategory.getId()) + .setKeyEquipmentIdentification(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()) + .setEquipmentUda2(equipmentImportVo.getEquipmentUda2()) + .setLastVerificationDate(equipmentImportVo.getLeaveFactoryDate()) + .setProjectApprovalNo(equipmentImportVo.getProjectApprovalNo()) + .setFundSource(equipmentImportVo.getFundSource()) + .setAcceptanceCheckDate(equipmentImportVo.getAcceptanceCheckDate()) + .setFactoryNo(equipmentImportVo.getFactoryNo()) + .setConstructorId(equipmentImportVo.getConstructorId()) + .setSourceCountry(equipmentImportVo.getSourceCountry()) + .setModel(equipmentImportVo.getModel()) + .setSpecification(equipmentImportVo.getSpecification()) + .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