1 /**
  2  * 更换成功
  3  */
  4 define(["core", "component/process_components"], function() {
  5 
  6     var _html = [
  7     '<div class="we_pop_content_box" style="margin-left:50px;">',
  8         '<div class="we_cell_status">',
  9             '<p class="we_txt"><strong class="we_cell_title"><i class="we_icon_suc_b"></i>更换手机成功!</strong></p>',
 10         '</div>',
 11     '</div>',
 12     '<div class="we_cell_phone_change" style="margin-left:50px;">',
 13         '<ul class="we_phone_box">',
 14             '<li class="we_phone_item_old">原手机:<strong class="we_phone_number">$phone$</strong></li>',
 15             '<li class="we_phone_item_text">成功更改为</li>',
 16             '<li class="we_phone_item_new" style="margin-left:10px;">新手机:<strong class="we_phone_number">$new_phone$</strong></li>',
 17         '</ul>',
 18     '</div>',
 19     '<div class="we_cell_multext" style="margin-left:50px;">',
 20         '<ul class="we_cell_multext_box">',
 21             '<li attr="old_notice" style="display:none;">原手机账号 <span class="we_blue">$phone$</span>可以用 <span class="we_blue">$new_phone$</span> 作为账号名直接登录</li>',
 22             '<li attr="notice_alias" style="display:none;">新手机账号 <span class="we_blue">$new_phone$</span>将使用 <span class="we_blue">$alias$</span> 登录</li>',
 23         '</ul>',
 24     '</div>'
 25     ].join('');
 26 
 27     var _tip="请为账号设置新的登录名,设置成功后原账号,只能使用新的登录名登录。";
 28 
 29     var _btmTips = ["<strong>温馨提示:</strong>如果是手机账号,更换手机后登录名将变成新手机号<br>",
 30                         "<strong>手机账号:</strong>可以用手机号码作为登录名的账号"].join('');
 31 
 32     /**
 33      * 更换成功
 34      */
 35     $we.widget.reg("phone_change_success", {
 36         interfaces:{
 37             /**
 38              * render函数,AAA的接口函数,对于业务流组件来说,它完全可以转变为一个内置函数,
 39              * 业务流组件在大多数情况下,不会调用interfaces
 40              */
 41             render:function ()
 42             {
 43                 var newPhone=$we.process.getData('new_phone');
 44                 newPhone = $we.string.maskString(newPhone);
 45                 var needDemote = $we.process.getData('need_demote');
 46                 var oldIsMobile =$we.process.getData('old_is_mobile_acc');
 47 
 48                 this.append(this.el, _html,{
 49                     phone:$we.process.getData('phone'),
 50                     new_phone:newPhone,
 51                     alias:$we.process.getData('alias')
 52                 });
 53                 if(oldIsMobile){
 54                     $(this.node['old_notice']).show();
 55                 }
 56                 if(needDemote){
 57                     $(this.node['notice_alias']).show();
 58                 }
 59                 this.notify("renderBottom", _btmTips);
 60             }
 61         },
 62         /**
 63          * 初始化函数
 64          * @param  {element} el    通过业务流组件传递过来的参数,该业务流组件的business节点
 65          * @param  {object} params 初始化业务流组件时,每个组件传递的参数
 66          */
 67         init:function (el, params)
 68         {
 69             params = params ||{};
 70             this.el = el;
 71             this.params = params;
 72             this.params.success = $we.utils.setValue(this.params.success, $we.emptyFunction);
 73         },
 74         /**
 75          * 每个组件,如果需要使用业务流的话,需要声明这个
 76          */
 77         process:{
 78             /**
 79              * 组件开始调用,业务流组件会调用这个接口来启用组件
 80              */
 81             start:function ()
 82             {
 83                 this.render();
 84             },
 85             /**
 86              * 组件结束调用,当这个业务结束的时候,业务流组件会调用它
 87              */
 88             end:function ()
 89             {
 90                 this.params.success();
 91                 $(this.el).empty();
 92             },
 93             /**
 94              * 组件检测是否可以进行下一步
 95              * 当组件需要进入下一步时,业务流组件将会调用这个接口,
 96              * 这个接口需要通过 this.notify("goNext") 来通知业务流组件它检测通过,
 97              * 否则业务流组件在这个地方会停滞下来 通过 this.notify("pause")来通知
 98              */
 99             checkSucc:function ()
100             {
101                 this.notify("goNext");
102             }
103         },
104         events:{
105         }
106     });
107 
108 });