shenhao 4 年之前
父节点
当前提交
35c807610e

+ 12 - 7
src/main/java/com/ssj/service/conch/parents/service/impl/ParentServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ssj.service.conch.parents.service.impl;
 
+import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
 import com.ssj.bean.weixin.user.domain.User;
 import com.ssj.framework.core.security.manager.TokenManager;
 import com.ssj.framework.core.util.AliyunSmsUtil;
@@ -96,17 +97,21 @@ public class ParentServiceImpl implements ParentService {
 			//获取6位随机验证码
 			String code = AliyunSmsUtil.getRandNum();
 			//所有验证码使用通用验证码:验证码${code},若非本人操作,请勿泄露。
-			AliyunSmsUtil.sendSms(phoneNumber, code,"SMS_175541171");
-
-			//发送成功后 60秒内不重新发送
-			tokenManager.set("repeatCode_".concat(phoneNumber), code, 60);
-			//五分钟后失效
-			tokenManager.set("cacheCode_".concat(phoneNumber), code, 300);
+			SendSmsResponse sm = AliyunSmsUtil.sendSms(phoneNumber, code,"SMS_175541171");
+			if("ok".equals(sm.getCode().toLowerCase())){
+				//发送成功后 60秒内不重新发送
+				tokenManager.setString("repeatCode_".concat(phoneNumber), code, 60);
+				//五分钟后失效
+				tokenManager.setString("cacheCode_".concat(phoneNumber), code, 300);
+				responseEntity.success("验证码发送成功");
+			}else{
+				responseEntity.failure("验证码发送失败,".concat(sm.getMessage()));
+			}
 		}catch (Exception e){
 			responseEntity.failure("验证码发送失败,请稍后重新获取");
 		}
 
-		return responseEntity.success("验证码发送成功");
+		return responseEntity;
 	}
 
 	@Override

+ 1 - 1
src/main/java/com/ssj/service/weixin/sales/service/LibVipServiceService.java

@@ -639,7 +639,7 @@ public interface LibVipServiceService extends BaseService<LibVipService, String>
 	
 	void insertLibServiceByType(String vipId, String libId, Date endDate, int signType);
 	    
-	void insertLibCorrectServiceByType(String vipId, String libId, Date endDate, int signType);
+	void insertLibCorrectServiceByType(String vipId, String libId, Date endDate, int signType,String orderDetailId);
 	
 	LibVipService findTopByVipIdAndLibIdAndSpeciesAndTypeOrderByCreateTimeDesc(String vipId, String LibId, String species, String type);
 	

+ 2 - 2
src/main/java/com/ssj/service/weixin/sales/service/impl/LibOrderDetailsServiceImpl.java

@@ -1551,7 +1551,7 @@ public class LibOrderDetailsServiceImpl extends BaseServiceImpl<LibOrderDetails,
 			if("C022".equals(libOrderDetails.getPriceType())){
 				libOrderDetails.setEndTime(DateHelper.getMonthDate(startTime, number));
 			}
-			this.save(libOrderDetails);
+			libOrderDetails = this.save(libOrderDetails);
 			
 			
 			//没有班级信息的,不关联班级信息
@@ -1579,7 +1579,7 @@ public class LibOrderDetailsServiceImpl extends BaseServiceImpl<LibOrderDetails,
 			}
 			
 			//给学生增加一个默认的永久校区批改服务
-			libVipServiceService.insertLibServiceByType(libVip.getId(), libJoin.getId(), libOrderDetails.getEndTime(), libJoin.getSignType());
+			libVipServiceService.insertLibCorrectServiceByType(libVip.getId(), libJoin.getId(), libOrderDetails.getEndTime(), libJoin.getSignType(),libOrderDetails.getId());
 			
 			tokenManager.createServiceCount("ZUOYB_SERVICE_"+libVip.getId()+"_"+libOrderDetails.getLibId(), "1");	
 			

+ 14 - 9
src/main/java/com/ssj/service/weixin/sales/service/impl/LibVipServiceServiceImpl.java

