diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseaseController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseaseController.java index f90919f2..3bab51d2 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseaseController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseaseController.java @@ -1,12 +1,14 @@ package com.supervision.manage.controller; -import com.supervision.manage.pojo.vo.DiseaseVo; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.supervision.exception.BusinessException; +import com.supervision.model.Disease; +import com.supervision.vo.manage.DiseaseVo; import com.supervision.service.DiseaseService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.*; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; -import java.util.List; @Api(tags = "疾病管理") @RestController @@ -17,41 +19,42 @@ public class DiseaseController { private final DiseaseService diseaseService; - @ApiOperation("新增疾病") @PostMapping("/save") - public String saveDisease(@RequestBody DiseaseVo diseaseVo) { - - DiseaseVo diseaseVo1 = diseaseService.saveDisease(diseaseVo); - return "id"; + @ApiOperation("新增疾病") + @ApiModelProperty + public Disease saveDisease(@RequestBody Disease disease) { + return diseaseService.saveDisease(disease); } @ApiOperation("删除疾病") @DeleteMapping("/delete") - public String deleteDisease(@RequestBody DiseaseVo diseaseVo) { + public boolean deleteDisease(@RequestParam("疾病id") String id) { - DiseaseVo diseaseVo1 = diseaseService.saveDisease(diseaseVo); - return "id"; + if (StrUtil.isEmpty(id)){ + throw new BusinessException("id is not allow empty"); + } + return diseaseService.removeById(id); } @ApiOperation("修改辅助检查信息") @PutMapping("/update") - public String updateDisease(DiseaseVo diseaseVo) { + public boolean updateDisease(Disease disease) { - return null; + return diseaseService.updateDisease(disease); } @ApiOperation("查询疾病列表") @GetMapping("/queryPageList") - public List queryPageList(@RequestParam(defaultValue = "1")Integer pageNum, - @RequestParam(defaultValue = "1")Integer pageSize, - @RequestParam DiseaseVo diseaseVo) { + public Page queryPageList(@RequestParam(defaultValue = "1")Integer pageNum, + @RequestParam(defaultValue = "10")Integer pageSize, + @RequestParam DiseaseVo diseaseVo) { - return null; + return diseaseService.queryPageList(pageNum,pageSize,diseaseVo); } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseasePhysicalController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseasePhysicalController.java index 3e5a8f20..7f992d6d 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseasePhysicalController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/DiseasePhysicalController.java @@ -1,7 +1,7 @@ package com.supervision.manage.controller; -import com.supervision.manage.pojo.vo.DiseaseVo; +import com.supervision.vo.manage.DiseaseVo; import com.supervision.model.DiseasePhysical; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/virtual-patient-model/src/main/java/com/supervision/model/Disease.java b/virtual-patient-model/src/main/java/com/supervision/model/Disease.java index 20018545..c6b4c933 100644 --- a/virtual-patient-model/src/main/java/com/supervision/model/Disease.java +++ b/virtual-patient-model/src/main/java/com/supervision/model/Disease.java @@ -27,9 +27,8 @@ public class Disease implements Serializable { @TableId private String id; - /** - * 疾病名称 - */ + + @ApiModelProperty("疾病名称") private String diseaseName; /** @@ -58,21 +57,25 @@ public class Disease implements Serializable { /** * 创建人ID */ + @ApiModelProperty(hidden = true) private String createUserId; /** * 创建时间 */ + @ApiModelProperty(hidden = true) private LocalDateTime createTime; /** * 更新人 */ + @ApiModelProperty(hidden = true) private String updateUserId; /** * 更新时间 */ + @ApiModelProperty(hidden = true) private LocalDateTime updateTime; @TableField(exist = false) diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiseaseService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiseaseService.java index ee000b14..fbf76ce3 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiseaseService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiseaseService.java @@ -1,17 +1,28 @@ package com.supervision.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.supervision.model.Disease; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.vo.manage.DiseaseVo; +import org.springframework.web.bind.annotation.RequestParam; import java.util.List; /** -* @author flevance -* @description 针对表【vp_disease(疾病名称)】的数据库操作Service -* @createDate 2023-10-20 17:19:21 -*/ + * @author flevance + * @description 针对表【vp_disease(疾病名称)】的数据库操作Service + * @createDate 2023-10-20 17:19:21 + */ public interface DiseaseService extends IService { List listDiseaseWithType(String id); + + + Disease saveDisease(Disease disease); + + + boolean updateDisease(Disease disease); + + Page queryPageList(Integer pageNum, Integer pageSize, DiseaseVo diseaseVo); } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseServiceImpl.java index cde5d9eb..a6e23647 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseServiceImpl.java @@ -2,11 +2,15 @@ package com.supervision.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.exception.BusinessException; import com.supervision.model.Disease; import com.supervision.service.DiseaseService; import com.supervision.mapper.DiseaseMapper; +import com.supervision.vo.manage.DiseaseVo; import org.springframework.stereotype.Service; import java.util.List; @@ -34,6 +38,52 @@ public class DiseaseServiceImpl extends ServiceImpl return super.listByIds(disease.getContainDiseaseIds()); } + @Override + public Disease saveDisease(Disease disease) { + + if (StrUtil.isEmpty(disease.getDiseaseName())){ + throw new BusinessException("diseaseName is not allow empty"); + } + if (CollUtil.isNotEmpty(this.queryByCode(disease.getCode()))){ + throw new BusinessException("类目编码: "+disease.getCode()+" 已存在"); + } + + disease.setId(null); + disease.setStatus(0); + super.save(disease); + + return disease; + + } + + @Override + public boolean updateDisease(Disease disease) { + + if (StrUtil.isEmpty(disease.getId())){ + throw new BusinessException("id is not allow empty"); + } + + return super.updateById(disease); + + } + + @Override + public Page queryPageList(Integer pageNum, Integer pageSize, DiseaseVo diseaseVo) { + + + LambdaQueryChainWrapper wrapper = this.lambdaQuery() + .like(StrUtil.isNotEmpty(diseaseVo.getDiseaseName()), Disease::getDiseaseName, diseaseVo.getDiseaseName()); + + return super.page(new Page<>(pageNum, pageSize), wrapper); + } + + + private List queryByCode(String code){ + if (Objects.isNull(code)){ + throw new BusinessException("code is not allow empty"); + } + return super.lambdaQuery().eq(Disease::getCode,code).list(); + } private boolean isCompositeDisease(Disease disease){ diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/pojo/vo/DiseaseVo.java b/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseVo.java similarity index 89% rename from virtual-patient-manage/src/main/java/com/supervision/manage/pojo/vo/DiseaseVo.java rename to virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseVo.java index cfc61e58..ff31d908 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/pojo/vo/DiseaseVo.java +++ b/virtual-patient-model/src/main/java/com/supervision/vo/manage/DiseaseVo.java @@ -1,4 +1,4 @@ -package com.supervision.manage.pojo.vo; +package com.supervision.vo.manage; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty;