reg_diagnosis

This commit is contained in:
tangw 2025-11-11 10:27:06 +08:00
parent fbba8edaf6
commit cdde2e7124
10 changed files with 627 additions and 44 deletions

View File

@ -238,4 +238,28 @@ CREATE TABLE [dbo].[reg_hospital](
ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT ('') FOR [create_by] ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT ('') FOR [create_by]
ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT ('') FOR [update_by] ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT ('') FOR [update_by]
ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT (NULL) FOR [remark] ALTER TABLE [dbo].[reg_hospital] ADD DEFAULT (NULL) FOR [remark]
end
if not exists(SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'reg_diagnosis')
begin
CREATE TABLE [dbo].[reg_diagnosis](
[diag_id] [bigint] IDENTITY(1,1) NOT NULL,
[diag_code] [varchar](64) NOT NULL,
[diag_name] [varchar](50) NOT NULL,
[diag_sort] [int] NOT NULL,
[status] [char](1) NOT NULL,
[create_by] [varchar](64) NULL,
[create_time] [datetime] NULL,
[update_by] [varchar](64) NULL,
[update_time] [datetime] NULL,
[remark] [varchar](500) NULL,
PRIMARY KEY CLUSTERED
(
[diag_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
ALTER TABLE [dbo].[reg_diagnosis] ADD DEFAULT ('') FOR [create_by]
ALTER TABLE [dbo].[reg_diagnosis] ADD DEFAULT ('') FOR [update_by]
ALTER TABLE [dbo].[reg_diagnosis] ADD DEFAULT (NULL) FOR [remark]
end end

View File

@ -0,0 +1,107 @@
package com.czlis.transitPF.controller.dict;
import com.czlis.common.annotation.Log;
import com.czlis.common.core.controller.BaseController;
import com.czlis.common.core.domain.AjaxResult;
import com.czlis.common.core.page.TableDataInfo;
import com.czlis.common.enums.BusinessType;
import com.czlis.common.utils.poi.ExcelUtil;
import com.czlis.transitPF.pojo.RegDiagnosis;
import com.czlis.transitPF.service.RegDiagnosisService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@Api(tags = "区域检验中心-诊断字典管理")
@RestController
@RequestMapping("/transitdict/diagnosis")
@Slf4j
public class DiagnosisController extends BaseController {
@Autowired
private RegDiagnosisService regDiagnosisService;
/**
* 获取诊断列表
*/
@ApiOperation("获取诊断列表")
@GetMapping("/list")
public TableDataInfo list(RegDiagnosis post) {
startPage();
List<RegDiagnosis> list = regDiagnosisService.selectDiagnosisList(post);
return getDataTable(list);
}
@ApiOperation("诊断导出")
@Log(title = "诊断导出", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, RegDiagnosis post) {
List<RegDiagnosis> list = regDiagnosisService.selectDiagnosisList(post);
ExcelUtil<RegDiagnosis> util = new ExcelUtil<>(RegDiagnosis.class);
util.exportExcel(response, list, "诊断数据");
}
/**
* 根据诊断编号获取详细信息
*/
@ApiOperation("获取详细信息")
@GetMapping(value = "/{diagnosisId}")
public AjaxResult getInfo(@PathVariable Long diagnosisId) {
return success(regDiagnosisService.selectDiagnosisById(diagnosisId));
}
/**
* 新增诊断
*/
@ApiOperation("新增诊断")
@Log(title = "诊断管理", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@Validated @RequestBody RegDiagnosis post) {
if (!regDiagnosisService.checkDiagnosisNameUnique(post)) {
return error("新增诊断'" + post.getDiagName() + "'失败,诊断名称已存在");
} else if (!regDiagnosisService.checkDiagnosisCodeUnique(post)) {
return error("新增诊断'" + post.getDiagName() + "'失败,诊断编码已存在");
}
post.setCreateBy(getUsername());
return toAjax(regDiagnosisService.insertDiagnosis(post));
}
/**
* 修改诊断
*/
@ApiOperation("修改诊断")
@Log(title = "诊断管理", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@Validated @RequestBody RegDiagnosis post) {
if (!regDiagnosisService.checkDiagnosisNameUnique(post)) {
return error("修改诊断'" + post.getDiagName() + "'失败,诊断名称已存在");
} else if (!regDiagnosisService.checkDiagnosisCodeUnique(post)) {
return error("修改诊断'" + post.getDiagName() + "'失败,诊断编码已存在");
}
post.setUpdateBy(getUsername());
return toAjax(regDiagnosisService.updateDiagnosis(post));
}
/**
* 删除诊断
*/
@ApiOperation("删除诊断")
@Log(title = "诊断管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{diagnosisIds}")
public AjaxResult remove(@PathVariable Long[] diagnosisIds) {
return toAjax(regDiagnosisService.deleteDiagnosisByIds(diagnosisIds));
}
/**
* 获取诊断选择框列表
*/
@ApiOperation("获取诊断选择框列表")
@GetMapping("/optionselect")
public AjaxResult optionselect() {
List<RegDiagnosis> posts = regDiagnosisService.selectDiagnosisAll();
return success(posts);
}
}

View File

@ -24,7 +24,7 @@ import java.util.List;
@Slf4j @Slf4j
public class HospitalController extends BaseController { public class HospitalController extends BaseController {
@Autowired @Autowired
private RegHospitalService sysHospitalService; private RegHospitalService regHospitalService;
/** /**
* 获取医疗机构列表 * 获取医疗机构列表
*/ */
@ -32,14 +32,14 @@ public class HospitalController extends BaseController {
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo list(RegHospital post) { public TableDataInfo list(RegHospital post) {
startPage(); startPage();
List<RegHospital> list = sysHospitalService.selectHospitalList(post); List<RegHospital> list = regHospitalService.selectHospitalList(post);
return getDataTable(list); return getDataTable(list);
} }
@ApiOperation("医疗机构导出") @ApiOperation("医疗机构导出")
@Log(title = "医疗机构导出", businessType = BusinessType.EXPORT) @Log(title = "医疗机构导出", businessType = BusinessType.EXPORT)
@PostMapping("/export") @PostMapping("/export")
public void export(HttpServletResponse response, RegHospital post) { public void export(HttpServletResponse response, RegHospital post) {
List<RegHospital> list = sysHospitalService.selectHospitalList(post); List<RegHospital> list = regHospitalService.selectHospitalList(post);
ExcelUtil<RegHospital> util = new ExcelUtil<>(RegHospital.class); ExcelUtil<RegHospital> util = new ExcelUtil<>(RegHospital.class);
util.exportExcel(response, list, "医疗机构数据"); util.exportExcel(response, list, "医疗机构数据");
} }
@ -50,7 +50,7 @@ public class HospitalController extends BaseController {
@ApiOperation("获取详细信息") @ApiOperation("获取详细信息")
@GetMapping(value = "/{hospitalId}") @GetMapping(value = "/{hospitalId}")
public AjaxResult getInfo(@PathVariable Long hospitalId) { public AjaxResult getInfo(@PathVariable Long hospitalId) {
return success(sysHospitalService.selectHospitalById(hospitalId)); return success(regHospitalService.selectHospitalById(hospitalId));
} }
/** /**
@ -60,13 +60,13 @@ public class HospitalController extends BaseController {
@Log(title = "医疗机构管理", businessType = BusinessType.INSERT) @Log(title = "医疗机构管理", businessType = BusinessType.INSERT)
@PostMapping @PostMapping
public AjaxResult add(@Validated @RequestBody RegHospital post) { public AjaxResult add(@Validated @RequestBody RegHospital post) {
if (!sysHospitalService.checkHospitalNameUnique(post)) { if (!regHospitalService.checkHospitalNameUnique(post)) {
return error("新增医疗机构'" + post.getHospitalName() + "'失败,医疗机构名称已存在"); return error("新增医疗机构'" + post.getHospitalName() + "'失败,医疗机构名称已存在");
} else if (!sysHospitalService.checkHospitalCodeUnique(post)) { } else if (!regHospitalService.checkHospitalCodeUnique(post)) {
return error("新增医疗机构'" + post.getHospitalName() + "'失败,医疗机构编码已存在"); return error("新增医疗机构'" + post.getHospitalName() + "'失败,医疗机构编码已存在");
} }
post.setCreateBy(getUsername()); post.setCreateBy(getUsername());
return toAjax(sysHospitalService.insertHospital(post)); return toAjax(regHospitalService.insertHospital(post));
} }
/** /**
@ -76,13 +76,13 @@ public class HospitalController extends BaseController {
@Log(title = "医疗机构管理", businessType = BusinessType.UPDATE) @Log(title = "医疗机构管理", businessType = BusinessType.UPDATE)
@PutMapping @PutMapping
public AjaxResult edit(@Validated @RequestBody RegHospital post) { public AjaxResult edit(@Validated @RequestBody RegHospital post) {
if (!sysHospitalService.checkHospitalNameUnique(post)) { if (!regHospitalService.checkHospitalNameUnique(post)) {
return error("修改医疗机构'" + post.getHospitalName() + "'失败,医疗机构名称已存在"); return error("修改医疗机构'" + post.getHospitalName() + "'失败,医疗机构名称已存在");
} else if (!sysHospitalService.checkHospitalCodeUnique(post)) { } else if (!regHospitalService.checkHospitalCodeUnique(post)) {
return error("修改医疗机构'" + post.getHospitalName() + "'失败,医疗机构编码已存在"); return error("修改医疗机构'" + post.getHospitalName() + "'失败,医疗机构编码已存在");
} }
post.setUpdateBy(getUsername()); post.setUpdateBy(getUsername());
return toAjax(sysHospitalService.updateHospital(post)); return toAjax(regHospitalService.updateHospital(post));
} }
/** /**
@ -92,7 +92,7 @@ public class HospitalController extends BaseController {
@Log(title = "医疗机构管理", businessType = BusinessType.DELETE) @Log(title = "医疗机构管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{hospitalIds}") @DeleteMapping("/{hospitalIds}")
public AjaxResult remove(@PathVariable Long[] hospitalIds) { public AjaxResult remove(@PathVariable Long[] hospitalIds) {
return toAjax(sysHospitalService.deleteHospitalByIds(hospitalIds)); return toAjax(regHospitalService.deleteHospitalByIds(hospitalIds));
} }
/** /**
@ -101,7 +101,7 @@ public class HospitalController extends BaseController {
@ApiOperation("获取医疗机构选择框列表") @ApiOperation("获取医疗机构选择框列表")
@GetMapping("/optionselect") @GetMapping("/optionselect")
public AjaxResult optionselect() { public AjaxResult optionselect() {
List<RegHospital> posts = sysHospitalService.selectHospitalAll(); List<RegHospital> posts = regHospitalService.selectHospitalAll();
return success(posts); return success(posts);
} }
} }

View File

@ -0,0 +1,79 @@
package com.czlis.transitPF.mapper;
import com.czlis.transitPF.pojo.RegDiagnosis;
import java.util.List;
public interface RegDiagnosisMapper {
/**
* 查询诊断数据集合
*
* @param Diagnosis 诊断信息
* @return 诊断数据集合
*/
List<RegDiagnosis> selectDiagnosisList(RegDiagnosis Diagnosis);
/**
* 查询所有诊断
*
* @return 诊断列表
*/
List<RegDiagnosis> selectDiagnosisAll();
/**
* 通过诊断ID查询诊断信息
*
* @param DiagnosisId 诊断ID
* @return 角色对象信息
*/
RegDiagnosis selectDiagnosisById(Long DiagnosisId);
/**
* 删除诊断信息
*
* @param DiagnosisId 诊断ID
* @return 结果
*/
int deleteDiagnosisById(Long DiagnosisId);
/**
* 批量删除诊断信息
*
* @param DiagnosisIds 需要删除的诊断ID
* @return 结果
*/
int deleteDiagnosisByIds(Long[] DiagnosisIds);
/**
* 修改诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
int updateDiagnosis(RegDiagnosis Diagnosis);
/**
* 新增诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
int insertDiagnosis(RegDiagnosis Diagnosis);
/**
* 校验诊断名称
*
* @param DiagnosisName 诊断名称
* @return 结果
*/
RegDiagnosis checkDiagnosisNameUnique(String DiagnosisName);
/**
* 校验诊断编码
*
* @param DiagnosisCode 诊断编码
* @return 结果
*/
RegDiagnosis checkDiagnosisCodeUnique(String DiagnosisCode);
}

View File

@ -11,14 +11,14 @@ public interface RegHospitalMapper {
* @param hospital 医疗机构信息 * @param hospital 医疗机构信息
* @return 医疗机构数据集合 * @return 医疗机构数据集合
*/ */
public List<RegHospital> selectHospitalList(RegHospital hospital); List<RegHospital> selectHospitalList(RegHospital hospital);
/** /**
* 查询所有医疗机构 * 查询所有医疗机构
* *
* @return 医疗机构列表 * @return 医疗机构列表
*/ */
public List<RegHospital> selectHospitalAll(); List<RegHospital> selectHospitalAll();
/** /**
* 通过医疗机构ID查询医疗机构信息 * 通过医疗机构ID查询医疗机构信息
@ -26,22 +26,12 @@ public interface RegHospitalMapper {
* @param hospitalId 医疗机构ID * @param hospitalId 医疗机构ID
* @return 角色对象信息 * @return 角色对象信息
*/ */
public RegHospital selectHospitalById(Long hospitalId); RegHospital selectHospitalById(Long hospitalId);
/**
* 根据用户ID获取医疗机构选择框列表
*
* @param userId 用户ID
* @return 选中医疗机构ID列表
*/
// public List<Long> selectHospitalListByUserId(Long userId); // public List<Long> selectHospitalListByUserId(Long userId);
/**
* 查询用户所属医疗机构组
*
* @param userName 用户名
* @return 结果
*/
// public List<SysHospital> selectHospitalsByUserName(String userName); // public List<SysHospital> selectHospitalsByUserName(String userName);
/** /**
@ -50,7 +40,7 @@ public interface RegHospitalMapper {
* @param hospitalId 医疗机构ID * @param hospitalId 医疗机构ID
* @return 结果 * @return 结果
*/ */
public int deleteHospitalById(Long hospitalId); int deleteHospitalById(Long hospitalId);
/** /**
* 批量删除医疗机构信息 * 批量删除医疗机构信息
@ -58,7 +48,7 @@ public interface RegHospitalMapper {
* @param hospitalIds 需要删除的医疗机构ID * @param hospitalIds 需要删除的医疗机构ID
* @return 结果 * @return 结果
*/ */
public int deleteHospitalByIds(Long[] hospitalIds); int deleteHospitalByIds(Long[] hospitalIds);
/** /**
* 修改医疗机构信息 * 修改医疗机构信息
@ -66,7 +56,7 @@ public interface RegHospitalMapper {
* @param hospital 医疗机构信息 * @param hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public int updateHospital(RegHospital hospital); int updateHospital(RegHospital hospital);
/** /**
* 新增医疗机构信息 * 新增医疗机构信息
@ -74,7 +64,7 @@ public interface RegHospitalMapper {
* @param hospital 医疗机构信息 * @param hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public int insertHospital(RegHospital hospital); int insertHospital(RegHospital hospital);
/** /**
* 校验医疗机构名称 * 校验医疗机构名称
@ -82,7 +72,7 @@ public interface RegHospitalMapper {
* @param hospitalName 医疗机构名称 * @param hospitalName 医疗机构名称
* @return 结果 * @return 结果
*/ */
public RegHospital checkHospitalNameUnique(String hospitalName); RegHospital checkHospitalNameUnique(String hospitalName);
/** /**
* 校验医疗机构编码 * 校验医疗机构编码
@ -90,5 +80,5 @@ public interface RegHospitalMapper {
* @param hospitalCode 医疗机构编码 * @param hospitalCode 医疗机构编码
* @return 结果 * @return 结果
*/ */
public RegHospital checkHospitalCodeUnique(String hospitalCode); RegHospital checkHospitalCodeUnique(String hospitalCode);
} }

View File

@ -0,0 +1,40 @@
package com.czlis.transitPF.pojo;
import com.czlis.common.annotation.Excel;
import com.czlis.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RegDiagnosis extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 诊断序号
*/
@Excel(name = "诊断序号", cellType = Excel.ColumnType.NUMERIC)
private Long diagId;
/**
* 诊断编码
*/
@Excel(name = "诊断编码")
private String diagCode;
/**
* 诊断名称
*/
@Excel(name = "诊断名称")
private String diagName;
/**
* 诊断排序
*/
@Excel(name = "排序")
private Long diagSort;
/**
* 状态(0正常 1停用)
*/
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
}

View File

@ -0,0 +1,87 @@
package com.czlis.transitPF.service;
import com.czlis.transitPF.pojo.RegDiagnosis;
import java.util.List;
public interface RegDiagnosisService {
/**
* 查询诊断信息集合
*
* @param Diagnosis 诊断信息
* @return 诊断列表
*/
List<RegDiagnosis> selectDiagnosisList(RegDiagnosis Diagnosis);
/**
* 查询所有诊断
*
* @return 诊断列表
*/
List<RegDiagnosis> selectDiagnosisAll();
/**
* 通过诊断ID查询诊断信息
*
* @param DiagnosisId 诊断ID
* @return 角色对象信息
*/
RegDiagnosis selectDiagnosisById(Long DiagnosisId);
/**
* 校验诊断名称
*
* @param Diagnosis 诊断信息
* @return 结果
*/
boolean checkDiagnosisNameUnique(RegDiagnosis Diagnosis);
/**
* 校验诊断编码
*
* @param Diagnosis 诊断信息
* @return 结果
*/
boolean checkDiagnosisCodeUnique(RegDiagnosis Diagnosis);
/**
* 通过诊断ID查询诊断使用数量
*
* @param DiagnosisId 诊断ID
* @return 结果
*/
int countUserDiagnosisById(Long DiagnosisId);
/**
* 删除诊断信息
*
* @param DiagnosisId 诊断ID
* @return 结果
*/
int deleteDiagnosisById(Long DiagnosisId);
/**
* 批量删除诊断信息
*
* @param DiagnosisIds 需要删除的诊断ID
* @return 结果
*/
int deleteDiagnosisByIds(Long[] DiagnosisIds);
/**
* 新增保存诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
int insertDiagnosis(RegDiagnosis Diagnosis);
/**
* 修改保存诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
int updateDiagnosis(RegDiagnosis Diagnosis);
}

View File

@ -11,14 +11,14 @@ public interface RegHospitalService {
* @param Hospital 医疗机构信息 * @param Hospital 医疗机构信息
* @return 医疗机构列表 * @return 医疗机构列表
*/ */
public List<RegHospital> selectHospitalList(RegHospital Hospital); List<RegHospital> selectHospitalList(RegHospital Hospital);
/** /**
* 查询所有医疗机构 * 查询所有医疗机构
* *
* @return 医疗机构列表 * @return 医疗机构列表
*/ */
public List<RegHospital> selectHospitalAll(); List<RegHospital> selectHospitalAll();
/** /**
* 通过医疗机构ID查询医疗机构信息 * 通过医疗机构ID查询医疗机构信息
@ -26,7 +26,7 @@ public interface RegHospitalService {
* @param HospitalId 医疗机构ID * @param HospitalId 医疗机构ID
* @return 角色对象信息 * @return 角色对象信息
*/ */
public RegHospital selectHospitalById(Long HospitalId); RegHospital selectHospitalById(Long HospitalId);
/** /**
* 根据用户ID获取医疗机构选择框列表 * 根据用户ID获取医疗机构选择框列表
@ -34,7 +34,7 @@ public interface RegHospitalService {
* @param userId 用户ID * @param userId 用户ID
* @return 选中医疗机构ID列表 * @return 选中医疗机构ID列表
*/ */
public List<Long> selectHospitalListByUserId(Long userId); List<Long> selectHospitalListByUserId(Long userId);
/** /**
* 校验医疗机构名称 * 校验医疗机构名称
@ -42,7 +42,7 @@ public interface RegHospitalService {
* @param Hospital 医疗机构信息 * @param Hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public boolean checkHospitalNameUnique(RegHospital Hospital); boolean checkHospitalNameUnique(RegHospital Hospital);
/** /**
* 校验医疗机构编码 * 校验医疗机构编码
@ -50,7 +50,7 @@ public interface RegHospitalService {
* @param Hospital 医疗机构信息 * @param Hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public boolean checkHospitalCodeUnique(RegHospital Hospital); boolean checkHospitalCodeUnique(RegHospital Hospital);
/** /**
* 通过医疗机构ID查询医疗机构使用数量 * 通过医疗机构ID查询医疗机构使用数量
@ -58,7 +58,7 @@ public interface RegHospitalService {
* @param HospitalId 医疗机构ID * @param HospitalId 医疗机构ID
* @return 结果 * @return 结果
*/ */
public int countUserHospitalById(Long HospitalId); int countUserHospitalById(Long HospitalId);
/** /**
* 删除医疗机构信息 * 删除医疗机构信息
@ -66,7 +66,7 @@ public interface RegHospitalService {
* @param HospitalId 医疗机构ID * @param HospitalId 医疗机构ID
* @return 结果 * @return 结果
*/ */
public int deleteHospitalById(Long HospitalId); int deleteHospitalById(Long HospitalId);
/** /**
* 批量删除医疗机构信息 * 批量删除医疗机构信息
@ -74,7 +74,7 @@ public interface RegHospitalService {
* @param HospitalIds 需要删除的医疗机构ID * @param HospitalIds 需要删除的医疗机构ID
* @return 结果 * @return 结果
*/ */
public int deleteHospitalByIds(Long[] HospitalIds); int deleteHospitalByIds(Long[] HospitalIds);
/** /**
* 新增保存医疗机构信息 * 新增保存医疗机构信息
@ -82,7 +82,7 @@ public interface RegHospitalService {
* @param Hospital 医疗机构信息 * @param Hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public int insertHospital(RegHospital Hospital); int insertHospital(RegHospital Hospital);
/** /**
* 修改保存医疗机构信息 * 修改保存医疗机构信息
@ -90,5 +90,5 @@ public interface RegHospitalService {
* @param Hospital 医疗机构信息 * @param Hospital 医疗机构信息
* @return 结果 * @return 结果
*/ */
public int updateHospital(RegHospital Hospital); int updateHospital(RegHospital Hospital);
} }

View File

@ -0,0 +1,146 @@
package com.czlis.transitPF.service.impl;
import com.czlis.common.constant.UserConstants;
import com.czlis.common.exception.ServiceException;
import com.czlis.common.utils.StringUtils;
import com.czlis.transitPF.mapper.RegDiagnosisMapper;
import com.czlis.transitPF.pojo.RegDiagnosis;
import com.czlis.transitPF.service.RegDiagnosisService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@Slf4j
public class RegDiagnosisServiceImpl implements RegDiagnosisService {
@Autowired
RegDiagnosisMapper diagnosisMapper;
/**
* 查询诊断信息集合
*
* @param Diagnosis 诊断信息
* @return 诊断信息集合
*/
@Override
public List<RegDiagnosis> selectDiagnosisList(RegDiagnosis Diagnosis) {
return diagnosisMapper.selectDiagnosisList(Diagnosis);
}
/**
* 查询所有诊断
*
* @return 诊断列表
*/
@Override
public List<RegDiagnosis> selectDiagnosisAll() {
return diagnosisMapper.selectDiagnosisAll();
}
/**
* 通过诊断ID查询诊断信息
*
* @param DiagnosisId 诊断ID
* @return 角色对象信息
*/
@Override
public RegDiagnosis selectDiagnosisById(Long DiagnosisId) {
return diagnosisMapper.selectDiagnosisById(DiagnosisId);
}
/**
* 校验诊断名称是否唯一
*
* @param Diagnosis 诊断信息
* @return 结果
*/
@Override
public boolean checkDiagnosisNameUnique(RegDiagnosis Diagnosis) {
Long DiagnosisId = StringUtils.isNull(Diagnosis.getDiagId()) ? -1L : Diagnosis.getDiagId();
RegDiagnosis info = diagnosisMapper.checkDiagnosisNameUnique(Diagnosis.getDiagName());
if (StringUtils.isNotNull(info) && info.getDiagId().longValue() != DiagnosisId.longValue()) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 校验诊断编码是否唯一
*
* @param Diagnosis 诊断信息
* @return 结果
*/
@Override
public boolean checkDiagnosisCodeUnique(RegDiagnosis Diagnosis) {
Long DiagnosisId = StringUtils.isNull(Diagnosis.getDiagId()) ? -1L : Diagnosis.getDiagId();
RegDiagnosis info = diagnosisMapper.checkDiagnosisCodeUnique(Diagnosis.getDiagCode());
if (StringUtils.isNotNull(info) && info.getDiagId().longValue() != DiagnosisId.longValue()) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 通过诊断ID查询诊断使用数量
*
* @param DiagnosisId 诊断ID
* @return 结果
*/
@Override
public int countUserDiagnosisById(Long DiagnosisId) {
return 0;//diagnosisMapper.countUserDiagnosisById(DiagnosisId);
}
/**
* 删除诊断信息
*
* @param DiagnosisId 诊断ID
* @return 结果
*/
@Override
public int deleteDiagnosisById(Long DiagnosisId) {
return diagnosisMapper.deleteDiagnosisById(DiagnosisId);
}
/**
* 批量删除诊断信息
*
* @param DiagnosisIds 需要删除的诊断ID
* @return 结果
*/
@Override
public int deleteDiagnosisByIds(Long[] DiagnosisIds) {
for (Long DiagnosisId : DiagnosisIds) {
RegDiagnosis Diagnosis = selectDiagnosisById(DiagnosisId);
if (countUserDiagnosisById(DiagnosisId) > 0) {
throw new ServiceException(String.format("%1$s已分配,不能删除", Diagnosis.getDiagName()));
}
}
return diagnosisMapper.deleteDiagnosisByIds(DiagnosisIds);
}
/**
* 新增保存诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
@Override
public int insertDiagnosis(RegDiagnosis Diagnosis) {
return diagnosisMapper.insertDiagnosis(Diagnosis);
}
/**
* 修改保存诊断信息
*
* @param Diagnosis 诊断信息
* @return 结果
*/
@Override
public int updateDiagnosis(RegDiagnosis Diagnosis) {
return diagnosisMapper.updateDiagnosis(Diagnosis);
}
}

View File

@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.czlis.transitPF.mapper.RegDiagnosisMapper">
<resultMap type="RegDiagnosis" id="RegDiagnosisResult">
<id property="diagId" column="diag_id" />
<result property="diagCode" column="diag_code" />
<result property="diagName" column="diag_name" />
<result property="diagSort" column="diag_Sort" />
<result property="status" column="status" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectdiagVo">
select diag_id, diag_code, diag_name, diag_Sort, status, create_by, create_time, remark
from Reg_Diagnosis
</sql>
<select id="selectdiagList" parameterType="RegDiagnosis" resultMap="RegDiagnosisResult">
<include refid="selectdiagVo"/>
<where>
<if test="diagCode != null and diagCode != ''">
AND diag_code like '%'+#{diagCode}+'%'
</if>
<if test="status != null and status != ''">
AND status = #{status}
</if>
<if test="diagName != null and diagName != ''">
AND diag_name like '%'+#{diagName}+'%'
</if>
</where>
</select>
<select id="selectdiagAll" resultMap="RegDiagnosisResult">
<include refid="selectdiagVo"/>
</select>
<select id="selectdiagById" parameterType="Long" resultMap="RegDiagnosisResult">
<include refid="selectdiagVo"/>
where diag_id = #{diagId}
</select>
<select id="checkdiagNameUnique" parameterType="String" resultMap="RegDiagnosisResult">
select top 1 diag_id, diag_code, diag_name, diag_Sort, status, create_by, create_time, remark
from Reg_Diagnosis
where diag_name=#{diagName}
</select>
<select id="checkdiagCodeUnique" parameterType="String" resultMap="RegDiagnosisResult">
select top 1 diag_id, diag_code, diag_name, diag_Sort, status, create_by, create_time, remark
from Reg_Diagnosis
where diag_code=#{diagCode}
</select>
<update id="updatediag" parameterType="RegDiagnosis">
update Reg_Diagnosis
<set>
<if test="diagCode != null and diagCode != ''">diag_code = #{diagCode},</if>
<if test="diagName != null and diagName != ''">diag_name = #{diagName},</if>
<if test="diagSort != null">diag_Sort = #{diagSort},</if>
<if test="status != null and status != ''">status = #{status},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
update_time = getdate()
</set>
where diag_id = #{diagId}
</update>
<insert id="insertdiag" parameterType="RegDiagnosis" useGeneratedKeys="true" keyProperty="diagId">
insert into Reg_Diagnosis(
<if test="diagId != null and diagId != 0">diag_id,</if>
<if test="diagCode != null and diagCode != ''">diag_code,</if>
<if test="diagName != null and diagName != ''">diag_name,</if>
<if test="diagSort != null">diag_Sort,</if>
<if test="status != null and status != ''">status,</if>
<if test="remark != null and remark != ''">remark,</if>
<if test="createBy != null and createBy != ''">create_by,</if>
create_time
)values(
<if test="diagId != null and diagId != 0">#{diagId},</if>
<if test="diagCode != null and diagCode != ''">#{diagCode},</if>
<if test="diagName != null and diagName != ''">#{diagName},</if>
<if test="diagSort != null">#{diagSort},</if>
<if test="status != null and status != ''">#{status},</if>
<if test="remark != null and remark != ''">#{remark},</if>
<if test="createBy != null and createBy != ''">#{createBy},</if>
getdate()
)
</insert>
<delete id="deletediagById" parameterType="Long">
delete from Reg_Diagnosis where diag_id = #{diagId}
</delete>
<delete id="deletediagByIds" parameterType="Long">
delete from Reg_Diagnosis where diag_id in
<foreach collection="array" item="diagId" open="(" separator="," close=")">
#{diagId}
</foreach>
</delete>
</mapper>