专病路径管理

This commit is contained in:
zhangheng 2024-03-18 14:13:15 +08:00
parent dcb5144533
commit 220ede4495
7 changed files with 273 additions and 178 deletions

View File

@ -64,7 +64,7 @@ public class SpecialDiseaseRouteController extends BaseController {
*/ */
@PreAuthorize("@ss.hasPermi('system:specialDiseaseRoute:add')") @PreAuthorize("@ss.hasPermi('system:specialDiseaseRoute:add')")
@Log(title = "专病路径信息", businessType = BusinessType.INSERT) @Log(title = "专病路径信息", businessType = BusinessType.INSERT)
@PostMapping @PostMapping("/add")
public AjaxResult add(@RequestBody SpecialDiseaseRoute specialDiseaseRoute) { public AjaxResult add(@RequestBody SpecialDiseaseRoute specialDiseaseRoute) {
return toAjax(specialDiseaseRouteService.insertSpecialDiseaseRoute(specialDiseaseRoute)); return toAjax(specialDiseaseRouteService.insertSpecialDiseaseRoute(specialDiseaseRoute));
} }
@ -74,7 +74,7 @@ public class SpecialDiseaseRouteController extends BaseController {
*/ */
@PreAuthorize("@ss.hasPermi('system:specialDiseaseRoute:edit')") @PreAuthorize("@ss.hasPermi('system:specialDiseaseRoute:edit')")
@Log(title = "专病路径信息", businessType = BusinessType.UPDATE) @Log(title = "专病路径信息", businessType = BusinessType.UPDATE)
@PutMapping @PutMapping("/edit")
public AjaxResult edit(@RequestBody SpecialDiseaseRoute specialDiseaseRoute) { public AjaxResult edit(@RequestBody SpecialDiseaseRoute specialDiseaseRoute) {
return toAjax(specialDiseaseRouteService.updateSpecialDiseaseRoute(specialDiseaseRoute)); return toAjax(specialDiseaseRouteService.updateSpecialDiseaseRoute(specialDiseaseRoute));
} }
@ -88,4 +88,12 @@ public class SpecialDiseaseRouteController extends BaseController {
public AjaxResult remove(@PathVariable Long[] ids) { public AjaxResult remove(@PathVariable Long[] ids) {
return toAjax(specialDiseaseRouteService.deleteSpecialDiseaseRouteByIds(ids)); return toAjax(specialDiseaseRouteService.deleteSpecialDiseaseRouteByIds(ids));
} }
/**
* 科室路径数量
*/
@GetMapping("/departmentRouteCount")
public AjaxResult departmentRouteCount(String departmentName) {
return specialDiseaseRouteService.departmentRouteCount(departmentName);
}
} }

View File

@ -38,6 +38,15 @@ public class TaskPartitionDictController extends BaseController {
return getDataTable(list); return getDataTable(list);
} }
/**
* 查询任务细分字典列表 - 不分页
*/
@GetMapping("/taskPartitionList")
public AjaxResult taskPartitionList(TaskPartitionDict taskPartitionDict) {
return AjaxResult.success(taskPartitionDictService.selectTaskPartitionDictList(taskPartitionDict));
}
/** /**
* 导出任务细分字典列表 * 导出任务细分字典列表
*/ */

View File

