dept,basic

segment2.0
beeajax 2 years ago
parent 0b8a75410d
commit 5e59ed431c

@ -1,6 +1,6 @@
package com.docus.server.collect.dept;
import com.docus.server.collect.service.IHttpDeptCollectService;
import com.docus.server.collect.service.IHttpTBasicCollectService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.google.common.collect.Lists;
import org.springframework.stereotype.Service;
@ -9,9 +9,9 @@ import java.util.Date;
import java.util.List;
@Service
public class HttpDeptCollectServiceImpl implements IHttpDeptCollectService {
public class HttpDeptCollectServiceImpl implements IHttpTBasicCollectService {
@Override
public List<DeptDTO> getDepts(Date startDate, Date endDate, long pazeNum, long pageSize) {
public List<DeptDTO> getDepts(Date startDate, Date endDate, long pageNum, long pageSize) {
DeptDTO deptDTO = new DeptDTO();
deptDTO.setAuthorId("1");
deptDTO.setAuthorName("admin");

@ -0,0 +1,30 @@
package com.docus.server.collect.user;
import com.docus.server.collect.service.IHttpUserCollectService;
import com.docus.server.sys.pojo.dto.UserDTO;
import com.google.common.collect.Lists;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
@Service
public class HttpUserCollectServiceImpl implements IHttpUserCollectService {
@Override
public List<UserDTO> getUsers(Date startDate, Date endDate, long pageNum, long pageSize) {
UserDTO deptDTO = new UserDTO();
deptDTO.setAuthorId("1");
deptDTO.setAuthorName("admin");
deptDTO.setMessageId("1");
deptDTO.setOperateType("save");
deptDTO.setReceiver("admin");
UserDTO deptDTO1 = new UserDTO();
deptDTO1.setAuthorId("2");
deptDTO1.setAuthorName("admin2");
deptDTO1.setMessageId("2");
deptDTO1.setOperateType("save2");
deptDTO1.setReceiver("admin2");
return Lists.newArrayList(deptDTO, deptDTO1);
}
}

@ -12,19 +12,19 @@ spring:
datasource:
master:
url: jdbc:log4jdbc:mysql://db.docus.cn:3306/docus_archivefile?autoReconnect=true&allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: docus
password: docus702
username: root
password: root
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
type: com.alibaba.druid.pool.DruidDataSource
his:
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: root
password: root@123456
password: root
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
type: com.alibaba.druid.pool.DruidDataSource
redis:
host: redis.docus.cn
password: JSdocus@702
# password: JSdocus@702
cloud:
nacos:
discovery:
@ -44,14 +44,15 @@ mybatis-plus:
configuration:
map-underscore-to-camel-case: true
call-setters-on-nulls: true
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
jdbc-type-for-null: null
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
db-config:
update-strategy: ignored
field-strategy: NOT_EMPTY
db-type: MYSQL
mapper-locations: classpath*:/mapper/*Mapper.xml
xxl:
job:
accessToken:
@ -68,3 +69,8 @@ xxl:
api:
soft-delete-column-name=state
soft-delete-column-value=1
logging:
level:
com:
baomidou:
mybatisplus: DEBUG

@ -64,12 +64,12 @@
<!-- 监控sql日志输出-->
<!-- 如想看到表格数据将OFF改为INFO -->
<logger name="jdbc.resultsettable" level="OFF" additivity="false">
<logger name="jdbc.resultsettable" level="debug" additivity="false">
<appender-ref ref="console"/>
</logger>
<!-- 包含 SQL 语句实际的执行时间 及sql语句与jdbc.sqlonly功能重复 -->
<logger name="jdbc.sqltiming" level="OFF" additivity="false">
<logger name="jdbc.sqltiming" level="debug" additivity="false">
<appender-ref ref="file"/>
</logger>

@ -2,6 +2,7 @@ package com.docus.server.collect.domain;
import com.docus.server.tool.DateSpiltUtil;
import com.docus.server.tool.PeriodTime;
import lombok.Data;
import lombok.Getter;
import java.util.Date;
@ -11,7 +12,7 @@ import java.util.List;
*
*/
@Getter
@Data
public class TaskConfig {
private String id;
@ -71,10 +72,10 @@ public class TaskConfig {
}
/**
*
* @return
*
* @return
*/
public Date getStartTime() {
if (allPointerTime != null) {

@ -0,0 +1,94 @@
package com.docus.server.collect.job.basic;
import com.docus.core.util.Func;
import com.docus.server.collect.domain.TaskConfig;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.sys.pojo.dto.TBasicDTO;
import com.docus.server.sys.service.ITBasicService;
import com.docus.server.tool.PeriodTime;
import com.xxl.job.core.context.XxlJobHelper;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
public abstract class AbstractTBasicCollectJob {
@Autowired
private final ITBasicService basicService;
@Resource
private final ITaskConfigService taskConfigService;
protected AbstractTBasicCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService) {
this.basicService = deptService;
this.taskConfigService = taskConfigService;
}
/**
*
*/
public void startCollectAll(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes();
for (PeriodTime periodTime : periodTimes) {
doGetDepts(periodTime, taskConfig);
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate());
}
}
/**
*
*/
public void startCollectIncrement(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes();
periodTimes.forEach(periodTime -> {
doGetDepts(periodTime, taskConfig);
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
});
}
protected String getJobParam() {
return XxlJobHelper.getJobParam();
}
/**
*
*
* @param periodTime
* @param taskConfig
*/
private void doGetDepts(PeriodTime periodTime, TaskConfig taskConfig) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<TBasicDTO> depts;
int pageNum = 1;
for (; true; pageNum++) {
depts = this.getBasics(
periodTime.getPeriodStartDate(),
periodTime.getPeriodEndDate(),
pageNum,
taskConfig.getPageSize()
);
if (Func.isEmpty(depts)) {
break;
}
basicService.batchSaveBasics(depts);
}
}
/**
*
*
* @param startDate
* @param endDate
* @param pageNum
* @param pageSize
* @return
*/
public abstract List<TBasicDTO> getBasics(Date startDate, Date endDate, long pageNum, long pageSize);
}

@ -0,0 +1,50 @@
package com.docus.server.collect.job.basic;
import com.docus.server.collect.service.IHttpTBasicCollectService;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.sys.pojo.dto.TBasicDTO;
import com.docus.server.sys.service.ITBasicService;
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 TBasicHttpCollectJob extends AbstractTBasicCollectJob {
@Resource
private final IHttpTBasicCollectService httpDeptCollectService;
public TBasicHttpCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService, IHttpTBasicCollectService httpDeptCollectService) {
super(deptService, taskConfigService);
this.httpDeptCollectService = httpDeptCollectService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptHttpCollect")
public void startAllDeptHttpCollect() {
super.startCollectAll(getJobParam());
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptHttpCollect")
public void startIncDeptHttpCollect() {
super.startCollectIncrement(getJobParam());
}
@Override
public List<TBasicDTO> getBasics(Date startDate, Date endDate, long pazeNum, long pageSize) {
//需要根据不同医院去解析不同的内容。使用接口实现的方式。
return httpDeptCollectService.getDepts(startDate, endDate, pazeNum, pageSize);
}
}

@ -0,0 +1,49 @@
package com.docus.server.collect.job.basic;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.his.service.IHisService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.service.ITBasicService;
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 TBasicViewCollectJob extends AbstractTBasicCollectJob {
@Resource
private final IHisService hisService;
protected TBasicViewCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService, IHisService hisService) {
super(deptService, taskConfigService);
this.hisService = hisService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptViewCollect")
public void startAllDeptViewCollect() {
super.startCollectAll(getJobParam());
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptViewCollect")
public void startIncDeptViewCollect() {
super.startCollectIncrement(getJobParam());
}
@Override
public List<DeptDTO> getBasics(Date startDate, Date endDate, long pageNum, long pageSize) {
//每家医院按照固定的格式写sql不同医院需要替换不同的sql即可。
return hisService.getDeptListView(startDate, endDate, pageNum, pageSize);
}
}

@ -1,23 +1,25 @@
package com.docus.server.collect.job.dept;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.core.util.Func;
import com.docus.server.collect.service.ITaskConfigService;
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.sys.service.ITBasicService;
import com.docus.server.tool.PeriodTime;
import com.xxl.job.core.context.XxlJobHelper;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
public abstract class AbstractDeptHttpCollectJob {
public abstract class AbstractDeptCollectJob {
@Autowired
private final IPowerDeptService deptService;
private final ITBasicService deptService;
@Resource
private final ITaskConfigService taskConfigService;
protected AbstractDeptHttpCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService) {
protected AbstractDeptCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService) {
this.deptService = deptService;
this.taskConfigService = taskConfigService;
}
@ -26,55 +28,57 @@ public abstract class AbstractDeptHttpCollectJob {
*
*/
public void startCollectAll(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes();
for (PeriodTime periodTime : periodTimes) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<DeptDTO> depts = null;
int pageNum = 0;
while (true) {
depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize());
if (depts == null || depts.size() == 0) {
break;
}
deptService.batchSavePowerDept(depts);
pageNum++;
}
getDepts(periodTime, taskConfig);
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate());
}
}
/**
*
*/
public void startCollectIncrement(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes();
for (PeriodTime periodTime : periodTimes) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<DeptDTO> depts;
int pageNum = 1;
periodTimes.forEach(periodTime -> {
getDepts(periodTime, taskConfig);
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
});
for (; true; pageNum++) {
}
depts = this.getDepts(periodTime.getPeriodStartDate(), periodTime.getPeriodEndDate(), pageNum, taskConfig.getPageSize());
if (depts == null || depts.size() == 0) {
break;
}
deptService.batchSavePowerDept(depts);
protected String getJobParam() {
return XxlJobHelper.getJobParam();
}
/**
*
*
* @param periodTime
* @param taskConfig
*/
private void getDepts(PeriodTime periodTime, TaskConfig taskConfig) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<DeptDTO> depts;
int pageNum = 1;
for (; true; pageNum++) {
depts = this.getDepts(
periodTime.getPeriodStartDate(),
periodTime.getPeriodEndDate(),
pageNum,
taskConfig.getPageSize()
);
if (Func.isEmpty(depts)) {
break;
}
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
deptService.batchSaveBasics(depts);
}
}
/**
*
*

@ -1,9 +1,9 @@
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.collect.service.ITaskConfigService;
import com.docus.server.collect.service.IHttpTBasicCollectService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.service.IPowerDeptService;
import com.docus.server.sys.service.ITBasicService;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
@ -13,12 +13,12 @@ import java.util.List;
@Component
public class DeptHttpCollectJob extends AbstractDeptHttpCollectJob {
public class DeptHttpCollectJob extends AbstractDeptCollectJob {
@Resource
private final IHttpDeptCollectService httpDeptCollectService;
private final IHttpTBasicCollectService httpDeptCollectService;
public DeptHttpCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService, IHttpDeptCollectService httpDeptCollectService) {
public DeptHttpCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService, IHttpTBasicCollectService httpDeptCollectService) {
super(deptService, taskConfigService);
this.httpDeptCollectService = httpDeptCollectService;
}
@ -28,7 +28,7 @@ public class DeptHttpCollectJob extends AbstractDeptHttpCollectJob {
*/
@XxlJob("startAllDeptHttpCollect")
public void startAllDeptHttpCollect() {
super.startCollectAll("1");
super.startCollectAll(getJobParam());
}
/**
@ -36,7 +36,7 @@ public class DeptHttpCollectJob extends AbstractDeptHttpCollectJob {
*/
@XxlJob("startIncDeptHttpCollect")
public void startIncDeptHttpCollect() {
super.startCollectIncrement("1");
super.startCollectIncrement(getJobParam());
}

@ -1,10 +1,9 @@
package com.docus.server.collect.job.dept;
import com.docus.server.collect.domain.ITaskConfigService;
import com.docus.server.collect.service.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.docus.server.sys.service.ITBasicService;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
@ -13,11 +12,11 @@ import java.util.Date;
import java.util.List;
@Component
public class DeptViewCollectJob extends AbstractDeptHttpCollectJob {
public class DeptViewCollectJob extends AbstractDeptCollectJob {
@Resource
private final IHisService hisService;
protected DeptViewCollectJob(IPowerDeptService deptService, ITaskConfigService taskConfigService, IHisService hisService) {
protected DeptViewCollectJob(ITBasicService deptService, ITaskConfigService taskConfigService, IHisService hisService) {
super(deptService, taskConfigService);
this.hisService = hisService;
}
@ -27,7 +26,7 @@ public class DeptViewCollectJob extends AbstractDeptHttpCollectJob {
*/
@XxlJob("startAllDeptViewCollect")
public void startAllDeptViewCollect() {
super.startCollectAll("2");
super.startCollectAll(getJobParam());
}
@ -36,9 +35,7 @@ public class DeptViewCollectJob extends AbstractDeptHttpCollectJob {
*/
@XxlJob("startIncDeptViewCollect")
public void startIncDeptViewCollect() {
String jobParam = XxlJobHelper.getJobParam();
System.out.println(jobParam);
super.startCollectIncrement(jobParam);
super.startCollectIncrement(getJobParam());
}

@ -0,0 +1,94 @@
package com.docus.server.collect.job.user;
import com.docus.core.util.Func;
import com.docus.server.collect.domain.TaskConfig;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.sys.pojo.dto.UserDTO;
import com.docus.server.sys.service.IPowerUserService;
import com.docus.server.tool.PeriodTime;
import com.xxl.job.core.context.XxlJobHelper;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
public abstract class AbstractUserCollectJob {
@Autowired
private IPowerUserService userService;
@Resource
private ITaskConfigService taskConfigService;
protected AbstractUserCollectJob(IPowerUserService userService, ITaskConfigService taskConfigService) {
this.userService = userService;
this.taskConfigService = taskConfigService;
}
/**
*
*/
public void startCollectAll(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getAllPeriodTimes();
for (PeriodTime periodTime : periodTimes) {
getUsers(periodTime, taskConfig);
taskConfigService.updateAllPointerDate(taskConfigId, periodTime.getPeriodEndDate());
}
}
/**
*
*/
public void startCollectIncrement(String taskConfigId) {
TaskConfig taskConfig = taskConfigService.getTaskConfig(taskConfigId);
List<PeriodTime> periodTimes = taskConfig.getIncPeriodTimes();
periodTimes.forEach(periodTime -> {
getUsers(periodTime, taskConfig);
taskConfigService.updateIncPointerDate(taskConfigId, periodTime.getPeriodEndDate());
});
}
protected String getJobParam() {
return XxlJobHelper.getJobParam();
}
/**
*
*
* @param periodTime
* @param taskConfig
*/
private void getUsers(PeriodTime periodTime, TaskConfig taskConfig) {
//考虑到性能,应该把起始时间和结束时间进行切割拆分到每天。按段查询。
List<UserDTO> users;
int pageNum = 1;
for (; true; pageNum++) {
users = this.getUsers(
periodTime.getPeriodStartDate(),
periodTime.getPeriodEndDate(),
pageNum,
taskConfig.getPageSize()
);
if (Func.isEmpty(users)) {
break;
}
userService.batchSavePowerUser(users);
}
}
/**
*
*
* @param startDate
* @param endDate
* @param pageNum
* @param pageSize
* @return
*/
public abstract List<UserDTO> getUsers(Date startDate, Date endDate, long pageNum, long pageSize);
}

@ -0,0 +1,48 @@
package com.docus.server.collect.job.user;
import com.docus.server.collect.service.IHttpUserCollectService;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.sys.pojo.dto.UserDTO;
import com.docus.server.sys.service.IPowerUserService;
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 UserHttpCollectJob extends AbstractUserCollectJob {
@Resource
private final IHttpUserCollectService httpUserCollectService;
public UserHttpCollectJob(IPowerUserService userService, ITaskConfigService taskConfigService, IHttpUserCollectService httpDeptCollectService) {
super(userService, taskConfigService);
this.httpUserCollectService = httpDeptCollectService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptHttpCollect")
public void startAllDeptHttpCollect() {
super.startCollectAll(getJobParam());
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptHttpCollect")
public void startIncDeptHttpCollect() {
super.startCollectIncrement(getJobParam());
}
@Override
public List<UserDTO> getUsers(Date startDate, Date endDate, long pazeNum, long pageSize) {
//需要根据不同医院去解析不同的内容。使用接口实现的方式。
return httpUserCollectService.getUsers(startDate, endDate, pazeNum, pageSize);
}
}

@ -0,0 +1,48 @@
package com.docus.server.collect.job.user;
import com.docus.server.collect.service.ITaskConfigService;
import com.docus.server.his.service.IHisService;
import com.docus.server.sys.pojo.dto.UserDTO;
import com.docus.server.sys.service.IPowerUserService;
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 UserViewCollectJob extends AbstractUserCollectJob {
@Resource
private final IHisService hisService;
protected UserViewCollectJob(IPowerUserService deptService, ITaskConfigService taskConfigService, IHisService hisService) {
super(deptService, taskConfigService);
this.hisService = hisService;
}
/**
* xxl jobhandler
*/
@XxlJob("startAllDeptViewCollect")
public void startAllDeptViewCollect() {
super.startCollectAll(getJobParam());
}
/**
* xxl jobhandler
*/
@XxlJob("startIncDeptViewCollect")
public void startIncDeptViewCollect() {
super.startCollectIncrement(getJobParam());
}
@Override
public List<UserDTO> getUsers(Date startDate, Date endDate, long pageNum, long pageSize) {
//每家医院按照固定的格式写sql不同医院需要替换不同的sql即可。
return hisService.getUserListView(startDate, endDate, pageNum, pageSize);
}
}

@ -1,7 +1,7 @@
package com.docus.server.collect.mq;
import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import com.docus.server.sys.service.IPowerDeptService;
import com.docus.server.ws.IWsResult;
import lombok.extern.slf4j.Slf4j;
@ -14,7 +14,7 @@ import javax.annotation.Resource;
public class MqCollect {
@Resource
private IDeptService deptService;
private IPowerDeptService deptService;
@Resource
private IWsResult wsResult;

@ -3,7 +3,7 @@ package com.docus.server.collect.service;
import com.docus.server.collect.infrastructure.dao.ReceiveDeptInfoEntity;
import com.docus.server.collect.infrastructure.mapper.ReceiveDeptInfoMapper;
import com.docus.server.sys.service.Dept;
import com.docus.server.sys.service.IDeptService;
import com.docus.server.sys.service.IPowerDeptService;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
@ -14,7 +14,7 @@ import javax.annotation.Resource;
public class CollectService {
@Resource
private IDeptService deptService;
private IPowerDeptService deptService;
@Resource
private ReceiveDeptInfoMapper receiveDeptInfoMapper;

@ -0,0 +1,10 @@
package com.docus.server.collect.service;
import com.docus.server.sys.pojo.dto.TBasicDTO;
import java.util.Date;
import java.util.List;
public interface IHttpBasicCollectService {
List<TBasicDTO> getBasics(Date startDate, Date endDate, long pageNum, long pageSize);
}

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

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

@ -0,0 +1,10 @@
package com.docus.server.collect.service;
import com.docus.server.sys.pojo.dto.UserDTO;
import java.util.Date;
import java.util.List;
public interface IHttpUserCollectService {
List<UserDTO> getUsers(Date startDate, Date endDate, long pageNum, long pageSize);
}

@ -1,4 +1,6 @@
package com.docus.server.collect.domain;
package com.docus.server.collect.service;
import com.docus.server.collect.domain.TaskConfig;
import java.util.Date;

@ -1,23 +1,30 @@
package com.docus.server.collect.domain;
package com.docus.server.collect.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.docus.server.collect.domain.TaskConfig;
import com.docus.server.collect.infrastructure.mapper.TaskConfigMapper;
import com.docus.server.collect.service.ITaskConfigService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
@Service
public class TaskConfigServiceImpl extends ServiceImpl<TaskConfigMapper, TaskConfig> implements ITaskConfigService {
@Transactional
@Override
public void updateAllPointerDate(String id, Date date) {
TaskConfig taskConfig = super.getById(id);
taskConfig.setAllPointerTime(date);
super.updateById(taskConfig);
}
@Transactional
@Override
public void updateIncPointerDate(String id, Date date) {
TaskConfig taskConfig = super.getById(id);
taskConfig.setIncPointerTime(date);
super.updateById(taskConfig);
}

@ -1,37 +0,0 @@
package com.docus.server.sys.service;
import com.docus.server.sys.infrastructure.dao.IDeptDao;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
@AllArgsConstructor
public class DeptService implements IDeptService {
private final IDeptDao deptDao;
@Override
public void save(List<Dept> depts) {
//需要判断是否已经存在,存在则不再重复。
for (Dept dept : depts) {
Dept dept1 = deptDao.getDept(dept.getDeptCode());
if (dept1 != null) {
deptDao.save(dept);
}
}
}
@Override
public void save(Dept dept) {
Dept dept1 = deptDao.getDept(dept.getDeptCode());
if (dept1 != null) {
//需要判断是否已经存在,存在则不再重复。
deptDao.save(dept);
}
}
}

@ -1,30 +0,0 @@
package com.docus.server.sys.service;
//异常代码每句
public enum ExceptionCode {
ParamIllegal(100001, "参数不合法"),
IpRequestExceedLimit(100002, "当前ip请求超出限制"),
TokenError(100003, "token不合法或已过期"),
InternalError(100004, "内部错误");
ExceptionCode(Integer code, String message) {
this.code = code;
this.message = message;
}
private Integer code;
private String message;
public Integer getCode() {
return code;
}
public String getMessage() {
return message;
}
}

@ -1,9 +0,0 @@
package com.docus.server.sys.service;
import java.util.List;
public interface IDeptService {
void save(List<Dept> depts);
void save(Dept dept);
}

@ -4,25 +4,15 @@ import com.docus.server.sys.pojo.dto.DeptDTO;
import java.util.List;
/**
*
*/
public interface IPowerDeptService {
/**
*
*
* @param deptDTOList
* @return
*/
void batchSavePowerDept(List<DeptDTO> deptDTOList);
/**
*
*
* @param deptDTO
* @param deptDto
* @return
*/
boolean register(DeptDTO deptDTO);
boolean register(DeptDTO deptDto);
/**
*
@ -31,4 +21,6 @@ public interface IPowerDeptService {
* @return
*/
boolean delDeptByDeptCode(String deptCode);
void batchSavePowerDept(List<DeptDTO> deptDTOList);
}

@ -2,6 +2,8 @@ package com.docus.server.sys.service;
import com.docus.server.sys.pojo.dto.UserDTO;
import java.util.List;
/**
*
*/
@ -21,4 +23,11 @@ public interface IPowerUserService {
* @return
*/
boolean delUserByUserName(String userName);
/**
*
*
* @param users
*/
void batchSavePowerUser(List<UserDTO> users);
}

@ -0,0 +1,34 @@
package com.docus.server.sys.service;
import com.docus.server.sys.pojo.dto.TBasicDTO;
import java.util.List;
/**
*
*/
public interface ITBasicService {
/**
*
*
* @param deptDTOList
* @return
*/
void batchSaveBasics(List<TBasicDTO> deptDTOList);
/**
*
*
* @param deptDTO
* @return
*/
boolean register(TBasicDTO deptDTO);
/**
*
*
* @param deptCode
* @return
*/
boolean delDeptByDeptCode(String deptCode);
}

@ -12,6 +12,7 @@ import com.docus.server.sys.service.IPowerUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
*
@ -20,16 +21,18 @@ import javax.annotation.Resource;
*/
@Service
public class PowerUserServiceImpl extends ServiceImpl<PowerUserMapper, PowerUser> implements IPowerUserService {
// @Resource
// private PowerUserMapper powerUserMapper;
@Resource
private IdService idService;
@Resource
private UserProperties userProperties;
@Override
public void batchSavePowerUser(List<UserDTO> userDTOList) {
userDTOList.forEach(this::register);
}
@Override
public boolean register(UserDTO userDTO) {
// PowerUser powerUser = powerUserMapper.getUserByUserName(userDTO.getUserName());
PowerUser powerUser = baseMapper.getUserByUserName(userDTO.getUserName());
UserModifyParam userModifyParam = userDTO.transUserAddParam();
if (Func.isEmpty(powerUser)) {
@ -53,4 +56,6 @@ public class PowerUserServiceImpl extends ServiceImpl<PowerUserMapper, PowerUser
baseMapper.delUserByUserName(userName);
return true;
}
}

@ -0,0 +1,59 @@
package com.docus.server.sys.service.impl;
import com.docus.core.util.Func;
import com.docus.infrastructure.redis.service.IdService;
import com.docus.server.sys.common.UserProperties;
import com.docus.server.sys.pojo.dto.UserDTO;
import com.docus.server.sys.pojo.dto.UserModifyParam;
import com.docus.server.sys.pojo.entity.PowerUser;
import com.docus.server.sys.service.ITBasicService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
*
*
* @author wyb
*/
@Service
public class TBasicServiceImpl extends ServiceImpl<TBasicMapper, TBasic> implements ITBasicService {
@Resource
private IdService idService;
@Resource
private UserProperties userProperties;
@Override
public void batchSavePowerUser(List<UserDTO> userDTOList) {
userDTOList.forEach(this::register);
}
@Override
public boolean register(UserDTO userDTO) {
PowerUser powerUser = baseMapper.getUserByUserName(userDTO.getUserName());
UserModifyParam userModifyParam = userDTO.transUserAddParam();
if (Func.isEmpty(powerUser)) {
long userId = idService.getDateSeq();
userModifyParam.setUserId(userId);
userModifyParam.setUserPwd(userProperties.getPassword());
baseMapper.addUser(userModifyParam);
return true;
}
userModifyParam.setUserId(powerUser.getUserId());
baseMapper.updateUser(userModifyParam);
return true;
}
@Override
public boolean delUserByUserName(String userName) {
PowerUser powerUser = baseMapper.getUserByUserName(userName);
if (Func.isEmpty(powerUser)) {
return true;
}
baseMapper.delUserByUserName(userName);
return true;
}
}

@ -1,7 +1,9 @@
package com.docus.server.his.infrastructure;
import com.docus.server.his.infrastructure.mapper.HisDeptMapper;
import com.docus.server.his.infrastructure.mapper.HisUserMapper;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.pojo.dto.UserDTO;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
@ -14,6 +16,7 @@ public class HisSysDao {
private final HisDeptMapper hisDeptMapper;
private final HisUserMapper hisUserMapper;
public List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pageNum, long pageSize) {
@ -21,8 +24,8 @@ public class HisSysDao {
}
public void getUserListView() {
public List<UserDTO> getUserListView(Date startDate, Date endDate, long pageNum, long pageSize) {
return hisUserMapper.getUserListView(startDate, endDate, (pageNum - 1) * pageSize, pageSize);
}

@ -13,4 +13,6 @@ import java.util.List;
public interface HisDeptMapper {
List<DeptDTO> getDeptListView(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("offset") long offset, @Param("pageSize") long pageSize);
}

@ -0,0 +1,18 @@
package com.docus.server.his.infrastructure.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.docus.server.sys.pojo.dto.UserDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
@Mapper
@DS("his")
public interface HisUserMapper {
List<UserDTO> getUserListView(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("offset") long offset, @Param("pageSize") long pageSize);
}

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

@ -3,6 +3,7 @@ package com.docus.server.his.service.impl;
import com.docus.server.his.infrastructure.HisSysDao;
import com.docus.server.his.service.IHisService;
import com.docus.server.sys.pojo.dto.DeptDTO;
import com.docus.server.sys.pojo.dto.UserDTO;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
@ -17,8 +18,13 @@ public class HisService implements IHisService {
@Override
public List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pazeNum, long pageSize) {
return hisSysDao.getDeptListView(startDate, endDate, pazeNum, pageSize);
public List<DeptDTO> getDeptListView(Date startDate, Date endDate, long pageNum, long pageSize) {
return hisSysDao.getDeptListView(startDate, endDate, pageNum, pageSize);
}
@Override
public List<UserDTO> getUserListView(Date startDate, Date endDate, long pageNum, long pageSize) {
return hisSysDao.getUserListView(startDate, endDate, pageNum, pageSize);
}
}

@ -0,0 +1,49 @@
<?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.docus.server.his.infrastructure.mapper.HisUserMapper">
<select id="getUserListView" resultType="com.docus.server.sys.pojo.dto.UserDTO">
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}
order by update_time asc
LIMIT #{offset}, #{pageSize}
</select>
<!-- mysql
<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`
WHERE update_time between #{startDate} and #{endDate}
order by update_time asc
LIMIT (#{pageNum} - 1) * #{pageSize} , #{pageSize}
</select>
-->
<!-- mssqsql
<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
from (select row_number()
over(order by sno asc) as rownumber,*
from student) temp_row
where rownumber>((pageNum-1)*pageSize);
</select>
-->
<!-- oracle
<select id="getDeptListView" resultType="com.docus.server.sys.pojo.dto.DeptDTO">
SELECT * FROM
(SELECT tt.*,ROWNUM AS RN FROM
(SELECT t.* FROM ${tableName} t
where 1=1
ORDER BY t.createTime DESC,t.id ) tt
WHERE tt.ROWNUM <= #{pageNum}*#{pageSize}
) rs
WHERE rs.RN > #{pageNum-1}*#{pageSize}
</select>
-->
</mapper>
Loading…
Cancel
Save