feat: 标准状态变更定时任务增加处理代替被代替标准
This commit is contained in:
-3
@@ -27,12 +27,9 @@ import org.activiti.engine.delegate.DelegateExecution;
|
|||||||
import org.activiti.engine.delegate.ExecutionListener;
|
import org.activiti.engine.delegate.ExecutionListener;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.transaction.annotation.Propagation;
|
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.CompletableFuture;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author: Mzaxd
|
* @author: Mzaxd
|
||||||
|
|||||||
+8
@@ -236,4 +236,12 @@ public interface ILawsCommonService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<OSSFile> getFileByStandardId(String standardId);
|
List<OSSFile> getFileByStandardId(String standardId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理代替被代替
|
||||||
|
* @param parameterMap
|
||||||
|
* @param standardNumber
|
||||||
|
* @param module
|
||||||
|
*/
|
||||||
|
void processReplaced(Map<String, Object> parameterMap, String standardNumber, String module);
|
||||||
}
|
}
|
||||||
|
|||||||
+15
-14
@@ -1056,25 +1056,26 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
|||||||
* @Date: 2023/9/19 11:53
|
* @Date: 2023/9/19 11:53
|
||||||
* @Description: 处理新增和编辑时的代替标准、引用标准
|
* @Description: 处理新增和编辑时的代替标准、引用标准
|
||||||
**/
|
**/
|
||||||
private void processReplaced(Map<String, Object> parameterMap, String standardNumber, String module) {
|
@Override
|
||||||
|
public void processReplaced(Map<String, Object> parameterMap, String standardNumber, String module) {
|
||||||
// 代替标准
|
// 代替标准
|
||||||
String replacedStandard = (String) parameterMap.get(FieldCommon.REPLACED_STANDARD);
|
String replacedStandard = (String) parameterMap.get(FieldCommon.REPLACED_STANDARD);
|
||||||
// 获取标准状态
|
// 获取标准状态
|
||||||
String standardState = (String) parameterMap.get(FieldCommon.STANDARD_STATE);
|
String standardState = (String) parameterMap.get(FieldCommon.STANDARD_STATE);
|
||||||
boolean replaceFlag = true;
|
|
||||||
// 如果标准状态不是现行有效则不处理代替标准
|
// 如果标准状态不是现行有效则不处理代替标准
|
||||||
// boolean replaceFlag = false;
|
boolean replaceFlag = false;
|
||||||
// if (StringUtils.isNotBlank(standardState)) {
|
if (StringUtils.isNotBlank(standardState)) {
|
||||||
// if (module.equals(TableNameEnum.ENTERPRISE_STANDARDS.getValue())) {
|
// 企标需要自动拼装标准号
|
||||||
// if (standardState.equals(StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) {
|
if (module.equals(TableNameEnum.ENTERPRISE_STANDARDS.getValue())) {
|
||||||
// replaceFlag = true;
|
if (standardState.equals(StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) {
|
||||||
// }
|
replaceFlag = true;
|
||||||
// } else {
|
}
|
||||||
// if (standardState.equals(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) {
|
} else {
|
||||||
// replaceFlag = true;
|
if (standardState.equals(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) {
|
||||||
// }
|
replaceFlag = true;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
|
}
|
||||||
// 先删除已经存储的关联
|
// 先删除已经存储的关联
|
||||||
lawsReplacedStandardService.removeRelation(standardNumber, 1);
|
lawsReplacedStandardService.removeRelation(standardNumber, 1);
|
||||||
if (StringUtils.isNotBlank(replacedStandard)) {
|
if (StringUtils.isNotBlank(replacedStandard)) {
|
||||||
|
|||||||
+33
@@ -3,6 +3,8 @@ package com.jero.modules.laws.standard.job;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||||
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
||||||
|
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||||
|
import com.jero.modules.laws.common.service.ILawsCommonService;
|
||||||
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
|
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||||
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
|
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
|
||||||
@@ -10,6 +12,7 @@ import com.jero.modules.laws.standard.entity.OutStandardStateEnum;
|
|||||||
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
|
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
||||||
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
|
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
|
||||||
|
import com.jero.modules.tag.enums.TableNameEnum;
|
||||||
import org.quartz.Job;
|
import org.quartz.Job;
|
||||||
import org.quartz.JobExecutionContext;
|
import org.quartz.JobExecutionContext;
|
||||||
import org.quartz.JobExecutionException;
|
import org.quartz.JobExecutionException;
|
||||||
@@ -17,6 +20,7 @@ import org.quartz.JobExecutionException;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author: Mzaxd
|
* @author: Mzaxd
|
||||||
@@ -33,6 +37,9 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
@Resource
|
@Resource
|
||||||
private ILawsOverseasStandardService fbService;
|
private ILawsOverseasStandardService fbService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ILawsCommonService commonService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
||||||
this.updateGbStandardState();
|
this.updateGbStandardState();
|
||||||
@@ -57,8 +64,16 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
esService.updateBatchById(needUpdateEsList);
|
esService.updateBatchById(needUpdateEsList);
|
||||||
|
// 代替标准状态改为废止
|
||||||
|
for (LawsEnterpriseStandard es : needUpdateEsList) {
|
||||||
|
Map<String, Object> esMap = commonService.getByIdAndModule(es.getId(), TableNameEnum.ENTERPRISE_STANDARDS.getValue(), "2", es.getStandardNumber());
|
||||||
|
esMap.put(FieldCommon.MODULE, TableNameEnum.ENTERPRISE_STANDARDS.getValue());
|
||||||
|
esMap.put(FieldCommon.STANDARD_STATE, StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
commonService.processReplaced(esMap, es.getStandardNumber(), TableNameEnum.ENTERPRISE_STANDARDS.getValue());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void updateGbStandardState(){
|
private void updateGbStandardState(){
|
||||||
// 国内标准状态更新
|
// 国内标准状态更新
|
||||||
List<LawsDomesticStandard> needUpdateGbList = new ArrayList<>();
|
List<LawsDomesticStandard> needUpdateGbList = new ArrayList<>();
|
||||||
@@ -69,6 +84,7 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
gbWrapper.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
gbWrapper.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
||||||
.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
List<LawsDomesticStandard> gbList = gbService.list(gbWrapper);
|
List<LawsDomesticStandard> gbList = gbService.list(gbWrapper);
|
||||||
|
List<LawsDomesticStandard> processReplaceList = new ArrayList<>();
|
||||||
for (LawsDomesticStandard gb : gbList) {
|
for (LawsDomesticStandard gb : gbList) {
|
||||||
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
||||||
if (gb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
if (gb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
||||||
@@ -81,9 +97,17 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
if (gb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
if (gb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
||||||
gb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
gb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
needUpdateGbList.add(gb);
|
needUpdateGbList.add(gb);
|
||||||
|
processReplaceList.add(gb);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
gbService.updateBatchById(needUpdateGbList);
|
gbService.updateBatchById(needUpdateGbList);
|
||||||
|
// 代替标准状态改为废止
|
||||||
|
for (LawsDomesticStandard standard : processReplaceList) {
|
||||||
|
Map<String, Object> map = commonService.getByIdAndModule(standard.getId(), TableNameEnum.DOMESTIC_REGULATIONS.getValue(), "2", standard.getStandardNumber());
|
||||||
|
map.put(FieldCommon.MODULE, TableNameEnum.DOMESTIC_REGULATIONS.getValue());
|
||||||
|
map.put(FieldCommon.STANDARD_STATE, StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
commonService.processReplaced(map, standard.getStandardNumber(), TableNameEnum.DOMESTIC_REGULATIONS.getValue());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateFbStandardState(){
|
private void updateFbStandardState(){
|
||||||
@@ -96,6 +120,7 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
fbWrapper.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
fbWrapper.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
||||||
.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
List<LawsOverseasStandard> fbList = fbService.list(fbWrapper);
|
List<LawsOverseasStandard> fbList = fbService.list(fbWrapper);
|
||||||
|
List<LawsOverseasStandard> processReplaceList = new ArrayList<>();
|
||||||
for (LawsOverseasStandard fb : fbList) {
|
for (LawsOverseasStandard fb : fbList) {
|
||||||
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
||||||
if (fb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
if (fb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
||||||
@@ -108,8 +133,16 @@ public class UpdateStandardStatusJob implements Job {
|
|||||||
if (fb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
if (fb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
||||||
fb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
fb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
needUpdateFbList.add(fb);
|
needUpdateFbList.add(fb);
|
||||||
|
processReplaceList.add(fb);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fbService.updateBatchById(needUpdateFbList);
|
fbService.updateBatchById(needUpdateFbList);
|
||||||
|
// 代替标准状态改为废止
|
||||||
|
for (LawsOverseasStandard standard : processReplaceList) {
|
||||||
|
Map<String, Object> map = commonService.getByIdAndModule(standard.getId(), TableNameEnum.FOREIGN_REGULATIONS.getValue(), "2", standard.getStandardNumber());
|
||||||
|
map.put(FieldCommon.MODULE, TableNameEnum.FOREIGN_REGULATIONS.getValue());
|
||||||
|
map.put(FieldCommon.STANDARD_STATE, StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
commonService.processReplaced(map, standard.getStandardNumber(), TableNameEnum.FOREIGN_REGULATIONS.getValue());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user