zjh
2025-05-09 82b02cb89b5b0b410e4b366f514ef1c5cb206e1c
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
@@ -16,6 +16,7 @@
import com.ltkj.common.enums.BusinessType;
import com.ltkj.common.enums.DataSourceType;
import com.ltkj.common.utils.SecurityUtils;
import com.ltkj.db.DataSourceContextHolder;
import com.ltkj.framework.config.MatchUtils;
import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
import com.ltkj.hosp.domain.HisApiConfig;
@@ -160,11 +161,11 @@
                        return AjaxResult.error("身份证号码错误");
                    }
                }
                if(cusIdcard.length()==9){
                    if (!MatchUtils.cardValidates(cusIdcard)) {
                        return AjaxResult.error("身份证号码错误");
                    }
                }
//                if(cusIdcard.length()==9){
//                    if (!MatchUtils.cardValidates(cusIdcard)) {
//                        return AjaxResult.error("身份证号码错误");
//                    }
//                }
            }
@@ -241,7 +242,11 @@
                    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().replaceAll(" ", "")));
                    } catch (Exception e) {
                        return AjaxResult.error("身份证号不正确");
                    }
                    tjCustomer1.setCusPhone(tjReservation.getPhoe());
                    tjCustomer1.setCusEmail(tjReservation.getEmail());
                    tjCustomer1.setCusAddr(tjReservation.getAddress());
@@ -271,7 +276,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());
@@ -510,15 +519,25 @@
        String substring = cusIdcard.substring(cusIdcard.length() - 6);
        substring = DigestUtils.md5DigestAsHex(substring.getBytes());
        tjCustomer.setCusPassword(substring);
        if(cusIdcard.length()==18)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");
        logger.info("config ->{}",config);
        String dataSourceType = DataSourceContextHolder.getDataSourceKey();
        logger.info("登记当前数据源 ->{}",dataSourceType);
        if (null != config && config.equals("Y")) {
            AjaxResult tjCustomer1 = suijieHisXinXi(tjCustomer, date);
            if (tjCustomer1 != null) return tjCustomer1;
        } else {
            String s = sysConfigService.selectConfigByKey("is_request_common_his_api");
            logger.info("s ->{}",s);
            if (null != s && s.equals("Y")){
                TjCustomer requestCommonHisApi = isRequestCommonHisApi(tjCustomer);
                if (null !=requestCommonHisApi){
@@ -551,11 +570,19 @@
            return tjCustomer;
        }else {
            HashMap<String, Object> map = new HashMap<>();
            map.put("cardId","");
            // 1是身份证
            // 根据凌云his接口只要不是国内身份证号 身份证字段不传 将号码传递到卡号字段并单位编号必填 单位编号随便写
            if (!tjCustomer.getIdType().equals("1")){
                map.put("cardId",tjCustomer.getCusIdcard());
                map.put("compId",tjCustomer.getCusIdcard());
                map.put("cusIdCard", "");
            }else {
                map.put("cardId","");
                map.put("cusIdCard", tjCustomer.getCusIdcard());
                map.put("compId","");
            }
            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());
@@ -628,16 +655,16 @@
            //判断身份证号格式是否正确
            if(sfjysfzh.equalsIgnoreCase("Y")){
                if(tjCustomer.getCusIdcard().length()==18){
                if(tjCustomer.getIdType().equals("1") ){
                    if (!(MatchUtils.isIdCard(tjCustomer.getCusIdcard())))
                        return AjaxResult.error("身份证号错误");
                }
                if(tjCustomer.getCusIdcard().length()==9){
                    if (!MatchUtils.cardValidates(tjCustomer.getCusIdcard())) {
                        return AjaxResult.error("身份证号码错误");
                    }
                }
//                if(tjCustomer.getCusIdcard().length()==9){
//                    if (!MatchUtils.cardValidates(tjCustomer.getCusIdcard())) {
//                        return AjaxResult.error("身份证号码错误");
//                    }
//                }
            }
@@ -666,8 +693,8 @@
                    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("pationId",customer.getPationId());
                    map.put("cardId",customer.getHisJzkh());
                    map.put("cusName",tjCustomer.getCusName());
                    map.put("cusSex",tjCustomer.getCusSex());
                    map.put("cusIdCard",tjCustomer.getCusIdcard());