view和http 结合 xxl-job 实现逻辑

segment2.0
linrf 2 years ago
parent 526df4def5
commit 0b8a75410d

@ -134,7 +134,6 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<!-- 打jar包时忽略配置文件 --> <!-- 打jar包时忽略配置文件 -->

@ -1,7 +1,6 @@
package com.docus.server; package com.docus.server;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
@ -10,10 +9,11 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
@Slf4j @Slf4j
//@EnableFeignClients(basePackages = ("com.feign")) //@EnableFeignClients(basePackages = ("com.feign"))
//@EnableHystrix //@EnableHystrix
@SpringBootApplication(scanBasePackages ={"com.docus"}) //@MapperScan("com.docus.server")
@SpringBootApplication(scanBasePackages = {"com.docus"})
public class AppRunBootstrap { public class AppRunBootstrap {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("javax.xml.parsers.DocumentBuilderFactory","com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"); System.setProperty("javax.xml.parsers.DocumentBuilderFactory", "com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
SpringApplication.run(AppRunBootstrap.class,args); SpringApplication.run(AppRunBootstrap.class, args);
} }
} }

@ -1,7 +1,6 @@
package com.docus.server; package com.docus.server;
import com.docus.server.ws.IWebserviceServer; import com.docus.server.ws.IWebserviceServer;
import lombok.RequiredArgsConstructor;
import org.apache.cxf.Bus; import org.apache.cxf.Bus;
import org.apache.cxf.bus.spring.SpringBus; import org.apache.cxf.bus.spring.SpringBus;
import org.apache.cxf.jaxws.EndpointImpl; import org.apache.cxf.jaxws.EndpointImpl;
@ -11,13 +10,13 @@ import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import javax.annotation.Resource;
import javax.xml.ws.Endpoint; import javax.xml.ws.Endpoint;
@Configuration @Configuration
@RequiredArgsConstructor
public class CxfConfig { public class CxfConfig {
@Resource
private final IWebserviceServer webserviceServer; private IWebserviceServer webserviceServer;
/** /**
* ServletbeanNamedispatcherServlet * ServletbeanNamedispatcherServlet

@ -1,16 +0,0 @@
package com.docus.server.collect.dept;
import com.docus.server.collect.service.IHttpDeptCollectService;
import com.docus.server.sys.service.Dept;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
@Component
public class HttpDeptCollectService implements IHttpDeptCollectService {
@Override
public List<Dept> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize) {
return null;
}
}

@ -0,0 +1,34 @@
package com.docus.server.collect.dept;
import com.docus.server.collect.service.IHttpDeptCollectService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.google.common.collect.Lists;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
@Service
public class HttpDeptCollectServiceImpl implements IHttpDeptCollectService {
@Override
public List<DeptDTO> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize) {
DeptDTO deptDTO = new DeptDTO();
deptDTO.setAuthorId("1");
deptDTO.setAuthorName("admin");
deptDTO.setDeptCode("1");
deptDTO.setDeptName("测试1科");
deptDTO.setMessageId("1");
deptDTO.setOperateType("save");
deptDTO.setReceiver("admin");
DeptDTO deptDTO1 = new DeptDTO();
deptDTO1.setAuthorId("2");
deptDTO1.setAuthorName("admin2");
deptDTO1.setDeptCode("2");
deptDTO1.setDeptName("测试2科");
deptDTO1.setMessageId("2");
deptDTO1.setOperateType("save2");
deptDTO1.setReceiver("admin2");
return Lists.newArrayList(deptDTO, deptDTO1);
}
}

@ -1,22 +1,22 @@
package com.docus.server.collect.medical.record; package com.docus.server.collect.medical.record;
import com.docus.server.record.domain.MedicalRecord;
import com.docus.server.sys.service.Dept;
import com.docus.server.collect.service.IParseService; import com.docus.server.collect.service.IParseService;
import org.springframework.stereotype.Component; import com.docus.server.record.pojo.entity.MedicalRecord;
import com.docus.server.sys.service.Dept;
import org.springframework.stereotype.Service;
@Component @Service
public class ParseService implements IParseService { public class ParseServiceImpl implements IParseService {
@Override @Override
public MedicalRecord parseHandNumbness(String handNumbness){ public MedicalRecord parseHandNumbness(String handNumbness) {
//TODO 根据协议进行解析。 //TODO 根据协议进行解析。
return null; return null;
} }
@Override @Override
public Dept parseDeptXml(String deptXml){ public Dept parseDeptXml(String deptXml) {
//TODO 根据协议进行解析。 //TODO 根据协议进行解析。
return null; return null;
} }

@ -17,13 +17,11 @@ spring:
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
his: his:
url: jdbc:log4jdbc:mysql://db.docus.cn:3306/docus_archivefile?autoReconnect=true&allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai url: jdbc:log4jdbc:mysql://127.0.0.1:3306/his?autoReconnect=true&allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: docus username: root
password: docus702 password: root@123456
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
redis: redis:
host: redis.docus.cn host: redis.docus.cn
password: JSdocus@702 password: JSdocus@702
@ -39,7 +37,6 @@ spring:
shared-configs: shared-configs:
- comm.${spring.cloud.nacos.config.file-extension} - comm.${spring.cloud.nacos.config.file-extension}
docus: docus:
dbtype: mysql dbtype: mysql
@ -48,17 +45,20 @@ mybatis-plus:
map-underscore-to-camel-case: true map-underscore-to-camel-case: true
call-setters-on-nulls: true call-setters-on-nulls: true
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
jdbc-type-for-null: null
global-config: global-config:
db-config: db-config:
update-strategy: ignored
field-strategy: NOT_EMPTY field-strategy: NOT_EMPTY
db-type: MYSQL db-type: MYSQL
mapper-locations: classpath*:/mapper/*Mapper.xml
xxl: xxl:
job: job:
accessToken: accessToken:
admin: admin:
addresses: http://job.docus.cn:8180/xxl-job-admin addresses: http://job.docus.cn:8180/xxl-job-admin
executor: executor:
appname: docus-inspection appname: xxl-job-executor-test
address: address:
ip: ip:
port: 17781 port: 17781

@ -1,27 +0,0 @@
package com.docus.server.collect.domain;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class TaskConfigService implements ITaskConfigService {
@Override
public void updateAllPointerDate(String id, Date date){
}
@Override
public void updateIncPointerDate(String id, Date date){
}
@Override
public TaskConfig getTaskConfig(String id){
return null;
}
}

@ -0,0 +1,29 @@
package com.docus.server.collect.domain;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.docus.server.collect.infrastructure.mapper.TaskConfigMapper;
import org.springframework.stereotype.Service;
import java.util.Date;
@Service
public class TaskConfigServiceImpl extends ServiceImpl<TaskConfigMapper, TaskConfig> implements ITaskConfigService {
@Override
public void updateAllPointerDate(String id, Date date) {
}
@Override
public void updateIncPointerDate(String id, Date date) {
}
@Override
public TaskConfig getTaskConfig(String id) {
return super.getById(id);
}
}

@ -1,7 +1,10 @@
package com.docus.server.collect.infrastructure.dao; package com.docus.server.collect.infrastructure.dao;
import lombok.Data;
import java.util.Date; import java.util.Date;
@Data
public class ReceiveDeptInfoEntity { public class ReceiveDeptInfoEntity {
private String deptCode; private String deptCode;

@ -1,8 +1,10 @@
package com.docus.server.collect.infrastructure.mapper; package com.docus.server.collect.infrastructure.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.docus.server.collect.infrastructure.dao.ReceiveDeptInfoEntity; import com.docus.server.collect.infrastructure.dao.ReceiveDeptInfoEntity;
import org.apache.ibatis.annotations.Mapper;
public interface ReceiveDeptInfoMapper { @Mapper
public interface ReceiveDeptInfoMapper extends BaseMapper<ReceiveDeptInfoEntity> {
public void save(ReceiveDeptInfoEntity receiveDeptInfoEntity);
} }

@ -0,0 +1,13 @@
package com.docus.server.collect.infrastructure.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.docus.server.collect.domain.TaskConfig;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author : linrf
* @create 2023/5/30 9:11
*/
@Mapper
public interface TaskConfigMapper extends BaseMapper<TaskConfig> {
}

@ -1,50 +0,0 @@
package com.docus.server.collect.job;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.collect.service.IHttpDeptCollectService;
import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
@Component
public class DeptHttpCollect extends AbstractDeptHttpCollect {
private final IHttpDeptCollectService httpDeptCollectService;
public DeptHttpCollect(IDeptService deptService, ITaskConfigService taskConfigService,IHttpDeptCollectService httpDeptCollectService) {
super(deptService,taskConfigService);
this.httpDeptCollectService = httpDeptCollectService;
}
/**
* xxl job
*/
@XxlJob("startAllDeptHttpCollect")
public void startCollectAll(){
super.startCollectAll("1");
}
/**
* xxl job
*/
@XxlJob("startIncDeptHttpCollect")
public void startCollectIncrement(){
super.startCollectIncrement("1");
}
@Override
public List<Dept> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize) {
//需要根据不同医院去解析不同的内容。使用接口实现的方式。
return httpDeptCollectService.getDepts( startDate, endDate, pazeNum, pageSize);
}
}

@ -1,48 +0,0 @@
package com.docus.server.collect.job;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.his.service.IHisService;
import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
@Component
public class DeptViewCollect extends AbstractDeptHttpCollect {
private final IHisService hisService;
protected DeptViewCollect(IDeptService deptService, ITaskConfigService taskConfigService,IHisService hisService) {
super(deptService, taskConfigService);
this.hisService = hisService;
}
/**
* xxl job
*/
@XxlJob("allDeptViewCollect")
public void allDeptViewCollect(){
super.startCollectAll("2");
}
/**
* xxl job
*/
@XxlJob("incDeptViewCollect")
public void startCollectIncrement(){
super.startCollectIncrement("1");
}
@Override
public List<Dept> getDepts(Date startDate, Date endDate, long pageNum, long pageSize) {
//每家医院按照固定的格式写sql不同医院需要替换不同的sql即可。
return hisService.getDeptListView(startDate,endDate,pageNum,pageSize);
}
}

@ -1,26 +1,27 @@
package com.docus.server.collect.job; package com.docus.server.collect.job.dept;
import com.docus.server.collect.domain.ITaskConfigService; import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import com.docus.server.collect.domain.TaskConfig; import com.docus.server.collect.domain.TaskConfig;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.service.IPowerDeptService;
import com.docus.server.tool.PeriodTime; import com.docus.server.tool.PeriodTime;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
public abstract class AbstractDeptHttpCollect { public abstract class AbstractDeptHttpCollectJob {
@Autowired
private final IDeptService deptService; private final IPowerDeptService deptService;
@Resource
private final ITaskConfigService taskConfigService; private final ITaskConfigService taskConfigService;
protected AbstractDeptHttpCollect(IDeptService deptService, ITaskConfigService taskConfigService) { protected AbstractDeptHttpCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService) {
this.deptService = deptService; this.deptService = deptService;
this.taskConfigService = taskConfigService; this.taskConfigService = taskConfigService;
} }
/** /**
* *
*/ */
@ -31,14 +32,14 @@ public abstract class AbstractDeptHttpCollect {
List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes(); List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes();
for (PeriodTime periodTime : periodTimes) { for (PeriodTime periodTime : periodTimes) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。 //考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<Dept> depts = null; List<DeptDTO> depts = null;
int pageNum = 0; int pageNum = 0;
while (true) { while (true) {
depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize()); depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize());
if (depts == null || depts.size() == 0) { if (depts == null || depts.size() == 0) {
break; break;
} }
deptService.save(depts); deptService.batchSavePowerDept(depts);
pageNum++; pageNum++;
} }
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate()); taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate());
@ -57,19 +58,20 @@ public abstract class AbstractDeptHttpCollect {
List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes(); List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes();
for (PeriodTime periodTime : periodTimes) { for (PeriodTime periodTime : periodTimes) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。 //考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<Dept> depts = null; List<DeptDTO> depts;
int pageNum = 0; int pageNum = 1;
while (true) {
for (; true; pageNum++) {
depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize()); depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize());
if (depts == null || depts.size() == 0) { if (depts == null || depts.size() == 0) {
break; break;
} }
deptService.save(depts); deptService.batchSavePowerDept(depts);
pageNum++;
} }
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate()); taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
} }
} }
@ -82,7 +84,7 @@ public abstract class AbstractDeptHttpCollect {
* @param pageSize * @param pageSize
* @return * @return
*/ */
public abstract List<Dept> getDepts(Date startDate, Date endDate, long pageNum, long pageSize); public abstract List<DeptDTO> getDepts(Date startDate, Date endDate, long pageNum, long pageSize);
} }