@ -64,7 +64,7 @@ public class TaskStatusDictController extends BaseController {
*/ */
@PreAuthorize("@ss.hasPermi('system:taskStatus:add')") @PreAuthorize("@ss.hasPermi('system:taskStatus:add')")
@Log(title = "任务状态字典", businessType = BusinessType.INSERT) @Log(title = "任务状态字典", businessType = BusinessType.INSERT)
@PostMapping @PostMapping("/add")
public AjaxResult add(@RequestBody TaskStatusDict taskStatusDict) { public AjaxResult add(@RequestBody TaskStatusDict taskStatusDict) {
return toAjax(taskStatusDictService.insertTaskStatusDict(taskStatusDict)); return toAjax(taskStatusDictService.insertTaskStatusDict(taskStatusDict));
} }
@ -74,7 +74,7 @@ public class TaskStatusDictController extends BaseController {
*/ */
@PreAuthorize("@ss.hasPermi('system:taskStatus:edit')") @PreAuthorize("@ss.hasPermi('system:taskStatus:edit')")
@Log(title = "任务状态字典", businessType = BusinessType.UPDATE) @Log(title = "任务状态字典", businessType = BusinessType.UPDATE)
@PutMapping @PutMapping("/edit")
public AjaxResult edit(@RequestBody TaskStatusDict taskStatusDict) { public AjaxResult edit(@RequestBody TaskStatusDict taskStatusDict) {
return toAjax(taskStatusDictService.updateTaskStatusDict(taskStatusDict)); return toAjax(taskStatusDictService.updateTaskStatusDict(taskStatusDict));
} }

View File

@ -1,6 +1,7 @@
package com.xinelu.manage.mapper.specialdiseaseroute; package com.xinelu.manage.mapper.specialdiseaseroute;
import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute; import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute;
import com.xinelu.manage.vo.department.DepartmentVO;
import java.util.List; import java.util.List;
@ -18,7 +19,7 @@ public interface SpecialDiseaseRouteMapper {
* @param id 专病路径信息主键 * @param id 专病路径信息主键
* @return 专病路径信息 * @return 专病路径信息
*/ */
public SpecialDiseaseRoute selectSpecialDiseaseRouteById(Long id); SpecialDiseaseRoute selectSpecialDiseaseRouteById(Long id);
/** /**
* 查询专病路径信息列表 * 查询专病路径信息列表
@ -26,7 +27,7 @@ public interface SpecialDiseaseRouteMapper {
* @param specialDiseaseRoute 专病路径信息 * @param specialDiseaseRoute 专病路径信息
* @return 专病路径信息集合 * @return 专病路径信息集合
*/ */
public List<SpecialDiseaseRoute> selectSpecialDiseaseRouteList(SpecialDiseaseRoute specialDiseaseRoute); List<SpecialDiseaseRoute> selectSpecialDiseaseRouteList(SpecialDiseaseRoute specialDiseaseRoute);
/** /**
* 新增专病路径信息 * 新增专病路径信息
@ -34,7 +35,7 @@ public interface SpecialDiseaseRouteMapper {
* @param specialDiseaseRoute 专病路径信息 * @param specialDiseaseRoute 专病路径信息
* @return 结果 * @return 结果
*/ */
public int insertSpecialDiseaseRoute(SpecialDiseaseRoute specialDiseaseRoute); int insertSpecialDiseaseRoute(SpecialDiseaseRoute specialDiseaseRoute);
/** /**
* 修改专病路径信息 * 修改专病路径信息
@ -42,7 +43,7 @@ public interface SpecialDiseaseRouteMapper {
* @param specialDiseaseRoute 专病路径信息 * @param specialDiseaseRoute 专病路径信息
* @return 结果 * @return 结果
*/ */
public int updateSpecialDiseaseRoute(SpecialDiseaseRoute specialDiseaseRoute); int updateSpecialDiseaseRoute(SpecialDiseaseRoute specialDiseaseRoute);
/** /**
* 删除专病路径信息 * 删除专病路径信息
@ -50,7 +51,7 @@ public interface SpecialDiseaseRouteMapper {
* @param id 专病路径信息主键 * @param id 专病路径信息主键
* @return 结果 * @return 结果
*/ */
public int deleteSpecialDiseaseRouteById(Long id); int deleteSpecialDiseaseRouteById(Long id);
/** /**
* 批量删除专病路径信息 * 批量删除专病路径信息
@ -58,5 +59,13 @@ public interface SpecialDiseaseRouteMapper {
* @param ids 需要删除的数据主键集合 * @param ids 需要删除的数据主键集合
* @return 结果 * @return 结果
*/ */
public int deleteSpecialDiseaseRouteByIds(Long[] ids); int deleteSpecialDiseaseRouteByIds(Long[] ids);
/**
* 科室路径数量
*
* @param departmentName 科室名称
* @return DepartmentVO
*/
List<DepartmentVO> departmentRouteByDepartmentName(String departmentName);
} }

View File

@ -1,5 +1,6 @@
package com.xinelu.manage.service.specialdiseaseroute; package com.xinelu.manage.service.specialdiseaseroute;
import com.xinelu.common.core.domain.AjaxResult;
import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute; import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute;
import java.util.List; import java.util.List;
@ -59,4 +60,12 @@ public interface ISpecialDiseaseRouteService {
* @return 结果 * @return 结果
*/ */
public int deleteSpecialDiseaseRouteById(Long id); public int deleteSpecialDiseaseRouteById(Long id);
/**
* 科室路径数量
*
* @param departmentName 科室名称
* @return AjaxResult
*/
AjaxResult departmentRouteCount(String departmentName);
} }

