From 2be0d59a05f526ced8f0401126015deeea486663 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期四, 10 四月 2025 10:35:55 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java | 2 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java | 56 +++++++++++++++++++++++++++- lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/service/impl/FlowMyBusinessServiceImpl.java | 8 +--- lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/mapper/FlowMyBusinessMapper.java | 4 ++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java | 17 ++++++++ 5 files changed, 77 insertions(+), 10 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java index 3678b95..13b404e 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamWeekMaintenanceOrderController.java @@ -55,7 +55,7 @@ @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { // QueryWrapper<EamWeekMaintenanceOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamWeekMaintenanceOrder, req.getParameterMap()); - Page<EamWeekMaintenanceOrder> page = new Page<EamWeekMaintenanceOrder>(pageNo, pageSize); + Page<EamWeekMaintenanceOrder> page = new Page<>(pageNo, pageSize); IPage<EamWeekMaintenanceOrder> pageList = eamWeekMaintenanceOrderService.queryPageList(page, query); return Result.OK(pageList); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java index a9ac0fc..d97a6e7 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java @@ -5,9 +5,12 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.shiro.SecurityUtils; import org.flowable.engine.TaskService; import org.flowable.task.api.Task; +import org.jeecg.common.api.vo.FileUploadResult; import org.jeecg.common.api.vo.Result; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.vo.LoginUser; @@ -76,7 +79,7 @@ }else { eamInspectionOrder.setInspectionStatus(InspectionStatus.INIT.getCode()); } - save(eamInspectionOrder); + //澶勭悊鏄庣粏鏁版嵁 if(CollectionUtil.isNotEmpty(eamInspectionOrderRequest.getTableDetailList())) { eamInspectionOrderRequest.getTableDetailList().forEach(tableDetail -> { @@ -85,6 +88,18 @@ }); eamInspectionOrderDetailService.saveBatch(eamInspectionOrderRequest.getTableDetailList()); } + //澶勭悊闄勪欢 + if(CollectionUtil.isNotEmpty(eamInspectionOrderRequest.getFileList())) { + FileUploadResult fileUploadResult = eamInspectionOrderRequest.getFileList().get(0); + ObjectMapper mapper = new ObjectMapper(); + try { + String referenceFile = mapper.writeValueAsString(fileUploadResult); + eamInspectionOrder.setImageFiles(referenceFile); + } catch (JsonProcessingException e) { + log.error("JSON杞崲澶辫触锛�" + e.getMessage(), e); + } + } + save(eamInspectionOrder); if (StrUtil.isNotBlank(eamInspectionOrderRequest.getOperator())){ triggerProcess(eamInspectionOrder); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java index e594233..c17c420 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java @@ -80,7 +80,33 @@ eamWeekMaintenanceOrderDetailService.saveBatch(request.getTableDetailList()); } //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋� - //TODO + if(StringUtils.isNotBlank(order.getOperator())) { + //鍚姩娴佺▼ + flowCommonService.initActBusiness("宸ュ崟鍙�:" + order.getOrderNum() + ";寮�濮嬭繘琛岃澶囧懆淇�", + order.getId(), "IEamWeekMaintenanceOrderService", "week_maintenance_process", null); + Map<String, Object> variables = new HashMap<>(); + variables.put("dataId", order.getId()); + if (StrUtil.isEmpty(order.getRemark())) { + variables.put("organization", "鏂板鍛ㄤ繚宸ュ崟榛樿鍚姩娴佺▼"); + variables.put("comment", "鏂板鍛ㄤ繚宸ュ崟榛樿鍚姩娴佺▼"); + } else { + variables.put("organization", order.getRemark()); + variables.put("comment", order.getRemark()); + } + variables.put("proofreading", true); + List<String> usernames = new ArrayList<>(); + usernames.add(order.getOperator()); + variables.put("NextAssignee", usernames); + Result result = flowDefinitionService.startProcessInstanceByKey("week_maintenance_process", variables); + if(result != null){ + //鏇存柊鍛ㄤ繚鐘舵�� + order.setMaintenanceStatus(WeekMaintenanceStatusEnum.UNDER_MAINTENANCE.name()); + order.setActualStartTime(new Date()); + eamWeekMaintenanceOrderMapper.updateById(order); + return result.isSuccess(); + } + } + return true; } @@ -174,7 +200,32 @@ eamWeekMaintenanceOrderDetailService.removeBatchByIds(ids); } //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋� - //TODO + if(StringUtils.isNotBlank(entity.getOperator())) { + //鍚姩娴佺▼ + flowCommonService.initActBusiness("宸ュ崟鍙�:" + entity.getOrderNum() + ";寮�濮嬭繘琛岃澶囧懆淇�", + entity.getId(), "IEamWeekMaintenanceOrderService", "week_maintenance_process", null); + Map<String, Object> variables = new HashMap<>(); + variables.put("dataId", entity.getId()); + if (StrUtil.isEmpty(entity.getRemark())) { + variables.put("organization", "鏂板鍛ㄤ繚宸ュ崟榛樿鍚姩娴佺▼"); + variables.put("comment", "鏂板鍛ㄤ繚宸ュ崟榛樿鍚姩娴佺▼"); + } else { + variables.put("organization", entity.getRemark()); + variables.put("comment", entity.getRemark()); + } + variables.put("proofreading", true); + List<String> usernames = new ArrayList<>(); + usernames.add(entity.getOperator()); + variables.put("NextAssignee", usernames); + Result result = flowDefinitionService.startProcessInstanceByKey("week_maintenance_process", variables); + if(result != null){ + //鏇存柊鍛ㄤ繚鐘舵�� + entity.setMaintenanceStatus(WeekMaintenanceStatusEnum.UNDER_MAINTENANCE.name()); + entity.setActualStartTime(new Date()); + eamWeekMaintenanceOrderMapper.updateById(entity); + return result.isSuccess(); + } + } return true; } @@ -191,6 +242,7 @@ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); entity.setOperator(sysUser.getUsername()); entity.setMaintenanceStatus(WeekMaintenanceStatusEnum.UNDER_MAINTENANCE.name()); + entity.setActualStartTime(new Date()); eamWeekMaintenanceOrderMapper.updateById(entity); //鍚姩娴佺▼ diff --git a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/mapper/FlowMyBusinessMapper.java b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/mapper/FlowMyBusinessMapper.java index bc0fda2..7880ff5 100644 --- a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/mapper/FlowMyBusinessMapper.java +++ b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/mapper/FlowMyBusinessMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; import org.jeecg.modules.flowable.apithird.business.dto.FlowMyBusinessDto; import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness; import org.jeecg.modules.flowable.domain.dto.FlowTaskDto; @@ -31,4 +32,7 @@ */ IPage<FlowMyBusinessDto> PageList(@Param("page") Page page, @Param("flowMyBusinessDto") FlowMyBusinessDto flowMyBusinessDto); + @Select("SELECT * FROM flow_my_business WITH (INDEX(idx_data_id)) \n" + + "WHERE data_id = #{dataId}") + FlowMyBusiness selectByDataId(String dataId); } diff --git a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/service/impl/FlowMyBusinessServiceImpl.java b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/service/impl/FlowMyBusinessServiceImpl.java index 3216cf9..793799f 100644 --- a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/service/impl/FlowMyBusinessServiceImpl.java +++ b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/apithird/business/service/impl/FlowMyBusinessServiceImpl.java @@ -14,7 +14,6 @@ import org.jeecg.modules.flowable.util.TimeUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Transactional; import java.util.Date; @@ -58,13 +57,10 @@ return null; } - @Transactional(isolation = Isolation.READ_COMMITTED) // 闄嶄綆闅旂绾у埆 + @Transactional // 闄嶄綆闅旂绾у埆 public FlowMyBusiness getByDataId(String dataId) { - LambdaQueryWrapper<FlowMyBusiness> flowMyBusinessLambdaQueryWrapper = new LambdaQueryWrapper<>(); - flowMyBusinessLambdaQueryWrapper.eq(FlowMyBusiness::getDataId,dataId) - ; //濡傛灉淇濆瓨鏁版嵁鍓嶆湭璋冪敤蹇呰皟鐨凢lowCommonService.initActBusiness鏂规硶锛屽氨浼氭湁闂 - FlowMyBusiness business = this.getOne(flowMyBusinessLambdaQueryWrapper); + FlowMyBusiness business = flowMyBusinessMapper.selectByDataId(dataId); return business; } -- Gitblit v1.9.3