Browse Source

修改机构管理bug

test
lucky 4 years ago
parent
commit
7e2592efa6
  1. 4
      src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java
  2. 6
      src/main/java/com/ccsens/carbasics/service/ManagementService.java
  3. 11
      src/main/resources/mapper_dao/OrganizationDao.xml

4
src/main/java/com/ccsens/carbasics/bean/vo/ManagementVo.java

@ -49,6 +49,8 @@ public class ManagementVo {
private Long did; private Long did;
@ApiModelProperty("部门名称") @ApiModelProperty("部门名称")
private String departmentName; private String departmentName;
@ApiModelProperty("修改状态")
private boolean departmentIsShow;
@ApiModelProperty("部门下的职位列表") @ApiModelProperty("部门下的职位列表")
List<PositionInfo> positionInfoList; List<PositionInfo> positionInfoList;
@ApiModelProperty("下级部门列表") @ApiModelProperty("下级部门列表")
@ -61,6 +63,8 @@ public class ManagementVo {
private Long pid; private Long pid;
@ApiModelProperty("职位名称") @ApiModelProperty("职位名称")
private String pName; private String pName;
@ApiModelProperty("修改状态")
private boolean isShow;
@ApiModelProperty("职位关联的角色") @ApiModelProperty("职位关联的角色")
List<RoleInfo> roleList; List<RoleInfo> roleList;
@ApiModelProperty("职位下的角色列表") @ApiModelProperty("职位下的角色列表")

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

@ -84,6 +84,11 @@ public class ManagementService implements IManagementService {
ArrayList<ManagementVo.HospitalData> sonList = new ArrayList<>(); ArrayList<ManagementVo.HospitalData> sonList = new ArrayList<>();
for (Long did : sonIdList) { for (Long did : sonIdList) {
ManagementVo.HospitalData sonDepartmentData = organizationDao.querySonDepartmentData(did); ManagementVo.HospitalData sonDepartmentData = organizationDao.querySonDepartmentData(did);
if (CollectionUtil.isNotEmpty(sonDepartmentData.getPositionInfoList())) {
for (ManagementVo.PositionInfo positionInfo : sonDepartmentData.getPositionInfoList()) {
positionInfo.setShow(false);
}
}
sonList.add(sonDepartmentData); sonList.add(sonDepartmentData);
querySonDepartment(sonDepartmentData); querySonDepartment(sonDepartmentData);
} }
@ -266,6 +271,7 @@ public class ManagementService implements IManagementService {
position.setId(param.getPositionId()); position.setId(param.getPositionId());
position.setRoleName(param.getPositionName()); position.setRoleName(param.getPositionName());
position.setName(param.getPositionName()); position.setName(param.getPositionName());
positionDao.updateByPrimaryKeySelective(position);
} }
@Override @Override

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

@ -922,6 +922,7 @@
<resultMap id="departmentData1" type="com.ccsens.carbasics.bean.vo.ManagementVo$HospitalData"> <resultMap id="departmentData1" type="com.ccsens.carbasics.bean.vo.ManagementVo$HospitalData">
<id property="did" column="did"/> <id property="did" column="did"/>
<result property="departmentName" column="departmentName"/> <result property="departmentName" column="departmentName"/>
<result property="departmentIsShow" column="departmentIsShow"/>
<collection property="positionInfoList" javaType="List" ofType="com.ccsens.carbasics.bean.vo.ManagementVo$PositionInfo"> <collection property="positionInfoList" javaType="List" ofType="com.ccsens.carbasics.bean.vo.ManagementVo$PositionInfo">
<id property="pid" column="pid"/> <id property="pid" column="pid"/>
<result property="pName" column="pName"/> <result property="pName" column="pName"/>
@ -941,6 +942,7 @@
o.id, o.id,
o.`name` AS hName, o.`name` AS hName,
od.id AS did, od.id AS did,
false AS departmentIsShow,
od.`name` AS departmentName, od.`name` AS departmentName,
op.id AS pid, op.id AS pid,
op.role_name AS pName, op.role_name AS pName,
@ -951,8 +953,9 @@
m.contact AS phone m.contact AS phone
FROM FROM
t_organization AS o t_organization AS o
LEFT JOIN t_organization_department AS od ON o.id = od.organization_id LEFT JOIN t_organization_department AS od ON o.id = od.organization_id AND od.rec_status = 0
LEFT JOIN t_organization_position AS op ON od.id = op.department_id LEFT JOIN t_organization_department_parent AS dp ON od.id = dp.department_id
LEFT JOIN t_organization_position AS op ON od.id = op.department_id AND op.rec_status = 0
LEFT JOIN t_organization_position_type_relation AS ptr ON ptr.position_id = op.id LEFT JOIN t_organization_position_type_relation AS ptr ON ptr.position_id = op.id
AND ptr.rec_status = 0 AND ptr.rec_status = 0
LEFT JOIN t_organization_position_type AS pt ON ptr.position_type_id = pt.id LEFT JOIN t_organization_position_type AS pt ON ptr.position_type_id = pt.id
@ -964,8 +967,8 @@
WHERE WHERE
o.rec_status = 0 o.rec_status = 0
AND o.id = #{param.id} AND o.id = #{param.id}
AND od.rec_status = 0 AND dp.rec_status IS NULL
AND op.rec_status = 0
</select> </select>
<select id="querySonDepartmentData" resultMap="departmentData1"> <select id="querySonDepartmentData" resultMap="departmentData1">

Loading…
Cancel
Save