From 92fec7876dbbc43f1780e66901ef8bfd0fad445b Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期一, 31 三月 2025 14:33:10 +0800
Subject: [PATCH] zjh20250331

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java |  128 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 125 insertions(+), 3 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
index 28422ce..ee9c8d3 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
@@ -1,11 +1,22 @@
 package com.ltkj.web.controller.callback;
 
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 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;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -13,8 +24,11 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 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;
 
 /**
  * 瀵规帴鍏朵粬骞冲彴鎻愪緵鐨勫洖璋冩湇鍔�
@@ -43,6 +57,16 @@
     private ITjCustomerService tjCustomerService;
     @Autowired
     private ITjOrderService orderService;
+    @Autowired
+    private TjProjectMapper tjProjectMapper;
+    @Autowired
+    private ISysConfigService sysConfigService;
+    @Autowired
+    private TjOrderController tjOrderController;
+    @Autowired
+    private ISysUserService userService;
+    @Autowired
+    private TjOrderYcxmService ycxmService;
 
     /**
      * 鏀堕��璐瑰洖璋冩帴鍙�
@@ -64,8 +88,36 @@
                 LambdaQueryWrapper<TjFlowingWater> wrapper = new LambdaQueryWrapper<>();
                 wrapper.eq(TjFlowingWater::getHisWaterId, feiYongId);
                 TjFlowingWater water = tjFlowingWaterService.getOne(wrapper);
-                water.setPayStasus(1L);
-                tjFlowingWaterService.updateById(water);
+                if(null !=water){
+                    water.setPayStasus(1L);
+                    if (tjFlowingWaterService.updateById(water)) {
+                        String jxbz = water.getJxbz();
+                        if(StringUtil.isNotBlank(jxbz)){
+                            tjOrderDetailService.updateTjOrderDetailsFlowingWaterIdByJxbz(water.getOrderId().toString(),jxbz,water.getTjSerialNumber().toString());
+                            remarkService.updateTjOrderRemarkSfbzByJxbz(water.getOrderId().toString(),jxbz,water.getTjSerialNumber().toString());
+//                            LambdaUpdateWrapper<TjSampling> wrapper1 = new LambdaUpdateWrapper<>();
+//                            wrapper1.eq(TjSampling::getJxbz,jxbz);
+//                            wrapper1.set(TjSampling::getIsPay,1);
+//                            tjSamplingService.update(wrapper1);
+                        }else {
+                            tjOrderDetailService.updateTjOrderDetailsFlowingWaterIdByJxbzisnull(water.getOrderId().toString(),water.getTjSerialNumber().toString());
+                            remarkService.updateTjOrderRemarkSfbzByJxbzisnull(water.getOrderId().toString(),water.getTjSerialNumber().toString());
+//                            LambdaUpdateWrapper<TjSampling> wrapper1 = new LambdaUpdateWrapper<>();
+//                            wrapper1.isNull(TjSampling::getJxbz);
+//                            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);
+                }
             }else {
                 LambdaQueryWrapper<TjFlowingWater> wrapper = new LambdaQueryWrapper<>();
                 wrapper.eq(TjFlowingWater::getHisTfWaterId, feiYongId).or().eq(TjFlowingWater::getHisWaterId, feiYongId);
@@ -74,6 +126,7 @@
                 if (order != null){
                     // 閫�璐�
                     String bldh = water.getJxbz();
+//                    lisRevoke(water.getTjNumber(),bldh);
                     if (bldh != null){
                         remarkService.deleteTjOrderDetailByjxbz(bldh);
                         tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
@@ -87,7 +140,7 @@
                         remarkService.deletedOrderRemarkByTjNum(order.getTjNumber());
                         tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId()));
                         transitionService.deletedTbTransitionByTjNum(order.getTjNumber());
-
+                        ycxmService.delOrderYcXmJyByTjh(order.getTjNumber());
                         TjCustomer customer = tjCustomerService.getById(order.getUserId());
                         customer.setCardId("0");
                         tjCustomerService.updateById(customer);
@@ -99,6 +152,50 @@
         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
+     * @return
+     */
     @PostMapping("getZdList")
     public AjaxResult getZdList(@RequestBody Map<String ,Object> params){
         String hosp = params.get("hosp").toString();
@@ -108,4 +205,29 @@
         return AjaxResult.success(list);
     }
 
+    /**
+     * 鑾峰彇鎵�鏈夌殑妫�楠岄」鐩�
+     * @param params
+     * @return
+     */
+    @PostMapping("getLisXmList")
+    public AjaxResult getLisXmList(@RequestBody Map<String ,Object> params){
+        List<Map<String, Object>> list = tjProjectMapper.getLisViewList();
+        return AjaxResult.success(list);
+    }
+
+    /**
+     * Lis纭鎾ら攢鍥炶皟
+     * @param params
+     * @return
+     */
+    @PostMapping("lisRevoke")
+    public AjaxResult lisRevoke(@RequestBody Map<String ,Object> params){
+        List<String> keys = (List<String>) params.get("keys");
+        String czy = params.get("czy").toString();
+        String hospid = params.get("hospid").toString();
+
+        return AjaxResult.success();
+    }
+
 }

--
Gitblit v1.8.0