Browse Source

机构管理相关接口开发

test
lucky 4 years ago
parent
commit
8044a2629f
  1. 88
      src/main/java/com/ccsens/carbasics/api/ManagementController.java
  2. 103
      src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java
  3. 33
      src/main/java/com/ccsens/carbasics/bean/po/Organization.java
  4. 180
      src/main/java/com/ccsens/carbasics/bean/po/OrganizationExample.java
  5. 7
      src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java
  6. 56
      src/main/java/com/ccsens/carbasics/service/IManagementService.java
  7. 180
      src/main/java/com/ccsens/carbasics/service/ManagementService.java
  8. 1
      src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java
  9. 1
      src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java
  10. 4
      src/main/resources/application.yml
  11. 30
      src/main/resources/mapper_dao/AreaDao.xml
  12. 13
      src/main/resources/mapper_dao/OrganizationDao.xml
  13. 55
      src/main/resources/mapper_raw/OrganizationMapper.xml
  14. 2
      src/main/resources/mbg.xml

88
src/main/java/com/ccsens/carbasics/api/ManagementController.java

@ -47,9 +47,9 @@ public class ManagementController {
@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);
log.info("查询医院列表开始{}",params);
List<ManagementVo.HospitalInfo> hospitalInfoList = managementService.queryHospitalList(params.getParam(),params.getUserId());
log.info("查询医院等级列表结束:{}",hospitalInfoList);
log.info("查询医院列表结束:{}",hospitalInfoList);
return JsonResponse.newInstance().ok(hospitalInfoList);
}
@ -57,11 +57,91 @@ public class ManagementController {
@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);
log.info("查询医院的具体信息开始{}",params);
List<ManagementVo.HospitalData> hospitalData = managementService.queryHospitalInfo(params.getParam(),params.getUserId());
log.info("查询医院等级列表结束:{}",hospitalData);
log.info("查询医院的具体信息结束:{}",hospitalData);
return JsonResponse.newInstance().ok(hospitalData);
}
@MustLogin
@ApiOperation(value = "添加医院", notes = "")
@RequestMapping(value = "/addHospital", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse addHospital(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.AddHospital> params) throws Exception{
log.info("添加医院开始{}",params);
managementService.addHospital(params.getParam(),params.getUserId());
log.info("添加医院结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "修改医院", notes = "")
@RequestMapping(value = "/updateHospital", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse updateHospital(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.UpdateHospital> params) throws Exception{
log.info("修改医院开始{}",params);
managementService.updateHospital(params.getParam(),params.getUserId());
log.info("修改医院结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "添加部门", notes = "")
@RequestMapping(value = "/addDepartment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse addDepartment(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.AddDepartment> params) throws Exception{
log.info("添加部门开始{}",params);
managementService.addDepartment(params.getParam(),params.getUserId());
log.info("添加部门结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "修改部门", notes = "")
@RequestMapping(value = "/updateDepartment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse updateDepartment(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.UpdateDepartment> params) throws Exception{
log.info("修改部门开始{}",params);
managementService.updateDepartment(params.getParam(),params.getUserId());
log.info("修改部门结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "删除部门", notes = "")
@RequestMapping(value = "/delDepartment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse delDepartment(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.DelDepartment> params) throws Exception{
log.info("删除部门开始{}",params);
managementService.delDepartment(params.getParam(),params.getUserId());
log.info("删除部门结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "添加职位", notes = "")
@RequestMapping(value = "/addPosition", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse addPosition(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.AddPosition> params) throws Exception{
log.info("添加职位开始{}",params);
managementService.addPosition(params.getParam(),params.getUserId());
log.info("添加职位结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "删除职位", notes = "")
@RequestMapping(value = "/delPosition", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse delPosition(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.DelPosition> params) throws Exception{
log.info("删除职位开始{}",params);
managementService.delPosition(params.getParam(),params.getUserId());
log.info("删除职位结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "修改职位", notes = "")
@RequestMapping(value = "/updatePosition", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse updatePosition(@ApiParam @Validated @RequestBody QueryDto<ManagementDto.UpdatePosition> params) throws Exception{
log.info("修改职位开始{}",params);
managementService.updatePosition(params.getParam(),params.getUserId());
log.info("修改职位结束");
return JsonResponse.newInstance().ok();
}
}

103
src/main/java/com/ccsens/carbasics/bean/dto/ManagementDto.java

@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
@ -34,4 +35,106 @@ public class ManagementDto {
private Long id;
}
@Data
@ApiModel("添加医院-入参")
public static class AddHospital {
@NotNull(message = "请选择医院等级")
@ApiModelProperty("等级id")
private Long levelId;
@NotBlank(message = "医院名称不能为空")
@ApiModelProperty("医院名称")
private String name;
@NotNull(message = "请选择省")
@ApiModelProperty("省id")
private Long provinceId;
@NotNull(message = "请选择省市")
@ApiModelProperty("市id")
private Long cityId;
@NotNull(message = "请选择省市县")
@ApiModelProperty("县id")
private Long countyId;
}
@Data
@ApiModel("修改医院-入参")
public static class UpdateHospital {
@NotNull(message = "医院id不能为空")
@ApiModelProperty("医院id")
private Long id;
@NotNull(message = "请选择医院等级")
@ApiModelProperty("等级id")
private Long levelId;
@ApiModelProperty("医院名称")
private String name;
@NotNull(message = "请选择省")
@ApiModelProperty("省id")
private Long provinceId;
@NotNull(message = "请选择省市")
@ApiModelProperty("市id")
private Long cityId;
@NotNull(message = "请选择省市县")
@ApiModelProperty("县id")
private Long countyId;
}
@Data
@ApiModel("添加部门-入参")
public static class AddDepartment {
@NotBlank(message = "部门名称不能为空")
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("上级部门id")
private Long parentId;
@NotNull(message = "机构id不能为空")
@ApiModelProperty("机构id")
private Long oid;
}
@Data
@ApiModel("修改部门-入参")
public static class UpdateDepartment {
@NotBlank(message = "部门名称不能为空")
@ApiModelProperty("部门名称")
private String departmentName;
@ApiModelProperty("部门id")
private Long did;
}
@Data
@ApiModel("删除部门-入参")
public static class DelDepartment {
@ApiModelProperty("部门id")
private Long did;
}
@Data
@ApiModel("添加职位-入参")
public static class AddPosition {
@NotBlank(message = "职位名称不能为空")
@ApiModelProperty("职位名称")
private String positionName;
@NotNull(message = "部门id不能为空")
@ApiModelProperty("部门id")
private Long departmentId;
}
@Data
@ApiModel("删除职位-入参")
public static class DelPosition {
@NotNull(message = "职位id不能为空")
@ApiModelProperty("职位id")
private Long positionId;
}
@Data
@ApiModel("修改职位-入参")
public static class UpdatePosition {
@NotNull(message = "职位id不能为空")
@ApiModelProperty("职位id")
private Long positionId;
@NotBlank(message = "职位名称不能为空")
@ApiModelProperty("职位名称")
private String positionName;
}
}

33
src/main/java/com/ccsens/carbasics/bean/po/Organization.java

@ -20,6 +20,12 @@ public class Organization implements Serializable {
private Long levelId;
private Long provinceId;
private Long cityId;
private Long countyId;
private Long operator;
private Date createdAt;
@ -94,6 +100,30 @@ public class Organization implements Serializable {
this.levelId = levelId;
}
public Long getProvinceId() {
return provinceId;
}
public void setProvinceId(Long provinceId) {
this.provinceId = provinceId;
}
public Long getCityId() {
return cityId;
}
public void setCityId(Long cityId) {
this.cityId = cityId;
}
public Long getCountyId() {
return countyId;
}
public void setCountyId(Long countyId) {
this.countyId = countyId;
}
public Long getOperator() {
return operator;
}
@ -140,6 +170,9 @@ public class Organization implements Serializable {
sb.append(", introduce=").append(introduce);
sb.append(", level=").append(level);
sb.append(", levelId=").append(levelId);
sb.append(", provinceId=").append(provinceId);
sb.append(", cityId=").append(cityId);
sb.append(", countyId=").append(countyId);
sb.append(", operator=").append(operator);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);

180
src/main/java/com/ccsens/carbasics/bean/po/OrganizationExample.java

@ -625,6 +625,186 @@ public class OrganizationExample {
return (Criteria) this;
}
public Criteria andProvinceIdIsNull() {
addCriterion("province_id is null");
return (Criteria) this;
}
public Criteria andProvinceIdIsNotNull() {
addCriterion("province_id is not null");
return (Criteria) this;
}
public Criteria andProvinceIdEqualTo(Long value) {
addCriterion("province_id =", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdNotEqualTo(Long value) {
addCriterion("province_id <>", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdGreaterThan(Long value) {
addCriterion("province_id >", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdGreaterThanOrEqualTo(Long value) {
addCriterion("province_id >=", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdLessThan(Long value) {
addCriterion("province_id <", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdLessThanOrEqualTo(Long value) {
addCriterion("province_id <=", value, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdIn(List<Long> values) {
addCriterion("province_id in", values, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdNotIn(List<Long> values) {
addCriterion("province_id not in", values, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdBetween(Long value1, Long value2) {
addCriterion("province_id between", value1, value2, "provinceId");
return (Criteria) this;
}
public Criteria andProvinceIdNotBetween(Long value1, Long value2) {
addCriterion("province_id not between", value1, value2, "provinceId");
return (Criteria) this;
}
public Criteria andCityIdIsNull() {
addCriterion("city_id is null");
return (Criteria) this;
}
public Criteria andCityIdIsNotNull() {
addCriterion("city_id is not null");
return (Criteria) this;
}
public Criteria andCityIdEqualTo(Long value) {
addCriterion("city_id =", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdNotEqualTo(Long value) {
addCriterion("city_id <>", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdGreaterThan(Long value) {
addCriterion("city_id >", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdGreaterThanOrEqualTo(Long value) {
addCriterion("city_id >=", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdLessThan(Long value) {
addCriterion("city_id <", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdLessThanOrEqualTo(Long value) {
addCriterion("city_id <=", value, "cityId");
return (Criteria) this;
}
public Criteria andCityIdIn(List<Long> values) {
addCriterion("city_id in", values, "cityId");
return (Criteria) this;
}
public Criteria andCityIdNotIn(List<Long> values) {
addCriterion("city_id not in", values, "cityId");
return (Criteria) this;
}
public Criteria andCityIdBetween(Long value1, Long value2) {
addCriterion("city_id between", value1, value2, "cityId");
return (Criteria) this;
}
public Criteria andCityIdNotBetween(Long value1, Long value2) {
addCriterion("city_id not between", value1, value2, "cityId");
return (Criteria) this;
}
public Criteria andCountyIdIsNull() {
addCriterion("county_id is null");
return (Criteria) this;
}
public Criteria andCountyIdIsNotNull() {
addCriterion("county_id is not null");
return (Criteria) this;
}
public Criteria andCountyIdEqualTo(Long value) {
addCriterion("county_id =", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdNotEqualTo(Long value) {
addCriterion("county_id <>", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdGreaterThan(Long value) {
addCriterion("county_id >", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdGreaterThanOrEqualTo(Long value) {
addCriterion("county_id >=", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdLessThan(Long value) {
addCriterion("county_id <", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdLessThanOrEqualTo(Long value) {
addCriterion("county_id <=", value, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdIn(List<Long> values) {
addCriterion("county_id in", values, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdNotIn(List<Long> values) {
addCriterion("county_id not in", values, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdBetween(Long value1, Long value2) {
addCriterion("county_id between", value1, value2, "countyId");
return (Criteria) this;
}
public Criteria andCountyIdNotBetween(Long value1, Long value2) {
addCriterion("county_id not between", value1, value2, "countyId");
return (Criteria) this;
}
public Criteria andOperatorIsNull() {
addCriterion("operator is null");
return (Criteria) this;

7
src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java

@ -158,4 +158,11 @@ public interface OrganizationDao extends OrganizationMapper {
* @return 下级部门具体信息
*/
ManagementVo.HospitalData querySonDepartmentData(@Param("did") Long did);
/**
* 查询名称重复
* @param param 参数
* @return 0否 >=1重复
*/
Integer queryNameRepeat(@Param("param") ManagementDto.AddHospital param);
}

56
src/main/java/com/ccsens/carbasics/service/IManagementService.java

@ -28,4 +28,60 @@ public interface IManagementService {
* @return 医院的具体信息
*/
List<ManagementVo.HospitalData> queryHospitalInfo(ManagementDto.QueryHospitalInfo param, Long userId);
/**
* 机构管理-添加医院
* @param param 医院名称/等级/省市县id
* @param userId 用户id
*/
void addHospital(ManagementDto.AddHospital param, Long userId);
/**
* 机构管理-修改医院信息
* @param param 医院名称/等级/省市县id
* @param userId 用户id
*/
void updateHospital(ManagementDto.UpdateHospital param, Long userId);
/**
* 机构管理-添加部门
* @param param 部门名称/上级部门id/机构id
* @param userId 用户id
*/
void addDepartment(ManagementDto.AddDepartment param, Long userId);
/**
* 机构管理-修改部门信息
* @param param 部门id/部门名称
* @param userId 用户id
*/
void updateDepartment(ManagementDto.UpdateDepartment param, Long userId);
/**
* 机构管理-删除部门
* @param param 部门id
* @param userId 用户id
*/
void delDepartment(ManagementDto.DelDepartment param, Long userId);
/**
* 机构管理-添加职位
* @param param 职位名称/部门id
* @param userId 用户id
*/
void addPosition(ManagementDto.AddPosition param, Long userId);
/**
* 删除职位
* @param param 职位id
* @param userId 用户id
*/
void delPosition(ManagementDto.DelPosition param, Long userId);
/**
* 机构管理-修改职位
* @param param 职位id/职位名称
* @param userId 用户id
*/
void updatePosition(ManagementDto.UpdatePosition param, Long userId);
}

180
src/main/java/com/ccsens/carbasics/service/ManagementService.java

@ -1,17 +1,24 @@
package com.ccsens.carbasics.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ccsens.carbasics.bean.dto.ManagementDto;
import com.ccsens.carbasics.bean.po.OrganizationDepartment;
import com.ccsens.carbasics.bean.po.OrganizationDepartmentParent;
import com.ccsens.carbasics.bean.po.OrganizationLevel;
import com.ccsens.carbasics.bean.po.OrganizationLevelExample;
import com.ccsens.carbasics.bean.po.*;
import com.ccsens.carbasics.bean.vo.AccountVo;
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.OrganizationDepartmentParentDao;
import com.ccsens.carbasics.persist.dao.OrganizationLevelDao;
import com.ccsens.carbasics.persist.dao.*;
import com.ccsens.carbasics.persist.mapper.OrganizationLevelMapper;
import com.ccsens.carbasics.persist.mapper.OrganizationPositionTypeRelationMapper;
import com.ccsens.carbasics.util.Constant;
import com.ccsens.carbasics.util.DefaultCodeError;
import com.ccsens.common.bean.po.ConstantExample;
import com.ccsens.common.persist.mapper.ConstantMapper;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;
@ -34,6 +41,18 @@ public class ManagementService implements IManagementService {
private OrganizationDao organizationDao;
@Resource
private OrganizationDepartmentParentDao departmentParentDao;
@Resource
private ConstantMapper constantMapper;
@Resource
private OrganizationPositionTypeDao positionTypeDao;
@Resource
private OrganizationPositionDao positionDao;
@Resource
private OrganizationDepartmentDao departmentDao;
@Resource
private OrganizationPositionTypeRelationMapper positionTypeRelationMapper;
@Resource
private Snowflake snowflake;
@Override
public List<ManagementVo.LevelInfo> queryLevel(Long userId) {
@ -55,7 +74,6 @@ public class ManagementService implements IManagementService {
}
return hospitalData;
}
public void querySonDepartment(ManagementVo.HospitalData hospitalDatum) {
List<Long> sonIdList = departmentParentDao.querySonDepartmentId(hospitalDatum.getDid());
log.info("部门{}的下级部门{}:",hospitalDatum.getDid(),sonIdList);
@ -71,4 +89,148 @@ public class ManagementService implements IManagementService {
}
@Override
public void addHospital(ManagementDto.AddHospital param, Long userId) {
Integer repeat = organizationDao.queryNameRepeat(param);
if (1 <= repeat) {
throw new BaseException(DefaultCodeError.HOSPITAL_NAME_REPEAT);
}
Organization organization = new Organization();
organization.setId(snowflake.nextId());
organization.setOrganizationType((byte) 3);
organization.setName(param.getName());
organization.setLevelId(param.getLevelId());
organization.setProvinceId(param.getProvinceId());
organization.setCityId(param.getCityId());
organization.setCountyId(param.getCountyId());
organization.setOperator(userId);
organizationDao.insertSelective(organization);
addTemplateForHospital(organization.getId(),userId);
}
public void addTemplateForHospital(Long hospitalId,Long userId) {
//查询常量
ConstantExample constantExample = new ConstantExample();
constantExample.createCriteria().andBusinessTypeEqualTo((byte) 2)
.andTKeyEqualTo(Constant.DEPARTMENT_POSITION_KEY);
List<com.ccsens.common.bean.po.Constant> constantList = constantMapper.selectByExample(constantExample);
log.info("查询到的模板部门与职位:{}",constantList);
if (CollectionUtil.isNotEmpty(constantList)) {
JSONArray jsonArray = JSONObject.parseArray(constantList.get(0).gettValue());
List<AccountVo.DepartmentList> departmentList = jsonArray.toJavaList(AccountVo.DepartmentList.class);
log.info("给机构{}添加模板部门与职位{}",hospitalId,departmentList);
for (AccountVo.DepartmentList department : departmentList) {
OrganizationDepartment newDepartment = new OrganizationDepartment();
newDepartment.setId(snowflake.nextId());
newDepartment.setName(department.getDepartmentName());
newDepartment.setCode(department.getDepartmentCode());
newDepartment.setOrganizationId(hospitalId);
newDepartment.setOperator(userId);
if (CollectionUtil.isNotEmpty(department.getPositions())) {
for (AccountVo.Position position : department.getPositions()) {
OrganizationPosition newPosition = new OrganizationPosition();
newPosition.setId(snowflake.nextId());
newPosition.setName(position.getPositionName());
newPosition.setRoleName(position.getPositionName());
newPosition.setDepartmentId(newDepartment.getId());
newPosition.setOperator(userId);
positionDao.insertSelective(newPosition);
//绑定角色
OrganizationPositionType positionType = positionTypeDao.queryByCode(position.getPositionCode());
if (ObjectUtil.isNotNull(positionType)) {
OrganizationPositionTypeRelation positionTypeRelation = new OrganizationPositionTypeRelation();
positionTypeRelation.setId(snowflake.nextId());
positionTypeRelation.setPositionId(newPosition.getId());
positionTypeRelation.setPositionTypeId(positionType.getId());
positionTypeRelationMapper.insertSelective(positionTypeRelation);
}
}
}
}
}
}
@Override
public void updateHospital(ManagementDto.UpdateHospital param, Long userId) {
if (StrUtil.isNotBlank(param.getName())) {
ManagementDto.AddHospital addHospital = new ManagementDto.AddHospital();
BeanUtil.copyProperties(param,addHospital);
Integer repeat = organizationDao.queryNameRepeat(addHospital);
if (1 <= repeat) {
throw new BaseException(DefaultCodeError.HOSPITAL_NAME_REPEAT);
}
}
Organization organization = new Organization();
organization.setId(param.getId());
BeanUtil.copyProperties(param,organization);
organizationDao.updateByPrimaryKeySelective(organization);
//TODO 同步修改tall项目名称
}
@Override
public void addDepartment(ManagementDto.AddDepartment param, Long userId) {
OrganizationDepartment department = new OrganizationDepartment();
department.setId(snowflake.nextId());
department.setName(param.getDepartmentName());
department.setOrganizationId(param.getOid());
departmentDao.insertSelective(department);
if (ObjectUtil.isNotNull(param.getParentId()) && 0 != param.getParentId()) {
OrganizationDepartmentParent departmentParent = new OrganizationDepartmentParent();
departmentParent.setId(snowflake.nextId());
departmentParent.setDepartmentId(department.getId());
departmentParent.setParentId(param.getParentId());
departmentParent.setOperator(userId);
departmentParentDao.insertSelective(departmentParent);
}
}
@Override
public void updateDepartment(ManagementDto.UpdateDepartment param, Long userId) {
OrganizationDepartment department = new OrganizationDepartment();
department.setId(param.getDid());
department.setName(param.getDepartmentName());
departmentDao.updateByPrimaryKeySelective(department);
}
@Override
public void delDepartment(ManagementDto.DelDepartment param, Long userId) {
OrganizationDepartment department = new OrganizationDepartment();
department.setId(param.getDid());
department.setRecStatus((byte) 2);
departmentDao.updateByPrimaryKeySelective(department);
}
@Override
public void addPosition(ManagementDto.AddPosition param, Long userId) {
OrganizationPosition position = new OrganizationPosition();
position.setId(snowflake.nextId());
position.setName(param.getPositionName());
position.setRoleName(param.getPositionName());
position.setDepartmentId(param.getDepartmentId());
positionDao.insertSelective(position);
}
@Override
public void delPosition(ManagementDto.DelPosition param, Long userId) {
OrganizationPosition position = new OrganizationPosition();
position.setId(param.getPositionId());
position.setRecStatus((byte) 2);
positionDao.updateByPrimaryKeySelective(position);
}
@Override
public void updatePosition(ManagementDto.UpdatePosition param, Long userId) {
OrganizationPosition position = new OrganizationPosition();
position.setId(param.getPositionId());
position.setRoleName(param.getPositionName());
position.setName(param.getPositionName());
}
}

1
src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

@ -424,6 +424,7 @@ public class QuestionnaireService implements IQuestionnaireService{
departmentOne.setId(snowflake.nextId());
departmentOne.setOrganizationId(organization.getId());
departmentOne.setCode(departmentTemplate.getCode());
//TODO 比较code 如果code相等 使用departmentName
departmentOne.setName(departmentTemplate.getName());
departmentDao.insertSelective(departmentOne);
if (departmentName.equals(departmentTemplate.getName())) {

1
src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java

@ -53,6 +53,7 @@ public class DefaultCodeError extends CodeError {
public static final Code BUTTON_START_ALREADY = new Code(506,"本次急救已一键启动", true);
public static final Code FIRST_AID_AUDIT = new Code(507,"急救审核通过,数据不可修改", true);
public static final Code OUT_HOSPITAL_AUDIT = new Code(508,"出院审核通过,数据不可修改", true);
public static final Code HOSPITAL_NAME_REPEAT = new Code(509,"医院名称重复", true);

4
src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: test
include: common, util-test
active: pre
include: common, util-pre

30
src/main/resources/mapper_dao/AreaDao.xml

@ -3,37 +3,29 @@
<mapper namespace="com.ccsens.carbasics.persist.dao.AreaDao">
<resultMap id="area" type="com.ccsens.carbasics.bean.vo.QuestionnaireVo$AreaInfo">
<id column="shengid" property="id"/>
<result column="sheng" property="name"/>
<id column="shiid" property="id"/>
<result column="shiName" property="name"/>
<collection property="child" ofType="com.ccsens.carbasics.bean.vo.QuestionnaireVo$AreaInfo">
<id column="shiid" property="id"/>
<result column="shiname" property="name"/>
<collection property="child" ofType="com.ccsens.carbasics.bean.vo.QuestionnaireVo$AreaInfo">
<id column="quid" property="id"/>
<result column="quname" property="name"/>
</collection>
<id column="quid" property="id"/>
<result column="quName" property="name"/>
</collection>
</resultMap>
<select id="queryByParentId" resultMap="area">
SELECT
a.id AS shengid,
a.area_name AS sheng,
a1.id AS shiid,
a1.area_parent_id AS shif,
a1.area_name AS shiname,
a2.id AS quid,
a2.area_parent_id AS quf,
a2.area_name AS quname
a.id AS shiid,
a.area_name AS shiName,
a1.id AS quid,
a1.area_name As quName
FROM
t_area AS a
LEFT JOIN t_area AS a1 ON a.id = a1.area_parent_id
LEFT JOIN t_area AS a2 ON a1.id = a2.area_parent_id
WHERE
a.area_parent_id = 0
a.rec_status = 0
AND a.area_parent_id = #{id}
AND a.area_type = 0
AND a1.rec_status = 0
AND a1.area_type = 0
AND a2.area_type = 0
</select>
<select id="queryByIdArr" resultType="com.ccsens.carbasics.bean.vo.QuestionnaireVo$AreaBasic">
select id, area_name as name from t_area

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

@ -996,4 +996,17 @@
AND op.rec_status = 0
</select>
<select id="queryNameRepeat" resultType="java.lang.Integer">
SELECT
COUNT(id)
FROM
`t_organization`
WHERE
rec_status = 0
AND `name` = #{param.name}
AND province_id = #{param.provinceId}
AND city_id = #{param.cityId}
AND county_id = #{param.countyId}
</select>
</mapper>

55
src/main/resources/mapper_raw/OrganizationMapper.xml

@ -10,6 +10,9 @@
<result column="introduce" jdbcType="VARCHAR" property="introduce" />
<result column="level" jdbcType="TINYINT" property="level" />
<result column="level_id" jdbcType="BIGINT" property="levelId" />
<result column="province_id" jdbcType="BIGINT" property="provinceId" />
<result column="city_id" jdbcType="BIGINT" property="cityId" />
<result column="county_id" jdbcType="BIGINT" property="countyId" />
<result column="operator" jdbcType="BIGINT" property="operator" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
@ -74,8 +77,8 @@
</where>
</sql>
<sql id="Base_Column_List">
id, organization_type, code, name, short_name, introduce, level, level_id, operator,
created_at, updated_at, rec_status
id, organization_type, code, name, short_name, introduce, level, level_id, province_id,
city_id, county_id, operator, created_at, updated_at, rec_status
</sql>
<select id="selectByExample" parameterType="com.ccsens.carbasics.bean.po.OrganizationExample" resultMap="BaseResultMap">
select
@ -110,12 +113,14 @@
<insert id="insert" parameterType="com.ccsens.carbasics.bean.po.Organization">
insert into t_organization (id, organization_type, code,
name, short_name, introduce,
level, level_id, operator,
level, level_id, province_id,
city_id, county_id, operator,
created_at, updated_at, rec_status
)
values (#{id,jdbcType=BIGINT}, #{organizationType,jdbcType=TINYINT}, #{code,jdbcType=VARCHAR},
#{name,jdbcType=VARCHAR}, #{shortName,jdbcType=VARCHAR}, #{introduce,jdbcType=VARCHAR},
#{level,jdbcType=TINYINT}, #{levelId,jdbcType=BIGINT}, #{operator,jdbcType=BIGINT},
#{level,jdbcType=TINYINT}, #{levelId,jdbcType=BIGINT}, #{provinceId,jdbcType=BIGINT},
#{cityId,jdbcType=BIGINT}, #{countyId,jdbcType=BIGINT}, #{operator,jdbcType=BIGINT},
#{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}
)
</insert>
@ -146,6 +151,15 @@
<if test="levelId != null">
level_id,
</if>
<if test="provinceId != null">
province_id,
</if>
<if test="cityId != null">
city_id,
</if>
<if test="countyId != null">
county_id,
</if>
<if test="operator != null">
operator,
</if>
@ -184,6 +198,15 @@
<if test="levelId != null">
#{levelId,jdbcType=BIGINT},
</if>
<if test="provinceId != null">
#{provinceId,jdbcType=BIGINT},
</if>
<if test="cityId != null">
#{cityId,jdbcType=BIGINT},
</if>
<if test="countyId != null">
#{countyId,jdbcType=BIGINT},
</if>
<if test="operator != null">
#{operator,jdbcType=BIGINT},
</if>
@ -231,6 +254,15 @@
<if test="record.levelId != null">
level_id = #{record.levelId,jdbcType=BIGINT},
</if>
<if test="record.provinceId != null">
province_id = #{record.provinceId,jdbcType=BIGINT},
</if>
<if test="record.cityId != null">
city_id = #{record.cityId,jdbcType=BIGINT},
</if>
<if test="record.countyId != null">
county_id = #{record.countyId,jdbcType=BIGINT},
</if>
<if test="record.operator != null">
operator = #{record.operator,jdbcType=BIGINT},
</if>
@ -258,6 +290,9 @@
introduce = #{record.introduce,jdbcType=VARCHAR},
level = #{record.level,jdbcType=TINYINT},
level_id = #{record.levelId,jdbcType=BIGINT},
province_id = #{record.provinceId,jdbcType=BIGINT},
city_id = #{record.cityId,jdbcType=BIGINT},
county_id = #{record.countyId,jdbcType=BIGINT},
operator = #{record.operator,jdbcType=BIGINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
@ -290,6 +325,15 @@
<if test="levelId != null">
level_id = #{levelId,jdbcType=BIGINT},
</if>
<if test="provinceId != null">
province_id = #{provinceId,jdbcType=BIGINT},
</if>
<if test="cityId != null">
city_id = #{cityId,jdbcType=BIGINT},
</if>
<if test="countyId != null">
county_id = #{countyId,jdbcType=BIGINT},
</if>
<if test="operator != null">
operator = #{operator,jdbcType=BIGINT},
</if>
@ -314,6 +358,9 @@
introduce = #{introduce,jdbcType=VARCHAR},
level = #{level,jdbcType=TINYINT},
level_id = #{levelId,jdbcType=BIGINT},
province_id = #{provinceId,jdbcType=BIGINT},
city_id = #{cityId,jdbcType=BIGINT},
county_id = #{countyId,jdbcType=BIGINT},
operator = #{operator,jdbcType=BIGINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},

2
src/main/resources/mbg.xml

@ -21,7 +21,7 @@
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://101.201.226.136:3306/carbasics?useUnicode=true&amp;characterEncoding=UTF-8&amp;tinyInt1isBit=false"
connectionURL="jdbc:mysql://test.tall.wiki:3306/carbasics?useUnicode=true&amp;characterEncoding=UTF-8&amp;tinyInt1isBit=false"
userId="root"
password="po3OynBO[M3579p6L7)o">
</jdbcConnection>

Loading…
Cancel
Save