Browse Source

20210201查询所有对照组

recovery
zy_Java 5 years ago
parent
commit
8a5a31f672
  1. 41
      tcm/src/main/java/com/ccsens/tcm/api/InpatientController.java
  2. 1
      tcm/src/main/java/com/ccsens/tcm/api/PatientController.java
  3. 13
      tcm/src/main/java/com/ccsens/tcm/api/QuestionController.java
  4. 1
      tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java
  5. 20
      tcm/src/main/java/com/ccsens/tcm/bean/dto/QuestionDto.java
  6. 23
      tcm/src/main/java/com/ccsens/tcm/bean/vo/InpatientVo.java
  7. 67
      tcm/src/main/java/com/ccsens/tcm/bean/vo/QuestionVo.java
  8. 18
      tcm/src/main/java/com/ccsens/tcm/service/IInpatientService.java
  9. 1
      tcm/src/main/java/com/ccsens/tcm/service/ImportService.java
  10. 44
      tcm/src/main/java/com/ccsens/tcm/service/InpatientService.java
  11. 5
      tcm/src/main/resources/application.yml

41
tcm/src/main/java/com/ccsens/tcm/api/InpatientController.java

@ -0,0 +1,41 @@
package com.ccsens.tcm.api;
import com.ccsens.tcm.bean.dto.CodeVo;
import com.ccsens.tcm.bean.vo.InpatientVo;
import com.ccsens.tcm.bean.vo.QuestionVo;
import com.ccsens.tcm.service.IInpatientService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
* @author
*/
@Slf4j
@Api(tags = "对照组相关接口")
@RestController
@RequestMapping("/inpatient")
public class InpatientController {
@Resource
private IInpatientService inpatientService;
@ApiOperation(value = "查询所有对照组的信息",notes = "")
@ApiImplicitParams({})
@RequestMapping(value="/query",method = RequestMethod.POST,produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<InpatientVo.InpatientInfo>> queryInpatient() throws Exception {
List<InpatientVo.InpatientInfo> inpatientInfos = inpatientService.queryInpatient();
return JsonResponse.newInstance().ok(inpatientInfos);
}
}

1
tcm/src/main/java/com/ccsens/tcm/api/PatientController.java

@ -65,4 +65,5 @@ public class PatientController {
return null;
}
}

13
tcm/src/main/java/com/ccsens/tcm/api/QuestionController.java

@ -1,6 +1,7 @@
package com.ccsens.tcm.api;
import com.ccsens.tcm.bean.dto.CodeVo;
import com.ccsens.tcm.bean.dto.QuestionDto;
import com.ccsens.tcm.bean.vo.QuestionVo;
import com.ccsens.tcm.service.IImportService;
import com.ccsens.util.JsonResponse;
@ -17,7 +18,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
@ -31,12 +31,21 @@ public class QuestionController {
@Resource
private IImportService importService;
@ApiOperation(value = "按code查看题目信息,code为空则查询全部",notes = "")
@ApiImplicitParams({})
@RequestMapping(value="/queryAll",method = RequestMethod.GET,produces = {"application/json;charset=UTF-8"})
@RequestMapping(value="/queryAll",method = RequestMethod.POST,produces = {"application/json;charset=UTF-8"})
public JsonResponse question(@ApiParam @Validated @RequestBody QueryDto<CodeVo.QuestionCode> params) throws Exception {
List<QuestionVo.ReportCodeVo> reportCodeVoList = importService.getQuestion(params.getParam());
return JsonResponse.newInstance().ok(reportCodeVoList);
}
// @ApiOperation(value = "查看试题及患者的答案",notes = "")
// @ApiImplicitParams({})
// @RequestMapping(value="/query",method = RequestMethod.GET,produces = {"application/json;charset=UTF-8"})
// public JsonResponse<List<QuestionVo.PatientCode>> queryQuestionAndAnswer(@ApiParam @Validated @RequestBody QueryDto<QuestionDto.QueryQuestionAndAnswer> params) throws Exception {
// List<QuestionVo.PatientCode> patientCodes = importService.getQuestionAndAnswer(params.getParam());
// return JsonResponse.newInstance().ok(patientCodes);
// }
}

1
tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java

@ -4,7 +4,6 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import sun.awt.ConstrainableGraphics;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;

20
tcm/src/main/java/com/ccsens/tcm/bean/dto/QuestionDto.java

@ -0,0 +1,20 @@
package com.ccsens.tcm.bean.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author
*/
@Data
public class QuestionDto {
@Data
@ApiModel("查询患者答题信息及答案")
public static class QueryQuestionAndAnswer {
@ApiModelProperty("试题code")
private String code;
@ApiModelProperty("第几次录入信息,1代表第0天或180天,2代表第14天或者第365天,3代表第90天")
private int nums;
}
}

23
tcm/src/main/java/com/ccsens/tcm/bean/vo/InpatientVo.java

@ -0,0 +1,23 @@
package com.ccsens.tcm.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author
*/
public class InpatientVo {
@Data
@ApiModel("查询所有对照组信息")
public static class InpatientInfo{
@ApiModelProperty("对照组id")
private Long id;
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("采集次数")
private int collectionNum;
}
}

67
tcm/src/main/java/com/ccsens/tcm/bean/vo/QuestionVo.java

@ -1,5 +1,7 @@
package com.ccsens.tcm.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ -75,4 +77,69 @@ public class QuestionVo {
//选择之后关联的题目
private List<CodeQuestionVo> questionVos;
}
@Data
@ApiModel("患者信息的试题类型")
public static class PatientCode {
@ApiModelProperty("id")
private Long id;
@ApiModelProperty("code")
private String code;
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("是否为必做 0否 1是")
private byte must;
@ApiModelProperty("排序")
private int sort;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("第几次记录,默认为0代表第一次记录,14代表第14天记录的信息")
private int reportNums;
@ApiModelProperty("记录类型 0:只记录1次数据,1:记录3次,分别为0,14,90天 ,2:记录两次,分别是180,365")
private byte reportType;
@ApiModelProperty("题目信息")
private List<PatientQuestion> questionList;
@ApiModelProperty("子类型")
private List<PatientCode> subCodes;
}
@Data
@ApiModel("患者的答题信息试题")
public static class PatientQuestion {
@ApiModelProperty("id")
private Long id;
@ApiModelProperty("题目名称")
private String question;
@ApiModelProperty("排序")
private int sort;
@ApiModelProperty("单位例如 g/L")
private String units;
@ApiModelProperty("类型 1单行文本,2多行文本,3单选,4多选,5下拉菜单,6日期,7图片(文件),8单选+其他,9多选+其他,10下拉+其他,11多选+其他+说明,12单选+关联其他内容 13数字类型")
private byte type;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("答案")
private String answer;
@ApiModelProperty("选项信息")
private List<QuestionOptionVo> optionVos;
}
@Data
@ApiModel("患者的答案")
public static class PatientOption {
@ApiModelProperty("id")
private Long id;
@ApiModelProperty("排序")
private int sort;
@ApiModelProperty("显示值")
private String showValue;
@ApiModelProperty("提交值")
private String submitValue;
@ApiModelProperty("是否被选中 0否 1是")
private byte choose;
@ApiModelProperty("选择之后的操作 0无 1单行文本 2多行文本 3关联其他题目")
private byte afterOperation;
@ApiModelProperty("选择之后关联的题目")
private List<PatientQuestion> questionVos;
}
}

18
tcm/src/main/java/com/ccsens/tcm/service/IInpatientService.java

@ -0,0 +1,18 @@
package com.ccsens.tcm.service;
import com.ccsens.tcm.bean.vo.InpatientVo;
import java.util.List;
/**
* @author
*/
public interface IInpatientService {
/**
* 查看所有对照组
* @return 返回对照组信息
*/
List<InpatientVo.InpatientInfo> queryInpatient();
}

1
tcm/src/main/java/com/ccsens/tcm/service/ImportService.java

@ -2,7 +2,6 @@ package com.ccsens.tcm.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.ccsens.tcm.bean.dto.CodeVo;
import com.ccsens.tcm.bean.po.*;

44
tcm/src/main/java/com/ccsens/tcm/service/InpatientService.java

@ -0,0 +1,44 @@
package com.ccsens.tcm.service;
import cn.hutool.core.bean.BeanUtil;
import com.ccsens.tcm.bean.po.Inpatient;
import com.ccsens.tcm.bean.po.InpatientExample;
import com.ccsens.tcm.bean.vo.InpatientVo;
import com.ccsens.tcm.persist.mapper.InpatientMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* @author
*/
/**
* @author
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class InpatientService implements IInpatientService{
@Resource
private InpatientMapper inpatientMapper;
@Override
public List<InpatientVo.InpatientInfo> queryInpatient() {
List<InpatientVo.InpatientInfo> inpatientInfos = new ArrayList<>();
InpatientExample inpatientExample = new InpatientExample();
inpatientExample.clear();
List<Inpatient> inpatients = inpatientMapper.selectByExample(inpatientExample);
inpatients.forEach(inpatient -> {
InpatientVo.InpatientInfo inpatientInfo = new InpatientVo.InpatientInfo();
BeanUtil.copyProperties(inpatient,inpatientInfo);
inpatientInfos.add(inpatientInfo);
});
return inpatientInfos;
}
}

5
tcm/src/main/resources/application.yml

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

Loading…
Cancel
Save