@ -0,0 +1,50 @@
package com.docus.server.collect.job.dept;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.collect.service.IHttpDeptCollectService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.service.IPowerDeptService;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Component
public class DeptHttpCollectJob extends AbstractDeptHttpCollectJob {
@Resource
private final IHttpDeptCollectService httpDeptCollectService;
public DeptHttpCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService, IHttpDeptCollectService httpDeptCollectService) {
super(deptService, taskConfigService);
this.httpDeptCollectService = httpDeptCollectService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptHttpCollect")
public void startAllDeptHttpCollect() {
super.startCollectAll("1");
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptHttpCollect")
public void startIncDeptHttpCollect() {
super.startCollectIncrement("1");
}
@Override
public List<DeptDTO> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize) {
//需要根据不同医院去解析不同的内容。使用接口实现的方式。
return httpDeptCollectService.getDepts(startDate, endDate, pazeNum, pageSize);
}
}

@ -0,0 +1,52 @@
package com.docus.server.collect.job.dept;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.his.service.IHisService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.service.IPowerDeptService;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Component
public class DeptViewCollectJob extends AbstractDeptHttpCollectJob {
@Resource
private final IHisService hisService;
protected DeptViewCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService, IHisService hisService) {
super(deptService, taskConfigService);
this.hisService = hisService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptViewCollect")
public void startAllDeptViewCollect() {
super.startCollectAll("2");
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptViewCollect")
public void startIncDeptViewCollect() {
String jobParam = XxlJobHelper.getJobParam();
System.out.println(jobParam);
super.startCollectIncrement(jobParam);
}
@Override
public List<DeptDTO> getDepts(Date startDate, Date endDate, long pageNum, long pageSize) {
//每家医院按照固定的格式写sql不同医院需要替换不同的sql即可。
return hisService.getDeptListView(startDate, endDate, pageNum, pageSize);
}
}

@ -1,34 +1,35 @@
package com.docus.server.collect.mq; package com.docus.server.collect.mq;
import com.docus.server.ws.IWsResult;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService; import com.docus.server.sys.service.IDeptService;
import lombok.AllArgsConstructor; import com.docus.server.ws.IWsResult;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import javax.annotation.Resource;
/** /**
* mq * mq
*/ */
@AllArgsConstructor
@Slf4j @Slf4j
public class MqCollect { public class MqCollect {
private final IDeptService deptService; @Resource
private IDeptService deptService;
private final IWsResult wsResult; @Resource
private IWsResult wsResult;
public String receiveDept(String deptXml){ public String receiveDept(String deptXml) {
log.info("收到科室消息:{}",deptXml); log.info("收到科室消息:{}", deptXml);
try{ try {
Dept dept = this.parseDeptXml(deptXml); Dept dept = this.parseDeptXml(deptXml);
deptService.save(dept); deptService.save(dept);
return wsResult.ok(dept.getParams()); return wsResult.ok(dept.getParams());
}catch (Exception e){ } catch (Exception e) {
return wsResult.fail(e.getMessage()); return wsResult.fail(e.getMessage());
} }
} }
public Dept parseDeptXml(String deptXml){ public Dept parseDeptXml(String deptXml) {
return null; return null;
} }
} }

@ -4,25 +4,27 @@ import com.docus.server.collect.infrastructure.dao.ReceiveDeptInfoEntity;
import com.docus.server.collect.infrastructure.mapper.ReceiveDeptInfoMapper; import com.docus.server.collect.infrastructure.mapper.ReceiveDeptInfoMapper;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService; import com.docus.server.sys.service.IDeptService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Component @Component
@AllArgsConstructor @Service
public class CollectService { public class CollectService {
@Resource
private IDeptService deptService;
@Resource
private ReceiveDeptInfoMapper receiveDeptInfoMapper;
private final IDeptService deptService; public void receiveDept(Dept dept) {
private final ReceiveDeptInfoMapper receiveDeptInfoMapper;
public void receiveDept(Dept dept){
//判断任务是否存在。 //判断任务是否存在。
//保存数据库 //保存数据库
//从dept 解析为数据库对象 //从dept 解析为数据库对象
ReceiveDeptInfoEntity receiveDeptInfoEntity = new ReceiveDeptInfoEntity(); ReceiveDeptInfoEntity receiveDeptInfoEntity = new ReceiveDeptInfoEntity();
receiveDeptInfoMapper.save(receiveDeptInfoEntity); receiveDeptInfoMapper.insert(receiveDeptInfoEntity);
//异步写入归档系统,失败自动重试。 //异步写入归档系统,失败自动重试。
deptService.save(dept); deptService.save(dept);
@ -30,5 +32,4 @@ public class CollectService {
} }
} }

@ -1,10 +1,10 @@
package com.docus.server.collect.service; package com.docus.server.collect.service;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.pojo.dto.DeptDTO;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
public interface IHttpDeptCollectService { public interface IHttpDeptCollectService {
List<Dept> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize); List<DeptDTO> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize);
} }