View File

@ -1,12 +1,16 @@
package com.xinelu.manage.service.specialdiseaseroute.impl; package com.xinelu.manage.service.specialdiseaseroute.impl;
import com.xinelu.common.core.domain.AjaxResult;
import com.xinelu.common.utils.DateUtils; import com.xinelu.common.utils.DateUtils;
import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute; import com.xinelu.manage.domain.specialdiseaseroute.SpecialDiseaseRoute;
import com.xinelu.manage.mapper.specialdiseaseroute.SpecialDiseaseRouteMapper; import com.xinelu.manage.mapper.specialdiseaseroute.SpecialDiseaseRouteMapper;
import com.xinelu.manage.service.specialdiseaseroute.ISpecialDiseaseRouteService; import com.xinelu.manage.service.specialdiseaseroute.ISpecialDiseaseRouteService;
import com.xinelu.manage.vo.department.DepartmentVO;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -88,4 +92,26 @@ public class SpecialDiseaseRouteServiceImpl implements ISpecialDiseaseRouteServi
public int deleteSpecialDiseaseRouteById(Long id) { public int deleteSpecialDiseaseRouteById(Long id) {
return specialDiseaseRouteMapper.deleteSpecialDiseaseRouteById(id); return specialDiseaseRouteMapper.deleteSpecialDiseaseRouteById(id);
} }
/**
* 科室路径数量
*
* @param departmentName 科室名称
* @return AjaxResult
*/
@Override
public AjaxResult departmentRouteCount(String departmentName) {
DepartmentVO departmentVO = new DepartmentVO();
List<DepartmentVO> department = new ArrayList<>();
departmentVO.setDepartmentName("全部");
departmentVO.setCountNum(0);
List<DepartmentVO> departmentVOS = specialDiseaseRouteMapper.departmentRouteByDepartmentName(departmentName);
if (CollectionUtils.isNotEmpty(departmentVOS)) {
Integer result = departmentVOS.stream().mapToInt(DepartmentVO::getCountNum).sum();
departmentVO.setCountNum(result);
department.add(departmentVO);
department.addAll(departmentVOS);
}
return AjaxResult.success(department);
}
} }

View File

