123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- // 选择保洁师
- define(['$', 'template', 'user', 'config', 'order', 'IScroll', 'review', 'native'], function ($, template, user, config, order, IScroll, review, native) {
- function back(event) {
- event.preventDefault();
- $(document).trigger('spa:navigate', {
- hash: 'beautician',
- pushData: {
- extraService: cachePageData.extraService
- }
- });
- }
- function renderCommentTemplate(comments, hasMore) {
- var tpl = template('beautician/comment', {
- comments: comments,
- imgW: parseInt((document.body.clientWidth - 30) / 3) - 5
- });
- $('#tech-comment').find('ul').append(tpl);
- if (hasMore) {
- $('#tech-comment .btn-more-container').removeClass('hide');
- } else {
- $('#tech-comment .btn-more-container').addClass('hide');
- }
- }
- var cachePageData = {};
- return {
- title: '壹管家上门服务',
- body: '',
- init: function (pageData, dtd) {
- // var productType = pageData.pushData.productType;
- var $view = this;
- var $doc = $(document);
- //返回
- $.newTouch('.back-button', function (event) {
- back.call(this, event);
- }, $view);
- $view.on('tapBackButton', function (event) {
- back.call(this, event);
- });
- $view.on('swipeRight', function (event) {
- back.call(this, event);
- });
- //加载更多
- $.newTouch('.btn-more-review', function(event) {
- $doc.trigger('spa:openloader');
- review.getTechComment(cachePageData.id, function(res){
- $doc.trigger('spa:closeloader');
- if (res.success) {
- var hasMore = true;
- if (res.current_page >= res.sum_page) {
- hasMore = false;
- }
- renderCommentTemplate(res.data.comments, hasMore);
- pageData.scroll.refresh();
- }
- }, false);
- }, $view);
- // 图片预览
- $.newTouch('.img-preview', function(event){
- var current = $(this).attr('data-src');
- var i = $(this).parents('.table-view-cell').index();
- var imgList = review['techCommentData'][cachePageData.id]['list'][i]['pics'];
- var imgLists = [];
- imgList.forEach(function(item, index){
- imgLists.push(item.url);
- });
- native.previewImage(imgLists, current);
- }, $view);
- // 点击用户头像 打开用户个人中心
- $.newTouch('.user-info-btn', function(event){
- var url = 'http://common.yiguanjia.me'
- if (config.test) {
- url = 'http://common.yiguanjia.me';
- }
- var id = $(this).attr('data-id');
- var param = {
- url: url + '/user/' + id
- };
- native.openURL(param);
- }, $view);
- dtd.resolve();
- },
- beforeopen: function (pageData, dtd) {
- var $view = this;
- var pushData = pageData.pushData;
- var $doc = $(document);
- cachePageData.extraService = pushData.extraService;
- var tmpData = {
- showNavBar: !config.isWX && !config.isChubao,
- name: pushData.name,
- desc: pushData.desc,
- favor: pushData.favor,
- avatar: pushData.avatar,
- recommend: pushData.recommend
- };
- var tpl = template('beautician/detail', tmpData);
- $view.find('.spa-page-body').html(tpl);
- setTimeout(function() {
- pageData.scroll = new IScroll('#beauticianDetailScroll');
- }, 500);
- dtd.resolve();
- },
- afteropen: function (pageData, dtd) {
- var $view = this;
- var pushData = pageData.pushData;
- var $doc = $(document);
- cachePageData.id = parseInt(pushData.id);
- $doc.trigger('spa:openloader');
- review.getTechComment(pushData.id, function(res) {
- $doc.trigger('spa:closeloader');
- if (res.success) {
- var hasMore = true;
- if (res.current_page >= res.sum_page) {
- hasMore = false;
- }
- $('#tech-comment').find('.extra-service-title').find('span').html('(' + res.sum_count + ')')
- if (res.data.comments.length) {
- $('#tech-comment').find('.btn-more-container').removeClass('hide');
- renderCommentTemplate(res.data.comments, hasMore);
- }
- if (pageData.scroll) {
- pageData.scroll.destroy();
- pageData.scroll = null;
- }
- setTimeout(function() {
- pageData.scroll = new IScroll('#beauticianDetailScroll');
- }, 500);
- }
- }, true);
- dtd.resolve();
- }
- }
- });
|