科室同步,添加门诊,病区两种情况判断与操作

3.2.4.44
wyb 2 years ago
parent 37e85611cc
commit dbd0ad2ebf

@ -0,0 +1,18 @@
package com.docus.server.collection.consts;
/**
*
*
* @author WYBDEV
*/
public interface PowerDeptConst {
/**
*
*/
String MZ_DEPT_PREFIX = "M";
/**
*
*/
String WARD_DEPT_PREFIX = "B";
}

@ -1,9 +1,7 @@
package com.docus.server.collection.mapper;
import com.docus.server.collection.dto.DeptModifyParam;
import com.docus.server.collection.dto.UserModifyParam;
import com.docus.server.collection.entity.PowerDept;
import com.docus.server.collection.entity.PowerUser;
import org.apache.ibatis.annotations.Param;
/**
@ -23,6 +21,10 @@ public interface PowerDeptMapper {
*/
PowerDept getDeptByDeptCode(@Param("deptCode") String deptCode);
PowerDept getWardDeptByDeptCode(@Param("deptCode") String deptCode);
PowerDept getMzDeptByDeptCode(@Param("deptCode") String deptCode);
/**
*
* @param deptModifyParam
@ -30,6 +32,10 @@ public interface PowerDeptMapper {
*/
int updateDept(@Param("dept") DeptModifyParam deptModifyParam);
int updateWardDept(@Param("dept") DeptModifyParam deptModifyParam);
int updateMzDept(@Param("dept") DeptModifyParam deptModifyParam);
/**
*
* @param deptModifyParam
@ -37,10 +43,21 @@ public interface PowerDeptMapper {
*/
int addDept(@Param("dept") DeptModifyParam deptModifyParam);
int addWardDept(@Param("dept") DeptModifyParam deptModifyParam);
int addMzDept(@Param("dept") DeptModifyParam deptModifyParam);
/**
*
* @param deptCode
* @return
*/
int delDeptByDeptCode(@Param("deptCode") String deptCode);
int delWardDeptByDeptCode(@Param("deptCode") String deptCode);
int delMzDeptByDeptCode(@Param("deptCode") String deptCode);
}

@ -1,7 +1,6 @@
package com.docus.server.collection.service;
import com.docus.server.collection.dto.DeptDto;
import com.docus.server.collection.dto.UserDto;
/**
*
@ -21,5 +20,5 @@ public interface IPowerDeptService {
* @param deptCode
* @return
*/
boolean delDeptByDeptCode(String deptCode);
void delDeptByDeptCode(String deptCode);
}

