整体架构调整

This commit is contained in:
jiangs 2026-06-03 17:18:14 +08:00
parent d660502372
commit 06e87e87fd
27 changed files with 416 additions and 74 deletions

1
.idea/dataSources.xml generated
View File

@ -11,6 +11,7 @@
<jdbc-additional-properties>
<property name="com.intellij.clouds.kubernetes.db.host.port" />
<property name="com.intellij.clouds.kubernetes.db.enabled" value="false" />
<property name="com.intellij.clouds.kubernetes.db.resource.type" value="Deployment" />
<property name="com.intellij.clouds.kubernetes.db.container.port" />
</jdbc-additional-properties>
<vm-options>&quot;-Djdk.tls.disabledAlgorithms=SSLv3, TLSv1.1, DTLSv1.0, RC4, DES, MD5withRSA, DH keySize &lt; 1024, EC keySize &lt; 224, 3DES_EDE_CBC, anon, NULL, ECDH&quot;</vm-options>

6
.idea/encodings.xml generated
View File

@ -3,8 +3,14 @@
<component name="Encoding">
<file url="file://$PROJECT_DIR$/blood_bus/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_bloodbank/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_bloodbank/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_doctor/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_doctor/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_nurse/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_nurse/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_report/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_bus_report/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_common/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_common/src/main/resources" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/blood_dept/src/main/java" charset="UTF-8" />

4
.idea/vcs.xml generated
View File

@ -1,4 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings" defaultProject="true" />
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -1,7 +1,69 @@
package com.czblood.bus.cache;
import com.alibaba.fastjson2.JSONArray;
import com.czblood.bus.pojo.XkDmzd;
import com.czblood.common.constant.CacheConstants;
import com.czblood.common.core.redis.RedisCache;
import com.czblood.common.utils.StringUtils;
import com.czblood.common.utils.spring.SpringUtils;
import java.util.Collection;
import java.util.List;
/**
* 字典缓存
*/
public class DmzdCache {
/**
* 设置字典缓存
*
* @param key 参数键
* @param dictDatas 字典数据列表
*/
public static void setDictCache(String key, List<XkDmzd> dictDatas) {
SpringUtils.getBean(RedisCache.class).setCacheObject(getCacheKey(key), dictDatas);
}
/**
* 获取字典缓存
*
* @param key 参数键
* @return dictDatas 字典数据列表
*/
public static List<XkDmzd> getDictCache(String key) {
JSONArray arrayCache = SpringUtils.getBean(RedisCache.class).getCacheObject(getCacheKey(key));
if (StringUtils.isNotNull(arrayCache)) {
return arrayCache.toList(XkDmzd.class);
}
return null;
}
/**
* 删除指定字典缓存
*
* @param key 字典键
*/
public static void removeDictCache(String key) {
SpringUtils.getBean(RedisCache.class).deleteObject(getCacheKey(key));
}
/**
* 清空字典缓存
*/
public static void clearDictCache() {
Collection<String> keys = SpringUtils.getBean(RedisCache.class).keys(CacheConstants.XK_DMZD_KEY + "*");
SpringUtils.getBean(RedisCache.class).deleteObject(keys);
}
/**
* 设置cache key
*
* @param configKey 参数键
* @return 缓存键key
*/
public static String getCacheKey(String configKey) {
return CacheConstants.XK_DMZD_KEY + configKey;
}
}

View File

@ -0,0 +1,9 @@
package com.czblood.bus.mapper;
import com.czblood.bus.pojo.XkOperatorInfo;
import java.util.List;
public interface XkOperatorInfoMapper {
List<XkOperatorInfo> queryList(XkOperatorInfo xkOperatorInfo);
}

View File

@ -0,0 +1,25 @@
package com.czblood.bus.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class XkDmzd {
private String wordbook_sign;
private String wordbook_code;
private Integer sid;
private String wordbook_name;
private String remark;
private String exp1;
private String exp2;
private String exp3;
private String exp4;
private String use_sign;
private Date last_modified;
private String exp5;
}

View File

@ -0,0 +1,23 @@
package com.czblood.bus.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class XkOperatorInfo {
private String operator_id;
private String operator_name;
private String pwd;
private String work_group;
private String dept;
private String operator_type;
private String py;
private String is_bank_director;
private String is_medical_director;
private String postname;
private String sign_pic;
private String vshiscode;
}

View File

