Browse Source

机构管理接口开发

test
lucky 4 years ago
parent
commit
0aaedae03d
  1. 67
      src/main/java/com/ccsens/carbasics/api/ManagementController.java
  2. 37
      src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java
  3. 76
      src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java
  4. 9
      src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java
  5. 16
      src/main/java/com/ccsens/carbasics/persist/dao/OrganizationLevelDao.java
  6. 31
      src/main/java/com/ccsens/carbasics/service/IManagementService.java
  7. 50
      src/main/java/com/ccsens/carbasics/service/ManagementService.java
  8. 28
      src/main/resources/mapper_dao/OrganizationDao.xml
  9. 16
      src/main/resources/mapper_dao/OrganizationLevelDao.xml
  10. 8
      src/main/resources/mbg.xml

67
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<List<ManagementVo.LevelInfo>> queryLevel(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{
log.info("查询医院等级列表开始{}",params);
List<ManagementVo.LevelInfo> 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<List<ManagementVo.HospitalInfo>> queryHospitalList(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.QueryHospitalList> params) throws Exception{
log.info("查询医院等级列表开始{}",params);
List<ManagementVo.HospitalInfo> 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<List<ManagementVo.HospitalData>> queryHospitalInfo(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.QueryHospitalInfo> params) throws Exception{
log.info("查询医院等级列表开始{}",params);
List<ManagementVo.HospitalData> hospitalData = managementService.queryHospitalInfo(params.getParam(),params.getUserId());
log.info("查询医院等级列表结束:{}",hospitalData);
return JsonResponse.newInstance().ok(hospitalData);
}
}

37
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;
}
}

76
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<PositionInfo> positionInfoList;
@ApiModelProperty("下级部门列表")
List<HospitalData> sonDepartment;
}
@Data
@ApiModel("部门下的职位")
public static class PositionInfo {
@ApiModelProperty("职位Id")
private Long pid;
@ApiModelProperty("职位名称")
private String name;
@ApiModelProperty("职位关联的角色")
List<RoleInfo> roleList;
@ApiModelProperty("职位下的角色列表")
List<MemberInfo> 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;
}
}

9
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<Long> queryDepartmentByUser(@Param("projectId") Long projectId,@Param("userId") Long userId);
/**
* 机构管理 - 查询医院列表
* @param param 筛选参数
* @return 医院列表
*/
List<ManagementVo.HospitalInfo> queryHospitalList(@Param("param") ManagementDto.QueryHospitalList param);
}

16
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<ManagementVo.LevelInfo> queryLevelList();
}

31
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<ManagementVo.LevelInfo> queryLevel(Long userId);
/**
* 查询医院列表
* @param param 筛选参数
* @param userId 用户id
* @return 医院列表
*/
List<ManagementVo.HospitalInfo> queryHospitalList(ManagementDto.QueryHospitalList param, Long userId);
/**
* 查询医院的具体信息
* @param param 医院id
* @param userId 用户id
* @return 医院的具体信息
*/
List<ManagementVo.HospitalData> queryHospitalInfo(ManagementDto.QueryHospitalInfo param, Long userId);
}

50
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<ManagementVo.LevelInfo> queryLevel(Long userId) {
return organizationLevelDao.queryLevelList();
}
@Override
public List<ManagementVo.HospitalInfo> queryHospitalList(ManagementDto.QueryHospitalList param, Long userId) {
return organizationDao.queryHospitalList(param);
}
@Override
public List<ManagementVo.HospitalData> queryHospitalInfo(ManagementDto.QueryHospitalInfo param, Long userId) {
return null;
}
}

28
src/main/resources/mapper_dao/OrganizationDao.xml

@ -865,4 +865,32 @@
AND d.organization_id = #{projectId}
AND m.user_id = #{userId}
</select>
<select id="queryHospitalList" resultType="com.ccsens.carbasics.bean.vo.ManagementVo$HospitalInfo">
SELECT
id,
`name`
FROM
t_organization
WHERE
rec_status = 0
<if test="param.levelId != 0 and param.levelId != null">
AND level_id = #{param.levelId}
</if>
<if test="param.provinceId != 0 and param.provinceId != null">
AND level_id = #{param.provinceId}
</if>
<if test="param.cityId != 0 and param.cityId != null">
AND level_id = #{param.cityId}
</if>
<if test="param.countyId != 0 and param.countyId != null">
AND level_id = #{param.countyId}
</if>
<if test="param.name != ''.toString()">
AND level_id LIKE concat('%',#{param.name},'%')
</if>
ORDER BY
CONVERT(`name` USING GBK)
</select>
</mapper>

16
src/main/resources/mapper_dao/OrganizationLevelDao.xml

@ -0,0 +1,16 @@
<?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.ccsens.carbasics.persist.dao.OrganizationLevelDao">
<select id="queryLevelList" resultType="com.ccsens.carbasics.bean.vo.ManagementVo$LevelInfo">
SELECT
id AS levelId,
`name`
FROM
t_organization_level
WHERE
rec_status = 0
AND parent_id != 0
</select>
</mapper>

8
src/main/resources/mbg.xml

@ -21,7 +21,7 @@
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://test.tall.wiki:3306/carbasics_bak?useUnicode=true&amp;characterEncoding=UTF-8&amp;tinyInt1isBit=false"
connectionURL="jdbc:mysql://101.201.226.136:3306/carbasics?useUnicode=true&amp;characterEncoding=UTF-8&amp;tinyInt1isBit=false"
userId="root"
password="po3OynBO[M3579p6L7)o">
</jdbcConnection>
@ -84,12 +84,12 @@
<!-- <table tableName="t_constant" domainObjectName="ConstantDB"></table>-->
<!-- <table tableName="t_qcp_last_role_choose" domainObjectName="LastRoleChoose"></table>-->
<!-- <table tableName="t_qcp_code_name" domainObjectName="CodeName"></table>-->
<table tableName="t_qcp_account_manage" domainObjectName="AccountManage"></table>
<!-- <table tableName="t_qcp_account_manage" domainObjectName="AccountManage"></table>-->
<!-- <table tableName="t_qcp_first_aid_record_log" domainObjectName="FirstAidRecordLog"></table>-->
<!-- <table tableName="t_qcp_first_aid_record_log" domainObjectName="FirstAidRecordLog"></table>-->
<!-- <table tableName="t_step" domainObjectName="Step"></table>-->
<!-- <table tableName="t_question_ocr" domainObjectName="QuestionOcr"></table>-->
<!-- <table tableName="t_organization" domainObjectName="Organization"></table>-->
<table tableName="t_organization" domainObjectName="Organization"></table>
<!-- <table tableName="t_organization_department" domainObjectName="OrganizationDepartment"></table>-->
<!-- <table tableName="t_organization_department_parent" domainObjectName="OrganizationDepartmentParent"></table>-->
<!-- <table tableName="t_organization_position" domainObjectName="OrganizationPosition"></table>-->
@ -100,7 +100,7 @@
<!-- <table tableName="t_qcp_position_power" domainObjectName="PositionPower"></table>-->
<!-- <table tableName="t_qcp_menu_plugin" domainObjectName="MenuPlugin"></table>-->
<!-- <table tableName="t_organization_level" domainObjectName="OrganizationLevel"></table>-->
<table tableName="t_organization_position" domainObjectName="OrganizationPosition"></table>
<!-- <table tableName="t_organization_position" domainObjectName="OrganizationPosition"></table>-->

Loading…
Cancel
Save