From a2d12d52275c9fc34277d3e41c662a5ea9fb597f Mon Sep 17 00:00:00 2001 From: lige <bestlige@outlook.com> Date: 星期三, 24 一月 2024 10:11:44 +0800 Subject: [PATCH] 报告合并判断心电图和附件 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java | 141 +++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 117 insertions(+), 24 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java index cacb0bb..3007a46 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java @@ -4,28 +4,29 @@ import javax.servlet.http.HttpServletResponse; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.ltkj.common.utils.bean.BeanUtils; +import com.ltkj.common.enums.DataSourceType; import com.ltkj.framework.config.MatchUtils; +import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; import com.ltkj.hosp.domain.TjReservation; -import com.ltkj.hosp.service.ITjReservationService; +import com.ltkj.hosp.mapper.TestMapper; +import com.ltkj.hosp.service.*; +import com.ltkj.hosp.sqlDomain.LtkjMiddleDetail; +import com.ltkj.hosp.sqlDomain.LtkjMiddleHead; +import com.ltkj.hosp.sqlDomain.LtkjTjPat; +import com.ltkj.system.service.ISysConfigService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; -import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.util.DigestUtils; import org.springframework.web.bind.annotation.*; -import com.ltkj.common.annotation.Log; import com.ltkj.common.core.controller.BaseController; import com.ltkj.common.core.domain.AjaxResult; -import com.ltkj.common.enums.BusinessType; import com.ltkj.hosp.domain.TjCustomer; -import com.ltkj.hosp.service.ITjCustomerService; import com.ltkj.common.utils.poi.ExcelUtil; import com.ltkj.common.core.page.TableDataInfo; - -import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; /** @@ -44,6 +45,30 @@ @Resource private ITjReservationService tjReservationService; + @Resource + private ISysConfigService sysConfigService; + + @Resource + private TestMapper testMapper; + @Resource + private TjvLtkjvtjpatService tjvLtkjvtjpatService; + @Resource + private LtkjMiddleHeadService headService; + @Resource + private LtkjMiddleDetailService middleDetailService; + @Resource + private ITjOrderService tjOrderService; + + @GetMapping("/newGetTjPat") + @ApiOperation(value = "鏌ヨhis鏁版嵁搴撹繑鍥炴柊鐨勬暟鎹�") + public AjaxResult newGetTjPat(@RequestParam(required = false)String pacCode, + @RequestParam(required = false)String pacName, + @RequestParam(required = false)String pacRemark) { + List<Map<String, Object>> maps = testMapper.newGetTjPat(pacCode,pacName,pacRemark); + DynamicDataSourceContextHolder.clearDataSourceType(); + return AjaxResult.success(maps); + } + /** @@ -51,21 +76,67 @@ */ @PostMapping(value = "/cusIdcard") @ApiOperation(value = "鏍规嵁韬唤璇佸彿鑾峰彇鐢ㄦ埛淇℃伅") - @Log(title = "瀹㈡埛韬唤淇℃伅", businessType = BusinessType.EXPORT) +// @Log(title = "瀹㈡埛韬唤淇℃伅", businessType = BusinessType.EXPORT) public AjaxResult getInfoByIdCard(@RequestParam @ApiParam(value = "瀹㈡埛韬唤璇佸彿") String cusIdcard) { if (!"".equals(cusIdcard) && cusIdcard != null) { //鍒ゆ柇韬唤璇佸彿鏍煎紡鏄惁姝g‘ - // TODO: 2023/2/10 鍒ゆ柇韬唤璇佸彿鏍煎紡鏄惁姝g‘ - if(cusIdcard.length()==18){ - if (! MatchUtils.isIdCard(cusIdcard)) { - return AjaxResult.error("韬唤璇佸彿鐮侀敊璇�"); +// if(cusIdcard.length()==18){ +// if (! MatchUtils.isIdCard(cusIdcard)) { +// return AjaxResult.error("韬唤璇佸彿鐮侀敊璇�"); +// } +// } +// if(cusIdcard.length()==9){ +// if (!MatchUtils.cardValidates(cusIdcard)) { +// return AjaxResult.error("韬唤璇佸彿鐮侀敊璇�"); +// } +// } + //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 + final String getInfoFromSqlData = sysConfigService.selectConfigByKey("getInfoFromSqlData"); + if ("Y".equals(getInfoFromSqlData)){ + //鏍规嵁韬唤璇佸彿浠巋is鏌ヤ俊鎭� + LtkjTjPat tjPatByIdCard = testMapper.getTjPatByIdCard(cusIdcard); + if(null != tjPatByIdCard){ + String fcardNo = tjPatByIdCard.getFcardNo(); + if(null !=fcardNo){ + fcardNo=fcardNo.trim(); + tjPatByIdCard.setFcardNo(fcardNo); + } + //鏍规嵁韬唤璇佸彿浠庢暟鎹簱鎷夸俊鎭� 娌℃湁鐨勮瘽淇濆瓨 + LtkjTjPat ltkjTjPat = tjvLtkjvtjpatService.getLtkjTjPatByCusIdCard(cusIdcard); + if(null==ltkjTjPat){ + tjvLtkjvtjpatService.save(tjPatByIdCard); + } + DynamicDataSourceContextHolder.clearDataSourceType(); + //鍐嶆牴鎹韩浠借瘉鍙峰啓customer琛� + TjCustomer tjCustomer = tjCustomerService.getTjCustomerByCusIdCard(tjPatByIdCard.getFcardNo()); + if(null == tjCustomer){ + //涓虹┖鐨勮瘽鎺夊瓨鍌ㄨ繃绋嬩繚瀛樺埌瀹㈡埛琛� + testMapper.getTjPatByCusId(cusIdcard); + LambdaQueryWrapper<TjCustomer> qw = new LambdaQueryWrapper<>(); + qw.eq(TjCustomer::getCusIdcard, tjPatByIdCard.getFcardNo()); + TjCustomer customer = tjCustomerService.getOne(qw); + customer.setReservationId(customer.getCardId()); + extracted(customer); + return success(customer); + }else { + String cardId = tjPatByIdCard.getFcardId(); + if(null !=cardId && !cardId.equals("0")){ + int i = tjOrderService.selectTjOrderByCardId(cardId); + if(i>0){ + return AjaxResult.error("涓嶅彲閲嶅绛惧埌"); + } + + } + tjCustomer.setReservationId(tjCustomer.getCardId()); + tjCustomer.setCardId(tjPatByIdCard.getFcardId()); + tjCustomerService.updateById(tjCustomer); + extracted(tjCustomer); + return success(tjCustomer); + } + } } - if(cusIdcard.length()==9){ - if (!MatchUtils.cardValidates(cusIdcard)) { - return AjaxResult.error("韬唤璇佸彿鐮侀敊璇�"); - } - } + //end====2023.12.12 LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>(); wq.eq(TjReservation::getIdCard, cusIdcard); wq.eq(TjReservation::getIsExpire, 2); @@ -98,7 +169,6 @@ tjCustomer1.setAgeUnit(tjReservation.getAgeUnit()); tjCustomer1.setCareer(tjReservation.getCareer()); - tjCustomerService.updateById(tjCustomer1); tjCustomer1.setTeamNo(tjReservation.getTeamNo()); tjCustomer1.setCompId(tjReservation.getCompanyId()); @@ -122,7 +192,9 @@ tjCustomer.setAge(tjReservation.getAge()); tjCustomer.setAgeUnit(tjReservation.getAgeUnit()); tjCustomer.setCareer(tjReservation.getCareer()); - + tjCustomer.setDwPhone(tjReservation.getDwPhone()); + tjCustomer.setCardId(tjReservation.getCardId()); + tjCustomer.setIndexCard(tjReservation.getIndexCard()); //鎴彇瀵嗙爜鑷姩鐢熸垚set杩涘幓 String substring = cusIdcard.substring(cusIdcard.length() - 6); @@ -145,11 +217,29 @@ return error("韬唤璇佸彿涓嶅瓨鍦�"); } + private void extracted(TjCustomer customer) { + //浠巋is琛ㄦ姄鏁版嵁 + LtkjMiddleHead pat = testMapper.getMiddleHeadByPartId(customer.getCardId()); + if (null != pat) { + List<LtkjMiddleDetail> list = testMapper.getMiddleDetailByFeadId(pat.getFeadId()); + DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); + LtkjMiddleHead o = headService.getMiddleHeadByPartId(customer.getCardId()); + if(o==null){ + headService.save(pat); + for (LtkjMiddleDetail ltkjMiddleDetail : list) { + middleDetailService.save(ltkjMiddleDetail); + } + } + testMapper.saveTjProByCusId(customer.getCardId(), customer.getCusIdcard()); + } + DynamicDataSourceContextHolder.clearDataSourceType(); + } + /** * 鏌ヨ瀹㈡埛淇℃伅鍒楄〃 */ - @PreAuthorize("@ss.hasPermi('hosp:customer:list')") +// @PreAuthorize("@ss.hasPermi('hosp:customer:list')") @GetMapping("/list") @ApiOperation(value = "鏌ョ湅瀹㈡埛鍒楄〃") public TableDataInfo list(TjCustomer tjCustomer) { @@ -202,9 +292,10 @@ if(null !=tjCustomer.getIdType()){ if(tjCustomer.getIdType().equals("1")){ b = MatchUtils.isIdCard(cusIdcard); - }else { - b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType()); } +// else { +// b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType()); +// } }else { return AjaxResult.error("璇烽�夋嫨璇佷欢绫诲瀷"); } @@ -229,7 +320,9 @@ String substring = cusIdcard.substring(cusIdcard.length() - 6); substring = DigestUtils.md5DigestAsHex(substring.getBytes()); tjCustomer.setCusPassword(substring); - tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd")); + if(tjCustomer.getIdType().equals("1")){ + tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd")); + } tjCustomer.setCusNumber(0L); if (tjCustomerService.save(tjCustomer)) { return AjaxResult.success(tjCustomer); -- Gitblit v1.8.0