$(function () { 'use strict'; function cookieTolocalStorage() { // 获取localStorage是否有user var user = localStorage.getItem("user"); if (!user || user === 'false') { // 没有就找cookie user = $.cookie('user') ? $.cookie('user') : null; if (!user) { // 没有就返回null return null; } // var dec_user = $.caesar(JSON.stringify(user)); // 存在就保存到localStorage // console.log(JSON.stringify(user)) $.caesarCache('user', user); $.removeCookie('user'); } else { $.removeCookie('user'); } } cookieTolocalStorage(); window.addEventListener( 'COMMUNICATION', function (e) { var camera_scan = localStorage.getItem('camera_scan'); var camera_photo = localStorage.getItem('camera_photo'); var write_storage_photo = localStorage.getItem('write_storage_photo'); var write_storage_data = localStorage.getItem('write_storage_data'); var photo_data = localStorage.getItem('photo_data'); switch (e.detail.action) { case 'openAuthPromptWin': //从弹出 $.popup(".authPromptWin"); if(e.detail.type == 'CAMERA'){ $(".authPromptWin .camera").show(); $(".authPromptWin .storage").hide(); }else if(e.detail.type == 'STORAGE'){ $(".authPromptWin .camera").hide(); $(".authPromptWin .storage").show(); } break; case 'closeAuthPromptWin': // 关闭 $.closeModal(".authPromptWin"); $(".authPromptWin .camera, .authPromptWin .storage").hide(); var auth_list = androidJs.getHasSelfPermissionsJS(); if(auth_list.indexOf("CAMERA") !== -1){ localStorage.setItem('camera_scan', true); localStorage.setItem('camera_photo', true); } if (auth_list.indexOf("WRITE_EXTERNAL_STORAGE") !== -1) { localStorage.setItem('write_storage_data', true); } if (auth_list.indexOf("READ_EXTERNAL_STORAGE") !== -1) { localStorage.setItem('write_storage_photo', true); } break; case 'openCameraPromptWin': // 上传头像 - 相机 if(camera_scan == 'false'){ $.modal({ title:'

该服务需要申请使用以下权限:

', text: '

相机权限:用于扫码、拍照时使用。

人脸影像数据仅用于饭堂取餐与现场消费用,如您不同意请不要进行后续操作。

', buttons: [{ text: '拒绝', onClick: () => { return "拒绝0"; } },{ text: '同意', onClick: ()=>{ localStorage.setItem('camera_scan', true); return "同意1"; } }] }); } break; case 'openAlbumPromptWin': // 上传头像 - 选取照片 if(camera_photo == 'false' || write_storage_photo == 'false' || write_storage_data == 'false'){ $.modal({ title:'

该服务需要申请使用以下权限:

', text: '

读写外部存储权限:用于用户拍摄时临时存储照片、上传照片。

人脸影像数据仅用于饭堂取餐与现场消费用,如您不同意请不要进行后续操作。

', buttons: [{ text: '拒绝', onClick: () => { return "拒绝0"; } },{ text: '同意', onClick: () => { localStorage.setItem('camera_photo', true); localStorage.setItem('write_storage_photo', true); localStorage.setItem('write_storage_data', true); return "同意1"; } }] }); } break; } }, false ); $(document).on( 'click', '.menu_list p a:not(.changeFt):not(.meal-order):not(.meal-vote)', function () { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); $.closePanel(); var tar = $(this).attr('class'); switch (tar) { case 'listFood': var token = user.token ? user.token : null; location.href = '/jtj_admin/?act=login&token=' + token; break; default: tar = tar + '.html'; //fix 路由翻页时候不会关闭panel setTimeout(function () { $.router.loadPage(tar); }, 450); break; } } ); $(document).on('click', 'a.changePwd', function () { $.closePanel(); setTimeout(function () { $.router.loadPage('changePwd.html'); }, 450); }); $(document).on('click', 'a.noticeList', function () { $.closePanel(); setTimeout(function () { $.router.loadPage('noticeList.html'); }, 450); }); // 点击二维码关闭按钮 $(document).on('click', '.closeQr', function () { // 2019-11-06 yw // ios 亮度; if (typeof window.webkit !== 'undefined') { try { screenBrightnessBack(); } catch (error) {} } }); // 临时增加 饭堂窗口列表(小岛) $(document).on('pageInit', '#page-hallChannelList', function (e, pageId, page){ var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); function initPage() { getData(); } function innerData(data) { $(page).find('.title').html(data.title); $('title').html(data.title); var channel_list = ''; if (data.list.length > 0) { $.each(data.list, function (i, item) { channel_list += '

'+item['dining_hall_name']+'

'; }); }else{ channel_list += `
  • 暂无可用窗口
  • `; } $(page).find('.channel_list').html(channel_list); } function getData() { if (user === null) { location.href = 'login.php'; return; } var token = user.token; setTimeout(function () { $.showIndicator(); }, 0); $.ajax2({ type: 'GET', url: '../api/dishes/get_hall_channel_list/', dataType: 'json', data: { token: token }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { innerData(ret.data); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } }) $(document).on('pageInit', '#page-index4', function (e, pageId, page) { var beginTime = 0; var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var rise_tips = false; var dining_hall_id; var date_id; var totalNum = 0; var totalPrice = 0; var dining_halls = ''; var user_birthMsg = ''; var indexNotice = { list: [], count: 0, showNotice: showNotice, openNotice: openNoticeHtml, renderIndex: renderNoticeIndex, handleNoticeStatus: handleNoticeStatus, }; if (user && $('.noticeNum').find('a').hasClass('noticeList')) { $('.noticeNum').find('a').removeClass('noticeList'); $('.noticeNum').find('a').addClass('noticeList2'); } if ( user && user.hasOwnProperty('theme') && user.theme && user.theme != '4' ) { $.router.replacePage(initTheme(user.theme)); return; } if (user && (user.company_id == '42' || user.company_id == '58')) { $('.changeFt').parent('p').hide(); } function showBirth() { var birth_img = 0; $.ajax({ type: 'GET', url: '../api/birthdayimg/list?token=' + user.token, success: function success(ret) { if (typeof ret.status !== 'undefined') { $.closePanel(); if (ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { // 渲染生日图片 birth_img = ret.data.list.length; for (var index = ret.data.list.length - 1; index >= 0; index--) { if (index || index === 0) { var src = ret.data.list[index].img_resize; var popupHTML = '', }); }); $('.logout') .off('click') .on('click', function () { var token = user.token; $.ajax({ type: 'POST', url: '../api/user/logout/', dataType: 'json', data: { token: token, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1 || ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.alert('请检查网络!'); }, }); }); $(page).on('click', '.xhl', function () { if (!$(this).hasClass('btnDisabled')) { $.closePanel(); $.router.replacePage('confirmOrder.html'); } }); $(page).on('click', '.minus,.add', function () { var self = $(this); var num = parseInt( self.parent('p').children('.num').html() ? self.parent('p').children('.num').html() : 0 ); var price = parseFloat(self.parent('p').data('price')); var limit = parseInt(self.parent('p').data('limit')); var cid = parseInt(self.parent('p').data('id')); var type = self.data('type'); if (type === 'add') { if (num >= limit) { return; } var offset = $('#page-index5 .total-num').offset(); var url = $(this).parent('p').data('img'); $('#page-index5 .cart .icon-cart').addClass('active'); setTimeout(function () { $('#page-index5 .cart .icon-cart').removeClass('active'); }, 200); var flyer = $(''); flyer.fly({ start: { left: $(this).offset().left, //开始位置(必填)#fly元素会被设置成position: fixed top: $(this).offset().top, //开始位置(必填) }, end: { left: offset.left + 10, //结束位置(必填) top: offset.top + 10, //结束位置(必填) width: 0, //结束时宽度 height: 0, //结束时高度 }, onEnd: function () { //结束回调 this.destroy(); }, }); } else { if (num <= 0) { return; } } num = printReload(self, num, limit, price, type); //cookie不存在 var token = user.token; $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { token: token, date_dish_id: cid, num: num, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if ( parseFloat(totalPrice) !== parseFloat(ret.data.cart.price) || parseInt(totalNum) !== parseInt(ret.data.cart.orderNum) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); printReload(self, ret.data.cart.csnum, limit, price, 'none'); } if (!rise_tips && ret.data.cart.rise_info.rise_status) { if (type === 'add') { $.alert(ret.data.cart.rise_info.rise_tip); rise_tips = true; } } return; } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message, function () { var dish_type = $('.cp .item-content.active').data('pid'); getData(dining_hall_id, date_id, dish_type); }); } } //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, error: function () { $.alert('请检查网络!'); //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, }); }); $(page).on('click', '.cs-evaluate', function () { var self = $(this); var cid = self.parent('.buttons-row').data('id'); var url = self.parent('.buttons-row').data('img'); var name = self .parent() .parent() .prev('.item-inner') .children() .children() .text(); var popupHTML = ''; $.popup(popupHTML); $('.popup .star') .off('click') .on('click', function () { $(this).addClass('active'); $(this).prevAll().addClass('active'); $(this).nextAll().removeClass('active'); }); }); $(page).on('click', '.cp li.item-content', function () { // 判断当前点击内部商城 if ($(this).hasClass('shop-index')) { var tar = 'shop-index.html'; setTimeout(function () { $.router.loadPage(tar); return; }, 450); return; } else if ($(this).hasClass('added-server')) { var tar = 'added-server.html'; setTimeout(function () { $.router.loadPage(tar); return; }, 450); } else if ($(this).hasClass('transferOrderList')) { var tar = 'transferOrderList.html'; setTimeout(function () { $.router.loadPage(tar); return; }, 450); } if ($(this).hasClass('active')) { return; } getData(dining_hall_id, $(this).data('id')); }); $(page).on('click', '.notice-view', function () { indexNotice.openNotice(); }); $(page).on('click', '.title', function () { openPicker($(this)); }); $(document) .off('click', '.changeButton') .on('click', '.changeButton', function () { $.closeModal(); var type = $(this).attr('data-type'); if ( $(page) .find('input[name=' + type + ']') .val() && $(page) .find('input[name=' + type + ']') .val() !== dining_hall_id + '-' + date_id ) { var meal = $(page) .find('input[name=' + type + ']') .val() .split('-'); getData(meal[0], meal[1]); } }); $(page).on('click', '.open-this-panel', function () { if ($('body').hasClass('with-panel-left-reveal')) { $.closePanel(); } else { $.openPanel('#panel-left'); } }); $(page).on('click', '.open-mypopover', function () { // 判断是否显示扫一扫 var scan_display = ''; if ( typeof androidJs !== 'undefined' || typeof window.webkit !== 'undefined' ) { scan_display = "style='display:block'"; } else { scan_display = "style='display:none'"; } //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var pHTML = '
    ' + '
    ' + '' + '
    ' + '
    '; if ($.popover(pHTML, $(this))) { $(document) .off('click', '.open-smart-tips') .on('click', '.open-smart-tips', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var url = $(page).find('.open-mypopover').data('url'); var name = $(page).find('.open-mypopover').data('name'); var num = $(page).find('.open-mypopover').data('num'); var thislist = $(page) .find('.open-mypopover') .data('order_detail'); if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw // 调亮 try { screenBrightnessUp(); } catch (e) {} } //12小时内不过期 //没内容则为空 if (url === ' ') { $.closeModal($('.popover')); $.toast('暂无符合当前就餐时间的二维码'); } else { thislist = $.parseJSON(thislist); var detail = '
    '; $.each(thislist, function (i, dish) { detail += '
    ' + '' + '
    '; }); detail += '
    '; //指定detial高度 var popupHTML = ''; popupHTML += detail; $.popup(popupHTML); $('.popup .content-list').height( $(window).height() - $('.popup footer').height() - $('.popup .content-list').position().top ); } } else { $.closeModal($('.popover')); $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(document) .off('click', '.open-pay-tips') .on('click', '.open-pay-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); drawFKM(true, ''); }); // 扫一扫 $(document) .off('click', '.open-scan') .on('click', '.open-scan', function () { if (user === null) { setTimeout(function () { location.href = 'login.php'; }, 200); return false; } $.closeModal($('.popover')); // getScanValue('{"channelid": 176}') // return false; // if (typeof iosJs !== 'undefined') { // try { // // ios // QRScannerOpen(); // } catch (e) {} // } else if (typeof androidJs !== 'undefined') { try { // 安卓 window.androidJs.startScan(); } catch (e) {} } else if (typeof window.webkit !== 'undefined') { try { // ios QRScannerOpen(); } catch (e) {} } else { // $.alert('请使用App操作'); } }); } } else { $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(page).on('click', '.order-open-btn', function () { var get_date_id = $(this).next().data('id'); var el = $(this).next().hasClass('card-look') ? '.card-look-' + get_date_id : '.card-order-' + get_date_id; var _this = this; if (!$(page).find(el).is(':animated')) { $(page).find(el).slideToggle('slow'); $(_this).find('.icon').hasClass('icon-prev') ? $(_this).find('.icon').removeClass('icon-prev') : $(_this).find('.icon').addClass('icon-prev'); } }); }); // 3 $(document).on( 'pageInit pageReinit', '#page-index3', function (e, pageId, page) { if (e.type === 'pageReinit') { setTimeout(function () { $.openPanel('#panel-left'); }, 0); return; } // new VConsole(); var beginTime = 0; var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var rise_tips = false; var dining_hall_id; var dining_halls = ''; var date_click_id; // 订餐为date-id 投票为date var date_id; var dc_type; var vote_date_id; var vdid; var totalNum = 0; var totalPrice = 0; var count = 0; var meal_func = 'meal-order'; // 投票初始值 var countVoteList = []; var vote_obj = {}; var user_birthMsg = ''; if ( user && user.hasOwnProperty('theme') && user.theme && user.theme != '3' ) { $.router.replacePage(initTheme(user.theme)); return; } // 生日订餐提示 var now_date = new Date().getDate() >= 10 ? new Date().getDate() : '0' + new Date().getDate(); if ( user && user.birthday && user.birthday == (new Date().getMonth() + 1 < 10 ? '0' + (new Date().getMonth() + 1) : new Date().getMonth() + 1) + '-' + now_date ) { setTimeout(function () { $.closePanel(); $.closeModal(); showBirth(); }, 1000); } if (user && (user.company_id == '42' || user.company_id == '58')) { $('.changeFt').parent('p').hide(); } //交通局默认弹出 setTimeout(function () { $.openPanel('#panel-left'); }, 100); initPage(); if (!user.cellphone2) { $.alert( '云中美食即将启用短信验证码登录,请先绑定手机号', '温馨提示', function () { $.router.loadPage('bindCellphone.html'); } ); } if (parseInt(user.jdmm) === 1) { $.alert('密码强度较弱,请修改'); } function showBirth() { $.ajax({ type: 'GET', url: '../api/birthdayimg/list?token=' + user.token, success: function success(ret) { if (typeof ret.status !== 'undefined') { setTimeout(function () { $.closePanel(); }, 0); if (ret.status === -1) { setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { // 渲染生日图片 for ( var index = ret.data.list.length - 1; index >= 0; index-- ) { if (index || index === 0) { var src = ret.data.list[index].img_resize; var popupHTML = '', }); }); $('.logout') .off('click') .on('click', function () { var token = user.token; $.ajax({ type: 'POST', url: '../api/user/logout/', dataType: 'json', data: { token: token, }, success: function success(ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1 || ret.status === -1) { $.closePanel(); $.cookie('getTimes', 0); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function error() { $.alert('请检查网络!'); }, }); }); $(page).on('click', '.xhl', function () { if (!$(this).hasClass('btnDisabled')) { $.closePanel(); $.router.loadPage('confirmOrder.html'); } }); $(page).on('click', '.minus,.add', function () { var self = $(this); var num = parseInt( self.parent('p').children('.num').html() ? self.parent('p').children('.num').html() : 0 ); var price = parseFloat(self.parent('p').data('price')); var limit = parseInt(self.parent('p').data('limit')); var cid = parseInt(self.parent('p').data('id')); var type = self.data('type'); if (type === 'add') { if (num >= limit) { return; } var offset = $('#page-index3 .total-num').offset(); var url = $(this).parent('p').data('img'); $('#page-index3 .cart .icon-cart').addClass('active'); setTimeout(function () { $('#page-index3 .cart .icon-cart').removeClass('active'); }, 200); var flyer = $(''); flyer.fly({ start: { left: $(this).offset().left, //开始位置(必填)#fly元素会被设置成position: fixed top: $(this).offset().top, //开始位置(必填) }, end: { left: offset.left + 10, //结束位置(必填) top: offset.top + 10, //结束位置(必填) width: 0, //结束时宽度 height: 0, //结束时高度 }, onEnd: function onEnd() { //结束回调 this.destroy(); }, }); } else { if (num <= 0) { return; } } num = printReload(self, num, limit, price, type); //cookie不存在 var token = user.token; $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { token: token, date_dish_id: cid, num: num, }, success: function success(ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if ( parseFloat(totalPrice) !== parseFloat(ret.data.cart.price) || parseInt(totalNum) !== parseInt(ret.data.cart.orderNum) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); printReload(self, ret.data.cart.csnum, limit, price, 'none'); } if (!rise_tips && ret.data.cart.rise_info.rise_status) { if (type === 'add') { $.alert(ret.data.cart.rise_info.rise_tip); rise_tips = true; } } return; } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message, function () { var dish_type = $('.cp .item-content.active').data('pid'); getData(dining_hall_id, date_id, dish_type); }); } } //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, error: function error() { $.alert('请检查网络!'); //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, }); }); $(page).on('click', '.cp li.item-content', function () { if ($(this).hasClass('active')) { return; } var dish_type = $(this).data('pid'); if (meal_func === 'meal-order') { getData(dining_hall_id, $(this).data('id')); } else { getVoteData(dining_hall_id, date_click_id, vdid, dc_type, dish_type); } }); // 弹出框选择 $(page).on('click', '.title', function () { if (meal_func != 'meal-order') { return; } else { openPicker($(this), false); } }); $(document) .off('click', '.pickerButton') .on('click', '.pickerButton', function () { openPicker($(this), true); }); $(document) .off('click', '.changeButton') .on('click', '.changeButton', function () { $.closeModal(); var type = $(this).attr('data-type'); if ( $(page) .find('input[name=' + type + ']') .val() && $(page) .find('input[name=' + type + ']') .val() !== dining_hall_id + '-' + date_id ) { var meal = $(page) .find('input[name=' + type + ']') .val() .split('-'); getData(meal[0], meal[1]); } }); $(page).on('click', '.open-this-panel', function () { if ($('body').hasClass('with-panel-left-reveal')) { $.closePanel(); } else { $.openPanel('#panel-left'); } }); $(page).on('click', '.open-mypopover', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var pHTML = '
    ' + '
    ' + '' + '
    ' + '
    '; if ($.popover(pHTML, $(this))) { $(document) .off('click', '.open-smart-tips') .on('click', '.open-smart-tips', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var url = $(page).find('.open-mypopover').data('url'); var name = $(page).find('.open-mypopover').data('name'); var num = $(page).find('.open-mypopover').data('num'); var thislist = $(page) .find('.open-mypopover') .data('order_detail'); if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw // 调亮 try { screenBrightnessUp(); } catch (e) {} } //12小时内不过期 //没内容则为空 if (url === ' ') { $.closeModal($('.popover')); $.toast('暂无符合当前就餐时间的二维码'); } else { thislist = $.parseJSON(thislist); var detail = '
    '; $.each(thislist, function (i, dish) { detail += '
    ' + '' + '
    '; }); detail += '
    '; //指定detial高度 var popupHTML = ''; popupHTML += detail; $.popup(popupHTML); $('.popup .content-list').height( $(window).height() - $('.popup footer').height() - $('.popup .content-list').position().top ); } } else { $.closeModal($('.popover')); $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(document) .off('click', '.open-pay-tips') .on('click', '.open-pay-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); drawFKM(true, ''); }); // 打开扫码 $(document) .off('click', '.open-scan-tips') .on('click', '.open-scan-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw try { QRScannerOpen(); } catch (e) {} } }); } } else { $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(page) .off('click', '.voting') .on('click', '.voting', function () { var vote_seft = $(this); var vote_seft_parent = $(this).parent(); var dish_id = vote_seft_parent.data('id'); var type_str = vote_seft_parent.data('type'); // 先判断票数 vote_seft.css('display', 'none'); vote_seft_parent.find('.vote-loading').css({ display: 'block', }); var voteLoading = vote_seft_parent.find('.vote-loading'); var str = ''; var i = 0; var inTime = setInterval(function () { i++; if (i > 3) { str = ''; i = 0; } else { str += '.'; } voteLoading.text('投票中' + str); }, 300); mealVoteing( inTime, vote_seft_parent, vote_date_id, dish_id, dc_type, date_click_id, dining_hall_id, vote_seft_parent.data('dish'), type_str ); }); $(page) .off('click', '.vote-cancel') .on('click', '.vote-cancel', function () { var vote_seft = $(this); var vote_seft_parent = $(this).parent(); var vid = vote_seft_parent.data('vid'); var type_str = vote_seft_parent.data('type'); vote_seft.css('display', 'none'); var i = 0; var str = ''; var inTime = setInterval(function () { i++; if (i > 3) { str = ''; i = 0; } else { str += '.'; } voteLoading.text('投票中' + str); }, 300); mealCancel( inTime, vote_seft_parent, type_str, vote_date_id, vid, dining_hall_id ); // vote_seft.css("display", "none"); // vote_seft_parent.find('.voting').css({ 'display': 'block' }); }); $(page) .off('click', '.vote-confirm-btn') .on('click', '.vote-confirm-btn', function () { var token = user.token; $.ajax({ type: 'POST', url: '../api/dishvote/vote_confirm?token=' + token, dataType: 'json', data: { vote_id_list: JSON.stringify(countVoteList), date: date_click_id, dc_type: dc_type, vote_date_id: vdid, dining_hall_id: dining_hall_id, }, success: function success(ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { count = 0; getVoteData(); } else if (ret.status === -1) { $.closePanel(); $.closeModal(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { getVoteData(dining_hall_id, date_click_id, vdid); $.alert(ret.message); } } }, error: function error() { $.hideIndicator(); $.alert('请检查网络!'); }, }); }); // 操作更多投票展示 $(page) .off('click', '.btn-more-vote') .on('click', '.btn-more-vote', function () { var el = $(page).find('.meal-footer'); var countEl = $(page).find('.meal-vote-count'); var currentHegiht = el.height(); countEl.css({ 'overflow-y': 'unset', height: 'auto', }); var autoHeight = el .css({ height: 'auto', }) .height(); if ($(this).hasClass('active')) { $(page) .find('.meal-footer') .animate( { height: '70px', }, 100, function () { $(page).find('.meal-vote-count').css({ 'overflow-y': 'hidden', height: '1.8rem', }); } ); $(this).html('更多'); $(this).removeClass('active'); } else { $(page) .find('.meal-footer') .height(currentHegiht) .animate( { height: autoHeight, }, 100, function () { $(page).find('.meal-vote-count').css({ 'overflow-y': 'unset', height: 'auto', }); } ); $(this).html('收起'); $(this).addClass('active'); } setTimeout(function () { setHeight(); }, 450); }); } ); $(document).on('pageInit', '#page-index2', function (e, pageId, page) { var beginTime = 0; var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var rise_tips = false; var dining_hall_id; var date_id; var totalNum = 0; var totalPrice = 0; var dining_halls = ''; if ( user && user.hasOwnProperty('theme') && user.theme && user.theme != '2' ) { $.router.replacePage(initTheme(user.theme)); return; } if (user && (user.company_id == '42' || user.company_id == '58')) { $('.changeFt').parent('p').hide(); } initPage(); if (!user.cellphone2) { $.alert( '云中美食即将启用短信验证码登录,请先绑定手机号', '温馨提示', function () { $.router.loadPage('bindCellphone.html'); } ); } if (parseInt(user.jdmm) === 1) { $.alert('密码强度较弱,请修改'); } function setHeight() { $('.main .cp-list').height( $(window).height() - $('.bar-tab').innerHeight() - $('header').innerHeight() ); $('.main .cs-list').height( $(window).height() - $('.bar-tab').innerHeight() - $('header').innerHeight() ); } function initPage() { var pid = $.getURLParameter('pid'); var did = $.getURLParameter('did'); //高度撑开 //var user = $.parseJSON($.cookie("user")); setHeight(); getData(pid, did); } function innerData(data) { if (typeof iosJs !== 'undefined') { try { iosJs.bindAccount(data.user.smsCellphone); } catch (e) {} } else if (typeof androidJs !== 'undefined') { try { androidJs.bindAccount(data.user.smsCellphone); } catch (e) {} } else if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw try { promptBindAccount(data.user.smsCellphone); } catch (e) {} } beginTime = new Date().getTime(); dining_hall_id = data.dining_hall_id; date_id = data.date_id; //初始化title与页面标题 $('title').html(data.title); $(page) .find('.title') .html( data.page + ' ' ); //extra 商城入口显示 //area_id = 7 and type_id = 1 if ( ('1,2,3,5,6,7'.indexOf(data.user.area_id.toString()) !== -1 && '1,6,7'.indexOf(data.user.type_id.toString()) !== -1 && data.user.oaid !== '' && data.user.oaid !== null) || data.user.id == 7 || data.user.type_id == 1 ) { $('.panel-footer .shop-index').show(); //$('.panel-footer .shop-fl').show(); } // 如果是vip围餐的date_id,而且 deliver_place_meal_list 非空,就弹窗选房间 if(data.deliver_place_meal_list){ $("#deliver-place").val(JSON.stringify(data.deliver_place_meal_list)); if(data.deliver_place_data){ $("#deliver-place-data").val(data.deliver_place_data); }else{ $("#deliver-place-data").val(""); popup_deliver_place(data.deliver_place_meal_list); } }else{ $("#deliver-place-data").val(""); $("#deliver-place").val(""); } /* if(data.user.show_fuli === 1){ $('.panel-footer .shop-fl').show(); } */ //充值显示 if (user !== null && parseInt(user.cash_fund) !== 1) { $('.panel .cash').show(); } //菜单 if (data.extra_menus.length > 0) { var menu_list = ''; $.each(data.extra_menus, function (i, v) { menu_list += '

    ' + v.title + '

    '; }); $('.menu_list').html(menu_list); } $('.username') .off('click') .on('click', function () { $.closePanel(); var tar = 'userPanel.html'; //fix 路由翻页时候不会关闭panel setTimeout(function () { $.router.loadPage(tar); }, 450); }); //实时取餐码 //这里接口处理不标准,增加一个判断 data.take_info===null||data.take_info.take_qrcode===null $(page) .find('.open-mypopover') .attr( 'data-url', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.take_qrcode ); $(page) .find('.open-mypopover') .attr( 'data-name', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.meal_text ); $(page) .find('.open-mypopover') .attr( 'data-num', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.take_code ); $(page) .find('.open-mypopover') .attr( 'data-order_detail', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : JSON.stringify(data.take_info.order_detail) ); //$('.userinfo .ln').html(data.user.username.substr(data.user.username.length-1,data.user.username.length)); //$('.userinfo .name').html(data.user.username); $('.userinfo .ye').html(data.user.account); $('.userinfo .jf').html(data.user.jf); $(page).find('.changeType').remove(); $(page).find('input[name=changeFt]').remove(); $(page).find('.title').removeAttr('data-type'); $.each(data.jcdata, function (i, date) { if (parseInt(dining_hall_id) === parseInt(date.jcplace.id)) { var myPlaceName = date.jcplace.name; var jcDataName = []; var jcDataValue = []; var jcDataType = []; var ThisType = ''; $.each(date.jctime, function (i, meal) { var type = meal.jcmealtype ? meal.jcmealtype.toString() : ''; if (typeof jcDataName[type] === 'undefined') { jcDataName[type] = []; jcDataValue[type] = []; } jcDataType[type] = meal.jcmealtypename; //exchangeType.unshift(jcDataType[type]); if (data.page.indexOf(meal.jcname) !== -1) { $(page) .find('.title') .attr('data-type', 'changeType' + type); ThisType = type; } jcDataName[type].push(meal.jcname); jcDataValue[type].push(date.jcplace.id + '-' + meal.id); }); //数组长度是2,但实际是2-1,因为下标为0时候没有数据的 //exchangeType.reverse(); for (i in jcDataName) { if (jcDataName.hasOwnProperty(i)) { jcDataName[i] = JSON.parse(JSON.stringify(jcDataName[i])); jcDataValue[i] = JSON.parse(JSON.stringify(jcDataValue[i])); var titleHtml = ''; if (ThisType === i) { titleHtml += ''; } else { titleHtml += ''; } $(page).find('.title').after(titleHtml); var toolbarTemplate = jcDataType.slice(-parseInt(i))[0] === jcDataType.join('') ? '

    ' + myPlaceName + jcDataType[i] + '时段

    ' : '

    ' + myPlaceName + jcDataType[i] + '时段

    '; $(page) .find('input[name=changeType' + i + ']') .picker({ toolbarTemplate: toolbarTemplate, cols: [ { textAlign: 'center', values: jcDataValue[i].length ? jcDataValue[i] : [0], displayValues: jcDataName[i].length ? jcDataName[i] : ['暂无安排'], }, ], convertToPopover: false, }); } } return false; } }); $(page) .find('.title') .after(''); // var selectFt = []; $.each(data.dining_halls, function (i, dining_hall) { if (parseInt(dining_hall.id) === parseInt(data.dining_hall_id)) { $(page).find('input[name=changeFt]').val(dining_hall.name); $(page).find('input[name=changeFt]').data('value', dining_hall.id); } var item = { title: dining_hall.name, value: dining_hall.id, }; selectFt.push(item); }); $(page) .find('input[name=changeFt]') .select({ title: '选择默认饭堂', items: selectFt, onChange: function (d) { changeFt(d.values); }, }); //初始化菜式 var cs_li = ''; $.each(data.cs, function (i, cs) { var addClass = parseInt(cs.csnum) >= parseInt(cs.limit) ? 'style="opacity: 0;"' : ''; var minusClass = parseInt(cs.csnum) <= 0 ? 'style="display: none;"' : ''; cs.rest_num = parseInt(cs.rest_num) >= 0 ? cs.rest_num : '999+'; //fix 汕头 cs.total_max_num = parseInt(cs.total_max_num) == -1 ? '0' : parseInt(cs.total_max_num) > 0 ? cs.total_max_num : '999+'; var kc = '剩' + cs.rest_num + '/' + cs.total_max_num; cs.csnum = cs.csnum ? cs.csnum : ''; cs_li += '
  • ' + cs.csname + '
    ' + cs.csprice + '元/份
    ' + kc + '
  • '; }); cs_li = cs_li ? '' : '

    暂无菜式

    '; $('#page-index2 .cs-list .list-block').html(cs_li); //初始化footer totalPrice = parseFloat(data.order.price); totalNum = parseInt(data.order.num); $('#page-index2 .total-num').html(totalNum ? totalNum : ''); $('#page-index2 .total-price').html(totalPrice ? totalPrice : 0); checkXhlBtn(); //初始化菜品 var cp_li = ''; $.each(data.cp, function (i, cp) { cp.cpactive = cp.cpactive ? cp.cpactive : ''; cp.cpnum = cp.cpnum ? cp.cpnum : ''; cp_li += '
  • ' + cp.cpname + '
    ' + cp.cpnum + '
  • '; }); //初始化待阅通知数 $('#page-index2 .cp').html(cp_li); // 判断当前是不是围餐 if(data.deliver_place_meal_list){ $('#page-index2 .cp').append( '
  • 围餐房间
  • ' ); } $('#page-index2 .ftpic').attr('id', 'ft' + data.dining_hall_id); $('.noticeList num').html( data.notice_noread > 99 ? '99+' : data.notice_noread ); rise_tips = false; dining_halls = data.dining_halls; } // 弹窗选择房间 function popup_deliver_place(data, type = 'init'){ // 判断当前的date_id 是否一样,如果一样就不重新渲染弹窗 var input_deliver_place_data_val = $("#deliver-place-data").val(); var input_date_id = input_deliver_place_data_val.split("_")[0]; var input_deliver_place_id = input_deliver_place_data_val.split("_")[1]; if(type != 'init' || (input_deliver_place_data_val == '' || input_date_id != date_id)){ // 弹窗选择房间 var place_list = ``; // console.log(place_list) $.popup(place_list); } } function printReload(self, num, limit, price, type) { var thisCpNum = $('.cp .active .badge').html() ? parseInt($('.cp .active .badge').html()) : 0; if (type === 'add') { num++; totalNum++; totalPrice = $.accAdd(totalPrice, price); thisCpNum++; } else if (type === 'minus') { num--; totalNum--; thisCpNum--; totalPrice = $.Subtr(totalPrice, price); } else { } $('.cp .active .badge').html(thisCpNum <= 0 ? '' : thisCpNum); $('.total-num').html(totalNum ? totalNum : ''); $('.total-price').html(totalPrice); self .parent('p') .children('.num') .html(num <= 0 ? '' : num); if (num <= 0) { self.parent('p').children('.minus').css('display', 'none'); self.parent('p').children('.add').css('opacity', 1); } else if (num > 0 && num < limit) { self.parent('p').children('.minus').css('display', 'block'); self.parent('p').children('.add').css('opacity', 1); } else if (num >= limit) { self.parent('p').children('.minus').css('display', 'block'); self.parent('p').children('.add').css('opacity', 0); } checkXhlBtn(); return num; } function checkXhlBtn() { if (!$(page).find('.xhl').hasClass('btnDisabled') && totalNum === 0) { $(page).find('.xhl').addClass('btnDisabled'); } else if ( totalNum !== 0 && $(page).find('.xhl').hasClass('btnDisabled') ) { $(page).find('.xhl').removeClass('btnDisabled'); } } function changeFt(pid) { pid = parseInt(pid); var token = user.token; $.showIndicator(); $.ajax({ type: 'POST', url: '../api/user/alter/', dataType: 'json', data: { token: token, dining_hall_id: pid, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { $.closePanel(); if (ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { user = ret.data.user; $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); getData(); } $.alert(ret.message); } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } function getData(pid, did, dish_type) { //cookie不存在 if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); var token = user.token; $.ajax({ type: 'GET', url: '../api/dishes/', dataType: 'json', data: { token: token, dining_hall_id: pid, date_id: did, dish_type: dish_type, }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if(ret.data.user.init_pass_modify_time === null || ret.data.user.init_pass_modify_time === ''){ // 提示去修改密码 $.modal({ text: "欢迎使用“云中美食”,首次登陆请修改初始密码。", buttons: [{ text: '修改密码', onClick: function (){ $.router.replacePage('changePwd.html'); } }] }) } if (ret.data.user.need_submit_birth == '1') { //璺宠浆濉啓鐢熸棩鏃ユ湡椤甸潰 $.router.replacePage('setBirthday.html'); } else { innerData(ret.data); $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); } } else if (ret.status === -1) { $.closePanel(); $.closeModal(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } function payResult(recharge, action_text) { var payIcon = ''; var payTips = '

    支付成功

    '; var popupHTML = '', }); }); $(page).on('click', '.item-media img', function () { var src = $(this).attr('src'); $.modal({ title: '', afterText: '', }); }); $('.logout') .off('click') .on('click', function () { var token = user.token; $.ajax({ type: 'POST', url: '../api/user/logout/', dataType: 'json', data: { token: token, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1 || ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.alert('请检查网络!'); }, }); }); $(page).on('click', '.xhl', function () { if (!$(this).hasClass('btnDisabled')) { $.closePanel(); $.router.replacePage('confirmOrder.html'); } }); $(page).on('click', '.minus,.add', function () { var self = $(this); var num = parseInt( self.parent('p').children('.num').html() ? self.parent('p').children('.num').html() : 0 ); var price = parseFloat(self.parent('p').data('price')); var limit = parseInt(self.parent('p').data('limit')); var cid = parseInt(self.parent('p').data('id')); var type = self.data('type'); if (type === 'add') { if (num >= limit) { return; } var offset = $('#page-index2 .total-num').offset(); var url = $(this).parent('p').data('img'); $('#page-index2 .cart .icon-cart').addClass('active'); setTimeout(function () { $('#page-index2 .cart .icon-cart').removeClass('active'); }, 200); var flyer = $(''); flyer.fly({ start: { left: $(this).offset().left, //开始位置(必填)#fly元素会被设置成position: fixed top: $(this).offset().top, //开始位置(必填) }, end: { left: offset.left + 10, //结束位置(必填) top: offset.top + 10, //结束位置(必填) width: 0, //结束时宽度 height: 0, //结束时高度 }, onEnd: function () { //结束回调 this.destroy(); }, }); } else { if (num <= 0) { return; } } num = printReload(self, num, limit, price, type); //cookie不存在 var token = user.token; // 获取围餐房间号 var deliver_place_data = $("#deliver-place-data").val(); var deliver_place_id = null; if(deliver_place_data){ // 获取房间号id console.log(deliver_place_data) deliver_place_id = deliver_place_data.split("_")[1]; } $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { token: token, date_dish_id: cid, num: num, deliver_place_id: deliver_place_id }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if ( parseFloat(totalPrice) !== parseFloat(ret.data.cart.price) || parseInt(totalNum) !== parseInt(ret.data.cart.orderNum) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); printReload(self, ret.data.cart.csnum, limit, price, 'none'); } if (!rise_tips && ret.data.cart.rise_info.rise_status) { if (type === 'add') { $.alert(ret.data.cart.rise_info.rise_tip); rise_tips = true; } } return; } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message, function () { var dish_type = $('.cp .item-content.active').data('pid'); getData(dining_hall_id, date_id, dish_type); }); } } //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, error: function () { $.alert('请检查网络!'); //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, }); }); $(page).on('click', '.cp li.item-content', function () { if ($(this).hasClass('active')) { return; } var dish_type = $(this).data('pid'); getData(dining_hall_id, date_id, dish_type); }); $(page).on('click', '.title', function () { openPicker($(this), false); }); $(document) .off('click', '.pickerButton') .on('click', '.pickerButton', function () { openPicker($(this), true); }); $(document) .off('click', '.changeButton') .on('click', '.changeButton', function () { $.closeModal(); var type = $(this).attr('data-type'); if ( $(page) .find('input[name=' + type + ']') .val() && $(page) .find('input[name=' + type + ']') .val() !== dining_hall_id + '-' + date_id ) { var meal = $(page) .find('input[name=' + type + ']') .val() .split('-'); getData(meal[0], meal[1]); } }); $(page).on('click', '.open-this-panel', function () { if ($('body').hasClass('with-panel-left-reveal')) { $.closePanel(); } else { $.openPanel('#panel-left'); } }); $(page).on('click', '.open-mypopover', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var pHTML = '
    ' + '
    ' + '' + '
    ' + '
    '; if ($.popover(pHTML, $(this))) { $(document) .off('click', '.open-smart-tips') .on('click', '.open-smart-tips', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var url = $(page).find('.open-mypopover').data('url'); var name = $(page).find('.open-mypopover').data('name'); var num = $(page).find('.open-mypopover').data('num'); var thislist = $(page) .find('.open-mypopover') .data('order_detail'); if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw // 调亮 try { screenBrightnessUp(); } catch (e) {} } //12小时内不过期 //没内容则为空 if (url === ' ') { $.closeModal($('.popover')); $.toast('暂无符合当前就餐时间的二维码'); } else { thislist = $.parseJSON(thislist); var detail = '
    '; $.each(thislist, function (i, dish) { detail += '
    ' + '' + '
    '; }); detail += '
    '; //指定detial高度 var popupHTML = ''; popupHTML += detail; $.popup(popupHTML); $('.popup .content-list').height( $(window).height() - $('.popup footer').height() - $('.popup .content-list').position().top ); } } else { $.closeModal($('.popover')); $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(document) .off('click', '.open-pay-tips') .on('click', '.open-pay-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); drawFKM(true, ''); }); // 打开扫码 $(document) .off('click', '.open-scan-tips') .on('click', '.open-scan-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw try { QRScannerOpen(); } catch (e) {} } }); } } else { $.alert('页面已过期,将刷新', function () { getData(); }); } }); }); $(document).on('pageInit', '#page-index', function (e, pageId, page) { var beginTime = 0; var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var rise_tips = false; var dining_hall_id; var date_id; var totalNum = 0; var totalPrice = 0; var dining_halls = ''; var tourl = $.getURLParameter('tourl'); if(tourl){ $.router.replacePage(tourl); return; } if ( user && user.hasOwnProperty('theme') && user.theme && user.theme != '1' ) { // $.router.replacePage(initTheme(user.theme)); location.replace(initTheme(user.theme)); return; } if (user && (user.company_id == '42' || user.company_id == '58')) { $('.changeFt').parent('p').hide(); } if (user && user.company_id == '30') { $('.default_ye').hide(); $('.nhjtj').hide(); $('.stdx').css("display", "flex"); }else if(user && user.company_id == '4142'){ $('.default_ye').hide(); $('.stdx').hide(); $('.nhjtj').css("display", "flex"); }else{ $('.default_ye').css("display", "flex"); $('.stdx').hide(); $('.nhjtj').hide(); } initPage(); if (!user.cellphone2) { $.alert( '云中美食即将启用短信验证码登录,请先绑定手机号', '温馨提示', function () { $.router.loadPage('bindCellphone.html'); } ); } function setHeight() { $('.main .cp-list').height( $(window).height() - $('.bar-tab').innerHeight() - $('header').innerHeight() ); $('.main .cs-list').height( $(window).height() - $('.bar-tab').innerHeight() - $('header').innerHeight() ); } function initPage() { var pid = $.getURLParameter('pid'); var did = $.getURLParameter('did'); //高度撑开 //var user = $.parseJSON($.cookie("user")); setHeight(); getData(pid, did); } function innerData(data) { beginTime = new Date().getTime(); dining_hall_id = data.dining_hall_id; date_id = data.date_id; //初始化title与页面标题 $('title').html(data.title); $(page) .find('.title') .html( data.page + ' ' ); //实时取餐码 //这里接口处理不标准,增加一个判断 data.take_info===null||data.take_info.take_qrcode===null $(page) .find('.open-mypopover') .attr( 'data-url', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.take_qrcode ); $(page) .find('.open-mypopover') .attr( 'data-name', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.meal_text ); $(page) .find('.open-mypopover') .attr( 'data-num', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : data.take_info.take_code ); $(page) .find('.open-mypopover') .attr( 'data-order_detail', data.take_info === null || data.take_info.take_qrcode === null ? ' ' : JSON.stringify(data.take_info.order_detail) ); $(page) .find('.open-mypopover') .attr( 'data-serial-num', data.serial_num === null || data.serial_num == '' ? '' : data.serial_num ); $('.userinfo .ye').html(data.user.account); $('.userinfo .jf').html(data.user.jf); if (user && user.company_id == '30') { $('.userinfo .pc').html(data.user.pc); } $('.userinfo .stdx').html(data.user.stdx); $(page).find('.title').removeAttr('data-type'); $(page).find('.title').attr('data-type', 'changeDate'); $(page).find('input[name=changeDate]').remove(); if (parseInt(date_id) > 0) { $(page) .find('.title') .after( '' ); } if (data.user.company_id == '34') { $('.company-tips').show(); } else { $('.company-tips').hide(); } var jcdataName = []; var jcdataValue = []; var myFtName = ''; if (data.jcdata.length > 0) { $.each(data.jcdata, function (i, date) { if ( parseInt(user.dining_hall_id) === parseInt(date.jcplace.id) && date.jctime.length > 0 ) { $.each(date.jctime, function (i, meal) { jcdataName.push(meal.datename); jcdataValue.push(date.jcplace.id + '-' + meal.meal_list[0].id); }); jcdataName = JSON.parse(JSON.stringify(jcdataName)); jcdataValue = JSON.parse(JSON.stringify(jcdataValue)); $(page) .find('input[name=changeDate]') .picker({ toolbarTemplate: '

    ' + myFtName + '订餐时段

    ', cols: [ { textAlign: 'center', values: jcdataValue, displayValues: jcdataName, }, ], convertToPopover: false, }); return false; } }); } //菜单 if (data.extra_menus && data.extra_menus.length > 0) { var menu_list = ''; $.each(data.extra_menus, function (i, v) { menu_list += '

    ' + v.title + '

    '; }); $('.menu_list').html(menu_list); } $('.username') .off('click') .on('click', function () { $.closePanel(); var tar = 'userPanel.html'; //fix 路由翻页时候不会关闭panel setTimeout(function () { $.router.loadPage(tar); }, 450); }); //初始化选择饭堂 $(page).find('input[name=changeFt]').remove(); $(page) .find('.title') .after(''); var selectFt = []; $.each(data.dining_halls, function (i, dining_hall) { if (parseInt(dining_hall.id) === parseInt(data.dining_hall_id)) { $(page).find('input[name=changeFt]').val(dining_hall.name); $(page).find('input[name=changeFt]').data('value', dining_hall.id); } var item = { title: dining_hall.name, value: dining_hall.id, }; selectFt.push(item); }); $(page) .find('input[name=changeFt]') .select({ title: '选择默认饭堂', items: selectFt, onChange: function (d) { changeFt(d.values); }, }); //初始化菜式 var cs_li = ''; $.each(data.cs, function (i, cs) { var addClass = parseInt(cs.csnum) >= parseInt(cs.limit) ? 'style="opacity: 0;"' : ''; var minusClass = parseInt(cs.csnum) <= 0 ? 'style="display: none;"' : ''; cs.rest_num = parseInt(cs.rest_num) >= 0 ? cs.rest_num : '999+'; //fix 汕头 cs.total_max_num = parseInt(cs.total_max_num) == -1 ? '0' : parseInt(cs.total_max_num) > 0 ? cs.total_max_num : '999+'; var kc = '剩' + cs.rest_num + '/' + cs.total_max_num; cs.csnum = cs.csnum ? cs.csnum : ''; cs_li += '
  • ' + cs.csname + '
    ' + cs.csprice + '元/份
    ' + kc + '
  • '; }); cs_li = cs_li ? '' : '

    暂无菜式

    '; $('#page-index .cs-list .list-block').html(cs_li); //初始化footer totalPrice = parseFloat(data.order.price); totalNum = parseInt(data.order.num); $('#page-index .total-num').html(totalNum ? totalNum : ''); $('#page-index .total-price').html(totalPrice ? totalPrice : 0); checkXhlBtn(); //初始化菜品 var cp_li = ''; if (data.jcdata.length > 0) { $.each(data.jcdata, function (i, jcdata) { if (parseInt(user.dining_hall_id) === parseInt(jcdata.jcplace.id)) { $.each(jcdata.jctime, function (j, time) { if (time.datename === data.page) { $.each(time.meal_list, function (k, cp) { cp.active = parseInt(cp.active) ? 'active' : ''; cp.cpnum = parseInt(cp.cart_num) ? cp.cart_num : ''; cp_li += '
  • ' + cp.jcname + '
    ' + cp.cpnum + '
  • '; }); } }); return false; } }); } $('#page-index .cp').html(cp_li); var showWxts = user ? user : null; if (showWxts && showWxts['company_id'] === '58') { var wxts = '
    温馨提示
    '; $('#page-index .cp-list').append(wxts); $('.ftwxts') .off('click') .on('click', function () { var popHtml = ''; $.popup(popHtml); }); } $('#page-index .ftpic').attr('id', 'ft' + data.dining_hall_id); rise_tips = false; dining_halls = data.dining_halls; } function printReload(self, num, limit, price, type) { var thisCpNum = $('.cp .active .badge').html() ? parseInt($('.cp .active .badge').html()) : 0; if (type === 'add') { num++; totalNum++; totalPrice = $.accAdd(totalPrice, price); thisCpNum++; } else if (type === 'minus') { num--; totalNum--; thisCpNum--; totalPrice = $.Subtr(totalPrice, price); } else { } $('.cp .active .badge').html(thisCpNum <= 0 ? '' : thisCpNum); $('.total-num').html(totalNum ? totalNum : ''); $('.total-price').html(totalPrice); self .parent('p') .children('.num') .html(num <= 0 ? '' : num); if (num <= 0) { self.parent('p').children('.minus').css('display', 'none'); self.parent('p').children('.add').css('opacity', 1); } else if (num > 0 && num < limit) { self.parent('p').children('.minus').css('display', 'block'); self.parent('p').children('.add').css('opacity', 1); } else if (num >= limit) { self.parent('p').children('.minus').css('display', 'block'); self.parent('p').children('.add').css('opacity', 0); } checkXhlBtn(); return num; } function checkXhlBtn() { if (!$(page).find('.xhl').hasClass('btnDisabled') && totalNum === 0) { $(page).find('.xhl').addClass('btnDisabled'); } else if ( totalNum !== 0 && $(page).find('.xhl').hasClass('btnDisabled') ) { $(page).find('.xhl').removeClass('btnDisabled'); } } function getData(pid, did) { //cookie不存在 if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); var token = user.token; $.ajax({ type: 'GET', url: '../api/dishes/index2', dataType: 'json', data: { token: token, dining_hall_id: pid, date_id: did, }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if(ret.data.user.init_pass_modify_time === null || ret.data.user.init_pass_modify_time === ''){ // 提示去修改密码 $.modal({ text: "欢迎使用“云中美食”,首次登陆请修改初始密码。", buttons: [{ text: '修改密码', onClick: function (){ $.router.replacePage('changePwd.html'); } }] }) } if (ret.data.user.need_submit_birth == '1') { //璺宠浆濉啓鐢熸棩鏃ユ湡椤甸潰 $.router.replacePage('setBirthday.html'); } else { innerData(ret.data); $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); } } else if (ret.status === -1) { $.closePanel(); $.closeModal(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } function changeFt(pid) { pid = parseInt(pid); var token = user.token; $.showIndicator(); $.ajax({ type: 'POST', url: '../api/user/alter/', dataType: 'json', data: { token: token, dining_hall_id: pid, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { $.closePanel(); if (ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { user = ret.data.user; $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); getData(); } $.alert(ret.message); } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } function payResult(recharge, action_text) { var payIcon = ''; var payTips = '

    支付成功

    '; var popupHTML = '', }); }); $(page).on('click', '.item-media img', function () { var src = $(this).attr('src'); $.modal({ title: '', afterText: '', }); }); $('.logout') .off('click') .on('click', function () { var token = user.token; $.ajax({ type: 'POST', url: '../api/user/logout/', dataType: 'json', data: { token: token, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1 || ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.alert('请检查网络!'); }, }); }); $(page).on('click', '.xhl', function () { if (!$(this).hasClass('btnDisabled')) { $.closePanel(); $.router.replacePage('confirmOrder.html'); } }); $(page).on('click', '.minus,.add', function () { var self = $(this); var num = parseInt( self.parent('p').children('.num').html() ? self.parent('p').children('.num').html() : 0 ); var price = parseFloat(self.parent('p').data('price')); var limit = parseInt(self.parent('p').data('limit')); var cid = parseInt(self.parent('p').data('id')); var type = self.data('type'); if (type === 'add') { if (num >= limit) { return; } var offset = $('#page-index .total-num').offset(); var url = $(this).parent('p').data('img'); $('#page-index .cart .icon-cart').addClass('active'); setTimeout(function () { $('#page-index .cart .icon-cart').removeClass('active'); }, 200); var flyer = $(''); flyer.fly({ start: { left: $(this).offset().left, //开始位置(必填)#fly元素会被设置成position: fixed top: $(this).offset().top, //开始位置(必填) }, end: { left: offset.left + 10, //结束位置(必填) top: offset.top + 10, //结束位置(必填) width: 0, //结束时宽度 height: 0, //结束时高度 }, onEnd: function () { //结束回调 this.destroy(); }, }); } else { if (num <= 0) { return; } } num = printReload(self, num, limit, price, type); //cookie不存在 var token = user.token; $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { token: token, date_dish_id: cid, num: num, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if ( parseFloat(totalPrice) !== parseFloat(ret.data.cart.price) || parseInt(totalNum) !== parseInt(ret.data.cart.orderNum) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); printReload(self, ret.data.cart.csnum, limit, price, 'none'); } if (!rise_tips && ret.data.cart.rise_info.rise_status) { if (type === 'add') { $.alert(ret.data.cart.rise_info.rise_tip); rise_tips = true; } } return; } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message, function () { var dish_type = $('.cp .item-content.active').data('pid'); getData(dining_hall_id, date_id, dish_type); }); } } //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, error: function () { $.alert('请检查网络!'); //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, }); }); $(page).on('click', '.cp li.item-content', function () { if ($(this).hasClass('active')) { return; } getData(dining_hall_id, $(this).data('id')); }); $(page).on('click', '.title', function () { openPicker($(this)); }); $(document) .off('click', '.changeButton') .on('click', '.changeButton', function () { $.closeModal(); var type = $(this).attr('data-type'); if ( $(page) .find('input[name=' + type + ']') .val() && $(page) .find('input[name=' + type + ']') .val() !== dining_hall_id + '-' + date_id ) { var meal = $(page) .find('input[name=' + type + ']') .val() .split('-'); getData(meal[0], meal[1]); } }); $(page).on('click', '.open-this-panel', function () { if ($('body').hasClass('with-panel-left-reveal')) { $.closePanel(); } else { $.openPanel('#panel-left'); } }); $(page).on('click', '.open-mypopover', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var hide_fkm = ''; if(user.company_id == '66'){ hide_fkm = "style='display:none;'" } var pHTML = '
    ' + '
    ' + '' + '
    ' + '
    '; if ($.popover(pHTML, $(this))) { $(document) .off('click', '.open-smart-tips') .on('click', '.open-smart-tips', function () { //fix app页面常驻不更新的bug var thisTime = new Date().getTime(); if (thisTime - beginTime < 3 * 60 * 60 * 1000) { var url = $('.open-mypopover').data('url'); var name = $('.open-mypopover').data('name'); var num = $('.open-mypopover').data('num'); var thislist = $('.open-mypopover').data('order_detail'); var serial_num = $('.open-mypopover').data('serial-num'); if (typeof window.webkit !== 'undefined') { // 2019-11-06 yw // 调亮 try { screenBrightnessUp(); } catch (e) {} } //12小时内不过期 //没内容则为空 if (url === ' ') { $.closeModal($('.popover')); $.toast('暂无符合当前就餐时间的二维码'); } else { thislist = $.parseJSON(thislist); var detail = '
    '; $.each(thislist, function (i, dish) { detail += '
    ' + '' + '
    '; }); detail += '
    '; //指定detial高度 var serial_num_html = ""; if(serial_num != '' && serial_num != undefined){ serial_num_html = "

    取餐号:"+serial_num+"

    "; } var popupHTML = ''; popupHTML += detail; $.popup(popupHTML); $('.popup .content-list').height( $(window).height() - $('.popup footer').height() - $('.popup .content-list').position().top ); } } else { $.closeModal($('.popover')); $.alert('页面已过期,将刷新', function () { getData(); }); } }); $(document) .off('click', '.open-pay-tips') .on('click', '.open-pay-tips', function () { if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); drawFKM(true, ''); }); } } else { $.alert('页面已过期,将刷新', function () { getData(); }); } }); }); // 商城供应商客服信息入口 $(document).on('pageInit', '#page-shop-extra', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); function initPage() { getData(); } function innerData(data) { $(page).find('.title').html(data.title); $('title').html(data.title); var cardHtml = ''; if (data.supplyInfo.length > 0) { $.each(data.supplyInfo, function (i, supplyInfo) { cardHtml += '
    ' + '
    ' + supplyInfo.supply_name + '
    ' + '
    ' + '
    邮递政策:' + supplyInfo.notes + '
    ' + '
    ' + '' + '
    '; }); } $(page).find('.content').html(cardHtml); } function getData() { if (user === null) { location.href = 'login.php'; return; } var token = user.token; setTimeout(function () { $.showIndicator(); }, 0); $.ajax2({ type: 'GET', url: '../show/mall.php?act=get_orders1227', dataType: 'json', data: { token: token }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { innerData(ret.data); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } }); // 用户申请 $(document).on('pageInit', '#page-userApply', function (e, pageId, page) { var userCanteenList = JSON.parse($.cookie('userCanteenList')); var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var token = user.token; getData(); // 得到列表 function getList(statue, token) { $.ajax({ type: 'POST', url: '../show/jtj.php?act=gdj_findApprovalByUser', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, status: statue, }), success: function success(ret) { if (ret.code === 0) { var dict = [ { label: '未审核', value: '1', }, { label: '通过', value: '2', }, { label: '不通过', value: '3', }, ], dict1 = [ { label: '过期', value: '0', }, { label: '有效', value: '1', }, ], tagColorDict = [ { label: 'red', value: '1', }, { label: 'blue', value: '2', }, { label: 'green', value: '3', }, ]; var result = getChinaName(dict, ret.content, 'status'); result = getChinaName(dict1, result, 'enable'); result = getChinaName(tagColorDict, result, 'status', 'TagColor'); var userApplyTpl = document.getElementById('userApplyTpl') .innerText; var userApplyList = document.getElementById( 'userApply-verify-list' ); userApplyList.innerHTML = getTplResult(result, userApplyTpl); } else if (ret.code === 1) { location.href = 'login.php'; return; } else { $.alert(ret.err_msg); } }, }); } function getData() { if (user === null) { location.href = 'login.php'; return; } getList('', token); // 得到列表的数据 } // 切换 tab $(page) .find('.canteen-tab>.ysh-tab-option') .click(function () { $('input[name=uA-choose-canteen]').select('close'); var index = $(this).index(); var aimItem = $(page).find('.canteen-tab>.ysh-tab-option').eq(index); var className = aimItem[0].getAttribute('data-value'); $(page) .find('.' + className) .addClass('ysh-tab-option-display') .siblings('div') .removeClass('ysh-tab-option-display'); aimItem.addClass('active').siblings('span').removeClass('active'); }); $(page).on('click', '.userApplyForm', function () { $.router.loadPage('userApplyForm.html'); }); $(page).on('click', '.goBack', function () { $.router.replacePage('index.html'); }); $(page).on('change', '#uA-select', function (e) { var status = $('select[id=uA-select]').val(); getList(status, token); }); var list123 = [ { title: '大楼食堂', value: '183', checked: false, }, { title: '武江食堂', value: '184', checked: true, }, ]; $.each(userCanteenList, function (i, dining_hall) { if (parseInt(dining_hall.value) === parseInt(user.dining_hall_id)) { $(page).find('input[name=uA-choose-canteen]').val(dining_hall.title); $(page) .find('input[name=uA-choose-canteen]') .data('value', dining_hall.value); } }); $('input[name=uA-choose-canteen]').select({ title: '选择默认饭堂', items: userCanteenList, onChange: function (d) { changeFt(d.values); }, }); function changeFt(pid) { pid = parseInt(pid); var token = user.token; $.showIndicator(); $.ajax({ type: 'POST', url: '../api/user/alter/', dataType: 'json', data: { token: token, dining_hall_id: pid, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { $.closePanel(); if (ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { user = ret.data.user; $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); getData(); } $.alert(ret.message); } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } }); // 用户申请 $(document).on('pageInit', '#page-userApplyForm', function (e, pageId, page) { var nowTime = '', selectList = []; var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var token = user.token; getData(); function getNowTime() { $.ajax({ type: 'POST', url: '../jtjapi/gdj/findNowDate/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, }), success: function success(ret) { if (ret.code == '0') { nowTime = ret.content; } }, }); } function setCanteenData() { $.ajax({ type: 'POST', url: '../jtjapi/gdj/findDininghall/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, }), success: function success(ret) { if (ret.code == '0') { selectList = []; ret.content.forEach(function (item) { item['title'] = item['name']; item['value'] = item['id']; item['checked'] = true; selectList.push(item); }); $('input[name=choose-canteen-apply]').select({ title: '选择默认饭堂', items: selectList, }); } else if (ret.code == '1') { $.alert(ret.err_msg); return; } else { $.alert('请检查网络!'); return; } }, }); } function getData() { if (user === null) { location.href = 'login.php'; return; } setCanteenData(); getNowTime(); } $(page) .find('#start-time') .calendar({ beforeOpen: function () { $('input[name=choose-canteen-apply]').select('close'); }, }); $(page) .find('#end-time') .calendar({ beforeOpen: function () { $('input[name=choose-canteen-apply]').select('close'); }, }); $(page).on('click', '#uAF-submit', function () { var canteen = document .querySelector('.choose-canteen-apply') .getAttribute('data-values'); var startTime = document.getElementById('start-time').value; var endTime = document.getElementById('end-time').value; var suggest = document.getElementById('suggest').value; var oStartTime = startTime.replace(/-/g, ''); var oEndTime = endTime.replace(/-/g, ''); nowTime = nowTime ? nowTime.replace(/-/g, '') : nowTime; // 表单验证 - 判断是不是空值 if (!canteen || !startTime || !endTime || !suggest) { alert('有内容为空'); return; } // 表单验证 - 判断开始时间是不是比结束时间大 if (parseInt(oStartTime) > parseInt(oEndTime)) { alert('开始时间不能比结束时间大'); return; } // 表单验证 - 判断开始时间是不是比今天小 if (parseInt(oStartTime) < parseInt(nowTime)) { alert('开始时间不能比今天小'); return; } $.ajax({ type: 'POST', url: '../jtjapi/gdj/insertDininghallApproval/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, reason: suggest, diningHallId: canteen, startDatetime: startTime, validDatetime: endTime, }), success: function success(ret) { if (ret.code == '0') { $.alert(ret.content); $.router.loadPage('userApply.html'); } else if (ret.code == '1') { $.alert(ret.err_msg); return; } else { $.alert('请检查网络!'); return; } }, }); }); }); // 管理员审核 $(document).on('pageInit', '#page-adminVerify', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var token = user.token; var userName = ''; var status = ''; var queryList = []; getList(token); // 设置是否要显示审核按钮 function getIsShow(list) { list.forEach(function (item) { if (item.status == '1') { item['statusEle'] = 'flex'; } else { item['statusEle'] = 'none'; } }); return list; } // 得到列表 function getList(token) { $.ajax({ type: 'POST', url: '../jtjapi/gdj/findDininghallApproval/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, status: status, username: userName, }), success: function success(ret) { if (ret.code === 0) { var dict = [ { label: '未审核', value: '1', }, { label: '通过', value: '2', }, { label: '不通过', value: '3', }, ], dict1 = [ { label: '过期', value: '0', }, { label: '有效', value: '1', }, ], tagColorDict = [ { label: 'red', value: '1', }, { label: 'blue', value: '2', }, { label: 'green', value: '3', }, ]; queryList = getChinaName(dict, ret.content, 'status'); queryList = getChinaName(dict1, queryList, 'enable'); queryList = getChinaName( tagColorDict, queryList, 'status', 'TagColor' ); queryList = getIsShow(queryList); var userVerfiyTpl = document.getElementById('userVerfiyTpl') .innerText; var userApplyList = document.getElementById('admin-verify-list'); userApplyList.innerHTML = getTplResult(queryList, userVerfiyTpl); } else if (ret.code === 1) { location.href = 'login.php'; return; } else if (ret.code === 2) { // 没有审核权限 $.alert(ret.err_msg, function () { $.router.replacePage('index.html'); }); } else { $.alert(ret.message); } }, }); } // 请求接口-审核-通过 function setVerifyResult(token, id, status, reply) { $.ajax({ type: 'POST', url: '../jtjapi/gdj/editDininghallApproval/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, id: id, status: status, reply: reply, }), success: function success(ret) { if (ret.code == 0) { $.alert('审核成功'); getList(token); } else if (ret.code === 1) { $.alert(ret.message); location.href = 'login.php'; return; } }, }); } // 下拉选项 $(page).on('change', '#aV-select', function (e) { status = $('select[id=aV-select]').val(); getList(token); }); // 输入用户 $(page).on( 'input', '#aV-userName', throttle(function () { userName = $('input[id=aV-userName]').val(); getList(token); }, 400) ); // 审核不通过 $(page).on('click', '.verify-default', function () { var index = $(this).data('index'); var item = queryList[index]; $.cookie('verifyItem', JSON.stringify(item), {}); $.router.loadPage('adminVerifyForm.html'); }); // 审核通过 $(page).on('click', '.verify-success', function () { var index = $(this).data('index'); var item = queryList[index]; $.confirm('是否确定该记录审核通过?', '审核通过', function () { setVerifyResult(token, item.id, '2', ''); }); }); $(page).on('click', '.goBack', function () { $.router.replacePage('index.html'); }); }); // 管理员审核表单 $(document).on( 'pageInit', '#page-adminVerifyForm', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var data = JSON.parse($.cookie('verifyItem')); var token = user.token; jointData(data); function jointData(data) { var canteen = document.querySelector('.userApplyForm-content .canteen'), timeStart = document.querySelector( '.userApplyForm-content .time-start' ), timeEnd = document.querySelector('.userApplyForm-content .time-end'), suggest = document.querySelector('.userApplyForm-content .suggest'); canteen.innerText = data['dininghallName']; timeStart.innerText = data['startDatetime']; timeEnd.innerText = data['validDatetime']; suggest.innerText = data['reason']; } $(page).on('click', '#uAF-submit', function () { var suggest = document.getElementById('suggest').value; // 表单验证 - 判断是不是空值 if (!suggest) { alert('回复内容不能为空'); return; } $.ajax({ type: 'POST', url: '../jtjapi/gdj/editDininghallApproval/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ id: data.id, token: token, reply: suggest, status: '3', }), success: function success(ret) { if (ret.code == '0') { $.alert(ret.content); $.router.loadPage('adminVerify.html'); } else if (ret.code == '1') { $.alert(ret.err_msg); return; } else { $.alert('请检查网络!'); return; } }, }); }); } ); // 工作人员确认 $(document).on('pageInit', '#page-workerEnter', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var token = user.token; var userName = '', queryList = []; getList(token); // 得到列表 function getList(token) { $.ajax({ type: 'POST', url: '../jtjapi/gdj/findApprovalBySuccess/', contentType: 'application/json; charset=utf-8', dataType: 'json', data: JSON.stringify({ token: token, username: userName, }), success: function success(ret) { if (ret.code === 0) { var dict = [ { label: '未审核', value: '1', }, { label: '通过', value: '2', }, { label: '不通过', value: '3', }, ], dict1 = [ { label: '过期', value: '0', }, { label: '有效', value: '1', }, ], tagColorDict = [ { label: 'red', value: '1', }, { label: 'blue', value: '2', }, { label: 'green', value: '3', }, ]; queryList = getChinaName(dict, ret.content, 'status'); queryList = getChinaName(dict1, queryList, 'enable'); queryList = getChinaName( tagColorDict, queryList, 'status', 'TagColor' ); var workerEnterTpl = document.getElementById('workerEnterTpl') .innerText; var workEnterList = document.getElementById( 'workEnter-verify-list' ); workEnterList.innerHTML = getTplResult(queryList, workerEnterTpl); } else if (ret.code === 1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } }, }); } // 输入用户 $(page).on( 'input', '#wE-userName', throttle(function () { userName = $('input[id=wE-userName]').val(); getList(token); }, 600) ); }); // 直播liveFt $(document).on('pageInit', '#page-liveFt', function (e, pageId, page) { $(page) .find('.goBack') .off('click') .on('click', function () { setTimeout(function () { $.router.back(); }, 450); player.stop(); }); var url = 'https://hls01open.ys7.com/openlive/bf9c9273b55541e6b16e141d5658fa8d.hd.m3u8'; var vedio_html = ''; $(page).find('.ft-live-video').html(vedio_html); var player = new EZUIPlayer('myPlayer'); // player.play(); }); /* ---- */ $(document).on('pageInit', '#page-confirmOrder', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); var totalNum = 0; var totalPrice = 0; initPage(); function initPage() { getData(); setHeight(); } function setHeight() { $('.content').height( $(window).height() - $('.bar-tab').height() - $('header').height() ); } function innerData(data) { //初始化title // 深圳电信不预存,使用翼支付直接支付 if(data.user.company_id == 66){ $(".xhl").hide(); $(".order_yzf").css('display', 'block'); }else{ $(".xhl").css('display', 'block'); $(".order_yzf").hide(); } $('title').html(data.title); $(page).find('.title').html(data.page); var cartHtml = ''; $.each(data.cart.data, function (i, ft) { cartHtml += '
    '; $.each(ft.data, function (i, date) { $.each(date.data, function (i, meal) { cartHtml += ''; }); }); cartHtml += '
    '; }); cartHtml = cartHtml ? cartHtml : '
    '; $('.cart-list').html(cartHtml); //初始化footer totalPrice = parseFloat(data.cart.total_price); totalNum = parseInt(data.cart.total_num); $('.total-num').html(totalNum ? totalNum : ''); $('.total-price').html(totalPrice ? totalPrice : 0); checkXhlBtn(); } function getData() { if (user === null) { location.href = 'login.php'; return; } setTimeout(function () { $.showIndicator(); }, 0); var token = user.token; $.ajax({ type: 'GET', url: '../api/dishes/cart', dataType: 'json', data: { token: token, }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { innerData(ret.data); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } $.hideIndicator(); }, error: function () { $.hideIndicator(); //特定处理 $.alert('请检查网络!'); }, }); } function printReload(self, num, limit, price, type) { if (type === 'add') { num++; totalNum++; totalPrice = $.accAdd(totalPrice, price); } else if (type === 'minus') { num--; totalNum--; totalPrice = $.Subtr(totalPrice, price); } else { } $('.total-num').html(totalNum ? totalNum : ''); $('.total-price').html(totalPrice); self.parent('p').children('.num').html(num); checkXhlBtn(); checkYzfBtn(); return num; } function checkXhlBtn() { if (!$(page).find('.xhl').hasClass('btnDisabled') && totalNum === 0) { $(page).find('.xhl').addClass('btnDisabled'); } else if ( totalNum !== 0 && $(page).find('.xhl').hasClass('btnDisabled') ) { $(page).find('.xhl').removeClass('btnDisabled'); } } function checkYzfBtn() { if (!$(page).find('.order_yzf').hasClass('btnDisabled') && totalNum === 0) { $(page).find('.order_yzf').addClass('btnDisabled'); } else if ( totalNum !== 0 && $(page).find('.order_yzf').hasClass('btnDisabled') ) { $(page).find('.order_yzf').removeClass('btnDisabled'); } } $(window) .off('resize') .on('resize', function () { setHeight(); }); $(page).on('click', '.goBack', function () { $.router.replacePage(initTheme(user.theme)); }); $(page).on('click', '.minus,.add', function () { var self = $(this); var num = parseInt( self.parent('p').children('.num').html() ? self.parent('p').children('.num').html() : 0 ); var price = parseFloat(self.parent('p').data('price')); var limit = parseInt(self.parent('p').data('limit')); var cid = parseInt(self.parent('p').data('id')); // 判断是否有deliver_place_id var deliver_place_id = null; if(self.parent('p').data('deliver_place_id')){ deliver_place_id = self.parent('p').data('deliver_place_id'); } var type = self.data('type'); if (type === 'add') { if (num >= limit) { return; } } else { if (num <= 0) { return; } } num = printReload(self, num, limit, price, type); //cookie不存在 var token = user.token; $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { token: token, date_dish_id: cid, num: num, deliver_place_id: deliver_place_id, }, success: function (ret) { if (typeof ret.status !== 'undefined') { if (ret.status === 1) { if ( parseFloat(totalPrice) !== parseFloat(ret.data.cart.price) || parseInt(totalNum) !== parseInt(ret.data.cart.orderNum) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); printReload(self, ret.data.cart.csnum, limit, price, 'none'); } return; } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message, function () { getData(); }); } } //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, error: function () { $.alert('请检查网络!'); //回退 printReload( self, num, limit, price, type === 'add' ? 'minus' : 'add' ); }, }); }); $(page).on('click', '.empty', function () { var self = $(this); $.confirm('是否确定清空' + $(this).data('name'), function () { $.showIndicator(); var cs = []; $.each(self.parents('ul').children('.cs'), function (i, v) { var csItem = {}; csItem.date_dish_id = $(v).data('id'); csItem.num = 0; cs.push(csItem); }); var token = user.token; $.ajax({ type: 'POST', url: '../api/dishes/add/', dataType: 'json', data: { date_dish_ids: JSON.stringify(cs), token: token, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { var date_dish_list = ret.data.cart.date_dish_ids; if (ret.data.cart.date_dish_ids) { for (var i = 0; i < date_dish_list.length; i++) { delete date_dish_list[i].dishes_info; } } if ( ret.status === 1 && JSON.stringify(cs) === JSON.stringify(date_dish_list) ) { totalNum = parseInt(ret.data.cart.orderNum); totalPrice = parseFloat(ret.data.cart.price); if (totalNum === 0) { self .parents('ul') .html( '
  • 你的订单为空,赶紧点餐吧!

  • ' ); } else { self.parents('ul').remove(); } $('.total-num').html(totalNum ? totalNum : ''); $('.total-price').html(totalPrice); checkXhlBtn(); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.alert('请检查网络!'); $.hideIndicator(); }, }); }); }); $(page).on('click', '.xhl', function () { if (!$(this).hasClass('btnDisabled')) { var notesObj = {}; var is_notes = 1; $("textarea[class*='notes']").each(function() { // 获取类名并尝试匹配正则表达式以提取 date_id var className = $(this).attr("class"); var match = className.match(/notes\[(\d+)\]/); // 调整正则以匹配你的格式 if (match) { var dateId = match[1]; var text = $(this).val(); // 获取placeholder文本 if(text === ''){ is_notes = 0; } notesObj[dateId] = $.trim(text); // 创建对象,使用 date_id 作为键,placeholder文本作为值 } }); if(is_notes == 0){ $.alert('请先填写备注'); return; } $.showIndicator(); var token = user.token; $.ajax({ type: 'POST', url: '../api/order/add/', dataType: 'json', data: { total_price: totalPrice, token: token, notes: notesObj }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); var oids = []; $.each(ret.data.order, function (i, v) { var order = {}; order.order_id = v.order_id; oids.push(order); }); $.toast('账单生成中', 1000); // if (ret.data.user.dining_hall_id === '1') { var today = new Date(); var xq = parseInt(today.getDay()); var z1 = false; var z2 = false; var z5 = false; $(page) .find('.meal-name') .each(function (i, v) { z1 = $(v).html().indexOf('周一') !== -1 && $(v).html().indexOf('半成品') === -1 ? true : false; z2 = $(v).html().indexOf('周二') !== -1 && $(v).html().indexOf('半成品') === -1 ? true : false; return false; }); if (xq === 4 && z1) { $.ajax({ url: 'http://61.146.51.59:8001/dc/noti.php', type: 'GET', success: function () {}, }); } else if (xq === 5 && z2) { $.ajax({ url: 'http://61.146.51.59:8001/dc/noti.php', type: 'GET', success: function () {}, }); } else if (xq === 2 && z5) { $.ajax({ url: 'http://61.146.51.59:8001/dc/noti.php', type: 'GET', success: function () {}, }); } } setTimeout(function () { switch (user.theme) { case '3': $.router.replacePage( 'thisOrder2.html?confirmOrder=1&oid=' + encodeURIComponent(JSON.stringify(oids)) ); break; case '4': $.router.replacePage( 'thisOrder3.html?confirmOrder=1&oid=' + encodeURIComponent(JSON.stringify(oids)) ); break; default: $.router.replacePage( 'thisOrder.html?confirmOrder=1&oid=' + encodeURIComponent(JSON.stringify(oids)) ); break; } // $.router.replacePage( // 'thisOrder.html?confirmOrder=1&oid=' + // encodeURIComponent(JSON.stringify(oids)) // ); }, 900); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message, function () { getData(); }); } } }, error: function () { $.alert('请检查网络!'); $.hideIndicator(); }, }); } }); $(page).on('click', '.order_yzf', function () { if (!$(this).hasClass('btnDisabled')) { var notesObj = {}; var is_notes = 1; $("textarea[class*='notes']").each(function() { // 获取类名并尝试匹配正则表达式以提取 date_id var className = $(this).attr("class"); var match = className.match(/notes\[(\d+)\]/); // 调整正则以匹配你的格式 if (match) { var dateId = match[1]; var text = $(this).val(); // 获取placeholder文本 if(text === ''){ is_notes = 0; } notesObj[dateId] = $.trim(text); // 创建对象,使用 date_id 作为键,placeholder文本作为值 } }); if(is_notes == 0){ $.alert('请先填写备注'); return; } $.showIndicator(); var token = user.token; $.ajax({ type: 'POST', url: '../api/order/add_yzf/', dataType: 'json', data: { total_price: totalPrice, token: token, notes: notesObj }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { // location.href = decodeURIComponent(ret.data.url); if (typeof iosJs !== 'undefined') { try { iosJs.openInSafari(location.href + '/../' + decodeURIComponent(ret.data.url)); } catch (e) {} } else if (typeof window.webkit !== 'undefined') { // 2019-11-05 chinieer try { allowsBackFrowardGesture(true); // location.href = decodeURIComponent(ret.data.url); // promptOpenNewWeb(decodeURIComponent(location.href + '/../' + ret.data.url), '翼支付充值'); promptOpenInSafari(decodeURIComponent(ret.data.url)); } catch (e) {} } else { location.href = decodeURIComponent(ret.data.url); } $.modal({ title: '请确认支付是否已经完成', text: '', verticalButtons: true, buttons: [ { text: '已完成支付', onClick: function () { requestYzfPayRe(ret.data.code); }, }, { text: '支付遇到问题,重新支付', onClick: function () { $.closeModal(); getData(); }, }, { text: '放弃支付', onClick: function () { $.closeModal(); }, }, ], }); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.alert('请检查网络!'); $.hideIndicator(); }, }); } }); function requestYzfPayRe(code) { //var token = user.token; $.showIndicator(); $.ajax({ type: 'GET', url: '../show/get.php', dataType: 'json', data: { act: 'get_yzfpay_status', code: code, }, success: function (ret) { if (typeof ret.status !== 'undefined') { $.hideIndicator(); if (ret.status === 1) { //$.showIndicator(); //支付成功 $.router.loadPage('listOrder.html'); } else if (ret.status === 0) { $.modal({ title: '暂未收到支付结果', text: '', verticalButtons: true, buttons: [ { text: '再次查询', onClick: function () { requestYzfPayRe(code); }, }, { text: '放弃查询', onClick: function () { $.closeModal(); }, }, ], }); //setTimeout(requestWxPayRe(code),2000); //轮询 } } else { $.hideIndicator(); $.alert('请求出错'); } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } }); $(document).on('pageInit', '#page-changePwd', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); if (typeof decrypt == 'undefined') { var s = document.createElement('script'); s.src = '../show/js/jsencrypt.min.js'; document.head.appendChild(s); } function initPage() { if (user === null) { location.href = 'login.php'; return; } //无需请求api,写死 if (parseInt(user.jdmm) === 1) { $.alert('由于当前密码强度较弱,请先修改密码!'); } $('title').html('修改个人信息'); } $(page).on('click', '.submit', function () { var decrypt = new JSEncrypt(); decrypt.setPublicKey( '-----BEGIN PUBLIC KEY-----\nMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAM6/tcIvsbXtjDMBnU0DbuxwU7Zy+9Ey\nBdkZ/BzlO5DOqv5oP8Pj4EYGQSJmKlT6aBlxlWNMru8GGNOFacZFLD8CAwEAAQ==\n-----END PUBLIC KEY-----' ); var opw = $.trim($('input[name=opw]').val()); var npw = $.trim($('input[name=npw]').val()); var cnpw = $.trim($('input[name=cnpw]').val()); if (opw.length <= 0) { $.alert('原密码不能为空'); return; } else if (npw !== cnpw) { $.alert('新密码输入不一致'); return; } else if (!new RegExp(/[A-Za-z0-9]{1,16}$/).test(npw)) { $.alert('密码需为字母或数字'); return; } else if (!new RegExp(/[A-Za-z0-9]{1,16}$/).test(cnpw)) { $.alert('密码需为字母或数字'); return; } var token = user.token; $.showIndicator(); $.ajax({ type: 'POST', url: '../api/user/password/', dataType: 'json', data: { token: token, old_password: decrypt.encrypt(opw), new_password: decrypt.encrypt(npw), npw: npw, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { $.alert(ret.message); $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365, }); /* if ($.cookie('remember')) { $.cookie('password', npw, { expires: 365 * 10, }); }*/ $.router.replacePage( user.theme == '1' ? 'index.html' : 'index2.html' ); } else if (ret.status === -1) { $.closePanel(); location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); }); }); $(document).on('pageInit', '#page-changeFt', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); function initPage() { if (user === null) { location.href = 'login.php'; return; } getData(); } function getData() { //cookie不存在 if (user === null) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return false; } setTimeout(function () { $.showIndicator(); }, 0); var token = user.token; $.ajax2({ type: 'GET', url: '../api/dishes/', dataType: 'json', data: { token: token, }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { // else { innerData(ret.data); $.caesarCache('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); } else if (ret.status === -1) { $.closePanel(); $.closeModal(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } function innerData(data) { var listHtml = ""; $.each(data.jcdata, function (i, date) { var checked = ""; if(user.dining_hall_id == date.jcplace.id){ checked = "checked='checked'"; } listHtml += `
  • `; $(".ftList").empty().html(listHtml); }); } $(page).on('click', '.submit', function () { var change_dining_hall_id = $.trim($('input[name=change_dining_hall_id]:checked').val()); var token = user.token; changeFt(change_dining_hall_id); }); function changeFt(pid) { pid = parseInt(pid); var token = user.token; $.showIndicator(); $.ajax2({ type: 'POST', url: '../api/user/alter/', dataType: 'json', data: {token: token, dining_hall_id: pid}, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { $.closePanel(); if (ret.status === -1) { $.closePanel(); setTimeout(function () { location.href = 'login.php'; }, 200); return; } else if (ret.status === 1) { user = ret.data.user; $.cookie('user', JSON.stringify(ret.data.user), { expires: 365 * 10, }); getData(); } $.alert(ret.message); } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } }); $(document).on('pageInit', '#page-thisOrder', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); function initPage() { var oid = $.getURLParameter('oid'); if (oid) { getData(oid); } else { $.alert('非法参数', function () { $.router.replacePage(initTheme(user.theme)); }); } } function innerData(data) { //初始化title $(page).find('.title').html(data.page); $('title').html(data.title); var cardHtml = ''; $.each(data.orders, function (i, orders) { var order = orders.order; cardHtml += '

    ' + order.meal_text + '

    订单编号:' + order.code + '

    '; if (order.cancel_time !== null) { cardHtml += '

    取消时间:' + order.cancel_time + '

    '; } cardHtml += '
    '; cardHtml += '
    • 名称
    • 数量
    • 金额
    '; $.each(orders.order_detail, function (i, detail) { cardHtml += ''; }); if (parseFloat(order.book_fee) > 0) { cardHtml += '
    • 手续费
    • ' + order.book_fee + '
    '; } cardHtml += '
    • ' + order.create_time + '
    • 总金额
    '; cardHtml += '
    • 取餐后可点击菜品评论
    • ¥' + order.total_price + '
    '; cardHtml += '
    '; cardHtml += ''; cardHtml += '
    '; }); $(page).find('.content').html(cardHtml); } function getData(oid) { if (user === null) { location.href = 'login.php'; return; } var token = user.token; setTimeout(function () { $.showIndicator(); }, 0); $.ajax({ type: 'GET', url: '../api/order/detail/', dataType: 'json', data: { token: token, order_ids: oid, }, success: function (ret) { setTimeout(function () { $.hideIndicator(); }, 0); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { innerData(ret.data); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } $(page).on('click', '.go-back', function () { if ($.getURLParameter('confirmOrder')) { $.router.replacePage(initTheme(user.theme)); } else { $.router.back(); } }); $(page).on('click', '.tc', function () { var id = $(this).data('id'); var tips = $(this).data('tips') !== 'null' ? ',' + $(this).data('tips') : ''; var name = $(this).data('name'); var price = $(this).data('price'); var self = $(this); $.confirm( '是否确认退订' + name + tips + ',合计退回金额' + price + '元', function () { var token = user.token; $.showIndicator(); $.ajax({ type: 'POST', url: '../api/order/cancel/', dataType: 'json', data: { token: token, order_id: id, cancel_price: price, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { $.alert(ret.message); var mark = self .parents('.card') .children('.card-content') .children('.card-content-inner') .children('.totalprice'); var myClass = mark.data('class'); mark.removeClass(myClass); mark.addClass('s' + ret.data.order_state_id); self.parents('.item-content').remove(); //回调 } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } ); }); $(page).on('click', '.pj', function () { if (parseInt($(this).data('star')) < 0) { $.alert('取餐后即可点评'); return; } var name = $(this).data('name'); var id = $(this).data('id'); var url = $(this).data('img'); var popupHTML = ''; $.popup(popupHTML); $('.popup .star') .off('click') .on('click', function () { $(this).addClass('active'); $(this).prevAll().addClass('active'); $(this).nextAll().removeClass('active'); }); $('.popup textarea') .off('focus') .on('focus', function () { if ($.device.ios) { $('.popup').addClass('goTop'); } }); $('.popup textarea') .off('blur') .on('blur', function () { if ($.device.ios) { $('.popup').removeClass('goTop'); } }); $('.submitPj').on('click', function () { var id = $(this).data('id'); var star = $('.popup .star.active').length; var comment = $.trim($('textarea').val()); if (star === undefined) { $.alert('请先评分'); return; } $.showIndicator(); var token = user.token; $.ajax({ type: 'POST', url: '../api/order/comment/', dataType: 'json', data: { token: token, order_detail_id: id, star: star, comment: comment, }, success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { $.closeModal(); $('.pjn' + id).data('star', -1); $.alert(ret.message); //回调 } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); }); }); $(page).on('click', '.qc', function () { var url = $(this).data('url'); var name = $(this).data('name'); var num = $(this).data('num'); var serial_num = $(this).data('serial-num'); var serial_num_html = ""; if(serial_num != '' && serial_num != undefined){ serial_num_html = "

    取餐号:"+serial_num+"

    "; } var popupHTML = ''; $.popup(popupHTML); }); }); $(document).on('pageInit', '#page-thisOrder2', function (e, pageId, page) { var user = $.parseJSON($.caesarCache('user') ? $.caesarCache('user') : null); initPage(); function initPage() { var oid = $.getURLParameter('oid'); if (oid) { getData(oid); } else { $.alert('非法参数', function () { $.router.replacePage(initTheme(user.theme)); }); } } // 订单详情-渲染画面 function innerData(data) { var innerWidth = document.body.clientWidth + 'px'; //初始化title $(page).find('.title').html(data.page); $('title').html(data.title); var cardHtml = ''; $.each(data.orders, function (i, orders) { var orders = data.orders[i]; var order = orders.order; // 订单标题 cardHtml += '
    ' + '
    ' + '

    ' + order.meal_text + '

    订单编号:' + order.code + '

    '; if (order.cancel_time !== null) { cardHtml += '

    取消时间:' + order.cancel_time + '

    '; } cardHtml += '
      ' + '
    • 名称
    • 数量
    • 金额
    '; // 订单菜品 $.each(orders.order_detail, function (i, detail) { cardHtml += ''; }); if (parseFloat(order.book_fee) > 0) { cardHtml += '
    • 手续费
    • ' + order.book_fee + '
    '; } cardHtml += '
    • ' + order.create_time + '
    • 总金额
    '; cardHtml += '
    • 取餐后可点击菜品评论
    • ¥' + order.total_price + '
    '; cardHtml += '
    '; cardHtml += ''; cardHtml += '
    '; cardHtml += '
    '; // 主题是 "3", 不是取消状态, 已经取餐 // if (user.theme == "3" && parseInt(order.show_qr)) { if ( user.theme == '3' && parseInt(order.show_qr) && !parseInt(order.cancel.allow_cancel) ) { var token = user.token; $.ajax({ type: 'post', url: '../show/get.php?act=jtj_get_pj&token=' + token + '&oid=' + order.id + '&page=1', dataType: 'json', success: function (ret) { $.hideIndicator(); if (typeof ret.status !== 'undefined') { if (ret.status === 1) { var guangpanInfo = ret.data.guangpanInfo; var pjInfo = ret.data.pjInfo; cardHtml += '
    '; if (pjInfo) { var starNum = pjInfo.score; var content = pjInfo.content; cardHtml += renderPjInfo(starNum, content); } else { // 评价当前餐 cardHtml += '
    评价当前餐
    '; cardHtml += '
    ' + '描述相符' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '; } cardHtml += '
    '; if (guangpanInfo) { var pics = guangpanInfo.pics; var status = guangpanInfo.statusName; // 光盘行动 cardHtml += renderGuangpanInfo(pics, status); } else { // 光盘行动 cardHtml += '
    上传光盘行动
    '; cardHtml += '
    '; cardHtml += '
    ' + '

    上传图片

    ' + '
    '; } if (user.smsCellphone === '13621417547') { // 是测试用户 var inputListTpl = document.querySelector( '#input-list-tpl' ); var inputListTplText = inputListTpl.innerText; cardHtml += inputListTplText; } cardHtml += '
    '; $(page).find('.content').html(cardHtml); bindEvaluateAndClean(guangpanInfo, pjInfo, i); } else if (ret.status === -1) { location.href = 'login.php'; return; } else { $.alert(ret.message); } } }, error: function () { $.hideIndicator(); $.alert('请检查网络!'); }, }); } else { cardHtml += '
    '; $(page).find('.content').html(cardHtml); } }); } // 渲染上传光盘行动的页面 function renderGuangpanInfo(pics, status) { var cardHtml = '
    上传光盘行动 (' + status + ')
    '; cardHtml += '
    '; // 显示上传的图片 $.each(pics, function (index, item) { cardHtml += '' + '
    ' + '
    '; }); cardHtml += '
    '; return cardHtml; } function renderPjInfo(starNum, content) { var cardHtml = ''; var text = ''; switch (starNum + '') { case '1': text = '非常差'; break; case '2': text = '差'; break; case '3': text = '一般'; break; case '4': text = '好'; break; case '5': text = '非常好'; break; default: text = ''; break; } // 评价当前餐 cardHtml += '
    评价当前餐
    '; cardHtml += '
    ' + '描述相符' + '
    '; for (var j = 0; j < 5; j++) { cardHtml += '
    '; } cardHtml += '
    ' + '
    ' + '
    ' + '套餐评价
    ' + content + '
    ' + '
    '; return cardHtml; } // 点击上传图片,出现详情 function showImgInfo(guangpanInfo, index) { var pics = guangpanInfo.pics; $('#butList-' + index + ' .uploadImg') .off('click') .on('click', function (e) { var index = parseInt($(this).data('index')); if (index || index === 0) { var src = pics[index]; // 如果dom存在,就弹出框 var popupHTML = '