@ -0,0 +1,82 @@
package com.czblood.bus.system;
import com.czblood.bus.mapper.XKHosInfoMapper;
import com.czblood.bus.mapper.XkOperatorInfoMapper;
import com.czblood.bus.pojo.XkHosInfo;
import com.czblood.bus.pojo.XkOperatorInfo;
import com.czblood.common.core.domain.Result;
import com.czblood.common.core.domain.entity.SysLoginParam;
import com.czblood.common.core.domain.entity.SysUser;
import com.czblood.common.core.domain.model.LoginParam;
import com.czblood.common.core.domain.model.LoginUser;
import com.czblood.common.utils.SecurityUtils;
import com.czblood.common.utils.StringUtils;
import com.czblood.system.mapper.SysUserMapper;
import com.czblood.system.service.ExtSystemInterface;
import com.czblood.system.service.ISysConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
* 登录接口
*/
@Component
public class BloodExtInterfaceService implements ExtSystemInterface {
@Resource
XKHosInfoMapper xkHosInfoMapper;
@Resource
XkOperatorInfoMapper xkOperatorInfoMapper;
@Autowired
private SysUserMapper userMapper;
@Autowired
private ISysConfigService configService;
@Override
public Result syncUser() {
XkOperatorInfo xkOperatorInfo = new XkOperatorInfo();
List<XkOperatorInfo> xkOperatorInfoList = xkOperatorInfoMapper.queryList(xkOperatorInfo);
int j = 0;
for (XkOperatorInfo operatorInfo : xkOperatorInfoList) {
// 验证是否存在这个用户
SysUser u = userMapper.selectUserByUserName(operatorInfo.getOperator_id());
if(!StringUtils.isNull(u)) continue;
SysUser sysUser = new SysUser();
sysUser.setDeptId(101L);
sysUser.setUserName(operatorInfo.getOperator_id());
sysUser.setNickName(operatorInfo.getOperator_name());
sysUser.setUserType("00");
sysUser.setSex("1");
String password = configService.selectConfigByKey("sys.user.initPassword");
sysUser.setPassword(SecurityUtils.encryptPassword(password));
sysUser.setStatus("0");
sysUser.setCreateBy("admin");
sysUser.setVshisuser(operatorInfo.getVshiscode());
sysUser.setYljg("602"); //以前老的输血系统没有医疗机构的概念,所以这里先给个之前的默认值
sysUser.setDelFlag("0");
userMapper.insertUser(sysUser);
j++;
}
return new Result("0","导入成功,共有:"+j+"条数据导入!");
}
@Override
public void setLoginParam(LoginParam loginParam, LoginUser loginUser) {
SysLoginParam sysLoginParam = new SysLoginParam();
sysLoginParam.setLoginYLJG(loginParam.getLoginYLJG());
sysLoginParam.setLocalid(loginParam.getLocalid());
sysLoginParam.setLoginYLJGName(loginParam.getLoginYLJGName());
loginUser.setSysLoginParam(sysLoginParam);
}
@Override
public Object gethospList() {
XkHosInfo xkHosInfo = new XkHosInfo();
return xkHosInfoMapper.query(xkHosInfo);
}
}

View File

@ -1,36 +0,0 @@
package com.czblood.bus.system;
import com.czblood.bus.mapper.XKHosInfoMapper;
import com.czblood.bus.pojo.XkHosInfo;
import com.czblood.common.core.domain.entity.SysLoginParam;
import com.czblood.common.core.domain.model.LoginParam;
import com.czblood.common.core.domain.model.LoginUser;
import com.czblood.system.web.service.SysLoginService;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@Primary
public class BloodLoginService extends SysLoginService {
@Resource
XKHosInfoMapper xkHosInfoMapper;
@Override
public void setLoginParam(LoginParam loginParam, LoginUser loginUser) {
SysLoginParam sysLoginParam = new SysLoginParam();
sysLoginParam.setLoginYLJG(loginParam.getLoginYLJG());
sysLoginParam.setLocalid(loginParam.getLocalid());
sysLoginParam.setLoginYLJGName(loginParam.getLoginYLJGName());
loginUser.setSysLoginParam(sysLoginParam);
}
@Override
public Object gethospList() {
XkHosInfo xkHosInfo = new XkHosInfo();
return xkHosInfoMapper.query(xkHosInfo);
}
}

View File

