diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - - SELECT id - FROM eqpt_equipment_info - WHERE 1=1 - - and RFID =#{label} - - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java index 827a8f1..e9297d1 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java @@ -98,6 +98,8 @@ @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + @ApiModelProperty("会签/或签(1/2)") + private Integer countersignOrSign; @Data @Builder diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java index 827a8f1..e9297d1 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java @@ -98,6 +98,8 @@ @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + @ApiModelProperty("会签/或签(1/2)") + private Integer countersignOrSign; @Data @Builder diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index ef7fce5..acec159 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -2,9 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.baomidou.mybatisplus.extension.service.IService; @@ -15,6 +17,7 @@ import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Set; /** *

@@ -34,19 +37,25 @@ EquipmentInfoForm detail(Long equipmentId); - void infoImport(MultipartFile file,String equipmentType) throws IOException; + ReturnDTO bindLabel(LabelBindDTO labelBindDTO); - List allCertificate(Long equipmentId,String equipmentType); + ReturnDTO> equipmentLabelReadList(Set strSet); + + void infoImport(MultipartFile file, String equipmentType) throws IOException; + + List allCertificate(Long equipmentId, String equipmentType); void updateByModel(EquipmentModelInfo modelInfo); void updateEquipmentStatus(Long equipmentId, String usageStatus); - void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date certificateValid, String meterIdentify); + void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date + certificateValid, String meterIdentify); - void removeCertificateInfo(Long equipmentId,Long certificateId); + void removeCertificateInfo(Long equipmentId, Long certificateId); - Page remindListPage(Page page, EquipmentRemindQueryForm queryForm); + Page remindListPage(Page page, EquipmentRemindQueryForm queryForm) + ; List remindList(EquipmentRemindQueryForm queryForm); @@ -54,7 +63,8 @@ List expireTrend(String type); - Page certificateListPage(Page page, EquipmentCertificateQueryForm queryForm); + Page certificateListPage + (Page page, EquipmentCertificateQueryForm queryForm); void bindTask(EquipmentTaskBindForm bindForm); } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java index 827a8f1..e9297d1 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java @@ -98,6 +98,8 @@ @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + @ApiModelProperty("会签/或签(1/2)") + private Integer countersignOrSign; @Data @Builder diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index ef7fce5..acec159 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -2,9 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.baomidou.mybatisplus.extension.service.IService; @@ -15,6 +17,7 @@ import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Set; /** *

@@ -34,19 +37,25 @@ EquipmentInfoForm detail(Long equipmentId); - void infoImport(MultipartFile file,String equipmentType) throws IOException; + ReturnDTO bindLabel(LabelBindDTO labelBindDTO); - List allCertificate(Long equipmentId,String equipmentType); + ReturnDTO> equipmentLabelReadList(Set strSet); + + void infoImport(MultipartFile file, String equipmentType) throws IOException; + + List allCertificate(Long equipmentId, String equipmentType); void updateByModel(EquipmentModelInfo modelInfo); void updateEquipmentStatus(Long equipmentId, String usageStatus); - void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date certificateValid, String meterIdentify); + void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date + certificateValid, String meterIdentify); - void removeCertificateInfo(Long equipmentId,Long certificateId); + void removeCertificateInfo(Long equipmentId, Long certificateId); - Page remindListPage(Page page, EquipmentRemindQueryForm queryForm); + Page remindListPage(Page page, EquipmentRemindQueryForm queryForm) + ; List remindList(EquipmentRemindQueryForm queryForm); @@ -54,7 +63,8 @@ List expireTrend(String type); - Page certificateListPage(Page page, EquipmentCertificateQueryForm queryForm); + Page certificateListPage + (Page page, EquipmentCertificateQueryForm queryForm); void bindTask(EquipmentTaskBindForm bindForm); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java index 53ba53b..09afac3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java @@ -25,6 +25,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.flowable.bpmn.model.*; import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.engine.HistoryService; import org.flowable.engine.RepositoryService; @@ -409,21 +410,27 @@ flowTask.setComment(ApprovalLogResponse.FlowCommentDto.builder().type(comment.getType()).comment(comment.getFullMessage()).build()); } }); -// 覆盖已有的root,因为驳回会再产生一个发起人任务 -// int flag = 0; -// ApprovalLogResponse oldValue = null; -// if(histIns.getActivityId().contains("root")){ -// for (ApprovalLogResponse his : hisFlowList) { -// if(his.getTaskId().contains("root")){ -// oldValue = his; -// flag = 1; -// break; -// } -// } -// } -// if(flag > 0){ -// hisFlowList.remove(oldValue); -// } + //判断会签or或签 + BpmnModel bpmnModel = repositoryService.getBpmnModel(histIns.getProcessDefinitionId()); + if (!histIns.getActivityName().contains("发起人")) { + Task task = taskService.createTaskQuery().taskId(histIns.getTaskId()).singleResult(); + if (Objects.nonNull(task)) { + FlowNode flowNode = (FlowNode) bpmnModel.getFlowElement(task.getTaskDefinitionKey()); + List outgoingFlows = flowNode.getOutgoingFlows(); + for (SequenceFlow outgoingFlow : outgoingFlows) { + FlowElement targetFlowElement = outgoingFlow.getSourceFlowElement(); + if (targetFlowElement instanceof UserTask) { + UserTask userTask = (UserTask) targetFlowElement; + //或签 + if ("${nrOfCompletedInstances/nrOfInstances > 0}".equals(userTask.getLoopCharacteristics().getCompletionCondition())) { + flowTask.setCountersignOrSign(2);//或签 + } else { + flowTask.setCountersignOrSign(1);//会签 + } + } + } + } + } hisFlowList.add(flowTask); } } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java index 827a8f1..e9297d1 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java @@ -98,6 +98,8 @@ @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + @ApiModelProperty("会签/或签(1/2)") + private Integer countersignOrSign; @Data @Builder diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index ef7fce5..acec159 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -2,9 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.baomidou.mybatisplus.extension.service.IService; @@ -15,6 +17,7 @@ import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Set; /** *

@@ -34,19 +37,25 @@ EquipmentInfoForm detail(Long equipmentId); - void infoImport(MultipartFile file,String equipmentType) throws IOException; + ReturnDTO bindLabel(LabelBindDTO labelBindDTO); - List allCertificate(Long equipmentId,String equipmentType); + ReturnDTO> equipmentLabelReadList(Set strSet); + + void infoImport(MultipartFile file, String equipmentType) throws IOException; + + List allCertificate(Long equipmentId, String equipmentType); void updateByModel(EquipmentModelInfo modelInfo); void updateEquipmentStatus(Long equipmentId, String usageStatus); - void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date certificateValid, String meterIdentify); + void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date + certificateValid, String meterIdentify); - void removeCertificateInfo(Long equipmentId,Long certificateId); + void removeCertificateInfo(Long equipmentId, Long certificateId); - Page remindListPage(Page page, EquipmentRemindQueryForm queryForm); + Page remindListPage(Page page, EquipmentRemindQueryForm queryForm) + ; List remindList(EquipmentRemindQueryForm queryForm); @@ -54,7 +63,8 @@ List expireTrend(String type); - Page certificateListPage(Page page, EquipmentCertificateQueryForm queryForm); + Page certificateListPage + (Page page, EquipmentCertificateQueryForm queryForm); void bindTask(EquipmentTaskBindForm bindForm); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java index 53ba53b..09afac3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java @@ -25,6 +25,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.flowable.bpmn.model.*; import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.engine.HistoryService; import org.flowable.engine.RepositoryService; @@ -409,21 +410,27 @@ flowTask.setComment(ApprovalLogResponse.FlowCommentDto.builder().type(comment.getType()).comment(comment.getFullMessage()).build()); } }); -// 覆盖已有的root,因为驳回会再产生一个发起人任务 -// int flag = 0; -// ApprovalLogResponse oldValue = null; -// if(histIns.getActivityId().contains("root")){ -// for (ApprovalLogResponse his : hisFlowList) { -// if(his.getTaskId().contains("root")){ -// oldValue = his; -// flag = 1; -// break; -// } -// } -// } -// if(flag > 0){ -// hisFlowList.remove(oldValue); -// } + //判断会签or或签 + BpmnModel bpmnModel = repositoryService.getBpmnModel(histIns.getProcessDefinitionId()); + if (!histIns.getActivityName().contains("发起人")) { + Task task = taskService.createTaskQuery().taskId(histIns.getTaskId()).singleResult(); + if (Objects.nonNull(task)) { + FlowNode flowNode = (FlowNode) bpmnModel.getFlowElement(task.getTaskDefinitionKey()); + List outgoingFlows = flowNode.getOutgoingFlows(); + for (SequenceFlow outgoingFlow : outgoingFlows) { + FlowElement targetFlowElement = outgoingFlow.getSourceFlowElement(); + if (targetFlowElement instanceof UserTask) { + UserTask userTask = (UserTask) targetFlowElement; + //或签 + if ("${nrOfCompletedInstances/nrOfInstances > 0}".equals(userTask.getLoopCharacteristics().getCompletionCondition())) { + flowTask.setCountersignOrSign(2);//或签 + } else { + flowTask.setCountersignOrSign(1);//会签 + } + } + } + } + } hisFlowList.add(flowTask); } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index 2916f74..bbade89 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -17,11 +17,15 @@ import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.enums.ApprovalStatusEnum; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.enums.equipment.EquipmentCertificateTypeEnum; import com.casic.missiles.enums.equipment.EquipmentStatusTypeEnum; @@ -50,6 +54,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; @@ -77,7 +82,6 @@ private final IEquipmentGroupInfoService groupInfoService; private final IEquipmentAttachmentService attachmentService; private final IEquipmentTechnicalTargetService technicalTargetService; - private final IRemindConfigService remindConfigService; private final IEquipmentSpecialCertificateService specialCertificateService; private final IEquipmentStatusLogService statusLogService; private final IEquipmentTurnoverLogService turnoverLogService; @@ -214,6 +218,28 @@ } @Override + public ReturnDTO bindLabel(LabelBindDTO labelBindDTO) { + //查询委托书和样品关联表中的各状态的样品 + Long id = this.baseMapper.isBindLabel(labelBindDTO.getLabel()); + if (ObjectUtils.isEmpty(id)) { + Integer updateFlag = this.baseMapper.bindLabel(labelBindDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + throw new BusinessException(BusinessExceptionEnum.LABEL_ALREADY_BIND); + } + + @Override + public ReturnDTO> equipmentLabelReadList(Set strSet) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.and(QueryWrapper -> QueryWrapper.in("label", strSet)); + List resultList = this.baseMapper.selectList(queryWrapper); + return ReturnUtil.success(resultList); + } + + @Override public List allCertificate(Long equipmentId, String equipmentType) { List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java index 44971a2..f9756db 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java @@ -53,6 +53,7 @@ FAIL_READ_EPC_TID(2416, "标签信息读取失败,请重新操作"), READ_WRITER_NOT_CONNECTED(2417, "标签信息读取失败,请正确连接读写器"), READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"), + LABEL_ALREADY_BIND(2419, "该标签已经绑定设备装置"), OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"), OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"), diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java new file mode 100644 index 0000000..3db6a7d --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/ExUtils.java @@ -0,0 +1,19 @@ +package com.casic.missiles.utils; + +import org.springframework.stereotype.Component; + +import java.util.Arrays; +import java.util.List; + +/** + * @Description: flowable条件表达式(setConditionExpression)执行的bean + * @Author: wangpeng + * @Date: 2023/1/8 14:27 + */ +@Component +public class ExUtils { + public Boolean strContains(String controlId,String...values){ + List list = Arrays.asList(values); + return list.contains(controlId); + } +} diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java index 5ac83f6..cde328c 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/equipment/EquipmentInfoMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.EquipmentCertificateDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; import com.casic.missiles.dto.equipment.EquipmentRemindList; @@ -30,6 +31,10 @@ List selectList(@Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryWrapper); + Long isBindLabel(@Param("label") String label); + + Integer bindLabel(@Param("request") LabelBindDTO labelBindDTO); + List bizCertificateListPage(@Param("page") Page page, @Param("dataScope") DataScope dataScope, @Param("ew") QueryWrapper queryForm); diff --git a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml index 29485be..04b5cee 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BizBusinessOrderSampleRelationMapper.xml @@ -44,21 +44,6 @@ eei.measure_last_time AS measureLastDate, eei.valid_deadline AS effectiveDate, bosr.remark, eei.minio_file_name, bosr.measure_type, eei.label_bind - - - - + + + + + with remind_config_info as ( select diff --git a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java index f237a1a..56b6814 100644 --- a/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java +++ b/casic-metering-eqpt-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentInfoController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.casic.missiles.service.equipment.IEquipmentInfoService; @@ -22,8 +23,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.validation.Valid; import java.io.IOException; import java.util.List; +import java.util.Set; @Api(tags = "设备管理接口") @Slf4j @@ -80,6 +83,18 @@ return ReturnUtil.success(form); } + @ApiOperation("标签绑定") + @PostMapping("/label/bind") + public ReturnDTO labelBind(@RequestBody @Valid LabelBindDTO labelBindDTO) throws Exception { + return equipmentInfoService.bindLabel(labelBindDTO); + } + + @ApiOperation("根据标签查询设备列表") + @PostMapping("/label/readList") + public ReturnDTO> readList(@RequestBody @Valid Set strSet) throws Exception { + return equipmentInfoService.equipmentLabelReadList(strSet); + } + @ApiOperation("设备导入") @PostMapping("/info/import") @ResponseBody diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java index 827a8f1..e9297d1 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/flowable/ApprovalLogResponse.java @@ -98,6 +98,8 @@ @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + @ApiModelProperty("会签/或签(1/2)") + private Integer countersignOrSign; @Data @Builder diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java index ef7fce5..acec159 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentInfoService.java @@ -2,9 +2,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.datascope.DataScope; +import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.model.equipment.EquipmentInfo; import com.baomidou.mybatisplus.extension.service.IService; @@ -15,6 +17,7 @@ import java.io.IOException; import java.util.Date; import java.util.List; +import java.util.Set; /** *

@@ -34,19 +37,25 @@ EquipmentInfoForm detail(Long equipmentId); - void infoImport(MultipartFile file,String equipmentType) throws IOException; + ReturnDTO bindLabel(LabelBindDTO labelBindDTO); - List allCertificate(Long equipmentId,String equipmentType); + ReturnDTO> equipmentLabelReadList(Set strSet); + + void infoImport(MultipartFile file, String equipmentType) throws IOException; + + List allCertificate(Long equipmentId, String equipmentType); void updateByModel(EquipmentModelInfo modelInfo); void updateEquipmentStatus(Long equipmentId, String usageStatus); - void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date certificateValid, String meterIdentify); + void updateCertificateInfo(Long equipmentId, String checkOrganization, Date checkDate, Date + certificateValid, String meterIdentify); - void removeCertificateInfo(Long equipmentId,Long certificateId); + void removeCertificateInfo(Long equipmentId, Long certificateId); - Page remindListPage(Page page, EquipmentRemindQueryForm queryForm); + Page remindListPage(Page page, EquipmentRemindQueryForm queryForm) + ; List remindList(EquipmentRemindQueryForm queryForm); @@ -54,7 +63,8 @@ List expireTrend(String type); - Page certificateListPage(Page page, EquipmentCertificateQueryForm queryForm); + Page certificateListPage + (Page page, EquipmentCertificateQueryForm queryForm); void bindTask(EquipmentTaskBindForm bindForm); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java index 53ba53b..09afac3 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/BaseApprovalServiceImpl.java @@ -25,6 +25,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.flowable.bpmn.model.*; import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.engine.HistoryService; import org.flowable.engine.RepositoryService; @@ -409,21 +410,27 @@ flowTask.setComment(ApprovalLogResponse.FlowCommentDto.builder().type(comment.getType()).comment(comment.getFullMessage()).build()); } }); -// 覆盖已有的root,因为驳回会再产生一个发起人任务 -// int flag = 0; -// ApprovalLogResponse oldValue = null; -// if(histIns.getActivityId().contains("root")){ -// for (ApprovalLogResponse his : hisFlowList) { -// if(his.getTaskId().contains("root")){ -// oldValue = his; -// flag = 1; -// break; -// } -// } -// } -// if(flag > 0){ -// hisFlowList.remove(oldValue); -// } + //判断会签or或签 + BpmnModel bpmnModel = repositoryService.getBpmnModel(histIns.getProcessDefinitionId()); + if (!histIns.getActivityName().contains("发起人")) { + Task task = taskService.createTaskQuery().taskId(histIns.getTaskId()).singleResult(); + if (Objects.nonNull(task)) { + FlowNode flowNode = (FlowNode) bpmnModel.getFlowElement(task.getTaskDefinitionKey()); + List outgoingFlows = flowNode.getOutgoingFlows(); + for (SequenceFlow outgoingFlow : outgoingFlows) { + FlowElement targetFlowElement = outgoingFlow.getSourceFlowElement(); + if (targetFlowElement instanceof UserTask) { + UserTask userTask = (UserTask) targetFlowElement; + //或签 + if ("${nrOfCompletedInstances/nrOfInstances > 0}".equals(userTask.getLoopCharacteristics().getCompletionCondition())) { + flowTask.setCountersignOrSign(2);//或签 + } else { + flowTask.setCountersignOrSign(1);//会签 + } + } + } + } + } hisFlowList.add(flowTask); } } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java index 2916f74..bbade89 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/equipment/EquipmentInfoServiceImpl.java @@ -17,11 +17,15 @@ import com.casic.missiles.core.datascope.DataScope; import com.casic.missiles.core.datascope.ScopeEnums; import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.board.EquipmentCommonAggr; import com.casic.missiles.dto.board.EquipmentStatisticsDTO; import com.casic.missiles.dto.board.EquipmentStatisticsList; +import com.casic.missiles.dto.business.LabelBindDTO; import com.casic.missiles.dto.equipment.*; import com.casic.missiles.enums.ApprovalStatusEnum; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.enums.equipment.EquipmentCertificateTypeEnum; import com.casic.missiles.enums.equipment.EquipmentStatusTypeEnum; @@ -50,6 +54,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; @@ -77,7 +82,6 @@ private final IEquipmentGroupInfoService groupInfoService; private final IEquipmentAttachmentService attachmentService; private final IEquipmentTechnicalTargetService technicalTargetService; - private final IRemindConfigService remindConfigService; private final IEquipmentSpecialCertificateService specialCertificateService; private final IEquipmentStatusLogService statusLogService; private final IEquipmentTurnoverLogService turnoverLogService; @@ -214,6 +218,28 @@ } @Override + public ReturnDTO bindLabel(LabelBindDTO labelBindDTO) { + //查询委托书和样品关联表中的各状态的样品 + Long id = this.baseMapper.isBindLabel(labelBindDTO.getLabel()); + if (ObjectUtils.isEmpty(id)) { + Integer updateFlag = this.baseMapper.bindLabel(labelBindDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + throw new BusinessException(BusinessExceptionEnum.LABEL_ALREADY_BIND); + } + + @Override + public ReturnDTO> equipmentLabelReadList(Set strSet) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.and(QueryWrapper -> QueryWrapper.in("label", strSet)); + List resultList = this.baseMapper.selectList(queryWrapper); + return ReturnUtil.success(resultList); + } + + @Override public List allCertificate(Long equipmentId, String equipmentType) { List listAll = new ArrayList<>(); listAll.addAll(this.baseMapper.bizCertificateList(equipmentId)); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/FlowDefDefServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/FlowDefDefServiceImpl.java index 1e453cb..cc18fd8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/FlowDefDefServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/impl/system/FlowDefDefServiceImpl.java @@ -741,10 +741,10 @@ // 设置多实例属性,多实例:会签情况下每个处理人对应一个实例 userTask.setLoopCharacteristics(multiInstanceLoopCharacteristics); //多人审批时采用的审批方式 1依次会签 2并行会签 3或签 - //默认并行会签,会签的实例存ACT_RU_IDENTITYLINK表,串行时表中会依次增加实例数据 + //默认或签,会签的实例存ACT_RU_IDENTITYLINK表,串行时表中会依次增加实例数据 if ("1".equals(examineMode)) { multiInstanceLoopCharacteristics.setSequential(true); - } else if ("3".equals(examineMode)) { + } else if (StringUtils.isEmpty(examineMode) || "3".equals(examineMode)) { //或签,即设置完成条件nrOfCompletedInstances/nrOfInstances > 0 //nrOfCompletedInstances:已完成的实例数量,nrOfInstances:实例总数 multiInstanceLoopCharacteristics.setCompletionCondition("${nrOfCompletedInstances/nrOfInstances > 0}");