zjh
昨天 99d28bddd6ad5bd7c87babf7dcab670215993cb6
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;
@@ -355,6 +357,17 @@
    }
    @PostMapping("/newaddOrderYcXmJyByTjh")
    @ApiOperation(value = "总检医生页面新增异常项目建议(单个)")
    public AjaxResult newaddOrderYcXmJyByTjh(@RequestBody TjOrderYcxm ycxm) {
        ycxm.setJynr(JSONUtil.toJsonStr(ycxm.getMap()));
        ycxmService.saveOrUpdate(ycxm);
        return AjaxResult.success();
    }
    /**
     * 初审
     */
@@ -452,15 +465,22 @@
                        //同步检验
                        if (null != baoGaoDans && baoGaoDans.size() > 0) {
                            Date dates = new Date();
                            Map<String, Object> map = new HashMap<>();
                            map.put("his_registration_id", order.getCardId());
                            map.put("ksbm", "");
                            map.put("pationid", "");
                            map.put("ksrq", DateUtil.format(DateUtil.beginOfDay(order.getCreateTime()), "yyyy-MM-dd HH:mm:ss"));
                            map.put("jsrq", DateUtil.format(DateUtil.endOfDay(dates), "yyyy-MM-dd HH:mm:ss"));
                            map.put("pagecount", 10);
                            map.put("page", 1);
                            AjaxResult result = controller.Getlabreportinfo(map);
                            String jytbfs = configService.selectConfigByKey("jytbfs");
                            AjaxResult result;
                            if (StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){
                                Map<String, Object> map = new HashMap<>();
                                map.put("his_registration_id", order.getCardId());
                                map.put("ksbm", "");
                                map.put("pationid", "");
                                map.put("ksrq", DateUtil.format(DateUtil.beginOfDay(order.getCreateTime()), "yyyy-MM-dd HH:mm:ss"));
                                map.put("jsrq", DateUtil.format(DateUtil.endOfDay(dates), "yyyy-MM-dd HH:mm:ss"));
                                map.put("pagecount", 10);
                                map.put("page", 1);
                                result = controller.Getlabreportinfo(map);
                            }else{
                                result = ltkjHysqdService.getAsyncDataByPro("体检中心", order.getCardId(), "''", 100, 1);
                            }
                            String result1 = getAjaxResult(result);
                            JSONObject object = getJSONObject(result1);
                            String code = object.getStr("ResultCode");
@@ -492,68 +512,71 @@
                                hysqd.setShrxm(jsonObject.getStr("JYYSQM"));
                                hysqd.setJybgjg(jsonObject.getStr("JYBGJG"));
                                if (ltkjHysqdService.save(hysqd)) {
                                    Map<String, Object> hashMap = new HashMap<>();
                                    hashMap.put("jybgid", hysqd.getTmh());
                                    AjaxResult bgdres = controller.Getlabdetailinfo(hashMap);
                                    String result2 = getAjaxResult(bgdres);
                                    JSONObject object1 = getJSONObject(result2);
                                    String code1 = object1.getStr("ResultCode");
                                    if (null != code1 && code1.equals("0")) {
                                        JSONArray datas = object1.getJSONArray("ResultData");
                                        for (Object o : datas) {
                                            JSONObject js = (JSONObject) o;
                                    if(StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){
                                        Map<String, Object> hashMap = new HashMap<>();
                                        hashMap.put("jybgid", hysqd.getTmh());
                                        AjaxResult bgdres = controller.Getlabdetailinfo(hashMap);
                                        String result2 = getAjaxResult(bgdres);
                                        JSONObject object1 = getJSONObject(result2);
                                        String code1 = object1.getStr("ResultCode");
                                        if (null != code1 && code1.equals("0")) {
                                            JSONArray datas = object1.getJSONArray("ResultData");
                                            for (Object o : datas) {
                                                JSONObject js = (JSONObject) o;
//                            ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(jsonObject.getStr("JYBGID"));
                                            LtkjHybgd bgd = new LtkjHybgd();
                                            bgd.setTmh(hysqd.getTmh());
                                            bgd.setJcxmid(js.getStr("JCZBDM"));
                                            bgd.setJcxm(js.getStr("JCZBMC"));
                                            bgd.setTdh(js.getStr(""));
                                            bgd.setJyjg(js.getStr("JCZBJG"));
                                            bgd.setJgdw(js.getStr("JLDW"));
                                            bgd.setFwzdz(js.getStr(""));
                                            bgd.setFwzgz(js.getStr(""));
                                            bgd.setFwz(js.getStr("CKZFW"));
                                            bgd.setJysj(js.getStr("BGRQ"));
                                            bgd.setJyys(js.getStr("JCRBH"));
                                            bgd.setShsj(js.getStr("BGRQ"));
                                            bgd.setShsj(js.getStr("BGRQ"));
                                            bgd.setShys(js.getStr("SHRBH"));
                                            bgd.setShysmc(js.getStr("SHRXM"));
                                            bgd.setYcbz(js.getStr("YCTS"));
                                                LtkjHybgd bgd = new LtkjHybgd();
                                                bgd.setTmh(hysqd.getTmh());
                                                bgd.setJcxmid(js.getStr("JCZBDM"));
                                                bgd.setJcxm(js.getStr("JCZBMC"));
                                                bgd.setTdh(js.getStr(""));
                                                bgd.setJyjg(js.getStr("JCZBJG"));
                                                bgd.setJgdw(js.getStr("JLDW"));
                                                bgd.setFwzdz(js.getStr(""));
                                                bgd.setFwzgz(js.getStr(""));
                                                bgd.setFwz(js.getStr("CKZFW"));
                                                bgd.setJysj(js.getStr("BGRQ"));
                                                bgd.setJyys(js.getStr("JCRBH"));
                                                bgd.setShsj(js.getStr("BGRQ"));
                                                bgd.setShsj(js.getStr("BGRQ"));
                                                bgd.setShys(js.getStr("SHRBH"));
                                                bgd.setShysmc(js.getStr("SHRXM"));
                                                bgd.setYcbz(js.getStr("YCTS"));
//                            bgd.setTpurl(js.getStr(""));
                                            ltkjHybgdService.save(bgd);
                                                ltkjHybgdService.save(bgd);
                                            }
                                        }
                                    }
                                    Map<String, Object> fbhashMap = new HashMap<>();
                                    fbhashMap.put("jybgid", hysqd.getTmh());
                                    AjaxResult fbres = controller.Getlabgermrepinfo(fbhashMap);
                                    String ajaxResult = getAjaxResult(fbres);
                                    JSONObject fbobject = getJSONObject(ajaxResult);
                                    String fbcode = fbobject.getStr("ResultCode");
                                    if (null != fbcode && fbcode.equals("0")) {
                                        JSONArray datas = fbobject.getJSONArray("ResultData");
                                        for (Object o : datas) {
                                            JSONObject js = (JSONObject) o;
                                            LtkjHybgd bgd = new LtkjHybgd();
                                            bgd.setTmh(hysqd.getTmh());
                                            bgd.setJcxmid(hysqd.getXmid());
                                            bgd.setJcxm(hysqd.getXmmc());
                                            bgd.setTdh(js.getStr(""));
                                            bgd.setJyjg(js.getStr("JCJG"));
                                            bgd.setJgdw("/");
                                            bgd.setFwzdz("/");
                                            bgd.setFwzgz("/");
                                            bgd.setFwz("/");
                                            bgd.setJysj(js.getStr("BGRQ"));
                                            bgd.setJyys(hysqd.getSqrxm());
                                            bgd.setShsj(js.getStr("BGRQ"));
                                            bgd.setShys(hysqd.getShrdm());
                                            bgd.setShysmc(hysqd.getShrxm());
                                            ltkjHybgdService.save(bgd);
                                        Map<String, Object> fbhashMap = new HashMap<>();
                                        fbhashMap.put("jybgid", hysqd.getTmh());
                                        AjaxResult fbres = controller.Getlabgermrepinfo(fbhashMap);
                                        String ajaxResult = getAjaxResult(fbres);
                                        JSONObject fbobject = getJSONObject(ajaxResult);
                                        String fbcode = fbobject.getStr("ResultCode");
                                        if (null != fbcode && fbcode.equals("0")) {
                                            JSONArray datas = fbobject.getJSONArray("ResultData");
                                            for (Object o : datas) {
                                                JSONObject js = (JSONObject) o;
                                                LtkjHybgd bgd = new LtkjHybgd();
                                                bgd.setTmh(hysqd.getTmh());
                                                bgd.setJcxmid(hysqd.getXmid());
                                                bgd.setJcxm(hysqd.getXmmc());
                                                bgd.setTdh(js.getStr(""));
                                                bgd.setJyjg(js.getStr("JCJG"));
                                                bgd.setJgdw("/");
                                                bgd.setFwzdz("/");
                                                bgd.setFwzgz("/");
                                                bgd.setFwz("/");
                                                bgd.setJysj(js.getStr("BGRQ"));
                                                bgd.setJyys(hysqd.getSqrxm());
                                                bgd.setShsj(js.getStr("BGRQ"));
                                                bgd.setShys(hysqd.getShrdm());
                                                bgd.setShysmc(hysqd.getShrxm());
                                                ltkjHybgdService.save(bgd);
                                            }
                                        }
                                    }else {
                                        saveHybgdPro(hysqd);
                                    }
                                }
                            }
                            //同步化验项目
@@ -753,15 +776,23 @@
                        String resultMsg = "";
                        if (null != baoGaoDans && !baoGaoDans.isEmpty()) {
                            Date dates = new Date();
                            Map<String, Object> map = new HashMap<>();
                            map.put("his_registration_id", order.getCardId());
                            map.put("ksbm", "");
                            map.put("pationid", "");
                            map.put("ksrq", DateUtil.format(DateUtil.beginOfDay(order.getCreateTime()), "yyyy-MM-dd HH:mm:ss"));
                            map.put("jsrq", DateUtil.format(DateUtil.endOfDay(dates), "yyyy-MM-dd HH:mm:ss"));
                            map.put("pagecount", 10);
                            map.put("page", 1);
                            AjaxResult result = controller.Getlabreportinfo(map);
                            String jytbfs = configService.selectConfigByKey("jytbfs");
                            AjaxResult result;
                            if (StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){
                                Map<String, Object> map = new HashMap<>();
                                map.put("his_registration_id", order.getCardId());
                                map.put("ksbm", "");
                                map.put("pationid", "");
                                map.put("ksrq", DateUtil.format(DateUtil.beginOfDay(order.getCreateTime()), "yyyy-MM-dd HH:mm:ss"));
                                map.put("jsrq", DateUtil.format(DateUtil.endOfDay(dates), "yyyy-MM-dd HH:mm:ss"));
                                map.put("pagecount", 10);
                                map.put("page", 1);
                                result = controller.Getlabreportinfo(map);
                            }else {
                                result = ltkjHysqdService.getAsyncDataByPro("体检中心", order.getCardId(), "''", 100, 1);
                            }
                            log.info("检验项目查询返回值:      " + JSONUtil.toJsonStr(result));
                            String result1 = getAjaxResult(result);
                            JSONObject object = getJSONObject(result1);
                            String code = object.getStr("ResultCode");
@@ -777,28 +808,36 @@
                                    boolean isInsertHysqd = false;
                                    LtkjHysqd hysqd = new LtkjHysqd();
                                    hysqd.setTjh(order.getCardId());
                                    hysqd.setTmh(jsonObject.getStr("JYBGID"));
                                    hysqd.setBbbh(jsonObject.getStr("BBDM"));
                                    hysqd.setBbmc(jsonObject.getStr("BBMC"));
                                    hysqd.setXmid(jsonObject.getStr("JYXMDM"));
                                    hysqd.setXmmc(jsonObject.getStr("JYXMMC"));
                                    hysqd.setSqsj(jsonObject.getStr("SQRQ"));
                                    hysqd.setSqys(jsonObject.getStr("SQRBH"));
                                    hysqd.setJgsj(jsonObject.getStr("JYBGRQ"));
                                    hysqd.setSqrxm(jsonObject.getStr("SQRXM"));
                                    hysqd.setSqdh(jsonObject.getStr("SQDBH"));
                                    hysqd.setShrdm(jsonObject.getStr("JYYSBH"));
                                    hysqd.setShrxm(jsonObject.getStr("JYYSQM"));
                                    hysqd.setJybgjg(jsonObject.getStr("JYBGJG"));
                                    hysqd.setTmh(jsonObject.getStr("JYBGID"));// 检验报告 ID
                                    hysqd.setBbbh(jsonObject.getStr("BBDM"));// 标本代码
                                    hysqd.setBbmc(jsonObject.getStr("BBMC"));// 标本名称
                                    hysqd.setXmid(jsonObject.getStr("JYXMDM"));// 检验项目代码
                                    hysqd.setXmmc(jsonObject.getStr("JYXMMC"));// 检验项目名称
                                    hysqd.setSqsj(jsonObject.getStr("SQRQ"));// 申请时间
                                    hysqd.setSqys(jsonObject.getStr("SQRBH"));// 申请医生编号
                                    hysqd.setJgsj(jsonObject.getStr("JYBGRQ"));// 报告日期
                                    hysqd.setSqrxm(jsonObject.getStr("SQRXM"));// 申请医生姓名
                                    hysqd.setSqdh(jsonObject.getStr("SQDBH"));// 申请医生代码,字典代码
                                    hysqd.setShrdm(jsonObject.getStr("JYYSBH"));// 审核人员代码,字典代码
                                    hysqd.setShrxm(jsonObject.getStr("JYYSQM"));// 审核人员姓名
                                    hysqd.setJybgjg(jsonObject.getStr("JYBGJG"));// 检验报告结果
                                    hysqd.setCreateTime(new Date());
                                    QueryWrapper<LtkjHysqd> queryWrapper = new QueryWrapper<>(hysqd);
                                    List<LtkjHysqd> list = ltkjHysqdService.list(queryWrapper);
                                    if (list.isEmpty())
                                        isInsertHysqd = true;
                                    if (isInsertHysqd) {
                                        saveHysqd(hysqd);
                                    } else {
                                        saveHybgd(hysqd);
                                    if(StrUtil.isBlank(jytbfs) || jytbfs.equalsIgnoreCase("Y")){
                                        if (isInsertHysqd) {
                                            saveHysqd(hysqd);
                                        } else {
                                            saveHybgd(hysqd);
                                        }
                                    }else {
                                        if (isInsertHysqd) {
                                            saveHysqdPro(hysqd);
                                        } else {
                                            saveHybgdPro(hysqd);
                                        }
                                    }
                                }
                            } else {
@@ -820,13 +859,13 @@
                            /*同步检查 his存储过程*/
                            String jctbfs = configService.selectConfigByKey("jctbfs");
                            AjaxResult results = null;
                            if (jctbfs.equalsIgnoreCase("Y")) {
                            if (StrUtil.isBlank(jctbfs) || jctbfs.equalsIgnoreCase("Y")) {
                                results = service.getHISDataNew("Getexamreportinfo", maps);
                            } else {
                                results = jcsqdService.getTjJcProByHisCall("体检中心", order.getCardId(), "''", 100, 1, "'1'");
                                DynamicDataSourceContextHolder.clearDataSourceType();
                            }
                            log.info("检查项目查询返回值:      " + results.toString());
                            log.info("检查项目查询返回值:      " + JSONUtil.toJsonStr(results));
                            if (Integer.parseInt(results.get("code").toString()) == 200) {
                                List<Map<String, Object>> datas = (List<Map<String, Object>>) results.get("data");
                                if (null != datas && !datas.isEmpty()) {
@@ -868,24 +907,39 @@
                                            jcbgd.setSqsj(objectMap.get("SQRQSJ").toString());
                                        jcbgd.setCreateTime(new Date());
                                        jcbgdService.save(jcbgd);
                                    }
                                    jcsqdService.saveLtkjExamJcsqd(order.getCardId());
//                                    List<LtkjExamJcsqd> jcsqdList = jcsqdService.getLtkjJcsqdByTjh(order.getCardId());
//                                    jcycxmService.deletedByTjh(order.getTjNumber());
//                                    if(!jcsqdList.isEmpty()){
//                                        for (LtkjExamJcsqd jcsqd : jcsqdList) {
//                                            if(StringUtil.isNotBlank(jcsqd.getJgzt())){
//                                                String[] split = jcsqd.getJgzt().replaceAll("\n", "").split("。|;|;|,|,");
//                                                for (String jg : split) {
//                                                    if(StringUtil.isNotBlank(jg) && !jg.contains("未见异常")
//                                                            && !jg.contains("未见明显异常") && !jg.contains("未见占位") && !jg.contains("未见")
//                                                            && !jg.contains("未见明显")&& !jg.contains("正常")&& !jg.contains("双侧椎间孔无狭窄")){
//                                                        TjJcycxm jcycxm=new TjJcycxm();
//                                                        jcycxm.setTjh(order.getTjNumber());
//                                                        jcycxm.setYqid("jczyy");
//                                                        String[] split1 = jcsqd.getJcxmid().split(";");
//                                                        jcycxm.setProId(split1[0]);
//                                                        jcycxm.setProName(jcsqd.getJcxmmc());
//                                                        jcycxm.setCreateTime(new Date());
//                                                        jcycxm.setJcjg(jg);
//                                                        jcycxmService.save(jcycxm);
//                                                    }
//                                                }
//                                            }
//                                        }
//                                    }
                                    configController.tjjcycxm(tjNumber,  "0");
                                    testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                                } else {
                                    resultMsg += "\n检查项目暂时未出结果,请稍后同步!!!";
                                }
                            }
                        }
                        /*        LambdaQueryWrapper<TjXdtgmdjg> wq = new LambdaQueryWrapper<>();
                        wq.eq(TjXdtgmdjg::getTjh, tjNumber);
                        List<TjXdtgmdjg> list = xdtgmdjgService.list(wq);
                        if (null != list && !list.isEmpty()) {
                            for (TjXdtgmdjg xdtgmdjg : list) {
                                pictureController.saveTjXdtgmdjgByJcbgd(xdtgmdjg);
                            }
                        }*/
                        if (StrUtil.isBlank(resultMsg))
                            return AjaxResult.success("同步成功");
@@ -907,6 +961,12 @@
    private void saveHysqd(LtkjHysqd hysqd) {
        if (ltkjHysqdService.save(hysqd)) {
            saveHybgd(hysqd);
        }
    }
    private void saveHysqdPro(LtkjHysqd hysqd) {
        if (ltkjHysqdService.save(hysqd)) {
            saveHybgdPro(hysqd);
        }
    }
@@ -981,6 +1041,60 @@
        }
    }
    private void saveHybgdPro(LtkjHysqd hysqd) {
        List<Map<String, Object>> mapList = ltkjHysqdService.getAsyncJybgdByPro(hysqd.getTmh());
        log.info("usp_his_getlabdetailinfolttj 返回->\n{}",JSONUtil.toJsonStr(mapList));
        for (Map<String, Object> map : mapList) {
            JSONObject js = JSONUtil.parseObj(map);
            LtkjHybgd bgd = new LtkjHybgd();
            bgd.setTmh(hysqd.getTmh());
            bgd.setJcxmid(js.getStr("JCZBDM"));
            bgd.setJcxm(js.getStr("JCZBMC"));
            bgd.setTdh(js.getStr(""));
            bgd.setJyjg(js.getStr("JCZBJG"));
            bgd.setJgdw(js.getStr("JLDW"));
            bgd.setFwzdz(js.getStr(""));
            bgd.setFwzgz(js.getStr(""));
            bgd.setFwz(js.getStr("CKZFW"));
            bgd.setJysj(js.getStr("BGRQ"));
            bgd.setJyys(js.getStr("JCRBH"));
            bgd.setShsj(js.getStr("BGRQ"));
            bgd.setShsj(js.getStr("BGRQ"));
            bgd.setShys(js.getStr("SHRBH"));
            bgd.setShysmc(js.getStr("SHRXM"));
            bgd.setYcbz(js.getStr("YCTS"));
            bgd.setCreateTime(new Date());
            QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd);
            List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper);
            if (list.isEmpty())
                ltkjHybgdService.save(bgd);
        }
        List<Map<String, Object>> mapList1 = ltkjHysqdService.getAsyncJybgdWswByPro(hysqd.getTmh());
        log.info("usp_his_getlabgermrepinfolttj 返回->\n{}",JSONUtil.toJsonStr(mapList1));
        for (Map<String, Object> map : mapList1) {
            JSONObject js = JSONUtil.parseObj(map);
            LtkjHybgd bgd = new LtkjHybgd();
            bgd.setTmh(hysqd.getTmh());
            bgd.setJcxmid(hysqd.getXmid());
            bgd.setJcxm(hysqd.getXmmc());
            bgd.setTdh(js.getStr(""));
            bgd.setJyjg(js.getStr("JCJG"));
            bgd.setJgdw("/");
            bgd.setFwzdz("/");
            bgd.setFwzgz("/");
            bgd.setFwz("/");
            bgd.setJysj(js.getStr("BGRQ"));
            bgd.setJyys(hysqd.getSqrxm());
            bgd.setShsj(js.getStr("BGRQ"));
            bgd.setShys(hysqd.getShrdm());
            bgd.setShysmc(hysqd.getShrxm());
            QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd);
            List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper);
            if (list.isEmpty())
                ltkjHybgdService.save(bgd);
        }
    }
    //将方法返回值解析成json格式
    public JSONObject getJSONObject(String builder) {
        String Response = JSONUtil.parseObj(builder).getStr("Response");
@@ -1027,7 +1141,8 @@
                              @ApiParam(value = "单位") @RequestParam(required = false) Long compId,
                              @ApiParam(value = "姓名)") @RequestParam(required = false) String name,
                              @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 config = configService.selectConfigByKey("tj_confirm");
//        DateTime beginTimes = null;
//        DateTime endTimes = null;
@@ -1124,7 +1239,7 @@
        if (name == null) name = "";
        if (beginTime == null) beginTime = "";
        if (endTime == null) endTime = "";
        return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name));
        return AjaxResult.success(orderService.getCunChuGuoChengCustomerList(tjNumber, page, pageSize, checkStatus, value, beginTime, endTime, name,tjCategory));
    }
