123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- package thyyxxk.webserver.service.datamodify;
- import com.baomidou.dynamic.datasource.annotation.DS;
- import jdk.nashorn.internal.scripts.JO;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.beans.BeanUtils;
- import org.springframework.stereotype.Service;
- import thyyxxk.webserver.config.exception.ExceptionEnum;
- import thyyxxk.webserver.dao.his.datamodify.YzTemperatureMapper;
- import thyyxxk.webserver.entity.ResultVo;
- import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
- import thyyxxk.webserver.entity.datamodify.YzTemperature;
- import thyyxxk.webserver.utils.*;
- import java.util.*;
- /**
- * <p>
- * 描述
- * </p>
- *
- * @author xc
- * @date 2021-04-12 17:44
- */
- @Service
- @Slf4j
- @DS("dev")
- public class YzTemperatureService {
- private final YzTemperatureMapper dao;
- private static final String GET_DATE = "yyyy-MM-dd";
- private static final String GET_TIME = "HH:mm:ss";
- public YzTemperatureService(YzTemperatureMapper dao) {
- this.dao = dao;
- }
- /**
- * 查询护理记录单 、
- * @param param 根据 住院号 住院次数 日期 查询 坑爹的这个人把 日期要 拆分出来
- * @return 返回一条拼接好 ,问题描述的数据 给到页面
- * */
- public ResultVo<YzTemperature> queryDetails(YzTemperature param){
- String date = DateUtil.formatDatetime(param.getDate(),GET_DATE);
- String time = DateUtil.formatDatetime(param.getDate(),GET_TIME);
- log.info("查询护理记录单:操作人:{},住院号:{},住院次数:{},日期:{},时间:{}",
- TokenUtil.getTokenUserId(),param.getInpatientNo(),param.getAdmissTimes(),date,time);
- param.setToStringRecDate(date);
- param.setToStringRecTime(time);
- List<YzTemperature> list = dao.queryDetails(param);
- StringBuilder splicingOtherInfo = new StringBuilder();
- YzTemperature pojo = new YzTemperature();
- if (list.size()>0){
- for (int i = 0;i<list.size();i++){
- if (i==0){
- pojo = list.get(0);
- //坑爹的1900年的 日期 传到前端会少几分钟 需要转成 string 在把 1900替换成2000
- pojo.setRecTime(DateUtil.getDatetimeAfterCentury(pojo.getRecTime()));
- }
- //拼接字符串 把otherInfo 拼起来
- splicingOtherInfo.append(list.get(i).getOtherInfo());
- }
- pojo.setSplicingOtherInfo(splicingOtherInfo.toString().replace(" ",""));
- return ResultVoUtil.success(pojo);
- }
- return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST);
- }
- public ResultVo<Boolean> modify(YzTemperature param) {
- param.setToStringRecDate(DateUtil.formatDatetime(param.getRecDate(),GET_DATE));
- param.setToStringRecTime(DateUtil.formatDatetime(param.getRecTime(),GET_TIME));
- //查询出原来的 数据
- YzTemperature pojo = new YzTemperature();
- List<YzTemperature> list = dao.queryDetails(param);
- param.setModifyUserid(TokenUtil.getTokenUserId());
- param.setModifyTime(new Date());
- for(int i =0;i<list.size();i++){
- if (i==0){
- param.setDetailNo(list.get(i).getDetailNo());
- pojo = list.get(i);
- if (!dao.teperatureHead(param)){
- return ResultVoUtil.fail(ExceptionEnum.SLIGHTLY_ERROR);
- }
- log.info("第一次执行头部数据的添加:{}",param.getDetailNo());
- }else {
- param.setDetailNo(list.get(i).getDetailNo());
- dao.teperatureBody(param);
- log.info("执行尾部数据添加:{}",param.getDetailNo());
- }
- }
- log.info("护理记录单修改前:操作人:{},修改的记录单日期:{},时间:{},住院次数:{},住院号:{},体温:{}," +
- "心率/脉搏:{},呼吸:{},血压am:{},血压pm:{}," +
- "spo2:{},意识:{},皮肤:{},管道名称:{},管道情况:{},病区:{}",
- TokenUtil.getTokenUserId(),pojo.getRecDate(),pojo.getRecTime(),pojo.getAdmissTimes(),pojo.getInpatientNo(),
- pojo.getTemperature1(),pojo.getPulse1(),pojo.getBreathe1(),pojo.getPressure1Am(),
- pojo.getPressure1Pm(),pojo.getSpo2(),pojo.getMind(),pojo.getSkin(),pojo.getTubesName(),pojo.getTubesStatus(),
- pojo.getWard());
- log.info("修改护理记录单后:操作人:{},修改的记录单日期:{},时间:{},住院次数:{},住院号:{},体温:{}," +
- "心率/脉搏:{},呼吸:{},血压am:{},血压pm:{}," +
- "spo2:{},意识:{},皮肤:{},管道名称:{},管道情况:{},病区:{}",
- TokenUtil.getTokenUserId(),param.getToStringRecDate(),param.getToStringRecTime(),param.getAdmissTimes(),
- param.getInpatientNo(),param.getTemperature1(),param.getPulse1(),param.getBreathe1(),param.getPressure1Am(),
- param.getPressure1Pm(),param.getSpo2(),param.getMind(),param.getSkin(),param.getTubesName(),param.getTubesStatus(),
- param.getWard());
- return ResultVoUtil.success();
- }
- /**
- * 获取病房
- * @return 返回病房的code 和 name
- * */
- public ResultVo<List<GetDropdownBox>> getWard(){
- return ResultVoUtil.success(dao.getWard());
- }
- }
|