Showing
5 changed files
with
2668 additions
and
1 deletions
| @@ -153,7 +153,10 @@ | @@ -153,7 +153,10 @@ | ||
| 153 | "pages/detail_owner_invitation6", | 153 | "pages/detail_owner_invitation6", |
| 154 | "pages/detail_owner_invitation7", | 154 | "pages/detail_owner_invitation7", |
| 155 | "pages/detail_owner_invitation8", | 155 | "pages/detail_owner_invitation8", |
| 156 | - "pages/detail_owner_invitation9" | 156 | + "pages/detail_owner_invitation9", |
| 157 | + "pages/detail_owner_invitation10", | ||
| 158 | + "pages/detail_owner_invitation11", | ||
| 159 | + "pages/detail_owner_invitation12" | ||
| 157 | ] | 160 | ] |
| 158 | } | 161 | } |
| 159 | ], | 162 | ], |
| 1 | +// pack-invitation/pages/detail_owner_invitation12.js | ||
| 2 | +var mta = require('mta-wechat-analysis') | ||
| 3 | +import util from '../../utils/util'; | ||
| 4 | +import App from '../../utils/api'; | ||
| 5 | +import TP from '../../utils/tpls'; | ||
| 6 | +import RS from '../../utils/reserveStatus' | ||
| 7 | +var plugin = requirePlugin("WechatSI"); | ||
| 8 | +import canvas from "../../pages/customer/canvas" | ||
| 9 | +Page({ | ||
| 10 | + /** | ||
| 11 | + * 页面的初始数据 | ||
| 12 | + */ | ||
| 13 | + data: { | ||
| 14 | + show_white: false, | ||
| 15 | + options: { | ||
| 16 | + tplid: '' | ||
| 17 | + }, | ||
| 18 | + tableNum: 0, | ||
| 19 | + detail: {}, | ||
| 20 | + staffinfo: {}, | ||
| 21 | + chef: {}, | ||
| 22 | + marketing: {}, | ||
| 23 | + home: {}, | ||
| 24 | + reserve: {}, | ||
| 25 | + signboard: {}, | ||
| 26 | + store: {}, | ||
| 27 | + recharge_data: {}, | ||
| 28 | + coupon_dataList: [], | ||
| 29 | + seller: {}, | ||
| 30 | + priceInfo: '', | ||
| 31 | + scoreInfo: '', | ||
| 32 | + certificate: '', | ||
| 33 | + dataStr: Date.now() * 1 / 1000, | ||
| 34 | + swich_phone: '0', //是否显示前台电话 | ||
| 35 | + is_comments: '0', | ||
| 36 | + is_user_comments: false, //是否评价过 true有评价 false没评价 | ||
| 37 | + tableinfo: [], //桌子列表 | ||
| 38 | + StyleType: '', //邀请函模板 | ||
| 39 | + showMoreTip: true, //显示滑动查看更多 | ||
| 40 | + hasValueOrder: false, //商家是否开通提前点餐功能 | ||
| 41 | + hasValueCertificate: false, //商家是否开通优惠券功能 | ||
| 42 | + hasValueRecharge: false, //商家是否开通充值功能 | ||
| 43 | + hasValueBroadcast: false, //商家是否能播报,只有极速版不能播报 | ||
| 44 | + _attentionAnim: {}, | ||
| 45 | + isPlay: '1', //语音播报 1运行 2暂停 | ||
| 46 | + paymentStatus: '', //定金支付状态 1支付 0未支付 | ||
| 47 | + reserveData: {}, //自定义图文数据 | ||
| 48 | + toastBool: false, //支付定金提示框 | ||
| 49 | + toastText: '', //支付定金提示文字 | ||
| 50 | + paymentId: '', //定金id | ||
| 51 | + wxml: null, | ||
| 52 | + imgSrc: '', //canvas图片地址 | ||
| 53 | + colors: '', //导航栏颜色 | ||
| 54 | + couponData: '', //评价赠送优惠券数据 | ||
| 55 | + timeList: [], //餐段时间 | ||
| 56 | + temp_ddate: '', //展示的到店时间 | ||
| 57 | + lite_style: '', //小程序转发卡片样式 | ||
| 58 | + isMoreBtn: '', //再次预订按钮 | ||
| 59 | + isPaymenBtn: '', //支付定金按钮 | ||
| 60 | + isShareItem: '', //转发客人按钮 | ||
| 61 | + isVoice: '', //播报按钮 | ||
| 62 | + openOrder: '', //点餐 | ||
| 63 | + isComments: '', //券和充值 | ||
| 64 | + bookType: '', //用餐类型 1婚宴模板1 2商务宴模板1 | ||
| 65 | + urlsArr: [], //包间预览图片、餐厅logo、餐厅首图列表 | ||
| 66 | + roomimage: [], //包间信息列表 | ||
| 67 | + activeTitle: '1', //选择的标题 1优惠券 2充值 3评价 | ||
| 68 | + titleList: [], //优惠券、充值、评价标题数组 | ||
| 69 | + modalType: '', //弹框 | ||
| 70 | + modalTitle: '', //弹框标题 | ||
| 71 | + }, | ||
| 72 | + tablestr: '', //桌位id拼接 | ||
| 73 | + screenHeight: '', | ||
| 74 | + attentionAnim: {}, | ||
| 75 | + audioCtx: '', //播报 | ||
| 76 | + timers: null, // 动画定时器 | ||
| 77 | + n: 0, | ||
| 78 | + modal: '', | ||
| 79 | + publicModal: '', | ||
| 80 | + /** | ||
| 81 | + * 生命周期函数--监听页面加载 | ||
| 82 | + */ | ||
| 83 | + onLoad(options) { | ||
| 84 | + this.id = options.id | ||
| 85 | + let param = { | ||
| 86 | + options: options, | ||
| 87 | + hasOwner: options.hasSellerShare == 1, //是否为发起人 | ||
| 88 | + } | ||
| 89 | + param.tpls = [TP.tpls(options.tplid)] | ||
| 90 | + let bookType = options.bookType; | ||
| 91 | + console.log('param', param); | ||
| 92 | + console.log('options', options); | ||
| 93 | + this.setData({ | ||
| 94 | + ...param, | ||
| 95 | + bookType | ||
| 96 | + }) | ||
| 97 | + mta.Page.init({ | ||
| 98 | + "appID": "500667280", | ||
| 99 | + "eventID": "500667287", | ||
| 100 | + "statPullDownFresh": true, | ||
| 101 | + "statShareApp": true, | ||
| 102 | + "statReachBottom": true, | ||
| 103 | + "lauchOpts": options, //渠道分析 | ||
| 104 | + }); | ||
| 105 | + const systemInfo = wx.getSystemInfoSync(); | ||
| 106 | + this.screenHeight = systemInfo.windowHeight; // 获取屏幕高度 | ||
| 107 | + this.modal = this.selectComponent("#payModal"); //通过给组件所起的id调用组件 | ||
| 108 | + this.publicModal = this.selectComponent("#publicModal"); //通过给组件所起的id调用组件 | ||
| 109 | + wx.onUserCaptureScreen((res) => { | ||
| 110 | + this.modal.showModal() | ||
| 111 | + }) | ||
| 112 | + }, | ||
| 113 | + //预览图片 | ||
| 114 | + previewImage(e) { | ||
| 115 | + const item = e.target.dataset; | ||
| 116 | + wx.previewImage({ | ||
| 117 | + current: item.url, | ||
| 118 | + urls: item.imgs, | ||
| 119 | + }) | ||
| 120 | + }, | ||
| 121 | + // 打开截屏弹框 | ||
| 122 | + showModal() { | ||
| 123 | + this.modal.showModal() | ||
| 124 | + }, | ||
| 125 | + // 关闭截屏弹框 | ||
| 126 | + closeModal() { | ||
| 127 | + this.modal.closeModal() | ||
| 128 | + }, | ||
| 129 | + // 公共弹框 | ||
| 130 | + publicShowModal(e) { | ||
| 131 | + const modalType = e.currentTarget.dataset['type']; | ||
| 132 | + const modalTitle = e.currentTarget.dataset['title']; | ||
| 133 | + this.setData({ | ||
| 134 | + modalType, | ||
| 135 | + modalTitle, | ||
| 136 | + }) | ||
| 137 | + this.publicModal.showModal() | ||
| 138 | + }, | ||
| 139 | + // 关闭截屏弹框 | ||
| 140 | + closepublicModal() { | ||
| 141 | + this.publicModal.closeModal() | ||
| 142 | + }, | ||
| 143 | + // 页面滚动事件 | ||
| 144 | + onPageScroll: function (event) { | ||
| 145 | + if (event.scrollTop > 150) { //当页面滚动到某个位置时(这里设置为50),将导航栏背景颜色设置为白色 | ||
| 146 | + this.setData({ | ||
| 147 | + show_white: true | ||
| 148 | + }) | ||
| 149 | + } else { | ||
| 150 | + this.setData({ | ||
| 151 | + show_white: false | ||
| 152 | + }) | ||
| 153 | + } | ||
| 154 | + const scrollTop = event.scrollTop * 1 + this.screenHeight - 80; // 获取滚动的距离 | ||
| 155 | + if (scrollTop < this.screenHeight) { | ||
| 156 | + this.setData({ | ||
| 157 | + showMoreTip: true | ||
| 158 | + }); | ||
| 159 | + } else { | ||
| 160 | + this.setData({ | ||
| 161 | + showMoreTip: false | ||
| 162 | + }); | ||
| 163 | + } | ||
| 164 | + }, | ||
| 165 | + // 点击了解更多会员优惠政策 | ||
| 166 | + gotoFavourableList() { | ||
| 167 | + let url = util.http_build_query({ | ||
| 168 | + sellerName: this.data.seller.name, | ||
| 169 | + sellerid: this.data.seller.sid, | ||
| 170 | + oid: this.data.detail.id, | ||
| 171 | + types: '1' | ||
| 172 | + }, '/pack-cookbook/pages/favourableList') | ||
| 173 | + wx.navigateTo({ | ||
| 174 | + url | ||
| 175 | + }) | ||
| 176 | + }, | ||
| 177 | + // 去评价 | ||
| 178 | + evaluateFun() { | ||
| 179 | + let url = util.http_build_query({ | ||
| 180 | + sellerName: this.data.seller.name, | ||
| 181 | + sellerid: this.data.seller.sid, | ||
| 182 | + oid: this.data.detail.id, | ||
| 183 | + types: '1', | ||
| 184 | + previousPage: '1', | ||
| 185 | + }, '/pages/pinglun/createOpinion') | ||
| 186 | + wx.navigateTo({ | ||
| 187 | + url | ||
| 188 | + }) | ||
| 189 | + }, | ||
| 190 | + /** | ||
| 191 | + * 用户点击右上角分享 | ||
| 192 | + */ | ||
| 193 | + onShareAppMessage: function () { | ||
| 194 | + return this.sharesetting(); | ||
| 195 | + }, | ||
| 196 | + /** | ||
| 197 | + * 监听用户点击分享到朋友圈按钮的操作 | ||
| 198 | + */ | ||
| 199 | + onShareTimeline() { | ||
| 200 | + return this.sharesetting(); | ||
| 201 | + }, | ||
| 202 | + /** | ||
| 203 | + * 生命周期函数--监听页面显示 | ||
| 204 | + */ | ||
| 205 | + onShow: function () { | ||
| 206 | + this.setData({ | ||
| 207 | + titleList: [] | ||
| 208 | + }) | ||
| 209 | + this.getDetail() | ||
| 210 | + this.getText() | ||
| 211 | + this.getPaymentStatus() | ||
| 212 | + }, | ||
| 213 | + // 复制微信号 | ||
| 214 | + copyWeChat() { | ||
| 215 | + if (this.data.staffinfo.wechat) { | ||
| 216 | + wx.setClipboardData({ | ||
| 217 | + data: this.data.staffinfo.wechat, | ||
| 218 | + success(res) { | ||
| 219 | + wx.getClipboardData({ | ||
| 220 | + success(res) { | ||
| 221 | + console.log(res.data) | ||
| 222 | + } | ||
| 223 | + }) | ||
| 224 | + } | ||
| 225 | + }) | ||
| 226 | + } else { | ||
| 227 | + console.log('无微信号') | ||
| 228 | + } | ||
| 229 | + }, | ||
| 230 | + // 拨打电话 | ||
| 231 | + call(e) { | ||
| 232 | + const phone = e.currentTarget.dataset['phone']; | ||
| 233 | + wx.reportMonitor('1012', 1) | ||
| 234 | + wx.makePhoneCall({ | ||
| 235 | + phoneNumber: phone | ||
| 236 | + }) | ||
| 237 | + }, | ||
| 238 | + // 跳转到商家入驻页 | ||
| 239 | + gotoJoinSeller() { | ||
| 240 | + wx.navigateTo({ | ||
| 241 | + url: util.http_build_query({ | ||
| 242 | + laiyuan: '邀请函' | ||
| 243 | + }, '/pages/customer/joinSeller') | ||
| 244 | + }) | ||
| 245 | + }, | ||
| 246 | + // 导航 | ||
| 247 | + looklocation: function () { | ||
| 248 | + wx.reportMonitor('1015', 1) | ||
| 249 | + wx.openLocation({ | ||
| 250 | + latitude: Number(this.data.seller.lat), | ||
| 251 | + longitude: Number(this.data.seller.long), | ||
| 252 | + scale: 17, | ||
| 253 | + address: this.data.seller.addr, | ||
| 254 | + success: function (res) { | ||
| 255 | + console.log(res) | ||
| 256 | + } | ||
| 257 | + }) | ||
| 258 | + }, | ||
| 259 | + // 获取包间图片列表 | ||
| 260 | + getroomimage(sellerid, uid) { | ||
| 261 | + App.Tables.GetTablesPhoto({ | ||
| 262 | + sellerid, | ||
| 263 | + tableids: this.tablestr | ||
| 264 | + }).then((json) => { | ||
| 265 | + if (json.ret == 200) { | ||
| 266 | + this.setData({ | ||
| 267 | + roomimage: json.data | ||
| 268 | + }) | ||
| 269 | + var urlsArr = []; | ||
| 270 | + json.data.forEach((v, i) => { | ||
| 271 | + urlsArr.push(v.url); | ||
| 272 | + }) | ||
| 273 | + this.setData({ | ||
| 274 | + urlsArr | ||
| 275 | + }) | ||
| 276 | + this.getstaffinfo(uid, sellerid); | ||
| 277 | + console.log('包间图片地址urlsArr', urlsArr) | ||
| 278 | + console.log('包间信息roomimage', json.data) | ||
| 279 | + } | ||
| 280 | + }) | ||
| 281 | + }, | ||
| 282 | + // 预览图片 | ||
| 283 | + lookImgs(e) { | ||
| 284 | + const url = e.currentTarget.dataset['url']; | ||
| 285 | + const imgs = e.currentTarget.dataset['imgs']; | ||
| 286 | + let urls = imgs ? imgs : [url] | ||
| 287 | + wx.previewImage({ | ||
| 288 | + current: url, | ||
| 289 | + urls, | ||
| 290 | + }) | ||
| 291 | + }, | ||
| 292 | + // 获取店铺详情 | ||
| 293 | + getDetail() { | ||
| 294 | + App.Reserve.Detail({ | ||
| 295 | + openid: getApp().openid, | ||
| 296 | + rid: this.data.options.id | ||
| 297 | + }).then(res => { | ||
| 298 | + let tablesText = '', //桌子信息 | ||
| 299 | + deskStr = '', | ||
| 300 | + tableNum = 0; | ||
| 301 | + let tableinfo = util.determine(res.data.tableinfo); | ||
| 302 | + console.log('tableinfo', tableinfo); | ||
| 303 | + res.data.tables.forEach((t, i) => { | ||
| 304 | + tableNum += t.table_pnum * 1 | ||
| 305 | + tablesText += t.rname + t.name + (i == (res.data.tables.length - 1) ? '' : '、'); | ||
| 306 | + deskStr += t.name + (i == (res.data.tables.length - 1) ? '' : '、'); | ||
| 307 | + }) | ||
| 308 | + let tabaleids = []; | ||
| 309 | + res.data.tables.forEach(t => { | ||
| 310 | + tabaleids.push(t.id); | ||
| 311 | + }) | ||
| 312 | + this.tablestr = tabaleids.toString(); | ||
| 313 | + let reserev = RS.reserve(res.data) | ||
| 314 | + let dateSmart = util.unixtoTime(reserev.ddate, 'YYYY-MM-DD 星期WW'); | ||
| 315 | + let yearMonthDay = util.unixtoTime(reserev.ddate, 'YYYY年MM月DD日') | ||
| 316 | + let yearMonth = util.unixtoTime(reserev.ddate, 'MM月DD日') | ||
| 317 | + let dateStr = util.unixtoTime(reserev.ddate, 'HH点') | ||
| 318 | + let dateStrDivide = util.unixtoTime(reserev.ddate, 'II分') | ||
| 319 | + console.log('dateSmart', dateSmart); | ||
| 320 | + let detail = this.formatDatail(reserev, dateSmart) | ||
| 321 | + this.setData({ | ||
| 322 | + detail, | ||
| 323 | + tableNum, | ||
| 324 | + tableinfo, | ||
| 325 | + is_user_comments: res.data.is_user_comments, | ||
| 326 | + temp_ddate: this.data.temp_ddate ? this.data.temp_ddate : reserev.temp_ddate ? util.unixtoTime(reserev.temp_ddate, 'HH:II') : util.unixtoTime(reserev.ddate, 'HH:II'), | ||
| 327 | + openOrder: (detail && detail.status != '4' && this.data.options.isOrder != '1' && detail.seller && detail.seller.is_open_order == 1) ? '1' : '0', | ||
| 328 | + seller: { | ||
| 329 | + daily: reserev.seller.daily, | ||
| 330 | + name: reserev.seller.sellername, | ||
| 331 | + sid: reserev.sid, | ||
| 332 | + date: dateSmart, | ||
| 333 | + tablesText, | ||
| 334 | + addr: reserev.seller.real_address || reserev.seller.map_address, | ||
| 335 | + image: reserev.image_url, | ||
| 336 | + hasOwner: true, | ||
| 337 | + type: reserev.type, | ||
| 338 | + is_set_ddate: reserev.is_set_ddate, | ||
| 339 | + hasUpTime: reserev.type == 1 && reserev.hasRunning && reserev.status != 2, | ||
| 340 | + tel: reserev.seller.seller_tel.split(','), | ||
| 341 | + soltName: reserev.soltName, | ||
| 342 | + dateTime: util.unixtoTime(reserev.ddate, 'HH:II'), | ||
| 343 | + time: util.unixtoTime(reserev.ddate, '星期WW HH:II'), | ||
| 344 | + lat: reserev.seller.lat, | ||
| 345 | + long: reserev.seller.long, | ||
| 346 | + yearMonthDay, | ||
| 347 | + yearMonth, | ||
| 348 | + dateStr, | ||
| 349 | + deskStr, | ||
| 350 | + dateStrDivide: dateStrDivide == '00分' ? '' : dateStrDivide, | ||
| 351 | + seller_tel: reserev.seller.seller_tel, | ||
| 352 | + phone: reserev.phone, | ||
| 353 | + } | ||
| 354 | + }) | ||
| 355 | + console.log('reserev信息', reserev); | ||
| 356 | + console.log('seller信息', this.data.seller); | ||
| 357 | + console.log('detail信息', this.data.detail); | ||
| 358 | + setTimeout(() => { | ||
| 359 | + this.getroomimage(reserev.sid, res.data.uid) | ||
| 360 | + this.getSellerVersionFun(reserev.sid); | ||
| 361 | + }, 0); | ||
| 362 | + }).catch(res => { | ||
| 363 | + console.log(res, '详情请求失败'); | ||
| 364 | + }) | ||
| 365 | + }, | ||
| 366 | + // 获取商家版本,不是超能版或者没有开通对应模块,不显示 | ||
| 367 | + getSellerVersionFun(sellerid) { | ||
| 368 | + App.SellerVersion.GetSellerVersion({ | ||
| 369 | + sellerid | ||
| 370 | + }).then((res) => { | ||
| 371 | + let data = res.data; | ||
| 372 | + console.log('版本列表', data); | ||
| 373 | + if (data && data.length > 0) { | ||
| 374 | + data.sort((a, b) => b.cdate * 1 - a.cdate * 1); | ||
| 375 | + // 获取店铺当前版本 (cdate最大最后一个充入的 && 当前时间有效 && 当前版本) | ||
| 376 | + let obj = data.find(item => item.vtype == 1 || item.vtype == 2 || item.vtype == 4); | ||
| 377 | + console.log('当前版本', { | ||
| 378 | + ...obj | ||
| 379 | + }); | ||
| 380 | + // 提前点餐功能:超能版 || 有提前点餐模块 | ||
| 381 | + const hasValueOrder = obj.vtype == '1' || data.some(item => item.vid == '6'); | ||
| 382 | + // 优惠券功能:超能版 || 高级版 || 有优惠券模块 | ||
| 383 | + const hasValueCertificate = obj.vtype == '1' || obj.vtype == '4' || data.some(item => item.vid == '8'); | ||
| 384 | + // 充值功能:超能版 || 有充值模块 | ||
| 385 | + const hasValueRecharge = obj.vtype == '1' || data.some(item => item.vid == '9'); | ||
| 386 | + // 播报功能:超能版 || 标准版 || 标准版首年 || 高级版 | ||
| 387 | + const hasValueBroadcast = obj.vtype == '1' || obj.vid == '4' || obj.vid == '13' || obj.vtype == '4'; | ||
| 388 | + this.setData({ | ||
| 389 | + hasValueOrder, | ||
| 390 | + hasValueCertificate, | ||
| 391 | + hasValueRecharge, | ||
| 392 | + hasValueBroadcast, | ||
| 393 | + }) | ||
| 394 | + } | ||
| 395 | + }) | ||
| 396 | + }, | ||
| 397 | + // 通过预订ID查收定金详情 | ||
| 398 | + getPaymentStatus() { | ||
| 399 | + App.Reserve.GetReserveDepositByRid({ | ||
| 400 | + rid: this.data.options.id | ||
| 401 | + }).then(res => { | ||
| 402 | + if (res.ret == 200 && res.data && res.data.length > 0) { | ||
| 403 | + let data = res.data[0]; | ||
| 404 | + let paymentStatus = data.trade_state == 'SUCCESS' ? '1' : '0'; | ||
| 405 | + let options = this.data.options | ||
| 406 | + this.setData({ | ||
| 407 | + paymentId: data.id, | ||
| 408 | + paymentStatus, | ||
| 409 | + isPaymenBtn: options.isOrder != '1' && data.id && paymentStatus == '0' && options.hasSellerShare == '1' && options.isDeposit == '1', | ||
| 410 | + }) | ||
| 411 | + } | ||
| 412 | + }) | ||
| 413 | + }, | ||
| 414 | + // 获取自定义图文内容 | ||
| 415 | + getText() { | ||
| 416 | + App.Reserve.GetReserveImgText({ | ||
| 417 | + rid: this.data.options.id | ||
| 418 | + }).then(res => { | ||
| 419 | + if (res.ret == 200 && res.data) { | ||
| 420 | + let data = res.data; | ||
| 421 | + let content = util.determine(data.content) | ||
| 422 | + console.log('自定义图文内容content', content); | ||
| 423 | + this.setData({ | ||
| 424 | + reserveData: { | ||
| 425 | + title: data.title || '', | ||
| 426 | + content, | ||
| 427 | + } | ||
| 428 | + }) | ||
| 429 | + } | ||
| 430 | + }) | ||
| 431 | + }, | ||
| 432 | + // 点击支付定金 | ||
| 433 | + paymentFun() { | ||
| 434 | + let that = this; | ||
| 435 | + App.PayOnline.CombineTransactionsByDeposit({ | ||
| 436 | + id: this.data.paymentId, | ||
| 437 | + openid: getApp().openid, | ||
| 438 | + }).then(res => { | ||
| 439 | + if (res.ret == 200) { | ||
| 440 | + wx.requestPayment({ | ||
| 441 | + timeStamp: res.data.timeStamp + '', | ||
| 442 | + nonceStr: res.data.nonceStr, | ||
| 443 | + package: res.data.package, | ||
| 444 | + signType: res.data.signType, | ||
| 445 | + paySign: res.data.paySign, | ||
| 446 | + success(ress) { | ||
| 447 | + console.log('微信支付结果', ress); | ||
| 448 | + if (ress.errMsg == 'requestPayment:ok') { | ||
| 449 | + console.log('支付成功', ress); | ||
| 450 | + that.setData({ | ||
| 451 | + paymentStatus: '1', | ||
| 452 | + toastBool: true, | ||
| 453 | + toastText: '支付成功' | ||
| 454 | + }) | ||
| 455 | + that.hideToast(); | ||
| 456 | + return | ||
| 457 | + } | ||
| 458 | + console.log('支付失败1', ress); | ||
| 459 | + that.setData({ | ||
| 460 | + toastBool: true, | ||
| 461 | + toastText: '支付失败,请重新支付' | ||
| 462 | + }) | ||
| 463 | + that.hideToast(); | ||
| 464 | + }, | ||
| 465 | + fail(ress) { | ||
| 466 | + console.log('支付失败2', ress); | ||
| 467 | + that.setData({ | ||
| 468 | + toastBool: true, | ||
| 469 | + toastText: '支付失败,请重新支付' | ||
| 470 | + }) | ||
| 471 | + that.hideToast(); | ||
| 472 | + }, | ||
| 473 | + }) | ||
| 474 | + } else { | ||
| 475 | + wx.showToast({ | ||
| 476 | + title: res.msg, | ||
| 477 | + icon: 'none', | ||
| 478 | + }) | ||
| 479 | + } | ||
| 480 | + }) | ||
| 481 | + }, | ||
| 482 | + // 关闭支付失败或者成功弹框 | ||
| 483 | + hideToast() { | ||
| 484 | + setTimeout(() => { | ||
| 485 | + this.setData({ | ||
| 486 | + toastBool: false | ||
| 487 | + }) | ||
| 488 | + }, 1500) | ||
| 489 | + }, | ||
| 490 | + // 客户经理获取基本信息 | ||
| 491 | + getstaffinfo(uid, sid) { | ||
| 492 | + App.Activity.GetCustomerActivityBaseinfo({ | ||
| 493 | + sellerid: this.data.detail.seller.id, | ||
| 494 | + uid | ||
| 495 | + }).then((json) => { | ||
| 496 | + if (json.ret == 200) { | ||
| 497 | + console.log('经理信息staffinfo', json.data) | ||
| 498 | + this.setData({ | ||
| 499 | + staffinfo: json.data | ||
| 500 | + }) | ||
| 501 | + this.getSellerTemplateConfFun(sid); | ||
| 502 | + } | ||
| 503 | + }) | ||
| 504 | + }, | ||
| 505 | + // 提前点餐 | ||
| 506 | + cookbook() { | ||
| 507 | + if (this.data.detail.order && this.data.detail.order.cookbooklist.length > 0) { | ||
| 508 | + let data = { | ||
| 509 | + rid: this.id, | ||
| 510 | + oid: this.data.detail.order.id, | ||
| 511 | + sellerName: this.data.seller.name, | ||
| 512 | + sid: this.data.seller.sid, | ||
| 513 | + identity: '1', | ||
| 514 | + hasSuccess: '1', | ||
| 515 | + } | ||
| 516 | + this.closepublicModal() | ||
| 517 | + wx.navigateTo({ | ||
| 518 | + url: `/pack-cookbook/pages/success_new?hasSuccess=${data.hasSuccess}&identity=${data.identity}&oid=${data.oid}&rid=${data.rid}&sellerName=${data.sellerName}&sid=${data.sid}`, | ||
| 519 | + }) | ||
| 520 | + } else { | ||
| 521 | + App.Advance.CreateOrder({ | ||
| 522 | + rid: this.id, | ||
| 523 | + openid: getApp().openid, | ||
| 524 | + }).then(res => { | ||
| 525 | + if (res.ret != 200) { | ||
| 526 | + return util.toast(res.msg, 'none') | ||
| 527 | + } | ||
| 528 | + wx.navigateTo({ | ||
| 529 | + url: util.http_build_query({ | ||
| 530 | + rid: this.id, | ||
| 531 | + oid: res.data.id, | ||
| 532 | + sid: res.data.sellerid, | ||
| 533 | + sellerName: this.data.seller.name, | ||
| 534 | + identity: '1', | ||
| 535 | + }, '/pack-cookbook/pages/index_new') | ||
| 536 | + }); | ||
| 537 | + }) | ||
| 538 | + } | ||
| 539 | + }, | ||
| 540 | + // 生成海报 | ||
| 541 | + painterBtn(img, sellerName, date, time) { | ||
| 542 | + img = img.replace(/^http:/, "https:"); | ||
| 543 | + this.setData({ | ||
| 544 | + wxml: canvas({ | ||
| 545 | + imgUrl: img || 'https://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png', | ||
| 546 | + sellerName, | ||
| 547 | + date, | ||
| 548 | + time, | ||
| 549 | + }) | ||
| 550 | + }) | ||
| 551 | + }, | ||
| 552 | + onImgOK(e) { | ||
| 553 | + this.setData({ | ||
| 554 | + imgSrc: e.detail.path | ||
| 555 | + }) | ||
| 556 | + console.log('海报生成成功', this.data.imgSrc); | ||
| 557 | + }, | ||
| 558 | + // 分享 | ||
| 559 | + sharesetting() { | ||
| 560 | + wx.reportMonitor('1017', 1) | ||
| 561 | + this.closeModal() | ||
| 562 | + if (this.data.options.isOrder == '1' && this.data.detail.status != '4') { | ||
| 563 | + return { | ||
| 564 | + title: '推荐' + this.data.seller.name + ',点击可查看详情并导航到店', | ||
| 565 | + path: util.http_build_query({ | ||
| 566 | + id: this.data.detail.seller.id | ||
| 567 | + }, '/pages/reserve/shopHome'), | ||
| 568 | + imageUrl: this.data.detail.seller.seller_image || 'http://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png', | ||
| 569 | + } | ||
| 570 | + } else { | ||
| 571 | + let parmdata = { | ||
| 572 | + id: this.id, | ||
| 573 | + fromid: getApp().openid, | ||
| 574 | + hasInvitation: 1, | ||
| 575 | + tplid: this.data.options.tplid | ||
| 576 | + } | ||
| 577 | + if (this.data.options.uid) { | ||
| 578 | + parmdata.uid = this.data.options.uid; | ||
| 579 | + } | ||
| 580 | + return { | ||
| 581 | + title: '我已订好' + this.data.seller.name + ',点击可查看详情并导航到店', | ||
| 582 | + path: util.http_build_query(parmdata, '/pages/customer/detail_owner_invitation_new'), | ||
| 583 | + imageUrl: this.data.imgSrc || 'http://nosqn.colorcun.com/reserve/images/3x/%E6%9A%82%E6%97%A0.png', | ||
| 584 | + } | ||
| 585 | + } | ||
| 586 | + }, | ||
| 587 | + // 修改detail数据 | ||
| 588 | + formatDatail(details, dateSmart) { | ||
| 589 | + details.rdateStr = dateSmart; | ||
| 590 | + details.tableFirst = details.tables[0].name; | ||
| 591 | + if (details.tables.length > 1) { | ||
| 592 | + details.tableSubInfo = '等' + (details.tables.length) + '个' + | ||
| 593 | + (details.tables[0].tid == 2 ? '包间' : ''); | ||
| 594 | + } | ||
| 595 | + details.rname = details.rname.trim() | ||
| 596 | + if (details.rname && details.sex != 3) { | ||
| 597 | + details.rnameStr = details.rname + (details.sex == 1 ? '先生' : details.sex == 2 ? '女士' : details.sex == 4 ? '贵宾' : '') | ||
| 598 | + } else if (!details.rname && details.sex == 4) { | ||
| 599 | + details.rnameStr = '贵宾' | ||
| 600 | + } else { | ||
| 601 | + details.rnameStr = details.rname | ||
| 602 | + } | ||
| 603 | + details.eatStr = '邀请您共进晚餐'; | ||
| 604 | + let hi = util.unixtoTime(details.ddate, 'HHII'); | ||
| 605 | + if (hi < '10:00') { | ||
| 606 | + details.eatStr = '邀请您共进早餐'; | ||
| 607 | + } else if (hi < '15:00') { | ||
| 608 | + details.eatStr = '邀请您共进午餐'; | ||
| 609 | + } | ||
| 610 | + return details; | ||
| 611 | + }, | ||
| 612 | + // 获取商家设置营销信息 | ||
| 613 | + getSellerTemplateConfFun(sid) { | ||
| 614 | + App.Seller.GetSellerTemplateConf({ | ||
| 615 | + sid | ||
| 616 | + }).then(res => { | ||
| 617 | + let data = res.data | ||
| 618 | + let couponList = [] | ||
| 619 | + let StyleType, home, chef, marketing, coupon, reserve, swich_phone, is_comments, signboard, store; | ||
| 620 | + chef = util.determine(data.chef); | ||
| 621 | + reserve = util.determine(data.reserve); | ||
| 622 | + marketing = util.determine(data.marketing); | ||
| 623 | + signboard = util.determine(data.signboard); | ||
| 624 | + store = util.determine(data.store); | ||
| 625 | + home = util.determine(data.home); | ||
| 626 | + StyleType = data.type; | ||
| 627 | + swich_phone = reserve && reserve.swich_phone ? reserve.swich_phone : ''; | ||
| 628 | + if (store) store.content = (store.is_introduce_all == '1' && store.content) ? util.determine(store.content) : ''; | ||
| 629 | + if (chef) chef.content = (chef.is_introduce_all == '1' && chef.content) ? util.determine(chef.content) : ''; | ||
| 630 | + if (signboard) signboard.content = (signboard.is_introduce_all == '1' && signboard.content) ? util.determine(signboard.content) : ''; | ||
| 631 | + if (reserve) reserve.content = (reserve.is_introduce_all == '1' && reserve.content) ? util.determine(reserve.content) : ''; | ||
| 632 | + if (home) home.image = (home && home.image && (!home.id_first_image || home.id_first_image != '0')) ? home.image : ''; | ||
| 633 | + if (marketing) { | ||
| 634 | + marketing.logo = (marketing.logo && (!marketing.is_logo || marketing.is_logo != '0')) ? marketing.logo : ''; | ||
| 635 | + is_comments = marketing.is_comments ? marketing.is_comments : ''; | ||
| 636 | + coupon = marketing.coupon_data ? util.determine(marketing.coupon_data) : ''; | ||
| 637 | + let info = marketing.coupon_data_comments ? util.determine(marketing.coupon_data_comments) : ''; | ||
| 638 | + let couponDataId = info && info.length > 0 ? info[0].id : {} | ||
| 639 | + // 根据券ID获取评价赠送的券详情 | ||
| 640 | + if (couponDataId) this.getEvaluateFun(couponDataId) | ||
| 641 | + } | ||
| 642 | + // is_cash 代金券 is_discount折扣券 is_dish菜品券 只有代金券有几折显示 | ||
| 643 | + if (coupon && util.getType(coupon) == 'object') { | ||
| 644 | + couponList.push({ | ||
| 645 | + id: coupon.id | ||
| 646 | + }); | ||
| 647 | + } | ||
| 648 | + if (coupon && util.getType(coupon) == 'array') { | ||
| 649 | + if (coupon.length > 0) { | ||
| 650 | + coupon.forEach(item => { | ||
| 651 | + couponList.push({ | ||
| 652 | + id: item.id | ||
| 653 | + }) | ||
| 654 | + }) | ||
| 655 | + } | ||
| 656 | + } | ||
| 657 | + // 根据券ID获取券详情 | ||
| 658 | + this.getActivityByIdFun(couponList, couponList.length) | ||
| 659 | + // 根据充值ID获取充值详情 | ||
| 660 | + if (marketing && marketing.is_recharge && marketing.is_recharge == '1' && marketing.recharge_data) { | ||
| 661 | + this.getRechargeDetail(marketing.recharge_data.id) | ||
| 662 | + } | ||
| 663 | + if (store && store.images && store.images.length > 0) store.images = util.determine(store.images); | ||
| 664 | + if (reserve && reserve.park_info_images && reserve.park_info_images.length > 0) reserve.park_info_images = util.determine(reserve.park_info_images); | ||
| 665 | + if (signboard && signboard.images && signboard.images.length > 0) signboard.images = util.determine(signboard.images); | ||
| 666 | + if (reserve) reserve = this.processInfo(reserve, '1') | ||
| 667 | + if (store) store = this.processInfo(store, '2') | ||
| 668 | + if (signboard) signboard = this.processInfo(signboard, '3') | ||
| 669 | + if (chef) chef = this.processInfo(chef, '4') | ||
| 670 | + let solt = this.data.detail.ddate_solt; | ||
| 671 | + let lunchDis = this.data.seller.daily; | ||
| 672 | + let timeList = [] | ||
| 673 | + var morningStr = lunchDis.morning.split("-"); | ||
| 674 | + var morningArr = lunchDis.morning ? this.computeHour(morningStr[0], morningStr[1], 30) : []; | ||
| 675 | + var noonStr = lunchDis.noon.split("-"); | ||
| 676 | + var noonArr = lunchDis.noon ? this.computeHour(noonStr[0], noonStr[1], 30) : []; | ||
| 677 | + var nightStr = lunchDis.night.split("-"); | ||
| 678 | + var nightArr = lunchDis.night ? this.computeHour(nightStr[0], nightStr[1], 30) : []; | ||
| 679 | + timeList = solt == '1' ? morningArr : solt == '2' ? noonArr : solt == '3' ? nightArr : [] | ||
| 680 | + let bookType = this.data.bookType; | ||
| 681 | + let urlsArr = this.data.urlsArr | ||
| 682 | + marketing.wecomle = (reserve && reserve.swich_welcome == '1' && marketing && marketing.wecomle) ? marketing.wecomle : '' | ||
| 683 | + if (bookType == '1' && home && home.image) urlsArr.push(home.image) | ||
| 684 | + if (bookType == '1' && marketing && marketing.logo) urlsArr.push(marketing.logo) | ||
| 685 | + let obj = { | ||
| 686 | + chef, | ||
| 687 | + marketing, | ||
| 688 | + home, | ||
| 689 | + reserve, | ||
| 690 | + signboard, | ||
| 691 | + store, | ||
| 692 | + swich_phone, | ||
| 693 | + StyleType, | ||
| 694 | + lite_style: data.lite_style, | ||
| 695 | + timeList, | ||
| 696 | + is_comments, | ||
| 697 | + isMoreBtn: marketing && marketing.is_online_book == '1' && this.data.options.onlineReserve == '1', | ||
| 698 | + isShareItem: this.data.options.isOrder != '1' && marketing && marketing.is_transpond == '1', | ||
| 699 | + isComments: is_comments == '1' && marketing && marketing.is_comments_coupon == '1', | ||
| 700 | + colors: bookType == '1' ? '#17220C' : bookType == '2' ? '#B9A99A' : '', | ||
| 701 | + urlsArr | ||
| 702 | + } | ||
| 703 | + console.log('获取数据GetSellerTemplateConf--------------------', { | ||
| 704 | + ...obj | ||
| 705 | + }); | ||
| 706 | + this.setData({ | ||
| 707 | + ...obj | ||
| 708 | + }) | ||
| 709 | + // 开启语音播报 | ||
| 710 | + if (reserve && reserve.swich_voice == '1') { | ||
| 711 | + this.setData({ | ||
| 712 | + isPlay: '1', | ||
| 713 | + isVoice: '1', | ||
| 714 | + }) | ||
| 715 | + this.textToSpeechFun(reserve.voice_info) | ||
| 716 | + } | ||
| 717 | + // 获取转发客人卡片设置 | ||
| 718 | + let detailInfo = this.data.detail; | ||
| 719 | + if (data.lite_style == '0') { | ||
| 720 | + this.setData({ | ||
| 721 | + imgSrc: detailInfo.seller.seller_image | ||
| 722 | + }) | ||
| 723 | + } else { | ||
| 724 | + let d = detailInfo.ddate_solt; | ||
| 725 | + let time1 = util.unixtoTime(detailInfo.ddate, '周WW') + ' ' + (d == '1' ? '早上' : d == '2' ? '中午' : d == '3' ? '晚上' : ''); | ||
| 726 | + let time2; | ||
| 727 | + if (this.data.temp_ddate) { | ||
| 728 | + time2 = util.unixtoTime(detailInfo.ddate, '周WW') + this.data.temp_ddate | ||
| 729 | + } else { | ||
| 730 | + time2 = util.unixtoTime(detailInfo.ddate, '周WW HH:II') | ||
| 731 | + } | ||
| 732 | + let time3 = util.unixtoTime(detailInfo.ddate, '周WW') + ' ' + (d == '1' ? '早餐' : d == '2' ? '午餐' : d == '3' ? '晚餐' : ''); | ||
| 733 | + let time = data.lite_style == '1' ? time1 : data.lite_style == '2' ? time2 : data.lite_style == '3' ? time3 : ''; | ||
| 734 | + this.painterBtn( | ||
| 735 | + detailInfo.seller.seller_image, | ||
| 736 | + detailInfo.seller.sellername, | ||
| 737 | + util.unixtoTime(detailInfo.ddate, 'MM月DD日'), | ||
| 738 | + time | ||
| 739 | + ); | ||
| 740 | + } | ||
| 741 | + }).catch(res => { | ||
| 742 | + console.log('GetSellerTemplateConf请求失败'); | ||
| 743 | + }) | ||
| 744 | + }, | ||
| 745 | + // 点击商家有礼 | ||
| 746 | + gotoSellerGift() { | ||
| 747 | + let url = util.http_build_query({ | ||
| 748 | + id: this.data.detail.id, | ||
| 749 | + }, '/pages/reserve/sellerGift') | ||
| 750 | + wx.navigateTo({ | ||
| 751 | + url | ||
| 752 | + }) | ||
| 753 | + }, | ||
| 754 | + // 再次预订 | ||
| 755 | + secondbook() { | ||
| 756 | + wx.reportMonitor('1013', 1) | ||
| 757 | + wx.redirectTo({ | ||
| 758 | + url: '/pages/reserve/shopHome?id=' + this.data.detail.seller.id | ||
| 759 | + }) | ||
| 760 | + }, | ||
| 761 | + // 文字转语音的方法 | ||
| 762 | + textToSpeechFun(voice_info) { | ||
| 763 | + console.log('voice_info', voice_info); | ||
| 764 | + let that = this; | ||
| 765 | + let data = this.data; | ||
| 766 | + data.detail.rname = data.detail.rname.trim() | ||
| 767 | + let str = data.detail.sex == 1 ? '先生' : data.detail.sex == 2 ? '女士' : data.detail.sex == 4 ? '贵宾' : ''; | ||
| 768 | + let charArray = data.seller.deskStr.split(''); | ||
| 769 | + let modifiedArray = charArray.map(char => char + ' '); | ||
| 770 | + let resultString = modifiedArray.join('').slice(0, -1); | ||
| 771 | + const replacements = { | ||
| 772 | + "{年月日}": data.seller.yearMonthDay, | ||
| 773 | + "{月日}": data.seller.yearMonth, | ||
| 774 | + "{餐段}": data.seller.soltName, | ||
| 775 | + "{就餐时间}": data.seller.dateStr + data.seller.dateStrDivide, | ||
| 776 | + "{包间名}": resultString, | ||
| 777 | + "{区域名+包间名}": data.seller.tablesText, | ||
| 778 | + "{经理名字}": data.staffinfo.name, | ||
| 779 | + "{客人姓名}": data.detail.rname ? (data.detail.rname + str) : str == '贵宾' ? '贵宾' : '', | ||
| 780 | + "{预订日期}": data.seller.yearMonthDay, | ||
| 781 | + "{桌位}": resultString, | ||
| 782 | + }; | ||
| 783 | + let newStr = voice_info.replace(/{预订日期}|{桌位}|{年月日}|{月日}|{餐段}|{就餐时间}|{包间名}|{区域名\+包间名}|{经理名字}|{客人姓名}/g, function (matched) { | ||
| 784 | + return replacements[matched]; | ||
| 785 | + }); | ||
| 786 | + console.log('文字转语音newStr', newStr); | ||
| 787 | + plugin.textToSpeech({ | ||
| 788 | + lang: "zh_CN", | ||
| 789 | + tts: true, | ||
| 790 | + content: newStr, | ||
| 791 | + success: function (res) { | ||
| 792 | + that.filename = res.filename | ||
| 793 | + that.speech() | ||
| 794 | + }, | ||
| 795 | + fail: function (res) { | ||
| 796 | + console.log("fail tts", res) | ||
| 797 | + } | ||
| 798 | + }) | ||
| 799 | + }, | ||
| 800 | + // 开启语音播报 | ||
| 801 | + speech() { | ||
| 802 | + var attentionAnim = wx.createAnimation({ | ||
| 803 | + duration: 1000, | ||
| 804 | + timingFunction: 'linear', | ||
| 805 | + }) | ||
| 806 | + this.attentionAnim = attentionAnim | ||
| 807 | + this.setData({ | ||
| 808 | + _attentionAnim: attentionAnim, | ||
| 809 | + attentionAnim: attentionAnim.export() | ||
| 810 | + }) | ||
| 811 | + this.audioCtx = wx.createInnerAudioContext() | ||
| 812 | + this.audioCtx.src = this.filename | ||
| 813 | + this.audioCtx.loop = true | ||
| 814 | + this.audioCtx.play() | ||
| 815 | + this.audioCtx.onPlay((e) => { | ||
| 816 | + this.setData({ | ||
| 817 | + isPlay: this.audioCtx.paused ? '2' : '1' | ||
| 818 | + }) | ||
| 819 | + }) | ||
| 820 | + this.audioCtx.onPause((e) => { | ||
| 821 | + this.setData({ | ||
| 822 | + isPlay: this.audioCtx.paused ? '2' : '1' | ||
| 823 | + }) | ||
| 824 | + }) | ||
| 825 | + clearInterval(this.timers) | ||
| 826 | + this.animation() | ||
| 827 | + }, | ||
| 828 | + // 持续旋转动画 | ||
| 829 | + animation() { | ||
| 830 | + let that = this; | ||
| 831 | + var time = setInterval(function () { | ||
| 832 | + this.n = this.n + 1; | ||
| 833 | + let attentionAnim = that.data._attentionAnim | ||
| 834 | + attentionAnim.rotate(180 * (this.n)).step() | ||
| 835 | + that.setData({ | ||
| 836 | + attentionAnim: attentionAnim.export(), | ||
| 837 | + }) | ||
| 838 | + }.bind(this), 1000) | ||
| 839 | + this.timers = time; | ||
| 840 | + }, | ||
| 841 | + // 暂停/继续播放 | ||
| 842 | + stopMusic() { | ||
| 843 | + if (this.data.isPlay == '2') { // 2 暂停状态 | ||
| 844 | + console.log("开始"); | ||
| 845 | + clearInterval(this.timers) | ||
| 846 | + this.animation() | ||
| 847 | + this.audioCtx.play() //开始 | ||
| 848 | + return; | ||
| 849 | + } | ||
| 850 | + if (this.data.isPlay == '1') { // 1 运行状态 | ||
| 851 | + console.log('暂停'); | ||
| 852 | + if (this.n % 2 != 0) { | ||
| 853 | + this.n = this.n + 1; | ||
| 854 | + let attentionAnim = this.data._attentionAnim; | ||
| 855 | + attentionAnim.rotate(180 * this.n).step(); | ||
| 856 | + this.setData({ | ||
| 857 | + attentionAnim: attentionAnim.export(), | ||
| 858 | + }) | ||
| 859 | + } | ||
| 860 | + clearInterval(this.timers) | ||
| 861 | + this.audioCtx.pause() //暂停 | ||
| 862 | + return; | ||
| 863 | + } | ||
| 864 | + }, | ||
| 865 | + // 根据充值ID获取充值详情 | ||
| 866 | + getRechargeDetail(id) { | ||
| 867 | + App.Activity.GetNewRecharge({ | ||
| 868 | + id | ||
| 869 | + }).then(res => { | ||
| 870 | + let detail = res.data | ||
| 871 | + let exp_date = res.data.exp_date ? JSON.parse(res.data.exp_date) : '' | ||
| 872 | + let recharge_list = res.data.recharge_list ? JSON.parse(res.data.recharge_list) : '' | ||
| 873 | + let priceInfo, scoreInfo, certificate; | ||
| 874 | + detail.recharge_list = recharge_list; | ||
| 875 | + detail.exp_date = exp_date; | ||
| 876 | + if (recharge_list.is_price == '1') priceInfo = '赠送' + recharge_list.price + '元余额'; | ||
| 877 | + if (recharge_list.is_score == '1') scoreInfo = '赠送' + recharge_list.score + '积分'; | ||
| 878 | + if (recharge_list.is_coupons == '1' && recharge_list.coupons_names.length > 0) certificate = recharge_list.coupons_names.join('、'); | ||
| 879 | + let recharge_data = (this.data.dataStr < detail.etime * 1 && detail.is_open == '1') ? detail : '' | ||
| 880 | + console.log('邀请函--------------充值', recharge_data); | ||
| 881 | + let entry = this.data.titleList | ||
| 882 | + if (this.data.hasValueRecharge && this.data.marketing.is_recharge == '1' && recharge_data) { | ||
| 883 | + entry.push({ | ||
| 884 | + id: 2, | ||
| 885 | + title: '会员充值优惠' | ||
| 886 | + }) | ||
| 887 | + if (entry.length > 0) { | ||
| 888 | + entry.sort((a, b) => a.id - b.id); | ||
| 889 | + } | ||
| 890 | + recharge_data.timeStr = util.unixtoTime(recharge_data.stime, 'YYYY-MM-DD') + ' - ' + util.unixtoTime(recharge_data.etime, 'YYYY-MM-DD') | ||
| 891 | + } | ||
| 892 | + this.setData({ | ||
| 893 | + titleList: entry, | ||
| 894 | + activeTitle: entry.length > 0 ? entry[0].id : '', | ||
| 895 | + recharge_data, | ||
| 896 | + scoreInfo, | ||
| 897 | + priceInfo, | ||
| 898 | + certificate | ||
| 899 | + }) | ||
| 900 | + }) | ||
| 901 | + }, | ||
| 902 | + // 选择标题 | ||
| 903 | + checkTitleFun(e) { | ||
| 904 | + console.log('e.currentTargete.currentTarget', e.currentTarget); | ||
| 905 | + let activeTitle = e.currentTarget.dataset['type']; | ||
| 906 | + this.setData({ | ||
| 907 | + activeTitle | ||
| 908 | + }) | ||
| 909 | + }, | ||
| 910 | + // 获取评价赠送的券最新详情 | ||
| 911 | + getEvaluateFun(id) { | ||
| 912 | + App.Activity.GetActivityById({ | ||
| 913 | + id | ||
| 914 | + }).then(res => { | ||
| 915 | + if (res.data.length > 0) { | ||
| 916 | + let couponData = res.data[0] | ||
| 917 | + couponData.use = couponData.use ? util.determine(couponData.use) : ''; | ||
| 918 | + couponData.exp_date = couponData.exp_date ? util.determine(couponData.exp_date) : ''; | ||
| 919 | + if ((couponData.use && (!couponData.use.is_cash || couponData.use.is_cash == '1'))) { | ||
| 920 | + let cash = couponData.use.cash * 1; | ||
| 921 | + let price = couponData.price * 1; | ||
| 922 | + couponData.discount = cash != 0 ? ((price / cash) * 10).toFixed(1) : ''; | ||
| 923 | + } | ||
| 924 | + // showCoupon 代表赠送的券没过有效期 && 是开启状态 | ||
| 925 | + couponData.showCoupon = (this.data.dataStr < (couponData.etime * 1) && couponData.is_open == '1') ? '1' : '0'; | ||
| 926 | + console.log('邀请函--------------------评价赠送的优惠券', couponData); | ||
| 927 | + let entry = this.data.titleList | ||
| 928 | + if (!this.data.is_user_comments && this.data.isComments == '1' && couponData.showCoupon == '1') { | ||
| 929 | + entry.push({ | ||
| 930 | + id: 3, | ||
| 931 | + title: '意见反馈有礼' | ||
| 932 | + }) | ||
| 933 | + if (entry.length > 0) { | ||
| 934 | + entry.sort((a, b) => a.id - b.id); | ||
| 935 | + } | ||
| 936 | + } | ||
| 937 | + this.setData({ | ||
| 938 | + couponData: res.data[0], | ||
| 939 | + titleList: entry, | ||
| 940 | + activeTitle: entry.length > 0 ? entry[0].id : '', | ||
| 941 | + }) | ||
| 942 | + } | ||
| 943 | + }) | ||
| 944 | + }, | ||
| 945 | + // 根据券ID获取券详情 | ||
| 946 | + getActivityByIdFun(ids, length) { | ||
| 947 | + let coupon_dataList = []; | ||
| 948 | + ids.forEach(i => { | ||
| 949 | + App.Activity.GetActivityById({ | ||
| 950 | + id: i.id | ||
| 951 | + }).then(res => { | ||
| 952 | + if (res.data.length > 0) { | ||
| 953 | + let detail = res.data[0]; | ||
| 954 | + detail.stringifyUse = detail.use ? JSON.stringify(detail.use) : ''; | ||
| 955 | + detail.exp_date = detail.exp_date ? util.determine(detail.exp_date) : ''; | ||
| 956 | + detail.use = detail.use ? util.determine(detail.use) : ''; | ||
| 957 | + if ((detail.use && (!detail.use.is_cash || detail.use.is_cash == '1'))) { | ||
| 958 | + let cash = detail.use.cash * 1; | ||
| 959 | + let price = detail.price * 1; | ||
| 960 | + detail.discount = cash != 0 ? ((price / cash) * 10).toFixed(1) : ''; | ||
| 961 | + } | ||
| 962 | + detail.stimeStr = util.unixtoTime(detail.stime, 'YYYY-MM-DD HH:II') | ||
| 963 | + detail.etimeStr = util.unixtoTime(detail.etime, 'YYYY-MM-DD HH:II') | ||
| 964 | + coupon_dataList.push(detail); | ||
| 965 | + if (length === coupon_dataList.length) { | ||
| 966 | + coupon_dataList = coupon_dataList.filter(item => { | ||
| 967 | + return this.data.dataStr < (item.etime * 1) && item.is_open == '1' | ||
| 968 | + }) | ||
| 969 | + let entry = this.data.titleList | ||
| 970 | + if (this.data.hasValueCertificate && this.data.marketing.is_coupon == '1' && coupon_dataList.length > 0) { | ||
| 971 | + entry.push({ | ||
| 972 | + id: 1, | ||
| 973 | + title: '专属优惠券' | ||
| 974 | + }) | ||
| 975 | + if (entry.length > 0) { | ||
| 976 | + entry.sort((a, b) => a.id - b.id); | ||
| 977 | + } | ||
| 978 | + } | ||
| 979 | + console.log('邀请函--------------------优惠券', coupon_dataList); | ||
| 980 | + this.setData({ | ||
| 981 | + coupon_dataList, | ||
| 982 | + titleList: entry, | ||
| 983 | + activeTitle: entry.length > 0 ? entry[0].id : '', | ||
| 984 | + }) | ||
| 985 | + } | ||
| 986 | + } | ||
| 987 | + }) | ||
| 988 | + }) | ||
| 989 | + }, | ||
| 990 | + /** | ||
| 991 | + * 生命周期函数--监听页面隐藏 | ||
| 992 | + */ | ||
| 993 | + onHide() { | ||
| 994 | + clearInterval(this.timers) | ||
| 995 | + if (this.audioCtx) { | ||
| 996 | + this.audioCtx.destroy(); // 释放音频资源 | ||
| 997 | + } | ||
| 998 | + }, | ||
| 999 | + | ||
| 1000 | + /** | ||
| 1001 | + * 生命周期函数--监听页面卸载 | ||
| 1002 | + */ | ||
| 1003 | + onUnload() { | ||
| 1004 | + clearInterval(this.timers) | ||
| 1005 | + if (this.audioCtx) { | ||
| 1006 | + this.audioCtx.destroy(); // 释放音频资源 | ||
| 1007 | + } | ||
| 1008 | + }, | ||
| 1009 | + // 设置虚拟到店时间 | ||
| 1010 | + bindPickerChange: function (e) { | ||
| 1011 | + let index = e.detail.value | ||
| 1012 | + let temp_ddate = this.data.timeList[index] | ||
| 1013 | + this.setData({ | ||
| 1014 | + temp_ddate | ||
| 1015 | + }) | ||
| 1016 | + let detailInfo = this.data.detail; | ||
| 1017 | + const reserveDate = new Date(detailInfo.ddate * 1000); | ||
| 1018 | + let reserveTime = | ||
| 1019 | + reserveDate.getFullYear() + | ||
| 1020 | + "-" + | ||
| 1021 | + (reserveDate.getMonth() + 1) + | ||
| 1022 | + "-" + | ||
| 1023 | + reserveDate.getDate(); | ||
| 1024 | + let times = this.getNewDate(reserveTime + " " + temp_ddate).getTime() / 1000 | ||
| 1025 | + App.Reserve.SetReserveTempDdate({ | ||
| 1026 | + rid: this.id, | ||
| 1027 | + temp_ddate: times, | ||
| 1028 | + }).then(res => { | ||
| 1029 | + if (res.ret == 200) { | ||
| 1030 | + if (this.data.lite_style == '2') { | ||
| 1031 | + let time = (util.unixtoTime(detailInfo.ddate, '周WW') + temp_ddate) || (util.unixtoTime(detailInfo.ddate, '周WW') + this.data.timeList[index]) | ||
| 1032 | + this.painterBtn( | ||
| 1033 | + detailInfo.seller.seller_image, | ||
| 1034 | + detailInfo.seller.sellername, | ||
| 1035 | + util.unixtoTime(detailInfo.ddate, 'MM月DD日'), | ||
| 1036 | + time | ||
| 1037 | + ); | ||
| 1038 | + } | ||
| 1039 | + } | ||
| 1040 | + }) | ||
| 1041 | + }, | ||
| 1042 | + // ios 部分机型不兼容new Date() 转换字符串 | ||
| 1043 | + getNewDate(data) { | ||
| 1044 | + if (typeof data === 'string') { | ||
| 1045 | + let arr = data.split(/[- : \/]/) | ||
| 1046 | + if (arr[1] !== undefined || arr[1] !== null) { | ||
| 1047 | + arr[1] = arr[1] - 1 | ||
| 1048 | + } | ||
| 1049 | + return new Date(...arr) | ||
| 1050 | + } | ||
| 1051 | + return new Date(data || new Date()) | ||
| 1052 | + }, | ||
| 1053 | + //根据起始时间(获取时间时间段) | ||
| 1054 | + computeHour(time1, time2, interval) { | ||
| 1055 | + //time1 开始时间 time2结束时间 interval间隔时长 | ||
| 1056 | + function getTimeList(time1, time2, interval) { | ||
| 1057 | + var timeList = []; | ||
| 1058 | + time1 = time1.split(":"); | ||
| 1059 | + time2 = time2.split(":"); | ||
| 1060 | + time1 = new Date(0, 0, 0, time1[0], time1[1], 0); | ||
| 1061 | + time2 = new Date(0, 0, 0, time2[0], time2[1], 0); | ||
| 1062 | + interval = interval * 60 * 1000; | ||
| 1063 | + while (time1 <= time2) { | ||
| 1064 | + timeList.push(time1.format("hh:mm")); | ||
| 1065 | + time1 = new Date(time1.getTime() + interval); | ||
| 1066 | + } | ||
| 1067 | + return timeList; | ||
| 1068 | + } | ||
| 1069 | + Date.prototype.format = function (format) { | ||
| 1070 | + var date = { | ||
| 1071 | + "M+": this.getMonth() + 1, | ||
| 1072 | + "d+": this.getDate(), | ||
| 1073 | + "h+": this.getHours(), | ||
| 1074 | + "m+": this.getMinutes(), | ||
| 1075 | + "s+": this.getSeconds(), | ||
| 1076 | + "q+": Math.floor((this.getMonth() + 3) / 3), | ||
| 1077 | + S: this.getMilliseconds(), | ||
| 1078 | + }; | ||
| 1079 | + if (/(y+)/.test(format)) | ||
| 1080 | + format = format.replace( | ||
| 1081 | + RegExp.$1, | ||
| 1082 | + (this.getFullYear() + "").substr(4 - RegExp.$1.length) | ||
| 1083 | + ); | ||
| 1084 | + for (var k in date) | ||
| 1085 | + if (new RegExp("(" + k + ")").test(format)) | ||
| 1086 | + format = format.replace( | ||
| 1087 | + RegExp.$1, | ||
| 1088 | + RegExp.$1.length == 1 ? | ||
| 1089 | + date[k] : | ||
| 1090 | + ("00" + date[k]).substr(("" + date[k]).length) | ||
| 1091 | + ); | ||
| 1092 | + return format; | ||
| 1093 | + }; | ||
| 1094 | + return getTimeList(time1, time2, interval); | ||
| 1095 | + }, | ||
| 1096 | + // 模块文字、轮播图数据重组(停车、餐厅介绍、菜品、主厨) | ||
| 1097 | + processInfo(intel, type) { | ||
| 1098 | + let imgs = []; | ||
| 1099 | + intel.textInfo = ''; | ||
| 1100 | + intel.imgsInfo = []; | ||
| 1101 | + intel.videoImgsInfo = []; | ||
| 1102 | + if (type == '1') { | ||
| 1103 | + if (intel.swich_park == '1' && (intel.park_info || intel.park_info_images)) { | ||
| 1104 | + intel.textInfo = intel.park_info; | ||
| 1105 | + imgs = intel.park_info_images | ||
| 1106 | + } | ||
| 1107 | + } | ||
| 1108 | + if (type == '2') { | ||
| 1109 | + imgs = intel.images && intel.images.length > 0 && (!intel.is_images || intel.is_images !== '0') ? intel.images : []; | ||
| 1110 | + intel.textInfo = (intel.introduce && (!intel.is_introduce || intel.is_introduce !== '0')) ? intel.introduce : ''; | ||
| 1111 | + } | ||
| 1112 | + if (type == '3') { | ||
| 1113 | + imgs = intel.images || [] | ||
| 1114 | + intel.textInfo = ''; | ||
| 1115 | + } | ||
| 1116 | + if (type == '4') { | ||
| 1117 | + imgs = ((!intel.is_images || intel.is_images != '0') && intel.image) ? intel.image : [] | ||
| 1118 | + intel.textInfo = (intel.introduce && (!intel.is_introduce || intel.is_introduce != '0')) ? intel.introduce : ''; | ||
| 1119 | + } | ||
| 1120 | + intel.imgsInfo = imgs; | ||
| 1121 | + intel.videoImgsInfo = imgs.map(url => ({ | ||
| 1122 | + type: "1", | ||
| 1123 | + content: url, | ||
| 1124 | + })); | ||
| 1125 | + if (intel.content && intel.content.length > 0 && intel.is_introduce_all == '1') { | ||
| 1126 | + intel.textInfo = intel.content.filter(item => item.type === "2").map(item => item.content).join('\n'); | ||
| 1127 | + intel.imgsInfo = intel.content.filter(item => item.type === "1" && item.content).map(item => item.content); | ||
| 1128 | + intel.videoImgsInfo = intel.content.filter(item => ((item.type === "1" || item.type === "3") && item.content)); | ||
| 1129 | + } | ||
| 1130 | + return intel | ||
| 1131 | + }, | ||
| 1132 | + /** | ||
| 1133 | + * 页面相关事件处理函数--监听用户下拉动作 | ||
| 1134 | + */ | ||
| 1135 | + onPullDownRefresh() { | ||
| 1136 | + | ||
| 1137 | + }, | ||
| 1138 | + | ||
| 1139 | + /** | ||
| 1140 | + * 页面上拉触底事件的处理函数 | ||
| 1141 | + */ | ||
| 1142 | + onReachBottom() { | ||
| 1143 | + | ||
| 1144 | + }, | ||
| 1145 | +}) |
| 1 | +<!--pack-invitation/pages/detail_owner_invitation12.wxml--> | ||
| 2 | +<import src="../../pages/tpl/invitation"></import> | ||
| 3 | +<nav hasHome class="navhome" backgroundColor="{{show_white ? colors : 'transparent'}}" place="{{false}}"></nav> | ||
| 4 | +<scroll-view scroll-y class="viewBox viewBox{{bookType}}"> | ||
| 5 | + <image wx:if="{{hasValueBroadcast && isVoice=='1'}}" class="musicImg" src="{{isPlay=='1'?'https://qn.colorcun.com/open.svg':'https://qn.colorcun.com/close.svg'}}" bindtap="stopMusic" animation="{{attentionAnim}}" /> | ||
| 6 | + <image class="giftImg" bindtap="gotoSellerGift" wx:if="{{(hasValueCertificate && marketing.is_coupon=='1' && coupon_dataList.length>0) || (!is_user_comments && isComments =='1' && couponData.showCoupon =='1') || (hasValueRecharge && marketing.is_recharge=='1' && recharge_data)}}" src="https://nosqn.colorcun.com/sellerGift.png" mode="" /> | ||
| 7 | + <image wx:if="{{detail.status =='4'}}" class="cannotImg" src="https://qn.colorcun.com/cancelImg.png" /> | ||
| 8 | + <image wx:if="{{options.isOrder == '1' && detail.status !='4'}}" class="cannotImg" src="https://qn.colorcun.com/overImg.png" /> | ||
| 9 | + <view class="reservationInfo"> | ||
| 10 | + <view wx:if="{{bookType == '2'}}" class="infoTop"> | ||
| 11 | + <text class="infoTopText4 font44r" space="nbsp">邀请函</text> | ||
| 12 | + <text class="infoTopText1" space="nbsp">INVITATION</text> | ||
| 13 | + <text class="infoTopText2 font44r" space="nbsp">{{seller.name||reserve.seller_name}}</text> | ||
| 14 | + <text class="infoTopText3 font28r" space="nbsp" wx:if="{{reserve.swich_slogan == '1' && home.slogan}}">{{home.slogan}}</text> | ||
| 15 | + </view> | ||
| 16 | + <view wx:if="{{bookType == '2' && urlsArr && urlsArr.length>0}}" class="{{roomimage.length=='1'?'pageSpacing':'pageSpacing1'}}"> | ||
| 17 | + <view wx:for="{{urlsArr}}" class="imgs" wx:key="index" bindtap="previewImage" data-url="{{item}}" data-imgs="{{urlsArr}}"> | ||
| 18 | + <image class="imageStyle" mode="aspectFill" src="{{item}}"></image> | ||
| 19 | + </view> | ||
| 20 | + </view> | ||
| 21 | + <view class="informationBox"> | ||
| 22 | + <view wx:if="{{bookType == '1'}}" class="infoTop"> | ||
| 23 | + <text class="infoTopText2 font44r" space="nbsp">{{seller.name||reserve.seller_name}}</text> | ||
| 24 | + <text class="infoTopText3 font28r" space="nbsp" wx:if="{{reserve.swich_slogan == '1' && home.slogan}}">{{home.slogan}}</text> | ||
| 25 | + <image class="infoTopBj2" src="https://qn.colorcun.com/invitation13Fgx.png" mode="" /> | ||
| 26 | + </view> | ||
| 27 | + <view class="infoItem"> | ||
| 28 | + <text space="nbsp" wx:if="{{reserve.swich_booking=='1' && reserve.book_info}}" class="contentData font28r bookData">{{reserve.book_info}}</text> | ||
| 29 | + </view> | ||
| 30 | + <view class="infoItem" wx:if="{{detail.rnameStr && reserve.swich_customer == '1'}}"> | ||
| 31 | + <view class="record font28r">预订贵宾:</view> | ||
| 32 | + <view class="contentData font28r">{{detail.rnameStr}}</view> | ||
| 33 | + </view> | ||
| 34 | + <view class="infoItem" wx:if="{{seller.date}}"> | ||
| 35 | + <view class="record font28r">用餐日期:</view> | ||
| 36 | + <view class="contentData font28r">{{seller.date}}</view> | ||
| 37 | + </view> | ||
| 38 | + <view class="infoItem" wx:if="{{seller.tablesText}}"> | ||
| 39 | + <view class="record font28r">用餐位置:</view> | ||
| 40 | + <view class="contentData font28r">{{seller.tablesText}}</view> | ||
| 41 | + </view> | ||
| 42 | + <view class="infoItem" wx:if="{{seller.soltName}}"> | ||
| 43 | + <view class="record font28r">用餐时间:</view> | ||
| 44 | + <view class="arrivalBox"> | ||
| 45 | + <view class="contentData font28r">{{seller.soltName}}<text class="marLeft font28r">{{temp_ddate}}</text></view> | ||
| 46 | + <picker wx:if="{{options.isOrder != '1' && (detail.status =='1' || detail.status =='2') && options.hasSellerShare == '1'}}" bindchange="bindPickerChange" value="{{index}}" range="{{timeList}}"> | ||
| 47 | + <view class="picker"> | ||
| 48 | + <button>修改到店时间</button> | ||
| 49 | + </view> | ||
| 50 | + </picker> | ||
| 51 | + </view> | ||
| 52 | + </view> | ||
| 53 | + <view class="infoItem infoRight" wx:if="{{swich_phone!='0' && seller.tel && seller.tel.length>0}}"> | ||
| 54 | + <view class="record font28r">前台电话:</view> | ||
| 55 | + <view class="contentData font28r"> | ||
| 56 | + <block wx:for="{{seller.tel}}" wx:key="index"><text data-phone="{{item}}" class="contentDataPhone" bindtap="call">{{item}}</text><text class="divider">{{index==(seller.tel.length-1)?'':','}}</text></block> | ||
| 57 | + </view> | ||
| 58 | + </view> | ||
| 59 | + <view class="infoItem addressInfo"> | ||
| 60 | + <view class="record font28r">餐厅地址:</view> | ||
| 61 | + <view class="arrivalBox"> | ||
| 62 | + <view class="contentData font28r">{{seller.addr || reserve.seller.map_address}}</view> | ||
| 63 | + <view class="positioning" bindtap="looklocation"> | ||
| 64 | + <image class="addressImg" src="{{bookType == '2'?'https://qn.colorcun.com/invitation11Dw.png':'https://qn.colorcun.com/invitation12Dw.png'}}" mode="aspectFill" /> | ||
| 65 | + 导航到店 | ||
| 66 | + </view> | ||
| 67 | + </view> | ||
| 68 | + </view> | ||
| 69 | + </view> | ||
| 70 | + </view> | ||
| 71 | + <swiper wx:if="{{bookType == '1' && urlsArr.length>0}}" class="detailBanner" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}" circular="{{true}}" indicator-color="lightgray" indicator-active-color="#fff"> | ||
| 72 | + <swiper-item wx:for="{{urlsArr}}" wx:key="index"> | ||
| 73 | + <image mode="aspectFill" class="detailBannerImg" src="{{item}}" bindtap="previewImage" data-url="{{item}}" data-imgs="{{urlsArr}}"></image> | ||
| 74 | + </swiper-item> | ||
| 75 | + </swiper> | ||
| 76 | + <view class="receptionBox" wx:if="{{staffinfo && reserve.swich_manager=='1'}}"> | ||
| 77 | + <view class="peopleInfo"> | ||
| 78 | + <image bindtap="lookImgs" data-url="{{staffinfo.photo}}" src="{{staffinfo.photo}}" class="headerimg" mode="aspectFill"></image> | ||
| 79 | + <view class="font26r">{{staffinfo.name}}</view> | ||
| 80 | + <view class="font26r">{{staffinfo.position}}</view> | ||
| 81 | + </view> | ||
| 82 | + <view class="handleInfo"> | ||
| 83 | + <view class="font40r">尊敬的贵宾您好!</view> | ||
| 84 | + <view class="font26r texts">很荣幸能为您提供专属接待和服务</view> | ||
| 85 | + <view class="contactBtns"> | ||
| 86 | + <view wx:if="{{staffinfo.phone}}" class="font22r brownFont" data-phone="{{staffinfo.phone}}" bindtap="call"> | ||
| 87 | + <image src="{{bookType == '2'?'https://qn.colorcun.com/invitation11Phone.png':'https://qn.colorcun.com/invitation10Phone.png'}}" mode="" /><text>联系我</text> | ||
| 88 | + </view> | ||
| 89 | + <view wx:if="{{staffinfo.wechat}}" class="font22r brownFont" bindtap="copyWeChat"> | ||
| 90 | + <image src="{{bookType == '2'?'https://qn.colorcun.com/invitation11Wx.png':'https://qn.colorcun.com/invitation10Wx.png'}}" mode="" /><text>加微信</text> | ||
| 91 | + </view> | ||
| 92 | + </view> | ||
| 93 | + </view> | ||
| 94 | + </view> | ||
| 95 | + <view class="entrance"> | ||
| 96 | + <view bindtap="publicShowModal" data-type="1" data-title="专属优惠券" wx:if="{{hasValueCertificate && marketing.is_coupon=='1' && coupon_dataList.length>0}}" class="entranceItem"> | ||
| 97 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon1.png" mode="" /> | ||
| 98 | + <view class="font24r">专属优惠券</view> | ||
| 99 | + </view> | ||
| 100 | + <view bindtap="publicShowModal" data-type="2" data-title="会员充值优惠" wx:if="{{(hasValueRecharge && marketing.is_recharge=='1' && recharge_data) || (hasValueRecharge && marketing.is_link=='1')}}" class="entranceItem"> | ||
| 101 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon2.png" mode="" /> | ||
| 102 | + <view class="font24r">会员充值优惠</view> | ||
| 103 | + </view> | ||
| 104 | + <view bindtap="{{(is_comments=='1' && (marketing.is_comments_coupon!='1' || couponData.showCoupon!='1'))?'evaluateFun':'publicShowModal'}}" data-type="3" data-title="评价反馈" wx:if="{{(!is_user_comments && isComments =='1' && couponData.showCoupon =='1') || (is_comments=='1' && (marketing.is_comments_coupon!='1' || couponData.showCoupon!='1'))}}" class="entranceItem"> | ||
| 105 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon3.png" mode="" /> | ||
| 106 | + <view class="font24r">评价反馈</view> | ||
| 107 | + </view> | ||
| 108 | + <view bindtap="cookbook" wx:if="{{hasValueOrder && openOrder == '1' && marketing.is_order=='1'}}" class="entranceItem"> | ||
| 109 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon4.png" mode="" /> | ||
| 110 | + <view class="font24r">提前点餐</view> | ||
| 111 | + </view> | ||
| 112 | + <view bindtap="publicShowModal" data-type="5" data-title="餐厅介绍" wx:if="{{store && (store.textInfo || store.videoImgsInfo.length>0)}}" class="entranceItem"> | ||
| 113 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon5.png" mode="" /> | ||
| 114 | + <view class="font24r">餐厅介绍</view> | ||
| 115 | + </view> | ||
| 116 | + <view bindtap="publicShowModal" data-type="6" data-title="招牌菜品" wx:if="{{(signboard && (signboard.textInfo || signboard.videoImgsInfo.length>0) || (hasValueOrder && openOrder == '1' && marketing.is_order=='1'))}}" class="entranceItem"> | ||
| 117 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon6.png" mode="" /> | ||
| 118 | + <view class="font24r">招牌菜品</view> | ||
| 119 | + </view> | ||
| 120 | + <view bindtap="publicShowModal" data-type="7" data-title="停车指引" wx:if="{{reserve && (reserve.textInfo || reserve.videoImgsInfo.length>0)}}" class="entranceItem"> | ||
| 121 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon7.png" mode="" /> | ||
| 122 | + <view class="font24r">停车指引</view> | ||
| 123 | + </view> | ||
| 124 | + <view bindtap="publicShowModal" data-type="8" data-title="主厨介绍" wx:if="{{chef && (chef.textInfo || chef.videoImgsInfo.length>0)}}" class="entranceItem"> | ||
| 125 | + <image src="https://qn.colorcun.com/invitation1{{bookType == '1'?'3':'4'}}Icon8.png" mode="" /> | ||
| 126 | + <view class="font24r">主厨介绍</view> | ||
| 127 | + </view> | ||
| 128 | + </view> | ||
| 129 | + <view class="businessBox font24r"> | ||
| 130 | + 周到安排提供技术支持<text bindtap="call" data-phone="4000009690">4000009690</text>,餐厅入驻请点击 | ||
| 131 | + <view bindtap="gotoJoinSeller" style="text-decoration: underline;">这里</view> | ||
| 132 | + </view> | ||
| 133 | + <view class="{{(!marketing || (marketing.is_transpond!='1' && marketing.is_online_book!='1'))?'more more1':'more'}}" wx:if="{{showMoreTip}}"> | ||
| 134 | + <view class="moreText">滑动查看更多</view> | ||
| 135 | + <image src="https://qn.colorcun.com/jt1.png" mode="" /> | ||
| 136 | + </view> | ||
| 137 | + <view class="toastBox" wx:if="{{toastBool}}"> | ||
| 138 | + {{toastText}} | ||
| 139 | + </view> | ||
| 140 | + <!-- (开启在线预订 显示在线预订) || (未开启在线预订 显示再次预订(打商家电话)) --> | ||
| 141 | + <!-- (未结束&&未取消 && 开启转发开关 显示 转发邀请函给客人) || (过了当前餐段结束时间||用餐完成||已取消 显示 转发店铺给好友) --> | ||
| 142 | + <view wx:if="{{isMoreBtn || options.isOrder == '1' || (!isMoreBtn && seller.phone) || (detail.status !='4' && isPaymenBtn) || (detail.status !='4' && isShareItem)}}" class="flex-lr sharewidth"> | ||
| 143 | + <view wx:if="{{isMoreBtn}}" class="flex-cc font30r moreBtn {{((detail.status !='4' && isPaymenBtn) && ((detail.status !='4' && isShareItem) || options.isOrder == '1')) ? 'threeBtn' : ''}}" bindtap="secondbook">再次预订</view> | ||
| 144 | + <view wx:if="{{!isMoreBtn && seller.phone}}" class="flex-cc font30r moreBtn {{((detail.status !='4' && isPaymenBtn) && ((detail.status !='4' && isShareItem) || options.isOrder == '1')) ? 'threeBtn' : ''}}" bindtap="call" data-phone="{{seller.phone}}">再次预订</view> | ||
| 145 | + <view wx:if="{{detail.status !='4' && isPaymenBtn}}" class="flex-cc font30r paymenBtn {{((isMoreBtn || (!isMoreBtn && seller.phone)) && ((detail.status !='4' && isShareItem) || options.isOrder == '1')) ? 'threeBtn' : ''}}" bindtap="paymentFun">支付定金</view> | ||
| 146 | + <button wx:if="{{detail.status !='4' && isShareItem}}" class="flex-cc font30r shareItem" open-type="share">转发邀请函给客人</button> | ||
| 147 | + <button wx:if="{{options.isOrder == '1'}}" class="flex-cc font30r shareItem" data-type="2" open-type="share">转发店铺给好友</button> | ||
| 148 | + </view> | ||
| 149 | +</scroll-view> | ||
| 150 | +<my-modal id="publicModal" class="publicModalBox{{bookType}}" fadeStyle="slideUp" height="530px"> | ||
| 151 | + <view slot="modalName" class="titlePublicModal"> | ||
| 152 | + <view class="font32">{{modalTitle}}</view> | ||
| 153 | + <image bindtap="closepublicModal" src="https://qn.colorcun.com/invitation13Icons.png" mode="" /> | ||
| 154 | + </view> | ||
| 155 | + <block wx:if="{{modalType == '1'}}"> | ||
| 156 | + <view class="regionItem couponBox" slot="modalContent"> | ||
| 157 | + <block wx:for="{{coupon_dataList}}" wx:key="index" wx:for-index="index"> | ||
| 158 | + <navigator url="/pack-activity/pack/buyCoupon?id={{item.id}}&name={{seller.name}}&use={{item.stringifyUse}}&sid={{seller.sid}}&oid={{detail.id}}&types=1&StyleType={{StyleType}}" hover-class="navigator-hover"> | ||
| 159 | + <view class="preferentialItems"> | ||
| 160 | + <view class="purchase"> | ||
| 161 | + <view class="priceText" wx:if="{{item.price}}"> | ||
| 162 | + <view class="icons">¥<text class="priceText">{{item.price}}</text></view> | ||
| 163 | + </view> | ||
| 164 | + <image class="certificateImg" src="{{(item.discount!='0.00' && (item.use.is_cash=='1' || item.use.is_cash) && item.discount)?'https://qn.colorcun.com/invitation10certificate1.png':'https://qn.colorcun.com/invitation10certificate.png'}}" mode="" /> | ||
| 165 | + <text wx:if="{{item.discount!='0.00' && (item.use.is_cash=='1' || item.use.is_cash) && item.discount}}" class="discountInfo">{{item.discount}}折</text> | ||
| 166 | + </view> | ||
| 167 | + <view class="certificateInfo"> | ||
| 168 | + <view class="preferentialDetails"> | ||
| 169 | + <view class="information"> | ||
| 170 | + <text class="discountText font20r">{{item.use.is_cash=='1'?'代金券':item.use.is_discount=='1'?'超值折扣':item.use.is_dish=='1'?'特惠菜品':''}}</text> | ||
| 171 | + <text class="ticketName font24r">{{item.aname}}</text> | ||
| 172 | + </view> | ||
| 173 | + <text wx:if="{{item.exp_date.is_week=='1' || item.exp_date.is_week===true}}" class="limitation font24r">{{item.exp_date.week_show?item.exp_date.week_show+'可用':''}}</text> | ||
| 174 | + <view wx:if="{{item.exp_date.is_none=='1' || item.exp_date.is_none===true}}" class="limitation font24r"> | ||
| 175 | + 无限制 | ||
| 176 | + </view> | ||
| 177 | + <view wx:if="{{item.exp_date.is_birthday=='1' || item.exp_date.is_birthday===true}}" class="limitation font24r"> | ||
| 178 | + 会员生日当天可用 | ||
| 179 | + </view> | ||
| 180 | + <view wx:if="{{item.desc}}" class="showDesc"> | ||
| 181 | + <text class="font24r">消费要求</text> | ||
| 182 | + <image src="https://qn.colorcun.com/invitation10Sicon.png" mode="" /> | ||
| 183 | + </view> | ||
| 184 | + </view> | ||
| 185 | + <view class="limitationBtn"> | ||
| 186 | + <view class="font24r couponBtn">立即抢购</view> | ||
| 187 | + </view> | ||
| 188 | + </view> | ||
| 189 | + </view> | ||
| 190 | + <view wx:if="{{item.desc}}" class="bottomLimitation font24r"><text></text>{{item.desc}}</view> | ||
| 191 | + </navigator> | ||
| 192 | + </block> | ||
| 193 | + </view> | ||
| 194 | + </block> | ||
| 195 | + <block wx:if="{{modalType == '2'}}"> | ||
| 196 | + <view class="publicModule preferentialCoupon" slot="modalContent"> | ||
| 197 | + <navigator wx:if="{{hasValueRecharge && marketing.is_recharge=='1' && recharge_data}}" url="/pack-activity/pack/vipRecharge?id={{recharge_data.id}}&name={{seller.name}}&sid={{seller.sid}}&oid={{detail.id}}&types=1&StyleType={{StyleType}}" hover-class="navigator-hover"> | ||
| 198 | + <view class="rechargeItems"> | ||
| 199 | + <image class="checkImg" src="https://qn.colorcun.com/{{bookType == '1' ?'invitation10vector1':'invitation10vector'}}.png" mode="" /> | ||
| 200 | + <view class="rechargeTitle font36r">{{recharge_data.rname}}</view> | ||
| 201 | + <view class="limitation font24r" wx:if="{{priceInfo}}"> | ||
| 202 | + {{priceInfo}}{{(recharge_data.recharge_list.is_coupons=='0' && recharge_data.recharge_list.is_score=='0')?'。':';'}} | ||
| 203 | + </view> | ||
| 204 | + <view class="limitation font24r" wx:if="{{scoreInfo}}"> | ||
| 205 | + {{scoreInfo}}{{recharge_data.recharge_list.is_coupons=='0'?'。':';'}} | ||
| 206 | + </view> | ||
| 207 | + <view class="limitation font24r" wx:if="{{recharge_data.recharge_list.is_coupons=='1'}}"> | ||
| 208 | + {{recharge_data.recharge_list.is_coupons=='1'?'会员充值满'+recharge_data.recharge_money+'元赠送'+certificate:''}}。 | ||
| 209 | + </view> | ||
| 210 | + </view> | ||
| 211 | + <view class="rechargeBtn"> | ||
| 212 | + <view class="font28r">立即充值</view> | ||
| 213 | + </view> | ||
| 214 | + </navigator> | ||
| 215 | + <view wx:if="{{hasValueRecharge && marketing.is_link=='1'}}" class="font24r favouredPolicy" bindtap="gotoFavourableList"> | ||
| 216 | + 点击了解更多会员优惠政策 | ||
| 217 | + </view> | ||
| 218 | + </view> | ||
| 219 | + </block> | ||
| 220 | + <block wx:if="{{modalType == '3'}}"> | ||
| 221 | + <view class="publicModule couponBox" slot="modalContent" wx:if="{{!is_user_comments && isComments =='1' && couponData.showCoupon =='1'}}"> | ||
| 222 | + <view class="font28r evaluateTitleText">期待您的声音,帮助我们持续改进</view> | ||
| 223 | + <view class="couponInfo" bindtap="evaluateFun"> | ||
| 224 | + <view class="preferentialItems"> | ||
| 225 | + <view class="purchase"> | ||
| 226 | + <view class="priceText" wx:if="{{couponData.price}}"> | ||
| 227 | + <view class="icons">¥<text class="priceText">{{couponData.price}}</text></view> | ||
| 228 | + </view> | ||
| 229 | + <image class="certificateImg" src="{{(couponData.discount!='0.00' && (couponData.use.is_cash=='1' || couponData.use.is_cash) && couponData.discount)?'https://qn.colorcun.com/invitation10certificate1.png':'https://qn.colorcun.com/invitation10certificate.png'}}" mode="" /> | ||
| 230 | + <text wx:if="{{couponData.discount!='0.00' && (couponData.use.is_cash=='1' || couponData.use.is_cash) && couponData.discount}}" class="discountInfo">{{couponData.discount}}折</text> | ||
| 231 | + </view> | ||
| 232 | + <view class="certificateInfo"> | ||
| 233 | + <view class="preferentialDetails"> | ||
| 234 | + <view class="information"> | ||
| 235 | + <text class="discountText font20r">{{couponData.use.is_cash=='1'?'代金券':couponData.use.is_discount=='1'?'超值折扣':couponData.use.is_dish=='1'?'特惠菜品':''}}</text> | ||
| 236 | + <text class="ticketName font24r">{{couponData.aname}}</text> | ||
| 237 | + </view> | ||
| 238 | + <text wx:if="{{couponData.exp_date.is_week=='1' || couponData.exp_date.is_week===true}}" class="limitation font24r">{{couponData.exp_date.week_show?couponData.exp_date.week_show+'可用':''}}</text> | ||
| 239 | + <view wx:if="{{couponData.exp_date.is_none=='1' || couponData.exp_date.is_none===true}}" class="limitation font24r"> | ||
| 240 | + 无限制 | ||
| 241 | + </view> | ||
| 242 | + <view wx:if="{{couponData.exp_date.is_birthday=='1' || couponData.exp_date.is_birthday===true}}" class="limitation font24r"> | ||
| 243 | + 会员生日当天可用 | ||
| 244 | + </view> | ||
| 245 | + <view wx:if="{{couponData.desc}}" class="limitation showDesc"> | ||
| 246 | + <text class="font24r">消费要求</text> | ||
| 247 | + <image src="https://qn.colorcun.com/invitation10Sicon.png" mode="" /> | ||
| 248 | + </view> | ||
| 249 | + </view> | ||
| 250 | + <view class="limitationBtn"> | ||
| 251 | + <view class="font24r couponBtn">立即领取</view> | ||
| 252 | + </view> | ||
| 253 | + </view> | ||
| 254 | + </view> | ||
| 255 | + <view wx:if="{{couponData.desc}}" class="bottomLimitation limitation font24r"><text></text>{{couponData.desc}}</view> | ||
| 256 | + </view> | ||
| 257 | + </view> | ||
| 258 | + <!-- 评价没有券 --> | ||
| 259 | + <view class="publicModule evaluateCoupon" slot="modalContent" wx:if="{{is_comments=='1' && (marketing.is_comments_coupon!='1' || couponData.showCoupon!='1')}}"> | ||
| 260 | + <view class="preferentialItems" bindtap="evaluateFun"> | ||
| 261 | + <image class="evaluateImg" src="https://qn.colorcun.com/invitation10Union.png" mode="" /> | ||
| 262 | + <view class="evaluateText"> | ||
| 263 | + <text>期待您的声音</text> | ||
| 264 | + <text>帮助我们持续改进</text> | ||
| 265 | + </view> | ||
| 266 | + <view class="font24r couponBtn">去评价</view> | ||
| 267 | + </view> | ||
| 268 | + </view> | ||
| 269 | + </block> | ||
| 270 | + <block wx:if="{{modalType == '5'}}"> | ||
| 271 | + <view class="publicModule" slot="modalContent" wx:if="{{store.textInfo || store.videoImgsInfo.length>0}}"> | ||
| 272 | + <block wx:if="{{bookType == '1'}}"> | ||
| 273 | + <view class="labelBox" wx:if="{{store.introduce && store.is_introduce == '1'}}"> | ||
| 274 | + <text space="nbsp" class="texts font28r">{{store.introduce}}</text> | ||
| 275 | + </view> | ||
| 276 | + <block wx:if="{{store.images.length>0 && (!store.is_images || store.is_images!='0')}}"> | ||
| 277 | + <block wx:for="{{store.images}}" wx:key="arryIndex" wx:for-index="arryIndex"> | ||
| 278 | + <image src="{{item}}" bindtap="lookImgs" data-url="{{item}}" data-imgs="{{store.images}}" mode="widthFix" /> | ||
| 279 | + </block> | ||
| 280 | + </block> | ||
| 281 | + <view class="labelBox" wx:if="{{store.content && store.content.length>0}}"> | ||
| 282 | + <block wx:for="{{store.content}}"> | ||
| 283 | + <image wx:if="{{item.type == '1'}}" bindtap="lookImgs" src="{{item.content}}" data-url="{{item.content}}" mode="widthFix" /> | ||
| 284 | + <text wx:if="{{item.type == '2'}}" space="nbsp" class="texts font28r">{{item.content}}</text> | ||
| 285 | + <view wx:if="{{item.type == '3'}}" class="videoBox"> | ||
| 286 | + <video object-fit="contain" autoplay="{{true}}" loop="{{true}}" muted="{{true}}" show-mute-btn="{{true}}" vslide-gesture-in-fullscreen="{{true}}" src="{{item.content}}"></video> | ||
| 287 | + </view> | ||
| 288 | + </block> | ||
| 289 | + </view> | ||
| 290 | + </block> | ||
| 291 | + <block wx:if="{{bookType == '2'}}"> | ||
| 292 | + <view class="labelBox" wx:if="{{store.textInfo}}"> | ||
| 293 | + <text class="texts font28r" space="nbsp">{{store.textInfo}}</text> | ||
| 294 | + </view> | ||
| 295 | + <swiper wx:if="{{store.videoImgsInfo.length>0}}" class="detailBanner" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}" circular="{{true}}" indicator-color="lightgray" indicator-active-color="#fff"> | ||
| 296 | + <swiper-item wx:for="{{store.videoImgsInfo}}" wx:key="index"> | ||
| 297 | + <video wx:if="{{item.type=='3'}}" class='boxBlock' id="video" src="{{item.content}}" show-center-play-btn="{{true}}" autoplay='{{false}}' object-fit="cover" controls="{{true}}"></video> | ||
| 298 | + <image wx:if="{{item.type=='1'}}" mode="" class="detailBannerImg" src="{{item.content}}" bindtap="previewImage" data-url="{{item.content}}" data-imgs="{{store.imgsInfo}}"></image> | ||
| 299 | + </swiper-item> | ||
| 300 | + </swiper> | ||
| 301 | + </block> | ||
| 302 | + </view> | ||
| 303 | + </block> | ||
| 304 | + <block wx:if="{{modalType == '6'}}"> | ||
| 305 | + <view class="publicModule" slot="modalContent" wx:if="{{signboard && (signboard.textInfo || signboard.videoImgsInfo.length>0)}}"> | ||
| 306 | + <block wx:if="{{bookType == '1'}}"> | ||
| 307 | + <block wx:for="{{signboard.images}}" wx:key="arryIndex" wx:for-index="arryIndex"> | ||
| 308 | + <image src="{{item}}" bindtap="lookImgs" data-url="{{item}}" data-imgs="{{signboard.images}}" mode="widthFix" /> | ||
| 309 | + </block> | ||
| 310 | + <view class="labelBox" wx:if="{{signboard.content && signboard.content.length>0}}"> | ||
| 311 | + <block wx:for="{{signboard.content}}"> | ||
| 312 | + <image wx:if="{{item.type == '1'}}" bindtap="lookImgs" src="{{item.content}}" data-url="{{item.content}}" mode="widthFix" /> | ||
| 313 | + <text wx:if="{{item.type == '2'}}" space="nbsp" class="texts font28r">{{item.content}}</text> | ||
| 314 | + <view wx:if="{{item.type == '3'}}" class="videoBox"> | ||
| 315 | + <video object-fit="contain" autoplay="{{true}}" loop="{{true}}" muted="{{true}}" show-mute-btn="{{true}}" vslide-gesture-in-fullscreen="{{true}}" src="{{item.content}}"></video> | ||
| 316 | + </view> | ||
| 317 | + </block> | ||
| 318 | + </view> | ||
| 319 | + </block> | ||
| 320 | + <block wx:if="{{bookType == '2'}}"> | ||
| 321 | + <view class="labelBox" wx:if="{{signboard.textInfo}}"> | ||
| 322 | + <text class="texts font28r" space="nbsp">{{signboard.textInfo}}</text> | ||
| 323 | + </view> | ||
| 324 | + <swiper wx:if="{{signboard.videoImgsInfo.length>0}}" class="detailBanner" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}" circular="{{true}}" indicator-color="lightgray" indicator-active-color="#fff"> | ||
| 325 | + <swiper-item wx:for="{{signboard.videoImgsInfo}}" wx:key="index"> | ||
| 326 | + <video wx:if="{{item.type=='3'}}" class='boxBlock' id="video" src="{{item.content}}" show-center-play-btn="{{true}}" autoplay='{{false}}' object-fit="cover" controls="{{true}}"></video> | ||
| 327 | + <image wx:if="{{item.type=='1'}}" mode="" class="detailBannerImg" src="{{item.content}}" bindtap="previewImage" data-url="{{item.content}}" data-imgs="{{signboard.imgsInfo}}"></image> | ||
| 328 | + </swiper-item> | ||
| 329 | + </swiper> | ||
| 330 | + </block> | ||
| 331 | + <view class="orderBox" wx:if="{{hasValueOrder && openOrder == '1' && marketing.is_order=='1'}}"> | ||
| 332 | + <view class="font32r">提前点餐 到店不用等</view> | ||
| 333 | + <view wx:if="{{openOrder == '1' && marketing.is_order == '1'}}" bindtap="cookbook" class="font28r cook" style="position: relative;"> | ||
| 334 | + 去点餐 | ||
| 335 | + </view> | ||
| 336 | + </view> | ||
| 337 | + </view> | ||
| 338 | + </block> | ||
| 339 | + <block wx:if="{{modalType == '7'}}"> | ||
| 340 | + <view class="publicModule" slot="modalContent" wx:if="{{reserve && (reserve.textInfo || reserve.videoImgsInfo.length>0)}}"> | ||
| 341 | + <block wx:if="{{bookType == '1'}}"> | ||
| 342 | + <view class="labelBox" wx:if="{{reserve.park_info}}"> | ||
| 343 | + <text class="texts" space="nbsp">{{reserve.park_info}}</text> | ||
| 344 | + </view> | ||
| 345 | + <block wx:for="{{reserve.park_info_images}}" wx:key="arryIndex" wx:for-index="arryIndex"> | ||
| 346 | + <image src="{{item}}" bindtap="lookImgs" data-url="{{item}}" data-imgs="{{reserve.park_info_images}}" mode="widthFix" /> | ||
| 347 | + </block> | ||
| 348 | + <view class="labelBox" wx:if="{{reserve.content && reserve.content.length>0}}"> | ||
| 349 | + <block wx:for="{{reserve.content}}"> | ||
| 350 | + <image wx:if="{{item.type == '1'}}" bindtap="lookImgs" src="{{item.content}}" data-url="{{item.content}}" mode="widthFix" /> | ||
| 351 | + <text wx:if="{{item.type == '2'}}" space="nbsp" class="texts font28r">{{item.content}}</text> | ||
| 352 | + <view wx:if="{{item.type == '3'}}" class="videoBox"> | ||
| 353 | + <video object-fit="contain" autoplay="{{true}}" loop="{{true}}" muted="{{true}}" show-mute-btn="{{true}}" vslide-gesture-in-fullscreen="{{true}}" src="{{item.content}}"></video> | ||
| 354 | + </view> | ||
| 355 | + </block> | ||
| 356 | + </view> | ||
| 357 | + </block> | ||
| 358 | + <block wx:if="{{bookType == '2'}}"> | ||
| 359 | + <view class="labelBox" wx:if="{{store.textInfo}}"> | ||
| 360 | + <text class="texts font28r" space="nbsp">{{store.textInfo}}</text> | ||
| 361 | + </view> | ||
| 362 | + <swiper wx:if="{{store.videoImgsInfo.length>0}}" class="detailBanner" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}" circular="{{true}}" indicator-color="lightgray" indicator-active-color="#fff"> | ||
| 363 | + <swiper-item wx:for="{{store.videoImgsInfo}}" wx:key="index"> | ||
| 364 | + <video wx:if="{{item.type=='3'}}" class='boxBlock' id="video" src="{{item.content}}" show-center-play-btn="{{true}}" autoplay='{{false}}' object-fit="cover" controls="{{true}}"></video> | ||
| 365 | + <image wx:if="{{item.type=='1'}}" mode="" class="detailBannerImg" src="{{item.content}}" bindtap="previewImage" data-url="{{item.content}}" data-imgs="{{store.imgsInfo}}"></image> | ||
| 366 | + </swiper-item> | ||
| 367 | + </swiper> | ||
| 368 | + </block> | ||
| 369 | + </view> | ||
| 370 | + </block> | ||
| 371 | + <block wx:if="{{modalType == '8'}}"> | ||
| 372 | + <view class="publicModule" slot="modalContent" wx:if="{{chef && (chef.textInfo || chef.videoImgsInfo.length>0)}}"> | ||
| 373 | + <block wx:if="{{bookType == '1'}}"> | ||
| 374 | + <view class="labelBox" wx:if="{{(chef.introduce && (!chef.is_introduce || chef.is_introduce!='0'))}}"> | ||
| 375 | + <text class="texts" space="nbsp">{{chef.introduce}}</text> | ||
| 376 | + </view> | ||
| 377 | + <image wx:if="{{(!chef.is_images || chef.is_images!='0') && chef.image}}" src="{{chef.image}}" bindtap="lookImgs" data-url="{{chef.image}}" mode="widthFix" /> | ||
| 378 | + <view class="labelBox" wx:if="{{chef.content && chef.content.length>0}}"> | ||
| 379 | + <block wx:for="{{chef.content}}"> | ||
| 380 | + <image wx:if="{{item.type == '1'}}" bindtap="lookImgs" src="{{item.content}}" data-url="{{item.content}}" mode="widthFix" /> | ||
| 381 | + <text wx:if="{{item.type == '2'}}" space="nbsp" class="texts font28r">{{item.content}}</text> | ||
| 382 | + <view wx:if="{{item.type == '3'}}" class="videoBox"> | ||
| 383 | + <video object-fit="contain" autoplay="{{true}}" loop="{{true}}" muted="{{true}}" show-mute-btn="{{true}}" vslide-gesture-in-fullscreen="{{true}}" src="{{item.content}}"></video> | ||
| 384 | + </view> | ||
| 385 | + </block> | ||
| 386 | + </view> | ||
| 387 | + </block> | ||
| 388 | + <block wx:if="{{bookType == '2'}}"> | ||
| 389 | + <view class="labelBox" wx:if="{{chef.textInfo}}"> | ||
| 390 | + <text class="texts font28r" space="nbsp">{{chef.textInfo}}</text> | ||
| 391 | + </view> | ||
| 392 | + <swiper wx:if="{{chef.videoImgsInfo.length>0}}" class="detailBanner" indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}" circular="{{true}}" indicator-color="lightgray" indicator-active-color="#fff"> | ||
| 393 | + <swiper-item wx:for="{{chef.videoImgsInfo}}" wx:key="index"> | ||
| 394 | + <video wx:if="{{item.type=='3'}}" class='boxBlock' id="video" src="{{item.content}}" show-center-play-btn="{{true}}" autoplay='{{false}}' object-fit="cover" controls="{{true}}"></video> | ||
| 395 | + <image wx:if="{{item.type=='1'}}" mode="" class="detailBannerImg" src="{{item.content}}" bindtap="previewImage" data-url="{{item.content}}" data-imgs="{{chef.imgsInfo}}"></image> | ||
| 396 | + </swiper-item> | ||
| 397 | + </swiper> | ||
| 398 | + </block> | ||
| 399 | + </view> | ||
| 400 | + </block> | ||
| 401 | +</my-modal> | ||
| 402 | +<painter palette="{{wxml}}" style="position: absolute; top: -9999rpx;" bind:imgOK="onImgOK" /> | ||
| 403 | +<my-modal id="payModal" fadeStyle="slideUp" height="240px"> | ||
| 404 | + <view slot="modalName" class="titleModal"> | ||
| 405 | + <text>提示</text> | ||
| 406 | + <image src="https://qn.colorcun.com/invitation13Icons.png" mode="" /> | ||
| 407 | + </view> | ||
| 408 | + <view slot="modalContent"> | ||
| 409 | + <view class="explain"> | ||
| 410 | + 检测到您正在截屏,建议直接把邀请函转发给朋友更有仪式感哦! | ||
| 411 | + </view> | ||
| 412 | + <view class="screenshotBtns"> | ||
| 413 | + <button class="font32r btnsLeft" bindtap="closeModal">关闭弹窗</button> | ||
| 414 | + <button wx:if="{{detail.status !='4' && options.isOrder != '1' && marketing.is_transpond=='1' && imgSrc}}" class="flex-cc font30r btnsRight" open-type="share">立即转发</button> | ||
| 415 | + </view> | ||
| 416 | + </view> | ||
| 417 | +</my-modal> |
| 1 | +/* pack-invitation/pages/detail_owner_invitation12.wxss */ | ||
| 2 | +@import "../../pages/tpl/tpls.wxss"; | ||
| 3 | + | ||
| 4 | +@font-face { | ||
| 5 | + font-family: 'Abel'; | ||
| 6 | + font-style: normal; | ||
| 7 | + font-weight: 400; | ||
| 8 | + src: url(https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE2V9BPQ.woff2) format('woff2'); | ||
| 9 | + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; | ||
| 10 | +} | ||
| 11 | + | ||
| 12 | +.viewBox1 .reservationInfo { | ||
| 13 | + background: url('https://qn.colorcun.com/invitation13Bj1.png') no-repeat; | ||
| 14 | + padding: 460rpx 20rpx 24rpx; | ||
| 15 | + box-sizing: border-box; | ||
| 16 | + position: relative; | ||
| 17 | + color: #000; | ||
| 18 | + background-size: cover; | ||
| 19 | +} | ||
| 20 | + | ||
| 21 | +.infoTop { | ||
| 22 | + color: #D2541C; | ||
| 23 | + font-weight: 600; | ||
| 24 | + font-family: PingFang SC; | ||
| 25 | + margin-bottom: 32rpx; | ||
| 26 | + display: flex; | ||
| 27 | + flex-direction: column; | ||
| 28 | + align-items: center; | ||
| 29 | +} | ||
| 30 | + | ||
| 31 | +.infoTop .infoTopText3 { | ||
| 32 | + margin-top: 14rpx; | ||
| 33 | + margin: 16rpx 0 32rpx 0; | ||
| 34 | +} | ||
| 35 | + | ||
| 36 | +.infoTopBj2 { | ||
| 37 | + width: 100%; | ||
| 38 | + height: 36rpx; | ||
| 39 | +} | ||
| 40 | + | ||
| 41 | +.informationBox { | ||
| 42 | + border-radius: 10rpx; | ||
| 43 | + background: rgba(255, 255, 255, 0.85); | ||
| 44 | + padding: 40rpx; | ||
| 45 | +} | ||
| 46 | + | ||
| 47 | +.infoItem { | ||
| 48 | + display: flex; | ||
| 49 | + display: flex; | ||
| 50 | + line-height: 70rpx; | ||
| 51 | + font-family: PingFang SC; | ||
| 52 | + align-items: baseline; | ||
| 53 | +} | ||
| 54 | + | ||
| 55 | +.addressInfo, | ||
| 56 | +.addressInfo .arrivalBox { | ||
| 57 | + align-items: baseline; | ||
| 58 | +} | ||
| 59 | + | ||
| 60 | +.infoItem .record { | ||
| 61 | + font-weight: 400; | ||
| 62 | + flex-shrink: 0; | ||
| 63 | + font-family: PingFang SC; | ||
| 64 | + color: #000; | ||
| 65 | +} | ||
| 66 | + | ||
| 67 | +.positioning { | ||
| 68 | + display: block; | ||
| 69 | + font-size: 24rpx; | ||
| 70 | + height: 50rpx; | ||
| 71 | + padding: 0 34rpx; | ||
| 72 | + line-height: 48rpx; | ||
| 73 | + font-family: PingFang SC; | ||
| 74 | + border-radius: 40rpx; | ||
| 75 | + background: transparent; | ||
| 76 | + color: #000; | ||
| 77 | + background: #E8CEA8; | ||
| 78 | +} | ||
| 79 | + | ||
| 80 | +.addressImg { | ||
| 81 | + width: 16rpx; | ||
| 82 | + height: 16rpx; | ||
| 83 | +} | ||
| 84 | + | ||
| 85 | +.contentData { | ||
| 86 | + flex: 1; | ||
| 87 | + line-height: 60rpx; | ||
| 88 | + font-family: PingFang SC; | ||
| 89 | + margin-left: 24rpx; | ||
| 90 | + font-weight: 600; | ||
| 91 | + color: #D2541C; | ||
| 92 | +} | ||
| 93 | + | ||
| 94 | +.contentDataPhone { | ||
| 95 | + color: #D2541C; | ||
| 96 | + text-decoration-line: underline; | ||
| 97 | +} | ||
| 98 | + | ||
| 99 | +.divider { | ||
| 100 | + color: #D2541C; | ||
| 101 | + margin: 0 10rpx; | ||
| 102 | +} | ||
| 103 | + | ||
| 104 | +.bookData { | ||
| 105 | + margin-left: 0; | ||
| 106 | + font-weight: 400; | ||
| 107 | +} | ||
| 108 | + | ||
| 109 | +.marLeft { | ||
| 110 | + margin-left: 10rpx; | ||
| 111 | +} | ||
| 112 | + | ||
| 113 | +.receptionBox { | ||
| 114 | + margin: 0 20rpx; | ||
| 115 | + display: flex; | ||
| 116 | + align-items: center; | ||
| 117 | + border-radius: 10rpx; | ||
| 118 | + background: #fff; | ||
| 119 | + box-shadow: 0rpx 4rpx 8rpx #00000040; | ||
| 120 | + color: #000; | ||
| 121 | + padding: 56rpx 58rpx 60rpx 72rpx; | ||
| 122 | +} | ||
| 123 | + | ||
| 124 | +.headerimg { | ||
| 125 | + width: 108rpx; | ||
| 126 | + height: 108rpx; | ||
| 127 | + border-radius: 50%; | ||
| 128 | +} | ||
| 129 | + | ||
| 130 | +.peopleInfo { | ||
| 131 | + display: flex; | ||
| 132 | + flex-direction: column; | ||
| 133 | + align-items: center; | ||
| 134 | +} | ||
| 135 | + | ||
| 136 | +.peopleInfo view:nth-of-type(1) { | ||
| 137 | + margin-top: 10rpx; | ||
| 138 | +} | ||
| 139 | + | ||
| 140 | +.peopleInfo view { | ||
| 141 | + font-family: "PingFang SC"; | ||
| 142 | + font-weight: 400; | ||
| 143 | +} | ||
| 144 | + | ||
| 145 | +.handleInfo { | ||
| 146 | + margin-left: 42rpx; | ||
| 147 | + font-family: "PingFang SC"; | ||
| 148 | + font-weight: 400; | ||
| 149 | +} | ||
| 150 | + | ||
| 151 | +.handleInfo view { | ||
| 152 | + font-weight: 400; | ||
| 153 | + letter-spacing: 10rpx; | ||
| 154 | +} | ||
| 155 | + | ||
| 156 | +.handleInfo view:nth-of-type(1) { | ||
| 157 | + font-weight: 600; | ||
| 158 | +} | ||
| 159 | + | ||
| 160 | +.handleInfo .texts { | ||
| 161 | + margin: 22rpx 0; | ||
| 162 | + letter-spacing: 3rpx; | ||
| 163 | + line-height: 36rpx | ||
| 164 | +} | ||
| 165 | + | ||
| 166 | +.contactBtns { | ||
| 167 | + display: flex; | ||
| 168 | + justify-content: space-between; | ||
| 169 | +} | ||
| 170 | + | ||
| 171 | +.brownFont { | ||
| 172 | + width: 46%; | ||
| 173 | + background: #E8CEA8; | ||
| 174 | + color: #000; | ||
| 175 | + padding: 10rpx 0; | ||
| 176 | + border-radius: 22rpx; | ||
| 177 | + display: flex; | ||
| 178 | + align-items: center; | ||
| 179 | + justify-content: center; | ||
| 180 | + box-shadow: 0rpx 4rpx 8rpx #00000040; | ||
| 181 | +} | ||
| 182 | + | ||
| 183 | +.brownFont image { | ||
| 184 | + width: 24rpx; | ||
| 185 | + height: 24rpx; | ||
| 186 | + margin-right: 10rpx; | ||
| 187 | +} | ||
| 188 | + | ||
| 189 | +.entrance { | ||
| 190 | + background: #fff; | ||
| 191 | + display: flex; | ||
| 192 | + flex-wrap: wrap; | ||
| 193 | + align-items: center; | ||
| 194 | + padding: 20rpx 0; | ||
| 195 | + margin: 24rpx 20rpx 0 20rpx; | ||
| 196 | + border-radius: 10rpx; | ||
| 197 | +} | ||
| 198 | + | ||
| 199 | +.entrance image { | ||
| 200 | + width: 64rpx; | ||
| 201 | + height: 64rpx; | ||
| 202 | + margin-bottom: 10rpx; | ||
| 203 | +} | ||
| 204 | + | ||
| 205 | +.entranceItem { | ||
| 206 | + width: 25%; | ||
| 207 | + display: flex; | ||
| 208 | + align-items: center; | ||
| 209 | + flex-direction: column; | ||
| 210 | + justify-content: center; | ||
| 211 | +} | ||
| 212 | + | ||
| 213 | +.entranceItem view { | ||
| 214 | + font-weight: 600; | ||
| 215 | +} | ||
| 216 | + | ||
| 217 | +.entranceItem:nth-of-type(1) { | ||
| 218 | + padding-bottom: 60rpx; | ||
| 219 | +} | ||
| 220 | + | ||
| 221 | +.entranceItem:nth-of-type(2) { | ||
| 222 | + padding-bottom: 60rpx; | ||
| 223 | +} | ||
| 224 | + | ||
| 225 | +.entranceItem:nth-of-type(3) { | ||
| 226 | + padding-bottom: 60rpx; | ||
| 227 | +} | ||
| 228 | + | ||
| 229 | +.entranceItem:nth-of-type(4) { | ||
| 230 | + padding-bottom: 60rpx; | ||
| 231 | +} | ||
| 232 | + | ||
| 233 | +.tileBox { | ||
| 234 | + display: flex; | ||
| 235 | + align-items: center; | ||
| 236 | + justify-content: space-evenly; | ||
| 237 | + width: 100%; | ||
| 238 | + padding: 40rpx 0 32rpx 0; | ||
| 239 | +} | ||
| 240 | + | ||
| 241 | +.titleItem { | ||
| 242 | + font-weight: 400; | ||
| 243 | + background: #FFEFD6; | ||
| 244 | + color: #000; | ||
| 245 | + padding: 10rpx 16rpx; | ||
| 246 | +} | ||
| 247 | + | ||
| 248 | +.activeTitleItem::after { | ||
| 249 | + content: ""; | ||
| 250 | + position: absolute; | ||
| 251 | + bottom: -30%; | ||
| 252 | + left: 50%; | ||
| 253 | + transform: translateX(-50%); | ||
| 254 | + width: 0; | ||
| 255 | + height: 0; | ||
| 256 | + border-left: 20rpx solid transparent; | ||
| 257 | + border-right: 20rpx solid transparent; | ||
| 258 | + border-top: 20rpx solid #ae2d2d; | ||
| 259 | +} | ||
| 260 | + | ||
| 261 | +.activeTitleItem { | ||
| 262 | + position: relative; | ||
| 263 | + background: #ae2d2d; | ||
| 264 | + color: #fff; | ||
| 265 | +} | ||
| 266 | + | ||
| 267 | +.publicModule { | ||
| 268 | + background: #fff; | ||
| 269 | + border-radius: 20rpx 20rpx 0rpx 0rpx; | ||
| 270 | + display: flex; | ||
| 271 | + align-items: center; | ||
| 272 | + flex-direction: column; | ||
| 273 | +} | ||
| 274 | + | ||
| 275 | +.publicModule image, | ||
| 276 | +.publicModule video { | ||
| 277 | + width: 100%; | ||
| 278 | + margin-bottom: 20rpx; | ||
| 279 | + border-radius: 10rpx; | ||
| 280 | +} | ||
| 281 | + | ||
| 282 | +.chefText { | ||
| 283 | + width: 100%; | ||
| 284 | + display: flex; | ||
| 285 | + justify-content: space-between; | ||
| 286 | + align-items: center; | ||
| 287 | +} | ||
| 288 | + | ||
| 289 | +.chefText .line { | ||
| 290 | + min-width: 35%; | ||
| 291 | + height: 2rpx; | ||
| 292 | + background: #AE2D2D; | ||
| 293 | +} | ||
| 294 | + | ||
| 295 | +.chefTextInfo { | ||
| 296 | + font-family: PingFang SC; | ||
| 297 | + font-weight: 400; | ||
| 298 | + letter-spacing: 8rpx; | ||
| 299 | + color: #AE2D2D; | ||
| 300 | +} | ||
| 301 | + | ||
| 302 | +.preferentialCoupon { | ||
| 303 | + padding: 0; | ||
| 304 | +} | ||
| 305 | + | ||
| 306 | +.preferentialCoupon navigator { | ||
| 307 | + width: 100%; | ||
| 308 | +} | ||
| 309 | + | ||
| 310 | +.preferentialCoupon .limitation { | ||
| 311 | + color: #000; | ||
| 312 | +} | ||
| 313 | + | ||
| 314 | +.regionItem { | ||
| 315 | + width: 100%; | ||
| 316 | + padding: 0; | ||
| 317 | + box-sizing: border-box; | ||
| 318 | +} | ||
| 319 | + | ||
| 320 | +.preferentialItems { | ||
| 321 | + width: 100%; | ||
| 322 | + display: flex; | ||
| 323 | + min-height: 160rpx; | ||
| 324 | +} | ||
| 325 | + | ||
| 326 | +.evaluateTitleText { | ||
| 327 | + font-weight: 600; | ||
| 328 | + font-family: PingFang SC; | ||
| 329 | + margin-bottom: 20rpx; | ||
| 330 | + text-align: center; | ||
| 331 | +} | ||
| 332 | + | ||
| 333 | +.purchase { | ||
| 334 | + position: relative; | ||
| 335 | + width: 30%; | ||
| 336 | + display: flex; | ||
| 337 | + flex-direction: column; | ||
| 338 | + justify-content: center; | ||
| 339 | + align-items: center; | ||
| 340 | + background: #D2541C; | ||
| 341 | + border-radius: 10rpx; | ||
| 342 | +} | ||
| 343 | + | ||
| 344 | +.discountText { | ||
| 345 | + text-align: center; | ||
| 346 | + color: #FFEFC5; | ||
| 347 | + border-radius: 6rpx; | ||
| 348 | + font-family: PingFang SC; | ||
| 349 | + background: #FD4D59; | ||
| 350 | + width: max-content; | ||
| 351 | + padding: 6rpx; | ||
| 352 | + margin-right: 8rpx; | ||
| 353 | +} | ||
| 354 | + | ||
| 355 | +.priceText { | ||
| 356 | + font-family: PingFang SC; | ||
| 357 | + color: #fff; | ||
| 358 | + font-weight: 500; | ||
| 359 | + margin-top: 6rpx; | ||
| 360 | + display: flex; | ||
| 361 | + align-items: center; | ||
| 362 | + justify-content: center; | ||
| 363 | + font-size: 52rpx; | ||
| 364 | + flex-direction: column; | ||
| 365 | +} | ||
| 366 | + | ||
| 367 | +.priceText .icons { | ||
| 368 | + font-family: PingFang SC; | ||
| 369 | + color: #fff; | ||
| 370 | + font-size: 20rpx; | ||
| 371 | + display: flex; | ||
| 372 | + align-items: baseline; | ||
| 373 | +} | ||
| 374 | + | ||
| 375 | +.certificateInfo { | ||
| 376 | + width: 70%; | ||
| 377 | + padding: 20rpx; | ||
| 378 | + position: relative; | ||
| 379 | + border-radius: 10rpx; | ||
| 380 | + display: flex; | ||
| 381 | + background: #fff; | ||
| 382 | + align-items: center; | ||
| 383 | +} | ||
| 384 | + | ||
| 385 | +.certificateInfo .limitation { | ||
| 386 | + line-height: 40rpx; | ||
| 387 | +} | ||
| 388 | + | ||
| 389 | +.ticketName { | ||
| 390 | + display: flex; | ||
| 391 | + justify-content: space-between; | ||
| 392 | + align-items: baseline; | ||
| 393 | + font-weight: 700; | ||
| 394 | + overflow: hidden; | ||
| 395 | + word-break: break-all; | ||
| 396 | + text-overflow: ellipsis; | ||
| 397 | + display: -webkit-box; | ||
| 398 | + -webkit-box-orient: vertical; | ||
| 399 | + -webkit-line-clamp: 1; | ||
| 400 | +} | ||
| 401 | + | ||
| 402 | +.orderingFood { | ||
| 403 | + padding: 0 20rpx; | ||
| 404 | + border-radius: 22rpx; | ||
| 405 | + text-align: center; | ||
| 406 | + color: #000; | ||
| 407 | + border-radius: 20rpx; | ||
| 408 | + line-height: 44rpx; | ||
| 409 | + height: 44rpx; | ||
| 410 | + background: #fff; | ||
| 411 | + border: 2rpx solid #fff; | ||
| 412 | + width: max-content; | ||
| 413 | + margin-top: 24rpx; | ||
| 414 | + flex-shrink: 0; | ||
| 415 | +} | ||
| 416 | + | ||
| 417 | +.limitation { | ||
| 418 | + margin-top: 10rpx; | ||
| 419 | + color: #666; | ||
| 420 | + font-family: PingFang SC; | ||
| 421 | + font-weight: 500; | ||
| 422 | + display: -webkit-box; | ||
| 423 | + word-break: break-all; | ||
| 424 | + word-wrap: break-word; | ||
| 425 | + overflow: hidden; | ||
| 426 | + text-align: left; | ||
| 427 | + line-height: 30rpx; | ||
| 428 | +} | ||
| 429 | + | ||
| 430 | +.regionItem .limitation { | ||
| 431 | + display: flex; | ||
| 432 | + flex-direction: column; | ||
| 433 | +} | ||
| 434 | + | ||
| 435 | +.limitationTitle { | ||
| 436 | + font-weight: 400; | ||
| 437 | + line-height: 28rpx; | ||
| 438 | + color: #000; | ||
| 439 | + line-height: 40rpx; | ||
| 440 | + margin: 40rpx 0 20rpx 0; | ||
| 441 | +} | ||
| 442 | + | ||
| 443 | +.certificateBox .limitationTitle { | ||
| 444 | + text-align: center; | ||
| 445 | + margin-top: 0; | ||
| 446 | +} | ||
| 447 | + | ||
| 448 | +.rechargeItems { | ||
| 449 | + display: flex; | ||
| 450 | + min-height: 160rpx; | ||
| 451 | + border-radius: 20rpx; | ||
| 452 | + border: 2rpx dashed #000000; | ||
| 453 | + position: relative; | ||
| 454 | + padding: 20rpx 40rpx; | ||
| 455 | + flex-direction: column; | ||
| 456 | + justify-content: center; | ||
| 457 | + background: #fff1e6; | ||
| 458 | +} | ||
| 459 | + | ||
| 460 | +.checkImg { | ||
| 461 | + position: absolute; | ||
| 462 | + top: 20rpx; | ||
| 463 | + right: 20rpx; | ||
| 464 | + width: 32rpx !important; | ||
| 465 | + height: 32rpx; | ||
| 466 | +} | ||
| 467 | + | ||
| 468 | +.rechargeTitle { | ||
| 469 | + font-family: PingFang SC; | ||
| 470 | + font-weight: 700; | ||
| 471 | + letter-spacing: 4rpx; | ||
| 472 | +} | ||
| 473 | + | ||
| 474 | +.couponBtn { | ||
| 475 | + padding: 6rpx 0; | ||
| 476 | + border-radius: 42rpx; | ||
| 477 | + text-align: center; | ||
| 478 | + margin-top: 24rpx; | ||
| 479 | + width: 100%; | ||
| 480 | + height: fit-content; | ||
| 481 | + background: #CC9B6A; | ||
| 482 | + color: #fff; | ||
| 483 | +} | ||
| 484 | + | ||
| 485 | +.favouredPolicy { | ||
| 486 | + width: 45%; | ||
| 487 | + color: #8C8C8C; | ||
| 488 | + font-family: PingFang SC; | ||
| 489 | + font-weight: 500; | ||
| 490 | + border-radius: 22rpx; | ||
| 491 | + text-align: center; | ||
| 492 | + text-decoration-line: underline; | ||
| 493 | + padding: 10rpx; | ||
| 494 | +} | ||
| 495 | + | ||
| 496 | +.rechargeBtn { | ||
| 497 | + display: flex; | ||
| 498 | + align-items: center; | ||
| 499 | + justify-content: center; | ||
| 500 | + margin: 24rpx 0; | ||
| 501 | +} | ||
| 502 | + | ||
| 503 | +.rechargeBtn view { | ||
| 504 | + width: 80%; | ||
| 505 | + padding: 12rpx 0; | ||
| 506 | + background: #D2541C; | ||
| 507 | + border-radius: 42rpx; | ||
| 508 | + color: #fff; | ||
| 509 | + text-align: center; | ||
| 510 | +} | ||
| 511 | + | ||
| 512 | + | ||
| 513 | +.couponBox navigator, | ||
| 514 | +.couponBox .couponInfo { | ||
| 515 | + width: 100%; | ||
| 516 | + margin-bottom: 20rpx; | ||
| 517 | + padding-bottom: 10rpx; | ||
| 518 | + border-radius: 10rpx; | ||
| 519 | + background: #FFF1E6; | ||
| 520 | +} | ||
| 521 | + | ||
| 522 | +.couponBox .preferentialItems { | ||
| 523 | + box-shadow: 0rpx 4rpx 8rpx #0000000d; | ||
| 524 | +} | ||
| 525 | + | ||
| 526 | +.couponBox .showDesc { | ||
| 527 | + display: flex; | ||
| 528 | + align-items: center; | ||
| 529 | + color: #666; | ||
| 530 | +} | ||
| 531 | + | ||
| 532 | +.couponBox .showDesc image { | ||
| 533 | + width: 25rpx; | ||
| 534 | + height: 28rpx; | ||
| 535 | + margin-left: 8rpx; | ||
| 536 | +} | ||
| 537 | + | ||
| 538 | +.bottomLimitation { | ||
| 539 | + padding: 20rpx; | ||
| 540 | + display: flex; | ||
| 541 | + align-items: center; | ||
| 542 | + margin-top: 10rpx; | ||
| 543 | + color: #666; | ||
| 544 | + font-family: PingFang SC; | ||
| 545 | + font-weight: 500; | ||
| 546 | +} | ||
| 547 | + | ||
| 548 | +.bottomLimitation text { | ||
| 549 | + display: block; | ||
| 550 | + width: 8rpx; | ||
| 551 | + height: 8rpx; | ||
| 552 | + background: #999999; | ||
| 553 | + margin-right: 12rpx; | ||
| 554 | + border-radius: 50%; | ||
| 555 | +} | ||
| 556 | + | ||
| 557 | +.couponBox .certificateInfo { | ||
| 558 | + flex-direction: row; | ||
| 559 | + background: #FFF1E6; | ||
| 560 | + align-items: center; | ||
| 561 | +} | ||
| 562 | + | ||
| 563 | +.couponBox .couponBtn { | ||
| 564 | + width: 100%; | ||
| 565 | + height: fit-content; | ||
| 566 | + background: #D2541C; | ||
| 567 | + color: #fff; | ||
| 568 | +} | ||
| 569 | + | ||
| 570 | +.couponBox .certificateInfo .preferentialDetails { | ||
| 571 | + width: 100%; | ||
| 572 | + display: flex; | ||
| 573 | + flex-direction: column; | ||
| 574 | +} | ||
| 575 | + | ||
| 576 | + | ||
| 577 | + | ||
| 578 | +.couponBox .information { | ||
| 579 | + display: flex; | ||
| 580 | + align-items: center; | ||
| 581 | +} | ||
| 582 | + | ||
| 583 | +.couponBox .certificateInfo .limitation { | ||
| 584 | + margin-right: 20rpx; | ||
| 585 | + flex: 1; | ||
| 586 | + width: auto; | ||
| 587 | +} | ||
| 588 | + | ||
| 589 | +.couponBox .discountInfo { | ||
| 590 | + font-family: PingFang SC; | ||
| 591 | + background: #FD4D59; | ||
| 592 | + position: absolute; | ||
| 593 | + top: 0; | ||
| 594 | + left: 100rpx; | ||
| 595 | + font-size: 16rpx; | ||
| 596 | + border-radius: 0 0 10rpx 0; | ||
| 597 | + padding: 0 6rpx; | ||
| 598 | + height: 28rp; | ||
| 599 | + line-height: 28rpx; | ||
| 600 | + text-align: center; | ||
| 601 | + color: #FFEFC5; | ||
| 602 | + width: max-content; | ||
| 603 | +} | ||
| 604 | + | ||
| 605 | +.couponBox .certificateImg { | ||
| 606 | + position: absolute; | ||
| 607 | + top: 0; | ||
| 608 | + left: 0; | ||
| 609 | + width: 100rpx; | ||
| 610 | + height: 28rpx; | ||
| 611 | +} | ||
| 612 | + | ||
| 613 | +.couponBox .limitationBtn { | ||
| 614 | + width: 40%; | ||
| 615 | + display: flex; | ||
| 616 | + flex-direction: column; | ||
| 617 | + align-items: center; | ||
| 618 | +} | ||
| 619 | + | ||
| 620 | +.rechargeBtn navigator { | ||
| 621 | + width: 63%; | ||
| 622 | + padding: 12rpx 0; | ||
| 623 | + background: #AE2D2D; | ||
| 624 | + border-radius: 42rpx; | ||
| 625 | + color: #fff; | ||
| 626 | + text-align: center; | ||
| 627 | +} | ||
| 628 | + | ||
| 629 | +.labelBox { | ||
| 630 | + width: 100%; | ||
| 631 | +} | ||
| 632 | + | ||
| 633 | +.labelBox .texts { | ||
| 634 | + line-height: 40rpx; | ||
| 635 | + color: #222; | ||
| 636 | + font-family: PingFang SC; | ||
| 637 | + font-weight: 500; | ||
| 638 | + display: block; | ||
| 639 | + margin-bottom: 20rpx; | ||
| 640 | +} | ||
| 641 | + | ||
| 642 | +.orderBox { | ||
| 643 | + background: #D2541C; | ||
| 644 | + border-radius: 10rpx; | ||
| 645 | + color: #fff; | ||
| 646 | + padding: 26rpx 40rpx; | ||
| 647 | + display: flex; | ||
| 648 | + align-items: center; | ||
| 649 | + justify-content: space-between; | ||
| 650 | + box-sizing: border-box; | ||
| 651 | + width: 100%; | ||
| 652 | + margin-top: 20rpx; | ||
| 653 | +} | ||
| 654 | + | ||
| 655 | +.cook { | ||
| 656 | + border-radius: 24rpx; | ||
| 657 | + background: #fff; | ||
| 658 | + color: #D2541C; | ||
| 659 | + padding: 4rpx 36rpx; | ||
| 660 | +} | ||
| 661 | + | ||
| 662 | +.detailBannerBox { | ||
| 663 | + margin: 0 20rxp 20rpx 20rpx; | ||
| 664 | +} | ||
| 665 | + | ||
| 666 | +.detailBanner { | ||
| 667 | + margin: 0 20rpx 20rpx 20rpx; | ||
| 668 | + height: 500rpx; | ||
| 669 | + background: transparent; | ||
| 670 | +} | ||
| 671 | + | ||
| 672 | +.detailBannerImg { | ||
| 673 | + width: 100%; | ||
| 674 | + height: 100%; | ||
| 675 | + border-radius: 10rpx; | ||
| 676 | +} | ||
| 677 | + | ||
| 678 | +.boxBlock { | ||
| 679 | + width: 100%; | ||
| 680 | + height: 500rpx; | ||
| 681 | +} | ||
| 682 | + | ||
| 683 | +.businessBox { | ||
| 684 | + color: #D2541C; | ||
| 685 | + font-family: PingFang SC; | ||
| 686 | + display: flex; | ||
| 687 | + justify-content: center; | ||
| 688 | + align-items: center; | ||
| 689 | + margin-top: 50rpx; | ||
| 690 | + margin-bottom: 220rpx; | ||
| 691 | +} | ||
| 692 | + | ||
| 693 | +.businessBox text { | ||
| 694 | + text-decoration: underline; | ||
| 695 | +} | ||
| 696 | + | ||
| 697 | +.sharewidth { | ||
| 698 | + position: fixed; | ||
| 699 | + left: 0; | ||
| 700 | + bottom: 0; | ||
| 701 | + height: 160rpx; | ||
| 702 | + padding: 0 40rpx; | ||
| 703 | + box-sizing: border-box; | ||
| 704 | + z-index: 250; | ||
| 705 | + justify-content: space-between; | ||
| 706 | + width: 100%; | ||
| 707 | + background: #fff; | ||
| 708 | +} | ||
| 709 | + | ||
| 710 | +.arrivalBox { | ||
| 711 | + display: flex; | ||
| 712 | + width: 100%; | ||
| 713 | + justify-content: space-between; | ||
| 714 | + align-items: center; | ||
| 715 | +} | ||
| 716 | + | ||
| 717 | +.arrivalBox button { | ||
| 718 | + display: flex; | ||
| 719 | + font-size: 24rpx; | ||
| 720 | + flex-direction: column; | ||
| 721 | + height: 50rpx; | ||
| 722 | + padding: 0 18rpx; | ||
| 723 | + line-height: 48rpx; | ||
| 724 | + font-family: PingFang SC; | ||
| 725 | + border-radius: 40rpx; | ||
| 726 | + background: transparent; | ||
| 727 | + color: #D2541C; | ||
| 728 | + border: 2rpx solid #D2541C; | ||
| 729 | +} | ||
| 730 | + | ||
| 731 | +.shareItem, | ||
| 732 | +.moreBtn, | ||
| 733 | +.paymenBtn { | ||
| 734 | + width: inherit; | ||
| 735 | + background: transparent; | ||
| 736 | + color: #D2541C; | ||
| 737 | + border: 2rpx solid #D2541C; | ||
| 738 | + height: 80rpx; | ||
| 739 | + border-radius: 42rpx; | ||
| 740 | + font-weight: 600; | ||
| 741 | + margin-right: 20rpx; | ||
| 742 | +} | ||
| 743 | + | ||
| 744 | +.threeBtn { | ||
| 745 | + width: auto; | ||
| 746 | + padding: 0 24rpx; | ||
| 747 | + flex-shrink: 0; | ||
| 748 | +} | ||
| 749 | + | ||
| 750 | +.shareItem { | ||
| 751 | + margin-right: 0; | ||
| 752 | + background: #D2541C; | ||
| 753 | + color: #fff; | ||
| 754 | + animation-name: scaleDraw; | ||
| 755 | + animation-timing-function: ease-in-out; | ||
| 756 | + animation-iteration-count: infinite; | ||
| 757 | + animation-duration: 2s; | ||
| 758 | +} | ||
| 759 | + | ||
| 760 | +@keyframes scaleDraw { | ||
| 761 | + 0% { | ||
| 762 | + transform: scale(1); | ||
| 763 | + } | ||
| 764 | + | ||
| 765 | + 25% { | ||
| 766 | + transform: scale(1.1); | ||
| 767 | + } | ||
| 768 | + | ||
| 769 | + 50% { | ||
| 770 | + transform: scale(1); | ||
| 771 | + } | ||
| 772 | + | ||
| 773 | + 75% { | ||
| 774 | + transform: scale(1.1); | ||
| 775 | + } | ||
| 776 | +} | ||
| 777 | + | ||
| 778 | +.more { | ||
| 779 | + height: 80rpx; | ||
| 780 | + width: 100%; | ||
| 781 | + position: fixed; | ||
| 782 | + bottom: 160rpx; | ||
| 783 | + display: flex; | ||
| 784 | + align-items: center; | ||
| 785 | + justify-content: center; | ||
| 786 | + flex-direction: column; | ||
| 787 | + background: rgba(0, 0, 0, .4); | ||
| 788 | +} | ||
| 789 | + | ||
| 790 | +.more1 { | ||
| 791 | + bottom: 40rpx; | ||
| 792 | +} | ||
| 793 | + | ||
| 794 | +.moreText { | ||
| 795 | + color: #fff; | ||
| 796 | +} | ||
| 797 | + | ||
| 798 | +.more image { | ||
| 799 | + width: 30rpx; | ||
| 800 | + height: 30rpx; | ||
| 801 | +} | ||
| 802 | + | ||
| 803 | +.musicImg { | ||
| 804 | + width: 62rpx; | ||
| 805 | + height: 62rpx; | ||
| 806 | + position: fixed !important; | ||
| 807 | + right: 8%; | ||
| 808 | + top: 22%; | ||
| 809 | + z-index: 200; | ||
| 810 | +} | ||
| 811 | + | ||
| 812 | +.giftImg { | ||
| 813 | + width: 108rpx; | ||
| 814 | + height: 108rpx; | ||
| 815 | + position: fixed !important; | ||
| 816 | + right: 5%; | ||
| 817 | + top: 33%; | ||
| 818 | + z-index: 200; | ||
| 819 | +} | ||
| 820 | + | ||
| 821 | +.cannotImg { | ||
| 822 | + width: 200rpx; | ||
| 823 | + height: 66rpx; | ||
| 824 | + transform: rotate(-45deg); | ||
| 825 | + position: fixed; | ||
| 826 | + left: 38%; | ||
| 827 | + z-index: 999; | ||
| 828 | + top: 50%; | ||
| 829 | +} | ||
| 830 | + | ||
| 831 | +#payModal { | ||
| 832 | + display: flex; | ||
| 833 | + align-items: center; | ||
| 834 | +} | ||
| 835 | + | ||
| 836 | +#payModal .titleModal { | ||
| 837 | + width: 100%; | ||
| 838 | + margin-top: 48rpx; | ||
| 839 | + color: #000; | ||
| 840 | + font-family: PingFang SC; | ||
| 841 | + font-weight: 500; | ||
| 842 | + font-size: 44rpx; | ||
| 843 | + text-align: center; | ||
| 844 | +} | ||
| 845 | + | ||
| 846 | +.explain { | ||
| 847 | + padding: 0 40rpx; | ||
| 848 | + font-size: 30rpx; | ||
| 849 | + color: #000; | ||
| 850 | + line-height: 40rpx; | ||
| 851 | + text-align: center; | ||
| 852 | +} | ||
| 853 | + | ||
| 854 | +.screenshotBtns { | ||
| 855 | + width: 100%; | ||
| 856 | + display: flex; | ||
| 857 | + justify-content: space-between; | ||
| 858 | + box-sizing: border-box; | ||
| 859 | + padding: 52rpx 22rpx 0 22rpx; | ||
| 860 | +} | ||
| 861 | + | ||
| 862 | +.btnsLeft { | ||
| 863 | + width: 43%; | ||
| 864 | + border-radius: 42rpx; | ||
| 865 | + background: #fff; | ||
| 866 | + border: 2rpx solid #0346A5; | ||
| 867 | + bottom: 10%; | ||
| 868 | + color: #0346A5; | ||
| 869 | +} | ||
| 870 | + | ||
| 871 | +.btnsRight { | ||
| 872 | + width: 43%; | ||
| 873 | + border-radius: 42rpx; | ||
| 874 | + background: linear-gradient(104.24deg, #4c8dad -57.47%, #0143a3 55.72%, #42a5ff 148.72%); | ||
| 875 | + bottom: 10%; | ||
| 876 | + color: #fff; | ||
| 877 | +} | ||
| 878 | + | ||
| 879 | +#payModal .mymodal { | ||
| 880 | + top: 30% !important; | ||
| 881 | + width: 80% !important; | ||
| 882 | + margin: 0 auto !important; | ||
| 883 | + left: 0 !important; | ||
| 884 | + right: 0 !important; | ||
| 885 | + z-index: 250; | ||
| 886 | +} | ||
| 887 | + | ||
| 888 | +#publicModal .mymodal .mymodal-content { | ||
| 889 | + height: 87% !important; | ||
| 890 | + padding: 20rpx 50rpx 0 44rpx !important; | ||
| 891 | +} | ||
| 892 | + | ||
| 893 | +#publicModal .mask { | ||
| 894 | + height: 80% !important; | ||
| 895 | +} | ||
| 896 | + | ||
| 897 | +#publicModal .titlePublicModal { | ||
| 898 | + color: #D2541C; | ||
| 899 | + font-size: 32rpx; | ||
| 900 | + margin-top: 20rpx; | ||
| 901 | + line-height: 64rpx; | ||
| 902 | + display: flex; | ||
| 903 | + align-items: center; | ||
| 904 | + justify-content: space-between; | ||
| 905 | + width: 100%; | ||
| 906 | +} | ||
| 907 | + | ||
| 908 | +.titlePublicModal view { | ||
| 909 | + text-align: center; | ||
| 910 | + flex: 1; | ||
| 911 | + font-weight: 600; | ||
| 912 | +} | ||
| 913 | + | ||
| 914 | +.titlePublicModal image { | ||
| 915 | + width: 28rpx; | ||
| 916 | + height: 28rpx; | ||
| 917 | + padding: 10rpx; | ||
| 918 | +} | ||
| 919 | + | ||
| 920 | +#publicModal .mymodal { | ||
| 921 | + bottom: 122rpx !important; | ||
| 922 | + width: 100% !important; | ||
| 923 | + margin: 0 auto !important; | ||
| 924 | + left: 0 !important; | ||
| 925 | + right: 0 !important; | ||
| 926 | + z-index: 250; | ||
| 927 | +} | ||
| 928 | + | ||
| 929 | +.viewBox1 { | ||
| 930 | + background: #E4E7E0; | ||
| 931 | +} | ||
| 932 | + | ||
| 933 | +/* 商务宴会 */ | ||
| 934 | +.viewBox2 { | ||
| 935 | + background: #fffef8; | ||
| 936 | +} | ||
| 937 | + | ||
| 938 | +.viewBox2 .reservationInfo { | ||
| 939 | + background: url('https://qn.colorcun.com/invitation14Bj.png') no-repeat; | ||
| 940 | + padding: 220rpx 20rpx 120rpx; | ||
| 941 | + box-sizing: border-box; | ||
| 942 | + position: relative; | ||
| 943 | + color: #000; | ||
| 944 | + background-size: cover; | ||
| 945 | +} | ||
| 946 | + | ||
| 947 | +.viewBox2 .pageSpacing { | ||
| 948 | + position: relative; | ||
| 949 | + display: flex; | ||
| 950 | + justify-content: center; | ||
| 951 | + align-items: center; | ||
| 952 | + white-space: nowrap; | ||
| 953 | + width: auto; | ||
| 954 | + overflow-x: scroll; | ||
| 955 | + border-bottom-left-radius: 10rpx; | ||
| 956 | + border-bottom-right-radius: 10rpx; | ||
| 957 | + padding-top: 30rpx; | ||
| 958 | +} | ||
| 959 | + | ||
| 960 | +.viewBox2 .pageSpacing1 { | ||
| 961 | + position: relative; | ||
| 962 | + display: flex; | ||
| 963 | + white-space: nowrap; | ||
| 964 | + width: auto; | ||
| 965 | + overflow-x: scroll; | ||
| 966 | + border-bottom-left-radius: 10rpx; | ||
| 967 | + border-bottom-right-radius: 10rpx; | ||
| 968 | + padding: 30rpx 0 0 20rpx; | ||
| 969 | +} | ||
| 970 | + | ||
| 971 | +.viewBox2 .imgs { | ||
| 972 | + position: relative; | ||
| 973 | + display: flex; | ||
| 974 | + white-space: nowrap; | ||
| 975 | + width: 640rpx; | ||
| 976 | + height: 480rpx; | ||
| 977 | + margin-right: 30rpx; | ||
| 978 | +} | ||
| 979 | + | ||
| 980 | +.viewBox2 .imageStyle { | ||
| 981 | + display: inline-block; | ||
| 982 | + width: 640rpx; | ||
| 983 | + height: 480rpx; | ||
| 984 | + border-radius: 16rpx; | ||
| 985 | +} | ||
| 986 | + | ||
| 987 | +.viewBox2 .informationBox, | ||
| 988 | +.viewBox2 .entrance { | ||
| 989 | + background: transparent; | ||
| 990 | +} | ||
| 991 | + | ||
| 992 | +.viewBox2 .receptionBox, | ||
| 993 | +.viewBox2 .entrance, | ||
| 994 | +.viewBox2 .businessBox { | ||
| 995 | + position: relative; | ||
| 996 | + top: -200rpx; | ||
| 997 | +} | ||
| 998 | + | ||
| 999 | +.viewBox2 .businessBox { | ||
| 1000 | + margin-bottom: 20rpx; | ||
| 1001 | +} | ||
| 1002 | + | ||
| 1003 | +.businessBox { | ||
| 1004 | + color: #854F1E; | ||
| 1005 | +} | ||
| 1006 | + | ||
| 1007 | +.viewBox2 .shareItem, | ||
| 1008 | +.viewBox2 .moreBtn, | ||
| 1009 | +.viewBox2 .paymenBtn { | ||
| 1010 | + color: #854F1E; | ||
| 1011 | + border: 2rpx solid #854F1E; | ||
| 1012 | +} | ||
| 1013 | + | ||
| 1014 | +.viewBox2 .shareItem { | ||
| 1015 | + background: #854F1E; | ||
| 1016 | + color: #fff; | ||
| 1017 | + border: none; | ||
| 1018 | +} | ||
| 1019 | + | ||
| 1020 | +.viewBox2 .brownFont, | ||
| 1021 | +.viewBox2 .positioning { | ||
| 1022 | + background: #854F1E; | ||
| 1023 | + color: #fff; | ||
| 1024 | +} | ||
| 1025 | + | ||
| 1026 | +.viewBox2 .contentData { | ||
| 1027 | + color: #000; | ||
| 1028 | +} | ||
| 1029 | + | ||
| 1030 | +.viewBox2 .contentDataPhone, | ||
| 1031 | +.viewBox2 .divider { | ||
| 1032 | + color: #3584E0; | ||
| 1033 | +} | ||
| 1034 | + | ||
| 1035 | +.viewBox2 .arrivalBox button { | ||
| 1036 | + color: #854F1E; | ||
| 1037 | + border: 2rpx solid #854F1E; | ||
| 1038 | +} | ||
| 1039 | + | ||
| 1040 | +.viewBox2 .infoTopText4 { | ||
| 1041 | + color: #854f1e; | ||
| 1042 | + font-family: PingFang SC; | ||
| 1043 | + font-weight: 600; | ||
| 1044 | + font-size: 100rpx; | ||
| 1045 | + line-height: 140rpx; | ||
| 1046 | + letter-spacing: 20rpx; | ||
| 1047 | +} | ||
| 1048 | + | ||
| 1049 | +.viewBox2 .infoTopText1 { | ||
| 1050 | + color: #854f1e; | ||
| 1051 | + font-family: PingFang SC; | ||
| 1052 | + font-weight: 500; | ||
| 1053 | + font-size: 40rpx; | ||
| 1054 | + line-height: 40rpx; | ||
| 1055 | + letter-spacing: 20rpx; | ||
| 1056 | +} | ||
| 1057 | + | ||
| 1058 | +.viewBox2 .infoTopText2 { | ||
| 1059 | + margin: 60rpx 0 20rpx 0; | ||
| 1060 | +} | ||
| 1061 | + | ||
| 1062 | +.viewBox2 .infoTop { | ||
| 1063 | + color: #000; | ||
| 1064 | + align-items: flex-start; | ||
| 1065 | + margin-left: 40rpx; | ||
| 1066 | +} | ||
| 1067 | + | ||
| 1068 | +.publicModalBox2 .detailBanner { | ||
| 1069 | + margin: 0; | ||
| 1070 | + width: 100%; | ||
| 1071 | +} | ||
| 1072 | + | ||
| 1073 | +.publicModalBox2 .purchase { | ||
| 1074 | + background: #854F1E; | ||
| 1075 | +} | ||
| 1076 | + | ||
| 1077 | +.publicModalBox2 .couponBox .couponBtn, | ||
| 1078 | +.publicModalBox2 .rechargeBtn view { | ||
| 1079 | + background: #854F1E; | ||
| 1080 | +} | ||
| 1081 | + | ||
| 1082 | +.publicModalBox2 .titlePublicModal { | ||
| 1083 | + color: #854F1E !important; | ||
| 1084 | +} | ||
| 1085 | + | ||
| 1086 | +.publicModalBox2 .orderBox { | ||
| 1087 | + background: #854F1E; | ||
| 1088 | + color: #fff; | ||
| 1089 | +} | ||
| 1090 | + | ||
| 1091 | +.publicModalBox2 .cook { | ||
| 1092 | + color: #854F1E; | ||
| 1093 | +} |
-
Please register or login to post a comment