市场法规清单发布添加校验
This commit is contained in:
+7
@@ -26,4 +26,11 @@ public interface IProcessMarketStandardReleaseService extends IService<ProcessMa
|
|||||||
String generate(ProcessMarketStandardRelease scc, MultipartFile modelFile, MultipartFile splitFile) throws Exception;
|
String generate(ProcessMarketStandardRelease scc, MultipartFile modelFile, MultipartFile splitFile) throws Exception;
|
||||||
|
|
||||||
void flowListener(DelegateExecution delegateExecution);
|
void flowListener(DelegateExecution delegateExecution);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据id 判断数据的流程状态
|
||||||
|
* @param id
|
||||||
|
* @return boolean true:没有流程或流程已结束 false:有正在流转的流程
|
||||||
|
*/
|
||||||
|
boolean checkProcessStatus(String id);
|
||||||
}
|
}
|
||||||
|
|||||||
+23
@@ -34,6 +34,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static com.jero.modules.activiti.common.ActivitiCommon.PASS;
|
import static com.jero.modules.activiti.common.ActivitiCommon.PASS;
|
||||||
|
|
||||||
@@ -254,6 +255,28 @@ public class ProcessMarketStandardReleaseServiceImpl extends ServiceImpl<Process
|
|||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean checkProcessStatus(String id) {
|
||||||
|
LambdaQueryWrapper<ProcessMarketStandardRelease> queryWrapperMarketStandardRelease = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapperMarketStandardRelease.select(ProcessMarketStandardRelease::getProcessInstanceId);
|
||||||
|
queryWrapperMarketStandardRelease.eq(ProcessMarketStandardRelease::getManifestId,id);
|
||||||
|
List<ProcessMarketStandardRelease> listProcessMarketStandardRelease = list(queryWrapperMarketStandardRelease);
|
||||||
|
if(CollectionUtils.isEmpty(listProcessMarketStandardRelease)){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
List<String> listProcessInstanceId = listProcessMarketStandardRelease.stream()
|
||||||
|
.map(ProcessMarketStandardRelease::getProcessInstanceId).collect(Collectors.toList());
|
||||||
|
LambdaQueryWrapper<ProcessAll> queryProcessAll = new LambdaQueryWrapper<>();
|
||||||
|
queryProcessAll.in(ProcessAll::getProcessInstanceId,listProcessInstanceId);
|
||||||
|
queryProcessAll.eq(ProcessAll::getPrcStatus,"1");
|
||||||
|
long l = processAllService.count(queryProcessAll);
|
||||||
|
if(l > 0){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+16
-1
@@ -11,6 +11,7 @@ import com.jero.common.exception.JeroBootException;
|
|||||||
import com.jero.common.system.api.ISysBaseAPI;
|
import com.jero.common.system.api.ISysBaseAPI;
|
||||||
import com.jero.common.system.vo.DictModel;
|
import com.jero.common.system.vo.DictModel;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
|
import com.jero.modules.activiti.process.ms.service.IProcessMarketStandardReleaseService;
|
||||||
import com.jero.modules.laws.marketStandard.constans.MarketStandardConstants;
|
import com.jero.modules.laws.marketStandard.constans.MarketStandardConstants;
|
||||||
import com.jero.modules.laws.marketStandard.entity.LawsMarketStandard;
|
import com.jero.modules.laws.marketStandard.entity.LawsMarketStandard;
|
||||||
import com.jero.modules.laws.marketStandard.entity.LawsMarketStandardDetail;
|
import com.jero.modules.laws.marketStandard.entity.LawsMarketStandardDetail;
|
||||||
@@ -53,6 +54,8 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
private ILawsMarketStandardDetailService lawsMarketStandardDetailService;
|
private ILawsMarketStandardDetailService lawsMarketStandardDetailService;
|
||||||
@Resource
|
@Resource
|
||||||
private ISysBaseAPI sysBaseAPI;
|
private ISysBaseAPI sysBaseAPI;
|
||||||
|
@Resource
|
||||||
|
private IProcessMarketStandardReleaseService processMarketStandardReleaseService;
|
||||||
|
|
||||||
public static final String CLASS = "entity";
|
public static final String CLASS = "entity";
|
||||||
public static final String PARAMS = "params";
|
public static final String PARAMS = "params";
|
||||||
@@ -253,6 +256,12 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
&& !Objects.equals(sysUser.getId(),lawsMarketStandard.getAuthor())){
|
&& !Objects.equals(sysUser.getId(),lawsMarketStandard.getAuthor())){
|
||||||
return Result.error("没有权限");
|
return Result.error("没有权限");
|
||||||
}
|
}
|
||||||
|
// 验证是否已发起流程
|
||||||
|
boolean flag = processMarketStandardReleaseService.checkProcessStatus(id);
|
||||||
|
if(!flag){
|
||||||
|
return Result.error("当前数据已发布的流程未结束,不可重复发布");
|
||||||
|
}
|
||||||
|
|
||||||
// 获取不同版本的数据
|
// 获取不同版本的数据
|
||||||
LambdaQueryWrapper<LawsMarketStandard> queryLawsMarketStandard = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsMarketStandard> queryLawsMarketStandard = new LambdaQueryWrapper<>();
|
||||||
queryLawsMarketStandard.select(LawsMarketStandard::getId);
|
queryLawsMarketStandard.select(LawsMarketStandard::getId);
|
||||||
@@ -361,7 +370,13 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
||||||
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
|
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
|
||||||
&& !Objects.equals(lawsMarketStandardOld.getAuthor(),sysUser.getId())){
|
&& !Objects.equals(lawsMarketStandardOld.getAuthor(),sysUser.getId())){
|
||||||
throw new JeroBootException("没有权限");
|
return Result.error("没有权限");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 验证是否已发起流程
|
||||||
|
boolean flag = processMarketStandardReleaseService.checkProcessStatus(id);
|
||||||
|
if(!flag){
|
||||||
|
return Result.error("当前数据已发布的流程未结束,不可重复发布");
|
||||||
}
|
}
|
||||||
if(Objects.equals(lawsMarketStandardOld.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
|
if(Objects.equals(lawsMarketStandardOld.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
|
||||||
return Result.error("数据已发布");
|
return Result.error("数据已发布");
|
||||||
|
|||||||
Reference in New Issue
Block a user