Browse Source

修改任务ID为项目ID

pt
zhizhi wu 5 years ago
parent
commit
f48f57a480
  1. 4
      wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/ProjectDto.java
  2. 4
      wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/StepDto.java
  3. 9
      wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/WisdomCarDto.java
  4. 4
      wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/vo/ProjectVo.java
  5. 5
      wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/PatientDataDao.java
  6. 2
      wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/PatientWisdomCarDao.java
  7. 4
      wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/StepDao.java
  8. 8
      wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/StepTaskDao.java
  9. 12
      wisdomcar/src/main/java/com/ccsens/wisdomcar/service/OtherRecordsService.java
  10. 16
      wisdomcar/src/main/java/com/ccsens/wisdomcar/service/ProjectService.java
  11. 14
      wisdomcar/src/main/java/com/ccsens/wisdomcar/service/StepService.java
  12. 26
      wisdomcar/src/main/java/com/ccsens/wisdomcar/service/WisdomCarService.java
  13. 4
      wisdomcar/src/main/resources/application.yml
  14. 5
      wisdomcar/src/main/resources/mapper_dao/PatientDataDao.xml
  15. 2
      wisdomcar/src/main/resources/mapper_dao/PatientWisdomCarDao.xml
  16. 15
      wisdomcar/src/main/resources/mapper_dao/StepDao.xml
  17. 21
      wisdomcar/src/main/resources/mapper_dao/StepTaskDao.xml

4
wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/ProjectDto.java