@ -0,0 +1,9 @@
package com.czblood.bus.utils;
import org.springframework.stereotype.Component;
@Component
public class BloodBankUtil {
}

View File

@ -0,0 +1,11 @@
<?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.czblood.bus.mapper.XkOperatorInfoMapper">
<select id="queryList" resultType="com.czblood.bus.pojo.XkOperatorInfo">
select * from xk_operator_info
<where>
<if test="operator_id != null and operator_id != ''">and operator_id = #{operator_id}</if>
</where>
</select>
</mapper>

View File

@ -0,0 +1,27 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.czblood</groupId>
<artifactId>blood</artifactId>
<version>1.0</version>
</parent>
<artifactId>blood_bus_bloodbank</artifactId>
<packaging>jar</packaging>
<description>输血科业务</description>
<name>blood_bus_bloodbank</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>

View File

@ -11,6 +11,7 @@
<packaging>jar</packaging>
<name>blood_bus_doctor</name>
<description>医生业务模块</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

27
blood_bus_nurse/pom.xml Normal file
View File

@ -0,0 +1,27 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.czblood</groupId>
<artifactId>blood</artifactId>
<version>1.0</version>
</parent>
<artifactId>blood_bus_nurse</artifactId>
<packaging>jar</packaging>
<name>blood_bus_nurse</name>
<description>护士业务模块</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>

27
blood_bus_report/pom.xml Normal file
View File

@ -0,0 +1,27 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.czblood</groupId>
<artifactId>blood</artifactId>
<version>1.0</version>
</parent>
<artifactId>blood_bus_report</artifactId>
<packaging>jar</packaging>
<name>blood_bus_report</name>
<description>报表模块</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>

View File

@ -49,6 +49,6 @@ public class CacheConstants
/**
* 参数
*/
public static final String COM_OPT_KEY = "com_opt:";
//public static final String COM_OPT_KEY = "com_opt:";
}

View File

@ -27,6 +27,21 @@
<artifactId>blood_bus_doctor</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus_bloodbank</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus_nurse</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>blood_bus_report</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
@ -81,6 +96,9 @@
blood_system-1.0.jar
blood_bus-1.0.jar
blood_bus_doctor-1.0.jar
blood_bus_bloodbank-1.0.jar
blood_bus_nurse-1.0.jar
blood_bus_report-1.0.jar
</Class-Path>
</manifestEntries>
</archive>

View File

@ -23,7 +23,7 @@ czblood:
# 开发环境配置
server:
# 服务器的HTTP端口,默认为8080
port: 9803
port: 8907
servlet:
# 应用的访问路径
context-path: /

View File

@ -0,0 +1,7 @@
package com.czblood.system.mapper;
import java.util.Date;
public interface CommonMapper {
Date getCurrentTime();
}

View File

@ -0,0 +1,31 @@
package com.czblood.system.service;
import com.czblood.common.core.domain.Result;
import com.czblood.common.core.domain.model.LoginParam;
import com.czblood.common.core.domain.model.LoginUser;
/**
* 外部接口扩展
*/
public interface ExtSystemInterface {
/**
* 同步用户
* @return
*/
public Result syncUser() ;
/**
* 设置登录参数
* @param loginParam
* @param loginUser
*/
public void setLoginParam(LoginParam loginParam, LoginUser loginUser) ;
/**
* 获取医疗机构列表
* @return
*/
public Object gethospList() ;
}

View File

