1747191978@qq.com 3 months ago
parent
commit
306e74ed34
  1. 20
      acupuncture-admin/pom.xml
  2. 25
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/system/SysUserController.java
  3. 2
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/AdminDmsUserController.java
  4. 12
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/AdminPmsTreatmentController.java
  5. 6
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/DmsLoginController.java
  6. 186
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/ExternalController.java
  7. 6
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/PmsTreatmentController.java
  8. 190
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/ScreeningController.java
  9. 141
      acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/WxQrCodeController.java
  10. 2
      acupuncture-admin/src/main/java/com/acupuncture/web/task/TaskController.java
  11. 10
      acupuncture-admin/src/main/resources/application-dev.yml
  12. 8
      acupuncture-admin/src/main/resources/application-stage.yml
  13. 1
      acupuncture-admin/src/main/resources/application.yml
  14. 13
      acupuncture-common/pom.xml
  15. 157
      acupuncture-common/src/main/java/com/acupuncture/common/constant/ErrorConstant.java
  16. 16
      acupuncture-common/src/main/java/com/acupuncture/common/constant/UserConstants.java
  17. 47
      acupuncture-common/src/main/java/com/acupuncture/common/core/redis/RedisCache.java
  18. 131
      acupuncture-common/src/main/java/com/acupuncture/common/enums/BaseEnum.java
  19. 7
      acupuncture-common/src/main/java/com/acupuncture/common/exception/base/BaseException.java
  20. 60
      acupuncture-common/src/main/java/com/acupuncture/common/utils/AsposeUtils.java
  21. 86
      acupuncture-common/src/main/java/com/acupuncture/common/utils/QrCodeUtil.java
  22. 3
      acupuncture-common/src/main/java/com/acupuncture/common/utils/SecurityUtils.java
  23. 4
      acupuncture-framework/src/main/java/com/acupuncture/framework/config/SecurityConfig.java
  24. 12
      acupuncture-generator/src/main/resources/mbg.xml
  25. 35
      acupuncture-system/pom.xml
  26. 53
      acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/AmsWxQrCodeDto.java
  27. 215
      acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/ExternalDto.java
  28. 8
      acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/PmsTreatmentDto.java
  29. 413
      acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/ScreeningDto.java
  30. 172
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/AmsScreenWxQrCode.java
  31. 1121
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/AmsScreenWxQrCodeExample.java
  32. 139
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreening.java
  33. 95
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDetail.java
  34. 641
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDetailExample.java
  35. 128
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDraw.java
  36. 851
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDrawExample.java
  37. 881
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningExample.java
  38. 315
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningRecord.java
  39. 1961
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningRecordExample.java
  40. 139
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplReportImage.java
  41. 921
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplReportImageExample.java
  42. 1008
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplRtcfInfo.java
  43. 6441
      acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplRtcfInfoExample.java
  44. 84
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/AmsWxQrCodeVo.java
  45. 4
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/DmsLoginUserVo.java
  46. 218
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/ExternalVo.java
  47. 4
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/PmsTreatmentVo.java
  48. 549
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/QuestionnaireVo.java
  49. 75
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/ScrScreenVo.java
  50. 224
      acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/UplRtcfInfoVo.java
  51. 4
      acupuncture-system/src/main/java/com/acupuncture/system/mapper/SysRoleMapper.java
  52. 4
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/DmsUserDao.java
  53. 17
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ExternalDao.java
  54. 20
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ScreeningDao.java
  55. 53
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ScreeningDetailDao.java
  56. 3
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/UmsDataSourceDao.java
  57. 34
      acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/WxQrCodeDao.java
  58. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/AmsScreenWxQrCodeMapper.java
  59. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningDetailMapper.java
  60. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningDrawMapper.java
  61. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningMapper.java
  62. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningRecordMapper.java
  63. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/UplReportImageMapper.java
  64. 28
      acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/UplRtcfInfoMapper.java
  65. 3
      acupuncture-system/src/main/java/com/acupuncture/system/service/DmsLoginService.java
  66. 57
      acupuncture-system/src/main/java/com/acupuncture/system/service/ExternalService.java
  67. 76
      acupuncture-system/src/main/java/com/acupuncture/system/service/IScreeningService.java
  68. 9
      acupuncture-system/src/main/java/com/acupuncture/system/service/PmsTreatmentService.java
  69. 36
      acupuncture-system/src/main/java/com/acupuncture/system/service/WxQrCodeService.java
  70. 5
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/DmsLoginServiceImpl.java
  71. 148
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/ExternalServiceImpl.java
  72. 3
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/PmsPatientServiceImpl.java
  73. 218
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/PmsTreatmentServiceImpl.java
  74. 484
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/ScreeningServiceImpl.java
  75. 380
      acupuncture-system/src/main/java/com/acupuncture/system/service/impl/WxQrCodeServiceImpl.java
  76. 28
      acupuncture-system/src/main/resources/mapper/dao/ExternalDao.xml
  77. 1
      acupuncture-system/src/main/resources/mapper/dao/PmsTreatmentDao.xml
  78. 38
      acupuncture-system/src/main/resources/mapper/dao/ScreeningDao.xml
  79. 169
      acupuncture-system/src/main/resources/mapper/dao/ScreeningDetailDao.xml
  80. 14
      acupuncture-system/src/main/resources/mapper/dao/SysPowerDao.xml
  81. 3
      acupuncture-system/src/main/resources/mapper/dao/UmsDataSourceDao.xml
  82. 131
      acupuncture-system/src/main/resources/mapper/dao/WxQrCodeDao.xml
  83. 347
      acupuncture-system/src/main/resources/mapper/system/AmsScreenWxQrCodeMapper.xml
  84. 237
      acupuncture-system/src/main/resources/mapper/system/ScrScreeningDetailMapper.xml
  85. 285
      acupuncture-system/src/main/resources/mapper/system/ScrScreeningDrawMapper.xml
  86. 300
      acupuncture-system/src/main/resources/mapper/system/ScrScreeningMapper.xml
  87. 552
      acupuncture-system/src/main/resources/mapper/system/ScrScreeningRecordMapper.xml
  88. 300
      acupuncture-system/src/main/resources/mapper/system/UplReportImageMapper.xml
  89. 1545
      acupuncture-system/src/main/resources/mapper/system/UplRtcfInfoMapper.xml
  90. 2
      pom.xml

20
acupuncture-admin/pom.xml

@ -53,12 +53,32 @@
<dependency>
<groupId>com.acupuncture</groupId>
<artifactId>acupuncture-framework</artifactId>
<exclusions>
<exclusion>
<artifactId>jakarta.activation</artifactId>
<groupId>com.sun.activation</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- 定时任务-->
<dependency>
<groupId>com.acupuncture</groupId>
<artifactId>acupuncture-quartz</artifactId>
<exclusions>
<exclusion>
<artifactId>poi-ooxml</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
<exclusion>
<artifactId>poi</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
<exclusion>
<artifactId>poi-ooxml-schemas</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- 代码生成-->

25
acupuncture-admin/src/main/java/com/acupuncture/web/controller/system/SysUserController.java

@ -2,7 +2,15 @@ package com.acupuncture.web.controller.system;
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import com.acupuncture.framework.datasource.DynamicDataSourceContextHolder;
import com.acupuncture.system.domain.po.DmsTenant;
import com.acupuncture.system.domain.po.UmsDataSource;
import com.acupuncture.system.domain.vo.UmsDataSourceVo;
import com.acupuncture.system.persist.mapper.DmsTenantMapper;
import com.acupuncture.system.persist.mapper.UmsDataSourceMapper;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@ -53,6 +61,12 @@ public class SysUserController extends BaseController
@Autowired
private ISysPostService postService;
@Resource
private DmsTenantMapper dmsTenantMapper;
@Resource
private UmsDataSourceMapper umsDataSourceMapper;
/**
* 获取用户列表
*/
@ -151,6 +165,7 @@ public class SysUserController extends BaseController
@PutMapping
public AjaxResult edit(@Validated @RequestBody SysUser user)
{
// changeDataSource(user.getTenantId());
userService.checkUserAllowed(user);
userService.checkUserDataScope(user.getUserId());
deptService.checkDeptDataScope(user.getDeptId());
@ -171,6 +186,16 @@ public class SysUserController extends BaseController
return toAjax(userService.updateUser(user));
}
private void changeDataSource(Long tenantId) {
DmsTenant dmsTenant = dmsTenantMapper.selectByPrimaryKey(tenantId);
if (dmsTenant != null) {
UmsDataSource umsDataSource = umsDataSourceMapper.selectByPrimaryKey(dmsTenant.getDataSourceId());
if (umsDataSource != null) {
DynamicDataSourceContextHolder.setDataSourceType(umsDataSource.getDataSourceKey());
}
}
}
/**
* 删除用户
*/

2
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/AdminDmsUserController.java

@ -85,7 +85,7 @@ public class AdminDmsUserController {
} else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) {
return JsonResponse.ok().fail("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
}
user.setTenantId(SecurityUtils.getTenantId());
user.setTenantId(dto.getTenantId());
user.setCreateBy(SecurityUtils.getUsername());
user.setPhonenumber(dto.getContactPhone());
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));

12
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/AdminPmsTreatmentController.java

@ -84,4 +84,16 @@ public class AdminPmsTreatmentController {
private static void changeDataSource(String dataSourceKey) {
DynamicDataSourceContextHolder.setDataSourceType(dataSourceKey);
}
@ApiOperation("导出诊疗档案评估报告")
@PostMapping("/exportTreatmentPg")
public JsonResponse<String> exportTreatmentPg(HttpServletResponse response, @RequestBody @Validated PmsTreatmentDto.ExportVO dto){
return JsonResponse.ok(treatmentService.exportTreatmentPg(response, dto));
}
@ApiOperation("后台导出诊疗档案评估报告")
@PostMapping("/admin/exportTreatmentPg")
public JsonResponse<String> adminExportTreatmentPg(HttpServletResponse response, @RequestBody @Validated PmsTreatmentDto.ExportVO dto){
return JsonResponse.ok(treatmentService.adminExportTreatmentPg(response, dto));
}
}

6
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/DmsLoginController.java

@ -12,6 +12,7 @@ import com.acupuncture.common.utils.SecurityUtils;
import com.acupuncture.framework.web.service.SysPermissionService;
import com.acupuncture.framework.web.service.TokenService;
import com.acupuncture.framework.web.service.WebDmsLoginService;
import com.acupuncture.system.domain.po.DmsTenant;
import com.acupuncture.system.domain.vo.DmsLoginUserVo;
import com.acupuncture.system.service.DmsLoginService;
import com.acupuncture.system.service.ISysUserService;
@ -87,4 +88,9 @@ public class DmsLoginController {
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
return JsonResponse.ok(dmsLoginService.resetPwd(user));
}
@PostMapping("/queryTenantById")
public JsonResponse<DmsTenant> queryTenantById(@RequestBody DmsLoginUserVo.Query dto){
return JsonResponse.ok(dmsLoginService.queryById(dto.getId()));
}
}

186
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/ExternalController.java

@ -0,0 +1,186 @@
package com.acupuncture.web.controller.web;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.acupuncture.common.annotation.Anonymous;
import com.acupuncture.common.config.RuoYiConfig;
import com.acupuncture.common.core.domain.AjaxResult;
import com.acupuncture.common.core.domain.BaseDto;
import com.acupuncture.common.core.domain.JsonResponse;
import com.acupuncture.common.core.redis.RedisCache;
import com.acupuncture.common.exception.base.BaseException;
import com.acupuncture.common.utils.file.FileUploadUtils;
import com.acupuncture.common.utils.file.FileUtils;
import com.acupuncture.framework.config.ServerConfig;
import com.acupuncture.framework.datasource.DynamicDataSourceContextHolder;
import com.acupuncture.system.domain.dto.ExternalDto;
import com.acupuncture.system.domain.po.UplReportImage;
import com.acupuncture.system.domain.po.UplRtcfInfo;
import com.acupuncture.system.domain.vo.ExternalVo;
import com.acupuncture.system.domain.vo.UmsDataSourceVo;
import com.acupuncture.system.domain.vo.UplRtcfInfoVo;
import com.acupuncture.system.persist.dao.UmsDataSourceDao;
import com.acupuncture.system.service.ExternalService;
import com.mysql.cj.xdevapi.JsonArray;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jdk.nashorn.internal.runtime.logging.Logger;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.apache.regexp.RE;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.util.List;
/**
* @Author zzc
* @Package com.acupuncture.web.controller.web
* @Date 2025/3/15 9:21
* @description:
*/
@Slf4j
@Api(tags = "外部接口")
@RestController
@RequestMapping("/api")
public class ExternalController {
@Resource
private ExternalService externalService;
@Autowired
private ServerConfig serverConfig;
@Resource
private UmsDataSourceDao umsDataSourceDao;
@Resource
private RedisCache redisCache;
@Anonymous
@ApiOperation("获取人员信息")
@GetMapping("/http/getUserInfo")
public Object test(@RequestParam("from") String from, @RequestParam("memberid") String memberid) {
log.info("获取人员信息:{},{}",from, memberid);
checkoutData(from);
ExternalVo.Result query = externalService.query(from, memberid);
if (query == null) {
return "no person";
}
return query;
}
//切换数据源
private void checkoutData(String from) {
//根据社区ID查询数据源
List<UmsDataSourceVo.Result> dataSourceList = umsDataSourceDao.query(Long.parseLong(from));
if (CollectionUtil.isEmpty(dataSourceList)) {
throw new BaseException("查询不到社区");
}
//切换数据源查询
changeDataSource(dataSourceList.get(0).getDataSourceKey());
}
private static void changeDataSource(String key) {
DynamicDataSourceContextHolder.setDataSourceType(key);
}
// @Anonymous
// @ApiOperation("上传数据")
// @PostMapping("/http/uploadMemberInfo")
// public Object add(@RequestBody List<ExternalDto.RtcfInfoDto> list){
// log.info("上传数据dto123:{}",list);
//// List<ExternalDto.RtcfInfoDto> list = dto.getList();
// int add = 0;
// for (ExternalDto.RtcfInfoDto rtcfInfoDto : list) {
// checkoutData(rtcfInfoDto.getUUID());
// add += externalService.add(rtcfInfoDto);
// }
// if (add == 0) {
// return "upload fail";
// }
// return "upload ok";
// }
// @Anonymous
// @ApiOperation("上传数据")
// @PostMapping("/http/uploadMemberInfo")
// public Object add(@RequestBody String str){
// JsonArray jsonValues = new JsonArray();
//
// log.info("上传数据dto123:{}",list);
//// List<ExternalDto.RtcfInfoDto> list = dto.getList();
// int add = 0;
// for (ExternalDto.RtcfInfoDto rtcfInfoDto : list) {
// checkoutData(rtcfInfoDto.getUUID());
// add += externalService.add(rtcfInfoDto);
// }
// if (add == 0) {
// return "upload fail";
// }
// return "upload ok";
// }
@Anonymous
@ApiOperation("上传数据")
@PostMapping("/http/addReportImage")
public Object addReportImage(MultipartFile image){
try {
//切换数据源
String str = removeExtension(image.getOriginalFilename());
Object o = redisCache.get("rtcfInfo:" + str);
if (ObjectUtil.isEmpty(o)) {
throw new BaseException("未查询到数据源");
}
checkoutData(o.toString());
// 上传文件路径
String filePath = RuoYiConfig.getUploadPath();
// 上传并返回新文件名称
String fileName = FileUploadUtils.upload(filePath, image);
String url = serverConfig.getUrl() + fileName;
AjaxResult ajax = AjaxResult.success();
ajax.put("url", url);
ajax.put("fileName", fileName);
ajax.put("newFileName", FileUtils.getName(fileName));
ajax.put("originalFilename", image.getOriginalFilename());
ExternalDto.ReportImageDto reportImageDto = new ExternalDto.ReportImageDto();
reportImageDto.setFileName(fileName);
reportImageDto.setFilePath(url);
reportImageDto.setMemberId(str);
externalService.addReportImage(reportImageDto);
return ajax;
}
catch (Exception e)
{
return AjaxResult.error(e.getMessage());
}
}
private static String removeExtension(String fileName) {
if (StrUtil.isEmpty(fileName)) {
return "";
}
int lastDotIndex = fileName.lastIndexOf('.');
return (lastDotIndex > 0) ? fileName.substring(0, lastDotIndex) : fileName;
}
@ApiOperation("上传数据查询")
@PostMapping("/http/list")
public List<UplRtcfInfo> list(){
return externalService.list();
}
@ApiOperation("根据住院号/门诊号查询人体成分信息")
@PostMapping("/http/selectByMemberId")
public JsonResponse<UplRtcfInfoVo.Result> selectByMemberId(@RequestBody @Validated ExternalDto.MemberDto dto){
return JsonResponse.ok(externalService.selectByMemberId(dto.getMemberId()));
}
@ApiOperation("根据住院号/门诊号查询人体成分报告")
@PostMapping("/http/selectReportByMemberId")
public JsonResponse<UplReportImage> selectReportByMemberId(@RequestBody @Validated ExternalDto.MemberDto dto){
return JsonResponse.ok(externalService.selectReportByMemberId(dto.getMemberId()));
}
}

6
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/PmsTreatmentController.java

@ -93,4 +93,10 @@ public class PmsTreatmentController {
treatmentService.importTreatment(file);
return JsonResponse.ok();
}
@ApiOperation("导出诊疗档案评估报告")
@PostMapping("/exportTreatmentPg")
public JsonResponse<String> exportTreatmentPg(HttpServletResponse response, @RequestBody @Validated PmsTreatmentDto.ExportVO dto){
return JsonResponse.ok(treatmentService.exportTreatmentPg(response, dto));
}
}

190
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/ScreeningController.java