@ -28,8 +28,8 @@ public class ProjectDto {
@ApiModel("查询称重和剂量--请求")
public static class Weight {
@NotNull(message="请说明您的任务")
@ApiModelProperty("分解任务ID")
private Long taskSubId;
@ApiModelProperty("项目ID")
private Long projectId;
}
@Data

4
wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/StepDto.java

@ -16,7 +16,7 @@ public class StepDto {
@ApiModel("查看环节完成状态")
public static class FindStepStatus{
@NotNull(message = "请选择要查看的数据")
@ApiModelProperty("分解任务id")
private Long taskSubId;
@ApiModelProperty("项目id")
private Long projectId;
}
}

9
wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/dto/WisdomCarDto.java

@ -30,9 +30,10 @@ public class WisdomCarDto {
@NotNull(message="项目ID不能为空")
@ApiModelProperty("项目ID")
private Long projectId;
@NotNull(message="分解任务ID不能为空")
@ApiModelProperty("分解任务ID")
private Long taskSubId;
// @NotNull(message="分解任务ID不能为空")
// @ApiModelProperty("分解任务ID")
// private Long taskSubId;
@NotNull(message="开始时间不能为空")
@Min(1)
@ApiModelProperty("开始时间")
@ -53,7 +54,7 @@ public class WisdomCarDto {
public static class QueryInfo {
@NotNull(message="请说明您的任务")
@ApiModelProperty("分解任务id")
private Long taskSubId;
private Long projectId;
}

4
wisdomcar/src/main/java/com/ccsens/wisdomcar/bean/vo/ProjectVo.java

@ -35,8 +35,8 @@ public class ProjectVo {
public static class BindCar {
@ApiModelProperty("患者平车绑定ID")
private Long id;
@ApiModelProperty("任务ID")
private Long taskSubId;
@ApiModelProperty("批次")
private Long batch;
@ApiModelProperty("患者ID")
private Long patientId;
@ApiModelProperty("平车ID")

5
wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/PatientDataDao.java

@ -15,10 +15,11 @@ public interface PatientDataDao extends PatientDataMapper {
/**
* 为和taskSubId中一批的尚无消息平车信息的记录添加平车记录
* 为同一项目中的尚无消息平车信息的记录添加平车记录
* @param carId 患者绑定平车ID
* @param taskSubId 任务ID
* @param projectId 项目ID
*/
void updateCarId(@Param("carId") Long carId, @Param("taskSubId") Long taskSubId);
void updateCarId(@Param("carId") Long carId, @Param("projectId") Long projectId);
/**
* 查询任务开始时间

2
wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/PatientWisdomCarDao.java

@ -10,7 +10,7 @@ public interface PatientWisdomCarDao extends PatientWisdomCarMapper {
List<Long> queryByNew(@Param("id")Long id);
List<WisdomCarVo.BindingCarInfo> queryBindingCarList(@Param("taskSubId")Long taskSubId);
List<WisdomCarVo.BindingCarInfo> queryBindingCarList(@Param("projectId")Long projectId);
/**
* 查看患者平车id是否存在

4
wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/StepDao.java

@ -33,8 +33,8 @@ public interface StepDao extends StepMapper {
/**
* 查看环节是否完成
* @param taskSubId 患者平车id
* @param projectId 患者平车id
* @return 环节信息
*/
List<StepVo.StepStatus> findStepIsOver(@Param("taskSubId") Long taskSubId);
List<StepVo.StepStatus> findStepIsOver(@Param("projectId") Long projectId);
}

8
wisdomcar/src/main/java/com/ccsens/wisdomcar/persist/dao/StepTaskDao.java

@ -14,11 +14,11 @@ import java.util.List;
public interface StepTaskDao extends StepTaskMapper {
/**
* 查找对应绑定平车的任务ID
* @param taskSubId 查询的任务ID
* @return 绑定平车任务ID
* 查找对应绑定平车信息
* @param batch 查询的项目ID
* @return 绑定平车信息
*/
ProjectVo.BindCar getBindCarTaskId(@Param("taskSubId") Long taskSubId);
ProjectVo.BindCar getBindCarByBatch(@Param("batch") Long batch);
/**
* 查询当前平车绑定的患者和对应的环节的绑定关系

12
wisdomcar/src/main/java/com/ccsens/wisdomcar/service/OtherRecordsService.java

@ -3,34 +3,24 @@ package com.ccsens.wisdomcar.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.util.CodeEnum;
import com.ccsens.util.StringUtil;
import com.ccsens.util.exception.BaseException;
import com.ccsens.wisdomcar.bean.dto.OtherRecordsDto;
import com.ccsens.wisdomcar.bean.dto.ProjectDto;
import com.ccsens.wisdomcar.bean.po.PatientInformationRecord;
import com.ccsens.wisdomcar.bean.po.PatientInformationRecordExample;
import com.ccsens.wisdomcar.bean.po.PatientWisdomCar;
import com.ccsens.wisdomcar.bean.po.PatientWisdomCarExample;
import com.ccsens.wisdomcar.bean.vo.OtherRecordsVo;
import com.ccsens.wisdomcar.bean.vo.ProjectVo;
import com.ccsens.wisdomcar.persist.dao.PatientWisdomCarDao;
import com.ccsens.wisdomcar.persist.dao.StepTaskDao;
import com.ccsens.wisdomcar.persist.mapper.PatientInformationRecordMapper;
import com.ccsens.wisdomcar.persist.mapper.PatientWisdomCarMapper;
import com.ccsens.wisdomcar.persist.mapper.WisdomCarMapper;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.management.ObjectName;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Slf4j
@ -59,7 +49,7 @@ public class OtherRecordsService implements IOtherRecordsService {
public void upload(OtherRecordsDto.PicturesAndRecords param,Long userId,Byte carOrUser) {
//通过t_patient_information_record里面的分解任务id 找到患者平车id 最新的 拿到患者平车id t_patient_information_record
//拿到患者平车id
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarTaskId(param.getId());
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarByBatch(param.getId());
/*if (bindCar == null) {
log.info("没有找到绑定的平车信息:{}", param);
throw new BaseException(CodeEnum.PARAM_ERROR);

16
wisdomcar/src/main/java/com/ccsens/wisdomcar/service/ProjectService.java

@ -68,7 +68,7 @@ public class ProjectService implements IProjectService {
public void saveData(Long startTime, StepTask stepTask, Long operationId, byte operation) {
//患者平车id
Long patientCarId = null;
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarTaskId(stepTask.getTaskSubId());
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarByBatch(stepTask.getBatch());
if(ObjectUtil.isNotNull(bindCar)){
patientCarId = bindCar.getId();
}
@ -79,7 +79,6 @@ public class ProjectService implements IProjectService {
// 修改平车结束时间点
boolean needModifyEndTime = bindCar != null && (bindCar.getEndTime() == null || bindCar.getEndTime() == 0);
if (needModifyEndTime) {
// log.info("出现异常,未找到绑定平车:{}", stepTask.getTaskSubId());
PatientWisdomCar patientWisdomCar = new PatientWisdomCar();
patientWisdomCar.setId(bindCar.getId());
patientWisdomCar.setEndTime(startTime);
@ -91,7 +90,6 @@ public class ProjectService implements IProjectService {
dataExample.createCriteria().andTaskSubIdEqualTo(stepTask.getTaskSubId()).andStepIdEqualTo(stepTask.getStepId());
List<PatientData> patientData = patientDataDao.selectByExample(dataExample);
if (CollectionUtil.isNotEmpty(patientData)){
// log.info("taskId:{}, stepId:{}已经存在,不再修改", stepTask.getTaskSubId(), stepTask.getStepId());
log.info("修改开始时间");
PatientData data = patientData.get(0);
data.setStartTime(startTime);
@ -107,11 +105,11 @@ public class ProjectService implements IProjectService {
data.setType(operation);
patientDataDao.updateByPrimaryKeySelective(data);
// 未推送
if (data.getPushStatus() == Constant.PUSH_STATUS_SUCCESS) {
log.info("已推送成功,不处理");
return;
}
// // 未推送
// if (data.getPushStatus() == Constant.PUSH_STATUS_SUCCESS) {
// log.info("已推送成功,不处理");
// return;
// }
// 异步推送数据 根据结果修改状态
asyncService.pushTime(stepTask, data);
return;
@ -146,7 +144,7 @@ public class ProjectService implements IProjectService {
@Override
public List<ProjectVo.Record> queryWeight(ProjectDto.Weight param, Long userId) {
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarTaskId(param.getTaskSubId());
ProjectVo.BindCar bindCar = stepTaskDao.getBindCarByBatch(param.getProjectId());
if (bindCar == null) {
log.info("没有找到绑定的平车信息:{},userId:{}", param, userId);
return new ArrayList<>();

14
wisdomcar/src/main/java/com/ccsens/wisdomcar/service/StepService.java

@ -36,13 +36,13 @@ public class StepService implements IStepService {
@Override
public List<StepVo.StepStatus> findStepIsOver(StepDto.FindStepStatus param) {
StepTaskExample stepTaskExample = new StepTaskExample();
stepTaskExample.createCriteria().andTaskSubIdEqualTo(param.getTaskSubId());
List<StepTask> stepTasks = stepTaskDao.selectByExample(stepTaskExample);
if (CollectionUtil.isEmpty(stepTasks)){
throw new BaseException(CodeEnum.TASK_IS_EXIST);
}
return stepDao.findStepIsOver(param.getTaskSubId());
// StepTaskExample stepTaskExample = new StepTaskExample();
// stepTaskExample.createCriteria().andTaskSubIdEqualTo(param.getTaskSubId());
// List<StepTask> stepTasks = stepTaskDao.selectByExample(stepTaskExample);
// if (CollectionUtil.isEmpty(stepTasks)){
// throw new BaseException(CodeEnum.TASK_IS_EXIST);
// }
return stepDao.findStepIsOver(param.getProjectId());
}
}

26
wisdomcar/src/main/java/com/ccsens/wisdomcar/service/WisdomCarService.java

@ -252,7 +252,7 @@ public class WisdomCarService implements IWisdomCarService {
for (ProjectVo.TaskSub taskSub : taskDetail.getTaskSubList()) {
StepTask stepTask = new StepTask();
stepTask.setId(snowflake.nextId());
stepTask.setBatch(1L);
stepTask.setBatch(data.getId());
stepTask.setPatientId(patient.getId());
stepTask.setTaskSubId(taskSub.getTaskSubId());
if (CollectionUtil.isNotEmpty(steps)){
@ -304,17 +304,18 @@ public class WisdomCarService implements IWisdomCarService {
if (0 == carIsExist){
throw new BaseException(CodeEnum.WISDOM_CAR_IS_EXIST);
}
//查询任务是否存在
Integer taskIsExist = stepTaskDao.findTaskIsExist(param.getTaskSubId());
if (0 == taskIsExist){
throw new BaseException(CodeEnum.TASK_IS_EXIST);
}
// //查询任务是否存在
// Integer taskIsExist = stepTaskDao.findTaskIsExist(param.getTaskSubId());
// if (0 == taskIsExist){
// throw new BaseException(CodeEnum.TASK_IS_EXIST);
// }
//查询任务是否是分诊环节的任务ID
// Integer taskIsTriageTask = stepTaskDao.findTaskIsTriageTask(param.getTaskSubId());
// if (0 == taskIsTriageTask){
// throw new BaseException(CodeEnum.PARAM_ERROR);
// }
//查询患者是否存在
// TODO 患者校验需重设置
Integer patientIsExist = patientProjectDao.findPatientIsExist(param.getProjectId());
if (0 == patientIsExist){
throw new BaseException(Constant.PATIENT_NOT_FOUND);
@ -331,6 +332,7 @@ public class WisdomCarService implements IWisdomCarService {
throw new BaseException(CodeEnum.WISDOM_CAR_RUNNED);
}
// 查询患者信息
// TODO 患者校验需重设置
PatientProjectExample projectExample = new PatientProjectExample();
projectExample.createCriteria().andProjectIdEqualTo(param.getProjectId());
List<PatientProject> patientProjects = patientProjectDao.selectByExample(projectExample);
@ -345,7 +347,8 @@ public class WisdomCarService implements IWisdomCarService {
// 绑定平车
PatientWisdomCar pc = new PatientWisdomCar();
pc.setId(snowflake.nextId());
pc.setTaskSubId(param.getTaskSubId());
// pc.setTaskSubId(param.getTaskSubId());
pc.setBatch(param.getProjectId());
pc.setPatientId(patient.getId());
pc.setCarId(param.getCarId());
pc.setStartTime(param.getStartTime());
@ -364,12 +367,7 @@ public class WisdomCarService implements IWisdomCarService {
}
// 更新患者数据中,尚未绑定平车的数据
patientDataDao.updateCarId(pc.getId(), param.getTaskSubId());
// 添加分诊任务开始
com.ccsens.wisdomcar.bean.dto.ProjectDto.Start start = new com.ccsens.wisdomcar.bean.dto.ProjectDto.Start();
start.setTaskSubId(param.getTaskSubId());
start.setStartTime(param.getStartTime());
projectService.start(start,userId);
patientDataDao.updateCarId(pc.getId(), param.getProjectId());
}
@Override
@ -379,7 +377,7 @@ public class WisdomCarService implements IWisdomCarService {
@Override
public List<WisdomCarVo.BindingCarInfo> queryBindingCar(WisdomCarDto.QueryInfo param) {
List<WisdomCarVo.BindingCarInfo> bindingCarList = patientWisdomCarDao.queryBindingCarList(param.getTaskSubId());
List<WisdomCarVo.BindingCarInfo> bindingCarList = patientWisdomCarDao.queryBindingCarList(param.getProjectId());
if(CollectionUtil.isEmpty(bindingCarList)){
// log.info("未找到对应的任务");
// throw new BaseException(CodeEnum.PARAM_ERROR);

4
wisdomcar/src/main/resources/application.yml

@ -1,7 +1,7 @@
spring:
profiles:
active: dev
include: common, util-dev
active: test
include: common, util-test

5
wisdomcar/src/main/resources/mapper_dao/PatientDataDao.xml

@ -4,10 +4,7 @@
<update id="updateCarId">
update t_patient_data set patient_car_id = #{carId} where task_sub_id in
(select t2.task_sub_id from t_step_task t1, t_step_task t2
where t1.patient_id = t2.patient_id and t1.batch = t2.batch
and t1.task_sub_id = #{taskSubId}
and t1.rec_status = 0 and t2.rec_status = 0)
(select task_sub_id from t_step_task where batch = #{projectId} and rec_status = 0)
and patient_car_id = 0 and rec_status = 0
</update>
<select id="getStartTime" resultType="com.ccsens.wisdomcar.bean.vo.ProjectVo$GetStartTime">

2
wisdomcar/src/main/resources/mapper_dao/PatientWisdomCarDao.xml

@ -25,7 +25,7 @@
a.end_time as endTime
from t_patient_wisdom_car a,t_wisdom_car b
where a.car_id=b.id
and a.task_sub_id=#{taskSubId}
and a.batch=#{projectId}
order by a.start_time desc
</select>

15
wisdomcar/src/main/resources/mapper_dao/StepDao.xml

@ -56,19 +56,8 @@
SELECT
st.task_sub_id
FROM
t_step_task AS st,
(
SELECT
st.batch,
st.patient_id
FROM
t_step_task AS st
WHERE
st.task_sub_id = #{taskSubId}
) AS bat
WHERE
st.patient_id = bat.patient_id
AND st.batch = bat.batch
t_step_task
where batch = #{projectId}
)
LEFT JOIN t_hospital_member AS hm ON pd.user_id = hm.user_id
WHERE

21
wisdomcar/src/main/resources/mapper_dao/StepTaskDao.xml

@ -2,26 +2,21 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.wisdomcar.persist.dao.StepTaskDao">
<select id="getBindCarTaskId" resultType="com.ccsens.wisdomcar.bean.vo.ProjectVo$BindCar" parameterType="java.lang.Long">
select c.id, c.task_sub_id as taskSubId, c.patient_id as patientId, c.car_id as carId, c.start_time as startTime, c.end_time as endTime FROM
(select patient_id, batch from t_step_task where task_sub_id = #{taskSubId} and rec_status = 0) batch,
(select id from t_step where code = 1 and step_type = 0 and rec_status = 0) step,
t_step_task st,
<select id="getBindCarByBatch" resultType="com.ccsens.wisdomcar.bean.vo.ProjectVo$BindCar" parameterType="java.lang.Long">
select c.id, c.batch as batch, c.patient_id as patientId, c.car_id as carId, c.start_time as startTime, c.end_time as endTime FROM
t_patient_wisdom_car c
where batch.batch = st.batch and batch.patient_id = st.patient_id and step.id = st.step_id and st.task_sub_id = c.task_sub_id and st.rec_status = 0 and c.rec_status = 0 order by c.start_time desc limit 1
where c.batch = #{batch} and c.rec_status = 0 order by c.start_time desc limit 1
</select>
<select id="getByCarAndStep" resultMap="com.ccsens.wisdomcar.persist.mapper.StepTaskMapper.BaseResultMap">
SELECT
st2.*
st.*
FROM
t_patient_wisdom_car pc,
t_step_task st,
t_step_task st2
t_step_task st
WHERE
pc.task_sub_id = st.task_sub_id
AND pc.patient_id = st2.patient_id
AND st.batch = st2.batch
AND st2.step_id = #{stepId}
pc.batch = st.batch
AND pc.patient_id = st.patient_id
AND st.step_id = #{stepId}
AND pc.car_id = #{carId}
AND pc.start_time &lt;= #{time} AND pc.end_time = 0 AND pc.start_time + 2 * 60 * 60 * 1000 > #{time}
order by pc.created_at desc limit 1

Loading…
Cancel
Save