zjh
2024-07-23 26c801991efedbd692ace4add657823594ff5455
zjh 2024/07/23-1
14个文件已修改
178 ■■■■ 已修改文件
ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-framework/src/main/java/com/ltkj/framework/web/exception/GlobalExceptionHandler.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcbgdMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderRemarkMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcbgdService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcbgdServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
@@ -14,6 +14,7 @@
import com.ltkj.hosp.domain.*;
import com.ltkj.hosp.mapper.DictUserInfoMapper;
import com.ltkj.hosp.service.*;
import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd;
import com.ltkj.hosp.sqlDomain.LtkjHybgd;
import com.ltkj.hosp.sqlDomain.LtkjHysqd;
import com.ltkj.system.service.ISysConfigService;
@@ -24,6 +25,7 @@
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.io.*;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
@@ -74,6 +76,10 @@
    private DictUserInfoMapper dictUserInfoMapper;
    @Autowired
    private ISysConfigService sysConfigService;
    @Resource
    private LtkjExamJcbgdService jcbgdService;
    @Resource
    private LtkjExamJcsqdService jcsqdService;
    private List<Map<String, Object>> makePDFInfo(HashMap<String, Object> map, AjaxResult ajaxResult, String key) {
        List<Map<String, Object>> data = null;
@@ -127,7 +133,10 @@
        // 组装检验数据
        HashMap<String, Object> map = makeHisJianYan(tjOrder, customer);
        makeHisJianYanTable(document1, map);
        List<ByteArrayOutputStream> jianchas = makeHisJianChaTable(tjOrder);
//        List<ByteArrayOutputStream> jianchas = makeCcgcHisJianChaTable(tjOrder);
        document1.close();
        pdfWriter.close();
        PdfReader reader = null;
@@ -273,6 +282,67 @@
        return jianchas;
    }
    /**
     * 生成检查表格存储过程时用
     *
     * @param tjOrder
     * @return
     */
    private List<ByteArrayOutputStream> makeCcgcHisJianChaTable(TjOrder tjOrder) throws Exception {
        TjCustomer customer = tjCustomerService.getById(tjOrder.getUserId());
       List<LtkjExamJcbgd> list=jcbgdService.getJianJcBaoGaoDanByTjh(tjOrder.getCardId());
        List<ByteArrayOutputStream> jianchas = new ArrayList<>();
        Paragraph elements = new Paragraph();
        elements.setLeading(5f);
        elements.setSpacingBefore(10f);
        elements.setSpacingAfter(10f);
        elements.setAlignment(Element.ALIGN_RIGHT);
        for (LtkjExamJcbgd getexamreportinfo : list) {
            String xm = customer.getCusName();
            String xb = customer.getCusSex()==2 ? "女" : "男";
            String nl = customer.getAge();
            String jcks = "体检中心";
            String sjks = "";
            String jcsb = "";
            String jch = getexamreportinfo.getTmh();
            String jcxm = getexamreportinfo.getXmmc();
            String ms = getexamreportinfo.getYxbx();
            String ts = getexamreportinfo.getYxzd();
            String bgysqm = getexamreportinfo.getShysxm();
            String shysqm = getexamreportinfo.getShysdm();
            String sqrxm = "王健萍";
            String zyh = "";
            String ch = "";
            String jcysqm = getexamreportinfo.getShysdm();
            StringBuilder builder;
            String footer;
            builder = new StringBuilder();
            if (null != sqrxm && StrUtil.isNotBlank(sqrxm)){
                builder.append("申请人:").append(sqrxm);
            }
            if (null != jcysqm && StrUtil.isNotBlank(jcysqm)){
                builder.append("     检查医师:").append(jcysqm);
            }
            if (null != shysqm && StrUtil.isNotBlank(shysqm)){
                builder.append("     审核医师:").append(shysqm);
            }
            if (null != bgysqm && StrUtil.isNotBlank(bgysqm)){
                builder.append("     报告医师:").append(bgysqm);
            }
            footer = builder.toString().trim();
            ByteArrayOutputStream outputStream = makeJcPDFByteArrayStream(xm, xb, nl, jcks, zyh, ch, sjks, jcsb, jch, jcxm, ms, ts, null, footer,elements);
            if (outputStream == null)
                throw new Exception();
            jianchas.add(outputStream);
        }
        return jianchas;
    }
    /**
     * 医师信息行
     * @param phrase
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -110,7 +110,8 @@
    private HisApiMethodService controller;
    @Autowired
    private HisApiGetMethodService service;
    @Autowired
    private HisApiConfigService hisApiConfigService;
    @GetMapping ("/getOperationPermissionsByTjNum")
    @ApiOperation (value = "(初审页面  和 医生页面)根据体检号获取是否可操作权限接口  true可操作  反之不可")
@@ -474,12 +475,16 @@
                    /*同步检查 his接口*/
