zjh
2024-12-16 e4b5fef59ea127c76f46ba785c19e9da46c9514d
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
@@ -141,19 +141,24 @@
//    @Log(title = "客户身份信息", businessType = BusinessType.EXPORT)
    public AjaxResult getInfoByIdCard(@RequestParam @ApiParam(value = "客户身份证号") String cusIdcard) {
        if (!"".equals(cusIdcard) && cusIdcard != null) {
            String sfjysfzh = sysConfigService.selectConfigByKey("sfjysfzh");
//            String sfjysjh = configService.selectConfigByKey("sfjysjh");
            //判断身份证号格式是否正确
//            if(cusIdcard.length()==18){
//                if (! MatchUtils.isIdCard(cusIdcard)) {
//                    return AjaxResult.error("身份证号码错误");
//                }
//            }
//            if(cusIdcard.length()==9){
//                if (!MatchUtils.cardValidates(cusIdcard)) {
//                    return AjaxResult.error("身份证号码错误");
//                }
//            }
//            Date dates = new Date();
//            final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss");
            if(sfjysfzh.equalsIgnoreCase("Y")){
                if(cusIdcard.length()==18){
                    if (! MatchUtils.isIdCard(cusIdcard)) {
                        return AjaxResult.error("身份证号码错误");
                    }
                }
                if(cusIdcard.length()==9){
                    if (!MatchUtils.cardValidates(cusIdcard)) {
                        return AjaxResult.error("身份证号码错误");
                    }
                }
            }
            final String getInfoFromSqlData = sysConfigService.selectConfigByKey("getInfoFromSqlData");
            if ("Y".equals(getInfoFromSqlData)) {
@@ -161,7 +166,7 @@
                LtkjTjPat tjPatByIdCard = testMapper.getTjPatByIdCard(cusIdcard);
                if (null != tjPatByIdCard) {
                    String fcardNo = tjPatByIdCard.getFcardNo();
                    if (null != fcardNo && !fcardNo.equals("")) {
                    if (null != fcardNo && !fcardNo.isEmpty()) {
                        fcardNo = fcardNo.trim();
                        tjPatByIdCard.setFcardNo(fcardNo);
                    } else {
@@ -206,16 +211,12 @@
            String key = sysConfigService.selectConfigByKey("sfkqdyhis");
            //end====2023.12.12
            LambdaQueryWrapper<TjReservation> wq = new LambdaQueryWrapper<>();
            wq.eq(TjReservation::getIdCard, cusIdcard);
            wq.eq(TjReservation::getIsExpire, 2);
            TjReservation tjReservation = tjReservationService.getOne(wq);
            if (tjReservation != null) {
//                if (DateUtil.endOfDay(new Date()).before(tjReservation.getReservationTime())) {
//                    return AjaxResult.error("未到预约时间");
//                }
                if (null != tjReservation.getReservationTime() && DateUtil.endOfDay(DateUtil.offsetDay(tjReservation.getReservationTime(),
                        tjReservation.getYxts())).before(new Date())) {
                    tjReservation.setIsExpire(1);
@@ -226,6 +227,9 @@
                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);
                    tjCustomer1.setTjType(tjReservation.getTjType());
                    tjCustomer1.setCusName(tjReservation.getName());
                    tjCustomer1.setCusSex(Long.valueOf(tjReservation.getSex()));
@@ -241,38 +245,18 @@
                    tjCustomer1.setAgeUnit(tjReservation.getAgeUnit());
                    tjCustomer1.setCareer(tjReservation.getCareer());
                    tjCustomer1.setPym(PinyinUtil.getFirstLetter(tjReservation.getName(),""));
/*                    if (null != key && key.equals("Y"))
                    {
                        AjaxResult result = controller.Outpincreateapply(tjCustomer1);
                        String result1 = getAjaxResult(result);
                        JSONObject object = getJSONObject(result1);
                        String code = object.getStr("ResultCode");
                        if (code.equals("0")) {
                            JSONArray resultDatass = object.getJSONArray("ResultData");
                            Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0);
                            if (null != resultData && resultData.size() > 0) {
                                String pationid = resultData.get("PationId").toString();
                                if (null != pationid) {
//                                    tjCustomer1.setPationId(pationid);
                                    tjCustomerService.updateById(tjCustomer1);
                                    //保存注册入参出参
                                    resultData.put("cardId",pationid);
                                    JSONObject object4 = JSONUtil.parseObj(resultData);
                                    LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>();
                                    lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpincreateapply");
                                    HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper);
                                    hisApiGetMethodService.save(object4, "Outpincreateapply", hisApiConfig, JSONUtil.toJsonStr(BeanUtil.beanToMap(tjCustomer1)));
                                }
                            }
                        }
                    }else {
                        tjCustomerService.updateById(tjCustomer1);
                    }*/
                    tjCustomer1.setTeamNo(tjReservation.getTeamNo());
                    tjCustomer1.setCompId(tjReservation.getCompanyId());
                    tjCustomer1.setReservationId(tjReservation.getId());
                    tjCustomer1.setDiscount(tjReservation.getDiscount());
                    tjCustomer1.setGroupingId(tjReservation.getGroupingId());
                    if(null !=tjReservation.getCompanyId())tjCustomer1.setDictCompId(Long.valueOf(tjReservation.getCompanyId()));
                    if(null !=tjReservation.getCompany())tjCustomer1.setCompName(tjReservation.getCompany());
//                    tjCustomerService.updateById(tjCustomer1);
                    return success(tjCustomer1);
                }else {
                    TjCustomer tjCustomer = new TjCustomer();
@@ -299,6 +283,8 @@
                    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.getCompany())tjCustomer.setCompName(tjReservation.getCompany());
                    if (null != key && key.equals("Y"))
                    {
                        AjaxResult result = controller.Outpincreateapply(tjCustomer);
@@ -308,7 +294,7 @@
                        if (code.equals("0")) {
                            JSONArray resultDatass = object.getJSONArray("ResultData");
                            Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0);
                            if (null != resultData && resultData.size() > 0) {
                            if (null != resultData && !resultData.isEmpty()) {
                                String pationid = resultData.get("PationId").toString();
                                if (null != pationid) {
                                    tjCustomer.setPationId(pationid);
@@ -446,7 +432,6 @@
        if (null == tjCustomer.getCusIdcard() || null == tjCustomer.getCusPhone()) {
            return AjaxResult.error("请输入身份证号或手机号");
        }
        HisApiGetMethodService hisApiGetMethodService = new HisApiGetMethodService();
        Date dates = new Date();
        final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss");
@@ -454,21 +439,32 @@
        String cusIdcard = tjCustomer.getCusIdcard();
        boolean b = true;
        String sfjysfzh = sysConfigService.selectConfigByKey("sfjysfzh");
        String sfjysjh = sysConfigService.selectConfigByKey("sfjysjh");
        if (null != tjCustomer.getIdType()) {
            if (tjCustomer.getIdType().equals("1")) {
                b = MatchUtils.isIdCard(cusIdcard);
                //判断身份证号格式是否正确
                if(sfjysfzh.equalsIgnoreCase("Y")){
                    if(cusIdcard.length()==18){
                        b = MatchUtils.isIdCard(cusIdcard);
                    }
                }
            } else {
                if(cusIdcard.length()==9){
                    b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType());
                }
            }
//            else {
//                b = MatchUtils.cardValidate(cusIdcard, tjCustomer.getIdType());
//            }
        } else {
            return AjaxResult.error("请选择证件类型");
        }
        if (!b) return AjaxResult.error("证件号有误");
        //判断身份证号格式是否正确
        if (!(MatchUtils.isMobileNO(tjCustomer.getCusPhone())))
            return AjaxResult.error("手机号错误");
        if(sfjysjh.equalsIgnoreCase("Y")){
            if (!(MatchUtils.isMobileNO(tjCustomer.getCusPhone())))
                return AjaxResult.error("手机号错误");
        }
        LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
        wq.eq(TjCustomer::getCusIdcard, cusIdcard);
@@ -550,12 +546,30 @@
        if (null == cusPhone) {
            return AjaxResult.error("手机号不能为空");
        }
        /*LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
        wq.eq(TjCustomer::getCusPhone, cusPhone);
        TjCustomer customer = tjCustomerService.getOne(wq);
        if (customer != null) {
            return AjaxResult.error("该手机号已被使用!");
        }*/
        String sfjysfzh = sysConfigService.selectConfigByKey("sfjysfzh");
        String sfjysjh = sysConfigService.selectConfigByKey("sfjysjh");
            //判断身份证号格式是否正确
            if(sfjysfzh.equalsIgnoreCase("Y")){
                if(tjCustomer.getCusIdcard().length()==18){
                    if (!(MatchUtils.isIdCard(tjCustomer.getCusIdcard())))
                        return AjaxResult.error("身份证号错误");
                }
                if(tjCustomer.getCusIdcard().length()==9){
                    if (!MatchUtils.cardValidates(tjCustomer.getCusIdcard())) {
                        return AjaxResult.error("身份证号码错误");
                    }
                }
            }
        //判断身份证号格式是否正确
        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)) {