From f9d8566992da001aa797b59cf48d19505e7f72a5 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Wed, 24 Nov 2021 16:19:26 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BF=AE=E6=94=B9,=E6=80=A5=E6=95=91=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=AF=BC=E5=87=BA,=E6=9A=82=E4=B8=8D=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E7=94=9F=E4=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/DataStatisticsController.java | 34 ++- .../carbasics/bean/dto/StatisticsDto.java | 10 + .../carbasics/bean/vo/StatisticsVo.java | 13 + .../persist/dao/DataStatisticsDao.java | 20 +- .../carbasics/persist/dao/FirstAidDao.java | 9 + .../persist/dao/OrganizationDao.java | 8 + .../persist/dao/QuestionnaireDao.java | 7 + .../service/DataStatisticsService.java | 68 +++-- .../carbasics/service/ExportService.java | 28 +- .../carbasics/service/FirstAidService.java | 16 +- .../service/IDataStatisticsService.java | 19 +- src/main/resources/application.yml | 4 +- .../mapper_dao/DataStatisticsDao.xml | 239 +++++++++++++++++- src/main/resources/mapper_dao/FirstAidDao.xml | 104 ++++++++ .../resources/mapper_dao/OrganizationDao.xml | 17 ++ .../resources/mapper_dao/QuestionnaireDao.xml | 13 + 16 files changed, 533 insertions(+), 76 deletions(-) diff --git a/src/main/java/com/ccsens/carbasics/api/DataStatisticsController.java b/src/main/java/com/ccsens/carbasics/api/DataStatisticsController.java index 55416a0..69d7013 100644 --- a/src/main/java/com/ccsens/carbasics/api/DataStatisticsController.java +++ b/src/main/java/com/ccsens/carbasics/api/DataStatisticsController.java @@ -33,12 +33,22 @@ public class DataStatisticsController { @Resource private IDataStatisticsService dataStatisticsService; + @MustLogin + @ApiOperation(value = "查询统计的问卷", notes = "") + @RequestMapping(value = "/queryQuestionnaire", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> queryQuestionnaire(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + log.info("查询统计的问卷开始{}",params); + List result = dataStatisticsService.queryQuestionnaire(params.getUserId()); + log.info("查询统计的问卷结束:{}",result); + return JsonResponse.newInstance().ok(result); + } + @MustLogin @ApiOperation(value = "静脉溶栓率统计", notes = "") @RequestMapping(value = "/jmrs", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse statisticsJmrs(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse statisticsJmrs(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("静脉溶栓率统计开始{}",params); - StatisticsVo.JmrsUpResult result = dataStatisticsService.statisticsJmrs(params.getUserId()); + StatisticsVo.JmrsUpResult result = dataStatisticsService.statisticsJmrs(params.getParam(),params.getUserId()); log.info("静脉溶栓率统计结束:{}",result); return JsonResponse.newInstance().ok(result); } @@ -67,9 +77,9 @@ public class DataStatisticsController { @MustLogin @ApiOperation(value = "DNT总统计数据", notes = "") @RequestMapping(value = "/dntTotalStatistics", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse dntTotalStatistics(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse dntTotalStatistics(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("DNT总统计数据开始{}",params); - StatisticsVo.DntTotalStatistics result = dataStatisticsService.dntTotalStatistics(params.getUserId()); + StatisticsVo.DntTotalStatistics result = dataStatisticsService.dntTotalStatistics(params.getParam(),params.getUserId()); log.info("DNT总统计数据结束:{}",result); return JsonResponse.newInstance().ok(result); } @@ -97,9 +107,9 @@ public class DataStatisticsController { @MustLogin @ApiOperation(value = "sich发生率总统计", notes = "") @RequestMapping(value = "/sichTotal", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse sichTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse sichTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("sich发生率总统计开始{}",params); - StatisticsVo.SichTotal result = dataStatisticsService.sichTotal(params.getUserId()); + StatisticsVo.SichTotal result = dataStatisticsService.sichTotal(params.getParam(),params.getUserId()); log.info("sich发生率总统计结束:{}",result); return JsonResponse.newInstance().ok(result); } @@ -127,9 +137,9 @@ public class DataStatisticsController { @MustLogin @ApiOperation(value = "血管内治疗率的总统计", notes = "") @RequestMapping(value = "/xgzlTotal", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse xgzlTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse xgzlTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("血管内治疗率的总统计开始{}",params); - StatisticsVo.XgzlTotal result = dataStatisticsService.xgzlTotal(params.getUserId()); + StatisticsVo.XgzlTotal result = dataStatisticsService.xgzlTotal(params.getParam(),params.getUserId()); log.info("血管内治疗率的总统计结束:{}",result); return JsonResponse.newInstance().ok(result); } @@ -157,9 +167,9 @@ public class DataStatisticsController { @MustLogin @ApiOperation(value = "DPT总统计", notes = "") @RequestMapping(value = "/dptTotal", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse dptTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse dptTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("DPT总统计开始{}",params); - StatisticsVo.DptTotal result = dataStatisticsService.dptTotal(params.getUserId()); + StatisticsVo.DptTotal result = dataStatisticsService.dptTotal(params.getParam(),params.getUserId()); log.info("DPT总统计结束:{}",result); return JsonResponse.newInstance().ok(result); } @@ -187,9 +197,9 @@ public class DataStatisticsController { @MustLogin @ApiOperation(value = "PRT总统计", notes = "") @RequestMapping(value = "/prtTotal", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse prtTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + public JsonResponse prtTotal(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ log.info("PRT总统计开始{}",params); - StatisticsVo.PrtTotal result = dataStatisticsService.prtTotal(params.getUserId()); + StatisticsVo.PrtTotal result = dataStatisticsService.prtTotal(params.getParam(),params.getUserId()); log.info("PRT总统计结束:{}",result); return JsonResponse.newInstance().ok(result); } diff --git a/src/main/java/com/ccsens/carbasics/bean/dto/StatisticsDto.java b/src/main/java/com/ccsens/carbasics/bean/dto/StatisticsDto.java index c3e5983..b22004c 100644 --- a/src/main/java/com/ccsens/carbasics/bean/dto/StatisticsDto.java +++ b/src/main/java/com/ccsens/carbasics/bean/dto/StatisticsDto.java @@ -32,6 +32,14 @@ public class StatisticsDto { private Long id; } + + @Data + @ApiModel("查询总统计-入参") + public static class QueryTotal { + @ApiModelProperty("问卷id") + private Long qid; + } + @Data @ApiModel("查询静脉溶栓达标率") public static class QueryStandards { @@ -45,5 +53,7 @@ public class StatisticsDto { private Byte queryLevel; @ApiModelProperty("市id") private Long areaId; + @ApiModelProperty("问卷id") + private Long qid; } } diff --git a/src/main/java/com/ccsens/carbasics/bean/vo/StatisticsVo.java b/src/main/java/com/ccsens/carbasics/bean/vo/StatisticsVo.java index d603379..7ff3148 100644 --- a/src/main/java/com/ccsens/carbasics/bean/vo/StatisticsVo.java +++ b/src/main/java/com/ccsens/carbasics/bean/vo/StatisticsVo.java @@ -315,4 +315,17 @@ public class StatisticsVo { @ApiModelProperty("PRT>60min例数") private String prt61Number; } + + @Data + @ApiModel("统计的问卷信息-返参") + public static class QuestionnaireInfo { + @ApiModelProperty("问卷id") + private Long qid; + @ApiModelProperty("问卷名称") + private String questionnaireName; + @ApiModelProperty("开始时间") + private Long startTime; + @ApiModelProperty("结束时间") + private Long endTime; + } } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/DataStatisticsDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/DataStatisticsDao.java index 3af0241..6671958 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/DataStatisticsDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/DataStatisticsDao.java @@ -14,7 +14,7 @@ public interface DataStatisticsDao { * 静脉溶栓统计(全部/二级/三级) * @return 静脉溶栓统计 */ - StatisticsVo.JmrsUpResult statisticsJmrs(); + StatisticsVo.JmrsUpResult statisticsJmrs(@Param("qid") Long qid); /** * 查询各医院溶栓率 @@ -22,27 +22,27 @@ public interface DataStatisticsDao { * @param areaId 市id * @return 二级医院溶栓率 */ - List queryJmrsForHospital(@Param("type")Byte type,@Param("areaId") Long areaId); + List queryJmrsForHospital(@Param("type")Byte type,@Param("areaId") Long areaId,@Param("qid") Long qid); /** * 查询各市溶栓率 * @param type 查询类型(0-三级,1-二级) * @return 三级医院溶栓率 */ - List queryJmrslForCity(@Param("type") Byte type); + List queryJmrslForCity(@Param("type") Byte type,@Param("qid") Long qid); /** * DNT总统记(DNT≤60min的比例/DNT≤45min的比例) * @return DNT总统记(DNT≤60min的比例/DNT≤45min的比例) */ - StatisticsVo.DntTotalStatistics dntTotalStatistics(); + StatisticsVo.DntTotalStatistics dntTotalStatistics(@Param("qid") Long qid); /** * 查询DNT概要统计 * * @return DNT概要统计 */ - StatisticsVo.DntSynopsis dntSynopsis(@Param("queryType") Byte queryType,@Param("queryLevel") Byte queryLevel,@Param("areaId") Long areaId); + StatisticsVo.DntSynopsis dntSynopsis(@Param("queryType") Byte queryType,@Param("queryLevel") Byte queryLevel,@Param("areaId") Long areaId,@Param("qid") Long qid); /** * 查询具体DNT统计(城市) @@ -62,7 +62,7 @@ public interface DataStatisticsDao { * 查询sich总统计率 * @return sich总统计率 */ - StatisticsVo.SichTotal sichTotal(); + StatisticsVo.SichTotal sichTotal(@Param("qid") Long qid); /** * 查询sich概要统计 @@ -71,7 +71,7 @@ public interface DataStatisticsDao { * @param areaId 市id * @return 查询sich概要统计 */ - StatisticsVo.SichSynopsis sichSynopsis(@Param("queryType") Byte queryType,@Param("queryLevel") Byte queryLevel,@Param("areaId") Long areaId); + StatisticsVo.SichSynopsis sichSynopsis(@Param("queryType") Byte queryType,@Param("queryLevel") Byte queryLevel,@Param("areaId") Long areaId,@Param("qid") Long qid); /** * 查询sich具体统计率 @@ -90,7 +90,7 @@ public interface DataStatisticsDao { * 查询血管治疗总统记 * @return 血管治疗总统记 */ - StatisticsVo.XgzlTotal xgzlTotal(); + StatisticsVo.XgzlTotal xgzlTotal(@Param("qid") Long qid); /** * 查询血管治疗具体统计 @@ -117,7 +117,7 @@ public interface DataStatisticsDao { * 查询DPT总统记 * @return DPT总统记 */ - StatisticsVo.DptTotal dptTotal(); + StatisticsVo.DptTotal dptTotal(@Param("qid") Long qid); /** * DPT概要统计 @@ -144,7 +144,7 @@ public interface DataStatisticsDao { * 查询PRT总统记 * @return PRT总统记 */ - StatisticsVo.PrtTotal prtTotal(); + StatisticsVo.PrtTotal prtTotal(@Param("qid") Long qid); /** * PRT概要统计 diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/FirstAidDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/FirstAidDao.java index 338db45..f5589fc 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/FirstAidDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/FirstAidDao.java @@ -77,4 +77,13 @@ public interface FirstAidDao extends FirstAidMapper { * @return 四家医院的病例列表 */ List queryNeedHospital(@Param("startTime") Long startTime); + + /** + * 质检员查看急救列表 + * @param departmentIdList 部门idList + * @param departmentIdStr 部门id字符串 + * @param param 参数 + * @return 急救列表 + */ + List queryPatientListByQualityNew(@Param("departmentIdList") List departmentIdList,@Param("departmentIdStr") String departmentIdStr,@Param("param") PatientDto.QueryListByQuality param); } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java index 3ecb9ac..0951f14 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationDao.java @@ -127,4 +127,12 @@ public interface OrganizationDao extends OrganizationMapper { * @return 0否,1是 */ Integer queryUserIsExist(@Param("departmentName") String departmentName,@Param("positionName") String positionName,@Param("name") String name,@Param("userId") Long userId); + + /** + * 查询用户所在的部门及下级部门 + * @param projectId 项目id + * @param userId 用户id + * @return 用户所在的部门及下级部门Id + */ + List queryDepartmentByUser(@Param("projectId") Long projectId,@Param("userId") Long userId); } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java index 51ba8ae..f9e7053 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java @@ -2,6 +2,7 @@ package com.ccsens.carbasics.persist.dao; import com.ccsens.carbasics.bean.dto.QuestionnaireDto; import com.ccsens.carbasics.bean.vo.QuestionnaireVo; +import com.ccsens.carbasics.bean.vo.StatisticsVo; import com.ccsens.carbasics.persist.mapper.QuestionnaireMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -43,4 +44,10 @@ public interface QuestionnaireDao extends QuestionnaireMapper { * @return 是否提交 */ Long countSubmit(@Param("type") Byte type, @Param("time") long time, @Param("userId") Long userId); + + /** + * 查询卒中统计的问卷列表 + * @return 卒中统计的问卷列表 + */ + List queryStatistics(); } diff --git a/src/main/java/com/ccsens/carbasics/service/DataStatisticsService.java b/src/main/java/com/ccsens/carbasics/service/DataStatisticsService.java index cdf3f9b..2e45ac3 100644 --- a/src/main/java/com/ccsens/carbasics/service/DataStatisticsService.java +++ b/src/main/java/com/ccsens/carbasics/service/DataStatisticsService.java @@ -3,10 +3,12 @@ package com.ccsens.carbasics.service; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.ccsens.carbasics.bean.dto.StatisticsDto; import com.ccsens.carbasics.bean.po.QuestionnaireDataDatumLine; import com.ccsens.carbasics.bean.vo.StatisticsVo; import com.ccsens.carbasics.persist.dao.DataStatisticsDao; +import com.ccsens.carbasics.persist.dao.QuestionnaireDao; import com.ccsens.carbasics.persist.dao.QuestionnaireDataDatumLineDao; import io.swagger.annotations.ApiModelProperty; import lombok.extern.slf4j.Slf4j; @@ -29,11 +31,14 @@ public class DataStatisticsService implements IDataStatisticsService { private DataStatisticsDao dataStatisticsDao; @Resource private QuestionnaireDataDatumLineDao dataDatumLineDao; + @Resource + private QuestionnaireDao questionnaireDao; @Override - public StatisticsVo.JmrsUpResult statisticsJmrs(Long userId) { - return dataStatisticsDao.statisticsJmrs(); + public StatisticsVo.JmrsUpResult statisticsJmrs(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.JmrsUpResult jmrsUpResult = dataStatisticsDao.statisticsJmrs(param.getQid()); + return ObjectUtil.isNull(jmrsUpResult) ? new StatisticsVo.JmrsUpResult():jmrsUpResult; } @@ -56,10 +61,10 @@ public class DataStatisticsService implements IDataStatisticsService { } List areaResults = new ArrayList<>(); if (0 == param.getQueryType()) { - areaResults = dataStatisticsDao.queryJmrslForCity(param.getQueryLevel()); + areaResults = dataStatisticsDao.queryJmrslForCity(param.getQueryLevel(),param.getQid()); } if (1 == param.getQueryType()) { - areaResults = dataStatisticsDao.queryJmrsForHospital(param.getQueryLevel(),param.getAreaId()); + areaResults = dataStatisticsDao.queryJmrsForHospital(param.getQueryLevel(),param.getAreaId(),param.getQid()); } int arrive = 0; int unArrive = 0; @@ -85,8 +90,8 @@ public class DataStatisticsService implements IDataStatisticsService { List areaResults = new ArrayList<>(); if (0 == param.getQueryType()) { - areaResults = dataStatisticsDao.queryJmrslForCity(param.getQueryLevel()); - List cityJmsrl = dataStatisticsDao.queryJmrslForCity(null); + areaResults = dataStatisticsDao.queryJmrslForCity(param.getQueryLevel(),param.getQid()); + List cityJmsrl = dataStatisticsDao.queryJmrslForCity(null,param.getQid()); for (StatisticsVo.AreaResult areaResult : areaResults) { for (StatisticsVo.AreaResult result : cityJmsrl) { if (areaResult.getName().equals(result.getName())) { @@ -96,7 +101,7 @@ public class DataStatisticsService implements IDataStatisticsService { } } if (1 == param.getQueryType()) { - areaResults = dataStatisticsDao.queryJmrsForHospital(param.getQueryLevel(),param.getAreaId()); + areaResults = dataStatisticsDao.queryJmrsForHospital(param.getQueryLevel(),param.getAreaId(),param.getQid()); } areaResults.addAll(dataDatumLineList); List results = areaResults.stream().sorted(Comparator.comparing(StatisticsVo.AreaResult::getValue).reversed()).collect(Collectors.toList()); @@ -105,15 +110,17 @@ public class DataStatisticsService implements IDataStatisticsService { @Override - public StatisticsVo.DntTotalStatistics dntTotalStatistics(Long userId) { - return dataStatisticsDao.dntTotalStatistics(); + public StatisticsVo.DntTotalStatistics dntTotalStatistics(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.DntTotalStatistics dntTotalStatistics = dataStatisticsDao.dntTotalStatistics(param.getQid()); + return ObjectUtil.isNull(dntTotalStatistics) ? new StatisticsVo.DntTotalStatistics() : dntTotalStatistics; } @Override public StatisticsVo.DntSynopsis dntSynopsis(StatisticsDto.QueryStandards param, Long userId) { log.info("参数:{},{},{}",param.getQueryType(),param.getQueryLevel(),param.getAreaId()); - return dataStatisticsDao.dntSynopsis(param.getQueryType(),param.getQueryLevel(),param.getAreaId()); + StatisticsVo.DntSynopsis dntSynopsis = dataStatisticsDao.dntSynopsis(param.getQueryType(), param.getQueryLevel(), param.getAreaId(),param.getQid()); + return ObjectUtil.isNull(dntSynopsis) ? new StatisticsVo.DntSynopsis() : dntSynopsis; } @Override @@ -130,8 +137,9 @@ public class DataStatisticsService implements IDataStatisticsService { } @Override - public StatisticsVo.SichTotal sichTotal(Long userId) { - return dataStatisticsDao.sichTotal(); + public StatisticsVo.SichTotal sichTotal(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.SichTotal sichTotal = dataStatisticsDao.sichTotal(param.getQid()); + return ObjectUtil.isNull(sichTotal) ? new StatisticsVo.SichTotal() : sichTotal; } @@ -159,9 +167,11 @@ public class DataStatisticsService implements IDataStatisticsService { moreThan5++; } } - StatisticsVo.SichSynopsis sichSynopsis = dataStatisticsDao.sichSynopsis(param.getQueryType(), param.getQueryLevel(), param.getAreaId()); - sichSynopsis.setMoreThan5(moreThan5); - return sichSynopsis; + StatisticsVo.SichSynopsis sichSynopsis = dataStatisticsDao.sichSynopsis(param.getQueryType(), param.getQueryLevel(), param.getAreaId(),param.getQid()); + if (ObjectUtil.isNotNull(sichSynopsis)) { + sichSynopsis.setMoreThan5(moreThan5); + } + return ObjectUtil.isNull(sichSynopsis) ? new StatisticsVo.SichSynopsis() : sichSynopsis; } @@ -194,8 +204,9 @@ public class DataStatisticsService implements IDataStatisticsService { @Override - public StatisticsVo.XgzlTotal xgzlTotal(Long userId) { - return dataStatisticsDao.xgzlTotal(); + public StatisticsVo.XgzlTotal xgzlTotal(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.XgzlTotal xgzlTotal = dataStatisticsDao.xgzlTotal(param.getQid()); + return ObjectUtil.isNull(xgzlTotal) ? new StatisticsVo.XgzlTotal() : xgzlTotal; } @Override @@ -237,7 +248,7 @@ public class DataStatisticsService implements IDataStatisticsService { xgzlSynopsis.setThan90(arrive); } } - return xgzlSynopsis; + return ObjectUtil.isNull(xgzlSynopsis) ? new StatisticsVo.XgzlSynopsis() : xgzlSynopsis; } @@ -258,13 +269,15 @@ public class DataStatisticsService implements IDataStatisticsService { } @Override - public StatisticsVo.DptTotal dptTotal(Long userId) { - return dataStatisticsDao.dptTotal(); + public StatisticsVo.DptTotal dptTotal(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.DptTotal dptTotal = dataStatisticsDao.dptTotal(param.getQid()); + return ObjectUtil.isNull(dptTotal) ? new StatisticsVo.DptTotal() : dptTotal; } @Override public StatisticsVo.DptSynopsis dptSynopsis(StatisticsDto.QueryStandards param, Long userId) { - return dataStatisticsDao.dptSynopsis(param); + StatisticsVo.DptSynopsis dptSynopsis = dataStatisticsDao.dptSynopsis(param); + return ObjectUtil.isNull(dptSynopsis) ? new StatisticsVo.DptSynopsis() : dptSynopsis; } @@ -281,14 +294,16 @@ public class DataStatisticsService implements IDataStatisticsService { } @Override - public StatisticsVo.PrtTotal prtTotal(Long userId) { - return dataStatisticsDao.prtTotal(); + public StatisticsVo.PrtTotal prtTotal(StatisticsDto.QueryTotal param,Long userId) { + StatisticsVo.PrtTotal prtTotal = dataStatisticsDao.prtTotal(param.getQid()); + return ObjectUtil.isNull(prtTotal) ? new StatisticsVo.PrtTotal() : prtTotal; } @Override public StatisticsVo.PrtSynopsis prtSynopsis(StatisticsDto.QueryStandards param, Long userId) { - return dataStatisticsDao.prtSynopsis(param); + StatisticsVo.PrtSynopsis prtSynopsis = dataStatisticsDao.prtSynopsis(param); + return ObjectUtil.isNull(prtSynopsis) ? new StatisticsVo.PrtSynopsis() : prtSynopsis; } @@ -304,4 +319,9 @@ public class DataStatisticsService implements IDataStatisticsService { return null; } + + @Override + public List queryQuestionnaire(Long userId) { + return questionnaireDao.queryStatistics(); + } } diff --git a/src/main/java/com/ccsens/carbasics/service/ExportService.java b/src/main/java/com/ccsens/carbasics/service/ExportService.java index 7dedae7..aeb2ec7 100644 --- a/src/main/java/com/ccsens/carbasics/service/ExportService.java +++ b/src/main/java/com/ccsens/carbasics/service/ExportService.java @@ -281,7 +281,8 @@ public class ExportService implements IExportService{ list.add(firstCells); //查询数据 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); - Date parse = simpleDateFormat.parse(startTime); + SimpleDateFormat timeParam = new SimpleDateFormat("yyyy-MM-dd"); + Date parse = timeParam.parse(startTime); long time = parse.getTime(); List hospitalData = firstAidDao.queryNeedHospital(time); @@ -291,13 +292,13 @@ public class ExportService implements IExportService{ data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getHospitalName())); data.add(new PoiUtil.PoiUtilCell(simpleDateFormat.format(hospitalDatum.getCreatedAt()))); data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getId().toString())); - data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getValueType().toString())); + data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getValueType() == 0 ? "正式":"演示")); data.add(new PoiUtil.PoiUtilCell(StrUtil.isNotBlank(hospitalDatum.getName())?hospitalDatum.getName():"未填写")); data.add(new PoiUtil.PoiUtilCell(ObjectUtil.isNull(hospitalDatum.getGender())?"未填写":hospitalDatum.getGender().toString())); data.add(new PoiUtil.PoiUtilCell(ObjectUtil.isNull(hospitalDatum.getAge())?"未填写":hospitalDatum.getAge().toString())); data.add(new PoiUtil.PoiUtilCell(DesensitizedUtils.idCardNum(hospitalDatum.getIdcard()))); - data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getSaveType().toString())); - data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getDataStatus().toString())); + data.add(new PoiUtil.PoiUtilCell(hospitalDatum.getSaveType() == 0 ?"手动添加":"平车自动添加")); + data.add(new PoiUtil.PoiUtilCell(getDataStatusName(hospitalDatum.getDataStatus()))); list.add(data); } } @@ -321,4 +322,23 @@ public class ExportService implements IExportService{ // excelUrl.setPdfUrl(url); return wbs; } + + private String getDataStatusName(Byte dataStatus) { + switch (dataStatus) { + case 0: + return "急救审核通过"; + case 1: + return "急救审核拒绝"; + case 2: + return "出院审核通过"; + case 3: + return "出院审核拒绝"; + case 4: + return "申请修改"; + case 5: + return "申请拒绝"; + default: + return ""; + } + } } diff --git a/src/main/java/com/ccsens/carbasics/service/FirstAidService.java b/src/main/java/com/ccsens/carbasics/service/FirstAidService.java index 81aacc4..b6e84b1 100644 --- a/src/main/java/com/ccsens/carbasics/service/FirstAidService.java +++ b/src/main/java/com/ccsens/carbasics/service/FirstAidService.java @@ -348,14 +348,18 @@ public class FirstAidService implements IFirstAidService{ // templateList.forEach(template -> { // templates.add(template.getTemplate()); // }); - OrganizationVo.Template template = organizationDao.queryTemplate(param.getProjectId(), userId); - log.info("模板:{}", template); - if (template == null || CollectionUtil.isEmpty(template.getTemplates())) { - throw new BaseException(DefaultCodeError.NOT_TEMPLATE); - } +// OrganizationVo.Template template = organizationDao.queryTemplate(param.getProjectId(), userId); +// log.info("模板:{}", template); +// if (template == null || CollectionUtil.isEmpty(template.getTemplates())) { +// throw new BaseException(DefaultCodeError.NOT_TEMPLATE); +// } + //查找用户所在的部门及下级部门 + List departmentIdList = organizationDao.queryDepartmentByUser(param.getProjectId(),userId); + String departmentIdStr = StrUtil.join(",", departmentIdList); //查找病例信息 PageHelper.startPage(param.getPageNum(),param.getPageSize()); - List patientList = firstAidDao.queryPatientListByQuality(template.getTemplates(),template.getOrganizationId(),param); +// List patientList = firstAidDao.queryPatientListByQuality(template.getTemplates(),template.getOrganizationId(),param); + List patientList = firstAidDao.queryPatientListByQualityNew(departmentIdList,departmentIdStr,param); return new PageInfo<>(patientList); } diff --git a/src/main/java/com/ccsens/carbasics/service/IDataStatisticsService.java b/src/main/java/com/ccsens/carbasics/service/IDataStatisticsService.java index 1c1157c..391d6cd 100644 --- a/src/main/java/com/ccsens/carbasics/service/IDataStatisticsService.java +++ b/src/main/java/com/ccsens/carbasics/service/IDataStatisticsService.java @@ -15,7 +15,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return 静脉溶栓率,二/三级医院静脉溶栓率 */ - StatisticsVo.JmrsUpResult statisticsJmrs(Long userId); + StatisticsVo.JmrsUpResult statisticsJmrs(StatisticsDto.QueryTotal param,Long userId); /** * 查询静脉溶栓达标率 @@ -38,7 +38,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return DNT总统记 */ - StatisticsVo.DntTotalStatistics dntTotalStatistics(Long userId); + StatisticsVo.DntTotalStatistics dntTotalStatistics(StatisticsDto.QueryTotal param,Long userId); /** * 查询DNT概要统计 @@ -61,7 +61,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return sich 总统记 */ - StatisticsVo.SichTotal sichTotal(Long userId); + StatisticsVo.SichTotal sichTotal(StatisticsDto.QueryTotal param,Long userId); /** * sich概要统计 @@ -84,7 +84,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return 血管治疗总统记 */ - StatisticsVo.XgzlTotal xgzlTotal(Long userId); + StatisticsVo.XgzlTotal xgzlTotal(StatisticsDto.QueryTotal param,Long userId); /** * 血管治疗概要统计 @@ -107,7 +107,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return DPT 总统记 */ - StatisticsVo.DptTotal dptTotal(Long userId); + StatisticsVo.DptTotal dptTotal(StatisticsDto.QueryTotal param,Long userId); /** * dpt 概要统计 @@ -130,7 +130,7 @@ public interface IDataStatisticsService { * @param userId 用户id * @return prt 总统记 */ - StatisticsVo.PrtTotal prtTotal(Long userId); + StatisticsVo.PrtTotal prtTotal(StatisticsDto.QueryTotal param,Long userId); /** * prt概要统计 @@ -147,4 +147,11 @@ public interface IDataStatisticsService { * @return prt 具体统计 */ List prtData(StatisticsDto.QueryStandards param, Long userId); + + /** + * 查询需统计的问卷列表 + * @param userId 用户id + * @return 需统计的问卷列表 + */ + List queryQuestionnaire(Long userId); } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 5abf242..c3b11fb 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: prod - include: common, util-prod + active: test + include: common, util-test diff --git a/src/main/resources/mapper_dao/DataStatisticsDao.xml b/src/main/resources/mapper_dao/DataStatisticsDao.xml index f7dec19..35c5073 100644 --- a/src/main/resources/mapper_dao/DataStatisticsDao.xml +++ b/src/main/resources/mapper_dao/DataStatisticsDao.xml @@ -13,8 +13,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt') AS allActual, @@ -23,8 +27,12 @@ FROM t_qcp_questionnaire_record AS ais LEFT JOIN t_qcp_questionnaire_detail AS qd ON ais.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE ais.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status =0 AND qd.submit_status = 1 AND ais.question_code = 'AIS-Nnt') AS allAis, @@ -34,8 +42,12 @@ t_qcp_questionnaire_record AS twoActual LEFT JOIN t_qcp_questionnaire_record AS twoActual2 ON twoActual.questionnaire_detail_id = twoActual2.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_detail AS qd ON qd.id = twoActual.questionnaire_detail_id AND qd.id = twoActual2.questionnaire_detail_id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE twoActual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND twoActual2.rec_status = 0 AND twoActual2.answer = '二级' AND twoActual.question_code = 'actual-Nnt' @@ -46,8 +58,12 @@ t_qcp_questionnaire_record AS twoAis LEFT JOIN t_qcp_questionnaire_record AS twoAis2 ON twoAis.questionnaire_detail_id = twoAis2.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_detail AS qd ON qd.id = twoAis2.questionnaire_detail_id AND qd.id = twoAis.questionnaire_detail_id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE twoAis.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND twoAis2.rec_status = 0 AND twoAis2.answer = '二级' AND twoAis.question_code = 'AIS-Nnt' @@ -58,8 +74,12 @@ t_qcp_questionnaire_record AS threeActual LEFT JOIN t_qcp_questionnaire_record AS threeActual2 ON threeActual.questionnaire_detail_id = threeActual2.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_detail AS qd ON qd.id = threeActual.questionnaire_detail_id AND qd.id = threeActual2.questionnaire_detail_id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE threeActual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND threeActual2.rec_status = 0 AND threeActual2.answer = '三级' AND threeActual.question_code = 'actual-Nnt' @@ -70,8 +90,12 @@ t_qcp_questionnaire_record AS threeAis LEFT JOIN t_qcp_questionnaire_record AS threeAis2 ON threeAis.questionnaire_detail_id = threeAis2.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_detail AS qd ON qd.id = threeAis.questionnaire_detail_id AND qd.id = threeAis2.questionnaire_detail_id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE threeAis.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND threeAis2.rec_status = 0 AND threeAis2.answer = '三级' AND threeAis.question_code = 'AIS-Nnt' @@ -91,6 +115,7 @@ FROM t_qcp_questionnaire_record AS qr LEFT JOIN t_qcp_questionnaire_detail AS qd ON qr.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS qr2 ON qr2.questionnaire_detail_id = qr.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS qr3 ON qr3.questionnaire_detail_id = qr.questionnaire_detail_id @@ -98,6 +123,9 @@ WHERE qr.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qr.question_code = 'CITY-COUNTY' AND qd.rec_status = 0 AND qd.submit_status = 1 @@ -124,11 +152,15 @@ FROM t_qcp_questionnaire_record AS qr LEFT JOIN t_qcp_questionnaire_detail AS qd ON qr.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS qr2 ON qr2.questionnaire_detail_id = qr.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS qr3 ON qr3.questionnaire_detail_id = qr.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS qr4 ON qr4.questionnaire_detail_id = qr.questionnaire_detail_id WHERE qr.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qr.question_code = 'CITY-COUNTY' AND qd.rec_status = 0 AND qd.submit_status = 1 @@ -163,12 +195,16 @@ FROM t_qcp_questionnaire_record AS qr LEFT JOIN t_qcp_questionnaire_detail AS qd ON qr.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS qr2 ON qr2.questionnaire_detail_id = qr.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS qr3 ON qr3.questionnaire_detail_id = qr.questionnaire_detail_id WHERE qr.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qr.question_code = 'CITY-COUNTY' AND qd.rec_status = 0 AND qd.submit_status = 1 @@ -192,12 +228,16 @@ FROM t_qcp_questionnaire_record AS qr LEFT JOIN t_qcp_questionnaire_detail AS qd ON qr.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS qr2 ON qr2.questionnaire_detail_id = qr.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS qr3 ON qr3.questionnaire_detail_id = qr.questionnaire_detail_id WHERE qr.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qr.question_code = 'CITY-COUNTY' AND qd.rec_status = 0 AND qd.submit_status = 1 @@ -232,8 +272,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '45-Nnt' @@ -244,8 +288,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '60-Nnt' @@ -256,8 +304,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '61-Nnt' @@ -282,12 +334,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id - - LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id - + LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '45-Nnt' @@ -317,23 +371,23 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id - - LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id - + LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '60-Nnt' - AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' AND `level`.answer = '三级' - AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' AND `level`.answer = '二级' @@ -351,12 +405,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id - - LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id - + LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '61-Nnt' @@ -391,7 +447,6 @@ round(answer45.value40*100/(answer45.value40+answer60.value60+answer61.value61),2) AS dntLess45, round((answer45all.value40+answer60all.value60)*100/(answer45all.value40+answer60all.value60+answer61all.value61),2) AS dntLess60All, round(answer45all.value40*100/(answer45all.value40+answer60all.value60+answer61all.value61),2) AS dntLess45All - FROM ( SELECT @@ -401,10 +456,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '45-Nnt' @@ -433,10 +492,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '60-Nnt' @@ -465,10 +528,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '61-Nnt' @@ -498,9 +565,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '45-Nnt' @@ -516,9 +587,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '60-Nnt' @@ -534,9 +609,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '61-Nnt' @@ -574,11 +653,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '45-Nnt' @@ -612,11 +695,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '60-Nnt' @@ -650,11 +737,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = '61-Nnt' @@ -691,8 +782,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'sICH-Nnt' @@ -703,8 +798,12 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt' @@ -727,10 +826,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'sICH-Nnt' @@ -758,10 +861,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt' @@ -813,10 +920,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'sICH-Nnt' @@ -844,10 +955,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt' @@ -885,10 +1000,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'sICH-Nnt' @@ -904,10 +1023,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt' @@ -938,11 +1061,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'sICH-Nnt' @@ -973,10 +1100,14 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = qd.id LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = qd.id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'actual-Nnt' @@ -1018,9 +1149,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-sICH-Nnt' @@ -1034,9 +1169,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-actual-Nnt' @@ -1050,9 +1189,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-RSH-Nnt' @@ -1066,9 +1209,13 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-FIT-Nnt' @@ -1102,11 +1249,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-sICH-Nnt' @@ -1136,11 +1287,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-actual-Nnt' @@ -1170,11 +1325,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-RSH-Nnt' @@ -1204,11 +1363,15 @@ FROM t_qcp_questionnaire_record AS actual LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id WHERE actual.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND actual.question_code = 'XGZL-FIT-Nnt' @@ -1246,6 +1409,7 @@ FROM t_qcp_questionnaire_record AS answer1 LEFT JOIN t_qcp_questionnaire_detail AS qd ON answer1.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id LEFT JOIN t_area AS a ON SUBSTRING_INDEX(area.answer,',',1) = a.id @@ -1255,6 +1419,9 @@ LEFT JOIN t_qcp_questionnaire_record AS answer4 ON qd.id = answer4.questionnaire_detail_id WHERE answer1.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND answer1.question_code = 'XGZL-sICH-Nnt' @@ -1285,6 +1452,7 @@ FROM t_qcp_questionnaire_record AS answer1 LEFT JOIN t_qcp_questionnaire_detail AS qd ON answer1.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id @@ -1295,6 +1463,9 @@ LEFT JOIN t_qcp_questionnaire_record AS answer4 ON qd.id = answer4.questionnaire_detail_id WHERE answer1.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND answer1.question_code = 'XGZL-sICH-Nnt' @@ -1333,6 +1504,7 @@ FROM t_qcp_questionnaire_record AS answer1 LEFT JOIN t_qcp_questionnaire_detail AS qd ON answer1.questionnaire_detail_id = qd.id + LEFT JOIN t_qcp_questionnaire AS q ON qd.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS answer2 ON qd.id = answer2.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS answer3 ON qd.id = answer3.questionnaire_detail_id LEFT JOIN t_qcp_questionnaire_record AS answer4 ON qd.id = answer4.questionnaire_detail_id @@ -1344,6 +1516,9 @@ WHERE answer1.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND qd.rec_status = 0 AND qd.submit_status = 1 AND answer1.question_code = 'XGZL-sICH-Nnt' @@ -1380,11 +1555,15 @@ FROM t_qcp_questionnaire_record AS dpt59 LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id WHERE dpt59.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND dpt59.question_code = 'XGZL-DPT-60' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1406,6 +1585,7 @@ FROM t_qcp_questionnaire_record AS dpt59 LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id @@ -1413,6 +1593,9 @@ LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE dpt59.rec_status = 0 AND dpt59.question_code = 'XGZL-DPT-60' + + AND q.id = #{qid} AND q.rec_status = 0 + AND d.rec_status = 0 AND d.submit_status = 1 AND dpt89.rec_status = 0 AND dpt89.question_code = 'XGZL-DPT-89' @@ -1448,6 +1631,7 @@ FROM t_qcp_questionnaire_record AS dpt59 LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1455,6 +1639,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE dpt59.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND dpt59.question_code = 'XGZL-DPT-60' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1479,6 +1666,7 @@ FROM t_qcp_questionnaire_record AS dpt59 LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1487,6 +1675,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE dpt59.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND dpt59.question_code = 'XGZL-DPT-60' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1522,6 +1713,7 @@ FROM t_qcp_questionnaire_record AS dpt59 LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1531,6 +1723,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE dpt59.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND dpt59.question_code = 'XGZL-DPT-60' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1564,11 +1759,15 @@ FROM t_qcp_questionnaire_record AS prt29 LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id WHERE prt29.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND prt29.question_code = 'XGZL-PRT-29' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1590,6 +1789,7 @@ FROM t_qcp_questionnaire_record AS prt29 LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id @@ -1597,6 +1797,9 @@ LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE prt29.rec_status = 0 AND prt29.question_code = 'XGZL-PRT-29' + + AND q.id = #{qid} AND q.rec_status = 0 + AND d.rec_status = 0 AND d.submit_status = 1 AND prt59.rec_status = 0 AND prt59.question_code = 'XGZL-PRT-59' @@ -1633,6 +1836,7 @@ FROM t_qcp_questionnaire_record AS prt29 LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1640,6 +1844,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE prt29.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND prt29.question_code = 'XGZL-PRT-29' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1664,6 +1871,7 @@ FROM t_qcp_questionnaire_record AS prt29 LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1672,6 +1880,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE prt29.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND prt29.question_code = 'XGZL-PRT-29' AND d.rec_status = 0 AND d.submit_status = 1 @@ -1707,6 +1918,7 @@ FROM t_qcp_questionnaire_record AS prt29 LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id + LEFT JOIN t_qcp_questionnaire AS q ON d.questionnaire_id = q.id LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id @@ -1716,6 +1928,9 @@ LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) WHERE prt29.rec_status = 0 + + AND q.id = #{qid} AND q.rec_status = 0 + AND prt29.question_code = 'XGZL-PRT-29' AND d.rec_status = 0 AND d.submit_status = 1 diff --git a/src/main/resources/mapper_dao/FirstAidDao.xml b/src/main/resources/mapper_dao/FirstAidDao.xml index 1a590f4..d6532a1 100644 --- a/src/main/resources/mapper_dao/FirstAidDao.xml +++ b/src/main/resources/mapper_dao/FirstAidDao.xml @@ -260,4 +260,108 @@ ORDER BY f.created_at DESC + + diff --git a/src/main/resources/mapper_dao/OrganizationDao.xml b/src/main/resources/mapper_dao/OrganizationDao.xml index 5127e92..833b70a 100644 --- a/src/main/resources/mapper_dao/OrganizationDao.xml +++ b/src/main/resources/mapper_dao/OrganizationDao.xml @@ -846,4 +846,21 @@ AND `name` = #{positionName} ) + + diff --git a/src/main/resources/mapper_dao/QuestionnaireDao.xml b/src/main/resources/mapper_dao/QuestionnaireDao.xml index 24e4ccf..50b4a55 100644 --- a/src/main/resources/mapper_dao/QuestionnaireDao.xml +++ b/src/main/resources/mapper_dao/QuestionnaireDao.xml @@ -149,5 +149,18 @@ AND d.rec_status = 0 + + \ No newline at end of file From b11f71120cbf2aac463d0a53d12799ca5cf07b05 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Wed, 24 Nov 2021 16:34:56 +0800 Subject: [PATCH 2/4] Merge branch 'bfyMa' of D:\ccsens\carbasics with conflicts. --- src/main/resources/mapper_dao/FirstAidDao.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/mapper_dao/FirstAidDao.xml b/src/main/resources/mapper_dao/FirstAidDao.xml index d6532a1..6be5467 100644 --- a/src/main/resources/mapper_dao/FirstAidDao.xml +++ b/src/main/resources/mapper_dao/FirstAidDao.xml @@ -256,7 +256,7 @@ AND op.rec_status = 0 AND f.rec_status = 0 - AND f.created_at > FROM_UNIXTIME(#{startTime}/1000,'%Y-%m-%d %H:%i:%s') + AND f.created_at > FROM_UNIXTIME(#{startTime}/1000,'%Y-%m-%d %H:%i:%S') ORDER BY f.created_at DESC From 38b054d959348651373e5736439153179c468ccc Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Thu, 25 Nov 2021 11:57:09 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2/?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=80=A5=E6=95=91=E4=BF=A1=E6=81=AF=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E7=9A=84=E5=85=A5=E5=8F=82,=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E6=80=A5=E6=95=91id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../carbasics/bean/dto/FirstAidDto.java | 6 ++- .../ccsens/carbasics/bean/dto/PatientDto.java | 27 ++++++++---- .../carbasics/persist/dao/PatientDao.java | 4 +- .../service/FirstAidRecordService.java | 27 ++++++------ .../carbasics/service/FirstAidService.java | 43 ++++++++++--------- src/main/resources/mapper_dao/PatientDao.xml | 2 +- 6 files changed, 61 insertions(+), 48 deletions(-) diff --git a/src/main/java/com/ccsens/carbasics/bean/dto/FirstAidDto.java b/src/main/java/com/ccsens/carbasics/bean/dto/FirstAidDto.java index 071a201..0b3087e 100644 --- a/src/main/java/com/ccsens/carbasics/bean/dto/FirstAidDto.java +++ b/src/main/java/com/ccsens/carbasics/bean/dto/FirstAidDto.java @@ -54,7 +54,9 @@ public class FirstAidDto { @Data @ApiModel("查询项目详情--请求") public static class Project{ - @ApiModelProperty("项目ID") - private Long projectId; +// @ApiModelProperty("项目ID") +// private Long projectId; + @ApiModelProperty("急救ID") + private Long firstAidId; } } diff --git a/src/main/java/com/ccsens/carbasics/bean/dto/PatientDto.java b/src/main/java/com/ccsens/carbasics/bean/dto/PatientDto.java index 21c2f80..1c06304 100644 --- a/src/main/java/com/ccsens/carbasics/bean/dto/PatientDto.java +++ b/src/main/java/com/ccsens/carbasics/bean/dto/PatientDto.java @@ -66,9 +66,12 @@ public class PatientDto { @Data @ApiModel("批量查询急救记录") public static class QueryAidRecord{ - @NotNull(message = "项目id不能为空") - @ApiModelProperty("项目id") - private Long projectId; +// @NotNull(message = "项目id不能为空") +// @ApiModelProperty("项目id") +// private Long projectId; + @NotNull(message = "急救id不能为空") + @ApiModelProperty("急救id") + private Long firstAidId; @ApiModelProperty("code列表") private List codeList; } @@ -89,9 +92,12 @@ public class PatientDto { @Data @ApiModel("添加急救记录信息") public static class SaveAidRecordN{ - @NotNull(message = "项目id不能为空") - @ApiModelProperty("项目id") - private Long projectId; +// @NotNull(message = "项目id不能为空") +// @ApiModelProperty("项目id") +// private Long projectId; + @NotNull(message = "急救id不能为空") + @ApiModelProperty("急救id") + private Long firstAidId; @Max(value=1,message = "请查询正确的提交人类型") @ApiModelProperty("提交人类型(0平车 1人)") private byte userType = 1; @@ -136,9 +142,12 @@ public class PatientDto { @Data @ApiModel("项目id") public static class ProjectId{ - @NotNull(message = "请传入项目id") - @ApiModelProperty("项目id") - private Long projectId; +// @NotNull(message = "请传入项目id") +// @ApiModelProperty("项目id") +// private Long projectId; + @NotNull(message = "请传入急救id") + @ApiModelProperty("急救id") + private Long firstAidId; } @Data diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/PatientDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/PatientDao.java index 61c58b7..da788eb 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/PatientDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/PatientDao.java @@ -14,11 +14,11 @@ public interface PatientDao extends FirstAidRecordMapper { /** * 根据急救id查询记录信息 - * @param projectId 急救id + * @param firstAidId 急救id * @param codeList code * @return 返回急救信息 */ - List queryRecordByAidId(@Param("projectId") Long projectId, @Param("codeList") List codeList); + List queryRecordByAidId(@Param("firstAidId") Long firstAidId, @Param("codeList") List codeList); /** * 查找code下的总数量和完成数据 diff --git a/src/main/java/com/ccsens/carbasics/service/FirstAidRecordService.java b/src/main/java/com/ccsens/carbasics/service/FirstAidRecordService.java index 2158491..884afe6 100644 --- a/src/main/java/com/ccsens/carbasics/service/FirstAidRecordService.java +++ b/src/main/java/com/ccsens/carbasics/service/FirstAidRecordService.java @@ -67,7 +67,7 @@ public class FirstAidRecordService implements IFirstAidRecordService { PatientVo.QueryAidRecordN queryAidRecord = new PatientVo.QueryAidRecordN(); Map> recordMap = new HashMap<>(16); //查询记录信息 - List aidRecords = patientDao.queryRecordByAidId(param.getProjectId(),param.getCodeList()); + List aidRecords = patientDao.queryRecordByAidId(param.getFirstAidId(),param.getCodeList()); if(CollectionUtil.isNotEmpty(aidRecords)){ //封装进map内 aidRecords.forEach(aidRecord -> { @@ -88,25 +88,26 @@ public class FirstAidRecordService implements IFirstAidRecordService { @Override public void saveAidRecordN(PatientDto.SaveAidRecordN param, Long userId) { //验证急救信息 - FirstAidExample aidExample = new FirstAidExample(); - aidExample.createCriteria().andProjectIdEqualTo(param.getProjectId()); - aidExample.setOrderByClause("id desc limit 1"); - List firstAids = firstAidDao.selectByExample(aidExample); +// FirstAidExample aidExample = new FirstAidExample(); +// aidExample.createCriteria().andProjectIdEqualTo(param.getProjectId()); +// aidExample.setOrderByClause("id desc limit 1"); +// List firstAids = firstAidDao.selectByExample(aidExample); + FirstAid firstAids = firstAidDao.selectByPrimaryKey(param.getFirstAidId()); log.info("急救信息:{}", firstAids); - if(CollectionUtil.isEmpty(firstAids)) { + if(ObjectUtil.isNull(firstAids)) { throw new BaseException(DefaultCodeError.NOT_FIRST_AID_ID); } if(CollectionUtil.isEmpty(param.getCodeAndAnswerList())){ return; } - FirstAid firstAid = firstAids.get(0); +// FirstAid firstAid = firstAids.get(0); // 判断权限状态 - aidStatus(param, firstAid); + aidStatus(param, firstAids); //遍历传入的code // 时间校验 - checkTime(param, firstAid); + checkTime(param, firstAids); // 保存 param.getCodeAndAnswerList().forEach(codeAndAnswer -> { if(StrUtil.isEmpty(codeAndAnswer.getQuestionCode())) { @@ -115,7 +116,7 @@ public class FirstAidRecordService implements IFirstAidRecordService { } //添加记录表,需要查找之前的记录,删除后重新添加 FirstAidRecordExample recordExample = new FirstAidRecordExample(); - recordExample.createCriteria().andFirstAidIdEqualTo(firstAid.getId()).andQuestionCodeEqualTo(codeAndAnswer.getQuestionCode()); + recordExample.createCriteria().andFirstAidIdEqualTo(firstAids.getId()).andQuestionCodeEqualTo(codeAndAnswer.getQuestionCode()); List firstAidRecords = firstAidRecordDao.selectByExample(recordExample); if (CollectionUtil.isNotEmpty(firstAidRecords)) { firstAidRecords.forEach(firstAidRecord -> { @@ -126,14 +127,14 @@ public class FirstAidRecordService implements IFirstAidRecordService { //判断答案是否为空 if(CollectionUtil.isNotEmpty(codeAndAnswer.getAnswer())){ //循环答案 - codeAndAnswer.getAnswer().forEach(answer -> saveRecord(param.getUserType(), userId, firstAid.getId(), codeAndAnswer.getQuestionCode(), StrUtil.isBlank(answer) ? "" : answer,param.getProjectId())); + codeAndAnswer.getAnswer().forEach(answer -> saveRecord(param.getUserType(), userId, firstAids.getId(), codeAndAnswer.getQuestionCode(), StrUtil.isBlank(answer) ? "" : answer,firstAids.getProjectId())); }else { - saveRecord(param.getUserType(), userId, firstAid.getId(), codeAndAnswer.getQuestionCode(), "",param.getProjectId()); + saveRecord(param.getUserType(), userId, firstAids.getId(), codeAndAnswer.getQuestionCode(), "",firstAids.getProjectId()); } if (Constant.QuestionCode.QZSJ.equals(codeAndAnswer.getQuestionCode()) || Constant.QuestionCode.THSJ.equals(codeAndAnswer.getQuestionCode())) { - sendQcp(firstAid.getHospitalId(), codeAndAnswer, userId); + sendQcp(firstAids.getHospitalId(), codeAndAnswer, userId); } }); diff --git a/src/main/java/com/ccsens/carbasics/service/FirstAidService.java b/src/main/java/com/ccsens/carbasics/service/FirstAidService.java index b6e84b1..756d33f 100644 --- a/src/main/java/com/ccsens/carbasics/service/FirstAidService.java +++ b/src/main/java/com/ccsens/carbasics/service/FirstAidService.java @@ -224,20 +224,21 @@ public class FirstAidService implements IFirstAidService{ public PatientVo.GetPatient getPatient(PatientDto.ProjectId param, Long userId) { PatientVo.GetPatient getPatient = new PatientVo.GetPatient(); //通过项目id查找急救信息 - FirstAidExample firstAidExample = new FirstAidExample(); - firstAidExample.createCriteria().andProjectIdEqualTo(param.getProjectId()); - List firstAids = firstAidDao.selectByExample(firstAidExample); - if(CollectionUtil.isNotEmpty(firstAids)){ - getPatient.setFirstAidId(firstAids.get(0).getId()); - getPatient.setName(firstAids.get(0).getName()); - getPatient.setGender(firstAids.get(0).getGender()); - getPatient.setNation(firstAids.get(0).getNation()); - getPatient.setIdcard(firstAids.get(0).getIdcard()); - getPatient.setProjectId(firstAids.get(0).getProjectId()); - getPatient.setAge(firstAids.get(0).getAge()); +// FirstAidExample firstAidExample = new FirstAidExample(); +// firstAidExample.createCriteria().andProjectIdEqualTo(param.getProjectId()); +// List firstAids = firstAidDao.selectByExample(firstAidExample); + FirstAid firstAid = firstAidDao.selectByPrimaryKey(param.getFirstAidId()); + if(ObjectUtil.isNotNull(firstAid)){ + getPatient.setFirstAidId(firstAid.getId()); + getPatient.setName(firstAid.getName()); + getPatient.setGender(firstAid.getGender()); + getPatient.setNation(firstAid.getNation()); + getPatient.setIdcard(firstAid.getIdcard()); + getPatient.setProjectId(firstAid.getProjectId()); + getPatient.setAge(firstAid.getAge()); // 查找疑似病例 FirstAidRecordExample recordExample = new FirstAidRecordExample(); - recordExample.createCriteria().andFirstAidIdEqualTo(firstAids.get(0).getId()).andQuestionCodeEqualTo(Constant.QuestionCode.CJBL_YSBL); + recordExample.createCriteria().andFirstAidIdEqualTo(firstAid.getId()).andQuestionCodeEqualTo(Constant.QuestionCode.CJBL_YSBL); recordExample.setOrderByClause("id desc limit 1"); List firstAidRecords = firstAidRecordMapper.selectByExample(recordExample); if (CollectionUtil.isNotEmpty(firstAidRecords)) { @@ -666,18 +667,18 @@ public class FirstAidService implements IFirstAidService{ @Override public FirstAidVo.FirstAidBase getDetail(FirstAidDto.Project param, Long userId) { - FirstAidExample example = new FirstAidExample(); - example.createCriteria().andProjectIdEqualTo(param.getProjectId()); - example.setOrderByClause("id desc limit 1"); - List firstAids = firstAidDao.selectByExample(example); - if (CollectionUtil.isEmpty(firstAids)) { +// FirstAidExample example = new FirstAidExample(); +// example.createCriteria().andProjectIdEqualTo(param.getProjectId()); +// example.setOrderByClause("id desc limit 1"); +// List firstAids = firstAidDao.selectByExample(example); + FirstAid firstAids = firstAidDao.selectByPrimaryKey(param.getFirstAidId()); + if (ObjectUtil.isNull(firstAids)) { return null; } - FirstAid firstAid = firstAids.get(0); FirstAidVo.FirstAidBase detail = new FirstAidVo.FirstAidBase(); - detail.setProjectId(firstAid.getProjectId()); - detail.setType(firstAid.getType()); - detail.setValueType(firstAid.getValueType()); + detail.setProjectId(firstAids.getProjectId()); + detail.setType(firstAids.getType()); + detail.setValueType(firstAids.getValueType()); return detail; } diff --git a/src/main/resources/mapper_dao/PatientDao.xml b/src/main/resources/mapper_dao/PatientDao.xml index a072971..72638ff 100644 --- a/src/main/resources/mapper_dao/PatientDao.xml +++ b/src/main/resources/mapper_dao/PatientDao.xml @@ -11,7 +11,7 @@ t_qcp_first_aid a LEFT JOIN t_qcp_first_aid_record r on a.id = r.first_aid_id and r.rec_status = 0 WHERE - a.project_id = #{projectId} + a.id = #{firstAidId} AND r.question_code in From 99c8939bfa29f27038e7a1bda64dfd2bfbda4735 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Fri, 26 Nov 2021 17:29:13 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B4=A8=E6=8E=A7?= =?UTF-8?q?=E5=91=98=E6=9F=A5=E7=9C=8B=E7=97=85=E4=BE=8B=E5=88=97=E8=A1=A8?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ccsens/carbasics/bean/vo/PatientVo.java | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java b/src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java index c95a6d7..ab13be3 100644 --- a/src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java +++ b/src/main/java/com/ccsens/carbasics/bean/vo/PatientVo.java @@ -1,5 +1,6 @@ package com.ccsens.carbasics.bean.vo; +import cn.hutool.core.util.ObjectUtil; import com.ccsens.carbasics.util.Constant; import com.fasterxml.jackson.annotation.JsonIgnore; import com.github.pagehelper.PageInfo; @@ -170,15 +171,20 @@ public class PatientVo { private Long projectId; @ApiModelProperty("上报情况 0:未上报 1:上报成功") private Byte reported; - public int getDataStatus() { - if(dataStatus == Constant.DataStatus.FirstAidPass.status && times >= Constant.MAX_UPDATE_NUMBER){ - return 100; + public Integer getDataStatus() { + if (ObjectUtil.isNull(times)) { + return dataStatus; } - if(dataStatus == Constant.DataStatus.DischargePass.status && times >= Constant.MAX_UPDATE_NUMBER){ - return 100; - } - if(dataStatus == Constant.DataStatus.ApplyForRefuse.status && times >= Constant.MAX_UPDATE_NUMBER){ - return 101; + if (ObjectUtil.isNotNull(dataStatus)) { + if(dataStatus == Constant.DataStatus.FirstAidPass.status && times >= Constant.MAX_UPDATE_NUMBER){ + return 100; + } + if(dataStatus == Constant.DataStatus.DischargePass.status && times >= Constant.MAX_UPDATE_NUMBER){ + return 100; + } + if(dataStatus == Constant.DataStatus.ApplyForRefuse.status && times >= Constant.MAX_UPDATE_NUMBER){ + return 101; + } } return dataStatus; }