@@ -1251,7 +1366,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")) {
@@ -1273,6 +1390,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) {
@@ -1522,6 +1643,8 @@
                parent.put("parentId", remark.getProsId());
                parent.put("xmlb", remark.getXmlb());
                parent.put("", remark.getXmlb());
                parent.put("zhiyejl",one.getZhiyeJl());
                parent.put("zhiyejg", one.getZhiyeJg());
                List<TjOrderDetail> dels = new ArrayList<>();
                if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
@@ -1565,7 +1688,12 @@
                                } catch (NumberFormatException ignored) {
                                }
                            } else {
                                tjOrderDetail.setYcbz("");
//                                tjOrderDetail.setYcbz("");
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阴"))
                                    tjOrderDetail.setYcbz("");
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阳"))
                                    tjOrderDetail.setYcbz("↑");
                                tjOrderDetail.setProResult(tjOrderDetail.getProResult());
                            }
@@ -1784,11 +1912,12 @@
                                if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                                    if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) {
                                        if (!tjOrderDetail.getDeptId().equals("2")) {
                                            String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "")
                                                    .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", "");
                                            List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
                                                    , tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "")
                                                            .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", ""), tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber
                                                    , tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "")
                                                            .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "")
                                                    , replacedAll,
                                                    tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber
                                                    ,replacedAll
                                                    , tjOrderDetail.getProResult());
