feat: 企标国标外标标准状态更新定时任务
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
|||||||
|
package com.jero.modules.laws.standard.entity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author: Mzaxd
|
||||||
|
* @Date: 2024/3/1 9:41
|
||||||
|
* @Description 外部标准状态
|
||||||
|
*/
|
||||||
|
public enum OutStandardStateEnum {
|
||||||
|
|
||||||
|
DRAFT("起草","1"),
|
||||||
|
SEEK_FOR_OPINIONS("征求意见","2"),
|
||||||
|
EXAMINE("审查","2.1"),
|
||||||
|
APPROVAL("报批","3"),
|
||||||
|
RELEASE("发布","4"),
|
||||||
|
TRIAL_OPERATION("即将实施","5"),
|
||||||
|
CURRENTLY_EFFECTIVE("现行有效","6"),
|
||||||
|
ABOLISH("废止","7"),
|
||||||
|
;
|
||||||
|
|
||||||
|
private final String stateName;
|
||||||
|
|
||||||
|
private final String stateValue;
|
||||||
|
|
||||||
|
OutStandardStateEnum(String stateName, String stateValue) {
|
||||||
|
this.stateName = stateName;
|
||||||
|
this.stateValue = stateValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStateName() {
|
||||||
|
return stateName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStateValue() {
|
||||||
|
return stateValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
+115
@@ -0,0 +1,115 @@
|
|||||||
|
package com.jero.modules.laws.standard.job;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||||
|
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
|
||||||
|
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
|
||||||
|
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||||
|
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
|
||||||
|
import com.jero.modules.laws.standard.entity.OutStandardStateEnum;
|
||||||
|
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
|
||||||
|
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
||||||
|
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
|
||||||
|
import org.quartz.Job;
|
||||||
|
import org.quartz.JobExecutionContext;
|
||||||
|
import org.quartz.JobExecutionException;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author: Mzaxd
|
||||||
|
* @Date: 2024/3/1 9:34
|
||||||
|
*/
|
||||||
|
public class UpdateStandardStatusJob implements Job {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ILawsEnterpriseStandardService esService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ILawsDomesticStandardService gbService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ILawsOverseasStandardService fbService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
||||||
|
this.updateGbStandardState();
|
||||||
|
this.updateFbStandardState();
|
||||||
|
this.updateEsStandardState();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateEsStandardState() {
|
||||||
|
// 企标状态更新
|
||||||
|
List<LawsEnterpriseStandard> needUpdateEsList = new ArrayList<>();
|
||||||
|
LambdaQueryWrapper<LawsEnterpriseStandard> esWrapper = new LambdaQueryWrapper<>();
|
||||||
|
esWrapper.eq(LawsEnterpriseStandard::getDelFlag, YesOrNoEnum.NO.getInteger());
|
||||||
|
esWrapper.isNotNull(LawsEnterpriseStandard::getReleaseDate);
|
||||||
|
esWrapper.isNotNull(LawsEnterpriseStandard::getImplementationDate);
|
||||||
|
esWrapper.eq(LawsEnterpriseStandard::getStandardState, StandardStateEnum.RELEASE.getStateValue());
|
||||||
|
List<LawsEnterpriseStandard> esList = esService.list(esWrapper);
|
||||||
|
for (LawsEnterpriseStandard es : esList) {
|
||||||
|
// 实施日期及之后的标准 状态更新为现行有效
|
||||||
|
if (es.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
||||||
|
es.setStandardState(StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
needUpdateEsList.add(es);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
esService.updateBatchById(needUpdateEsList);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateGbStandardState(){
|
||||||
|
// 国内标准状态更新
|
||||||
|
List<LawsDomesticStandard> needUpdateGbList = new ArrayList<>();
|
||||||
|
LambdaQueryWrapper<LawsDomesticStandard> gbWrapper = new LambdaQueryWrapper<>();
|
||||||
|
gbWrapper.eq(LawsDomesticStandard::getDelFlag, YesOrNoEnum.NO.getInteger());
|
||||||
|
gbWrapper.isNotNull(LawsDomesticStandard::getReleaseDate);
|
||||||
|
gbWrapper.isNotNull(LawsDomesticStandard::getImplementationDate);
|
||||||
|
gbWrapper.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
||||||
|
.eq(LawsDomesticStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
|
List<LawsDomesticStandard> gbList = gbService.list(gbWrapper);
|
||||||
|
for (LawsDomesticStandard gb : gbList) {
|
||||||
|
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
||||||
|
if (gb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
||||||
|
gb.getImplementationDate().getTime() >= System.currentTimeMillis()) {
|
||||||
|
gb.setStandardState(OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
|
needUpdateGbList.add(gb);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 实施日期及之后的标准 状态更新为现行有效
|
||||||
|
if (gb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
||||||
|
gb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
needUpdateGbList.add(gb);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gbService.updateBatchById(needUpdateGbList);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateFbStandardState(){
|
||||||
|
// 海外标准状态更新
|
||||||
|
List<LawsOverseasStandard> needUpdateFbList = new ArrayList<>();
|
||||||
|
LambdaQueryWrapper<LawsOverseasStandard> fbWrapper = new LambdaQueryWrapper<>();
|
||||||
|
fbWrapper.eq(LawsOverseasStandard::getDelFlag, YesOrNoEnum.NO.getInteger());
|
||||||
|
fbWrapper.isNotNull(LawsOverseasStandard::getReleaseDate);
|
||||||
|
fbWrapper.isNotNull(LawsOverseasStandard::getImplementationDate);
|
||||||
|
fbWrapper.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.RELEASE.getStateValue()).or()
|
||||||
|
.eq(LawsOverseasStandard::getStandardState, OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
|
List<LawsOverseasStandard> fbList = fbService.list(fbWrapper);
|
||||||
|
for (LawsOverseasStandard fb : fbList) {
|
||||||
|
// 介于创建时间和实施日期内的标准 状态更新为即将实施
|
||||||
|
if (fb.getCreateTime().getTime() <= System.currentTimeMillis() &&
|
||||||
|
fb.getImplementationDate().getTime() >= System.currentTimeMillis()) {
|
||||||
|
fb.setStandardState(OutStandardStateEnum.TRIAL_OPERATION.getStateValue());
|
||||||
|
needUpdateFbList.add(fb);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 实施日期及之后的标准 状态更新为现行有效
|
||||||
|
if (fb.getImplementationDate().getTime() <= System.currentTimeMillis()) {
|
||||||
|
fb.setStandardState(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue());
|
||||||
|
needUpdateFbList.add(fb);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fbService.updateBatchById(needUpdateFbList);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user