fix: 法规符合性评估库
This commit is contained in:
+21
-9
@@ -23,6 +23,7 @@ import org.springframework.stereotype.Component;
|
|||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -70,9 +71,22 @@ public class ProcessSCCEndListener implements ExecutionListener {
|
|||||||
Page<ProcessApprovalRecord> processApprovalRecordPage = processApprovalRecordService
|
Page<ProcessApprovalRecord> processApprovalRecordPage = processApprovalRecordService
|
||||||
.pageList(page, processApprovalRecord, COMPLETED_RECORD_LIST);
|
.pageList(page, processApprovalRecord, COMPLETED_RECORD_LIST);
|
||||||
List<ProcessApprovalRecord> processApprovalRecordList = processApprovalRecordPage.getRecords();
|
List<ProcessApprovalRecord> processApprovalRecordList = processApprovalRecordPage.getRecords();
|
||||||
|
// 找到流程数据
|
||||||
|
LambdaQueryWrapper<ProcessStandardComplianceCheck> sccWrapper = new LambdaQueryWrapper<>();
|
||||||
|
LambdaQueryWrapper<ProcessStandardComplianceCheckDetail> sccDetailWrapper = new LambdaQueryWrapper<>();
|
||||||
|
String processInstanceId = delegateExecution.getProcessInstanceId();
|
||||||
|
sccWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, processInstanceId);
|
||||||
|
ProcessStandardComplianceCheck scc = sccService.getOne(sccWrapper);
|
||||||
|
// 找到条款数据
|
||||||
|
sccDetailWrapper.eq(ProcessStandardComplianceCheckDetail::getCheckId, scc.getId());
|
||||||
|
List<ProcessStandardComplianceCheckDetail> list = sccDetailService.list(sccDetailWrapper);
|
||||||
// 找到流程的所有评估人
|
// 找到流程的所有评估人
|
||||||
boolean distribute = (boolean) delegateExecution.getVariable(DISTRIBUTE);
|
boolean distribute = (boolean) delegateExecution.getVariable(DISTRIBUTE);
|
||||||
String allAssessors;
|
String allAssessors;
|
||||||
|
Date valuationTime = list.stream()
|
||||||
|
.map(ProcessStandardComplianceCheckDetail::getValuationTime)
|
||||||
|
.max(Comparator.naturalOrder())
|
||||||
|
.orElse(new Date());
|
||||||
if (distribute) {
|
if (distribute) {
|
||||||
allAssessors = processApprovalRecordList.stream()
|
allAssessors = processApprovalRecordList.stream()
|
||||||
.filter(task -> task.getNodeId().equals(DESIGNER_ENGINEER_EVALUATION))
|
.filter(task -> task.getNodeId().equals(DESIGNER_ENGINEER_EVALUATION))
|
||||||
@@ -89,15 +103,6 @@ public class ProcessSCCEndListener implements ExecutionListener {
|
|||||||
.map(ProcessApprovalRecord::getUserId)
|
.map(ProcessApprovalRecord::getUserId)
|
||||||
.distinct()
|
.distinct()
|
||||||
.collect(Collectors.joining(","));
|
.collect(Collectors.joining(","));
|
||||||
LambdaQueryWrapper<ProcessStandardComplianceCheck> sccWrapper = new LambdaQueryWrapper<>();
|
|
||||||
LambdaQueryWrapper<ProcessStandardComplianceCheckDetail> sccDetailWrapper = new LambdaQueryWrapper<>();
|
|
||||||
// 找到流程数据
|
|
||||||
String processInstanceId = delegateExecution.getProcessInstanceId();
|
|
||||||
sccWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, processInstanceId);
|
|
||||||
ProcessStandardComplianceCheck scc = sccService.getOne(sccWrapper);
|
|
||||||
// 找到条款数据
|
|
||||||
sccDetailWrapper.eq(ProcessStandardComplianceCheckDetail::getCheckId, scc.getId());
|
|
||||||
List<ProcessStandardComplianceCheckDetail> list = sccDetailService.list(sccDetailWrapper);
|
|
||||||
// 入库保存
|
// 入库保存
|
||||||
LambdaQueryWrapper<LawsConformityAssessmentLibrary> calWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsConformityAssessmentLibrary> calWrapper = new LambdaQueryWrapper<>();
|
||||||
calWrapper.eq(LawsConformityAssessmentLibrary::getStandardNumber, scc.getStandardNumber());
|
calWrapper.eq(LawsConformityAssessmentLibrary::getStandardNumber, scc.getStandardNumber());
|
||||||
@@ -106,6 +111,7 @@ public class ProcessSCCEndListener implements ExecutionListener {
|
|||||||
if (lawsConformityAssessmentLibrary == null) {
|
if (lawsConformityAssessmentLibrary == null) {
|
||||||
lawsConformityAssessmentLibrary = BeanCopyUtils.copyBean(scc, LawsConformityAssessmentLibrary.class);
|
lawsConformityAssessmentLibrary = BeanCopyUtils.copyBean(scc, LawsConformityAssessmentLibrary.class);
|
||||||
lawsConformityAssessmentLibrary.setId(null);
|
lawsConformityAssessmentLibrary.setId(null);
|
||||||
|
lawsConformityAssessmentLibrary.setValuationTime(valuationTime);
|
||||||
lawsConformityAssessmentLibrary.setAllApprovalUser(allApprovalUsers);
|
lawsConformityAssessmentLibrary.setAllApprovalUser(allApprovalUsers);
|
||||||
lawsConformityAssessmentLibrary.setAllAssessor(allAssessors);
|
lawsConformityAssessmentLibrary.setAllAssessor(allAssessors);
|
||||||
calService.save(lawsConformityAssessmentLibrary);
|
calService.save(lawsConformityAssessmentLibrary);
|
||||||
@@ -123,6 +129,12 @@ public class ProcessSCCEndListener implements ExecutionListener {
|
|||||||
// 更新评估日期
|
// 更新评估日期
|
||||||
lawsConformityAssessmentLibrary.setAllApprovalUser(allApprovalUsers);
|
lawsConformityAssessmentLibrary.setAllApprovalUser(allApprovalUsers);
|
||||||
lawsConformityAssessmentLibrary.setAllAssessor(allAssessors);
|
lawsConformityAssessmentLibrary.setAllAssessor(allAssessors);
|
||||||
|
// 如果大于原来的评估日期,则更新
|
||||||
|
if (lawsConformityAssessmentLibrary.getValuationTime() == null ||
|
||||||
|
lawsConformityAssessmentLibrary.getValuationTime().before(valuationTime)
|
||||||
|
) {
|
||||||
|
lawsConformityAssessmentLibrary.setValuationTime(valuationTime);
|
||||||
|
}
|
||||||
calService.updateById(lawsConformityAssessmentLibrary);
|
calService.updateById(lawsConformityAssessmentLibrary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
-1
@@ -84,7 +84,6 @@ public class LawsConformityAssessmentLibrary implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 适用市场
|
* 适用市场
|
||||||
*/
|
*/
|
||||||
@TableField(exist = false)
|
|
||||||
@ApiModelProperty(value = "适用市场")
|
@ApiModelProperty(value = "适用市场")
|
||||||
@Dict(dicCode = "market_state")
|
@Dict(dicCode = "market_state")
|
||||||
private String applicableMarket;
|
private String applicableMarket;
|
||||||
|
|||||||
+4
-3
@@ -4,13 +4,13 @@ import com.baomidou.mybatisplus.annotation.IdType;
|
|||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import java.io.Serializable;
|
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
import com.jero.common.aspect.annotation.Dict;
|
import com.jero.common.aspect.annotation.Dict;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @TableName laws_conformity_assessment_library_detail
|
* @TableName laws_conformity_assessment_library_detail
|
||||||
@@ -98,6 +98,7 @@ public class LawsConformityAssessmentLibraryDetail implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 评估结果
|
* 评估结果
|
||||||
*/
|
*/
|
||||||
|
@Dict(dicCode = "evaluation_result")
|
||||||
@ApiModelProperty(value = "评估结果")
|
@ApiModelProperty(value = "评估结果")
|
||||||
private String result;
|
private String result;
|
||||||
|
|
||||||
|
|||||||
+10
-11
@@ -6,7 +6,6 @@
|
|||||||
|
|
||||||
<resultMap id="BaseResultMap" type="com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary">
|
<resultMap id="BaseResultMap" type="com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary">
|
||||||
<id property="id" column="id" jdbcType="VARCHAR"/>
|
<id property="id" column="id" jdbcType="VARCHAR"/>
|
||||||
<result property="source" column="source" jdbcType="VARCHAR"/>
|
|
||||||
<result property="standardId" column="standard_id" jdbcType="VARCHAR"/>
|
<result property="standardId" column="standard_id" jdbcType="VARCHAR"/>
|
||||||
<result property="standardNumber" column="standard_number" jdbcType="VARCHAR"/>
|
<result property="standardNumber" column="standard_number" jdbcType="VARCHAR"/>
|
||||||
<result property="standardName" column="standard_name" jdbcType="VARCHAR"/>
|
<result property="standardName" column="standard_name" jdbcType="VARCHAR"/>
|
||||||
@@ -14,21 +13,21 @@
|
|||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="Base_Column_List">
|
<sql id="Base_Column_List">
|
||||||
id,source,standard_id,
|
id,standard_id,
|
||||||
standard_number,standard_name,valuation_time
|
standard_number,standard_name,valuation_time
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="queryByPage" resultType="com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary">
|
<select id="queryByPage" resultType="com.jero.modules.assessmentLibrary.entity.LawsConformityAssessmentLibrary">
|
||||||
select
|
select cs.id,
|
||||||
cs.id,
|
cs.standard_id,
|
||||||
cs.standard_id,
|
IF(cs.standard_id IS NOT NULL, d.standard_number, cs.standard_number) AS standard_number,
|
||||||
d.standard_number,
|
IF(cs.standard_id IS NOT NULL, d.standard_name, cs.standard_name) AS standard_name,
|
||||||
d.standard_name,
|
lms.country as applicableMarket,
|
||||||
d.applicable_market,
|
cs.valuation_time
|
||||||
cs.valuation_time
|
|
||||||
from laws_conformity_assessment_library cs
|
from laws_conformity_assessment_library cs
|
||||||
left join laws_domestic_standard as d on d.id = cs.standard_id
|
left join laws_domestic_standard as d on d.id = cs.standard_id
|
||||||
${ew.customSqlSegment}
|
left join laws_market_standard as lms on lms.id = cs.applicable_market
|
||||||
|
${ew.customSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="detail"
|
<select id="detail"
|
||||||
|
|||||||
+6
-2
@@ -84,8 +84,12 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl<Laws
|
|||||||
"d.standard_number", lawsConformityAssessmentLibrary.getStandardNumber());
|
"d.standard_number", lawsConformityAssessmentLibrary.getStandardNumber());
|
||||||
queryWrapper.like(StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getStandardName()),
|
queryWrapper.like(StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getStandardName()),
|
||||||
"d.standard_name", lawsConformityAssessmentLibrary.getStandardName());
|
"d.standard_name", lawsConformityAssessmentLibrary.getStandardName());
|
||||||
if (StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getApplicableMarket())) {
|
String applicableMarkets = lawsConformityAssessmentLibrary.getApplicableMarket();
|
||||||
queryWrapper.in("d.applicable_market", Arrays.asList(lawsConformityAssessmentLibrary.getApplicableMarket().split(",")));
|
if (StringUtils.isNotBlank(applicableMarkets)) {
|
||||||
|
String[] split = applicableMarkets.split(",");
|
||||||
|
for (String splitStr : split) {
|
||||||
|
queryWrapper.like("lms.country", splitStr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getSelections())) {
|
if (StringUtils.isNotBlank(lawsConformityAssessmentLibrary.getSelections())) {
|
||||||
queryWrapper.in("cs.id", Arrays.asList(lawsConformityAssessmentLibrary.getSelections().split(",")));
|
queryWrapper.in("cs.id", Arrays.asList(lawsConformityAssessmentLibrary.getSelections().split(",")));
|
||||||
|
|||||||
Reference in New Issue
Block a user