zjh
2025-06-24 72f6490f736d60710b930d68dc087e6e503a9625
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -13,6 +13,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ltkj.common.annotation.RepeatSubmit;
import com.ltkj.common.core.domain.AjaxResult;
import com.ltkj.common.core.domain.entity.SysDept;
import com.ltkj.common.core.domain.entity.SysUser;
import com.ltkj.common.core.redis.RedisCache;
import com.ltkj.common.enums.DataSourceType;
@@ -25,6 +26,7 @@
import com.ltkj.hosp.mapper.TestMapper;
import com.ltkj.hosp.service.*;
import com.ltkj.hosp.sqlDomain.*;
import com.ltkj.hosp.vo.ProFcListVo;
import com.ltkj.hosp.vodomain.CsProVo;
import com.ltkj.hosp.vodomain.UpdateOrderRemarkVo;
import com.ltkj.mall.mallOrderUtils.TjConstants;
@@ -1003,7 +1005,8 @@
                              @ApiParam(value = "姓名)") @RequestParam(required = false) String name,
                              @ApiParam(value = "审核医生)") @RequestParam(required = false) String shys,
                              @ApiParam(value = "开始时间") @RequestParam(required = false) String beginTime,
                              @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime) {
                              @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime,
                              @ApiParam(value = "体检类型") @RequestParam(required = false) String tjCategory) {
        String value = String.valueOf(compId);
        if (tjNumber == null) tjNumber = "";
@@ -1012,7 +1015,7 @@
        if (shys == null) shys = "";
        if (beginTime == null) beginTime = "";
        if (endTime == null) endTime = "";
        return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name,shys));
        return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name,shys,tjCategory));
    }
@@ -1139,8 +1142,9 @@
//    @PreAuthorize("@ss.hasPermi('check:check:getTjdetailList')")
    public AjaxResult getTjdetailList(@ApiParam(value = "体检tjNumber") @RequestParam String tjNumber,
                                      @ApiParam(value = "总检建议") @RequestParam(required = false) String advice,
                                      @ApiParam(value = "审核状态0待审核1已审核") @RequestParam Integer checkStatus) {
                                      @ApiParam(value = "审核状态0待审核1已审核") @RequestParam Integer checkStatus,
                                      @ApiParam(value = "职业结论") @RequestParam(required = false) String zhiyeJl,
                                      @ApiParam(value = "职业结果") @RequestParam(required = false) String zhiyeJg) {
        String config = configService.selectConfigByKey("sfjcwjhyqxm");
        if (null != config && config.equalsIgnoreCase("Y")) {
            int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
@@ -1161,6 +1165,10 @@
                tjOrder.setCheckTime(date);
                tjOrder.setStatus(401);
                tjOrder.setFinishTime(date);
                if (StrUtil.isNotBlank(zhiyeJl))
                    tjOrder.setZhiyeJl(zhiyeJl);
                if (StrUtil.isNotBlank(zhiyeJg))
                    tjOrder.setZhiyeJg(zhiyeJg);
                if (orderService.updateById(tjOrder)) {
                    TjCustomer customer = customerService.getById(tjOrder.getUserId());
                    if (null != customer) {
@@ -1409,6 +1417,8 @@
                parent.put("parent", remark.getProName());
                parent.put("parentId", remark.getProsId());
                parent.put("xmlb", remark.getXmlb());
                parent.put("zhiyejl",one.getZhiyeJl());
                parent.put("zhiyejg", one.getZhiyeJg());
                parent.put("", remark.getXmlb());
                List<TjOrderDetail> dels = new ArrayList<>();
                if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
@@ -1453,7 +1463,11 @@
                                } catch (NumberFormatException ignored) {
                                }
                            } else {
                                tjOrderDetail.setYcbz("");
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阴"))
                                    tjOrderDetail.setYcbz("");
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阳"))
                                    tjOrderDetail.setYcbz("↑");
                                tjOrderDetail.setProResult(tjOrderDetail.getProResult());
                            }
@@ -1685,16 +1699,21 @@
                                            }
                                        } else {
                                            String[] split = tjOrderDetail.getProResult().split("[。,,::.\\s]+");
                                            String regex = configService.selectConfigByKey("jcycjgfgzz");
                                            if(StringUtil.isBlank(regex)) regex="。|;|;|,|,";
                                            String[] split = tjOrderDetail.getProResult().replaceAll("\n", "").split(regex);
                                            List<Map<String, Object>> mapList = new ArrayList<>();
                                            for (String s : split) {
                                                s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", "").replaceAll(" ","")
                                                        .replaceAll("症","").replaceAll("[0-9]", "");
                                                Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s.replaceAll(" ",""), "0",xb);
                                                if (null != maps && !maps.isEmpty()) {
                                                    Object bt = maps.get("bt");
                                                    Object nr = maps.get("nr");
                                                    if (null != bt || null != nr) mapList.add(maps);
                                                if(StringUtil.isNotBlank(s)){
                                                    s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", "").replaceAll(" ","")
                                                            .replaceAll("[0-9]", "");
                                                    Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s.replaceAll(" ",""), "0",xb);
                                                    if (null != maps && !maps.isEmpty()) {
                                                        Object bt = maps.get("bt");
                                                        Object nr = maps.get("nr");
                                                        if (null != bt || null != nr) mapList.add(maps);
                                                    }
                                                }
                                            }
                                            tjOrderDetail.setAdvices(mapList);