@ -6,6 +6,7 @@ import java.util.stream.Collectors;
import javax.validation.Validator;
import com.czblood.common.core.domain.Result;
import com.czblood.system.service.ExtSystemInterface;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -65,6 +66,9 @@ public class SysUserServiceImpl implements ISysUserService {
@Autowired
protected Validator validator;
@Autowired(required = false)
private ExtSystemInterface extSystemInterface;
/**
* 根据条件分页查询用户列表
*
@ -502,6 +506,7 @@ public class SysUserServiceImpl implements ISysUserService {
*/
@Override
public Result syncUser() {
extSystemInterface.syncUser();
// List<ComUsr> comUsrList = comUsrMapper.getComUsrList("");
// int j = 0;
// for (ComUsr comUsr : comUsrList) {

View File

@ -1,14 +1,20 @@
package com.czblood.system.util;
import cn.hutool.core.date.DateUtil;
import com.czblood.system.mapper.CommonMapper;
import com.czblood.system.mapper.RegLocalconfigMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class CommonUtil {
@Autowired
RegLocalconfigMapper regLocalconfigMapper;
@Autowired
CommonMapper commonMapper;
public String getLocalconfig(String smac) {
return regLocalconfigMapper.getLocalconfig(smac);
@ -17,4 +23,12 @@ public class CommonUtil {
public String getLocalconfigByIP(String ip) {
return regLocalconfigMapper.getLocalconfigByIP(ip);
}
public String getCurrentTime() {
return DateUtil.format(commonMapper.getCurrentTime(),"yyyy-MM-dd HH:mm:ss");
}
public Date getCurrentTimeDate() {
return commonMapper.getCurrentTime();
}
}

View File

@ -23,6 +23,7 @@ import com.czblood.common.utils.ip.IpUtils;
import com.czblood.system.factory.AsyncFactory;
import com.czblood.system.mapper.SysUserMapper;
import com.czblood.system.security.context.AuthenticationContextHolder;
import com.czblood.system.service.ExtSystemInterface;
import com.czblood.system.service.ISysConfigService;
import com.czblood.system.service.ISysUserService;
import com.czblood.system.service.TokenService;
@ -67,6 +68,9 @@ public class SysLoginService {
@Autowired
CommonUtil commonUtil;
@Autowired(required = false)
private ExtSystemInterface extSystemInterface;
/**
* 获取本地配置信息
* @param smac
@ -97,6 +101,7 @@ public class SysLoginService {
}
public Object gethospList() {
return extSystemInterface.gethospList();
// List<RegHospital> regHospitalList = regHospitalMapper.selectHospitalAll();
// List<Map<String, Object>> comDictlist0 = new ArrayList<>();
// for (RegHospital regHospital : regHospitalList) {
@ -106,7 +111,6 @@ public class SysLoginService {
// comDictlist0.add(map);
// }
// return comDictlist0;
return null;
}
/**
@ -302,5 +306,6 @@ public class SysLoginService {
// sysLoginParam.setLocalid(loginParam.getLocalid());
// sysLoginParam.setLoginYLJGName(loginParam.getLoginYLJGName());
// loginUser.setSysLoginParam(sysLoginParam);
extSystemInterface.setLoginParam(loginParam,loginUser);
}
}

View File

@ -0,0 +1,8 @@
<?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.czblood.system.mapper.CommonMapper">
<select id="getCurrentTime">
select getdate()
</select>
</mapper>

View File

@ -55,7 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<sql id="selectUserVo">
select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
u.vshisuser, u.vshisuser1, u.vshisuser2, u.yljg, u.sn, u.snid, u.signCert,
u.yljg,
d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
from sys_user u

37
pom.xml
View File

@ -14,12 +14,15 @@
<module>blood_start</module>
<module>blood_bus</module>
<module>blood_bus_doctor</module>
<module>blood_bus_nurse</module>
<module>blood_bus_bloodbank</module>
<module>blood_bus_report</module>
</modules>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<pf.version>1.0</pf.version>
<blood.version>1.0</blood.version>
<java.version>1.8</java.version>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<spring-boot.version>2.5.15</spring-boot.version>
@ -220,38 +223,6 @@
<!-- <version>${czlis.version}</version>-->
<!-- </dependency>-->
<!-- 系统模块-->
<dependency>
<groupId>com.czblood</groupId>
<artifactId>pf_system</artifactId>
<version>${pf.version}</version>
</dependency>
<!-- 通用工具-->
<dependency>
<groupId>com.czblood</groupId>
<artifactId>pf_common</artifactId>
<version>${pf.version}</version>
</dependency>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>pf_interfaceCommon</artifactId>
<version>${pf.version}</version>
</dependency>
<dependency>
<groupId>com.czblood</groupId>
<artifactId>pf_transitPF</artifactId>
<version>${pf.version}</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.czblood</groupId>-->
<!-- <artifactId>lisresources</artifactId>-->
<!-- <version>${czlis.version}</version>-->
<!-- </dependency>-->
<!-- hutool工具类 -->
<dependency>
<groupId>cn.hutool</groupId>

View File

@ -23,3 +23,10 @@ if not exists(SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'xk_c
alter table xk_check_bloodtype add hos_id varchar(30)
end
go
if not exists(SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'sys_user' AND COLUMN_NAME = 'yljg')
begin
alter table sys_user add yljg varchar(10);
update sys_user set yljg = '602' where user_name = 'admin'
end
go