From c5286d60680e88a22fbe391385ad35cadb9ac874 Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期五, 18 四月 2025 19:38:37 +0800
Subject: [PATCH] 修改套餐id

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java |  274 ++++++++++++++++++++++++++++++------------------------
 1 files changed, 152 insertions(+), 122 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
index c474214..dab4528 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
@@ -35,6 +35,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.DigestUtils;
@@ -45,6 +46,8 @@
 import com.ltkj.common.utils.poi.ExcelUtil;
 import com.ltkj.common.core.page.TableDataInfo;
 
+import java.time.LocalDateTime;
+import java.time.ZoneId;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -58,6 +61,7 @@
 @RestController
 @RequestMapping("/hosp/customer")
 @Api(tags = "瀹㈡埛绠$悊鎺ュ彛")
+@Slf4j
 public class TjCustomerController extends BaseController {
     @Resource
     private ITjCustomerService tjCustomerService;
@@ -218,7 +222,7 @@
             }
 
             String key = sysConfigService.selectConfigByKey("sfkqdyhis");
-
+            String s = sysConfigService.selectConfigByKey("is_request_common_his_api");
             LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>();
             wq.eq(TjReservation::getIdCard, cusIdcard);
             wq.eq(TjReservation::getIsExpire, 2);
@@ -235,13 +239,17 @@
                 qw.eq(TjCustomer::getCusIdcard, cusIdcard);
                 TjCustomer tjCustomer1 = tjCustomerService.getOne(qw);
                 if (tjCustomer1 != null) {
-                    if (null != tjReservation.getCompanyId()) tjCustomer1.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
-                    if (null != tjReservation.getCompany()) tjCustomer1.setCompName(tjReservation.getCompany());
-                    tjCustomerService.updateById(tjCustomer1);
+//                    if (null != tjReservation.getCompanyId()) tjCustomer1.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
+//                    if (null != tjReservation.getCompany()) tjCustomer1.setCompName(tjReservation.getCompany());
+//                    tjCustomerService.updateById(tjCustomer1);
                     tjCustomer1.setTjType(tjReservation.getTjType());
                     tjCustomer1.setCusName(tjReservation.getName());
                     tjCustomer1.setCusSex(Long.valueOf(tjReservation.getSex()));
-                    tjCustomer1.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd"));
+                    try {
+                        tjCustomer1.setCusBrithday(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()));
+                    } catch (Exception e) {
+                        return AjaxResult.error("韬唤璇佸彿涓嶆纭�");
+                    }
                     tjCustomer1.setCusPhone(tjReservation.getPhoe());
                     tjCustomer1.setCusEmail(tjReservation.getEmail());
                     tjCustomer1.setCusAddr(tjReservation.getAddress());
@@ -260,7 +268,7 @@
                     tjCustomer1.setDiscount(tjReservation.getDiscount());
                     tjCustomer1.setGroupingId(tjReservation.getGroupingId());
 
-                    if(null !=tjReservation.getCompanyId())tjCustomer1.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
+//                    if(null !=tjReservation.getCompanyId())tjCustomer1.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
                     if(null !=tjReservation.getCompany())tjCustomer1.setCompName(tjReservation.getCompany());
 
 //                    tjCustomerService.updateById(tjCustomer1);
@@ -271,7 +279,11 @@
                     tjCustomer.setCusIdcard(tjReservation.getIdCard());
                     tjCustomer.setCusName(tjReservation.getName());
                     tjCustomer.setCusSex(Long.valueOf(tjReservation.getSex()));
-                    tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()), "yyyy-MM-dd"));
+                    try {
+                        tjCustomer.setCusBrithday(MatchUtils.getBirthDayByIdCard(tjReservation.getIdCard()));
+                    } catch (Exception e) {
+                        return AjaxResult.error("韬唤璇佸彿涓嶆纭�");
+                    }
                     tjCustomer.setCusPhone(tjReservation.getPhoe());
                     tjCustomer.setCusEmail(tjReservation.getEmail());
                     tjCustomer.setCusAddr(tjReservation.getAddress());
