zjh
2024-12-25 79f9fbd9f999e26af3f0bca534d825eb687e092c
ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -31,6 +31,7 @@
import com.ltkj.system.domain.SysUserPost;
import com.ltkj.system.service.*;
import com.ltkj.web.controller.his.HisApiGetMethodService;
import com.ltkj.web.wxUtils.HttpClientUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@@ -117,6 +118,23 @@
    private HisApiGetMethodService hisApiGetMethodService;
    @Autowired
    private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService;
    @GetMapping("/getdangqiandengluyuanqu")
    @ApiOperation("获取当前登录人对应的院区名")
    public AjaxResult getdangqiandengluyuanqu() {
        Long deptId = SecurityUtils.getDeptId();
        if(null !=deptId){
            SysDept dept = deptService.getById(deptId);
            if(null !=dept){
                String hospName = dept.getHospName();
                return AjaxResult.success(hospName);
            }
        }
        return AjaxResult.success();
    }
    /**
     * 该体检科室下客户列表显示接口
@@ -1338,31 +1356,31 @@
            final TjCustomer byId1 = customerService.getById(order.getUserId());
            if (null != tjOrderDetailList && !tjOrderDetailList.isEmpty()) {
                //----------------------------------start
                for (TjOrderDetail tjOrderDetail : tjOrderDetailList) {
                    final TjProject byId = projectService.getById(tjOrderDetail.getProId());
                    //给病种记录表存 方便统计病种和客户信息之间的关系
                    if (tjOrderDetail.getRulesList()!=null){
                        for (TjRules tjRules : tjOrderDetail.getRulesList()) {
                            TjOrderDetailRules orderDetailRules=new TjOrderDetailRules();
                            orderDetailRules.setAid(tjRules.getAid());
                            if (byId1!=null){
                                orderDetailRules.setCusName(byId1.getCusName());
                                orderDetailRules.setCusSex(String.valueOf(byId1.getCusSex()));
                                orderDetailRules.setCusAge(String.valueOf(MatchUtils.getAgeByIdCard(byId1.getCusIdcard())));
                                orderDetailRules.setCusId(String.valueOf(byId1.getCusId()));
                            }
                            orderDetailRules.setBingzhong(tjRules.getBingzhong());
                            orderDetailRules.setDoctorName(sysUser.getNickName());
                            orderDetailRules.setTjNumber(order.getTjNumber());
                            if (byId!=null){
                                orderDetailRules.setProId(String.valueOf(byId.getProId()));
                                orderDetailRules.setProName(byId.getProName());
                            }
                            orderDetailRules.setDoctorId(String.valueOf(sysUser.getUserId()));
                            tjOrderDetailRulesService.save(orderDetailRules);
                        }
                    }
                }
//                for (TjOrderDetail tjOrderDetail : tjOrderDetailList) {
//                    final TjProject byId = projectService.getById(tjOrderDetail.getProId());
//                    //给病种记录表存 方便统计病种和客户信息之间的关系
//                    if (tjOrderDetail.getRulesList()!=null){
//                        for (TjRules tjRules : tjOrderDetail.getRulesList()) {
//                            TjOrderDetailRules orderDetailRules=new TjOrderDetailRules();
//                            orderDetailRules.setAid(tjRules.getAid());
//                            if (byId1!=null){
//                                orderDetailRules.setCusName(byId1.getCusName());
//                                orderDetailRules.setCusSex(String.valueOf(byId1.getCusSex()));
//                                orderDetailRules.setCusAge(String.valueOf(MatchUtils.getAgeByIdCard(byId1.getCusIdcard())));
//                                orderDetailRules.setCusId(String.valueOf(byId1.getCusId()));
//                            }
//                            orderDetailRules.setBingzhong(tjRules.getBingzhong());
//                            orderDetailRules.setDoctorName(sysUser.getNickName());
//                            orderDetailRules.setTjNumber(order.getTjNumber());
//                            if (byId!=null){
//                                orderDetailRules.setProId(String.valueOf(byId.getProId()));
//                                orderDetailRules.setProName(byId.getProName());
//                            }
//                            orderDetailRules.setDoctorId(String.valueOf(sysUser.getUserId()));
//                            tjOrderDetailRulesService.save(orderDetailRules);
//                        }
//                    }
//                }
                asyncService.updateOrdeltile(tjOrderDetailList, sysUser, order);
                LambdaQueryWrapper<TjOrderDetail> qww = new LambdaQueryWrapper<>();
                qww.eq(TjOrderDetail::getOrderId, order.getOrderId());
@@ -1394,9 +1412,10 @@
                asyncService.getOrderDetailByProParentId(orderRemark.getTjNumber(),null, String.valueOf(orderRemark.getProId()));
                return AjaxResult.success("操作成功");
            }
            asyncService.updateCheckType(orderRemark.getTjNumber());
            asyncService.getOrderDetailByProParentId(orderRemark.getTjNumber(),null, String.valueOf(orderRemark.getProId()));
//            asyncService.updateCheckType(orderRemark.getTjNumber());
//            asyncService.getOrderDetailByProParentId(orderRemark.getTjNumber(),null, String.valueOf(orderRemark.getProId()));
        }
        remarkService.tjYishengjianchajianyi(null,null,null,null);
        return AjaxResult.success("操作成功");
    }
@@ -1423,34 +1442,50 @@
        String configByKey = configService.selectConfigByKey("sfkqdyhis");
        // 判断是否收费 请求接口
        TjOrder tjOrder = orderService.getOrderByTjNum(tjNumber);
        if(null ==tjOrder){
            return AjaxResult.error("未找到体检记录");
        }
        LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper = new LambdaQueryWrapper<>();
        tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId());
        tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N");
        TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper);
        if(null !=tjFlowingWater && (tjFlowingWater.getPayStasus()!=1 || tjFlowingWater.getPayStasus()!=3)){
            if (configByKey.equals("Y")){
                HashMap<String, Object> hisRequestParams = new HashMap<>();
                // 不在需要身份证号
                hisRequestParams.put("patientId",tjOrder.getCardId());
                log.info("ltkj--- "+DateUtil.date()+"操作人id: "+userId+"操作科室: "+sysUser.getDeptId()+"操作的体检人: "+tjNumber);
                AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams);
                if (Integer.parseInt(queryPay.get("code").toString()) == 200) {
                    int sfsf = ltkjJianchajianyanTreeService.getSfsfByCardId(tjOrder.getCardId());
                    if (sfsf > 0){
                        log.error("路泰科技---  "+DateUtil.date()+" 存在未缴费项目的 就单数  "+sfsf);
                        log.error("路泰科技---  "+DateUtil.date()+" 存在未缴费项目的 就诊号  "+tjOrder.getCardId()+" 体检号 "+tjOrder.getTjNumber());
        if(null !=tjFlowingWater){
            if(tjFlowingWater.getPayStasus()!=1 && tjFlowingWater.getPayStasus()!=3){
                if (configByKey.equals("Y")){
                    HashMap<String, Object> hisRequestParams = new HashMap<>();
                    // 不在需要身份证号
                    hisRequestParams.put("patientId",tjOrder.getCardId());
                    log.info("ltkj--- "+DateUtil.date()+"操作人id: "+userId+"操作科室: "+sysUser.getDeptId()+"操作的体检人: "+tjNumber);
                    AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams);
                    if (Integer.parseInt(queryPay.get("code").toString()) == 200) {
                        int sfsf = ltkjJianchajianyanTreeService.getSfsfByCardId(tjOrder.getCardId());
                        if (sfsf > 0){
                            log.error("路泰科技---  "+DateUtil.date()+" 存在未缴费项目的 就单数  "+sfsf);
                            log.error("路泰科技---  "+DateUtil.date()+" 存在未缴费项目的 就诊号  "+tjOrder.getCardId()+" 体检号 "+tjOrder.getTjNumber());
                            return AjaxResult.error("存在未缴费项目");
                        }
                        extracted(tjOrder, tjFlowingWater);
                    }else {
                        log.error("路泰科技--- "+DateUtil.date()+" 未查询到缴费记录的 就诊号  "+tjOrder.getCardId()+" 体检号 "+tjOrder.getTjNumber());
                        return AjaxResult.error("未查询到缴费记录");
                    }
                }
                String s = configService.selectConfigByKey("is_request_common_his_api");
                if (null != s && s.equals("Y")) {
                    LambdaQueryWrapper<TjFlowingWater> wrapper1 = new LambdaQueryWrapper<>();
                    wrapper1.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId());
                    wrapper1.eq(TjFlowingWater::getPayStasus,0L);
                    List<TjFlowingWater> list = tjFlowingWaterService.list(wrapper1);
                    if (!list.isEmpty()){
                        return AjaxResult.error("存在未缴费项目");
                    }
                    extracted(tjOrder, tjFlowingWater);
                }else {
                    log.error("路泰科技--- "+DateUtil.date()+" 未查询到缴费记录的 就诊号  "+tjOrder.getCardId()+" 体检号 "+tjOrder.getTjNumber());
                    return AjaxResult.error("未查询到缴费记录");
                }
            }else {
                log.error("路泰科技--- "+DateUtil.date()+" 未对接his接口 "+" 体检号 "+tjOrder.getTjNumber());
                return AjaxResult.error("未查询到缴费记录");
            }
        }else {
            log.error("路泰科技--- "+DateUtil.date()+" 未对接his接口 "+" 体检号 "+tjOrder.getTjNumber());
            return AjaxResult.error("未查询到缴费记录");
        }
        String config = configService.selectConfigByKey("qt_open_xdt");
        String byKey = configService.selectConfigByKey("qt_kjksid");
        List<Integer> split = new ArrayList<>(); // 存放转换后的integer类型结果
@@ -1503,7 +1538,7 @@
        wq2.eq(TjProject::getNeedReport,"Y");
        List<TjProject> Deptlist = projectService.list(wq2);
        List<Long> proIdList = Deptlist.stream().map(TjProject::getProId).collect(Collectors.toList());
        if (Deptlist.size() == 0 || proIdList.size() == 0) {
        if (Deptlist.isEmpty() || proIdList.isEmpty()) {
            return AjaxResult.error("该科室下无项目!");
        }
        LambdaQueryWrapper<TjOrder> wqqq = new LambdaQueryWrapper<>();
@@ -1590,7 +1625,7 @@
        }
        List<TjOrderDetail> tjOrderDetails = detailService.getTjOrderDetailListInProParentIdList(String.valueOf(one.getOrderId()), proParentIdList);
        List<TjOrderDetail> tjOrderDetailList=new ArrayList<>();
        TjCustomer customer = tjCustomerService.getById(one.getUserId());
//        TjCustomer customer = tjCustomerService.getById(one.getUserId());
        if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
            for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                TjProject project = projectService.getById(tjOrderDetail.getProId());