@ -1,6 +1,6 @@
package com.docus.server.collect.service; package com.docus.server.collect.service;
import com.docus.server.record.domain.MedicalRecord; import com.docus.server.record.pojo.entity.MedicalRecord;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.service.Dept;
public interface IParseService { public interface IParseService {

@ -4,8 +4,8 @@ import java.util.Map;
public interface IWsResult { public interface IWsResult {
public String ok(Map<String,String> params); String ok(Map<String, String> params);
public String fail(String message); String fail(String message);
} }

@ -2,49 +2,48 @@ package com.docus.server.ws;
import com.docus.server.collect.service.CollectService; import com.docus.server.collect.service.CollectService;
import com.docus.server.collect.service.IParseService; import com.docus.server.collect.service.IParseService;
import com.docus.server.record.domain.MedicalRecord; import com.docus.server.record.pojo.entity.MedicalRecord;
import com.docus.server.record.service.IMedicalRecordService; import com.docus.server.record.service.IMedicalRecordService;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Slf4j @Slf4j
@AllArgsConstructor @Component
public class WsCollect { public class WsCollect {
@Autowired
private final IMedicalRecordService medicalRecordService; private IMedicalRecordService medicalRecordService;
@Autowired
private final IParseService parseService; private IParseService parseService;
@Autowired
private CollectService collectService;
private final CollectService collectService; @Autowired
private IWsResult wsResult;
private final IWsResult wsResult;
//接收xml。并且下载病案。 //接收xml。并且下载病案。
public String receiveHandNumbness(String handNumbness){ public String receiveHandNumbness(String handNumbness) {
log.info("收到手麻消息:{}",handNumbness); log.info("收到手麻消息:{}", handNumbness);
try{ try {
MedicalRecord medicalRecord = parseService.parseHandNumbness(handNumbness); MedicalRecord medicalRecord = parseService.parseHandNumbness(handNumbness);
medicalRecordService.receive(medicalRecord); medicalRecordService.receive(medicalRecord);
return wsResult.ok(medicalRecord.getParams()); return wsResult.ok(medicalRecord.getParams());
}catch (Exception e){ } catch (Exception e) {
return wsResult.fail(e.getMessage()); return wsResult.fail(e.getMessage());
} }
} }
public String receiveDept(String deptXml){ public String receiveDept(String deptXml) {
log.info("收到科室消息:{}",deptXml); log.info("收到科室消息:{}", deptXml);
try{ try {
Dept dept = parseService.parseDeptXml(deptXml); Dept dept = parseService.parseDeptXml(deptXml);
//此处需要存储原xml内容。 //此处需要存储原xml内容。
collectService.receiveDept(dept); collectService.receiveDept(dept);
return wsResult.ok(dept.getParams()); return wsResult.ok(dept.getParams());
}catch (Exception e){ } catch (Exception e) {
return wsResult.fail(e.getMessage()); return wsResult.fail(e.getMessage());
} }
} }

@ -1,25 +1,26 @@
package com.docus.server.ws.impl; package com.docus.server.ws.impl;
import com.docus.server.ws.IWebserviceServer;
import com.docus.server.ws.WsCollect; import com.docus.server.ws.WsCollect;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.docus.server.ws.IWebserviceServer;
import javax.annotation.Resource;
@Slf4j @Slf4j
@Service @Service
@AllArgsConstructor
public class WebserviceServer implements IWebserviceServer { public class WebserviceServer implements IWebserviceServer {
private final WsCollect wsCollect; @Resource
private WsCollect wsCollect;
@Override @Override
public String receiveHandNumbness(String handNumbness){ public String receiveHandNumbness(String handNumbness) {
return wsCollect.receiveHandNumbness(handNumbness); return wsCollect.receiveHandNumbness(handNumbness);
} }
@Override @Override
public String receiveDept(String deptXml){ public String receiveDept(String deptXml) {
return wsCollect.receiveDept(deptXml); return wsCollect.receiveDept(deptXml);
} }

@ -9,4 +9,18 @@
<artifactId>docus-medical-record</artifactId> <artifactId>docus-medical-record</artifactId>
<name>Archetype - docus-medical-record</name> <name>Archetype - docus-medical-record</name>
<url>http://maven.apache.org</url> <url>http://maven.apache.org</url>
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</project> </project>

@ -3,6 +3,7 @@ package com.docus.server.record.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.docus.server.record.pojo.entity.TBasic; import com.docus.server.record.pojo.entity.TBasic;
import com.docus.server.record.pojo.entity.TBasicExtend; import com.docus.server.record.pojo.entity.TBasicExtend;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -15,6 +16,7 @@ import java.util.List;
* @author jiashi * @author jiashi
* @since 2021-04-14 * @since 2021-04-14
*/ */
@Mapper
public interface TBasicMapper extends BaseMapper<TBasic> { public interface TBasicMapper extends BaseMapper<TBasic> {
/** /**
* *

@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.docus.server.record.baseMapper.TBasicMapper"> <mapper namespace="com.docus.server.record.mapper.TBasicMapper">
<select id="getPatientIdByInpatientNoAndAdminssTimes" resultType="java.lang.String"> <select id="getPatientIdByInpatientNoAndAdminssTimes" resultType="java.lang.String">
select `patient_id` select `patient_id`
@ -102,7 +102,7 @@
<select id="getPatientId" resultType="java.lang.String"> <select id="getPatientId" resultType="java.lang.String">
select patient_id from t_basic where jzh=#{jzh} select patient_id from t_basic where jzh=#{jzh}
</select> </select>
<select id="selectBasicListByAdmissDate" resultType=" com.docus.server.record.pojo.entity.TBasic"> <select id="selectBasicListByAdmissDate" resultType="com.docus.server.record.pojo.entity.TBasic">
select * select *
from `docus_medicalrecord`.`t_basic` from `docus_medicalrecord`.`t_basic`
where admiss_date between #{admissStartDate} AND #{admissEndDate} where admiss_date between #{admissStartDate} AND #{admissEndDate}
@ -114,7 +114,7 @@
from `docus_medicalrecord`.`t_basic_extend` from `docus_medicalrecord`.`t_basic_extend`
where patient_id=#{patientId} where patient_id=#{patientId}
</select> </select>
<select id="selectBasicListByCreateOrUpdateTime" resultType=" com.docus.server.record.pojo.entity.TBasic"> <select id="selectBasicListByCreateOrUpdateTime" resultType="com.docus.server.record.pojo.entity.TBasic">
select `patient_id`, select `patient_id`,
`admiss_times`, `admiss_times`,
`inpatient_no`, `inpatient_no`,
@ -137,7 +137,7 @@
limit #{offset} limit #{offset}
, #{size} , #{size}
</select> </select>
<select id="selectBasicListByPatientIds" resultType=" com.docus.server.record.pojo.entity.TBasic"> <select id="selectBasicListByPatientIds" resultType="com.docus.server.record.pojo.entity.TBasic">
select `patient_id`, select `patient_id`,
`admiss_times`, `admiss_times`,
`inpatient_no`, `inpatient_no`,

@ -9,4 +9,18 @@
<artifactId>docus-sys</artifactId> <artifactId>docus-sys</artifactId>
<name>Archetype - docus-sys</name> <name>Archetype - docus-sys</name>
<url>http://maven.apache.org</url> <url>http://maven.apache.org</url>
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</project> </project>

@ -1,8 +1,9 @@
package com.docus.server.sys.mapper; package com.docus.server.sys.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.docus.server.sys.pojo.entity.PowerDept;
import com.docus.server.sys.pojo.dto.DeptModifyParam; import com.docus.server.sys.pojo.dto.DeptModifyParam;
import com.docus.server.sys.pojo.entity.PowerDept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
@ -13,6 +14,7 @@ import org.apache.ibatis.annotations.Param;
* @author wen yongbin * @author wen yongbin
* @since 202322522:28:58 * @since 202322522:28:58
*/ */
@Mapper
public interface PowerDeptMapper extends BaseMapper<PowerDept> { public interface PowerDeptMapper extends BaseMapper<PowerDept> {
/** /**

@ -1,8 +1,9 @@
package com.docus.server.sys.mapper; package com.docus.server.sys.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.docus.server.sys.pojo.entity.PowerUser;
import com.docus.server.sys.pojo.dto.UserModifyParam; import com.docus.server.sys.pojo.dto.UserModifyParam;
import com.docus.server.sys.pojo.entity.PowerUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
/** /**
@ -13,6 +14,7 @@ import org.apache.ibatis.annotations.Param;
* @author wen yongbin * @author wen yongbin
* @since 202322522:28:58 * @since 202322522:28:58
*/ */
@Mapper
public interface PowerUserMapper extends BaseMapper<PowerUser> { public interface PowerUserMapper extends BaseMapper<PowerUser> {
/** /**

@ -8,7 +8,7 @@ import java.util.List;
@Component @Component
@AllArgsConstructor @AllArgsConstructor
public class DeptService implements IDeptService{ public class DeptService implements IDeptService {
private final IDeptDao deptDao; private final IDeptDao deptDao;

@ -2,10 +2,20 @@ package com.docus.server.sys.service;
import com.docus.server.sys.pojo.dto.DeptDTO; import com.docus.server.sys.pojo.dto.DeptDTO;
import java.util.List;
/** /**
* *
*/ */
public interface IPowerDeptService { public interface IPowerDeptService {
/**
*
*
* @param deptDTOList
* @return
*/
void batchSavePowerDept(List<DeptDTO> deptDTOList);
/** /**
* *
* *

@ -4,13 +4,14 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.docus.core.util.Func; import com.docus.core.util.Func;
import com.docus.infrastructure.redis.service.IdService; import com.docus.infrastructure.redis.service.IdService;
import com.docus.server.sys.mapper.PowerDeptMapper; import com.docus.server.sys.mapper.PowerDeptMapper;
import com.docus.server.sys.pojo.entity.PowerDept;
import com.docus.server.sys.pojo.dto.DeptDTO; import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.pojo.dto.DeptModifyParam; import com.docus.server.sys.pojo.dto.DeptModifyParam;
import com.docus.server.sys.pojo.entity.PowerDept;
import com.docus.server.sys.service.IPowerDeptService; import com.docus.server.sys.service.IPowerDeptService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
/** /**
* *
@ -19,34 +20,36 @@ import javax.annotation.Resource;
*/ */
@Service @Service
public class PowerDeptServiceImpl extends ServiceImpl<PowerDeptMapper, PowerDept> implements IPowerDeptService { public class PowerDeptServiceImpl extends ServiceImpl<PowerDeptMapper, PowerDept> implements IPowerDeptService {
// @Resource
// private PowerDeptMapper powerDeptMapper;
@Resource @Resource
private IdService idService; private IdService idService;
@Override
public void batchSavePowerDept(List<DeptDTO> deptDTOList) {
deptDTOList.forEach(this::register);
}
@Override @Override
public boolean register(DeptDTO deptDTO) { public boolean register(DeptDTO deptDTO) {
// PowerDept powerDept = powerDeptMapper.getDeptByDeptCode(deptDTO.getDeptCode()); PowerDept powerDept = baseMapper.getDeptByDeptCode(deptDTO.getDeptCode());
PowerDept powerDept = getBaseMapper().getDeptByDeptCode(deptDTO.getDeptCode());
DeptModifyParam deptModifyParam = deptDTO.transDeptAddParam(); DeptModifyParam deptModifyParam = deptDTO.transDeptAddParam();
if (Func.isEmpty(powerDept)) { if (Func.isEmpty(powerDept)) {
long deptId = idService.getDateSeq(); long deptId = idService.getDateSeq();
deptModifyParam.setDeptId(deptId); deptModifyParam.setDeptId(deptId);
getBaseMapper().addDept(deptModifyParam); baseMapper.addDept(deptModifyParam);
return true; return true;
} }
deptModifyParam.setDeptId(powerDept.getDeptId()); deptModifyParam.setDeptId(powerDept.getDeptId());
getBaseMapper().updateDept(deptModifyParam); baseMapper.updateDept(deptModifyParam);
return true; return true;
} }
@Override @Override
public boolean delDeptByDeptCode(String deptCode) { public boolean delDeptByDeptCode(String deptCode) {
PowerDept powerDept = getBaseMapper().getDeptByDeptCode(deptCode); PowerDept powerDept = baseMapper.getDeptByDeptCode(deptCode);
if (Func.isEmpty(powerDept)) { if (Func.isEmpty(powerDept)) {
return true; return true;
} }
getBaseMapper().delDeptByDeptCode(deptCode); baseMapper.delDeptByDeptCode(deptCode);
return true; return true;
} }
} }

@ -30,27 +30,27 @@ public class PowerUserServiceImpl extends ServiceImpl<PowerUserMapper, PowerUser
@Override @Override
public boolean register(UserDTO userDTO) { public boolean register(UserDTO userDTO) {
// PowerUser powerUser = powerUserMapper.getUserByUserName(userDTO.getUserName()); // PowerUser powerUser = powerUserMapper.getUserByUserName(userDTO.getUserName());
PowerUser powerUser = getBaseMapper().getUserByUserName(userDTO.getUserName()); PowerUser powerUser = baseMapper.getUserByUserName(userDTO.getUserName());
UserModifyParam userModifyParam = userDTO.transUserAddParam(); UserModifyParam userModifyParam = userDTO.transUserAddParam();
if (Func.isEmpty(powerUser)) { if (Func.isEmpty(powerUser)) {
long userId = idService.getDateSeq(); long userId = idService.getDateSeq();
userModifyParam.setUserId(userId); userModifyParam.setUserId(userId);
userModifyParam.setUserPwd(userProperties.getPassword()); userModifyParam.setUserPwd(userProperties.getPassword());
getBaseMapper().addUser(userModifyParam); baseMapper.addUser(userModifyParam);
return true; return true;
} }
userModifyParam.setUserId(powerUser.getUserId()); userModifyParam.setUserId(powerUser.getUserId());
getBaseMapper().updateUser(userModifyParam); baseMapper.updateUser(userModifyParam);
return true; return true;
} }
@Override @Override
public boolean delUserByUserName(String userName) { public boolean delUserByUserName(String userName) {
PowerUser powerUser = getBaseMapper().getUserByUserName(userName); PowerUser powerUser = baseMapper.getUserByUserName(userName);
if (Func.isEmpty(powerUser)) { if (Func.isEmpty(powerUser)) {
return true; return true;
} }
getBaseMapper().delUserByUserName(userName); baseMapper.delUserByUserName(userName);
return true; return true;
} }
} }

@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.docus.server.sys.baseMapper.PowerDeptMapper"> <mapper namespace="com.docus.server.sys.mapper.PowerDeptMapper">
<insert id="addDept"> <insert id="addDept">
INSERT INTO `docus_system`.`power_dept`(`dept_id`, INSERT INTO `docus_system`.`power_dept`(`dept_id`,
`dept_code`, `dept_code`,

@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.docus.server.sys.baseMapper.PowerUserMapper"> <mapper namespace="com.docus.server.sys.mapper.PowerUserMapper">
<insert id="addUser"> <insert id="addUser">
INSERT INTO `docus_system`.`power_user`(`user_id`, INSERT INTO `docus_system`.`power_user`(`user_id`,
`user_name`, `user_name`,

@ -17,4 +17,18 @@
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
</dependencies> </dependencies>
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</project> </project>

@ -1,7 +1,7 @@
package com.docus.server.his.infrastructure; package com.docus.server.his.infrastructure;
import com.docus.server.his.infrastructure.mapper.HisDeptMapper; import com.docus.server.his.infrastructure.mapper.HisDeptMapper;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.pojo.dto.DeptDTO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -16,8 +16,8 @@ public class HisSysDao {
private final HisDeptMapper hisDeptMapper; private final HisDeptMapper hisDeptMapper;
public List<Dept> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize) { public List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pageNum, long pageSize) {
return hisDeptMapper.getDeptListView(startDate, endDate, pazeNum, pageSize); return hisDeptMapper.getDeptListView(startDate, endDate, (pageNum - 1) * pageSize, pageSize);
} }

@ -1,12 +1,16 @@
package com.docus.server.his.infrastructure.mapper; package com.docus.server.his.infrastructure.mapper;
import com.docus.server.sys.service.Dept; import com.baomidou.dynamic.datasource.annotation.DS;
import com.docus.server.sys.pojo.dto.DeptDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@Mapper
@DS("his")
public interface HisDeptMapper { public interface HisDeptMapper {
public List<Dept> getDeptListView(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("pageNum") long pageNum, @Param("pageSize") long pageSize); List<DeptDTO> getDeptListView(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("offset") long offset, @Param("pageSize") long pageSize);
} }

@ -1,10 +1,10 @@
package com.docus.server.his.service; package com.docus.server.his.service;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.pojo.dto.DeptDTO;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
public interface IHisService { public interface IHisService {
List<Dept> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize); List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize);
} }

@ -1,9 +1,8 @@
package com.docus.server.his.service.impl; package com.docus.server.his.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.docus.server.his.infrastructure.HisSysDao; import com.docus.server.his.infrastructure.HisSysDao;
import com.docus.server.his.service.IHisService; import com.docus.server.his.service.IHisService;
import com.docus.server.sys.service.Dept; import com.docus.server.sys.pojo.dto.DeptDTO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -16,9 +15,9 @@ public class HisService implements IHisService {
private final HisSysDao hisSysDao; private final HisSysDao hisSysDao;
@DS("his")
@Override @Override
public List<Dept> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize) { public List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize) {
return hisSysDao.getDeptListView(startDate, endDate, pazeNum, pageSize); return hisSysDao.getDeptListView(startDate, endDate, pazeNum, pageSize);
} }

@ -2,18 +2,18 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.docus.server.his.infrastructure.baseMapper.HisDeptMapper"> <mapper namespace="com.docus.server.his.infrastructure.mapper.HisDeptMapper">
<select id="getDeptListView" resultType="com.docus.server.sys.service.Dept"> <select id="getDeptListView" resultType="com.docus.server.sys.pojo.dto.DeptDTO">
SELECT `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name FROM `his`.`his_dept` SELECT `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name FROM `his_dept`
WHERE update_time between #{startDate} and #{endDate} WHERE update_time between #{startDate} and #{endDate}
order by update_time asc order by update_time asc
LIMIT (#{pageNum} - 1) * #{pageSize} , #{pageSize} LIMIT #{offset}, #{pageSize}
</select> </select>
<!-- mysql <!-- mysql
<select id="getDeptListView" resultType="com.docus.server.service.com.docus.server.sys.Dept"> <select id="getDeptListView" resultType="com.docus.server.sys.pojo.dto.DeptDTO">
SELECT `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name FROM `his`.`his_dept` SELECT `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name FROM `his`.`his_dept`
WHERE update_time between #{startDate} and #{endDate} WHERE update_time between #{startDate} and #{endDate}
order by update_time asc order by update_time asc
@ -23,7 +23,7 @@
<!-- mssqsql <!-- mssqsql
<select id="getDeptListView" resultType="com.docus.server.service.com.docus.server.sys.Dept"> <select id="getDeptListView" resultType="com.docus.server.sys.pojo.dto.DeptDTO">
select top pageSize `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name select top pageSize `update_time` as update_time ,`dept_code` as dept_code,`dept_name` as dept_name
from (select row_number() from (select row_number()
over(order by sno asc) as rownumber,* over(order by sno asc) as rownumber,*
@ -33,7 +33,7 @@
--> -->
<!-- oracle <!-- oracle
<select id="getDeptListView" resultType="com.docus.server.service.com.docus.server.sys.Dept"> <select id="getDeptListView" resultType="com.docus.server.sys.pojo.dto.DeptDTO">
SELECT * FROM SELECT * FROM
(SELECT tt.*,ROWNUM AS RN FROM (SELECT tt.*,ROWNUM AS RN FROM
(SELECT t.* FROM ${tableName} t (SELECT t.* FROM ${tableName} t

@ -39,10 +39,10 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>com.docus</groupId> <!-- <groupId>com.docus</groupId>-->
<artifactId>docus-mybatisplus-starter</artifactId> <!-- <artifactId>docus-mybatisplus-starter</artifactId>-->
</dependency> <!-- </dependency>-->
<!--nacos--> <!--nacos-->
<dependency> <dependency>
<groupId>com.alibaba.cloud</groupId> <groupId>com.alibaba.cloud</groupId>
@ -58,11 +58,7 @@
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
@ -85,12 +81,13 @@
<version>1.2.4</version> <version>1.2.4</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<!-- druid 连接池 -->
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.alibaba</groupId>
<artifactId>mybatis-plus-generator</artifactId> <artifactId>druid-spring-boot-starter</artifactId>
<version>3.4.1</version> <version>${druid.version}</version>
<scope>compile</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.velocity</groupId> <groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId> <artifactId>velocity-engine-core</artifactId>
@ -185,13 +182,22 @@
<artifactId>spring-boot-starter-test</artifactId> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!--mybatis plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.3.2</version> <version>3.4.0</version>
</dependency> </dependency>
</dependencies> </dependencies>
<profiles> <profiles>
@ -207,6 +213,4 @@
</profiles> </profiles>
</project> </project>
Loading…
Cancel
Save