@ -2,17 +2,16 @@ package com.docus.server.collection.service.impl;
import com.docus.core.util.Func;
import com.docus.infrastructure.redis.service.IdService;
import com.docus.server.collection.config.UserSyncConfig;
import com.docus.server.collection.consts.PowerDeptConst;
import com.docus.server.collection.dto.DeptDto;
import com.docus.server.collection.dto.DeptModifyParam;
import com.docus.server.collection.dto.UserModifyParam;
import com.docus.server.collection.entity.PowerDept;
import com.docus.server.collection.entity.PowerUser;
import com.docus.server.collection.mapper.PowerDeptMapper;
import com.docus.server.collection.service.IPowerDeptService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Objects;
/**
*
@ -28,26 +27,51 @@ public class PowerDeptServiceImpl implements IPowerDeptService {
@Override
public boolean register(DeptDto deptDto) {
PowerDept powerDept = powerDeptMapper.getDeptByDeptCode(deptDto.getDeptCode());
String deptCode = deptDto.getDeptCode();
PowerDept powerDept = null;
DeptModifyParam deptModifyParam = deptDto.transDeptAddParam();
if (Func.isEmpty(powerDept)) {
if (deptCode.startsWith(PowerDeptConst.WARD_DEPT_PREFIX)) {
powerDept = powerDeptMapper.getWardDeptByDeptCode(deptCode);
} else if (deptCode.startsWith(PowerDeptConst.MZ_DEPT_PREFIX)) {
powerDept = powerDeptMapper.getMzDeptByDeptCode(deptCode);
} else {
powerDept = powerDeptMapper.getDeptByDeptCode(deptCode);
}
if (Objects.isNull(powerDept)) {
long deptId = idService.getDateSeq();
deptModifyParam.setDeptId(deptId);
powerDeptMapper.addDept(deptModifyParam);
if (deptCode.startsWith(PowerDeptConst.WARD_DEPT_PREFIX)) {
powerDeptMapper.addWardDept(deptModifyParam);
} else if (deptCode.startsWith(PowerDeptConst.MZ_DEPT_PREFIX)) {
powerDeptMapper.addMzDept(deptModifyParam);
} else {
powerDeptMapper.addDept(deptModifyParam);
}
return true;
}
deptModifyParam.setDeptId(powerDept.getDeptId());
powerDeptMapper.updateDept(deptModifyParam);
if (deptCode.startsWith(PowerDeptConst.WARD_DEPT_PREFIX)) {
powerDeptMapper.updateWardDept(deptModifyParam);
} else if (deptCode.startsWith(PowerDeptConst.MZ_DEPT_PREFIX)) {
powerDeptMapper.updateMzDept(deptModifyParam);
} else {
powerDeptMapper.updateDept(deptModifyParam);
}
return true;
}
@Override
public boolean delDeptByDeptCode(String deptCode) {
PowerDept powerDept = powerDeptMapper.getDeptByDeptCode(deptCode);
if (Func.isEmpty(powerDept)) {
return true;
public void delDeptByDeptCode(String deptCode) {
if (deptCode.startsWith(PowerDeptConst.WARD_DEPT_PREFIX)) {
powerDeptMapper.delWardDeptByDeptCode(deptCode);
} else if (deptCode.startsWith(PowerDeptConst.MZ_DEPT_PREFIX)) {
powerDeptMapper.delMzDeptByDeptCode(deptCode);
} else {
powerDeptMapper.delDeptByDeptCode(deptCode);
}
powerDeptMapper.delDeptByDeptCode(deptCode);
return true;
}
}

@ -13,6 +13,22 @@
`updater`)
VALUES (#{dept.deptId},#{dept.deptCode},#{dept.deptName},now(),#{dept.authorName},now(),#{dept.authorName})
</insert>
<insert id="addWardDept">
INSERT INTO `docus_system`.`power_ward`(`ward_id`,
`ward_code`,
`ward_name`,
`create_date`,
`creater`,
`update_date`,
`updater`)
VALUES (#{dept.deptId},#{dept.deptCode},#{dept.deptName},now(),#{dept.authorName},now(),#{dept.authorName})
</insert>
<insert id="addMzDept">
INSERT INTO `docus_system`.`power_area`(`area_id`,
`area_code`,
`area_name`)
VALUES (#{dept.deptId},#{dept.deptCode},#{dept.deptName})
</insert>
<update id="updateDept">
update `docus_system`.`power_dept` set
`dept_name`=#{dept.deptName},
@ -20,12 +36,44 @@
`update_date`=now()
where `dept_code`=#{dept.deptCode}
</update>
<update id="updateWardDept">
update
`docus_system`.`power_ward`
set
`ward_name`=#{dept.deptName},
`updater`=#{dept.authorName},
`update_date`=now()
where
`ward_code`=#{dept.deptCode}
</update>
<update id="updateMzDept">
update
`docus_system`.`power_area`
set
`area_name`=#{dept.deptName}
where
`area_code`=#{dept.deptCode}
</update>
<delete id="delDeptByDeptCode">
delete from `docus_system`.`power_dept` where `dept_code` = #{deptCode}
</delete>
<delete id="delWardDeptByDeptCode">
delete from `docus_system`.`power_ward` where `ward_code` = #{deptCode}
</delete>
<delete id="delMzDeptByDeptCode">
delete from `docus_system`.`power_area` where `area_code` = #{deptCode}
</delete>
<select id="getDeptByDeptCode" resultType="com.docus.server.collection.entity.PowerDept">
SELECT `dept_id`,`dept_code`,`dept_name` FROM `docus_system`.`power_dept`
WHERE `dept_code` = #{deptCode} LIMIT 1
</select>
<select id="getWardDeptByDeptCode" resultType="com.docus.server.collection.entity.PowerDept">
SELECT `ward_id` as deptId,`ward_code` as deptCode,`ward_name` as deptName FROM `docus_system`.`power_ward`
WHERE `ward_code` = #{deptCode} LIMIT 1
</select>
<select id="getMzDeptByDeptCode" resultType="com.docus.server.collection.entity.PowerDept">
SELECT `area_id` as deptId,`area_code` as deptCode,`area_name` as deptName FROM `docus_system`.`power_area`
WHERE `area_code` = #{deptCode} LIMIT 1
</select>
</mapper>

Loading…
Cancel
Save