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