zjh
2025-01-16 df47afcb21a511caa07325b84db0115813216706
ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
@@ -7,11 +7,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.ltkj.common.core.domain.AjaxResult;
import com.ltkj.common.core.domain.entity.SysUser;
import com.ltkj.hosp.domain.*;
import com.ltkj.hosp.mapper.TjProjectMapper;
import com.ltkj.hosp.mapper.TjSamplingMapper;
import com.ltkj.hosp.service.*;
import com.ltkj.system.service.ISysConfigService;
import com.ltkj.system.service.ISysUserService;
import com.ltkj.web.controller.system.TjOrderController;
import com.ltkj.web.wxUtils.HttpClientUtils;
import jodd.util.StringUtil;
import lombok.extern.slf4j.Slf4j;
@@ -22,6 +25,7 @@
import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -55,6 +59,13 @@
    private ITjOrderService orderService;
    @Autowired
    private TjProjectMapper tjProjectMapper;
    @Autowired
    private ISysConfigService sysConfigService;
    @Autowired
    private TjOrderController tjOrderController;
    @Autowired
    private ISysUserService userService;
    /**
     * 收退费回调接口
     * @param params
@@ -94,6 +105,13 @@
//                            wrapper1.set(TjSampling::getIsPay,1);
//                            tjSamplingService.update(wrapper1);
                        }
                        SysUser user = null;
                        if (water.getCreateId()!= null)
                            user = userService.getById(water.getCreateId());
                        else user = userService.getById(1L);
                        TjOrder tjOrder = orderService.getById(water.getOrderId());
                        List<TjOrderDetail> detailList = tjOrderDetailService.getCaiYangDengJi(water.getOrderId());
                        tjOrderController.addCaiYangDengJi(detailList, !detailList.isEmpty(), tjOrder, user, null);
                    }
                }else {
                    return AjaxResult.error("查不到流水号: "+feiYongId);
@@ -106,7 +124,7 @@
                if (order != null){
                    // 退费
                    String bldh = water.getJxbz();
                    //TODO 是否发送作废申请
//                    lisRevoke(water.getTjNumber(),bldh);
                    if (bldh != null){
                        remarkService.deleteTjOrderDetailByjxbz(bldh);
                        tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
@@ -132,6 +150,45 @@
        return AjaxResult.success();
    }
    private void lisRevoke(String tjNum,String jxbz){
        LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(TjSampling::getTjNum,tjNum);
        if (StrUtil.isNotBlank(jxbz))
            wrapper.eq(TjSampling::getJxbz,jxbz);
        List<TjSampling> list = tjSamplingMapper.selectList(wrapper);
        List<TjSampling> isMergeList = list.stream().filter(i -> i.getIsMerge() == 1).collect(Collectors.toList());
        JSONArray array = JSONUtil.createArray();
        for (TjSampling sampling : isMergeList) {
            String[] proIds = sampling.getProId().split(",");
            for (String proId : proIds) {
                JSONObject object = JSONUtil.createObj();
                TjProject project = tjProjectMapper.selectById(proId);
                object.putOpt("txm",sampling.getJyxh());
                object.putOpt("sfxmid",project.getProId());
                object.putOpt("sfxmname",project.getProName());
                object.putOpt("primaryKey",proId);
                array.add(object);
            }
            list = list.stream().filter(i -> !i.getProId().equals(sampling.getProId())).collect(Collectors.toList());
        }
        for (TjSampling sampling : list) {
            String proId = sampling.getProId();
            JSONObject object = JSONUtil.createObj();
            TjProject project = tjProjectMapper.selectById(proId);
            object.putOpt("txm",sampling.getJyxh());
            object.putOpt("sfxmid",project.getProId());
            object.putOpt("sfxmname",project.getProName());
            object.putOpt("primaryKey",proId);
            array.add(object);
        }
        String apiUrl = sysConfigService.selectConfigByKey("common_api_url");
        String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm");
        HashMap<String, Object> hashMap = new HashMap<>();
        hashMap.put("list",array);
        String post = HttpClientUtils.sendPost(apiUrl + "/api/lis/"+ hospbm +"/revoke", hashMap);
    }
    /**
     * 获取所有的His字典集合
     * @param params