@ -5,68 +5,86 @@
<mapper namespace="com.xinelu.manage.mapper.specialdiseaseroute.SpecialDiseaseRouteMapper"> <mapper namespace="com.xinelu.manage.mapper.specialdiseaseroute.SpecialDiseaseRouteMapper">
<resultMap type="SpecialDiseaseRoute" id="SpecialDiseaseRouteResult"> <resultMap type="SpecialDiseaseRoute" id="SpecialDiseaseRouteResult">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="departmentId" column="department_id"/> <result property="departmentId" column="department_id"/>
<result property="departmentName" column="department_name"/> <result property="departmentName" column="department_name"/>
<result property="diseaseTypeId" column="disease_type_id"/> <result property="diseaseTypeId" column="disease_type_id"/>
<result property="diseaseTypeName" column="disease_type_name"/> <result property="diseaseTypeName" column="disease_type_name"/>
<result property="routeName" column="route_name"/> <result property="routeName" column="route_name"/>
<result property="routeCode" column="route_code"/> <result property="routeCode" column="route_code"/>
<result property="version" column="version"/> <result property="version" column="version"/>
<result property="routeClassify" column="route_classify"/> <result property="routeClassify" column="route_classify"/>
<result property="releaseStatus" column="release_status"/> <result property="releaseStatus" column="release_status"/>
<result property="suitRange" column="suit_range"/> <result property="suitRange" column="suit_range"/>
<result property="routeSort" column="route_sort"/> <result property="routeSort" column="route_sort"/>
<result property="routeRemark" column="route_remark"/> <result property="routeRemark" column="route_remark"/>
<result property="createBy" column="create_by"/> <result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/> <result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/> <result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/> <result property="updateTime" column="update_time"/>
</resultMap> </resultMap>
<sql id="selectSpecialDiseaseRouteVo"> <sql id="selectSpecialDiseaseRouteVo">
select id, department_id, department_name, disease_type_id, disease_type_name, route_name, route_code, version, route_classify, release_status, suit_range, route_sort, route_remark, create_by, create_time, update_by, update_time from special_disease_route select id,
department_id,
department_name,
disease_type_id,
disease_type_name,
route_name,
route_code,
version,
route_classify,
release_status,
suit_range,
route_sort,
route_remark,
create_by,
create_time,
update_by,
update_time
from special_disease_route
</sql> </sql>
<select id="selectSpecialDiseaseRouteList" parameterType="SpecialDiseaseRoute" resultMap="SpecialDiseaseRouteResult"> <select id="selectSpecialDiseaseRouteList" parameterType="SpecialDiseaseRoute"
resultMap="SpecialDiseaseRouteResult">
<include refid="selectSpecialDiseaseRouteVo"/> <include refid="selectSpecialDiseaseRouteVo"/>
<where> <where>
<if test="departmentId != null "> <if test="departmentId != null ">
and department_id = #{departmentId} and department_id = #{departmentId}
</if> </if>
<if test="departmentName != null and departmentName != ''"> <if test="departmentName != null and departmentName != ''">
and department_name like concat('%', #{departmentName}, '%') and department_name like concat('%', #{departmentName}, '%')
</if> </if>
<if test="diseaseTypeId != null "> <if test="diseaseTypeId != null ">
and disease_type_id = #{diseaseTypeId} and disease_type_id = #{diseaseTypeId}
</if> </if>
<if test="diseaseTypeName != null and diseaseTypeName != ''"> <if test="diseaseTypeName != null and diseaseTypeName != ''">
and disease_type_name like concat('%', #{diseaseTypeName}, '%') and disease_type_name like concat('%', #{diseaseTypeName}, '%')
</if> </if>
<if test="routeName != null and routeName != ''"> <if test="routeName != null and routeName != ''">
and route_name like concat('%', #{routeName}, '%') and route_name like concat('%', #{routeName}, '%')
</if> </if>
<if test="routeCode != null and routeCode != ''"> <if test="routeCode != null and routeCode != ''">
and route_code = #{routeCode} and route_code = #{routeCode}
</if> </if>
<if test="version != null and version != ''"> <if test="version != null and version != ''">
and version = #{version} and version = #{version}
</if> </if>
<if test="routeClassify != null and routeClassify != ''"> <if test="routeClassify != null and routeClassify != ''">
and route_classify = #{routeClassify} and route_classify = #{routeClassify}
</if> </if>
<if test="releaseStatus != null and releaseStatus != ''"> <if test="releaseStatus != null and releaseStatus != ''">
and release_status = #{releaseStatus} and release_status = #{releaseStatus}
</if> </if>
<if test="suitRange != null and suitRange != ''"> <if test="suitRange != null and suitRange != ''">
and suit_range = #{suitRange} and suit_range = #{suitRange}
</if> </if>
<if test="routeSort != null "> <if test="routeSort != null ">
and route_sort = #{routeSort} and route_sort = #{routeSort}
</if> </if>
<if test="routeRemark != null and routeRemark != ''"> <if test="routeRemark != null and routeRemark != ''">
and route_remark = #{routeRemark} and route_remark = #{routeRemark}
</if> </if>
</where> </where>
</select> </select>
@ -80,132 +98,134 @@
keyProperty="id"> keyProperty="id">
insert into special_disease_route insert into special_disease_route
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
<if test="departmentId != null">department_id, <if test="departmentId != null">department_id,
</if> </if>
<if test="departmentName != null">department_name, <if test="departmentName != null">department_name,
</if> </if>
<if test="diseaseTypeId != null">disease_type_id, <if test="diseaseTypeId != null">disease_type_id,
</if> </if>
<if test="diseaseTypeName != null">disease_type_name, <if test="diseaseTypeName != null">disease_type_name,
</if> </if>
<if test="routeName != null">route_name, <if test="routeName != null">route_name,
</if> </if>
<if test="routeCode != null">route_code, <if test="routeCode != null">route_code,
</if> </if>
<if test="version != null">version, <if test="version != null">version,
</if> </if>
<if test="routeClassify != null">route_classify, <if test="routeClassify != null">route_classify,
</if> </if>
<if test="releaseStatus != null">release_status, <if test="releaseStatus != null">release_status,
</if> </if>
<if test="suitRange != null">suit_range, <if test="suitRange != null">suit_range,
</if> </if>
<if test="routeSort != null">route_sort, <if test="routeSort != null">route_sort,
</if> </if>
<if test="routeRemark != null">route_remark, <if test="routeRemark != null">route_remark,
</if> </if>
<if test="createBy != null">create_by, <if test="createBy != null">create_by,
</if> </if>
<if test="createTime != null">create_time, <if test="createTime != null">create_time,
</if> </if>
<if test="updateBy != null">update_by, <if test="updateBy != null">update_by,
</if> </if>
<if test="updateTime != null">update_time, <if test="updateTime != null">update_time,
</if> </if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="departmentId != null">#{departmentId}, <if test="departmentId != null">#{departmentId},
</if> </if>
<if test="departmentName != null">#{departmentName}, <if test="departmentName != null">#{departmentName},
</if> </if>
<if test="diseaseTypeId != null">#{diseaseTypeId}, <if test="diseaseTypeId != null">#{diseaseTypeId},
</if> </if>
<if test="diseaseTypeName != null">#{diseaseTypeName}, <if test="diseaseTypeName != null">#{diseaseTypeName},
</if> </if>
<if test="routeName != null">#{routeName}, <if test="routeName != null">#{routeName},
</if> </if>
<if test="routeCode != null">#{routeCode}, <if test="routeCode != null">#{routeCode},
</if> </if>
<if test="version != null">#{version}, <if test="version != null">#{version},
</if> </if>
<if test="routeClassify != null">#{routeClassify}, <if test="routeClassify != null">#{routeClassify},
</if> </if>
<if test="releaseStatus != null">#{releaseStatus}, <if test="releaseStatus != null">#{releaseStatus},
</if> </if>
<if test="suitRange != null">#{suitRange}, <if test="suitRange != null">#{suitRange},
</if> </if>
<if test="routeSort != null">#{routeSort}, <if test="routeSort != null">#{routeSort},
</if> </if>
<if test="routeRemark != null">#{routeRemark}, <if test="routeRemark != null">#{routeRemark},
</if> </if>
<if test="createBy != null">#{createBy}, <if test="createBy != null">#{createBy},
</if> </if>
<if test="createTime != null">#{createTime}, <if test="createTime != null">#{createTime},
</if> </if>
<if test="updateBy != null">#{updateBy}, <if test="updateBy != null">#{updateBy},
</if> </if>
<if test="updateTime != null">#{updateTime}, <if test="updateTime != null">#{updateTime},
</if> </if>
</trim> </trim>
</insert> </insert>
<update id="updateSpecialDiseaseRoute" parameterType="SpecialDiseaseRoute"> <update id="updateSpecialDiseaseRoute" parameterType="SpecialDiseaseRoute">
update special_disease_route update special_disease_route
<trim prefix="SET" suffixOverrides=","> <trim prefix="SET" suffixOverrides=",">
<if test="departmentId != null">department_id = <if test="departmentId != null">department_id =
#{departmentId}, #{departmentId},
</if> </if>
<if test="departmentName != null">department_name = <if test="departmentName != null">department_name =
#{departmentName}, #{departmentName},
</if> </if>
<if test="diseaseTypeId != null">disease_type_id = <if test="diseaseTypeId != null">disease_type_id =
#{diseaseTypeId}, #{diseaseTypeId},
</if> </if>
<if test="diseaseTypeName != null">disease_type_name = <if test="diseaseTypeName != null">disease_type_name =
#{diseaseTypeName}, #{diseaseTypeName},
</if> </if>
<if test="routeName != null">route_name = <if test="routeName != null">route_name =
#{routeName}, #{routeName},
</if> </if>
<if test="routeCode != null">route_code = <if test="routeCode != null">route_code =
#{routeCode}, #{routeCode},
</if> </if>
<if test="version != null">version = <if test="version != null">version =
#{version}, #{version},
</if> </if>
<if test="routeClassify != null">route_classify = <if test="routeClassify != null">route_classify =
#{routeClassify}, #{routeClassify},
</if> </if>
<if test="releaseStatus != null">release_status = <if test="releaseStatus != null">release_status =
#{releaseStatus}, #{releaseStatus},
</if> </if>
<if test="suitRange != null">suit_range = <if test="suitRange != null">suit_range =
#{suitRange}, #{suitRange},
</if> </if>
<if test="routeSort != null">route_sort = <if test="routeSort != null">route_sort =
#{routeSort}, #{routeSort},
</if> </if>
<if test="routeRemark != null">route_remark = <if test="routeRemark != null">route_remark =
#{routeRemark}, #{routeRemark},
</if> </if>
<if test="createBy != null">create_by = <if test="createBy != null">create_by =
#{createBy}, #{createBy},
</if> </if>
<if test="createTime != null">create_time = <if test="createTime != null">create_time =
#{createTime}, #{createTime},
</if> </if>
<if test="updateBy != null">update_by = <if test="updateBy != null">update_by =
#{updateBy}, #{updateBy},
</if> </if>
<if test="updateTime != null">update_time = <if test="updateTime != null">update_time =
#{updateTime}, #{updateTime},
</if> </if>
</trim> </trim>
where id = #{id} where id = #{id}
</update> </update>
<delete id="deleteSpecialDiseaseRouteById" parameterType="Long"> <delete id="deleteSpecialDiseaseRouteById" parameterType="Long">
delete from special_disease_route where id = #{id} delete
from special_disease_route
where id = #{id}
</delete> </delete>
<delete id="deleteSpecialDiseaseRouteByIds" parameterType="String"> <delete id="deleteSpecialDiseaseRouteByIds" parameterType="String">
@ -214,4 +234,18 @@
#{id} #{id}
</foreach> </foreach>
</delete> </delete>
<select id="departmentRouteByDepartmentName" resultType="com.xinelu.manage.vo.department.DepartmentVO">
select dt.id,
dt.department_name,
dt.department_code,
count(sdr.id) AS countNum
from department dt left join special_disease_route sdr on dt.id = sdr.department_id
<where>
<if test="departmentName != null and departmentName != ''">
dt.department_name like concat('%',#{departmentName},'%')
</if>
</where>
GROUP BY dt.id
</select>
</mapper> </mapper>