manage: 添加 处置计划、药品关联删除校验

dev_2.1.0
xueqingkun
parent b5584d10b8
commit 7220ea635c

@ -8,7 +8,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.constant.DisposalPlanEnum; import com.supervision.manage.constant.DisposalPlanEnum;
import com.supervision.manage.service.ConfigTreatmentPlanManageService; import com.supervision.manage.service.ConfigTreatmentPlanManageService;
import com.supervision.model.ConfigTreatmentPlan; import com.supervision.model.ConfigTreatmentPlan;
import com.supervision.model.DiseaseTreatmentPlan;
import com.supervision.service.ConfigTreatmentPlanService; import com.supervision.service.ConfigTreatmentPlanService;
import com.supervision.service.DiseaseTreatmentPlanService;
import com.supervision.vo.manage.TreatmentPlanTreeNode; import com.supervision.vo.manage.TreatmentPlanTreeNode;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -22,6 +24,8 @@ public class ConfigTreatmentPlanManageServiceImpl implements ConfigTreatmentPlan
private final ConfigTreatmentPlanService configTreatmentPlanService; private final ConfigTreatmentPlanService configTreatmentPlanService;
private final DiseaseTreatmentPlanService diseaseTreatmentPlanService;
@Override @Override
public List<TreatmentPlanTreeNode> queryTree(Integer disposalMethod) { public List<TreatmentPlanTreeNode> queryTree(Integer disposalMethod) {
@ -60,10 +64,22 @@ public class ConfigTreatmentPlanManageServiceImpl implements ConfigTreatmentPlan
public boolean deleteTreatmentPlan(String id) { public boolean deleteTreatmentPlan(String id) {
Assert.notEmpty(id,"id 不允许为空"); Assert.notEmpty(id,"id 不允许为空");
assertTreatmentPlanUsed(id);
return configTreatmentPlanService.removeById(id); return configTreatmentPlanService.removeById(id);
} }
/**
* 使
* @param id id
* @return true:使 false:使
*/
public void assertTreatmentPlanUsed(String id){
// 有没有被疾病关联
boolean b = diseaseTreatmentPlanService.lambdaQuery()
.eq(DiseaseTreatmentPlan::getTreatmentPlanId, id).count() > 0;
Assert.isFalse(b,"处置计划已被疾病关联,不允许删除");
}
@Override @Override
public boolean updateTreatmentPlan(ConfigTreatmentPlan configDrug) { public boolean updateTreatmentPlan(ConfigTreatmentPlan configDrug) {

@ -1,13 +1,19 @@
package com.supervision.manage.service.impl; package com.supervision.manage.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert; import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.service.ConfigTreatmentPlanManageService;
import com.supervision.manage.service.DrugManageService; import com.supervision.manage.service.DrugManageService;
import com.supervision.model.ConfigDrug; import com.supervision.model.ConfigDrug;
import com.supervision.model.ConfigTreatmentPlan;
import com.supervision.model.DiseaseTreatmentPlanDrug;
import com.supervision.service.ConfigDrugService; import com.supervision.service.ConfigDrugService;
import com.supervision.service.ConfigTreatmentPlanService;
import com.supervision.service.DiseaseTreatmentPlanDrugService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -15,7 +21,9 @@ import org.springframework.stereotype.Service;
@RequiredArgsConstructor @RequiredArgsConstructor
public class DrugManageServiceImpl implements DrugManageService { public class DrugManageServiceImpl implements DrugManageService {
private final ConfigDrugService configDrugService;; private final ConfigDrugService configDrugService;
private final DiseaseTreatmentPlanDrugService diseaseTreatmentPlanDrugService;
@Override @Override
public ConfigDrug saveDrug(ConfigDrug configDrug) { public ConfigDrug saveDrug(ConfigDrug configDrug) {
Assert.notEmpty(configDrug.getDrugName(), "药品名称不能为空"); Assert.notEmpty(configDrug.getDrugName(), "药品名称不能为空");
@ -27,10 +35,18 @@ public class DrugManageServiceImpl implements DrugManageService {
@Override @Override
public boolean deleteDrugById(String id) { public boolean deleteDrugById(String id) {
Assert.notEmpty(id, "药品id不能为空"); Assert.notEmpty(id, "药品id不能为空");
assertDrugIsUsed(id);
return configDrugService.removeById(id); return configDrugService.removeById(id);
} }
public void assertDrugIsUsed(String id) {
boolean diseasePlanIsUsed = diseaseTreatmentPlanDrugService.lambdaQuery().eq(DiseaseTreatmentPlanDrug::getDrugId, id).count() > 0;
Assert.isFalse(diseasePlanIsUsed, "药品已经在疾病处置计划中使用");
}
@Override @Override
public boolean updateDrug(ConfigDrug configDrug) { public boolean updateDrug(ConfigDrug configDrug) {
Assert.notEmpty(configDrug.getId(), "药品id不能为空"); Assert.notEmpty(configDrug.getId(), "药品id不能为空");

Loading…
Cancel
Save