| | |
| | | package com.ltkj.web.controller.system; |
| | | |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.ltkj.framework.config.MatchUtils; |
| | | import com.ltkj.hosp.domain.TjAskHistorys; |
| | | import com.ltkj.hosp.domain.TjCustomer; |
| | | import com.ltkj.hosp.service.ITjAskHistorysService; |
| | | import com.ltkj.hosp.service.ITjCustomerService; |
| | | import com.ltkj.hosp.domain.*; |
| | | import com.ltkj.hosp.service.*; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.val; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | 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.TjAskMedicalHistory; |
| | | import com.ltkj.hosp.service.ITjAskMedicalHistoryService; |
| | | import com.ltkj.common.utils.poi.ExcelUtil; |
| | | import com.ltkj.common.core.page.TableDataInfo; |
| | | |
| | |
| | | private ITjCustomerService customerService; |
| | | @Resource |
| | | private ITjCustomerService tjCustomerService; |
| | | @Autowired |
| | | private ITjAskWorkLogService tjAskWorkLogService; |
| | | @Autowired |
| | | private ITjHarmTypeLogService tjHarmTypeLogService; |
| | | @Autowired |
| | | private ITjHarmTypeService tjHarmTypeService; |
| | | @Resource |
| | | private ITjOrderService tjOrderService; |
| | | |
| | | |
| | | /** |
| | | * 查询问诊列表 |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('hosp:history:list')") |
| | | @GetMapping("/getZhengZhuang") |
| | | @ApiOperation(value = "获取症状接口集") |
| | | public AjaxResult getZhengZhuang() { |
| | | List<DictZhengzhuang> zhengZhuang = tjAskMedicalHistoryService.getZhengZhuang(); |
| | | return AjaxResult.success(zhengZhuang); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 查询问诊列表 |
| | | */ |
| | | @GetMapping("/list") |
| | | public TableDataInfo list(TjAskMedicalHistory tjAskMedicalHistory) { |
| | | startPage(); |
| | |
| | | /** |
| | | * 导出问诊列表 |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('hosp:history:export')") |
| | | @Log(title = "问诊", businessType = BusinessType.EXPORT) |
| | | @PostMapping("/export") |
| | | public void export(HttpServletResponse response, TjAskMedicalHistory tjAskMedicalHistory) { |
| | |
| | | /** |
| | | * 获取问诊详细信息 |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('hosp:history:query')") |
| | | @GetMapping(value = "/{askId}") |
| | | public AjaxResult getInfo(@PathVariable("askId") Long askId) { |
| | | return success(tjAskMedicalHistoryService.selectTjAskMedicalHistoryByAskId(askId)); |
| | |
| | | */ |
| | | @GetMapping(value = "/getInfoById") |
| | | @ApiOperation(value = "根据客户id获取问诊详细信息") |
| | | public AjaxResult getInfoById(@RequestParam String userId) { |
| | | if (null != userId && !"".equals(userId)) { |
| | | LambdaQueryWrapper<TjAskMedicalHistory> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjAskMedicalHistory::getCusId, Long.valueOf(userId)); |
| | | TjAskMedicalHistory one = tjAskMedicalHistoryService.getOne(wq); |
| | | public AjaxResult getInfoById(@RequestParam String tjNumber) { |
| | | if (null != tjNumber && !"".equals(tjNumber)) { |
| | | // LambdaQueryWrapper<TjAskMedicalHistory> wq = new LambdaQueryWrapper<>(); |
| | | // wq.eq(TjAskMedicalHistory::getTjNum, tjNumber); |
| | | // TjAskMedicalHistory one = tjAskMedicalHistoryService.getOne(wq); |
| | | TjAskMedicalHistory one = tjAskMedicalHistoryService.selectTjAskMedicalHistoryByTjNum(tjNumber); |
| | | if (one != null) { |
| | | return success(tjAskMedicalHistoryService.selectTjAskMedicalHistoryByAskId(one.getAskId())); |
| | | LambdaQueryWrapper<TjAskWorkLog> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.eq(TjAskWorkLog::getTjNumber, tjNumber); |
| | | final List<TjAskWorkLog> list = tjAskWorkLogService.list(wqq); |
| | | one.setWorkLogs(list); |
| | | |
| | | for (TjAskWorkLog askWorkLog : list) { |
| | | LambdaQueryWrapper<TjHarmTypeLog> wqq1 = new LambdaQueryWrapper<>(); |
| | | wqq1.eq(TjHarmTypeLog::getWorkId, askWorkLog.getId()); |
| | | final List<TjHarmTypeLog> list1 = tjHarmTypeLogService.list(wqq1); |
| | | |
| | | List<String> skuNos = list1.stream() |
| | | .map(TjHarmTypeLog::getAid) |
| | | .collect(Collectors.toList()); |
| | | |
| | | askWorkLog.setHarmTypeLogs(skuNos); |
| | | } |
| | | |
| | | LambdaQueryWrapper<TjAskHistorys> wqq111 = new LambdaQueryWrapper<>(); |
| | | wqq111.eq(TjAskHistorys::getAskId, one.getAskId()); |
| | | final List<TjAskHistorys> list11 = historysService.list(wqq111); |
| | | one.setTjAskHistorysList(list11); |
| | | TjOrder order = tjOrderService.getOrderByTjNum(tjNumber); |
| | | one.setTjLx(order.getTjCategory()); |
| | | return AjaxResult.success(one); |
| | | }else { |
| | | TjAskMedicalHistory a = new TjAskMedicalHistory(); |
| | | LambdaQueryWrapper<TjOrder> wqqq = new LambdaQueryWrapper<>(); |
| | | wqqq.eq(TjOrder::getTjNumber, tjNumber); |
| | | final TjOrder order = tjOrderService.getOne(wqqq); |
| | | a.setCusId(order.getUserId()); |
| | | a.setTjNum(order.getTjNumber()); |
| | | a.setTjLx(order.getTjCategory()); |
| | | TjCustomer customer = customerService.getById(a.getCusId()); |
| | | if (customer != null) { |
| | | a.setCusName(MatchUtils.hideCusName(customer.getCusName())); |
| | | a.setCusIdCard(customer.getCusIdcard()); |
| | | a.setCusSex(String.valueOf(customer.getCusSex())); |
| | | } |
| | | return AjaxResult.success(a); |
| | | } |
| | | TjAskMedicalHistory a = new TjAskMedicalHistory(); |
| | | a.setCusId(Long.valueOf(userId)); |
| | | TjCustomer byId = customerService.getById(a.getCusId()); |
| | | if (byId != null) { |
| | | a.setCusName(MatchUtils.hideCusName(byId.getCusName())); |
| | | } |
| | | return AjaxResult.success(a); |
| | | } |
| | | return AjaxResult.success(); |
| | | return AjaxResult.error("查无此人"); |
| | | } |
| | | |
| | | /** |
| | | * 新增问诊 |
| | | */ |
| | | //@PreAuthorize("@ss.hasPermi('hosp:history:add')") |
| | | @Transactional |
| | | @Log(title = "问诊", businessType = BusinessType.INSERT) |
| | | @PostMapping |
| | | public AjaxResult add(@RequestBody TjAskMedicalHistory tjAskMedicalHistory) { |
| | | return toAjax(tjAskMedicalHistoryService.insertTjAskMedicalHistory(tjAskMedicalHistory)); |
| | | tjAskMedicalHistoryService.insertTjAskMedicalHistory(tjAskMedicalHistory); |
| | | final List<TjAskWorkLog> workLogs = tjAskMedicalHistory.getWorkLogs(); |
| | | if (workLogs != null) { |
| | | for (TjAskWorkLog workLog : workLogs) { |
| | | workLog.setCusId(tjAskMedicalHistory.getCusId()); |
| | | workLog.setCusName(tjAskMedicalHistory.getCusName()); |
| | | workLog.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | final boolean save = tjAskWorkLogService.save(workLog); |
| | | if (!save) { |
| | | return AjaxResult.error(); |
| | | } |
| | | List<String> harmTypeLogs = workLog.getHarmTypeLogs(); |
| | | if (harmTypeLogs != null) { |
| | | for (String harmTypeLog : harmTypeLogs) { |
| | | final TjHarmType byId = tjHarmTypeService.getById(harmTypeLog); |
| | | if (byId != null) { |
| | | TjHarmTypeLog log = new TjHarmTypeLog(); |
| | | log.setAid(byId.getAid()); |
| | | log.setCusId(tjAskMedicalHistory.getCusId()); |
| | | log.setCusName(tjAskMedicalHistory.getCusName()); |
| | | log.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | log.setWorkId(workLog.getId()); |
| | | tjHarmTypeLogService.saveOrUpdate(log); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | |
| | |
| | | * pc端修改问诊 |
| | | */ |
| | | @ApiOperation(value = "pc端修改问诊") |
| | | //@PreAuthorize("@ss.hasPermi('hosp:history:edit')") |
| | | @Log(title = "问诊", businessType = BusinessType.UPDATE) |
| | | @PutMapping |
| | | @Transactional |
| | | public AjaxResult edit(@RequestBody TjAskMedicalHistory tjAskMedicalHistory) { |
| | | boolean b =false; |
| | | LambdaQueryWrapper<TjAskWorkLog> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjAskWorkLog::getTjNumber, tjAskMedicalHistory.getTjNum()); |
| | | tjAskWorkLogService.remove(wq); |
| | | LambdaQueryWrapper<TjHarmTypeLog> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.eq(TjHarmTypeLog::getTjNumber, tjAskMedicalHistory.getTjNum()); |
| | | tjHarmTypeLogService.remove(wq1); |
| | | |
| | | |
| | | boolean b = false; |
| | | tjAskMedicalHistory.setFromBy("PC端"); |
| | | if (tjAskMedicalHistory.getAskId()!=null){ |
| | | if (tjAskMedicalHistory.getAskId() != null) { |
| | | b = tjAskMedicalHistoryService.updateById(tjAskMedicalHistory); |
| | | }else { |
| | | } else { |
| | | b = tjAskMedicalHistoryService.save(tjAskMedicalHistory); |
| | | } |
| | | //boolean b = tjAskMedicalHistoryService.saveOrUpdate(tjAskMedicalHistory); |
| | | if (b){ |
| | | if (b) { |
| | | List<TjAskHistorys> tjAskHistorysList = tjAskMedicalHistory.getTjAskHistorysList(); |
| | | if (tjAskHistorysList!=null&&tjAskHistorysList.size()>0){ |
| | | if (tjAskHistorysList != null && tjAskHistorysList.size() > 0) { |
| | | for (TjAskHistorys tjAskHistorys : tjAskMedicalHistory.getTjAskHistorysList()) { |
| | | tjAskHistorys.setAskId(tjAskMedicalHistory.getAskId()); |
| | | boolean b1 = historysService.saveOrUpdate(tjAskHistorys); |
| | | if (!b1){ |
| | | if (!b1) { |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | List<TjAskWorkLog> askWorkLogs = tjAskMedicalHistory.getWorkLogs(); |
| | | if (askWorkLogs != null && askWorkLogs.size() > 0) { |
| | | for (TjAskWorkLog askWorkLog : askWorkLogs) { |
| | | askWorkLog.setCusId(tjAskMedicalHistory.getCusId()); |
| | | askWorkLog.setCusName(tjAskMedicalHistory.getCusName()); |
| | | askWorkLog.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | askWorkLog.setAskId(tjAskMedicalHistory.getAskId()); |
| | | boolean b1 = tjAskWorkLogService.saveOrUpdate(askWorkLog); |
| | | List<String> harmTypeLogs = askWorkLog.getHarmTypeLogs(); |
| | | if (harmTypeLogs != null) { |
| | | for (String harmTypeLog : harmTypeLogs) { |
| | | final TjHarmType byId = tjHarmTypeService.getById(harmTypeLog); |
| | | if (byId != null) { |
| | | TjHarmTypeLog log = new TjHarmTypeLog(); |
| | | log.setAid(byId.getAid()); |
| | | log.setCusId(tjAskMedicalHistory.getCusId()); |
| | | log.setCusName(tjAskMedicalHistory.getCusName()); |
| | | log.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | log.setWorkId(askWorkLog.getId()); |
| | | tjHarmTypeLogService.save(log); |
| | | } |
| | | } |
| | | } |
| | | if (!b1) { |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | |
| | | * 小程序根据客户身份证号获取问诊详细信息 |
| | | */ |
| | | @GetMapping(value = "/appGetInfoById") |
| | | @ApiOperation(value = "小程序根据客户身份证号获取问诊详细信息") |
| | | public AjaxResult appGetInfoById(@RequestParam("cusIdCard") String cusIdCard) { |
| | | LambdaQueryWrapper<TjCustomer> wqqq=new LambdaQueryWrapper<>(); |
| | | wqqq.eq(TjCustomer::getCusIdcard,cusIdCard); |
| | | TjCustomer one1 = tjCustomerService.getOne(wqqq); |
| | | |
| | | if (one1!=null){ |
| | | LambdaQueryWrapper<TjAskMedicalHistory> wq=new LambdaQueryWrapper<>(); |
| | | wq.eq(TjAskMedicalHistory::getCusId,one1.getCusId()); |
| | | @ApiOperation(value = "小程序根据体检号获取问诊详细信息") |
| | | public AjaxResult appGetInfoById(@RequestParam("tjNumber") String tjNumber) { |
| | | if (null != tjNumber && !"".equals(tjNumber)) { |
| | | LambdaQueryWrapper<TjAskMedicalHistory> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjAskMedicalHistory::getTjNum, tjNumber); |
| | | TjAskMedicalHistory one = tjAskMedicalHistoryService.getOne(wq); |
| | | if (one!=null){ |
| | | return success(tjAskMedicalHistoryService.selectTjAskMedicalHistoryByAskId(one.getAskId())); |
| | | }else { |
| | | TjAskMedicalHistory a=new TjAskMedicalHistory(); |
| | | a.setCusId(Long.valueOf(one1.getCusId())); |
| | | TjCustomer byId = customerService.getById(a.getCusId()); |
| | | if (byId!=null){ |
| | | a.setCusName(byId.getCusName()); |
| | | if (one != null) { |
| | | LambdaQueryWrapper<TjAskWorkLog> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.eq(TjAskWorkLog::getTjNumber, tjNumber); |
| | | final List<TjAskWorkLog> list = tjAskWorkLogService.list(wqq); |
| | | one.setWorkLogs(list); |
| | | |
| | | for (TjAskWorkLog askWorkLog : list) { |
| | | LambdaQueryWrapper<TjHarmTypeLog> wqq1 = new LambdaQueryWrapper<>(); |
| | | wqq1.eq(TjHarmTypeLog::getWorkId, askWorkLog.getId()); |
| | | final List<TjHarmTypeLog> list1 = tjHarmTypeLogService.list(wqq1); |
| | | |
| | | List<String> skuNos = list1.stream() |
| | | .map(TjHarmTypeLog::getAid) |
| | | .collect(Collectors.toList()); |
| | | |
| | | askWorkLog.setHarmTypeLogs(skuNos); |
| | | } |
| | | |
| | | LambdaQueryWrapper<TjAskHistorys> wqq111 = new LambdaQueryWrapper<>(); |
| | | wqq111.eq(TjAskHistorys::getAskId, one.getAskId()); |
| | | final List<TjAskHistorys> list11 = historysService.list(wqq111); |
| | | one.setTjAskHistorysList(list11); |
| | | |
| | | return AjaxResult.success(one); |
| | | }else { |
| | | TjAskMedicalHistory a = new TjAskMedicalHistory(); |
| | | LambdaQueryWrapper<TjOrder> wqqq = new LambdaQueryWrapper<>(); |
| | | wqqq.eq(TjOrder::getTjNumber, tjNumber); |
| | | final TjOrder one1 = tjOrderService.getOne(wqqq); |
| | | a.setCusId(one1.getUserId()); |
| | | TjCustomer byId11 = customerService.getById(a.getCusId()); |
| | | if (byId11 != null) { |
| | | a.setCusName(MatchUtils.hideCusName(byId11.getCusName())); |
| | | } |
| | | return AjaxResult.success(a); |
| | | } |
| | | } |
| | |
| | | @ApiOperation(value = "小程序修改问诊") |
| | | @PostMapping("/appEdit") |
| | | public AjaxResult appEdit(@RequestBody TjAskMedicalHistory tjAskMedicalHistory) { |
| | | boolean b =false; |
| | | tjAskMedicalHistory.setFromBy("小程序端"); |
| | | if (tjAskMedicalHistory.getAskId()!=null){ |
| | | LambdaQueryWrapper<TjAskWorkLog> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjAskWorkLog::getTjNumber, tjAskMedicalHistory.getTjNum()); |
| | | tjAskWorkLogService.remove(wq); |
| | | LambdaQueryWrapper<TjHarmTypeLog> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.eq(TjHarmTypeLog::getTjNumber, tjAskMedicalHistory.getTjNum()); |
| | | tjHarmTypeLogService.remove(wq1); |
| | | |
| | | |
| | | boolean b = false; |
| | | tjAskMedicalHistory.setFromBy("PC端"); |
| | | if (tjAskMedicalHistory.getAskId() != null) { |
| | | b = tjAskMedicalHistoryService.updateById(tjAskMedicalHistory); |
| | | }else { |
| | | } else { |
| | | b = tjAskMedicalHistoryService.save(tjAskMedicalHistory); |
| | | } |
| | | if (b){ |
| | | //boolean b = tjAskMedicalHistoryService.saveOrUpdate(tjAskMedicalHistory); |
| | | if (b) { |
| | | List<TjAskHistorys> tjAskHistorysList = tjAskMedicalHistory.getTjAskHistorysList(); |
| | | if (tjAskHistorysList!=null&&tjAskHistorysList.size()>0){ |
| | | if (tjAskHistorysList != null && tjAskHistorysList.size() > 0) { |
| | | for (TjAskHistorys tjAskHistorys : tjAskMedicalHistory.getTjAskHistorysList()) { |
| | | tjAskHistorys.setAskId(tjAskMedicalHistory.getAskId()); |
| | | boolean b1 = historysService.saveOrUpdate(tjAskHistorys); |
| | | if (!b1){ |
| | | if (!b1) { |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | List<TjAskWorkLog> askWorkLogs = tjAskMedicalHistory.getWorkLogs(); |
| | | if (askWorkLogs != null && askWorkLogs.size() > 0) { |
| | | for (TjAskWorkLog askWorkLog : askWorkLogs) { |
| | | askWorkLog.setCusId(tjAskMedicalHistory.getCusId()); |
| | | askWorkLog.setCusName(tjAskMedicalHistory.getCusName()); |
| | | askWorkLog.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | askWorkLog.setAskId(tjAskMedicalHistory.getAskId()); |
| | | boolean b1 = tjAskWorkLogService.saveOrUpdate(askWorkLog); |
| | | List<String> harmTypeLogs = askWorkLog.getHarmTypeLogs(); |
| | | if (harmTypeLogs != null) { |
| | | for (String harmTypeLog : harmTypeLogs) { |
| | | final TjHarmType byId = tjHarmTypeService.getById(harmTypeLog); |
| | | if (byId != null) { |
| | | TjHarmTypeLog log = new TjHarmTypeLog(); |
| | | log.setAid(byId.getAid()); |
| | | log.setCusId(tjAskMedicalHistory.getCusId()); |
| | | log.setCusName(tjAskMedicalHistory.getCusName()); |
| | | log.setTjNumber(tjAskMedicalHistory.getTjNum()); |
| | | log.setWorkId(askWorkLog.getId()); |
| | | tjHarmTypeLogService.saveOrUpdate(log); |
| | | } |
| | | } |
| | | } |
| | | if (!b1) { |
| | | return AjaxResult.error(); |
| | | } |
| | | } |
| | |
| | | /** |
| | | * 删除问诊 |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('hosp:history:remove')") |
| | | @Log(title = "问诊", businessType = BusinessType.DELETE) |
| | | @DeleteMapping("/{askIds}") |
| | | public AjaxResult remove(@PathVariable Long[] askIds) { |