//                    Map<String, Object> maps = new HashMap<>();
//                    maps.put("his_registration_id", order.getCardId());
//                    maps.put("ksbm", "体检中心");
//                    maps.put("pagecount", 100);
//                    maps.put("page", 1);
                    Map<String, Object> maps = new HashMap<>();
                    maps.put("his_registration_id", order.getCardId());
                    maps.put("ksbm", "体检中心");
                    maps.put("pagecount", 100);
                    maps.put("page", 1);
//                    AjaxResult results = service.getHISDataNew("Getexamreportinfo", maps);
                    LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>();
                    lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Getexamreportinfo");
                    HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper);
                    /*同步检查 his存储过程*/
@@ -494,11 +499,11 @@
                            jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId());
                            jcbgdService.deletedLtkjJcbgdByTjhAndTmh(order.getCardId());
                            for (Map<String, Object> objectMap : datas) {
//                                LtkjExamJcsqd jybgid = jcsqdService.getLtkjJcsqdByTjhAndTmh(order.getCardId(), objectMap.get("JCBGID").toString());
//                                if (null != jybgid) {
//                                    jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId(), objectMap.get("JCBGID").toString());
//                                    jcbgdService.deletedLtkjJcbgdByTjhAndTmh(jybgid.getTmh());
//                                }
                                //保存入参出参
//                                service.save((JSONObject)objectMap,"Getexamreportinfo",hisApiConfig,JSONUtil.toJsonStr(maps));
                                service.save(JSONUtil.parseObj(objectMap),"Getexamreportinfo",hisApiConfig,JSONUtil.toJsonStr(maps));
                                LtkjExamJcbgd jcbgd=new LtkjExamJcbgd();
                                jcbgd.setTjh(order.getCardId());
                                if(null !=objectMap.get("JCBGID") || !objectMap.get("JCBGID").equals(""))
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
@@ -386,6 +386,7 @@
                                   @ApiParam (value = "显示条数(默认10)") @RequestParam (defaultValue = "10") Integer pageSize,
                                   @ApiParam (value = "体检号)") @RequestParam (required = false) String tjNum,
                                   @ApiParam (value = "姓名)") @RequestParam (required = false) String name,
                                   @ApiParam (value = "项目名)") @RequestParam (required = false) String xmmc,
                                   @ApiParam (value = "登记开始时间") @RequestParam (required = false) Date djbeginTime,
                                   @ApiParam (value = "登记结束时间") @RequestParam (required = false) Date djendTime,
                                   @ApiParam (value = "报告开始时间") @RequestParam (required = false) Date bgbeginTime,
@@ -459,6 +460,12 @@
        if (null != tjNum) {
            wq.eq(TjOrder::getTjNumber, tjNum);
        }
        if (null != xmmc) {
            wq.in(TjOrder::getTjNumber, projectService.getTjNumLIstByXmmx(xmmc));
        }
        wq.orderByDesc(TjOrder::getCreateTime);
        Page<TjOrder> page2 = tjOrderService.page(page1, wq);
        List<TjOrder> list = page2.getRecords();
@@ -470,7 +477,6 @@
                    order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday()));
                    order.setTjCustomerName(tjCustomer.getCusName());
                    order.setTjCustomerPhone(tjCustomer.getCusPhone());
//                    order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard()));
                    order.setTjCusIdCard(tjCustomer.getCusIdcard());
                    order.setCareer(tjCustomer.getCareer());
                    order.setIdType(tjCustomer.getIdType());
