/**
 * 获取手机验证码的方法
 */
var loopObjBindMobil = null;
var secondsBindMobil = 0;
function hqBindYzm(moblieName, phoneErrorMessage, getMobilCodeButton) {
    var successmobileToken = $("#successmobileToken").val();
    var phoneValue = $("#" + moblieName).val();
    if (secondsBindMobil > 0) {
        return;
    }
    if ($("#" + getMobilCodeButton).attr("disabled")) {
        return;
    }

    $("#" + getMobilCodeButton).attr("disabled", "disabled");

    if (phoneValue != "") {
        if (onBlurMobilInput()) {
            $.post(
                appPath + "/memberCenter/getValidateCount.html",
                {
                    phone: phoneValue
                },
                function (data) {
                    if (data == "have") {
                        $("#" + phoneErrorMessage).text("手机已被人验证");
                        $("#" + getMobilCodeButton).removeAttr("disabled");
                    } else {
                        $.post(
                            appPath + "/memberCenter/sendPhoneCode.html",
                            {
                                mobileToken: successmobileToken,
                                phoneNum: phoneValue
                            },
                            function (data) {
                                if (data == "yes") {
                                    //                                                $("#mobiletext").show();
                                    clearInterval(loopObjBindMobil);
                                    secondsBindMobil = 60;
                                    loopObjBindMobil = window.setInterval(function () {
                                        UpdateTime(getMobilCodeButton);
                                    }, 1000);
                                } else if (data == "yyz") {
                                    $("#" + phoneErrorMessage).html("此账号已验证手机,无需再次验证,请到账户安全查看已验证手机");
                                    $("#" + getMobilCodeButton).removeAttr("disabled");
                                } else if (data == "errorNum") {
                                    $("#" + phoneErrorMessage).html("非健一网来客!");
                                    $("#" + getMobilCodeButton).removeAttr("disabled");
                                }
                            });
                    }
                }
            );
        } else {
            $("#mobilName").removeClass('text bian-01');
            $("#mobilName").addClass('text bian-02');
            $("#mobilStyle").removeClass('correct');
            $("#mobilStyle").addClass('error');
            $("#mobilErrorMsg").text('请输入正确的手机号');
            $("#" + getMobilCodeButton).removeAttr("disabled");
            return false;
        }
    } else {
        $("#mobilName").removeClass('text bian-01');
        $("#mobilName").addClass('text bian-02');
        $("#mobilStyle").removeClass('correct');
        $("#mobilStyle").addClass('error');
        $("#mobilErrorMsg").text('请输入手机号');
        $("#" + getMobilCodeButton).removeAttr("disabled");
        return false;
    }
}
     @RequestMapping(value = "/sendPhoneCode")
     @J1Page
     @SeoInfo
     public void sendPhoneCode(HttpSession session,
             HttpServletRequest request, HttpServletResponse response,
             MyMemberInfoPageInputVo inputVo,
             @ModelAttribute("model") MyMemberInfoPageModel model) {
         String phoneNum = "";// 手机号码
         String loginName = null;

         try {
 //            if (request.getParameter("phoneNum") != null) {
 //                phoneNum = request.getParameter("phoneNum").trim();
 //            }
             if (inputVo.getPhoneNum() != null) {
                 phoneNum = inputVo.getPhoneNum().trim();
             }
 //            String num = request.getParameter("mobileToken");
             String num = inputVo.getMobileToken();
             if (StringUtil.isNotEmpty(num)) {
                 String code;
                 response.setContentType("text/html;charset=utf-8");

                 if (request.getSession().getAttribute("loginName") != null) {
                     loginName = request.getSession().getAttribute("loginName").toString();
                 }
                 if (loginName != null) {
                     Member getMember = memberService.findMemberByLoginName(loginName);
                     if (!"Y".equals(getMember.getMobileState())) {
                         sendCode(request, response, loginName, num, phoneNum);
                     } else {
                         response.getWriter().write("yyz");
                     }
                 } else {
                     response.getWriter().write("errorNum");
                 }
             } else {
                 response.getWriter().write("errorNum");
             }
         } catch (IOException e) {
             // TODO Auto-generated catch block
             logger.error(e.getMessage(), e);
         }

     }

     public void sendCode(HttpServletRequest request,
             HttpServletResponse response, String loginName, String num,
             String phoneNum) {

         int validateCount = 1;// 验证的次数
         Boolean canSendSms = true;// 是否能发短信

         try {
             newMemberNameMapPhone = (Map<String, String>) cache.get(loginName
                     + "newMemberNameMapPhone");
             if (newMemberNameMapPhone == null) {
                 newMemberNameMapPhone = new HashMap<String, String>();
             }
             // 手机验证码
             String code = RandomUtils.generateNumberString(6);// 手机验证码

             String nowDay = StringUtil.returnDateFormat(new Date(),
                     "yyyy-MM-dd");
             String mobileValue = newMemberNameMapPhone.get(loginName);// 获取这个用户手机验证的value
             if (mobileValue == null) {// 说明该用户没有验证过手机记录
                 newMemberNameMapPhone.put(loginName, code + "_" + 1 + "_"
                         + nowDay + "_" + phoneNum + "_" + num);
             } else {
                 String[] strArr = mobileValue.split("_");
                 if (nowDay.equals(strArr[2])) {// 这天验证的次数

                     validateCount += 1;
                     newMemberNameMapPhone.put(loginName, code + "_"
                             + validateCount + "_" + nowDay + "_" + phoneNum
                             + "_" + num);

                 } else {
                     newMemberNameMapPhone.put(loginName, code + "_" + 1 + "_"
                             + nowDay + "_" + phoneNum + "_" + num);
                 }
             }
             // 验证存放到cache里面
             cache.put(loginName + "newMemberNameMapPhone",
                     newMemberNameMapPhone, 30);
             // if (canSendSms.equals(true)) {
             Sms sms = new Sms();
             sms.setMobile(phoneNum);
             sms.setMsg("尊敬的用户  , 您在健一网的安全验证码为" + code + ",健一网祝您身体健康");
             long time = new Date().getTime();
             long preTime = sendMessageService.getMsg(sms.getMobile() + num,
                     time);
             long differenceTime = time - preTime;
             // if (differenceTime > 0 && differenceTime < 60000) {
             // response.getWriter().write("no");
             // } else {
             sendMessageService.sendMessageForCode(sms, num);
             response.getWriter().write("yes");
             // }
             // } else {
             // response.getWriter().write("no");
             // }
         } catch (IOException e) {
             // TODO Auto-generated catch block
             logger.error(e.getMessage(), e);
         }

     }