@@ -1889,5 +1908,70 @@
        return AjaxResult.success();
    }
    /**
     * 查询复查项目列表
     * @param tjNum 体检号
     * @param type 复查状态 0未复查状态 1复查状态
     * @return
     */
    @GetMapping("/getFcList")
    public AjaxResult getFcList(@RequestParam("tjNum") String tjNum,@RequestParam("type") Integer type){
        TjOrder order = orderService.getOrderByTjNum(tjNum);
        if (order == null)
            return AjaxResult.error();
        List<ProFcListVo> list = detailService.getFcList(order.getOrderId(),type);
        return AjaxResult.success(list);
    }
    /**
     * 复查项目提交
     * @param json
     * @return
     */
    @PostMapping("/UpdFcPro")
    public AjaxResult updFcPro(@RequestBody String json) {
        return detailService.updFcPro(json);
    }
    @GetMapping("/zongjianyishengHuiFuyichangxiangmu")
    @ApiOperation(value = "总检恢复异常项目接口")
    public AjaxResult zongjianyishengHuiFuyichangxiangmu(@RequestParam String tjNum) {
        List<TjOrderYcxm> list = ycxmService.zongjianyishengHuiFuyichangxiangmu(tjNum);
        return AjaxResult.success(list);
    }
    @GetMapping("/csymxmxzqtyybcjk")
    @ApiOperation(value = "初审页面项目选择其他原因保存接口")
    @Transactional
    public AjaxResult csymxmxzqtyybcjk(@RequestParam @ApiParam("体检号") String tjNum,@RequestParam @ApiParam("项目ID") String proId,
                                       @RequestParam @ApiParam("原因") String yy) {
        try {
            String czydm = SecurityUtils.getUsername();
            String czy = SecurityUtils.getLoginUser().getUser().getNickName();
            TjProject tjProject = projectService.getById(proId);
            if(null !=  tjProject){
                SysDept dept = deptService.getById(tjProject.getDeptId());
                LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
                wq.eq(TjOrderRemark::getTjNumber, tjNum);
                wq.eq(TjOrderRemark::getProId, proId);
                TjOrderRemark remark = orderRemarkService.getOne(wq);
                remark.setType(1);
                if (orderRemarkService.updateById(remark)) {
                    orderRemarkService.csymxmxzqtyybcjk(tjNum,proId,yy,dept.getOrgType(),czy,czydm);
                    return AjaxResult.success();
                }
            }
        } catch (Exception ex) {
            log.error(ex.getMessage());
            throw new RuntimeException(ex);
        }
        return AjaxResult.error();
    }
}