lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamInspectionOrderController.java
@@ -1,5 +1,6 @@ package org.jeecg.modules.eam.controller; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.parser.Feature; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -9,16 +10,23 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.beanutils.BeanMap; import org.apache.commons.beanutils.BeanUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.util.TranslateDictTextUtils; import org.jeecg.modules.eam.constant.BusinessCodeConst; import org.jeecg.modules.eam.constant.InspectionStatus; import org.jeecg.modules.eam.constant.OrderCreationMethodEnum; import org.jeecg.modules.eam.entity.EamInspectionOrder; import org.jeecg.modules.eam.entity.EamInspectionOrderDetail; import org.jeecg.modules.eam.request.EamInspectionBatchApprovalRequest; import org.jeecg.modules.eam.request.EamInspectionOrderQuery; import org.jeecg.modules.eam.request.EamInspectionOrderRequest; import org.jeecg.modules.eam.service.IEamInspectionOrderDetailService; import org.jeecg.modules.eam.service.IEamInspectionOrderService; import org.jeecg.modules.flowable.domain.vo.WorkTaskDataVo; import org.jeecg.modules.system.service.ISysBusinessCodeRuleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -26,7 +34,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.*; import java.lang.reflect.InvocationTargetException; import java.util.Arrays; import java.util.List; /** * @Description: ç¹æ£å·¥å @@ -47,6 +57,8 @@ private ObjectMapper objectMapper; @Autowired private TranslateDictTextUtils translateDictTextUtils; @Autowired private IEamInspectionOrderDetailService eamInspectionOrderDetailService; /** * å页å表æ¥è¯¢ @@ -172,6 +184,67 @@ return Result.OK("æä½æå"); } @ApiOperation(value = "ç¹æ£å·¥å-æ¹éå®¡æ¹æµç¨", notes = "ç¹æ£å·¥å-æ¹éå®¡æ¹æµç¨") @PostMapping("/batchApproval") public Result<?> batchApproval(@RequestBody EamInspectionBatchApprovalRequest request) { if(request == null || CollectionUtil.isEmpty(request.getTastList())) { return Result.error("没æéè¦å®¡æ¹çæ°æ®ï¼"); } int n = 0; StringBuilder errorMsg = new StringBuilder(); List<WorkTaskDataVo> tastList = request.getTastList(); for(WorkTaskDataVo workTaskDataVo : tastList) { EamInspectionOrderRequest orderRequest = new EamInspectionOrderRequest(); EamInspectionOrder order = eamInspectionOrderService.getById(workTaskDataVo.getDataId()); if(order == null) { errorMsg.append("å·¥åIDï¼"); errorMsg.append(workTaskDataVo.getDataId()); errorMsg.append(",ä¸åå¨æå·²è¢«å é¤!\r\n"); continue; } if(!InspectionStatus.WAIT_CONFIRM.name().equals(order.getInspectionStatus())) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",ç¶ææ æ³æ¹é审æ¹!\r\n"); continue; } List<EamInspectionOrderDetail> tableDetailList = eamInspectionOrderDetailService.queryListByOrderId(order.getId()); try { BeanUtils.copyProperties(orderRequest, order); //审æ¹ä¿¡æ¯ orderRequest.setConfirmComment(request.getConfirmComment()); orderRequest.setConfirmDealType(request.getConfirmDealType()); //ä»»å¡ä¿¡æ¯ orderRequest.setDataId(workTaskDataVo.getDataId()); orderRequest.setTaskId(workTaskDataVo.getId()); orderRequest.setUserId(workTaskDataVo.getAssignee()); orderRequest.setInstanceId(workTaskDataVo.getProcInstId()); orderRequest.setValues(workTaskDataVo.getVariables()); orderRequest.setTableDetailList(tableDetailList); EamInspectionOrder result = eamInspectionOrderService.inspectionProcess(orderRequest); if(result == null) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",审æ¹å¤±è´¥!\r\n"); continue; } n++; } catch (Exception e) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",审æ¹å¤±è´¥,é误åå :"); errorMsg.append(e.getMessage() + "\r\n"); } } if(n > 0) { String message = "æå审æ¹éè¿" + n + "æ¡è®°å½ï¼\r\n" + errorMsg; return Result.OK(message); } return Result.error(errorMsg.toString()); } /** * éè¿idå é¤ * lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java
@@ -11,6 +11,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.beanutils.BeanUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; @@ -19,9 +20,13 @@ import org.jeecg.modules.eam.constant.OrderCreationMethodEnum; import org.jeecg.modules.eam.constant.WeekMaintenanceStatusEnum; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrderDetail; import org.jeecg.modules.eam.request.EamWeekMaintenanceBatchApprovalRequest; import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery; import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest; import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderDetailService; import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderService; import org.jeecg.modules.flowable.domain.vo.WorkTaskDataVo; import org.jeecg.modules.system.service.ISysBusinessCodeRuleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -50,6 +55,8 @@ private ObjectMapper objectMapper; @Autowired private TranslateDictTextUtils translateDictTextUtils; @Autowired private IEamWeekMaintenanceOrderDetailService weekMaintenanceOrderDetailService; /** * å页å表æ¥è¯¢ @@ -291,4 +298,75 @@ } return Result.ok("æä½æåï¼"); } @ApiOperation(value = "å¨ä¿å·¥å-æ¹éå®¡æ¹æµç¨", notes = "å¨ä¿å·¥å-æ¹éå®¡æ¹æµç¨") @PostMapping("/batchApproval") public Result<?> batchApproval(@RequestBody EamWeekMaintenanceBatchApprovalRequest request) { if (request == null || CollectionUtil.isEmpty(request.getTastList())) { return Result.error("没æéè¦å®¡æ¹çæ°æ®ï¼"); } int n = 0; StringBuilder errorMsg = new StringBuilder(); List<WorkTaskDataVo> tastList = request.getTastList(); for (WorkTaskDataVo workTaskDataVo : tastList) { EamWeekMaintenanceRequest orderRequest = new EamWeekMaintenanceRequest(); EamWeekMaintenanceOrder order = eamWeekMaintenanceOrderService.getById(workTaskDataVo.getDataId()); if (order == null) { errorMsg.append("å·¥åIDï¼"); errorMsg.append(workTaskDataVo.getDataId()); errorMsg.append(",ä¸åå¨æå·²è¢«å é¤!\r\n"); continue; } if (!(WeekMaintenanceStatusEnum.WAIT_CONFIRM.name().equals(order.getMaintenanceStatus()) || WeekMaintenanceStatusEnum.WAIT_INITIAL_ACCEPTANCE.name().equals(order.getMaintenanceStatus()) || WeekMaintenanceStatusEnum.WAIT_FINAL_ACCEPTANCE.name().equals(order.getMaintenanceStatus()))) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",ç¶ææ æ³æ¹é审æ¹!\r\n"); continue; } List<EamWeekMaintenanceOrderDetail> tableDetailList = weekMaintenanceOrderDetailService.queryListByOrderId(order.getId()); try { BeanUtils.copyProperties(orderRequest, order); //审æ¹ä¿¡æ¯ if (WeekMaintenanceStatusEnum.WAIT_CONFIRM.name().equals(order.getMaintenanceStatus())) { orderRequest.setConfirmComment(request.getConfirmComment()); orderRequest.setConfirmDealType(request.getConfirmDealType()); } else if (WeekMaintenanceStatusEnum.WAIT_INITIAL_ACCEPTANCE.name().equals(order.getMaintenanceStatus())) { orderRequest.setInitialAcceptanceComment(request.getInitialAcceptanceComment()); orderRequest.setInitialAcceptanceFilesResult(request.getInitialAcceptanceFilesResult()); } else if (WeekMaintenanceStatusEnum.WAIT_FINAL_ACCEPTANCE.name().equals(order.getMaintenanceStatus())) { orderRequest.setFinalAcceptanceComment(request.getFinalAcceptanceComment()); orderRequest.setFinalAcceptanceFilesResult(request.getFinalAcceptanceFilesResult()); } //ä»»å¡ä¿¡æ¯ orderRequest.setDataId(workTaskDataVo.getDataId()); orderRequest.setTaskId(workTaskDataVo.getId()); orderRequest.setUserId(workTaskDataVo.getAssignee()); orderRequest.setInstanceId(workTaskDataVo.getProcInstId()); orderRequest.setValues(workTaskDataVo.getVariables()); orderRequest.setTableDetailList(tableDetailList); EamWeekMaintenanceOrder result = eamWeekMaintenanceOrderService.approval(orderRequest); if (result == null) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",审æ¹å¤±è´¥!\r\n"); continue; } n++; } catch (Exception e) { errorMsg.append("å·¥åå·ï¼"); errorMsg.append(order.getOrderNum()); errorMsg.append(",审æ¹å¤±è´¥,é误åå :"); errorMsg.append(e.getMessage() + "\r\n"); } } if (n > 0) { String message = "æå审æ¹éè¿" + n + "æ¡è®°å½ï¼\r\n" + errorMsg; return Result.OK(message); } return Result.error(errorMsg.toString()); } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamInspectionBatchApprovalRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,26 @@ package org.jeecg.modules.eam.request; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.modules.flowable.domain.vo.WorkTaskDataVo; import java.io.Serializable; import java.util.List; @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) public class EamInspectionBatchApprovalRequest implements Serializable { /** 确认类å 1 éè¿ 2 驳å */ @ApiModelProperty(value = "确认类å") private String confirmDealType; /**确认æè§*/ @ApiModelProperty(value = "确认æè§") private String confirmComment; /**ä»»å¡å表*/ @ApiModelProperty(value = "ä»»å¡å表") private List<WorkTaskDataVo> tastList; } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamWeekMaintenanceBatchApprovalRequest.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,41 @@ package org.jeecg.modules.eam.request; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.api.vo.FileUploadResult; import org.jeecg.modules.flowable.domain.vo.WorkTaskDataVo; import java.io.Serializable; import java.util.List; @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) public class EamWeekMaintenanceBatchApprovalRequest implements Serializable { //确认æä½ /**确认æè§*/ @ApiModelProperty(value = "确认æè§") private String confirmComment; @ApiModelProperty(value = "确认类å") private String confirmDealType; //åéªæ¶æä½ /**åéªæ¶æè§*/ @ApiModelProperty(value = "åéªæ¶æè§") private String initialAcceptanceComment; /**åéªæ¶éä»¶*/ @ApiModelProperty(value = "åéªæ¶éä»¶") private List<FileUploadResult> initialAcceptanceFilesResult; //ç»éªæ¶æä½ /**ç»éªæ¶æè§*/ @ApiModelProperty(value = "ç»éªæ¶æè§") private String finalAcceptanceComment; /**ç»éªæ¶éä»¶*/ @ApiModelProperty(value = "ç»éªæ¶éä»¶") private List<FileUploadResult> finalAcceptanceFilesResult; /**ä»»å¡å表*/ @ApiModelProperty(value = "ä»»å¡å表") private List<WorkTaskDataVo> tastList; } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderDetailService.java
@@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.eam.entity.EamInspectionOrderDetail; import java.util.List; /** * @Description: ç¹æ£å·¥åæç» * @Author: jeecg-boot @@ -10,5 +12,10 @@ * @Version: V1.0 */ public interface IEamInspectionOrderDetailService extends IService<EamInspectionOrderDetail> { /** * è·åå·¥åä¿å »é¡¹å 容 * @param orderId å·¥åID * @return */ List<EamInspectionOrderDetail> queryListByOrderId(String orderId); } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderDetailService.java
@@ -1,7 +1,9 @@ package org.jeecg.modules.eam.service; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrderDetail; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrderDetail; import java.util.List; /** * @Description: å¨ä¿å·¥åæç» @@ -11,4 +13,10 @@ */ public interface IEamWeekMaintenanceOrderDetailService extends IService<EamWeekMaintenanceOrderDetail> { /** * æ ¹æ®å·¥åID æ¥è¯¢ä¿å »æç» * @param orderId * @return */ List<EamWeekMaintenanceOrderDetail> queryListByOrderId(String orderId); } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderDetailServiceImpl.java
@@ -1,10 +1,14 @@ package org.jeecg.modules.eam.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.eam.entity.EamInspectionOrderDetail; import org.jeecg.modules.eam.mapper.EamInspectionOrderDetailMapper; import org.jeecg.modules.eam.service.IEamInspectionOrderDetailService; import org.springframework.stereotype.Service; import java.util.Collections; import java.util.List; /** * @Description: ç¹æ£å·¥åæç» @@ -15,4 +19,11 @@ @Service public class EamInspectionOrderDetailServiceImpl extends ServiceImpl<EamInspectionOrderDetailMapper, EamInspectionOrderDetail> implements IEamInspectionOrderDetailService { @Override public List<EamInspectionOrderDetail> queryListByOrderId(String orderId) { LambdaQueryWrapper<EamInspectionOrderDetail> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EamInspectionOrderDetail::getOrderId, orderId); queryWrapper.orderByAsc(EamInspectionOrderDetail::getItemCode); return super.list(queryWrapper); } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderDetailServiceImpl.java
@@ -1,11 +1,13 @@ package org.jeecg.modules.eam.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrderDetail; import org.jeecg.modules.eam.mapper.EamWeekMaintenanceOrderDetailMapper; import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderDetailService; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import java.util.List; /** * @Description: å¨ä¿å·¥åæç» @@ -16,4 +18,11 @@ @Service public class EamWeekMaintenanceOrderDetailServiceImpl extends ServiceImpl<EamWeekMaintenanceOrderDetailMapper, EamWeekMaintenanceOrderDetail> implements IEamWeekMaintenanceOrderDetailService { @Override public List<EamWeekMaintenanceOrderDetail> queryListByOrderId(String orderId) { LambdaQueryWrapper<EamWeekMaintenanceOrderDetail> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(EamWeekMaintenanceOrderDetail::getOrderId, orderId); queryWrapper.orderByAsc(EamWeekMaintenanceOrderDetail::getItemCode); return super.list(queryWrapper); } }