Commit 17899621a2e84478000029fbbe1dec5be212bd5d

Authored by vking
2 parents 200c9e85 c34861a2

Merge branch 'master-activity-pay-sellerdo'

Showing 213 changed files with 6313 additions and 644 deletions
@@ -23,6 +23,13 @@ App({ @@ -23,6 +23,13 @@ App({
23 shareTicket:"", 23 shareTicket:"",
24 isAdmin:false,//是否运营人员 24 isAdmin:false,//是否运营人员
25 onLaunch: async function (opt) { 25 onLaunch: async function (opt) {
  26 + if(wx.getLogManager){
  27 + const logger =wx.getLogManager()
  28 + console.log.prototype=function(){
  29 + console.log(...arguments)
  30 + logger.debug(...arguments)
  31 + };
  32 + }
26 console.log('onLaunch',opt,wx.env); 33 console.log('onLaunch',opt,wx.env);
27 wx.removeStorage({key: 'formids'});//清理历史formids 34 wx.removeStorage({key: 'formids'});//清理历史formids
28 mta.App.init({ 35 mta.App.init({
@@ -38,6 +38,27 @@ @@ -38,6 +38,27 @@
38 ], 38 ],
39 "subpackages": [ 39 "subpackages": [
40 { 40 {
  41 + "root": "pack-checkout",
  42 + "name": "支付",
  43 + "pages": [
  44 + "pages/index"
  45 + ]
  46 + },
  47 + {
  48 + "root": "pack-activity",
  49 + "name": "红包活动包",
  50 + "pages": [
  51 + "pages/index",
  52 + "pages/money",
  53 + "pages/kefu",
  54 + "pages/qiye",
  55 + "pages/rule",
  56 + "pages/yuding",
  57 + "pack/pack",
  58 + "pack/list"
  59 + ]
  60 + },
  61 + {
41 "root": "pack-cookbook", 62 "root": "pack-cookbook",
42 "name": "提前点餐包", 63 "name": "提前点餐包",
43 "pages": [ 64 "pages": [
@@ -70,7 +91,9 @@ @@ -70,7 +91,9 @@
70 "pages/book/smsbatch/list", 91 "pages/book/smsbatch/list",
71 "pages/book/smsbatch/result", 92 "pages/book/smsbatch/result",
72 "pages/book/roomtype/roomtype", 93 "pages/book/roomtype/roomtype",
73 - "pages/book/b_reserve" 94 + "pages/book/b_reserve",
  95 + "pages/checkout/index",
  96 + "pages/checkout/invoice"
74 ] 97 ]
75 } 98 }
76 ], 99 ],
@@ -133,6 +156,10 @@ @@ -133,6 +156,10 @@
133 "haowu": { 156 "haowu": {
134 "version": "3.2.0", 157 "version": "3.2.0",
135 "provider": "wx56c8f077de74b07c" 158 "provider": "wx56c8f077de74b07c"
  159 + },
  160 + "vktool": {
  161 + "version": "2.1.9",
  162 + "provider": "wxd3dc4206c76f14fc"
136 } 163 }
137 }, 164 },
138 "navigateToMiniProgramAppIdList": [ 165 "navigateToMiniProgramAppIdList": [
@@ -144,8 +171,7 @@ @@ -144,8 +171,7 @@
144 } 171 }
145 }, 172 },
146 "usingComponents": { 173 "usingComponents": {
147 - "layout": "/components/layout",  
148 - "fb": "/components/common/feedback" 174 + "layout": "/components/layout"
149 }, 175 },
150 "debug": true, 176 "debug": true,
151 "sitemapLocation": "sitemap.json" 177 "sitemapLocation": "sitemap.json"
@@ -225,7 +225,8 @@ image{ @@ -225,7 +225,8 @@ image{
225 } 225 }
226 226
227 .Medium{ 227 .Medium{
228 - font-weight: 400; 228 + font-family:PingFangSC-Medium,PingFang SC;
  229 + font-weight: 500;
229 } 230 }
230 .button-none { 231 .button-none {
231 display: inline-block; 232 display: inline-block;
@@ -252,7 +253,7 @@ image{ @@ -252,7 +253,7 @@ image{
252 .more{ 253 .more{
253 width: 12rpx; 254 width: 12rpx;
254 height: 22rpx; 255 height: 22rpx;
255 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/click.png"); 256 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/click.png");
256 background-size: 100% 100%; 257 background-size: 100% 100%;
257 min-width: 12rpx; 258 min-width: 12rpx;
258 background-repeat: no-repeat; 259 background-repeat: no-repeat;
  1 +// components/activity/enter.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Component({
  5 + /**
  6 + * 组件的属性列表
  7 + */
  8 + properties: {
  9 + hasInHome:Boolean,
  10 + floclass:String,
  11 + },
  12 +
  13 + /**
  14 + * 组件的初始数据
  15 + */
  16 + data: {
  17 + activity:null,
  18 + displayType:0,//0|1 浮层|弹框
  19 + },
  20 +
  21 + /**
  22 + * 组件的方法列表
  23 + */
  24 + methods: {
  25 + close(){
  26 + this.setData({
  27 + displayType:0,
  28 + })
  29 + },
  30 + hasActivity(e){//有通知就可以参加活动
  31 + console.log('hasActivity.enter',e)
  32 + this.getActivity()
  33 + },
  34 + getActivity(){
  35 + //hasInHome 金额少于1000 只显示小图
  36 + App.Task.GetTaskInfo({pos:'home'}).then(res=>{
  37 + let time=new Date()/1000
  38 + let activity=res.data.activity
  39 + if(!activity) return;
  40 + activity.task=res.data.task
  41 + let displayType=0//浮层
  42 + if(activity.status==1 && activity.starttime<time && time<activity.endtime){
  43 + if(activity.balance>1000){
  44 + if(activity.task.status!=2){
  45 + displayType=1//弹框
  46 + App.Task.SetTaskInfo({//领取任务
  47 + aid:activity.id,
  48 + tid:activity.task.id,
  49 + })
  50 + }
  51 + }else{
  52 + if(!this.data.hasInHome){//非首页浮层也不显示
  53 + activity=null
  54 + }
  55 + }
  56 + this.setData({
  57 + displayType:displayType,
  58 + activity:activity
  59 + })
  60 + }
  61 + })
  62 + },
  63 + }
  64 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "has":"./hasActivity"
  5 + }
  6 +}
  1 +<!--components/activity/enter.wxml-->
  2 +<has bindevent="hasActivity"></has>
  3 +<block wx:if="{{activity}}">
  4 + <view class="mask" wx:if="{{displayType==1}}">
  5 + <view class="close" bindtap="close"></view>
  6 + <view class="activity" bindcatch="bindcatch">
  7 + <view class="enter">
  8 + <view class="enter-txt">请客订包间,就用周到安排</view>
  9 + <view class="enter-hot flex-cc">
  10 + <view class="enter-icon lt"></view>
  11 + <view class="enter-hot-txt">开工专享红包</view>
  12 + <view class="enter-icon gt"></view>
  13 + </view>
  14 + </view>
  15 + <view class="money">
  16 + <view class="money-tip flex-cc">订包间,消费抵现金</view>
  17 + <view class="money-views flex-bc">
  18 + <view class="money-number">{{activity.task.price}}</view>
  19 + <view class="money-dw">元</view>
  20 + </view>
  21 + <navigator url="/pack-activity/pages/index?id={{activity.id}}"
  22 + bindtap="close"
  23 + hover-class="navigator-hover">
  24 + <view class="money-button flex-cc">开心收下</view>
  25 + </navigator>
  26 + </view>
  27 + </view>
  28 + </view>
  29 + <navigator wx:else="" hover-class="navigator-hover"
  30 + url="/pack-activity/pages/index?id={{activity.id}}" >
  31 + <view class="mask-tips {{floclass}}" style="background-image: url({{activity.task.flo_url}})"></view>
  32 + </navigator>
  33 +</block>
  34 +
  1 +/* components/activity/enter.wxss */
  2 +@import "../../app.wxss";
  3 +.mask{
  4 + z-index: 99999;
  5 +}
  6 +.close{
  7 + width: 60rpx;
  8 + height: 60rpx;
  9 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/close.png");
  10 + background-size: 100% 100%;
  11 + margin-top: 200rpx;
  12 + margin-left: calc(100% - 100rpx);
  13 +}
  14 +.activity{
  15 + position: relative;
  16 + margin-top: 20rpx;
  17 +}
  18 +.enter{
  19 + width: 564rpx;
  20 + height: 471.3rpx;
  21 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/enter.png");
  22 + background-size: 100% 100%;
  23 + margin-left:calc(50% - 282rpx);
  24 + box-sizing: border-box;
  25 + padding-top: 146rpx;
  26 +}
  27 +.enter-txt{
  28 + height:34rpx;
  29 + font-size:24rpx;
  30 + font-weight:500;
  31 + color:rgba(255,227,192,1);
  32 + line-height:34rpx;
  33 + letter-spacing:1rpx;
  34 + text-align: center;
  35 +}
  36 +.enter-hot{
  37 + height:50rpx;
  38 + font-size:36rpx;
  39 + font-weight:600;
  40 + color:rgba(255,227,192,1);
  41 + line-height:50rpx;
  42 + letter-spacing:2rpx;
  43 + margin-top: 46rpx;
  44 +}
  45 +.enter-hot-txt{
  46 + width:236rpx;
  47 + overflow: hidden;
  48 + white-space: nowrap;
  49 + margin: 0 20rpx 0;
  50 + text-align: center;
  51 +}
  52 +.enter-icon{
  53 + background-size: 100% 100%;
  54 + width:70rpx;
  55 + height:16rpx;
  56 +}
  57 +.enter-icon.lt{
  58 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/lt-1.png");
  59 +}
  60 +.enter-icon.gt{
  61 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/gt-1.png");
  62 +}
  63 +.money{
  64 + width: 400rpx;
  65 + height: 360rpx;
  66 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/money.png");
  67 + background-size: 100% 100%;
  68 + margin-left:calc(50% - 200rpx + 13rpx);
  69 + margin-top: -143rpx;
  70 + box-sizing: border-box;
  71 + padding-top: 40rpx;
  72 +}
  73 +
  74 +.money-tip{
  75 + height:34rpx;
  76 + font-size:24rpx;
  77 + font-weight:600;
  78 + color:rgba(204,17,39,1);
  79 + line-height:34rpx;
  80 + letter-spacing:1rpx;
  81 +}
  82 +.money-views{
  83 + height:106rpx;
  84 + font-size:76rpx;
  85 + font-weight:600;
  86 + color:rgba(204,17,39,1);
  87 + line-height:106rpx;
  88 + letter-spacing:1rpx;
  89 + margin-top: 16rpx;
  90 +}
  91 +.money-dw{
  92 + width:26rpx;
  93 + height:34rpx;
  94 + font-size:24rpx;
  95 + font-weight:600;
  96 + color:rgba(204,17,39,1);
  97 + line-height:34rpx;
  98 + letter-spacing:1rpx;
  99 + margin-left: 10rpx;
  100 +}
  101 +.money-button{
  102 + width:290rpx;
  103 + height:70rpx;
  104 + background:linear-gradient(180deg,rgba(231,66,88,1) 0%,rgba(243,53,78,1) 100%);
  105 + box-shadow:0rpx 2rpx 2rpx 0rpx rgba(209,33,54,1);
  106 + border-radius:35rpx;
  107 + font-size:32rpx;
  108 + font-weight:600;
  109 + color:rgba(255,227,192,1);
  110 + letter-spacing:1rpx;
  111 + text-shadow:0rpx 4rpx 8rpx rgba(207,31,51,1);
  112 + position: relative;
  113 + margin-top: 60rpx;
  114 + margin-left: 54rpx;
  115 +}
  116 +.money-button:after{
  117 + display: block;
  118 + position: absolute;
  119 + content: "";
  120 + width:36rpx;
  121 + height:36rpx;
  122 + background-size: 100% 100%;
  123 + background-image: url("http://nosqn.colorcun.com/activity/images/enter/more.png");
  124 + top:16rpx;
  125 + right:28rpx;
  126 +}
  127 +.mask-tips{
  128 + width: 110rpx;
  129 + height: 140rpx;
  130 + position: fixed;
  131 + left: 20rpx;
  132 + bottom: 520rpx;
  133 + /*background-image: url("http://nosqn.colorcun.com/activity/images/fl.png");*/
  134 + background-size: 100% 100%;
  135 +}
  136 +.mask-tips.detail_owner{
  137 + width: 120rpx;
  138 + height: 160rpx;
  139 + bottom: 320rpx;
  140 +}
  1 +// components/activity/hasActivity.js
  2 +const TSPOS={
  3 + latitude:[
  4 + 39.8380681800,
  5 + 39.4711852300,
  6 + ],
  7 + longitude:[
  8 + 117.9670715300,
  9 + 118.4078979500,
  10 + ]
  11 +}
  12 +Component({
  13 + /**
  14 + * 组件的属性列表
  15 + */
  16 + properties: {
  17 +
  18 + },
  19 +
  20 + /**
  21 + * 组件的初始数据
  22 + */
  23 + data: {
  24 +
  25 + },
  26 + lifetimes: {
  27 + // 生命周期函数,可以为函数,或一个在methods段中定义的方法名
  28 + attached: function () {
  29 + this.selectComponent('#getpos').getPos();
  30 + },
  31 + moved: function () { },
  32 + detached: function () { },
  33 + },
  34 + /**
  35 + * 组件的方法列表
  36 + */
  37 + methods: {
  38 + onpos(e){
  39 + let location=e.detail
  40 + location.latitude=39.6242016100
  41 + location.longitude=118.1174469000
  42 + //console.log('hasActivity',location);
  43 + if(location.latitude && location.longitude){
  44 + TSPOS.latitude.push(location.latitude)
  45 + TSPOS.longitude.push(location.longitude)
  46 + TSPOS.latitude=TSPOS.latitude.sort(($1,$2)=>{ return $1-$2})
  47 + TSPOS.longitude=TSPOS.longitude.sort(($1,$2)=>{ return $1-$2})
  48 + console.log('hasActivity',TSPOS);
  49 + if(TSPOS.latitude[1]==location.latitude
  50 + && TSPOS.longitude[1]==location.longitude){
  51 + //console.log('hasActivity.event',location);
  52 + this.triggerEvent('event',location)
  53 + }
  54 + }
  55 + },
  56 + }
  57 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "getpos":"/components/userinfo/getpos"
  5 + }
  6 +}
  1 +<!--components/activity/hasActivity.wxml-->
  2 +<getpos bindpos="onpos" id="getpos" hasAllowLoading="{{false}}"></getpos>
  1 +/* components/activity/hasActivity.wxss */
  1 +// components/activity/tips.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Component({
  5 + /**
  6 + * 组件的属性列表
  7 + */
  8 + properties: {
  9 + pos:String,
  10 + str:String,
  11 + cla:String,
  12 + },
  13 +
  14 + /**
  15 + * 组件的初始数据
  16 + */
  17 + data: {
  18 + activity:null,
  19 + },
  20 + lifetimes: {
  21 + // 生命周期函数,可以为函数,或一个在methods段中定义的方法名
  22 + attached: function () { },
  23 + moved: function () { },
  24 + detached: function () { },
  25 + },
  26 + /**
  27 + * 组件的方法列表
  28 + */
  29 + methods: {
  30 + hasActivity(e){//有通知就可以参加活动
  31 + console.log('hasActivity.enter',e)
  32 + this.getActivity()
  33 + },
  34 + getActivity(){
  35 + //hasInHome 金额少于1000 只显示小图
  36 + App.Task.GetTaskInfo({pos:this.data.pos}).then(res=>{
  37 + let time=new Date()/1000
  38 + let activity=res.data.activity
  39 + activity.task=res.data.task
  40 + if(activity.status==1 && activity.starttime<time && time<activity.endtime){
  41 + if(activity.balance>1000 && activity.task.status!=2){
  42 + //通知页面显示tips
  43 + this.setData({
  44 + activity:activity,
  45 + msg:this.data.str.replace("¥price","¥"+activity.task.price)
  46 + })
  47 + }
  48 + }
  49 + })
  50 + },
  51 + }
  52 +})
  53 +
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "has":"./hasActivity"
  5 + }
  6 +}
  1 +<!--components/activity/tips.wxml-->
  2 +<has bindevent="hasActivity"></has>
  3 +<view class="tips {{cla}}" wx:if="{{activity}}">
  4 + <view class="msg">
  5 + {{msg}}
  6 + <view class="jiao"></view>
  7 + </view>
  8 +</view>
  1 +/* components/activity/tips.wxss */
  2 +.tips{
  3 + position: fixed;
  4 + z-index: 9999;
  5 + background:rgba(84,83,84,0.8);
  6 + font-size:24rpx;
  7 + font-weight:500;
  8 + color:rgba(255,255,255,1);
  9 +}
  10 +.tips .msg{
  11 + height: 70rpx;
  12 + line-height: 70rpx;
  13 + padding: 0 24rpx;
  14 + position: relative;
  15 +}
  16 +.jiao{
  17 + width: 26rpx;
  18 + height: 10rpx;
  19 + background-image: url("http://nosqn.colorcun.com/activity/images/jiao2.png");
  20 + background-size: 100% 100%;
  21 + position: absolute;
  22 + bottom: -10rpx;
  23 + left:30rpx;
  24 +}
  25 +.tips.reserve-detail{
  26 + bottom:122rpx;
  27 + right:30rpx;
  28 +}
  29 +.tips.reserve-detail .jiao{
  30 + right:80rpx;
  31 + left:auto;
  32 +}
  33 +.tips.reserve-detail .msg{
  34 + color: #FEDE68;
  35 +}
  36 +.tips.reserve-detail .msg:before{
  37 + content: "现在预订即可获得";
  38 + color:rgba(255,255,255,1);
  39 +}
  40 +.tips.reserve-detail .msg:after{
  41 + content: "红包";
  42 + color:rgba(255,255,255,1);
  43 +}
  44 +
  45 +.tips.detail-invitation{
  46 + bottom:112rpx;
  47 + left:28rpx;
  48 +}
  49 +.tips.detail-invitation .msg{
  50 + color: #ECD9B7;
  51 + font-weight: bold;
  52 +}
  53 +.tips.detail-invitation .msg:before{
  54 + content: "订包间即可获得";
  55 + color:rgba(236,217,183,1);
  56 + font-weight: normal;
  57 +}
  58 +.tips.detail-invitation .msg:after{
  59 + content: "红包";
  60 + color:rgba(236,217,183,1);
  61 + font-weight: normal;
  62 +}
  63 +.tips.detail-invitation .jiao{
  64 + left:80rpx;
  65 +}
1 -<!--components/common/feedback.wxml-->  
2 -<cover-view class="button-none feedback" wx:if="{{hasDispaly}}" style="top:{{top}}%">  
3 - <button class="button-none" open-type="feedback">反馈</button>  
4 -</cover-view>  
1 -/* components/common/feedback.wxss */  
2 -.feedback{  
3 - position: fixed;  
4 - right: 20rpx;  
5 - box-sizing: border-box;  
6 - width: 80rpx;  
7 - height: 80rpx;  
8 - top:50%;  
9 - background-color: rgba(200,0,0,0.2);  
10 - z-index: 9999;  
11 - padding: 0;  
12 - line-height: 80rpx;  
13 - border-radius: 50%;  
14 -}  
15 -.button-none{  
16 - box-sizing: border-box;  
17 - width: 80rpx;  
18 - height: 80rpx;  
19 - background-color: rgba(200,0,0,0.2);  
20 - color: #fefefe;  
21 - font-size: 24rpx;  
22 - font-weight: bold;  
23 - border-radius: 50%;  
24 - line-height: 80rpx;  
25 - padding: 0;  
26 -}  
@@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
4 <icon type="success_no_circle" class="icon-success" color="#fff" size="40"></icon> 4 <icon type="success_no_circle" class="icon-success" color="#fff" size="40"></icon>
5 </block> 5 </block>
6 <block wx:else> 6 <block wx:else>
7 - <image src="http://qn.colorcun.com/custom/lite/image/{{imgurl}}" class="reminder-image"></image> 7 + <image src="http://nosqn.colorcun.com/custom/lite/image/{{imgurl}}" class="reminder-image"></image>
8 </block> 8 </block>
9 <view class="white smooth fsize16" style="line-height:1.2;margin-top:{{icon==true ? '-10rpx' : '20rpx'}};padding: 0 10px;text-align: center;">{{action_title}}</view> 9 <view class="white smooth fsize16" style="line-height:1.2;margin-top:{{icon==true ? '-10rpx' : '20rpx'}};padding: 0 10px;text-align: center;">{{action_title}}</view>
10 <view class="white smooth fsize16" style="line-height:1.2;margin-top:10rpx;">{{action_so}}</view> 10 <view class="white smooth fsize16" style="line-height:1.2;margin-top:10rpx;">{{action_so}}</view>
@@ -41,22 +41,22 @@ @@ -41,22 +41,22 @@
41 height: 100%; 41 height: 100%;
42 } 42 }
43 .tabBar .reserve{ 43 .tabBar .reserve{
44 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B7-%E6%9C%AA%E7%82%B9%E5%87%BB.png"); 44 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B7-%E6%9C%AA%E7%82%B9%E5%87%BB.png");
45 } 45 }
46 .tabBar .checked .reserve{ 46 .tabBar .checked .reserve{
47 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B7-%E7%82%B9%E5%87%BB.png"); 47 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B7-%E7%82%B9%E5%87%BB.png");
48 } 48 }
49 .tabBar .book{ 49 .tabBar .book{
50 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-book.png"); 50 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-book.png");
51 } 51 }
52 .tabBar .checked .book { 52 .tabBar .checked .book {
53 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-book-checked.png"); 53 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-book-checked.png");
54 } 54 }
55 .tabBar .setting{ 55 .tabBar .setting{
56 width: 34rpx; 56 width: 34rpx;
57 height: 34rpx; 57 height: 34rpx;
58 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E6%88%91%E7%9A%84.png"); 58 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E6%88%91%E7%9A%84.png");
59 } 59 }
60 .tabBar .checked .setting { 60 .tabBar .checked .setting {
61 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E6%88%91%E7%9A%84-%E9%80%89%E4%B8%AD.png"); 61 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E6%88%91%E7%9A%84-%E9%80%89%E4%B8%AD.png");
62 } 62 }
@@ -6,11 +6,11 @@ @@ -6,11 +6,11 @@
6 <view class="opt flex-ll"> 6 <view class="opt flex-ll">
7 <view class="back flex-vc" bindtap="back" wx:if="{{disBack}}"> 7 <view class="back flex-vc" bindtap="back" wx:if="{{disBack}}">
8 <image class="back-image" 8 <image class="back-image"
9 - src="http://qn.colorcun.com/custom/lite-yd/image/back{{backgroundColor!='#ffffff'?'-light':''}}.png"></image> 9 + src="http://nosqn.colorcun.com/custom/lite-yd/image/back{{backgroundColor!='#ffffff'?'-light':''}}.png"></image>
10 </view> 10 </view>
11 <view class="home flex-vc" bindtap="home" wx:if="{{disHome}}"> 11 <view class="home flex-vc" bindtap="home" wx:if="{{disHome}}">
12 <image class="home-image" 12 <image class="home-image"
13 - src="http://qn.colorcun.com/custom/lite-yd/image/home{{backgroundColor!='#ffffff'?'-light':''}}.svg"></image> 13 + src="http://nosqn.colorcun.com/custom/lite-yd/image/home{{backgroundColor!='#ffffff'?'-light':''}}.svg"></image>
14 </view> 14 </view>
15 </view> 15 </view>
16 <view class="title" bindtap="home"> 16 <view class="title" bindtap="home">
@@ -23,5 +23,4 @@ @@ -23,5 +23,4 @@
23 23
24 </view> 24 </view>
25 </view> 25 </view>
26 -</view>  
27 -<fb></fb>  
  26 +</view>
1 <view wx:if="{{!network}}" class="no-network"> 1 <view wx:if="{{!network}}" class="no-network">
2 <view class="no-network-box flex-vc" style="background:#fff;width:100%;height:500px;"> 2 <view class="no-network-box flex-vc" style="background:#fff;width:100%;height:500px;">
3 - <image src="http://qn.colorcun.com/custom/lite/image/reminder.png" class="network-image"></image> 3 + <image src="http://nosqn.colorcun.com/custom/lite/image/reminder.png" class="network-image"></image>
4 <view style="font-size:30rpx;margin-top:10rpx;color:#666;">网络不给力呀~</view> 4 <view style="font-size:30rpx;margin-top:10rpx;color:#666;">网络不给力呀~</view>
5 <button type="warn" bindtap="refresh" style="margin-top:120px; width: 70%; background-color: #E14553; font-size: 34rpx; height: 80rpx;"> 5 <button type="warn" bindtap="refresh" style="margin-top:120px; width: 70%; background-color: #E14553; font-size: 34rpx; height: 80rpx;">
6 再试一次 6 再试一次
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 <cover-view class="close"></cover-view> 5 <cover-view class="close"></cover-view>
6 <cover-view class="title Semibold">选择菜系</cover-view> 6 <cover-view class="title Semibold">选择菜系</cover-view>
7 <cover-view class="close"> 7 <cover-view class="close">
8 - <cover-image src="http://qn.colorcun.com/reserve/images/%E5%85%B3%20%20%E9%97%AD.png"></cover-image> 8 + <cover-image src="http://nosqn.colorcun.com/reserve/images/%E5%85%B3%20%20%E9%97%AD.png"></cover-image>
9 </cover-view> 9 </cover-view>
10 </cover-view> 10 </cover-view>
11 <cover-view class="caixi-view flex-auto-ll"> 11 <cover-view class="caixi-view flex-auto-ll">
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 bindtap="active" data-index="{{index}}" 13 bindtap="active" data-index="{{index}}"
14 wx:for="{{multiArray[0]}}" wx:key="multiArray.key"> 14 wx:for="{{multiArray[0]}}" wx:key="multiArray.key">
15 {{item}} 15 {{item}}
16 - <cover-image class="number" wx:if="{{index>=1 && index<4}}" src="http://qn.colorcun.com/reserve/images/cx{{index}}.png"></cover-image> 16 + <cover-image class="number" wx:if="{{index>=1 && index<4}}" src="http://nosqn.colorcun.com/reserve/images/cx{{index}}.png"></cover-image>
17 </cover-view> 17 </cover-view>
18 </cover-view> 18 </cover-view>
19 </cover-view> 19 </cover-view>
@@ -25,7 +25,7 @@ @@ -25,7 +25,7 @@
25 text-align: center; 25 text-align: center;
26 } 26 }
27 .discount-name .close{ 27 .discount-name .close{
28 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%85%B3%20%20%E9%97%AD.png"); 28 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%85%B3%20%20%E9%97%AD.png");
29 width: 32rpx; 29 width: 32rpx;
30 height: 32rpx; 30 height: 32rpx;
31 position: absolute; 31 position: absolute;
@@ -49,7 +49,7 @@ @@ -49,7 +49,7 @@
49 width: 100%; 49 width: 100%;
50 max-width: 690rpx; 50 max-width: 690rpx;
51 height: 190rpx; 51 height: 190rpx;
52 - background-image: url("http://qn.colorcun.com/reserve/images/%E4%BC%98%E6%83%A0%E5%88%B8.png"); 52 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E4%BC%98%E6%83%A0%E5%88%B8.png");
53 margin-top: 40rpx; 53 margin-top: 40rpx;
54 } 54 }
55 .item .left{ 55 .item .left{
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
38 .timePicker .close{ 38 .timePicker .close{
39 width: 32rpx; 39 width: 32rpx;
40 height: 32rpx; 40 height: 32rpx;
41 - background-image: url("http://qn.colorcun.com/reserve/images/ddate-close.png"); 41 + background-image: url("http://nosqn.colorcun.com/reserve/images/ddate-close.png");
42 background-size: 100% 100%; 42 background-size: 100% 100%;
43 } 43 }
44 .title{ 44 .title{
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 margin-bottom: 60rpx; 28 margin-bottom: 60rpx;
29 } 29 }
30 .close{ 30 .close{
31 - background-image: url("http://qn.colorcun.com/reserve/images/close.png"); 31 + background-image: url("http://nosqn.colorcun.com/reserve/images/close.png");
32 background-size: 100% 100%; 32 background-size: 100% 100%;
33 width: 32rpx; 33 width: 32rpx;
34 height: 32rpx; 34 height: 32rpx;
@@ -48,7 +48,7 @@ @@ -48,7 +48,7 @@
48 margin-right: 20rpx; 48 margin-right: 20rpx;
49 width: 22rpx; 49 width: 22rpx;
50 height:26rpx; 50 height:26rpx;
51 - background-image: url("http://qn.colorcun.com/reserve/images/addr.png"); 51 + background-image: url("http://nosqn.colorcun.com/reserve/images/addr.png");
52 background-size: 100% 100%; 52 background-size: 100% 100%;
53 min-width: 22rpx; 53 min-width: 22rpx;
54 } 54 }
@@ -63,7 +63,7 @@ @@ -63,7 +63,7 @@
63 padding: 20rpx; 63 padding: 20rpx;
64 } 64 }
65 .item-1 .icon { 65 .item-1 .icon {
66 - background-image: url("http://qn.colorcun.com/reserve/images/sea-se.png"); 66 + background-image: url("http://nosqn.colorcun.com/reserve/images/sea-se.png");
67 width: 36rpx; 67 width: 36rpx;
68 height: 36rpx; 68 height: 36rpx;
69 min-width: 36rpx; 69 min-width: 36rpx;
@@ -100,13 +100,13 @@ @@ -100,13 +100,13 @@
100 width: 20rpx; 100 width: 20rpx;
101 height: 24rpx; 101 height: 24rpx;
102 min-width: 20rpx; 102 min-width: 20rpx;
103 - background-image: url("http://qn.colorcun.com/reserve/images/addr.png"); 103 + background-image: url("http://nosqn.colorcun.com/reserve/images/addr.png");
104 } 104 }
105 .history .icon-1{ 105 .history .icon-1{
106 width: 24rpx; 106 width: 24rpx;
107 height: 18rpx; 107 height: 18rpx;
108 min-width: 24rpx; 108 min-width: 24rpx;
109 - background-image: url("http://qn.colorcun.com/reserve/images/his-se.png"); 109 + background-image: url("http://nosqn.colorcun.com/reserve/images/his-se.png");
110 } 110 }
111 .activity{ 111 .activity{
112 position: relative; 112 position: relative;
@@ -118,7 +118,7 @@ @@ -118,7 +118,7 @@
118 width: 32rpx; 118 width: 32rpx;
119 margin-left: 10rpx; 119 margin-left: 10rpx;
120 min-width: 32rpx; 120 min-width: 32rpx;
121 - background-image: url("http://qn.colorcun.com/reserve/images/huizi.png"); 121 + background-image: url("http://nosqn.colorcun.com/reserve/images/huizi.png");
122 background-size: 100% 100%; 122 background-size: 100% 100%;
123 top:4rpx; 123 top:4rpx;
124 } 124 }
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <cover-view class="mask" hidden="{{hidden}}"> 3 <cover-view class="mask" hidden="{{hidden}}">
4 <cover-view class="header flex-lr" style="height: {{titleBarHeight}}px;padding-top: {{statusBarHeight}}px;" catchtap="hide"> 4 <cover-view class="header flex-lr" style="height: {{titleBarHeight}}px;padding-top: {{statusBarHeight}}px;" catchtap="hide">
5 <cover-view class="searchList flex-ll"> 5 <cover-view class="searchList flex-ll">
6 - <cover-image class="icon" src="http://qn.colorcun.com/reserve/images/hasMap.png"></cover-image> 6 + <cover-image class="icon" src="http://nosqn.colorcun.com/reserve/images/hasMap.png"></cover-image>
7 <cover-view class="title">地图</cover-view> 7 <cover-view class="title">地图</cover-view>
8 </cover-view> 8 </cover-view>
9 <cover-view class="title" style="line-height: {{titleBarHeight}}px;height:{{titleBarHeight}}px;">一键订</cover-view> 9 <cover-view class="title" style="line-height: {{titleBarHeight}}px;height:{{titleBarHeight}}px;">一键订</cover-view>
@@ -85,11 +85,11 @@ @@ -85,11 +85,11 @@
85 margin-right: 10rpx; 85 margin-right: 10rpx;
86 } 86 }
87 .picker .more{ 87 .picker .more{
88 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png"); 88 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png");
89 width: 12rpx; 89 width: 12rpx;
90 height: 16rpx; 90 height: 16rpx;
91 min-width:12rpx; 91 min-width:12rpx;
92 } 92 }
93 .tags.active .picker .more{ 93 .tags.active .picker .more{
94 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png"); 94 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png");
95 } 95 }
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 <cover-view class="seller flex-ll {{sellerStyle}}" > 2 <cover-view class="seller flex-ll {{sellerStyle}}" >
3 <cover-view class="image"> 3 <cover-view class="image">
4 <cover-image mode="aspectFill" 4 <cover-image mode="aspectFill"
5 - src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://qn.colorcun.com/custom/lite-online/image/seller-def.png'}}"></cover-image> 5 + src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://nosqn.colorcun.com/custom/lite-online/image/seller-def.png'}}"></cover-image>
6 <view class="room_num" wx:if="{{seller.room_num>0}}">{{seller.room_num}}个包间</view> 6 <view class="room_num" wx:if="{{seller.room_num>0}}">{{seller.room_num}}个包间</view>
7 </cover-view> 7 </cover-view>
8 <cover-view class="info flex-tb"> 8 <cover-view class="info flex-tb">
@@ -36,7 +36,7 @@ @@ -36,7 +36,7 @@
36 <block wx:if="{{seller.average>0 && hasAverage}}">¥{{seller.average}}元/人</block> 36 <block wx:if="{{seller.average>0 && hasAverage}}">¥{{seller.average}}元/人</block>
37 </cover-view> 37 </cover-view>
38 <cover-view class="phone flex-ll" id="reserve-button" catchtap="tapButton" data-type="oncall"> 38 <cover-view class="phone flex-ll" id="reserve-button" catchtap="tapButton" data-type="oncall">
39 - <cover-image src="http://qn.colorcun.com/custom/lite-online/image/phone.png"></cover-image> 39 + <cover-image src="http://nosqn.colorcun.com/custom/lite-online/image/phone.png"></cover-image>
40 <cover-view class="reserve-text">预订</cover-view> 40 <cover-view class="reserve-text">预订</cover-view>
41 </cover-view> 41 </cover-view>
42 </cover-view> 42 </cover-view>
@@ -168,7 +168,7 @@ @@ -168,7 +168,7 @@
168 white-space:nowrap; 168 white-space:nowrap;
169 } 169 }
170 .activity-swiper .icon-hui{ 170 .activity-swiper .icon-hui{
171 - background-image: url("http://qn.colorcun.com/reserve/images/%E6%83%A0.png"); 171 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E6%83%A0.png");
172 background-size: 100% 100%; 172 background-size: 100% 100%;
173 height: 32rpx; 173 height: 32rpx;
174 width: 32rpx; 174 width: 32rpx;
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <view class="seller flex-ll {{sellerStyle}}" > 3 <view class="seller flex-ll {{sellerStyle}}" >
4 <view class="image"> 4 <view class="image">
5 <image mode="aspectFill" 5 <image mode="aspectFill"
6 - src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://qn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png'}}"></image> 6 + src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png'}}"></image>
7 <view class="room_num" wx:if="{{false}}">{{seller.room_num}}个包间</view> 7 <view class="room_num" wx:if="{{false}}">{{seller.room_num}}个包间</view>
8 <view class="room_num hasBrand Semibold" wx:if="{{hasBrand && seller.brand}}">{{seller.brand.name}}</view> 8 <view class="room_num hasBrand Semibold" wx:if="{{hasBrand && seller.brand}}">{{seller.brand.name}}</view>
9 </view> 9 </view>
@@ -11,7 +11,8 @@ @@ -11,7 +11,8 @@
11 <view style="max-width: 100%;width: 100%;"> 11 <view style="max-width: 100%;width: 100%;">
12 <view class="name Semibold flex-ll"> 12 <view class="name Semibold flex-ll">
13 <view class="sellername">{{seller.sellername}}</view> 13 <view class="sellername">{{seller.sellername}}</view>
14 - <view class="ActivityShort" wx:if="{{hasActivityShort && seller.activity.length>0}}"></view> 14 + <view class="ActivityShort" wx:if="{{hasActivityShort && seller.is_discount>0}}"></view>
  15 + <view class="isopen_md" wx:if="{{hasActivityShort && seller.isopen_md==1}}">买单</view>
15 </view> 16 </view>
16 <view wx:if="{{hasSlogan && seller.slogan}}" class="slogan">“{{seller.slogan}}”</view> 17 <view wx:if="{{hasSlogan && seller.slogan}}" class="slogan">“{{seller.slogan}}”</view>
17 <view class="text flex-ll" wx:if="{{seller.cate.length>0}}"> 18 <view class="text flex-ll" wx:if="{{seller.cate.length>0}}">
@@ -177,7 +177,7 @@ @@ -177,7 +177,7 @@
177 white-space:nowrap; 177 white-space:nowrap;
178 } 178 }
179 .activity-swiper .icon-hui{ 179 .activity-swiper .icon-hui{
180 - background-image: url("http://qn.colorcun.com/reserve/images/%E6%83%A0.png"); 180 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E6%83%A0.png");
181 background-size: 100% 100%; 181 background-size: 100% 100%;
182 height: 32rpx; 182 height: 32rpx;
183 width: 32rpx; 183 width: 32rpx;
@@ -194,7 +194,7 @@ @@ -194,7 +194,7 @@
194 width: 32rpx; 194 width: 32rpx;
195 margin-left: 10rpx; 195 margin-left: 10rpx;
196 min-width: 32rpx; 196 min-width: 32rpx;
197 - background-image: url("http://qn.colorcun.com/reserve/images/huizi.png"); 197 + background-image: url("http://nosqn.colorcun.com/reserve/images/huizi.png");
198 background-size: 100% 100%; 198 background-size: 100% 100%;
199 } 199 }
200 .seller .image .room_num.hasBrand{ 200 .seller .image .room_num.hasBrand{
@@ -228,9 +228,22 @@ @@ -228,9 +228,22 @@
228 max-width: 320rpx; 228 max-width: 320rpx;
229 } 229 }
230 .reserve-icon{ 230 .reserve-icon{
231 - background-image: url("http://qn.colorcun.com/reserve/images/ding.png"); 231 + background-image: url("http://nosqn.colorcun.com/reserve/images/ding.png");
232 width: 24rpx; 232 width: 24rpx;
233 height: 24rpx; 233 height: 24rpx;
234 background-size: 100% 100%; 234 background-size: 100% 100%;
235 margin-right: 10rpx; 235 margin-right: 10rpx;
  236 +}
  237 +.isopen_md{
  238 + width:52rpx;
  239 + height:32rpx;
  240 + border-radius:4rpx;
  241 + border:2rpx solid rgba(146,231,61,1);
  242 + font-size:20rpx;
  243 + font-family:PingFangSC-Semibold,PingFang SC;
  244 + font-weight:600;
  245 + color:rgba(125,199,66,1);
  246 + line-height:32rpx;
  247 + text-align: center;
  248 + margin-left: 6rpx;
236 } 249 }
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 <cover-view class="type">潮汕火锅</cover-view> 11 <cover-view class="type">潮汕火锅</cover-view>
12 </cover-view> 12 </cover-view>
13 <cover-view class="info flex-ll"> 13 <cover-view class="info flex-ll">
14 - <cover-image src="http://qn.colorcun.com/custom/lite-yd/image/add-act.png" style="width: 30rpx; height: 30rpx; background-color: #F4A22A"></cover-image> 14 + <cover-image src="http://nosqn.colorcun.com/custom/lite-yd/image/add-act.png" style="width: 30rpx; height: 30rpx; background-color: #F4A22A"></cover-image>
15 <cover-view class="type">在线订座买单8折起</cover-view> 15 <cover-view class="type">在线订座买单8折起</cover-view>
16 </cover-view> 16 </cover-view>
17 <cover-view class="info flex-ll"> 17 <cover-view class="info flex-ll">
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 <cover-view class="type">赠送精美小菜和饮品</cover-view> 19 <cover-view class="type">赠送精美小菜和饮品</cover-view>
20 </cover-view> 20 </cover-view>
21 <cover-view class="info flex-ll" style="margin-top: 22rpx;"> 21 <cover-view class="info flex-ll" style="margin-top: 22rpx;">
22 - <cover-image src="http://qn.colorcun.com/custom/lite-yd/image/gps-icon.png" style="width: 26rpx; height: 32rpx;"></cover-image> 22 + <cover-image src="http://nosqn.colorcun.com/custom/lite-yd/image/gps-icon.png" style="width: 26rpx; height: 32rpx;"></cover-image>
23 <cover-view class="type" catchtap="lookLocation">{{seller.map_address}}</cover-view> 23 <cover-view class="type" catchtap="lookLocation">{{seller.map_address}}</cover-view>
24 </cover-view> 24 </cover-view>
25 <cover-view class="body"></cover-view> 25 <cover-view class="body"></cover-view>
  1 +// components/reserve/discount.js
  2 +import App from '../../../utils/api'
  3 +Component({
  4 + /**
  5 + * 组件的属性列表
  6 + */
  7 + properties: {
  8 + cla:String,
  9 + seller:{
  10 + type:Object,
  11 + value:{}
  12 + }
  13 + },
  14 +
  15 + /**
  16 + * 组件的初始数据
  17 + */
  18 + data: {
  19 + display:false,
  20 + hiddenAni:'',
  21 + mycards:[],
  22 + money:0,//最大优惠
  23 + red_envelopes_price:0,//获得金额
  24 + },
  25 + lifetimes: {
  26 + // 生命周期函数,可以为函数,或一个在methods段中定义的方法名
  27 + attached: function () {
  28 + App.Customer.SetCardRel({
  29 + sid:this.data.seller.id
  30 + }).then(res=>{
  31 + if(!res.data) return;
  32 + this.setData({
  33 + red_envelopes_price:res.data.red_envelopes_price,
  34 + money:res.data.money,
  35 + mycards:res.data.list,
  36 + })
  37 + if(res.data.red_envelopes_price>0){
  38 + setTimeout(()=>{
  39 + this.setData({
  40 + red_envelopes_price:0,
  41 + })
  42 + },3000)
  43 + }
  44 + })
  45 + },
  46 + moved: function () { },
  47 + detached: function () { },
  48 + },
  49 + /**
  50 + * 组件的方法列表
  51 + */
  52 + methods: {
  53 + hide(){
  54 + this.setData({
  55 + hiddenAni:'discountHide',
  56 + })
  57 + this.triggerEvent('hide')
  58 + setTimeout(()=>{
  59 + this.setData({
  60 + display:false,
  61 + hiddenAni:'',
  62 + })
  63 + },250)
  64 + },
  65 + show(){
  66 + this.setData({
  67 + display:true,
  68 + hiddenAni:'',
  69 + })
  70 + this.triggerEvent('show')
  71 + },
  72 + useCard(){
  73 + this.hide()
  74 + this.triggerEvent('event',{type:'gotoReserve'})
  75 + },
  76 + },
  77 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "quan":"./quan"
  5 + }
  6 +}
  1 +<!--components/reserve/discount.wxml-->
  2 +<view class="toast flex-vc" wx:if="{{red_envelopes_price>0}}">
  3 + <view style="text-align: center;">恭喜您获得<text>{{red_envelopes_price}}元红包</text></view>
  4 +</view>
  5 +<view class="{{cla?cla:'tips reserve-detail'}}" wx:if="{{money>0 && red_envelopes_price==0 && seller.isopen_md==1}}">
  6 + <view class="msg">
  7 + {{money}}元
  8 + <view class="jiao"></view>
  9 + </view>
  10 +</view>
  11 +<view class="mask" bindtap="hide" wx:if="{{display}}">
  12 + <view class="discount {{hiddenAni}}" catchtap="">
  13 + <view class="discount-name Medium" bindtap="hide">
  14 + 优惠
  15 + <view class="close"></view>
  16 + </view>
  17 + <view class="discount-content">
  18 + <view class="activity">
  19 + <view class="txt">活动</view>
  20 + <view class="flex-ll activity-item" wx:if="{{seller.receive_condition_2}}"
  21 + style="align-items: flex-start">
  22 + <view class="activity-left">消费返</view>
  23 + <view class="activity-right">在线买单{{seller.receive_condition_str}}红包</view>
  24 + </view>
  25 + <view class="flex-ll activity-item" wx:if="{{seller.isopen_md==1}}"
  26 + style="align-items: flex-start">
  27 + <view class="activity-left">平台红包</view>
  28 + <view class="activity-right">可叠加使用平台红包</view>
  29 + </view>
  30 + </view>
  31 + <block wx:if="{{mycards.length>0}}">
  32 + <view class="mycards-txt">已领取的红包</view>
  33 + <view class="mycards">
  34 + <view class="mycards-item" wx:for="{{mycards}}" wx:key="mycards">
  35 + <quan quan="{{item}}">
  36 + <view class="button-use" bindtap="useCard">立即使用</view>
  37 + </quan>
  38 + <view class="quan-tips">仅可在预订包间、在线买单时使用</view>
  39 + </view>
  40 + </view>
  41 + </block>
  42 + </view>
  43 + </view>
  44 +</view>
  1 +/* components/reserve/discount.wxss */
  2 +@import "../../../app.wxss";
  3 +.discount{
  4 + position: fixed;
  5 + bottom: 0;
  6 + background-color: #ffffff;
  7 + border-radius: 40rpx 40rpx 0rpx 0rpx;
  8 + color: #353535;
  9 + width: 100%;
  10 + padding: 20rpx 40rpx 40rpx;
  11 + animation: discountShow 0.3s;
  12 + box-sizing: border-box;
  13 + min-height: 648rpx;
  14 +}
  15 +.discount-content{
  16 + max-height: 792rpx;
  17 + overflow-y: auto;
  18 +}
  19 +.discount.discountHide{
  20 + animation: discountHide 0.3s;
  21 +}
  22 +.discount view{
  23 + background-size: 100% 100%;
  24 +}
  25 +.discount-name{
  26 + font-size: 32rpx;
  27 + height: 84rpx;
  28 + line-height: 84rpx;
  29 + width: 100%;
  30 + position: relative;
  31 + text-align: center;
  32 +}
  33 +.discount-name .close{
  34 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/close.png");
  35 + width: 28rpx;
  36 + height: 29rpx;
  37 + position: absolute;
  38 + right:0;
  39 + top:6rpx;
  40 +}
  41 +.activity{
  42 + margin-top: 40rpx;
  43 +}
  44 +.activity .txt{
  45 + width:60rpx;
  46 + height:42rpx;
  47 + font-size:30rpx;
  48 + font-family:PingFangSC-Regular,PingFang SC;
  49 + font-weight:400;
  50 + color:rgba(136,136,136,1);
  51 + line-height:42rpx;
  52 +}
  53 +.activity-item{
  54 + margin-top: 20rpx;
  55 +}
  56 +.activity-left{
  57 + height:28rpx;
  58 + border-radius:4rpx;
  59 + border:2rpx solid rgba(248,164,135,1);
  60 + font-size:20rpx;
  61 + font-family:PingFangSC-Medium,PingFang SC;
  62 + font-weight:500;
  63 + color:rgba(240,88,36,1);
  64 + line-height:28rpx;
  65 + padding: 0 6rpx;
  66 + min-width: 60rpx;
  67 + text-align: center;
  68 +}
  69 +.activity-right{
  70 + font-size:26rpx;
  71 + font-family:PingFangSC-Medium,PingFang SC;
  72 + font-weight:500;
  73 + color:rgba(53,53,53,1);
  74 + line-height:36rpx;
  75 + margin-left: 40rpx;
  76 +}
  77 +.mycards-txt{
  78 + height:42rpx;
  79 + font-size:30rpx;
  80 + font-family:PingFangSC-Regular,PingFang SC;
  81 + font-weight:400;
  82 + color:rgba(136,136,136,1);
  83 + line-height:42rpx;
  84 + margin-top: 50rpx;
  85 +}
  86 +.mycards{
  87 + margin-top: 20rpx;
  88 + /*max-height: 430rpx;*/
  89 +}
  90 +.quan-tips{
  91 + height:50rpx;
  92 + background:rgba(245,245,245,1);
  93 + border-radius:0rpx 0rpx 10rpx 10rpx;
  94 + font-size:22rpx;
  95 + font-family:PingFangSC-Regular,PingFang SC;
  96 + font-weight:400;
  97 + color:rgba(136,136,136,1);
  98 + line-height:50rpx;
  99 + padding-left: 36rpx;
  100 + width: 100%;
  101 + box-sizing: border-box;
  102 +}
  103 +.mycards-item{
  104 + margin-bottom: 20rpx;
  105 +}
  106 +.button-use{
  107 + width:120rpx;
  108 + height:44rpx;
  109 + background:linear-gradient(180deg,rgba(231,66,88,1) 0%,rgba(243,53,78,1) 100%);
  110 + border-radius:6rpx;
  111 + font-size:24rpx;
  112 + font-family:PingFangSC-Medium,PingFang SC;
  113 + font-weight:500;
  114 + color:rgba(255,227,192,1);
  115 + line-height:44rpx;
  116 + text-align: center;
  117 +}
  118 +@keyframes discountShow
  119 +{
  120 + from {bottom: -876rpx;}
  121 + to {bottom: 0rpx;}
  122 +}
  123 +@keyframes discountHide
  124 +{
  125 + from {bottom: 0;}
  126 + to {bottom: -876rpx;}
  127 +}
  128 +
  129 +.toast{
  130 + min-height:80rpx;
  131 + min-width:380rpx;
  132 + background:rgba(53,53,53,0.8);
  133 + border-radius:20rpx;
  134 +
  135 + font-size:32rpx;
  136 + font-family:PingFangSC-Medium,PingFang SC;
  137 + font-weight:500;
  138 + color:rgba(255,255,255,1);
  139 + line-height:44rpx;
  140 + position: fixed;
  141 + top:60%;
  142 + left:calc(50% - 190rpx);
  143 + padding: 10rpx 20rpx;
  144 + box-sizing: border-box;
  145 + z-index: 9999;
  146 +}
  147 +.toast text{
  148 + color:#FEDE68;
  149 +}
  150 +
  151 +.tips{
  152 + position: fixed;
  153 + z-index: 9999;
  154 + background:rgba(84,83,84,0.8);
  155 + font-size:24rpx;
  156 + font-weight:500;
  157 + color:rgba(255,255,255,1);
  158 +}
  159 +.tips .msg{
  160 + height: 70rpx;
  161 + line-height: 70rpx;
  162 + padding: 0 24rpx;
  163 + position: relative;
  164 +}
  165 +.jiao{
  166 + width: 26rpx;
  167 + height: 10rpx;
  168 + background-image: url("http://nosqn.colorcun.com/activity/images/jiao2.png");
  169 + background-size: 100% 100%;
  170 + position: absolute;
  171 + bottom: -10rpx;
  172 + left:30rpx;
  173 +}
  174 +.tips.reserve-detail{
  175 + bottom:122rpx;
  176 + right:30rpx;
  177 +}
  178 +.tips.reserve-detail .jiao{
  179 + right:80rpx;
  180 + left:auto;
  181 +}
  182 +.tips.reserve-detail .msg{
  183 + color: #FEDE68;
  184 +}
  185 +.tips.reserve-detail .msg:before{
  186 + content: "预订买单,立即抵扣";
  187 + color:rgba(255,255,255,1);
  188 +}
  189 +
  190 +.detail_owner .jiao{
  191 + display: none;
  192 +}
  193 +.detail_owner .msg:after{
  194 + content: "红包待用";
  195 + text-indent: -4rpx;
  196 + display: inline-block;
  197 +}
  198 +
  199 +.money-tips{
  200 + min-width:184rpx;
  201 + height:34rpx;
  202 + padding: 0 20rpx;
  203 + background:rgba(240,85,34,1);
  204 + border-radius:16rpx 16rpx 16rpx 0rpx;
  205 +
  206 + font-size:20rpx;
  207 + font-weight:500;
  208 + color:rgba(255,255,255,1);
  209 + line-height:34rpx;
  210 +
  211 + position: absolute;
  212 + top:-28rpx;
  213 + right:-16rpx;
  214 +}
  215 +
  216 +.checkout-button-money-tips{
  217 + min-width:184rpx;
  218 + padding: 0 20rpx;
  219 + height:34rpx;
  220 + background:rgba(240,85,34,1);
  221 + border-radius:16rpx 16rpx 16rpx 0rpx;
  222 +
  223 + font-size:20rpx;
  224 + font-weight:500;
  225 + color:rgba(255,255,255,1);
  226 + line-height:34rpx;
  227 +
  228 + position: absolute;
  229 + top:-28rpx;
  230 + right:40rpx;
  231 +}
  232 +
  233 +.seller-reserve{
  234 + display: none;
  235 +}
1 -// components/common/feedback.js  
2 -const mans=[  
3 - 'oB-xJ5KJCIasaEdgMRckqoL1cwg8', //vking.wang  
4 - //'oB-xJ5BjnTvdgQGLHsjioNHH0eE8',  
5 - 'oB-xJ5MEi2mTMrBTiYImD9cpGH6o', //xiao qin qin  
6 - 'oB-xJ5OE1pM_17vNyWSMGqLH1vOg', //驴肉火烧多少钱一斤 MI 8  
7 - 'oB-xJ5DIWrC6MECaXfql2GvTmQTU', //红旗 Redmi Note 7 Pro  
8 - 'oB-xJ5I39RVWOWq-IGoBDxcFY-3s', //曹可 iPhone 6s Plus<iPhone8,2>  
9 -]; 1 +// components/reserve/seller/quan.js
10 Component({ 2 Component({
11 /** 3 /**
12 * 组件的属性列表 4 * 组件的属性列表
13 */ 5 */
14 properties: { 6 properties: {
15 - 7 + quan:Object,
  8 + cla:String,
16 }, 9 },
17 10
18 /** 11 /**
19 * 组件的初始数据 12 * 组件的初始数据
20 */ 13 */
21 data: { 14 data: {
22 - hasDispaly:false,  
23 - top:(Math.random()*70+10)  
24 - },  
25 - ready: function() {  
26 - if(!console.hasRewrite){  
27 - const logger =wx.getLogManager()  
28 - let consoleLog=console.log  
29 - console.hasRewrite=true  
30 - console.log.prototype=function(){  
31 - console.log(...arguments)  
32 - logger.debug(...arguments)  
33 - };  
34 - }  
35 - let openid=wx.getStorageSync('customer_openid');  
36 - if(!openid) return;  
37 - if(mans.includes(openid)){  
38 - this.setData({  
39 - hasDispaly:true,  
40 - top:(Math.random()*70+10)  
41 - })  
42 - } 15 +
43 }, 16 },
  17 +
44 /** 18 /**
45 * 组件的方法列表 19 * 组件的方法列表
46 */ 20 */
  1 +<!--components/reserve/seller/quan.wxml-->
  2 +<wxs src="../../../utils/util.wxs" module="util" />
  3 +<view class="quan flex-lr {{cla}}">
  4 + <view class="money Semibold flex-cc money-{{util.toFixed(quan.price,0).length}}" style="align-items: flex-end">
  5 + <view class="dot">¥</view>
  6 + <view class="number">{{util.toFixed(quan.price,0)}}</view>
  7 + </view>
  8 + <view class="line"></view>
  9 + <view class="type">
  10 + <view class="card_title">{{quan.card_title}}</view>
  11 + <view class="card-date" wx:if="{{quan.start_time>0}}">
  12 + {{util.unixtoTime(quan.start_time,"YYYY.MM.DD")}}-{{util.unixtoTime(quan.end_time,"YYYY.MM.DD")}}
  13 + </view>
  14 + <view class="card-date" wx:else="">
  15 + 长期有效
  16 + </view>
  17 + </view>
  18 + <view class="opt">
  19 + <slot></slot>
  20 + </view>
  21 +</view>
  1 +/* components/reserve/seller/quan.wxss */
  2 +@import "/app.wxss";
  3 +.quan{
  4 + width:100%;
  5 + height:170rpx;
  6 + background:rgba(255,239,223,1);
  7 + box-sizing: border-box;
  8 + padding: 36rpx;
  9 + padding-right: 22rpx;
  10 + padding-left: 0;
  11 + border-radius:10rpx 10rpx 0rpx 0rpx;
  12 + border-right: 14rpx solid #fefefe;
  13 + position: relative;
  14 +}
  15 +.quan:after{
  16 + background-size: 100% 100%;
  17 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/rp2.png");
  18 + position: absolute;
  19 + top:0;
  20 + right:-14rpx;
  21 + width: 16rpx;
  22 + height: 170rpx;
  23 + content: "";
  24 +}
  25 +.quan .money{
  26 + min-width: 186rpx;
  27 + width: 186rpx;
  28 + overflow: hidden;
  29 +}
  30 +.quan .money-4,.quan .money-5{
  31 + min-width: 226rpx;
  32 + width: 226rpx;
  33 + overflow: hidden;
  34 +}
  35 +.quan .type{
  36 + width: 80%;
  37 +}
  38 +.dot{
  39 + width:22rpx;
  40 + height:50rpx;
  41 + font-size:36rpx;
  42 + font-family:PingFangSC-Semibold,PingFang SC;
  43 + font-weight:600;
  44 + color:rgba(204,65,17,1);
  45 + line-height:50rpx;
  46 + margin-bottom: 10rpx;
  47 +}
  48 +.number{
  49 + height:90rpx;
  50 + font-size:64rpx;
  51 + font-family:PingFangSC-Semibold,PingFang SC;
  52 + font-weight:600;
  53 + color:rgba(204,65,17,1);
  54 + line-height:90rpx;
  55 + margin-left: 10rpx;
  56 +}
  57 +.line{
  58 + height: 100rpx;
  59 + width:2rpx;
  60 + margin-right: 38rpx;
  61 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/l-o2.png");
  62 + background-size: 2rpx 16rpx;
  63 +}
  64 +.card_title{
  65 + height:40rpx;
  66 + font-size:28rpx;
  67 + font-family:PingFangSC-Medium,PingFang SC;
  68 + font-weight:500;
  69 + color:rgba(187,113,50,1);
  70 + line-height:40rpx;
  71 +}
  72 +.card-date{
  73 + height:32rpx;
  74 + font-size:22rpx;
  75 + font-family:PingFangSC-Regular,PingFang SC;
  76 + font-weight:400;
  77 + color:rgba(187,113,50,1);
  78 + line-height:32rpx;
  79 + margin-top: 10rpx;
  80 +}
  81 +
  82 +.quan-pt{
  83 + background:rgba(255,227,227,1);
  84 +}
  85 +.quan-pt:after{
  86 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/rs2.png");
  87 +}
  88 +.quan-pt .dot,.quan-pt .number{
  89 + color:rgba(204,17,17,1);
  90 +}
  91 +.quan-pt .line{
  92 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/l-r2.png");
  93 +}
  94 +.quan-pt .card_title,.quan-pt .card-date{
  95 + color:rgba(187,80,50,1);
  96 +}
  97 +
  98 +.quan.bg-f5f5f5{
  99 + border-right: 14rpx solid #f5f5f5;
  100 +}
  101 +
  102 +.quan-disabled{
  103 + background:rgba(245,245,245,1);
  104 +}
  105 +.quan-disabled:after{
  106 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/rx2.png");
  107 +}
  108 +.quan-disabled .dot,.quan-disabled .number{
  109 + color:rgba(136,136,136,1);
  110 +}
  111 +.quan-disabled .line{
  112 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/l-g2.png");
  113 +}
  114 +.quan-disabled .card_title,.quan-disabled .card-date{
  115 + color:rgba(136,136,136,1);
  116 +}
@@ -14,16 +14,16 @@ @@ -14,16 +14,16 @@
14 background-size: 100% 100%; 14 background-size: 100% 100%;
15 } 15 }
16 .share-img.wechat{ 16 .share-img.wechat{
17 - background-image: url("http://qn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004331.png"); 17 + background-image: url("http://nosqn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004331.png");
18 } 18 }
19 .share-img.quanzi{ 19 .share-img.quanzi{
20 - background-image: url("http://qn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190625100433.png"); 20 + background-image: url("http://nosqn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190625100433.png");
21 } 21 }
22 .share-img.qrcode{ 22 .share-img.qrcode{
23 - background-image: url("http://qn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004332.png"); 23 + background-image: url("http://nosqn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004332.png");
24 } 24 }
25 .share-img.hwq{ 25 .share-img.hwq{
26 - background-image: url("http://qn.colorcun.com/reserve/images/hwq.png"); 26 + background-image: url("http://nosqn.colorcun.com/reserve/images/hwq.png");
27 } 27 }
28 .share-name{ 28 .share-name{
29 margin-top: 20rpx; 29 margin-top: 20rpx;
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 {{showStatusStr}} 13 {{showStatusStr}}
14 </view> 14 </view>
15 <view class="more" wx:else=""> 15 <view class="more" wx:else="">
16 - <image src="http://qn.colorcun.com/custom/lite-yd/image/click.png"></image> 16 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/click.png"></image>
17 </view> 17 </view>
18 </view> 18 </view>
19 </formids> 19 </formids>
@@ -39,7 +39,7 @@ @@ -39,7 +39,7 @@
39 </formids> 39 </formids>
40 <view class="seller address flex-ll" catchtap="lookLocation" wx:if="{{hasAddress}}"> 40 <view class="seller address flex-ll" catchtap="lookLocation" wx:if="{{hasAddress}}">
41 <view class="gps-icon"> 41 <view class="gps-icon">
42 - <image src="http://qn.colorcun.com/custom/lite-yd/image/gps-icon.png"></image> 42 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/gps-icon.png"></image>
43 </view> 43 </view>
44 <view class="address-txt"> 44 <view class="address-txt">
45 {{seller.map_address}} 45 {{seller.map_address}}
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 <view class="flex-ll"> 2 <view class="flex-ll">
3 <view class="stat"> 3 <view class="stat">
4 <view class="bg" style="background-color: {{color}};width: {{statnum}}%"></view> 4 <view class="bg" style="background-color: {{color}};width: {{statnum}}%"></view>
5 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E9%95%82%E7%A9%BA%E6%98%9F%E6%98%9F.png"></image> 5 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E9%95%82%E7%A9%BA%E6%98%9F%E6%98%9F.png"></image>
6 </view> 6 </view>
7 <view class="stat-text" wx:if="{{hasShowText}}">{{stat}} 分</view> 7 <view class="stat-text" wx:if="{{hasShowText}}">{{stat}} 分</view>
8 </view> 8 </view>
@@ -51,13 +51,13 @@ @@ -51,13 +51,13 @@
51 color:rgba(121,79,40,1); 51 color:rgba(121,79,40,1);
52 } 52 }
53 .tip.yellow .more{ 53 .tip.yellow .more{
54 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208295.png"); 54 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208295.png");
55 } 55 }
56 .tip.yellow .close{ 56 .tip.yellow .close{
57 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191118120829.png"); 57 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191118120829.png");
58 } 58 }
59 .tip.yellow .jian{ 59 .tip.yellow .jian{
60 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208293.png"); 60 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208293.png");
61 } 61 }
62 62
63 .tip.black{ 63 .tip.black{
@@ -82,11 +82,11 @@ @@ -82,11 +82,11 @@
82 right:150rpx; 82 right:150rpx;
83 margin-left: 0; 83 margin-left: 0;
84 z-index: 9999; 84 z-index: 9999;
85 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208292.png"); 85 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208292.png");
86 } 86 }
87 .tip.black .close{ 87 .tip.black .close{
88 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208291.png"); 88 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208291.png");
89 } 89 }
90 .tip.black .more{ 90 .tip.black .more{
91 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208294.png"); 91 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911181208294.png");
92 } 92 }
1 <!--components/tips/add-to-lite.wxml--> 1 <!--components/tips/add-to-lite.wxml-->
2 -<cover-view class="discount" style="top:{{statusBarHeightFull+a2lHeight}}px;width:{{hidden?'100rpx':'720rpx'}};" bindtap="gotoDiscount">  
3 - <cover-view style="position: relative;height: 100%;">  
4 - <cover-image class="discount-img" src="http://qn.colorcun.com/reserve/images/%E6%83%A03.png"></cover-image>  
5 - <cover-view style="position: relative;" wx:if="{{!hidden}}">  
6 - <cover-image src="http://qn.colorcun.com/reserve/images/%E4%BC%98%E6%83%A0%E6%B4%BB%E5%8A%A83.png"></cover-image>  
7 - <cover-view class="discount-view">  
8 - <cover-view class="text">精选折扣,周到安排用户专享</cover-view>  
9 - <cover-view class="close" catchtap="hide"></cover-view>  
10 - </cover-view>  
11 - </cover-view>  
12 - </cover-view>  
13 -</cover-view>  
  2 +<view class="discount" style="top:{{statusBarHeightFull+a2lHeight}}px;width:{{hidden?'100rpx':'720rpx'}};" bindtap="gotoDiscount">
  3 + <view style="position: relative;height: 100%;">
  4 + <image class="discount-img" src="http://nosqn.colorcun.com/reserve/images/%E6%83%A03.png"></image>
  5 + <view style="position: relative;" wx:if="{{!hidden}}">
  6 + <image class="discount-imgmax"
  7 + src="http://nosqn.colorcun.com/reserve/images/%E4%BC%98%E6%83%A0%E6%B4%BB%E5%8A%A83.png"></image>
  8 + <view class="discount-view">
  9 + <view class="text">精选折扣,周到安排用户专享</view>
  10 + <view class="close" catchtap="hide"></view>
  11 + </view>
  12 + </view>
  13 + </view>
  14 +</view>
@@ -40,4 +40,8 @@ @@ -40,4 +40,8 @@
40 left:0; 40 left:0;
41 width: 88rpx; 41 width: 88rpx;
42 height: 88rpx; 42 height: 88rpx;
  43 +}
  44 +.discount-imgmax{
  45 + height: 122rpx;
  46 + width: 100%;
43 } 47 }
@@ -7,6 +7,7 @@ const properties={ @@ -7,6 +7,7 @@ const properties={
7 confirmColor:{type:String,value:'#fff'}, 7 confirmColor:{type:String,value:'#fff'},
8 header:{type:String,value:'确认信息'}, 8 header:{type:String,value:'确认信息'},
9 body:{type:String,value:'确认信息'}, 9 body:{type:String,value:'确认信息'},
  10 + cla:String,
10 }; 11 };
11 Component({ 12 Component({
12 options: { 13 options: {
1 <!--components/showModal/showModal.wxml--> 1 <!--components/showModal/showModal.wxml-->
2 -<view class="mask flex-vc" hidden="{{!hasShow}}"> 2 +<view class="mask flex-vc {{cla}}" hidden="{{!hasShow}}">
3 <view class="showModal"> 3 <view class="showModal">
4 <view class="header"> 4 <view class="header">
5 {{opt.header}} 5 {{opt.header}}
@@ -57,4 +57,22 @@ @@ -57,4 +57,22 @@
57 .footer .button-none.confirm{ 57 .footer .button-none.confirm{
58 } 58 }
59 .footer .button-none.cancel{ 59 .footer .button-none.cancel{
  60 +}
  61 +.checkout .body{
  62 + font-size:32rpx;
  63 + font-weight:500;
  64 + color:rgba(53,53,53,1);
  65 + line-height:44rpx;
  66 + margin-top: 32rpx;
  67 +}
  68 +.checkout .confirm{
  69 + width:320rpx;
  70 + height:80rpx;
  71 + background:rgba(36,35,32,1);
  72 + border-radius:10rpx;
  73 + font-size:32rpx;
  74 + font-family:PingFangSC-Semibold,PingFang SC;
  75 + font-weight:600;
  76 + color:rgba(255,255,255,1);
  77 + line-height:80rpx;
60 } 78 }
  1 +// component/menu/addDelete.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +
  5 +Component({
  6 + /**
  7 + * 组件的属性列表
  8 + */
  9 + properties: {
  10 + filePath:String,
  11 + },
  12 +
  13 + /**
  14 + * 组件的初始数据
  15 + */
  16 + data: {
  17 +
  18 + },
  19 + attached(){
  20 +
  21 + },
  22 + ready () {
  23 +
  24 + },
  25 + detached(){
  26 +
  27 + },
  28 + /**
  29 + * 组件的方法列表
  30 + */
  31 + methods: {
  32 + Invoice(){
  33 + wx.chooseInvoiceTitle({
  34 + success:(res)=>{
  35 + console.log('wx.chooseInvoiceTitle',res)
  36 + this.triggerEvent('event',res)
  37 + },
  38 + fail:(efail)=>{
  39 + console.log('wx.chooseInvoiceTitle',efail)
  40 + if(efail.errMsg== "chooseInvoiceTitle:fail cancel") return;
  41 + wx.showModal({
  42 + title: '授权提示',
  43 + content: '您拒绝了获取发票抬头,请点击确定打开授权',
  44 + confirmColor: '#199095',
  45 + cancelColor: '#999',
  46 + success: function (res) {
  47 + if (res.confirm) {
  48 + util.setting();
  49 + }
  50 + }
  51 + })
  52 + },
  53 + })
  54 + },
  55 + }
  56 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "formids": "/components/formids/formids"
  5 + }
  6 +}
  1 +<view bindtap="Invoice" style="width: 100%;">
  2 + <slot></slot>
  3 +</view>
  1 +@import "../../app.wxss";
@@ -3,6 +3,7 @@ import util from '../../utils/util'; @@ -3,6 +3,7 @@ import util from '../../utils/util';
3 import App from '../../utils/api'; 3 import App from '../../utils/api';
4 const subscribe=[ 4 const subscribe=[
5 'ZwAkHfP8xUvBZKJn4VXsjRxUDTuCMjWqd8lTsdCPdks',//包厢预订通知 状态、预订门店、包厢名称、备注 5 'ZwAkHfP8xUvBZKJn4VXsjRxUDTuCMjWqd8lTsdCPdks',//包厢预订通知 状态、预订门店、包厢名称、备注
  6 + 'Pf1iEkCA8TnfeqEMkf-_338U78d4Js36pk6sbB0yem0',//消费金额反馈提醒 消费总额、包间名称、餐厅名称、预订日期
6 ] 7 ]
7 Component({ 8 Component({
8 /** 9 /**
@@ -76,11 +77,14 @@ Component({ @@ -76,11 +77,14 @@ Component({
76 tplid:accept.toString() 77 tplid:accept.toString()
77 }) 78 })
78 },800) 79 },800)
  80 + this.triggerEvent('event',{type:'success'})
79 }else{ 81 }else{
80 util.toast('订阅失败,请在设置中打开','none') 82 util.toast('订阅失败,请在设置中打开','none')
  83 + this.triggerEvent('event',{type:'fail'})
81 } 84 }
82 }, 85 },
83 fail:(efail)=>{ 86 fail:(efail)=>{
  87 + this.triggerEvent('event',{type:'fail'})
84 console.log('wx.requestSubscribeMessage.fail',efail) 88 console.log('wx.requestSubscribeMessage.fail',efail)
85 if(efail.errMsg.indexOf('not ended')) return; 89 if(efail.errMsg.indexOf('not ended')) return;
86 wx.showModal({ 90 wx.showModal({
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + list:[],
  11 + status:1,
  12 + },
  13 + page:1,
  14 + size:10,
  15 + hasMore:true,
  16 + /**
  17 + * 生命周期函数--监听页面加载
  18 + */
  19 + onLoad: function (options) {
  20 + this.GetUserCard()
  21 + },
  22 +
  23 + /**
  24 + * 生命周期函数--监听页面初次渲染完成
  25 + */
  26 + onReady: function () {
  27 +
  28 + },
  29 +
  30 + /**
  31 + * 生命周期函数--监听页面显示
  32 + */
  33 + onShow: function () {
  34 +
  35 + },
  36 +
  37 + /**
  38 + * 生命周期函数--监听页面隐藏
  39 + */
  40 + onHide: function () {
  41 +
  42 + },
  43 +
  44 + /**
  45 + * 生命周期函数--监听页面卸载
  46 + */
  47 + onUnload: function () {
  48 +
  49 + },
  50 +
  51 + /**
  52 + * 页面相关事件处理函数--监听用户下拉动作
  53 + */
  54 + onPullDownRefresh: function () {
  55 +
  56 + },
  57 +
  58 + /**
  59 + * 页面上拉触底事件的处理函数
  60 + */
  61 + onReachBottom: function () {
  62 + if(this.hasMore){
  63 + this.page+=1
  64 + this.GetUserCard()
  65 + }
  66 +
  67 + },
  68 + GetUserCard(){
  69 + App.Customer.GetUserCard({
  70 + status:this.data.status,
  71 + page:this.page,
  72 + size:this.size,
  73 + }).then(res=> {
  74 + let list=this.data.list
  75 + list=list.concat(res.data)
  76 + if(res.data.length<this.size){
  77 + this.hasMore=false
  78 + }
  79 + this.setData({
  80 + list: list
  81 + })
  82 + })
  83 + },
  84 + searchInit(){
  85 + this.page=1;
  86 + this.hasMore=true;
  87 + },
  88 + switchTab(e){
  89 + let status=util.attr(e,'status')
  90 + if(status==this.data.status) return;
  91 + this.searchInit();
  92 + this.setData({
  93 + status:status,
  94 + list:[],
  95 + })
  96 + setTimeout(()=>{
  97 + this.GetUserCard()
  98 + },0)
  99 + },
  100 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "quan":"/components/reserve/seller/quan"
  8 + }
  9 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>我的红包</nav>
  4 +<view class="tabs flex-lr">
  5 + <view class="tabs-item flex-vc {{status==2?'':'active'}}" bindtap="switchTab" data-status="1">
  6 + <view class="tabs-txt">已使用</view>
  7 + </view>
  8 + <view class="tabs-item flex-vc {{status==2?'active':''}}" bindtap="switchTab" data-status="2">
  9 + <view class="tabs-txt">已失效</view>
  10 + </view>
  11 +</view>
  12 +<view class="pages" wx:if="{{list.length>0}}">
  13 + <view class="list-view list-view-{{item.sid}}" wx:for="{{list}}" wx:key="list">
  14 + <view class="quan">
  15 + <quan quan="{{item}}" cla="quan-disabled">
  16 + <view class="button-use status-{{item.status}}"></view>
  17 + </quan>
  18 + <view class="quan-tips" wx:if="{{item.sid==0}}">适用于平台所有商家,预订包间、在线买单时使用</view>
  19 + <view class="quan-tips" wx:else="">仅可在预订包间、在线买单时使用</view>
  20 + </view>
  21 + </view>
  22 +</view>
  23 +<view class="flex-vc" wx:else="">
  24 + <view class="empty-img"></view>
  25 + <view class="empty-txt">{{status==1?'暂时没有已经使用的哦':'暂时没有已经失效的哦'}}</view>
  26 +</view>
  1 +/* pack-activity/pages/money.wxss */
  2 +.pages{
  3 + padding-bottom: 50rpx;
  4 + padding-top: 80rpx;
  5 +}
  6 +.list-view{
  7 + width: calc(100% - 40rpx);
  8 + margin-left: 20rpx;
  9 + background:rgba(255,255,255,1);
  10 + border-radius:20rpx;
  11 + box-sizing: border-box;
  12 + padding: 20rpx 20rpx 0rpx;
  13 +}
  14 +.sellername{
  15 + height:40rpx;
  16 + font-size:28rpx;
  17 + font-family:PingFangSC-Regular,PingFang SC;
  18 + font-weight:400;
  19 + color:rgba(53,53,53,1);
  20 + line-height:40rpx;
  21 +}
  22 +.more{
  23 + margin-left: 10rpx;
  24 +}
  25 +.quan{
  26 + margin-top: 10rpx;
  27 +}
  28 +.quan-tips{
  29 + height:50rpx;
  30 + background:rgba(250,250,250,1);
  31 + border-radius:0rpx 0rpx 10rpx 10rpx;
  32 + font-size:22rpx;
  33 + font-family:PingFangSC-Regular,PingFang SC;
  34 + font-weight:400;
  35 + color:rgba(174,174,174,1);
  36 + line-height:50rpx;
  37 + padding-left: 36rpx;
  38 + width: 100%;
  39 + box-sizing: border-box;
  40 +}
  41 +
  42 +.button-use{
  43 + position: absolute;
  44 + top:-12rpx;
  45 + right:14rpx;
  46 + width:117rpx;
  47 + height:117rpx;
  48 + background-size: 100% 100%;
  49 +}
  50 +.status-1{
  51 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/use.png");
  52 +}
  53 +.status-2{
  54 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/lose.png");
  55 +}
  56 +.empty-img{
  57 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/empty2.png");
  58 + background-size: 100% 100%;
  59 + width:302rpx;
  60 + height:408rpx;
  61 + margin-top: 300rpx;
  62 +}
  63 +.empty-txt{
  64 + height:44rpx;
  65 + font-size:32rpx;
  66 + font-family:PingFangSC-Regular,PingFang SC;
  67 + font-weight:400;
  68 + color:rgba(53,53,53,1);
  69 + line-height:44rpx;
  70 + margin-top: 40rpx;
  71 +}
  72 +
  73 +.tabs{
  74 + height: 80rpx;
  75 + line-height: 80rpx;
  76 + border-bottom: 2rpx solid #F5F5F5;
  77 + box-sizing: border-box;
  78 + width: 100%;
  79 + position: fixed;
  80 + background-color: #fefefe;
  81 + z-index: 2;
  82 +}
  83 +.tabs-item{
  84 + width: 50%;
  85 + height: 80rpx;
  86 +}
  87 +.tabs-txt{
  88 + height: 80rpx;
  89 + width: 120rpx;
  90 + box-sizing: border-box;
  91 + text-align: center;
  92 +}
  93 +.active .tabs-txt{
  94 + border-bottom: 4rpx solid #C0A369;
  95 + color:#C0A369;
  96 +}
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + list:[],
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 + //this.GetUserCard()
  18 + },
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面初次渲染完成
  22 + */
  23 + onReady: function () {
  24 + this.selectComponent('#getpos').getPos();
  25 + },
  26 +
  27 + /**
  28 + * 生命周期函数--监听页面显示
  29 + */
  30 + onShow: function () {
  31 +
  32 + },
  33 +
  34 + /**
  35 + * 生命周期函数--监听页面隐藏
  36 + */
  37 + onHide: function () {
  38 +
  39 + },
  40 +
  41 + /**
  42 + * 生命周期函数--监听页面卸载
  43 + */
  44 + onUnload: function () {
  45 +
  46 + },
  47 +
  48 + /**
  49 + * 页面相关事件处理函数--监听用户下拉动作
  50 + */
  51 + onPullDownRefresh: function () {
  52 +
  53 + },
  54 +
  55 + /**
  56 + * 页面上拉触底事件的处理函数
  57 + */
  58 + onReachBottom: function () {
  59 + if(this.hasMore){
  60 + this.page+=1;
  61 + this.GetUserCard()
  62 + }
  63 +
  64 + },
  65 + page:1,
  66 + size:10,
  67 + hasMore:true,
  68 + GetUserCard(){
  69 + App.Customer.GetUserCard({
  70 + page:this.page,
  71 + size:this.size,
  72 + status:0,
  73 + lat:this.location.latitude,
  74 + lng:this.location.longitude,
  75 + }).then(res=> {
  76 + let list=this.data.list
  77 + list=list.concat(res.data)
  78 + if(res.data.length<this.size){
  79 + this.hasMore=false;
  80 + }
  81 + this.setData({
  82 + list: list
  83 + })
  84 + })
  85 + },
  86 + useCard(e){
  87 + let sid=util.attr(e,'sid')
  88 + if(sid>0) {
  89 + wx.navigateTo({
  90 + url: '/pages/reserve/detail?id=' + sid + '&activeTab=reserve'
  91 + })
  92 + }else{
  93 + //lat=39.62420161&lng=118.1174469&multiIndex=0&centre_pos=39.62420161,118.1174469&hasSuggestion=
  94 + wx.navigateTo({
  95 + url: util.http_build_query({
  96 + lat:this.location.latitude,
  97 + lng:this.location.longitude,
  98 + centre_pos:`${this.location.latitude},${this.location.longitude}`,
  99 + keyword:' ',
  100 + isopen_md:1,
  101 + multiIndex:0,
  102 + },'/pages/reserve/indexList'),
  103 + })
  104 + }
  105 + },
  106 + location:null,
  107 + onpos(e){
  108 + console.log('onpos',e);
  109 + this.location=e.detail
  110 + this.GetUserCard();
  111 + },
  112 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "quan":"/components/reserve/seller/quan",
  8 + "getpos":"/components/userinfo/getpos"
  9 + }
  10 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>我的红包</nav>
  4 +<view class="pages" wx:if="{{list.length>0}}">
  5 + <view class="list-view list-view-{{item.sid}}" wx:for="{{list}}" wx:key="list">
  6 + <navigator url="/pages/reserve/detail?id={{item.sid}}" hover-class="navigator-hover" wx:if="{{item.sid>0}}">
  7 + <view class="sellername flex-lr">
  8 + <view>{{item.sellername}}</view>
  9 + <view class="flex-rr">
  10 + 点击进店
  11 + <view class="more"></view>
  12 + </view>
  13 + </view>
  14 + </navigator>
  15 + <view class="quan" wx:for="{{item.card_list}}" wx:key="card_list" wx:for-item="quan">
  16 + <quan quan="{{quan}}" cla="{{item.sid==0?'quan-pt bg-f5f5f5':''}}">
  17 + <view class="button-use" bindtap="useCard" data-sid="{{item.sid}}">立即使用</view>
  18 + </quan>
  19 + <view class="quan-tips pingtai" wx:if="{{item.sid==0}}">适用于平台所有商家,预订包间、在线买单时使用</view>
  20 + <view class="quan-tips" wx:else="">仅可在预订包间、在线买单时使用</view>
  21 + </view>
  22 + </view>
  23 +</view>
  24 +<view class="flex-vc" wx:else="">
  25 + <view class="empty-img"></view>
  26 + <view class="empty-txt">哎呀一个红包都没有呢</view>
  27 +</view>
  28 +<navigator url="./list" hover-class="navigator-hover">
  29 + <view class="more-link flex-cc">
  30 + <view>查看红包历史记录</view>
  31 + <view class="more"></view>
  32 + </view>
  33 +</navigator>
  34 +<getpos bindpos="onpos" id="getpos" hasAllowFail hasAllowLoading="{{false}}"></getpos>
  1 +/* pack-activity/pages/money.wxss */
  2 +page{
  3 + background-color: #F5F5F5;
  4 +}
  5 +.pages{
  6 + padding-bottom: 150rpx;
  7 +}
  8 +.list-view{
  9 + width: calc(100% - 40rpx);
  10 + margin-left: 20rpx;
  11 + background:rgba(255,255,255,1);
  12 + border-radius:20rpx;
  13 + box-sizing: border-box;
  14 + padding: 20rpx 20rpx 40rpx;
  15 + margin-bottom: 20rpx;
  16 +}
  17 +.list-view-0{
  18 + background: none;
  19 + margin-top: 0rpx;
  20 + padding-bottom: 20rpx;
  21 +}
  22 +.sellername{
  23 + height:40rpx;
  24 + font-size:28rpx;
  25 + font-family:PingFangSC-Regular,PingFang SC;
  26 + font-weight:400;
  27 + color:rgba(53,53,53,1);
  28 + line-height:40rpx;
  29 +}
  30 +.more{
  31 + margin-left: 10rpx;
  32 +}
  33 +.quan{
  34 + margin-top: 20rpx;
  35 +}
  36 +.quan-tips{
  37 + height:50rpx;
  38 + background:rgba(245,245,245,1);
  39 + border-radius:0rpx 0rpx 10rpx 10rpx;
  40 + font-size:22rpx;
  41 + font-family:PingFangSC-Regular,PingFang SC;
  42 + font-weight:400;
  43 + color:rgba(136,136,136,1);
  44 + line-height:50rpx;
  45 + padding-left: 36rpx;
  46 + width: 100%;
  47 + box-sizing: border-box;
  48 +}
  49 +.pingtai{
  50 + background:rgba(255,255,255,1);
  51 + color:rgba(136,136,136,1);
  52 +}
  53 +
  54 +.button-use{
  55 + width:120rpx;
  56 + height:44rpx;
  57 + background:linear-gradient(180deg,rgba(231,66,88,1) 0%,rgba(243,53,78,1) 100%);
  58 + border-radius:6rpx;
  59 + font-size:24rpx;
  60 + font-family:PingFangSC-Medium,PingFang SC;
  61 + font-weight:500;
  62 + color:rgba(255,227,192,1);
  63 + line-height:44rpx;
  64 + text-align: center;
  65 +}
  66 +.more-link{
  67 + height:120rpx;
  68 + background:rgba(255,255,255,1);
  69 + box-shadow:0rpx -4rpx 10rpx 0rpx rgba(219,219,219,1);
  70 + position: fixed;
  71 + bottom:0;
  72 + left:0;
  73 + width: 100%;
  74 + line-height: 120rpx;
  75 +
  76 + font-size:30rpx;
  77 + font-family:PingFangSC-Regular,PingFang SC;
  78 + font-weight:400;
  79 + color:rgba(153,153,153,1);
  80 +}
  81 +.more-link .more{
  82 + margin-left: 20rpx;
  83 +}
  84 +.empty-img{
  85 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/empty.png");
  86 + background-size: 100% 100%;
  87 + width:302rpx;
  88 + height:408rpx;
  89 + margin-top: 300rpx;
  90 +}
  91 +.empty-txt{
  92 + height:44rpx;
  93 + font-size:32rpx;
  94 + font-family:PingFangSC-Regular,PingFang SC;
  95 + font-weight:400;
  96 + color:rgba(53,53,53,1);
  97 + line-height:44rpx;
  98 + margin-top: 40rpx;
  99 +}
  1 +// pack-activity/pages/index.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + activity:null,
  11 + count:0,
  12 + },
  13 +
  14 + /**
  15 + * 生命周期函数--监听页面加载
  16 + */
  17 + onLoad: function (options) {
  18 + this.options=options
  19 + let sys=wx.getSystemInfoSync();
  20 + if("wxwork"==sys.environment){
  21 + console.log('wxwork run pack-activity',options)
  22 + App.Task.GetTaskByOpenid({
  23 + ...options
  24 + }).then(res=>{
  25 + this.options.id=options.aid
  26 + if(res.ret==200){
  27 + util.toast('恭喜获得红包','none')
  28 + setTimeout(()=>{
  29 + this.GetTaskInfos()
  30 + },300)
  31 + }
  32 + })
  33 + }
  34 + },
  35 +
  36 + /**
  37 + * 生命周期函数--监听页面初次渲染完成
  38 + */
  39 + onReady: function () {
  40 +
  41 + },
  42 +
  43 + /**
  44 + * 生命周期函数--监听页面显示
  45 + */
  46 + onShow: function () {
  47 + this.GetTaskInfos()
  48 + },
  49 +
  50 + /**
  51 + * 生命周期函数--监听页面隐藏
  52 + */
  53 + onHide: function () {
  54 +
  55 + },
  56 +
  57 + /**
  58 + * 生命周期函数--监听页面卸载
  59 + */
  60 + onUnload: function () {
  61 +
  62 + },
  63 +
  64 + /**
  65 + * 页面相关事件处理函数--监听用户下拉动作
  66 + */
  67 + onPullDownRefresh: function () {
  68 +
  69 + },
  70 +
  71 + /**
  72 + * 页面上拉触底事件的处理函数
  73 + */
  74 + onReachBottom: function () {
  75 +
  76 + },
  77 +
  78 + /**
  79 + * 用户点击右上角分享
  80 + */
  81 + onShareAppMessage: function () {
  82 + return {
  83 + title:this.data.activity.title,
  84 + path:'/pages/reserve/index',
  85 + imageUrl:this.data.activity.bgurl+'.share.jpg',
  86 + }
  87 + },
  88 + GetTaskInfos(){
  89 + App.Task.GetTaskInfos({
  90 + aid:this.options.id,
  91 + }).then(res=>{
  92 + let activity=res.data.activity
  93 + activity.list=res.data.task
  94 + let count=0
  95 + activity.list.forEach(t=>{
  96 + if(t.status==2){
  97 + count+=(t.price*1)
  98 + }
  99 + })
  100 + this.setData({
  101 + count:count.toFixed(2),
  102 + activity:activity
  103 + })
  104 + })
  105 + },
  106 + taskNextDo(e){
  107 + let index=util.attr(e,'index')
  108 + let task=this.data.activity.list[index]
  109 + let tid=task.id
  110 + ,path=util.http_build_query({aid:this.data.activity.id,tid:tid},task.task_url||'/pack-activity/pages/yuding')
  111 + console.log(path)
  112 + if(task.status==0){
  113 + App.Task.SetTaskInfo({//领取任务
  114 + aid:this.data.activity.id,
  115 + tid:tid,
  116 + }).then(()=>{
  117 + this.GetTaskInfos()
  118 + wx.navigateTo({
  119 + url: path
  120 + })
  121 + })
  122 + }else if(task.status==1){
  123 + wx.navigateTo({
  124 + url: path
  125 + })
  126 + }else{
  127 + wx.navigateTo({
  128 + url: '/pack-activity/pack/pack'
  129 + })
  130 + }
  131 + },
  132 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/index.wxml-->
  2 +<nav hasHome>周到安排</nav>
  3 +<view class="pages" style="background-color: {{activity.element}}">
  4 + <view class="banner">
  5 + <image mode="widthFix" src="{{activity.bgurl}}" style="width: 100%"></image>
  6 + <navigator url="/pack-activity/pages/rule?id={{activity.id}}" hover-class="navigator-hover">
  7 + <view class="guize">活动 规则</view>
  8 + </navigator>
  9 + <view class="nomoney" wx:if="{{activity.balance<=1000}}"></view>
  10 + </view>
  11 + <view class="content">
  12 + <navigator url="/pack-activity/pack/pack" hover-class="navigator-hover">
  13 + <view class="tips flex-lr">
  14 + <view>活动累计收入:{{count}}元</view>
  15 + <view class="flex-rr">
  16 + 查看余额
  17 + <view class="more"></view>
  18 + </view>
  19 + </view>
  20 + </navigator>
  21 + <view class="list">
  22 + <view class="header flex-cc">
  23 + <view class="header-img lt"></view>
  24 + <view class="header-txt">完成任务得红包</view>
  25 + <view class="header-img gt"></view>
  26 + </view>
  27 + <view class="item flex-lr" wx:for="{{activity.list}}" wx:key="list">
  28 + <image class="icon" src="{{item.icon_url}}" mode="aspectFit"></image>
  29 + <view class="item-content">
  30 + <view class="item-title">{{item.title}}</view>
  31 + <view class="item-desc">{{item.desc}}</view>
  32 + </view>
  33 + <view class="opt" bindtap="taskNextDo" data-index="{{index}}" wx:if="{{activity.balance>1000}}">
  34 + <view class="opt-button status{{item.status}}">{{['领取','去完成','已完成'][item.status]}}</view>
  35 + <view class="opt-money">{{item.price}}元红包</view>
  36 + </view>
  37 + </view>
  38 + </view>
  39 + <view class="share-but">
  40 + <button class="button-none" open-type="share">分享活动</button>
  41 + </view>
  42 + </view>
  43 +</view>
  1 +/* pack-activity/pages/index.wxss */
  2 +.pages{
  3 +}
  4 +.banner{
  5 + width:100%;
  6 + background:linear-gradient(202deg,rgba(213,45,182,1) 0%,rgba(240,72,102,1) 100%);
  7 + position: relative;
  8 +}
  9 +.content{
  10 + height: 1020rpx;
  11 + width: calc(100% - 40rpx);
  12 + margin: 0 20rpx 0;
  13 +}
  14 +.tips{
  15 + width:100%;
  16 + height:50rpx;
  17 + background:rgba(53,53,53,0.3);
  18 + border-radius:30rpx;
  19 + box-sizing: border-box;
  20 + padding: 0 28rpx 0 40rpx;
  21 +
  22 + font-size:24rpx;
  23 + font-weight:500;
  24 + color:rgba(255,255,255,1);
  25 + line-height:50rpx;
  26 +}
  27 +.more{
  28 + background-image: url("http://nosqn.colorcun.com/activity/images/more.png");
  29 + margin-left: 22rpx;
  30 +}
  31 +.guize{
  32 + width:40rpx;
  33 + height:120rpx;
  34 + background:rgba(53,53,53,0.29);
  35 + border-radius:10rpx 0rpx 0rpx 10rpx;
  36 + padding: 2rpx 10rpx 0;
  37 + box-sizing: border-box;
  38 +
  39 + font-size:20rpx;
  40 + font-weight:500;
  41 + color:rgba(255,255,255,1);
  42 + line-height:28rpx;
  43 + position: absolute;
  44 + top:20rpx;
  45 + right:0;
  46 +}
  47 +.nomoney{
  48 + background-image: url("http://nosqn.colorcun.com/activity/images/nomoney.png");
  49 + width:176rpx;
  50 + height:144rpx;
  51 + right:24rpx;
  52 + bottom: 42rpx;
  53 + position: absolute;
  54 + background-size: 100% 100%;
  55 +}
  56 +.list{
  57 + background:rgba(255,255,255,1);
  58 + box-shadow:4rpx 4rpx 6rpx 4rpx rgba(218,61,69,1);
  59 + border-radius:20rpx;
  60 + margin-top: 20rpx;
  61 + box-sizing: border-box;
  62 + padding-top: 60rpx;
  63 + padding-bottom: 60rpx;
  64 +}
  65 +
  66 +.header{
  67 + margin-bottom: 60rpx;
  68 +}
  69 +.header .header-txt{
  70 + width:236rpx;
  71 + height:44rpx;
  72 + font-size:32rpx;
  73 + font-weight:600;
  74 + color:rgba(204,17,39,1);
  75 + line-height:44rpx;
  76 + margin: 0 20rpx;
  77 +}
  78 +.header-img{
  79 + background-size: 100% 100%;
  80 + width: 70rpx;
  81 + height: 16rpx;
  82 +}
  83 +.header-img.gt{
  84 + background-image: url("http://nosqn.colorcun.com/activity/images/lt.png");
  85 +}
  86 +.header-img.lt{
  87 + background-image: url("http://nosqn.colorcun.com/activity/images/gt.png");
  88 +}
  89 +.list .item{
  90 + margin-bottom: 60rpx;
  91 + height: 94rpx;
  92 + padding: 0 20rpx;
  93 + box-sizing: border-box;
  94 +}
  95 +.list .item:last-child{
  96 + margin-bottom: 0;
  97 +}
  98 +.item .icon{
  99 + width: 94rpx;
  100 + height: 94rpx;
  101 + min-width: 94rpx;
  102 +}
  103 +.item-content{
  104 + margin-left: 10rpx;
  105 + width: 100%;
  106 +}
  107 +.opt{
  108 + width: 130rpx;
  109 + min-width: 130rpx;
  110 +}
  111 +.item-title{
  112 + height:44rpx;
  113 + font-size:32rpx;
  114 + font-weight:600;
  115 + color:rgba(53,53,53,1);
  116 + line-height:44rpx;
  117 +}
  118 +.item-desc{
  119 + height:34rpx;
  120 + font-size:24rpx;
  121 + font-weight:500;
  122 + color:rgba(153,153,153,1);
  123 + line-height:34rpx;
  124 + margin-top: 10rpx;
  125 +}
  126 +.opt-money{
  127 + height:28rpx;
  128 + font-size:20rpx;
  129 + font-weight:600;
  130 + color:rgba(230,34,57,1);
  131 + line-height:28rpx;
  132 + margin-top: 10rpx;
  133 +}
  134 +.opt-button{
  135 + box-sizing: border-box;
  136 + width:130rpx;
  137 + height:50rpx;
  138 + border-radius:25rpx;
  139 + border:2rpx solid rgba(235,41,65,1);
  140 +
  141 + font-size:24rpx;
  142 + font-weight:600;
  143 + color:rgba(230,34,57,1);
  144 + line-height:50rpx;
  145 + text-align: center;
  146 +}
  147 +.opt-button.status0,.opt-button.status1{
  148 + background:linear-gradient(180deg,rgba(225,27,49,1) 0%,rgba(243,53,78,1) 100%);
  149 + box-shadow:0rpx 2rpx 4rpx 0rpx rgba(232,37,60,1),2rpx 0rpx 6rpx 0rpx rgba(255,172,171,1);
  150 + color:rgba(255,227,192,1);
  151 +}
  152 +.share-but{
  153 + width:400rpx;
  154 + height:80rpx;
  155 + background:linear-gradient(180deg,rgba(252,190,38,1) 0%,rgba(255,233,128,1) 100%);
  156 + box-shadow:0rpx 4rpx 8rpx 0rpx rgba(182,43,68,1);
  157 + border-radius:40rpx;
  158 + margin-top: 40rpx;
  159 +
  160 + font-size:32rpx;
  161 + font-weight:600;
  162 + color:rgba(230,34,57,1);
  163 + line-height:80rpx;
  164 + text-align: center;
  165 + margin-left: calc(50% - 200rpx);
  166 +}
  167 +.share-but .button-none{
  168 + height: 80rpx;
  169 + line-height:80rpx;
  170 +}
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 +
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 +
  18 + },
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面初次渲染完成
  22 + */
  23 + onReady: function () {
  24 +
  25 + },
  26 +
  27 + /**
  28 + * 生命周期函数--监听页面显示
  29 + */
  30 + onShow: function () {
  31 +
  32 + },
  33 +
  34 + /**
  35 + * 生命周期函数--监听页面隐藏
  36 + */
  37 + onHide: function () {
  38 +
  39 + },
  40 +
  41 + /**
  42 + * 生命周期函数--监听页面卸载
  43 + */
  44 + onUnload: function () {
  45 +
  46 + },
  47 +
  48 + /**
  49 + * 页面相关事件处理函数--监听用户下拉动作
  50 + */
  51 + onPullDownRefresh: function () {
  52 +
  53 + },
  54 +
  55 + /**
  56 + * 页面上拉触底事件的处理函数
  57 + */
  58 + onReachBottom: function () {
  59 +
  60 + },
  61 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>关注公众号</nav>
  4 +<view class="pages">
  5 + <view class="pages-view">
  6 + <view class="text">进入客服消息后,点击右下角快捷图片,长 按图片关注【周到安排】</view>
  7 + <image src="http://nosqn.colorcun.com/activity/images/kefux.png" mode="widthFix" style="width: 100%;"></image>
  8 + </view>
  9 +</view>
  10 +<view class="bottom">
  11 + <view class="bottom-view flex-vc">
  12 + <button class="button-love" open-type="contact"
  13 + send-message-title="关注公众号"
  14 + send-message-img="http://nosqn.colorcun.com/activity/images/kefu.jpg"
  15 + show-message-card>去客服页面关注</button>
  16 + <view class="tips">关注公众号,及时获取订包间专属优惠信息</view>
  17 + </view>
  18 +</view>
  1 +/* pack-activity/pages/money.wxss */
  2 +page{
  3 + background-color: #ffffff;
  4 +}
  5 +.pages{
  6 + background-image: url("http://nosqn.colorcun.com/activity/images/money-header.png");
  7 + background-size: 100% auto;
  8 + background-repeat: no-repeat;
  9 + min-height: 500rpx;
  10 + padding-top: 80rpx;
  11 +}
  12 +.pages-view{
  13 + width: calc(100% - 40rpx);
  14 + margin-left: 20rpx;
  15 + height:340rpx;
  16 + background:#ffffff;
  17 + border-radius:20rpx;
  18 + box-sizing: border-box;
  19 + padding: 40rpx 20rpx;
  20 +}
  21 +.text{
  22 + padding: 0 30rpx;
  23 + font-size:32rpx;
  24 + font-weight:600;
  25 + color:rgba(53,53,53,1);
  26 + line-height:44rpx;
  27 + margin-bottom: 80rpx;
  28 +}
  29 +.bottom{
  30 + position: fixed;
  31 + bottom: 0;
  32 + height: 220rpx;
  33 + width: 100%;
  34 +}
  35 +.bottom-view{
  36 + width: 100%;
  37 +}
  38 +.button-love{
  39 + width:674rpx;
  40 + height:80rpx;
  41 + background:linear-gradient(360deg,rgba(220,44,75,1) 0%,rgba(244,143,161,1) 100%);
  42 + border-radius:40rpx;
  43 + font-size:32rpx;
  44 + font-weight:600;
  45 + color:rgba(255,255,255,1);
  46 + line-height:80rpx;
  47 + letter-spacing:1rpx;
  48 +}
  49 +.tips{
  50 + margin-top: 24rpx;
  51 + height:36rpx;
  52 + font-size:26rpx;
  53 + font-weight:500;
  54 + color:rgba(153,153,153,1);
  55 + line-height:36rpx;
  56 +}
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 +
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 + App.User.GetBalance().then(res=>{
  18 + this.setData({
  19 + user:res.data
  20 + })
  21 + })
  22 + App.User.GetConsume().then(res=>{
  23 + this.setData({
  24 + list:res.data
  25 + })
  26 + })
  27 + },
  28 +
  29 + /**
  30 + * 生命周期函数--监听页面初次渲染完成
  31 + */
  32 + onReady: function () {
  33 +
  34 + },
  35 +
  36 + /**
  37 + * 生命周期函数--监听页面显示
  38 + */
  39 + onShow: function () {
  40 +
  41 + },
  42 +
  43 + /**
  44 + * 生命周期函数--监听页面隐藏
  45 + */
  46 + onHide: function () {
  47 +
  48 + },
  49 +
  50 + /**
  51 + * 生命周期函数--监听页面卸载
  52 + */
  53 + onUnload: function () {
  54 +
  55 + },
  56 +
  57 + /**
  58 + * 页面相关事件处理函数--监听用户下拉动作
  59 + */
  60 + onPullDownRefresh: function () {
  61 +
  62 + },
  63 +
  64 + /**
  65 + * 页面上拉触底事件的处理函数
  66 + */
  67 + onReachBottom: function () {
  68 +
  69 + },
  70 +
  71 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>我的余额</nav>
  4 +<view class="pages">
  5 + <view class="pages-view">
  6 + <view class="money-block">
  7 + <view class="money-views-top">
  8 + <view class="txt">我的余额</view>
  9 + </view>
  10 + <view class="money-views flex-bc">
  11 + <view class="money-number">{{user.price}}</view>
  12 + <view class="money-dw">元</view>
  13 + </view>
  14 + <navigator url="/pages/reserve/index" open-type="switchTab" hover-class="other-navigator-hover">
  15 + <view class="yuding flex-cc">
  16 + <view class="icon"></view>
  17 + 去订包间
  18 + </view>
  19 + </navigator>
  20 + </view>
  21 + </view>
  22 + <view class="list-view" wx:if="{{list.length>0}}">
  23 + <view class="item" wx:for="{{list}}" wx:key="list">
  24 + <view class="flex-lr name">
  25 + <view>{{item.remark}}</view>
  26 + <view>{{item.type==1?'+':'-'}}{{item.consumeprice}}</view>
  27 + </view>
  28 + <view class="flex-lr date">
  29 + <view>{{util.unixtoTime(item.createtime,"MM-DD HH:II")}}</view>
  30 + <view>余额 {{item.currprice}}</view>
  31 + </view>
  32 + </view>
  33 + </view>
  34 +</view>
  1 +/* pack-activity/pages/money.wxss */
  2 +page{
  3 + background-color: #F5F5F5;
  4 +}
  5 +.pages{
  6 + /*background-image: url("http://nosqn.colorcun.com/activity/images/money-header.png");*/
  7 + background-image: url("http://nosqn.colorcun.com/activity/images/bg-black.png");
  8 + background-size: 100% auto;
  9 + background-repeat: no-repeat;
  10 + min-height: 500rpx;
  11 + padding-top: 80rpx;
  12 +}
  13 +.pages-view{
  14 + width: calc(100% - 40rpx);
  15 + margin-left: 20rpx;
  16 + height:340rpx;
  17 + background:#ffffff;
  18 + border-radius:20rpx;
  19 + box-sizing: border-box;
  20 + padding: 20rpx;
  21 +}
  22 +.money-block{
  23 + height:300rpx;
  24 + background:rgba(255,255,255,1);
  25 + border-radius:20rpx;
  26 + padding-top: 40rpx;
  27 + box-sizing: border-box;
  28 +}
  29 +.money-views-top{
  30 + width: 258rpx;
  31 + height: 40rpx;
  32 + font-size:28rpx;
  33 + margin-left: calc(50% - 126rpx);
  34 + text-align: center;
  35 + font-weight:500;
  36 + color:rgba(153,153,153,1);
  37 + line-height:40rpx;
  38 + position: relative;
  39 +}
  40 +.money-views-top:before{
  41 + position: absolute;
  42 + display: block;
  43 + content: "";
  44 + width: 100%;
  45 + height: 2rpx;
  46 + left:0;
  47 + top:19rpx;
  48 + background-color: #E0E0E0;
  49 +}
  50 +.money-views-top .txt{
  51 + width: 138rpx;
  52 + background-color: #ffffff;
  53 + left:60rpx;
  54 + position: absolute;
  55 +}
  56 +
  57 +.money-views{
  58 + height:100rpx;
  59 + font-size:72rpx;
  60 + font-weight:600;
  61 + color:#353535;
  62 + line-height:100rpx;
  63 + margin-top: 10rpx;
  64 +}
  65 +.money-dw{
  66 + width:32rpx;
  67 + height:44rpx;
  68 + font-size:32rpx;
  69 + font-weight:600;
  70 + color:#353535;
  71 + line-height:44rpx;
  72 + margin-left: 20rpx;
  73 +}
  74 +.list-view{
  75 + width: calc(100% - 40rpx);
  76 + margin-left: 20rpx;
  77 + background:rgba(255,255,255,1);
  78 + border-radius:20rpx;
  79 + box-sizing: border-box;
  80 + padding: 2rpx 40rpx 0;
  81 + margin-top: 20rpx;
  82 +}
  83 +.item{
  84 + height: 166rpx;
  85 + box-sizing: border-box;
  86 + border-bottom: 2rpx solid #F5F5F5;
  87 + line-height: 166rpx;
  88 + padding-top: 40rpx;
  89 +}
  90 +.item:last-child{
  91 + border-bottom-width: 0;
  92 +}
  93 +.item .name{
  94 + height:44rpx;
  95 + font-size:32rpx;
  96 + font-weight:500;
  97 + color:rgba(53,53,53,1);
  98 + line-height:44rpx;
  99 + box-sizing: border-box;
  100 +}
  101 +.item .date{
  102 + height:34rpx;
  103 + font-size:24rpx;
  104 + font-weight:500;
  105 + color:rgba(153,153,153,1);
  106 + line-height:34rpx;
  107 + margin-top: 10rpx;
  108 +}
  109 +
  110 +.yuding{
  111 + width:320rpx;
  112 + height:70rpx;
  113 + background:linear-gradient(360deg,rgba(192,163,105,1) 0%,rgba(252,210,167,1) 100%);
  114 + border-radius:35rpx;
  115 + font-size:32rpx;
  116 + font-family:PingFangSC-Semibold,PingFang SC;
  117 + font-weight:600;
  118 + color:rgba(123,81,42,1);
  119 + line-height:70rpx;
  120 + margin-left: calc(50% - 160rpx);
  121 + margin-top: 40rpx;
  122 +}
  123 +.yuding .icon{
  124 + background-size: 100% 100%;
  125 + width: 30rpx;
  126 + height: 30rpx;
  127 + background-image: url("http://nosqn.colorcun.com/activity/images/addr.png");
  128 + margin-right: 20rpx;
  129 +}
  1 +// pack-activity/pages/money.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 +
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 +
  18 + },
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面初次渲染完成
  22 + */
  23 + onReady: function () {
  24 +
  25 + },
  26 +
  27 + /**
  28 + * 生命周期函数--监听页面显示
  29 + */
  30 + onShow: function () {
  31 +
  32 + },
  33 +
  34 + /**
  35 + * 生命周期函数--监听页面隐藏
  36 + */
  37 + onHide: function () {
  38 +
  39 + },
  40 +
  41 + /**
  42 + * 生命周期函数--监听页面卸载
  43 + */
  44 + onUnload: function () {
  45 +
  46 + },
  47 +
  48 + /**
  49 + * 页面相关事件处理函数--监听用户下拉动作
  50 + */
  51 + onPullDownRefresh: function () {
  52 +
  53 + },
  54 +
  55 + /**
  56 + * 页面上拉触底事件的处理函数
  57 + */
  58 + onReachBottom: function () {
  59 +
  60 + },
  61 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/money.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<nav hasHome>添加企业微信</nav>
  4 +<view class="pages">
  5 + <view class="pages-view">
  6 + <view class="text">【周到安排】已为您分配专属客服,订包间相关的任何问题,都可以撩我</view>
  7 + <image src="http://nosqn.colorcun.com/activity/images/kefux.png" mode="widthFix" style="width: 100%;"></image>
  8 + </view>
  9 +</view>
  10 +<view class="bottom">
  11 + <view class="bottom-view flex-vc">
  12 + <button class="button-love" open-type="contact"
  13 + send-message-title="添加企业微信"
  14 + send-message-img="http://nosqn.colorcun.com/activity/images/kefu.jpg"
  15 + show-message-card>去客服页面关注</button>
  16 + <view class="tips">添加企业微信,及时获知红包领取详情</view>
  17 + </view>
  18 +</view>
  1 +/* pack-activity/pages/money.wxss */
  2 +page{
  3 + background-color: #ffffff;
  4 +}
  5 +.pages{
  6 + background-image: url("http://nosqn.colorcun.com/activity/images/money-header.png");
  7 + background-size: 100% auto;
  8 + background-repeat: no-repeat;
  9 + min-height: 500rpx;
  10 + padding-top: 80rpx;
  11 +}
  12 +.pages-view{
  13 + width: calc(100% - 40rpx);
  14 + margin-left: 20rpx;
  15 + height:340rpx;
  16 + background:#ffffff;
  17 + border-radius:20rpx;
  18 + box-sizing: border-box;
  19 + padding: 40rpx 20rpx;
  20 +}
  21 +.text{
  22 + padding: 0 30rpx;
  23 + font-size:32rpx;
  24 + font-weight:600;
  25 + color:rgba(53,53,53,1);
  26 + line-height:44rpx;
  27 + margin-bottom: 80rpx;
  28 +}
  29 +.bottom{
  30 + position: fixed;
  31 + bottom: 0;
  32 + height: 220rpx;
  33 + width: 100%;
  34 +}
  35 +.bottom-view{
  36 + width: 100%;
  37 +}
  38 +.button-love{
  39 + width:674rpx;
  40 + height:80rpx;
  41 + background:linear-gradient(360deg,rgba(220,44,75,1) 0%,rgba(244,143,161,1) 100%);
  42 + border-radius:40rpx;
  43 + font-size:32rpx;
  44 + font-weight:600;
  45 + color:rgba(255,255,255,1);
  46 + line-height:80rpx;
  47 + letter-spacing:1rpx;
  48 +}
  49 +.tips{
  50 + margin-top: 24rpx;
  51 + height:36rpx;
  52 + font-size:26rpx;
  53 + font-weight:500;
  54 + color:rgba(153,153,153,1);
  55 + line-height:36rpx;
  56 +}
  1 +// pack-activity/pages/index.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + activity:null,
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 + this.options=options
  18 + let sys=wx.getSystemInfoSync();
  19 + this.setData({
  20 + height:sys.windowHeight,
  21 + })
  22 + this.GetTaskInfos()
  23 + },
  24 +
  25 + /**
  26 + * 生命周期函数--监听页面初次渲染完成
  27 + */
  28 + onReady: function () {
  29 +
  30 + },
  31 +
  32 + /**
  33 + * 生命周期函数--监听页面显示
  34 + */
  35 + onShow: function () {
  36 + this.GetTaskInfos()
  37 + },
  38 +
  39 + /**
  40 + * 生命周期函数--监听页面隐藏
  41 + */
  42 + onHide: function () {
  43 +
  44 + },
  45 +
  46 + /**
  47 + * 生命周期函数--监听页面卸载
  48 + */
  49 + onUnload: function () {
  50 +
  51 + },
  52 +
  53 + /**
  54 + * 页面相关事件处理函数--监听用户下拉动作
  55 + */
  56 + onPullDownRefresh: function () {
  57 +
  58 + },
  59 +
  60 + /**
  61 + * 页面上拉触底事件的处理函数
  62 + */
  63 + onReachBottom: function () {
  64 +
  65 + },
  66 +
  67 + /**
  68 + * 用户点击右上角分享
  69 + */
  70 + onShareAppMessage: function () {
  71 + return {
  72 + title:this.data.activity.title,
  73 + path:'/pages/reserve/index',
  74 + imageUrl:this.data.activity.bgurl+'.share.jpg',
  75 + }
  76 + },
  77 + GetTaskInfos(){
  78 + App.Task.GetTaskInfos({
  79 + aid:this.options.id,
  80 + }).then(res=>{
  81 + let activity=res.data.activity
  82 + activity.list=res.data.task
  83 + let count=0
  84 + activity.list.forEach(t=>{
  85 + if(t.status==2){
  86 + count+=(t.price*1)
  87 + }
  88 + })
  89 + this.setData({
  90 + count:count.toFixed(2),
  91 + activity:activity
  92 + })
  93 + })
  94 + },
  95 + taskNextDo(e){
  96 + let index=util.attr(e,'index')
  97 + let task=this.data.activity.list[index]
  98 + let tid=task.id
  99 + ,path=util.http_build_query({aid:this.data.activity.id,tid:tid},task.task_url||'/pack-activity/pages/yuding')
  100 + console.log(path)
  101 + if(task.status==0){
  102 + App.Task.SetTaskInfo({//领取任务
  103 + aid:this.data.activity.id,
  104 + tid:tid,
  105 + }).then(()=>{
  106 + this.GetTaskInfos()
  107 + wx.navigateTo({
  108 + url: path
  109 + })
  110 + })
  111 + }else if(task.status==1){
  112 + wx.navigateTo({
  113 + url: path
  114 + })
  115 + }else{
  116 + wx.navigateTo({
  117 + url: '/pack-activity/pack/pack'
  118 + })
  119 + }
  120 + },
  121 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/index.wxml-->
  2 +<nav hasHome>周到安排</nav>
  3 +<view class="pages"
  4 + wx:if="{{activity}}"
  5 + style="background-color: {{activity.element}};background-image:url('{{activity.bgurl}}.rule.png')">
  6 + <view class="content">
  7 + <view class="list">
  8 + <view class="header flex-cc">
  9 + <view class="header-img lt"></view>
  10 + <view class="header-txt">活动规则</view>
  11 + <view class="header-img gt"></view>
  12 + </view>
  13 + <view class="item">
  14 + <text space="nbsp" class="desc">{{activity.desc}}</text>
  15 + </view>
  16 + </view>
  17 + </view>
  18 +</view>
  1 +/* pack-activity/pages/index.wxss */
  2 +.pages{
  3 + padding: 78rpx 0 52rpx;
  4 + background-size: 100% auto;
  5 + background-repeat: no-repeat;
  6 +}
  7 +.content{
  8 + width: calc(100% - 40rpx);
  9 + margin: 0 20rpx 0;
  10 +}
  11 +
  12 +.list{
  13 + background:rgba(255,255,255,1);
  14 + box-shadow:4rpx 4rpx 6rpx 4rpx rgba(218,61,69,1);
  15 + border-radius:10rpx;
  16 + padding-top: 72rpx;
  17 + padding-bottom: 44rpx;
  18 +}
  19 +
  20 +.header{
  21 + margin-bottom: 40rpx;
  22 +}
  23 +.header .header-txt{
  24 + width:128rpx;
  25 + height:44rpx;
  26 + font-size:32rpx;
  27 + font-weight:600;
  28 + color:rgba(53,53,53,1);
  29 + line-height:44rpx;
  30 + margin: 0 20rpx;
  31 +}
  32 +.header-img{
  33 + background-size: 100% 100%;
  34 + width: 88rpx;
  35 + height: 8rpx;
  36 +}
  37 +.header-img.gt{
  38 + background-image: url("http://nosqn.colorcun.com/activity/images/rule.gt.png");
  39 +}
  40 +.header-img.lt{
  41 + background-image: url("http://nosqn.colorcun.com/activity/images/rule.lt.png");
  42 +}
  43 +.list .item{
  44 + margin-bottom: 60rpx;
  45 + padding: 0 20rpx;
  46 + box-sizing: border-box;
  47 +}
  48 +.list .item:last-child{
  49 + margin-bottom: 0;
  50 +}
  51 +.item .icon{
  52 + width: 94rpx;
  53 + height: 94rpx;
  54 + min-width: 94rpx;
  55 +}
  56 +.item-content{
  57 + margin-left: 10rpx;
  58 + width: 100%;
  59 +}
  60 +.desc{
  61 + font-size:28rpx;
  62 + font-weight:500;
  63 + color:rgba(53,53,53,1);
  64 + line-height:40rpx;
  65 +}
  1 +// pack-activity/pages/index.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 +
  11 + },
  12 +
  13 + /**
  14 + * 生命周期函数--监听页面加载
  15 + */
  16 + onLoad: function (options) {
  17 + this.options=options
  18 + },
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面初次渲染完成
  22 + */
  23 + onReady: function () {
  24 +
  25 + },
  26 +
  27 + /**
  28 + * 生命周期函数--监听页面显示
  29 + */
  30 + onShow: function () {
  31 + },
  32 +
  33 + /**
  34 + * 生命周期函数--监听页面隐藏
  35 + */
  36 + onHide: function () {
  37 +
  38 + },
  39 +
  40 + /**
  41 + * 生命周期函数--监听页面卸载
  42 + */
  43 + onUnload: function () {
  44 +
  45 + },
  46 +
  47 + /**
  48 + * 页面相关事件处理函数--监听用户下拉动作
  49 + */
  50 + onPullDownRefresh: function () {
  51 +
  52 + },
  53 +
  54 + /**
  55 + * 页面上拉触底事件的处理函数
  56 + */
  57 + onReachBottom: function () {
  58 +
  59 + },
  60 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav"
  7 + }
  8 +}
  1 +<!--pack-activity/pages/index.wxml-->
  2 +<nav hasHome>订包间</nav>
  3 +<view class="pages">
  4 + <image src="http://nosqn.colorcun.com/activity/images/yuding.png" style="width: 100%;" mode="widthFix"></image>
  5 + <navigator url="/pages/reserve/index" open-type="switchTab" hover-class="other-navigator-hover">
  6 + <view class="content flex-cc">
  7 + <view class="share-but">
  8 + <button class="button-none">去订包间</button>
  9 + </view>
  10 + </view>
  11 + </navigator>
  12 +</view>
  1 +/* pack-activity/pages/index.wxss */
  2 +.pages{
  3 +
  4 +}
  5 +.content{
  6 + position: fixed;
  7 + bottom: 80rpx;
  8 + width: 100%;
  9 +}
  10 +.share-but{
  11 + height:80rpx;
  12 + background:linear-gradient(360deg,rgba(220,44,75,1) 0%,rgba(244,143,161,1) 100%);
  13 + border-radius:40rpx;
  14 +
  15 + font-size:32rpx;
  16 + font-weight:600;
  17 + color:rgba(255,255,255,1);
  18 + line-height:44rpx;
  19 + letter-spacing:1rpx;
  20 + text-align: center;
  21 + width: calc(100% - 76rpx);
  22 +}
  23 +.share-but .button-none{
  24 + height: 80rpx;
  25 + line-height:80rpx;
  26 +}
@@ -210,7 +210,8 @@ image{ @@ -210,7 +210,8 @@ image{
210 } 210 }
211 211
212 .Medium{ 212 .Medium{
213 - font-weight: 400; 213 + font-family:PingFangSC-Medium,PingFang SC;
  214 + font-weight: 500;
214 } 215 }
215 .button-none { 216 .button-none {
216 display: inline-block; 217 display: inline-block;
@@ -237,7 +238,7 @@ image{ @@ -237,7 +238,7 @@ image{
237 .more{ 238 .more{
238 width: 12rpx; 239 width: 12rpx;
239 height: 22rpx; 240 height: 22rpx;
240 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/click.png"); 241 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/click.png");
241 background-size: 100%; 242 background-size: 100%;
242 min-width: 12rpx; 243 min-width: 12rpx;
243 } 244 }
1 <view style="height:{{height}}px;" class="nothing-page flex-vc bg-white"> 1 <view style="height:{{height}}px;" class="nothing-page flex-vc bg-white">
2 - <image class="nothing-booklist" src="http://qn.colorcun.com/custom/lite-yd/image/nothing-booklist.png"></image> 2 + <image class="nothing-booklist" src="http://nosqn.colorcun.com/custom/lite-yd/image/nothing-booklist.png"></image>
3 <view class="black-font font34r smooth nothing-content">暂无内容</view> 3 <view class="black-font font34r smooth nothing-content">暂无内容</view>
4 </view> 4 </view>
@@ -7,15 +7,15 @@ Component({ @@ -7,15 +7,15 @@ Component({
7 data: { 7 data: {
8 list: [ 8 list: [
9 { 9 {
10 - imgurl: 'http://qn.colorcun.com/custom/lite-yd/image/notice-wx.png', 10 + imgurl: 'http://nosqn.colorcun.com/custom/lite-yd/image/notice-wx.png',
11 title: '微信' 11 title: '微信'
12 }, 12 },
13 { 13 {
14 - imgurl: 'http://qn.colorcun.com/custom/lite-yd/image/notice-msg.png', 14 + imgurl: 'http://nosqn.colorcun.com/custom/lite-yd/image/notice-msg.png',
15 title: '短信' 15 title: '短信'
16 }, 16 },
17 { 17 {
18 - imgurl: 'http://qn.colorcun.com/custom/lite-yd/image/notice-call.png', 18 + imgurl: 'http://nosqn.colorcun.com/custom/lite-yd/image/notice-call.png',
19 title: '电话' 19 title: '电话'
20 } 20 }
21 ], 21 ],
@@ -26,10 +26,10 @@ Component({ @@ -26,10 +26,10 @@ Component({
26 let list=this.data.list 26 let list=this.data.list
27 let pl = this.data.bookInfo.phone ? this.data.bookInfo.phone.length : 0; 27 let pl = this.data.bookInfo.phone ? this.data.bookInfo.phone.length : 0;
28 if (pl < 3) { 28 if (pl < 3) {
29 - list[2].imgurl='http://qn.colorcun.com/custom/lite-yd/image/notice-call-disabled.png' 29 + list[2].imgurl='http://nosqn.colorcun.com/custom/lite-yd/image/notice-call-disabled.png'
30 } 30 }
31 if (!/^1\d{10}$/.test(this.data.bookInfo.phone)) { 31 if (!/^1\d{10}$/.test(this.data.bookInfo.phone)) {
32 - list[1].imgurl='http://qn.colorcun.com/custom/lite-yd/image/notice-msg-disabled.png' 32 + list[1].imgurl='http://nosqn.colorcun.com/custom/lite-yd/image/notice-msg-disabled.png'
33 } 33 }
34 this.setData({ 34 this.setData({
35 list:list, 35 list:list,
1 <view class="selected-time flex-cc"> 1 <view class="selected-time flex-cc">
2 <view class="flex-vc padding-topbottom padding-left25" bindtap="reducePnum"> 2 <view class="flex-vc padding-topbottom padding-left25" bindtap="reducePnum">
3 - <image src="http://qn.colorcun.com/custom/lite-yd/image/reduce-act.png" class="select-act"></image> 3 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/reduce-act.png" class="select-act"></image>
4 </view> 4 </view>
5 <input value="{{pnum}}" class="select-input flex-cc green-font font34r" bindunput="editpnum"/> 5 <input value="{{pnum}}" class="select-input flex-cc green-font font34r" bindunput="editpnum"/>
6 <view class="flex-vc padding-topbottom padding-right25" bindtap="addPnum"> 6 <view class="flex-vc padding-topbottom padding-right25" bindtap="addPnum">
7 - <image src="http://qn.colorcun.com/custom/lite-yd/image/add-act.png" class="select-act"></image> 7 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/add-act.png" class="select-act"></image>
8 </view> 8 </view>
9 </view> 9 </view>
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <view class="cancel" catchtap="catchtap"> 3 <view class="cancel" catchtap="catchtap">
4 <view class="flex-rr"> 4 <view class="flex-rr">
5 <view class="close" bindtap="hide"> 5 <view class="close" bindtap="hide">
6 - <image src="http://qn.colorcun.com/custom/lite-yd/image/close.png"></image> 6 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/close.png"></image>
7 </view> 7 </view>
8 </view> 8 </view>
9 <view class="title Semibold flex-vc">请选择取消原因</view> 9 <view class="title Semibold flex-vc">请选择取消原因</view>
@@ -39,32 +39,32 @@ @@ -39,32 +39,32 @@
39 height: 100%; 39 height: 100%;
40 } 40 }
41 .tabBar .reserve{ 41 .tabBar .reserve{
42 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-reserve.png"); 42 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-reserve.png");
43 } 43 }
44 .tabBar .checked .reserve{ 44 .tabBar .checked .reserve{
45 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-reserve-checked.png"); 45 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-reserve-checked.png");
46 } 46 }
47 .tabBar .book{ 47 .tabBar .book{
48 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-book.png"); 48 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-book.png");
49 } 49 }
50 .tabBar .checked .book { 50 .tabBar .checked .book {
51 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-book-checked.png"); 51 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-book-checked.png");
52 } 52 }
53 .tabBar .setting{ 53 .tabBar .setting{
54 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-setting.png"); 54 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-setting.png");
55 } 55 }
56 .tabBar .checked .setting { 56 .tabBar .checked .setting {
57 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-setting-checked.png"); 57 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-setting-checked.png");
58 } 58 }
59 .tabBar .board{ 59 .tabBar .board{
60 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-boards.png"); 60 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-boards.png");
61 } 61 }
62 .tabBar .checked .board { 62 .tabBar .checked .board {
63 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/seller-tabs2-boards-checked.png"); 63 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/seller-tabs2-boards-checked.png");
64 } 64 }
65 .tabBar .order{ 65 .tabBar .order{
66 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/order.png?2"); 66 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/order.png?2");
67 } 67 }
68 .tabBar .checked .order { 68 .tabBar .checked .order {
69 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/order-checked.png?2"); 69 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/order-checked.png?2");
70 } 70 }
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 bindtap="calendarShow"> 13 bindtap="calendarShow">
14 <view style="width: 80%" class="item-text">{{checked==2?util.unixtoTime(list[2].time,"MM-DD"):'其他'}}</view> 14 <view style="width: 80%" class="item-text">{{checked==2?util.unixtoTime(list[2].time,"MM-DD"):'其他'}}</view>
15 <image 15 <image
16 - src="http://qn.colorcun.com/custom/lite-yd/image/date{{checked==2?'.selected':''}}.png" 16 + src="http://nosqn.colorcun.com/custom/lite-yd/image/date{{checked==2?'.selected':''}}.png"
17 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image> 17 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image>
18 </view> 18 </view>
19 </view> 19 </view>
@@ -7,7 +7,7 @@ @@ -7,7 +7,7 @@
7 style="height:100%;" wx:if="{{timePickerMask}}"> 7 style="height:100%;" wx:if="{{timePickerMask}}">
8 <view class="timePicker"> 8 <view class="timePicker">
9 <view class="flex-rr"> 9 <view class="flex-rr">
10 - <image class="close" src="http://qn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="calendarClose"></image> 10 + <image class="close" src="http://nosqn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="calendarClose"></image>
11 </view> 11 </view>
12 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;"> 12 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;">
13 <view bindtap="calendarClose">{{ddate_solt==1?'午市':ddate_solt==2?'晚市':'早市'}}</view> 13 <view bindtap="calendarClose">{{ddate_solt==1?'午市':ddate_solt==2?'晚市':'早市'}}</view>
  1 +// pack-book/components/checkout/confirm-price.js
  2 +import util from '../../../utils/util'
  3 +import App from '../../../utils/api'
  4 +Component({
  5 + /**
  6 + * 组件的属性列表
  7 + */
  8 + properties: {
  9 + price:Number,
  10 + },
  11 +
  12 + /**
  13 + * 组件的初始数据
  14 + */
  15 + data: {
  16 + hidden:true,
  17 + },
  18 +
  19 + /**
  20 + * 组件的方法列表
  21 + */
  22 + methods: {
  23 + show(rid,files){
  24 + if(this.data.price<=0){
  25 + return util.toast('请设置金额','none')
  26 + }
  27 + let bill_list=[]
  28 + if(files.length>0){
  29 + let hasNok=false
  30 + files.some(f=>{
  31 + if(f.progress==100 && f.remote && f.remote.url){
  32 + bill_list.push(f.remote.url)
  33 + }else{
  34 + hasNok=true
  35 + }
  36 + })
  37 + if(hasNok){
  38 + return util.toast('请等待图片上传完成','none')
  39 + }
  40 + }
  41 + this.rid=rid
  42 + this.bill_list=bill_list
  43 + this.hasSubmit=true
  44 + this.setData({
  45 + hidden:false,
  46 + })
  47 + },
  48 + hide(){
  49 + this.setData({
  50 + hidden:true,
  51 + })
  52 + },
  53 + hasSubmit:true,
  54 + submit(){
  55 + this.hide()
  56 + if(!this.hasSubmit) return;
  57 + this.hasSubmit=false,
  58 + App.Customer.UpdateOrderInfo({
  59 + rid:this.rid,
  60 + bill_list:JSON.stringify(this.bill_list),
  61 + price:this.data.price,
  62 + }).then(()=>{
  63 + this.triggerEvent('event')
  64 + this.hasSubmit=true
  65 + }).catch(()=>{
  66 + this.triggerEvent('event')
  67 + this.hasSubmit=true
  68 + })
  69 + },
  70 + }
  71 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {}
  4 +}
  1 +<!--pack-book/components/checkout/confirm-price.wxml-->
  2 +<view class="mask flex-vc" wx:if="{{!hidden}}">
  3 + <view class="confirm-price">
  4 + <view class="title flex-rr" bindtap="hide">
  5 + <view class="bg-img bg-c1"></view>
  6 + </view>
  7 + <view class="center flex-vc">
  8 + <view class="tips">应收金额</view>
  9 + <view class="price">¥ {{price}}</view>
  10 + <view class="submit" bindtap="submit">确认发送</view>
  11 + </view>
  12 + </view>
  13 +</view>
  1 +/* pack-book/components/checkout/confirm-price.wxss */
  2 +@import "/app.wxss";
  3 +.bg-img{
  4 + background-image: url("http://nosqn.colorcun.com/checkout/images/css_sprites.png");
  5 + zoom: 33.5%;
  6 +}
  7 +.bg-c1 {
  8 + width: 36px; height: 36px;
  9 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -209px -111px;
  10 +}
  11 +.confirm-price{
  12 + width: calc(100% - 144rpx);
  13 + height:426rpx;
  14 + background:rgba(255,255,255,1);
  15 + border-radius:10rpx;
  16 +}
  17 +.title{
  18 + height: 92rpx;
  19 + line-height: 92rpx;
  20 + padding: 0 36rpx;
  21 +}
  22 +.tips{
  23 + height:42rpx;
  24 + font-size:30rpx;
  25 + font-family:PingFangSC-Medium,PingFang SC;
  26 + font-weight:500;
  27 + color:rgba(112,112,112,1);
  28 + line-height:42rpx;
  29 +}
  30 +.price{
  31 + height:92rpx;
  32 + font-size:66rpx;
  33 + font-family:PingFangSC-Medium,PingFang SC;
  34 + font-weight:500;
  35 + color:rgba(53,53,53,1);
  36 + line-height:92rpx;
  37 + margin-top: 16rpx;
  38 +}
  39 +.submit{
  40 + width:334rpx;
  41 + height:84rpx;
  42 + background:rgba(25,144,149,1);
  43 + border-radius:10rpx;
  44 + font-size:34rpx;
  45 + font-family:PingFangSC-Medium,PingFang SC;
  46 + font-weight:500;
  47 + color:rgba(254,254,254,1);
  48 + line-height:84rpx;
  49 + text-align: center;
  50 + margin-top: 40rpx;
  51 +}
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 <view class="single-date gray-deep-font flex-vc"> 11 <view class="single-date gray-deep-font flex-vc">
12 <view class="font30r">更多</view> 12 <view class="font30r">更多</view>
13 <view class="date-num flex-vc"> 13 <view class="date-num flex-vc">
14 - <image src="http://qn.colorcun.com/custom/lite-yd/image/more-dot.png" class="more-dot"></image> 14 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/more-dot.png" class="more-dot"></image>
15 </view> 15 </view>
16 </view> 16 </view>
17 </view> 17 </view>
@@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
31 31
32 </view> 32 </view>
33 <image 33 <image
34 - src="http://qn.colorcun.com/custom/lite-yd/image/pnum{{form.pnum<6 || form.pnum>10?'.selected':''}}.png" 34 + src="http://nosqn.colorcun.com/custom/lite-yd/image/pnum{{form.pnum<6 || form.pnum>10?'.selected':''}}.png"
35 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image> 35 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image>
36 </view> 36 </view>
37 </view> 37 </view>
@@ -45,7 +45,7 @@ @@ -45,7 +45,7 @@
45 <view>可订桌位<text wx:if="{{tables.length>0}}"> ({{tablesLength}})</text></view> 45 <view>可订桌位<text wx:if="{{tables.length>0}}"> ({{tablesLength}})</text></view>
46 <view class="flex-rr advice-more" bindtap="selectdesk"> 46 <view class="flex-rr advice-more" bindtap="selectdesk">
47 <view style="padding-right:20rpx;" class="gray-deep-font font26r">更多</view> 47 <view style="padding-right:20rpx;" class="gray-deep-font font26r">更多</view>
48 - <image src="http://qn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image> 48 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image>
49 </view> 49 </view>
50 </view> 50 </view>
51 <view class="advice-desk-detail flex-rr" wx:if="{{tables.length>0}}"> 51 <view class="advice-desk-detail flex-rr" wx:if="{{tables.length>0}}">
@@ -132,7 +132,7 @@ @@ -132,7 +132,7 @@
132 style="height:100%;" wx:if="{{CustomRemarkMoreMask}}"> 132 style="height:100%;" wx:if="{{CustomRemarkMoreMask}}">
133 <view class="timePicker" catchtap="catchtap"> 133 <view class="timePicker" catchtap="catchtap">
134 <view class="flex-rr"> 134 <view class="flex-rr">
135 - <image class="close" src="http://qn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="CustomRemarkMore"></image> 135 + <image class="close" src="http://nosqn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="CustomRemarkMore"></image>
136 </view> 136 </view>
137 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;"> 137 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;">
138 <view bindtap="calendarClose">更多标签</view> 138 <view bindtap="calendarClose">更多标签</view>
@@ -210,7 +210,21 @@ Page({ @@ -210,7 +210,21 @@ Page({
210 } 210 }
211 */ 211 */
212 this.detailData.rdateStr = util.unixtoTime(this.detailData.ddate, tpl) 212 this.detailData.rdateStr = util.unixtoTime(this.detailData.ddate, tpl)
213 - 213 + if(this.detailData.order_info && this.detailData.order_info.status==3){ //已支付
  214 + let ores = await App.Customer.GetOrderInfo({rid: id});
  215 + let discount={pt:0,se:0}
  216 + ores.data.discount.forEach(q=>{
  217 + if(q.checked){
  218 + if(q.owner==1){//平台
  219 + discount.pt+=parseFloat(q.price)
  220 + }else{
  221 + discount.se+=parseFloat(q.price)
  222 + }
  223 + }
  224 + })
  225 + //this.detailData.order_info.price=(this.detailData.order_info.price-discount.se).toFixed(2)
  226 + this.detailData.order_info.price=(this.detailData.order_info.should_price*1+discount.pt*1).toFixed(2)
  227 + }
214 this.setData({ 228 this.setData({
215 tables: res.data.tables, 229 tables: res.data.tables,
216 bookInfo: this.detailData, 230 bookInfo: this.detailData,
@@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
31 <view class="text">{{bookInfo.status==0?'待处理':'已拒绝'}}</view> 31 <view class="text">{{bookInfo.status==0?'待处理':'已拒绝'}}</view>
32 </view> 32 </view>
33 <view class="reserve-status-tip {{bookInfo.type==1?'online':''}}" wx:elif="{{bookInfo.status}}"> 33 <view class="reserve-status-tip {{bookInfo.type==1?'online':''}}" wx:elif="{{bookInfo.status}}">
34 - <image src="http://qn.colorcun.com/custom/lite-yd/image/reserve-status-{{bookInfo.status==5?1:bookInfo.status}}.png"></image> 34 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/reserve-status-{{bookInfo.status==5?1:bookInfo.status}}.png"></image>
35 </view> 35 </view>
36 <view class="flex-lr order-desk" wx:if="{{bookInfo.type==1}}"> 36 <view class="flex-lr order-desk" wx:if="{{bookInfo.type==1}}">
37 <view class="flex-re" style="width:100%;flex-wrap:wrap;"> 37 <view class="flex-re" style="width:100%;flex-wrap:wrap;">
@@ -107,7 +107,33 @@ @@ -107,7 +107,33 @@
107 <view class="black-font font34r">{{bookInfo.abolition==2?'顾客在线取消':bookInfo.cancel.uname}}</view> 107 <view class="black-font font34r">{{bookInfo.abolition==2?'顾客在线取消':bookInfo.cancel.uname}}</view>
108 </view> 108 </view>
109 </view> 109 </view>
110 - 110 +<navigator url="{{bookInfo.invoice.type==0?'../checkout/invoice?rid='+bookInfo.id:''}}" wx:if="{{bookInfo.invoice}}">
  111 + <view class="order-info">
  112 + <view class="flex-lr order-detail">
  113 + <view class="gray-deep-font font30r">发票抬头</view>
  114 + <view class="flex-lr black-font font32r">
  115 + <view class="" style="text-align: right">
  116 + <view class="Medium">{{bookInfo.invoice.title}}</view>
  117 + <view class="gray-deep-font font28r"
  118 + wx:if="{{bookInfo.invoice.type==0}}"
  119 + style="margin-top: 10rpx;">税号:{{bookInfo.invoice.taxnumber}}</view>
  120 + </view>
  121 + <view class="more" style="margin-left: 20rpx" wx:if="{{bookInfo.invoice.type==0}}"></view>
  122 + </view>
  123 + </view>
  124 + </view>
  125 +</navigator>
  126 +<navigator url="../checkout/index?rid={{bookInfo.id}}" wx:if="{{bookInfo.order_info.status==3}}">
  127 + <view class="order-info">
  128 + <view class="flex-lr order-detail">
  129 + <view class="gray-deep-font font30r">实收金额:<text class="black-font font32r Medium">¥ {{bookInfo.order_info.price}}</text></view>
  130 + <view class="flex-lr gray-deep-font font28r">
  131 + 查看明细
  132 + <view class="more" style="margin-left: 20rpx"></view>
  133 + </view>
  134 + </view>
  135 + </view>
  136 +</navigator>
111 <view style="height: 250rpx;"></view> 137 <view style="height: 250rpx;"></view>
112 138
113 <!--通知预订人--> 139 <!--通知预订人-->
@@ -5,11 +5,11 @@ @@ -5,11 +5,11 @@
5 <view class="book-page bg_white"> 5 <view class="book-page bg_white">
6 <view class="book-search flex-lr"> 6 <view class="book-search flex-lr">
7 <view class="flex-ll book-search-left"> 7 <view class="flex-ll book-search-left">
8 - <image src="http://qn.colorcun.com/custom/lite-yd/image/search.png" class="search-icon"></image> 8 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/search.png" class="search-icon"></image>
9 <input placeholder="桌位/客户姓名/手机号" placeholder-class="font30r gray-font smooth" class="font30r black-font smooth search-input" value="{{keywords}}" bindinput="searchinput" confirm-type="search" bindconfirm="searchbook"/> 9 <input placeholder="桌位/客户姓名/手机号" placeholder-class="font30r gray-font smooth" class="font30r black-font smooth search-input" value="{{keywords}}" bindinput="searchinput" confirm-type="search" bindconfirm="searchbook"/>
10 </view> 10 </view>
11 <view bindtap="exportFile" class="exportFile flex-vc"> 11 <view bindtap="exportFile" class="exportFile flex-vc">
12 - <image src="http://qn.colorcun.com/custom/lite-yd/image/export.png" class="search-icon"></image> 12 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/export.png" class="search-icon"></image>
13 <view>导出</view> 13 <view>导出</view>
14 </view> 14 </view>
15 </view> 15 </view>
@@ -48,7 +48,7 @@ @@ -48,7 +48,7 @@
48 <view class="book-list-thead flex-lr font34r black-font"> 48 <view class="book-list-thead flex-lr font34r black-font">
49 <view>桌号</view> 49 <view>桌号</view>
50 <view class="flex-cc">客户姓名</view> 50 <view class="flex-cc">客户姓名</view>
51 - <view class="flex-cc" bindtap="timeorder">时间<image src="http://qn.colorcun.com/custom/lite-yd/image/direction.png" class="icon22-26" background-size="cover"></image></view> 51 + <view class="flex-cc" bindtap="timeorder">时间<image src="http://nosqn.colorcun.com/custom/lite-yd/image/direction.png" class="icon22-26" background-size="cover"></image></view>
52 <view class="flex-rr">操作</view> 52 <view class="flex-rr">操作</view>
53 </view> 53 </view>
54 <view class="book-list" style="padding-bottom:118rpx;"> 54 <view class="book-list" style="padding-bottom:118rpx;">
@@ -35,7 +35,7 @@ @@ -35,7 +35,7 @@
35 </block> 35 </block>
36 <view class="flex-rr advice-more" bindtap="selectdesk"> 36 <view class="flex-rr advice-more" bindtap="selectdesk">
37 <view style="padding-right:30rpx;" class="gray-deep-font font26r">更多</view> 37 <view style="padding-right:30rpx;" class="gray-deep-font font26r">更多</view>
38 - <image src="http://qn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image> 38 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image>
39 </view> 39 </view>
40 </view> 40 </view>
41 </view> 41 </view>
@@ -57,7 +57,7 @@ @@ -57,7 +57,7 @@
57 <block wx:if="{{reminder}}"> 57 <block wx:if="{{reminder}}">
58 <view class="flex-rr" style="height:100rpx;"> 58 <view class="flex-rr" style="height:100rpx;">
59 <view style="color:#E14553;" class="font28r">{{reminder}}</view> 59 <view style="color:#E14553;" class="font28r">{{reminder}}</view>
60 - <image src="http://qn.colorcun.com/custom/lite-yd/image/name-have.png" class="phone-reminder"></image> 60 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/name-have.png" class="phone-reminder"></image>
61 </view> 61 </view>
62 </block> 62 </block>
63 </view> 63 </view>
@@ -21,7 +21,7 @@ @@ -21,7 +21,7 @@
21 <formids class="back" > 21 <formids class="back" >
22 <view style="min-width: 100rpx;" class="flex-ll"> 22 <view style="min-width: 100rpx;" class="flex-ll">
23 <image class="back-image" 23 <image class="back-image"
24 - src="http://qn.colorcun.com/custom/lite-yd/image/back-light.png"></image> 24 + src="http://nosqn.colorcun.com/custom/lite-yd/image/back-light.png"></image>
25 </view> 25 </view>
26 </formids> 26 </formids>
27 <block wx:if="{{false}}" wx:for="{{tpls}}" wx:key="tpls.key"> 27 <block wx:if="{{false}}" wx:for="{{tpls}}" wx:key="tpls.key">
@@ -25,10 +25,10 @@ image{ @@ -25,10 +25,10 @@ image{
25 } 25 }
26 26
27 .buts-share{ 27 .buts-share{
28 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png"); 28 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png");
29 } 29 }
30 .buts-share.customer{ 30 .buts-share.customer{
31 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png"); 31 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png");
32 } 32 }
33 33
34 .shangwu{ 34 .shangwu{
@@ -40,12 +40,12 @@ image{ @@ -40,12 +40,12 @@ image{
40 .shangwu .invit-logo.owner{ 40 .shangwu .invit-logo.owner{
41 width: 380rpx; 41 width: 380rpx;
42 height: 200rpx; 42 height: 200rpx;
43 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"); 43 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png");
44 } 44 }
45 .shangwu .invit-logo.customer{ 45 .shangwu .invit-logo.customer{
46 width: 352rpx; 46 width: 352rpx;
47 height: 164rpx; 47 height: 164rpx;
48 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/invit-logo.png"); 48 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/invit-logo.png");
49 } 49 }
50 50
51 51
@@ -61,12 +61,12 @@ image{ @@ -61,12 +61,12 @@ image{
61 .wenxin .invit-logo.owner{ 61 .wenxin .invit-logo.owner{
62 width: 340rpx; 62 width: 340rpx;
63 height: 184rpx; 63 height: 184rpx;
64 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"); 64 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png");
65 } 65 }
66 .wenxin .invit-logo.customer{ 66 .wenxin .invit-logo.customer{
67 width: 344rpx; 67 width: 344rpx;
68 height: 198rpx; 68 height: 198rpx;
69 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png"); 69 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png");
70 } 70 }
71 71
72 .back{ 72 .back{
@@ -35,7 +35,7 @@ @@ -35,7 +35,7 @@
35 </view> 35 </view>
36 </block> 36 </block>
37 <view wx:else="" class="history-is-empty flex-vc Medium"> 37 <view wx:else="" class="history-is-empty flex-vc Medium">
38 - <image src="http://qn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image> 38 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image>
39 <view>暂时还没订单</view> 39 <view>暂时还没订单</view>
40 </view> 40 </view>
41 <view wx:if="{{!hasMore}}" class="flex-vc hasMore">已经到底了</view> 41 <view wx:if="{{!hasMore}}" class="flex-vc hasMore">已经到底了</view>
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 </view> 16 </view>
17 </block> 17 </block>
18 <view wx:else="" class="history-is-empty flex-vc Medium"> 18 <view wx:else="" class="history-is-empty flex-vc Medium">
19 - <image src="http://qn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image> 19 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image>
20 <view>暂时还没有客户</view> 20 <view>暂时还没有客户</view>
21 </view> 21 </view>
22 <view wx:if="{{!hasMore}}" class="row flex-vc">已经到底了</view> 22 <view wx:if="{{!hasMore}}" class="row flex-vc">已经到底了</view>
1 /* pages/book/setting/index.wxss */ 1 /* pages/book/setting/index.wxss */
2 /* 2 /*
3 -http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png  
4 -http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png 3 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png
  4 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png
5 */ 5 */
6 .pages{ 6 .pages{
7 width: 90%; 7 width: 90%;
@@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
31 31
32 </view> 32 </view>
33 <image 33 <image
34 - src="http://qn.colorcun.com/custom/lite-yd/image/pnum{{form.pnum<6 || form.pnum>10?'.selected':''}}.png" 34 + src="http://nosqn.colorcun.com/custom/lite-yd/image/pnum{{form.pnum<6 || form.pnum>10?'.selected':''}}.png"
35 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image> 35 style="min-width: 36rpx;width: 36rpx;height: 36rpx; margin-right: 22rpx;"></image>
36 </view> 36 </view>
37 </view> 37 </view>
@@ -45,7 +45,7 @@ @@ -45,7 +45,7 @@
45 <view>可订桌位<text wx:if="{{tables.length>0}}"> ({{tablesLength}})</text></view> 45 <view>可订桌位<text wx:if="{{tables.length>0}}"> ({{tablesLength}})</text></view>
46 <view class="flex-rr advice-more" bindtap="selectdesk"> 46 <view class="flex-rr advice-more" bindtap="selectdesk">
47 <view style="padding-right:20rpx;" class="gray-deep-font font26r">更多</view> 47 <view style="padding-right:20rpx;" class="gray-deep-font font26r">更多</view>
48 - <image src="http://qn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image> 48 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/click.png" class="icon12-22"></image>
49 </view> 49 </view>
50 </view> 50 </view>
51 <view class="advice-desk-detail flex-rr" wx:if="{{tables.length>0}}"> 51 <view class="advice-desk-detail flex-rr" wx:if="{{tables.length>0}}">
@@ -133,7 +133,7 @@ @@ -133,7 +133,7 @@
133 style="height:100%;" wx:if="{{CustomRemarkMoreMask}}"> 133 style="height:100%;" wx:if="{{CustomRemarkMoreMask}}">
134 <view class="timePicker" catchtap="catchtap"> 134 <view class="timePicker" catchtap="catchtap">
135 <view class="flex-rr"> 135 <view class="flex-rr">
136 - <image class="close" src="http://qn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="CustomRemarkMore"></image> 136 + <image class="close" src="http://nosqn.colorcun.com/custom/lite-yd/image/add-act.png" bindtap="CustomRemarkMore"></image>
137 </view> 137 </view>
138 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;"> 138 <view class="flex-cc" style="margin-bottom: 56rpx; font-size: 30rpx;">
139 <view bindtap="calendarClose">更多标签</view> 139 <view bindtap="calendarClose">更多标签</view>
1 /* pages/book/setting/index.wxss */ 1 /* pages/book/setting/index.wxss */
2 /* 2 /*
3 -http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png  
4 -http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png 3 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png
  4 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png
5 */ 5 */
6 .header{ 6 .header{
7 background-color: #199095; 7 background-color: #199095;
@@ -45,7 +45,7 @@ http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png @@ -45,7 +45,7 @@ http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png
45 margin-left: 20rpx; 45 margin-left: 20rpx;
46 } 46 }
47 .share-but{ 47 .share-but{
48 - background-image: url("http://qn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190625162307.png"); 48 + background-image: url("http://nosqn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190625162307.png");
49 width: 52rpx; 49 width: 52rpx;
50 height: 52rpx; 50 height: 52rpx;
51 background-size: 100% 100%; 51 background-size: 100% 100%;
1 /* pages/book/setting/sms.wxss */ 1 /* pages/book/setting/sms.wxss */
2 /* 2 /*
3 -http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png  
4 -http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png 3 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png
  4 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png
5 */ 5 */
6 .header{ 6 .header{
7 height: 402rpx; 7 height: 402rpx;
@@ -44,7 +44,7 @@ http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png @@ -44,7 +44,7 @@ http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png
44 .header .info .button .icon-cz{ 44 .header .info .button .icon-cz{
45 width: 74rpx; 45 width: 74rpx;
46 height: 40rpx; 46 height: 40rpx;
47 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png"); 47 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png");
48 background-size: 100%; 48 background-size: 100%;
49 position: absolute; 49 position: absolute;
50 top:-10rpx; 50 top:-10rpx;
@@ -27,7 +27,7 @@ @@ -27,7 +27,7 @@
27 .block .icon-zk{ 27 .block .icon-zk{
28 width: 104rpx; 28 width: 104rpx;
29 height: 54rpx; 29 height: 54rpx;
30 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png"); 30 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png");
31 background-size: 100%; 31 background-size: 100%;
32 position: absolute; 32 position: absolute;
33 top:-10rpx; 33 top:-10rpx;
@@ -38,11 +38,11 @@ @@ -38,11 +38,11 @@
38 </view> 38 </view>
39 <view class="bottom-opt flex-lr"> 39 <view class="bottom-opt flex-lr">
40 <view class="bottom-opt-but flex-cc"> 40 <view class="bottom-opt-but flex-cc">
41 - <image src="http://qn.colorcun.com/custom/lite-yd/image/service.png" style="width: 40rpx;"></image> 41 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/service.png" style="width: 40rpx;"></image>
42 <service><view class="txt">电话咨询</view></service> 42 <service><view class="txt">电话咨询</view></service>
43 </view> 43 </view>
44 <view class="bottom-opt-but flex-cc" bindtap="showQuestion"> 44 <view class="bottom-opt-but flex-cc" bindtap="showQuestion">
45 - <image src="http://qn.colorcun.com/custom/lite-yd/image/question.png"></image> 45 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/question.png"></image>
46 <view class="txt">常见问题</view> 46 <view class="txt">常见问题</view>
47 </view> 47 </view>
48 </view> 48 </view>
@@ -7,7 +7,7 @@ @@ -7,7 +7,7 @@
7 </view> 7 </view>
8 </block> 8 </block>
9 <view wx:else="" class="history-is-empty flex-vc Medium"> 9 <view wx:else="" class="history-is-empty flex-vc Medium">
10 - <image src="http://qn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image> 10 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image>
11 <view>暂时还没有历史记录</view> 11 <view>暂时还没有历史记录</view>
12 </view> 12 </view>
13 <view wx:if="{{!hasMore}}" class="list-rows">已经到底了</view> 13 <view wx:if="{{!hasMore}}" class="list-rows">已经到底了</view>
  1 +// pack-book/pages/checkout/index.js
  2 +import util from '../../../utils/util';
  3 +import App from '../../../utils/api';
  4 +import RS from '../../../utils/reserveStatus';
  5 +Page({
  6 +
  7 + /**
  8 + * 页面的初始数据
  9 + */
  10 + data: {
  11 + qnConf:{
  12 + accessKey:'uva-aaonM8dukeR6phc9yuPBrOXk9brrNW_PxLD7',
  13 + secretKey:'oZMMVN6phk49lG0J1xwmi1Ju0ETT15EnAEWcU9Cs',
  14 + token:'',
  15 + bucket:'colorcun-attr',//存储空间
  16 + fileType:'image',//image|video|audio|file def:file
  17 + region:'华东',//存储区域
  18 + domain:'http://nosqn.colorcun.com',//你绑定的域名,非必填项
  19 + },
  20 + upConf:{
  21 + prefixPath:'paylist/images/', //上传到七牛后有一个路径前缀,可为空
  22 + loading:'ring',// none|leaf|circle|ring, def leaf 上传的loading效果; none为无,可自行在page wxml中添加
  23 + group:'def', //一个页面上多个组件的区分标识
  24 + security:false, // 开启非法检测,默认 false
  25 +
  26 + //上传图片
  27 + count:5, //最多可以选择的图片张数
  28 + sizeType:['compressed'], //['original', 'compressed'] 所选的图片的尺寸,超大图片 compressed 会引起开卡顿
  29 + sourceType:['album', 'camera'], //['album', 'camera'] 选择图片的来源
  30 +
  31 + },
  32 + files:[], //组件数据放入这里展示到页面上
  33 + hasAddFile:true,//出现上传加号
  34 + },
  35 +
  36 + /**
  37 + * 生命周期函数--监听页面加载
  38 + */
  39 + onLoad: function (options) {
  40 + this.options=options
  41 + this.setData({
  42 + [`upConf.prefixPath`]:'paylist/'+options.rid+'/'
  43 + })
  44 + },
  45 +
  46 + /**
  47 + * 生命周期函数--监听页面初次渲染完成
  48 + */
  49 + onReady: function () {
  50 +
  51 + },
  52 +
  53 + /**
  54 + * 生命周期函数--监听页面显示
  55 + */
  56 + onShow: function () {
  57 + this.getDetail();
  58 + },
  59 +
  60 + /**
  61 + * 生命周期函数--监听页面隐藏
  62 + */
  63 + onHide: function () {
  64 +
  65 + },
  66 +
  67 + /**
  68 + * 生命周期函数--监听页面卸载
  69 + */
  70 + onUnload: function () {
  71 +
  72 + },
  73 +
  74 + /**
  75 + * 页面相关事件处理函数--监听用户下拉动作
  76 + */
  77 + onPullDownRefresh: function () {
  78 +
  79 + },
  80 +
  81 + /**
  82 + * 页面上拉触底事件的处理函数
  83 + */
  84 + onReachBottom: function () {
  85 +
  86 + },
  87 + detail:null,
  88 + getDetail(hasCache=false){
  89 + App.Reserve.Detail({
  90 + openid: getApp().openid,
  91 + rid: this.options.rid
  92 + },hasCache).then(async res => {
  93 + this.detail=this.formatDatail(res.data)
  94 + this.detail.ddate_solt=Number(this.detail.ddate_solt);
  95 + let title=''
  96 + if(this.detail.order_info.status>1){
  97 + title='买单申请详情'
  98 + }
  99 + //debug
  100 + //this.detail.order_info.status=1
  101 + this.setData({
  102 + detail: this.detail,
  103 + title:title,
  104 + })
  105 + if(this.detail.order_info && this.detail.order_info.status==3){
  106 + App.Customer.GetOrderInfo({
  107 + rid:this.options.rid
  108 + }).then(res=>{
  109 + let discount={pt:0,se:0}
  110 + res.data.discount.forEach(q=>{
  111 + if(q.checked){
  112 + if(q.owner==1){//平台
  113 + discount.pt+=parseFloat(q.price)
  114 + }else{
  115 + discount.se+=parseFloat(q.price)
  116 + }
  117 + }
  118 + })
  119 + this.setData({
  120 + discount:{
  121 + pt:discount.pt.toFixed(2),
  122 + se:discount.se.toFixed(2),
  123 + //price:(this.detail.order_info.price-discount.se).toFixed(2)
  124 + price:(this.detail.order_info.should_price*1+discount.pt*1).toFixed(2)
  125 + }
  126 + })
  127 + })
  128 + }
  129 + })
  130 + },
  131 + formatDatail(detail) {
  132 + detail=RS.reserve(detail);
  133 + let formatDate='YYYY-MM-DD '+detail.soltName
  134 + if(detail.type==1 && detail.is_set_ddate==1){
  135 + formatDate +=' HH:II'
  136 + }
  137 + detail.rdateStr = util.unixtoTime(detail.ddate, formatDate);
  138 + detail.orderRemark='';
  139 + if(detail.order_info){
  140 + if(detail.order_info.is_wine==1 || detail.order_info.is_pack==1){
  141 + detail.orderRemark='*顾客'
  142 + let orderRemark=[]
  143 + if(detail.order_info.is_wine==1){
  144 + orderRemark.push('有酒水要退')
  145 + }
  146 + if(detail.order_info.is_pack==1){
  147 + orderRemark.push('菜品需要打包')
  148 + }
  149 + detail.orderRemark+=orderRemark.join(',')
  150 + }
  151 + }
  152 + return detail;
  153 + },
  154 + displayTables(){
  155 + if(this.data.tabs){
  156 + this.setData({
  157 + tabs:'',
  158 + })
  159 + return;
  160 + }
  161 + let tables=this.detail.tables
  162 + let tabs={}
  163 + tables.some(t=>{
  164 + if(!tabs[t.tid]){
  165 + tabs[t.tid]=t.name
  166 + }else{
  167 + tabs[t.tid]+="、"+t.name
  168 + }
  169 + })
  170 + this.setData({
  171 + tabs:tabs,
  172 + })
  173 + },
  174 + setPrice(e){
  175 + this.price=e.detail.value.replace(/[^\.\d]/g,'')
  176 + this.setData({
  177 + price:this.price
  178 + })
  179 + return this.price
  180 + },
  181 + qnevent(e){
  182 + console.log('qnevent',e.detail);
  183 + let files=e.detail.data
  184 + if(e.detail.act=='uploadFail'){
  185 + files[e.detail.fileCurrent].progress=Math.random().toFixed(2)
  186 + }
  187 + files.forEach(f=>{
  188 + if(f.progress==100){
  189 + if(!f.remote || !f.remote.url){
  190 + f.progress=(90+Math.random()*9).toFixed(2)
  191 + }
  192 + }
  193 + })
  194 + this.setData({
  195 + files:files,
  196 + hasAddFile:files.length<this.data.upConf.count
  197 + })
  198 + },
  199 + displayImage(e){
  200 + let path=util.attr(e,'path')
  201 + wx.previewImage({
  202 + urls:[path],
  203 + })
  204 + },
  205 + displayOrderImages(){
  206 + if(this.detail.order_info.bill_list.length>0){
  207 + wx.previewImage({
  208 + urls:this.detail.order_info.bill_list,
  209 + })
  210 + }
  211 + },
  212 + deleteImage(e){
  213 + let index=util.attr(e,'index')
  214 + let files=this.data.files
  215 + files.splice(index,1)
  216 + this.setData({
  217 + files:files,
  218 + hasAddFile:files.length<5
  219 + })
  220 + util.toast('图片已删除','none')
  221 + },
  222 + submit(){
  223 + this.selectComponent('#confirm-price').show(this.options.rid,this.data.files)
  224 + },
  225 + confirmPriceEvent(){
  226 + this.getDetail(true);
  227 + },
  228 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"white",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "qnupload": "plugin://vktool/qnupload",
  8 + "confirm-price":"../../components/checkout/confirm-price"
  9 + }
  10 +
  11 +}
  1 +<!--pack-book/pages/checkout/index.wxml-->
  2 +<wxs src="../../../utils/util.wxs" module="util" />
  3 +<nav hasHome backgroundColor="#199095" color="#fefefe">{{title||'提前买单'}}</nav>
  4 +<view class="pages flex-vc">
  5 + <block wx:if="{{detail.order_info.status>1}}">
  6 + <view class="block payinfo">
  7 + <view class="title flex-lr">
  8 + <view class="Medium">消费信息</view>
  9 + </view>
  10 + <view class="center">
  11 + <view class="item flex-lr">
  12 + <view class="item-label">应收金额</view>
  13 + <view class="item-value order_info-price">¥ {{detail.order_info.price}}</view>
  14 + </view>
  15 + <view class="item flex-lr" wx:if="{{detail.order_info.bill_list.length>0}}">
  16 + <view class="item-label">消费清单</view>
  17 + <view class="item-value order_info-bill_list" bindtap="displayOrderImages">查看消费清单</view>
  18 + </view>
  19 + <view class="bg-img pay-tips-icon bg-pay{{detail.order_info.status}}"></view>
  20 + </view>
  21 + </view>
  22 + <view class="block userinfo">
  23 + <view class="title flex-lr">
  24 + <view class="Medium">顾客信息</view>
  25 + <view class="orderRemark">{{detail.orderRemark}}</view>
  26 + </view>
  27 + <view class="center">
  28 + <view class="item {{tabs?'auto-height':''}}">
  29 + <view class="flex-lr" bindtap="{{detail.tables.length>1?'displayTables':''}}">
  30 + <view class="item-label">桌位信息</view>
  31 + <view class="item-value flex-rr">
  32 + <view wx:if="{{!tabs}}">【{{util.reserveTidName(detail.tables[0].tid)}}】{{detail.tables[0].name}}</view>
  33 + <view class="bg-img bg-{{tabs?'x2':'x1'}}" wx:if="{{detail.tables.length>1}}"></view>
  34 + </view>
  35 + </view>
  36 + <view class="tabs-view" wx:if="{{tabs}}">
  37 + <view class="tabs-item" wx:for="{{tabs}}" wx:key="tabs">【{{util.reserveTidName(index)}}】{{item}}</view>
  38 + </view>
  39 + </view>
  40 + <view class="item flex-lr">
  41 + <view class="item-label">买单顾客</view>
  42 + <view class="item-value">{{detail.rname}} {{util.reserveSexName(detail.sex)}}</view>
  43 + </view>
  44 + <view class="item flex-lr">
  45 + <view class="item-label">顾客电话</view>
  46 + <view class="item-value">{{detail.phone}}</view>
  47 + </view>
  48 + <view class="item flex-lr">
  49 + <view class="item-label">到店时间</view>
  50 + <view class="item-value">{{detail.rdateStr}}</view>
  51 + </view>
  52 + <view class="item flex-lr">
  53 + <view class="item-label">申请时间</view>
  54 + <view class="item-value">{{util.unixtoTime(detail.order_info.create_time,'YYYY-MM-DD HH:II')}}</view>
  55 + </view>
  56 + </view>
  57 + </view>
  58 + <view class="block payinfo" wx:if="{{detail.order_info.status==3}}">
  59 + <view class="title flex-lr">
  60 + <view class="Medium">买单信息</view>
  61 + </view>
  62 + <view class="center">
  63 + <view class="item flex-lr">
  64 + <view class="item-label">应收金额</view>
  65 + <view class="item-value">¥ {{detail.order_info.price}}</view>
  66 + </view>
  67 + <view class="item flex-lr" wx:if="{{discount.pt>0}}">
  68 + <view class="item-label">周到安排补贴</view>
  69 + <view class="item-value">¥ {{discount.pt||0}}</view>
  70 + </view>
  71 + <view class="item flex-lr" wx:if="{{discount.se>0}}">
  72 + <view class="item-label">店铺红包</view>
  73 + <view class="item-value">¥ {{discount.se||0}}</view>
  74 + </view>
  75 + <view class="item flex-lr">
  76 + <view class="item-label Medium">实收金额</view>
  77 + <view class="item-value Medium">¥ {{discount.price}}</view>
  78 + </view>
  79 + <view class="item flex-lr">
  80 + <view class="item-label">支付方式</view>
  81 + <view class="item-value">微信支付</view>
  82 + </view>
  83 + <view class="item flex-lr">
  84 + <view class="item-label">买单时间</view>
  85 + <view class="item-value">{{util.unixtoTime(detail.order_info.pay_time,'YYYY-MM-DD HH:II')}}</view>
  86 + </view>
  87 + </view>
  88 + </view>
  89 + </block>
  90 + <block wx:if="{{detail.order_info.status==1}}">
  91 + <view class="pay-image-view flex-vc">
  92 + <view class="bg-img bg-pay"></view>
  93 + <view class="pay-txt">顾客申请买单</view>
  94 + </view>
  95 + <view class="block orderinput">
  96 + <view class="center">
  97 + <view class="item {{tabs?'auto-height':''}}">
  98 + <view class="flex-lr" bindtap="{{detail.tables.length>1?'displayTables':''}}">
  99 + <view class="item-label">桌位信息</view>
  100 + <view class="item-value flex-rr">
  101 + <view wx:if="{{!tabs}}">【{{util.reserveTidName(detail.tables[0].tid)}}】{{detail.tables[0].name}}</view>
  102 + <view class="bg-img bg-{{tabs?'x2':'x1'}}" wx:if="{{detail.tables.length>1}}"></view>
  103 + </view>
  104 + </view>
  105 + <view class="tabs-view" wx:if="{{tabs}}">
  106 + <view class="tabs-item" wx:for="{{tabs}}" wx:key="tabs">【{{util.reserveTidName(index)}}】{{item}}</view>
  107 + </view>
  108 + </view>
  109 + <view class="item flex-lr">
  110 + <view class="item-label">应收金额</view>
  111 + <view class="item-value flex-rr" style="position: relative">
  112 +
  113 + <input class="item-value-input" style="width: 300rpx;"
  114 + bindinput="setPrice" type="digit" maxlength="8"
  115 + placeholder-style="font-size:32rpx" placeholder="点击填写金额"/>
  116 + <view wx:if="{{price}}"
  117 + style="right:{{price.length*25}}rpx;"
  118 + class="item-value-input hasPrice">¥</view>
  119 + </view>
  120 + </view>
  121 + </view>
  122 + </view>
  123 + <view class="orderRemark orderRemark-view" wx:if="{{detail.orderRemark}}">{{detail.orderRemark}}</view>
  124 + <view class="block orderimage">
  125 + <view class="title flex-lr">
  126 + <view>消费清单(选填)</view>
  127 + </view>
  128 + <view class="center">
  129 + <block wx:for="{{files}}" wx:key="fileskey">
  130 + <qnupload qnConf="{{qnConf}}" upConf="{{upConf}}"
  131 + file="{{item}}" files="{{files}}"
  132 + bindevent="qnevent" class="qnupload">
  133 + <view class="upload flex-vc uploaded"
  134 + catchtap="displayImage" data-path="{{item.path}}">
  135 + <image class="image" src="{{item.path}}"></image>
  136 + <view class="bg-add bg-img" style="background-image: none"></view>
  137 + <view class="upload-txt"></view>
  138 + <view class="image-delete flex-vc" catchtap="deleteImage" data-index="{{index}}">
  139 + <view class="bg-img bg-c2"></view>
  140 + </view>
  141 + </view>
  142 + </qnupload>
  143 + </block>
  144 + <qnupload wx:if="{{hasAddFile}}"
  145 + qnConf="{{qnConf}}" upConf="{{upConf}}"
  146 + file="{{item}}" files="{{files}}"
  147 + bindevent="qnevent" class="qnupload">
  148 + <view class="upload flex-vc">
  149 + <view class="bg-add bg-img"></view>
  150 + <view class="upload-txt">添加图片</view>
  151 + </view>
  152 + </qnupload>
  153 + </view>
  154 + </view>
  155 + <view class="block userinfo">
  156 + <view class="title flex-lr">
  157 + <view>顾客信息</view>
  158 + </view>
  159 + <view class="center">
  160 + <view class="item flex-lr">
  161 + <view class="item-label">买单顾客</view>
  162 + <view class="item-value">{{detail.rname}} {{util.reserveSexName(detail.sex)}}</view>
  163 + </view>
  164 + <view class="item flex-lr">
  165 + <view class="item-label">顾客电话</view>
  166 + <view class="item-value">{{detail.phone}}</view>
  167 + </view>
  168 + <view class="item flex-lr">
  169 + <view class="item-label">到店时间</view>
  170 + <view class="item-value">{{detail.rdateStr}}</view>
  171 + </view>
  172 + <view class="item flex-lr">
  173 + <view class="item-label">申请时间</view>
  174 + <view class="item-value">{{util.unixtoTime(detail.order_info.create_time,'YYYY-MM-DD HH:II')}}</view>
  175 + </view>
  176 + </view>
  177 + </view>
  178 + <view style="height:150rpx;width:100%;"> </view>
  179 + <view class="submit {{price?'active':''}}" bindtap="submit">发送给顾客</view>
  180 + <confirm-price id="confirm-price" price="{{price}}" bindevent="confirmPriceEvent"></confirm-price>
  181 + </block>
  182 +</view>
  1 +/* pack-book/pages/checkout/index.wxss */
  2 +page{
  3 + background:rgba(245,245,245,1);
  4 +}
  5 +.bg-img{
  6 + background-image: url("http://nosqn.colorcun.com/checkout/images/css_sprites.png");
  7 + zoom: 33.5%;
  8 +}
  9 +.bg-add {
  10 + width: 48px; height: 48px;
  11 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -141px -111px;
  12 +}
  13 +.bg-x2 {
  14 + width: 42px; height: 24px;
  15 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -265px -111px;
  16 +}
  17 +.bg-x1 {
  18 + width: 42px; height: 24px;
  19 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -141px -179px;
  20 + margin-left: 20rpx;
  21 +}
  22 +.bg-pay3 {
  23 + width: 165px; height: 81px;
  24 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -10px;
  25 +}
  26 +.bg-pay2 {
  27 + width: 165px; height: 81px;
  28 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -195px -10px;
  29 +}
  30 +.bg-pay {
  31 + width: 111px; height: 99px;
  32 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -111px;
  33 +}
  34 +.bg-c2 {
  35 + width: 30px; height: 30px;
  36 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -230px;
  37 +}
  38 +
  39 +.pay-image-view{
  40 + margin-top: 40rpx;
  41 +}
  42 +.pay-txt{
  43 + margin-top: 12rpx;
  44 + height:44rpx;
  45 + font-size:32rpx;
  46 + font-weight:500;
  47 + color:rgba(53,53,53,1);
  48 + line-height:44rpx;
  49 +}
  50 +.block{
  51 + background:rgba(250,250,250,1);
  52 + border-radius:10rpx;
  53 + width: calc(100% - 40rpx);
  54 + margin-top: 20rpx;
  55 +}
  56 +.block .title{
  57 + height: 116rpx;
  58 + line-height: 116rpx;
  59 + font-size:32rpx;
  60 + font-weight:500;
  61 + color:rgba(53,53,53,1);
  62 + padding: 0 20rpx;
  63 + box-sizing: border-box;
  64 +}
  65 +.orderRemark{
  66 + font-size:28rpx;
  67 + font-weight:500;
  68 + color:rgba(253,86,86,1);
  69 +}
  70 +.orderRemark-view{
  71 + width: calc(100% - 40rpx);
  72 + height:40rpx;
  73 + line-height:40rpx;
  74 + margin: 10rpx auto;
  75 + font-weight:500;
  76 +}
  77 +.block .center{
  78 + padding: 0 40rpx 36rpx;
  79 + background:rgba(255,255,255,1);
  80 + box-sizing: border-box;
  81 + position: relative;
  82 +}
  83 +.center .item{
  84 + padding-top: 24rpx;
  85 + height:40rpx;
  86 + font-size:28rpx;
  87 + font-weight:400;
  88 + color:rgba(112,112,112,1);
  89 + line-height:40rpx;
  90 +}
  91 +.item-value{
  92 + font-weight:500;
  93 + color:rgba(53,53,53,1);
  94 +}
  95 +.payinfo .item-value{
  96 + font-weight:400;
  97 +}
  98 +.pay-tips-icon{
  99 + position: absolute;
  100 + top:calc(50% - 84rpx);
  101 + left:calc(50% - 111rpx);
  102 +}
  103 +.order_info-price{
  104 + font-size:32rpx;
  105 + font-weight:500;
  106 + color:rgba(53,53,53,1);
  107 +}
  108 +.order_info-bill_list{
  109 + font-size:24rpx;
  110 + font-weight:500;
  111 + color:rgba(36,164,168,1);
  112 + height:34rpx;
  113 + line-height: 34rpx;
  114 + border-bottom: 2rpx solid #24A4A8;
  115 +}
  116 +
  117 +.orderinput{
  118 + margin-top: 40rpx;
  119 +}
  120 +.orderinput .center{
  121 + padding-bottom: 0;
  122 +}
  123 +.orderinput .item{
  124 + font-size:32rpx;
  125 + font-weight:400;
  126 + height: 116rpx;
  127 + line-height: 116rpx;
  128 + box-sizing: border-box;
  129 + border-bottom: 2rpx solid rgba(238,238,238,1);
  130 + padding-top: 0;
  131 +}
  132 +.orderinput .auto-height,.userinfo .auto-height{
  133 + height: auto;
  134 +}
  135 +.orderinput .item:last-child{
  136 + border-bottom-width: 0;
  137 +}
  138 +.item-value-input{
  139 + text-align: right;
  140 + font-size:44rpx;
  141 + font-weight:500;
  142 + color:rgba(53,53,53,1);
  143 +}
  144 +.tabs-view{
  145 + font-size:32rpx;
  146 + font-weight:400;
  147 + color:rgba(53,53,53,1);
  148 + padding: 0 20rpx 36rpx;
  149 +}
  150 +.tabs-item{
  151 + line-height: 44rpx;
  152 +}
  153 +.userinfo .tabs-view{
  154 + font-size:28rpx;
  155 + font-family:PingFangSC-Medium,PingFang SC;
  156 + font-weight:500;
  157 + padding: 24rpx 20rpx 0;
  158 +}
  159 +.userinfo .tabs-item{
  160 + line-height:40rpx;
  161 +}
  162 +.hasPrice{
  163 + position: absolute;
  164 + top:0;
  165 + right:30rpx;
  166 + height: 44rpx;
  167 + line-height: 44rpx;
  168 +}
  169 +.orderimage .center{
  170 + padding: 40rpx 0 36rpx 56rpx;
  171 +}
  172 +.submit{
  173 + width:calc(100% - 72rpx);
  174 + height:84rpx;
  175 + background:rgba(116,187,190,1);
  176 + border-radius:10rpx;
  177 + position: fixed;
  178 + left: 36rpx;
  179 + bottom: 40rpx;
  180 + font-size:34rpx;
  181 + font-weight:500;
  182 + color:rgba(254,254,254,1);
  183 + line-height:84rpx;
  184 + text-align: center;
  185 +}
  186 +.submit.active{
  187 + background:rgba(25,144,149,1);
  188 +}
  189 +@import "upload.wxss";
  1 +// pack-book/pages/checkout/index.js
  2 +import util from '../../../utils/util';
  3 +import App from '../../../utils/api';
  4 +import RS from '../../../utils/reserveStatus';
  5 +Page({
  6 +
  7 + /**
  8 + * 页面的初始数据
  9 + */
  10 + data: {
  11 +
  12 + },
  13 +
  14 + /**
  15 + * 生命周期函数--监听页面加载
  16 + */
  17 + onLoad: function (options) {
  18 + this.options=options
  19 + },
  20 +
  21 + /**
  22 + * 生命周期函数--监听页面初次渲染完成
  23 + */
  24 + onReady: function () {
  25 +
  26 + },
  27 +
  28 + /**
  29 + * 生命周期函数--监听页面显示
  30 + */
  31 + onShow: function () {
  32 + this.getDetail();
  33 + },
  34 +
  35 + /**
  36 + * 生命周期函数--监听页面隐藏
  37 + */
  38 + onHide: function () {
  39 +
  40 + },
  41 +
  42 + /**
  43 + * 生命周期函数--监听页面卸载
  44 + */
  45 + onUnload: function () {
  46 +
  47 + },
  48 +
  49 + /**
  50 + * 页面相关事件处理函数--监听用户下拉动作
  51 + */
  52 + onPullDownRefresh: function () {
  53 +
  54 + },
  55 +
  56 + /**
  57 + * 页面上拉触底事件的处理函数
  58 + */
  59 + onReachBottom: function () {
  60 +
  61 + },
  62 + detail:null,
  63 + getDetail(hasCache=false){
  64 + App.Reserve.Detail({
  65 + openid: getApp().openid,
  66 + rid: this.options.rid
  67 + },hasCache).then(async res => {
  68 + this.detail=this.formatDatail(res.data)
  69 + this.detail.ddate_solt=Number(this.detail.ddate_solt);
  70 + let title=''
  71 + if(this.detail.order_info.status>1){
  72 + title='买单申请详情'
  73 + }
  74 + this.setData({
  75 + detail: this.detail,
  76 + title:title,
  77 + })
  78 + })
  79 + },
  80 + formatDatail(detail) {
  81 + detail=RS.reserve(detail);
  82 + let formatDate='YYYY-MM-DD '+detail.soltName
  83 + if(detail.type==1 && detail.is_set_ddate==1){
  84 + formatDate +=' HH:II'
  85 + }
  86 + detail.rdateStr = util.unixtoTime(detail.ddate, formatDate);
  87 + detail.orderRemark='';
  88 + if(detail.order_info){
  89 + if(detail.order_info.is_wine==1 || detail.order_info.is_pack==1){
  90 + detail.orderRemark='*顾客'
  91 + let orderRemark=[]
  92 + if(detail.order_info.is_wine==1){
  93 + orderRemark.push('有酒水要退')
  94 + }
  95 + if(detail.order_info.is_pack==1){
  96 + orderRemark.push('菜品需要打包')
  97 + }
  98 + detail.orderRemark+=orderRemark.join(',')
  99 + }
  100 + }
  101 + return detail;
  102 + },
  103 + displayTables(){
  104 + if(this.data.tabs){
  105 + this.setData({
  106 + tabs:'',
  107 + })
  108 + return;
  109 + }
  110 + let tables=this.detail.tables
  111 + let tabs={}
  112 + tables.some(t=>{
  113 + if(!tabs[t.tid]){
  114 + tabs[t.tid]=t.name
  115 + }else{
  116 + tabs[t.tid]+="、"+t.name
  117 + }
  118 + })
  119 + this.setData({
  120 + tabs:tabs,
  121 + })
  122 + },
  123 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"white",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "qnupload": "plugin://vktool/qnupload",
  8 + "confirm-price":"../../components/checkout/confirm-price"
  9 + }
  10 +
  11 +}
  1 +<!--pack-book/pages/checkout/index.wxml-->
  2 +<wxs src="../../../utils/util.wxs" module="util" />
  3 +<nav hasHome backgroundColor="#199095" color="#fefefe">发票详情</nav>
  4 +<view class="pages flex-vc">
  5 + <view class="block userinfo">
  6 + <view class="center">
  7 + <view class="item {{tabs?'auto-height':''}}">
  8 + <view class="flex-lr" bindtap="{{detail.tables.length>1?'displayTables':''}}">
  9 + <view class="item-label">桌位信息</view>
  10 + <view class="item-value flex-rr">
  11 + <view wx:if="{{!tabs}}">【{{util.reserveTidName(detail.tables[0].tid)}}】{{detail.tables[0].name}}</view>
  12 + <view class="bg-img bg-{{tabs?'x2':'x1'}}" wx:if="{{detail.tables.length>1}}"></view>
  13 + </view>
  14 + </view>
  15 + <view class="tabs-view" wx:if="{{tabs}}">
  16 + <view class="tabs-item" wx:for="{{tabs}}" wx:key="tabs">【{{util.reserveTidName(index)}}】{{item}}</view>
  17 + </view>
  18 + </view>
  19 + </view>
  20 + </view>
  21 + <view class="block invoice">
  22 + <view class="title flex-lr">
  23 + <view class="Medium">发票信息</view>
  24 + </view>
  25 + <view class="center">
  26 + <view class="item flex-lr" style="align-items:flex-start">
  27 + <view class="item-label">名称</view>
  28 + <view class="item-value Medium">{{detail.invoice.title}}</view>
  29 + </view>
  30 + <view class="item flex-lr" wx:if="{{detail.invoice.taxnumber}}">
  31 + <view class="item-label">税号</view>
  32 + <view class="item-value Medium">{{detail.invoice.taxnumber}}</view>
  33 + </view>
  34 + <view class="item flex-lr" wx:if="{{detail.invoice.companyaddress}}"
  35 + style="align-items:flex-start" >
  36 + <view class="item-label">单位地址</view>
  37 + <view class="item-value">{{detail.invoice.companyaddress}}</view>
  38 + </view>
  39 + <view class="item flex-lr" wx:if="{{detail.invoice.telephone}}">
  40 + <view class="item-label">电话号码</view>
  41 + <view class="item-value">{{detail.invoice.telephone}}</view>
  42 + </view>
  43 + <view class="item flex-lr" wx:if="{{detail.invoice.bankname}}"
  44 + style="align-items:flex-start">
  45 + <view class="item-label">开户银行</view>
  46 + <view class="item-value">{{detail.invoice.bankname}}</view>
  47 + </view>
  48 + <view class="item flex-lr" wx:if="{{detail.invoice.bankaccount}}">
  49 + <view class="item-label">银行账户</view>
  50 + <view class="item-value">{{detail.invoice.bankaccount}}</view>
  51 + </view>
  52 + </view>
  53 + </view>
  54 + <view class="block userinfo">
  55 + <view class="title flex-lr">
  56 + <view class="Medium">顾客信息</view>
  57 + </view>
  58 + <view class="center">
  59 + <view class="item flex-lr">
  60 + <view class="item-label">买单顾客</view>
  61 + <view class="item-value">{{detail.rname}} {{util.reserveSexName(detail.sex)}}</view>
  62 + </view>
  63 + <view class="item flex-lr">
  64 + <view class="item-label">顾客电话</view>
  65 + <view class="item-value">{{detail.phone}}</view>
  66 + </view>
  67 + <view class="item flex-lr">
  68 + <view class="item-label">到店时间</view>
  69 + <view class="item-value">{{detail.rdateStr}}</view>
  70 + </view>
  71 + <view class="item flex-lr">
  72 + <view class="item-label">申请时间</view>
  73 + <view class="item-value">{{util.unixtoTime(detail.order_info.create_time,'YYYY-MM-DD HH:II')}}</view>
  74 + </view>
  75 + </view>
  76 + </view>
  77 +</view>
  1 +/* pack-book/pages/checkout/index.wxss */
  2 +page{
  3 + background:rgba(245,245,245,1);
  4 +}
  5 +.bg-img{
  6 + background-image: url("http://nosqn.colorcun.com/checkout/images/css_sprites.png");
  7 + zoom: 33.5%;
  8 +}
  9 +.bg-add {
  10 + width: 48px; height: 48px;
  11 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -141px -111px;
  12 +}
  13 +.bg-x2 {
  14 + width: 42px; height: 24px;
  15 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -265px -111px;
  16 +}
  17 +.bg-x1 {
  18 + width: 42px; height: 24px;
  19 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -141px -179px;
  20 + margin-left: 20rpx;
  21 +}
  22 +.bg-pay3 {
  23 + width: 165px; height: 81px;
  24 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -10px;
  25 +}
  26 +.bg-pay2 {
  27 + width: 165px; height: 81px;
  28 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -195px -10px;
  29 +}
  30 +.bg-pay {
  31 + width: 111px; height: 99px;
  32 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -111px;
  33 +}
  34 +.bg-c2 {
  35 + width: 30px; height: 30px;
  36 + background: url('http://nosqn.colorcun.com/checkout/images/css_sprites.png') -10px -230px;
  37 +}
  38 +
  39 +.pay-image-view{
  40 + margin-top: 40rpx;
  41 +}
  42 +.pay-txt{
  43 + margin-top: 12rpx;
  44 + height:44rpx;
  45 + font-size:32rpx;
  46 + font-weight:500;
  47 + color:rgba(53,53,53,1);
  48 + line-height:44rpx;
  49 +}
  50 +.block{
  51 + background:rgba(250,250,250,1);
  52 + border-radius:10rpx;
  53 + width: calc(100% - 40rpx);
  54 + margin-top: 20rpx;
  55 +}
  56 +.block .title{
  57 + height: 116rpx;
  58 + line-height: 116rpx;
  59 + font-size:32rpx;
  60 + font-weight:500;
  61 + color:rgba(53,53,53,1);
  62 + padding: 0 20rpx;
  63 + box-sizing: border-box;
  64 +}
  65 +.orderRemark{
  66 + font-size:28rpx;
  67 + font-weight:500;
  68 + color:rgba(253,86,86,1);
  69 +}
  70 +.orderRemark-view{
  71 + width: calc(100% - 40rpx);
  72 + height:40rpx;
  73 + line-height:40rpx;
  74 + margin: 10rpx auto;
  75 + font-weight:500;
  76 +}
  77 +.block .center{
  78 + padding: 0 40rpx 36rpx;
  79 + background:rgba(255,255,255,1);
  80 + box-sizing: border-box;
  81 + position: relative;
  82 +}
  83 +.center .item{
  84 + padding-top: 24rpx;
  85 + font-size:28rpx;
  86 + font-weight:400;
  87 + color:rgba(112,112,112,1);
  88 +}
  89 +.item-label{
  90 + min-width: 150rpx;
  91 +}
  92 +.item-value{
  93 + font-weight:500;
  94 + color:rgba(53,53,53,1);
  95 + text-align: right;
  96 +}
  97 +.invoice .item-value{
  98 + font-size:28rpx;
  99 + font-family:PingFangSC-Regular,PingFang SC;
  100 + font-weight:400;
  101 + color:rgba(112,112,112,1);
  102 + line-height:40rpx;
  103 +}
  104 +.invoice .item-value.Medium{
  105 + font-family:PingFangSC-Medium,PingFang SC;
  106 + font-weight:500;
  107 + color:rgba(53,53,53,1);
  108 +}
  109 +.pay-tips-icon{
  110 + position: absolute;
  111 + top:calc(50% - 84rpx);
  112 + left:calc(50% - 111rpx);
  113 +}
  114 +.order_info-price{
  115 + font-size:32rpx;
  116 + font-weight:500;
  117 + color:rgba(53,53,53,1);
  118 +}
  119 +.order_info-bill_list{
  120 + font-size:24rpx;
  121 + font-weight:500;
  122 + color:rgba(36,164,168,1);
  123 + height:34rpx;
  124 + line-height: 34rpx;
  125 + border-bottom: 2rpx solid #24A4A8;
  126 +}
  127 +
  128 +.orderinput{
  129 + margin-top: 40rpx;
  130 +}
  131 +.orderinput .center{
  132 + padding-bottom: 0;
  133 +}
  134 +.orderinput .item{
  135 + font-size:32rpx;
  136 + font-weight:400;
  137 + height: 116rpx;
  138 + line-height: 116rpx;
  139 + box-sizing: border-box;
  140 + border-bottom: 2rpx solid rgba(238,238,238,1);
  141 + padding-top: 0;
  142 +}
  143 +.orderinput .auto-height,.userinfo .auto-height{
  144 + height: auto;
  145 +}
  146 +.orderinput .item:last-child{
  147 + border-bottom-width: 0;
  148 +}
  149 +.item-value-input{
  150 + text-align: right;
  151 + font-size:44rpx;
  152 + font-weight:500;
  153 + color:rgba(53,53,53,1);
  154 +}
  155 +.tabs-view{
  156 + font-size:32rpx;
  157 + font-weight:400;
  158 + color:rgba(53,53,53,1);
  159 + padding: 0 20rpx 36rpx;
  160 +}
  161 +.tabs-item{
  162 + line-height: 44rpx;
  163 +}
  164 +.userinfo .tabs-view{
  165 + font-size:28rpx;
  166 + font-family:PingFangSC-Medium,PingFang SC;
  167 + font-weight:500;
  168 + padding: 24rpx 20rpx 0;
  169 +}
  170 +.userinfo .tabs-item{
  171 + line-height:40rpx;
  172 +}
  173 +.hasPrice{
  174 + position: absolute;
  175 + top:0;
  176 + right:30rpx;
  177 + height: 44rpx;
  178 + line-height: 44rpx;
  179 +}
  180 +.orderimage .center{
  181 + padding: 40rpx 0 36rpx 56rpx;
  182 +}
  1 +.qnupload{
  2 + display: inline-block;
  3 + width: 180rpx;
  4 + height: 180rpx;
  5 + margin-right: 30rpx;
  6 + margin-bottom: 30rpx;
  7 +}
  8 +.upload{
  9 + border: 2px #E0E0E0 dashed ;
  10 + box-sizing: border-box;
  11 + position: relative;
  12 + width: 180rpx;
  13 + height: 180rpx;
  14 +}
  15 +.upload .image{
  16 + width: 180rpx;
  17 + height: 180rpx;
  18 + position: absolute;
  19 + top:0;
  20 + left: 0;
  21 +}
  22 +.uploaded{
  23 + border-width: 0;
  24 +}
  25 +.upload-txt{
  26 + height:34rpx;
  27 + font-size:24rpx;
  28 + font-family:PingFangSC-Medium,PingFang SC;
  29 + font-weight:500;
  30 + color:rgba(153,153,153,1);
  31 + line-height:34rpx;
  32 + margin-top: 10rpx;
  33 +}
  34 +.image-delete{
  35 + right: 0;
  36 + top:0;
  37 + position: absolute;
  38 + width:40rpx;
  39 + height:40rpx;
  40 + background:rgba(13,13,13,0.5);
  41 +}
  1 +// pack-checkout/components/discount.js
  2 +import util from '../../utils/util'
  3 +import App from '../../utils/api'
  4 +Component({
  5 + /**
  6 + * 组件的属性列表
  7 + */
  8 + properties: {
  9 + checkout:Object,
  10 + },
  11 +
  12 + /**
  13 + * 组件的初始数据
  14 + */
  15 + data: {
  16 + checkedNum:0,
  17 + display:false,
  18 + checkoutObj:null,
  19 + },
  20 + observers: {
  21 + 'checkout': function(checkout) {
  22 + this.discountFormat(checkout)
  23 + }
  24 + },
  25 + /**
  26 + * 组件的方法列表
  27 + */
  28 + methods: {
  29 + show(){
  30 + this.setData({
  31 + display:true,
  32 + })
  33 + },
  34 + hide(){
  35 + this.triggerEvent('event',{act:'reflush'});
  36 + setTimeout(()=>{
  37 + this.setData({
  38 + display:false,
  39 + })
  40 + },0)
  41 + },
  42 + discountFormat(checkout){
  43 + if(!checkout) return;
  44 + let num=0;
  45 + let disObj={}
  46 + let subsidy_price=0;
  47 + checkout.discount.forEach(q=>{
  48 + q.disabled=false
  49 + if(q.checked){
  50 + num++;
  51 + disObj[q.owner+'-'+q.receive_condition]=true
  52 + subsidy_price+=q.price/1
  53 + }
  54 + })
  55 + checkout.discount.forEach(q=>{
  56 + if(!q.checked && disObj[q.owner+'-'+q.receive_condition]){
  57 + q.disabled=true
  58 + }
  59 + })
  60 + checkout.subsidy_price=subsidy_price
  61 + this.setData({
  62 + checkedNum:num,
  63 + checkoutObj:checkout
  64 + })
  65 + console.log('discountFormat',checkout)
  66 + },
  67 + discountChecked(e) {
  68 + console.log('discountChecked', e)
  69 + let index = util.attr(e, 'index')
  70 + let checkout = this.data.checkout
  71 + if(checkout.discount[index].disabled) return false;
  72 + checkout.discount[index].checked = !checkout.discount[index].checked
  73 + this.discountFormat(checkout)
  74 + App.Customer.ChangeDiscountCombination({
  75 + id:checkout.id,
  76 + rel_id:checkout.discount[index].rel_id,
  77 + owner:checkout.discount[index].owner,
  78 + status:checkout.discount[index].checked?1:0,
  79 + }).then(()=>{
  80 + //this.triggerEvent('event',{act:'reflush'});
  81 + })
  82 + },
  83 + }
  84 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {
  4 + "quan":"/components/reserve/seller/quan"
  5 + }
  6 +}
  1 +<!--pack-checkout/components/discount.wxml-->
  2 +<view class="mask" wx:if="{{display}}">
  3 + <view class="discount" catchtap="catchtap">
  4 + <view class="header flex-lr" bindtap="hide">
  5 + <view class=""></view>
  6 + <view class="title">红包</view>
  7 + <view class="close"></view>
  8 + </view>
  9 + <view class="tips">红包均为一次使用,不找零、不兑现,每次买单抵扣不超过消费总额</view>
  10 + <view class="content">
  11 + <view class="msg flex-ll">
  12 + 你选中了<text class="light">{{checkedNum}}</text>个红包,共可抵扣<text class="light">¥{{checkoutObj.subsidy_price}}</text>
  13 + </view>
  14 + <view class="list">
  15 + <view class="quan" wx:for="{{checkoutObj.discount}}" wx:key="discount">
  16 + <quan quan="{{item}}" cla="{{item.disabled?'quan-disabled':''}}">
  17 + <radio data-index="{{index}}"
  18 + disabled="{{item.disabled}}"
  19 + checked="{{item.checked}}" color="#F05522"
  20 + bindtap="discountChecked"/>
  21 + </quan>
  22 + </view>
  23 +
  24 + </view>
  25 + </view>
  26 + </view>
  27 +</view>
  1 +/* pack-checkout/components/discount.wxss */
  2 +@import "/app.wxss";
  3 +.discount{
  4 + width:100%;
  5 + background:rgba(255,255,255,1);
  6 + border-radius:40rpx 40rpx 0rpx 0rpx;
  7 + position: fixed;
  8 + bottom: 0;
  9 + left: 0;
  10 + padding-bottom: 40rpx;
  11 + padding-top: 20rpx;
  12 +}
  13 +.list{
  14 + max-height:930rpx;
  15 + overflow-y: auto;
  16 + box-sizing: border-box;
  17 +}
  18 +.header{
  19 + height:88rpx;
  20 + padding: 0 42rpx;
  21 +}
  22 +.title{
  23 + font-size:32rpx;
  24 + font-family:PingFangSC-Medium,PingFang SC;
  25 + font-weight:500;
  26 + color:rgba(53,53,53,1);
  27 + line-height:88rpx;
  28 +}
  29 +.close{
  30 + width:28rpx;
  31 + height:29rpx;
  32 + background-size: 100% 100%;
  33 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/close.png");
  34 +}
  35 +.tips{
  36 + height:50rpx;
  37 + background:rgba(255,222,185,0.5);
  38 + font-size:24rpx;
  39 + font-family:PingFangSC-Regular,PingFang SC;
  40 + font-weight:400;
  41 + color:rgba(240,85,34,1);
  42 + line-height:50rpx;
  43 + padding-left: 16rpx;
  44 +}
  45 +.content{
  46 + padding: 30rpx 40rpx 0;
  47 +}
  48 +.msg{
  49 + height:40rpx;
  50 + font-size:28rpx;
  51 + font-family:PingFangSC-Regular,PingFang SC;
  52 + font-weight:400;
  53 + color:rgba(53,53,53,1);
  54 + line-height:40rpx;
  55 +}
  56 +.light{
  57 + color:#F05522;
  58 +}
  59 +.quan{
  60 + margin-top: 20rpx;
  61 +}
  1 +// pack-checkout/components/jinduBar.js
  2 +Component({
  3 + /**
  4 + * 组件的属性列表
  5 + */
  6 + properties: {
  7 + checkout:Object,
  8 + },
  9 +
  10 + /**
  11 + * 组件的初始数据
  12 + */
  13 + data: {
  14 + steps:[
  15 + {number:1,txt:'获取消费金额'},
  16 + {number:2,txt:'商家反馈消费金额'},
  17 + {number:3,txt:'提前买单'},
  18 + ],
  19 + },
  20 +
  21 + /**
  22 + * 组件的方法列表
  23 + */
  24 + methods: {
  25 +
  26 + }
  27 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {}
  4 +}
  1 +<!--pack-checkout/components/jinduBar.wxml-->
  2 +<view class="jindu-view">
  3 + <view class="tips-info">3步轻松买单</view>
  4 + <view class="top flex-lr">
  5 + <view class="top-icon flex-vc {{index==0 || checkout.status>=index?'active':''}}" wx:for="{{steps}}" wx:key="key">
  6 + <view class="top-icon-txt flex-vc">{{item.number}}</view>
  7 + </view>
  8 + </view>
  9 + <view class="bottom flex-lr">
  10 + <view class="bottom-txt {{checkout.status>=index?'active':''}}" wx:for="{{steps}}" wx:key="key">{{item.txt}}</view>
  11 + </view>
  12 +</view>
  1 +/* pack-checkout/components/jinduBar.wxss */
  2 +@import "/app.wxss";
  3 +.jindu-view{
  4 + padding-top: 90rpx;
  5 + padding-bottom: 36rpx;
  6 + position: relative;
  7 +}
  8 +.tips-info{
  9 + width:238rpx;
  10 + height:50rpx;
  11 + position: absolute;
  12 + top:-4rpx;
  13 + left:calc(50% - 129rpx);
  14 +
  15 + font-size:28rpx;
  16 + font-weight:500;
  17 + color:rgba(255,255,255,1);
  18 + line-height:50rpx;
  19 + text-align: center;
  20 +
  21 + background-size: 100% 100%;
  22 + background-image: url("http://nosqn.colorcun.com/checkout/images/4.png");
  23 +}
  24 +.top{
  25 + height:50rpx;
  26 + position: relative;
  27 +}
  28 +.top:before{
  29 + display: block;
  30 + position: absolute;
  31 + height: 2rpx;
  32 + background-color: #E0E0E0;
  33 + top:25rpx;
  34 + left:0;
  35 + width: 100%;
  36 + content: "";
  37 +}
  38 +.top-icon{
  39 + width: 130rpx;
  40 + background-color: #fff;
  41 + position: relative;
  42 +
  43 +}
  44 +.top-icon-txt{
  45 + width:50rpx;
  46 + height:50rpx;
  47 +
  48 + border-radius:10rpx;
  49 + background:rgba(153,153,153,1);
  50 + font-size:28rpx;
  51 + font-weight:500;
  52 + color:rgba(255,255,255,1);
  53 +}
  54 +.active .top-icon-txt{
  55 + background:linear-gradient(180deg,rgba(227,191,131,1) 0%,rgba(211,157,92,1) 100%);
  56 + box-shadow:2rpx 2rpx 4rpx 0rpx rgba(179,124,54,1);
  57 +}
  58 +.bottom{
  59 + margin-top: 24rpx;
  60 + height: 40rpx;
  61 + font-size:28rpx;
  62 + font-weight:500;
  63 + color:rgba(153,153,153,1);
  64 + line-height:40rpx;
  65 +}
  66 +.bottom-txt{
  67 + text-align: center;
  68 +}
  69 +.bottom-txt:first-child{
  70 + text-align: left;
  71 +}
  72 +.bottom-txt:last-child{
  73 + text-align: right;
  74 +}
  75 +.bottom-txt.active{
  76 + color:rgba(38,38,40,1);
  77 +}
  1 +// pack-checkout/components/xfCard.js
  2 +import App from '../../utils/api'
  3 +Component({
  4 + /**
  5 + * 组件的属性列表
  6 + */
  7 + properties: {
  8 + checkout:Object,
  9 + },
  10 +
  11 + /**
  12 + * 组件的初始数据
  13 + */
  14 + data: {
  15 + display:false,
  16 + },
  17 +
  18 + /**
  19 + * 组件的方法列表
  20 + */
  21 + methods: {
  22 + show(){
  23 + App.Customer.SetCardRel({
  24 + sid:this.data.checkout.sid,
  25 + //price:1,
  26 + rid:this.data.checkout.rid,
  27 + oid:this.data.checkout.id,
  28 + price:this.data.checkout.should_price,
  29 + receive_type:4,//任务领取
  30 + }).then(res=>{
  31 + if(res.data){
  32 + this.setData({
  33 + card:res.data,
  34 + display:true,
  35 + })
  36 + }
  37 + this.triggerEvent('event')
  38 + })
  39 + },
  40 + hide(){
  41 + this.setData({
  42 + display:false,
  43 + })
  44 + },
  45 + }
  46 +})
  1 +{
  2 + "component": true,
  3 + "usingComponents": {}
  4 +}
  1 +<!--pack-checkout/components/xfCard.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<view class="mask flex-vc" wx:if="{{display}}">
  4 + <view class="card" style="text-align: center;">
  5 + <view class="close" bindtap="hide"></view>
  6 + <view class="title">买单返利</view>
  7 + <view class="name">{{checkout.sellername}}</view>
  8 + <view class="tip">送您红包</view>
  9 + <view class="money flex-cc" style="align-items: flex-end;">
  10 + <view class="Semibold">{{util.toFixed(card.price,0)}}</view>
  11 + <view class="dot">元</view>
  12 + </view>
  13 + <view class="button" bindtap="hide">知道了</view>
  14 + </view>
  15 +</view>
  1 +/* pack-checkout/components/xfCard.wxss */
  2 +@import "/app.wxss";
  3 +.card{
  4 + width: 602rpx;
  5 + height: 686rpx;
  6 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/baobao2.png");
  7 + background-size: 100% 100%;
  8 + position: relative;
  9 +}
  10 +.close{
  11 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/close2.png");
  12 + background-size: 100% 100%;
  13 + width:48rpx;
  14 + height:48rpx;
  15 + position: absolute;
  16 + top:-36rpx;
  17 + right:-26rpx;
  18 +}
  19 +.title{
  20 + height:40rpx;
  21 + font-size:28rpx;
  22 + font-family:PingFangSC-Medium,PingFang SC;
  23 + font-weight:500;
  24 + color:rgba(255,255,255,1);
  25 + line-height:40rpx;
  26 + margin-top: 128rpx;
  27 +}
  28 +.name{
  29 + height:44rpx;
  30 + font-size:32rpx;
  31 + font-family:PingFangSC-Regular,PingFang SC;
  32 + font-weight:400;
  33 + color:rgba(187,113,50,1);
  34 + line-height:44rpx;
  35 + letter-spacing:1rpx;
  36 + overflow: hidden;
  37 + text-overflow:ellipsis;
  38 + white-space: nowrap;
  39 + width: 250rpx;
  40 + margin: 36rpx auto 0;
  41 +}
  42 +.tip{
  43 + height:40rpx;
  44 + font-size:28rpx;
  45 + font-family:PingFangSC-Regular,PingFang SC;
  46 + font-weight:400;
  47 + color:rgba(187,113,50,1);
  48 + line-height:40rpx;
  49 + letter-spacing:1rpx;
  50 + margin-top: 20rpx;
  51 +}
  52 +.money{
  53 + height:134rpx;
  54 + font-size:96rpx;
  55 + font-family:PingFangSC-Semibold,PingFang SC;
  56 + font-weight:600;
  57 + color:rgba(204,17,17,1);
  58 + line-height:134rpx;
  59 +}
  60 +.dot{
  61 + height:48rpx;
  62 + font-size:34rpx;
  63 + font-family:PingFangSC-Semibold,PingFang SC;
  64 + font-weight:600;
  65 + color:rgba(204,17,17,1);
  66 + line-height:48rpx;
  67 + margin-bottom: 24rpx;
  68 + margin-left: 10rpx;
  69 +}
  70 +.button{
  71 + height:48rpx;
  72 + font-size:34rpx;
  73 + font-family:PingFangSC-Medium,PingFang SC;
  74 + font-weight:500;
  75 + color:rgba(187,80,50,1);
  76 + line-height:48rpx;
  77 + margin-top:118rpx;
  78 +}
  1 +// pack-activity/pages/index.js
  2 +import util from '../../utils/util';
  3 +import App from '../../utils/api';
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + checkout:null,
  11 + hasLoading:true,
  12 + },
  13 +
  14 + /**
  15 + * 生命周期函数--监听页面加载
  16 + */
  17 + onLoad: function (options) {
  18 + this.options=options
  19 + if(options.sid){
  20 + this.setData({
  21 + seller:{
  22 + id:options.sid
  23 + }
  24 + })
  25 + }
  26 + //this.GetBalance()
  27 + },
  28 +
  29 + /**
  30 + * 生命周期函数--监听页面初次渲染完成
  31 + */
  32 + onReady: function () {
  33 +
  34 + },
  35 +
  36 + /**
  37 + * 生命周期函数--监听页面显示
  38 + */
  39 + onShow: function () {
  40 + this.GetCheckout()
  41 + },
  42 +
  43 + /**
  44 + * 生命周期函数--监听页面隐藏
  45 + */
  46 + onHide: function () {
  47 + this.GetOrderInfoStop()
  48 + },
  49 +
  50 + /**
  51 + * 生命周期函数--监听页面卸载
  52 + */
  53 + onUnload: function () {
  54 + this.GetOrderInfoStop()
  55 + },
  56 +
  57 + /**
  58 + * 页面相关事件处理函数--监听用户下拉动作
  59 + */
  60 + onPullDownRefresh: function () {
  61 +
  62 + },
  63 +
  64 + /**
  65 + * 页面上拉触底事件的处理函数
  66 + */
  67 + onReachBottom: function () {
  68 +
  69 + },
  70 + GetCheckout(){
  71 + App.Customer.GetOrderInfo({rid:this.options.rid}).then(res=>{
  72 + let checkout=res.data
  73 + if(this.data.checkout && this.data.checkout.status>checkout.status) return '状态已变更';
  74 + if(checkout){
  75 + let remark=[]
  76 + if(res.data.is_wine>0){
  77 + remark.push('有剩余酒水要退')
  78 + }
  79 + if(res.data.is_pack>0){
  80 + remark.push('菜品打包')
  81 + }
  82 + checkout.remark=remark.join('、')
  83 + if(checkout.status>1){
  84 + this.GetOrderInfoStop()
  85 + }else{
  86 + this.GetOrderInfoRun()
  87 + }
  88 + if(checkout.discount && checkout.discount.length>0){
  89 + let subsidy_price=0
  90 + checkout.discount.forEach(q=>{
  91 + if(q.checked){
  92 + subsidy_price+=q.price/1
  93 + }
  94 + })
  95 + checkout.subsidy_price=subsidy_price.toFixed(2)
  96 + }
  97 + }
  98 + let obj={
  99 + checkout:checkout,
  100 + hasLoading:false,
  101 + }
  102 + if(!this.data.seller){
  103 + obj.seller={
  104 + id:checkout.sid
  105 + }
  106 + }
  107 + this.setData(obj)
  108 + })
  109 + },
  110 + is_wine:0,
  111 + is_pack:0,
  112 + checkoutData(e){
  113 + this.is_wine=0
  114 + this.is_pack=0
  115 + if(e.detail.value.length>0){
  116 + e.detail.value.forEach(k=>{
  117 + this[k]=1
  118 + })
  119 + }
  120 + console.log(e.detail.value,this.is_wine,this.is_pack)
  121 + },
  122 + checkoutInit(){
  123 + let params={
  124 + rid:this.options.rid,
  125 + sid:this.options.sid,
  126 + is_wine:this.is_wine,
  127 + is_pack:this.is_pack
  128 + }
  129 + App.Customer.InitOrder(params).then(res=>{
  130 + this.GetCheckout()
  131 + })
  132 + },
  133 + setInvoice(e){
  134 + let invoice={
  135 + rid:this.options.rid,
  136 + }
  137 + Object.keys(e.detail).forEach(key=>{
  138 + invoice[key.toLowerCase()]=e.detail[key]
  139 + })
  140 + App.Customer.SetInvoice(invoice).then(res=>{
  141 + setTimeout(()=>{
  142 + util.toast('发票已提交','none')
  143 + },300)
  144 + })
  145 + },
  146 + GetBalance(){//获得余额
  147 + App.User.GetBalance().then(res=>{
  148 + this.setData({
  149 + user:res.data
  150 + })
  151 + })
  152 + },
  153 + GetOrderInfoInterval:null,
  154 + GetOrderInfoRun(){
  155 + if(!this.GetOrderInfoInterval){
  156 + this.GetOrderInfoInterval=setInterval(()=>{
  157 + this.GetCheckout()
  158 + },8000)
  159 + }
  160 + },
  161 + GetOrderInfoStop(){
  162 + if(this.GetOrderInfoInterval){
  163 + clearInterval(this.GetOrderInfoInterval)
  164 + this.GetOrderInfoInterval=null
  165 + }
  166 + },
  167 + txSeller(){
  168 + this.selectComponent('#showModal').options({
  169 + header: '温馨提示',
  170 + body: '已为您催促商家,请耐心等待'
  171 + }).show();
  172 + App.PushMsg.SendUrgeMsg({rid:this.data.checkout.rid})
  173 + },
  174 + pay(){
  175 + //return this.selectComponent('#xfCard').show();
  176 + App.PayOnline.CombineTransactions({
  177 + rid:this.data.checkout.rid,
  178 + }).then(res=>{
  179 + if(res.ret==200){
  180 + res.data.timeStamp+=""
  181 + wx.requestPayment({
  182 + ...res.data,
  183 + success:res=>{
  184 + this.selectComponent('#xfCard').show();
  185 + //this.GetCheckout()
  186 + this.setData({
  187 + [`checkout.status`]:3,
  188 + [`checkout.pay_time`]:parseInt(new Date()/1000),
  189 + })
  190 + },
  191 + })
  192 + }else{
  193 + util.toast(res.msg,'none')
  194 + this.GetCheckout()
  195 + }
  196 + }).catch(()=>{
  197 + util.toast('出错了,请重新尝试','none')
  198 + this.GetCheckout()
  199 + })
  200 + },
  201 + displayOrderImages(){
  202 + if(this.data.checkout.bill_list.length>0){
  203 + wx.previewImage({
  204 + urls:this.data.checkout.bill_list,
  205 + })
  206 + }
  207 + },
  208 + discountShow(){
  209 + if(this.data.checkout.discount.length>0){
  210 + this.selectComponent('#discount').show();
  211 + }
  212 + },
  213 + discountEvent(e){
  214 + console.log('discountEvent',e)
  215 + this.GetCheckout()
  216 + },
  217 + xfCardEvent(e){
  218 + this.setData({
  219 + [`checkout.status`]:3,
  220 + })
  221 + },
  222 +})
  1 +{
  2 + "backgroundTextStyle":"light",
  3 + "navigationBarBackgroundColor": "#fff",
  4 + "navigationBarTextStyle":"black",
  5 + "usingComponents": {
  6 + "nav":"/components/nav/nav",
  7 + "showModal":"/components/tips/showModal/showModal",
  8 + "invoice":"/components/userinfo/invoice",
  9 + "subscribe":"/components/userinfo/subscribe",
  10 + "jinduBar":"../components/jinduBar",
  11 + "discount":"../components/discount",
  12 + "xfCard":"../components/xfCard",
  13 + "seller-discount":"/components/reserve/seller/discount"
  14 + }
  15 +}
  1 +<!--
  2 +此文件为开发者工具生成,生成时间: 2020/4/17 下午2:12:45
  3 +使用方法:
  4 +1. 在"pack-checkout\pages\index.wxml"中使用`include`指令引入此模板,
  5 +2. 在"pack-checkout\pages\index.wxss"中使用`import`指令引入"pack-checkout\pages\index.skeleton.wxss"
  6 +3. 书写对应的逻辑,来控制骨架屏的显示与隐藏
  7 +
  8 +更多详细信息可以参考文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/skeleton.html
  9 +-->
  10 +<view class="sk-container">
  11 + <view is="components/nav/nav">
  12 + <view class="nav--nav-main-space" style="height: 64px;">
  13 + <view class="nav--nav-main" style="background-color: #ffffff;color:#000000;">
  14 + <view class="nav--nav" style="margin-top: 20px;">
  15 + <view class="nav--flex-lr nav--part" style="height: 44px; line-height: 44px">
  16 + <view class="nav--opt nav--flex-ll">
  17 + <view class="nav--back nav--flex-vc">
  18 + <image class="nav--back-image sk-image"></image>
  19 + </view>
  20 + </view>
  21 + <view class="nav--title sk-transparent sk-text-32-9545-629 sk-text" style="background-size: 32.0285% 2.75rem; background-position-x: 50%;">周到安排</view>
  22 + <view class="nav--opt">
  23 + <view></view>
  24 + </view>
  25 + </view>
  26 + </view>
  27 + </view>
  28 + </view>
  29 + </view>
  30 + <view class="pages sk-image">
  31 + <view class="content">
  32 + <view is="pack-checkout/components/jinduBar">
  33 + <view class="jinduBar--jindu-view">
  34 + <view class="jinduBar--tips-info sk-transparent sk-image">3步轻松买单</view>
  35 + <view class="jinduBar--top jinduBar--flex-lr sk-pseudo sk-pseudo-circle">
  36 + <view class="jinduBar--top-icon jinduBar--flex-vc">
  37 + <view class="jinduBar--top-icon-txt jinduBar--flex-vc sk-transparent sk-text-14-2857-157 sk-text" style="background-size: 32.875% 1.225rem;">1</view>
  38 + </view>
  39 + <view class="jinduBar--top-icon jinduBar--flex-vc">
  40 + <view class="jinduBar--top-icon-txt jinduBar--flex-vc sk-transparent sk-text-14-2857-162 sk-text" style="background-size: 32.875% 1.225rem;">2</view>
  41 + </view>
  42 + <view class="jinduBar--top-icon jinduBar--flex-vc">
  43 + <view class="jinduBar--top-icon-txt jinduBar--flex-vc sk-transparent sk-text-14-2857-97 sk-text" style="background-size: 32.875% 1.225rem;">3</view>
  44 + </view>
  45 + </view>
  46 + <view class="jinduBar--bottom jinduBar--flex-lr">
  47 + <view class="jinduBar--bottom-txt sk-transparent sk-text-15-0000-926 sk-text" style="background-size: 100% 1.25rem;">获取消费金额</view>
  48 + <view class="jinduBar--bottom-txt sk-transparent sk-text-15-0000-606 sk-text" style="background-size: 100% 1.25rem; background-position-x: 50%;">商家反馈消费金额</view>
  49 + <view class="jinduBar--bottom-txt sk-transparent sk-text-15-0000-414 sk-text" style="background-size: 100% 1.25rem; background-position-x: 100%;">提前买单</view>
  50 + </view>
  51 + </view>
  52 + </view>
  53 + </view>
  54 + <checkbox-group>
  55 + <view class="content checkout">
  56 + <view class="title sk-transparent sk-text-32-5000-940 sk-text" style="border: none; background-size: 35.518% 2.5rem;">买单相关(可选)</view>
  57 + <view class="item flex-lr" style="border: none;">
  58 + <view class="sk-transparent sk-text-38-4058-984 sk-text" style="background-size: 100% 4.3125rem;">剩余酒水饮料需要退</view>
  59 + <checkbox color="#EFEFEF" value="is_wine"></checkbox>
  60 + </view>
  61 + <view class="item flex-lr" style="border: none;">
  62 + <view class="sk-transparent sk-text-38-4058-599 sk-text" style="background-size: 100% 4.3125rem;">菜品打包</view>
  63 + <checkbox color="#EFEFEF" value="is_pack"></checkbox>
  64 + </view>
  65 + </view>
  66 + </checkbox-group>
  67 + <view class="checkout-get">
  68 + <view class="checkout-button sk-transparent">
  69 + 获取消费金额
  70 + <view class="checkout-button-money-tips sk-transparent sk-text-20-5882-11 sk-text" style="background-size: 82.4615% 1.0625rem; background-position-x: 50%;">18.80元红包待用</view>
  71 + </view>
  72 + </view>
  73 + </view>
  74 + <view is="components/tips/showModal/showModal" id="showModal">
  75 + <view class="showModal--mask showModal--flex-vc showModal--checkout" hidden="true">
  76 + <view class="showModal--showModal">
  77 + <view class="showModal--header sk-transparent sk-opacity">
  78 + 确认信息
  79 + </view>
  80 + <view class="showModal--body sk-transparent sk-opacity">
  81 + 确认信息
  82 + </view>
  83 + <view class="showModal--footer showModal--flex-cc"><button plain="true" class="showModal--button-none showModal--confirm showModal--bg-brown sk-transparent sk-button sk-pseudo sk-pseudo-circle" data-type="confirm" style="color: rgb(255, 255, 255); border: none;">知道了</button></view>
  84 + </view>
  85 + </view>
  86 + </view>
  87 +</view>
  1 +/*
  2 +此文件为开发者工具生成,生成时间: 2020/4/17 下午2:12:45
  3 +使用方法:参考 "pack-checkout\pages\index.skeleton.wxml"
  4 +*/
  5 +.sk-transparent {
  6 + color: transparent !important;
  7 + }
  8 +.sk-text-32-9545-629 {
  9 + background-image: linear-gradient(transparent 32.9545%, #EEEEEE 0%, #EEEEEE 67.0455%, transparent 0%) !important;
  10 + background-size: 100% 2.7500rem;
  11 + position: relative !important;
  12 + }
  13 +.sk-text {
  14 + background-origin: content-box !important;
  15 + background-clip: content-box !important;
  16 + background-color: transparent !important;
  17 + color: transparent !important;
  18 + background-repeat: repeat-y !important;
  19 + }
  20 +.sk-text-14-2857-157 {
  21 + background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
  22 + background-size: 100% 1.2250rem;
  23 + position: relative !important;
  24 + }
  25 +.sk-text-14-2857-162 {
  26 + background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
  27 + background-size: 100% 1.2250rem;
  28 + position: relative !important;
  29 + }
  30 +.sk-text-14-2857-97 {
  31 + background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
  32 + background-size: 100% 1.2250rem;
  33 + position: relative !important;
  34 + }
  35 +.sk-text-15-0000-926 {
  36 + background-image: linear-gradient(transparent 15.0000%, #EEEEEE 0%, #EEEEEE 85.0000%, transparent 0%) !important;
  37 + background-size: 100% 1.2500rem;
  38 + position: relative !important;
  39 + }
  40 +.sk-text-15-0000-606 {
  41 + background-image: linear-gradient(transparent 15.0000%, #EEEEEE 0%, #EEEEEE 85.0000%, transparent 0%) !important;
  42 + background-size: 100% 1.2500rem;
  43 + position: relative !important;
  44 + }
  45 +.sk-text-15-0000-414 {
  46 + background-image: linear-gradient(transparent 15.0000%, #EEEEEE 0%, #EEEEEE 85.0000%, transparent 0%) !important;
  47 + background-size: 100% 1.2500rem;
  48 + position: relative !important;
  49 + }
  50 +.sk-text-32-5000-940 {
  51 + background-image: linear-gradient(transparent 32.5000%, #EEEEEE 0%, #EEEEEE 67.5000%, transparent 0%) !important;
  52 + background-size: 100% 2.5000rem;
  53 + position: relative !important;
  54 + }
  55 +.sk-text-38-4058-984 {
  56 + background-image: linear-gradient(transparent 38.4058%, #EEEEEE 0%, #EEEEEE 61.5942%, transparent 0%) !important;
  57 + background-size: 100% 4.3125rem;
  58 + position: relative !important;
  59 + }
  60 +.sk-text-38-4058-599 {
  61 + background-image: linear-gradient(transparent 38.4058%, #EEEEEE 0%, #EEEEEE 61.5942%, transparent 0%) !important;
  62 + background-size: 100% 4.3125rem;
  63 + position: relative !important;
  64 + }
  65 +.sk-text-20-5882-11 {
  66 + background-image: linear-gradient(transparent 20.5882%, #EEEEEE 0%, #EEEEEE 79.4118%, transparent 0%) !important;
  67 + background-size: 100% 1.0625rem;
  68 + position: absolute !important;
  69 + }
  70 +.sk-opacity {
  71 + opacity: 0 !important;
  72 + }
  73 +.sk-button {
  74 + color: #EFEFEF !important;
  75 + background: #EFEFEF !important;
  76 + border: none !important;
  77 + box-shadow: none !important;
  78 + }
  79 +.sk-image {
  80 + background: #EFEFEF !important;
  81 + }
  82 +.sk-pseudo::before, .sk-pseudo::after {
  83 + background: #EFEFEF !important;
  84 + background-image: none !important;
  85 + color: transparent !important;
  86 + border-color: transparent !important;
  87 + }
  88 +.sk-pseudo-rect::before, .sk-pseudo-rect::after {
  89 + border-radius: 0 !important;
  90 + }
  91 +.sk-pseudo-circle::before, .sk-pseudo-circle::after {
  92 + border-radius: 50% !important;
  93 + }
  94 +.sk-container {
  95 + position: absolute;
  96 + overflow: hidden;
  97 + top: 0;
  98 + left: 0;
  99 + right: 0;
  100 + bottom: 0;
  101 + z-index: 1000000;
  102 + background-color: transparent;
  103 + }
  1 +<!--pack-activity/pages/index.wxml-->
  2 +<wxs src="../../utils/util.wxs" module="util" />
  3 +<block wx:if="{{hasLoading}}">
  4 + <include src="./index.skeleton.wxml"></include>
  5 +</block>
  6 +<nav hasHome>{{checkout.sellername||'周到安排'}}</nav>
  7 +<view class="pages">
  8 + <view class="content">
  9 + <jinduBar checkout="{{checkout}}"></jinduBar>
  10 + </view>
  11 + <block wx:if="{{checkout.status==1}}">
  12 + <view class="content checkout">
  13 + <view class="waiting-money flex-vc">
  14 + <icon type="waiting" size="47" color="#C0A369"/>
  15 + <view class="waiting-txt">商家处理中</view>
  16 + </view>
  17 + </view>
  18 + <view class="content invoice">
  19 + <view class="item flex-lr">
  20 + <view>发票</view>
  21 + <invoice bindevent="setInvoice">
  22 + <view class="flex-rr invoice-right">
  23 + <view class="title {{checkout.invoice?'active':''}}">{{checkout.invoice.title||'提前提交发票抬头'}}</view>
  24 + <view class="more"></view>
  25 + </view>
  26 + </invoice>
  27 + </view>
  28 + </view>
  29 + <subscribe ids="{{[1]}}">
  30 + <view class="checkout-get subscribe">点我,商家反馈金额后提醒我</view>
  31 + </subscribe>
  32 + <view class="checkout-get tx-seller" bindtap="txSeller">催一下商家</view>
  33 + </block>
  34 + <block wx:elif="{{checkout.status==2}}">
  35 + <view class="content money">
  36 + <view class="waiting-money flex-vc">
  37 + <icon type="waiting" size="47" color="#C0A369"/>
  38 + <view class="waiting-txt">待支付</view>
  39 + </view>
  40 + <view class="list flex-lr">
  41 + <view class="list-name">消费总额</view>
  42 + <view class="list-val">¥ {{checkout.price}}</view>
  43 + </view>
  44 + <view class="list flex-lr" bindtap="discountShow">
  45 + <view class="list-name">红  包</view>
  46 + <view class="list-val flex-rr">
  47 + -¥ {{checkout.subsidy_price}}
  48 + <view class="more" style="margin-left: 20rpx;" wx:if="{{checkout.discount.length>0}}"></view>
  49 + </view>
  50 + </view>
  51 + <view class="list flex-lr">
  52 + <view class="list-name">应付金额</view>
  53 + <view class="list-val should_price">¥{{checkout.should_price}}</view>
  54 + </view>
  55 + <view class="list flex-lr" wx:if="{{checkout.bill_list.length>0}}" bindtap="displayOrderImages">
  56 + <view class="list-name">消费清单</view>
  57 + <view class="list-val link">查看消费清单</view>
  58 + </view>
  59 + <view class="list flex-lr" style="align-items:flex-start;line-height: 60rpx;">
  60 + <view class="list-name">包间名称</view>
  61 + <view class="list-val">{{checkout.tablename}}</view>
  62 + </view>
  63 + <view class="list flex-lr" wx:if="{{checkout.remark}}">
  64 + <view class="list-name">备注信息</view>
  65 + <view class="list-val">{{checkout.remark}}</view>
  66 + </view>
  67 + <view class="checkout-get" bindtap="pay">立即支付{{checkout.should_price}}元</view>
  68 + </view>
  69 + <view class="money-tips">注:消费清单,离店时请到前台索要;</view>
  70 + </block>
  71 + <block wx:elif="{{checkout.status==3}}">
  72 + <view class="content money">
  73 + <view class="waiting-money flex-vc">
  74 + <icon type="success" size="47" color="#C8B16D"/>
  75 + <view class="waiting-txt">已买单</view>
  76 + </view>
  77 + <view class="list flex-lr">
  78 + <view class="list-name">消费总额</view>
  79 + <view class="list-val">¥ {{checkout.price}}</view>
  80 + </view>
  81 + <view class="list flex-lr">
  82 + <view class="list-name">红  包</view>
  83 + <view class="list-val">-¥ {{checkout.subsidy_price}}</view>
  84 + </view>
  85 + <view class="list flex-lr">
  86 + <view class="list-name">实付金额</view>
  87 + <view class="list-val should_price">¥{{checkout.should_price}}</view>
  88 + </view>
  89 + <view class="list flex-lr" wx:if="{{checkout.bill_list.length>0}}" bindtap="displayOrderImages">
  90 + <view class="list-name">消费清单</view>
  91 + <view class="list-val link">查看消费清单</view>
  92 + </view>
  93 + <view class="list flex-lr" style="align-items:flex-start;line-height: 60rpx;">
  94 + <view class="list-name">包间名称</view>
  95 + <view class="list-val">{{checkout.tablename}}</view>
  96 + </view>
  97 + <view class="list flex-lr" wx:if="{{checkout.remark}}">
  98 + <view class="list-name">备注信息</view>
  99 + <view class="list-val">{{checkout.remark}}</view>
  100 + </view>
  101 + <view class="list flex-lr pay-time">
  102 + <view class="list-name">买单时间</view>
  103 + <view class="list-val">{{util.unixtoTime(checkout.pay_time,'YYYY-MM-DD HH:II')}}</view>
  104 + </view>
  105 + </view>
  106 + <view class="content invoice" wx:if="{{checkout.invoice}}">
  107 + <view class="item flex-lr">
  108 + <view>发票</view>
  109 + <invoice bindevent="setInvoice">
  110 + <view class="invoice-right disabled">
  111 + <view class="invoice-title">{{checkout.invoice.title}}</view>
  112 + <view class="invoice-taxnumber">{{checkout.invoice.taxnumber}}</view>
  113 + </view>
  114 + </invoice>
  115 + </view>
  116 + </view>
  117 + </block>
  118 + <block wx:else="">
  119 + <checkbox-group bindchange="checkoutData">
  120 + <view class="content checkout">
  121 + <view class="title">买单相关(可选)</view>
  122 + <view class="item flex-lr">
  123 + <view>剩余酒水饮料需要退</view>
  124 + <checkbox color="#ffffff" value="is_wine"/>
  125 + </view>
  126 + <view class="item flex-lr">
  127 + <view>菜品打包</view>
  128 + <checkbox color="#ffffff" value="is_pack"/>
  129 + </view>
  130 + </view>
  131 + </checkbox-group>
  132 + <view class="checkout-get">
  133 + <subscribe ids="{{[1]}}" bindevent="checkoutInit">
  134 + <view class="checkout-button">
  135 + 获取消费金额
  136 + <seller-discount id="seller-discount" seller="{{seller}}" wx:if="{{seller}}"
  137 + cla="checkout-button-money-tips detail_owner"></seller-discount>
  138 + </view>
  139 + </subscribe>
  140 + </view>
  141 + </block>
  142 +</view>
  143 +<showModal id="showModal" confirmText="知道了" bindshowModal="showModal" cla="checkout"></showModal>
  144 +<discount id="discount" checkout="{{checkout}}" bindevent="discountEvent"></discount>
  145 +<xfCard id="xfCard" checkout="{{checkout}}" bindevent="xfCardEvent"></xfCard>
  1 +/* pack-activity/pages/index.wxss */
  2 +@import "index.skeleton.wxss";
  3 +page{
  4 + background-color: #F5F5F5;
  5 +}
  6 +.pages{
  7 + padding: 204rpx 0 60rpx;
  8 + background-size: 100% auto;
  9 + background-repeat: no-repeat;
  10 + background-image: url("http://nosqn.colorcun.com/checkout/images/3.png");
  11 +}
  12 +.content{
  13 + width: calc(100% - 40rpx);
  14 + margin: 0 20rpx 0;
  15 + position: relative;
  16 + background-color: #fff;
  17 + background:rgba(255,255,255,1);
  18 + border-radius:10rpx;
  19 + padding: 0 40rpx;
  20 + box-sizing: border-box;
  21 +}
  22 +.checkout,.invoice,.money{
  23 + margin-top: 10rpx;
  24 +}
  25 +.title{
  26 + height: 80rpx;
  27 + box-sizing: border-box;
  28 + border-bottom: 1rpx solid #F5F5F5;
  29 + line-height: 80rpx;
  30 + font-size:28rpx;
  31 + font-weight:500;
  32 + color:rgba(153,153,153,1);
  33 +}
  34 +.item{
  35 + height: 138rpx;
  36 + box-sizing: border-box;
  37 + border-bottom: 1rpx solid #F5F5F5;
  38 + line-height: 138rpx;
  39 + font-size:32rpx;
  40 + font-weight:600;
  41 + color:rgba(53,53,53,1);
  42 +}
  43 +.item:last-child{
  44 + border-bottom-width: 0;
  45 +}
  46 +.checkout-get{
  47 + position: fixed;
  48 + bottom: 80rpx;
  49 + left: 38rpx;
  50 + width: calc(100% - 72rpx);
  51 + height: 80rpx;
  52 + line-height: 80rpx;
  53 + font-size:34rpx;
  54 + font-weight:400;
  55 + color:rgba(254,254,254,1);
  56 + background:rgba(36,35,32,1);
  57 + text-align: center;
  58 +}
  59 +.checkout-button{
  60 + width: 100%;
  61 + height: 80rpx;
  62 + line-height: 80rpx;
  63 + position: relative;
  64 +}
  65 +.checkout-get.subscribe{
  66 + bottom: 178rpx;
  67 +}
  68 +.checkout-get.tx-seller{
  69 + background: none;
  70 + border:2rpx solid rgba(38,38,40,1);
  71 + box-sizing: border-box;
  72 + color:rgba(38,38,40,1);
  73 + bottom: 80rpx;
  74 +}
  75 +.invoice-right .title{
  76 + font-size:32rpx;
  77 + font-weight:500;
  78 + color:rgba(153,153,153,1);
  79 + margin-right: 20rpx;
  80 + border-bottom-width: 0;
  81 +}
  82 +.invoice-right .title.active{
  83 + color:rgba(53,53,53,1);
  84 +}
  85 +.disabled .title{
  86 + height: 50rpx;
  87 + line-height: 50rpx;
  88 + text-align: right;
  89 + margin-right: 0;
  90 +}
  91 +.content.money{
  92 + padding-top: 27rpx;
  93 + padding-bottom: 27rpx;
  94 +}
  95 +.list{
  96 + line-height: 68rpx;
  97 + font-size:30rpx;
  98 + font-weight:500;
  99 + color:rgba(53,53,53,1);
  100 +
  101 +}
  102 +.money-tips{
  103 + height:40rpx;
  104 + font-size:28rpx;
  105 + font-weight:500;
  106 + color:rgba(53,53,53,1);
  107 + line-height:40rpx;
  108 + margin-left: 40rpx;
  109 + margin-top: 20rpx;
  110 + padding-bottom: 140rpx;
  111 +}
  112 +.should_price{
  113 + color:rgba(224,32,32,1);
  114 +}
  115 +.pay-time{
  116 + border-top: 2rpx solid #F1F0F4;
  117 + margin-top: 20rpx;
  118 + padding-top: 20rpx;
  119 +}
  120 +
  121 +/* 选中后的 对勾样式 (白色对勾 可根据UI需求自己修改) */
  122 +checkbox .wx-checkbox-input {
  123 + width: 48rpx;
  124 + height: 48rpx;
  125 + border-radius:8rpx;
  126 + border-width: 0;
  127 + margin: 0;
  128 + padding: 0;
  129 + background-image: url("http://nosqn.colorcun.com/checkout/images/checkbox.png");
  130 + background-size: 48rpx auto;
  131 +
  132 +}
  133 +checkbox .wx-checkbox-input.wx-checkbox-input-checked{
  134 + background-position: 0 -48rpx;
  135 +}
  136 +checkbox .wx-checkbox-input.wx-checkbox-input-checked:before{
  137 + content: "";
  138 +}
  139 +
  140 +.waiting-txt{
  141 + margin-top: 32rpx;
  142 + height:50rpx;
  143 + font-size:36rpx;
  144 + font-weight:500;
  145 + color:rgba(53,53,53,1);
  146 + line-height:50rpx;
  147 +}
  148 +.waiting-money{
  149 + height: 260rpx;
  150 +}
  151 +.money .checkout-get{
  152 + bottom: 66rpx;
  153 +}
  154 +.invoice-title,.invoice-taxnumber{
  155 + height:44rpx;
  156 + font-size:32rpx;
  157 + font-weight:500;
  158 + color:rgba(53,53,53,1);
  159 + line-height:44rpx;
  160 + text-align: right;
  161 +}
  162 +.list-name{
  163 + min-width: 150rpx;
  164 +}
  165 +.list-val{
  166 + text-align: right;
  167 +}
  168 +.link{
  169 + border-bottom: 2rpx solid #979797;
  170 + padding: 0 4rpx;
  171 +}
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <view class="cart" catchtap="catchtap"> 3 <view class="cart" catchtap="catchtap">
4 <view class="cart-title flex-rr"> 4 <view class="cart-title flex-rr">
5 <view class="icon"> 5 <view class="icon">
6 - <image src="http://qn.colorcun.com/custom/lite-yd-cook/image/empty.png"></image> 6 + <image src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/empty.png"></image>
7 </view> 7 </view>
8 <view class="text" bindtap="RemoveCart">清空购物车</view> 8 <view class="text" bindtap="RemoveCart">清空购物车</view>
9 </view> 9 </view>
@@ -88,7 +88,7 @@ @@ -88,7 +88,7 @@
88 } 88 }
89 .cart-item .add{ 89 .cart-item .add{
90 background-color: #fefefe; 90 background-color: #fefefe;
91 - background-image: url("http://qn.colorcun.com/custom/lite-yd-cook/image/add.png"); 91 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd-cook/image/add.png");
92 background-size: 100%; 92 background-size: 100%;
93 width: 40rpx; 93 width: 40rpx;
94 height: 40rpx; 94 height: 40rpx;
@@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
14 </block> 14 </block>
15 <formids bindclick="close" class="menu-fixed"> 15 <formids bindclick="close" class="menu-fixed">
16 <view> 16 <view>
17 - <image src="http://qn.colorcun.com/custom/lite/image/menu-close-new.png" background-size="cover" class="menu-fixed-image-close"></image> 17 + <image src="http://nosqn.colorcun.com/custom/lite/image/menu-close-new.png" background-size="cover" class="menu-fixed-image-close"></image>
18 </view> 18 </view>
19 </formids> 19 </formids>
20 </view> 20 </view>
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 <block wx:if="{{item_clear_num==0}}"> 18 <block wx:if="{{item_clear_num==0}}">
19 <image 19 <image
20 class="avater" 20 class="avater"
21 - src="http://qn.colorcun.com/custom/lite/image/clear.png" 21 + src="http://nosqn.colorcun.com/custom/lite/image/clear.png"
22 style="width:41px;height:26px;margin-top:3px;position:relative;top:-2px;float:right;" 22 style="width:41px;height:26px;margin-top:3px;position:relative;top:-2px;float:right;"
23 class="{{item.image?bg_white:bg_pink}}"/> 23 class="{{item.image?bg_white:bg_pink}}"/>
24 </block> 24 </block>
@@ -199,7 +199,7 @@ @@ -199,7 +199,7 @@
199 } 199 }
200 .hasListModel .add{ 200 .hasListModel .add{
201 background-color: #fefefe; 201 background-color: #fefefe;
202 - background-image: url("http://qn.colorcun.com/custom/lite-yd-cook/image/add.png"); 202 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd-cook/image/add.png");
203 background-size: 100%; 203 background-size: 100%;
204 width: 40rpx; 204 width: 40rpx;
205 height: 40rpx; 205 height: 40rpx;
@@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
4 <view hidden="{{hiddenFoodSpec}}" class="hiddenFoodSpec"> 4 <view hidden="{{hiddenFoodSpec}}" class="hiddenFoodSpec">
5 <view class="toast-mask flex-vc" bindtap="close"> 5 <view class="toast-mask flex-vc" bindtap="close">
6 <view class="toast-content" catchtap="catchtap"> 6 <view class="toast-content" catchtap="catchtap">
7 - <image class="toast-content-close" bindtap="close" src="http://qn.colorcun.com/custom/lite-yd-cook/image/close-cookbook.png" background-size="cover"></image> 7 + <image class="toast-content-close" bindtap="close" src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/close-cookbook.png" background-size="cover"></image>
8 <form bindsubmit="formSubmit"> 8 <form bindsubmit="formSubmit">
9 <input value="{{cookbook_id}}" name="cookbookid" hidden="true"/> 9 <input value="{{cookbook_id}}" name="cookbookid" hidden="true"/>
10 <view class="toast-content-title">{{cookbook_name}}</view> 10 <view class="toast-content-title">{{cookbook_name}}</view>
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
38 <view hidden="{{hiddenFoodSpecReduce}}" class="hiddenFoodSpec"> 38 <view hidden="{{hiddenFoodSpecReduce}}" class="hiddenFoodSpec">
39 <view class="reduce-mask flex-vc" bindtap="close"> 39 <view class="reduce-mask flex-vc" bindtap="close">
40 <view class="reduce-conent" catchtap="catchtap"> 40 <view class="reduce-conent" catchtap="catchtap">
41 - <image class="toast-content-close" bindtap="close" src="http://qn.colorcun.com/custom/lite-yd-cook/image/close-cookbook.png" background-size="cover"></image> 41 + <image class="toast-content-close" bindtap="close" src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/close-cookbook.png" background-size="cover"></image>
42 <view class="reduce-content-title">{{item.name}}</view> 42 <view class="reduce-content-title">{{item.name}}</view>
43 <view class="reduce-content-list"> 43 <view class="reduce-content-list">
44 <view class='reduce-content-large' wx:for="{{selectKind}}" wx:key="selectKind-key" wx:for-item="kindItem"> 44 <view class='reduce-content-large' wx:for="{{selectKind}}" wx:key="selectKind-key" wx:for-item="kindItem">
@@ -185,7 +185,7 @@ @@ -185,7 +185,7 @@
185 .reduce-list-last{ 185 .reduce-list-last{
186 width:40rpx; 186 width:40rpx;
187 height:40rpx; 187 height:40rpx;
188 - background-image: url("http://qn.colorcun.com/custom/lite-yd-cook/image/add.png"); 188 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd-cook/image/add.png");
189 background-size: 100% 100%; 189 background-size: 100% 100%;
190 } 190 }
191 .reduce-close{ 191 .reduce-close{
@@ -53,7 +53,7 @@ @@ -53,7 +53,7 @@
53 width:64px; 53 width:64px;
54 } 54 }
55 .icon-membercard{ 55 .icon-membercard{
56 - background: url(http://qn.colorcun.com/wechat/app/images/icon_card.jpg); 56 + background: url(http://nosqn.colorcun.com/wechat/app/images/icon_card.jpg);
57 background-size: 100%; background-repeat: no-repeat; 57 background-size: 100%; background-repeat: no-repeat;
58 height:100%; 58 height:100%;
59 } 59 }
@@ -143,7 +143,7 @@ Page({ @@ -143,7 +143,7 @@ Page({
143 onShareAppMessage: function () { 143 onShareAppMessage: function () {
144 return { 144 return {
145 title:'一起来点菜啦!', 145 title:'一起来点菜啦!',
146 - imageUrl:'http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191115114857.jpg', 146 + imageUrl:'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191115114857.jpg',
147 } 147 }
148 }, 148 },
149 formatCookList(list){ 149 formatCookList(list){
@@ -36,14 +36,14 @@ @@ -36,14 +36,14 @@
36 <button class="share flex-vc button-none" open-type="share"> 36 <button class="share flex-vc button-none" open-type="share">
37 <view class="flex-vc"> 37 <view class="flex-vc">
38 <view class="icon"> 38 <view class="icon">
39 - <image src="http://qn.colorcun.com/custom/lite-yd-cook/image/share.png"></image> 39 + <image src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/share.png"></image>
40 </view> 40 </view>
41 <view class="text">一起点</view> 41 <view class="text">一起点</view>
42 </view> 42 </view>
43 </button> 43 </button>
44 <view class="cart flex-ll" bindtap="dispalyCart"> 44 <view class="cart flex-ll" bindtap="dispalyCart">
45 <view class="icon"> 45 <view class="icon">
46 - <image src="http://qn.colorcun.com/custom/lite-yd-cook/image/cart-black.png"/> 46 + <image src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/cart-black.png"/>
47 <view class="dot" wx:if="{{orderItemCount>0}}">{{orderItemCount}}</view> 47 <view class="dot" wx:if="{{orderItemCount>0}}">{{orderItemCount}}</view>
48 </view> 48 </view>
49 <view class="text Semibold">¥{{order.price}}</view> 49 <view class="text Semibold">¥{{order.price}}</view>
@@ -74,7 +74,7 @@ Page({ @@ -74,7 +74,7 @@ Page({
74 return { 74 return {
75 title:'菜品已点好,快来看看都点了什么~', 75 title:'菜品已点好,快来看看都点了什么~',
76 path:util.http_build_query(options,'/pack-cookbook/pages/success'), 76 path:util.http_build_query(options,'/pack-cookbook/pages/success'),
77 - imageUrl:'http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148571.jpg', 77 + imageUrl:'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148571.jpg',
78 } 78 }
79 }, 79 },
80 80
@@ -4,6 +4,11 @@ @@ -4,6 +4,11 @@
4 "lockfileVersion": 1, 4 "lockfileVersion": 1,
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
  7 + "js-sha1": {
  8 + "version": "0.6.0",
  9 + "resolved": "https://registry.npmjs.org/js-sha1/-/js-sha1-0.6.0.tgz",
  10 + "integrity": "sha512-01gwBFreYydzmU9BmZxpVk6svJJHrVxEN3IOiGl6VO93bVKYETJ0sIth6DASI6mIFdt7NmfX9UiByRzsYHGU9w=="
  11 + },
7 "mta-wechat-analysis": { 12 "mta-wechat-analysis": {
8 "version": "1.3.9", 13 "version": "1.3.9",
9 "resolved": "https://registry.npmjs.org/mta-wechat-analysis/-/mta-wechat-analysis-1.3.9.tgz", 14 "resolved": "https://registry.npmjs.org/mta-wechat-analysis/-/mta-wechat-analysis-1.3.9.tgz",
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
13 "author": "", 13 "author": "",
14 "license": "ISC", 14 "license": "ISC",
15 "dependencies": { 15 "dependencies": {
  16 + "js-sha1": "^0.6.0",
16 "mta-wechat-analysis": "^1.3.7" 17 "mta-wechat-analysis": "^1.3.7"
17 } 18 }
18 } 19 }
@@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
8 "nav":"/components/nav/nav", 8 "nav":"/components/nav/nav",
9 "card":"/components/seller-card/seller-card", 9 "card":"/components/seller-card/seller-card",
10 "formids":"/components/formids/formids", 10 "formids":"/components/formids/formids",
11 - "userinfo-share": "/components/userinfo/share" 11 + "userinfo-share": "/components/userinfo/share",
  12 + "activity-enter":"/components/activity/enter"
12 } 13 }
13 } 14 }
@@ -46,4 +46,5 @@ @@ -46,4 +46,5 @@
46 </view> 46 </view>
47 </block> 47 </block>
48 </view> 48 </view>
49 -<manager manager="{{detail}}" id="manager"></manager>  
  49 +<manager manager="{{detail}}" id="manager"></manager>
  50 +<activity-enter floclass="detail_customer"></activity-enter>
@@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
7 "nav":"/components/nav/nav", 7 "nav":"/components/nav/nav",
8 "formids":"/components/formids/formids", 8 "formids":"/components/formids/formids",
9 "a2l":"/components/tips/add-to-lite", 9 "a2l":"/components/tips/add-to-lite",
  10 + "activity-tips":"/components/activity/tips",
10 "userinfo-share": "/components/userinfo/share" 11 "userinfo-share": "/components/userinfo/share"
11 } 12 }
12 } 13 }
1 <!--pages/customer/detail_owner.wxml--> 1 <!--pages/customer/detail_owner.wxml-->
2 <import src="../tpl/invitation"></import> 2 <import src="../tpl/invitation"></import>
3 <nav backgroundColor="rgba(0,0,0,0)" hasHome style="position: fixed;z-index: 1;" class="navhome"></nav> 3 <nav backgroundColor="rgba(0,0,0,0)" hasHome style="position: fixed;z-index: 1;" class="navhome"></nav>
4 -<view class="pages bg-{{options.tplid}} flex-vc" style="height:{{height}}px;" wx:if="{{options.tplid}}"> 4 +<view class="pages bg-{{options.tplid}} flex-vc" style="height:{{height}}px; padding-top: 120rpx;overflow-y: auto;" wx:if="{{options.tplid}}">
5 <template is="tpl-{{options.tplid}}" data="{{seller,options,hasOwner,animation,detail}}"></template> 5 <template is="tpl-{{options.tplid}}" data="{{seller,options,hasOwner,animation,detail}}"></template>
6 - <view class="opt-view flex-vc"> 6 + <view class="opt-view flex-vc" style="padding-bottom: 320rpx;">
7 <block wx:if="{{!detail.hasCanSuccess && detail.status!=4}}"> 7 <block wx:if="{{!detail.hasCanSuccess && detail.status!=4}}">
8 <userinfo class="button-none flex-vc" binduserinfo="confirmed" catchtap="catchtap"> 8 <userinfo class="button-none flex-vc" binduserinfo="confirmed" catchtap="catchtap">
9 <view class="buts-share animation customer"></view> 9 <view class="buts-share animation customer"></view>
@@ -13,19 +13,19 @@ @@ -13,19 +13,19 @@
13 </view> 13 </view>
14 <view class="opt-button flex-lr"> 14 <view class="opt-button flex-lr">
15 <view bindtap="gotoHome" class="dingbaojian flex-vc"> 15 <view bindtap="gotoHome" class="dingbaojian flex-vc">
16 - <image src="http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191114105901.png" class="icon"></image> 16 + <image src="http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191114105901.png" class="icon"></image>
17 <view class="text">订包间</view> 17 <view class="text">订包间</view>
18 </view> 18 </view>
19 <view class="opt flex-cc"> 19 <view class="opt flex-cc">
20 <formids class="button-none flex-vc" bindclick="lookLocation"> 20 <formids class="button-none flex-vc" bindclick="lookLocation">
21 <view class="opt-text flex-cc"> 21 <view class="opt-text flex-cc">
22 - <image class="buts-dh" src="http://qn.colorcun.com/manager-invitation/wx2/%E4%B8%80%E9%94%AE%E5%AF%BC%E8%88%AA.png"></image> 22 + <image class="buts-dh" src="http://nosqn.colorcun.com/manager-invitation/wx2/%E4%B8%80%E9%94%AE%E5%AF%BC%E8%88%AA.png"></image>
23 <view class="buts-text">一键导航</view> 23 <view class="buts-text">一键导航</view>
24 </view> 24 </view>
25 </formids> 25 </formids>
26 <userinfo-share class="button-none flex-vc" binduserinfo="toast"> 26 <userinfo-share class="button-none flex-vc" binduserinfo="toast">
27 <view class="opt-text flex-cc"> 27 <view class="opt-text flex-cc">
28 - <image class="buts-sh" src="http://qn.colorcun.com/manager-invitation/wx2/%E8%BD%AC%E5%8F%91%E7%BB%99%E5%A5%BD%E5%8F%8B.png"></image> 28 + <image class="buts-sh" src="http://nosqn.colorcun.com/manager-invitation/wx2/%E8%BD%AC%E5%8F%91%E7%BB%99%E5%A5%BD%E5%8F%8B.png"></image>
29 <view class="buts-text">转发给好友</view> 29 <view class="buts-text">转发给好友</view>
30 </view> 30 </view>
31 </userinfo-share> 31 </userinfo-share>
@@ -44,3 +44,4 @@ @@ -44,3 +44,4 @@
44 <template is="tpl-wenxin" data="{{...seller,options}}"></template> 44 <template is="tpl-wenxin" data="{{...seller,options}}"></template>
45 </template> 45 </template>
46 <a2l bindshow="a2lshow" bindhide="a2lshow" key="INVIT"></a2l> 46 <a2l bindshow="a2lshow" bindhide="a2lshow" key="INVIT"></a2l>
  47 +<activity-tips str="¥price" pos="pages/reserve/detail" cla="detail-invitation"></activity-tips>
@@ -13,10 +13,10 @@ image{ @@ -13,10 +13,10 @@ image{
13 } 13 }
14 14
15 .buts-share{ 15 .buts-share{
16 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png"); 16 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png");
17 } 17 }
18 .buts-share.customer{ 18 .buts-share.customer{
19 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png"); 19 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png");
20 } 20 }
21 21
22 .shangwu{ 22 .shangwu{
@@ -28,12 +28,12 @@ image{ @@ -28,12 +28,12 @@ image{
28 .shangwu .invit-logo.owner{ 28 .shangwu .invit-logo.owner{
29 width: 380rpx; 29 width: 380rpx;
30 height: 200rpx; 30 height: 200rpx;
31 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"); 31 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png");
32 } 32 }
33 .shangwu .invit-logo.customer{ 33 .shangwu .invit-logo.customer{
34 width: 352rpx; 34 width: 352rpx;
35 height: 164rpx; 35 height: 164rpx;
36 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/invit-logo.png"); 36 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/invit-logo.png");
37 } 37 }
38 38
39 39
@@ -49,12 +49,12 @@ image{ @@ -49,12 +49,12 @@ image{
49 .wenxin .invit-logo.owner{ 49 .wenxin .invit-logo.owner{
50 width: 340rpx; 50 width: 340rpx;
51 height: 184rpx; 51 height: 184rpx;
52 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"); 52 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png");
53 } 53 }
54 .wenxin .invit-logo.customer{ 54 .wenxin .invit-logo.customer{
55 width: 344rpx; 55 width: 344rpx;
56 height: 198rpx; 56 height: 198rpx;
57 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png"); 57 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png");
58 } 58 }
59 59
60 .opt-button .dingbaojian{ 60 .opt-button .dingbaojian{
@@ -79,7 +79,7 @@ image{ @@ -79,7 +79,7 @@ image{
79 margin-top: 8rpx; 79 margin-top: 8rpx;
80 } 80 }
81 .cancel-icon{ 81 .cancel-icon{
82 - background-image: url("http://qn.colorcun.com/reserve/images/cancel-icon.png"); 82 + background-image: url("http://nosqn.colorcun.com/reserve/images/cancel-icon.png");
83 background-size: 100% 100%; 83 background-size: 100% 100%;
84 width: 208rpx; 84 width: 208rpx;
85 height: 172rpx; 85 height: 172rpx;
@@ -17,6 +17,7 @@ Page({ @@ -17,6 +17,7 @@ Page({
17 firstShowMsg:'', 17 firstShowMsg:'',
18 rsl:[],//推荐商家 18 rsl:[],//推荐商家
19 hasCancel:false, //取消预定效果 19 hasCancel:false, //取消预定效果
  20 + hasLoadedCheckout:false,
20 }, 21 },
21 id: null, 22 id: null,
22 tpls: TP.tpls(), 23 tpls: TP.tpls(),
@@ -126,6 +127,8 @@ Page({ @@ -126,6 +127,8 @@ Page({
126 firstShowMsg:firstShowMsg, 127 firstShowMsg:firstShowMsg,
127 }) 128 })
128 } 129 }
  130 + //this.GetBalance()//余额
  131 + this.GetCheckout()//账单
129 }) 132 })
130 }, 133 },
131 formatDatail(detail) { 134 formatDatail(detail) {
@@ -298,5 +301,35 @@ Page({ @@ -298,5 +301,35 @@ Page({
298 wx.setStorageSync('order', 'complete') 301 wx.setStorageSync('order', 'complete')
299 } 302 }
300 console.log(pages) 303 console.log(pages)
301 - } 304 + },
  305 + GetBalance(){//获得余额
  306 + App.User.GetBalance().then(res=>{
  307 + this.setData({
  308 + user:res.data
  309 + })
  310 + })
  311 + },
  312 + GetCheckout(){
  313 + App.Customer.GetOrderInfo({rid:this.options.id}).then(res=>{
  314 + this.setData({
  315 + checkout:res.data,
  316 + hasLoadedCheckout:true,
  317 + })
  318 + })
  319 + },
  320 + checkout(){
  321 + if(this.data.detail.status==0){
  322 + this.selectComponent('#showModal').options({
  323 + header: '商家未确认',
  324 + body: '确认后,到店消费可提前买单'
  325 + }).show();
  326 + }else{
  327 + wx.navigateTo({
  328 + url:util.http_build_query({
  329 + rid:this.data.detail.id,
  330 + sid:this.data.detail.sid
  331 + },'/pack-checkout/pages/index')
  332 + })
  333 + }
  334 + },
302 }) 335 })
@@ -12,6 +12,9 @@ @@ -12,6 +12,9 @@
12 "sb-tr":"/components/reserve/seller-box-transverse/seller-box", 12 "sb-tr":"/components/reserve/seller-box-transverse/seller-box",
13 "getpos":"/components/userinfo/getpos", 13 "getpos":"/components/userinfo/getpos",
14 "as":"/components/actionSheet/index", 14 "as":"/components/actionSheet/index",
15 - "subscribe": "/components/userinfo/subscribe" 15 + "subscribe": "/components/userinfo/subscribe",
  16 + "activity-enter":"/components/activity/enter",
  17 + "showModal":"/components/tips/showModal/showModal",
  18 + "seller-discount":"/components/reserve/seller/discount"
16 } 19 }
17 } 20 }
@@ -42,6 +42,19 @@ @@ -42,6 +42,19 @@
42 <subscribe class="flex-lr share-view subscribe" ids="{{[0]}}"> 42 <subscribe class="flex-lr share-view subscribe" ids="{{[0]}}">
43 <view class="share-but">提醒我包间预订结果</view> 43 <view class="share-but">提醒我包间预订结果</view>
44 </subscribe> 44 </subscribe>
  45 + <view class="flex-lr share-view-cookbook" wx:if="{{detail.seller.isopen_md==1}}">
  46 + <userinfo
  47 + binduserinfo="checkout"
  48 + share="{{detail}}"
  49 + share-act="invitation"
  50 + class="share-but-view">
  51 + <view class="share-but Regular">
  52 + 提前买单
  53 + <seller-discount id="seller-discount" seller="{{detail.seller}}" wx:if="{{detail.seller}}"
  54 + cla="money-tips detail_owner"></seller-discount>
  55 + </view>
  56 + </userinfo>
  57 + </view>
45 </block> 58 </block>
46 <block wx:elif="{{detail.status==6}}"> 59 <block wx:elif="{{detail.status==6}}">
47 <view class="icon"> 60 <view class="icon">
@@ -76,28 +89,44 @@ @@ -76,28 +89,44 @@
76 <view class="share-but Regular">发邀请函</view> 89 <view class="share-but Regular">发邀请函</view>
77 </userinfo-share> 90 </userinfo-share>
78 </view> 91 </view>
79 - <view class="flex-lr share-view-cookbook" wx:if="{{detail.seller.is_open_order==1 || detail.seller.is_open_wine==1}}">  
80 - <userinfo wx:if="{{detail.seller.is_open_wine==1}}"  
81 - binduserinfo="wineGo"  
82 - bindshare="share"  
83 - share="{{detail}}"  
84 - share-act="invitation"  
85 - class="share-but-view">  
86 - <view class="share-but Regular">订酒水</view>  
87 - </userinfo>  
88 - <userinfo wx:if="{{detail.seller.is_open_order==1}}"  
89 - binduserinfo="cookbook"  
90 - bindshare="share"  
91 - share="{{detail}}"  
92 - share-act="invitation"  
93 - class="share-but-view">  
94 - <view class="share-but Regular flex-cc" wx:if="{{detail.order && detail.order.cookbooklist.length>0}}">  
95 - <view>查看菜品</view>  
96 - <image class="order-cook" src="http://qn.colorcun.com/custom/lite-yd-cook/image/order-cook.png"></image>  
97 - </view>  
98 - <view class="share-but Regular" wx:else="">提前点餐</view>  
99 - </userinfo>  
100 - </view> 92 + <block wx:if="{{(detail.seller.is_open_order==1 || detail.seller.is_open_wine==1 ) || (hasLoadedCheckout && detail.seller.isopen_md==1 && checkout.status!=3)}}">
  93 + <view class="flex-lr share-view-cookbook">
  94 + <userinfo wx:if="{{detail.seller.is_open_wine==1}}"
  95 + binduserinfo="wineGo"
  96 + bindshare="share"
  97 + share="{{detail}}"
  98 + share-act="invitation"
  99 + class="share-but-view">
  100 + <view class="share-but Regular">订酒水</view>
  101 + </userinfo>
  102 + <userinfo wx:if="{{detail.seller.is_open_order==1}}"
  103 + binduserinfo="cookbook"
  104 + bindshare="share"
  105 + share="{{detail}}"
  106 + share-act="invitation"
  107 + class="share-but-view">
  108 + <view class="share-but Regular flex-cc" wx:if="{{detail.order && detail.order.cookbooklist.length>0}}">
  109 + <view>查看菜品</view>
  110 + <image class="order-cook" src="http://nosqn.colorcun.com/custom/lite-yd-cook/image/order-cook.png"></image>
  111 + </view>
  112 + <view class="share-but Regular" wx:else="">提前点餐</view>
  113 + </userinfo>
  114 + <userinfo wx:if="{{detail.seller.isopen_md==1 && checkout.status!=3}}"
  115 + binduserinfo="checkout"
  116 + share="{{detail}}"
  117 + share-act="invitation"
  118 + class="share-but-view">
  119 + <view class="share-but Regular">
  120 + <view class="flex-cc">
  121 + <view class="checkout-icon checkout-icon-{{checkout.status}}" wx:if="{{checkout}}"></view>
  122 + 提前买单
  123 + </view>
  124 + <seller-discount id="seller-discount" seller="{{detail.seller}}" wx:if="{{detail.seller}}"
  125 + cla="money-tips detail_owner"></seller-discount>
  126 + </view>
  127 + </userinfo>
  128 + </view>
  129 + </block>
101 </block> 130 </block>
102 <view style="height: 40rpx;"></view> 131 <view style="height: 40rpx;"></view>
103 <card seller="{{detail.seller}}" detail="{{detail}}" bindevent="cardEvent"></card> 132 <card seller="{{detail.seller}}" detail="{{detail}}" bindevent="cardEvent"></card>
@@ -133,7 +162,7 @@ @@ -133,7 +162,7 @@
133 </block> 162 </block>
134 <view style="margin-left: 12rpx;">等{{detail.customers.length}}人已参加</view> 163 <view style="margin-left: 12rpx;">等{{detail.customers.length}}人已参加</view>
135 </view> 164 </view>
136 - <image src="http://qn.colorcun.com/custom/lite-yd/image/click.png" class="more"></image> 165 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/click.png" class="more"></image>
137 </view> 166 </view>
138 </formids> 167 </formids>
139 </block> 168 </block>
@@ -142,12 +171,40 @@ @@ -142,12 +171,40 @@
142 <view class="flex-rr"> 171 <view class="flex-rr">
143 <view class="item" bindtap="callSeller">联系商家</view> 172 <view class="item" bindtap="callSeller">联系商家</view>
144 <navigator url="./cancel?id={{detail.id}}" 173 <navigator url="./cancel?id={{detail.id}}"
145 - wx:if="{{detail.hasRunning || detail.status==0}}" 174 + wx:if="{{(detail.hasRunning || detail.status==0) && checkout.status!=3}}"
146 hover-class="navigator-hover"> 175 hover-class="navigator-hover">
147 <view class="item" >取消预订</view> 176 <view class="item" >取消预订</view>
148 </navigator> 177 </navigator>
149 </view> 178 </view>
150 </view> 179 </view>
  180 + <block wx:if="{{checkout.status==3}}">
  181 + <view class="hr" style="margin-top: 78rpx;margin-bottom: 78rpx;"></view>
  182 + <view class="detail-info Medium" style="margin-top: 56rpx;">
  183 + <view class="flex-lr">
  184 + <view>实付金额</view>
  185 + <view class="detail-info-right" style="color:rgba(224,32,32,1);">¥{{checkout.should_price}}</view>
  186 + </view>
  187 + <view class="flex-lr" style="margin-top: 26rpx;">
  188 + <view></view>
  189 + <navigator url="/pack-checkout/pages/index?sid={{detail.seller.id}}&rid={{detail.id}}">
  190 + <view class="detail-info-right see-pics">查看消费详情</view>
  191 + </navigator>
  192 + </view>
  193 + </view>
  194 + </block>
  195 + <block wx:if="{{checkout.invoice}}">
  196 + <view class="hr" style="margin-top: 78rpx;margin-bottom: 78rpx;"></view>
  197 + <view class="detail-info Medium" style="margin-top: 56rpx;">
  198 + <view class="flex-lr">
  199 + <view>发票</view>
  200 + <view class="detail-info-right">{{checkout.invoice.title}}</view>
  201 + </view>
  202 + <view class="flex-lr" style="margin-top: 26rpx;">
  203 + <view></view>
  204 + <view class="detail-info-right">{{checkout.invoice.taxnumber}}</view>
  205 + </view>
  206 + </view>
  207 + </block>
151 <block wx:if="{{rsl.length>0}}"> 208 <block wx:if="{{rsl.length>0}}">
152 <view class="line-push">为你推荐</view> 209 <view class="line-push">为你推荐</view>
153 <view class="transverse-list"> 210 <view class="transverse-list">
@@ -174,4 +231,6 @@ @@ -174,4 +231,6 @@
174 </view> 231 </view>
175 <manager manager="{{detail}}" id="manager"></manager> 232 <manager manager="{{detail}}" id="manager"></manager>
176 <as id="as" items="{{detail.seller.seller_tel}}" bindclick="callSellerPhone">拨打电话</as> 233 <as id="as" items="{{detail.seller.seller_tel}}" bindclick="callSellerPhone">拨打电话</as>
177 -<getpos bindpos="onpos" id="getpos" hasAllowFail hasAllowLoading="{{false}}"></getpos>  
  234 +<getpos bindpos="onpos" id="getpos" hasAllowFail hasAllowLoading="{{false}}"></getpos>
  235 +<activity-enter floclass="detail_owner"></activity-enter>
  236 +<showModal id="showModal" confirmText="知道了" bindshowModal="showModal" cla="checkout"></showModal>
@@ -45,9 +45,6 @@ @@ -45,9 +45,6 @@
45 width: 100%; 45 width: 100%;
46 background-color: #262628; 46 background-color: #262628;
47 } 47 }
48 -.share-view-cookbook:last-child{  
49 - border-width: 0;  
50 -}  
51 .share-view-cookbook{ 48 .share-view-cookbook{
52 margin-top: 0rpx; 49 margin-top: 0rpx;
53 margin-bottom: 20rpx; 50 margin-bottom: 20rpx;
@@ -61,6 +58,7 @@ @@ -61,6 +58,7 @@
61 .share-but{ 58 .share-but{
62 width: 100%; 59 width: 100%;
63 text-align: center; 60 text-align: center;
  61 + position: relative;
64 } 62 }
65 63
66 .seller{ 64 .seller{
@@ -136,7 +134,7 @@ @@ -136,7 +134,7 @@
136 text-decoration: underline; 134 text-decoration: underline;
137 } 135 }
138 .line-push{ 136 .line-push{
139 - background-image: url("http://qn.colorcun.com/reserve/images/line-push.png"); 137 + background-image: url("http://nosqn.colorcun.com/reserve/images/line-push.png");
140 width: 328rpx; 138 width: 328rpx;
141 height: 42rpx; 139 height: 42rpx;
142 background-size: 100% 24rpx; 140 background-size: 100% 24rpx;
@@ -160,4 +158,28 @@ @@ -160,4 +158,28 @@
160 } 158 }
161 .share-view.subscribe{ 159 .share-view.subscribe{
162 margin-top: 24rpx; 160 margin-top: 24rpx;
  161 +}
  162 +
  163 +.checkout-icon{
  164 + width: 32rpx;
  165 + height: 32rpx;
  166 + margin-right: 20rpx;
  167 + background-size: 100% 100%;
  168 +}
  169 +.checkout-icon-1{
  170 + background-image: url("http://nosqn.colorcun.com/checkout/images/2.png");
  171 +}
  172 +.checkout-icon-2{
  173 + background-image: url("http://nosqn.colorcun.com/checkout/images/1.png");
  174 +}
  175 +.checkout-icon-3{
  176 + background-image: url("http://nosqn.colorcun.com/checkout/images/1.png");
  177 +}
  178 +.see-pics{
  179 + height:42rpx;
  180 + font-size:30rpx;
  181 + font-weight:500;
  182 + color:rgba(53,53,53,1);
  183 + line-height:42rpx;
  184 + border-bottom: 2rpx solid #353535;
163 } 185 }
@@ -19,18 +19,18 @@ @@ -19,18 +19,18 @@
19 </view> 19 </view>
20 <view class="bottom flex-lr" wx:if="{{true || !detail.hasOvered && !detail.hasCancel}}"> 20 <view class="bottom flex-lr" wx:if="{{true || !detail.hasOvered && !detail.hasCancel}}">
21 <view bindtap="gotoHome" class="dingbaojian flex-vc"> 21 <view bindtap="gotoHome" class="dingbaojian flex-vc">
22 - <image src="http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191114105901.png" class="icon"></image> 22 + <image src="http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191114105901.png" class="icon"></image>
23 <view class="text">订包间</view> 23 <view class="text">订包间</view>
24 </view> 24 </view>
25 <formids bindclick="sendmsg" class="diancan" style="{{detail.seller.is_open_order!=1 && detail.seller.is_open_wine!=1?'width:100%;':''}}"> 25 <formids bindclick="sendmsg" class="diancan" style="{{detail.seller.is_open_order!=1 && detail.seller.is_open_wine!=1?'width:100%;':''}}">
26 <view class="buts-text flex-cc"> 26 <view class="buts-text flex-cc">
27 - <image src="http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911141059011.png" class="icon"></image> 27 + <image src="http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911141059011.png" class="icon"></image>
28 短信通知 28 短信通知
29 </view> 29 </view>
30 </formids> 30 </formids>
31 <userinfo binduserinfo="cookbook" class="diancan left-border" wx:if="{{detail.seller.is_open_order==1}}"> 31 <userinfo binduserinfo="cookbook" class="diancan left-border" wx:if="{{detail.seller.is_open_order==1}}">
32 <view class="buts-text flex-cc"> 32 <view class="buts-text flex-cc">
33 - <image src="http://qn.colorcun.com/manager-invitation/wx2/%E6%8F%90%E5%89%8D%E7%82%B9%E9%A4%90.png" class="icon"></image> 33 + <image src="http://nosqn.colorcun.com/manager-invitation/wx2/%E6%8F%90%E5%89%8D%E7%82%B9%E9%A4%90.png" class="icon"></image>
34 提前点餐 34 提前点餐
35 </view> 35 </view>
36 </userinfo> 36 </userinfo>
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
38 <view class="vline" wx:if="{{detail.seller.is_open_order==1}}" ></view> 38 <view class="vline" wx:if="{{detail.seller.is_open_order==1}}" ></view>
39 <formids bindclick="toast" class="jiushui"> 39 <formids bindclick="toast" class="jiushui">
40 <view class="buts-text flex-cc"> 40 <view class="buts-text flex-cc">
41 - <image src="http://qn.colorcun.com/manager-invitation/wx2/%E8%87%AA%E5%B8%A6%E9%85%92%E6%B0%B4.png" class="icon"></image> 41 + <image src="http://nosqn.colorcun.com/manager-invitation/wx2/%E8%87%AA%E5%B8%A6%E9%85%92%E6%B0%B4.png" class="icon"></image>
42 自带酒水 42 自带酒水
43 </view> 43 </view>
44 </formids> 44 </formids>
@@ -11,10 +11,10 @@ image{ @@ -11,10 +11,10 @@ image{
11 height: 100%; 11 height: 100%;
12 } 12 }
13 .buts-share{ 13 .buts-share{
14 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png"); 14 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png");
15 } 15 }
16 .buts-share.customer{ 16 .buts-share.customer{
17 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png"); 17 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png");
18 } 18 }
19 19
20 .shangwu{ 20 .shangwu{
@@ -26,12 +26,12 @@ image{ @@ -26,12 +26,12 @@ image{
26 .shangwu .invit-logo.owner{ 26 .shangwu .invit-logo.owner{
27 width: 380rpx; 27 width: 380rpx;
28 height: 200rpx; 28 height: 200rpx;
29 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"); 29 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png");
30 } 30 }
31 .shangwu .invit-logo.customer{ 31 .shangwu .invit-logo.customer{
32 width: 352rpx; 32 width: 352rpx;
33 height: 164rpx; 33 height: 164rpx;
34 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/invit-logo.png"); 34 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/invit-logo.png");
35 } 35 }
36 36
37 37
@@ -47,12 +47,12 @@ image{ @@ -47,12 +47,12 @@ image{
47 .wenxin .invit-logo.owner{ 47 .wenxin .invit-logo.owner{
48 width: 340rpx; 48 width: 340rpx;
49 height: 184rpx; 49 height: 184rpx;
50 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"); 50 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png");
51 } 51 }
52 .wenxin .invit-logo.customer{ 52 .wenxin .invit-logo.customer{
53 width: 344rpx; 53 width: 344rpx;
54 height: 198rpx; 54 height: 198rpx;
55 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png"); 55 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png");
56 } 56 }
57 57
58 .bottom{ 58 .bottom{
@@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
12 --> 12 -->
13 <block wx:if="{{total==0}}"> 13 <block wx:if="{{total==0}}">
14 <view class="flex-vc empry"> 14 <view class="flex-vc empry">
15 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png"></image> 15 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png"></image>
16 <view class="Medium">暂无日程</view> 16 <view class="Medium">暂无日程</view>
17 </view> 17 </view>
18 </block> 18 </block>
@@ -25,12 +25,19 @@ @@ -25,12 +25,19 @@
25 <card hasListShare bindevent="gotoDetail" 25 <card hasListShare bindevent="gotoDetail"
26 seller="{{detail.seller}}" detail="{{detail}}"> 26 seller="{{detail.seller}}" detail="{{detail}}">
27 <view slot="listshare" style="height:52rpx;line-height:52rpx;margin-top:4rpx;"> 27 <view slot="listshare" style="height:52rpx;line-height:52rpx;margin-top:4rpx;">
28 - <userinfo wx:if="{{detail.hasOwner}}"  
29 - data-id="{{detail.id}}"  
30 - binduserinfo="gotoDetailHan">  
31 - <!--<view class="opt-button">{{detail.hasOwner?'邀请':'分享日程'}}</view>-->  
32 - <view class="opt-button">邀请同行好友</view>  
33 - </userinfo> 28 + <view class="flex-rr" wx:if="{{detail.hasOwner}}">
  29 + <userinfo
  30 + data-id="{{detail.id}}"
  31 + binduserinfo="gotoDetailHan">
  32 + <!--<view class="opt-button">{{detail.hasOwner?'邀请':'分享日程'}}</view>-->
  33 + <view class="opt-button">邀请同行好友</view>
  34 + </userinfo>
  35 + <navigator
  36 + wx:if="{{detail.bill_status!=3 && detail.seller.isopen_md==1}}"
  37 + url="/pack-checkout/pages/index?rid={{detail.id}}&sid={{detail.seller.id}}">
  38 + <view class="opt-button">提前买单</view>
  39 + </navigator>
  40 + </view>
34 <userinfo-share wx:else="{{}}" 41 <userinfo-share wx:else="{{}}"
35 id="userinfo-share-{{detail.id}}" 42 id="userinfo-share-{{detail.id}}"
36 binduserinfo="userinfo" 43 binduserinfo="userinfo"
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 </view> 16 </view>
17 </block> 17 </block>
18 <view wx:else="" class="history-is-empty flex-vc Medium"> 18 <view wx:else="" class="history-is-empty flex-vc Medium">
19 - <image src="http://qn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image> 19 + <image src="http://nosqn.colorcun.com/custom/lite-yd/image/history-is-empty.png"></image>
20 <view>暂时还没有客户</view> 20 <view>暂时还没有客户</view>
21 </view> 21 </view>
22 <view wx:if="{{!hasMore}}" class="row flex-vc">已经到底了</view> 22 <view wx:if="{{!hasMore}}" class="row flex-vc">已经到底了</view>
1 /* pages/book/setting/index.wxss */ 1 /* pages/book/setting/index.wxss */
2 /* 2 /*
3 -http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png  
4 -http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png 3 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png
  4 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png
5 */ 5 */
6 .pages{ 6 .pages{
7 width: 90%; 7 width: 90%;
@@ -7,13 +7,13 @@ @@ -7,13 +7,13 @@
7 <view class="opt flex-cc"> 7 <view class="opt flex-cc">
8 <formids class="button-none flex-vc" bindclick="lookLocation"> 8 <formids class="button-none flex-vc" bindclick="lookLocation">
9 <view class="opt-text flex-cc"> 9 <view class="opt-text flex-cc">
10 - <image class="buts-dh" src="http://qn.colorcun.com/manager-invitation/wx2/%E4%B8%80%E9%94%AE%E5%AF%BC%E8%88%AA.png"></image> 10 + <image class="buts-dh" src="http://nosqn.colorcun.com/manager-invitation/wx2/%E4%B8%80%E9%94%AE%E5%AF%BC%E8%88%AA.png"></image>
11 <view class="buts-text">一键导航</view> 11 <view class="buts-text">一键导航</view>
12 </view> 12 </view>
13 </formids> 13 </formids>
14 <userinfo-share class="button-none flex-vc" binduserinfo="toast"> 14 <userinfo-share class="button-none flex-vc" binduserinfo="toast">
15 <view class="opt-text flex-cc"> 15 <view class="opt-text flex-cc">
16 - <image class="buts-sh" src="http://qn.colorcun.com/manager-invitation/wx2/%E8%BD%AC%E5%8F%91%E7%BB%99%E5%A5%BD%E5%8F%8B.png"></image> 16 + <image class="buts-sh" src="http://nosqn.colorcun.com/manager-invitation/wx2/%E8%BD%AC%E5%8F%91%E7%BB%99%E5%A5%BD%E5%8F%8B.png"></image>
17 <view class="buts-text">转发给好友</view> 17 <view class="buts-text">转发给好友</view>
18 </view> 18 </view>
19 </userinfo-share> 19 </userinfo-share>
@@ -72,7 +72,7 @@ @@ -72,7 +72,7 @@
72 <view class="flex-vc wenxin"> 72 <view class="flex-vc wenxin">
73 <view class="invit-logo {{hasOwner?'owner':'customer'}}"></view> 73 <view class="invit-logo {{hasOwner?'owner':'customer'}}"></view>
74 <view class="wenxin-mask"> 74 <view class="wenxin-mask">
75 - <view class="wenxin-mask-bg" style="background-image: url({{image||'http://qn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view> 75 + <view class="wenxin-mask-bg" style="background-image: url({{image||'http://nosqn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view>
76 <view class="wenxin-mask-img"></view> 76 <view class="wenxin-mask-img"></view>
77 </view> 77 </view>
78 <view class="wenxin-line"></view> 78 <view class="wenxin-line"></view>
@@ -81,7 +81,7 @@ @@ -81,7 +81,7 @@
81 <view class="content">{{name}}</view> 81 <view class="content">{{name}}</view>
82 <view class="content">{{room}}</view> 82 <view class="content">{{room}}</view>
83 <view class="content flex-cc addr" bindtap="lookLocation"> 83 <view class="content flex-cc addr" bindtap="lookLocation">
84 - <image src="http://qn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image> 84 + <image src="http://nosqn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image>
85 {{addr}} 85 {{addr}}
86 </view> 86 </view>
87 </view> 87 </view>
@@ -12,10 +12,10 @@ image{ @@ -12,10 +12,10 @@ image{
12 } 12 }
13 13
14 .buts-share{ 14 .buts-share{
15 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png"); 15 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E5%8F%91%E9%82%80%E8%AF%B7%E5%87%BD.png");
16 } 16 }
17 .buts-share.customer{ 17 .buts-share.customer{
18 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png"); 18 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E7%A1%AE%E8%AE%A4%E6%94%B6%E5%88%B0.png");
19 } 19 }
20 20
21 .shangwu{ 21 .shangwu{
@@ -27,12 +27,12 @@ image{ @@ -27,12 +27,12 @@ image{
27 .shangwu .invit-logo.owner{ 27 .shangwu .invit-logo.owner{
28 width: 380rpx; 28 width: 380rpx;
29 height: 200rpx; 29 height: 200rpx;
30 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"); 30 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png");
31 } 31 }
32 .shangwu .invit-logo.customer{ 32 .shangwu .invit-logo.customer{
33 width: 352rpx; 33 width: 352rpx;
34 height: 164rpx; 34 height: 164rpx;
35 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/invit-logo.png"); 35 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/invit-logo.png");
36 } 36 }
37 37
38 38
@@ -48,10 +48,10 @@ image{ @@ -48,10 +48,10 @@ image{
48 .wenxin .invit-logo.owner{ 48 .wenxin .invit-logo.owner{
49 width: 340rpx; 49 width: 340rpx;
50 height: 184rpx; 50 height: 184rpx;
51 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"); 51 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png");
52 } 52 }
53 .wenxin .invit-logo.customer{ 53 .wenxin .invit-logo.customer{
54 width: 344rpx; 54 width: 344rpx;
55 height: 198rpx; 55 height: 198rpx;
56 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png"); 56 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E9%82%80%E8%AF%B7%E5%87%BD.png");
57 } 57 }
@@ -23,7 +23,7 @@ Page({ @@ -23,7 +23,7 @@ Page({
23 latitude:'', 23 latitude:'',
24 longitude:'', 24 longitude:'',
25 }, 25 },
26 - defImage:'http://qn.colorcun.com/manager-invitation/wx/upload2.jpg', 26 + defImage:'http://nosqn.colorcun.com/manager-invitation/wx/upload2.jpg',
27 tpl:{}, 27 tpl:{},
28 timeStr:'', 28 timeStr:'',
29 searchlist:[], 29 searchlist:[],
@@ -44,7 +44,7 @@ @@ -44,7 +44,7 @@
44 data-key="addr" 44 data-key="addr"
45 placeholder="请输入店铺地址" placeholder-class="placeholder-class"/> 45 placeholder="请输入店铺地址" placeholder-class="placeholder-class"/>
46 <view class="caddr flex-rr" bindtap="onChangeAddress"> 46 <view class="caddr flex-rr" bindtap="onChangeAddress">
47 - <image src="http://qn.colorcun.com/manager-invitation/wx/caddr.png" style="width: 28rpx; height: 36rpx;"></image> 47 + <image src="http://nosqn.colorcun.com/manager-invitation/wx/caddr.png" style="width: 28rpx; height: 36rpx;"></image>
48 </view> 48 </view>
49 </view> 49 </view>
50 </view> 50 </view>
@@ -25,11 +25,11 @@ page{ @@ -25,11 +25,11 @@ page{
25 } 25 }
26 .steps .icon.home{ 26 .steps .icon.home{
27 margin-right: 40rpx; 27 margin-right: 40rpx;
28 - background-image: url("http://qn.colorcun.com/manager-invitation/%E5%95%86%E5%AE%B6.png"); 28 + background-image: url("http://nosqn.colorcun.com/manager-invitation/%E5%95%86%E5%AE%B6.png");
29 } 29 }
30 .steps .icon.user{ 30 .steps .icon.user{
31 margin-left: 20rpx; 31 margin-left: 20rpx;
32 - background-image: url("http://qn.colorcun.com/manager-invitation/%E9%A1%BE%E5%AE%A2.png"); 32 + background-image: url("http://nosqn.colorcun.com/manager-invitation/%E9%A1%BE%E5%AE%A2.png");
33 } 33 }
34 .steps .dot{ 34 .steps .dot{
35 width: 12rpx; 35 width: 12rpx;
@@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
29 <template name="tpl-1"> 29 <template name="tpl-1">
30 <view class="flex-vc shangwu" bindtap="{{options.rid?'goEditor':''}}"> 30 <view class="flex-vc shangwu" bindtap="{{options.rid?'goEditor':''}}">
31 <view class="invit-logo"> 31 <view class="invit-logo">
32 - <image src="http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"></image> 32 + <image src="http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92.png"></image>
33 <view class="quick-editor" wx:if="{{options.rid}}">修改内容</view> 33 <view class="quick-editor" wx:if="{{options.rid}}">修改内容</view>
34 </view> 34 </view>
35 <view class="shangwu-line"></view> 35 <view class="shangwu-line"></view>
@@ -74,11 +74,11 @@ @@ -74,11 +74,11 @@
74 <view class="wenxin-bottom"></view> 74 <view class="wenxin-bottom"></view>
75 <view class="flex-vc wenxin" bindtap="{{options.rid?'goEditor':''}}"> 75 <view class="flex-vc wenxin" bindtap="{{options.rid?'goEditor':''}}">
76 <view class="invit-logo"> 76 <view class="invit-logo">
77 - <image src="http://qn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"></image> 77 + <image src="http://nosqn.colorcun.com/manager-invitation/wx2/%E9%A2%84%E8%AE%A2%E5%AE%89%E6%8E%92-%E6%B8%A9%E9%A6%A8.png"></image>
78 <view class="quick-editor" wx:if="{{options.rid}}">修改内容</view> 78 <view class="quick-editor" wx:if="{{options.rid}}">修改内容</view>
79 </view> 79 </view>
80 <view class="wenxin-mask"> 80 <view class="wenxin-mask">
81 - <view class="wenxin-mask-bg" style="background-image: url({{image||'http://qn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view> 81 + <view class="wenxin-mask-bg" style="background-image: url({{image||'http://nosqn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view>
82 <view class="wenxin-mask-img"></view> 82 <view class="wenxin-mask-img"></view>
83 </view> 83 </view>
84 <view class="wenxin-line"></view> 84 <view class="wenxin-line"></view>
@@ -87,7 +87,7 @@ @@ -87,7 +87,7 @@
87 <view class="content">{{name}}</view> 87 <view class="content">{{name}}</view>
88 <view class="content">{{room}}</view> 88 <view class="content">{{room}}</view>
89 <view class="content flex-cc addr"> 89 <view class="content flex-cc addr">
90 - <image src="http://qn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image> 90 + <image src="http://nosqn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image>
91 {{addr}} 91 {{addr}}
92 </view> 92 </view>
93 </view> 93 </view>
1 /* pages/book/setting/index.wxss */ 1 /* pages/book/setting/index.wxss */
2 /* 2 /*
3 -http://qn.colorcun.com/custom/lite-yd/image/icon-zk.png  
4 -http://qn.colorcun.com/custom/lite-yd/image/icon-cz.png 3 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-zk.png
  4 +http://nosqn.colorcun.com/custom/lite-yd/image/icon-cz.png
5 */ 5 */
6 .header{ 6 .header{
7 background-color: #199095; 7 background-color: #199095;
@@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
14 data-key="address" 14 data-key="address"
15 placeholder="请输入店铺地址" placeholder-class="placeholder-class"/> 15 placeholder="请输入店铺地址" placeholder-class="placeholder-class"/>
16 <view class="caddr flex-rr" bindtap="onChangeAddress"> 16 <view class="caddr flex-rr" bindtap="onChangeAddress">
17 - <image src="http://qn.colorcun.com/manager-invitation/wx/caddr.png" style="width: 28rpx; height: 36rpx;"></image> 17 + <image src="http://nosqn.colorcun.com/manager-invitation/wx/caddr.png" style="width: 28rpx; height: 36rpx;"></image>
18 </view> 18 </view>
19 </view> 19 </view>
20 <view class="item flex-lr"> 20 <view class="item flex-lr">
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 </block> 13 </block>
14 </view> 14 </view>
15 <view class="pages flex-vc" wx:else=""> 15 <view class="pages flex-vc" wx:else="">
16 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png" class="empty-image"></image> 16 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png" class="empty-image"></image>
17 <view class="empty-text">您还没有添加工作店铺</view> 17 <view class="empty-text">您还没有添加工作店铺</view>
18 <formids url="./seller-editor" style="width: 110%"> 18 <formids url="./seller-editor" style="width: 110%">
19 <view class="create-but">立即添加</view> 19 <view class="create-but">立即添加</view>
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <view class="pages"> 3 <view class="pages">
4 <view class="flex-vc empty" wx:if="{{sellers.length<1}}"> 4 <view class="flex-vc empty" wx:if="{{sellers.length<1}}">
5 <block wx:if="{{!hasFirstShow}}"> 5 <block wx:if="{{!hasFirstShow}}">
6 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png"></image> 6 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png"></image>
7 <view>您还没有收藏任何餐厅哦</view> 7 <view>您还没有收藏任何餐厅哦</view>
8 </block> 8 </block>
9 </view> 9 </view>
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 <view class="pages"> 3 <view class="pages">
4 <view class="flex-vc empty" wx:if="{{sellersLength<1}}"> 4 <view class="flex-vc empty" wx:if="{{sellersLength<1}}">
5 <block wx:if="{{!hasFirstShow}}"> 5 <block wx:if="{{!hasFirstShow}}">
6 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png"></image> 6 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png"></image>
7 <view class="text">您还没有留下足迹哦~</view> 7 <view class="text">您还没有留下足迹哦~</view>
8 <view class="goHome" bindtap="goHome">去首页逛逛</view> 8 <view class="goHome" bindtap="goHome">去首页逛逛</view>
9 </block> 9 </block>
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 <view class="seller-item flex-ll" wx:for="{{group.sellers}}" wx:key="groupSellerskey" wx:for-item="seller" 19 <view class="seller-item flex-ll" wx:for="{{group.sellers}}" wx:key="groupSellerskey" wx:for-item="seller"
20 bindtap="gotoDetail" data-sid="{{seller.id}}"> 20 bindtap="gotoDetail" data-sid="{{seller.id}}">
21 <image mode="aspectFill" class="image" 21 <image mode="aspectFill" class="image"
22 - src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://qn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png'}}"></image> 22 + src="{{seller.seller_image?seller.seller_image+'?imageView2/2/w/320/interlace/0/q/100':'http://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png'}}"></image>
23 <view class="seller-item-info"> 23 <view class="seller-item-info">
24 <view class="seller-item-name">{{seller.sellername}}</view> 24 <view class="seller-item-name">{{seller.sellername}}</view>
25 <view class="seller-item-price" wx:if="{{seller.average>0}}">¥{{seller.average}}元/人</view> 25 <view class="seller-item-price" wx:if="{{seller.average>0}}">¥{{seller.average}}元/人</view>
@@ -35,7 +35,7 @@ page{ @@ -35,7 +35,7 @@ page{
35 z-index: 10; 35 z-index: 10;
36 } 36 }
37 .clean-img{ 37 .clean-img{
38 - background-image: url("http://qn.colorcun.com/reserve/images/20191224153853.png"); 38 + background-image: url("http://nosqn.colorcun.com/reserve/images/20191224153853.png");
39 background-size: 100% 100%; 39 background-size: 100% 100%;
40 width: 24rpx; 40 width: 24rpx;
41 height: 24rpx; 41 height: 24rpx;
@@ -59,7 +59,7 @@ page{ @@ -59,7 +59,7 @@ page{
59 margin: 0 auto; 59 margin: 0 auto;
60 } 60 }
61 .line-push{ 61 .line-push{
62 - background-image: url("http://qn.colorcun.com/reserve/images/line-push.png"); 62 + background-image: url("http://nosqn.colorcun.com/reserve/images/line-push.png");
63 width: 328rpx; 63 width: 328rpx;
64 height: 42rpx; 64 height: 42rpx;
65 background-size: 100% 24rpx; 65 background-size: 100% 24rpx;
@@ -29,6 +29,11 @@ Page({ @@ -29,6 +29,11 @@ Page({
29 hasManagerInvitation: true, 29 hasManagerInvitation: true,
30 }) 30 })
31 } 31 }
  32 + App.User.GetBalance().then(res=>{
  33 + this.setData({
  34 + user:res.data
  35 + })
  36 + })
32 }) 37 })
33 }, 38 },
34 39
@@ -43,7 +48,11 @@ Page({ @@ -43,7 +48,11 @@ Page({
43 * 生命周期函数--监听页面显示 48 * 生命周期函数--监听页面显示
44 */ 49 */
45 onShow: function () { 50 onShow: function () {
46 - 51 + App.User.GetBalance().then(res=>{
  52 + this.setData({
  53 + user:res.data
  54 + })
  55 + })
47 }, 56 },
48 57
49 /** 58 /**
@@ -11,6 +11,20 @@ @@ -11,6 +11,20 @@
11 </view> 11 </view>
12 </view> 12 </view>
13 <view class="pages"> 13 <view class="pages">
  14 + <view class="block-rev money flex-lr">
  15 + <navigator url="/pack-activity/pages/money" class="money-item">
  16 + <view class="flex-vc">
  17 + <view class="money-value">¥{{user.balance.price||0}}</view>
  18 + <view class="money-title">余额</view>
  19 + </view>
  20 + </navigator>
  21 + <navigator url="/pack-activity/pack/pack" class="money-item">
  22 + <view class="flex-vc">
  23 + <view class="money-value">{{user.card}}</view>
  24 + <view class="money-title">红包</view>
  25 + </view>
  26 + </navigator>
  27 + </view>
14 <view class="block-rev"> 28 <view class="block-rev">
15 <navigator url="/pages/me/list"> 29 <navigator url="/pages/me/list">
16 <view class="title flex-lr"> 30 <view class="title flex-lr">
@@ -45,6 +45,7 @@ image{ @@ -45,6 +45,7 @@ image{
45 border-radius:10rpx; 45 border-radius:10rpx;
46 margin-bottom: 20rpx; 46 margin-bottom: 20rpx;
47 } 47 }
  48 +
48 .block-rev .title{ 49 .block-rev .title{
49 box-sizing: border-box; 50 box-sizing: border-box;
50 height: 100rpx; 51 height: 100rpx;
@@ -55,6 +56,9 @@ image{ @@ -55,6 +56,9 @@ image{
55 font-size:30rpx; 56 font-size:30rpx;
56 font-weight:600; 57 font-weight:600;
57 } 58 }
  59 +.block-rev.money .title{
  60 + border-bottom-width: 0;
  61 +}
58 .block-rev .content{ 62 .block-rev .content{
59 height: 198rpx; 63 height: 198rpx;
60 box-sizing: border-box; 64 box-sizing: border-box;
@@ -72,32 +76,32 @@ image{ @@ -72,32 +76,32 @@ image{
72 margin-bottom: 20rpx; 76 margin-bottom: 20rpx;
73 } 77 }
74 .icon.o1{ 78 .icon.o1{
75 - background-image: url("http://qn.colorcun.com/custom/me/image/o1.png"); 79 + background-image: url("http://nosqn.colorcun.com/custom/me/image/o1.png");
76 } 80 }
77 .icon.o2{ 81 .icon.o2{
78 - background-image: url("http://qn.colorcun.com/custom/me/image/o2.png"); 82 + background-image: url("http://nosqn.colorcun.com/custom/me/image/o2.png");
79 } 83 }
80 .icon.o3{ 84 .icon.o3{
81 - background-image: url("http://qn.colorcun.com/custom/me/image/o3.png"); 85 + background-image: url("http://nosqn.colorcun.com/custom/me/image/o3.png");
82 } 86 }
83 .icon.o4{ 87 .icon.o4{
84 - background-image: url("http://qn.colorcun.com/custom/me/image/o4.png"); 88 + background-image: url("http://nosqn.colorcun.com/custom/me/image/o4.png");
85 } 89 }
86 .block-rev .picon{ 90 .block-rev .picon{
87 width:38rpx; 91 width:38rpx;
88 height:38rpx; 92 height:38rpx;
89 } 93 }
90 .picon.p1{ 94 .picon.p1{
91 - background-image: url("http://qn.colorcun.com/custom/me/image/p1.png"); 95 + background-image: url("http://nosqn.colorcun.com/custom/me/image/p1.png");
92 } 96 }
93 .picon.p2{ 97 .picon.p2{
94 - background-image: url("http://qn.colorcun.com/custom/me/image/p2.png"); 98 + background-image: url("http://nosqn.colorcun.com/custom/me/image/p2.png");
95 } 99 }
96 .picon.p3{ 100 .picon.p3{
97 - background-image: url("http://qn.colorcun.com/custom/me/image/p3.png"); 101 + background-image: url("http://nosqn.colorcun.com/custom/me/image/p3.png");
98 } 102 }
99 .picon.p4{ 103 .picon.p4{
100 - background-image: url("http://qn.colorcun.com/reserve/images/201912241538531.png"); 104 + background-image: url("http://nosqn.colorcun.com/reserve/images/201912241538531.png");
101 } 105 }
102 .block-rev .width3{ 106 .block-rev .width3{
103 width: 75%; 107 width: 75%;
@@ -140,13 +144,42 @@ image{ @@ -140,13 +144,42 @@ image{
140 width: 32rpx; 144 width: 32rpx;
141 height:30rpx; 145 height:30rpx;
142 background-size: 100%; 146 background-size: 100%;
143 - background-image: url("http://qn.colorcun.com/custom/me/image/l1.png"); 147 + background-image: url("http://nosqn.colorcun.com/custom/me/image/l1.png");
144 margin-right: 20rpx; 148 margin-right: 20rpx;
145 } 149 }
146 .item-name .tuco{ 150 .item-name .tuco{
147 width: 34rpx; 151 width: 34rpx;
148 height:26rpx; 152 height:26rpx;
149 background-size: 100%; 153 background-size: 100%;
150 - background-image: url("http://qn.colorcun.com/custom/me/image/l2.png"); 154 + background-image: url("http://nosqn.colorcun.com/custom/me/image/l2.png");
151 margin-right: 20rpx; 155 margin-right: 20rpx;
  156 +}
  157 +.block-rev.money{
  158 + height: 160rpx;
  159 +
  160 +}
  161 +.money-title{
  162 + height:40rpx;
  163 + font-size:28rpx;
  164 + font-family:PingFangSC-Medium,PingFang SC;
  165 + font-weight:500;
  166 + color:rgba(136,136,136,1);
  167 + line-height:40rpx;
  168 +}
  169 +.money-value{
  170 + height:48rpx;
  171 + font-size:34rpx;
  172 + font-family:PingFangSC-Medium,PingFang SC;
  173 + font-weight:500;
  174 + color:rgba(0,0,0,1);
  175 + line-height:48rpx;
  176 +}
  177 +.money-item{
  178 + width: 50%;
  179 + box-sizing: border-box;
  180 + height: 88rpx;
  181 + border-right: 2rpx solid #F5F5F5;
  182 +}
  183 +.money-item:last-child{
  184 + border-right-width: 0;
152 } 185 }
@@ -9,7 +9,7 @@ @@ -9,7 +9,7 @@
9 <view class="page"> 9 <view class="page">
10 <block wx:if="{{list[tabType].length==0}}"> 10 <block wx:if="{{list[tabType].length==0}}">
11 <view class="flex-vc empry"> 11 <view class="flex-vc empry">
12 - <image src="http://qn.colorcun.com/reserve/images/order-empty.png"></image> 12 + <image src="http://nosqn.colorcun.com/reserve/images/order-empty.png"></image>
13 <view class="Medium">暂无订单</view> 13 <view class="Medium">暂无订单</view>
14 </view> 14 </view>
15 </block> 15 </block>
@@ -110,7 +110,7 @@ @@ -110,7 +110,7 @@
110 } 110 }
111 111
112 .line-push{ 112 .line-push{
113 - background-image: url("http://qn.colorcun.com/reserve/images/line-push.png"); 113 + background-image: url("http://nosqn.colorcun.com/reserve/images/line-push.png");
114 width: 328rpx; 114 width: 328rpx;
115 height: 42rpx; 115 height: 42rpx;
116 background-size: 100% 24rpx; 116 background-size: 100% 24rpx;
@@ -41,7 +41,7 @@ Page({ @@ -41,7 +41,7 @@ Page({
41 seller.distanceStr=seller.distance+'米'; 41 seller.distanceStr=seller.distance+'米';
42 } 42 }
43 if(seller.envi_image.length<1){ 43 if(seller.envi_image.length<1){
44 - seller.envi_image=['http://qn.colorcun.com/custom/lite-online/image/def-banner.png'] 44 + seller.envi_image=['http://nosqn.colorcun.com/custom/lite-online/image/def-banner.png']
45 } 45 }
46 this.setData({ 46 this.setData({
47 seller:seller, 47 seller:seller,
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
2 <nav>更多优惠</nav> 2 <nav>更多优惠</nav>
3 <view class="pages"> 3 <view class="pages">
4 <view class="title flex-ll Semibold"> 4 <view class="title flex-ll Semibold">
5 - <image src="http://qn.colorcun.com/custom/lite-online/image%E5%96%87%E5%8F%AD.png"></image> 5 + <image src="http://nosqn.colorcun.com/custom/lite-online/image%E5%96%87%E5%8F%AD.png"></image>
6 优惠活动 6 优惠活动
7 </view> 7 </view>
8 <view class="activity" > 8 <view class="activity" >
@@ -9,7 +9,7 @@ Page({ @@ -9,7 +9,7 @@ Page({
9 * 页面的初始数据 9 * 页面的初始数据
10 */ 10 */
11 data: { 11 data: {
12 - seller:{}, 12 + seller:null,
13 IsCollectionSeller:false, 13 IsCollectionSeller:false,
14 pagesHeight:'auto', 14 pagesHeight:'auto',
15 current:0, 15 current:0,
@@ -74,7 +74,11 @@ Page({ @@ -74,7 +74,11 @@ Page({
74 } 74 }
75 } 75 }
76 if(seller.envi_image.length<1){ 76 if(seller.envi_image.length<1){
77 - seller.envi_image=['http://qn.colorcun.com/custom/lite-online/image/def-banner.png'] 77 + seller.envi_image=['http://nosqn.colorcun.com/custom/lite-online/image/def-banner.png']
  78 + }else{
  79 + seller.envi_image.some((url,i)=>{
  80 + seller.envi_image[i]=url.replace('//qn.colorcun','//nosqn.colorcun')
  81 + })
78 } 82 }
79 if(seller.label_c.length>0) { 83 if(seller.label_c.length>0) {
80 let label_cstr=[]; 84 let label_cstr=[];
@@ -83,6 +87,30 @@ Page({ @@ -83,6 +87,30 @@ Page({
83 }) 87 })
84 seller.label_cstr=label_cstr.join(' | ') 88 seller.label_cstr=label_cstr.join(' | ')
85 } 89 }
  90 + if(seller.room_image.length>0){
  91 + seller.room_image.some((url,i)=>{
  92 + seller.room_image[i]=url.replace('//qn.colorcun','//nosqn.colorcun')
  93 + })
  94 + }
  95 + if(seller.dishes.length>0){
  96 + seller.dishes.some((dishes)=>{
  97 + if(dishes.image){
  98 + dishes.image=dishes.image.replace('//qn.colorcun','//nosqn.colorcun')
  99 + }
  100 + })
  101 + }
  102 + if(seller.card_info){
  103 + let xff=[]
  104 + seller.card_info.forEach(card=>{
  105 + seller['receive_condition_'+card.receive_condition]=true
  106 + if(card.receive_condition==2){
  107 + xff.push(`满${card.order_price}元返${card.price}元`)
  108 + }
  109 + })
  110 + if(xff.length>0){
  111 + seller.receive_condition_str=xff.join('/')
  112 + }
  113 + }
86 this.setData({ 114 this.setData({
87 seller:seller, 115 seller:seller,
88 hasOnlineReserve:seller.is_online_reserve==1, 116 hasOnlineReserve:seller.is_online_reserve==1,
@@ -240,26 +268,38 @@ Page({ @@ -240,26 +268,38 @@ Page({
240 this.GetSellerDetail(); 268 this.GetSellerDetail();
241 }, 269 },
242 reviweBanner(){ 270 reviweBanner(){
  271 + let urls=[];
  272 + this.data.seller.envi_image.forEach(url=>{
  273 + if(url){
  274 + urls.push(url+'-zdmask')
  275 + }
  276 + })
243 wx.previewImage({ 277 wx.previewImage({
244 - current:this.data.seller.envi_image[this.data.current],  
245 - urls:this.data.seller.envi_image 278 + current:this.data.seller.envi_image[this.data.current]+'-zdmask',
  279 + urls:urls
246 }) 280 })
247 }, 281 },
248 reviweRoomImage(e){ 282 reviweRoomImage(e){
  283 + let urls=[];
  284 + this.data.seller.room_image.forEach(url=>{
  285 + if(url){
  286 + urls.push(url+'-zdmask')
  287 + }
  288 + })
249 wx.previewImage({ 289 wx.previewImage({
250 - current:util.attr(e,'current'),  
251 - urls:this.data.seller.room_image 290 + current:util.attr(e,'current')+'-zdmask',
  291 + urls:urls
252 }) 292 })
253 }, 293 },
254 reviweDishesImage(e){ 294 reviweDishesImage(e){
255 let urls=[]; 295 let urls=[];
256 this.data.seller.dishes.forEach(d=>{ 296 this.data.seller.dishes.forEach(d=>{
257 if(d.image){ 297 if(d.image){
258 - urls.push(d.image) 298 + urls.push(d.image+'-zdmask')
259 } 299 }
260 }) 300 })
261 wx.previewImage({ 301 wx.previewImage({
262 - current:util.attr(e,'current'), 302 + current:util.attr(e,'current')+'-zdmask',
263 urls:urls 303 urls:urls
264 }) 304 })
265 }, 305 },
@@ -10,12 +10,13 @@ @@ -10,12 +10,13 @@
10 "as":"/components/actionSheet/index", 10 "as":"/components/actionSheet/index",
11 "nav":"/components/nav/nav", 11 "nav":"/components/nav/nav",
12 "getpos":"/components/userinfo/getpos", 12 "getpos":"/components/userinfo/getpos",
13 - "discount":"/components/reserve/discount", 13 + "discount":"/components/reserve/seller/discount",
14 "share":"/components/reserve/share/share", 14 "share":"/components/reserve/share/share",
15 "people":"/components/reserve/people/people", 15 "people":"/components/reserve/people/people",
16 "dur":"/components/reserve/dur/dur", 16 "dur":"/components/reserve/dur/dur",
17 "calendar":"/components/reserve/week-calendar/week-calendar", 17 "calendar":"/components/reserve/week-calendar/week-calendar",
18 - "section":"/components/reserve/section/section",  
19 - "select-room":"/components/reserve/select-room/select-room" 18 + "activity-tips":"/components/activity/tips",
  19 + "section":"/components/reserve/section/section",
  20 + "select-room":"/components/reserve/select-room/select-room"
20 } 21 }
21 } 22 }
1 <!--pages/reserve/detail.wxml--> 1 <!--pages/reserve/detail.wxml-->
2 <layout> 2 <layout>
3 -<nav hasHome>{{seller.sellername}}</nav>  
4 -<!-- 包间预定 -->  
5 -<view class="tabs flex-lr" wx:if="{{hasOnlineReserve}}">  
6 - <view class="tabs-item flex-vc" bindtap="switchTabs" data-act="detail">  
7 - <view class="tabs-item-text {{activeTab=='detail'?'active':''}}">餐厅详情</view>  
8 - </view>  
9 - <view class="tabs-item flex-vc" bindtap="switchTabs" data-act="reserve">  
10 - <view class="tabs-item-text {{activeTab=='reserve'?'active':''}}">包间预订</view> 3 + <nav hasHome>{{seller.sellername}}</nav>
  4 + <!-- 包间预定 -->
  5 + <view class="tabs flex-lr" wx:if="{{hasOnlineReserve}}">
  6 + <view class="tabs-item flex-vc" bindtap="switchTabs" data-act="detail">
  7 + <view class="tabs-item-text {{activeTab=='detail'?'active':''}}">餐厅详情</view>
  8 + </view>
  9 + <view class="tabs-item flex-vc" bindtap="switchTabs" data-act="reserve">
  10 + <view class="tabs-item-text {{activeTab=='reserve'?'active':''}}">包间预订</view>
  11 + </view>
11 </view> 12 </view>
12 -</view>  
13 -<view hidden="{{activeTab!='detail'}}">  
14 - <view class="seller-banner" style="{{pagesHeight!='auto'?'position: fixed;':''}}{{hasOnlineReserve?'margin-top: 80rpx;':''}}">  
15 - <swiper  
16 - indicator-dots="{{false}}" autoplay="{{false}}" circular="{{false}}" vertical="{{false}}"  
17 - interval="2000" duration="500"  
18 - previous-margin="{{0}}px" next-margin="{{0}}px"  
19 - current="{{current}}" bindchange="bindtransition" bindtap="reviweBanner">  
20 - <block wx:for="{{seller.envi_image}}" wx:key="sellers.key">  
21 - <swiper-item>  
22 - <image class="image" mode="aspectFill"  
23 - src="{{item}}?imageView2/2/w/860/interlace/0/q/100" ></image>  
24 - </swiper-item>  
25 - </block>  
26 - </swiper>  
27 - <view class="slogan" wx:if="{{seller.slogan}}">  
28 - <view class="slogan-view flex-ll">  
29 - <view class="dot"></view>  
30 - <view>{{seller.slogan}}</view> 13 + <view hidden="{{activeTab!='detail'}}">
  14 + <view class="seller-banner" style="{{pagesHeight!='auto'?'position: fixed;':''}}{{hasOnlineReserve?'margin-top: 80rpx;':''}}">
  15 + <swiper
  16 + indicator-dots="{{false}}" autoplay="{{false}}" circular="{{false}}" vertical="{{false}}"
  17 + interval="2000" duration="500"
  18 + previous-margin="{{0}}px" next-margin="{{0}}px"
  19 + current="{{current}}" bindchange="bindtransition" bindtap="reviweBanner">
  20 + <block wx:for="{{seller.envi_image}}" wx:key="sellers.key">
  21 + <swiper-item>
  22 + <image class="image" mode="aspectFill"
  23 + src="{{item}}?imageView2/2/w/860/interlace/0/q/100" ></image>
  24 + </swiper-item>
  25 + </block>
  26 + </swiper>
  27 + <view class="slogan" wx:if="{{seller.slogan}}">
  28 + <view class="slogan-view flex-ll">
  29 + <view class="dot"></view>
  30 + <view>{{seller.slogan}}</view>
  31 + </view>
31 </view> 32 </view>
  33 + <view class="swiper-num" wx:if="{{seller.envi_image.length>0}}">{{currentView}} / {{seller.envi_image.length}}</view>
32 </view> 34 </view>
33 - <view class="swiper-num" wx:if="{{seller.envi_image.length>0}}">{{currentView}} / {{seller.envi_image.length}}</view>  
34 - </view>  
35 - <view class="pages" style="height: {{pagesHeight}};overflow:{{pagesHeight=='auto'?'visible':'hidden'}}">  
36 - <view class="seller">  
37 - <view class="base">  
38 - <view class="name Semibold flex-lr">  
39 - <view class="name-info">{{seller.sellername}}  
40 - <view class="broad" wx:if="{{seller.brand}}">  
41 - <view class="broad-1"></view>  
42 - <view class="broad-2">{{seller.brand.name}}</view>  
43 - <view class="broad-3"></view> 35 + <view class="pages" style="height: {{pagesHeight}};overflow:{{pagesHeight=='auto'?'visible':'hidden'}}">
  36 + <view class="seller">
  37 + <view class="base">
  38 + <view class="name Semibold flex-lr">
  39 + <view class="name-info">{{seller.sellername}}
  40 + <view class="broad" wx:if="{{seller.brand}}">
  41 + <view class="broad-1"></view>
  42 + <view class="broad-2">{{seller.brand.name}}</view>
  43 + <view class="broad-3"></view>
  44 + </view>
44 </view> 45 </view>
  46 + <view class="average" wx:if="{{seller.average>0}}">¥{{seller.average}}/人</view>
  47 + </view>
  48 + <view class="ping flex-ll">
  49 + <view class="item" wx:if="{{seller.cate.length>0}}">{{seller.cate[0]}}</view>
  50 + <view class="item" wx:if="{{seller.is_belt_wine!=0}}">{{seller.is_belt_wine==1?'不可带酒水':'可自带酒水'}}</view>
  51 + <view class="item" wx:if="{{seller.is_parking==1}}">停车场</view>
  52 + <view class="item" wx:if="{{seller.room_num>0}}">{{seller.room_num}}个包间</view>
  53 + </view>
  54 + <view class="label_c" wx:if="{{seller.label_cstr}}">
  55 + <text class="label_text" >{{seller.label_cstr}}</text>
45 </view> 56 </view>
46 - <view class="average" wx:if="{{seller.average>0}}">¥{{seller.average}}/人</view>  
47 - </view>  
48 - <view class="ping flex-ll">  
49 - <view class="item" wx:if="{{seller.cate.length>0}}">{{seller.cate[0]}}</view>  
50 - <view class="item" wx:if="{{seller.is_belt_wine!=0}}">{{seller.is_belt_wine==1?'不可带酒水':'可自带酒水'}}</view>  
51 - <view class="item" wx:if="{{seller.is_parking==1}}">停车场</view>  
52 - <view class="item" wx:if="{{seller.room_num>0}}">{{seller.room_num}}个包间</view>  
53 - </view>  
54 - <view class="label_c" wx:if="{{seller.label_cstr}}">  
55 - <text class="label_text" >{{seller.label_cstr}}</text>  
56 </view> 57 </view>
57 - </view>  
58 - <view style="display:{{pagesHeight=='auto'?'block':'none'}}">  
59 - <view class="addr flex-lr" wx:if="{{hasOnlineReserve}}">  
60 - <view class="addr-view" bindtap="lookLocation">  
61 - <view class="addr-text flex-ll">  
62 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E5%AE%9A%E4%BD%8D.png"></image>  
63 - <view class="text">{{seller.real_address||seller.map_address}}</view> 58 + <view style="display:{{pagesHeight=='auto'?'block':'none'}}">
  59 + <view class="addr flex-lr" wx:if="{{hasOnlineReserve}}">
  60 + <view class="addr-view" bindtap="lookLocation">
  61 + <view class="addr-text flex-ll">
  62 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E5%AE%9A%E4%BD%8D.png"></image>
  63 + <view class="text">{{seller.real_address||seller.map_address}}</view>
  64 + </view>
  65 + <view class="addr-long">{{seller.distanceStr?'距您'+seller.distanceStr:''}}</view>
64 </view> 66 </view>
65 - <view class="addr-long">{{seller.distanceStr?'距您'+seller.distanceStr:''}}</view> 67 + <view class="more more-phone" bindtap="reserveEvent" data-act="phone"></view>
66 </view> 68 </view>
67 - <view class="more more-phone" bindtap="reserveEvent" data-act="phone"></view>  
68 - </view>  
69 - <view class="addr flex-lr" bindtap="lookLocation" wx:else="" >  
70 - <view class="addr-view">  
71 - <view class="addr-text flex-ll">  
72 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E5%AE%9A%E4%BD%8D.png"></image>  
73 - <view class="text">{{seller.real_address||seller.map_address}}</view> 69 + <view class="addr flex-lr" bindtap="lookLocation" wx:else="" >
  70 + <view class="addr-view">
  71 + <view class="addr-text flex-ll">
  72 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E5%AE%9A%E4%BD%8D.png"></image>
  73 + <view class="text">{{seller.real_address||seller.map_address}}</view>
  74 + </view>
  75 + <view class="addr-long">{{seller.distanceStr?'距您'+seller.distanceStr:''}}</view>
74 </view> 76 </view>
75 - <view class="addr-long">{{seller.distanceStr?'距您'+seller.distanceStr:''}}</view> 77 + <view class="more more-addr"></view>
76 </view> 78 </view>
77 - <view class="more more-addr"></view>  
78 </view> 79 </view>
79 </view> 80 </view>
80 - </view>  
81 - <view style="display:{{pagesHeight=='auto'?'block':'none'}}">  
82 - <view class="black20line"></view>  
83 - <view class="seller" wx:if="{{seller.activity.length>0}}">  
84 - <formids bindclick="showDiscount">  
85 - <view class="activity-view-easy flex-lr" > 81 + <view style="display:{{pagesHeight=='auto'?'block':'none'}}" wx:if="{{seller}}">
  82 + <view class="black20line"></view>
  83 + <block wx:if="{{seller.isopen_md==1 || seller.card_info.length>0}}">
  84 + <view class="activity-view-easy flex-lr" bindtap="showDiscount">
86 <view class="activity-left flex-ll"> 85 <view class="activity-left flex-ll">
87 - <view class="icon"></view>  
88 - <block wx:for="{{seller.activity}}"  
89 - wx:key="seller.activity.key"  
90 - wx:if="{{index<2}}">  
91 - <view class="discount" >{{item.title}}</view>  
92 - </block> 86 + <view class="activity-view-tit">优惠</view>
  87 + <view class="activity-view-blk" wx:if="{{seller.receive_condition_1}}">进店赠红包</view>
  88 + <view class="activity-view-blk" wx:if="{{seller.receive_condition_2}}">消费赠红包</view>
  89 + <view class="activity-view-blk" wx:if="{{seller.isopen_md==1}}">平台红包</view>
93 </view> 90 </view>
94 <view class="flex-rr activity-right"> 91 <view class="flex-rr activity-right">
95 - <view class="more-text">更多</view>  
96 <view class="more"></view> 92 <view class="more"></view>
97 </view> 93 </view>
98 </view> 94 </view>
99 - </formids>  
100 - <!--  
101 - <formids wx:if="{{seller.activity.length>0}}" bindclick="showDiscount">  
102 - <view class="activity-view" >  
103 - <view class="activity" >  
104 - <view class="flex-lr">  
105 - <view class="activity-left">  
106 - <view class="activity-first flex-ll" style="align-items: flex-start">  
107 - <image src="http://qn.colorcun.com/custom/lite-online/image%E5%96%87%E5%8F%AD.png"></image>  
108 - <view class="flex-cc discount" wx:for="{{seller.activity}}"  
109 - wx:key="seller.activity.key"  
110 - wx:if="{{index<2}}">  
111 - <view class="discount-left"></view>  
112 - <view class="discount-text">{{item.title}}</view>  
113 - <view class="discount-right"></view>  
114 - </view>  
115 - </view>  
116 - </view>  
117 - <view class="activity-right flex-rr Semibold">  
118 - <view></view>  
119 - <view class="more"></view>  
120 - </view>  
121 - </view>  
122 - <view class="activity-text">  
123 - 该优惠仅适用于一键订平台预订客户 95 + <view class="black20line"></view>
  96 + </block>
  97 + <block wx:if="{{seller.isopen_md!=1}}">
  98 + <view class="seller" >
  99 + <view class="activity-view-easy flex-lr" >
  100 + <view class="activity-left flex-ll">
  101 + <view class="icon"></view>
  102 + <view class="discount" >本店不可使用平台红包</view>
124 </view> 103 </view>
125 </view> 104 </view>
126 </view> 105 </view>
127 - </formids>  
128 - -->  
129 - </view>  
130 - <view class="black20line" wx:if="{{seller.activity.length>0}}"></view>  
131 - <view class="block" wx:if="{{seller.room_image.length>0}}">  
132 - <view class="header flex-ll">  
133 - <view class="line"></view>  
134 - <view class="name">包间环境</view>  
135 - </view>  
136 - <scroll-view  
137 - scroll-x  
138 - class="baos"  
139 - scroll-into-view="{{toView}}"  
140 - scroll-top="{{scrollTop}}"  
141 - > 106 + <view class="black20line"></view>
  107 + </block>
  108 + <view class="block" wx:if="{{seller.room_image.length>0}}">
  109 + <view class="header flex-ll">
  110 + <view class="line"></view>
  111 + <view class="name">包间环境</view>
  112 + </view>
  113 + <scroll-view
  114 + scroll-x
  115 + class="baos"
  116 + scroll-into-view="{{toView}}"
  117 + scroll-top="{{scrollTop}}"
  118 + >
142 119
143 - <block wx:for="{{seller.room_image}}" wx:key="sellers.key">  
144 - <view class="image">  
145 - <image mode="aspectFill" bindtap="reviweRoomImage" data-current="{{item}}"  
146 - src="{{item}}?imageView2/2/w/640/interlace/0/q/100"></image>  
147 - </view>  
148 - </block> 120 + <block wx:for="{{seller.room_image}}" wx:key="sellers.key">
  121 + <view class="image">
  122 + <image mode="aspectFill" bindtap="reviweRoomImage" data-current="{{item}}"
  123 + src="{{item}}?imageView2/2/w/640/interlace/0/q/100"></image>
  124 + </view>
  125 + </block>
149 126
150 - </scroll-view>  
151 - </view>  
152 - <view class="block" wx:if="{{seller.dishes.length>0}}">  
153 - <view class="header flex-ll">  
154 - <view class="line"></view>  
155 - <view class="name">推荐菜品</view> 127 + </scroll-view>
156 </view> 128 </view>
157 - <scroll-view  
158 - scroll-x  
159 - class="cais"  
160 - scroll-into-view="{{toView}}"  
161 - scroll-top="{{scrollTop}}"  
162 - >  
163 - <block wx:for="{{seller.dishes}}" wx:key="sellers.key">  
164 - <view class="cais-views" wx:if="{{item.image}}">  
165 - <view class="image-view" >  
166 - <view class="image">  
167 - <image mode="aspectFill" bindtap="reviweDishesImage" data-current="{{item.image}}"  
168 - src="{{item.image}}?imageView2/2/w/640/interlace/0/q/100"></image> 129 + <view class="block" wx:if="{{seller.dishes.length>0}}">
  130 + <view class="header flex-ll">
  131 + <view class="line"></view>
  132 + <view class="name">推荐菜品</view>
  133 + </view>
  134 + <scroll-view
  135 + scroll-x
  136 + class="cais"
  137 + scroll-into-view="{{toView}}"
  138 + scroll-top="{{scrollTop}}"
  139 + >
  140 + <block wx:for="{{seller.dishes}}" wx:key="sellers.key">
  141 + <view class="cais-views" wx:if="{{item.image}}">
  142 + <view class="image-view" >
  143 + <view class="image">
  144 + <image mode="aspectFill" bindtap="reviweDishesImage" data-current="{{item.image}}"
  145 + src="{{item.image}}?imageView2/2/w/640/interlace/0/q/100"></image>
  146 + </view>
  147 + <view class="text Semibold">{{item.name}}</view>
169 </view> 148 </view>
170 - <view class="text Semibold">{{item.name}}</view>  
171 </view> 149 </view>
  150 + </block>
  151 + </scroll-view>
  152 + <view class="cais-text">
  153 + <block wx:for="{{seller.dishes}}" wx:key="sellers.key">
  154 + <view wx:if="{{!item.image}}">{{item.name}}</view>
  155 + </block>
172 </view> 156 </view>
173 - </block>  
174 - </scroll-view>  
175 - <view class="cais-text">  
176 - <block wx:for="{{seller.dishes}}" wx:key="sellers.key">  
177 - <view wx:if="{{!item.image}}">{{item.name}}</view>  
178 - </block>  
179 </view> 157 </view>
180 </view> 158 </view>
181 </view> 159 </view>
182 - </view>  
183 - <view class="footer flex-lr">  
184 - <view class="left flex-cc">  
185 - <formids class="flex-tb" url="/pages/customer/index">  
186 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E9%A6%96%E9%A1%B5.png"></image>  
187 - <view class="text">首页</view>  
188 - </formids>  
189 - <userinfo class="follow flex-tb" binduserinfo="follow">  
190 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E6%94%B6%E8%97%8F.png" wx:if="{{!IsCollectionSeller}}"></image>  
191 - <image src="http://qn.colorcun.com/custom/lite-online/image/%E5%B7%B2%E6%94%B6%E8%97%8F.png" wx:else=""></image>  
192 - <view class="text">收藏</view>  
193 - </userinfo>  
194 - </view>  
195 - <view class="reserve share flex-vc">  
196 - <userinfo class="flex-vc" style="width: 100%" binduserinfo="shareUserinfo">  
197 - <view class="text">分享</view>  
198 - </userinfo>  
199 - </view>  
200 - <view class="reserve reserve-click flex-vc">  
201 - <formids class="flex-vc" bindclick="reserveEvent" id="reserve-button">  
202 - <view class="text">{{hasOnlineReserve?'订包间':'联系餐厅'}}</view>  
203 - </formids> 160 + <view class="footer flex-lr">
  161 + <view class="left flex-cc">
  162 + <formids class="flex-tb" url="/pages/customer/index">
  163 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E9%A6%96%E9%A1%B5.png"></image>
  164 + <view class="text">首页</view>
  165 + </formids>
  166 + <userinfo class="follow flex-tb" binduserinfo="follow">
  167 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E6%94%B6%E8%97%8F.png" wx:if="{{!IsCollectionSeller}}"></image>
  168 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/%E5%B7%B2%E6%94%B6%E8%97%8F.png" wx:else=""></image>
  169 + <view class="text">收藏</view>
  170 + </userinfo>
  171 + </view>
  172 + <view class="reserve share flex-vc">
  173 + <userinfo class="flex-vc" style="width: 100%" binduserinfo="shareUserinfo">
  174 + <view class="text">分享</view>
  175 + </userinfo>
  176 + </view>
  177 + <view class="reserve reserve-click flex-vc">
  178 + <formids class="flex-vc" bindclick="reserveEvent" id="reserve-button">
  179 + <view class="text">{{hasOnlineReserve?'订包间':'联系餐厅'}}</view>
  180 + </formids>
  181 + </view>
  182 +
204 </view> 183 </view>
  184 + <as id="as" items="{{seller.seller_tel}}" bindclick="reservePhone" hasTip="{{false}}"></as>
  185 + <getpos bindpos="onpos" id="getpos" hasAllowLoading="{{false}}"></getpos>
  186 + <share id="share" seller_id="{{seller.id}}" seller="{{seller}}" wx:if="{{seller.id}}"></share>
  187 + <!--
  188 + <activity-tips str="¥price" cla="reserve-detail" pos="pages/reserve/detail"></activity-tips>
  189 + -->
205 190
206 </view> 191 </view>
207 - <as id="as" items="{{seller.seller_tel}}" bindclick="reservePhone" hasTip="{{false}}"></as>  
208 - <getpos bindpos="onpos" id="getpos" hasAllowLoading="{{false}}"></getpos>  
209 - <discount id="discount" seller="{{seller}}" bindhide="discountHide" bindshow="discountShow"></discount>  
210 - <share id="share" seller_id="{{seller.id}}" seller="{{seller}}" wx:if="{{seller.id}}"></share>  
211 -</view>  
212 -<view hidden="{{activeTab!='reserve'}}" wx:if="{{seller.id}}">  
213 - <view class="olreserve bg_white">  
214 - <calendar seller="{{seller}}" bindselectdate="selectdate" date="{{reserveDate}}"></calendar>  
215 - <view class="reserve-time Semibold">预订时段</view>  
216 - <section seller="{{seller}}" date="{{reserveDate}}" bind:selectsection="selectsection" section="{{reserveSection}}"></section>  
217 - <block wx:if="{{reserveSection}}">  
218 - <select-room seller="{{seller}}" date="{{reserveDate}}" section="{{reserveSection}}" seletroomlist="{{seletroomlist}}" bindchangeroom="selectroom"></select-room>  
219 - </block> 192 + <view hidden="{{activeTab!='reserve'}}" wx:if="{{seller.id}}">
  193 + <view class="olreserve bg_white">
  194 + <calendar seller="{{seller}}" bindselectdate="selectdate" date="{{reserveDate}}"></calendar>
  195 + <view class="reserve-time Semibold">预订时段</view>
  196 + <section seller="{{seller}}" date="{{reserveDate}}" bind:selectsection="selectsection" section="{{reserveSection}}"></section>
  197 + <block wx:if="{{reserveSection}}">
  198 + <select-room seller="{{seller}}" date="{{reserveDate}}" section="{{reserveSection}}" seletroomlist="{{seletroomlist}}" bindchangeroom="selectroom"></select-room>
  199 + </block>
  200 + </view>
  201 + <view class="reserve-button-cover flex-cc">
  202 + <view class="white-font font32r reserve-button flex-cc" catchtap="complete">选好了</view>
  203 + </view>
220 </view> 204 </view>
221 - <view class="reserve-button-cover flex-cc">  
222 - <view class="white-font font32r reserve-button flex-cc" catchtap="complete">选好了</view>  
223 - </view>  
224 -</view>  
225 -</layout>  
  205 +</layout>
  206 +<discount id="discount" seller="{{seller}}" wx:if="{{seller}}" cla="{{activeTab=='reserve'?'seller-reserve':''}}"
  207 + bindevent="reserveEvent"
  208 + bindhide="discountHide"
  209 + bindshow="discountShow"></discount>
@@ -69,29 +69,29 @@ @@ -69,29 +69,29 @@
69 line-height: 26rpx; 69 line-height: 26rpx;
70 } 70 }
71 .peitao .icon.bao{ 71 .peitao .icon.bao{
72 - background-image: url("http://qn.colorcun.com/custom/lite-online/image/%E5%8C%85%E9%97%B4.png"); 72 + background-image: url("http://nosqn.colorcun.com/custom/lite-online/image/%E5%8C%85%E9%97%B4.png");
73 } 73 }
74 .peitao .icon.ka{ 74 .peitao .icon.ka{
75 - background-image: url("http://qn.colorcun.com/custom/lite-online/image/%E5%8D%A1%E5%BA%A72.png"); 75 + background-image: url("http://nosqn.colorcun.com/custom/lite-online/image/%E5%8D%A1%E5%BA%A72.png");
76 } 76 }
77 .peitao .icon.car{ 77 .peitao .icon.car{
78 - background-image: url("http://qn.colorcun.com/custom/lite-online/image/%E5%81%9C%E8%BD%A6%E5%9C%BA2.png"); 78 + background-image: url("http://nosqn.colorcun.com/custom/lite-online/image/%E5%81%9C%E8%BD%A6%E5%9C%BA2.png");
79 } 79 }
80 80
81 .peitao .icon.meal_fee{ 81 .peitao .icon.meal_fee{
82 - background-image: url("http://qn.colorcun.com/reserve/images/3x/%E6%97%A0%E9%A4%90%E4%BD%8D%E8%B4%B9.png"); 82 + background-image: url("http://nosqn.colorcun.com/reserve/images/3x/%E6%97%A0%E9%A4%90%E4%BD%8D%E8%B4%B9.png");
83 background-size: 24rpx 24rpx; 83 background-size: 24rpx 24rpx;
84 } 84 }
85 .peitao .icon.unsubscribe{ 85 .peitao .icon.unsubscribe{
86 - background-image: url("http://qn.colorcun.com/reserve/images/3x/%E9%9A%8F%E6%97%B6%E9%80%80.png"); 86 + background-image: url("http://nosqn.colorcun.com/reserve/images/3x/%E9%9A%8F%E6%97%B6%E9%80%80.png");
87 background-size: 24rpx 24rpx; 87 background-size: 24rpx 24rpx;
88 } 88 }
89 .peitao .icon.minimum{ 89 .peitao .icon.minimum{
90 - background-image: url("http://qn.colorcun.com/reserve/images/3x/%E6%97%A0%E6%9C%80%E4%BD%8E%E6%B6%88%E8%B4%B9.png"); 90 + background-image: url("http://nosqn.colorcun.com/reserve/images/3x/%E6%97%A0%E6%9C%80%E4%BD%8E%E6%B6%88%E8%B4%B9.png");
91 background-size: 24rpx 24rpx; 91 background-size: 24rpx 24rpx;
92 } 92 }
93 .peitao .icon.belt{ 93 .peitao .icon.belt{
94 - background-image: url("http://qn.colorcun.com/reserve/images/3x/%E5%8F%AF%E8%87%AA%E5%B8%A6%E9%85%92%E6%B0%B4.png"); 94 + background-image: url("http://nosqn.colorcun.com/reserve/images/3x/%E5%8F%AF%E8%87%AA%E5%B8%A6%E9%85%92%E6%B0%B4.png");
95 background-size: 24rpx 24rpx; 95 background-size: 24rpx 24rpx;
96 } 96 }
97 97
@@ -290,10 +290,10 @@ @@ -290,10 +290,10 @@
290 padding: 28rpx 0; 290 padding: 28rpx 0;
291 } 291 }
292 .activity-left{ 292 .activity-left{
293 - width: calc(100% - 120rpx); 293 + width: calc(100% - 60rpx);
294 } 294 }
295 .activity-right{ 295 .activity-right{
296 - min-width: 120rpx; 296 + min-width: 60rpx;
297 color: #C0A369; 297 color: #C0A369;
298 } 298 }
299 .activity-first{ 299 .activity-first{
@@ -320,7 +320,7 @@ @@ -320,7 +320,7 @@
320 color: #C28C56; 320 color: #C28C56;
321 } 321 }
322 .more{ 322 .more{
323 - background-image: url("http://qn.colorcun.com/reserve/images/m713.png"); 323 + background-image: url("http://nosqn.colorcun.com/reserve/images/m713.png");
324 margin-left: 20rpx; 324 margin-left: 20rpx;
325 height: 26rpx; 325 height: 26rpx;
326 width: 14rpx; 326 width: 14rpx;
@@ -335,13 +335,13 @@ @@ -335,13 +335,13 @@
335 text-overflow: ellipsis; 335 text-overflow: ellipsis;
336 } 336 }
337 .discount .discount-left{ 337 .discount .discount-left{
338 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%B7%A6%E8%BE%B9.png"); 338 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%B7%A6%E8%BE%B9.png");
339 width: 12rpx; 339 width: 12rpx;
340 height: 40rpx; 340 height: 40rpx;
341 background-size: 100% 100%; 341 background-size: 100% 100%;
342 } 342 }
343 .discount .discount-text{ 343 .discount .discount-text{
344 - background-image: url("http://qn.colorcun.com/reserve/images/%E4%B8%AD%E9%97%B4.jpg"); 344 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E4%B8%AD%E9%97%B4.jpg");
345 height: 40rpx; 345 height: 40rpx;
346 min-width: 60rpx; 346 min-width: 60rpx;
347 background-size: 100% 100%; 347 background-size: 100% 100%;
@@ -350,7 +350,7 @@ @@ -350,7 +350,7 @@
350 padding: 0 10rpx; 350 padding: 0 10rpx;
351 } 351 }
352 .discount .discount-right{ 352 .discount .discount-right{
353 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%8F%B3%E8%BE%B9.png"); 353 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%8F%B3%E8%BE%B9.png");
354 width: 12rpx; 354 width: 12rpx;
355 height: 40rpx; 355 height: 40rpx;
356 background-size: 100% 100%; 356 background-size: 100% 100%;
@@ -397,7 +397,7 @@ @@ -397,7 +397,7 @@
397 text-overflow:ellipsis; 397 text-overflow:ellipsis;
398 } 398 }
399 .more-addr{ 399 .more-addr{
400 - background-image: url("http://qn.colorcun.com/reserve/images/m2.png"); 400 + background-image: url("http://nosqn.colorcun.com/reserve/images/m2.png");
401 } 401 }
402 .average{ 402 .average{
403 color: #C0A369; 403 color: #C0A369;
@@ -415,14 +415,14 @@ @@ -415,14 +415,14 @@
415 height: 28rpx; 415 height: 28rpx;
416 } 416 }
417 .broad-1{ 417 .broad-1{
418 - background-image: url("http://qn.colorcun.com/reserve/images/p0.png"); 418 + background-image: url("http://nosqn.colorcun.com/reserve/images/p0.png");
419 width: 14rpx; 419 width: 14rpx;
420 height: 34rpx; 420 height: 34rpx;
421 background-size: 100% 100%; 421 background-size: 100% 100%;
422 float: left; 422 float: left;
423 } 423 }
424 .broad-2{ 424 .broad-2{
425 - background-image: url("http://qn.colorcun.com/reserve/images/p2.png"); 425 + background-image: url("http://nosqn.colorcun.com/reserve/images/p2.png");
426 height: 34rpx; 426 height: 34rpx;
427 background-size: 100% 100%; 427 background-size: 100% 100%;
428 font-size: 20rpx; 428 font-size: 20rpx;
@@ -431,7 +431,7 @@ @@ -431,7 +431,7 @@
431 float: left; 431 float: left;
432 } 432 }
433 .broad-3{ 433 .broad-3{
434 - background-image: url("http://qn.colorcun.com/reserve/images/p3.png"); 434 + background-image: url("http://nosqn.colorcun.com/reserve/images/p3.png");
435 width: 14rpx; 435 width: 14rpx;
436 height: 34rpx; 436 height: 34rpx;
437 background-size: 100% 100%; 437 background-size: 100% 100%;
@@ -459,7 +459,7 @@ @@ -459,7 +459,7 @@
459 line-height: 120rpx; 459 line-height: 120rpx;
460 } 460 }
461 .activity-view-easy .icon{ 461 .activity-view-easy .icon{
462 - background-image: url("http://qn.colorcun.com/reserve/images/ad2.png"); 462 + background-image: url("http://nosqn.colorcun.com/reserve/images/ad2.png");
463 width: 30rpx; 463 width: 30rpx;
464 height: 32rpx; 464 height: 32rpx;
465 background-size: 100% 100%; 465 background-size: 100% 100%;
@@ -472,6 +472,7 @@ @@ -472,6 +472,7 @@
472 padding-right: 20rpx; 472 padding-right: 20rpx;
473 padding-left: 20rpx; 473 padding-left: 20rpx;
474 margin-right: 0; 474 margin-right: 0;
  475 + font-weight:500;
475 } 476 }
476 .activity-view-easy .discount:last-child{ 477 .activity-view-easy .discount:last-child{
477 border-right-width: 0; 478 border-right-width: 0;
@@ -536,7 +537,7 @@ @@ -536,7 +537,7 @@
536 height: 70rpx; 537 height: 70rpx;
537 background-size: 40rpx 36rpx; 538 background-size: 40rpx 36rpx;
538 background-position: center center; 539 background-position: center center;
539 - background-image: url("http://qn.colorcun.com/reserve/images/sphone.png"); 540 + background-image: url("http://nosqn.colorcun.com/reserve/images/sphone.png");
540 } 541 }
541 .reserve-button{ 542 .reserve-button{
542 width:680rpx; 543 width:680rpx;
@@ -553,3 +554,42 @@ @@ -553,3 +554,42 @@
553 bottom:0; 554 bottom:0;
554 background: #fff; 555 background: #fff;
555 } 556 }
  557 +.activity-view-tit{
  558 + height:42rpx;
  559 + font-size:30rpx;
  560 + font-family:PingFangSC-Medium,PingFang SC;
  561 + font-weight:500;
  562 + color:rgba(53,53,53,1);
  563 + line-height:42rpx;
  564 + margin-right: 42rpx;
  565 +}
  566 +.activity-view-blk{
  567 + height:34rpx;
  568 + border-top:2rpx solid rgba(240,88,36,1);
  569 + border-bottom:2rpx solid rgba(240,88,36,1);
  570 + box-sizing: border-box;
  571 + font-size:24rpx;
  572 + font-family:PingFangSC-Medium,PingFang SC;
  573 + font-weight:500;
  574 + color:rgba(240,88,36,1);
  575 + line-height:34rpx;
  576 + margin-right: 22rpx;
  577 + padding: 0 12rpx;
  578 + position: relative;
  579 + border-radius: 6rpx;
  580 +}
  581 +.activity-view-blk:before,.activity-view-blk:after{
  582 + background-size: 100% 100%;
  583 + width: 12rpx;
  584 + height: 34rpx;
  585 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/left-1.png");
  586 + content: "";
  587 + position: absolute;
  588 + left:0;
  589 + top:-2rpx;
  590 +}
  591 +.activity-view-blk:after{
  592 + background-image: url("http://nosqn.colorcun.com/sellerbaobao/right-1.png");
  593 + right:0;
  594 + left:auto;
  595 +}
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 3
4 <view class="pages"> 4 <view class="pages">
5 <image class="banner" 5 <image class="banner"
6 - src="http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191120112403.png"></image> 6 + src="http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191120112403.png"></image>
7 <view class="follow"> 7 <view class="follow">
8 <view class="seller" wx:for="{{sellers}}" wx:key="sellers.key" 8 <view class="seller" wx:for="{{sellers}}" wx:key="sellers.key"
9 bindtap="gotoDetail" data-sid="{{item.id}}" wx:if="{{item.hasFollow}}"> 9 bindtap="gotoDetail" data-sid="{{item.id}}" wx:if="{{item.hasFollow}}">
@@ -69,6 +69,7 @@ Page({ @@ -69,6 +69,7 @@ Page({
69 hasOnLoad:false, 69 hasOnLoad:false,
70 hasGetLocation:false,//定位信息 70 hasGetLocation:false,//定位信息
71 hasAppHide:false,//app切至后台 71 hasAppHide:false,//app切至后台
  72 + param:{},
72 onLoad: async function (options) { 73 onLoad: async function (options) {
73 this.reportTime=new Date() 74 this.reportTime=new Date()
74 75
@@ -509,7 +510,7 @@ Page({ @@ -509,7 +510,7 @@ Page({
509 } 510 }
510 let marker={ 511 let marker={
511 id: seller.id, 512 id: seller.id,
512 - iconPath: "http://qn.colorcun.com/custom/lite-online/cates/circle1x5.png"+cates_version, 513 + iconPath: "http://nosqn.colorcun.com/custom/lite-online/cates/circle1x5.png"+cates_version,
513 latitude: seller.lat, 514 latitude: seller.lat,
514 longitude: seller.long, 515 longitude: seller.long,
515 width: 8, 516 width: 8,
@@ -535,7 +536,7 @@ Page({ @@ -535,7 +536,7 @@ Page({
535 if(seller.mode.length>0){ 536 if(seller.mode.length>0){
536 seller.mode.forEach(x=>{ 537 seller.mode.forEach(x=>{
537 if(x.id==1){//大图标 538 if(x.id==1){//大图标
538 - marker.iconPath="http://qn.colorcun.com/custom/lite-online/cates/其他菜品.png"; 539 + marker.iconPath="http://nosqn.colorcun.com/custom/lite-online/cates/其他菜品.png";
539 if(seller.cate.length>0){ 540 if(seller.cate.length>0){
540 marker.iconPath=seller.cate[0].icon 541 marker.iconPath=seller.cate[0].icon
541 } 542 }
@@ -690,6 +691,7 @@ Page({ @@ -690,6 +691,7 @@ Page({
690 return; 691 return;
691 } 692 }
692 let i=e.detail.current 693 let i=e.detail.current
  694 + if(typeof this.data.markers[i]=='undefined') return;
693 this.activeSellerID=this.data.markers[i].id 695 this.activeSellerID=this.data.markers[i].id
694 console.log('bindtransition',this.sellersNow,e.detail.current,this.sellersNow[e.detail.current],this.activeSellerID); 696 console.log('bindtransition',this.sellersNow,e.detail.current,this.sellersNow[e.detail.current],this.activeSellerID);
695 // this.activeSellerID=this.sellersNow[i]; 697 // this.activeSellerID=this.sellersNow[i];
@@ -773,7 +775,7 @@ Page({ @@ -773,7 +775,7 @@ Page({
773 map=this.data.suggestion 775 map=this.data.suggestion
774 mks.push({ 776 mks.push({
775 id: 'location', 777 id: 'location',
776 - iconPath: "http://qn.colorcun.com/reserve/images/location.png"+cates_version, 778 + iconPath: "http://nosqn.colorcun.com/reserve/images/location.png"+cates_version,
777 latitude: map.latitude, 779 latitude: map.latitude,
778 longitude: map.longitude, 780 longitude: map.longitude,
779 width: 20, 781 width: 20,
@@ -782,7 +784,7 @@ Page({ @@ -782,7 +784,7 @@ Page({
782 } 784 }
783 mks.push({ 785 mks.push({
784 id: 'locationMe', 786 id: 'locationMe',
785 - iconPath: "http://qn.colorcun.com/reserve/images/lme.png"+cates_version, 787 + iconPath: "http://nosqn.colorcun.com/reserve/images/lme.png"+cates_version,
786 latitude: this.user.latitude, 788 latitude: this.user.latitude,
787 longitude: this.user.longitude, 789 longitude: this.user.longitude,
788 width: 18, 790 width: 18,
@@ -10,6 +10,7 @@ @@ -10,6 +10,7 @@
10 "a2l":"/components/tips/add-to-lite", 10 "a2l":"/components/tips/add-to-lite",
11 "ds":"/components/tips/discount", 11 "ds":"/components/tips/discount",
12 "caixi":"/components/reserve/caixi", 12 "caixi":"/components/reserve/caixi",
13 - "list":"/components/reserve/seller-box-transverse-cview/list" 13 + "list":"/components/reserve/seller-box-transverse-cview/list",
  14 + "activity-enter":"/components/activity/enter"
14 } 15 }
15 } 16 }
@@ -14,20 +14,21 @@ @@ -14,20 +14,21 @@
14 enable-scroll 14 enable-scroll
15 enable-rotate 15 enable-rotate
16 subkey="SDEBZ-I74W4-QLGUX-XXYXU-HIR23-3QFBJ" 16 subkey="SDEBZ-I74W4-QLGUX-XXYXU-HIR23-3QFBJ"
  17 + layer-style="2"
17 style="width: 100%; height: {{map.height+60}}px;"></map> 18 style="width: 100%; height: {{map.height+60}}px;"></map>
18 <formids url="/pages/reserve/search" style="position: fixed;"> 19 <formids url="/pages/reserve/search" style="position: fixed;">
19 - <cover-view 20 + <view
20 class="flex-ll" 21 class="flex-ll"
21 style="position:fixed;top:{{statusBarHeight}}px;left:0;height: {{titleBarHeight}}px; line-height: {{titleBarHeight}}px;"> 22 style="position:fixed;top:{{statusBarHeight}}px;left:0;height: {{titleBarHeight}}px; line-height: {{titleBarHeight}}px;">
22 - <cover-view class="searchList flex-ll" catchtap="listShow">  
23 - <cover-image class="icon" src="http://qn.colorcun.com/reserve/images/hasList3.png"></cover-image>  
24 - <cover-view class="title">列表</cover-view>  
25 - </cover-view>  
26 - <cover-view class="searchAddr flex-ll">  
27 - <cover-image class="icon" src="http://qn.colorcun.com/custom/lite-online/image/search26.png"></cover-image>  
28 - <cover-view class="title">{{hasSuggestion?suggestion.title:'输入餐厅名或地名,快速订包间'}}</cover-view>  
29 - </cover-view>  
30 - </cover-view> 23 + <view class="searchList flex-ll" catchtap="listShow">
  24 + <image class="icon" src="http://nosqn.colorcun.com/reserve/images/hasList3.png"></image>
  25 + <view class="title">列表</view>
  26 + </view>
  27 + <view class="searchAddr flex-ll">
  28 + <image class="icon" src="http://nosqn.colorcun.com/custom/lite-online/image/search26.png"></image>
  29 + <view class="title">{{hasSuggestion?suggestion.title:'输入餐厅名或地名,快速订包间'}}</view>
  30 + </view>
  31 + </view>
31 </formids> 32 </formids>
32 </view> 33 </view>
33 <view class="seller-view {{(listMoreCount<1)?(hasSearchLimit?'disabled enabled':'disabled'):''}}"> 34 <view class="seller-view {{(listMoreCount<1)?(hasSearchLimit?'disabled enabled':'disabled'):''}}">
@@ -57,10 +58,12 @@ @@ -57,10 +58,12 @@
57 bindtap="tagsChange" 58 bindtap="tagsChange"
58 data-id="{{item.id}}">{{item.name}}</view> 59 data-id="{{item.id}}">{{item.name}}</view>
59 </block> 60 </block>
  61 + <!--
60 <view class="fingSeller flex-ll" bindtap="findSeller"> 62 <view class="fingSeller flex-ll" bindtap="findSeller">
61 <view class="icon"></view> 63 <view class="icon"></view>
62 <view>查找餐厅</view> 64 <view>查找餐厅</view>
63 </view> 65 </view>
  66 + -->
64 </view> 67 </view>
65 <view class="transverse-list"> 68 <view class="transverse-list">
66 <swiper 69 <swiper
@@ -126,9 +129,9 @@ @@ -126,9 +129,9 @@
126 </view> 129 </view>
127 </view> 130 </view>
128 </view> 131 </view>
129 -<cover-view bindtap="moveToLocation" class="moveToLocation">  
130 - <cover-image src="http://qn.colorcun.com/reserve/images/golocal.png"></cover-image>  
131 -</cover-view> 132 +<view bindtap="moveToLocation" class="moveToLocation">
  133 + <image src="http://nosqn.colorcun.com/reserve/images/golocal.png"></image>
  134 +</view>
132 <getpos bindpos="onpos" id="getpos"></getpos> 135 <getpos bindpos="onpos" id="getpos"></getpos>
133 <seller-box id="seller-box" bindevent="sellerBoxEvent"></seller-box> 136 <seller-box id="seller-box" bindevent="sellerBoxEvent"></seller-box>
134 <cover-view class="tab-patch"></cover-view> 137 <cover-view class="tab-patch"></cover-view>
@@ -139,4 +142,4 @@ @@ -139,4 +142,4 @@
139 <caixi multiArray="{{multiArray}}" multiIndex="{{multiIndex}}" 142 <caixi multiArray="{{multiArray}}" multiIndex="{{multiIndex}}"
140 bindactive="caixiActive" id="caixi" 143 bindactive="caixiActive" id="caixi"
141 ></caixi> 144 ></caixi>
142 -<fb></fb>  
  145 +<activity-enter hasInHome></activity-enter>
@@ -24,7 +24,7 @@ page{ @@ -24,7 +24,7 @@ page{
24 width: 62rpx; 24 width: 62rpx;
25 height: 62rpx; 25 height: 62rpx;
26 } 26 }
27 -.moveToLocation cover-image{ 27 +.moveToLocation image{
28 width: 62rpx; 28 width: 62rpx;
29 height: 62rpx; 29 height: 62rpx;
30 } 30 }
@@ -78,7 +78,7 @@ page{ @@ -78,7 +78,7 @@ page{
78 height: 40rpx; 78 height: 40rpx;
79 } 79 }
80 .seller .empty .icon{ 80 .seller .empty .icon{
81 - background-image: url("http://qn.colorcun.com/reserve/images/hasClick.png"); 81 + background-image: url("http://nosqn.colorcun.com/reserve/images/hasClick.png");
82 background-size: 100% 100%; 82 background-size: 100% 100%;
83 width: 54rpx; 83 width: 54rpx;
84 height: 56rpx; 84 height: 56rpx;
@@ -87,7 +87,7 @@ page{ @@ -87,7 +87,7 @@ page{
87 right:40rpx; 87 right:40rpx;
88 } 88 }
89 .seller-last .empty .icon{ 89 .seller-last .empty .icon{
90 - background-image: url("http://qn.colorcun.com/reserve/images/%E7%BC%A9%E6%94%BE.png"); 90 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E7%BC%A9%E6%94%BE.png");
91 background-size: 100% 100%; 91 background-size: 100% 100%;
92 width: 98rpx; 92 width: 98rpx;
93 height: 76rpx; 93 height: 76rpx;
@@ -97,16 +97,16 @@ page{ @@ -97,16 +97,16 @@ page{
97 } 97 }
98 98
99 .picker{ 99 .picker{
100 - height: 30rpx;  
101 - line-height: 30rpx; 100 + height: 50rpx;
  101 + line-height: 50rpx;
102 } 102 }
103 .picker .input{ 103 .picker .input{
104 - height: 30rpx;  
105 - line-height: 30rpx; 104 + height: 50rpx;
  105 + line-height: 50rpx;
106 margin-right: 10rpx; 106 margin-right: 10rpx;
107 } 107 }
108 .picker .more{ 108 .picker .more{
109 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png"); 109 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png");
110 width: 12rpx; 110 width: 12rpx;
111 height: 16rpx; 111 height: 16rpx;
112 min-width:12rpx; 112 min-width:12rpx;
@@ -134,7 +134,7 @@ page{ @@ -134,7 +134,7 @@ page{
134 right: 0; 134 right: 0;
135 bottom: 0; 135 bottom: 0;
136 left: 0; 136 left: 0;
137 - background: url('http://qn.colorcun.com/reserve/images/find-black.png'); 137 + background: url('http://nosqn.colorcun.com/reserve/images/find-black.png');
138 background-size: 100% 100%; 138 background-size: 100% 100%;
139 opacity: 0.5; 139 opacity: 0.5;
140 } 140 }
@@ -152,7 +152,7 @@ page{ @@ -152,7 +152,7 @@ page{
152 width: 32rpx; 152 width: 32rpx;
153 height: 30rpx; 153 height: 30rpx;
154 margin-right: 6rpx; 154 margin-right: 6rpx;
155 - background-image: url("http://qn.colorcun.com/reserve/images/find.png"); 155 + background-image: url("http://nosqn.colorcun.com/reserve/images/find.png");
156 background-size: 100% 100%; 156 background-size: 100% 100%;
157 } 157 }
158 .enabled .fingSeller .icon:after{ 158 .enabled .fingSeller .icon:after{
@@ -161,13 +161,13 @@ page{ @@ -161,13 +161,13 @@ page{
161 } 161 }
162 162
163 .tags.active .picker .more{ 163 .tags.active .picker .more{
164 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png"); 164 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png");
165 } 165 }
166 .disabled .picker .more{ 166 .disabled .picker .more{
167 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925174046.png"); 167 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925174046.png");
168 } 168 }
169 .enabled .picker .more{ 169 .enabled .picker .more{
170 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png"); 170 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png");
171 } 171 }
172 .searchAddr { 172 .searchAddr {
173 margin-left: 15rpx; 173 margin-left: 15rpx;
@@ -224,7 +224,7 @@ page{ @@ -224,7 +224,7 @@ page{
224 224
225 } 225 }
226 .empty-txt .seller .empty{ 226 .empty-txt .seller .empty{
227 - background-image: url("http://qn.colorcun.com/reserve/images/empty-seller.png"); 227 + background-image: url("http://nosqn.colorcun.com/reserve/images/empty-seller.png");
228 background-size: 100% 100%; 228 background-size: 100% 100%;
229 border-left-width: 0; 229 border-left-width: 0;
230 margin: 0 auto; 230 margin: 0 auto;
@@ -257,7 +257,7 @@ page{ @@ -257,7 +257,7 @@ page{
257 box-sizing: border-box; 257 box-sizing: border-box;
258 } 258 }
259 .info-button-gt{ 259 .info-button-gt{
260 - background-image: url("http://qn.colorcun.com/reserve/images/gt-cheng.png"); 260 + background-image: url("http://nosqn.colorcun.com/reserve/images/gt-cheng.png");
261 background-size: 100% 100%; 261 background-size: 100% 100%;
262 width: 10rpx; 262 width: 10rpx;
263 height: 20rpx; 263 height: 20rpx;
@@ -268,26 +268,22 @@ page{ @@ -268,26 +268,22 @@ page{
268 color:#fefefe; 268 color:#fefefe;
269 } 269 }
270 .info-button.full .info-button-gt{ 270 .info-button.full .info-button-gt{
271 - background-image: url("http://qn.colorcun.com/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925175650.png"); 271 + background-image: url("http://nosqn.colorcun.com/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925175650.png");
272 } 272 }
273 .transverse-search .tags{ 273 .transverse-search .tags{
274 - height: 30rpx;  
275 - line-height: 30rpx;  
276 - /*background-color: #F0F0F9;*/  
277 - /*border-radius: 4rpx;*/  
278 - padding: 0 22rpx;  
279 - border-right:2rpx solid #E0E0E0;  
280 -}  
281 -.transverse-search .tags:first-child{  
282 - padding-left: 0; 274 + height: 50rpx;
  275 + line-height: 50rpx;
  276 + background-color: #F0F0F9;
  277 + border-radius: 4rpx;
  278 + margin-right: 30rpx;
  279 + padding: 0 16rpx;
283 } 280 }
284 .transverse-search .tags:last-child{ 281 .transverse-search .tags:last-child{
285 margin-right: 0; 282 margin-right: 0;
286 - border-right-width:0;  
287 } 283 }
288 .transverse-search .tags.active{ 284 .transverse-search .tags.active{
289 - /*background:linear-gradient(to bottom ,#F4DAB9,#E9BE94);*/  
290 - color:#C0A369; 285 + background:linear-gradient(to bottom ,#F4DAB9,#E9BE94);
  286 + color:#8B5318;
291 font-weight: 900; 287 font-weight: 900;
292 } 288 }
293 289
@@ -120,7 +120,7 @@ Page({ @@ -120,7 +120,7 @@ Page({
120 this.param={ 120 this.param={
121 lat_extend:mapParam.lat, 121 lat_extend:mapParam.lat,
122 lng_extend:mapParam.lng, 122 lng_extend:mapParam.lng,
123 - keyword:mapParam.keyword, 123 + keyword:mapParam.keyword.trim(),
124 offset:this.offset, 124 offset:this.offset,
125 size:this.size, 125 size:this.size,
126 distance:500000, 126 distance:500000,
@@ -128,6 +128,9 @@ Page({ @@ -128,6 +128,9 @@ Page({
128 if(mapParam.lat){ 128 if(mapParam.lat){
129 this.param.centre_pos=`${mapParam.lat},${mapParam.lng}` 129 this.param.centre_pos=`${mapParam.lat},${mapParam.lng}`
130 } 130 }
  131 + if(mapParam.isopen_md){
  132 + this.param.isopen_md=1
  133 + }
131 }else{ 134 }else{
132 //计算视窗中心 135 //计算视窗中心
133 let map=JSON.parse(mapParam.map); 136 let map=JSON.parse(mapParam.map);
1 <!--pages/reserve/indexList.wxml--> 1 <!--pages/reserve/indexList.wxml-->
2 <nav>周到安排</nav> 2 <nav>周到安排</nav>
3 <view class="header"> 3 <view class="header">
  4 + <!--
4 <view class="searchAddrView" bindtap="dispalySearchHow"> 5 <view class="searchAddrView" bindtap="dispalySearchHow">
5 <view class="searchAddr flex-ll"> 6 <view class="searchAddr flex-ll">
6 - <image class="icon" src="http://qn.colorcun.com/reserve/images/find-black.png"></image> 7 + <image class="icon" src="http://nosqn.colorcun.com/reserve/images/find-black.png"></image>
7 <input style="width: 100%;" placeholder="{{placeholder}}" 8 <input style="width: 100%;" placeholder="{{placeholder}}"
8 type="text" disabled 9 type="text" disabled
9 value="{{keyword}}"/> 10 value="{{keyword}}"/>
10 </view> 11 </view>
11 </view> 12 </view>
12 - <view class="transverse-search flex-lr {{hasDisabled?'disabled':''}}"> 13 + -->
  14 + <view class="transverse-search flex-ll {{hasDisabled?'disabled':''}}">
13 <view 15 <view
14 bindtap="caixiShow" 16 bindtap="caixiShow"
15 class="tags {{multiIndex[0]>0?'active':''}}" 17 class="tags {{multiIndex[0]>0?'active':''}}"
16 > 18 >
17 - <view class="picker flex-cc"> 19 + <view class="picker flex-lr">
18 <view class="input"> 20 <view class="input">
19 <block wx:if="{{multiIndex[0]==0}}">菜系</block> 21 <block wx:if="{{multiIndex[0]==0}}">菜系</block>
20 <block wx:else="">{{multiArray[0][multiIndex[0]]}}</block> 22 <block wx:else="">{{multiArray[0][multiIndex[0]]}}</block>
@@ -32,7 +34,7 @@ @@ -32,7 +34,7 @@
32 <view class="pages"> 34 <view class="pages">
33 <view class="flex-vc empty" wx:if="{{markers.length<1}}"> 35 <view class="flex-vc empty" wx:if="{{markers.length<1}}">
34 <block wx:if="{{!hasFirstShow}}"> 36 <block wx:if="{{!hasFirstShow}}">
35 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png"></image> 37 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png"></image>
36 <block wx:if="{{hasDisabled}}"> 38 <block wx:if="{{hasDisabled}}">
37 <view>该地区没有可供预订的餐厅,努力开通中</view> 39 <view>该地区没有可供预订的餐厅,努力开通中</view>
38 </block> 40 </block>
@@ -13,42 +13,36 @@ @@ -13,42 +13,36 @@
13 width: 100%; 13 width: 100%;
14 margin: 0 auto; 14 margin: 0 auto;
15 font-size: 24rpx; 15 font-size: 24rpx;
  16 + padding-left: 20rpx;
16 } 17 }
17 .transverse-search .tags{ 18 .transverse-search .tags{
18 - height: 30rpx;  
19 - line-height: 30rpx;  
20 - /*background-color: #F0F0F9;*/  
21 - /*border-radius: 4rpx;*/  
22 - padding: 0 22rpx;  
23 - border-right:2rpx solid #E0E0E0;  
24 - text-align: center;  
25 - width: 25%;  
26 - box-sizing: border-box;  
27 -}  
28 -.transverse-search .tags:first-child{  
29 - padding-left: 0; 19 + height: 50rpx;
  20 + line-height: 50rpx;
  21 + background-color: #F0F0F9;
  22 + border-radius: 4rpx;
  23 + margin-right: 30rpx;
  24 + padding: 0 16rpx;
30 } 25 }
31 .transverse-search .tags:last-child{ 26 .transverse-search .tags:last-child{
32 margin-right: 0; 27 margin-right: 0;
33 - border-right-width:0;  
34 } 28 }
35 .transverse-search .tags.active{ 29 .transverse-search .tags.active{
36 - /*background-color: #F4DAB9;*/  
37 - color:#C0A369; 30 + background-color: #F4DAB9;
  31 + color:#8B5318;
38 font-weight: 900; 32 font-weight: 900;
39 } 33 }
40 34
41 .picker{ 35 .picker{
42 - height: 30rpx;  
43 - line-height: 30rpx; 36 + height: 50rpx;
  37 + line-height: 50rpx;
44 } 38 }
45 .picker .input{ 39 .picker .input{
46 - height: 30rpx;  
47 - line-height: 30rpx; 40 + height: 50rpx;
  41 + line-height: 50rpx;
48 margin-right: 10rpx; 42 margin-right: 10rpx;
49 } 43 }
50 .picker .more{ 44 .picker .more{
51 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png"); 45 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB.png");
52 width: 12rpx; 46 width: 12rpx;
53 height: 16rpx; 47 height: 16rpx;
54 min-width:12rpx; 48 min-width:12rpx;
@@ -57,14 +51,14 @@ @@ -57,14 +51,14 @@
57 color: #999; 51 color: #999;
58 } 52 }
59 .tags.active .picker .more{ 53 .tags.active .picker .more{
60 - background-image: url("http://qn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png"); 54 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E8%8F%9C%E7%B3%BB%E9%80%89%E4%B8%AD.png");
61 } 55 }
62 .disabled .picker .more{ 56 .disabled .picker .more{
63 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925174046.png"); 57 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20190925174046.png");
64 } 58 }
65 .pages{ 59 .pages{
66 width: 100%; 60 width: 100%;
67 - margin: 151rpx auto 0; 61 + margin: 81rpx auto 0;
68 color:#fff; 62 color:#fff;
69 font-size: 28rpx; 63 font-size: 28rpx;
70 } 64 }
@@ -146,7 +140,7 @@ @@ -146,7 +140,7 @@
146 z-index: 99; 140 z-index: 99;
147 } 141 }
148 .line-push{ 142 .line-push{
149 - background-image: url("http://qn.colorcun.com/reserve/images/line-push.png"); 143 + background-image: url("http://nosqn.colorcun.com/reserve/images/line-push.png");
150 width: 328rpx; 144 width: 328rpx;
151 height: 42rpx; 145 height: 42rpx;
152 background-size: 100% 24rpx; 146 background-size: 100% 24rpx;
@@ -2,14 +2,14 @@ @@ -2,14 +2,14 @@
2 <nav id="nav">搜索</nav> 2 <nav id="nav">搜索</nav>
3 <view class="searchAddrView" style="height: {{navHeight+40}}px;"> 3 <view class="searchAddrView" style="height: {{navHeight+40}}px;">
4 <view class="searchAddr flex-ll" style="margin-top: {{navHeight+5}}px;"> 4 <view class="searchAddr flex-ll" style="margin-top: {{navHeight+5}}px;">
5 - <image class="icon" src="http://qn.colorcun.com/custom/lite-online/image/search26.png"></image> 5 + <image class="icon" src="http://nosqn.colorcun.com/custom/lite-online/image/search26.png"></image>
6 <input style="width: 100%;" placeholder="输入餐厅名或地名,快速订包间" 6 <input style="width: 100%;" placeholder="输入餐厅名或地名,快速订包间"
7 type="text" confirm-type="done" 7 type="text" confirm-type="done"
8 focus 8 focus
9 bindinput="getsuggest" value="{{keyword}}"/> 9 bindinput="getsuggest" value="{{keyword}}"/>
10 <image class="icon icon-del" wx:if="{{keyword.length>0}}" 10 <image class="icon icon-del" wx:if="{{keyword.length>0}}"
11 catchtap="clearKeyword" 11 catchtap="clearKeyword"
12 - src="http://qn.colorcun.com/reserve/images/del.png"></image> 12 + src="http://nosqn.colorcun.com/reserve/images/del.png"></image>
13 </view> 13 </view>
14 </view> 14 </view>
15 <view class="pages"> 15 <view class="pages">
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 <view wx:if="{{keyword.length>0}}"> 28 <view wx:if="{{keyword.length>0}}">
29 <view class="flex-vc empty"> 29 <view class="flex-vc empty">
30 <block wx:if="{{!hasFirstShow}}"> 30 <block wx:if="{{!hasFirstShow}}">
31 - <image src="http://qn.colorcun.com/custom/lite-online/image/follow-empty.png"></image> 31 + <image src="http://nosqn.colorcun.com/custom/lite-online/image/follow-empty.png"></image>
32 <view class="empty-t1">抱歉,没有找到符合的内容</view> 32 <view class="empty-t1">抱歉,没有找到符合的内容</view>
33 <view class="empty-t2">试试搜搜别的</view> 33 <view class="empty-t2">试试搜搜别的</view>
34 </block> 34 </block>
@@ -104,7 +104,7 @@ @@ -104,7 +104,7 @@
104 .history-empty{ 104 .history-empty{
105 width: 28rpx; 105 width: 28rpx;
106 height: 28rpx; 106 height: 28rpx;
107 - background-image: url("http://qn.colorcun.com/reserve/images/empty.png"); 107 + background-image: url("http://nosqn.colorcun.com/reserve/images/empty.png");
108 background-size: 100% 100%; 108 background-size: 100% 100%;
109 } 109 }
110 110
@@ -127,7 +127,7 @@ @@ -127,7 +127,7 @@
127 } 127 }
128 128
129 .line-push{ 129 .line-push{
130 - background-image: url("http://qn.colorcun.com/reserve/images/line-push.png"); 130 + background-image: url("http://nosqn.colorcun.com/reserve/images/line-push.png");
131 width: 328rpx; 131 width: 328rpx;
132 height: 42rpx; 132 height: 42rpx;
133 background-size: 100% 24rpx; 133 background-size: 100% 24rpx;
@@ -34,7 +34,7 @@ page{ @@ -34,7 +34,7 @@ page{
34 width: 40rpx; 34 width: 40rpx;
35 height: 40rpx; 35 height: 40rpx;
36 background-size: 100% 100%; 36 background-size: 100% 100%;
37 - background-image: url("http://qn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004333.png"); 37 + background-image: url("http://nosqn.colorcun.com/reserve/share/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201906251004333.png");
38 } 38 }
39 .save-but-text{ 39 .save-but-text{
40 height:40rpx; 40 height:40rpx;
@@ -42,7 +42,7 @@ @@ -42,7 +42,7 @@
42 <view class="flex-vc wenxin"> 42 <view class="flex-vc wenxin">
43 <view class="invit-logo {{hasOwner?'owner':'customer'}}"></view> 43 <view class="invit-logo {{hasOwner?'owner':'customer'}}"></view>
44 <view class="wenxin-mask"> 44 <view class="wenxin-mask">
45 - <view class="wenxin-mask-bg" style="background-image: url({{image||'http://qn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view> 45 + <view class="wenxin-mask-bg" style="background-image: url({{image||'http://nosqn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg'}})"></view>
46 <view class="wenxin-mask-img"></view> 46 <view class="wenxin-mask-img"></view>
47 </view> 47 </view>
48 <view class="wenxin-line"></view> 48 <view class="wenxin-line"></view>
@@ -51,7 +51,7 @@ @@ -51,7 +51,7 @@
51 <view class="content">{{name}}</view> 51 <view class="content">{{name}}</view>
52 <view class="content">{{room}}</view> 52 <view class="content">{{room}}</view>
53 <view class="content flex-cc addr" bindtap="lookLocation"> 53 <view class="content flex-cc addr" bindtap="lookLocation">
54 - <image src="http://qn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image> 54 + <image src="http://nosqn.colorcun.com/manager-invitation/wx/address.png" class="invit-addr"></image>
55 {{addr}} 55 {{addr}}
56 </view> 56 </view>
57 </view> 57 </view>
1 .bg-1{ 1 .bg-1{
2 - background-image: url("http://qn.colorcun.com/custom/lite-yd/image/invit-bg.jpg"); 2 + background-image: url("http://nosqn.colorcun.com/custom/lite-yd/image/invit-bg.jpg");
3 background-color: #353334; 3 background-color: #353334;
4 color:#fefefe; 4 color:#fefefe;
5 } 5 }
6 .bg-2{ 6 .bg-2{
7 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E5%BA%95%E9%83%A8.png"); 7 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E5%BA%95%E9%83%A8.png");
8 background-color: #F4AFB2; 8 background-color: #F4AFB2;
9 } 9 }
10 10
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 background-size: 100%; 16 background-size: 100%;
17 } 17 }
18 .shangwu-line{ 18 .shangwu-line{
19 - background-image: url("http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191115114857.png"); 19 + background-image: url("http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20191115114857.png");
20 background-size: 100% 100%; 20 background-size: 100% 100%;
21 width: 604rpx; 21 width: 604rpx;
22 height: 30rpx; 22 height: 30rpx;
@@ -39,12 +39,12 @@ @@ -39,12 +39,12 @@
39 background-size: 100%; 39 background-size: 100%;
40 } 40 }
41 .seller .title-left{ 41 .seller .title-left{
42 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/line1.png"); 42 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/line1.png");
43 margin-right: 10rpx; 43 margin-right: 10rpx;
44 } 44 }
45 .seller .title-right{ 45 .seller .title-right{
46 margin-left: 10rpx; 46 margin-left: 10rpx;
47 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/line2.png"); 47 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/line2.png");
48 } 48 }
49 .seller .content{ 49 .seller .content{
50 margin-bottom: 60rpx; 50 margin-bottom: 60rpx;
@@ -71,7 +71,7 @@ @@ -71,7 +71,7 @@
71 .editor{ 71 .editor{
72 height:80rpx; 72 height:80rpx;
73 width: 504rpx; 73 width: 504rpx;
74 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E4%BF%AE%E6%94%B9%E5%86%85%E5%AE%B92.png"); 74 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E4%BF%AE%E6%94%B9%E5%86%85%E5%AE%B92.png");
75 background-size: 100%; 75 background-size: 100%;
76 } 76 }
77 .shangwu{ 77 .shangwu{
@@ -91,7 +91,7 @@ @@ -91,7 +91,7 @@
91 left:0; 91 left:0;
92 width:100%; 92 width:100%;
93 height: 80rpx; 93 height: 80rpx;
94 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E9%A1%B6%E9%83%A8%E8%8A%B1%E8%BE%B9.png"); 94 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E9%A1%B6%E9%83%A8%E8%8A%B1%E8%BE%B9.png");
95 background-size: 100%; 95 background-size: 100%;
96 } 96 }
97 .wenxin-bottom{ 97 .wenxin-bottom{
@@ -100,7 +100,7 @@ @@ -100,7 +100,7 @@
100 left:0; 100 left:0;
101 width:100%; 101 width:100%;
102 height: 64rpx; 102 height: 64rpx;
103 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E8%8A%B1%E8%BE%B9-%E5%BA%95%E9%83%A8.png"); 103 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E8%8A%B1%E8%BE%B9-%E5%BA%95%E9%83%A8.png");
104 background-size: 100%; 104 background-size: 100%;
105 } 105 }
106 .wenxin .invit-logo{ 106 .wenxin .invit-logo{
@@ -119,14 +119,14 @@ @@ -119,14 +119,14 @@
119 height: 468rpx; 119 height: 468rpx;
120 border-radius: 50%; 120 border-radius: 50%;
121 overflow: hidden; 121 overflow: hidden;
122 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg"); 122 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/hunshazhao3.jpg");
123 background-size: cover; 123 background-size: cover;
124 } 124 }
125 .wenxin-mask-img{ 125 .wenxin-mask-img{
126 position: absolute; 126 position: absolute;
127 left: 0; 127 left: 0;
128 top:0; 128 top:0;
129 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E8%8A%B1%E7%8E%AF%E7%A9%BA.png"); 129 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E8%8A%B1%E7%8E%AF%E7%A9%BA.png");
130 width: 100%; 130 width: 100%;
131 height: 520rpx; 131 height: 520rpx;
132 background-size: 100%; 132 background-size: 100%;
@@ -136,14 +136,14 @@ @@ -136,14 +136,14 @@
136 width: 404rpx; 136 width: 404rpx;
137 height: 42rpx; 137 height: 42rpx;
138 background-size: 100%; 138 background-size: 100%;
139 - background-image: url("http://qn.colorcun.com/manager-invitation/wx/%E6%B0%B8%E7%BB%93%E5%90%8C%E5%BF%83-%E7%99%BD%E5%A4%B4%E5%81%95%E8%80%81.png"); 139 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx/%E6%B0%B8%E7%BB%93%E5%90%8C%E5%BF%83-%E7%99%BD%E5%A4%B4%E5%81%95%E8%80%81.png");
140 } 140 }
141 .wenxin-line{ 141 .wenxin-line{
142 margin-top: 10rpx; 142 margin-top: 10rpx;
143 width: 600rpx; 143 width: 600rpx;
144 height: 30rpx; 144 height: 30rpx;
145 background-size: 100% 100%; 145 background-size: 100% 100%;
146 - background-image: url("http://qn.colorcun.com/manager-invitation/wx3/wx-line.png"); 146 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx3/wx-line.png");
147 } 147 }
148 .wenxin .seller{ 148 .wenxin .seller{
149 margin-top: 10rpx; 149 margin-top: 10rpx;
@@ -180,7 +180,7 @@ @@ -180,7 +180,7 @@
180 width: 560rpx; 180 width: 560rpx;
181 height: 86rpx; 181 height: 86rpx;
182 margin: 0 auto; 182 margin: 0 auto;
183 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B72.png"); 183 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E9%80%9A%E7%9F%A5%E5%AE%A2%E6%88%B72.png");
184 background-size: 100%; 184 background-size: 100%;
185 background-repeat: no-repeat; 185 background-repeat: no-repeat;
186 background-position: center center; 186 background-position: center center;
@@ -201,14 +201,14 @@ @@ -201,14 +201,14 @@
201 } 201 }
202 202
203 .title-addr{ 203 .title-addr{
204 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E5%9C%B0%E5%9D%80.png"); 204 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E5%9C%B0%E5%9D%80.png");
205 width: 22rpx; 205 width: 22rpx;
206 height: 28rpx; 206 height: 28rpx;
207 background-size: 100% 100%; 207 background-size: 100% 100%;
208 margin-right: 16rpx; 208 margin-right: 16rpx;
209 } 209 }
210 .title-more{ 210 .title-more{
211 - background-image: url("http://qn.colorcun.com/manager-invitation/wx2/%E7%AE%AD%E5%A4%B4.png"); 211 + background-image: url("http://nosqn.colorcun.com/manager-invitation/wx2/%E7%AE%AD%E5%A4%B4.png");
212 width: 14rpx; 212 width: 14rpx;
213 height: 22rpx; 213 height: 22rpx;
214 background-size: 100% 100%; 214 background-size: 100% 100%;
@@ -29,7 +29,9 @@ @@ -29,7 +29,9 @@
29 "projectname": "c%E7%AB%AF%E9%A2%84%E5%AE%9A", 29 "projectname": "c%E7%AB%AF%E9%A2%84%E5%AE%9A",
30 "isGameTourist": false, 30 "isGameTourist": false,
31 "simulatorType": "wechat", 31 "simulatorType": "wechat",
32 - "simulatorPluginLibVersion": {}, 32 + "simulatorPluginLibVersion": {
  33 + "qywx_simulator_plugin": "1.2.0"
  34 + },
33 "condition": { 35 "condition": {
34 "search": { 36 "search": {
35 "current": -1, 37 "current": -1,
@@ -95,7 +97,7 @@ @@ -95,7 +97,7 @@
95 "id": 6, 97 "id": 6,
96 "name": "pages/customer/index", 98 "name": "pages/customer/index",
97 "pathName": "pages/customer/index", 99 "pathName": "pages/customer/index",
98 - "query": "id=58295&fromid=1111&hasInvitation=2", 100 + "query": "id=58295&fromid=1111&hasInvitation=1",
99 "scene": 1044, 101 "scene": 1044,
100 "shareInfo": { 102 "shareInfo": {
101 "groupName": "测试模拟群1", 103 "groupName": "测试模拟群1",
@@ -113,7 +115,7 @@ @@ -113,7 +115,7 @@
113 "id": 8, 115 "id": 8,
114 "name": "邀请进入 pages/customer/index", 116 "name": "邀请进入 pages/customer/index",
115 "pathName": "pages/customer/index", 117 "pathName": "pages/customer/index",
116 - "query": "id=9994&fromid=test&hasInvitation=1&hasSellerShare=1&tplid=1", 118 + "query": "id=9995&fromid=test&hasInvitation=1&hasSellerShare=1&tplid=1",
117 "scene": 1001 119 "scene": 1001
118 }, 120 },
119 { 121 {
@@ -355,7 +357,7 @@ @@ -355,7 +357,7 @@
355 "id": 39, 357 "id": 39,
356 "name": "pages/reserve/detail 在线订座 ", 358 "name": "pages/reserve/detail 在线订座 ",
357 "pathName": "pages/reserve/detail", 359 "pathName": "pages/reserve/detail",
358 - "query": "id=1", 360 + "query": "id=1001",
359 "scene": null 361 "scene": null
360 }, 362 },
361 { 363 {
@@ -481,7 +483,7 @@ @@ -481,7 +483,7 @@
481 "id": 57, 483 "id": 57,
482 "name": "pages/customer/detail_owner", 484 "name": "pages/customer/detail_owner",
483 "pathName": "pages/customer/detail_owner", 485 "pathName": "pages/customer/detail_owner",
484 - "query": "id=58241&firstShowMsg=", 486 + "query": "id=65337",
485 "scene": null 487 "scene": null
486 }, 488 },
487 { 489 {
@@ -502,7 +504,7 @@ @@ -502,7 +504,7 @@
502 "id": 60, 504 "id": 60,
503 "name": "pack-book/pages/book/b_detail", 505 "name": "pack-book/pages/book/b_detail",
504 "pathName": "pack-book/pages/book/b_detail", 506 "pathName": "pack-book/pages/book/b_detail",
505 - "query": "id=55330", 507 + "query": "id=66723",
506 "scene": null 508 "scene": null
507 }, 509 },
508 { 510 {
@@ -595,6 +597,83 @@ @@ -595,6 +597,83 @@
595 "pathName": "pages/customer/cancel", 597 "pathName": "pages/customer/cancel",
596 "query": "id=59102", 598 "query": "id=59102",
597 "scene": null 599 "scene": null
  600 + },
  601 + {
  602 + "id": 74,
  603 + "name": "pack-activity/pages/index",
  604 + "pathName": "pack-activity/pages/index",
  605 + "query": "id=2",
  606 + "scene": null
  607 + },
  608 + {
  609 + "id": -1,
  610 + "name": "pack-activity/pages/money",
  611 + "pathName": "pack-activity/pages/money",
  612 + "query": "",
  613 + "scene": null
  614 + },
  615 + {
  616 + "id": 76,
  617 + "name": "pages/customer/detail_owner",
  618 + "pathName": "pages/customer/detail_owner",
  619 + "query": "id=59113",
  620 + "scene": null
  621 + },
  622 + {
  623 + "id": -1,
  624 + "name": "pack-activity/pages/kefu",
  625 + "pathName": "pack-activity/pages/kefu",
  626 + "query": "",
  627 + "scene": null
  628 + },
  629 + {
  630 + "id": -1,
  631 + "name": "pack-activity/pages/yuding",
  632 + "pathName": "pack-activity/pages/yuding",
  633 + "query": "id=9994&fromid=test&hasInvitation=1&hasSellerShare=1&tplid=1",
  634 + "scene": null
  635 + },
  636 + {
  637 + "id": -1,
  638 + "name": "pack-activity/pages/rule",
  639 + "pathName": "pack-activity/pages/rule",
  640 + "query": "id=1",
  641 + "scene": null
  642 + },
  643 + {
  644 + "id": 80,
  645 + "name": "pack-checkout/pages/index",
  646 + "pathName": "pack-checkout/pages/index",
  647 + "query": "rid=64793&sid=80",
  648 + "scene": null
  649 + },
  650 + {
  651 + "id": 81,
  652 + "name": "pack-book/pages/checkout/index",
  653 + "pathName": "pack-book/pages/checkout/index",
  654 + "query": "rid=66283",
  655 + "scene": null
  656 + },
  657 + {
  658 + "id": 82,
  659 + "name": "pack-book/pages/checkout/invoice",
  660 + "pathName": "pack-book/pages/checkout/invoice",
  661 + "query": "rid=62346",
  662 + "scene": null
  663 + },
  664 + {
  665 + "id": -1,
  666 + "name": "pack-activity/pack/pack",
  667 + "pathName": "pack-activity/pack/pack",
  668 + "query": "",
  669 + "scene": null
  670 + },
  671 + {
  672 + "id": -1,
  673 + "name": "pack-activity/pack/list",
  674 + "pathName": "pack-activity/pack/list",
  675 + "query": "",
  676 + "scene": null
598 } 677 }
599 ] 678 ]
600 } 679 }
@@ -9,7 +9,9 @@ const api_timeout = 2000; //接口超时时间,默认2s @@ -9,7 +9,9 @@ const api_timeout = 2000; //接口超时时间,默认2s
9 import api from './api.url' 9 import api from './api.url'
10 import uri_dc from './uri' 10 import uri_dc from './uri'
11 import bot from './rebot' 11 import bot from './rebot'
12 - 12 +const sha1=require('js-sha1');
  13 +const JSEncrypt=require('./rsa');
  14 +//const JSEncrypt=require('./rsaJS');
13 const server_host = uri_dc.HOST__LINE; 15 const server_host = uri_dc.HOST__LINE;
14 16
15 class rpcm { 17 class rpcm {
@@ -136,9 +138,10 @@ function rpc(host = '', act, data = {}, fouce = false, header = {}, silence = tr @@ -136,9 +138,10 @@ function rpc(host = '', act, data = {}, fouce = false, header = {}, silence = tr
136 } 138 }
137 let stime = new Date(); 139 let stime = new Date();
138 wx.request({ 140 wx.request({
139 - url: host + act, 141 + url: host + act+'&'+getSignQuery(),
140 method: 'POST', 142 method: 'POST',
141 - data: data, 143 + //data: data,
  144 + data: getRasData(data),
142 header: { 145 header: {
143 ...header, 146 ...header,
144 openid: openid, 147 openid: openid,
@@ -198,7 +201,9 @@ function rpc(host = '', act, data = {}, fouce = false, header = {}, silence = tr @@ -198,7 +201,9 @@ function rpc(host = '', act, data = {}, fouce = false, header = {}, silence = tr
198 if (wx.canIUse('reportPerformance')) { 201 if (wx.canIUse('reportPerformance')) {
199 wx.reportPerformance(1001, hs) 202 wx.reportPerformance(1001, hs)
200 } 203 }
201 - wx.hideLoading(); 204 + try{
  205 + wx.hideLoading();
  206 + } catch (e) {}
202 } 207 }
203 }) 208 })
204 }) 209 })
@@ -280,14 +285,14 @@ function msgSecCheck(host,params){ @@ -280,14 +285,14 @@ function msgSecCheck(host,params){
280 'content-type': 'application/x-www-form-urlencoded' 285 'content-type': 'application/x-www-form-urlencoded'
281 }, 286 },
282 success: res => { 287 success: res => {
283 - if(res.data.data.errcode==0){  
284 - success()  
285 - }else{ 288 + if(res.data.data.errcode=='87014'){
286 fail() 289 fail()
  290 + }else{
  291 + success()
287 } 292 }
288 }, 293 },
289 fail: res => { 294 fail: res => {
290 - fail() 295 + success()
291 }, 296 },
292 complete:res=>{ 297 complete:res=>{
293 wx.hideLoading(); 298 wx.hideLoading();
@@ -295,4 +300,59 @@ function msgSecCheck(host,params){ @@ -295,4 +300,59 @@ function msgSecCheck(host,params){
295 }) 300 })
296 }) 301 })
297 } 302 }
  303 +function getSignQuery(){
  304 + let token='HY6FX#X5IXF%TRYnb9Yzfe9qgtSBBYib';
  305 + let timestamp=parseInt(new Date()/1000).toString()
  306 + let nonce=Math.random().toString(36).substr(2);
  307 + nonce+=Math.random().toString(36).substr(2)
  308 + nonce+=Math.random().toString(36).substr(2);
  309 + nonce=nonce.toUpperCase()
  310 + let singArr=[token,nonce,timestamp].sort()
  311 + //console.log('singStr',singArr)
  312 + let singStr=singArr.join('')
  313 + //console.log('singStr',singStr)
  314 + let sign=sha1(singStr)
  315 + return `timestamp=${timestamp}&nonce=${nonce}&signature=${sign}`
  316 +}
  317 +function getRasData(data=null){
  318 + //return data;
  319 + if(!data) return;
  320 + if(data.encrypt_data) delete data.encrypt_data
  321 + let public_cert=`-----BEGIN PUBLIC KEY-----
  322 +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAubITzkOkhsym+uFtxcBu
  323 +u97J/gL/N3IcijrwiLbUZ3Q51sdiM4WzH2bsjVwnCVeuAiCg97JrLcEllyFrg1jZ
  324 +qXUKO326cRBl97JGFS9DjKNFJj+ytnmRlPduJDyCtcsdesHKVVPsFliEmO5C35K4
  325 +5OTn5A0wTSbD9dHOFf9uWZDfdC90bVXt16FbgxaaPJ4E4C6RxPaILXTIMKpOyros
  326 +SuaAdVsw+lxqwe6ffan3MA12iL8rhFbnpQTQeRgQhBZZNY9OQYcc3U5dc5TwBGpa
  327 +eEFOg6e30rcRZe71oyoJy4+2QED+QOMOiDH7h0xOSGa+IAE8Nw4Ju57WfJqUKGaq
  328 ++wIDAQAB
  329 +-----END PUBLIC KEY-----`
  330 + JSEncrypt.setPublicKey(public_cert);
  331 + let test_data={
  332 + centre_pos: "39.62420161,118.1174469",
  333 + distance: 100000,
  334 + lat: 39.62420161,
  335 + lng: 118.1174469,
  336 + map: {
  337 + "errMsg":"getMapRegion:ok",
  338 + "southwest":{
  339 + "longitude":118.10940027295531,
  340 + "latitude":39.61686294801785
  341 + },
  342 + "northeast":{
  343 + "longitude":118.12549352704467,
  344 + "latitude":39.63153949379
  345 + },
  346 + "scale":15
  347 + },
  348 + offset: 0,
  349 + rows: 50,
  350 + }
  351 + test_data={"rid":"66723","openid":"oB-xJ5BjnTvdgQGLHsjioNHH0eE8"}
  352 + test_data=(JSON.stringify(test_data))
  353 + var encStr = JSEncrypt.encryptLong(test_data);
  354 + console.log(test_data,encStr)
  355 + data.encrypt_data=encStr
  356 + return data
  357 +}
298 export default __api(); 358 export default __api();
@@ -314,6 +314,7 @@ export default { @@ -314,6 +314,7 @@ export default {
314 openid:'openid', 314 openid:'openid',
315 silence:false, 315 silence:false,
316 msgSecCheck:true, 316 msgSecCheck:true,
  317 + //alias:'App.Customer.SetReserveInfotest'
317 }, 318 },
318 319
319 //获得小程序码 320 //获得小程序码
@@ -436,4 +437,63 @@ export default { @@ -436,4 +437,63 @@ export default {
436 'App.Customer.SetReserveStatusByUser':{ 437 'App.Customer.SetReserveStatusByUser':{
437 openid:'openid', 438 openid:'openid',
438 }, 439 },
  440 +
  441 + //获取用户余额
  442 + 'App.User.GetBalance':{
  443 + openid:'openid',
  444 + },
  445 + //获取用户余额
  446 + 'App.User.GetConsume':{
  447 + openid:'openid',
  448 + },
  449 + //获取单个任务
  450 + 'App.Task.GetTaskInfo':{
  451 + openid:'openid',
  452 + },
  453 + //获取用户任务列表
  454 + 'App.Task.GetTaskInfos':{
  455 + openid:'openid',
  456 + },
  457 + //领取任务 aid tid
  458 + 'App.Task.SetTaskInfo':{
  459 + openid:'openid',
  460 + },
  461 + //企业微信用的完成任务 aid tid
  462 + 'App.Task.GetTaskByOpenid':{
  463 + openid:'openid',
  464 + },
  465 + //获取账单详情
  466 + 'App.Customer.GetOrderInfo':null,
  467 + //初始化账单
  468 + 'App.Customer.InitOrder':{
  469 + openid:'openid',
  470 + },
  471 + //用户发票关联账单、同时生成个人发票记录
  472 + 'App.Customer.SetInvoice':{
  473 + openid:'openid',
  474 + },
  475 + //催促消息
  476 + 'App.PushMsg.SendUrgeMsg':null,
  477 + //构造支付参数
  478 + 'App.PayOnline.CombineTransactions':{
  479 + openid:'openid',
  480 + },
  481 + //商家确认账单操作
  482 + 'App.Customer.UpdateOrderInfo':{
  483 + silence:false,
  484 + },
  485 +
  486 + //进店领取红包
  487 + 'App.Customer.SetCardRel':{
  488 + openid:'openid',
  489 + },
  490 + //根据不同状态获取用户对应的卡券列表
  491 + 'App.Customer.GetUserCard':{
  492 + openid:'openid',
  493 + },
  494 + //根据账单ID,改变用户自主选择的卡券类型
  495 + 'App.Customer.ChangeDiscountCombination':{
  496 + openid:'openid',
  497 + silence: false,
  498 + },
439 } 499 }
This diff could not be displayed because it is too large.
  1 +var e="0123456789abcdefghijklmnopqrstuvwxyz";function a(t){return e.charAt(t)}function i(t,e){return t&e}function u(t,e){return t|e}function r(t,e){return t^e}function n(t,e){return t&~e}function s(t){if(0==t)return-1;var e=0;return 0==(65535&t)&&(t>>=16,e+=16),0==(255&t)&&(t>>=8,e+=8),0==(15&t)&&(t>>=4,e+=4),0==(3&t)&&(t>>=2,e+=2),0==(1&t)&&++e,e}function o(t){for(var e=0;0!=t;)t&=t-1,++e;return e}var h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function c(t){var e,i,r="";for(e=0;e+3<=t.length;e+=3)i=parseInt(t.substring(e,e+3),16),r+=h.charAt(i>>6)+h.charAt(63&i);for(e+1==t.length?(i=parseInt(t.substring(e,e+1),16),r+=h.charAt(i<<2)):e+2==t.length&&(i=parseInt(t.substring(e,e+2),16),r+=h.charAt(i>>2)+h.charAt((3&i)<<4));0<(3&r.length);)r+="=";return r}function f(t){var e,i="",r=0,n=0;for(e=0;e<t.length&&"="!=t.charAt(e);++e){var s=h.indexOf(t.charAt(e));s<0||(0==r?(i+=a(s>>2),n=3&s,r=1):1==r?(i+=a(n<<2|s>>4),n=15&s,r=2):2==r?(i+=a(n),i+=a(s>>2),n=3&s,r=3):(i+=a(n<<2|s>>4),i+=a(15&s),r=0))}return 1==r&&(i+=a(n<<2)),i}var l,p=function(t,e){return(p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};var g,d=function(t){var e;if(void 0===l){var i="0123456789ABCDEF",r=" \f\n\r\t \u2028\u2029";for(l={},e=0;e<16;++e)l[i.charAt(e)]=e;for(i=i.toLowerCase(),e=10;e<16;++e)l[i.charAt(e)]=e;for(e=0;e<r.length;++e)l[r.charAt(e)]=-1}var n=[],s=0,o=0;for(e=0;e<t.length;++e){var h=t.charAt(e);if("="==h)break;if(-1!=(h=l[h])){if(void 0===h)throw new Error("Illegal character at offset "+e);s|=h,2<=++o?(n[n.length]=s,o=s=0):s<<=4}}if(o)throw new Error("Hex encoding incomplete: 4 bits missing");return n},v={decode:function(t){var e;if(void 0===g){var i="= \f\n\r\t \u2028\u2029";for(g=Object.create(null),e=0;e<64;++e)g["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e)]=e;for(e=0;e<i.length;++e)g[i.charAt(e)]=-1}var r=[],n=0,s=0;for(e=0;e<t.length;++e){var o=t.charAt(e);if("="==o)break;if(-1!=(o=g[o])){if(void 0===o)throw new Error("Illegal character at offset "+e);n|=o,4<=++s?(r[r.length]=n>>16,r[r.length]=n>>8&255,r[r.length]=255&n,s=n=0):n<<=6}}switch(s){case 1:throw new Error("Base64 encoding incomplete: at least 2 bits missing");case 2:r[r.length]=n>>10;break;case 3:r[r.length]=n>>16,r[r.length]=n>>8&255}return r},re:/-----BEGIN [^-]+-----([A-Za-z0-9+\/=\s]+)-----END [^-]+-----|begin-base64[^\n]+\n([A-Za-z0-9+\/=\s]+)====/,unarmor:function(t){var e=v.re.exec(t);if(e)if(e[1])t=e[1];else{if(!e[2])throw new Error("RegExp out of sync");t=e[2]}return v.decode(t)}},m=1e13,y=function(){function t(t){this.buf=[+t||0]}return t.prototype.mulAdd=function(t,e){var i,r,n=this.buf,s=n.length;for(i=0;i<s;++i)(r=n[i]*t+e)<m?e=0:r-=(e=0|r/m)*m,n[i]=r;0<e&&(n[i]=e)},t.prototype.sub=function(t){var e,i,r=this.buf,n=r.length;for(e=0;e<n;++e)(i=r[e]-t)<0?(i+=m,t=1):t=0,r[e]=i;for(;0===r[r.length-1];)r.pop()},t.prototype.toString=function(t){if(10!=(t||10))throw new Error("only base 10 is supported");for(var e=this.buf,i=e[e.length-1].toString(),r=e.length-2;0<=r;--r)i+=(m+e[r]).toString().substring(1);return i},t.prototype.valueOf=function(){for(var t=this.buf,e=0,i=t.length-1;0<=i;--i)e=e*m+t[i];return e},t.prototype.simplify=function(){var t=this.buf;return 1==t.length?t[0]:this},t}(),b="…",T=/^(\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/,S=/^(\d\d\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/;function E(t,e){return t.length>e&&(t=t.substring(0,e)+b),t}var w,D=function(){function i(t,e){this.hexDigits="0123456789ABCDEF",t instanceof i?(this.enc=t.enc,this.pos=t.pos):(this.enc=t,this.pos=e)}return i.prototype.get=function(t){if(void 0===t&&(t=this.pos++),t>=this.enc.length)throw new Error("Requesting byte offset "+t+" on a stream of length "+this.enc.length);return"string"==typeof this.enc?this.enc.charCodeAt(t):this.enc[t]},i.prototype.hexByte=function(t){return this.hexDigits.charAt(t>>4&15)+this.hexDigits.charAt(15&t)},i.prototype.hexDump=function(t,e,i){for(var r="",n=t;n<e;++n)if(r+=this.hexByte(this.get(n)),!0!==i)switch(15&n){case 7:r+=" ";break;case 15:r+="\n";break;default:r+=" "}return r},i.prototype.isASCII=function(t,e){for(var i=t;i<e;++i){var r=this.get(i);if(r<32||176<r)return!1}return!0},i.prototype.parseStringISO=function(t,e){for(var i="",r=t;r<e;++r)i+=String.fromCharCode(this.get(r));return i},i.prototype.parseStringUTF=function(t,e){for(var i="",r=t;r<e;){var n=this.get(r++);i+=n<128?String.fromCharCode(n):191<n&&n<224?String.fromCharCode((31&n)<<6|63&this.get(r++)):String.fromCharCode((15&n)<<12|(63&this.get(r++))<<6|63&this.get(r++))}return i},i.prototype.parseStringBMP=function(t,e){for(var i,r,n="",s=t;s<e;)i=this.get(s++),r=this.get(s++),n+=String.fromCharCode(i<<8|r);return n},i.prototype.parseTime=function(t,e,i){var r=this.parseStringISO(t,e),n=(i?T:S).exec(r);return n?(i&&(n[1]=+n[1],n[1]+=+n[1]<70?2e3:1900),r=n[1]+"-"+n[2]+"-"+n[3]+" "+n[4],n[5]&&(r+=":"+n[5],n[6]&&(r+=":"+n[6],n[7]&&(r+="."+n[7]))),n[8]&&(r+=" UTC","Z"!=n[8]&&(r+=n[8],n[9]&&(r+=":"+n[9]))),r):"Unrecognized time: "+r},i.prototype.parseInteger=function(t,e){for(var i,r=this.get(t),n=127<r,s=n?255:0,o="";r==s&&++t<e;)r=this.get(t);if(0===(i=e-t))return n?-1:0;if(4<i){for(o=r,i<<=3;0==(128&(+o^s));)o=+o<<1,--i;o="("+i+" bit)\n"}n&&(r-=256);for(var h=new y(r),a=t+1;a<e;++a)h.mulAdd(256,this.get(a));return o+h.toString()},i.prototype.parseBitString=function(t,e,i){for(var r=this.get(t),n="("+((e-t-1<<3)-r)+" bit)\n",s="",o=t+1;o<e;++o){for(var h=this.get(o),a=o==e-1?r:0,u=7;a<=u;--u)s+=h>>u&1?"1":"0";if(s.length>i)return n+E(s,i)}return n+s},i.prototype.parseOctetString=function(t,e,i){if(this.isASCII(t,e))return E(this.parseStringISO(t,e),i);var r=e-t,n="("+r+" byte)\n";(i/=2)<r&&(e=t+i);for(var s=t;s<e;++s)n+=this.hexByte(this.get(s));return i<r&&(n+=b),n},i.prototype.parseOID=function(t,e,i){for(var r="",n=new y,s=0,o=t;o<e;++o){var h=this.get(o);if(n.mulAdd(128,127&h),s+=7,!(128&h)){if(""===r)if((n=n.simplify())instanceof y)n.sub(80),r="2."+n.toString();else{var a=n<80?n<40?0:1:2;r=a+"."+(n-40*a)}else r+="."+n.toString();if(r.length>i)return E(r,i);n=new y,s=0}}return 0<s&&(r+=".incomplete"),r},i}(),x=function(){function c(t,e,i,r,n){if(!(r instanceof R))throw new Error("Invalid tag value.");this.stream=t,this.header=e,this.length=i,this.tag=r,this.sub=n}return c.prototype.typeName=function(){switch(this.tag.tagClass){case 0:switch(this.tag.tagNumber){case 0:return"EOC";case 1:return"BOOLEAN";case 2:return"INTEGER";case 3:return"BIT_STRING";case 4:return"OCTET_STRING";case 5:return"NULL";case 6:return"OBJECT_IDENTIFIER";case 7:return"ObjectDescriptor";case 8:return"EXTERNAL";case 9:return"REAL";case 10:return"ENUMERATED";case 11:return"EMBEDDED_PDV";case 12:return"UTF8String";case 16:return"SEQUENCE";case 17:return"SET";case 18:return"NumericString";case 19:return"PrintableString";case 20:return"TeletexString";case 21:return"VideotexString";case 22:return"IA5String";case 23:return"UTCTime";case 24:return"GeneralizedTime";case 25:return"GraphicString";case 26:return"VisibleString";case 27:return"GeneralString";case 28:return"UniversalString";case 30:return"BMPString"}return"Universal_"+this.tag.tagNumber.toString();case 1:return"Application_"+this.tag.tagNumber.toString();case 2:return"["+this.tag.tagNumber.toString()+"]";case 3:return"Private_"+this.tag.tagNumber.toString()}},c.prototype.content=function(t){if(void 0===this.tag)return null;void 0===t&&(t=1/0);var e=this.posContent(),i=Math.abs(this.length);if(!this.tag.isUniversal())return null!==this.sub?"("+this.sub.length+" elem)":this.stream.parseOctetString(e,e+i,t);switch(this.tag.tagNumber){case 1:return 0===this.stream.get(e)?"false":"true";case 2:return this.stream.parseInteger(e,e+i);case 3:return this.sub?"("+this.sub.length+" elem)":this.stream.parseBitString(e,e+i,t);case 4:return this.sub?"("+this.sub.length+" elem)":this.stream.parseOctetString(e,e+i,t);case 6:return this.stream.parseOID(e,e+i,t);case 16:case 17:return null!==this.sub?"("+this.sub.length+" elem)":"(no elem)";case 12:return E(this.stream.parseStringUTF(e,e+i),t);case 18:case 19:case 20:case 21:case 22:case 26:return E(this.stream.parseStringISO(e,e+i),t);case 30:return E(this.stream.parseStringBMP(e,e+i),t);case 23:case 24:return this.stream.parseTime(e,e+i,23==this.tag.tagNumber)}return null},c.prototype.toString=function(){return this.typeName()+"@"+this.stream.pos+"[header:"+this.header+",length:"+this.length+",sub:"+(null===this.sub?"null":this.sub.length)+"]"},c.prototype.toPrettyString=function(t){void 0===t&&(t="");var e=t+this.typeName()+" @"+this.stream.pos;if(0<=this.length&&(e+="+"),e+=this.length,this.tag.tagConstructed?e+=" (constructed)":!this.tag.isUniversal()||3!=this.tag.tagNumber&&4!=this.tag.tagNumber||null===this.sub||(e+=" (encapsulates)"),e+="\n",null!==this.sub){t+=" ";for(var i=0,r=this.sub.length;i<r;++i)e+=this.sub[i].toPrettyString(t)}return e},c.prototype.posStart=function(){return this.stream.pos},c.prototype.posContent=function(){return this.stream.pos+this.header},c.prototype.posEnd=function(){return this.stream.pos+this.header+Math.abs(this.length)},c.prototype.toHexString=function(){return this.stream.hexDump(this.posStart(),this.posEnd(),!0)},c.decodeLength=function(t){var e=t.get(),i=127&e;if(i==e)return i;if(6<i)throw new Error("Length over 48 bits not supported at position "+(t.pos-1));if(0===i)return null;for(var r=e=0;r<i;++r)e=256*e+t.get();return e},c.prototype.getHexStringValue=function(){var t=this.toHexString(),e=2*this.header,i=2*this.length;return t.substr(e,i)},c.decode=function(t){var r;r=t instanceof D?t:new D(t,0);var e=new D(r),i=new R(r),n=c.decodeLength(r),s=r.pos,o=s-e.pos,h=null,a=function(){var t=[];if(null!==n){for(var e=s+n;r.pos<e;)t[t.length]=c.decode(r);if(r.pos!=e)throw new Error("Content size is not correct for container starting at offset "+s)}else try{for(;;){var i=c.decode(r);if(i.tag.isEOC())break;t[t.length]=i}n=s-r.pos}catch(t){throw new Error("Exception while decoding undefined length content: "+t)}return t};if(i.tagConstructed)h=a();else if(i.isUniversal()&&(3==i.tagNumber||4==i.tagNumber))try{if(3==i.tagNumber&&0!=r.get())throw new Error("BIT STRINGs with unused bits cannot encapsulate.");h=a();for(var u=0;u<h.length;++u)if(h[u].tag.isEOC())throw new Error("EOC is not supposed to be actual content.")}catch(t){h=null}if(null===h){if(null===n)throw new Error("We can't skip over an invalid tag with undefined length at offset "+s);r.pos=s+Math.abs(n)}return new c(e,o,n,i,h)},c}(),R=function(){function t(t){var e=t.get();if(this.tagClass=e>>6,this.tagConstructed=0!=(32&e),this.tagNumber=31&e,31==this.tagNumber){for(var i=new y;e=t.get(),i.mulAdd(128,127&e),128&e;);this.tagNumber=i.simplify()}}return t.prototype.isUniversal=function(){return 0===this.tagClass},t.prototype.isEOC=function(){return 0===this.tagClass&&0===this.tagNumber},t}(),B=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],A=(1<<26)/B[B.length-1],O=function(){function b(t,e,i){null!=t&&("number"==typeof t?this.fromNumber(t,e,i):null==e&&"string"!=typeof t?this.fromString(t,256):this.fromString(t,e))}return b.prototype.toString=function(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(16==t)e=4;else if(8==t)e=3;else if(2==t)e=1;else if(32==t)e=5;else{if(4!=t)return this.toRadix(t);e=2}var i,r=(1<<e)-1,n=!1,s="",o=this.t,h=this.DB-o*this.DB%e;if(0<o--)for(h<this.DB&&0<(i=this[o]>>h)&&(n=!0,s=a(i));0<=o;)h<e?(i=(this[o]&(1<<h)-1)<<e-h,i|=this[--o]>>(h+=this.DB-e)):(i=this[o]>>(h-=e)&r,h<=0&&(h+=this.DB,--o)),0<i&&(n=!0),n&&(s+=a(i));return n?s:"0"},b.prototype.negate=function(){var t=M();return b.ZERO.subTo(this,t),t},b.prototype.abs=function(){return this.s<0?this.negate():this},b.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var i=this.t;if(0!=(e=i-t.t))return this.s<0?-e:e;for(;0<=--i;)if(0!=(e=this[i]-t[i]))return e;return 0},b.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+U(this[this.t-1]^this.s&this.DM)},b.prototype.mod=function(t){var e=M();return this.abs().divRemTo(t,null,e),this.s<0&&0<e.compareTo(b.ZERO)&&t.subTo(e,e),e},b.prototype.modPowInt=function(t,e){var i;return i=t<256||e.isEven()?new I(e):new N(e),this.exp(t,i)},b.prototype.clone=function(){var t=M();return this.copyTo(t),t},b.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]},b.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>24},b.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},b.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},b.prototype.toByteArray=function(){var t=this.t,e=[];e[0]=this.s;var i,r=this.DB-t*this.DB%8,n=0;if(0<t--)for(r<this.DB&&(i=this[t]>>r)!=(this.s&this.DM)>>r&&(e[n++]=i|this.s<<this.DB-r);0<=t;)r<8?(i=(this[t]&(1<<r)-1)<<8-r,i|=this[--t]>>(r+=this.DB-8)):(i=this[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),0!=(128&i)&&(i|=-256),0==n&&(128&this.s)!=(128&i)&&++n,(0<n||i!=this.s)&&(e[n++]=i);return e},b.prototype.equals=function(t){return 0==this.compareTo(t)},b.prototype.min=function(t){return this.compareTo(t)<0?this:t},b.prototype.max=function(t){return 0<this.compareTo(t)?this:t},b.prototype.and=function(t){var e=M();return this.bitwiseTo(t,i,e),e},b.prototype.or=function(t){var e=M();return this.bitwiseTo(t,u,e),e},b.prototype.xor=function(t){var e=M();return this.bitwiseTo(t,r,e),e},b.prototype.andNot=function(t){var e=M();return this.bitwiseTo(t,n,e),e},b.prototype.not=function(){for(var t=M(),e=0;e<this.t;++e)t[e]=this.DM&~this[e];return t.t=this.t,t.s=~this.s,t},b.prototype.shiftLeft=function(t){var e=M();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e},b.prototype.shiftRight=function(t){var e=M();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e},b.prototype.getLowestSetBit=function(){for(var t=0;t<this.t;++t)if(0!=this[t])return t*this.DB+s(this[t]);return this.s<0?this.t*this.DB:-1},b.prototype.bitCount=function(){for(var t=0,e=this.s&this.DM,i=0;i<this.t;++i)t+=o(this[i]^e);return t},b.prototype.testBit=function(t){var e=Math.floor(t/this.DB);return e>=this.t?0!=this.s:0!=(this[e]&1<<t%this.DB)},b.prototype.setBit=function(t){return this.changeBit(t,u)},b.prototype.clearBit=function(t){return this.changeBit(t,n)},b.prototype.flipBit=function(t){return this.changeBit(t,r)},b.prototype.add=function(t){var e=M();return this.addTo(t,e),e},b.prototype.subtract=function(t){var e=M();return this.subTo(t,e),e},b.prototype.multiply=function(t){var e=M();return this.multiplyTo(t,e),e},b.prototype.divide=function(t){var e=M();return this.divRemTo(t,e,null),e},b.prototype.remainder=function(t){var e=M();return this.divRemTo(t,null,e),e},b.prototype.divideAndRemainder=function(t){var e=M(),i=M();return this.divRemTo(t,e,i),[e,i]},b.prototype.modPow=function(t,e){var i,r,n=t.bitLength(),s=F(1);if(n<=0)return s;i=n<18?1:n<48?3:n<144?4:n<768?5:6,r=n<8?new I(e):e.isEven()?new P(e):new N(e);var o=[],h=3,a=i-1,u=(1<<i)-1;if(o[1]=r.convert(this),1<i){var c=M();for(r.sqrTo(o[1],c);h<=u;)o[h]=M(),r.mulTo(c,o[h-2],o[h]),h+=2}var f,l,p=t.t-1,g=!0,d=M();for(n=U(t[p])-1;0<=p;){for(a<=n?f=t[p]>>n-a&u:(f=(t[p]&(1<<n+1)-1)<<a-n,0<p&&(f|=t[p-1]>>this.DB+n-a)),h=i;0==(1&f);)f>>=1,--h;if((n-=h)<0&&(n+=this.DB,--p),g)o[f].copyTo(s),g=!1;else{for(;1<h;)r.sqrTo(s,d),r.sqrTo(d,s),h-=2;0<h?r.sqrTo(s,d):(l=s,s=d,d=l),r.mulTo(d,o[f],s)}for(;0<=p&&0==(t[p]&1<<n);)r.sqrTo(s,d),l=s,s=d,d=l,--n<0&&(n=this.DB-1,--p)}return r.revert(s)},b.prototype.modInverse=function(t){var e=t.isEven();if(this.isEven()&&e||0==t.signum())return b.ZERO;for(var i=t.clone(),r=this.clone(),n=F(1),s=F(0),o=F(0),h=F(1);0!=i.signum();){for(;i.isEven();)i.rShiftTo(1,i),e?(n.isEven()&&s.isEven()||(n.addTo(this,n),s.subTo(t,s)),n.rShiftTo(1,n)):s.isEven()||s.subTo(t,s),s.rShiftTo(1,s);for(;r.isEven();)r.rShiftTo(1,r),e?(o.isEven()&&h.isEven()||(o.addTo(this,o),h.subTo(t,h)),o.rShiftTo(1,o)):h.isEven()||h.subTo(t,h),h.rShiftTo(1,h);0<=i.compareTo(r)?(i.subTo(r,i),e&&n.subTo(o,n),s.subTo(h,s)):(r.subTo(i,r),e&&o.subTo(n,o),h.subTo(s,h))}return 0!=r.compareTo(b.ONE)?b.ZERO:0<=h.compareTo(t)?h.subtract(t):h.signum()<0?(h.addTo(t,h),h.signum()<0?h.add(t):h):h},b.prototype.pow=function(t){return this.exp(t,new V)},b.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),i=t.s<0?t.negate():t.clone();if(e.compareTo(i)<0){var r=e;e=i,i=r}var n=e.getLowestSetBit(),s=i.getLowestSetBit();if(s<0)return e;for(n<s&&(s=n),0<s&&(e.rShiftTo(s,e),i.rShiftTo(s,i));0<e.signum();)0<(n=e.getLowestSetBit())&&e.rShiftTo(n,e),0<(n=i.getLowestSetBit())&&i.rShiftTo(n,i),0<=e.compareTo(i)?(e.subTo(i,e),e.rShiftTo(1,e)):(i.subTo(e,i),i.rShiftTo(1,i));return 0<s&&i.lShiftTo(s,i),i},b.prototype.isProbablePrime=function(t){var e,i=this.abs();if(1==i.t&&i[0]<=B[B.length-1]){for(e=0;e<B.length;++e)if(i[0]==B[e])return!0;return!1}if(i.isEven())return!1;for(e=1;e<B.length;){for(var r=B[e],n=e+1;n<B.length&&r<A;)r*=B[n++];for(r=i.modInt(r);e<n;)if(r%B[e++]==0)return!1}return i.millerRabin(t)},b.prototype.copyTo=function(t){for(var e=this.t-1;0<=e;--e)t[e]=this[e];t.t=this.t,t.s=this.s},b.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,0<t?this[0]=t:t<-1?this[0]=t+this.DV:this.t=0},b.prototype.fromString=function(t,e){var i;if(16==e)i=4;else if(8==e)i=3;else if(256==e)i=8;else if(2==e)i=1;else if(32==e)i=5;else{if(4!=e)return void this.fromRadix(t,e);i=2}this.t=0,this.s=0;for(var r=t.length,n=!1,s=0;0<=--r;){var o=8==i?255&+t[r]:C(t,r);o<0?"-"==t.charAt(r)&&(n=!0):(n=!1,0==s?this[this.t++]=o:s+i>this.DB?(this[this.t-1]|=(o&(1<<this.DB-s)-1)<<s,this[this.t++]=o>>this.DB-s):this[this.t-1]|=o<<s,(s+=i)>=this.DB&&(s-=this.DB))}8==i&&0!=(128&+t[0])&&(this.s=-1,0<s&&(this[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),n&&b.ZERO.subTo(this,this)},b.prototype.clamp=function(){for(var t=this.s&this.DM;0<this.t&&this[this.t-1]==t;)--this.t},b.prototype.dlShiftTo=function(t,e){var i;for(i=this.t-1;0<=i;--i)e[i+t]=this[i];for(i=t-1;0<=i;--i)e[i]=0;e.t=this.t+t,e.s=this.s},b.prototype.drShiftTo=function(t,e){for(var i=t;i<this.t;++i)e[i-t]=this[i];e.t=Math.max(this.t-t,0),e.s=this.s},b.prototype.lShiftTo=function(t,e){for(var i=t%this.DB,r=this.DB-i,n=(1<<r)-1,s=Math.floor(t/this.DB),o=this.s<<i&this.DM,h=this.t-1;0<=h;--h)e[h+s+1]=this[h]>>r|o,o=(this[h]&n)<<i;for(h=s-1;0<=h;--h)e[h]=0;e[s]=o,e.t=this.t+s+1,e.s=this.s,e.clamp()},b.prototype.rShiftTo=function(t,e){e.s=this.s;var i=Math.floor(t/this.DB);if(i>=this.t)e.t=0;else{var r=t%this.DB,n=this.DB-r,s=(1<<r)-1;e[0]=this[i]>>r;for(var o=i+1;o<this.t;++o)e[o-i-1]|=(this[o]&s)<<n,e[o-i]=this[o]>>r;0<r&&(e[this.t-i-1]|=(this.s&s)<<n),e.t=this.t-i,e.clamp()}},b.prototype.subTo=function(t,e){for(var i=0,r=0,n=Math.min(t.t,this.t);i<n;)r+=this[i]-t[i],e[i++]=r&this.DM,r>>=this.DB;if(t.t<this.t){for(r-=t.s;i<this.t;)r+=this[i],e[i++]=r&this.DM,r>>=this.DB;r+=this.s}else{for(r+=this.s;i<t.t;)r-=t[i],e[i++]=r&this.DM,r>>=this.DB;r-=t.s}e.s=r<0?-1:0,r<-1?e[i++]=this.DV+r:0<r&&(e[i++]=r),e.t=i,e.clamp()},b.prototype.multiplyTo=function(t,e){var i=this.abs(),r=t.abs(),n=i.t;for(e.t=n+r.t;0<=--n;)e[n]=0;for(n=0;n<r.t;++n)e[n+i.t]=i.am(0,r[n],e,n,0,i.t);e.s=0,e.clamp(),this.s!=t.s&&b.ZERO.subTo(e,e)},b.prototype.squareTo=function(t){for(var e=this.abs(),i=t.t=2*e.t;0<=--i;)t[i]=0;for(i=0;i<e.t-1;++i){var r=e.am(i,e[i],t,2*i,0,1);(t[i+e.t]+=e.am(i+1,2*e[i],t,2*i+1,r,e.t-i-1))>=e.DV&&(t[i+e.t]-=e.DV,t[i+e.t+1]=1)}0<t.t&&(t[t.t-1]+=e.am(i,e[i],t,2*i,0,1)),t.s=0,t.clamp()},b.prototype.divRemTo=function(t,e,i){var r=t.abs();if(!(r.t<=0)){var n=this.abs();if(n.t<r.t)return null!=e&&e.fromInt(0),void(null!=i&&this.copyTo(i));null==i&&(i=M());var s=M(),o=this.s,h=t.s,a=this.DB-U(r[r.t-1]);0<a?(r.lShiftTo(a,s),n.lShiftTo(a,i)):(r.copyTo(s),n.copyTo(i));var u=s.t,c=s[u-1];if(0!=c){var f=c*(1<<this.F1)+(1<u?s[u-2]>>this.F2:0),l=this.FV/f,p=(1<<this.F1)/f,g=1<<this.F2,d=i.t,v=d-u,m=null==e?M():e;for(s.dlShiftTo(v,m),0<=i.compareTo(m)&&(i[i.t++]=1,i.subTo(m,i)),b.ONE.dlShiftTo(u,m),m.subTo(s,s);s.t<u;)s[s.t++]=0;for(;0<=--v;){var y=i[--d]==c?this.DM:Math.floor(i[d]*l+(i[d-1]+g)*p);if((i[d]+=s.am(0,y,i,v,0,u))<y)for(s.dlShiftTo(v,m),i.subTo(m,i);i[d]<--y;)i.subTo(m,i)}null!=e&&(i.drShiftTo(u,e),o!=h&&b.ZERO.subTo(e,e)),i.t=u,i.clamp(),0<a&&i.rShiftTo(a,i),o<0&&b.ZERO.subTo(i,i)}}},b.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(0==(1&t))return 0;var e=3&t;return 0<(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)?this.DV-e:-e},b.prototype.isEven=function(){return 0==(0<this.t?1&this[0]:this.s)},b.prototype.exp=function(t,e){if(4294967295<t||t<1)return b.ONE;var i=M(),r=M(),n=e.convert(this),s=U(t)-1;for(n.copyTo(i);0<=--s;)if(e.sqrTo(i,r),0<(t&1<<s))e.mulTo(r,n,i);else{var o=i;i=r,r=o}return e.revert(i)},b.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},b.prototype.toRadix=function(t){if(null==t&&(t=10),0==this.signum()||t<2||36<t)return"0";var e=this.chunkSize(t),i=Math.pow(t,e),r=F(i),n=M(),s=M(),o="";for(this.divRemTo(r,n,s);0<n.signum();)o=(i+s.intValue()).toString(t).substr(1)+o,n.divRemTo(r,n,s);return s.intValue().toString(t)+o},b.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var i=this.chunkSize(e),r=Math.pow(e,i),n=!1,s=0,o=0,h=0;h<t.length;++h){var a=C(t,h);a<0?"-"==t.charAt(h)&&0==this.signum()&&(n=!0):(o=e*o+a,++s>=i&&(this.dMultiply(r),this.dAddOffset(o,0),o=s=0))}0<s&&(this.dMultiply(Math.pow(e,s)),this.dAddOffset(o,0)),n&&b.ZERO.subTo(this,this)},b.prototype.fromNumber=function(t,e,i){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t,i),this.testBit(t-1)||this.bitwiseTo(b.ONE.shiftLeft(t-1),u,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(b.ONE.shiftLeft(t-1),this);else{var r=[],n=7&t;r.length=1+(t>>3),e.nextBytes(r),0<n?r[0]&=(1<<n)-1:r[0]=0,this.fromString(r,256)}},b.prototype.bitwiseTo=function(t,e,i){var r,n,s=Math.min(t.t,this.t);for(r=0;r<s;++r)i[r]=e(this[r],t[r]);if(t.t<this.t){for(n=t.s&this.DM,r=s;r<this.t;++r)i[r]=e(this[r],n);i.t=this.t}else{for(n=this.s&this.DM,r=s;r<t.t;++r)i[r]=e(n,t[r]);i.t=t.t}i.s=e(this.s,t.s),i.clamp()},b.prototype.changeBit=function(t,e){var i=b.ONE.shiftLeft(t);return this.bitwiseTo(i,e,i),i},b.prototype.addTo=function(t,e){for(var i=0,r=0,n=Math.min(t.t,this.t);i<n;)r+=this[i]+t[i],e[i++]=r&this.DM,r>>=this.DB;if(t.t<this.t){for(r+=t.s;i<this.t;)r+=this[i],e[i++]=r&this.DM,r>>=this.DB;r+=this.s}else{for(r+=this.s;i<t.t;)r+=t[i],e[i++]=r&this.DM,r>>=this.DB;r+=t.s}e.s=r<0?-1:0,0<r?e[i++]=r:r<-1&&(e[i++]=this.DV+r),e.t=i,e.clamp()},b.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},b.prototype.dAddOffset=function(t,e){if(0!=t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},b.prototype.multiplyLowerTo=function(t,e,i){var r=Math.min(this.t+t.t,e);for(i.s=0,i.t=r;0<r;)i[--r]=0;for(var n=i.t-this.t;r<n;++r)i[r+this.t]=this.am(0,t[r],i,r,0,this.t);for(n=Math.min(t.t,e);r<n;++r)this.am(0,t[r],i,r,0,e-r);i.clamp()},b.prototype.multiplyUpperTo=function(t,e,i){--e;var r=i.t=this.t+t.t-e;for(i.s=0;0<=--r;)i[r]=0;for(r=Math.max(e-this.t,0);r<t.t;++r)i[this.t+r-e]=this.am(e-r,t[r],i,0,0,this.t+r-e);i.clamp(),i.drShiftTo(1,i)},b.prototype.modInt=function(t){if(t<=0)return 0;var e=this.DV%t,i=this.s<0?t-1:0;if(0<this.t)if(0==e)i=this[0]%t;else for(var r=this.t-1;0<=r;--r)i=(e*i+this[r])%t;return i},b.prototype.millerRabin=function(t){var e=this.subtract(b.ONE),i=e.getLowestSetBit();if(i<=0)return!1;var r=e.shiftRight(i);B.length<(t=t+1>>1)&&(t=B.length);for(var n=M(),s=0;s<t;++s){n.fromInt(B[Math.floor(Math.random()*B.length)]);var o=n.modPow(r,this);if(0!=o.compareTo(b.ONE)&&0!=o.compareTo(e)){for(var h=1;h++<i&&0!=o.compareTo(e);)if(0==(o=o.modPowInt(2,this)).compareTo(b.ONE))return!1;if(0!=o.compareTo(e))return!1}}return!0},b.prototype.square=function(){var t=M();return this.squareTo(t),t},b.prototype.gcda=function(t,e){var i=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(i.compareTo(r)<0){var n=i;i=r,r=n}var s=i.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)e(i);else{s<o&&(o=s),0<o&&(i.rShiftTo(o,i),r.rShiftTo(o,r));var h=function(){0<(s=i.getLowestSetBit())&&i.rShiftTo(s,i),0<(s=r.getLowestSetBit())&&r.rShiftTo(s,r),0<=i.compareTo(r)?(i.subTo(r,i),i.rShiftTo(1,i)):(r.subTo(i,r),r.rShiftTo(1,r)),0<i.signum()?setTimeout(h,0):(0<o&&r.lShiftTo(o,r),setTimeout(function(){e(r)},0))};setTimeout(h,10)}},b.prototype.fromNumberAsync=function(t,e,i,r){if("number"==typeof e)if(t<2)this.fromInt(1);else{this.fromNumber(t,i),this.testBit(t-1)||this.bitwiseTo(b.ONE.shiftLeft(t-1),u,this),this.isEven()&&this.dAddOffset(1,0);var n=this,s=function(){n.dAddOffset(2,0),n.bitLength()>t&&n.subTo(b.ONE.shiftLeft(t-1),n),n.isProbablePrime(e)?setTimeout(function(){r()},0):setTimeout(s,0)};setTimeout(s,0)}else{var o=[],h=7&t;o.length=1+(t>>3),e.nextBytes(o),0<h?o[0]&=(1<<h)-1:o[0]=0,this.fromString(o,256)}},b}(),V=function(){function t(){}return t.prototype.convert=function(t){return t},t.prototype.revert=function(t){return t},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i)},t.prototype.sqrTo=function(t,e){t.squareTo(e)},t}(),I=function(){function t(t){this.m=t}return t.prototype.convert=function(t){return t.s<0||0<=t.compareTo(this.m)?t.mod(this.m):t},t.prototype.revert=function(t){return t},t.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}(),N=function(){function t(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}return t.prototype.convert=function(t){var e=M();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&0<e.compareTo(O.ZERO)&&this.m.subTo(e,e),e},t.prototype.revert=function(t){var e=M();return t.copyTo(e),this.reduce(e),e},t.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e<this.m.t;++e){var i=32767&t[e],r=i*this.mpl+((i*this.mph+(t[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(t[i=e+this.m.t]+=this.m.am(0,r,t,e,0,this.m.t);t[i]>=t.DV;)t[i]-=t.DV,t[++i]++}t.clamp(),t.drShiftTo(this.m.t,t),0<=t.compareTo(this.m)&&t.subTo(this.m,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}(),P=function(){function t(t){this.m=t,this.r2=M(),this.q3=M(),O.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t)}return t.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=M();return t.copyTo(e),this.reduce(e),e},t.prototype.revert=function(t){return t},t.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);0<=t.compareTo(this.m);)t.subTo(this.m,t)},t.prototype.mulTo=function(t,e,i){t.multiplyTo(e,i),this.reduce(i)},t.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t}();function M(){return new O(null)}function q(t,e){return new O(t,e)}(O.prototype.am=function(t,e,i,r,n,s){for(var o=16383&e,h=e>>14;0<=--s;){var a=16383&this[t],u=this[t++]>>14,c=h*a+u*o;n=((a=o*a+((16383&c)<<14)+i[r]+n)>>28)+(c>>14)+h*u,i[r++]=268435455&a}return n},w=28),O.prototype.DB=w,O.prototype.DM=(1<<w)-1,O.prototype.DV=1<<w;O.prototype.FV=Math.pow(2,52),O.prototype.F1=52-w,O.prototype.F2=2*w-52;var j,L,H=[];for(j="0".charCodeAt(0),L=0;L<=9;++L)H[j++]=L;for(j="a".charCodeAt(0),L=10;L<36;++L)H[j++]=L;for(j="A".charCodeAt(0),L=10;L<36;++L)H[j++]=L;function C(t,e){var i=H[t.charCodeAt(e)];return null==i?-1:i}function F(t){var e=M();return e.fromInt(t),e}function U(t){var e,i=1;return 0!=(e=t>>>16)&&(t=e,i+=16),0!=(e=t>>8)&&(t=e,i+=8),0!=(e=t>>4)&&(t=e,i+=4),0!=(e=t>>2)&&(t=e,i+=2),0!=(e=t>>1)&&(t=e,i+=1),i}O.ZERO=F(0),O.ONE=F(1);var K=function(){function t(){this.i=0,this.j=0,this.S=[]}return t.prototype.init=function(t){var e,i,r;for(e=0;e<256;++e)this.S[e]=e;for(e=i=0;e<256;++e)i=i+this.S[e]+t[e%t.length]&255,r=this.S[e],this.S[e]=this.S[i],this.S[i]=r;this.i=0,this.j=0},t.prototype.next=function(){var t;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,t=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=t,this.S[t+this.S[this.i]&255]},t}();var k,_,z=256,Z=null;if(null==Z){Z=[];var G=void(_=0);}function J(){if(null==k){for(k=new K;_<z;){var t=Math.floor(65536*Math.random());Z[_++]=255&t}for(k.init(Z),_=0;_<Z.length;++_)Z[_]=0;_=0}return k.next()}var X=function(){function t(){}return t.prototype.nextBytes=function(t){for(var e=0;e<t.length;++e)t[e]=J()},t}();var Q=function(){function t(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return t.prototype.doPublic=function(t){return t.modPowInt(this.e,this.n)},t.prototype.doPrivate=function(t){if(null==this.p||null==this.q)return t.modPow(this.d,this.n);for(var e=t.mod(this.p).modPow(this.dmp1,this.p),i=t.mod(this.q).modPow(this.dmq1,this.q);e.compareTo(i)<0;)e=e.add(this.p);return e.subtract(i).multiply(this.coeff).mod(this.p).multiply(this.q).add(i)},t.prototype.setPublic=function(t,e){null!=t&&null!=e&&0<t.length&&0<e.length?(this.n=q(t,16),this.e=parseInt(e,16)):console.error("Invalid RSA public key")},t.prototype.encrypt=function(t){var e=function(t,e){if(e<t.length+11)return console.error("Message too long for RSA"),null;for(var i=[],r=t.length-1;0<=r&&0<e;){var n=t.charCodeAt(r--);n<128?i[--e]=n:127<n&&n<2048?(i[--e]=63&n|128,i[--e]=n>>6|192):(i[--e]=63&n|128,i[--e]=n>>6&63|128,i[--e]=n>>12|224)}i[--e]=0;for(var s=new X,o=[];2<e;){for(o[0]=0;0==o[0];)s.nextBytes(o);i[--e]=o[0]}return i[--e]=2,i[--e]=0,new O(i)}(t,this.n.bitLength()+7>>3);if(null==e)return null;var i=this.doPublic(e);if(null==i)return null;var r=i.toString(16);return 0==(1&r.length)?r:"0"+r},t.prototype.setPrivate=function(t,e,i){null!=t&&null!=e&&0<t.length&&0<e.length?(this.n=q(t,16),this.e=parseInt(e,16),this.d=q(i,16)):console.error("Invalid RSA private key")},t.prototype.setPrivateEx=function(t,e,i,r,n,s,o,h){null!=t&&null!=e&&0<t.length&&0<e.length?(this.n=q(t,16),this.e=parseInt(e,16),this.d=q(i,16),this.p=q(r,16),this.q=q(n,16),this.dmp1=q(s,16),this.dmq1=q(o,16),this.coeff=q(h,16)):console.error("Invalid RSA private key")},t.prototype.generate=function(t,e){var i=new X,r=t>>1;this.e=parseInt(e,16);for(var n=new O(e,16);;){for(;this.p=new O(t-r,1,i),0!=this.p.subtract(O.ONE).gcd(n).compareTo(O.ONE)||!this.p.isProbablePrime(10););for(;this.q=new O(r,1,i),0!=this.q.subtract(O.ONE).gcd(n).compareTo(O.ONE)||!this.q.isProbablePrime(10););if(this.p.compareTo(this.q)<=0){var s=this.p;this.p=this.q,this.q=s}var o=this.p.subtract(O.ONE),h=this.q.subtract(O.ONE),a=o.multiply(h);if(0==a.gcd(n).compareTo(O.ONE)){this.n=this.p.multiply(this.q),this.d=n.modInverse(a),this.dmp1=this.d.mod(o),this.dmq1=this.d.mod(h),this.coeff=this.q.modInverse(this.p);break}}},t.prototype.decrypt=function(t){var e=q(t,16),i=this.doPrivate(e);return null==i?null:function(t,e){var i=t.toByteArray(),r=0;for(;r<i.length&&0==i[r];)++r;if(i.length-r!=e-1||2!=i[r])return null;++r;for(;0!=i[r];)if(++r>=i.length)return null;var n="";for(;++r<i.length;){var s=255&i[r];s<128?n+=String.fromCharCode(s):191<s&&s<224?(n+=String.fromCharCode((31&s)<<6|63&i[r+1]),++r):(n+=String.fromCharCode((15&s)<<12|(63&i[r+1])<<6|63&i[r+2]),r+=2)}return n}(i,this.n.bitLength()+7>>3)},t.prototype.generateAsync=function(t,e,n){var s=new X,o=t>>1;this.e=parseInt(e,16);var h=new O(e,16),a=this,u=function(){var e=function(){if(a.p.compareTo(a.q)<=0){var t=a.p;a.p=a.q,a.q=t}var e=a.p.subtract(O.ONE),i=a.q.subtract(O.ONE),r=e.multiply(i);0==r.gcd(h).compareTo(O.ONE)?(a.n=a.p.multiply(a.q),a.d=h.modInverse(r),a.dmp1=a.d.mod(e),a.dmq1=a.d.mod(i),a.coeff=a.q.modInverse(a.p),setTimeout(function(){n()},0)):setTimeout(u,0)},i=function(){a.q=M(),a.q.fromNumberAsync(o,1,s,function(){a.q.subtract(O.ONE).gcda(h,function(t){0==t.compareTo(O.ONE)&&a.q.isProbablePrime(10)?setTimeout(e,0):setTimeout(i,0)})})},r=function(){a.p=M(),a.p.fromNumberAsync(t-o,1,s,function(){a.p.subtract(O.ONE).gcda(h,function(t){0==t.compareTo(O.ONE)&&a.p.isProbablePrime(10)?setTimeout(i,0):setTimeout(r,0)})})};setTimeout(r,0)};setTimeout(u,0)},t.prototype.sign=function(t,e,i){var r=function(t,e){if(e<t.length+22)return console.error("Message too long for RSA"),null;for(var i=e-t.length-6,r="",n=0;n<i;n+=2)r+="ff";return q("0001"+r+"00"+t,16)}((W[i]||"")+e(t).toString(),this.n.bitLength()/4);if(null==r)return null;var n=this.doPrivate(r);if(null==n)return null;var s=n.toString(16);return 0==(1&s.length)?s:"0"+s},t.prototype.verify=function(t,e,i){var r=q(e,16),n=this.doPublic(r);return null==n?null:function(t){for(var e in W)if(W.hasOwnProperty(e)){var i=W[e],r=i.length;if(t.substr(0,r)==i)return t.substr(r)}return t}(n.toString(16).replace(/^1f+00/,""))==i(t).toString()},t}();var W={md2:"3020300c06082a864886f70d020205000410",md5:"3020300c06082a864886f70d020505000410",sha1:"3021300906052b0e03021a05000414",sha224:"302d300d06096086480165030402040500041c",sha256:"3031300d060960864801650304020105000420",sha384:"3041300d060960864801650304020205000430",sha512:"3051300d060960864801650304020305000440",ripemd160:"3021300906052b2403020105000414"};var tt={};tt.lang={extend:function(t,e,i){if(!e||!t)throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");var r=function(){};if(r.prototype=e.prototype,t.prototype=new r,(t.prototype.constructor=t).superclass=e.prototype,e.prototype.constructor==Object.prototype.constructor&&(e.prototype.constructor=e),i){var n;for(n in i)t.prototype[n]=i[n];var s=function(){},o=["toString","valueOf"];try{/MSIE/.test(navigator.userAgent)&&(s=function(t,e){for(n=0;n<o.length;n+=1){var i=o[n],r=e[i];"function"==typeof r&&r!=Object.prototype[i]&&(t[i]=r)}})}catch(t){}s(t.prototype,i)}}};var et={};void 0!==et.asn1&&et.asn1||(et.asn1={}),et.asn1.ASN1Util=new function(){this.integerToByteHex=function(t){var e=t.toString(16);return e.length%2==1&&(e="0"+e),e},this.bigIntToMinTwosComplementsHex=function(t){var e=t.toString(16);if("-"!=e.substr(0,1))e.length%2==1?e="0"+e:e.match(/^[0-7]/)||(e="00"+e);else{var i=e.substr(1).length;i%2==1?i+=1:e.match(/^[0-7]/)||(i+=2);for(var r="",n=0;n<i;n++)r+="f";e=new O(r,16).xor(t).add(O.ONE).toString(16).replace(/^-/,"")}return e},this.getPEMStringFromHex=function(t,e){return hextopem(t,e)},this.newObject=function(t){var e=et.asn1,i=e.DERBoolean,r=e.DERInteger,n=e.DERBitString,s=e.DEROctetString,o=e.DERNull,h=e.DERObjectIdentifier,a=e.DEREnumerated,u=e.DERUTF8String,c=e.DERNumericString,f=e.DERPrintableString,l=e.DERTeletexString,p=e.DERIA5String,g=e.DERUTCTime,d=e.DERGeneralizedTime,v=e.DERSequence,m=e.DERSet,y=e.DERTaggedObject,b=e.ASN1Util.newObject,T=Object.keys(t);if(1!=T.length)throw"key of param shall be only one.";var S=T[0];if(-1==":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:".indexOf(":"+S+":"))throw"undefined key: "+S;if("bool"==S)return new i(t[S]);if("int"==S)return new r(t[S]);if("bitstr"==S)return new n(t[S]);if("octstr"==S)return new s(t[S]);if("null"==S)return new o(t[S]);if("oid"==S)return new h(t[S]);if("enum"==S)return new a(t[S]);if("utf8str"==S)return new u(t[S]);if("numstr"==S)return new c(t[S]);if("prnstr"==S)return new f(t[S]);if("telstr"==S)return new l(t[S]);if("ia5str"==S)return new p(t[S]);if("utctime"==S)return new g(t[S]);if("gentime"==S)return new d(t[S]);if("seq"==S){for(var E=t[S],w=[],D=0;D<E.length;D++){var x=b(E[D]);w.push(x)}return new v({array:w})}if("set"==S){for(E=t[S],w=[],D=0;D<E.length;D++){x=b(E[D]);w.push(x)}return new m({array:w})}if("tag"==S){var R=t[S];if("[object Array]"===Object.prototype.toString.call(R)&&3==R.length){var B=b(R[2]);return new y({tag:R[0],explicit:R[1],obj:B})}var A={};if(void 0!==R.explicit&&(A.explicit=R.explicit),void 0!==R.tag&&(A.tag=R.tag),void 0===R.obj)throw"obj shall be specified for 'tag'.";return A.obj=b(R.obj),new y(A)}},this.jsonToASN1HEX=function(t){return this.newObject(t).getEncodedHex()}},et.asn1.ASN1Util.oidHexToInt=function(t){for(var e="",i=parseInt(t.substr(0,2),16),r=(e=Math.floor(i/40)+"."+i%40,""),n=2;n<t.length;n+=2){var s=("00000000"+parseInt(t.substr(n,2),16).toString(2)).slice(-8);if(r+=s.substr(1,7),"0"==s.substr(0,1))e=e+"."+new O(r,2).toString(10),r=""}return e},et.asn1.ASN1Util.oidIntToHex=function(t){var h=function(t){var e=t.toString(16);return 1==e.length&&(e="0"+e),e},e=function(t){var e="",i=new O(t,10).toString(2),r=7-i.length%7;7==r&&(r=0);for(var n="",s=0;s<r;s++)n+="0";i=n+i;for(s=0;s<i.length-1;s+=7){var o=i.substr(s,7);s!=i.length-7&&(o="1"+o),e+=h(parseInt(o,2))}return e};if(!t.match(/^[0-9.]+$/))throw"malformed oid string: "+t;var i="",r=t.split("."),n=40*parseInt(r[0])+parseInt(r[1]);i+=h(n),r.splice(0,2);for(var s=0;s<r.length;s++)i+=e(r[s]);return i},et.asn1.ASN1Object=function(){this.getLengthHexFromValue=function(){if(void 0===this.hV||null==this.hV)throw"this.hV is null or undefined.";if(this.hV.length%2==1)throw"value hex must be even length: n="+"".length+",v="+this.hV;var t=this.hV.length/2,e=t.toString(16);if(e.length%2==1&&(e="0"+e),t<128)return e;var i=e.length/2;if(15<i)throw"ASN.1 length too long to represent by 8x: n = "+t.toString(16);return(128+i).toString(16)+e},this.getEncodedHex=function(){return(null==this.hTLV||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV},this.getValueHex=function(){return this.getEncodedHex(),this.hV},this.getFreshValueHex=function(){return""}},et.asn1.DERAbstractString=function(t){et.asn1.DERAbstractString.superclass.constructor.call(this),this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=stohex(this.s)},this.setStringHex=function(t){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t?this.setString(t):void 0!==t.str?this.setString(t.str):void 0!==t.hex&&this.setStringHex(t.hex))},tt.lang.extend(et.asn1.DERAbstractString,et.asn1.ASN1Object),et.asn1.DERAbstractTime=function(t){et.asn1.DERAbstractTime.superclass.constructor.call(this),this.localDateToUTC=function(t){return utc=t.getTime()+6e4*t.getTimezoneOffset(),new Date(utc)},this.formatDate=function(t,e,i){var r=this.zeroPadding,n=this.localDateToUTC(t),s=String(n.getFullYear());"utc"==e&&(s=s.substr(2,2));var o=s+r(String(n.getMonth()+1),2)+r(String(n.getDate()),2)+r(String(n.getHours()),2)+r(String(n.getMinutes()),2)+r(String(n.getSeconds()),2);if(!0===i){var h=n.getMilliseconds();if(0!=h){var a=r(String(h),3);o=o+"."+(a=a.replace(/[0]+$/,""))}}return o+"Z"},this.zeroPadding=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=stohex(t)},this.setByDateValue=function(t,e,i,r,n,s){var o=new Date(Date.UTC(t,e-1,i,r,n,s,0));this.setByDate(o)},this.getFreshValueHex=function(){return this.hV}},tt.lang.extend(et.asn1.DERAbstractTime,et.asn1.ASN1Object),et.asn1.DERAbstractStructured=function(t){et.asn1.DERAbstractString.superclass.constructor.call(this),this.setByASN1ObjectArray=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array=t},this.appendASN1Object=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array.push(t)},this.asn1Array=new Array,void 0!==t&&void 0!==t.array&&(this.asn1Array=t.array)},tt.lang.extend(et.asn1.DERAbstractStructured,et.asn1.ASN1Object),et.asn1.DERBoolean=function(){et.asn1.DERBoolean.superclass.constructor.call(this),this.hT="01",this.hTLV="0101ff"},tt.lang.extend(et.asn1.DERBoolean,et.asn1.ASN1Object),et.asn1.DERInteger=function(t){et.asn1.DERInteger.superclass.constructor.call(this),this.hT="02",this.setByBigInteger=function(t){this.hTLV=null,this.isModified=!0,this.hV=et.asn1.ASN1Util.bigIntToMinTwosComplementsHex(t)},this.setByInteger=function(t){var e=new O(String(t),10);this.setByBigInteger(e)},this.setValueHex=function(t){this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.bigint?this.setByBigInteger(t.bigint):void 0!==t.int?this.setByInteger(t.int):"number"==typeof t?this.setByInteger(t):void 0!==t.hex&&this.setValueHex(t.hex))},tt.lang.extend(et.asn1.DERInteger,et.asn1.ASN1Object),et.asn1.DERBitString=function(t){if(void 0!==t&&void 0!==t.obj){var e=et.asn1.ASN1Util.newObject(t.obj);t.hex="00"+e.getEncodedHex()}et.asn1.DERBitString.superclass.constructor.call(this),this.hT="03",this.setHexValueIncludingUnusedBits=function(t){this.hTLV=null,this.isModified=!0,this.hV=t},this.setUnusedBitsAndHexValue=function(t,e){if(t<0||7<t)throw"unused bits shall be from 0 to 7: u = "+t;var i="0"+t;this.hTLV=null,this.isModified=!0,this.hV=i+e},this.setByBinaryString=function(t){var e=8-(t=t.replace(/0+$/,"")).length%8;8==e&&(e=0);for(var i=0;i<=e;i++)t+="0";var r="";for(i=0;i<t.length-1;i+=8){var n=t.substr(i,8),s=parseInt(n,2).toString(16);1==s.length&&(s="0"+s),r+=s}this.hTLV=null,this.isModified=!0,this.hV="0"+e+r},this.setByBooleanArray=function(t){for(var e="",i=0;i<t.length;i++)1==t[i]?e+="1":e+="0";this.setByBinaryString(e)},this.newFalseArray=function(t){for(var e=new Array(t),i=0;i<t;i++)e[i]=!1;return e},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t&&t.toLowerCase().match(/^[0-9a-f]+$/)?this.setHexValueIncludingUnusedBits(t):void 0!==t.hex?this.setHexValueIncludingUnusedBits(t.hex):void 0!==t.bin?this.setByBinaryString(t.bin):void 0!==t.array&&this.setByBooleanArray(t.array))},tt.lang.extend(et.asn1.DERBitString,et.asn1.ASN1Object),et.asn1.DEROctetString=function(t){if(void 0!==t&&void 0!==t.obj){var e=et.asn1.ASN1Util.newObject(t.obj);t.hex=e.getEncodedHex()}et.asn1.DEROctetString.superclass.constructor.call(this,t),this.hT="04"},tt.lang.extend(et.asn1.DEROctetString,et.asn1.DERAbstractString),et.asn1.DERNull=function(){et.asn1.DERNull.superclass.constructor.call(this),this.hT="05",this.hTLV="0500"},tt.lang.extend(et.asn1.DERNull,et.asn1.ASN1Object),et.asn1.DERObjectIdentifier=function(t){var h=function(t){var e=t.toString(16);return 1==e.length&&(e="0"+e),e},s=function(t){var e="",i=new O(t,10).toString(2),r=7-i.length%7;7==r&&(r=0);for(var n="",s=0;s<r;s++)n+="0";i=n+i;for(s=0;s<i.length-1;s+=7){var o=i.substr(s,7);s!=i.length-7&&(o="1"+o),e+=h(parseInt(o,2))}return e};et.asn1.DERObjectIdentifier.superclass.constructor.call(this),this.hT="06",this.setValueHex=function(t){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.setValueOidString=function(t){if(!t.match(/^[0-9.]+$/))throw"malformed oid string: "+t;var e="",i=t.split("."),r=40*parseInt(i[0])+parseInt(i[1]);e+=h(r),i.splice(0,2);for(var n=0;n<i.length;n++)e+=s(i[n]);this.hTLV=null,this.isModified=!0,this.s=null,this.hV=e},this.setValueName=function(t){var e=et.asn1.x509.OID.name2oid(t);if(""===e)throw"DERObjectIdentifier oidName undefined: "+t;this.setValueOidString(e)},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t?t.match(/^[0-2].[0-9.]+$/)?this.setValueOidString(t):this.setValueName(t):void 0!==t.oid?this.setValueOidString(t.oid):void 0!==t.hex?this.setValueHex(t.hex):void 0!==t.name&&this.setValueName(t.name))},tt.lang.extend(et.asn1.DERObjectIdentifier,et.asn1.ASN1Object),et.asn1.DEREnumerated=function(t){et.asn1.DEREnumerated.superclass.constructor.call(this),this.hT="0a",this.setByBigInteger=function(t){this.hTLV=null,this.isModified=!0,this.hV=et.asn1.ASN1Util.bigIntToMinTwosComplementsHex(t)},this.setByInteger=function(t){var e=new O(String(t),10);this.setByBigInteger(e)},this.setValueHex=function(t){this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.int?this.setByInteger(t.int):"number"==typeof t?this.setByInteger(t):void 0!==t.hex&&this.setValueHex(t.hex))},tt.lang.extend(et.asn1.DEREnumerated,et.asn1.ASN1Object),et.asn1.DERUTF8String=function(t){et.asn1.DERUTF8String.superclass.constructor.call(this,t),this.hT="0c"},tt.lang.extend(et.asn1.DERUTF8String,et.asn1.DERAbstractString),et.asn1.DERNumericString=function(t){et.asn1.DERNumericString.superclass.constructor.call(this,t),this.hT="12"},tt.lang.extend(et.asn1.DERNumericString,et.asn1.DERAbstractString),et.asn1.DERPrintableString=function(t){et.asn1.DERPrintableString.superclass.constructor.call(this,t),this.hT="13"},tt.lang.extend(et.asn1.DERPrintableString,et.asn1.DERAbstractString),et.asn1.DERTeletexString=function(t){et.asn1.DERTeletexString.superclass.constructor.call(this,t),this.hT="14"},tt.lang.extend(et.asn1.DERTeletexString,et.asn1.DERAbstractString),et.asn1.DERIA5String=function(t){et.asn1.DERIA5String.superclass.constructor.call(this,t),this.hT="16"},tt.lang.extend(et.asn1.DERIA5String,et.asn1.DERAbstractString),et.asn1.DERUTCTime=function(t){et.asn1.DERUTCTime.superclass.constructor.call(this,t),this.hT="17",this.setByDate=function(t){this.hTLV=null,this.isModified=!0,this.date=t,this.s=this.formatDate(this.date,"utc"),this.hV=stohex(this.s)},this.getFreshValueHex=function(){return void 0===this.date&&void 0===this.s&&(this.date=new Date,this.s=this.formatDate(this.date,"utc"),this.hV=stohex(this.s)),this.hV},void 0!==t&&(void 0!==t.str?this.setString(t.str):"string"==typeof t&&t.match(/^[0-9]{12}Z$/)?this.setString(t):void 0!==t.hex?this.setStringHex(t.hex):void 0!==t.date&&this.setByDate(t.date))},tt.lang.extend(et.asn1.DERUTCTime,et.asn1.DERAbstractTime),et.asn1.DERGeneralizedTime=function(t){et.asn1.DERGeneralizedTime.superclass.constructor.call(this,t),this.hT="18",this.withMillis=!1,this.setByDate=function(t){this.hTLV=null,this.isModified=!0,this.date=t,this.s=this.formatDate(this.date,"gen",this.withMillis),this.hV=stohex(this.s)},this.getFreshValueHex=function(){return void 0===this.date&&void 0===this.s&&(this.date=new Date,this.s=this.formatDate(this.date,"gen",this.withMillis),this.hV=stohex(this.s)),this.hV},void 0!==t&&(void 0!==t.str?this.setString(t.str):"string"==typeof t&&t.match(/^[0-9]{14}Z$/)?this.setString(t):void 0!==t.hex?this.setStringHex(t.hex):void 0!==t.date&&this.setByDate(t.date),!0===t.millis&&(this.withMillis=!0))},tt.lang.extend(et.asn1.DERGeneralizedTime,et.asn1.DERAbstractTime),et.asn1.DERSequence=function(t){et.asn1.DERSequence.superclass.constructor.call(this,t),this.hT="30",this.getFreshValueHex=function(){for(var t="",e=0;e<this.asn1Array.length;e++){t+=this.asn1Array[e].getEncodedHex()}return this.hV=t,this.hV}},tt.lang.extend(et.asn1.DERSequence,et.asn1.DERAbstractStructured),et.asn1.DERSet=function(t){et.asn1.DERSet.superclass.constructor.call(this,t),this.hT="31",this.sortFlag=!0,this.getFreshValueHex=function(){for(var t=new Array,e=0;e<this.asn1Array.length;e++){var i=this.asn1Array[e];t.push(i.getEncodedHex())}return 1==this.sortFlag&&t.sort(),this.hV=t.join(""),this.hV},void 0!==t&&void 0!==t.sortflag&&0==t.sortflag&&(this.sortFlag=!1)},tt.lang.extend(et.asn1.DERSet,et.asn1.DERAbstractStructured),et.asn1.DERTaggedObject=function(t){et.asn1.DERTaggedObject.superclass.constructor.call(this),this.hT="a0",this.hV="",this.isExplicit=!0,this.asn1Object=null,this.setASN1Object=function(t,e,i){this.hT=e,this.isExplicit=t,this.asn1Object=i,this.isExplicit?(this.hV=this.asn1Object.getEncodedHex(),this.hTLV=null,this.isModified=!0):(this.hV=null,this.hTLV=i.getEncodedHex(),this.hTLV=this.hTLV.replace(/^../,e),this.isModified=!1)},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.tag&&(this.hT=t.tag),void 0!==t.explicit&&(this.isExplicit=t.explicit),void 0!==t.obj&&(this.asn1Object=t.obj,this.setASN1Object(this.isExplicit,this.hT,this.asn1Object)))},tt.lang.extend(et.asn1.DERTaggedObject,et.asn1.ASN1Object);var it=function(i){function r(t){var e=i.call(this)||this;return t&&("string"==typeof t?e.parseKey(t):(r.hasPrivateKeyProperty(t)||r.hasPublicKeyProperty(t))&&e.parsePropertiesFrom(t)),e}return function(t,e){function i(){this.constructor=t}p(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(r,i),r.prototype.parseKey=function(t){try{var e=0,i=0,r=/^\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\s*)+$/.test(t)?d(t):v.unarmor(t),n=x.decode(r);if(3===n.sub.length&&(n=n.sub[2].sub[0]),9===n.sub.length){e=n.sub[1].getHexStringValue(),this.n=q(e,16),i=n.sub[2].getHexStringValue(),this.e=parseInt(i,16);var s=n.sub[3].getHexStringValue();this.d=q(s,16);var o=n.sub[4].getHexStringValue();this.p=q(o,16);var h=n.sub[5].getHexStringValue();this.q=q(h,16);var a=n.sub[6].getHexStringValue();this.dmp1=q(a,16);var u=n.sub[7].getHexStringValue();this.dmq1=q(u,16);var c=n.sub[8].getHexStringValue();this.coeff=q(c,16)}else{if(2!==n.sub.length)return!1;var f=n.sub[1].sub[0];e=f.sub[0].getHexStringValue(),this.n=q(e,16),i=f.sub[1].getHexStringValue(),this.e=parseInt(i,16)}return!0}catch(t){return!1}},r.prototype.getPrivateBaseKey=function(){var t={array:[new et.asn1.DERInteger({int:0}),new et.asn1.DERInteger({bigint:this.n}),new et.asn1.DERInteger({int:this.e}),new et.asn1.DERInteger({bigint:this.d}),new et.asn1.DERInteger({bigint:this.p}),new et.asn1.DERInteger({bigint:this.q}),new et.asn1.DERInteger({bigint:this.dmp1}),new et.asn1.DERInteger({bigint:this.dmq1}),new et.asn1.DERInteger({bigint:this.coeff})]};return new et.asn1.DERSequence(t).getEncodedHex()},r.prototype.getPrivateBaseKeyB64=function(){return c(this.getPrivateBaseKey())},r.prototype.getPublicBaseKey=function(){var t=new et.asn1.DERSequence({array:[new et.asn1.DERObjectIdentifier({oid:"1.2.840.113549.1.1.1"}),new et.asn1.DERNull]}),e=new et.asn1.DERSequence({array:[new et.asn1.DERInteger({bigint:this.n}),new et.asn1.DERInteger({int:this.e})]}),i=new et.asn1.DERBitString({hex:"00"+e.getEncodedHex()});return new et.asn1.DERSequence({array:[t,i]}).getEncodedHex()},r.prototype.getPublicBaseKeyB64=function(){return c(this.getPublicBaseKey())},r.wordwrap=function(t,e){if(!t)return t;var i="(.{1,"+(e=e||64)+"})( +|$\n?)|(.{1,"+e+"})";return t.match(RegExp(i,"g")).join("\n")},r.prototype.getPrivateKey=function(){var t="-----BEGIN RSA PRIVATE KEY-----\n";return t+=r.wordwrap(this.getPrivateBaseKeyB64())+"\n",t+="-----END RSA PRIVATE KEY-----"},r.prototype.getPublicKey=function(){var t="-----BEGIN PUBLIC KEY-----\n";return t+=r.wordwrap(this.getPublicBaseKeyB64())+"\n",t+="-----END PUBLIC KEY-----"},r.hasPublicKeyProperty=function(t){return(t=t||{}).hasOwnProperty("n")&&t.hasOwnProperty("e")},r.hasPrivateKeyProperty=function(t){return(t=t||{}).hasOwnProperty("n")&&t.hasOwnProperty("e")&&t.hasOwnProperty("d")&&t.hasOwnProperty("p")&&t.hasOwnProperty("q")&&t.hasOwnProperty("dmp1")&&t.hasOwnProperty("dmq1")&&t.hasOwnProperty("coeff")},r.prototype.parsePropertiesFrom=function(t){this.n=t.n,this.e=t.e,t.hasOwnProperty("d")&&(this.d=t.d,this.p=t.p,this.q=t.q,this.dmp1=t.dmp1,this.dmq1=t.dmq1,this.coeff=t.coeff)},r}(Q),rt=function(){function t(t){t=t||{},this.default_key_size=parseInt(t.default_key_size,10)||1024,this.default_public_exponent=t.default_public_exponent||"010001",this.log=t.log||!1,this.key=null}return t.prototype.setKey=function(t){this.log&&this.key&&console.warn("A key was already set, overriding existing."),this.key=new it(t)},t.prototype.setPrivateKey=function(t){this.setKey(t)},t.prototype.setPublicKey=function(t){this.setKey(t)},t.prototype.decrypt=function(t){try{return this.getKey().decrypt(f(t))}catch(t){return!1}},t.prototype.encrypt=function(t){try{return c(this.getKey().encrypt(t))}catch(t){return!1}},t.prototype.sign=function(t,e,i){try{return c(this.getKey().sign(t,e,i))}catch(t){return!1}},t.prototype.verify=function(t,e,i){try{return this.getKey().verify(t,f(e),i)}catch(t){return!1}},t.prototype.getKey=function(t){if(!this.key){if(this.key=new it,t&&"[object Function]"==={}.toString.call(t))return void this.key.generateAsync(this.default_key_size,this.default_public_exponent,t);this.key.generate(this.default_key_size,this.default_public_exponent)}return this.key},t.prototype.getPrivateKey=function(){return this.getKey().getPrivateKey()},t.prototype.getPrivateKeyB64=function(){return this.getKey().getPrivateBaseKeyB64()},t.prototype.getPublicKey=function(){return this.getKey().getPublicKey()},t.prototype.getPublicKeyB64=function(){return this.getKey().getPublicBaseKeyB64()},t.version="3.0.0-rc.1",t}();
  2 +//#endregion BIT_OPERATIONS
  3 +
  4 +var b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  5 +var b64pad = "=";
  6 +function hex2b64(h) {
  7 + var i;
  8 + var c;
  9 + var ret = "";
  10 + for (i = 0; i + 3 <= h.length; i += 3) {
  11 + c = parseInt(h.substring(i, i + 3), 16);
  12 + ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);
  13 + }
  14 + if (i + 1 == h.length) {
  15 + c = parseInt(h.substring(i, i + 1), 16);
  16 + ret += b64map.charAt(c << 2);
  17 + }
  18 + else if (i + 2 == h.length) {
  19 + c = parseInt(h.substring(i, i + 2), 16);
  20 + ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);
  21 + }
  22 + while ((ret.length & 3) > 0) {
  23 + ret += b64pad;
  24 + }
  25 + return ret;
  26 +}
  27 +rt.prototype.encryptLong = function(string) {
  28 + var k = this.getKey();
  29 + try {
  30 + var lt = "";
  31 + var ct = "";
  32 + //RSA每次加密117bytes,需要辅助方法判断字符串截取位置
  33 + //1.获取字符串截取点
  34 + var bytes = new Array();
  35 + bytes.push(0);
  36 + var byteNo = 0;
  37 + var len,c;
  38 + len = string.length;
  39 + var temp = 0;
  40 + for(var i = 0; i < len; i++){
  41 + c = string.charCodeAt(i);
  42 + if(c >= 0x010000 && c <= 0x10FFFF){
  43 + byteNo += 4;
  44 + }else if(c >= 0x000800 && c <= 0x00FFFF){
  45 + byteNo += 3;
  46 + }else if(c >= 0x000080 && c <= 0x0007FF){
  47 + byteNo += 2;
  48 + }else{
  49 + byteNo += 1;
  50 + }
  51 + if((byteNo % 117) >= 114 || (byteNo % 117) == 0){
  52 + if(byteNo-temp >= 114){
  53 + bytes.push(i);
  54 + temp = byteNo;
  55 + }
  56 + }
  57 + }
  58 + //2.截取字符串并分段加密
  59 + if(bytes.length > 1){
  60 + for(var i=0;i< bytes.length-1; i++){
  61 + var str;
  62 + if(i == 0){
  63 + str = string.substring(0,bytes[i+1]+1);
  64 + }else{
  65 + str = string.substring(bytes[i]+1,bytes[i+1]+1);
  66 + }
  67 + var t1 = k.encrypt(str);
  68 + ct += t1;
  69 + };
  70 + if(bytes[bytes.length-1] != string.length-1){
  71 + var lastStr = string.substring(bytes[bytes.length-1]+1);
  72 + ct += k.encrypt(lastStr);
  73 + }
  74 + return hex2b64(ct);
  75 + }
  76 + var t = k.encrypt(string);
  77 + var y = hex2b64(t);
  78 + return y;
  79 + } catch (ex) {
  80 + console.log('encryptLong.ex',ex)
  81 + return false;
  82 + }
  83 +};
  84 +module.exports = new rt;
@@ -7,8 +7,8 @@ let tpls=[ @@ -7,8 +7,8 @@ let tpls=[
7 hasImage:false, 7 hasImage:false,
8 timeStr:'YYYY/MM/DD 星期WW HH:II', 8 timeStr:'YYYY/MM/DD 星期WW HH:II',
9 timeStrSmart:['YYYY/MM/DD 星期WW','HH:II'], 9 timeStrSmart:['YYYY/MM/DD 星期WW','HH:II'],
10 - shareFirstImage:'http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148572.jpg',  
11 - shareImage:'http://qn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148573.jpg', 10 + shareFirstImage:'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148572.jpg',
  11 + shareImage:'http://nosqn.colorcun.com/reserve/images/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_201911151148573.jpg',
12 shareFirstTitle:'用餐已为您安排,点击查看详情', 12 shareFirstTitle:'用餐已为您安排,点击查看详情',
13 shareTitle:'您收到一个用餐邀请,点击快速导航', 13 shareTitle:'您收到一个用餐邀请,点击快速导航',
14 }, 14 },
@@ -19,8 +19,8 @@ let tpls=[ @@ -19,8 +19,8 @@ let tpls=[
19 hasImage:true, 19 hasImage:true,
20 timeStr:'YYYY年MM月DD日HH时II分', 20 timeStr:'YYYY年MM月DD日HH时II分',
21 timeStrSmart:['YYYY年MM月DD日','HH时II分'], 21 timeStrSmart:['YYYY年MM月DD日','HH时II分'],
22 - shareFirstImage:'http://qn.colorcun.com/manager-invitation/wx3/wx1.jpg',  
23 - shareImage:'http://qn.colorcun.com/manager-invitation/wx3/wx2.jpg', 22 + shareFirstImage:'http://nosqn.colorcun.com/manager-invitation/wx3/wx1.jpg',
  23 + shareImage:'http://nosqn.colorcun.com/manager-invitation/wx3/wx2.jpg',
24 shareFirstTitle:'用餐已为您安排,点击查看详情', 24 shareFirstTitle:'用餐已为您安排,点击查看详情',
25 shareTitle:'您收到一个用餐邀请,点击快速导航', 25 shareTitle:'您收到一个用餐邀请,点击快速导航',
26 }, 26 },
@@ -61,6 +61,14 @@ module.exports = { @@ -61,6 +61,14 @@ module.exports = {
61 enspace={morning: 1, noon: 2, night: 3}[enspace] 61 enspace={morning: 1, noon: 2, night: 3}[enspace]
62 return names[enspace]||names[4] 62 return names[enspace]||names[4]
63 }, 63 },
  64 + reserveTidName:function(enspace){
  65 + var names=['','散座','包间','卡座'];
  66 + return names[(enspace*1)]||''
  67 + },
  68 + reserveSexName:function(enspace){
  69 + var names=['','先生','女士',''];
  70 + return names[(enspace*1)]||''
  71 + },
64 getRoomName:function(rooms=[]){ 72 getRoomName:function(rooms=[]){
65 if(rooms.length<1) return "" 73 if(rooms.length<1) return ""
66 var name=rooms[0].name 74 var name=rooms[0].name
@@ -88,4 +96,7 @@ module.exports = { @@ -88,4 +96,7 @@ module.exports = {
88 } 96 }
89 return ''; 97 return '';
90 }, 98 },
  99 + toFixed:function(num,limit){
  100 + return parseFloat(num).toFixed(limit)
  101 + },
91 }; 102 };