123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403 |
- <!doctype html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>绑定手机号</title>
- <meta name="format-detection" content="telephone=no"/>
- <meta name="viewport"
- content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
- <meta name="apple-mobile-web-app-capable" content="yes"/>
- <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
- <link rel="stylesheet" href="../../../css/cross.css" type="text/css"/>
- <link rel="stylesheet" href="../../home/css/bind-phone.css" type="text/css"/>
- <link rel="stylesheet" href="../../../css/cross.ui.css" type="text/css"/>
- <link rel="stylesheet" type="text/css" href="../../../css/ss-style.css">
- <link rel="stylesheet" type="text/css" href="../../../iconfont/iconfont.css" />
- <style>
- .n-list-info{position: relative;}
- .searchbar-clear{position: absolute;width: 28px;height: 28px;right: 0;top:8px;opacity:0;pointer-events:none;background-position:center;background-repeat:no-repeat;background-image:url(../../../images/delete01_pre.png);-webkit-background-size:20px 20px;background-size:20px 20px;-webkit-transition-duration:300ms;transition-duration:300ms;cursor:pointer;}
- #div-yzm{width:80px;height:29px;border:1px solid #4DCD70;color:#4DCD70;font-size:14px;line-height:29px;text-align:center;border-radius:10px;margin-top:7px;}
- .c-btn-dcdcdc{background: #DCDCDC;}
- .c-btn.active{background: #4DCD70;}
- </style>
- </head>
- <body style="overflow: hidden;">
-
- <div class="main">
- <ul class="n-list edit-info registered c-border-tb mt15 c-f15 form-register">
- <li>
- <div class="n-list-key" style="width: 2.3em;">
- <i class="iconfont icon-shouji1"></i>
- </div>
- <div class="n-list-info">
- <input id="txtMobile" type="tel" class="width-100 c-f16 c-5b5b5b" maxlength="11" placeholder="请输入新的手机号码" onkeyup="this.value=this.value.replace(/[^\d]/g,'')"/>
- <a href="#" class="searchbar-clear"></a>
- </div>
- </li>
- <li>
- <div class="n-list-key" style="width: 2.3em;">
- <i class="iconfont icon-yanzhengma01"></i>
- </div>
- <div class="n-list-info">
- <input id="txtCode" type="text" class="width-100 c-f16 c-5b5b5b" placeholder="请输入验证码"/>
- <a href="#" class="searchbar-clear"></a>
- </div>
- <div id="messageCode1" class="n-list-key pl15 c-17b3ec" onclick="sendCode()">
- <span>获取短信验证码</span>
- </div>
- <div id="messageCode2" class="n-list-key pl15 c-999999" style="display: none;">
- <span id="message"></span>
- </div>
- </li>
- </ul>
- <div class="mb15 mlr15 mt20">
- <a href="javascript:;" style="font-size: 18px;" class="c-btn c-btn-dcdcdc c-btn-full c-btn-radius c-f16">完 成</a>
- </div>
- </div>
- <div id="phoneBindWrap">
- <div style="display: none;" id="phoneBindBox">
- <div class="common-mask bg-black js-closePhoneBox"></div>
- <div class="phone-bind-box mlr15 mtb10">
- <div class="bgc-fff border-radius-rounded">
- <div class="phone-bind-msg ptb15 plr15">
- 该号码已与他人绑定,是否继续使用该号码注册?是否将已绑人员设定为家庭成员?(家庭成员间可互相切换账号并查看健康档案等隐私信息)
- </div>
- <div class="phone-bind-member c-border-t c-border-b js-LookBindPeople">查看绑定人员</div>
- <div class="phone-bind-member c-border-b js-beFamily">继续绑定,且成为家人</div>
- <div class="phone-bind-member js-notBeFamily">继续绑定,但不成为家人</div>
- </div>
- <div class="phone-bind-member border-radius-rounded bgc-fff mt10 js-closePhoneBox">取消</div>
- </div>
- </div>
-
-
- <div class="common-mask bgc-f9f9f9" style="display: none;" id="phoneMemberList">
- <div class="phone-member-box">
- <ul class="phone-member-list plr10 ptb10 mt10 c-border-b c-border-t" id="phoneMemberItem">
- <script id="memberList" type="text/html">
- {{each dataList as value i}}
- <li class="phone-member-item">
- <div><img src="{{value.photo | setPhoto}}" class="phone-member-img"></div>
- <span class="phone-member-name">{{value.name}}</span>
- </li>
- {{/each}}
- </script>
- </ul>
- <div class="plr10">
- <div class="phone-member-btn js-beFamily">继续绑定,且成为家人</div>
- <div class="phone-member-btn mt10 js-notBeFamily">继续绑定,但不成为家人</div>
- <div class="phone-member-btn phone-member-back mt10 js-closePhoneBox">返回修改手机号码</div>
- </div>
- </div>
- </div>
- </div>
- </body>
- <script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js" ></script>
- <script type="text/javascript" src="../../../js/common_http.js" ></script>
- <script type="text/javascript" src="../../../js/weixin_common.js" ></script>
- <script type="text/javascript" src="../../../js/template.js" ></script>
- <link rel="stylesheet" type="text/css" href="../../../widget/artDialog/6.0.5/css/ui-dialog.min.css">
- <script src="../../../widget/artDialog/6.0.5/js/dialog-plus.js"></script>
- <script type="text/javascript" src="../../../js/commit_validate.js" ></script>
- <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
- <script type="text/javascript">
- var dd = dialog({contentType:'load', skin:'bk-popup', content:'绑定中...'});
- var Request = new Object();
- Request = GetRequest();
- var openid = Request["openid"];
- var type = Number(Request["type"]);
- var mobile1 = Request["mobile"];
- var clock = "";
- var nums = 60;
- var loginParams = Request["loginParams"];
- var relation = 0;
-
-
- isValueChange();//判断当前是否有输入值,有输入则登录按钮变亮
- bindEvents();
-
- if(loginParams) {
- loginParams = JSON.parse(decodeURIComponent( Request["loginParams"]));
- }
- $(function (){
- var userAgent = window.localStorage.getItem(agentName);
- if(userAgent){
- var paurl = "";
- if(type == 0){
- paurl = "wx/html/home/html/login.html?type=0&openid=" + openid;
- }
- else{
- if(mobile1){
- paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid + "&mobile=" + mobile1;
- }
- else{
- paurl = "wx/html/home/html/login.html?type=" + type + "&openid=" + openid;
- }
- }
- //从后台那边获取签名等信息
- var params = {};
- params.pageUrl = window.location.href;
- $.ajax(server + "weixin/getSign", {
- data: params,
- dataType: "json",
- type: "post",
- success: function(res){
- if (res.status == 200) {
- var t = res.data.timestamp;
- var noncestr = res.data.noncestr;
- var signature = res.data.signature;
- wx.config({
- //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
- appId: appId, // 必填,公众号的唯一标识
- timestamp: t, // 必填,生成签名的时间戳
- nonceStr: noncestr, // 必填,生成签名的随机串
- signature: signature,// 必填,签名,见附录1
- jsApiList: [
- 'closeWindow'
- ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
- });
- }
- }
- });
- /*wx.ready(function(){
- wx.closeWindow();
- });*/
- }
- else{
- if(!openid){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'openid获取失败'}).show();
- }
- }
- })
-
- function bindEvents(){
- $(".c-btn").on("click",function(){
- if($(this).hasClass("active")){
- commit();
- }
- })
-
- $("input").on("focus",function(){
- $(".searchbar-clear").css("pointer-events","none").css("opacity",0);
- if($(this).val()){
- $(this).next().css("pointer-events","auto").css("opacity",1);
- }
- }).on("input",function(){
- $(this).next().css("pointer-events","auto").css("opacity",1);
- });
-
- $(".n-list-info").on("click",".searchbar-clear",function(){
- $(this).prev().val("");
- $(this).css("pointer-events","none").css("opacity",0);
- $(this).prev().focus();
- return false;
- });
- }
- function isValueChange(){
- var self = this;
- var int= setInterval(function() {
- if($("#txtMobile").val()&&$("#txtCode").val()){
- clearInterval(int);
- int = null;
- $(".c-btn").addClass("active");
- }
-
- },300);
- }
-
- function sendCode(){
- var mobile = document.getElementById("txtMobile").value;
- if(!mobile){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'请输入手机号'}).show();
- return;
- }
- if(!isphone(mobile)){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show();
- return;
- }
-
- var dd1 = dialog({contentType:'load', skin:'bk-popup', content:'请求中...'});
- dd1.showModal();
- sendPost("patient/is_mobile_register", {mobile: mobile}, "json", "post", function(res){
- dd1.close();
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证手机是否注册失败'}).show();
- }, function(res){
- dd1.close();
- if(res.status==200){
- if(res.data == 0){
- $("#messageCode1").hide();
- document.getElementById("message").innerHTML = nums+'秒后可重新获取';
- $("#messageCode2").show();
- clock = setInterval(doLoop, 1000); //一秒执行一次
- var data = {};
- data.mobile = mobile;
- data.type = 8;
- sendPost("common/captcha", data, "json", "post", sendFailed, sendSuccesss);
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'该手机已注册!'}).show();
- }
- } else{
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证手机是否注册失败'}).show();
- }
- })
- }
- //失败
- function sendFailed(res) {
- clearInterval(clock); //清除js定时器
- $("#messageCode1").show();
- $("#messageCode2").hide();
- nums = 60; //重置时间
- if (res && res.msg) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'获取失败'}).show();
- }
- }
-
- function sendSuccesss(res){
- if (res.status == 200) {
-
- }
- else{
- sendFailed(res);
- }
- }
-
- function doLoop(){
- nums--;
- if(nums > 0){
- document.getElementById("message").innerHTML = nums+'秒后可重新获取';
- }else{
- clearInterval(clock); //清除js定时器
- $("#messageCode1").show();
- $("#messageCode2").hide();
- nums = 60; //重置时间
- }
- }
-
- function commit(){
- var
- mobile = document.getElementById("txtMobile").value,
- captcha = document.getElementById("txtCode").value,
- data = {};
-
- //拼请求内容
- data.mobile = mobile;
- data.captcha = captcha;
- data.type = 1;
- data.relation = 0;
-
- if (!mobile || !captcha) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号和验证码不能为空'}).show();
- return;
- }
-
- if(!isphone(mobile)){
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'手机号格式不正确'}).show();
- return;
- }
-
- dd.showModal();
-
- sendPost("patient/mobile_update", data, "json", "post", operateFailed, operateSuccesss)
- //成功调用登录接口
- function operateSuccesss(res) {
- function showBindPhone () {
- var
- resData = res.data,
- $phoneBindBox = $('#phoneBindBox'),
- $closePhoneBox = $('.js-closePhoneBox'),
- $beFamily = $('.js-beFamily'),
- $notBeFamily = $('.js-notBeFamily'),
- $LookBindPeople = $('.js-LookBindPeople'),
- $phoneMemberList = $('#phoneMemberList'),
- $phoneMemberItem = $('#phoneMemberItem');
- // name = $("#txtName").val(),
- // idcard = $("#txtIdcard").val(),
- // ssc = $("#txtSsc").val(),
- // mobile = $("#txtMobile").val(),
- // paramAgent = "",
- if (resData) {
- memberLength = resData.length; //成员数量
- if (memberLength > 0){
- showPhoneBoxFn();
- }
- }
- // 手机有绑定成员时显示弹框
- function showPhoneBoxFn() {
- $phoneBindBox.show();
- dd.close();
- $closePhoneBox.click(function () {
- $phoneBindBox.hide();
- $phoneMemberList.hide();
- });
- $beFamily.click(function () {
- relation = 2;
- agreementPageFn();
- });
- $notBeFamily.click(function () {
- relation = 1;
- agreementPageFn();
- });
- $LookBindPeople.click(function () {
- $phoneBindBox.hide();
- $phoneMemberList.show();
- var data = {
- dataList: resData,
- };
- var html = template('memberList', data);
- $phoneMemberItem.html(html);
- });
- }
- };
- function agreementPageFn() {
- data.relation = relation;
- sendPost("patient/mobile_update", data, "json", "post", failed, success);
- function failed() {
- //非200则为失败
- operateFailed(res);
- };
- function success() {
- // window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
- console.log(relation);
- };
- }
- if (res.status == 200) {
- window.location.href = "my-detail.html?type=" + type + "&openid=" + openid;
- dd.close();
- } else if (res.status == 1) {
- showBindPhone();
- } else {
- //非200则为失败
- operateFailed(res);
- }
- }
- //失败
- function operateFailed(res) {
- dd.close();
- if (res && res.msg) {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:res.msg}).show();
- } else {
- dialog({contentType:'tipsbox',bottom:true, skin:'bk-popup' , content:'验证码验证失败'}).show();
- }
- }
- }
-
- template.helper("setPhoto", function(p) {
- return getImgUrl(p);
- });
-
- </script>
- </html>
|