@@ -1797,11 +1926,11 @@
                                            }
                                        } else {
                                            String[] split = tjOrderDetail.getProResult().split("。|,|,");
                                            String[] split = tjOrderDetail.getProResult().split("[。,,::.\\s]+");
                                            List<Map<String, Object>> mapList = new ArrayList<>();
                                            for (String s : split) {
                                                s = s.replaceAll("\n", "");
                                                //                                        Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s);
                                                s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", "").replaceAll(" ","")
                                                        .replaceAll("症","").replaceAll("[0-9]", "");
                                                Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb);
                                                if (null != maps && !maps.isEmpty()) {
                                                    Object bt = maps.get("bt");
@@ -1873,11 +2002,14 @@
                                    if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                                        if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) {
                                            if (!tjOrderDetail.getDeptId().equals("2")) {
                                                String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "")
                                                        .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", "");
                                                List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
                                                        , tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "")
                                                                .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", ""), tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber
                                                        , tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "")
                                                                .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "")
                                                        ,replacedAll,
                                                        tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber
                                                        , replacedAll
                                                        , tjOrderDetail.getProResult());
@@ -1889,7 +2021,7 @@
                                                String[] split = tjOrderDetail.getProResult().split("。|,|,");
                                                List<Map<String, Object>> mapList = new ArrayList<>();
                                                for (String s : split) {
                                                    s = s.replaceAll("\n", "");
                                                    s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", "");
                                                    Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb);
                                                    if (null != maps && !maps.isEmpty()) {
                                                        Object bt = maps.get("bt");
@@ -2014,4 +2146,90 @@
    }
    /**
     * 查询复查项目列表
     * @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("/zongjianyishengHuiFuyichangxiangmuanniu")
    @ApiOperation(value = "总检恢复异常项目按钮接口")
    public AjaxResult zongjianyishengHuiFuyichangxiangmuanniu(@RequestParam String id) {
        int a = ycxmService.zongjianyishengHuiFuyichangxiangmuanniu(id);
        return AjaxResult.success(a);
    }
    @GetMapping("/zongjianyishengCheDiShanChuyichangxiangmuanniu")
    @ApiOperation(value = "总检彻底删除异常项目按钮接口")
    public AjaxResult zongjianyishengCheDiShanChuyichangxiangmuanniu(@RequestParam String id) {
        int a = ycxmService.zongjianyishengCheDiShanChuyichangxiangmuanniu(id);
        return AjaxResult.success(a);
    }
    @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();
    }
}