@@ -484,7 +490,7 @@
                if (null != order.getPacId()) {
                    if (null != tjPackageService.getById(order.getPacId())) {
                        order.setPacName(tjPackageService.getById(order.getPacId()).getPacName());
                    }
                    }else
                    if (null != dwDeptService.getById(order.getPacId())) {
                        order.setPacName(dwDeptService.getById(order.getPacId()).getDwDeptName());
                    }
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java
@@ -96,7 +96,6 @@
    private ISysDictDataService dictDataService;
    @Resource
    private ITbTransitionService transitionService;
    @Autowired
    private ITjBigPositiveService tjBigPositiveService;
    @Autowired
@@ -420,8 +419,7 @@
        return AjaxResult.error();
    }
    @Autowired
    private TjReportController tjReportController;
    /**
     * 撤销
@@ -1466,34 +1464,11 @@
        //创建map 键为父项目  值为子项目集合
        Map<TjOrderRemark, List<TjPdfVO>> printReport = new LinkedHashMap<>();
        //查到该客户的体检记录
//        LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
//        wq1.eq(TjOrder::getTjNumber, tjNumber);
//        TjOrder one = tjOrderService.getOne(wq1);
        //拿到体检记录的orderid,查出项目详细信息
//        LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>();
//        wq.eq(TjOrderDetail::getOrderId, one.getOrderId());
//        //20230323判断项目已检
//        wq.ne(TjOrderDetail::getTjStatus, 0);
//        wq.eq(TjOrderDetail::getProId,projectService.getHuaYanProId());
//        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.list(wq);
        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.addHuaYanAndCgTable(tjNumber);
        //遍历体检记录 将项目的具体信息
        //遍历客户所选的项目(包含子项父项)
//        for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
//            TjProject tjProject = projectService.getById(tjOrderDetail.getProId());
//            if (null != tjProject) {
//                tjOrderDetail.setProject(tjProject);
//            }
//        }
//        LambdaQueryWrapper<TjCustomer> wq22 = new LambdaQueryWrapper<>();
//        wq22.eq(TjCustomer::getCusId, one.getUserId());
//        TjCustomer customer = tjCustomerService.getOne(wq22);
//        LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>();
//        wqq.eq(TjOrderRemark::getTjNumber, tjNumber);
//        wqq.eq(TjOrderRemark::getDeptId,"241");
//        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq);
        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.addHuaYanAndCgTable(tjNumber);
        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.addHuaYanAndCgTable(tjNumber);
        for (TjOrderRemark tjOrderRemark : tjOrderRemarks) {
            printReport.put(tjOrderRemark, null);
ltkj-admin/src/main/resources/application.yml
@@ -5,4 +5,4 @@
#xiaochengxu 泾川县部署小程序环境使用
spring:
  profiles:
    active: prod
    active: dev
ltkj-framework/src/main/java/com/ltkj/framework/web/exception/GlobalExceptionHandler.java
@@ -53,7 +53,8 @@
    public AjaxResult handleServiceException(ServiceException e, HttpServletRequest request) {
        log.error(e.getMessage(), e);
        Integer code = e.getCode();
        return StringUtils.isNotNull(code) ? AjaxResult.error(code, e.getMessage()) : AjaxResult.error(e.getMessage());
//        return StringUtils.isNotNull(code) ? AjaxResult.error(code, e.getMessage()) : AjaxResult.error(e.getMessage());
        return AjaxResult.error("数据处理异常,请联系管理员!");
    }
    /**
@@ -63,7 +64,7 @@
    public AjaxResult handleRuntimeException(RuntimeException e, HttpServletRequest request) {
        String requestURI = request.getRequestURI();
        log.error("请求地址'{}',发生未知异常.", requestURI, e);
        return AjaxResult.error(e.getMessage());
        return AjaxResult.error("数据处理异常,请联系管理员!");
    }
    /**
@@ -73,7 +74,7 @@
    public AjaxResult handleException(Exception e, HttpServletRequest request) {
        String requestURI = request.getRequestURI();
        log.error("请求地址'{}',发生系统异常.", requestURI, e);
        return AjaxResult.error(e.getMessage());
        return AjaxResult.error("数据处理异常,请联系管理员!");
    }
    /**
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcbgdMapper.java
@@ -28,4 +28,7 @@
    @Select("SELECT * FROM ltkj_exam_jcbgd WHERE tmh=#{tmh} GROUP BY xmmc ")
    List<LtkjExamJcbgd> getJianJcBaoGaoDanList(String tmh);
@Select("SELECT * FROM ltkj_exam_jcbgd WHERE tjh=#{cardId}")
    List<LtkjExamJcbgd> getJianJcBaoGaoDanByTjh(String cardId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
@@ -23,7 +23,8 @@
    @Select("SELECT COUNT(zb.sqdh) sfjf FROM (\n" +
            "SELECT aa.sqdh,SUM(aa.fyhj) hj FROM (\n" +
            "SELECT DISTINCT a.sqdh,  a.fyhj FROM ltkj_jianchajianyan_tree a WHERE a.card_id=#{cardId}) aa  GROUP BY aa.sqdh) zb\n" +
            "LEFT JOIN   ( SELECT a.adv_id ,SUM(a.catefee) hj FROM ltkj_querypay a WHERE a.ghxh=#{cardId} GROUP BY a.adv_id) cb ON\n" +
            "LEFT JOIN   ( SELECT a.adv_id ,SUM(a.catefee) hj FROM ltkj_querypay a WHERE a.ghxh=#{cardId} GROUP BY" +
            " CASE WHEN a.adv_id IS NOT NULL AND LOCATE( '_', a.adv_id )> 0 THEN SUBSTRING_INDEX( a.adv_id, '_',- 1 ) ELSE a.adv_id END) cb ON\n" +
            "\t\tzb.sqdh=(case when cb.adv_id is not null and LOCATE('_',cb.adv_id)>0 then SUBSTRING_INDEX(cb.adv_id,'_',-1) else cb.adv_id end) \n" +
            "WHERE  zb.hj <> cb.hj or cb.adv_id is null;")
    int getSfsfByCardId(String cardId);
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderRemarkMapper.java
@@ -125,8 +125,8 @@
            "\tLEFT JOIN tj_project pro ON re.pro_id = pro.pro_id\n" +
            "\tLEFT JOIN sys_user us ON us.user_id = re.doctor_name \n" +
            "WHERE\n" +
            "\tre.type != 2  \n" +//and pro.need_report='Y'
            "\tAND re.tj_number =#{tjNumber}")
            "re.type != 2  \n" +//and pro.need_report='Y'
            "AND re.tj_number =#{tjNumber}")
    List<CsProVo> cSWebGetProByTjNumAndOrderId(String tjNumber);
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java
@@ -173,4 +173,10 @@
    @Select("SELECT * FROM tj_project WHERE pro_parent_id=#{proParentId} AND deleted='0' and pro_id in" +
            " (SELECT a.pro_id FROM tb_transition a WHERE a.tj_num=#{tjNumber}) ")
    List<TjProject> getTjProjectListByTbTransition(@Param("proParentId") String proParentId,@Param("tjNumber")String tjNumber);
    @Select("SELECT b.tj_number FROM tj_order_remark b WHERE b.deleted=0 AND b.pro_id IN(\n" +
            "\n" +
            "SELECT a.pro_id FROM tj_project a WHERE a.deleted=0 AND a.pro_status=0 AND LOCATE(#{xmmc},a.pro_name) ) GROUP BY b.tj_number")
    List<String> getTjNumLIstByXmmx(String xmmc);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java
@@ -128,4 +128,7 @@
    List<TjProject> getTjProjectListByTbTransition(String proParentId, String tjNumber);
    //根据项目名模糊搜索体检号
    List<String> getTjNumLIstByXmmx(String xmmc);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcbgdService.java
@@ -20,4 +20,6 @@
    List<String> getJianJcBaoGaoDan(String cardId);
    List<LtkjExamJcbgd> getJianJcBaoGaoDanList(String tmh);
    List<LtkjExamJcbgd> getJianJcBaoGaoDanByTjh(String cardId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcbgdServiceImpl.java
@@ -39,4 +39,9 @@
    public List<LtkjExamJcbgd> getJianJcBaoGaoDanList(String tmh) {
        return mapper.getJianJcBaoGaoDanList(tmh);
    }
    @Override
    public List<LtkjExamJcbgd> getJianJcBaoGaoDanByTjh(String cardId) {
        return mapper.getJianJcBaoGaoDanByTjh(cardId);
    }
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java
@@ -251,6 +251,11 @@
        return tjProjectMapper.getTjProjectListByTbTransition(proParentId,tjNumber);
    }
    @Override
    public List<String> getTjNumLIstByXmmx(String xmmc) {
        return tjProjectMapper.getTjNumLIstByXmmx(xmmc);
    }
    /**
     * 递归列表
     */