@@ -291,10 +303,10 @@
                     tjCustomer.setCusPassword(substring);
                     tjCustomer.setTjType(tjReservation.getTjType());
                     tjCustomer.setPym(PinyinUtil.getFirstLetter(tjReservation.getName(),""));
-                    if(null !=tjReservation.getCompanyId())tjCustomer.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
+                    if(null !=tjReservation.getCompanyId())tjCustomer.setCompId(tjReservation.getCompanyId());
                     if(null !=tjReservation.getCompany())tjCustomer.setCompName(tjReservation.getCompany());
-                    if (null != key && key.equals("Y"))
-                    {
+
+                    if (null != key && key.equals("Y")) {
                         AjaxResult result = controller.Outpincreateapply(tjCustomer);
                         String result1 = getAjaxResult(result);
                         JSONObject object = getJSONObject(result1);
@@ -316,6 +328,11 @@
                                     hisApiGetMethodService.save(object4, "Outpincreateapply", hisApiConfig, JSONUtil.toJsonStr(BeanUtil.beanToMap(tjCustomer)));
                                 }
                             }
+                        }
+                    } else if(null != s && s.equalsIgnoreCase("Y")) {
+                        TjCustomer requestCommonHisApi = isRequestCommonHisApi(tjCustomer);
+                        if (null !=requestCommonHisApi){
+                            tjCustomerService.save(requestCommonHisApi);
                         }
                     }else {
                         tjCustomerService.save(tjCustomer);
@@ -340,10 +357,10 @@
 //            if (null != key && key.equals("Y")) {
                 String cardId = tjCustomerServiceOne.getCardId();
                 if (null != cardId && !cardId.equals("0")) {
-                    int i = tjOrderService.selectTjOrderByCardId(cardId);
-                    if (i > 0) {
-                        return AjaxResult.error("涓嶅彲閲嶅绛惧埌");
-                    }
+//                    int i = tjOrderService.selectTjOrderByCardId(cardId);
+//                    if (i > 0) {
+//                        return AjaxResult.error("涓嶅彲閲嶅绛惧埌");
+//                    }
                 }
 
 //            }
@@ -478,12 +495,13 @@
                         b = MatchUtils.isIdCard(cusIdcard);
                     }
                 }
-            } else {
-                if(cusIdcard.length()==9){
-                    b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType());
-                }
-
             }
+//            else {
+//                if(cusIdcard.length()==9){
+//                    b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType());
+//                }
+//
+//            }
         } else {
             return AjaxResult.error("璇烽�夋嫨璇佷欢绫诲瀷");
         }
@@ -499,20 +517,18 @@
         wq.eq(TjCustomer::getCusIdcard, cusIdcard);
         TjCustomer customer = tjCustomerService.getOne(wq);
         if (customer != null) {
-//            BeanUtils.copyBeanProp(tjCustomer, customer);
-//            String substring = cusIdcard.substring(cusIdcard.length() - 6);
-//            substring = DigestUtils.md5DigestAsHex(substring.getBytes());
-//            customer.setCusPassword(substring);
-//            customer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd"));
-//            return AjaxResult.success(tjCustomerService.updateById(customer));
             return AjaxResult.error("璇ヤ汉鍛樺凡瀛樺湪");
         }
         String substring = cusIdcard.substring(cusIdcard.length() - 6);
         substring = DigestUtils.md5DigestAsHex(substring.getBytes());
         tjCustomer.setCusPassword(substring);
-//        if (tjCustomer.getIdType().equals("1")) {
-            tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd"));
-//        }
+        if(cusIdcard.length()==18) {
+            try {
+                tjCustomer.setCusBrithday(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()));
+            } catch (Exception e) {
+                return AjaxResult.error("韬唤璇佸彿涓嶆纭�");
+            }
+        }
         tjCustomer.setCusNumber(0L);
         tjCustomer.setPym(PinyinUtil.getFirstLetter(tjCustomer.getCusName(),""));
         String config = sysConfigService.selectConfigByKey("sfkqdyhis");
