From 0aaedae03dd1e6efffd312340f610b351cc88173 Mon Sep 17 00:00:00 2001 From: lucky Date: Tue, 4 Jan 2022 11:31:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=BA=E6=9E=84=E7=AE=A1=E7=90=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../carbasics/api/ManagementController.java | 67 ++++++++++++++++ .../carbasics/bean/dto/ManagementDto.java | 37 +++++++++ .../carbasics/bean/vo/ManagementVo.java | 76 +++++++++++++++++++ .../persist/dao/OrganizationDao.java | 9 +++ .../persist/dao/OrganizationLevelDao.java | 16 ++++ .../carbasics/service/IManagementService.java | 31 ++++++++ .../carbasics/service/ManagementService.java | 50 ++++++++++++ .../resources/mapper_dao/OrganizationDao.xml | 28 +++++++ .../mapper_dao/OrganizationLevelDao.xml | 16 ++++ src/main/resources/mbg.xml | 8 +- 10 files changed, 334 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/ccsens/carbasics/api/ManagementController.java create mode 100644 src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java create mode 100644 src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java create mode 100644 src/main/java/com/ccsens/carbasics/persist/dao/OrganizationLevelDao.java create mode 100644 src/main/java/com/ccsens/carbasics/service/IManagementService.java create mode 100644 src/main/java/com/ccsens/carbasics/service/ManagementService.java create mode 100644 src/main/resources/mapper_dao/OrganizationLevelDao.xml diff --git a/src/main/java/com/ccsens/carbasics/api/ManagementController.java b/src/main/java/com/ccsens/carbasics/api/ManagementController.java new file mode 100644 index 0000000..7b1baf2 --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/api/ManagementController.java @@ -0,0 +1,67 @@ +package com.ccsens.carbasics.api; + + +import com.ccsens.carbasics.bean.dto.AccountDto; +import com.ccsens.carbasics.bean.dto.ManagementDto; +import com.ccsens.carbasics.bean.vo.ManagementVo; +import com.ccsens.carbasics.service.IManagementService; +import com.ccsens.cloudutil.annotation.MustLogin; +import com.ccsens.util.JsonResponse; +import com.ccsens.util.bean.dto.QueryDto; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @author AUSU + */ +@Api(tags = "机构管理相关" , description = "") +@RestController +@RequestMapping("/management") +@Slf4j +public class ManagementController { + + @Resource + private IManagementService managementService; + + @MustLogin + @ApiOperation(value = "查询医院等级列表", notes = "") + @RequestMapping(value = "/queryLevel", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> queryLevel(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + log.info("查询医院等级列表开始{}",params); + List levelInfoList = managementService.queryLevel(params.getUserId()); + log.info("查询医院等级列表结束:{}",levelInfoList); + return JsonResponse.newInstance().ok(levelInfoList); + } + + @MustLogin + @ApiOperation(value = "查询医院列表", notes = "") + @RequestMapping(value = "/queryHospitalList", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> queryHospitalList(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + log.info("查询医院等级列表开始{}",params); + List hospitalInfoList = managementService.queryHospitalList(params.getParam(),params.getUserId()); + log.info("查询医院等级列表结束:{}",hospitalInfoList); + return JsonResponse.newInstance().ok(hospitalInfoList); + } + + @MustLogin + @ApiOperation(value = "查询医院的具体信息", notes = "") + @RequestMapping(value = "/queryHospitalInfo", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> queryHospitalInfo(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + log.info("查询医院等级列表开始{}",params); + List hospitalData = managementService.queryHospitalInfo(params.getParam(),params.getUserId()); + log.info("查询医院等级列表结束:{}",hospitalData); + return JsonResponse.newInstance().ok(hospitalData); + } + + +} diff --git a/src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java b/src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java new file mode 100644 index 0000000..72922f4 --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java @@ -0,0 +1,37 @@ +package com.ccsens.carbasics.bean.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author AUSU + */ +@Data +public class ManagementDto { + + @Data + @ApiModel("查询医院列表-入参") + public static class QueryHospitalList { + @ApiModelProperty("等级id") + private Long levelId; + @ApiModelProperty("医院名称") + private String name; + @ApiModelProperty("省id") + private Long provinceId; + @ApiModelProperty("市id") + private Long cityId; + @ApiModelProperty("县id") + private Long countyId; + } + + @Data + @ApiModel("查询医院具体信息-入参") + public static class QueryHospitalInfo { + @ApiModelProperty("医院id") + private Long id; + } + +} diff --git a/src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java b/src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java new file mode 100644 index 0000000..35522fa --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java @@ -0,0 +1,76 @@ +package com.ccsens.carbasics.bean.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author AUSU + */ +@Data +public class ManagementVo { + + @Data + @ApiModel("查询医院等级列表-返参") + public static class LevelInfo { + @ApiModelProperty("等级id") + private Long levelId; + @ApiModelProperty("等级名称") + private String name; + } + + @Data + @ApiModel("查询医院列表-返参") + public static class HospitalInfo { + @ApiModelProperty("医院id") + private Long id; + @ApiModelProperty("医院名称") + private String name; + } + + @Data + @ApiModel("医院具体信息-返参") + public static class HospitalData { + @ApiModelProperty("部门id") + private Long did; + @ApiModelProperty("部门名称") + private String departmentName; + @ApiModelProperty("部门下的职位列表") + List positionInfoList; + @ApiModelProperty("下级部门列表") + List sonDepartment; + } + @Data + @ApiModel("部门下的职位") + public static class PositionInfo { + @ApiModelProperty("职位Id") + private Long pid; + @ApiModelProperty("职位名称") + private String name; + @ApiModelProperty("职位关联的角色") + List roleList; + @ApiModelProperty("职位下的角色列表") + List memberInfoList; + } + @Data + @ApiModel("职位下的成员") + public static class MemberInfo { + @ApiModelProperty("成员id") + private Long mid; + @ApiModelProperty("成员名称") + private String name; + @ApiModelProperty("手机号") + private String phone; + } + @Data + @ApiModel("职位关联的角色") + public static class RoleInfo { + @ApiModelProperty("角色id") + private Long rid; + @ApiModelProperty("角色名称") + private String name; + } + +} diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java index 0951f14..86c91bf 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java @@ -1,7 +1,9 @@ package com.ccsens.carbasics.persist.dao; +import com.ccsens.carbasics.bean.dto.ManagementDto; import com.ccsens.carbasics.bean.po.Organization; import com.ccsens.carbasics.bean.po.OrganizationParent; +import com.ccsens.carbasics.bean.vo.ManagementVo; import com.ccsens.carbasics.bean.vo.OrganizationVo; import com.ccsens.carbasics.persist.mapper.OrganizationMapper; import org.apache.ibatis.annotations.Param; @@ -135,4 +137,11 @@ public interface OrganizationDao extends OrganizationMapper { * @return 用户所在的部门及下级部门Id */ List queryDepartmentByUser(@Param("projectId") Long projectId,@Param("userId") Long userId); + + /** + * 机构管理 - 查询医院列表 + * @param param 筛选参数 + * @return 医院列表 + */ + List queryHospitalList(@Param("param") ManagementDto.QueryHospitalList param); } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationLevelDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationLevelDao.java new file mode 100644 index 0000000..692133a --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationLevelDao.java @@ -0,0 +1,16 @@ +package com.ccsens.carbasics.persist.dao; + +import com.ccsens.carbasics.bean.vo.ManagementVo; +import com.ccsens.carbasics.persist.mapper.OrganizationLevelMapper; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface OrganizationLevelDao extends OrganizationLevelMapper { + /** + * 查询医院等级列表 + * @return 医院等级列表 + */ + List queryLevelList(); +} diff --git a/src/main/java/com/ccsens/carbasics/service/IManagementService.java b/src/main/java/com/ccsens/carbasics/service/IManagementService.java new file mode 100644 index 0000000..7b23814 --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/service/IManagementService.java @@ -0,0 +1,31 @@ +package com.ccsens.carbasics.service; + +import com.ccsens.carbasics.bean.dto.ManagementDto; +import com.ccsens.carbasics.bean.vo.ManagementVo; + +import java.util.List; + +public interface IManagementService { + /** + * 查询医院等级列表 + * @param userId 用户id + * @return 等级列表 + */ + List queryLevel(Long userId); + + /** + * 查询医院列表 + * @param param 筛选参数 + * @param userId 用户id + * @return 医院列表 + */ + List queryHospitalList(ManagementDto.QueryHospitalList param, Long userId); + + /** + * 查询医院的具体信息 + * @param param 医院id + * @param userId 用户id + * @return 医院的具体信息 + */ + List queryHospitalInfo(ManagementDto.QueryHospitalInfo param, Long userId); +} diff --git a/src/main/java/com/ccsens/carbasics/service/ManagementService.java b/src/main/java/com/ccsens/carbasics/service/ManagementService.java new file mode 100644 index 0000000..7114969 --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/service/ManagementService.java @@ -0,0 +1,50 @@ +package com.ccsens.carbasics.service; + +import com.ccsens.carbasics.bean.dto.ManagementDto; +import com.ccsens.carbasics.bean.po.OrganizationDepartment; +import com.ccsens.carbasics.bean.po.OrganizationLevel; +import com.ccsens.carbasics.bean.po.OrganizationLevelExample; +import com.ccsens.carbasics.bean.vo.ManagementVo; +import com.ccsens.carbasics.persist.dao.OrganizationDao; +import com.ccsens.carbasics.persist.dao.OrganizationDepartmentDao; +import com.ccsens.carbasics.persist.dao.OrganizationLevelDao; +import com.ccsens.carbasics.persist.mapper.OrganizationLevelMapper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Repository; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.List; + + +@Slf4j +@Service +@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) +public class ManagementService implements IManagementService { + + @Resource + private OrganizationLevelDao organizationLevelDao; + @Resource + private OrganizationDao organizationDao; + @Resource + private OrganizationDepartmentDao departmentDao; + + @Override + public List queryLevel(Long userId) { + return organizationLevelDao.queryLevelList(); + } + + @Override + public List queryHospitalList(ManagementDto.QueryHospitalList param, Long userId) { + return organizationDao.queryHospitalList(param); + } + + @Override + public List queryHospitalInfo(ManagementDto.QueryHospitalInfo param, Long userId) { + + return null; + } + +} diff --git a/src/main/resources/mapper_dao/OrganizationDao.xml b/src/main/resources/mapper_dao/OrganizationDao.xml index 4846909..96fcda3 100644 --- a/src/main/resources/mapper_dao/OrganizationDao.xml +++ b/src/main/resources/mapper_dao/OrganizationDao.xml @@ -865,4 +865,32 @@ AND d.organization_id = #{projectId} AND m.user_id = #{userId} + + + diff --git a/src/main/resources/mapper_dao/OrganizationLevelDao.xml b/src/main/resources/mapper_dao/OrganizationLevelDao.xml new file mode 100644 index 0000000..bcf73ae --- /dev/null +++ b/src/main/resources/mapper_dao/OrganizationLevelDao.xml @@ -0,0 +1,16 @@ + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mbg.xml b/src/main/resources/mbg.xml index 7ed6038..f55a264 100644 --- a/src/main/resources/mbg.xml +++ b/src/main/resources/mbg.xml @@ -21,7 +21,7 @@ @@ -84,12 +84,12 @@ -
+ - +
@@ -100,7 +100,7 @@ -
+