@ -0,0 +1,190 @@
package com.acupuncture.web.controller.web;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import com.acupuncture.common.annotation.Anonymous;
import com.acupuncture.common.core.domain.BaseDto;
import com.acupuncture.common.core.domain.JsonResponse;
import com.acupuncture.common.utils.SecurityUtils;
import com.acupuncture.system.domain.dto.ScreeningDto;
import com.acupuncture.system.domain.vo.QuestionnaireVo;
import com.acupuncture.system.domain.vo.ScrScreenVo;
import com.acupuncture.system.service.IScreeningService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.net.URLEncoder;
import java.util.Date;
import java.util.List;
@Slf4j
@Api(tags = "筛查")
@RestController
@RequestMapping("/screening")
public class ScreeningController {
@Resource
private IScreeningService screeningService;
@ApiOperation(value = "查询筛查列表", notes = "原:查询医院是否填写了调查筛查")
@RequestMapping(value = "/queryDetail", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<PageInfo<ScrScreenVo.Result>> queryDetail(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.Query> param){
log.info("查询筛查列表");
if (param.getPageNum() > 0) {
PageHelper.startPage(param.getPageNum(), param.getPageSize());
}
return JsonResponse.ok(screeningService.queryDetailByPage(param.getParam(), param.getPageNum(), param.getPageSize()));
}
@ApiOperation(value = "后台查询筛查列表", notes = "原:查询医院是否填写了调查筛查")
@RequestMapping(value = "/admin/queryDetail", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<PageInfo<ScrScreenVo.Result>> adminQueryDetail(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.Query> param){
log.info("查询筛查列表");
if (param.getPageNum() > 0) {
PageHelper.startPage(param.getPageNum(), param.getPageSize());
}
return JsonResponse.ok(screeningService.adminQueryDetailByPage(param.getParam(), param.getPageNum(), param.getPageSize()));
}
@ApiOperation(value = "创建筛查详情", notes = "")
@RequestMapping(value = "/create", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<QuestionnaireVo.DetailInfo> createDetail(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.CreateDetail> params) throws Exception {
log.info("创建筛查详情{}", params);
QuestionnaireVo.DetailInfo detailInfo = screeningService.createDetail(params.getParam(), params.getParam().getUserId(), params.getParam().getTenantId());
log.info("创建筛查详情结束");
return JsonResponse.ok(detailInfo);
}
@Anonymous
@ApiOperation(value = "创建筛查详情***", notes = "")
@RequestMapping(value = "/createNoToken", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<QuestionnaireVo.DetailInfo> createNoToken(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.CreateDetail> params) throws Exception {
log.info("创建筛查详情{}", params);
QuestionnaireVo.DetailInfo detailInfo = screeningService.createDetail(params.getParam(), params.getParam().getUserId(), params.getParam().getTenantId());
log.info("创建筛查详情结束");
return JsonResponse.ok(detailInfo);
}
@ApiOperation(value = "提交筛查", notes = "")
@RequestMapping(value = "/submit", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse submitQuestionnaire(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.SubmitScreeningQuestionnaire> params) throws Exception {
log.info("提交筛查开始{}", params);
screeningService.submitQuestionnaire(params.getParam(), SecurityUtils.getUserId());
return JsonResponse.ok();
}
@Anonymous
@ApiOperation(value = "提交筛查**", notes = "")
@RequestMapping(value = "/submitNoToken", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse submitNoToken(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.SubmitScreeningQuestionnaire> params) throws Exception {
log.info("提交筛查开始{}", params);
screeningService.submitQuestionnaire(params.getParam(), 0L);
return JsonResponse.ok();
}
@Anonymous
@ApiOperation(value = "保存调查筛查**", notes = "")
@RequestMapping(value = "/save", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse saveQuestionnaire(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.SaveQuestionnaire> params) throws Exception {
log.info("保存调查筛查开始{}", params);
screeningService.saveQuestionnaire(params.getParam(), params.getParam().getUserId());
log.info("保存调查筛查结束");
return JsonResponse.ok();
}
@ApiOperation(value = "筛查随访", notes = "")
@RequestMapping(value = "/follow", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse follow(@Validated @RequestBody BaseDto<ScreeningDto.ScreenFollow> screenFollow){
screeningService.follow(screenFollow.getParam().getPatientId(), screenFollow.getParam().getStatus());
return JsonResponse.ok();
}
@ApiOperation(value = "查询筛查列表", notes = "原:查询医院是否填写了调查筛查")
@RequestMapping(value = "/queryNotWrite", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<PageInfo<QuestionnaireVo.WriteStatus>> queryNotWrite(@ApiParam @Validated @RequestBody BaseDto<ScreeningDto.QueryNotWrite> params) throws Exception {
log.info("保存调查筛查开始{}", params);
List<QuestionnaireVo.WriteStatus> writeStatusList = screeningService.queryNotWrite(params.getParam());
log.info("保存调查筛查结束{}", writeStatusList);
return JsonResponse.ok(new PageInfo<>(writeStatusList));
}
@ApiOperation(value = "导出筛查列表", notes = "")
@RequestMapping(value = "/exportScreen", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public void export(HttpServletResponse response, @RequestBody @Validated BaseDto<ScreeningDto.Query> param) {
screeningService.export(response, param.getParam());
}
@ApiOperation(value = "导出筛查列表", notes = "")
@RequestMapping(value = "/admin/exportScreen", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public void adminExport(HttpServletResponse response, @RequestBody @Validated BaseDto<ScreeningDto.Query> param) {
screeningService.adminExport(response, param.getParam());
}
@ApiOperation(value = "导出认知筛查列表", notes = "")
@RequestMapping(value = "/exportRzScreen", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public void exportRzScreen(HttpServletResponse response, @RequestBody @Validated BaseDto<ScreeningDto.Query> param) {
screeningService.exportRzScreen(response, param.getParam());
}
// @Anonymous
// @ApiOperation(value = "导出筛查记录", notes = "")
// @RequestMapping(value = "/export", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
// public void export(@ApiParam @Validated ScreeningDto.Export export, HttpServletResponse response) throws Exception {
// log.info("导出筛查记录{}", export);
// // 未添加时间条件
// Workbook workbook = screeningService.export(export);
// log.info("导出筛查记录结束");
// String str = "";
// if (1L == export.getQid()) {
// str = "2021年1-6月";
// } else if (3L == export.getQid()) {
// str = "2021年7-11月";
// } else if (4L == export.getQid()) {
// str = "2021年7-12月";
// } else if (10L == export.getQid()) {
// str = "2022年7-12月";
// }
// String fileName = str + "山西省缺血性脑卒中数据汇总表" + DateUtil.format(new Date(), "yyyyMMddHHmmss") + ".xlsx";
// response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, CharsetUtil.UTF_8));
// workbook.write(response.getOutputStream());
// }
//
// @Anonymous
// @ApiOperation(value = "导出筛查记录", notes = "")
// @RequestMapping(value = "/exportByArea", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
// public void exportByArea(@ApiParam @Validated ScreeningDto.ExportByArea export, HttpServletResponse response) throws Exception {
// log.info("导出筛查记录{}", export);
// // 未添加时间条件
// Workbook workbook = screeningService.exportByArea(export);
// log.info("导出筛查记录结束");
// String str = "";
// if (1L == export.getQid()) {
// str = "2021年1-6月";
// } else if (3L == export.getQid()) {
// str = "2021年7-11月";
// } else if (4L == export.getQid()) {
// str = "2021年7-12月";
// } else if (10L == export.getQid()) {
// str = "2022年7-12月";
// }
// String fileName = str + "山西省缺血性脑卒中数据汇总表"
// + (StrUtil.isNotEmpty(export.getArea()) ? ("(" + export.getArea() + ")") : "")
// + DateUtil.format(new Date(), "yyyyMMddHHmmss") + ".xlsx";
// response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, CharsetUtil.UTF_8));
// workbook.write(response.getOutputStream());
// }
}

141
acupuncture-admin/src/main/java/com/acupuncture/web/controller/web/WxQrCodeController.java

@ -0,0 +1,141 @@
package com.acupuncture.web.controller.web;
import cn.hutool.core.bean.BeanUtil;
import com.acupuncture.common.annotation.Anonymous;
import com.acupuncture.common.core.domain.BaseDto;
import com.acupuncture.common.core.domain.JsonResponse;
import com.acupuncture.system.domain.dto.AmsWxQrCodeDto;
import com.acupuncture.system.domain.dto.PmsPatientDto;
import com.acupuncture.system.domain.po.AmsScreenWxQrCode;
import com.acupuncture.system.domain.vo.AmsWxQrCodeVo;
import com.acupuncture.system.service.WxQrCodeService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.List;
@Slf4j
@Api(tags = "微信二维码")
@RestController
@RequestMapping("/wxQrCode")
public class WxQrCodeController {
@Resource
private WxQrCodeService wxQrCodeService;
@ApiOperation(value = "查询")
@PostMapping("/queryList")
public JsonResponse<PageInfo<AmsWxQrCodeVo.Result>> queryList(@Validated @RequestBody BaseDto<AmsWxQrCodeDto.Select> baseDto){
PageHelper.startPage(baseDto.getPageNum(), baseDto.getPageSize());
return JsonResponse.ok(new PageInfo<>(wxQrCodeService.queryList(baseDto.getParam().getDiseaseId(), baseDto.getParam().getDeptId())));
}
@ApiOperation(value = "新增")
@PostMapping("/add")
public JsonResponse add(@Validated @RequestBody AmsScreenWxQrCode amsWxQrCode) throws Exception{
wxQrCodeService.add(amsWxQrCode);
return JsonResponse.ok();
}
@ApiOperation(value = "删除")
@PostMapping("/delete")
public JsonResponse delete(@Validated @RequestBody PmsPatientDto.Delete delete){
wxQrCodeService.delete(delete.getIdList());
return JsonResponse.ok();
}
@ApiOperation(value = "导出")
@PostMapping("/export")
public JsonResponse export(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws IOException{
return JsonResponse.ok(wxQrCodeService.export(query.getUrl(), query.getBq()));
}
//
@ApiOperation(value = "查询筛查二维码")
@PostMapping("/queryScreenList")
public JsonResponse<PageInfo<AmsWxQrCodeVo.ScreenResult>> queryScreenList(@Validated @RequestBody BaseDto<AmsWxQrCodeDto.ScreenSelect> dto){
if (dto.getPageNum() > 0) {
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
}
return JsonResponse.ok(new PageInfo<>(wxQrCodeService.queryList(dto.getParam().getTenantId())));
}
@ApiOperation(value = "查询筛查二维码")
@PostMapping("/admin/queryScreenList")
public JsonResponse<PageInfo<AmsWxQrCodeVo.ScreenResult>> adminQueryScreenList(@Validated @RequestBody BaseDto<AmsWxQrCodeDto.ScreenSelect> dto){
if (dto.getPageNum() > 0) {
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
}
return JsonResponse.ok(new PageInfo<>(wxQrCodeService.queryList(dto.getParam().getTenantId())));
}
@ApiOperation(value = "查询客户端筛查二维码")
@PostMapping("/queryClientScreenList")
public JsonResponse<List<AmsWxQrCodeVo.ScreenResult>> queryClientScreenList(){
return JsonResponse.ok(wxQrCodeService.queryScreenList());
}
@ApiOperation(value = "添加筛查二维码")
@PostMapping("/addScreen")
public JsonResponse addScreen(@Validated @RequestBody AmsWxQrCodeDto.ScreenInsert amsScreenWxQrCode) throws Exception{
wxQrCodeService.add(amsScreenWxQrCode);
return JsonResponse.ok();
}
@ApiOperation(value = "删除")
@PostMapping("/deleteScreen")
public JsonResponse deleteScreen(@Validated @RequestBody PmsPatientDto.Delete delete){
wxQrCodeService.deleteScreen(delete.getIdList());
return JsonResponse.ok();
}
@ApiOperation(value = "导出筛查")
@PostMapping("/exportScreen")
public JsonResponse exportScreen(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception{
return JsonResponse.ok(wxQrCodeService.exportScreen(query.getUrl(), query.getTenantId()));
}
@ApiOperation(value = "导出筛查")
@PostMapping("/admin/exportScreen")
public JsonResponse adminExportScreen(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception{
return JsonResponse.ok(wxQrCodeService.adminExportScreen(query.getUrl(), query.getTenantId()));
}
@ApiOperation(value = "导出海报筛查")
@PostMapping("/exportHbScreen")
public JsonResponse exportHbScreen(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception{
return JsonResponse.ok(wxQrCodeService.exportHbScreen(query.getUrl(), query.getTenantId()));
}
//
// @Anonymous
// @ApiOperation(value = "导出静脉溶栓")
// @PostMapping("/exportJmrs")
// public JsonResponse exportJmrs(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception{
// return JsonResponse.ok(wxQrCodeService.exportjmrs(query.getUrl()));
//
// }
//
// @ApiOperation(value = "客户端导出")
// @GetMapping("/exportScreenPath")
// public JsonResponse exportScreenPath() throws Exception {
// return JsonResponse.ok(wxQrCodeService.exportScreenPath());
// }
//
// @ApiOperation(value = "客户端导出ZIP")
// @PostMapping("/exportZipScreenPath")
// public JsonResponse exportZipScreenPath(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception {
// return JsonResponse.ok(wxQrCodeService.exportZipScreenPath(query.getTenantId()));
// }
//
// @ApiOperation(value = "客户端导出海报ZIP")
// @PostMapping("/exportHbZipScreenPath")
// public JsonResponse exportHbZipScreenPath(@Validated @RequestBody AmsWxQrCodeDto.Query query) throws Exception {
// return JsonResponse.ok(wxQrCodeService.exportHbZipScreenPath(query.getTenantId()));
// }
}

2
acupuncture-admin/src/main/java/com/acupuncture/web/task/TaskController.java

@ -72,7 +72,7 @@ public class TaskController {
// UmsDataSourceVo.Result result1 = new UmsDataSourceVo.Result();
// result1.setDataSourceKey("MASTER");
// changeDataSource(result1);
List<UmsDataSourceVo.Result> query = umsDataSourceDao.query();
List<UmsDataSourceVo.Result> query = umsDataSourceDao.query(null);
if (CollectionUtil.isEmpty(query)) {
return;
}

10
acupuncture-admin/src/main/resources/application-dev.yml

@ -58,4 +58,12 @@ spring:
merge-sql: true
wall:
config:
multi-statement-allow: true
multi-statement-allow: true
file:
PatientTemplate: /home/acupuncture/server/profile/PatientTemplate.xlsx
TreamentTemplate: /home/acupuncture/server/profile/TreamentTemplate.xlsx
wxQrCodeTemplate: /home/acupuncture/server/profile/wxQrCodeTemplate.docx
screenQrCodeTemplate: /home/acupuncture/server/profile/screenQrCodeTemplate.docx
hbTemplate: /home/acupuncture/server/profile/screenHbQrCodeTemplate.docx
screenPath: http://test.tall.wiki/acupuncture/web-admin/screening/H5?hospitalId=hosId&hospitalName=hosName&centerId=cId

8
acupuncture-admin/src/main/resources/application-stage.yml

@ -61,4 +61,10 @@ spring:
multi-statement-allow: true
file:
PatientTemplate: /home/acupuncture/server/profile/PatientTemplate.xlsx
TreamentTemplate: /home/acupuncture/server/profile/TreamentTemplate.xlsx
TreamentTemplate: /home/acupuncture/server/profile/TreamentTemplate.xlsx
wxQrCodeTemplate: /home/acupuncture/server/profile/wxQrCodeTemplate.docx
screenQrCodeTemplate: /home/acupuncture/server/profile/screenQrCodeTemplate.docx
hbTemplate: /home/acupuncture/server/profile/screenHbQrCodeTemplate.docx
screenPath: http://test.tall.wiki/acupuncture/web-admin/screening/H5?hospitalId=hosId&hospitalName=hosName&centerId=cId
pgTemplate: /home/acupuncture/server/profile/TreamtmentPgTemplate.docx
jmrsUrl: /home/acupuncture/server/profile/uploads/jmrsTemplate.docx

1
acupuncture-admin/src/main/resources/application.yml

@ -12,6 +12,7 @@ acupuncture:
addressEnabled: false
# 验证码类型 math 数字计算 char 字符验证
captchaType: math
profileUrl: /profile
# 开发环境配置
server:

13
acupuncture-common/pom.xml

@ -135,6 +135,19 @@
<scope>compile</scope>
</dependency>
<!--docx转换为pdf-->
<dependency>
<groupId>com.luhuiguo</groupId>
<artifactId>aspose-words</artifactId>
<version>23.1</version>
</dependency>
<!--生成二维码-->
<dependency>
<groupId>net.glxn.qrgen</groupId>
<artifactId>javase</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
</project>

157
acupuncture-common/src/main/java/com/acupuncture/common/constant/ErrorConstant.java

@ -0,0 +1,157 @@
package com.acupuncture.common.constant;
import com.acupuncture.common.enums.BaseEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author wei
* @date Created in 2021/10/31 16:58
*/
@Getter
@AllArgsConstructor
public enum ErrorConstant implements BaseEnum {
SUCCESS(200, "ok"),
SYS_ERROR(500, "网络繁忙,请您稍后重试"),
FILE_FORMAT_ERROR(100, "文件格式错误"),
INSERT_ERROR(1, "数据添加错误!"),
NAME_ERROR(2, "请填写姓名"),
SEX_ERROR(3, "请选择性别"),
NATION_ERROR(4, "请选择民族"),
ID_CARD_NULL(5, "请填写身份证信息"),
PARAM_NULL(6, "请检查您的参数是否填写完整。"),
EDUCATION_ERROR(7, "请选择文化程度"),
EDUCATION_UNIT_ERROR(8, "请填写教育年限"),
PARAM_ERROR(9, "请求参数错误,请确认操作是否正确。"),
ID_CARD_ERROR(10, "身份证格式错误,请检查身份证填写是否正确。"),
PATIENT_ERROR(11, "患者身份证信息已存在或患者信息异常!"),
PATIENT_ID_ERROR(12, "患者ID信息异常!"),
QUESTION_NOT_FOUND(13, "试题未找到。"),
MOBILE_ERROR(14, "手机号格式错误,请确认操作是否正确!"),
MOBILE_NULL_ERROR(15, "请填写手机号"),
ADDRESS_ERROR(16, "请填写住址信息"),
AGE_ERROR(17, "请填写年龄"),
CAREER_ERROR(18, "请选择职业"),
REPORT_ID_ERROR(21, "患者报告单信息异常!"),
WORD_ERROR(19, "文件生成异常!"),
BAIDU_IDENTIFY_WORDS(20, "图片识别异常,请重新拍摄!(请勿倾斜图片或在光线黑暗的环境中拍摄)"),
QUESTION_SAVE_ERROR(21, "选项不能为空!"),
QUESTION_RULE_NOT_FOUND(47, "该评测规则未知,请联系开发人员。"),
REPORT_DOCTOR_ERROR(48, "对不起,您没有修改报告单结果的权限。"),
NOT_LOGIN(49, "对不起,您尚未登录或登录已失效,请重新登录。"),
POSITION_NOT_3(50, "对不起,您尚未选择职务,请重新选择。"),
PATIENT_NOT_CHOICE(57, "没有选择病人,不进行保存答案。"),
URL_ERROR(98, "请求路径转换异常。"),
THIRD_ERROR(100, "调用第三方刚接口异常"),
//参数校验错误
PARAMETER_VALIDATOR_ERROR(40000, "参数校验错误"),
//没有找到TOKEN
TOKEN_NOTFOUND(40001, "Missing or invalid Authorization header."),
//Token签名解析错误
TOKEN_SIGNATURE_INVALIDATE(40002, "Token signature encoding error"),
//Token过期
TOKEN_EXPIRED(40003, "Token过期"),
//Token Stub 错误
TOKEN_STUB_NOT_FOUND(40004, "Token stub not found"),
//Token其他错误
TOKEN_FAILED(40005, "Token其他错误"),
//用户被禁用
USER_DISABLED(40006, "User disabled,Please concact the System Administrator"),
//没有找到TOKEN
USER_CHANGE_PASSWORD_NOT_SAME(40007, "两次密码不一致"),
//验证码错误
USER_PHONE_SMSCODE_ERROR(40008, "验证码错误"),
//短信验证码发送太频繁
USER_PHONE_SMSCODE_SEND_INTERVAL_SMALL(40009, "短信验证码发送太频繁,请稍后再试"),
//电话和用户名不匹配
USER_PHONE_USERNAME_NOT_MATCH(40011, "电话和用户名不匹配"),
//没有找到TOKEN
USER_LOGIN_WXMP_INVALID_CODE(40012, "无效的小程序code"),
//没有找到TOKEN
USER_TOKEN_ID_NOT_MATCH(40013, "token中的用户ID和要操作的用户ID不匹配"),
//管理员手机号重复
USER_PHONE_REPEAT(40014, "管理员手机号重复"),
//管理员手机号重复
USER_PHONE_NOT_FIND(40015, "手机号不能为空"),
//登录类型错误
LOGIN_TYPE_ERROR(40016, "登录类型错误,1管理员,2客户端"),
//未找到登录类型
LOGIN_USERTYPE_NOT_FOUND(40017, "未找到登录类型,00管理员,01客户端"),
//没有找到TOKEN
PAGEHELPER_SQL_ERROR(40018, "PageHelper自定义SQL解析错误"),
//查询记录多于预期
RECORD_TOO_MANY_THAN_EXPECTED(50001, "查询记录多于预期"),
//FinishKey不正确
FINISH_KEY_NOT_FOUND(50002, "FinishKey不正确"),
//测评记录不存在
PATIENT_REPORT_NOT_FOUND(50003, "测评记录不存在"),
//阶段不存在
STAGE_NOT_FOUND(50004, "阶段不存在"),
FB_TIME_NOT_FIND(50008, "发病时间不正确"),
DY_TIME_NOT_FIND(50009, "到院时间不正确"),
CZDC_TIME_NOT_FIND(50009, "卒中医生到场时间不正确"),
TZ_TIME_NOT_FIND(50009, "团注时间不正确"),
CCWC_TIME_NOT_FIND(50010, "穿刺完成时间不正确"),
SCXGZT_TIME_NOT_FIND(50011, "首次血管再通时间不正确"),
ZY_TIME_NOT_FIND(50012, "住院时间不正确"),
SS_TIME_NOT_FIND(50013, "CEA/CAS手术手术时间不正确"),
CY_TIME_NOT_FIND(50014, "出院时间不正确"),
HOSPITAL_REPEAT_SUBMIT(35,"数据已提交,无法修改"),
QUESTIONNAIRE_DETAIL_ERROR(37,"问卷详情信息错误"),
QUESTIONNAIRE_INFO_INCOMPLETE(39,"请填写全部选项"),
XGZL_INCOMPLETE(40,"请填写血管内治疗的全部选项"),
WxmpLoginFailed(50071,"小程序登陆失败"),
NOT_DOCTOR(50072, "未找到医生信息"),
DCS_RUNNING_ERROR(50073,"数据治理服务正在运行中"),
DcsLogError(50074,"lastSyncId和lastMakeupDate不应该为null"),
DateRangeError(50075,"日期范围错误"),
PASSWPRD_ERROR(50076,"密码错误"),
HAVING_BIND(50077,"您已绑定"),
HAVING_APPLY(50078,"您已申请"),
AUTHORITY(50079,"无权限操作"),
PHONE_HAVING(50080,"手机号已被注册"),
PHONE_NOT_FIND(50081,"手机号未找到"),
DONT_UPDATE(50082,"不允许修改"),
PHONE_HAVE(50083,"手机号已经存在,请勿重复提交。"),
NO_PERMISSION(50084,"无权限"),
;
private Integer code;
private String desc;
public ErrorConstant addMsg(String msg) {
this.desc = msg + "行:" + this.desc;
return this;
}
public static ErrorConstant getByCode(int code) {
for (ErrorConstant codeEnum : ErrorConstant.values()) {
if (codeEnum.getCode().intValue() == code) {
return codeEnum;
}
}
return null;
}
@Override
public String getKey() {
return String.valueOf(code);
}
}

16
acupuncture-common/src/main/java/com/acupuncture/common/constant/UserConstants.java

@ -85,4 +85,20 @@ public class UserConstants
* QuestionAnswer分隔符
*/
public static final String ANSWER_JOIN_STRING = "!@#";
public enum SubmitStatus {
/**
* 问卷提交状态 0:保存 1:提交
*/
save((byte) 0, "保存"),
submit((byte) 1, "提交"),
;
public byte status;
public String name;
SubmitStatus(byte status, String name) {
this.status = status;
this.name = name;
}
}
}

47
acupuncture-common/src/main/java/com/acupuncture/common/core/redis/RedisCache.java

@ -73,7 +73,54 @@ public class RedisCache
{
return redisTemplate.expire(key, timeout, unit);
}
/**
* 普通缓存获取
*
* @param key
* @return
*/
public Object get(String key) {
return key == null ? null : redisTemplate.opsForValue().get(key);
}
/**
* 普通缓存放入
*
* @param key
* @param value
* @return true成功 false失败
*/
public boolean set(String key, Object value) {
try {
redisTemplate.opsForValue().set(key, value);
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
/**
* 普通缓存放入并设置时间
*
* @param key
* @param value
* @param seconds 时间() time要大于0 如果time小于等于0 将设置无限期
* @return true成功 false 失败
*/
public boolean set(String key, Object value, long seconds) {
try {
if (seconds > 0) {
redisTemplate.opsForValue().set(key, value, seconds, TimeUnit.SECONDS);
} else {
set(key, value);
}
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
/**
* 获取有效时间
*

131
acupuncture-common/src/main/java/com/acupuncture/common/enums/BaseEnum.java

@ -0,0 +1,131 @@
package com.acupuncture.common.enums;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public interface BaseEnum {
/**
* 获取枚举标识
*
* @return
*/
Integer getCode();
/**
* 获取枚举标识
*
* @return
*/
String getKey();
/**
* 获取枚举描述
*
* @return
*/
String getDesc();
/**
* 通过枚举类型和code值获取对应的枚举类型
*
* @param enumType
* @param code
* @param <T>
* @return
*/
static <T extends BaseEnum> T codeOf(Class<? extends BaseEnum> enumType, Integer code) {
if (enumType == null || code == null) {
return null;
}
T[] enumConstants = (T[]) enumType.getEnumConstants();
if (enumConstants == null) {
return null;
}
for (T enumConstant : enumConstants) {
int enumCode = enumConstant.getCode();
if (code.equals(enumCode)) {
return enumConstant;
}
}
return null;
}
/**
* 通过枚举类型和code值获取对应的枚举类型
*
* @param enumType
* @param key
* @param <T>
* @return
*/
static <T extends BaseEnum> T keyOf(Class<? extends BaseEnum> enumType, String key) {
if (enumType == null || key == null) {
return null;
}
T[] enumConstants = (T[]) enumType.getEnumConstants();
if (enumConstants == null) {
return null;
}
for (T enumConstant : enumConstants) {
String enumKey = enumConstant.getKey();
if (key.equals(enumKey)) {
return enumConstant;
}
}
return null;
}
/**
* 通过枚举类型和text值获取对应的枚举类型
* 该方法等价于 枚举类.valueOf("");
* @param enumType
* @param text
* @param <T>
* @return
*/
static <T extends BaseEnum> T textOf(Class<? extends BaseEnum> enumType, String text) {
if (enumType == null || text.isEmpty()) {
return null;
}
T[] enumConstants = (T[]) enumType.getEnumConstants();
if (enumConstants == null) {
return null;
}
for (T enumConstant : enumConstants) {
String enumText = enumConstant.toString();
if (text.equals(enumText)) {
return enumConstant;
}
}
return null;
}
/**
* 将enum转换为list
*
* @param enumType
* @param <T>
* @return
*/
static <T extends BaseEnum> List<Map<String, Object>> enum2List(Class<? extends BaseEnum> enumType) {
if (enumType == null) {
return null;
}
T[] enumConstants = (T[]) enumType.getEnumConstants();
if (enumConstants == null) {
return null;
}
ArrayList<Map<String, Object>> results = new ArrayList<>();
for (T bean : enumConstants) {
String desc = bean.getDesc();
Integer code = bean.getCode();
HashMap<String, Object> map = new HashMap<>(10);
map.put("code", code);
map.put("desc", desc);
results.add(map);
}
return results;
}
}

7
acupuncture-common/src/main/java/com/acupuncture/common/exception/base/BaseException.java

@ -1,5 +1,6 @@
package com.acupuncture.common.exception.base;
import com.acupuncture.common.enums.BaseEnum;
import com.acupuncture.common.utils.MessageUtils;
import com.acupuncture.common.utils.StringUtils;
@ -60,6 +61,12 @@ public class BaseException extends RuntimeException
this(null, null, null, defaultMessage);
}
public BaseException(BaseEnum errorConstant) {
super(errorConstant.getDesc());
this.code = errorConstant.getCode().toString();
this.defaultMessage = errorConstant.getDesc();
}
@Override
public String getMessage()
{

60
acupuncture-common/src/main/java/com/acupuncture/common/utils/AsposeUtils.java

@ -0,0 +1,60 @@
package com.acupuncture.common.utils;
import com.aspose.words.Document;
import com.aspose.words.ParagraphFormat;
import com.aspose.words.SaveFormat;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* @ author myy
* @ Date 2023/6/8 0008 11:29
*/
public class AsposeUtils {
/**
* 文档转换为pdf
*
* @param inPath
* @param outPath
* @return
*/
public static boolean doc2pdf(String inPath, String outPath) {
FileOutputStream os = null;
try {
long old = System.currentTimeMillis();
// 新建一个空白pdf文档
File file = new File(outPath);
os = new FileOutputStream(file);
// doc是将要被转化的word文档
Document doc = new Document(inPath);
//调用Linux系统中的字体(为了避免转换出现乱码,需要把windows中的字体库移到Linux系统中)
// FontSettings.getDefaultInstance().setFontsFolder("/usr/share/fonts/Chinese/", true);
//删除原来的格式,以免出现多处空行
ParagraphFormat pf = doc.getStyles().getDefaultParagraphFormat();
pf.clearFormatting();
// 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF,
doc.save(os, SaveFormat.PDF);
long now = System.currentTimeMillis();
// 转化用时
System.out.println("pdf转换成功,共耗时:" + ((now - old) / 1000.0) + "秒");
} catch (Exception e) {
e.printStackTrace();
return false;
} finally {
if (os != null) {
try {
os.flush();
os.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return true;
}
}

86
acupuncture-common/src/main/java/com/acupuncture/common/utils/QrCodeUtil.java

@ -0,0 +1,86 @@
package com.acupuncture.common.utils;
import cn.hutool.core.date.DateUtil;
import net.glxn.qrgen.core.image.ImageType;
import net.glxn.qrgen.javase.QRCode;
import java.io.*;
/**
* 二维码工具类
*
* @author: wuHuiJuan
* @create: 2019/12/25 10:36
*/
public class QrCodeUtil {
/**
* 根据文件路径生成二维码
*
* @param url
* @param parentPath
* @return
* @throws IOException
*/
public static String urlToQRCode(String url, String parentPath) throws IOException {
String fileName = "qrCode/" + DateUtil.today() + "/" + System.currentTimeMillis() + ".png";
ByteArrayOutputStream stream = QRCode.from(url).to(ImageType.BMP).withSize(450, 450).stream();
byte[] codeByte = stream.toByteArray();
File file = new File(parentPath, fileName);
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
OutputStream out = null;
try {
out = new FileOutputStream(file);
out.write(codeByte);
out.flush();
} finally {
if (out != null) {
out.close();
}
}
return fileName;
}
/**
* 根据文件路径生成二维码(可以调整大小)
*
* @param url
* @param parentPath
* @param type 图片类型0缩略图 1打印图
* @return
* @throws IOException
*/
public static String urlToQRCodeWithSize(String url, String parentPath, int type) throws IOException {
String name = System.currentTimeMillis() + "";
int size = 200;
if (type == 0) {
name = "缩略图";
size = 200;
} else if (type == 1) {
name = "打印图";
size = 1000;
}
String fileName = name + ".png";
ByteArrayOutputStream stream = QRCode.from(url).to(ImageType.BMP).withSize(size, size).stream();
byte[] codeByte = stream.toByteArray();
File file = new File(parentPath, fileName);
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
OutputStream out = null;
try {
out = new FileOutputStream(file);
out.write(codeByte);
out.flush();
} finally {
if (out != null) {
out.close();
}
}
return fileName;
}
}

3
acupuncture-common/src/main/java/com/acupuncture/common/utils/SecurityUtils.java

@ -186,7 +186,8 @@ public class SecurityUtils
}
catch (Exception e)
{
throw new ServiceException("获取租户ID异常", HttpStatus.UNAUTHORIZED);
return 1901557972215377920L;
// throw new ServiceException("获取租户ID异常", HttpStatus.UNAUTHORIZED);
}
}
}

4
acupuncture-framework/src/main/java/com/acupuncture/framework/config/SecurityConfig.java

@ -114,9 +114,9 @@ public class SecurityConfig
.authorizeHttpRequests((requests) -> {
permitAllUrl.getUrls().forEach(url -> requests.antMatchers(url).permitAll());
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
requests.antMatchers("/login", "/register", "/captchaImage", "/web/login").permitAll()
requests.antMatchers("/login", "/register", "/captchaImage", "/web/login", "/web/queryTenantById", "/api/http/getUserInfo", "/api/http/addReportImage", "/api/http/uploadMemberInfo").permitAll()
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**", "/static/**").permitAll()
.antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
// 除上面外的所有请求全部需要鉴权认证
.anyRequest().authenticated();

12
acupuncture-generator/src/main/resources/mbg.xml

@ -57,8 +57,16 @@
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<table tableName="dms_tenant" domainObjectName="DmsTenant" enableDeleteByExample="false"/>
<!-- <table tableName="dms_user" domainObjectName="DmsUser" enableDeleteByExample="false"/>-->
<table tableName="upl_rtcf_info" domainObjectName="UplRtcfInfo" enableDeleteByExample="false"/>
<table tableName="upl_report_image" domainObjectName="UplReportImage" enableDeleteByExample="false"/>
<table tableName="scr_screening" domainObjectName="ScrScreening" enableDeleteByExample="false"/>
<table tableName="scr_screening_detail" domainObjectName="ScrScreeningDetail" enableDeleteByExample="false"/>
<table tableName="scr_screening_draw" domainObjectName="ScrScreeningDraw" enableDeleteByExample="false"/>
<table tableName="scr_screening_record" domainObjectName="ScrScreeningRecord" enableDeleteByExample="false"/>
<table tableName="scr_screening_sound" domainObjectName="ScrScreeningSound" enableDeleteByExample="false"/>
<table tableName="ams_screen_wx_qr_code" domainObjectName="AmsScreenWxQrCode" enableDeleteByExample="false"/>
<!-- <table tableName="dms_user" domainObjectName="DmsUser" enableDeleteByExample="false"/>-->
<!-- <table tableName="fms_followup_queue" domainObjectName="FmsFollowupQueue" enableDeleteByExample="false"/>-->
<!-- <table tableName="fms_followup_task" domainObjectName="FmsFollowupTask" enableDeleteByExample="false"/>-->
<!-- <table tableName="fms_patient_queue_relation" domainObjectName="FmsPatientQueueRelation" enableDeleteByExample="false"/>-->

35
acupuncture-system/pom.xml

@ -21,6 +21,20 @@
<dependency>
<groupId>com.acupuncture</groupId>
<artifactId>acupuncture-common</artifactId>
<exclusions>
<exclusion>
<artifactId>curvesapi</artifactId>
<groupId>com.github.virtuald</groupId>
</exclusion>
<exclusion>
<artifactId>commons-compress</artifactId>
<groupId>org.apache.commons</groupId>
</exclusion>
<exclusion>
<artifactId>poi-ooxml</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
@ -47,6 +61,27 @@
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
</dependency>
<!--常用工具类 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.14</version>
</dependency>
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>com.deepoove</groupId>
<artifactId>poi-tl</artifactId>
<version>1.10.5</version>
</dependency>
</dependencies>
</project>

53
acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/AmsWxQrCodeDto.java

@ -0,0 +1,53 @@
package com.acupuncture.system.domain.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
public class AmsWxQrCodeDto {
@Data
public static class Select{
@ApiModelProperty("部门ID")
private Long deptId;
@ApiModelProperty("病区ID")
private Long diseaseId;
}
@Data
public static class Query{
private String url;
private String bq;
private Long tenantId;
private List<Long> idList;
}
@Data
public static class ScreenSelect{
@ApiModelProperty("医院ID")
private Long tenantId;
}
@Data
public static class ScreenInsert{
private Long id;
private String url;
private String path;
private Long tenantId;
private String remark;
@ApiModelProperty("联系人")
private String contacts;
@ApiModelProperty("联系电话")
private String phone;
@ApiModelProperty("联系地址")
private String address;
}
}

215
acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/ExternalDto.java

@ -0,0 +1,215 @@
package com.acupuncture.system.domain.dto;
import com.acupuncture.system.domain.po.UplReportImage;
import com.acupuncture.system.domain.po.UplRtcfInfo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @Author zzc
* @Package com.acupuncture.system.domain.dto
* @Date 2025/3/15 10:30
* @description:
*/
public class ExternalDto {
@Data
public static class Insert{
@NotNull(message = "信息不能为空")
private List<RtcfInfoDto> list;
}
@Data
public static class MemberDto{
@NotNull
private String memberId;
}
@Data
@ApiModel("人体成分数据上传")
public static class RtcfInfoDto{
private Long id;
private String message;
private String UUID;
private String deviceID;
private String deviceType;
private String memberid;
private String testID;
private String testDate;
private String name;
private String sex;
private String height;
private String birthYear;
private String Weight;
private String Fat;
private String Bone;
private String Protein;
private String Water;
private String Muscle;
private String SMM;
private String PBF;
private String BMI;
private String BMR;
private String WHR;
private String Edema;
private String VFI;
private String BodyAge;
private String Score;
private String BodyType;
private String LBM;
private String ICW;
private String ECW;
private String Standard_weight;
private String Weight_control;
private String Fat_control;
private String Muscle_control;
private String LiverRisk;
private String ASMI;
private String TR_fat;
private String LA_fat;
private String RA_fat;
private String LL_fat;
private String RL_fat;
private String TR_water;
private String LA_water;
private String RA_water;
private String LL_water;
private String RL_water;
private String TR_muscle;
private String LA_muscle;
private String RA_muscle;
private String LL_muscle;
private String RL_muscle;
private String TR_bone;
private String LA_bone;
private String RA_bone;
private String LL_bone;
private String RL_bone;
private String WeightMax;
private String WeightMin;
private String FatMax;
private String FatMin;
private String BoneMax;
private String BoneMin;
private String ProteinMax;
private String ProteinMin;
private String WaterMax;
private String WaterMin;
private String MuscleMax;
private String MuscleMin;
private String SMMMax;
private String SMMMin;
private String PBFMax;
private String PBFMin;
private String BMIMax;
private String BMIMin;
private String WHRMax;
private String WHRMin;
private String EdemaMax;
private String EdemaMin;
private String VFIMax;
private String VFIMin;
private String Diagnosis;
}
@Data
@ApiModel("报告图片")
public static class ReportImageDto{
private Long id;
private String memberId;
private String fileName;
private String filePath;
}
@Data
public static class Query{
private String from;
private String memberid;
}
}

8
acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/PmsTreatmentDto.java

@ -51,6 +51,7 @@ public class PmsTreatmentDto {
private Long organizationId;
private String createBy;
private String remark;
private Byte source = 1;
@ApiModelProperty("随访队列ID集合")
private List<Long> queueIdList;
@ -213,4 +214,11 @@ public class PmsTreatmentDto {
@ApiModelProperty("code集合")
private List<String> codeList;
}
@Data
public static class ExportVO {
@NotNull
private Long treatmentId;
}
}

413
acupuncture-system/src/main/java/com/acupuncture/system/domain/dto/ScreeningDto.java

@ -0,0 +1,413 @@
package com.acupuncture.system.domain.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
/**
* @author zzc
* @date 2023-09-25 17:05
* @description TODO
*/
public class ScreeningDto {
@Data
public static class Query {
private String keywords;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("性别")
private Byte gender;
@ApiModelProperty("身份证号")
private String idCard;
@ApiModelProperty("手机号")
private String phone;
@ApiModelProperty("0正常 1低危 2中危 3高危")
private Byte dangeStatus;
private Integer startAge;
private Integer endAge;
private Long hospitalId;
private Long tenantId;
private String province;
private String city;
private String county;
private String hospitalName;
@ApiModelProperty("0卒中筛查 33认知筛查")
private Byte type = 0;
@ApiModelProperty("认知筛查结果")
private Integer rzscResult;
@ApiModelProperty("是否脱敏 (0:未脱敏 1脱敏)")
private Byte isDesensitization;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
}
@Data
@ApiModel("MessageReportDto - Report")
public static class Report {
@ApiModelProperty("条码号")
private String barcode;
@JsonProperty("Datas")
@ApiModelProperty("检测结果,8+2 信息,结果解读、处理意见")
private DataDto Datas;
@JsonProperty("Sample")
@ApiModelProperty("返回样本信息")
private SampleDto Sample;
@Data
public static class SampleDto {
private String id;
@JsonProperty("Hospital")
private String Hospital;
@JsonProperty("PagName")
private String PagName;
@JsonProperty("Name")
private String Name;
@JsonProperty("Sex")
private String Sex;
@JsonProperty("Age")
private String Age;
@JsonProperty("HospitalNum")
private String HospitalNum;
@JsonProperty("MedicalNumber")
private String MedicalNumber;
@JsonProperty("HospitalSno")
private String HospitalSno;
@JsonProperty("SubmitDoctor")
private String SubmitDoctor;
@JsonProperty("Department")
private String Department;
@JsonProperty("ExaminerDoctor")
private String ExaminerDoctor;
@JsonProperty("AuditStaffDoctor")
private String AuditStaffDoctor;
@JsonProperty("BedNo")
private String BedNo;
@JsonProperty("Diagnosis")
private String Diagnosis;
@JsonProperty("SampleNo")
private String SampleNo;
@JsonProperty("SampleType")
private String SampleType;
@JsonProperty("BarCode")
private String BarCode;
@JsonProperty("CreateDate")
private String CreateDate;
@JsonProperty("SubmitTime")
private String SubmitTime;
@JsonProperty("Remarks")
private String Remarks;
@JsonProperty("RiskScore")
private String RiskScore;
@JsonProperty("Proposal")
private String Proposal;
@JsonProperty("EmptyStomach")
private String EmptyStomach;
}
@Data
public static class DataDto {
@JsonProperty("AssessItem")
private List<AssessItemDto> AssessItem;
@JsonProperty("ItemResult")
private List<ItemResultDto> ItemResult;
@JsonProperty("Resultpers")
private List<ResultpersDto> Resultpers;
@JsonProperty("Mademessages")
private List<MademessagesDto> Mademessages;
@Data
public static class AssessItemDto {
private String seqNo;
private String name;
private String resultYes;
}
@Data
public static class ItemResultDto {
private String itemName;
private String result;
private String rangeMin;
private String rangeMax;
}
@Data
public static class ResultpersDto {
private String sno;
private String scontent;
}
@Data
public static class MademessagesDto {
private String sno;
private String scontent;
}
}
}
@Data
@ApiModel("提交高危筛查问卷")
public static class SubmitScreeningQuestionnaire {
@NotNull(message = "问卷详情id不能为空")
@ApiModelProperty("问卷详情id")
private Long detailId;
}
@Data
@ApiModel("MessageReportDto - AssetsEvaluation")
public static class AssetsEvaluation {
@ApiModelProperty("条码号")
@JsonProperty("barCode")
private String barCode;
@JsonProperty("PictureBit")
@NotNull(message = "图片Base64不能为空")
@ApiModelProperty("图片 采用 base64 算法转换成 string")
private String PictureBit;
@JsonProperty("PictureName")
@ApiModelProperty("图片名称")
@NotNull(message = "图片名称不能为空")
private String PictureName;
}
@Data
@ApiModel("查询地区")
public static class QueryArea {
@ApiModelProperty("地区id")
private Long id = 0L;
}
@Data
@ApiModel("查询筛查信息详情")
public static class QueryQuestionnaire {
@NotNull(message = "请选择筛查")
@ApiModelProperty("筛查id")
private Long id;
private Long userId;
}
@Data
@ApiModel("保存筛查信息")
public static class SaveQuestionnaire {
@NotNull(message = "筛查详情id不能为空")
@ApiModelProperty("筛查详情id")
private Long detailId;
@ApiModelProperty("题目code")
private String code;
@ApiModelProperty("答案")
private String answer;
private Long userId;
}
@Data
@ApiModel("筛查随访")
public static class ScreenFollow {
@NotNull(message = "筛查详情id不能为空")
@ApiModelProperty("筛查详情id")
private Long patientId;
@ApiModelProperty("状态(0未随访 1已随访)")
private Byte status;
}
@Data
@ApiModel("查询是否填写")
public static class QueryNotWrite {
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("时间")
private Long time = System.currentTimeMillis();
private Long userId;
}
@Data
@ApiModel("提交筛查")
public static class SubmitQuestionnaire {
@NotNull(message = "筛查详情id不能为空")
@ApiModelProperty("筛查详情id")
private Long detailId;
@NotNull(message = "医院名称不能为空")
@ApiModelProperty("医院名称")
private String name;
@NotNull(message = "部门名称不能为空")
@ApiModelProperty("部门名称")
private String departmentName;
@NotNull(message = "职位名称不能为空")
@ApiModelProperty("职位名称")
private String positionName;
@NotNull(message = "提交人姓名不能为空")
@ApiModelProperty("提交人姓名")
private String submitter;
@NotNull(message = "提交人手机号不能为空")
@ApiModelProperty("提交人手机号")
private String phone;
private Long userId;
}
@Data
@ApiModel("创建筛查详情")
public static class CreateDetail {
@NotNull(message = "筛查类型不能为空")
@ApiModelProperty("筛查类型(0-卒中 1-高危筛查)")
private Byte type;
private Long userId;
private Long tenantId;
private Long centerId;
}
@Data
@ApiModel("判断是否提交了筛查-请求")
public static class Export {
@ApiModelProperty("筛查id")
private Long qid;
@ApiModelProperty("开始时间 年-月-日 时:分:秒")
private String startTime;
@ApiModelProperty("结束时间 年-月-日 时:分:秒")
private String endTime;
}
@Data
@ApiModel("判断是否提交了筛查-请求")
public static class ExportByArea extends Export {
@ApiModelProperty("城市名称: 运城市,太原市...")
@NotBlank
private String area;
}
@Data
@ApiModel("查询医院列表-请求")
public static class QueryHospitalList {
@ApiModelProperty("地区")
private String area;
@ApiModelProperty("名字")
private String name;
}
@Data
@ApiModel("后台查看高危筛查信息")
public static class BackQueryScreening {
@ApiModelProperty("第几页")
@Min(value = 1)
private int pageNum = 1;
@ApiModelProperty("每页多少条")
@Min(value = 1)
@Max(value = 100)
private int pageSize = 10;
@ApiModelProperty("身份证号")
private String idCard;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("性别 0女 1男")
private String sex;
@ApiModelProperty("出生日期筛选--开始")
private String startTime;
@ApiModelProperty("出生日期筛选--结束")
private String endTime;
@ApiModelProperty("年龄")
private String age;
@ApiModelProperty("手机号")
private String phone;
@ApiModelProperty("高血压 0没有 1有")
private Byte hypertension;
@ApiModelProperty("血脂 0没有 1有")
private Byte bloodFat;
@ApiModelProperty("糖尿病 0没有 1有")
private Byte diabetes;
@ApiModelProperty("心房颤动 0没有 1有")
private Byte fibrillation;
@ApiModelProperty("吸烟 0没有 1有")
private Byte smoke;
@ApiModelProperty("体重 0正常 1超重")
private Byte weight;
@ApiModelProperty("运动 0正常 1缺乏")
private Byte sports;
@ApiModelProperty("卒中家族史 0没有 1有")
private Byte acupunctureFamily;
@ApiModelProperty("脑卒中病史 0没有 1有")
private Byte cerebralStroke;
@ApiModelProperty("脑缺血病史 0没有 1有")
private Byte cerebralIschemia;
@ApiModelProperty("危险等级 0正常 1高危 2中危 3低危")
private Byte type;
@ApiModelProperty("健康跟踪 0待处理 1已联系 2已就诊")
private Byte healthTracking;
}
@Data
@ApiModel("后台查找筛查填写信息列表-返回")
public static class BackQueryQuestionnaire {
@ApiModelProperty("地区信息 市/县")
private String county;
@ApiModelProperty("医院名称")
private String hospitalName;
@ApiModelProperty("医院等级")
private String hospitalLevel;
@ApiModelProperty("联系人")
private String contacts;
@ApiModelProperty("手机号")
private String phone;
@ApiModelProperty("是否为脑防委高级卒中中心")
private String cuzhong;
@ApiModelProperty("是否为脑防委卒中防治中心")
private String fangzhi;
@ApiModelProperty("是否为山西省溶栓2.0版地图医院")
private String hosMap;
@ApiModelProperty("是否开展血管内治疗")
private String xgzl;
@ApiModelProperty("提交时间开始")
private Long submitTimeStart;
@ApiModelProperty("提交时间结束")
private Long submitTimeEnd;
@ApiModelProperty("第几页")
@Min(value = 1)
private int pageNum = 1;
@ApiModelProperty("每页多少条")
@Min(value = 1)
@Max(value = 100)
private int pageSize = 10;
}
@Data
@ApiModel("查询首页按钮详情")
public static class QueryDto {
private Long userId;
private String phone;
private String name;
}
}

172
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/AmsScreenWxQrCode.java

@ -0,0 +1,172 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class AmsScreenWxQrCode implements Serializable {
private Long id;
private String url;
private String path;
private Long tenantId;
private String remark;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private Byte delFlag;
private String contacts;
private String phone;
private String address;
private Long centerId;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url == null ? null : url.trim();
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path == null ? null : path.trim();
}
public Long getTenantId() {
return tenantId;
}
public void setTenantId(Long tenantId) {
this.tenantId = tenantId;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy == null ? null : createBy.trim();
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy == null ? null : updateBy.trim();
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Byte getDelFlag() {
return delFlag;
}
public void setDelFlag(Byte delFlag) {
this.delFlag = delFlag;
}
public String getContacts() {
return contacts;
}
public void setContacts(String contacts) {
this.contacts = contacts == null ? null : contacts.trim();
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone == null ? null : phone.trim();
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address == null ? null : address.trim();
}
public Long getCenterId() {
return centerId;
}
public void setCenterId(Long centerId) {
this.centerId = centerId;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", url=").append(url);
sb.append(", path=").append(path);
sb.append(", tenantId=").append(tenantId);
sb.append(", remark=").append(remark);
sb.append(", createBy=").append(createBy);
sb.append(", createTime=").append(createTime);
sb.append(", updateBy=").append(updateBy);
sb.append(", updateTime=").append(updateTime);
sb.append(", delFlag=").append(delFlag);
sb.append(", contacts=").append(contacts);
sb.append(", phone=").append(phone);
sb.append(", address=").append(address);
sb.append(", centerId=").append(centerId);
sb.append("]");
return sb.toString();
}
}

1121
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/AmsScreenWxQrCodeExample.java

File diff suppressed because it is too large

139
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreening.java

@ -0,0 +1,139 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class ScrScreening implements Serializable {
private Long id;
private String questionnaireName;
private Long startTime;
private Long endTime;
private Byte type;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private Long writeStartTime;
private Long writeEndTime;
private String dataScope;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getQuestionnaireName() {
return questionnaireName;
}
public void setQuestionnaireName(String questionnaireName) {
this.questionnaireName = questionnaireName == null ? null : questionnaireName.trim();
}
public Long getStartTime() {
return startTime;
}
public void setStartTime(Long startTime) {
this.startTime = startTime;
}
public Long getEndTime() {
return endTime;
}
public void setEndTime(Long endTime) {
this.endTime = endTime;
}
public Byte getType() {
return type;
}
public void setType(Byte type) {
this.type = type;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
public Long getWriteStartTime() {
return writeStartTime;
}
public void setWriteStartTime(Long writeStartTime) {
this.writeStartTime = writeStartTime;
}
public Long getWriteEndTime() {
return writeEndTime;
}
public void setWriteEndTime(Long writeEndTime) {
this.writeEndTime = writeEndTime;
}
public String getDataScope() {
return dataScope;
}
public void setDataScope(String dataScope) {
this.dataScope = dataScope == null ? null : dataScope.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", questionnaireName=").append(questionnaireName);
sb.append(", startTime=").append(startTime);
sb.append(", endTime=").append(endTime);
sb.append(", type=").append(type);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append(", writeStartTime=").append(writeStartTime);
sb.append(", writeEndTime=").append(writeEndTime);
sb.append(", dataScope=").append(dataScope);
sb.append("]");
return sb.toString();
}
}

95
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDetail.java

@ -0,0 +1,95 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class ScrScreeningDetail implements Serializable {
private Long id;
private Long recordId;
private String questionCode;
private String answer;
private Date createdAt;
private Date updatedAt;
private Byte delFlag;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getRecordId() {
return recordId;
}
public void setRecordId(Long recordId) {
this.recordId = recordId;
}
public String getQuestionCode() {
return questionCode;
}
public void setQuestionCode(String questionCode) {
this.questionCode = questionCode == null ? null : questionCode.trim();
}
public String getAnswer() {
return answer;
}
public void setAnswer(String answer) {
this.answer = answer == null ? null : answer.trim();
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getDelFlag() {
return delFlag;
}
public void setDelFlag(Byte delFlag) {
this.delFlag = delFlag;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", recordId=").append(recordId);
sb.append(", questionCode=").append(questionCode);
sb.append(", answer=").append(answer);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", delFlag=").append(delFlag);
sb.append("]");
return sb.toString();
}
}

641
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDetailExample.java

@ -0,0 +1,641 @@
package com.acupuncture.system.domain.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class ScrScreeningDetailExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public ScrScreeningDetailExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andRecordIdIsNull() {
addCriterion("record_id is null");
return (Criteria) this;
}
public Criteria andRecordIdIsNotNull() {
addCriterion("record_id is not null");
return (Criteria) this;
}
public Criteria andRecordIdEqualTo(Long value) {
addCriterion("record_id =", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotEqualTo(Long value) {
addCriterion("record_id <>", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdGreaterThan(Long value) {
addCriterion("record_id >", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdGreaterThanOrEqualTo(Long value) {
addCriterion("record_id >=", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdLessThan(Long value) {
addCriterion("record_id <", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdLessThanOrEqualTo(Long value) {
addCriterion("record_id <=", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdIn(List<Long> values) {
addCriterion("record_id in", values, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotIn(List<Long> values) {
addCriterion("record_id not in", values, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdBetween(Long value1, Long value2) {
addCriterion("record_id between", value1, value2, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotBetween(Long value1, Long value2) {
addCriterion("record_id not between", value1, value2, "recordId");
return (Criteria) this;
}
public Criteria andQuestionCodeIsNull() {
addCriterion("question_code is null");
return (Criteria) this;
}
public Criteria andQuestionCodeIsNotNull() {
addCriterion("question_code is not null");
return (Criteria) this;
}
public Criteria andQuestionCodeEqualTo(String value) {
addCriterion("question_code =", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeNotEqualTo(String value) {
addCriterion("question_code <>", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeGreaterThan(String value) {
addCriterion("question_code >", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeGreaterThanOrEqualTo(String value) {
addCriterion("question_code >=", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeLessThan(String value) {
addCriterion("question_code <", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeLessThanOrEqualTo(String value) {
addCriterion("question_code <=", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeLike(String value) {
addCriterion("question_code like", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeNotLike(String value) {
addCriterion("question_code not like", value, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeIn(List<String> values) {
addCriterion("question_code in", values, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeNotIn(List<String> values) {
addCriterion("question_code not in", values, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeBetween(String value1, String value2) {
addCriterion("question_code between", value1, value2, "questionCode");
return (Criteria) this;
}
public Criteria andQuestionCodeNotBetween(String value1, String value2) {
addCriterion("question_code not between", value1, value2, "questionCode");
return (Criteria) this;
}
public Criteria andAnswerIsNull() {
addCriterion("answer is null");
return (Criteria) this;
}
public Criteria andAnswerIsNotNull() {
addCriterion("answer is not null");
return (Criteria) this;
}
public Criteria andAnswerEqualTo(String value) {
addCriterion("answer =", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerNotEqualTo(String value) {
addCriterion("answer <>", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerGreaterThan(String value) {
addCriterion("answer >", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerGreaterThanOrEqualTo(String value) {
addCriterion("answer >=", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerLessThan(String value) {
addCriterion("answer <", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerLessThanOrEqualTo(String value) {
addCriterion("answer <=", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerLike(String value) {
addCriterion("answer like", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerNotLike(String value) {
addCriterion("answer not like", value, "answer");
return (Criteria) this;
}
public Criteria andAnswerIn(List<String> values) {
addCriterion("answer in", values, "answer");
return (Criteria) this;
}
public Criteria andAnswerNotIn(List<String> values) {
addCriterion("answer not in", values, "answer");
return (Criteria) this;
}
public Criteria andAnswerBetween(String value1, String value2) {
addCriterion("answer between", value1, value2, "answer");
return (Criteria) this;
}
public Criteria andAnswerNotBetween(String value1, String value2) {
addCriterion("answer not between", value1, value2, "answer");
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andDelFlagIsNull() {
addCriterion("del_flag is null");
return (Criteria) this;
}
public Criteria andDelFlagIsNotNull() {
addCriterion("del_flag is not null");
return (Criteria) this;
}
public Criteria andDelFlagEqualTo(Byte value) {
addCriterion("del_flag =", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotEqualTo(Byte value) {
addCriterion("del_flag <>", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagGreaterThan(Byte value) {
addCriterion("del_flag >", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagGreaterThanOrEqualTo(Byte value) {
addCriterion("del_flag >=", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagLessThan(Byte value) {
addCriterion("del_flag <", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagLessThanOrEqualTo(Byte value) {
addCriterion("del_flag <=", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagIn(List<Byte> values) {
addCriterion("del_flag in", values, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotIn(List<Byte> values) {
addCriterion("del_flag not in", values, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagBetween(Byte value1, Byte value2) {
addCriterion("del_flag between", value1, value2, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotBetween(Byte value1, Byte value2) {
addCriterion("del_flag not between", value1, value2, "delFlag");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

128
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDraw.java

@ -0,0 +1,128 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class ScrScreeningDraw implements Serializable {
private Long id;
private String recordId;
private String scaleId;
private Integer questionId;
private Integer url;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private String remark;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getRecordId() {
return recordId;
}
public void setRecordId(String recordId) {
this.recordId = recordId == null ? null : recordId.trim();
}
public String getScaleId() {
return scaleId;
}
public void setScaleId(String scaleId) {
this.scaleId = scaleId == null ? null : scaleId.trim();
}
public Integer getQuestionId() {
return questionId;
}
public void setQuestionId(Integer questionId) {
this.questionId = questionId;
}
public Integer getUrl() {
return url;
}
public void setUrl(Integer url) {
this.url = url;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy == null ? null : createBy.trim();
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy == null ? null : updateBy.trim();
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", recordId=").append(recordId);
sb.append(", scaleId=").append(scaleId);
sb.append(", questionId=").append(questionId);
sb.append(", url=").append(url);
sb.append(", createBy=").append(createBy);
sb.append(", createTime=").append(createTime);
sb.append(", updateBy=").append(updateBy);
sb.append(", updateTime=").append(updateTime);
sb.append(", remark=").append(remark);
sb.append("]");
return sb.toString();
}
}

851
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningDrawExample.java

@ -0,0 +1,851 @@
package com.acupuncture.system.domain.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class ScrScreeningDrawExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public ScrScreeningDrawExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andRecordIdIsNull() {
addCriterion("record_id is null");
return (Criteria) this;
}
public Criteria andRecordIdIsNotNull() {
addCriterion("record_id is not null");
return (Criteria) this;
}
public Criteria andRecordIdEqualTo(String value) {
addCriterion("record_id =", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotEqualTo(String value) {
addCriterion("record_id <>", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdGreaterThan(String value) {
addCriterion("record_id >", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdGreaterThanOrEqualTo(String value) {
addCriterion("record_id >=", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdLessThan(String value) {
addCriterion("record_id <", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdLessThanOrEqualTo(String value) {
addCriterion("record_id <=", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdLike(String value) {
addCriterion("record_id like", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotLike(String value) {
addCriterion("record_id not like", value, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdIn(List<String> values) {
addCriterion("record_id in", values, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotIn(List<String> values) {
addCriterion("record_id not in", values, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdBetween(String value1, String value2) {
addCriterion("record_id between", value1, value2, "recordId");
return (Criteria) this;
}
public Criteria andRecordIdNotBetween(String value1, String value2) {
addCriterion("record_id not between", value1, value2, "recordId");
return (Criteria) this;
}
public Criteria andScaleIdIsNull() {
addCriterion("scale_id is null");
return (Criteria) this;
}
public Criteria andScaleIdIsNotNull() {
addCriterion("scale_id is not null");
return (Criteria) this;
}
public Criteria andScaleIdEqualTo(String value) {
addCriterion("scale_id =", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdNotEqualTo(String value) {
addCriterion("scale_id <>", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdGreaterThan(String value) {
addCriterion("scale_id >", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdGreaterThanOrEqualTo(String value) {
addCriterion("scale_id >=", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdLessThan(String value) {
addCriterion("scale_id <", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdLessThanOrEqualTo(String value) {
addCriterion("scale_id <=", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdLike(String value) {
addCriterion("scale_id like", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdNotLike(String value) {
addCriterion("scale_id not like", value, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdIn(List<String> values) {
addCriterion("scale_id in", values, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdNotIn(List<String> values) {
addCriterion("scale_id not in", values, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdBetween(String value1, String value2) {
addCriterion("scale_id between", value1, value2, "scaleId");
return (Criteria) this;
}
public Criteria andScaleIdNotBetween(String value1, String value2) {
addCriterion("scale_id not between", value1, value2, "scaleId");
return (Criteria) this;
}
public Criteria andQuestionIdIsNull() {
addCriterion("question_id is null");
return (Criteria) this;
}
public Criteria andQuestionIdIsNotNull() {
addCriterion("question_id is not null");
return (Criteria) this;
}
public Criteria andQuestionIdEqualTo(Integer value) {
addCriterion("question_id =", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdNotEqualTo(Integer value) {
addCriterion("question_id <>", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdGreaterThan(Integer value) {
addCriterion("question_id >", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdGreaterThanOrEqualTo(Integer value) {
addCriterion("question_id >=", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdLessThan(Integer value) {
addCriterion("question_id <", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdLessThanOrEqualTo(Integer value) {
addCriterion("question_id <=", value, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdIn(List<Integer> values) {
addCriterion("question_id in", values, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdNotIn(List<Integer> values) {
addCriterion("question_id not in", values, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdBetween(Integer value1, Integer value2) {
addCriterion("question_id between", value1, value2, "questionId");
return (Criteria) this;
}
public Criteria andQuestionIdNotBetween(Integer value1, Integer value2) {
addCriterion("question_id not between", value1, value2, "questionId");
return (Criteria) this;
}
public Criteria andUrlIsNull() {
addCriterion("url is null");
return (Criteria) this;
}
public Criteria andUrlIsNotNull() {
addCriterion("url is not null");
return (Criteria) this;
}
public Criteria andUrlEqualTo(Integer value) {
addCriterion("url =", value, "url");
return (Criteria) this;
}
public Criteria andUrlNotEqualTo(Integer value) {
addCriterion("url <>", value, "url");
return (Criteria) this;
}
public Criteria andUrlGreaterThan(Integer value) {
addCriterion("url >", value, "url");
return (Criteria) this;
}
public Criteria andUrlGreaterThanOrEqualTo(Integer value) {
addCriterion("url >=", value, "url");
return (Criteria) this;
}
public Criteria andUrlLessThan(Integer value) {
addCriterion("url <", value, "url");
return (Criteria) this;
}
public Criteria andUrlLessThanOrEqualTo(Integer value) {
addCriterion("url <=", value, "url");
return (Criteria) this;
}
public Criteria andUrlIn(List<Integer> values) {
addCriterion("url in", values, "url");
return (Criteria) this;
}
public Criteria andUrlNotIn(List<Integer> values) {
addCriterion("url not in", values, "url");
return (Criteria) this;
}
public Criteria andUrlBetween(Integer value1, Integer value2) {
addCriterion("url between", value1, value2, "url");
return (Criteria) this;
}
public Criteria andUrlNotBetween(Integer value1, Integer value2) {
addCriterion("url not between", value1, value2, "url");
return (Criteria) this;
}
public Criteria andCreateByIsNull() {
addCriterion("create_by is null");
return (Criteria) this;
}
public Criteria andCreateByIsNotNull() {
addCriterion("create_by is not null");
return (Criteria) this;
}
public Criteria andCreateByEqualTo(String value) {
addCriterion("create_by =", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotEqualTo(String value) {
addCriterion("create_by <>", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByGreaterThan(String value) {
addCriterion("create_by >", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByGreaterThanOrEqualTo(String value) {
addCriterion("create_by >=", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLessThan(String value) {
addCriterion("create_by <", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLessThanOrEqualTo(String value) {
addCriterion("create_by <=", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLike(String value) {
addCriterion("create_by like", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotLike(String value) {
addCriterion("create_by not like", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByIn(List<String> values) {
addCriterion("create_by in", values, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotIn(List<String> values) {
addCriterion("create_by not in", values, "createBy");
return (Criteria) this;
}
public Criteria andCreateByBetween(String value1, String value2) {
addCriterion("create_by between", value1, value2, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotBetween(String value1, String value2) {
addCriterion("create_by not between", value1, value2, "createBy");
return (Criteria) this;
}
public Criteria andCreateTimeIsNull() {
addCriterion("create_time is null");
return (Criteria) this;
}
public Criteria andCreateTimeIsNotNull() {
addCriterion("create_time is not null");
return (Criteria) this;
}
public Criteria andCreateTimeEqualTo(Date value) {
addCriterion("create_time =", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotEqualTo(Date value) {
addCriterion("create_time <>", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThan(Date value) {
addCriterion("create_time >", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("create_time >=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThan(Date value) {
addCriterion("create_time <", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
addCriterion("create_time <=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeIn(List<Date> values) {
addCriterion("create_time in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotIn(List<Date> values) {
addCriterion("create_time not in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeBetween(Date value1, Date value2) {
addCriterion("create_time between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
addCriterion("create_time not between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andUpdateByIsNull() {
addCriterion("update_by is null");
return (Criteria) this;
}
public Criteria andUpdateByIsNotNull() {
addCriterion("update_by is not null");
return (Criteria) this;
}
public Criteria andUpdateByEqualTo(String value) {
addCriterion("update_by =", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotEqualTo(String value) {
addCriterion("update_by <>", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByGreaterThan(String value) {
addCriterion("update_by >", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByGreaterThanOrEqualTo(String value) {
addCriterion("update_by >=", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLessThan(String value) {
addCriterion("update_by <", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLessThanOrEqualTo(String value) {
addCriterion("update_by <=", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLike(String value) {
addCriterion("update_by like", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotLike(String value) {
addCriterion("update_by not like", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByIn(List<String> values) {
addCriterion("update_by in", values, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotIn(List<String> values) {
addCriterion("update_by not in", values, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByBetween(String value1, String value2) {
addCriterion("update_by between", value1, value2, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotBetween(String value1, String value2) {
addCriterion("update_by not between", value1, value2, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNull() {
addCriterion("update_time is null");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNotNull() {
addCriterion("update_time is not null");
return (Criteria) this;
}
public Criteria andUpdateTimeEqualTo(Date value) {
addCriterion("update_time =", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotEqualTo(Date value) {
addCriterion("update_time <>", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThan(Date value) {
addCriterion("update_time >", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("update_time >=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThan(Date value) {
addCriterion("update_time <", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
addCriterion("update_time <=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeIn(List<Date> values) {
addCriterion("update_time in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotIn(List<Date> values) {
addCriterion("update_time not in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeBetween(Date value1, Date value2) {
addCriterion("update_time between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
addCriterion("update_time not between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andRemarkIsNull() {
addCriterion("remark is null");
return (Criteria) this;
}
public Criteria andRemarkIsNotNull() {
addCriterion("remark is not null");
return (Criteria) this;
}
public Criteria andRemarkEqualTo(String value) {
addCriterion("remark =", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotEqualTo(String value) {
addCriterion("remark <>", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkGreaterThan(String value) {
addCriterion("remark >", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkGreaterThanOrEqualTo(String value) {
addCriterion("remark >=", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLessThan(String value) {
addCriterion("remark <", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLessThanOrEqualTo(String value) {
addCriterion("remark <=", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLike(String value) {
addCriterion("remark like", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotLike(String value) {
addCriterion("remark not like", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkIn(List<String> values) {
addCriterion("remark in", values, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotIn(List<String> values) {
addCriterion("remark not in", values, "remark");
return (Criteria) this;
}
public Criteria andRemarkBetween(String value1, String value2) {
addCriterion("remark between", value1, value2, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotBetween(String value1, String value2) {
addCriterion("remark not between", value1, value2, "remark");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

881
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningExample.java

@ -0,0 +1,881 @@
package com.acupuncture.system.domain.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class ScrScreeningExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public ScrScreeningExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andQuestionnaireNameIsNull() {
addCriterion("questionnaire_name is null");
return (Criteria) this;
}
public Criteria andQuestionnaireNameIsNotNull() {
addCriterion("questionnaire_name is not null");
return (Criteria) this;
}
public Criteria andQuestionnaireNameEqualTo(String value) {
addCriterion("questionnaire_name =", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameNotEqualTo(String value) {
addCriterion("questionnaire_name <>", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameGreaterThan(String value) {
addCriterion("questionnaire_name >", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameGreaterThanOrEqualTo(String value) {
addCriterion("questionnaire_name >=", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameLessThan(String value) {
addCriterion("questionnaire_name <", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameLessThanOrEqualTo(String value) {
addCriterion("questionnaire_name <=", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameLike(String value) {
addCriterion("questionnaire_name like", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameNotLike(String value) {
addCriterion("questionnaire_name not like", value, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameIn(List<String> values) {
addCriterion("questionnaire_name in", values, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameNotIn(List<String> values) {
addCriterion("questionnaire_name not in", values, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameBetween(String value1, String value2) {
addCriterion("questionnaire_name between", value1, value2, "questionnaireName");
return (Criteria) this;
}
public Criteria andQuestionnaireNameNotBetween(String value1, String value2) {
addCriterion("questionnaire_name not between", value1, value2, "questionnaireName");
return (Criteria) this;
}
public Criteria andStartTimeIsNull() {
addCriterion("start_time is null");
return (Criteria) this;
}
public Criteria andStartTimeIsNotNull() {
addCriterion("start_time is not null");
return (Criteria) this;
}
public Criteria andStartTimeEqualTo(Long value) {
addCriterion("start_time =", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeNotEqualTo(Long value) {
addCriterion("start_time <>", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeGreaterThan(Long value) {
addCriterion("start_time >", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeGreaterThanOrEqualTo(Long value) {
addCriterion("start_time >=", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeLessThan(Long value) {
addCriterion("start_time <", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeLessThanOrEqualTo(Long value) {
addCriterion("start_time <=", value, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeIn(List<Long> values) {
addCriterion("start_time in", values, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeNotIn(List<Long> values) {
addCriterion("start_time not in", values, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeBetween(Long value1, Long value2) {
addCriterion("start_time between", value1, value2, "startTime");
return (Criteria) this;
}
public Criteria andStartTimeNotBetween(Long value1, Long value2) {
addCriterion("start_time not between", value1, value2, "startTime");
return (Criteria) this;
}
public Criteria andEndTimeIsNull() {
addCriterion("end_time is null");
return (Criteria) this;
}
public Criteria andEndTimeIsNotNull() {
addCriterion("end_time is not null");
return (Criteria) this;
}
public Criteria andEndTimeEqualTo(Long value) {
addCriterion("end_time =", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeNotEqualTo(Long value) {
addCriterion("end_time <>", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeGreaterThan(Long value) {
addCriterion("end_time >", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeGreaterThanOrEqualTo(Long value) {
addCriterion("end_time >=", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeLessThan(Long value) {
addCriterion("end_time <", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeLessThanOrEqualTo(Long value) {
addCriterion("end_time <=", value, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeIn(List<Long> values) {
addCriterion("end_time in", values, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeNotIn(List<Long> values) {
addCriterion("end_time not in", values, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeBetween(Long value1, Long value2) {
addCriterion("end_time between", value1, value2, "endTime");
return (Criteria) this;
}
public Criteria andEndTimeNotBetween(Long value1, Long value2) {
addCriterion("end_time not between", value1, value2, "endTime");
return (Criteria) this;
}
public Criteria andTypeIsNull() {
addCriterion("type is null");
return (Criteria) this;
}
public Criteria andTypeIsNotNull() {
addCriterion("type is not null");
return (Criteria) this;
}
public Criteria andTypeEqualTo(Byte value) {
addCriterion("type =", value, "type");
return (Criteria) this;
}
public Criteria andTypeNotEqualTo(Byte value) {
addCriterion("type <>", value, "type");
return (Criteria) this;
}
public Criteria andTypeGreaterThan(Byte value) {
addCriterion("type >", value, "type");
return (Criteria) this;
}
public Criteria andTypeGreaterThanOrEqualTo(Byte value) {
addCriterion("type >=", value, "type");
return (Criteria) this;
}
public Criteria andTypeLessThan(Byte value) {
addCriterion("type <", value, "type");
return (Criteria) this;
}
public Criteria andTypeLessThanOrEqualTo(Byte value) {
addCriterion("type <=", value, "type");
return (Criteria) this;
}
public Criteria andTypeIn(List<Byte> values) {
addCriterion("type in", values, "type");
return (Criteria) this;
}
public Criteria andTypeNotIn(List<Byte> values) {
addCriterion("type not in", values, "type");
return (Criteria) this;
}
public Criteria andTypeBetween(Byte value1, Byte value2) {
addCriterion("type between", value1, value2, "type");
return (Criteria) this;
}
public Criteria andTypeNotBetween(Byte value1, Byte value2) {
addCriterion("type not between", value1, value2, "type");
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
return (Criteria) this;
}
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
return (Criteria) this;
}
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andWriteStartTimeIsNull() {
addCriterion("write_start_time is null");
return (Criteria) this;
}
public Criteria andWriteStartTimeIsNotNull() {
addCriterion("write_start_time is not null");
return (Criteria) this;
}
public Criteria andWriteStartTimeEqualTo(Long value) {
addCriterion("write_start_time =", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeNotEqualTo(Long value) {
addCriterion("write_start_time <>", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeGreaterThan(Long value) {
addCriterion("write_start_time >", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeGreaterThanOrEqualTo(Long value) {
addCriterion("write_start_time >=", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeLessThan(Long value) {
addCriterion("write_start_time <", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeLessThanOrEqualTo(Long value) {
addCriterion("write_start_time <=", value, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeIn(List<Long> values) {
addCriterion("write_start_time in", values, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeNotIn(List<Long> values) {
addCriterion("write_start_time not in", values, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeBetween(Long value1, Long value2) {
addCriterion("write_start_time between", value1, value2, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteStartTimeNotBetween(Long value1, Long value2) {
addCriterion("write_start_time not between", value1, value2, "writeStartTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeIsNull() {
addCriterion("write_end_time is null");
return (Criteria) this;
}
public Criteria andWriteEndTimeIsNotNull() {
addCriterion("write_end_time is not null");
return (Criteria) this;
}
public Criteria andWriteEndTimeEqualTo(Long value) {
addCriterion("write_end_time =", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeNotEqualTo(Long value) {
addCriterion("write_end_time <>", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeGreaterThan(Long value) {
addCriterion("write_end_time >", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeGreaterThanOrEqualTo(Long value) {
addCriterion("write_end_time >=", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeLessThan(Long value) {
addCriterion("write_end_time <", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeLessThanOrEqualTo(Long value) {
addCriterion("write_end_time <=", value, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeIn(List<Long> values) {
addCriterion("write_end_time in", values, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeNotIn(List<Long> values) {
addCriterion("write_end_time not in", values, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeBetween(Long value1, Long value2) {
addCriterion("write_end_time between", value1, value2, "writeEndTime");
return (Criteria) this;
}
public Criteria andWriteEndTimeNotBetween(Long value1, Long value2) {
addCriterion("write_end_time not between", value1, value2, "writeEndTime");
return (Criteria) this;
}
public Criteria andDataScopeIsNull() {
addCriterion("data_scope is null");
return (Criteria) this;
}
public Criteria andDataScopeIsNotNull() {
addCriterion("data_scope is not null");
return (Criteria) this;
}
public Criteria andDataScopeEqualTo(String value) {
addCriterion("data_scope =", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeNotEqualTo(String value) {
addCriterion("data_scope <>", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeGreaterThan(String value) {
addCriterion("data_scope >", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeGreaterThanOrEqualTo(String value) {
addCriterion("data_scope >=", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeLessThan(String value) {
addCriterion("data_scope <", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeLessThanOrEqualTo(String value) {
addCriterion("data_scope <=", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeLike(String value) {
addCriterion("data_scope like", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeNotLike(String value) {
addCriterion("data_scope not like", value, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeIn(List<String> values) {
addCriterion("data_scope in", values, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeNotIn(List<String> values) {
addCriterion("data_scope not in", values, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeBetween(String value1, String value2) {
addCriterion("data_scope between", value1, value2, "dataScope");
return (Criteria) this;
}
public Criteria andDataScopeNotBetween(String value1, String value2) {
addCriterion("data_scope not between", value1, value2, "dataScope");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

315
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningRecord.java

@ -0,0 +1,315 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class ScrScreeningRecord implements Serializable {
private Long id;
private String name;
private String idcard;
private Integer age;
private String phone;
private String city;
private String county;
private String province;
private Byte hospitalLevel;
private String hospitalName;
private String departments;
private Long userId;
private Long screenId;
private Byte submitStatus;
private Long positionId;
private Long tenantId;
private Integer rzscResult;
private Byte screenType;
private String screenResult;
private Byte delFlag;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private String remark;
private String pinyinFull;
private String pinyinSimple;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getIdcard() {
return idcard;
}
public void setIdcard(String idcard) {
this.idcard = idcard == null ? null : idcard.trim();
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone == null ? null : phone.trim();
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city == null ? null : city.trim();
}
public String getCounty() {
return county;
}
public void setCounty(String county) {
this.county = county == null ? null : county.trim();
}
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province == null ? null : province.trim();
}
public Byte getHospitalLevel() {
return hospitalLevel;
}
public void setHospitalLevel(Byte hospitalLevel) {
this.hospitalLevel = hospitalLevel;
}
public String getHospitalName() {
return hospitalName;
}
public void setHospitalName(String hospitalName) {
this.hospitalName = hospitalName == null ? null : hospitalName.trim();
}
public String getDepartments() {
return departments;
}
public void setDepartments(String departments) {
this.departments = departments == null ? null : departments.trim();
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public Long getScreenId() {
return screenId;
}
public void setScreenId(Long screenId) {
this.screenId = screenId;
}
public Byte getSubmitStatus() {
return submitStatus;
}
public void setSubmitStatus(Byte submitStatus) {
this.submitStatus = submitStatus;
}
public Long getPositionId() {
return positionId;
}
public void setPositionId(Long positionId) {
this.positionId = positionId;
}
public Long getTenantId() {
return tenantId;
}
public void setTenantId(Long tenantId) {
this.tenantId = tenantId;
}
public Integer getRzscResult() {
return rzscResult;
}
public void setRzscResult(Integer rzscResult) {
this.rzscResult = rzscResult;
}
public Byte getScreenType() {
return screenType;
}
public void setScreenType(Byte screenType) {
this.screenType = screenType;
}
public String getScreenResult() {
return screenResult;
}
public void setScreenResult(String screenResult) {
this.screenResult = screenResult == null ? null : screenResult.trim();
}
public Byte getDelFlag() {
return delFlag;
}
public void setDelFlag(Byte delFlag) {
this.delFlag = delFlag;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy == null ? null : createBy.trim();
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy == null ? null : updateBy.trim();
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
public String getPinyinFull() {
return pinyinFull;
}
public void setPinyinFull(String pinyinFull) {
this.pinyinFull = pinyinFull == null ? null : pinyinFull.trim();
}
public String getPinyinSimple() {
return pinyinSimple;
}
public void setPinyinSimple(String pinyinSimple) {
this.pinyinSimple = pinyinSimple == null ? null : pinyinSimple.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", name=").append(name);
sb.append(", idcard=").append(idcard);
sb.append(", age=").append(age);
sb.append(", phone=").append(phone);
sb.append(", city=").append(city);
sb.append(", county=").append(county);
sb.append(", province=").append(province);
sb.append(", hospitalLevel=").append(hospitalLevel);
sb.append(", hospitalName=").append(hospitalName);
sb.append(", departments=").append(departments);
sb.append(", userId=").append(userId);
sb.append(", screenId=").append(screenId);
sb.append(", submitStatus=").append(submitStatus);
sb.append(", positionId=").append(positionId);
sb.append(", tenantId=").append(tenantId);
sb.append(", rzscResult=").append(rzscResult);
sb.append(", screenType=").append(screenType);
sb.append(", screenResult=").append(screenResult);
sb.append(", delFlag=").append(delFlag);
sb.append(", createBy=").append(createBy);
sb.append(", createTime=").append(createTime);
sb.append(", updateBy=").append(updateBy);
sb.append(", updateTime=").append(updateTime);
sb.append(", remark=").append(remark);
sb.append(", pinyinFull=").append(pinyinFull);
sb.append(", pinyinSimple=").append(pinyinSimple);
sb.append("]");
return sb.toString();
}
}

1961
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/ScrScreeningRecordExample.java

File diff suppressed because it is too large

139
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplReportImage.java

@ -0,0 +1,139 @@
package com.acupuncture.system.domain.po;
import java.io.Serializable;
import java.util.Date;
public class UplReportImage implements Serializable {
private Long id;
private String memberId;
private String fileName;
private String filePath;
private Byte delFlag;
private Long tenantId;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private String remark;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId == null ? null : memberId.trim();
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName == null ? null : fileName.trim();
}
public String getFilePath() {
return filePath;
}
public void setFilePath(String filePath) {
this.filePath = filePath == null ? null : filePath.trim();
}
public Byte getDelFlag() {
return delFlag;
}
public void setDelFlag(Byte delFlag) {
this.delFlag = delFlag;
}
public Long getTenantId() {
return tenantId;
}
public void setTenantId(Long tenantId) {
this.tenantId = tenantId;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy == null ? null : createBy.trim();
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy == null ? null : updateBy.trim();
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", memberId=").append(memberId);
sb.append(", fileName=").append(fileName);
sb.append(", filePath=").append(filePath);
sb.append(", delFlag=").append(delFlag);
sb.append(", tenantId=").append(tenantId);
sb.append(", createBy=").append(createBy);
sb.append(", createTime=").append(createTime);
sb.append(", updateBy=").append(updateBy);
sb.append(", updateTime=").append(updateTime);
sb.append(", remark=").append(remark);
sb.append("]");
return sb.toString();
}
}

921
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplReportImageExample.java

@ -0,0 +1,921 @@
package com.acupuncture.system.domain.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class UplReportImageExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public UplReportImageExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andMemberIdIsNull() {
addCriterion("member_id is null");
return (Criteria) this;
}
public Criteria andMemberIdIsNotNull() {
addCriterion("member_id is not null");
return (Criteria) this;
}
public Criteria andMemberIdEqualTo(String value) {
addCriterion("member_id =", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdNotEqualTo(String value) {
addCriterion("member_id <>", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdGreaterThan(String value) {
addCriterion("member_id >", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdGreaterThanOrEqualTo(String value) {
addCriterion("member_id >=", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdLessThan(String value) {
addCriterion("member_id <", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdLessThanOrEqualTo(String value) {
addCriterion("member_id <=", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdLike(String value) {
addCriterion("member_id like", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdNotLike(String value) {
addCriterion("member_id not like", value, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdIn(List<String> values) {
addCriterion("member_id in", values, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdNotIn(List<String> values) {
addCriterion("member_id not in", values, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdBetween(String value1, String value2) {
addCriterion("member_id between", value1, value2, "memberId");
return (Criteria) this;
}
public Criteria andMemberIdNotBetween(String value1, String value2) {
addCriterion("member_id not between", value1, value2, "memberId");
return (Criteria) this;
}
public Criteria andFileNameIsNull() {
addCriterion("file_name is null");
return (Criteria) this;
}
public Criteria andFileNameIsNotNull() {
addCriterion("file_name is not null");
return (Criteria) this;
}
public Criteria andFileNameEqualTo(String value) {
addCriterion("file_name =", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotEqualTo(String value) {
addCriterion("file_name <>", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameGreaterThan(String value) {
addCriterion("file_name >", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameGreaterThanOrEqualTo(String value) {
addCriterion("file_name >=", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLessThan(String value) {
addCriterion("file_name <", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLessThanOrEqualTo(String value) {
addCriterion("file_name <=", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameLike(String value) {
addCriterion("file_name like", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotLike(String value) {
addCriterion("file_name not like", value, "fileName");
return (Criteria) this;
}
public Criteria andFileNameIn(List<String> values) {
addCriterion("file_name in", values, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotIn(List<String> values) {
addCriterion("file_name not in", values, "fileName");
return (Criteria) this;
}
public Criteria andFileNameBetween(String value1, String value2) {
addCriterion("file_name between", value1, value2, "fileName");
return (Criteria) this;
}
public Criteria andFileNameNotBetween(String value1, String value2) {
addCriterion("file_name not between", value1, value2, "fileName");
return (Criteria) this;
}
public Criteria andFilePathIsNull() {
addCriterion("file_path is null");
return (Criteria) this;
}
public Criteria andFilePathIsNotNull() {
addCriterion("file_path is not null");
return (Criteria) this;
}
public Criteria andFilePathEqualTo(String value) {
addCriterion("file_path =", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathNotEqualTo(String value) {
addCriterion("file_path <>", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathGreaterThan(String value) {
addCriterion("file_path >", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathGreaterThanOrEqualTo(String value) {
addCriterion("file_path >=", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathLessThan(String value) {
addCriterion("file_path <", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathLessThanOrEqualTo(String value) {
addCriterion("file_path <=", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathLike(String value) {
addCriterion("file_path like", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathNotLike(String value) {
addCriterion("file_path not like", value, "filePath");
return (Criteria) this;
}
public Criteria andFilePathIn(List<String> values) {
addCriterion("file_path in", values, "filePath");
return (Criteria) this;
}
public Criteria andFilePathNotIn(List<String> values) {
addCriterion("file_path not in", values, "filePath");
return (Criteria) this;
}
public Criteria andFilePathBetween(String value1, String value2) {
addCriterion("file_path between", value1, value2, "filePath");
return (Criteria) this;
}
public Criteria andFilePathNotBetween(String value1, String value2) {
addCriterion("file_path not between", value1, value2, "filePath");
return (Criteria) this;
}
public Criteria andDelFlagIsNull() {
addCriterion("del_flag is null");
return (Criteria) this;
}
public Criteria andDelFlagIsNotNull() {
addCriterion("del_flag is not null");
return (Criteria) this;
}
public Criteria andDelFlagEqualTo(Byte value) {
addCriterion("del_flag =", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotEqualTo(Byte value) {
addCriterion("del_flag <>", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagGreaterThan(Byte value) {
addCriterion("del_flag >", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagGreaterThanOrEqualTo(Byte value) {
addCriterion("del_flag >=", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagLessThan(Byte value) {
addCriterion("del_flag <", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagLessThanOrEqualTo(Byte value) {
addCriterion("del_flag <=", value, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagIn(List<Byte> values) {
addCriterion("del_flag in", values, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotIn(List<Byte> values) {
addCriterion("del_flag not in", values, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagBetween(Byte value1, Byte value2) {
addCriterion("del_flag between", value1, value2, "delFlag");
return (Criteria) this;
}
public Criteria andDelFlagNotBetween(Byte value1, Byte value2) {
addCriterion("del_flag not between", value1, value2, "delFlag");
return (Criteria) this;
}
public Criteria andTenantIdIsNull() {
addCriterion("tenant_id is null");
return (Criteria) this;
}
public Criteria andTenantIdIsNotNull() {
addCriterion("tenant_id is not null");
return (Criteria) this;
}
public Criteria andTenantIdEqualTo(Long value) {
addCriterion("tenant_id =", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdNotEqualTo(Long value) {
addCriterion("tenant_id <>", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdGreaterThan(Long value) {
addCriterion("tenant_id >", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdGreaterThanOrEqualTo(Long value) {
addCriterion("tenant_id >=", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdLessThan(Long value) {
addCriterion("tenant_id <", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdLessThanOrEqualTo(Long value) {
addCriterion("tenant_id <=", value, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdIn(List<Long> values) {
addCriterion("tenant_id in", values, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdNotIn(List<Long> values) {
addCriterion("tenant_id not in", values, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdBetween(Long value1, Long value2) {
addCriterion("tenant_id between", value1, value2, "tenantId");
return (Criteria) this;
}
public Criteria andTenantIdNotBetween(Long value1, Long value2) {
addCriterion("tenant_id not between", value1, value2, "tenantId");
return (Criteria) this;
}
public Criteria andCreateByIsNull() {
addCriterion("create_by is null");
return (Criteria) this;
}
public Criteria andCreateByIsNotNull() {
addCriterion("create_by is not null");
return (Criteria) this;
}
public Criteria andCreateByEqualTo(String value) {
addCriterion("create_by =", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotEqualTo(String value) {
addCriterion("create_by <>", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByGreaterThan(String value) {
addCriterion("create_by >", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByGreaterThanOrEqualTo(String value) {
addCriterion("create_by >=", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLessThan(String value) {
addCriterion("create_by <", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLessThanOrEqualTo(String value) {
addCriterion("create_by <=", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByLike(String value) {
addCriterion("create_by like", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotLike(String value) {
addCriterion("create_by not like", value, "createBy");
return (Criteria) this;
}
public Criteria andCreateByIn(List<String> values) {
addCriterion("create_by in", values, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotIn(List<String> values) {
addCriterion("create_by not in", values, "createBy");
return (Criteria) this;
}
public Criteria andCreateByBetween(String value1, String value2) {
addCriterion("create_by between", value1, value2, "createBy");
return (Criteria) this;
}
public Criteria andCreateByNotBetween(String value1, String value2) {
addCriterion("create_by not between", value1, value2, "createBy");
return (Criteria) this;
}
public Criteria andCreateTimeIsNull() {
addCriterion("create_time is null");
return (Criteria) this;
}
public Criteria andCreateTimeIsNotNull() {
addCriterion("create_time is not null");
return (Criteria) this;
}
public Criteria andCreateTimeEqualTo(Date value) {
addCriterion("create_time =", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotEqualTo(Date value) {
addCriterion("create_time <>", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThan(Date value) {
addCriterion("create_time >", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("create_time >=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThan(Date value) {
addCriterion("create_time <", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
addCriterion("create_time <=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeIn(List<Date> values) {
addCriterion("create_time in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotIn(List<Date> values) {
addCriterion("create_time not in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeBetween(Date value1, Date value2) {
addCriterion("create_time between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
addCriterion("create_time not between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andUpdateByIsNull() {
addCriterion("update_by is null");
return (Criteria) this;
}
public Criteria andUpdateByIsNotNull() {
addCriterion("update_by is not null");
return (Criteria) this;
}
public Criteria andUpdateByEqualTo(String value) {
addCriterion("update_by =", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotEqualTo(String value) {
addCriterion("update_by <>", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByGreaterThan(String value) {
addCriterion("update_by >", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByGreaterThanOrEqualTo(String value) {
addCriterion("update_by >=", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLessThan(String value) {
addCriterion("update_by <", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLessThanOrEqualTo(String value) {
addCriterion("update_by <=", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByLike(String value) {
addCriterion("update_by like", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotLike(String value) {
addCriterion("update_by not like", value, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByIn(List<String> values) {
addCriterion("update_by in", values, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotIn(List<String> values) {
addCriterion("update_by not in", values, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByBetween(String value1, String value2) {
addCriterion("update_by between", value1, value2, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateByNotBetween(String value1, String value2) {
addCriterion("update_by not between", value1, value2, "updateBy");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNull() {
addCriterion("update_time is null");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNotNull() {
addCriterion("update_time is not null");
return (Criteria) this;
}
public Criteria andUpdateTimeEqualTo(Date value) {
addCriterion("update_time =", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotEqualTo(Date value) {
addCriterion("update_time <>", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThan(Date value) {
addCriterion("update_time >", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("update_time >=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThan(Date value) {
addCriterion("update_time <", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
addCriterion("update_time <=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeIn(List<Date> values) {
addCriterion("update_time in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotIn(List<Date> values) {
addCriterion("update_time not in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeBetween(Date value1, Date value2) {
addCriterion("update_time between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
addCriterion("update_time not between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andRemarkIsNull() {
addCriterion("remark is null");
return (Criteria) this;
}
public Criteria andRemarkIsNotNull() {
addCriterion("remark is not null");
return (Criteria) this;
}
public Criteria andRemarkEqualTo(String value) {
addCriterion("remark =", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotEqualTo(String value) {
addCriterion("remark <>", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkGreaterThan(String value) {
addCriterion("remark >", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkGreaterThanOrEqualTo(String value) {
addCriterion("remark >=", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLessThan(String value) {
addCriterion("remark <", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLessThanOrEqualTo(String value) {
addCriterion("remark <=", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkLike(String value) {
addCriterion("remark like", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotLike(String value) {
addCriterion("remark not like", value, "remark");
return (Criteria) this;
}
public Criteria andRemarkIn(List<String> values) {
addCriterion("remark in", values, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotIn(List<String> values) {
addCriterion("remark not in", values, "remark");
return (Criteria) this;
}
public Criteria andRemarkBetween(String value1, String value2) {
addCriterion("remark between", value1, value2, "remark");
return (Criteria) this;
}
public Criteria andRemarkNotBetween(String value1, String value2) {
addCriterion("remark not between", value1, value2, "remark");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

1008
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplRtcfInfo.java

File diff suppressed because it is too large

6441
acupuncture-system/src/main/java/com/acupuncture/system/domain/po/UplRtcfInfoExample.java

File diff suppressed because it is too large

84
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/AmsWxQrCodeVo.java

@ -0,0 +1,84 @@
package com.acupuncture.system.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
public class AmsWxQrCodeVo {
@Data
public static class Result {
@ApiModelProperty("")
private Long id;
@ApiModelProperty("图片地址")
private String url;
@ApiModelProperty("小程序页面路径")
private String path;
@ApiModelProperty("部门ID")
private Long deptId;
@ApiModelProperty("病区ID")
private Long diseaseId;
@ApiModelProperty("账户ID")
private String userName;
@ApiModelProperty("")
private String remark;
@ApiModelProperty("")
private String createBy;
@ApiModelProperty("")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty("")
private String updateBy;
@ApiModelProperty("")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty("科室名")
private String deptName;
@ApiModelProperty("病区名")
private String areaName;
}
@Data
public static class ScreenResult {
@ApiModelProperty("")
private Long id;
@ApiModelProperty("图片地址")
private String url;
@ApiModelProperty("小程序页面路径")
private String path;
@ApiModelProperty("医院ID")
private Long tenantId;
@ApiModelProperty("")
private String remark;
@ApiModelProperty("")
private String createBy;
@ApiModelProperty("")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty("")
private String updateBy;
@ApiModelProperty("")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty("科室名")
private String deptName;
@ApiModelProperty("病区名")
private String areaName;
private String tenantName;
@ApiModelProperty("联系人")
private String contacts;
@ApiModelProperty("联系电话")
private String phone;
@ApiModelProperty("联系地址")
private String address;
private String centerName;
}
}

4
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/DmsLoginUserVo.java

@ -16,6 +16,10 @@ import java.util.Date;
public class DmsLoginUserVo {
@Data
public static class Query {
private Long id;
}
@Data
public static class DmsUserVo {
private Integer id;

218
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/ExternalVo.java

@ -0,0 +1,218 @@
package com.acupuncture.system.domain.vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @Author zzc
* @Package com.acupuncture.system.domain.dto
* @Date 2025/3/15 10:30
* @description:
*/
public class ExternalVo {
@Data
public static class Result{
private String message;
private String gid;
private String memberid;
private String testId;
private String testDate;
private String name;
private String sex;
private String height;
private String birthYear;
private String weight;
private String phone;
}
@Data
@ApiModel("人体成分数据上传")
public static class RtcfInfoVo{
private Long id;
private String message;
private String uuid;
private String deviceId;
private String deviceType;
private String memberid;
private String testId;
private String testDate;
private String name;
private String sex;
private String height;
private String birthYear;
private String weight;
private String fat;
private String bone;
private String protein;
private String water;
private String muscle;
private String smm;
private String pbf;
private String bmi;
private String bmr;
private String whr;
private String edema;
private String vfi;
private String bodyAge;
private String score;
private String bodyType;
private String lbm;
private String icw;
private String ecw;
private String standardWeight;
private String weightControl;
private String fatControl;
private String muscleControl;
private String liverRisk;
private String asmi;
private String trFat;
private String laFat;
private String raFat;
private String llFat;
private String rlFat;
private String trWater;
private String laWater;
private String raWater;
private String llWater;
private String rlWater;
private String trMuscle;
private String laMuscle;
private String raMuscle;
private String llMuscle;
private String rlMuscle;
private String trBone;
private String laBone;
private String raBone;
private String llBone;
private String rlBone;
private String weightMax;
private String weightMin;
private String fatMax;
private String fatMin;
private String boneMax;
private String boneMin;
private String proteinMax;
private String proteinMin;
private String waterMax;
private String waterMin;
private String muscleMax;
private String muscleMin;
private String smmMax;
private String smmMin;
private String pbfMax;
private String pbfMin;
private String bmiMax;
private String bmiMin;
private String whrMax;
private String whrMin;
private String edemaMax;
private String edemaMin;
private String vfiMax;
private String vfiMin;
private String diagnosis;
}
@Data
@ApiModel("报告图片")
public static class ReportImagVo{
private Long id;
private String patientId;
private String fileName;
private String filePath;
}
}

4
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/PmsTreatmentVo.java

@ -90,6 +90,10 @@ public class PmsTreatmentVo {
@ApiModelProperty("code和答案列表")
private Map<String, List<TreatmentRecord>> recordValDict;
private String createBy;
private Date createTime;
public TreatmentRecordVO() {
}

549
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/QuestionnaireVo.java

@ -0,0 +1,549 @@
package com.acupuncture.system.domain.vo;
import cn.hutool.core.util.DesensitizedUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.PhoneUtil;
import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import java.util.Date;
import java.util.List;
@Data
public class QuestionnaireVo {
@Data
@ApiModel("地区信息")
public static class AreaInfo{
@ApiModelProperty("地区id")
private Long id;
@ApiModelProperty("地区名称")
private String name;
@ApiModelProperty("子地区")
private List<AreaInfo> child;
private List<HospitalDto> hospitalList;
}
@Data
@ApiModel("地区信息")
public static class AreaBasic{
@ApiModelProperty("地区id")
private Long id;
@ApiModelProperty("地区名称")
private String name;
}
@Data
@ApiModel("医院信息")
public static class HospitalDto{
@ApiModelProperty("地区id")
private Long id;
@ApiModelProperty("地区名称")
private String name;
}
@Data
@ApiModel("问卷信息")
public static class QuestionnaireInfo {
@ApiModelProperty("code")
private String code;
@ApiModelProperty("答案")
private String answer;
}
@Data
@ApiModel("填写问卷状态")
public static class WriteStatus {
@ApiModelProperty("问卷id")
private Long id;
@ApiModelProperty("问卷名称")
private String questionnaireName;
@ApiModelProperty("问卷类型(0-卒中)")
private Byte type;
@ApiModelProperty("填写状态(-1-未填写,0-保存,1-修改)")
private Integer isWrite;
@JsonIgnore
@ApiModelProperty("记录id")
private Long recordId;
@ApiModelProperty("问卷开始时间")
private Long start;
@ApiModelProperty("问卷结束时间")
private Long end;
@ApiModelProperty("填写开始时间")
private Long writeStartTime;
@ApiModelProperty("填写结束时间")
private Long writeEndTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createdAt;
private Byte recStatus;
private String dataScope;
private String remark;
/**
* 0 可以上报 1不可以上报
* @return
*/
public int getFlag() {
long l = System.currentTimeMillis();
if (start != null && end != null) {
if (l > start && l < end) {
return 0;
}
}
return 1;
}
}
@Data
public static class Record{
private Long detailId;
private String code;
private String answer;
}
@Data
public static class DetailVo{
private Long id;
private String name;
private String idcard;
private Integer age;
private String phone;
private String city;
private String county;
private String province;
private Byte hospitalLevel;
private String tenantName;
private String departments;
private Long userId;
private Long screenId;
private Byte submitStatus;
private Long positionId;
private Long hospitailId;
private Integer rzscResult;
private Byte screenType;
private String screenResult;
private Byte delFlag;
private String createBy;
private Date createTime;
private List<Record> recordList;
public String getPhone(){
if (StrUtil.isNotBlank(phone)) {
return PhoneUtil.hideBetween(phone).toString();
}
return null;
}
}
@Data
@ApiModel("职位信息")
public static class PositionInfo {
@ApiModelProperty("职位id")
private Long id;
@ApiModelProperty("职位名称")
private String name;
}
@Data
@ApiModel("问卷详情信息")
public static class DetailInfo {
@ApiModelProperty("问卷详情id")
private Long detailId;
@ApiModelProperty("问卷id")
private Long id;
private String text;
private String remark;
}
@Data
@ApiModel("是否提交问卷-返回")
public static class Submit {
@ApiModelProperty("问卷详情id 0:未提交 1:已提交")
private Byte submit;
@ApiModelProperty("机构信息")
private Organization organization;
}
@ApiModel("医院-返回")
@Data
public static class Organization{
@ApiModelProperty("医院ID")
private Long id;
@ApiModelProperty("医院名字")
private String name;
@ApiModelProperty("项目ID")
private Long projectId;
}
@Data
@ApiModel("提交后的提示信息")
public static class SubmitInfo {
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("类型(0-创建,1-加入)")
private Byte type;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("科室")
private String department;
@ApiModelProperty("职务")
private String position;
}
@Data
@ApiModel("医院名称回显-返参")
public static class tenantName {
@ApiModelProperty("医院名称")
private String name;
}
@Data
@ApiModel("返回-分享问卷信息")
public static class ShareQuestionnaire {
@ApiModelProperty("医院名称")
private String tenantName;
@ApiModelProperty("医生名称")
private String doctorName;
@ApiModelProperty("二维码路径")
private String qrCode;
@JsonIgnore
private String positionCode;
}
@Data
@ApiModel("返回-村医查看工作量")
public static class VillageWorkload {
@ApiModelProperty("总数")
private int totalNum;
@ApiModelProperty("高危数量")
private int highNum;
@ApiModelProperty("中危数量")
private int middleNum;
@ApiModelProperty("中危数量")
private int lowNum;
@ApiModelProperty("患者列表")
private List<WorkloadList> workloadLists;
}
@Data
@ApiModel("返回-村医查看工作量-患者列表")
public static class WorkloadList {
@ApiModelProperty("问卷详情id")
private Long detailId;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("手机号(脱敏)")
private String phone;
@ApiModelProperty("状态 0正常 1高危 2中危 3低危")
private Byte type;
@ApiModelProperty("提交时间")
private Long submitTime;
@JsonIgnore
private String illnessType;
public String getPhone() {
String p = phone;
if(ObjectUtil.isNotNull(phone)){
p = DesensitizedUtil.mobilePhone(phone);
}
return p;
}
public Byte getType() {
byte b = 0;
if(StrUtil.isNotBlank(illnessType)){
if(illnessType.split(",").length >= 3){
b = 1;
}else if(illnessType.contains("09") || illnessType.contains("10")){
b = 1;
}else if(illnessType.contains("01") || illnessType.contains("03") || illnessType.contains("04")){
b = 2;
}else if(illnessType.contains("02") || illnessType.contains("05")
|| illnessType.contains("06") || illnessType.contains("07") || illnessType.contains("08")){
b = 3;
}
}
return b;
}
}
@Data
@ApiModel("返回-卫生院查看工作量")
public static class CenterWorkload {
@ApiModelProperty("医生id")
private Long doctorId;
@ApiModelProperty("医生名")
private String doctorName;
@ApiModelProperty("总数")
private int totalNum;
@ApiModelProperty("高危数量")
private int highNum;
}
@Data
@ApiModel("后台分页查看高危筛查信息--返回")
public static class BackQueryScreening {
@ApiModelProperty("问卷详情id")
private Long id;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("身份证号")
private String idCard;
@ApiModelProperty("性别 0女 1男")
private String sex;
@ApiModelProperty("出生日期")
private String birthday;
@ApiModelProperty("年龄")
private String age;
@ApiModelProperty("手机号")
private String phone;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("病情")
private String illness;
@ApiModelProperty("高血压 0没有 1有")
private String hypertension;
@ApiModelProperty("血脂 0没有 1有")
private String bloodFat;
@ApiModelProperty("糖尿病 0没有 1有")
private String diabetes;
@ApiModelProperty("心房颤动 0没有 1有")
private String fibrillation;
@ApiModelProperty("吸烟 0没有 1有")
private String smoke;
@ApiModelProperty("体重 0正常 1超重")
private String weight;
@ApiModelProperty("运动 0正常 1缺乏")
private String sports;
@ApiModelProperty("卒中家族史 0没有 1有")
private String acupunctureFamily;
@ApiModelProperty("脑卒中病史 0没有 1有")
private String cerebralStroke;
@ApiModelProperty("脑缺血病史 0没有 1有")
private String cerebralIschemia;
@ApiModelProperty("危险等级 0正常 1高危 2中危 3低危")
private Byte type;
@ApiModelProperty("健康跟踪 0待处理 1已联系 2已就诊")
private Byte healthTracking;
public byte getType() {
byte b = 0;
if(StrUtil.isNotBlank(illness)){
if(illness.split(",").length >= 3){
b = 1;
}else if(illness.contains("09") || illness.contains("10")){
b = 1;
}else if(illness.contains("01") || illness.contains("03") || illness.contains("04")){
b = 2;
}else if(illness.contains("02") || illness.contains("05")
|| illness.contains("06") || illness.contains("07") || illness.contains("08")){
b = 3;
}
}
return b;
}
public String getTypeString() {
String s = "正常";
if(ObjectUtil.isNotNull(getType())){
switch (getType()){
case 1:
s = "高危";
break;
case 2:
s = "中危";
break;
case 3:
s = "低危";
break;
default:
}
}
return s;
}
public String getHealthTrackingString() {
String s = "待处理";
switch (healthTracking){
case 1:
s = "已联系";
break;
case 2:
s = "已就诊";
break;
default:
}
return s;
}
public static String idCardNum(String id) {
if (StringUtils.isBlank(id)) {
return "";
} else {
String num = StringUtils.right(id, 4);
return StringUtils.leftPad(num, StringUtils.length(id), "*");
}
}
public String getIdCard() {
String s = idCard;
if(ObjectUtil.isNotNull(idCard)){
s = idCardNum(idCard);
}
return s;
}
public static String mobilePhone(String num) {
return StringUtils.isBlank(num) ? "" : StringUtils.left(num, 3).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(num, 4), StringUtils.length(num), "*"), "***"));
}
public String getPhone() {
String p = phone;
if(ObjectUtil.isNotNull(phone)){
p = mobilePhone(phone);
}
return p;
}
public String getHypertension() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("01")){
s = "有";
}
}
return s;
}
public String getBloodFat() {
String s = "正常";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("02")){
s = "异常";
}
}
return s;
}
public String getDiabetes() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("03")){
s = "有";
}
}
return s;
}
public String getFibrillation() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("04")){
s = "有";
}
}
return s;
}
public String getSmoke() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("05")){
s = "有";
}
}
return s;
}
public String getWeight() {
String s = "正常";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("06")){
s = "超重";
}
}
return s;
}
public String getSports() {
String s = "正常";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("07")){
s = "缺乏";
}
}
return s;
}
public String getacupunctureFamily() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("08")){
s = "有";
}
}
return s;
}
public String getCerebralStroke() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("09")){
s = "有";
}
}
return s;
}
public String getCerebralIschemia() {
String s = "无";
if(StrUtil.isNotBlank(illness)){
if(illness.contains("10")){
s = "有";
}
}
return s;
}
}
@Data
@ApiModel("根据type查找问卷-请求")
public static class QuestionnaireByType {
@ApiModelProperty("问卷id")
private Long id;
@ApiModelProperty("问卷名称")
private String questionnaireName;
}
}

75
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/ScrScreenVo.java

@ -0,0 +1,75 @@
package com.acupuncture.system.domain.vo;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @Author zzc
* @Package com.neuro.system.domain.vo
* @Date 2025/3/4 17:54
* @description:
*/
public class ScrScreenVo {
@Data
public static class Result{
private Long id;
private String name;
private String idcard;
private Integer age;
private String phone;
private String city;
private String county;
private String province;
private Byte hospitalLevel;
private String tenantName;
private String departments;
private Long userId;
private Long screenId;
private Byte submitStatus;
private Long positionId;
private Long tenantId;
private Integer rzscResult;
private Byte screenType;
private String screenResult;
private Byte delFlag;
private String createBy;
private Date createTime;
private List<ScreeningDetailVo> detailList;
}
@Data
public static class ScreeningDetailVo{
private Long detailId;
private Long recordId;
private String questionCode;
private String answer;
}
}

224
acupuncture-system/src/main/java/com/acupuncture/system/domain/vo/UplRtcfInfoVo.java

@ -0,0 +1,224 @@
package com.acupuncture.system.domain.vo;
import cn.hutool.core.util.StrUtil;
import lombok.Data;
import java.util.Date;
/**
* @Author zzc
* @Package com.acupuncture.system.domain.vo
* @Date 2025/3/17 15:47
* @description:
*/
public class UplRtcfInfoVo {
@Data
public static class Result{
private Long id;
private String message;
private String uuid;
private String deviceId;
private String deviceType;
private String memberid;
private String testId;
private String testDate;
private String name;
private String sex;
private String height;
private String birthYear;
private String weight;
private String fat;
private String bone;
private String protein;
private String water;
private String muscle;
private String smm;
private String pbf;
private String bmi;
private String bmr;
private String whr;
private String edema;
private String vfi;
private String bodyAge;
private String score;
private String bodyType;
private String lbm;
private String icw;
private String ecw;
private String standardWeight;
private String weightControl;
private String fatControl;
private String muscleControl;
private String liverRisk;
private String asmi;
private String trFat;
private String laFat;
private String raFat;
private String llFat;
private String rlFat;
private String trWater;
private String laWater;
private String raWater;
private String llWater;
private String rlWater;
private String trMuscle;
private String laMuscle;
private String raMuscle;
private String llMuscle;
private String rlMuscle;
private String trBone;
private String laBone;
private String raBone;
private String llBone;
private String rlBone;
private String weightMax;
private String weightMin;
private String fatMax;
private String fatMin;
private String boneMax;
private String boneMin;
private String proteinMax;
private String proteinMin;
private String waterMax;
private String waterMin;
private String muscleMax;
private String muscleMin;
private String smmMax;
private String smmMin;
private String pbfMax;
private String pbfMin;
private String bmiMax;
private String bmiMin;
private String whrMax;
private String whrMin;
private String edemaMax;
private String edemaMin;
private String vfiMax;
private String vfiMin;
private String diagnosis;
private Byte status;
private Byte delFlag;
private Long tenantId;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private String remark;
public String getBodyType() {
if (StrUtil.isNotBlank(bodyType)) {
switch (bodyType) {
case "1":
return "隐形肥胖型";
case "2":
return "肌肉不足型";
case "3":
return "消瘦型";
case "4":
return "脂肪过多型";
case "5":
return "健康匀称型";
case "6":
return "低脂肪型";
case "7":
return "肥胖型";
case "8":
return "超重肌肉型";
case "9":
return "运动员型";
}
}
return bodyType;
}
}
}

4
acupuncture-system/src/main/java/com/acupuncture/system/mapper/SysRoleMapper.java

@ -1,7 +1,10 @@
package com.acupuncture.system.mapper;
import java.util.List;
import com.acupuncture.common.annotation.DataSource;
import com.acupuncture.common.core.domain.entity.SysRole;
import com.acupuncture.common.enums.DataSourceType;
/**
* 角色表 数据层
@ -24,6 +27,7 @@ public interface SysRoleMapper
* @param userId 用户ID
* @return 角色列表
*/
@DataSource(DataSourceType.MASTER)
public List<SysRole> selectRolePermissionByUserId(Long userId);
/**

4
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/DmsUserDao.java

@ -3,6 +3,7 @@ package com.acupuncture.system.persist.dao;
import com.acupuncture.common.annotation.DataSource;
import com.acupuncture.common.core.domain.entity.SysUser;
import com.acupuncture.common.enums.DataSourceType;
import com.acupuncture.system.domain.po.DmsTenant;
import com.acupuncture.system.domain.po.DmsUser;
import com.acupuncture.system.domain.vo.DmsLoginUserVo;
import org.apache.ibatis.annotations.Param;
@ -15,6 +16,9 @@ import org.apache.ibatis.annotations.Param;
*/
public interface DmsUserDao {
@DataSource(DataSourceType.MASTER)
DmsTenant queryById(@Param("id") Long id);
/**
* 通过用户名查询用户
*

17
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ExternalDao.java

@ -0,0 +1,17 @@
package com.acupuncture.system.persist.dao;
import com.acupuncture.system.domain.dto.ExternalDto;
import com.acupuncture.system.domain.vo.DmsLoginUserVo;
import com.acupuncture.system.domain.vo.ExternalVo;
import org.apache.ibatis.annotations.Param;
/**
* @Author zzc
* @Package com.acupuncture.system.persist.dao
* @Date 2025/2/10 9:48
* @description:
*/
public interface ExternalDao {
ExternalVo.Result select(@Param("query") ExternalDto.Query query);
}

20
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ScreeningDao.java

@ -0,0 +1,20 @@
package com.acupuncture.system.persist.dao;
import com.acupuncture.system.domain.vo.QuestionnaireVo;
import com.acupuncture.system.persist.mapper.ScrScreeningMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ScreeningDao extends ScrScreeningMapper {
/**
* 查询需要填写的问卷列表
* @param time 当前事件
* @return 问卷列表
*/
List<QuestionnaireVo.WriteStatus> queryByTime(@Param("time") Long time);
}

53
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/ScreeningDetailDao.java

@ -0,0 +1,53 @@
package com.acupuncture.system.persist.dao;
import com.acupuncture.common.annotation.DataSource;
import com.acupuncture.common.enums.DataSourceType;
import com.acupuncture.system.domain.dto.ScreeningDto;
import com.acupuncture.system.domain.vo.QuestionnaireVo;
import com.acupuncture.system.domain.vo.ScrScreenVo;
import com.acupuncture.system.persist.mapper.ScrScreeningDetailMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ScreeningDetailDao extends ScrScreeningDetailMapper {
/**
* 查询用户是否填写
* @param userId 用户id
* @param qid 问卷id
* @return 填写状态
*/
Integer querySubmitStatus(@Param("userId") Long userId,@Param("qid") Long qid);
/**
* 查询用户是否有此问卷的详情
* @param type 问卷类型
* @param userId 用户id
* @param time 当前时间
* @return 问卷详情id
*/
QuestionnaireVo.DetailInfo queryIsExist(@Param("type") Byte type, @Param("userId") Long userId, @Param("time") Long time);
/**
* 查询是否已经填写code
* @param detailId 问卷详情id
* @param code 试题code
* @return 记录id
*/
Long queryDetailIsExist(@Param("detailId") Long detailId,@Param("code") String code);
List<ScrScreenVo.Result> queryResult(@Param("detailId") Long detailId,
@Param("type") Byte type,
@Param("param") ScreeningDto.Query param);
@DataSource(DataSourceType.MASTER)
List<ScrScreenVo.Result> adminQueryResult(@Param("detailId") Long detailId,
@Param("type") Byte type,
@Param("param") ScreeningDto.Query param);
List<ScrScreenVo.ScreeningDetailVo> queryDetailList(@Param("detailIdList") List<Long> detailIdList);
List<ScrScreenVo.ScreeningDetailVo> adminQueryDetailList(@Param("detailIdList") List<Long> detailIdList);
}

3
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/UmsDataSourceDao.java

@ -3,6 +3,7 @@ package com.acupuncture.system.persist.dao;
import com.acupuncture.common.annotation.DataSource;
import com.acupuncture.common.enums.DataSourceType;
import com.acupuncture.system.domain.vo.UmsDataSourceVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -15,6 +16,6 @@ import java.util.List;
public interface UmsDataSourceDao {
@DataSource(DataSourceType.MASTER)
List<UmsDataSourceVo.Result> query();
List<UmsDataSourceVo.Result> query(@Param("tenantId") Long tenantId);
}

34
acupuncture-system/src/main/java/com/acupuncture/system/persist/dao/WxQrCodeDao.java

@ -0,0 +1,34 @@
package com.acupuncture.system.persist.dao;
import com.acupuncture.common.annotation.DataSource;
import com.acupuncture.common.enums.DataSourceType;
import com.acupuncture.system.domain.vo.AmsWxQrCodeVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface WxQrCodeDao {
@DataSource(DataSourceType.MASTER)
AmsWxQrCodeVo.Result queryById(@Param("id")Long id);
/**
* 查询
* @return
*/
List<AmsWxQrCodeVo.Result> select(@Param("diseaseId") Long diseaseId,
@Param("deptId")Long deptId);
/**
* 查询
* @return
*/
List<AmsWxQrCodeVo.ScreenResult> selectScreen(@Param("hospitalId") Long hospitalId);
List<AmsWxQrCodeVo.ScreenResult> selectScreenList(@Param("hospitalIdList") List<Long> hospitalIdList);
@DataSource(DataSourceType.MASTER)
List<AmsWxQrCodeVo.ScreenResult> adminSelectScreenList(@Param("hospitalIdList") List<Long> hospitalIdList);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/AmsScreenWxQrCodeMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.AmsScreenWxQrCode;
import com.acupuncture.system.domain.po.AmsScreenWxQrCodeExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface AmsScreenWxQrCodeMapper {
long countByExample(AmsScreenWxQrCodeExample example);
int deleteByPrimaryKey(Long id);
int insert(AmsScreenWxQrCode record);
int insertSelective(AmsScreenWxQrCode record);
List<AmsScreenWxQrCode> selectByExample(AmsScreenWxQrCodeExample example);
AmsScreenWxQrCode selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") AmsScreenWxQrCode record, @Param("example") AmsScreenWxQrCodeExample example);
int updateByExample(@Param("record") AmsScreenWxQrCode record, @Param("example") AmsScreenWxQrCodeExample example);
int updateByPrimaryKeySelective(AmsScreenWxQrCode record);
int updateByPrimaryKey(AmsScreenWxQrCode record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningDetailMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.ScrScreeningDetail;
import com.acupuncture.system.domain.po.ScrScreeningDetailExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface ScrScreeningDetailMapper {
long countByExample(ScrScreeningDetailExample example);
int deleteByPrimaryKey(Long id);
int insert(ScrScreeningDetail record);
int insertSelective(ScrScreeningDetail record);
List<ScrScreeningDetail> selectByExample(ScrScreeningDetailExample example);
ScrScreeningDetail selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") ScrScreeningDetail record, @Param("example") ScrScreeningDetailExample example);
int updateByExample(@Param("record") ScrScreeningDetail record, @Param("example") ScrScreeningDetailExample example);
int updateByPrimaryKeySelective(ScrScreeningDetail record);
int updateByPrimaryKey(ScrScreeningDetail record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningDrawMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.ScrScreeningDraw;
import com.acupuncture.system.domain.po.ScrScreeningDrawExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface ScrScreeningDrawMapper {
long countByExample(ScrScreeningDrawExample example);
int deleteByPrimaryKey(Long id);
int insert(ScrScreeningDraw record);
int insertSelective(ScrScreeningDraw record);
List<ScrScreeningDraw> selectByExample(ScrScreeningDrawExample example);
ScrScreeningDraw selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") ScrScreeningDraw record, @Param("example") ScrScreeningDrawExample example);
int updateByExample(@Param("record") ScrScreeningDraw record, @Param("example") ScrScreeningDrawExample example);
int updateByPrimaryKeySelective(ScrScreeningDraw record);
int updateByPrimaryKey(ScrScreeningDraw record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.ScrScreening;
import com.acupuncture.system.domain.po.ScrScreeningExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface ScrScreeningMapper {
long countByExample(ScrScreeningExample example);
int deleteByPrimaryKey(Long id);
int insert(ScrScreening record);
int insertSelective(ScrScreening record);
List<ScrScreening> selectByExample(ScrScreeningExample example);
ScrScreening selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") ScrScreening record, @Param("example") ScrScreeningExample example);
int updateByExample(@Param("record") ScrScreening record, @Param("example") ScrScreeningExample example);
int updateByPrimaryKeySelective(ScrScreening record);
int updateByPrimaryKey(ScrScreening record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/ScrScreeningRecordMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.ScrScreeningRecord;
import com.acupuncture.system.domain.po.ScrScreeningRecordExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface ScrScreeningRecordMapper {
long countByExample(ScrScreeningRecordExample example);
int deleteByPrimaryKey(Long id);
int insert(ScrScreeningRecord record);
int insertSelective(ScrScreeningRecord record);
List<ScrScreeningRecord> selectByExample(ScrScreeningRecordExample example);
ScrScreeningRecord selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") ScrScreeningRecord record, @Param("example") ScrScreeningRecordExample example);
int updateByExample(@Param("record") ScrScreeningRecord record, @Param("example") ScrScreeningRecordExample example);
int updateByPrimaryKeySelective(ScrScreeningRecord record);
int updateByPrimaryKey(ScrScreeningRecord record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/UplReportImageMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.UplReportImage;
import com.acupuncture.system.domain.po.UplReportImageExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface UplReportImageMapper {
long countByExample(UplReportImageExample example);
int deleteByPrimaryKey(Long id);
int insert(UplReportImage record);
int insertSelective(UplReportImage record);
List<UplReportImage> selectByExample(UplReportImageExample example);
UplReportImage selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") UplReportImage record, @Param("example") UplReportImageExample example);
int updateByExample(@Param("record") UplReportImage record, @Param("example") UplReportImageExample example);
int updateByPrimaryKeySelective(UplReportImage record);
int updateByPrimaryKey(UplReportImage record);
}

28
acupuncture-system/src/main/java/com/acupuncture/system/persist/mapper/UplRtcfInfoMapper.java

@ -0,0 +1,28 @@
package com.acupuncture.system.persist.mapper;
import com.acupuncture.system.domain.po.UplRtcfInfo;
import com.acupuncture.system.domain.po.UplRtcfInfoExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface UplRtcfInfoMapper {
long countByExample(UplRtcfInfoExample example);
int deleteByPrimaryKey(Long id);
int insert(UplRtcfInfo record);
int insertSelective(UplRtcfInfo record);
List<UplRtcfInfo> selectByExample(UplRtcfInfoExample example);
UplRtcfInfo selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") UplRtcfInfo record, @Param("example") UplRtcfInfoExample example);
int updateByExample(@Param("record") UplRtcfInfo record, @Param("example") UplRtcfInfoExample example);
int updateByPrimaryKeySelective(UplRtcfInfo record);
int updateByPrimaryKey(UplRtcfInfo record);
}

3
acupuncture-system/src/main/java/com/acupuncture/system/service/DmsLoginService.java

@ -2,6 +2,7 @@ package com.acupuncture.system.service;
import com.acupuncture.common.core.domain.entity.SysUser;
import com.acupuncture.system.domain.dto.AdminTenantUserDto;
import com.acupuncture.system.domain.po.DmsTenant;
import com.acupuncture.system.domain.po.DmsUser;
import com.acupuncture.system.domain.po.UmsDataSource;
import com.acupuncture.system.domain.vo.DmsLoginUserVo;
@ -46,4 +47,6 @@ public interface DmsLoginService {
UmsDataSource getDataSourceByTenantId(Long tenantId);
boolean checkPhoneUnique(AdminTenantUserDto.AddDto dto);
DmsTenant queryById(Long id);
}

57
acupuncture-system/src/main/java/com/acupuncture/system/service/ExternalService.java

@ -0,0 +1,57 @@
package com.acupuncture.system.service;
import com.acupuncture.system.domain.dto.ExternalDto;
import com.acupuncture.system.domain.po.UplReportImage;
import com.acupuncture.system.domain.po.UplRtcfInfo;
import com.acupuncture.system.domain.vo.ExternalVo;
import com.acupuncture.system.domain.vo.UplRtcfInfoVo;
import java.util.List;
/**
* @Author zzc
* @Package com.acupuncture.system.service
* @Date 2025/3/15 10:29
* @description:
*/
public interface ExternalService {
/**
* 获取人员信息
* @param from 所属社区id
* @param memberid 门诊号/住院号
* @return
*/
ExternalVo.Result query(String from, String memberid);
/**
* 上传数据
* @param rtcfInfoDtoList
* @return
*/
int add(ExternalDto.RtcfInfoDto rtcfInfoDto);
/**
* 上传测试报告
* @param reportImageVo
* @return
*/
int addReportImage(ExternalDto.ReportImageDto reportImageVo);
List<UplRtcfInfo> list();
/**
* 根据住院号/门诊号查询人体成分信息
* @param membreId
* @return
*/
UplRtcfInfoVo.Result selectByMemberId(String membreId);
/**
* 根据住院号/门诊号查询人体成分信息
* @param membreId
* @return
*/
UplReportImage selectReportByMemberId(String membreId);
}

76
acupuncture-system/src/main/java/com/acupuncture/system/service/IScreeningService.java

@ -0,0 +1,76 @@
package com.acupuncture.system.service;
import com.acupuncture.system.domain.dto.ScreeningDto;
import com.acupuncture.system.domain.vo.QuestionnaireVo;
import com.acupuncture.system.domain.vo.ScrScreenVo;
import com.github.pagehelper.PageInfo;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
public interface IScreeningService {
/**
* 查询当前医院问卷是否填写
* @param param 项目id/当前时间
* @return 问卷状态列表
*/
List<QuestionnaireVo.WriteStatus> queryNotWrite(ScreeningDto.QueryNotWrite param);
void export(HttpServletResponse response, ScreeningDto.Query param);
void adminExport(HttpServletResponse response, ScreeningDto.Query param);
void exportRzScreen(HttpServletResponse response, ScreeningDto.Query param);
PageInfo<ScrScreenVo.Result> queryDetailByPage(ScreeningDto.Query param, Integer pageNum, Integer pageSize);
PageInfo<ScrScreenVo.Result> adminQueryDetailByPage(ScreeningDto.Query param, Integer pageNum, Integer pageSize);
/**
*
* 保存问卷调查信息
* @param param 参数
* @param userId 用户id
* @throws Exception 异常
*/
void saveQuestionnaire(ScreeningDto.SaveQuestionnaire param, Long userId) throws Exception;
/**
* 提交问卷(修改问卷详情状态)
* @param param 问卷详情id
* @param userId 用户id
*/
void submitQuestionnaire(ScreeningDto.SubmitScreeningQuestionnaire param, Long userId) throws Exception;
/**
* 随访
* @param patientId 患者ID
* @param status 状态(0未随访 1已随访)
*/
void follow(Long patientId, Byte status);
/**
* 为用户创建问卷详情
* @param param 问卷id
* @param userId 用户id
* @return 问卷id与问卷详情id
*/
QuestionnaireVo.DetailInfo createDetail(ScreeningDto.CreateDetail param, Long userId, Long hospitailId) throws Exception;
// /**
// * 导出问卷调查数据
// * @param export 导出条件
// * @return 问卷
// */
// Workbook export(ScreeningDto.Export export) throws IOException;
//
// /**
// * 导出问卷调查数据
// * @param export 导出条件
// * @return 问卷
// */
// Workbook exportByArea(ScreeningDto.ExportByArea export) throws IOException;
}

9
acupuncture-system/src/main/java/com/acupuncture/system/service/PmsTreatmentService.java

@ -50,6 +50,15 @@ public interface PmsTreatmentService {
void exportTreatment(HttpServletResponse response, PmsTreatmentDto.TreatmentQueryDTO dto);
/**
* 当初诊疗档案评估报告
* @param response
* @param dto
*/
String exportTreatmentPg(HttpServletResponse response, PmsTreatmentDto.ExportVO dto);
String adminExportTreatmentPg(HttpServletResponse response, PmsTreatmentDto.ExportVO dto);
void importTreatment(MultipartFile file) throws IOException;
/**
* 查询诊疗档案

36
acupuncture-system/src/main/java/com/acupuncture/system/service/WxQrCodeService.java

@ -0,0 +1,36 @@
package com.acupuncture.system.service;
import com.acupuncture.system.domain.dto.AmsWxQrCodeDto;
import com.acupuncture.system.domain.po.AmsScreenWxQrCode;
import com.acupuncture.system.domain.po.AmsScreenWxQrCode;
import com.acupuncture.system.domain.vo.AmsWxQrCodeVo;
import java.io.IOException;
import java.util.List;
public interface WxQrCodeService {
List<AmsWxQrCodeVo.Result> queryList(Long diseaseId, Long deptId);
void add(AmsScreenWxQrCode amsWxQrCode) throws Exception;
void delete(List<Long> idList);
String export(String url, String bq) throws IOException;
List<AmsWxQrCodeVo.ScreenResult> queryList(Long hospitalId);
List<AmsWxQrCodeVo.ScreenResult> adminQueryList(Long hospitalId);
List<AmsWxQrCodeVo.ScreenResult> queryScreenList();
AmsScreenWxQrCode add(AmsWxQrCodeDto.ScreenInsert amsScreenWxQrCode) throws Exception;
void deleteScreen(List<Long> idList);
String exportScreen(String url, Long hostpitalId) throws Exception;
String adminExportScreen(String url, Long hostpitalId) throws Exception;
String exportHbScreen(String url, Long hostpitalId) throws Exception;
}

5
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/DmsLoginServiceImpl.java

@ -92,5 +92,10 @@ public class DmsLoginServiceImpl implements DmsLoginService {
return UserConstants.UNIQUE;
}
@Override
public DmsTenant queryById(Long id) {
return dmsTenantMapper.selectByPrimaryKey(id);
}
}

148
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/ExternalServiceImpl.java

@ -0,0 +1,148 @@
package com.acupuncture.system.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.IdUtil;
import com.acupuncture.common.core.redis.RedisCache;
import com.acupuncture.system.domain.dto.ExternalDto;
import com.acupuncture.system.domain.po.UplReportImage;
import com.acupuncture.system.domain.po.UplReportImageExample;
import com.acupuncture.system.domain.po.UplRtcfInfo;
import com.acupuncture.system.domain.po.UplRtcfInfoExample;
import com.acupuncture.system.domain.vo.ExternalVo;
import com.acupuncture.system.domain.vo.UplRtcfInfoVo;
import com.acupuncture.system.persist.dao.ExternalDao;
import com.acupuncture.system.persist.mapper.UplReportImageMapper;
import com.acupuncture.system.persist.mapper.UplRtcfInfoMapper;
import com.acupuncture.system.service.ExternalService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
* @Author zzc
* @Package com.acupuncture.system.service.impl
* @Date 2025/3/15 10:29
* @description:
*/
@Service
public class ExternalServiceImpl implements ExternalService {
@Resource
private UplReportImageMapper uplReportImageMapper;
@Resource
private UplRtcfInfoMapper uplRtcfInfoMapper;
@Resource
private ExternalDao externalDao;
@Resource
private RedisCache redisCache;
@Override
public ExternalVo.Result query(String from, String memberid) {
ExternalDto.Query query = new ExternalDto.Query();
query.setFrom(from);
query.setMemberid(memberid);
return externalDao.select(query);
}
@Override
public int add(ExternalDto.RtcfInfoDto rtcfInfoDto) {
UplRtcfInfo uplRtcfInfos = BeanUtil.copyProperties(rtcfInfoDto, UplRtcfInfo.class);
uplRtcfInfos.setId(IdUtil.getSnowflakeNextId());
uplRtcfInfos.setCreateTime(new Date());
uplRtcfInfos.setDelFlag((byte) 0);
uplRtcfInfos.setAsmi(rtcfInfoDto.getASMI());
uplRtcfInfos.setBmi(rtcfInfoDto.getBMI());
uplRtcfInfos.setDeviceId(rtcfInfoDto.getDeviceID());
uplRtcfInfos.setDeviceType(rtcfInfoDto.getDeviceType());
uplRtcfInfos.setDiagnosis(rtcfInfoDto.getDiagnosis());
uplRtcfInfos.setEdema(rtcfInfoDto.getEdema());
uplRtcfInfos.setFat(rtcfInfoDto.getFat());
uplRtcfInfos.setFatControl(rtcfInfoDto.getFat_control());
uplRtcfInfos.setFatMax(rtcfInfoDto.getFatMax());
uplRtcfInfos.setFatMin(rtcfInfoDto.getFatMin());
uplRtcfInfos.setHeight(rtcfInfoDto.getHeight());
uplRtcfInfos.setLbm(rtcfInfoDto.getLBM());
uplRtcfInfos.setLlBone(rtcfInfoDto.getLL_bone());
uplRtcfInfos.setLlFat(rtcfInfoDto.getLL_fat());
uplRtcfInfos.setLlMuscle(rtcfInfoDto.getLL_muscle());
uplRtcfInfos.setLlWater(rtcfInfoDto.getLL_water());
uplRtcfInfos.setLlWater(rtcfInfoDto.getLL_water());
uplRtcfInfos.setLlWater(rtcfInfoDto.getLL_water());
uplRtcfInfos.setMemberid(rtcfInfoDto.getMemberid());
uplRtcfInfos.setMuscle(rtcfInfoDto.getMuscle());
uplRtcfInfos.setSmm(rtcfInfoDto.getSMM());
uplRtcfInfos.setPbf(rtcfInfoDto.getPBF());
uplRtcfInfos.setPbfMax(rtcfInfoDto.getPBFMax());
uplRtcfInfos.setPbfMin(rtcfInfoDto.getPBFMin());
uplRtcfInfos.setBodyAge(rtcfInfoDto.getBodyAge());
uplRtcfInfos.setBodyType(rtcfInfoDto.getBodyType());
uplRtcfInfos.setScore(rtcfInfoDto.getScore());
uplRtcfInfos.setStandardWeight(rtcfInfoDto.getStandard_weight());
uplRtcfInfos.setWeight(rtcfInfoDto.getWeight());
uplRtcfInfos.setWeightControl(rtcfInfoDto.getWeight_control());
uplRtcfInfos.setWeightMax(rtcfInfoDto.getWeightMax());
uplRtcfInfos.setWeightMin(rtcfInfoDto.getWeightMin());
uplRtcfInfos.setBmi(rtcfInfoDto.getBMI());
uplRtcfInfos.setBmr(rtcfInfoDto.getBMR());
uplRtcfInfos.setWhr(rtcfInfoDto.getWHR());
uplRtcfInfos.setEdema(rtcfInfoDto.getEdema());
uplRtcfInfos.setVfi(rtcfInfoDto.getVFI());
uplRtcfInfos.setLiverRisk(rtcfInfoDto.getLiverRisk());
uplRtcfInfos.setAsmi(rtcfInfoDto.getASMI());
uplRtcfInfos.setTrFat(rtcfInfoDto.getTR_fat());
uplRtcfInfos.setLaFat(rtcfInfoDto.getLA_fat());
uplRtcfInfos.setRaFat(rtcfInfoDto.getRA_fat());
uplRtcfInfos.setLlFat(rtcfInfoDto.getLL_fat());
uplRtcfInfos.setRlFat(rtcfInfoDto.getRL_fat());
uplRtcfInfos.setTrWater(rtcfInfoDto.getTR_water());
uplRtcfInfos.setLaWater(rtcfInfoDto.getLA_water());
int insert = uplRtcfInfoMapper.insert(uplRtcfInfos);
if (insert > 0) {
redisCache.set("rtcfInfo:" + uplRtcfInfos.getMemberid(), uplRtcfInfos.getUuid());
}
return insert;
}
@Override
public int addReportImage(ExternalDto.ReportImageDto reportImageVo) {
UplReportImage uplReportImage = BeanUtil.copyProperties(reportImageVo, UplReportImage.class);
uplReportImage.setId(IdUtil.getSnowflakeNextId());
uplReportImage.setCreateTime(new Date());
uplReportImage.setDelFlag((byte) 0);
return uplReportImageMapper.insertSelective(uplReportImage);
}
@Override
public List<UplRtcfInfo> list() {
return uplRtcfInfoMapper.selectByExample(new UplRtcfInfoExample());
}
@Override
public UplRtcfInfoVo.Result selectByMemberId(String membreId) {
UplRtcfInfoExample uplRtcfInfoExample = new UplRtcfInfoExample();
uplRtcfInfoExample.createCriteria().andMemberidEqualTo(membreId).andDelFlagEqualTo((byte) 0);
List<UplRtcfInfo> uplRtcfInfos = uplRtcfInfoMapper.selectByExample(uplRtcfInfoExample);
if (CollectionUtil.isNotEmpty(uplRtcfInfos)) {
return BeanUtil.copyProperties(uplRtcfInfos.get(0), UplRtcfInfoVo.Result.class);
}
return new UplRtcfInfoVo.Result();
}
@Override
public UplReportImage selectReportByMemberId(String membreId) {
UplReportImageExample uplReportImageExample = new UplReportImageExample();
uplReportImageExample.createCriteria().andMemberIdEqualTo(membreId).andDelFlagEqualTo((byte) 0);
List<UplReportImage> uplReportImages = uplReportImageMapper.selectByExample(uplReportImageExample);
if (CollectionUtil.isNotEmpty(uplReportImages)) {
return uplReportImages.get(0);
}
return new UplReportImage();
}
}

3
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/PmsPatientServiceImpl.java

@ -74,6 +74,9 @@ public class PmsPatientServiceImpl implements PmsPatientService {
pmsPatient.setDelFlag((byte) 0);
pmsPatient.setCreateTime(new Date());
pmsPatient.setTenantId(SecurityUtils.getTenantId());
if (pmsPatient.getSource() == null) {
pmsPatient.setSource((byte) 1);
}
pmsPatientMapper.insertSelective(pmsPatient);
return pmsPatient.getId();
}

218
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/PmsTreatmentServiceImpl.java

@ -3,6 +3,7 @@ package com.acupuncture.system.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.IdUtil;
@ -13,6 +14,7 @@ import cn.hutool.poi.excel.BigExcelWriter;
import cn.hutool.poi.excel.ExcelUtil;
import com.acupuncture.common.core.redis.RedisCache;
import com.acupuncture.common.exception.base.BaseException;
import com.acupuncture.common.utils.AsposeUtils;
import com.acupuncture.common.utils.ExceptionUtil;
import com.acupuncture.common.utils.SecurityUtils;
import com.acupuncture.system.domain.dto.PmsPatientDto;
@ -29,6 +31,7 @@ import com.acupuncture.system.persist.mapper.PmsTreatmentMapper;
import com.acupuncture.system.persist.mapper.PmsTreatmentRecordMapper;
import com.acupuncture.system.service.PmsPatientService;
import com.acupuncture.system.service.PmsTreatmentService;
import com.deepoove.poi.XWPFTemplate;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
@ -36,7 +39,10 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -68,6 +74,13 @@ public class PmsTreatmentServiceImpl implements PmsTreatmentService {
private RedisCache redisCache;
@Value("${file.TreamentTemplate}")
private String treamentTemplate;
@Value("${file.pgTemplate}")
private String pgTemplate;
@Value("${acupuncture.profile}")
private String profilePath;
@Value("${acupuncture.profileUrl}")
private String profileUrl;
@Override
public void addTreatment(PmsTreatmentDto.TreatmentAdd dto) {
@ -112,7 +125,7 @@ public class PmsTreatmentServiceImpl implements PmsTreatmentService {
patientQueueRelation.setCreateTime(new Date());
fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
}
}else {
} else {
FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(dto, FmsPatientQueueRelation.class);
patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
patientQueueRelation.setDelFlag((byte) 0);
@ -134,36 +147,36 @@ public class PmsTreatmentServiceImpl implements PmsTreatmentService {
pmsTreatment.setUpdateTime(new Date());
treatmentMapper.updateByPrimaryKeySelective(pmsTreatment);
//删除队列
//如有患者档案信息,则需要判断患者是否有随访队列,如果有,则需要删除(先删除后新增)
FmsPatientQueueRelationExample fmsPatientQueueRelationExample = new FmsPatientQueueRelationExample();
fmsPatientQueueRelationExample.createCriteria().andPatientIdEqualTo(pmsTreatment.getPatientId()).andDelFlagEqualTo((byte) 0);
FmsPatientQueueRelation fmsPatientQueueRelation = new FmsPatientQueueRelation();
fmsPatientQueueRelation.setDelFlag((byte) 1);
fmsPatientQueueRelationMapper.updateByExampleSelective(fmsPatientQueueRelation, fmsPatientQueueRelationExample);
// //删除队列
// //如有患者档案信息,则需要判断患者是否有随访队列,如果有,则需要删除(先删除后新增)
// FmsPatientQueueRelationExample fmsPatientQueueRelationExample = new FmsPatientQueueRelationExample();
// fmsPatientQueueRelationExample.createCriteria().andPatientIdEqualTo(pmsTreatment.getPatientId()).andDelFlagEqualTo((byte) 0);
// FmsPatientQueueRelation fmsPatientQueueRelation = new FmsPatientQueueRelation();
// fmsPatientQueueRelation.setDelFlag((byte) 1);
// fmsPatientQueueRelationMapper.updateByExampleSelective(fmsPatientQueueRelation, fmsPatientQueueRelationExample);
//新增随访队列
if (CollectionUtil.isNotEmpty(dto.getQueueIdList())) {
for (Long queueId : dto.getQueueIdList()) {
FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(dto, FmsPatientQueueRelation.class);
patientQueueRelation.setDelFlag((byte) 0);
patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
patientQueueRelation.setQueueId(queueId);
patientQueueRelation.setCreateTime(new Date());
patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
}
}else {
FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(dto, FmsPatientQueueRelation.class);
patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
patientQueueRelation.setDelFlag((byte) 0);
patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
patientQueueRelation.setTenantId(pmsTreatment.getTenantId());
patientQueueRelation.setQueueId(null);
patientQueueRelation.setCreateTime(new Date());
fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
}
// if (CollectionUtil.isNotEmpty(dto.getQueueIdList())) {
// for (Long queueId : dto.getQueueIdList()) {
// FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(dto, FmsPatientQueueRelation.class);
// patientQueueRelation.setDelFlag((byte) 0);
// patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
// patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
// patientQueueRelation.setQueueId(queueId);
// patientQueueRelation.setCreateTime(new Date());
// patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
// fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
// }
// }else {
// FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(dto, FmsPatientQueueRelation.class);
// patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
// patientQueueRelation.setDelFlag((byte) 0);
// patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
// patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
// patientQueueRelation.setTenantId(pmsTreatment.getTenantId());
// patientQueueRelation.setQueueId(null);
// patientQueueRelation.setCreateTime(new Date());
// fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
// }
}
@ -253,6 +266,44 @@ public class PmsTreatmentServiceImpl implements PmsTreatmentService {
willSavedRecord.setCreateTime(now);
willSavedRecord.setCreateBy(SecurityUtils.getUsername());
willSavedFirstAidRecordList.add(willSavedRecord);
//处理随访队列
//删除队列
//如有患者档案信息,则需要判断患者是否有随访队列,如果有,则需要删除(先删除后新增)
FmsPatientQueueRelationExample fmsPatientQueueRelationExample = new FmsPatientQueueRelationExample();
fmsPatientQueueRelationExample.createCriteria().andPatientIdEqualTo(pmsTreatment.getPatientId()).andDelFlagEqualTo((byte) 0);
FmsPatientQueueRelation fmsPatientQueueRelation = new FmsPatientQueueRelation();
fmsPatientQueueRelation.setDelFlag((byte) 1);
fmsPatientQueueRelationMapper.updateByExampleSelective(fmsPatientQueueRelation, fmsPatientQueueRelationExample);
if ("SFDL".equals(codeAndAnswer.getQuestionCode())) {
//新增随访队列
if (CollectionUtil.isNotEmpty(codeAndAnswer.getAnswer())) {
List<String> answer = codeAndAnswer.getAnswer();
for (String queueId : answer) {
FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(pmsTreatment, FmsPatientQueueRelation.class);
patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
patientQueueRelation.setDelFlag((byte) 0);
patientQueueRelation.setIdCard(pmsTreatment.getIdCard());
patientQueueRelation.setIdCardType(pmsTreatment.getIdCardType().byteValue());
patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
patientQueueRelation.setQueueId(Long.parseLong(queueId));
patientQueueRelation.setCreateTime(new Date());
fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
}
} else {
FmsPatientQueueRelation patientQueueRelation = BeanUtil.copyProperties(pmsTreatment, FmsPatientQueueRelation.class);
patientQueueRelation.setId(IdUtil.getSnowflakeNextId());
patientQueueRelation.setDelFlag((byte) 0);
patientQueueRelation.setIdCard(pmsTreatment.getIdCard());
patientQueueRelation.setIdCardType(pmsTreatment.getIdCardType().byteValue());
patientQueueRelation.setCreateBy(SecurityUtils.getUsername());
patientQueueRelation.setPatientId(pmsTreatment.getPatientId());
patientQueueRelation.setQueueId(null);
patientQueueRelation.setCreateTime(new Date());
fmsPatientQueueRelationMapper.insertSelective(patientQueueRelation);
}
}
}
//批量保存
batchSave(willSavedFirstAidRecordList);
@ -387,12 +438,117 @@ public class PmsTreatmentServiceImpl implements PmsTreatmentService {
}
}
@Override
public String exportTreatmentPg(HttpServletResponse response, PmsTreatmentDto.ExportVO dto) {
PmsTreatment pmsTreatment = treatmentMapper.selectByPrimaryKey(dto.getTreatmentId());
if (pmsTreatment == null) {
throw new BaseException("诊疗信息不存在");
}
PmsTreatmentRecordExample pmsTreatmentRecordExample = new PmsTreatmentRecordExample();
pmsTreatmentRecordExample.createCriteria().andTreatmentIdEqualTo(dto.getTreatmentId()).andDelFlagEqualTo((byte) 0);
List<PmsTreatmentRecord> pmsTreatmentRecords = pmsTreatmentRecordMapper.selectByExample(pmsTreatmentRecordExample);
String pdfName = pmsTreatment.getName() + "_" + pmsTreatment.getVisitNumber();
String wordPath = profilePath + File.separator + pdfName + ".docx";
String pdfPath = profilePath + File.separator + pdfName + ".pdf";
try {
XWPFTemplate template = XWPFTemplate.compile(pgTemplate);
Map<String, Object> map = new HashMap<>();
map.put("name", pmsTreatment.getName());
map.put("sex", pmsTreatment.getGender() == 0 ? "男" : "女");
map.put("age", pmsTreatment.getAge());
map.put("phone", pmsTreatment.getPhone());
map.put("visitNum", pmsTreatment.getVisitNumber());
map.put("visitTime", DateUtil.format(pmsTreatment.getVisitTime(), "yyyy-MM-dd HH:mm:ss"));
map.put("doctor", pmsTreatment.getDoctor());
map.put("createBy", pmsTreatment.getCreateBy());
map.put("createTime", DateUtil.format(pmsTreatment.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
map.put("status", pmsTreatment.getStatus() == 0 ? "未完成" : "已完成");
if (CollectionUtil.isNotEmpty(pmsTreatmentRecords)) {
Map<String, PmsTreatmentRecord> recordMap = pmsTreatmentRecords.stream().collect(Collectors.toMap(PmsTreatmentRecord::getQuestionCode, Function.identity()));
map.put("score1", recordMap.get("PG_TT_TAPS_DF") == null ? "" : recordMap.get("PG_TT_TAPS_DF").getAnswer());
map.put("score2", recordMap.get("PG_TT_TRACE_DF") == null ? "" : recordMap.get("PG_TT_TRACE_DF").getAnswer());
map.put("score3", recordMap.get("PG_TT_SRS22_DF") == null ? "" : recordMap.get("PG_TT_SRS22_DF").getAnswer());
map.put("score4", recordMap.get("PG_SM_PHQ-9_DF") == null ? "" : recordMap.get("PG_SM_PHQ-9_DF").getAnswer());
map.put("score5", recordMap.get("PG_SM_EPSW_DF") == null ? "" : recordMap.get("PG_SM_EPSW_DF").getAnswer());
map.put("score6", recordMap.get("PG_SM_PSQI_DF") == null ? "" : recordMap.get("PG_SM_PSQI_DF").getAnswer());
map.put("score7", recordMap.get("PG_JL_HAMD-24_DF") == null ? "" : recordMap.get("PG_JL_HAMD-24_DF").getAnswer());
map.put("score8", recordMap.get("PG_JL_SAS_DF") == null ? "" : recordMap.get("PG_JL_SAS_DF").getAnswer());
}
//渲染
template.render(map);
//以文件形式输出
template.writeAndClose(Files.newOutputStream(Paths.get(wordPath)));
//转换为pdf
AsposeUtils.doc2pdf(wordPath, pdfPath);
//删除word
FileUtil.del(wordPath);
} catch (Exception e) {
e.printStackTrace();
}
return profileUrl + "/" + pdfName + ".pdf";
}
@Override
public String adminExportTreatmentPg(HttpServletResponse response, PmsTreatmentDto.ExportVO dto) {
PmsTreatmentVo.TreatmentRecordVO treatmentRecordVO = pmsTreatmentDao.adminQueryTreatment(dto.getTreatmentId());
if (treatmentRecordVO == null) {
throw new BaseException("诊疗信息不存在");
}
PmsTreatmentRecordExample pmsTreatmentRecordExample = new PmsTreatmentRecordExample();
pmsTreatmentRecordExample.createCriteria().andTreatmentIdEqualTo(dto.getTreatmentId()).andDelFlagEqualTo((byte) 0);
List<PmsTreatmentRecord> pmsTreatmentRecords = pmsTreatmentRecordMapper.selectByExample(pmsTreatmentRecordExample);
String pdfName = treatmentRecordVO.getName() + "_" + treatmentRecordVO.getVisitNumber();
String wordPath = profilePath + File.separator + pdfName + ".docx";
String pdfPath = profilePath + File.separator + pdfName + ".pdf";
try {
XWPFTemplate template = XWPFTemplate.compile(pgTemplate);
Map<String, Object> map = new HashMap<>();
map.put("name", treatmentRecordVO.getName());
map.put("sex", treatmentRecordVO.getGender() == 0 ? "男" : "女");
map.put("age", treatmentRecordVO.getAge());
map.put("phone", treatmentRecordVO.getPhone());
map.put("visitNum", treatmentRecordVO.getVisitNumber());
map.put("visitTime", DateUtil.format(treatmentRecordVO.getVisitTime(), "yyyy-MM-dd HH:mm:ss"));
map.put("doctor", treatmentRecordVO.getDoctor());
map.put("createBy", treatmentRecordVO.getCreateBy());
map.put("createTime", DateUtil.format(treatmentRecordVO.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
map.put("status", treatmentRecordVO.getStatus() == 0 ? "未完成" : "已完成");
if (CollectionUtil.isNotEmpty(pmsTreatmentRecords)) {
Map<String, PmsTreatmentRecord> recordMap = pmsTreatmentRecords.stream().collect(Collectors.toMap(PmsTreatmentRecord::getQuestionCode, Function.identity()));
map.put("score1", recordMap.get("PG_TT_TAPS_DF") == null ? "" : recordMap.get("PG_TT_TAPS_DF").getAnswer());
map.put("score2", recordMap.get("PG_TT_TRACE_DF") == null ? "" : recordMap.get("PG_TT_TRACE_DF").getAnswer());
map.put("score3", recordMap.get("PG_TT_SRS22_DF") == null ? "" : recordMap.get("PG_TT_SRS22_DF").getAnswer());
map.put("score4", recordMap.get("PG_SM_PHQ-9_DF") == null ? "" : recordMap.get("PG_SM_PHQ-9_DF").getAnswer());
map.put("score5", recordMap.get("PG_SM_EPSW_DF") == null ? "" : recordMap.get("PG_SM_EPSW_DF").getAnswer());
map.put("score6", recordMap.get("PG_SM_PSQI_DF") == null ? "" : recordMap.get("PG_SM_PSQI_DF").getAnswer());
map.put("score7", recordMap.get("PG_JL_HAMD-24_DF") == null ? "" : recordMap.get("PG_JL_HAMD-24_DF").getAnswer());
map.put("score8", recordMap.get("PG_JL_SAS_DF") == null ? "" : recordMap.get("PG_JL_SAS_DF").getAnswer());
}
//渲染
template.render(map);
//以文件形式输出
template.writeAndClose(Files.newOutputStream(Paths.get(wordPath)));
//转换为pdf
AsposeUtils.doc2pdf(wordPath, pdfPath);
//删除word
FileUtil.del(wordPath);
} catch (Exception e) {
e.printStackTrace();
}
return profileUrl + "/" + pdfName + ".pdf";
}
@Override
public void importTreatment(MultipartFile file) throws IOException {
//读取excel
List<PmsPatient> pmsPatientList = CollectionUtil.newArrayList();
ExcelUtil.readBySax(file.getInputStream(), 0, (sheetIndex, rowIndex, rowList) -> {
// 建档时间 患者姓名 性别 年龄 民族 受教育程度 手机号码 证件类型(0身份证;1护照或外国人永居证; 2港澳居民来往内地通行; 3台湾居民来往大陆通行证; 4其他;) 证件号码 门诊/住院 门诊号/住院号 门诊时间/住院时间 出院时间 责任医生 建档人
// 建档时间 患者姓名 性别 年龄 民族 受教育程度 手机号码 证件类型(0身份证;1护照或外国人永居证; 2港澳居民来往内地通行; 3台湾居民来往大陆通行证; 4其他;) 证件号码 门诊/住院 门诊号/住院号 门诊时间/住院时间 出院时间 责任医生 建档人
try {
if (rowIndex < 1) {
return;

484
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/ScreeningServiceImpl.java

@ -0,0 +1,484 @@
package com.acupuncture.system.service.impl;
import cn.hutool.Hutool;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.pinyin.PinyinUtil;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.acupuncture.common.constant.ErrorConstant;
import com.acupuncture.common.constant.UserConstants;
import com.acupuncture.common.core.redis.RedisCache;
import com.acupuncture.common.exception.base.BaseException;
import com.acupuncture.common.utils.SecurityUtils;
import com.acupuncture.system.domain.dto.ScreeningDto;
import com.acupuncture.system.domain.po.ScrScreening;
import com.acupuncture.system.domain.po.ScrScreeningDetail;
import com.acupuncture.system.domain.po.ScrScreeningExample;
import com.acupuncture.system.domain.po.ScrScreeningRecord;
import com.acupuncture.system.domain.vo.QuestionnaireVo;
import com.acupuncture.system.domain.vo.ScrScreenVo;
import com.acupuncture.system.persist.dao.ScreeningDao;
import com.acupuncture.system.persist.dao.ScreeningDetailDao;
import com.acupuncture.system.persist.mapper.ScrScreeningRecordMapper;
import com.acupuncture.system.service.IScreeningService;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* @Author zzc
* @Package com.neuro.system.service.impl
* @Date 2025/3/4 9:38
* @description:
*/
@Service
@Slf4j
public class ScreeningServiceImpl implements IScreeningService {
@Resource
private ScreeningDetailDao screeningDetailDao;
@Resource
private ScreeningDao screeningDao;
@Resource
private ScrScreeningRecordMapper scrScreeningRecordMapper;
@Resource
private RedisCache redisCache;
/**
* 提交高危筛查问卷的时间
*/
public static final String SCWJ_SUBMIT_TIME = "SCWJ-SUBMIT";
@Override
public List<QuestionnaireVo.WriteStatus> queryNotWrite(ScreeningDto.QueryNotWrite param) {
//查询问卷列表
List<QuestionnaireVo.WriteStatus> questionnaireList = screeningDao.queryByTime(param.getTime());
if (CollectionUtil.isNotEmpty(questionnaireList)) {
for (QuestionnaireVo.WriteStatus questionnaire : questionnaireList) {
//查询填写状态
Integer submitStatus = screeningDetailDao.querySubmitStatus(SecurityUtils.getUserId(), questionnaire.getId());
if (ObjectUtil.isNull(submitStatus)) {
questionnaire.setIsWrite(-1);
} else {
questionnaire.setIsWrite(submitStatus);
}
}
return questionnaireList;
}
return new ArrayList<>();
}
@Override
public void export(HttpServletResponse response, ScreeningDto.Query param) {
ExcelWriter excelWriter = ExcelUtil.getWriter();
List<String> headerList = CollectionUtil.newArrayList(
"姓名",
"性别",
"年龄",
"身份证",
"出生日期",
"手机号",
"有高血压,>=140/90mmHg",
"血脂异常,或不清楚",
"有糖尿病",
"心跳不规则",
"吸烟",
"明显超重或肥胖",
"缺乏运动",
"有卒中家族史",
"有既往脑卒中病史",
"有既往短暂脑缺血病史",
"筛查结果",
"数据来源",
"科室名称");
excelWriter.writeHeadRow(headerList);
PageInfo<ScrScreenVo.Result> page = queryDetailByPage(param, -1, -1);
if (page != null) {
List<ScrScreenVo.Result> detailVos = page.getList();
if (CollectionUtil.isNotEmpty(detailVos)) {
int row = 0;
for (int i = 0; i < detailVos.size(); i++) {
List<ScrScreenVo.ScreeningDetailVo> recordList = detailVos.get(i).getDetailList();
Map<String, ScrScreenVo.ScreeningDetailVo> map = new HashMap<>();
if (CollectionUtil.isNotEmpty(recordList)) {
map = recordList.stream().collect(Collectors.toMap(ScrScreenVo.ScreeningDetailVo::getQuestionCode, Function.identity()));
}
//筛查信息
ScrScreenVo.ScreeningDetailVo record = map.get("SCWJ-ILLNESS");
//筛查结果
ScrScreenVo.ScreeningDetailVo result = map.get("SCWJ-RESULT");
row += 1;
excelWriter.writeCellValue(0, row, detailVos.get(i).getName() + "");
excelWriter.writeCellValue(1, row, map.get("SCWJ-SEX") == null ? "未知" : map.get("SCWJ-SEX").getAnswer());
excelWriter.writeCellValue(2, row, map.get("SCWJ-AGE") == null ? "" : map.get("SCWJ-AGE").getAnswer());
excelWriter.writeCellValue(3, row, map.get("SCWJ-idCard") == null ? "" : map.get("SCWJ-idCard").getAnswer());
excelWriter.writeCellValue(4, row, map.get("SCWJ-BIRTH") == null ? "" : map.get("SCWJ-BIRTH").getAnswer());
excelWriter.writeCellValue(5, row, map.get("SCWJ-PHONE") == null ? "" : map.get("SCWJ-PHONE").getAnswer());
if (record == null || StrUtil.isEmpty(record.getAnswer())) {
excelWriter.writeCellValue(6, row, "否");
excelWriter.writeCellValue(7, row, "否");
excelWriter.writeCellValue(8, row, "否");
excelWriter.writeCellValue(9, row, "否");
excelWriter.writeCellValue(10, row, "否");
excelWriter.writeCellValue(11, row, "否");
excelWriter.writeCellValue(12, row, "否");
excelWriter.writeCellValue(13, row, "否");
excelWriter.writeCellValue(14, row, "否");
excelWriter.writeCellValue(15, row, "否");
} else {
String answer = record.getAnswer();
String[] split = answer.split(",");
excelWriter.writeCellValue(6, row, Arrays.asList(split).contains("01") ? "是" : "否");
excelWriter.writeCellValue(7, row, Arrays.asList(split).contains("02") ? "是" : "否");
excelWriter.writeCellValue(8, row, Arrays.asList(split).contains("03") ? "是" : "否");
excelWriter.writeCellValue(9, row, Arrays.asList(split).contains("04") ? "是" : "否");
excelWriter.writeCellValue(10, row, Arrays.asList(split).contains("05") ? "是" : "否");
excelWriter.writeCellValue(11, row, Arrays.asList(split).contains("06") ? "是" : "否");
excelWriter.writeCellValue(12, row, Arrays.asList(split).contains("07") ? "是" : "否");
excelWriter.writeCellValue(13, row, Arrays.asList(split).contains("08") ? "是" : "否");
excelWriter.writeCellValue(14, row, Arrays.asList(split).contains("09") ? "是" : "否");
excelWriter.writeCellValue(15, row, Arrays.asList(split).contains("10") ? "是" : "否");
}
String str = "";
if (map.get("SCWJ-RESULT") != null && StrUtil.isNotEmpty(map.get("SCWJ-RESULT").getAnswer())) {
String answer1 = map.get("SCWJ-RESULT").getAnswer();
if ("0".equals(answer1)) {
str = "正常";
}
if ("1".equals(answer1)) {
str = "低危";
}
if ("2".equals(answer1)) {
str = "中危";
}
if ("3".equals(answer1)) {
str = "高危";
}
}
excelWriter.writeCellValue(16, row, str);
excelWriter.writeCellValue(17, row, map.get("SCWJ-SQMC") == null ? "" : map.get("SCWJ-SQMC").getAnswer());
excelWriter.writeCellValue(18, row, map.get("SCWJ-DEPT") == null ? "" : map.get("SCWJ-DEPT").getAnswer());
}
}
}
String filename = StrUtil.format("筛查-{}.xlsx", DateUtil.date().toString("yyyyMMdd"));
//response为HttpServletResponse对象
response.setContentType("application/vnd.ms-excel;charset=utf-8");
//test.xls是弹出下载对话框的文件名,不能为中文,中文请自行编码
response.setHeader("Content-Disposition", "attachment;filename=" + filename);
ServletOutputStream out = null;
try {
out = response.getOutputStream();
excelWriter.flush(out);
} catch (IOException e) {
e.printStackTrace();
} finally {
// 关闭writer,释放内存
excelWriter.close();
//此处记得关闭输出Servlet流
IoUtil.close(out);
}
}
@Override
public void adminExport(HttpServletResponse response, ScreeningDto.Query param) {
ExcelWriter excelWriter = ExcelUtil.getWriter();
List<String> headerList = CollectionUtil.newArrayList(
"姓名",
"性别",
"年龄",
"身份证",
"出生日期",
"手机号",
"有高血压,>=140/90mmHg",
"血脂异常,或不清楚",
"有糖尿病",
"心跳不规则",
"吸烟",
"明显超重或肥胖",
"缺乏运动",
"有卒中家族史",
"有既往脑卒中病史",
"有既往短暂脑缺血病史",
"筛查结果",
"数据来源",
"科室名称");
excelWriter.writeHeadRow(headerList);
PageInfo<ScrScreenVo.Result> page = adminQueryDetailByPage(param, -1, -1);
if (page != null) {
List<ScrScreenVo.Result> detailVos = page.getList();
if (CollectionUtil.isNotEmpty(detailVos)) {
int row = 0;
for (int i = 0; i < detailVos.size(); i++) {
List<ScrScreenVo.ScreeningDetailVo> recordList = detailVos.get(i).getDetailList();
Map<String, ScrScreenVo.ScreeningDetailVo> map = new HashMap<>();
if (CollectionUtil.isNotEmpty(recordList)) {
map = recordList.stream().collect(Collectors.toMap(ScrScreenVo.ScreeningDetailVo::getQuestionCode, Function.identity()));
}
//筛查信息
ScrScreenVo.ScreeningDetailVo record = map.get("SCWJ-ILLNESS");
//筛查结果
ScrScreenVo.ScreeningDetailVo result = map.get("SCWJ-RESULT");
row += 1;
excelWriter.writeCellValue(0, row, detailVos.get(i).getName() + "");
excelWriter.writeCellValue(1, row, map.get("SCWJ-SEX") == null ? "未知" : map.get("SCWJ-SEX").getAnswer());
excelWriter.writeCellValue(2, row, map.get("SCWJ-AGE") == null ? "" : map.get("SCWJ-AGE").getAnswer());
excelWriter.writeCellValue(3, row, map.get("SCWJ-idCard") == null ? "" : map.get("SCWJ-idCard").getAnswer());
excelWriter.writeCellValue(4, row, map.get("SCWJ-BIRTH") == null ? "" : map.get("SCWJ-BIRTH").getAnswer());
excelWriter.writeCellValue(5, row, map.get("SCWJ-PHONE") == null ? "" : map.get("SCWJ-PHONE").getAnswer());
if (record == null || StrUtil.isEmpty(record.getAnswer())) {
excelWriter.writeCellValue(6, row, "否");
excelWriter.writeCellValue(7, row, "否");
excelWriter.writeCellValue(8, row, "否");
excelWriter.writeCellValue(9, row, "否");
excelWriter.writeCellValue(10, row, "否");
excelWriter.writeCellValue(11, row, "否");
excelWriter.writeCellValue(12, row, "否");
excelWriter.writeCellValue(13, row, "否");
excelWriter.writeCellValue(14, row, "否");
excelWriter.writeCellValue(15, row, "否");
} else {
String answer = record.getAnswer();
String[] split = answer.split(",");
excelWriter.writeCellValue(6, row, Arrays.asList(split).contains("01") ? "是" : "否");
excelWriter.writeCellValue(7, row, Arrays.asList(split).contains("02") ? "是" : "否");
excelWriter.writeCellValue(8, row, Arrays.asList(split).contains("03") ? "是" : "否");
excelWriter.writeCellValue(9, row, Arrays.asList(split).contains("04") ? "是" : "否");
excelWriter.writeCellValue(10, row, Arrays.asList(split).contains("05") ? "是" : "否");
excelWriter.writeCellValue(11, row, Arrays.asList(split).contains("06") ? "是" : "否");
excelWriter.writeCellValue(12, row, Arrays.asList(split).contains("07") ? "是" : "否");
excelWriter.writeCellValue(13, row, Arrays.asList(split).contains("08") ? "是" : "否");
excelWriter.writeCellValue(14, row, Arrays.asList(split).contains("09") ? "是" : "否");
excelWriter.writeCellValue(15, row, Arrays.asList(split).contains("10") ? "是" : "否");
}
String str = "";
if (map.get("SCWJ-RESULT") != null && StrUtil.isNotEmpty(map.get("SCWJ-RESULT").getAnswer())) {
String answer1 = map.get("SCWJ-RESULT").getAnswer();
if ("0".equals(answer1)) {
str = "正常";
}
if ("1".equals(answer1)) {
str = "低危";
}
if ("2".equals(answer1)) {
str = "中危";
}
if ("3".equals(answer1)) {
str = "高危";
}
}
excelWriter.writeCellValue(16, row, str);
excelWriter.writeCellValue(17, row, map.get("SCWJ-SQMC") == null ? "" : map.get("SCWJ-SQMC").getAnswer());
excelWriter.writeCellValue(18, row, map.get("SCWJ-DEPT") == null ? "" : map.get("SCWJ-DEPT").getAnswer());
}
}
}
String filename = StrUtil.format("筛查-{}.xlsx", DateUtil.date().toString("yyyyMMdd"));
//response为HttpServletResponse对象
response.setContentType("application/vnd.ms-excel;charset=utf-8");
//test.xls是弹出下载对话框的文件名,不能为中文,中文请自行编码
response.setHeader("Content-Disposition", "attachment;filename=" + filename);
ServletOutputStream out = null;
try {
out = response.getOutputStream();
excelWriter.flush(out);
} catch (IOException e) {
e.printStackTrace();
} finally {
// 关闭writer,释放内存
excelWriter.close();
//此处记得关闭输出Servlet流
IoUtil.close(out);
}
}
@Override
public void exportRzScreen(HttpServletResponse response, ScreeningDto.Query param) {
}
@Override
public PageInfo<ScrScreenVo.Result> queryDetailByPage(ScreeningDto.Query param, Integer pageNum, Integer pageSize) {
List<ScrScreenVo.Result> results = screeningDetailDao.queryResult(null, null, param);
if (CollectionUtil.isNotEmpty(results)) {
List<ScrScreenVo.ScreeningDetailVo> screeningDetailVos = screeningDetailDao.queryDetailList(results.stream().map(ScrScreenVo.Result::getId).collect(Collectors.toList()));
if (CollectionUtil.isNotEmpty(screeningDetailVos)) {
Map<Long, List<ScrScreenVo.ScreeningDetailVo>> map = screeningDetailVos.stream().collect(Collectors.groupingBy(ScrScreenVo.ScreeningDetailVo::getRecordId));
results.forEach(result -> {
result.setDetailList(map.get(result.getId()));
});
}
}
return new PageInfo<>(results);
}
@Override
public PageInfo<ScrScreenVo.Result> adminQueryDetailByPage(ScreeningDto.Query param, Integer pageNum, Integer pageSize) {
List<ScrScreenVo.Result> results = screeningDetailDao.adminQueryResult(null, null, param);
if (CollectionUtil.isNotEmpty(results)) {
List<ScrScreenVo.ScreeningDetailVo> screeningDetailVos = screeningDetailDao.adminQueryDetailList(results.stream().map(ScrScreenVo.Result::getId).collect(Collectors.toList()));
if (CollectionUtil.isNotEmpty(screeningDetailVos)) {
Map<Long, List<ScrScreenVo.ScreeningDetailVo>> map = screeningDetailVos.stream().collect(Collectors.groupingBy(ScrScreenVo.ScreeningDetailVo::getRecordId));
results.forEach(result -> {
result.setDetailList(map.get(result.getId()));
});
}
}
return new PageInfo<>(results);
}
@Override
public void saveQuestionnaire(ScreeningDto.SaveQuestionnaire param, Long userId) throws Exception {
//redis判断是否已有
Object o = redisCache.get(param.getDetailId() + "" + param.getCode() + param.getCode());
log.info("redis保存问卷用户{},{}", param.getDetailId() + "" + userId, o);
if (ObjectUtil.isNull(o)) {
redisCache.set(param.getDetailId() + "" + userId + param.getCode(), userId, 600);
//查询是否已经提交,已提交不能保存修改
ScrScreeningRecord questionnaireDetail = scrScreeningRecordMapper.selectByPrimaryKey(param.getDetailId());
if (UserConstants.SubmitStatus.submit.status == questionnaireDetail.getSubmitStatus()) {
redisCache.deleteObject(param.getDetailId() + "" + userId + param.getCode());
throw new BaseException(ErrorConstant.HOSPITAL_REPEAT_SUBMIT);
}
log.info("param.getCode():{}", param.getCode());
if (param.getCode().equals("SCWJ-NAME")) {
questionnaireDetail.setName(param.getAnswer());
questionnaireDetail.setPinyinFull(PinyinUtil.getPinyin(param.getAnswer()));
questionnaireDetail.setPinyinSimple(PinyinUtil.getFirstLetter(param.getAnswer(), ""));
}
if (param.getCode().equals("SCWJ-PHONE")) {
questionnaireDetail.setPhone(param.getAnswer());
}
// if (param.getCode().equals("SCWJ-RESULT")) {
// questionnaireDetail.setDangeStatus(Byte.parseByte(param.getAnswer()));
// }
if (param.getCode().equals("SCWJ-idCard")) {
questionnaireDetail.setIdcard((param.getAnswer()));
}
if (param.getCode().equals("RZSC-RESULT")) {
questionnaireDetail.setRzscResult(Integer.valueOf(param.getAnswer()));
}
if (param.getCode().equals("SCWJ-BIRTH")) {
questionnaireDetail.setAge(DateUtil.ageOfNow(param.getAnswer()));
}
log.info("questionnaireDetail:{}", questionnaireDetail.getId());
log.info("questionnaireDetail:{}", questionnaireDetail.getName());
scrScreeningRecordMapper.updateByPrimaryKeySelective(questionnaireDetail);
Long recordId = screeningDetailDao.queryDetailIsExist(param.getDetailId(), param.getCode());
if (ObjectUtil.isNotNull(recordId)) {
ScrScreeningDetail record = new ScrScreeningDetail();
record.setId(recordId);
record.setQuestionCode(param.getCode());
record.setAnswer(param.getAnswer());
screeningDetailDao.updateByPrimaryKeySelective(record);
} else {
ScrScreeningDetail record = new ScrScreeningDetail();
record.setId(IdUtil.getSnowflakeNextId());
record.setRecordId(param.getDetailId());
record.setQuestionCode(param.getCode());
record.setAnswer(param.getAnswer());
screeningDetailDao.insertSelective(record);
}
redisCache.deleteObject(param.getDetailId() + "" + userId + param.getCode());
}
}
private Integer getAgeByBirthday(String answer) {
return DateUtil.ageOfNow(answer);
}
@Override
public void submitQuestionnaire(ScreeningDto.SubmitScreeningQuestionnaire param, Long userId) throws Exception {
//根据问卷详情id查询问卷
ScrScreeningRecord detail = scrScreeningRecordMapper.selectByPrimaryKey(param.getDetailId());
if (ObjectUtil.isNull(detail)) {
throw new BaseException(ErrorConstant.QUESTIONNAIRE_DETAIL_ERROR);
}
//添加提交时间
ScrScreeningDetail screeningRecord = new ScrScreeningDetail();
screeningRecord.setId(IdUtil.getSnowflakeNextId());
screeningRecord.setRecordId(param.getDetailId());
screeningRecord.setQuestionCode(SCWJ_SUBMIT_TIME);
screeningRecord.setAnswer(System.currentTimeMillis() + "");
screeningDetailDao.insert(screeningRecord);
//修改提交状态
ScrScreeningRecord screeningDetail = new ScrScreeningRecord();
screeningDetail.setId(param.getDetailId());
screeningDetail.setSubmitStatus((byte) 1);
scrScreeningRecordMapper.updateByPrimaryKeySelective(screeningDetail);
}
@Override
public void follow(Long patientId, Byte status) {
}
@Override
public QuestionnaireVo.DetailInfo createDetail(ScreeningDto.CreateDetail param, Long userId, Long hospitailId) throws Exception {
long currentTime = System.currentTimeMillis();
QuestionnaireVo.DetailInfo detailInfo = new QuestionnaireVo.DetailInfo();
if (param.getType() == 0) {
detailInfo = screeningDetailDao.queryIsExist(param.getType(), userId, currentTime);
if (ObjectUtil.isNull(detailInfo)) {
throw new BaseException(ErrorConstant.QUESTIONNAIRE_DETAIL_ERROR);
}
if (ObjectUtil.isNull(detailInfo.getId())) {
throw new BaseException(ErrorConstant.QUESTIONNAIRE_DETAIL_ERROR);
}
} else {
//根据查找问卷类型
ScrScreeningExample questionnaireExample = new ScrScreeningExample();
questionnaireExample.createCriteria().andTypeEqualTo(param.getType())
.andWriteStartTimeLessThan(currentTime).andWriteEndTimeGreaterThan(currentTime);
List<ScrScreening> questionnaires = screeningDao.selectByExample(questionnaireExample);
if (CollectionUtil.isNotEmpty(questionnaires)) {
detailInfo.setId(questionnaires.get(0).getId());
}
}
if (ObjectUtil.isNull(detailInfo.getDetailId())) {
ScrScreeningRecord detail = new ScrScreeningRecord();
detail.setId(IdUtil.getSnowflakeNextId());
detail.setUserId(userId);
detail.setScreenId(detailInfo.getId());
detail.setTenantId(hospitailId);
detail.setSubmitStatus(UserConstants.SubmitStatus.save.status);
detail.setDelFlag((byte) 0);
scrScreeningRecordMapper.insertSelective(detail);
detailInfo.setDetailId(detail.getId());
}
return detailInfo;
}
// @Override
// public Workbook export(ScreeningDto.Export export) throws IOException {
// return null;
// }
//
// @Override
// public Workbook exportByArea(ScreeningDto.ExportByArea export) throws IOException {
// return null;
// }
}

380
acupuncture-system/src/main/java/com/acupuncture/system/service/impl/WxQrCodeServiceImpl.java

@ -0,0 +1,380 @@
package com.acupuncture.system.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.IdUtil;
import com.acupuncture.common.exception.base.BaseException;
import com.acupuncture.system.domain.dto.AmsWxQrCodeDto;
import com.acupuncture.system.persist.dao.DmsUserDao;
import com.acupuncture.system.persist.dao.WxQrCodeDao;
import com.acupuncture.system.persist.mapper.AmsScreenWxQrCodeMapper;
import com.acupuncture.common.utils.*;
import com.acupuncture.system.domain.po.*;
import com.acupuncture.system.domain.vo.AmsWxQrCodeVo;
import com.acupuncture.system.persist.mapper.DmsTenantMapper;
import com.acupuncture.system.service.WxQrCodeService;
import com.alibaba.fastjson2.JSONObject;
import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.data.PictureRenderData;
import com.deepoove.poi.data.Pictures;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class WxQrCodeServiceImpl implements WxQrCodeService {
private static final String WXTOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&";
//微信二维码生成路径
private static final String WXACODE_URL = "https://api.weixin.qq.com/wxa/getwxacode?access_token=";
@Resource
private AmsScreenWxQrCodeMapper wxQrCodeMapper;
@Resource
private WxQrCodeDao wxQrCodeDao;
@Resource
private DmsUserDao dmsUserDao;
@Value("${file.wxQrCodeTemplate}")
public String wxQrCodeTemplate;
@Value("${file.screenQrCodeTemplate}")
public String screenQrCodeTemplate;
@Value("${file.hbTemplate}")
public String hbTemplate;
@Value("${file.screenPath}")
public String screenPath;
@Value("${file.jmrsUrl}")
public String jmrsUrl;
@Resource
private DmsTenantMapper dmsTenantMapper;
@Override
public List<AmsWxQrCodeVo.Result> queryList(Long diseaseId, Long deptId) {
return wxQrCodeDao.select(diseaseId, deptId);
}
@Override
public void add(AmsScreenWxQrCode amsWxQrCode) throws Exception {
if (amsWxQrCode.getId() == null) {
amsWxQrCode.setUrl(QRCode(amsWxQrCode.getPath()));
amsWxQrCode.setCreateTime(new Date());
amsWxQrCode.setCreateBy(SecurityUtils.getUsername());
amsWxQrCode.setDelFlag((byte) 0);
amsWxQrCode.setId(IdUtil.getSnowflakeNextId());
wxQrCodeMapper.insertSelective(amsWxQrCode);
} else {
amsWxQrCode.setUrl(QRCode(amsWxQrCode.getPath()));
amsWxQrCode.setUpdateTime(new Date());
amsWxQrCode.setUpdateBy(SecurityUtils.getUsername());
amsWxQrCode.setDelFlag((byte) 0);
wxQrCodeMapper.updateByPrimaryKeySelective(amsWxQrCode);
}
}
/**
* 微信getAccessToken
*/
public static String getAccessToken() throws IOException {
HttpPost httpPost = new HttpPost(WXTOKEN_URL + "appid=wx3190e3f68dd4d068" + "&secret=71d797c1f81f9f0caadab3289ee7367c");
CloseableHttpClient client = HttpClients.createDefault();
CloseableHttpResponse execute = client.execute(httpPost);
HttpEntity httpEntity = execute.getEntity();
String result = EntityUtils.toString(httpEntity, "utf-8");
JSONObject jsonObject = JSONObject.parseObject(result);
return jsonObject.get("access_token").toString();
}
/**
* 微信小程序码生成
*
* @param path 跳转页面路径(前端路径)
* @return
* @throws IOException
*/
public static String QRCode(String path) throws Exception {
String accessToken = getAccessToken();
HttpPost httpPost = new HttpPost(WXACODE_URL + accessToken);
httpPost.addHeader("Accept", "application/json");
httpPost.addHeader("Content-type", "application/json; charset=utf-8");
JSONObject param = new JSONObject();
param.put("path", path);
StringEntity stringEntity = new StringEntity(param.toJSONString());
stringEntity.setContentType("image/png");
httpPost.setEntity(stringEntity);
CloseableHttpClient client = HttpClients.createDefault();
CloseableHttpResponse execute = client.execute(httpPost);
InputStream content = execute.getEntity().getContent();
String name = "WX_QRCODE" + "_" + System.currentTimeMillis() + ".png";
int i = saveToImgByInputStream(content, "/home/acupuncture/server/profile/upload/", name);
if (i == 1) {
return "/profile/upload/" + name;
} else {
throw new Exception("生成二维码失败");
}
}
/**
* 将二进制转换成文件保存
*
* @param instreams 二进制流
* @param imgPath 图片的保存路径
* @param imgName 图片的名称
* @return 1保存正常
* 0保存失败
*/
public static int saveToImgByInputStream(InputStream instreams, String imgPath, String imgName) {
int stateInt = 1;
if (instreams != null) {
try {
File file = new File(imgPath);
if (!file.exists() || !file.isDirectory()) {
file.mkdirs();
}
file = new File(imgPath, imgName);//可以是任何图片格式.jpg,.png等
FileOutputStream fos = new FileOutputStream(file);
byte[] b = new byte[1024];
int nRead = 0;
while ((nRead = instreams.read(b)) != -1) {
fos.write(b, 0, nRead);
}
fos.flush();
fos.close();
} catch (Exception e) {
stateInt = 0;
e.printStackTrace();
} finally {
}
}
return stateInt;
}
@Override
public void delete(List<Long> idList) {
for (Long aLong : idList) {
AmsScreenWxQrCode amsWxQrCode = wxQrCodeMapper.selectByPrimaryKey(aLong);
if (amsWxQrCode != null) {
amsWxQrCode.setDelFlag((byte) 1);
wxQrCodeMapper.updateByPrimaryKeySelective(amsWxQrCode);
}
}
}
@Override
public String export(String url, String bq) throws IOException {
File file = new File(wxQrCodeTemplate);
XWPFTemplate template = XWPFTemplate.compile(file.getAbsolutePath());
HashMap<String, Object> params = new HashMap<>();
PictureRenderData pictureRenderData = Pictures.ofLocal("/home/acupuncture/server" + url).size(430, 430).create();
params.put("pic", pictureRenderData);
params.put("bq", bq);
Long l = System.currentTimeMillis();
//成图
template.render(params);
//word转pdf
String filePath = "/home/acupuncture/server/profile/upload/WxQrCode" + l + ".docx";
template.writeAndClose(Files.newOutputStream(Paths.get(filePath)));
return "/profile/upload/WxQrCode" + l + ".docx";
}
@Override
public List<AmsWxQrCodeVo.ScreenResult> queryList(Long hospitalId) {
return wxQrCodeDao.selectScreenList(hospitalId == null ? null : CollectionUtil.newArrayList(hospitalId));
}
@Override
public List<AmsWxQrCodeVo.ScreenResult> adminQueryList(Long hospitalId) {
return wxQrCodeDao.adminSelectScreenList(hospitalId == null ? null : CollectionUtil.newArrayList(hospitalId));
}
// @Override
// public List<AmsWxQrCodeVo.ScreenResult> queryList(Long hospitalId) {
// if (SecurityUtils.getUserId() == 1) {
// return wxQrCodeDao.selectScreen(hospitalId);
// } else {
// Long deptId = SecurityUtils.getDeptId();
// if (deptId == null) {
// return null;
// }
// SysDept sysDept = deptService.selectDeptById(deptId);
// if (sysDept == null) {
// return null;
// }
// AmsHospitalExample amsHospitalExample = new AmsHospitalExample();
// amsHospitalExample.createCriteria().andDeptIdEqualTo(sysDept.getParentId()).andDelFlagEqualTo((byte) 0);
// List<AmsHospital> amsHospitals = hospitalMapper.selectByExample(amsHospitalExample);
// if (CollectionUtil.isEmpty(amsHospitals)) {
// return null;
// }
// hospitalId = amsHospitals.get(0).getId();
// }
// return wxQrCodeDao.selectScreen(hospitalId);
// }
@Override
public List<AmsWxQrCodeVo.ScreenResult> queryScreenList() {
return wxQrCodeDao.selectScreen(null);
}
@Override
public AmsScreenWxQrCode add(AmsWxQrCodeDto.ScreenInsert screenInsert) throws Exception {
AmsScreenWxQrCodeExample amsScreenWxQrCodeExample = new AmsScreenWxQrCodeExample();
amsScreenWxQrCodeExample.createCriteria().andTenantIdEqualTo(screenInsert.getTenantId());
AmsScreenWxQrCode amsScreenWxQrCode1 = new AmsScreenWxQrCode();
amsScreenWxQrCode1.setDelFlag((byte) 1);
wxQrCodeMapper.updateByExampleSelective(amsScreenWxQrCode1, amsScreenWxQrCodeExample);
AmsScreenWxQrCode amsScreenWxQrCode = BeanUtil.copyProperties(screenInsert, AmsScreenWxQrCode.class);
String fileName = System.currentTimeMillis() + ".jpg";
String url = "/home/acupuncture/server/profile/upload/qrCode" + fileName;
File file = FileUtil.file(url);
cn.hutool.extra.qrcode.QrCodeUtil.generate(amsScreenWxQrCode.getPath(), 450, 450, file);
// amsScreenWxQrCode.setHospitalId();
if (amsScreenWxQrCode.getId() == null) {
amsScreenWxQrCode.setId(IdUtil.getSnowflakeNextId());
amsScreenWxQrCode.setUrl("/profile/upload/qrCode" + fileName);
amsScreenWxQrCode.setCreateBy(SecurityUtils.getUsername());
amsScreenWxQrCode.setDelFlag((byte) 0);
amsScreenWxQrCode.setCreateTime(new Date());
wxQrCodeMapper.insertSelective(amsScreenWxQrCode);
} else {
amsScreenWxQrCode.setUpdateTime(new Date());
amsScreenWxQrCode.setUrl("/profile/upload/" + QrCodeUtil.urlToQRCode(amsScreenWxQrCode.getPath(), "/home/acupuncture/server/profile/upload"));
amsScreenWxQrCode.setDelFlag((byte) 0);
wxQrCodeMapper.updateByPrimaryKeySelective(amsScreenWxQrCode);
}
return amsScreenWxQrCode;
}
@Override
public void deleteScreen(List<Long> idList) {
for (Long aLong : idList) {
AmsScreenWxQrCode amsWxQrCode = wxQrCodeMapper.selectByPrimaryKey(aLong);
if (amsWxQrCode != null) {
amsWxQrCode.setDelFlag((byte) 1);
wxQrCodeMapper.updateByPrimaryKeySelective(amsWxQrCode);
}
}
}
@Override
public String exportScreen(String url, Long hostpitalId) throws IOException {
DmsTenant amsHospital = dmsTenantMapper.selectByPrimaryKey(hostpitalId);
AmsScreenWxQrCodeExample amsScreenWxQrCodeExample = new AmsScreenWxQrCodeExample();
amsScreenWxQrCodeExample.createCriteria().andTenantIdEqualTo(hostpitalId).andDelFlagEqualTo((byte) 0);
List<AmsScreenWxQrCode> amsScreenWxQrCodes = wxQrCodeMapper.selectByExample(amsScreenWxQrCodeExample);
if (CollectionUtil.isNotEmpty(amsScreenWxQrCodes)) {
url = amsScreenWxQrCodes.get(0).getUrl();
}
File file = new File(screenQrCodeTemplate);
XWPFTemplate template = XWPFTemplate.compile(file.getAbsolutePath());
HashMap<String, Object> params = new HashMap<>();
PictureRenderData pictureRenderData = Pictures.ofLocal("/home/acupuncture/server" + url).size(200, 200).create();
params.put("pic", pictureRenderData);
String hospitalName = "";
if (amsHospital != null) {
hospitalName = amsHospital.getName();
}
params.put("hospitalName", hospitalName);
Long l = System.currentTimeMillis();
//成图
template.render(params);
//word转pdf
String filePath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查二维码.docx";
template.writeAndClose(Files.newOutputStream(Paths.get(filePath)));
String pdfPath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查二维码.pdf";
AsposeUtils.doc2pdf(filePath, pdfPath);
return "/profile/upload/" + hospitalName + "卒中筛查二维码.pdf";
}
@Override
public String adminExportScreen(String url, Long hostpitalId) throws IOException {
DmsTenant amsHospital = dmsUserDao.queryById(hostpitalId);
AmsWxQrCodeVo.Result result = wxQrCodeDao.queryById(hostpitalId);
if (result == null) {
throw new BaseException("未找到数据");
}
url = result.getUrl();
File file = new File(screenQrCodeTemplate);
XWPFTemplate template = XWPFTemplate.compile(file.getAbsolutePath());
HashMap<String, Object> params = new HashMap<>();
PictureRenderData pictureRenderData = Pictures.ofLocal("/home/acupuncture/server" + url).size(200, 200).create();
params.put("pic", pictureRenderData);
String hospitalName = "";
if (amsHospital != null) {
hospitalName = amsHospital.getName();
}
params.put("hospitalName", hospitalName);
Long l = System.currentTimeMillis();
//成图
template.render(params);
//word转pdf
String filePath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查二维码.docx";
template.writeAndClose(Files.newOutputStream(Paths.get(filePath)));
String pdfPath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查二维码.pdf";
AsposeUtils.doc2pdf(filePath, pdfPath);
return "/profile/upload/" + hospitalName + "卒中筛查二维码.pdf";
}
@Override
public String exportHbScreen(String url, Long hostpitalId) throws IOException {
DmsTenant amsHospital = dmsTenantMapper.selectByPrimaryKey(hostpitalId);
File file = new File(hbTemplate);
XWPFTemplate template = XWPFTemplate.compile(file.getAbsolutePath());
HashMap<String, Object> params = new HashMap<>();
PictureRenderData pictureRenderData = Pictures.ofLocal("/home/acupuncture/server" + url).size(113, 113).create();
params.put("pic", pictureRenderData);
String hospitalName = "";
if (amsHospital != null) {
hospitalName = amsHospital.getName();
}
params.put("hospitalName", hospitalName);
Long l = System.currentTimeMillis();
//成图
template.render(params);
//word转pdf
String filePath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查海报二维码.docx";
template.writeAndClose(Files.newOutputStream(Paths.get(filePath)));
String pdfPath = "/home/acupuncture/server/profile/upload/" + hospitalName + "卒中筛查海报二维码.pdf";
AsposeUtils.doc2pdf(filePath, pdfPath);
return "/profile/upload/" + hospitalName + "卒中筛查海报二维码.pdf";
}
}

28
acupuncture-system/src/main/resources/mapper/dao/ExternalDao.xml

@ -0,0 +1,28 @@
<?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.acupuncture.system.persist.dao.ExternalDao">
<select id="select" resultType="com.acupuncture.system.domain.vo.ExternalVo$Result"
parameterType="com.acupuncture.system.domain.dto.ExternalDto$Query">
select
t.visit_number as memberid,
t.name as name,
t.gender as sex,
t.birth_date as birthYear,
t.phone as phone,
t.tenant_id as gid
from
pms_treatment t
left join
pms_patient p on t.patient_id = p.id
<where>
t.del_flag = 0
<if test="query.memberid != null and query.memberid != ''">
and t.visit_number = #{query.memberid}
</if>
<if test="query.from != null and query.from != ''">
and t.tenant_id = #{query.from}
</if>
</where>
</select>
</mapper>

1
acupuncture-system/src/main/resources/mapper/dao/PmsTreatmentDao.xml

@ -99,6 +99,7 @@
left join
dms_tenant d on t.tenant_id = d.id
where t.del_flag = 0
and t.status = 2
<if test="query.tenantId != null">
AND t.tenant_id = #{query.tenantId}
</if>

38
acupuncture-system/src/main/resources/mapper/dao/ScreeningDao.xml

@ -0,0 +1,38 @@
<?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.acupuncture.system.persist.dao.ScreeningDao">
<select id="queryByTime" resultType="com.acupuncture.system.domain.vo.QuestionnaireVo$WriteStatus">
SELECT
id,
questionnaire_name as questionnaireName,
`type`,
start_time AS `start`,
end_time AS `end`,
write_start_time as writeStartTime,
write_end_time as writeEndTime,
created_at as createdAt,
rec_status as recStatus,
data_scope as dataScope
FROM
scr_screening AS q
WHERE
rec_status = 0
</select>
<select id="countSubmit" resultType="Long">
SELECT
count(*)
FROM
scr_screening q,
scr_screening_detail d
WHERE
q.id = d.questionnaire_id
AND q.type = #{type}
AND q.write_start_time &lt;= #{time}
AND q.write_end_time &gt;= #{time}
AND d.user_id = #{userId}
AND d.submit_status = 1
AND q.rec_status = 0
AND d.rec_status = 0
</select>
</mapper>

169
acupuncture-system/src/main/resources/mapper/dao/ScreeningDetailDao.xml

@ -0,0 +1,169 @@
<?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.acupuncture.system.persist.dao.ScreeningDetailDao">
<select id="querySubmitStatus" resultType="java.lang.Integer">
SELECT submit_status
FROM scr_questionnaire_detail AS qd
WHERE qd.user_id = #{userId}
AND questionnaire_id = #{qid}
AND qd.rec_status = 0
</select>
<select id="queryIsExist" resultType="com.acupuncture.system.domain.vo.QuestionnaireVo$DetailInfo">
SELECT q.id,
qd.id AS detailId
FROM scr_questionnaire AS q
LEFT JOIN scr_questionnaire_detail AS qd ON q.id = qd.questionnaire_id
AND qd.rec_status = 0
AND qd.user_id = #{userId}
WHERE q.write_start_time &lt; #{time}
AND q.write_end_time &gt; #{time}
AND q.type = #{type}
AND q.rec_status = 0
</select>
<select id="queryDetailIsExist" resultType="java.lang.Long">
SELECT id
FROM scr_screening_detail
WHERE del_flag = 0
AND question_code = #{code}
AND record_id = #{detailId}
</select>
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.vo.ScrScreenVo$Result">
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="name" jdbcType="VARCHAR" property="name"/>
<result column="idcard" jdbcType="VARCHAR" property="idcard"/>
<result column="age" jdbcType="INTEGER" property="age"/>
<result column="phone" jdbcType="VARCHAR" property="phone"/>
<result column="city" jdbcType="VARCHAR" property="city"/>
<result column="county" jdbcType="VARCHAR" property="county"/>
<result column="province" jdbcType="VARCHAR" property="province"/>
<result column="hospital_level" jdbcType="TINYINT" property="hospitalLevel"/>
<result column="tenantName" jdbcType="VARCHAR" property="tenantName"/>
<result column="departments" jdbcType="VARCHAR" property="departments"/>
<result column="user_id" jdbcType="BIGINT" property="userId"/>
<result column="screen_id" jdbcType="BIGINT" property="screenId"/>
<result column="submit_status" jdbcType="TINYINT" property="submitStatus"/>
<result column="position_id" jdbcType="BIGINT" property="positionId"/>
<result column="tenant_id" jdbcType="BIGINT" property="tenantId"/>
<result column="rzsc_result" jdbcType="INTEGER" property="rzscResult"/>
<result column="screen_type" jdbcType="TINYINT" property="screenType"/>
<result column="screen_result" jdbcType="VARCHAR" property="screenResult"/>
<result column="del_flag" jdbcType="TINYINT" property="delFlag"/>
<result column="create_by" jdbcType="VARCHAR" property="createBy"/>
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<!-- <collection property="detailList"-->
<!-- ofType="com.acupuncture.system.domain.vo.ScrScreenVo$ScreeningDetailVo">-->
<!-- <id column="detailId" property="detailId"/>-->
<!-- <result column="question_code" property="questionCode"/>-->
<!-- <result column="answer" property="answer"/>-->
<!-- <result column="record_id" property="recordId"/>-->
<!-- </collection>-->
</resultMap>
<select id="queryResult" resultMap="BaseResultMap" parameterType="com.acupuncture.system.domain.dto.ScreeningDto$Query">
select r.*,
t.name as tenantName
from
scr_screening_record r
left join
dms_tenant t on r.tenant_id = t.id
<where>
r.del_flag = 0
<if test="type != null">
and r.screen_type = #{type}
</if>
<if test="param.keywords != null and param.keywords != ''">
<if test="param.keywords.length() &gt; 0">
and (
r.name like concat('%', #{param.keywords}, '%')
or r.pinyin_full like concat('%', #{param.keywords}, '%')
or r.pinyin_simple like concat('%', #{param.keywords}, '%')
or r.idcard like concat('%', #{param.keywords}, '%')
or r.phone like concat('%', #{param.keywords}, '%')
)
</if>
</if>
<if test="param.startTime != null and param.startTime != ''">
and r.create_time &gt;= #{param.startTime}
</if>
<if test="param.endTime != null and param.endTime != ''">
and r.create_time &lt;= #{param.endTime}
</if>
<if test="param.startAge != null and param.endAge != ''">
and r.age between #{param.startAge} and #{param.endAge}
</if>
</where>
-- group by r.id
order by r.create_time desc
</select>
<select id="adminQueryResult" resultMap="BaseResultMap" parameterType="com.acupuncture.system.domain.dto.ScreeningDto$Query">
select r.*,
t.name as tenantName
from
v_scr_screening_record r
left join
dms_tenant t on r.tenant_id = t.id
<where>
r.del_flag = 0
<if test="type != null">
and r.screen_type = #{type}
</if>
<if test="param.keywords != null and param.keywords != ''">
<if test="param.keywords.length() &gt; 0">
and (
r.name like concat('%', #{param.keywords}, '%')
or r.pinyin_full like concat('%', #{param.keywords}, '%')
or r.pinyin_simple like concat('%', #{param.keywords}, '%')
or r.idcard like concat('%', #{param.keywords}, '%')
or r.phone like concat('%', #{param.keywords}, '%')
)
</if>
</if>
<if test="param.tenantId != null">
and r.tenant_id = #{param.tenantId}
</if>
<if test="param.startTime != null and param.startTime != ''">
and r.create_time &gt;= #{param.startTime}
</if>
<if test="param.endTime != null and param.endTime != ''">
and r.create_time &lt;= #{param.endTime}
</if>
<if test="param.startAge != null and param.endAge != ''">
and r.age between #{param.startAge} and #{param.endAge}
</if>
</where>
-- group by r.id
order by r.create_time desc
</select>
<select id="queryDetailList" resultType="com.acupuncture.system.domain.vo.ScrScreenVo$ScreeningDetailVo">
select id as detailId,
question_code as questionCode,
answer,
record_id as recordId
from scr_screening_detail
where del_flag = 0
and record_id in
<foreach collection="detailIdList" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</select>
<select id="adminQueryDetailList" resultType="com.acupuncture.system.domain.vo.ScrScreenVo$ScreeningDetailVo">
select id as detailId,
question_code as questionCode,
answer,
record_id as recordId
from v_scr_screening_detail
where del_flag = 0
and record_id in
<foreach collection="detailIdList" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</select>
</mapper>

14
acupuncture-system/src/main/resources/mapper/dao/SysPowerDao.xml

@ -2,6 +2,20 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.acupuncture.system.persist.dao.DmsUserDao">
<select id="queryById" resultType="com.acupuncture.system.domain.po.DmsTenant">
select id,
tenant_id as tenantId,
user_name as userName,
password,
nick_name as nickName,
email,
phonenumber,
sex,
status
from dms_tenant
where id = #{id}
</select>
<select id="selectUserByUserName" resultType="com.acupuncture.system.domain.vo.DmsLoginUserVo$DmsUserVo">
select
id,

3
acupuncture-system/src/main/resources/mapper/dao/UmsDataSourceDao.xml

@ -21,6 +21,9 @@
t.del_flag = 0
and
s.del_flag = 0
<if test="tenantId != null">
and t.id = #{tenantId}
</if>
group by
t.id
</select>

131
acupuncture-system/src/main/resources/mapper/dao/WxQrCodeDao.xml

@ -0,0 +1,131 @@
<?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.acupuncture.system.persist.dao.WxQrCodeDao">
<select id="queryById" resultType="com.acupuncture.system.domain.vo.AmsWxQrCodeVo$Result">
select
id,
url,
path
from
v_ams_screen_wx_qr_code
where
tenant_id = #{id}
and del_flag = 0
</select>
<select id="select" resultType="com.acupuncture.system.domain.vo.AmsWxQrCodeVo$Result">
SELECT
c.id,
c.url,
c.path,
c.dept_id as deptId,
c.disease_id as diseaseId,
c.user_name as userName,
c.remark,
c.create_time as createTime,
c.create_by as createBy,
a.`name` as areaName,
d.`name` as deptName
FROM
ams_wx_qr_code c
LEFT JOIN yzc_disease_area a ON c.disease_id = a.id
LEFT JOIN yzc_department d ON d.id = c.dept_id
<where>
c.del_flag = 0
<if test="diseaseId != null">
AND c.disease_id = #{diseaseId}
</if>
<if test="deptId != null">
AND c.dept_id = #{deptId}
</if>
</where>
order by c.create_time desc
</select>
<select id="selectScreen" resultType="com.acupuncture.system.domain.vo.AmsWxQrCodeVo$ScreenResult">
SELECT
c.id,
c.url,
c.path,
c.tenant_id as tenantId,
c.remark,
c.create_time as createTime,
c.create_by as createBy,
c.contacts,
c.phone,
c.address,
h.name as tenantName
FROM
ams_screen_wx_qr_code c
left join dms_tenant h on c.tenant_id = h.id
<where>
c.del_flag = 0
and c.center_id is null
<if test="hospitalId != null">
AND c.hospital_id = #{hospitalId}
</if>
</where>
GROUP BY c.id
order by c.create_time desc
</select>
<select id="selectScreenList" resultType="com.acupuncture.system.domain.vo.AmsWxQrCodeVo$ScreenResult">
SELECT
c.id,
c.url,
c.path,
c.tenant_id as tenantId,
c.remark,
c.create_time as createTime,
c.create_by as createBy,
c.contacts,
c.phone,
c.address,
h.name as tenantName
FROM
ams_screen_wx_qr_code c
left join dms_tenant h on c.tenant_id = h.id
<where>
c.del_flag = 0
and c.center_id is null
<if test="hospitalIdList != null and hospitalIdList.size() > 0">
AND c.tenant_id in
<foreach collection="hospitalIdList" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</if>
</where>
GROUP BY c.id
order by c.create_time desc
</select>
<select id="adminSelectScreenList" resultType="com.acupuncture.system.domain.vo.AmsWxQrCodeVo$ScreenResult">
SELECT
c.id,
c.url,
c.path,
c.tenant_id as tenantId,
c.remark,
c.create_time as createTime,
c.create_by as createBy,
c.contacts,
c.phone,
c.address,
h.name as tenantName
FROM
v_ams_screen_wx_qr_code c
left join dms_tenant h on c.tenant_id = h.id
<where>
c.del_flag = 0
and c.center_id is null
<if test="hospitalIdList != null and hospitalIdList.size() > 0">
AND c.tenant_id in
<foreach collection="hospitalIdList" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</if>
</where>
GROUP BY c.id
order by c.create_time desc
</select>
</mapper>

347
acupuncture-system/src/main/resources/mapper/system/AmsScreenWxQrCodeMapper.xml

@ -0,0 +1,347 @@
<?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.acupuncture.system.persist.mapper.AmsScreenWxQrCodeMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.AmsScreenWxQrCode">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="url" jdbcType="VARCHAR" property="url" />
<result column="path" jdbcType="VARCHAR" property="path" />
<result column="tenant_id" jdbcType="BIGINT" property="tenantId" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="del_flag" jdbcType="TINYINT" property="delFlag" />
<result column="contacts" jdbcType="VARCHAR" property="contacts" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="address" jdbcType="VARCHAR" property="address" />
<result column="center_id" jdbcType="BIGINT" property="centerId" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, url, path, tenant_id, remark, create_by, create_time, update_by, update_time,
del_flag, contacts, phone, address, center_id
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCodeExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from ams_screen_wx_qr_code
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from ams_screen_wx_qr_code
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from ams_screen_wx_qr_code
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCode">
insert into ams_screen_wx_qr_code (id, url, path,
tenant_id, remark, create_by,
create_time, update_by, update_time,
del_flag, contacts, phone,
address, center_id)
values (#{id,jdbcType=BIGINT}, #{url,jdbcType=VARCHAR}, #{path,jdbcType=VARCHAR},
#{tenantId,jdbcType=BIGINT}, #{remark,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR},
#{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
#{delFlag,jdbcType=TINYINT}, #{contacts,jdbcType=VARCHAR}, #{phone,jdbcType=VARCHAR},
#{address,jdbcType=VARCHAR}, #{centerId,jdbcType=BIGINT})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCode">
insert into ams_screen_wx_qr_code
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="url != null">
url,
</if>
<if test="path != null">
path,
</if>
<if test="tenantId != null">
tenant_id,
</if>
<if test="remark != null">
remark,
</if>
<if test="createBy != null">
create_by,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateBy != null">
update_by,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="delFlag != null">
del_flag,
</if>
<if test="contacts != null">
contacts,
</if>
<if test="phone != null">
phone,
</if>
<if test="address != null">
address,
</if>
<if test="centerId != null">
center_id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="url != null">
#{url,jdbcType=VARCHAR},
</if>
<if test="path != null">
#{path,jdbcType=VARCHAR},
</if>
<if test="tenantId != null">
#{tenantId,jdbcType=BIGINT},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="createBy != null">
#{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
#{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=TINYINT},
</if>
<if test="contacts != null">
#{contacts,jdbcType=VARCHAR},
</if>
<if test="phone != null">
#{phone,jdbcType=VARCHAR},
</if>
<if test="address != null">
#{address,jdbcType=VARCHAR},
</if>
<if test="centerId != null">
#{centerId,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCodeExample" resultType="java.lang.Long">
select count(*) from ams_screen_wx_qr_code
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update ams_screen_wx_qr_code
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.url != null">
url = #{record.url,jdbcType=VARCHAR},
</if>
<if test="record.path != null">
path = #{record.path,jdbcType=VARCHAR},
</if>
<if test="record.tenantId != null">
tenant_id = #{record.tenantId,jdbcType=BIGINT},
</if>
<if test="record.remark != null">
remark = #{record.remark,jdbcType=VARCHAR},
</if>
<if test="record.createBy != null">
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
<if test="record.createTime != null">
create_time = #{record.createTime,jdbcType=TIMESTAMP},
</if>
<if test="record.updateBy != null">
update_by = #{record.updateBy,jdbcType=VARCHAR},
</if>
<if test="record.updateTime != null">
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
</if>
<if test="record.delFlag != null">
del_flag = #{record.delFlag,jdbcType=TINYINT},
</if>
<if test="record.contacts != null">
contacts = #{record.contacts,jdbcType=VARCHAR},
</if>
<if test="record.phone != null">
phone = #{record.phone,jdbcType=VARCHAR},
</if>
<if test="record.address != null">
address = #{record.address,jdbcType=VARCHAR},
</if>
<if test="record.centerId != null">
center_id = #{record.centerId,jdbcType=BIGINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update ams_screen_wx_qr_code
set id = #{record.id,jdbcType=BIGINT},
url = #{record.url,jdbcType=VARCHAR},
path = #{record.path,jdbcType=VARCHAR},
tenant_id = #{record.tenantId,jdbcType=BIGINT},
remark = #{record.remark,jdbcType=VARCHAR},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=TIMESTAMP},
update_by = #{record.updateBy,jdbcType=VARCHAR},
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
del_flag = #{record.delFlag,jdbcType=TINYINT},
contacts = #{record.contacts,jdbcType=VARCHAR},
phone = #{record.phone,jdbcType=VARCHAR},
address = #{record.address,jdbcType=VARCHAR},
center_id = #{record.centerId,jdbcType=BIGINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCode">
update ams_screen_wx_qr_code
<set>
<if test="url != null">
url = #{url,jdbcType=VARCHAR},
</if>
<if test="path != null">
path = #{path,jdbcType=VARCHAR},
</if>
<if test="tenantId != null">
tenant_id = #{tenantId,jdbcType=BIGINT},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="createBy != null">
create_by = #{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
update_by = #{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=TINYINT},
</if>
<if test="contacts != null">
contacts = #{contacts,jdbcType=VARCHAR},
</if>
<if test="phone != null">
phone = #{phone,jdbcType=VARCHAR},
</if>
<if test="address != null">
address = #{address,jdbcType=VARCHAR},
</if>
<if test="centerId != null">
center_id = #{centerId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.AmsScreenWxQrCode">
update ams_screen_wx_qr_code
set url = #{url,jdbcType=VARCHAR},
path = #{path,jdbcType=VARCHAR},
tenant_id = #{tenantId,jdbcType=BIGINT},
remark = #{remark,jdbcType=VARCHAR},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_time = #{updateTime,jdbcType=TIMESTAMP},
del_flag = #{delFlag,jdbcType=TINYINT},
contacts = #{contacts,jdbcType=VARCHAR},
phone = #{phone,jdbcType=VARCHAR},
address = #{address,jdbcType=VARCHAR},
center_id = #{centerId,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

237
acupuncture-system/src/main/resources/mapper/system/ScrScreeningDetailMapper.xml

@ -0,0 +1,237 @@
<?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.acupuncture.system.persist.mapper.ScrScreeningDetailMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.ScrScreeningDetail">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="record_id" jdbcType="BIGINT" property="recordId" />
<result column="question_code" jdbcType="VARCHAR" property="questionCode" />
<result column="answer" jdbcType="VARCHAR" property="answer" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="del_flag" jdbcType="TINYINT" property="delFlag" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, record_id, question_code, answer, created_at, updated_at, del_flag
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetailExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from scr_screening_detail
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from scr_screening_detail
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from scr_screening_detail
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetail">
insert into scr_screening_detail (id, record_id, question_code,
answer, created_at, updated_at,
del_flag)
values (#{id,jdbcType=BIGINT}, #{recordId,jdbcType=BIGINT}, #{questionCode,jdbcType=VARCHAR},
#{answer,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP},
#{delFlag,jdbcType=TINYINT})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetail">
insert into scr_screening_detail
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="recordId != null">
record_id,
</if>
<if test="questionCode != null">
question_code,
</if>
<if test="answer != null">
answer,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="delFlag != null">
del_flag,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="recordId != null">
#{recordId,jdbcType=BIGINT},
</if>
<if test="questionCode != null">
#{questionCode,jdbcType=VARCHAR},
</if>
<if test="answer != null">
#{answer,jdbcType=VARCHAR},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=TINYINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetailExample" resultType="java.lang.Long">
select count(*) from scr_screening_detail
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update scr_screening_detail
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.recordId != null">
record_id = #{record.recordId,jdbcType=BIGINT},
</if>
<if test="record.questionCode != null">
question_code = #{record.questionCode,jdbcType=VARCHAR},
</if>
<if test="record.answer != null">
answer = #{record.answer,jdbcType=VARCHAR},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.delFlag != null">
del_flag = #{record.delFlag,jdbcType=TINYINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update scr_screening_detail
set id = #{record.id,jdbcType=BIGINT},
record_id = #{record.recordId,jdbcType=BIGINT},
question_code = #{record.questionCode,jdbcType=VARCHAR},
answer = #{record.answer,jdbcType=VARCHAR},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
del_flag = #{record.delFlag,jdbcType=TINYINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetail">
update scr_screening_detail
<set>
<if test="recordId != null">
record_id = #{recordId,jdbcType=BIGINT},
</if>
<if test="questionCode != null">
question_code = #{questionCode,jdbcType=VARCHAR},
</if>
<if test="answer != null">
answer = #{answer,jdbcType=VARCHAR},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=TINYINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.ScrScreeningDetail">
update scr_screening_detail
set record_id = #{recordId,jdbcType=BIGINT},
question_code = #{questionCode,jdbcType=VARCHAR},
answer = #{answer,jdbcType=VARCHAR},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
del_flag = #{delFlag,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

285
acupuncture-system/src/main/resources/mapper/system/ScrScreeningDrawMapper.xml

@ -0,0 +1,285 @@
<?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.acupuncture.system.persist.mapper.ScrScreeningDrawMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.ScrScreeningDraw">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="record_id" jdbcType="VARCHAR" property="recordId" />
<result column="scale_id" jdbcType="VARCHAR" property="scaleId" />
<result column="question_id" jdbcType="INTEGER" property="questionId" />
<result column="url" jdbcType="INTEGER" property="url" />
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, record_id, scale_id, question_id, url, create_by, create_time, update_by, update_time,
remark
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningDrawExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from scr_screening_draw
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from scr_screening_draw
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from scr_screening_draw
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.ScrScreeningDraw">
insert into scr_screening_draw (id, record_id, scale_id,
question_id, url, create_by,
create_time, update_by, update_time,
remark)
values (#{id,jdbcType=BIGINT}, #{recordId,jdbcType=VARCHAR}, #{scaleId,jdbcType=VARCHAR},
#{questionId,jdbcType=INTEGER}, #{url,jdbcType=INTEGER}, #{createBy,jdbcType=VARCHAR},
#{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
#{remark,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningDraw">
insert into scr_screening_draw
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="recordId != null">
record_id,
</if>
<if test="scaleId != null">
scale_id,
</if>
<if test="questionId != null">
question_id,
</if>
<if test="url != null">
url,
</if>
<if test="createBy != null">
create_by,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateBy != null">
update_by,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="remark != null">
remark,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="recordId != null">
#{recordId,jdbcType=VARCHAR},
</if>
<if test="scaleId != null">
#{scaleId,jdbcType=VARCHAR},
</if>
<if test="questionId != null">
#{questionId,jdbcType=INTEGER},
</if>
<if test="url != null">
#{url,jdbcType=INTEGER},
</if>
<if test="createBy != null">
#{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
#{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningDrawExample" resultType="java.lang.Long">
select count(*) from scr_screening_draw
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update scr_screening_draw
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.recordId != null">
record_id = #{record.recordId,jdbcType=VARCHAR},
</if>
<if test="record.scaleId != null">
scale_id = #{record.scaleId,jdbcType=VARCHAR},
</if>
<if test="record.questionId != null">
question_id = #{record.questionId,jdbcType=INTEGER},
</if>
<if test="record.url != null">
url = #{record.url,jdbcType=INTEGER},
</if>
<if test="record.createBy != null">
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
<if test="record.createTime != null">
create_time = #{record.createTime,jdbcType=TIMESTAMP},
</if>
<if test="record.updateBy != null">
update_by = #{record.updateBy,jdbcType=VARCHAR},
</if>
<if test="record.updateTime != null">
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
</if>
<if test="record.remark != null">
remark = #{record.remark,jdbcType=VARCHAR},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update scr_screening_draw
set id = #{record.id,jdbcType=BIGINT},
record_id = #{record.recordId,jdbcType=VARCHAR},
scale_id = #{record.scaleId,jdbcType=VARCHAR},
question_id = #{record.questionId,jdbcType=INTEGER},
url = #{record.url,jdbcType=INTEGER},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=TIMESTAMP},
update_by = #{record.updateBy,jdbcType=VARCHAR},
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
remark = #{record.remark,jdbcType=VARCHAR}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningDraw">
update scr_screening_draw
<set>
<if test="recordId != null">
record_id = #{recordId,jdbcType=VARCHAR},
</if>
<if test="scaleId != null">
scale_id = #{scaleId,jdbcType=VARCHAR},
</if>
<if test="questionId != null">
question_id = #{questionId,jdbcType=INTEGER},
</if>
<if test="url != null">
url = #{url,jdbcType=INTEGER},
</if>
<if test="createBy != null">
create_by = #{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
update_by = #{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.ScrScreeningDraw">
update scr_screening_draw
set record_id = #{recordId,jdbcType=VARCHAR},
scale_id = #{scaleId,jdbcType=VARCHAR},
question_id = #{questionId,jdbcType=INTEGER},
url = #{url,jdbcType=INTEGER},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_time = #{updateTime,jdbcType=TIMESTAMP},
remark = #{remark,jdbcType=VARCHAR}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

300
acupuncture-system/src/main/resources/mapper/system/ScrScreeningMapper.xml

@ -0,0 +1,300 @@
<?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.acupuncture.system.persist.mapper.ScrScreeningMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.ScrScreening">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="questionnaire_name" jdbcType="VARCHAR" property="questionnaireName" />
<result column="start_time" jdbcType="BIGINT" property="startTime" />
<result column="end_time" jdbcType="BIGINT" property="endTime" />
<result column="type" jdbcType="TINYINT" property="type" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="write_start_time" jdbcType="BIGINT" property="writeStartTime" />
<result column="write_end_time" jdbcType="BIGINT" property="writeEndTime" />
<result column="data_scope" jdbcType="VARCHAR" property="dataScope" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, questionnaire_name, start_time, end_time, type, created_at, updated_at, rec_status,
write_start_time, write_end_time, data_scope
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from scr_screening
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from scr_screening
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from scr_screening
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.ScrScreening">
insert into scr_screening (id, questionnaire_name, start_time,
end_time, type, created_at,
updated_at, rec_status, write_start_time,
write_end_time, data_scope)
values (#{id,jdbcType=BIGINT}, #{questionnaireName,jdbcType=VARCHAR}, #{startTime,jdbcType=BIGINT},
#{endTime,jdbcType=BIGINT}, #{type,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}, #{writeStartTime,jdbcType=BIGINT},
#{writeEndTime,jdbcType=BIGINT}, #{dataScope,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.ScrScreening">
insert into scr_screening
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="questionnaireName != null">
questionnaire_name,
</if>
<if test="startTime != null">
start_time,
</if>
<if test="endTime != null">
end_time,
</if>
<if test="type != null">
type,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
<if test="writeStartTime != null">
write_start_time,
</if>
<if test="writeEndTime != null">
write_end_time,
</if>
<if test="dataScope != null">
data_scope,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="questionnaireName != null">
#{questionnaireName,jdbcType=VARCHAR},
</if>
<if test="startTime != null">
#{startTime,jdbcType=BIGINT},
</if>
<if test="endTime != null">
#{endTime,jdbcType=BIGINT},
</if>
<if test="type != null">
#{type,jdbcType=TINYINT},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
<if test="writeStartTime != null">
#{writeStartTime,jdbcType=BIGINT},
</if>
<if test="writeEndTime != null">
#{writeEndTime,jdbcType=BIGINT},
</if>
<if test="dataScope != null">
#{dataScope,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningExample" resultType="java.lang.Long">
select count(*) from scr_screening
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update scr_screening
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.questionnaireName != null">
questionnaire_name = #{record.questionnaireName,jdbcType=VARCHAR},
</if>
<if test="record.startTime != null">
start_time = #{record.startTime,jdbcType=BIGINT},
</if>
<if test="record.endTime != null">
end_time = #{record.endTime,jdbcType=BIGINT},
</if>
<if test="record.type != null">
type = #{record.type,jdbcType=TINYINT},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
<if test="record.writeStartTime != null">
write_start_time = #{record.writeStartTime,jdbcType=BIGINT},
</if>
<if test="record.writeEndTime != null">
write_end_time = #{record.writeEndTime,jdbcType=BIGINT},
</if>
<if test="record.dataScope != null">
data_scope = #{record.dataScope,jdbcType=VARCHAR},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update scr_screening
set id = #{record.id,jdbcType=BIGINT},
questionnaire_name = #{record.questionnaireName,jdbcType=VARCHAR},
start_time = #{record.startTime,jdbcType=BIGINT},
end_time = #{record.endTime,jdbcType=BIGINT},
type = #{record.type,jdbcType=TINYINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT},
write_start_time = #{record.writeStartTime,jdbcType=BIGINT},
write_end_time = #{record.writeEndTime,jdbcType=BIGINT},
data_scope = #{record.dataScope,jdbcType=VARCHAR}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.ScrScreening">
update scr_screening
<set>
<if test="questionnaireName != null">
questionnaire_name = #{questionnaireName,jdbcType=VARCHAR},
</if>
<if test="startTime != null">
start_time = #{startTime,jdbcType=BIGINT},
</if>
<if test="endTime != null">
end_time = #{endTime,jdbcType=BIGINT},
</if>
<if test="type != null">
type = #{type,jdbcType=TINYINT},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
<if test="writeStartTime != null">
write_start_time = #{writeStartTime,jdbcType=BIGINT},
</if>
<if test="writeEndTime != null">
write_end_time = #{writeEndTime,jdbcType=BIGINT},
</if>
<if test="dataScope != null">
data_scope = #{dataScope,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.ScrScreening">
update scr_screening
set questionnaire_name = #{questionnaireName,jdbcType=VARCHAR},
start_time = #{startTime,jdbcType=BIGINT},
end_time = #{endTime,jdbcType=BIGINT},
type = #{type,jdbcType=TINYINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT},
write_start_time = #{writeStartTime,jdbcType=BIGINT},
write_end_time = #{writeEndTime,jdbcType=BIGINT},
data_scope = #{dataScope,jdbcType=VARCHAR}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

552
acupuncture-system/src/main/resources/mapper/system/ScrScreeningRecordMapper.xml

@ -0,0 +1,552 @@
<?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.acupuncture.system.persist.mapper.ScrScreeningRecordMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.ScrScreeningRecord">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="idcard" jdbcType="VARCHAR" property="idcard" />
<result column="age" jdbcType="INTEGER" property="age" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="city" jdbcType="VARCHAR" property="city" />
<result column="county" jdbcType="VARCHAR" property="county" />
<result column="province" jdbcType="VARCHAR" property="province" />
<result column="hospital_level" jdbcType="TINYINT" property="hospitalLevel" />
<result column="hospital_name" jdbcType="VARCHAR" property="hospitalName" />
<result column="departments" jdbcType="VARCHAR" property="departments" />
<result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="screen_id" jdbcType="BIGINT" property="screenId" />
<result column="submit_status" jdbcType="TINYINT" property="submitStatus" />
<result column="position_id" jdbcType="BIGINT" property="positionId" />
<result column="tenant_id" jdbcType="BIGINT" property="tenantId" />
<result column="rzsc_result" jdbcType="INTEGER" property="rzscResult" />
<result column="screen_type" jdbcType="TINYINT" property="screenType" />
<result column="screen_result" jdbcType="VARCHAR" property="screenResult" />
<result column="del_flag" jdbcType="TINYINT" property="delFlag" />
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="pinyin_full" jdbcType="VARCHAR" property="pinyinFull" />
<result column="pinyin_simple" jdbcType="VARCHAR" property="pinyinSimple" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, name, idcard, age, phone, city, county, province, hospital_level, hospital_name,
departments, user_id, screen_id, submit_status, position_id, tenant_id, rzsc_result,
screen_type, screen_result, del_flag, create_by, create_time, update_by, update_time,
remark, pinyin_full, pinyin_simple
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecordExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from scr_screening_record
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from scr_screening_record
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from scr_screening_record
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecord">
insert into scr_screening_record (id, name, idcard,
age, phone, city, county,
province, hospital_level, hospital_name,
departments, user_id, screen_id,
submit_status, position_id, tenant_id,
rzsc_result, screen_type, screen_result,
del_flag, create_by, create_time,
update_by, update_time, remark,
pinyin_full, pinyin_simple)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{idcard,jdbcType=VARCHAR},
#{age,jdbcType=INTEGER}, #{phone,jdbcType=VARCHAR}, #{city,jdbcType=VARCHAR}, #{county,jdbcType=VARCHAR},
#{province,jdbcType=VARCHAR}, #{hospitalLevel,jdbcType=TINYINT}, #{hospitalName,jdbcType=VARCHAR},
#{departments,jdbcType=VARCHAR}, #{userId,jdbcType=BIGINT}, #{screenId,jdbcType=BIGINT},
#{submitStatus,jdbcType=TINYINT}, #{positionId,jdbcType=BIGINT}, #{tenantId,jdbcType=BIGINT},
#{rzscResult,jdbcType=INTEGER}, #{screenType,jdbcType=TINYINT}, #{screenResult,jdbcType=VARCHAR},
#{delFlag,jdbcType=TINYINT}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP},
#{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR},
#{pinyinFull,jdbcType=VARCHAR}, #{pinyinSimple,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecord">
insert into scr_screening_record
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="name != null">
name,
</if>
<if test="idcard != null">
idcard,
</if>
<if test="age != null">
age,
</if>
<if test="phone != null">
phone,
</if>
<if test="city != null">
city,
</if>
<if test="county != null">
county,
</if>
<if test="province != null">
province,
</if>
<if test="hospitalLevel != null">
hospital_level,
</if>
<if test="hospitalName != null">
hospital_name,
</if>
<if test="departments != null">
departments,
</if>
<if test="userId != null">
user_id,
</if>
<if test="screenId != null">
screen_id,
</if>
<if test="submitStatus != null">
submit_status,
</if>
<if test="positionId != null">
position_id,
</if>
<if test="tenantId != null">
tenant_id,
</if>
<if test="rzscResult != null">
rzsc_result,
</if>
<if test="screenType != null">
screen_type,
</if>
<if test="screenResult != null">
screen_result,
</if>
<if test="delFlag != null">
del_flag,
</if>
<if test="createBy != null">
create_by,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateBy != null">
update_by,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="remark != null">
remark,
</if>
<if test="pinyinFull != null">
pinyin_full,
</if>
<if test="pinyinSimple != null">
pinyin_simple,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="name != null">
#{name,jdbcType=VARCHAR},
</if>
<if test="idcard != null">
#{idcard,jdbcType=VARCHAR},
</if>
<if test="age != null">
#{age,jdbcType=INTEGER},
</if>
<if test="phone != null">
#{phone,jdbcType=VARCHAR},
</if>
<if test="city != null">
#{city,jdbcType=VARCHAR},
</if>
<if test="county != null">
#{county,jdbcType=VARCHAR},
</if>
<if test="province != null">
#{province,jdbcType=VARCHAR},
</if>
<if test="hospitalLevel != null">
#{hospitalLevel,jdbcType=TINYINT},
</if>
<if test="hospitalName != null">
#{hospitalName,jdbcType=VARCHAR},
</if>
<if test="departments != null">
#{departments,jdbcType=VARCHAR},
</if>
<if test="userId != null">
#{userId,jdbcType=BIGINT},
</if>
<if test="screenId != null">
#{screenId,jdbcType=BIGINT},
</if>
<if test="submitStatus != null">
#{submitStatus,jdbcType=TINYINT},
</if>
<if test="positionId != null">
#{positionId,jdbcType=BIGINT},
</if>
<if test="tenantId != null">
#{tenantId,jdbcType=BIGINT},
</if>
<if test="rzscResult != null">
#{rzscResult,jdbcType=INTEGER},
</if>
<if test="screenType != null">
#{screenType,jdbcType=TINYINT},
</if>
<if test="screenResult != null">
#{screenResult,jdbcType=VARCHAR},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=TINYINT},
</if>
<if test="createBy != null">
#{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
#{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="pinyinFull != null">
#{pinyinFull,jdbcType=VARCHAR},
</if>
<if test="pinyinSimple != null">
#{pinyinSimple,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecordExample" resultType="java.lang.Long">
select count(*) from scr_screening_record
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update scr_screening_record
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.name != null">
name = #{record.name,jdbcType=VARCHAR},
</if>
<if test="record.idcard != null">
idcard = #{record.idcard,jdbcType=VARCHAR},
</if>
<if test="record.age != null">
age = #{record.age,jdbcType=INTEGER},
</if>
<if test="record.phone != null">
phone = #{record.phone,jdbcType=VARCHAR},
</if>
<if test="record.city != null">
city = #{record.city,jdbcType=VARCHAR},
</if>
<if test="record.county != null">
county = #{record.county,jdbcType=VARCHAR},
</if>
<if test="record.province != null">
province = #{record.province,jdbcType=VARCHAR},
</if>
<if test="record.hospitalLevel != null">
hospital_level = #{record.hospitalLevel,jdbcType=TINYINT},
</if>
<if test="record.hospitalName != null">
hospital_name = #{record.hospitalName,jdbcType=VARCHAR},
</if>
<if test="record.departments != null">
departments = #{record.departments,jdbcType=VARCHAR},
</if>
<if test="record.userId != null">
user_id = #{record.userId,jdbcType=BIGINT},
</if>
<if test="record.screenId != null">
screen_id = #{record.screenId,jdbcType=BIGINT},
</if>
<if test="record.submitStatus != null">
submit_status = #{record.submitStatus,jdbcType=TINYINT},
</if>
<if test="record.positionId != null">
position_id = #{record.positionId,jdbcType=BIGINT},
</if>
<if test="record.tenantId != null">
tenant_id = #{record.tenantId,jdbcType=BIGINT},
</if>
<if test="record.rzscResult != null">
rzsc_result = #{record.rzscResult,jdbcType=INTEGER},
</if>
<if test="record.screenType != null">
screen_type = #{record.screenType,jdbcType=TINYINT},
</if>
<if test="record.screenResult != null">
screen_result = #{record.screenResult,jdbcType=VARCHAR},
</if>
<if test="record.delFlag != null">
del_flag = #{record.delFlag,jdbcType=TINYINT},
</if>
<if test="record.createBy != null">
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
<if test="record.createTime != null">
create_time = #{record.createTime,jdbcType=TIMESTAMP},
</if>
<if test="record.updateBy != null">
update_by = #{record.updateBy,jdbcType=VARCHAR},
</if>
<if test="record.updateTime != null">
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
</if>
<if test="record.remark != null">
remark = #{record.remark,jdbcType=VARCHAR},
</if>
<if test="record.pinyinFull != null">
pinyin_full = #{record.pinyinFull,jdbcType=VARCHAR},
</if>
<if test="record.pinyinSimple != null">
pinyin_simple = #{record.pinyinSimple,jdbcType=VARCHAR},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update scr_screening_record
set id = #{record.id,jdbcType=BIGINT},
name = #{record.name,jdbcType=VARCHAR},
idcard = #{record.idcard,jdbcType=VARCHAR},
age = #{record.age,jdbcType=INTEGER},
phone = #{record.phone,jdbcType=VARCHAR},
city = #{record.city,jdbcType=VARCHAR},
county = #{record.county,jdbcType=VARCHAR},
province = #{record.province,jdbcType=VARCHAR},
hospital_level = #{record.hospitalLevel,jdbcType=TINYINT},
hospital_name = #{record.hospitalName,jdbcType=VARCHAR},
departments = #{record.departments,jdbcType=VARCHAR},
user_id = #{record.userId,jdbcType=BIGINT},
screen_id = #{record.screenId,jdbcType=BIGINT},
submit_status = #{record.submitStatus,jdbcType=TINYINT},
position_id = #{record.positionId,jdbcType=BIGINT},
tenant_id = #{record.tenantId,jdbcType=BIGINT},
rzsc_result = #{record.rzscResult,jdbcType=INTEGER},
screen_type = #{record.screenType,jdbcType=TINYINT},
screen_result = #{record.screenResult,jdbcType=VARCHAR},
del_flag = #{record.delFlag,jdbcType=TINYINT},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=TIMESTAMP},
update_by = #{record.updateBy,jdbcType=VARCHAR},
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
remark = #{record.remark,jdbcType=VARCHAR},
pinyin_full = #{record.pinyinFull,jdbcType=VARCHAR},
pinyin_simple = #{record.pinyinSimple,jdbcType=VARCHAR}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecord">
update scr_screening_record
<set>
<if test="name != null">
name = #{name,jdbcType=VARCHAR},
</if>
<if test="idcard != null">
idcard = #{idcard,jdbcType=VARCHAR},
</if>
<if test="age != null">
age = #{age,jdbcType=INTEGER},
</if>
<if test="phone != null">
phone = #{phone,jdbcType=VARCHAR},
</if>
<if test="city != null">
city = #{city,jdbcType=VARCHAR},
</if>
<if test="county != null">
county = #{county,jdbcType=VARCHAR},
</if>
<if test="province != null">
province = #{province,jdbcType=VARCHAR},
</if>
<if test="hospitalLevel != null">
hospital_level = #{hospitalLevel,jdbcType=TINYINT},
</if>
<if test="hospitalName != null">
hospital_name = #{hospitalName,jdbcType=VARCHAR},
</if>
<if test="departments != null">
departments = #{departments,jdbcType=VARCHAR},
</if>
<if test="userId != null">
user_id = #{userId,jdbcType=BIGINT},
</if>
<if test="screenId != null">
screen_id = #{screenId,jdbcType=BIGINT},
</if>
<if test="submitStatus != null">
submit_status = #{submitStatus,jdbcType=TINYINT},
</if>
<if test="positionId != null">
position_id = #{positionId,jdbcType=BIGINT},
</if>
<if test="tenantId != null">
tenant_id = #{tenantId,jdbcType=BIGINT},
</if>
<if test="rzscResult != null">
rzsc_result = #{rzscResult,jdbcType=INTEGER},
</if>
<if test="screenType != null">
screen_type = #{screenType,jdbcType=TINYINT},
</if>
<if test="screenResult != null">
screen_result = #{screenResult,jdbcType=VARCHAR},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=TINYINT},
</if>
<if test="createBy != null">
create_by = #{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
update_by = #{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="pinyinFull != null">
pinyin_full = #{pinyinFull,jdbcType=VARCHAR},
</if>
<if test="pinyinSimple != null">
pinyin_simple = #{pinyinSimple,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.ScrScreeningRecord">
update scr_screening_record
set name = #{name,jdbcType=VARCHAR},
idcard = #{idcard,jdbcType=VARCHAR},
age = #{age,jdbcType=INTEGER},
phone = #{phone,jdbcType=VARCHAR},
city = #{city,jdbcType=VARCHAR},
county = #{county,jdbcType=VARCHAR},
province = #{province,jdbcType=VARCHAR},
hospital_level = #{hospitalLevel,jdbcType=TINYINT},
hospital_name = #{hospitalName,jdbcType=VARCHAR},
departments = #{departments,jdbcType=VARCHAR},
user_id = #{userId,jdbcType=BIGINT},
screen_id = #{screenId,jdbcType=BIGINT},
submit_status = #{submitStatus,jdbcType=TINYINT},
position_id = #{positionId,jdbcType=BIGINT},
tenant_id = #{tenantId,jdbcType=BIGINT},
rzsc_result = #{rzscResult,jdbcType=INTEGER},
screen_type = #{screenType,jdbcType=TINYINT},
screen_result = #{screenResult,jdbcType=VARCHAR},
del_flag = #{delFlag,jdbcType=TINYINT},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_time = #{updateTime,jdbcType=TIMESTAMP},
remark = #{remark,jdbcType=VARCHAR},
pinyin_full = #{pinyinFull,jdbcType=VARCHAR},
pinyin_simple = #{pinyinSimple,jdbcType=VARCHAR}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

300
acupuncture-system/src/main/resources/mapper/system/UplReportImageMapper.xml

@ -0,0 +1,300 @@
<?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.acupuncture.system.persist.mapper.UplReportImageMapper">
<resultMap id="BaseResultMap" type="com.acupuncture.system.domain.po.UplReportImage">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="member_id" jdbcType="VARCHAR" property="memberId" />
<result column="file_name" jdbcType="VARCHAR" property="fileName" />
<result column="file_path" jdbcType="VARCHAR" property="filePath" />
<result column="del_flag" jdbcType="TINYINT" property="delFlag" />
<result column="tenant_id" jdbcType="BIGINT" property="tenantId" />
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, member_id, file_name, file_path, del_flag, tenant_id, create_by, create_time,
update_by, update_time, remark
</sql>
<select id="selectByExample" parameterType="com.acupuncture.system.domain.po.UplReportImageExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from upl_report_image
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from upl_report_image
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from upl_report_image
where id = #{id,jdbcType=BIGINT}
</delete>
<insert id="insert" parameterType="com.acupuncture.system.domain.po.UplReportImage">
insert into upl_report_image (id, member_id, file_name,
file_path, del_flag, tenant_id,
create_by, create_time, update_by,
update_time, remark)
values (#{id,jdbcType=BIGINT}, #{memberId,jdbcType=VARCHAR}, #{fileName,jdbcType=VARCHAR},
#{filePath,jdbcType=VARCHAR}, #{delFlag,jdbcType=TINYINT}, #{tenantId,jdbcType=BIGINT},
#{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR},
#{updateTime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.acupuncture.system.domain.po.UplReportImage">
insert into upl_report_image
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="memberId != null">
member_id,
</if>
<if test="fileName != null">
file_name,
</if>
<if test="filePath != null">
file_path,
</if>
<if test="delFlag != null">
del_flag,
</if>
<if test="tenantId != null">
tenant_id,
</if>
<if test="createBy != null">
create_by,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateBy != null">
update_by,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="remark != null">
remark,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="memberId != null">
#{memberId,jdbcType=VARCHAR},
</if>
<if test="fileName != null">
#{fileName,jdbcType=VARCHAR},
</if>
<if test="filePath != null">
#{filePath,jdbcType=VARCHAR},
</if>
<if test="delFlag != null">
#{delFlag,jdbcType=TINYINT},
</if>
<if test="tenantId != null">
#{tenantId,jdbcType=BIGINT},
</if>
<if test="createBy != null">
#{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
#{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.acupuncture.system.domain.po.UplReportImageExample" resultType="java.lang.Long">
select count(*) from upl_report_image
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update upl_report_image
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.memberId != null">
member_id = #{record.memberId,jdbcType=VARCHAR},
</if>
<if test="record.fileName != null">
file_name = #{record.fileName,jdbcType=VARCHAR},
</if>
<if test="record.filePath != null">
file_path = #{record.filePath,jdbcType=VARCHAR},
</if>
<if test="record.delFlag != null">
del_flag = #{record.delFlag,jdbcType=TINYINT},
</if>
<if test="record.tenantId != null">
tenant_id = #{record.tenantId,jdbcType=BIGINT},
</if>
<if test="record.createBy != null">
create_by = #{record.createBy,jdbcType=VARCHAR},
</if>
<if test="record.createTime != null">
create_time = #{record.createTime,jdbcType=TIMESTAMP},
</if>
<if test="record.updateBy != null">
update_by = #{record.updateBy,jdbcType=VARCHAR},
</if>
<if test="record.updateTime != null">
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
</if>
<if test="record.remark != null">
remark = #{record.remark,jdbcType=VARCHAR},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update upl_report_image
set id = #{record.id,jdbcType=BIGINT},
member_id = #{record.memberId,jdbcType=VARCHAR},
file_name = #{record.fileName,jdbcType=VARCHAR},
file_path = #{record.filePath,jdbcType=VARCHAR},
del_flag = #{record.delFlag,jdbcType=TINYINT},
tenant_id = #{record.tenantId,jdbcType=BIGINT},
create_by = #{record.createBy,jdbcType=VARCHAR},
create_time = #{record.createTime,jdbcType=TIMESTAMP},
update_by = #{record.updateBy,jdbcType=VARCHAR},
update_time = #{record.updateTime,jdbcType=TIMESTAMP},
remark = #{record.remark,jdbcType=VARCHAR}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.acupuncture.system.domain.po.UplReportImage">
update upl_report_image
<set>
<if test="memberId != null">
member_id = #{memberId,jdbcType=VARCHAR},
</if>
<if test="fileName != null">
file_name = #{fileName,jdbcType=VARCHAR},
</if>
<if test="filePath != null">
file_path = #{filePath,jdbcType=VARCHAR},
</if>
<if test="delFlag != null">
del_flag = #{delFlag,jdbcType=TINYINT},
</if>
<if test="tenantId != null">
tenant_id = #{tenantId,jdbcType=BIGINT},
</if>
<if test="createBy != null">
create_by = #{createBy,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateBy != null">
update_by = #{updateBy,jdbcType=VARCHAR},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.acupuncture.system.domain.po.UplReportImage">
update upl_report_image
set member_id = #{memberId,jdbcType=VARCHAR},
file_name = #{fileName,jdbcType=VARCHAR},
file_path = #{filePath,jdbcType=VARCHAR},
del_flag = #{delFlag,jdbcType=TINYINT},
tenant_id = #{tenantId,jdbcType=BIGINT},
create_by = #{createBy,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_time = #{updateTime,jdbcType=TIMESTAMP},
remark = #{remark,jdbcType=VARCHAR}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

1545
acupuncture-system/src/main/resources/mapper/system/UplRtcfInfoMapper.xml

File diff suppressed because it is too large

2
pom.xml

@ -152,7 +152,7 @@
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
<version>4.1.2</version>
</dependency>
<!-- velocity代码生成使用模板 -->

Loading…
Cancel
Save