@@ -522,43 +538,11 @@
         } else {
             String s = sysConfigService.selectConfigByKey("is_request_common_his_api");
             if (null != s && s.equals("Y")){
-                String apiUrl = sysConfigService.selectConfigByKey("common_api_url");
-                String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm");
-                HashMap<String, Object> isjd = new HashMap<>();
-                isjd.put("cusIdCard",tjCustomer.getCusIdcard());
-                isjd.put("compId","");
-                String isCreat = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/isCreat", isjd);
-                JSONObject isCreatjsonObject = JSONUtil.parseObj(isCreat);
-                if (isCreatjsonObject.getStr("code").equals("200")){
-                    JSONObject data = isCreatjsonObject.getJSONObject("data");
-                    tjCustomer.setPationId(data.getStr("pationId"));
-                    tjCustomer.setCardId(data.getStr("cardId"));
-                    tjCustomer.setHisJzkh(data.getStr("cardId"));
-                    if (tjCustomerService.save(tjCustomer)) {
-                        return AjaxResult.success(tjCustomer);
+                TjCustomer requestCommonHisApi = isRequestCommonHisApi(tjCustomer);
+                if (null !=requestCommonHisApi){
+                    if (tjCustomerService.save(requestCommonHisApi)) {
+                        return AjaxResult.success(requestCommonHisApi);
                     }
-                }else {
-                    HashMap<String, Object> map = new HashMap<>();
-                    map.put("cardId","");
-                    map.put("cusName",tjCustomer.getCusName());
-                    map.put("cusSex",tjCustomer.getCusSex());
-                    map.put("cusIdCard",tjCustomer.getCusIdcard());
-                    map.put("compId","");
-                    map.put("cusBrithday",tjCustomer.getCusBrithday() != null ? DateUtil.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd") : "");
-                    map.put("cusAddr",tjCustomer.getCusAddr());
-                    map.put("cusPhone",tjCustomer.getCusPhone());
-                    map.put("compName","");
-                    String post = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/creat", map);
-                    JSONObject jsonObject = JSONUtil.parseObj(post);
-                    if (jsonObject.getStr("code").equals("200")){
-                        JSONObject data = jsonObject.getJSONObject("data");
-                        tjCustomer.setPationId(data.getStr("pationId"));
-                        tjCustomer.setCardId(data.getStr("cardId"));
-                        tjCustomer.setHisJzkh(data.getStr("cardId"));
-                        if (tjCustomerService.save(tjCustomer)) {
-                            return AjaxResult.success(tjCustomer);
-                        }
-                    }else return AjaxResult.error();
                 }
             }else {
                 if (tjCustomerService.save(tjCustomer)) {
@@ -567,6 +551,44 @@
             }
         }
         return AjaxResult.error();
+    }
+
+    private TjCustomer isRequestCommonHisApi(TjCustomer tjCustomer) {
+        String apiUrl = sysConfigService.selectConfigByKey("common_api_url");
+        String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm");
+        HashMap<String, Object> isjd = new HashMap<>();
+        isjd.put("cusIdCard", tjCustomer.getCusIdcard());
+        isjd.put("compId","");
+        String isCreat = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/isCreat", isjd);
+        JSONObject isCreatjsonObject = JSONUtil.parseObj(isCreat);
+        if (isCreatjsonObject.getStr("code").equals("200")){
+            JSONObject data = isCreatjsonObject.getJSONObject("data");
+            tjCustomer.setPationId(data.getStr("pationId"));
+            tjCustomer.setCardId(data.getStr("cardId"));
+            tjCustomer.setHisJzkh(data.getStr("cardId"));
+            return tjCustomer;
+        }else {
+            HashMap<String, Object> map = new HashMap<>();
+            map.put("cardId","");
+            map.put("cusName", tjCustomer.getCusName());
+            map.put("cusSex", tjCustomer.getCusSex());
+            map.put("cusIdCard", tjCustomer.getCusIdcard());
+            map.put("compId","");
+            map.put("cusBrithday", tjCustomer.getCusBrithday() != null ? DateUtil.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd") : "");
+            map.put("cusAddr", tjCustomer.getCusAddr());
+            map.put("cusPhone", tjCustomer.getCusPhone());
+            map.put("compName","");
+            String post = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/creat", map);
+            JSONObject jsonObject = JSONUtil.parseObj(post);
+            if (jsonObject.getStr("code").equals("200")){
+                JSONObject data = jsonObject.getJSONObject("data");
+                tjCustomer.setPationId(data.getStr("pationId"));
+                tjCustomer.setCardId(data.getStr("cardId"));
+                tjCustomer.setHisJzkh(data.getStr("cardId"));
+                return tjCustomer;
+            }
+        }
+        return null;
     }
 
     private AjaxResult suijieHisXinXi(TjCustomer tjCustomer, String date) {
@@ -610,17 +632,18 @@
     @RepeatSubmit
     public AjaxResult edit(@RequestBody @ApiParam(value = "瀹㈡埛瀵硅薄") TjCustomer tjCustomer) {
 
-        TjCustomer customer = tjCustomerService.getById(tjCustomer.getCusId());
-        if(null==customer){
-            return AjaxResult.error("璇ヤ汉鍛樹笉瀛樺湪!");
-        }
+        try {
+            TjCustomer customer = tjCustomerService.getById(tjCustomer.getCusId());
+            if(null==customer){
+                return AjaxResult.error("璇ヤ汉鍛樹笉瀛樺湪!");
+            }
 
-        String cusPhone = tjCustomer.getCusPhone();
-        if (null == cusPhone) {
-            return AjaxResult.error("鎵嬫満鍙蜂笉鑳戒负绌�");
-        }
-        String sfjysfzh = sysConfigService.selectConfigByKey("sfjysfzh");
-        String sfjysjh = sysConfigService.selectConfigByKey("sfjysjh");
+            String cusPhone = tjCustomer.getCusPhone();
+            if (null == cusPhone) {
+                return AjaxResult.error("鎵嬫満鍙蜂笉鑳戒负绌�");
+            }
+            String sfjysfzh = sysConfigService.selectConfigByKey("sfjysfzh");
+            String sfjysjh = sysConfigService.selectConfigByKey("sfjysjh");
 
             //鍒ゆ柇韬唤璇佸彿鏍煎紡鏄惁姝g‘
             if(sfjysfzh.equalsIgnoreCase("Y")){
@@ -637,59 +660,66 @@
             }
 
 
-        //鍒ゆ柇韬唤璇佸彿鏍煎紡鏄惁姝g‘
-        if(sfjysjh.equalsIgnoreCase("Y")){
-            if (!(MatchUtils.isMobileNO(tjCustomer.getCusPhone())))
-                return AjaxResult.error("鎵嬫満鍙烽敊璇�");
-        }
+            //鍒ゆ柇韬唤璇佸彿鏍煎紡鏄惁姝g‘
+            if(sfjysjh.equalsIgnoreCase("Y")){
+                if (!(MatchUtils.isMobileNO(tjCustomer.getCusPhone())))
+                    return AjaxResult.error("鎵嬫満鍙烽敊璇�");
+            }
 
-        tjCustomer.setCusPhone(cusPhone);
-        tjCustomer.setPym(PinyinUtil.getFirstLetter(tjCustomer.getCusName(),""));
-        if (tjCustomerService.updateById(tjCustomer)) {
-            String config = sysConfigService.selectConfigByKey("sfkqdyhis");
-            if (null != config && config.equals("Y")) {
-                AjaxResult result = controller.Outpincreateapply(tjCustomer);
-                String result1 = getAjaxResult(result);
-                JSONObject object = getJSONObject(result1);
-                String code = object.getStr("ResultCode");
-                if (code.equals("0")) {
+            tjCustomer.setCusPhone(cusPhone);
+            tjCustomer.setPym(PinyinUtil.getFirstLetter(tjCustomer.getCusName(),""));
+            tjCustomer.setCusBrithday(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()));
+            if (tjCustomerService.updateById(tjCustomer)) {
+                String config = sysConfigService.selectConfigByKey("sfkqdyhis");
+                if (null != config && config.equals("Y")) {
+                    AjaxResult result = controller.Outpincreateapply(tjCustomer);
+                    String result1 = getAjaxResult(result);
+                    JSONObject object = getJSONObject(result1);
+                    String code = object.getStr("ResultCode");
+                    if (code.equals("0")) {
+                        return AjaxResult.success();
+                    }
+                    return AjaxResult.error(object.getStr("ResultContent"));
+                }else {
+                    String s = sysConfigService.selectConfigByKey("is_request_common_his_api");
+                    if (null != s && s.equals("Y")){
+                        String apiUrl = sysConfigService.selectConfigByKey("common_api_url");
+                        String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm");
+                        HashMap<String, Object> map = new HashMap<>();
+                        map.put("pationId",customer.getPationId());
+                        map.put("cardId",customer.getHisJzkh());
+                        map.put("cusName",tjCustomer.getCusName());
+                        map.put("cusSex",tjCustomer.getCusSex());
+                        map.put("cusIdCard",tjCustomer.getCusIdcard());
+                        map.put("compId","");
+                        map.put("cusBrithday",tjCustomer.getCusBrithday() != null ? DateUtil.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd") : "");
+                        map.put("cusAddr",tjCustomer.getCusAddr());
+                        map.put("cusPhone",tjCustomer.getCusPhone());
+                        map.put("compName","");
+                        String isCreat = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/update", map);
+                        JSONObject isCreatjsonObject = JSONUtil.parseObj(isCreat);
+                        if (isCreatjsonObject.getStr("code").equals("200")){
+    //                        JSONObject data = isCreatjsonObject.getJSONObject("data");
+    //                        tjCustomer.setPationId(data.getStr("pationId"));
+    //                        tjCustomer.setCardId(data.getStr("cardId"));
+    //                        tjCustomer.setHisJzkh(data.getStr("cardId"));
+    //                        if (tjCustomerService.updateById(tjCustomer)) {
+                                return AjaxResult.success(tjCustomer);
+    //                        }
+                        }else {
+                            return AjaxResult.error();
+                        }
+                    }
                     return AjaxResult.success();
                 }
-                return AjaxResult.error(object.getStr("ResultContent"));
-            }else {
-                String s = sysConfigService.selectConfigByKey("is_request_common_his_api");
-                if (null != s && s.equals("Y")){
-                    String apiUrl = sysConfigService.selectConfigByKey("common_api_url");
-                    String hospbm = sysConfigService.selectConfigByKey("common_api_service_hospbm");
-                    HashMap<String, Object> map = new HashMap<>();
-                    map.put("pationId",tjCustomer.getPationId());
-                    map.put("cardId",tjCustomer.getCardId());
-                    map.put("cusName",tjCustomer.getCusName());
-                    map.put("cusSex",tjCustomer.getCusSex());
-                    map.put("cusIdCard",tjCustomer.getCusIdcard());
-                    map.put("compId","");
-                    map.put("cusBrithday",tjCustomer.getCusBrithday() != null ? DateUtil.format(tjCustomer.getCusBrithday(), "yyyy-MM-dd") : "");
-                    map.put("cusAddr",tjCustomer.getCusAddr());
-                    map.put("cusPhone",tjCustomer.getCusPhone());
-                    map.put("compName","");
-                    String isCreat = HttpClientUtils.sendPost(apiUrl+"/api/his/"+hospbm+"/update", map);
-                    JSONObject isCreatjsonObject = JSONUtil.parseObj(isCreat);
-                    if (isCreatjsonObject.getStr("code").equals("200")){
-//                        JSONObject data = isCreatjsonObject.getJSONObject("data");
-//                        tjCustomer.setPationId(data.getStr("pationId"));
-//                        tjCustomer.setCardId(data.getStr("cardId"));
-//                        tjCustomer.setHisJzkh(data.getStr("cardId"));
-//                        if (tjCustomerService.updateById(tjCustomer)) {
-                            return AjaxResult.success(tjCustomer);
-//                        }
-                    }else {
-                        return AjaxResult.error();
-                    }
-                }
-                return AjaxResult.success();
             }
+            return AjaxResult.success();
+        } catch (Exception e) {
+            log.error(e.toString());
+            throw new RuntimeException(e);
+
         }
-       return AjaxResult.error();
+
     }
 
     /**

--
Gitblit v1.8.0