6位数字交易密码校验

public  Map checkPassword(Map reqMap) {
        log.info("checkPassword : " + reqMap);
        Map rstMap=new HashMap();
        String IDNo = (String)  reqMap.get("IDNo ");
        String mobileNo = (String) reqMap.get("mobileNo ");
        String newPwd= (String)  reqMap.get("newPwd");
        String confirmNewPwd= (String) reqMap.get("confirmNewPwd");
        boolean flag = true;
        boolean pwdFlag = true;
        for (int i = 0; i < newPwd.length(); i++){//判断是否相等
            if (newPwd.charAt(0) != newPwd.charAt(i)) {
                flag = false;
                break;
            }
        }
        for (int i = 0; i < newPwd.length(); i++){//判断是否连续
            if (i > 0) {
                int num = Integer.parseInt(newPwd.charAt(i)+"");
                int num_ = Integer.parseInt(newPwd.charAt(i-1)+"")+1;
                if (num != num_) {
                    pwdFlag = false;
                    break;
                }
            }
        }
        if(newPwd.length() != 6){
        	rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "密码不为6位");
            return rstMap;
        }else if(flag){ (!newPwd.equals(confirmNewPwd)){
            rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "两次密码不相同");
            return rstMap;
        }else if(flag){
            rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "密码不能为相同的数字");
            return rstMap;
        }else if(pwdFlag){
            rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "密码不能为连续数字");
            return rstMap;
        }else if(IDNo.indexOf(newPwd) != -1){
            rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "密码不能为连续身份证号");
            return rstMap;
        }else if(mobileNo.indexOf(newPwd) != -1){
            rstMap.put(AppConstant.STATUS, AppConstant.STATUS_FAIL);
            rstMap.put(AppConstant.MSG, "密码不能为连续手机号");
            return rstMap;
        }
        rstMap.put(AppConstant.STATUS, AppConstant.STATUS_OK);
        rstMap.put(AppConstant.MSG, "密码校验通过");
        return rstMap;
    }

你可能感兴趣的:(java)