项目库加删除校验
This commit is contained in:
+6
-4
@@ -99,8 +99,9 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
|
||||
@AutoLog(value = "项目库基础表-通过id删除")
|
||||
@ApiOperation(value="项目库基础表-通过id删除", notes="项目库基础表-通过id删除")
|
||||
@DeleteMapping(value = "/delete")
|
||||
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
|
||||
projectLibraryBaseService.deleteById(id);
|
||||
public Result<?> delete(@RequestParam(name="id",required=true) String id,
|
||||
@RequestParam(name="cut",required=true) String cut) {
|
||||
projectLibraryBaseService.deleteById(id,cut);
|
||||
return Result.OK("删除成功!");
|
||||
}
|
||||
|
||||
@@ -113,8 +114,9 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
|
||||
@AutoLog(value = "项目库基础表-批量删除")
|
||||
@ApiOperation(value="项目库基础表-批量删除", notes="项目库基础表-批量删除")
|
||||
@DeleteMapping(value = "/deleteBatch")
|
||||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
||||
this.projectLibraryBaseService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids,
|
||||
@RequestParam(name="cut",required=true) String cut) {
|
||||
this.projectLibraryBaseService.deleteByIds(Arrays.asList(ids.split(",")),cut);
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
|
||||
+4
-2
@@ -40,7 +40,7 @@ public interface IProjectLibraryBaseService extends IService<ProjectLibraryBase>
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
void deleteById(String id, String cut);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
@@ -48,7 +48,7 @@ public interface IProjectLibraryBaseService extends IService<ProjectLibraryBase>
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
void deleteByIds(List<String> ids,String cut);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
@@ -87,4 +87,6 @@ public interface IProjectLibraryBaseService extends IService<ProjectLibraryBase>
|
||||
Map<String, Object> getProjectDetailsStatisticsGroupByTerritory(Map<String, Object> params);
|
||||
|
||||
void exportProjectDetailsStatisticsGroupByTerritoryXls(HttpServletResponse response, HttpServletRequest request, Map<String, Object> params);
|
||||
|
||||
void checkData(String id, String cut);
|
||||
}
|
||||
|
||||
+68
-4
@@ -111,8 +111,10 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
QueryWrapper<ProjectLibraryBase> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("project_name_id",projectNameId)
|
||||
.eq("year_name_id",yearNameId)
|
||||
.eq("target_market",targetMarket)
|
||||
.ne("id",projectLibraryBase.getId());
|
||||
.eq("target_market",targetMarket);
|
||||
if(StringUtils.isNotBlank(projectLibraryBase.getId())){
|
||||
queryWrapper.ne("id",projectLibraryBase.getId());
|
||||
}
|
||||
Integer count = projectLibraryBaseMapper.selectCount(queryWrapper);
|
||||
if (count > 0) {
|
||||
if(CutEnum.CN.getValue().equals(projectLibraryBase.getCut())) {
|
||||
@@ -146,10 +148,69 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
public void deleteById(String id,String cut) {
|
||||
checkData(id,cut);
|
||||
removeById(id);
|
||||
}
|
||||
|
||||
/*
|
||||
* 判断是否可以删除
|
||||
*/
|
||||
@Override
|
||||
public void checkData(String id, String cut) {
|
||||
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryQueryWrapper = new QueryWrapper<>();
|
||||
lawsInventoryQueryWrapper.eq("project_library_id",id);
|
||||
List<ProjectLawsInventoryEO> lawsInventoryRecords = projectLawsInventoryEOMapper.selectList(lawsInventoryQueryWrapper);
|
||||
for(ProjectLawsInventoryEO projectLawsInventoryEO : lawsInventoryRecords){
|
||||
String inventoryAffirmStatus = projectLawsInventoryEO.getInventoryAffirmStatus();//清单确认状态
|
||||
//清单确认状态(未发起、接受、拒绝)
|
||||
boolean inventoryAffirmFlag = (
|
||||
org.apache.commons.lang3.StringUtils.equals(inventoryAffirmStatus,TaskAffirmStatusEnum.NOT_STARTED.getValue()) ||
|
||||
org.apache.commons.lang3.StringUtils.equals(inventoryAffirmStatus,TaskAffirmStatusEnum.ACCEPTED.getValue()) ||
|
||||
org.apache.commons.lang3.StringUtils.equals(inventoryAffirmStatus,TaskAffirmStatusEnum.REJECTED.getValue())
|
||||
);
|
||||
|
||||
String taskAffirmStatus = projectLawsInventoryEO.getTaskAffirmStatus();//任务确认状态
|
||||
//任务确认状态(未发起、接受、拒绝)
|
||||
boolean taskAffirmFlag = (
|
||||
org.apache.commons.lang3.StringUtils.equals(taskAffirmStatus,TaskAffirmStatusEnum.NOT_STARTED.getValue()) ||
|
||||
org.apache.commons.lang3.StringUtils.equals(taskAffirmStatus,TaskAffirmStatusEnum.ACCEPTED.getValue()) ||
|
||||
org.apache.commons.lang3.StringUtils.equals(taskAffirmStatus,TaskAffirmStatusEnum.REJECTED.getValue())
|
||||
);
|
||||
|
||||
if (!(inventoryAffirmFlag && taskAffirmFlag)) {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("数据不能删除");
|
||||
}else{
|
||||
throw new JeroBootException("Data cannot be deleted.");
|
||||
}
|
||||
}
|
||||
|
||||
String lawsInventoryId = projectLawsInventoryEO.getId();
|
||||
|
||||
QueryWrapper<ProjectTaskInventoryEO> taskInventoryQueryWrapper = new QueryWrapper<>();
|
||||
taskInventoryQueryWrapper.eq("project_laws_inventory_id",lawsInventoryId);
|
||||
List<ProjectTaskInventoryEO> taskInventoryRecords = projectTaskInventoryEOMapper.selectList(taskInventoryQueryWrapper);
|
||||
//设计、验证、prehomo流程(流程状态是空 或 审查完成)
|
||||
for(ProjectTaskInventoryEO projectTaskInventoryEO : taskInventoryRecords){
|
||||
String designStatus = projectTaskInventoryEO.getDesignStatus();
|
||||
String verifyStatus = projectTaskInventoryEO.getVerifyStatus();
|
||||
String prehomoStatus = projectTaskInventoryEO.getPrehomoStatus();
|
||||
|
||||
boolean designStatusFlag = StringUtils.isBlank(designStatus) || designStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
boolean verifyStatusFlag = StringUtils.isBlank(verifyStatus) || verifyStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
boolean prehomoStatusFlag = StringUtils.isBlank(prehomoStatus) || prehomoStatus.equals(DesignComplianceStatusEnum.REVIEW_COMPLETED.getValue());
|
||||
|
||||
if (!(designStatusFlag && verifyStatusFlag && prehomoStatusFlag)) {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("数据不能删除");
|
||||
}else{
|
||||
throw new JeroBootException("Data cannot be deleted.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
@@ -157,7 +218,10 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
public void deleteByIds(List<String> ids,String cut) {
|
||||
for(String id :ids){
|
||||
checkData(id,cut);
|
||||
}
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user