@@ -1696,24 +1696,25 @@ public class LibVipServiceServiceImpl extends BaseServiceImpl<LibVipService, Str
             //2021-02-07 深圳吴老师学校商户只给平台批改服务
             Merchant merchant = merchantService.getMerchantByLibId(libId);
             if(Objects.isNull(merchant) || merchant.getPosType()!=3){
-				this.insertLibCorrectService(vipId, libId, endDate);
+				this.insertLibCorrectService(vipId, libId, endDate,null);
 			}
-            this.insertLibService(vipId, libId, endDate);
+            this.insertLibService(vipId, libId, endDate,null);
         } else {
             //老套餐,只需要给指定的校区服务
-            this.insertLibService(vipId, libId, DateUtil.parse_yyyyMMdd("9999-01-01"));
+            this.insertLibService(vipId, libId, DateUtil.parse_yyyyMMdd("9999-01-01"),null);
         }
     }
 
     @Override
-    public void insertLibCorrectServiceByType(String vipId, String libId, Date endDate, int signType) {
+    public void insertLibCorrectServiceByType(String vipId, String libId, Date endDate, int signType,String detailId) {
         if (signType > 0) {
             //新套餐,给的这个服务需要和校区服务保持一致的结束时间
             //查询这个馆下有没有有效的服务
-            this.insertLibCorrectService(vipId, libId, endDate);
+			this.insertLibCorrectService(vipId, libId, endDate,detailId);
+            this.insertLibService(vipId, libId, endDate,detailId);
         } else {
-            //老套餐,直接给永久服务
-            this.insertLibCorrectService(vipId, libId, DateUtil.parse_yyyyMMdd("9999-01-01"));
+			//老套餐,只需要给指定的校区服务
+            this.insertLibService(vipId, libId, DateUtil.parse_yyyyMMdd("9999-01-01"),detailId);
         }
     }
     
@@ -1725,7 +1726,7 @@ public class LibVipServiceServiceImpl extends BaseServiceImpl<LibVipService, Str
      * @param libId
      * @param endDate
      */
-    void insertLibCorrectService(String vipId, String libId, Date endDate) {
+    void insertLibCorrectService(String vipId, String libId, Date endDate,String detailId) {
         Date now = new Date();
         //之前的校区批改服务
         LibVipService libVipService = libVipServiceDao.findTopByVipIdAndLibIdAndSpeciesAndTypeOrderByCreateTimeDesc(vipId, libId, "S003", "C025");
@@ -1743,10 +1744,12 @@ public class LibVipServiceServiceImpl extends BaseServiceImpl<LibVipService, Str
             libVipService.setCorrectType(5);
             //排所有服务优先级第4
             libVipService.setServiceSort(4);
+            libVipService.setOrderDetailsId(detailId);
             this.save(libVipService);
         } else {
             libVipService.setEndTime(endDate);
             libVipService.setStat(1);
+			libVipService.setOrderDetailsId(detailId);
             this.save(libVipService);
         }
     }
@@ -1758,7 +1761,7 @@ public class LibVipServiceServiceImpl extends BaseServiceImpl<LibVipService, Str
      * @param libId
      * @param endDate
      */
-    void insertLibService(String vipId, String libId, Date endDate) {
+    void insertLibService(String vipId, String libId, Date endDate,String detailId) {
         Date now = new Date();
         //之前的校区服务
         LibVipService libVipService = libVipServiceDao.findTopByVipIdAndLibIdAndSpeciesAndTypeOrderByCreateTimeDesc(vipId, libId, "S003", "C024");
@@ -1776,10 +1779,12 @@ public class LibVipServiceServiceImpl extends BaseServiceImpl<LibVipService, Str
             libVipService.setCorrectType(2);
             //排所有服务优先级第3
             libVipService.setServiceSort(3);
+			libVipService.setOrderDetailsId(detailId);
             this.save(libVipService);
         }else {
 	    	libVipService.setEndTime(endDate);
 	        libVipService.setStat(1);
+			libVipService.setOrderDetailsId(detailId);
 	        this.save(libVipService);
         }
 

+ 10 - 2
src/main/java/com/ssj/weixin/api/activity/service/impl/SignUpServiceImpl.java

@@ -49,7 +49,7 @@ public class SignUpServiceImpl extends BaseServiceImpl<SignUpEntity,String> impl
     public void addData(SignUpBase req, User user) {
         //添加数据
         SignUpEntity entity = new SignUpEntity();
-        entity.setSubmitJson(JSONObject.toJSONString(req));
+        entity.setSubmitJson(JSONObject.toJSONString(req.getList()));
         entity.setPhoneNum(user.getMobile());
         entity.setCreateTime(new Date());
         entity.setType(req.getType());
@@ -65,7 +65,15 @@ public class SignUpServiceImpl extends BaseServiceImpl<SignUpEntity,String> impl
     @Override
     public List<Map<String, Object>> signUpList() {
         List<Map<String, Object>> list = queryDao.signUpList();
-        list.forEach(m-> m.put("timeMsg", DateHelper.getTimeDes(Long.parseLong(m.get("s_second").toString()))));
+        list.forEach(m-> {
+            m.put("timeMsg", DateHelper.getTimeDes(Long.parseLong(m.get("s_second").toString())));
+            m.put("phone_num",hiddenPhone(m.get("phone_num").toString()));
+        });
         return list;
     }
+
+    private String hiddenPhone(String phoneNum){
+        String reNum = phoneNum.substring(0,3).concat("****").concat(phoneNum.substring(7));
+        return reNum;
+    }
 }

+ 2 - 2
src/main/java/com/ssj/weixin/interceptor/SetControlDataInterceptor.java

@@ -92,7 +92,7 @@ public class SetControlDataInterceptor extends HandlerInterceptorAdapter {
         User user = UserUtil.getUser(request);
         if(!notCheckPhoneList.contains(url)){
 			if(StringUtils.isEmpty(user.getMobile())){
-				String sysUrl="https://xt.sharingschool.com";
+				String sysUrl="https://book.sharingschool.com";
 				//String sysUrl= "http://localhost:8081/";
 				response.sendRedirect(sysUrl+"/weixin/mylib/bindingMobilePhone.html?redirectUrl="+(sysUrl+url));
 				return false;
@@ -122,7 +122,7 @@ public class SetControlDataInterceptor extends HandlerInterceptorAdapter {
         	tokenManager.createWxOpenId(openid, subscribe);
         }
         modelAndView.addObject("subscribe",subscribe);
-        modelAndView.addObject("sysUrl", "https://xt.sharingschool.com");
+        modelAndView.addObject("sysUrl", "https://book.sharingschool.com");
        // modelAndView.addObject("sysUrl", "http://127.0.0.1:8081");
         modelAndView.addObject("imgUrl", SystemResourceLocator.getValue("STATIC_FILE_URL"));
 

+ 275 - 0
src/main/resources/static/js/select/jquery.searchableSelect.js

@@ -0,0 +1,275 @@
+// Author: David Qin
+// E-mail: david@hereapp.cn
+// Date: 2014-11-05
+
+(function($){
+
+  // a case insensitive jQuery :contains selector
+  $.expr[":"].searchableSelectContains = $.expr.createPseudo(function(arg) {
+    return function( elem ) {
+      return $(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
+    };
+  });
+
+  $.searchableSelect = function(element, options) {
+    this.element = element;
+    this.options = options || {};
+    this.init();
+
+    var _this = this;
+
+    this.searchableElement.click(function(event){
+      // event.stopPropagation();
+      _this.show();
+    }).on('keydown', function(event){
+      if (event.which === 13 || event.which === 40 || event.which == 38){
+        event.preventDefault();
+        _this.show();
+      }
+    });
+
+    $(document).on('click', null, function(event){
+      if(_this.searchableElement.has($(event.target)).length === 0)
+        _this.hide();
+    });
+
+    this.input.on('keydown', function(event){
+      event.stopPropagation();
+      if(event.which === 13){         //enter
+        event.preventDefault();
+        _this.selectCurrentHoverItem();
+        _this.hide();
+      } else if (event.which == 27) { //ese
+        _this.hide();
+      } else if (event.which == 40) { //down
+        _this.hoverNextItem();
+      } else if (event.which == 38) { //up
+        _this.hoverPreviousItem();
+      }
+    }).on('keyup', function(event){
+      if(event.which != 13 && event.which != 27 && event.which != 38 && event.which != 40)
+        _this.filter();
+    })
+  }
+
+  var $sS = $.searchableSelect;
+
+  $sS.fn = $sS.prototype = {
+    version: '0.0.1'
+  };
+
+  $sS.fn.extend = $sS.extend = $.extend;
+
+  $sS.fn.extend({
+    init: function(){
+      var _this = this;
+      this.element.hide();
+
+      this.searchableElement = $('<div tabindex="0" class="searchable-select"></div>');
+      this.holder = $('<div class="searchable-select-holder"></div>');
+      this.dropdown = $('<div class="searchable-select-dropdown searchable-select-hide"></div>');
+      this.input = $('<input type="text" class="searchable-select-input" />');
+      this.items = $('<div class="searchable-select-items"></div>');
+      this.caret = $('<span class="searchable-select-caret"></span>');
+
+      this.scrollPart = $('<div class="searchable-scroll"></div>');
+      this.hasPrivious = $('<div class="searchable-has-privious">...</div>');
+      this.hasNext = $('<div class="searchable-has-next">...</div>');
+
+      this.hasNext.on('mouseenter', function(){
+        _this.hasNextTimer = null;
+
+        var f = function(){
+          var scrollTop = _this.items.scrollTop();
+          _this.items.scrollTop(scrollTop + 20);
+          _this.hasNextTimer = setTimeout(f, 50);
+        }
+
+        f();
+      }).on('mouseleave', function(event) {
+        clearTimeout(_this.hasNextTimer);
+      });
+
+      this.hasPrivious.on('mouseenter', function(){
+        _this.hasPriviousTimer = null;
+
+        var f = function(){
+          var scrollTop = _this.items.scrollTop();
+          _this.items.scrollTop(scrollTop - 20);
+          _this.hasPriviousTimer = setTimeout(f, 50);
+        }
+
+        f();
+      }).on('mouseleave', function(event) {
+        clearTimeout(_this.hasPriviousTimer);
+      });
+
+      this.dropdown.append(this.input);
+      this.dropdown.append(this.scrollPart);
+
+      this.scrollPart.append(this.hasPrivious);
+      this.scrollPart.append(this.items);
+      this.scrollPart.append(this.hasNext);
+
+      this.searchableElement.append(this.caret);
+      this.searchableElement.append(this.holder);
+      this.searchableElement.append(this.dropdown);
+      this.element.after(this.searchableElement);
+
+      this.buildItems();
+      this.setPriviousAndNextVisibility();
+    },
+
+    filter: function(){
+      var text = this.input.val();
+      this.items.find('.searchable-select-item').addClass('searchable-select-hide');
+      this.items.find('.searchable-select-item:searchableSelectContains('+text+')').removeClass('searchable-select-hide');
+      if(this.currentSelectedItem.hasClass('searchable-select-hide') && this.items.find('.searchable-select-item:not(.searchable-select-hide)').length > 0){
+        this.hoverFirstNotHideItem();
+      }
+
+      this.setPriviousAndNextVisibility();
+    },
+
+    hoverFirstNotHideItem: function(){
+      this.hoverItem(this.items.find('.searchable-select-item:not(.searchable-select-hide)').first());
+    },
+
+    selectCurrentHoverItem: function(){
+      if(!this.currentHoverItem.hasClass('searchable-select-hide'))
+        this.selectItem(this.currentHoverItem);
+    },
+
+    hoverPreviousItem: function(){
+      if(!this.hasCurrentHoverItem())
+        this.hoverFirstNotHideItem();
+      else{
+        var prevItem = this.currentHoverItem.prevAll('.searchable-select-item:not(.searchable-select-hide):first')
+        if(prevItem.length > 0)
+          this.hoverItem(prevItem);
+      }
+    },
+
+    hoverNextItem: function(){
+      if(!this.hasCurrentHoverItem())
+        this.hoverFirstNotHideItem();
+      else{
+        var nextItem = this.currentHoverItem.nextAll('.searchable-select-item:not(.searchable-select-hide):first')
+        if(nextItem.length > 0)
+          this.hoverItem(nextItem);
+      }
+    },
+
+    buildItems: function(){
+      var _this = this;
+      this.element.find('option').each(function(){
+        var item = $('<div class="searchable-select-item" data-value="'+$(this).attr('value')+'">'+$(this).text()+'</div>');
+
+        if(this.selected){
+          _this.selectItem(item);
+          _this.hoverItem(item);
+        }
+
+        item.on('mouseenter', function(){
+          $(this).addClass('hover');
+        }).on('mouseleave', function(){
+          $(this).removeClass('hover');
+        }).click(function(event){
+          event.stopPropagation();
+          _this.selectItem($(this));
+          _this.hide();
+        });
+
+        _this.items.append(item);
+      });
+
+      this.items.on('scroll', function(){
+        _this.setPriviousAndNextVisibility();
+      })
+    },
+    show: function(){
+      this.dropdown.removeClass('searchable-select-hide');
+      this.input.focus();
+      this.status = 'show';
+      this.setPriviousAndNextVisibility();
+    },
+
+    hide: function(){
+      if(!(this.status === 'show'))
+        return;
+
+      if(this.items.find(':not(.searchable-select-hide)').length === 0)
+          this.input.val('');
+      this.dropdown.addClass('searchable-select-hide');
+      this.searchableElement.trigger('focus');
+      this.status = 'hide';
+    },
+
+    hasCurrentSelectedItem: function(){
+      return this.currentSelectedItem && this.currentSelectedItem.length > 0;
+    },
+
+    selectItem: function(item){
+      if(this.hasCurrentSelectedItem())
+        this.currentSelectedItem.removeClass('selected');
+
+      this.currentSelectedItem = item;
+      item.addClass('selected');
+
+      this.hoverItem(item);
+
+      this.holder.text(item.text());
+      var value = item.data('value');
+      this.holder.data('value', value);
+      this.element.val(value);
+
+      if(this.options.afterSelectItem){
+        this.options.afterSelectItem.apply(this);
+      }
+    },
+
+    hasCurrentHoverItem: function(){
+      return this.currentHoverItem && this.currentHoverItem.length > 0;
+    },
+
+    hoverItem: function(item){
+      if(this.hasCurrentHoverItem())
+        this.currentHoverItem.removeClass('hover');
+
+      if(item.outerHeight() + item.position().top > this.items.height())
+        this.items.scrollTop(this.items.scrollTop() + item.outerHeight() + item.position().top - this.items.height());
+      else if(item.position().top < 0)
+        this.items.scrollTop(this.items.scrollTop() + item.position().top);
+
+      this.currentHoverItem = item;
+      item.addClass('hover');
+    },
+
+    setPriviousAndNextVisibility: function(){
+      if(this.items.scrollTop() === 0){
+        this.hasPrivious.addClass('searchable-select-hide');
+        this.scrollPart.removeClass('has-privious');
+      } else {
+        this.hasPrivious.removeClass('searchable-select-hide');
+        this.scrollPart.addClass('has-privious');
+      }
+
+      if(this.items.scrollTop() + this.items.innerHeight() >= this.items[0].scrollHeight){
+        this.hasNext.addClass('searchable-select-hide');
+        this.scrollPart.removeClass('has-next');
+      } else {
+        this.hasNext.removeClass('searchable-select-hide');
+        this.scrollPart.addClass('has-next');
+      }
+    }
+  });
+
+  $.fn.searchableSelect = function(options){
+    this.each(function(){
+      var sS = new $sS($(this), options);
+    });
+
+    return this;
+  };
+
+})(jQuery);

+ 134 - 0
src/main/resources/static/style/jquery.searchableSelect.css

@@ -0,0 +1,134 @@
+/*
+Author: David Qin
+E-mail: david@hereapp.cn
+Date: 2014-11-05
+*/
+
+.searchable-select-hide {
+  display: none;
+}
+
+.searchable-select {
+  display: inline-block;
+  min-width: 200px;
+  font-size: 14px;
+  line-height: 1.428571429;
+  color: #555;
+  vertical-align: middle;
+  position: relative;
+  outline: none;
+}
+
+.searchable-select-holder{
+  padding: 6px;
+  background-color: #fff;
+  background-image: none;
+  border: 1px solid #ccc;
+  border-radius: 4px;
+  min-height: 30px;
+  box-sizing: border-box;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
+  box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
+  -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
+  transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
+}
+
+.searchable-select-caret {
+  position: absolute;
+  width: 0;
+  height: 0;
+  box-sizing: border-box;
+  border-color: black transparent transparent transparent;
+  top: 0;
+  bottom: 0;
+  border-style: solid;
+  border-width: 5px;
+  margin: auto;
+  right: 10px;
+}
+
+.searchable-select-dropdown {
+  position: absolute;
+  background-color: #fff;
+  border: 1px solid #ccc;
+  border-bottom-left-radius: 4px;
+  border-bottom-right-radius: 4px;
+  padding: 4px;
+  border-top: none;
+  top: 28px;
+  left: 0;
+  right: 0;
+  z-index:9999;
+}
+
+.searchable-select-input {
+  margin-top: 5px;
+  border: 1px solid #ccc;
+  outline: none;
+  padding: 4px;
+  width: 100%;
+  box-sizing: border-box;
+  width: 100%;
+}
+
+.searchable-scroll {
+  margin-top: 4px;
+  position: relative;
+}
+
+.searchable-scroll.has-privious {
+  padding-top: 16px;
+}
+
+.searchable-scroll.has-next {
+  padding-bottom: 16px;
+}
+
+.searchable-has-privious {
+  top: 0;
+}
+
+.searchable-has-next {
+  bottom: 0;
+}
+
+.searchable-has-privious, .searchable-has-next {
+  height: 16px;
+  left: 0;
+  right: 0;
+  position: absolute;
+  text-align: center;
+  z-index: 10;
+  background-color: white;
+  line-height: 8px;
+  cursor: pointer;
+}
+
+.searchable-select-items {
+  max-height: 400px;
+  overflow-y: scroll;
+  position: relative;
+}
+
+.searchable-select-items::-webkit-scrollbar {
+  display: none;
+}
+
+.searchable-select-item {
+  padding: 5px 5px;
+  cursor: pointer;
+  min-height: 30px;
+  box-sizing: border-box;
+    transition: all 1s ease 0s;
+}
+
+.searchable-select-item.hover {
+
+  background: #555;
+  color: white;
+}
+
+.searchable-select-item.selected {
+  background: #28a4c9;
+  color: white;
+}

+ 1 - 0
src/main/resources/static/style/page.css

@@ -7784,6 +7784,7 @@ margin-bottom: 10px;
 		font-size: 16px;
 	color: #333333;
 	line-height: 24px;
+    height:100%;
 }
 .dc-dialog_gmxy .txtbox{
     text-align: left;

+ 2 - 1
src/main/resources/templates/weixin/vip/service.html

@@ -8,8 +8,9 @@
 </head>
 
 <script type="text/javascript">
+    var know;
 $(function(){
-	var know="[[${know}]]";
+    know="[[${know}]]";
 	jssdk();
 });
 function  jssdk(){

+ 21 - 27
src/main/resources/templates/weixin/vip/serviceVipBuy.html

@@ -5,7 +5,9 @@
 <link href="style/jquery-weui.css" th:href="@{/static/style/jquery-weui.css(version=${#dates.format(#calendars.createNow(),'yyyyMMdd')})}" rel="stylesheet"/>
 <script th:include="weixin/common/includeJS_CSS" th:remove="tag" ></script>
 <link href="style/vipcard.css" th:href="@{/static/style/vipcard.css(version=${#dates.format(#calendars.createNow(),'yyyyMMdd')})}" rel="stylesheet"/>
+<link href="sys/css/jquery.searchableSelect.css" th:href="@{/static/style/jquery.searchableSelect.css}" rel="stylesheet"/>
 <script src="js/jquery-weui.js" th:src="@{/static/js/jquery-weui.js}"></script>
+<script src="js/jquery.searchableSelect.js" th:src="@{/static/js/select/jquery.searchableSelect.js}"></script>
 
 <style type="text/css">
 	.lineform input{
@@ -111,8 +113,9 @@
 
 			</div>
 			<div class="panelbttom">
-				<div class="txt-tiaokuan" id="txt-tiaokuan" >我已阅读并同意该<a >《私塾家小塾学伴会员购买条款》</a></div>
-				
+				<div class="txt-tiaokuan" id="txt-tiaokuan" >我已阅读并同意该<a id="a1" href="http://aikmt.sharingschool.com/H5/agreement/AJCustomerServiceAgreement.html" >《私塾家小塾学伴服务协议》</a>
+                    <a id="a2" href="http://aikmt.sharingschool.com/H5/agreement/AJCustomerServiceAgreement.html">《私塾家小塾学伴隐私政策》</a>
+                </div>
 				<a href="javascript:save();" id="save"  style="margin: 0px;" class="btn-blue">支付</a>
 			</div>
 			<div class="js_dialog" id="iosDialog1">
@@ -120,36 +123,19 @@
 	            <div class="dc-dialog dc-dialog_gmxy">
 	            	<div class="Top_close"><a href="javascript:;"></a></div>
 	            	<div class="txtbox">
-	            	<div class="title">用户服务协议</div>
-                <div class="txt" >
-<!-- 					<p>一、外借书及阅读指导会员卡使用须知</p > -->
-<!-- 					<p>1、会员卡仅限会员本人使用,不得外借(父母可凭会员卡陪读及代办图书外借);</p > -->
-<!-- 					<p>2、凭卡可到私塾家家庭图书馆外借图书,并可预约到馆阅读,但不承诺有位(具体规则参看《私塾家家庭图书馆馆内阅读与图书外借制度》);</p > -->
-<!-- 					<p>3、本卡使用有效期由系统根据会员卡类别进行设定,在系统设定有效期范围内使用有效;</p > -->
-<!-- 					<p>4、图书借阅期限为20天,逾期不还将不能再借新书,同时馆方保留收取滞纳金的权利;</p > -->
-<!-- 					<p>5、如图书遭借阅者折叠、涂画、破损或丢失,借阅者须购置新书或按原价赔偿给本馆;</p > -->
-<!-- 					<p>6、如不慎遗失本卡,补办新卡须交工本费10元;</p > -->
-<!-- 					<p>7、会员卡一经办理,不能退费;</p > -->
-<!-- 					<p>8、本须知最终解释权归私塾家家庭图书馆所有。</p > -->
-<!-- 					<br> -->
-<!-- 					<p>二、学习导师陪护式同伴督导VIP专席卡使用须知</p > -->
-<!-- 					<p>1. 为提高学习效率,同伴作业督导VIP专席卡最小计时单位是2小时(周一至周五);</p > -->
-<!-- 					<p>2. 每次预约均不少于10次,且每周平均不少于5次</p > -->
-<!-- 					<p>3. 专席专段专属,预约但未实到不予补段;</p > -->
-<!-- 					<p>4. 鼓励同伴学习、互助共进,鼓励家长到馆,共同陪护;</p > -->
-<!-- 					<p>5. 配备学习导师管理学生作业,但不提供巩固提升辅导;</p > -->
-<!-- 					<p>6. VIP专席卡一经办理,不能退费且使用有效期不超过1年;</p > -->
-<!-- 					<p>7. 本须知最终解释权归私塾家家庭图书馆所有。</p > -->
-					<br>
-				</div>
-
+	            	<div class="title" id="tt">用户服务协议</div>
+                    <div class="txt" >
+                        <iframe src="" width="100%" height="100%"  frameborder="0" id="f1"> </iframe>
+                    </div>
 	            	</div>
 	            </div>
 	        </div>
 		</div>
 	</div>
     <script type="text/javascript">
-		
+        $(function(){
+            $('#school').searchableSelect();
+        });
 		mui("div.panel").on('tap','.vip2typeselect .dc_hd',function(){
 			$(this).addClass('active').siblings().removeClass('active');
 			$('.viptypeshow .list').removeClass('active');
@@ -169,7 +155,15 @@
 		mui("div.panelbttom").on('tap','.txt-tiaokuan',function(){
 			$(this).toggleClass('active');
 		});
-		mui("div.panelbttom").on('tap','.txt-tiaokuan a',function(){
+		mui("div.panelbttom").on('tap','.txt-tiaokuan #a1',function(){
+            $("#tt").html("小塾学伴平台用户协议");
+		    $("#f1").attr("src","http://aikmt.sharingschool.com/H5/agreement/AJCustomerServiceAgreement.html");
+
+			$('.js_dialog').show('fast');
+		});
+		mui("div.panelbttom").on('tap','.txt-tiaokuan #a2',function(){
+            $("#tt").html("小塾学伴平台隐私政策");
+            $("#f1").attr("src","http://aikmt.sharingschool.com/H5/agreement/SSJPrivacyPolicy.html");
 			$('.js_dialog').show('fast');
 		});
 		mui("body").on('tap','.dc-mask, .Top_close',function(){