最新文章

  1. SQL时间相关
  2. js基础知识点总结
  3. 记录一次centos6.4版本的VSFTP本地用户登陆的配置
  4. (easy)LeetCode 228.Summary Ranges
  5. SpringMVC+JPA使用注入的方式环境搭建
  6. ligerGrid 取得选中行的数据
  7. 在vmware 6.5+ubuntu12.04上安装VMware tools出现问题的分析
  8. iOS9中将图片保存到照片中的某个相册的方法说明
  9. 深入JSP学习
  10. 第一篇bolg
  11. 当运行docker run -i -t ubuntu /bin/bash时,提示报错Error response from daemon: EOF?
  12. XLSReadWriteII5导入excel数据
  13. Python中字典dict
  14. Git——取消merge状态
  15. docker的安装及项目部署
  16. Mysql 数据库几种引擎的区别比较
  17. tips 移入悬浮功能
  18. JavaScrip(一)JavaScrip的写法
  19. mock server搭建及接口测试简单实例
  20. Centos 7安装Python3.6

热门文章

  1. Oracle 新增数据 insert into整理
  2. Java设计模式的6大原则
  3. CF1106F Lunar New Year and a Recursive Sequence——矩阵快速幂&amp;&amp;bsgs
  4. oracel: 通过特殊表序列来实现oracle自增id (mybatis实现自增id)
  5. LightOJ - 1410 - Consistent Verdicts(规律)
  6. usa物价统计
  7. Tensorflow细节-P196-输入数据处理框架
  8. PostgreSQL 输出 JSON 结果
  9. 判断指定对象是否进入浏览器可视窗口,true 进入,false 没进入
  10. python 使用 tibco ems