InquiryInfoFacade.java 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418
  1. package com.diagbot.facade;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.diagbot.client.TranServiceClient;
  4. import com.diagbot.dto.GetInquiryDetailDTO;
  5. import com.diagbot.dto.GetInquiryDetailImgDTO;
  6. import com.diagbot.dto.HisInquiryDTO;
  7. import com.diagbot.dto.RecordCheckDTO;
  8. import com.diagbot.dto.RespDTO;
  9. import com.diagbot.dto.SaveInquiryDTO;
  10. import com.diagbot.entity.InquiryDetail;
  11. import com.diagbot.entity.InquiryEvaluator;
  12. import com.diagbot.entity.InquiryInfo;
  13. import com.diagbot.entity.InquiryQuote;
  14. import com.diagbot.entity.InquiryReport;
  15. import com.diagbot.enums.InquiryQuotedTypeEnum;
  16. import com.diagbot.enums.IsDeleteEnum;
  17. import com.diagbot.enums.SexEnum;
  18. import com.diagbot.exception.CommonErrorCode;
  19. import com.diagbot.exception.CommonException;
  20. import com.diagbot.service.impl.InquiryDetailServiceImpl;
  21. import com.diagbot.service.impl.InquiryInfoServiceImpl;
  22. import com.diagbot.service.impl.InquiryReportServiceImpl;
  23. import com.diagbot.util.BeanUtil;
  24. import com.diagbot.util.DateUtil;
  25. import com.diagbot.util.EntityUtil;
  26. import com.diagbot.util.ListUtil;
  27. import com.diagbot.util.RespDTOUtil;
  28. import com.diagbot.util.StringUtil;
  29. import com.diagbot.vo.GetInquiryDetailVO;
  30. import com.diagbot.vo.HisInquirysVO;
  31. import com.diagbot.vo.InquiryQuoteVO;
  32. import com.diagbot.vo.RecordCheckVO;
  33. import com.diagbot.vo.SaveInquiryVO;
  34. import org.springframework.beans.factory.annotation.Autowired;
  35. import org.springframework.beans.factory.annotation.Qualifier;
  36. import org.springframework.beans.factory.annotation.Value;
  37. import org.springframework.stereotype.Component;
  38. import java.util.Date;
  39. import java.util.List;
  40. import java.util.Map;
  41. /**
  42. * @author: zhoutg
  43. * @time: 2018/8/6 9:11
  44. */
  45. @Component
  46. public class InquiryInfoFacade extends InquiryInfoServiceImpl {
  47. @Value("${imageUrl.prefix}")
  48. private String imageUrlPrefix;
  49. @Autowired
  50. private InquiryDetailFacade inquiryDetailFacade;
  51. @Autowired
  52. private InquiryReportFacade inquiryReportFacade;
  53. @Autowired
  54. private InquiryEvaluatorFacade inquiryEvaluatorFacade;
  55. @Autowired
  56. @Qualifier("inquiryDetailServiceImpl")
  57. private InquiryDetailServiceImpl inquiryDetailServiceImpl;
  58. @Autowired
  59. @Qualifier("inquiryReportServiceImpl")
  60. private InquiryReportServiceImpl inquiryReportServiceImpl;
  61. @Autowired
  62. private TranServiceClient tranServiceClient;
  63. @Autowired
  64. private InquiryQuoteFacade inquiryQuoteFacade;
  65. /**
  66. * 问诊记录保存
  67. *
  68. * @param saveInquiryVO
  69. * @return
  70. */
  71. public SaveInquiryDTO saveInquiry(SaveInquiryVO saveInquiryVO) {
  72. SaveInquiryDTO saveInquiryDTO = new SaveInquiryDTO();
  73. Date now = DateUtil.now();
  74. QueryWrapper<InquiryInfo> inquiryInfoQe = new QueryWrapper<>();
  75. inquiryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
  76. inquiryInfoQe.eq("hospital_id", saveInquiryVO.getHospitalId());
  77. inquiryInfoQe.eq(saveInquiryVO.getSonHospitalId() != null,
  78. "son_hospital_id", saveInquiryVO.getSonHospitalId());
  79. inquiryInfoQe.eq("hospital_dept_id", saveInquiryVO.getHospitalDeptId());
  80. inquiryInfoQe.eq(saveInquiryVO.getDoctorId() != null,
  81. "doctor_id", saveInquiryVO.getDoctorId());
  82. inquiryInfoQe.eq("patient_id", saveInquiryVO.getPatientId());
  83. inquiryInfoQe.eq(StringUtil.isNotBlank(saveInquiryVO.getInquiryCode()),
  84. "inquiry_code", saveInquiryVO.getInquiryCode());
  85. inquiryInfoQe.eq("is_quoted", 0);
  86. inquiryInfoQe.orderByDesc("gmt_modified");
  87. InquiryInfo inquiryInfo = this.getOne(inquiryInfoQe, false);
  88. if (inquiryInfo == null) {
  89. inquiryInfo = new InquiryInfo();
  90. inquiryInfo.setGmtCreate(now);
  91. } else {
  92. QueryWrapper<InquiryDetail> inquiryDetailQe = new QueryWrapper<>();
  93. inquiryDetailQe.eq("inquiry_id", inquiryInfo.getId());
  94. inquiryDetailFacade.remove(inquiryDetailQe);
  95. QueryWrapper<InquiryReport> inquiryReportQe = new QueryWrapper<>();
  96. inquiryReportQe.eq("inquiry_id", inquiryInfo.getId());
  97. inquiryReportFacade.remove(inquiryReportQe);
  98. }
  99. BeanUtil.copyProperties(saveInquiryVO, inquiryInfo);
  100. inquiryInfo.setGmtModified(now);
  101. saveOrUpdate(inquiryInfo);
  102. Long inquiryId = inquiryInfo.getId();
  103. List<InquiryDetail> inquiryDetailList = BeanUtil.listCopyTo(saveInquiryVO.getDetailList(), InquiryDetail.class);
  104. inquiryDetailList.forEach(i -> {
  105. i.setInquiryId(inquiryId);
  106. i.setGmtCreate(now);
  107. i.setGmtModified(now);
  108. });
  109. inquiryDetailServiceImpl.saveBatch(inquiryDetailList);
  110. List<InquiryReport> inquiryReportList = BeanUtil.listCopyTo(saveInquiryVO.getReportList(), InquiryReport.class);
  111. inquiryReportList.forEach(i -> {
  112. i.setInquiryId(inquiryId);
  113. i.setNarrowImage("0");
  114. i.setGmtCreate(now);
  115. i.setGmtModified(now);
  116. });
  117. inquiryReportServiceImpl.saveBatch(inquiryReportList);
  118. saveInquiryDTO.setInquiryId(inquiryId);
  119. return saveInquiryDTO;
  120. }
  121. /**
  122. * 问诊记录检查确认
  123. *
  124. * @param recordCheckVO
  125. * @return
  126. */
  127. public RecordCheckDTO recordCheck(RecordCheckVO recordCheckVO) {
  128. RecordCheckDTO recordCheckDTO = new RecordCheckDTO();
  129. int type = 1;
  130. QueryWrapper<InquiryInfo> inquiryInfoQe = new QueryWrapper<>();
  131. inquiryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
  132. inquiryInfoQe.eq("hospital_id", recordCheckVO.getHospitalId());
  133. inquiryInfoQe.eq("hospital_dept_id", recordCheckVO.getHospitalDeptId());
  134. inquiryInfoQe.eq("doctor_id", recordCheckVO.getDoctorId());
  135. inquiryInfoQe.eq("patient_id", recordCheckVO.getPatientId());
  136. inquiryInfoQe.eq("inquiry_code", recordCheckVO.getInquiryCode());
  137. InquiryInfo inquiryInfo = this.getOne(inquiryInfoQe, false);
  138. if (inquiryInfo != null) {
  139. QueryWrapper<InquiryDetail> inquiryDetailQe = new QueryWrapper<>();
  140. inquiryDetailQe.eq("inquiry_id", inquiryInfo.getId());
  141. if (inquiryDetailFacade.count(inquiryDetailQe) > 0) {
  142. type = type + 2;
  143. }
  144. QueryWrapper<InquiryEvaluator> inquiryEvaluatorQe = new QueryWrapper<>();
  145. inquiryEvaluatorQe.eq("inquiry_id", inquiryInfo.getId());
  146. if (inquiryEvaluatorFacade.count(inquiryEvaluatorQe) > 0) {
  147. type = type + 3;
  148. }
  149. }
  150. recordCheckDTO.setType(type);
  151. return recordCheckDTO;
  152. }
  153. /**
  154. * 历史病历列表
  155. *
  156. * @param hisInquirysVO
  157. * @return
  158. */
  159. public List<HisInquiryDTO> hisInquirys(HisInquirysVO hisInquirysVO) {
  160. if (hisInquirysVO.getHospitalId() == null && StringUtil.isBlank(hisInquirysVO.getHospitalCode())) {
  161. throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "医院信息(医院id或者医院编码)必传!");
  162. }
  163. QueryWrapper<InquiryInfo> inquiryInfoQe = new QueryWrapper<InquiryInfo>();
  164. inquiryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
  165. inquiryInfoQe.eq("is_quoted", InquiryQuotedTypeEnum.Disable.getKey());
  166. inquiryInfoQe.eq(hisInquirysVO.getHospitalId() != null,
  167. "hospital_id", hisInquirysVO.getHospitalId());
  168. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getHospitalCode()),
  169. "hospital_code", hisInquirysVO.getHospitalCode());
  170. inquiryInfoQe.eq(hisInquirysVO.getHospitalDeptId() != null,
  171. "hospital_dept_id", hisInquirysVO.getHospitalDeptId());
  172. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getHospitalDeptCode()),
  173. "hospital_dept_code", hisInquirysVO.getHospitalDeptCode());
  174. inquiryInfoQe.eq(hisInquirysVO.getDoctorId() != null,
  175. "doctor_id", hisInquirysVO.getDoctorId());
  176. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getDoctorCode()),
  177. "doctor_code", hisInquirysVO.getDoctorCode());
  178. inquiryInfoQe.eq(hisInquirysVO.getPatientId() != null,
  179. "patient_id", hisInquirysVO.getPatientId());
  180. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getPatientCode()),
  181. "patient_code", hisInquirysVO.getPatientCode());
  182. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getPatientIdNo()),
  183. "patient_id_no", hisInquirysVO.getPatientIdNo());
  184. inquiryInfoQe.eq(StringUtil.isNotBlank(hisInquirysVO.getPatientName()),
  185. "patient_name", hisInquirysVO.getPatientName());
  186. inquiryInfoQe.eq(hisInquirysVO.getType() != null,
  187. "type", hisInquirysVO.getType());
  188. String day = DateUtil.formatDateTime(DateUtil.getFirstTimeOfDay(DateUtil.addDay(DateUtil.now(),
  189. -hisInquirysVO.getDayLimit())));
  190. inquiryInfoQe.ge("gmt_modified", day);
  191. inquiryInfoQe.ge(hisInquirysVO.getStartDate() != null,
  192. "gmt_create", hisInquirysVO.getStartDate());
  193. inquiryInfoQe.le(hisInquirysVO.getEndDate() != null,
  194. "gmt_create", hisInquirysVO.getEndDate());
  195. if (hisInquirysVO.getOrderType() == null || hisInquirysVO.getOrderType() == 1) {
  196. inquiryInfoQe.orderByDesc("gmt_modified");
  197. } else if (hisInquirysVO.getOrderType() == 2) {
  198. inquiryInfoQe.orderByAsc("gmt_modified");
  199. } else if (hisInquirysVO.getOrderType() == 3) {
  200. inquiryInfoQe.orderByDesc("inquiry_code");
  201. } else if (hisInquirysVO.getOrderType() == 4) {
  202. inquiryInfoQe.orderByAsc("inquiry_code");
  203. } else {
  204. inquiryInfoQe.orderByDesc("gmt_modified");
  205. }
  206. List<HisInquiryDTO> hisInquiryDTOList = BeanUtil.listCopyTo(list(inquiryInfoQe), HisInquiryDTO.class);
  207. hisInquiryDTOList.forEach(i -> {
  208. i.setPatientSexMsg(SexEnum.getName(i.getPatientSex()));
  209. i.setInquiryDate(i.getGmtModified());
  210. i.setInquiryTime(i.getGmtModified());
  211. i.setPatientAge(DateUtil.yearCompare(i.getPatientBirthday(), DateUtil.now()));
  212. });
  213. return hisInquiryDTOList;
  214. }
  215. /**
  216. * 病历详情
  217. *
  218. * @param getInquiryDetailVO
  219. * @return
  220. */
  221. public GetInquiryDetailDTO getInquiryDetail(GetInquiryDetailVO getInquiryDetailVO) {
  222. if (getInquiryDetailVO.getHospitalId() == null
  223. && StringUtil.isBlank(getInquiryDetailVO.getHospitalCode())) {
  224. throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "医院信息(医院id或者医院编码)必传!");
  225. }
  226. /*if (getInquiryDetailVO.getHospitalDeptId() == null && StringUtil.isBlank(getInquiryDetailVO.getHospitalDeptCode())) {
  227. throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "科室信息(科室id或者科室编码)必传!");
  228. }
  229. if (getInquiryDetailVO.getDoctorId() == null && StringUtil.isBlank(getInquiryDetailVO.getDoctorCode())) {
  230. throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "医生信息(医生id或者医生编码)必传!");
  231. }*/
  232. if (getInquiryDetailVO.getPatientId() == null
  233. && StringUtil.isBlank(getInquiryDetailVO.getPatientCode())
  234. && (StringUtil.isBlank(getInquiryDetailVO.getPatientIdNo())
  235. || StringUtil.isBlank(getInquiryDetailVO.getPatientName()))) {
  236. throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "患者信息(患者id或者患者编码或者患者病历号)必传!");
  237. }
  238. QueryWrapper<InquiryInfo> inquiryInfoQe = new QueryWrapper<InquiryInfo>();
  239. inquiryInfoQe.eq(getInquiryDetailVO.getInquiryId() != null,
  240. "id", getInquiryDetailVO.getInquiryId());
  241. inquiryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
  242. inquiryInfoQe.eq("is_quoted", InquiryQuotedTypeEnum.Disable.getKey());
  243. inquiryInfoQe.eq(getInquiryDetailVO.getHospitalId() != null,
  244. "hospital_id", getInquiryDetailVO.getHospitalId());
  245. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getHospitalCode()),
  246. "hospital_code", getInquiryDetailVO.getHospitalCode());
  247. inquiryInfoQe.eq(getInquiryDetailVO.getHospitalDeptId() != null,
  248. "hospital_dept_id", getInquiryDetailVO.getHospitalDeptId());
  249. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getHospitalDeptCode()),
  250. "hospital_dept_code", getInquiryDetailVO.getHospitalDeptCode());
  251. inquiryInfoQe.eq(getInquiryDetailVO.getDoctorId() != null,
  252. "doctor_id", getInquiryDetailVO.getDoctorId());
  253. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getDoctorCode()),
  254. "doctor_code", getInquiryDetailVO.getDoctorCode());
  255. inquiryInfoQe.eq(getInquiryDetailVO.getPatientId() != null,
  256. "patient_id", getInquiryDetailVO.getPatientId());
  257. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getPatientCode()),
  258. "patient_code", getInquiryDetailVO.getPatientCode());
  259. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getPatientIdNo()),
  260. "patient_id_no", getInquiryDetailVO.getPatientIdNo());
  261. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getPatientName()),
  262. "patient_name", getInquiryDetailVO.getPatientName());
  263. inquiryInfoQe.eq(StringUtil.isNotBlank(getInquiryDetailVO.getInquiryCode()),
  264. "inquiry_code", getInquiryDetailVO.getInquiryCode());
  265. String day = DateUtil.formatDateTime(DateUtil.getFirstTimeOfDay(DateUtil.addDay(DateUtil.now(),
  266. -getInquiryDetailVO.getDayLimit())));
  267. inquiryInfoQe.ge("gmt_modified", day);
  268. inquiryInfoQe.orderByDesc("gmt_modified");
  269. InquiryInfo inquiryInfo = this.getOne(inquiryInfoQe, false);
  270. if (inquiryInfo == null) {
  271. throw new CommonException(CommonErrorCode.NOT_EXISTS, "该病历不存在!");
  272. }
  273. QueryWrapper<InquiryDetail> inquiryDetailQe = new QueryWrapper<>();
  274. inquiryDetailQe.eq("inquiry_id", inquiryInfo.getId());
  275. inquiryDetailQe.orderByAsc("type");
  276. List<InquiryDetail> inquiryDetailList = inquiryDetailFacade.list(inquiryDetailQe);
  277. QueryWrapper<InquiryReport> inquiryReportQe = new QueryWrapper<>();
  278. inquiryReportQe.eq("inquiry_id", inquiryInfo.getId());
  279. inquiryReportQe.orderByAsc("order_num");
  280. List<InquiryReport> inquiryReportList = inquiryReportFacade.list(inquiryReportQe);
  281. QueryWrapper<InquiryEvaluator> inquiryEvaluatorQe = new QueryWrapper<>();
  282. inquiryEvaluatorQe.eq("inquiry_id", inquiryInfo.getId());
  283. inquiryEvaluatorQe.orderByDesc("gmt_modified");
  284. inquiryEvaluatorQe.last("limit 0,1");
  285. List<InquiryEvaluator> inquiryEvaluatorList = inquiryEvaluatorFacade.list(inquiryEvaluatorQe);
  286. GetInquiryDetailDTO getInquiryDetailDTO = new GetInquiryDetailDTO();
  287. BeanUtil.copyProperties(inquiryInfo, getInquiryDetailDTO);
  288. getInquiryDetailDTO.setPatientSexMsg(SexEnum.getName(inquiryInfo.getPatientSex()));
  289. getInquiryDetailDTO.setInquiryDate(inquiryInfo.getGmtModified());
  290. getInquiryDetailDTO.setInquiryTime(inquiryInfo.getGmtModified());
  291. getInquiryDetailDTO.setPatientAge(DateUtil.yearCompare(inquiryInfo.getPatientBirthday(), DateUtil.now()));
  292. if (ListUtil.isNotEmpty(inquiryDetailList)) {
  293. Map<Integer, InquiryDetail> inquiryDetailMap
  294. = EntityUtil.makeEntityMap(inquiryDetailList, "type");
  295. if (null != inquiryDetailMap.get(1)) {
  296. getInquiryDetailDTO.setChiefComplaint(inquiryDetailMap.get(1).getContentValue());
  297. }
  298. if (null != inquiryDetailMap.get(2)) {
  299. getInquiryDetailDTO.setXbs(inquiryDetailMap.get(2).getContentValue());
  300. }
  301. if (null != inquiryDetailMap.get(3)) {
  302. getInquiryDetailDTO.setQts(inquiryDetailMap.get(3).getContentValue());
  303. }
  304. if (null != inquiryDetailMap.get(4)) {
  305. getInquiryDetailDTO.setSupplement(inquiryDetailMap.get(4).getContentValue());
  306. }
  307. }
  308. getInquiryDetailDTO.setPhysicalRes(
  309. ListUtil.isNotEmpty(inquiryEvaluatorList) ? inquiryEvaluatorList.get(0).getPhysicalRes() : null);
  310. if (ListUtil.isNotEmpty(inquiryReportList)) {
  311. for (InquiryReport inquiryReport : inquiryReportList) {
  312. if (StringUtil.isNotBlank(inquiryReport.getOriginalImage())) {
  313. inquiryReport.setOriginalImage(imageUrlPrefix + inquiryReport.getOriginalImage());
  314. }
  315. }
  316. getInquiryDetailDTO.setImageList(BeanUtil.listCopyTo(inquiryReportList, GetInquiryDetailImgDTO.class));
  317. }
  318. return getInquiryDetailDTO;
  319. }
  320. /**
  321. * 病历引用
  322. *
  323. * @param inquiryQuoteVO
  324. * @return
  325. */
  326. public Boolean inquiryQuote(InquiryQuoteVO inquiryQuoteVO) {
  327. InquiryInfo inquiryInfo = getById(inquiryQuoteVO.getInquiryId());
  328. if (inquiryInfo == null) {
  329. throw new CommonException(CommonErrorCode.RPC_ERROR, "病历不存在");
  330. }
  331. if (!inquiryInfo.getHospitalCode().equals(inquiryQuoteVO.getHospitalCode())) {
  332. throw new CommonException(CommonErrorCode.RPC_ERROR, "医院不一致");
  333. }
  334. if (inquiryInfo.getIsQuoted() == 1) {
  335. return true;
  336. }
  337. RespDTO<InquiryQuoteVO> respDTO = tranServiceClient.inquiryQuote(inquiryQuoteVO);
  338. RespDTOUtil.respNGDealCover(respDTO, "病历引用失败");
  339. inquiryQuoteVO = respDTO.data;
  340. Date now = DateUtil.now();
  341. inquiryInfo.setGmtModified(now);
  342. inquiryInfo.setIsQuoted(1);
  343. inquiryInfo.setInquiryCode(inquiryQuoteVO.getInquiryCode());
  344. inquiryInfo.setPatientId(inquiryQuoteVO.getPatientInfo().getId());
  345. inquiryInfo.setPatientCode(inquiryQuoteVO.getPatientInfo().getCode());
  346. inquiryInfo.setPatientName(inquiryQuoteVO.getPatientInfo().getName());
  347. inquiryInfo.setPatientIdNo(inquiryQuoteVO.getPatientInfo().getIdNo());
  348. inquiryInfo.setPatientBirthday(inquiryQuoteVO.getPatientInfo().getBirthday());
  349. inquiryInfo.setPatientPhone(inquiryQuoteVO.getPatientInfo().getPhone());
  350. inquiryInfo.setPatientSex(inquiryQuoteVO.getPatientInfo().getSex());
  351. updateById(inquiryInfo);
  352. //插入引用表信息
  353. InquiryQuote inquiryQuote = new InquiryQuote();
  354. BeanUtil.copyProperties(inquiryQuoteVO, inquiryQuote);
  355. inquiryQuote.setGmtCreate(now);
  356. inquiryQuote.setGmtModified(now);
  357. inquiryQuote.setHospitalDeptId(inquiryQuoteVO.getDeptInfo().getId());
  358. inquiryQuote.setHospitalDeptCode(inquiryQuoteVO.getDeptInfo().getCode());
  359. inquiryQuote.setHospitalDeptName(inquiryQuoteVO.getDeptInfo().getName());
  360. inquiryQuote.setDoctorId(inquiryQuoteVO.getDoctorInfo().getId());
  361. inquiryQuote.setDoctorCode(inquiryQuoteVO.getDoctorInfo().getCode());
  362. inquiryQuote.setDoctorName(inquiryQuoteVO.getDoctorInfo().getName());
  363. inquiryQuote.setPatientId(inquiryQuoteVO.getPatientInfo().getId());
  364. inquiryQuote.setPatientCode(inquiryQuoteVO.getPatientInfo().getCode());
  365. inquiryQuote.setPatientName(inquiryQuoteVO.getPatientInfo().getName());
  366. inquiryQuote.setPatientIdNo(inquiryQuoteVO.getPatientInfo().getIdNo());
  367. inquiryQuote.setPatientBirthday(inquiryQuoteVO.getPatientInfo().getBirthday());
  368. inquiryQuote.setPatientPhone(inquiryQuoteVO.getPatientInfo().getPhone());
  369. inquiryQuote.setPatientSex(inquiryQuoteVO.getPatientInfo().getSex());
  370. inquiryQuote.setRegVisitedState(inquiryInfo.getRegVisitedState());
  371. inquiryQuote.setType(inquiryInfo.getType());
  372. inquiryQuote.setDataJson(inquiryInfo.getDataJson());
  373. inquiryQuoteFacade.save(inquiryQuote);
  374. return true;
  375. }
  376. }