Showing
15 changed files
with
430 additions
and
375 deletions
@@ -20,7 +20,7 @@ const detailHelper = require('../models/detail-helper'); | @@ -20,7 +20,7 @@ const detailHelper = require('../models/detail-helper'); | ||
20 | module.exports.showMain = (req, res, next) => { | 20 | module.exports.showMain = (req, res, next) => { |
21 | // TODO: vipLevel = 0; // 用户等级 | 21 | // TODO: vipLevel = 0; // 用户等级 |
22 | 22 | ||
23 | - let pid = 217011; | 23 | + let pid = 204503; |
24 | 24 | ||
25 | let uid = req.user.uid || ''; | 25 | let uid = req.user.uid || ''; |
26 | 26 |
@@ -6,18 +6,24 @@ const sign = require(`${library}/sign`); | @@ -6,18 +6,24 @@ const sign = require(`${library}/sign`); | ||
6 | 6 | ||
7 | const api = new API(); | 7 | const api = new API(); |
8 | 8 | ||
9 | +const fake = require('./fake'); | ||
10 | + | ||
9 | module.exports.getBannerInfoAsync = (bid) => { | 11 | module.exports.getBannerInfoAsync = (bid) => { |
10 | - return api.get('', sign.apiSign({ | ||
11 | - method: 'web.brand.banner', | ||
12 | - brand_id: bid | ||
13 | - })); | 12 | + //return api.get('', sign.apiSign({ |
13 | + // method: 'web.brand.banner', | ||
14 | + // brand_id: bid | ||
15 | + //})); | ||
16 | + | ||
17 | + return Promise.resolve(fake.fakeBrandBanner); | ||
14 | }; | 18 | }; |
15 | 19 | ||
16 | module.exports.getBrandLogoByDomainAsync = (domain) => { | 20 | module.exports.getBrandLogoByDomainAsync = (domain) => { |
17 | - return api.get('', sign.apiSign({ | ||
18 | - domain: domain, | ||
19 | - method: 'web.brand.byDomain' | ||
20 | - })); | 21 | + //return api.get('', sign.apiSign({ |
22 | + // domain: domain, | ||
23 | + // method: 'web.brand.byDomain' | ||
24 | + //})); | ||
25 | + | ||
26 | + return Promise.resolve(fake.fakeBrandDomain); | ||
21 | }; | 27 | }; |
22 | 28 | ||
23 | 29 |
@@ -12,21 +12,23 @@ module.exports.getBrandByDomainAsync = (domain) => { | @@ -12,21 +12,23 @@ module.exports.getBrandByDomainAsync = (domain) => { | ||
12 | return co(function*() { | 12 | return co(function*() { |
13 | let brandInfo = yield api.getBrandLogoByDomainAsync(domain); | 13 | let brandInfo = yield api.getBrandLogoByDomainAsync(domain); |
14 | 14 | ||
15 | + if (!brandInfo.data || brandInfo.code !== 200) { | ||
16 | + return {}; | ||
17 | + } | ||
18 | + | ||
15 | let result = {}; | 19 | let result = {}; |
16 | 20 | ||
17 | - if (brandInfo.data && brandInfo.code === 200) { | ||
18 | - result.brandId = brandInfo.data.id || ''; | ||
19 | - result.node = brandInfo.data.static_content_code || false; | ||
20 | - result.brandBanner = brandInfo.data.brand_banner || ''; | ||
21 | - result.brandNameEn = brandInfo.data.brand_name_en || ''; | ||
22 | - result.brandNameCn = brandInfo.data.brand_name_cn || ''; | ||
23 | - result.brandAbout = brandInfo.data.brand_intro || ''; | ||
24 | - result.shopTemplateType = brandInfo.data.shop_template_type ? | ||
25 | - parseInt(brandInfo.data.shop_template_type) : ''; | ||
26 | - result.type = brandInfo.data.type ? +brandInfo.data.type : 0; | ||
27 | - result.shopId = brandInfo.data.shop_id || ''; | 21 | + result.brandId = brandInfo.data.id || ''; |
22 | + result.node = brandInfo.data.static_content_code || false; | ||
23 | + result.brandBanner = brandInfo.data.brand_banner || ''; | ||
24 | + result.brandNameEn = brandInfo.data.brand_name_en || ''; | ||
25 | + result.brandNameCn = brandInfo.data.brand_name_cn || ''; | ||
26 | + result.brandAbout = brandInfo.data.brand_intro || ''; | ||
27 | + result.shopTemplateType = brandInfo.data.shop_template_type ? | ||
28 | + parseInt(brandInfo.data.shop_template_type) : ''; | ||
29 | + result.type = brandInfo.data.type ? +brandInfo.data.type : 0; | ||
30 | + result.shopId = brandInfo.data.shop_id || ''; | ||
28 | 31 | ||
29 | - } | ||
30 | return result; | 32 | return result; |
31 | })(); | 33 | })(); |
32 | }; | 34 | }; |
@@ -15,33 +15,38 @@ const api = require('./detail-comment-api'); | @@ -15,33 +15,38 @@ const api = require('./detail-comment-api'); | ||
15 | 15 | ||
16 | const detailHelper = require('./detail-helper'); | 16 | const detailHelper = require('./detail-helper'); |
17 | 17 | ||
18 | +const fake = require('./fake'); | ||
19 | + | ||
18 | module.exports.indexAsync = (pid, page, size) => { | 20 | module.exports.indexAsync = (pid, page, size) => { |
19 | return co(function *() { | 21 | return co(function *() { |
20 | - let commentList = yield api.indexAsync(pid, page, size); | ||
21 | - | ||
22 | - if (commentList.code && commentList.code === 200) { | ||
23 | - return commentList.data.map(value => { | ||
24 | - let item = {}; | ||
25 | - | ||
26 | - let avatar = detailHelper.DEFAULT_AVATAR_ICO; | ||
27 | - | ||
28 | - if (value.head_ico) { | ||
29 | - avatar = `${detailHelper.IMAGE_SERVICE_URL}${_.last(value.head_ico.split('headimg'))}`; | ||
30 | - avatar = helpers.image(avatar, 30, 30); | ||
31 | - } | ||
32 | - | ||
33 | - item.avatar = avatar; | ||
34 | - item.userName = value.nickname; | ||
35 | - item.color = value.color_name; | ||
36 | - item.size = value.size_name; | ||
37 | - item.comment = value.content || ''; | ||
38 | - item.date = value.create_time; | ||
39 | - item.total = value.total; | ||
40 | - | ||
41 | - return item; | ||
42 | - }); | ||
43 | - } | 22 | + return fake.fakeComments; |
23 | + //let commentList = yield api.indexAsync(pid, page, size); | ||
24 | + // | ||
25 | + //if (!commentList.code || !commentList.code !== 200) { | ||
26 | + // return []; | ||
27 | + //} | ||
28 | + | ||
29 | + | ||
30 | + //return commentList.data.map(value => { | ||
31 | + // let item = {}; | ||
32 | + // | ||
33 | + // let avatar = detailHelper.DEFAULT_AVATAR_ICO; | ||
34 | + // | ||
35 | + // if (value.head_ico) { | ||
36 | + // avatar = `${detailHelper.IMAGE_SERVICE_URL}${_.last(value.head_ico.split('headimg'))}`; | ||
37 | + // avatar = helpers.image(avatar, 30, 30); | ||
38 | + // } | ||
39 | + // | ||
40 | + // item.avatar = avatar; | ||
41 | + // item.userName = value.nickname; | ||
42 | + // item.color = value.color_name; | ||
43 | + // item.size = value.size_name; | ||
44 | + // item.comment = value.content || ''; | ||
45 | + // item.date = value.create_time; | ||
46 | + // item.total = value.total; | ||
47 | + // | ||
48 | + // return item; | ||
49 | + //}); | ||
44 | 50 | ||
45 | - return []; | ||
46 | })(); | 51 | })(); |
47 | }; | 52 | }; |
@@ -15,7 +15,7 @@ const api = new API(); | @@ -15,7 +15,7 @@ const api = new API(); | ||
15 | /** | 15 | /** |
16 | * 咨询内容列表 | 16 | * 咨询内容列表 |
17 | */ | 17 | */ |
18 | -module.exports.indexAsync = function(uid, pid, page, size) { | 18 | +module.exports.indexAsync = function (uid, pid, page, size) { |
19 | let param = {}; | 19 | let param = {}; |
20 | 20 | ||
21 | param.method = 'app.consult.li'; | 21 | param.method = 'app.consult.li'; |
@@ -34,7 +34,7 @@ module.exports.indexAsync = function(uid, pid, page, size) { | @@ -34,7 +34,7 @@ module.exports.indexAsync = function(uid, pid, page, size) { | ||
34 | /** | 34 | /** |
35 | * 添加咨询操作 | 35 | * 添加咨询操作 |
36 | */ | 36 | */ |
37 | -module.exports.createAsync = function(uid, pid, content) { | 37 | +module.exports.createAsync = function (uid, pid, content) { |
38 | return api.post('', sign.apiSign({ | 38 | return api.post('', sign.apiSign({ |
39 | method: 'h5.consult.add', | 39 | method: 'h5.consult.add', |
40 | product_id: pid, | 40 | product_id: pid, |
@@ -10,28 +10,34 @@ const co = Promise.coroutine; | @@ -10,28 +10,34 @@ const co = Promise.coroutine; | ||
10 | const api = require('./detail-consult-api'); | 10 | const api = require('./detail-consult-api'); |
11 | const detailHelper = require('./detail-helper'); | 11 | const detailHelper = require('./detail-helper'); |
12 | 12 | ||
13 | +const fake = require('./fake'); | ||
14 | + | ||
13 | module.exports.indexAsync = (uid, pid, page, size) => { | 15 | module.exports.indexAsync = (uid, pid, page, size) => { |
14 | return co(function *() { | 16 | return co(function *() { |
15 | - let consultList = yield api.indexAsync(uid, pid, page, size); | ||
16 | - | ||
17 | - if (consultList.code && consultList.code === 200) { | ||
18 | - return consultList.data.list.map(value => { | ||
19 | - return { | ||
20 | - avatar: detailHelper.DEFAULT_AVATAR_ICO, | ||
21 | - question: value.ask, | ||
22 | - date: value.ask_time, | ||
23 | - answer: value.answer, | ||
24 | - id: value.id, | ||
25 | - isLike: value.is_like === 'Y', | ||
26 | - like: parseInt(value.like, 10), | ||
27 | - isUseful: value.is_useful === 'Y', | ||
28 | - useful: parseInt(value.useful, 10), | ||
29 | - total: value.total | ||
30 | - }; | ||
31 | - }); | ||
32 | - } | ||
33 | - | ||
34 | - return []; | 17 | + return fake.fakeConsule; |
18 | + | ||
19 | + | ||
20 | + //let consultList = yield api.indexAsync(uid, pid, page, size); | ||
21 | + // | ||
22 | + //if (!consultList.code || consultList.code !== 200) { | ||
23 | + // return []; | ||
24 | + //} | ||
25 | + // | ||
26 | + //return consultList.data.list.map(value => { | ||
27 | + // return { | ||
28 | + // avatar: detailHelper.DEFAULT_AVATAR_ICO, | ||
29 | + // question: value.ask, | ||
30 | + // date: value.ask_time, | ||
31 | + // answer: value.answer, | ||
32 | + // id: value.id, | ||
33 | + // isLike: value.is_like === 'Y', | ||
34 | + // like: parseInt(value.like, 10), | ||
35 | + // isUseful: value.is_useful === 'Y', | ||
36 | + // useful: parseInt(value.useful, 10), | ||
37 | + // total: value.total | ||
38 | + // }; | ||
39 | + //}); | ||
40 | + | ||
35 | })(); | 41 | })(); |
36 | }; | 42 | }; |
37 | 43 |
@@ -9,12 +9,15 @@ const log = require(`${library}/logger`); | @@ -9,12 +9,15 @@ const log = require(`${library}/logger`); | ||
9 | 9 | ||
10 | const api = new API(); | 10 | const api = new API(); |
11 | 11 | ||
12 | +const fake = require('./fake'); | ||
12 | /** | 13 | /** |
13 | * 获取商品的热区 | 14 | * 获取商品的热区 |
14 | */ | 15 | */ |
15 | module.exports.indexAsync = (pid) => { | 16 | module.exports.indexAsync = (pid) => { |
16 | - return api.get('', sign.apiSign({ | ||
17 | - method: 'web.productCollocation.list', | ||
18 | - product_id: pid | ||
19 | - })).catch(log.error); | 17 | + //return api.get('', sign.apiSign({ |
18 | + // method: 'web.productCollocation.list', | ||
19 | + // product_id: pid | ||
20 | + //})).catch(log.error); | ||
21 | + | ||
22 | + return Promise.resolve(fake.fakeProductCollent); | ||
20 | }; | 23 | }; |
@@ -20,21 +20,21 @@ module.exports.indexAsync = (pid) => { | @@ -20,21 +20,21 @@ module.exports.indexAsync = (pid) => { | ||
20 | return co(function *() { | 20 | return co(function *() { |
21 | let data = yield api.indexAsync(pid); | 21 | let data = yield api.indexAsync(pid); |
22 | 22 | ||
23 | - if (!data.code && !(data.code === 200) && !data.data) { | 23 | + if (!data.code || data.code !== 200) { |
24 | return []; | 24 | return []; |
25 | } | 25 | } |
26 | 26 | ||
27 | return data.data.reduce((result, area) => { | 27 | return data.data.reduce((result, area) => { |
28 | + if (!area.infos) { | ||
29 | + return result; | ||
30 | + } | ||
31 | + | ||
28 | let item = {}; | 32 | let item = {}; |
29 | 33 | ||
30 | if (area.imageUrl) { | 34 | if (area.imageUrl) { |
31 | item.img = helpers.getForceSourceUrl(area.imageUrl); | 35 | item.img = helpers.getForceSourceUrl(area.imageUrl); |
32 | } | 36 | } |
33 | 37 | ||
34 | - if (!area.infos) { | ||
35 | - return result; | ||
36 | - } | ||
37 | - | ||
38 | item.list = area.infos.reduce((acc, cur, index) => { | 38 | item.list = area.infos.reduce((acc, cur, index) => { |
39 | if (!cur.product || !cur.product.goodsList) { | 39 | if (!cur.product || !cur.product.goodsList) { |
40 | return acc; | 40 | return acc; |
@@ -8,41 +8,53 @@ const log = require(`${library}/logger`); | @@ -8,41 +8,53 @@ const log = require(`${library}/logger`); | ||
8 | 8 | ||
9 | const api = new API(); | 9 | const api = new API(); |
10 | 10 | ||
11 | +const fake = require('./fake'); | ||
12 | + | ||
11 | module.exports.getProductBannerAsync = function(pid, clientType) { | 13 | module.exports.getProductBannerAsync = function(pid, clientType) { |
12 | - clientType = clientType || 'web'; | ||
13 | - return api.get('', sign.apiSign({ | ||
14 | - method: 'web.productBanner.data', | ||
15 | - product_id: pid, | ||
16 | - client_type: clientType | ||
17 | - })).catch(log.error); | 14 | + //clientType = clientType || 'web'; |
15 | + //return api.get('', sign.apiSign({ | ||
16 | + // method: 'web.productBanner.data', | ||
17 | + // product_id: pid, | ||
18 | + // client_type: clientType | ||
19 | + //})).catch(log.error); | ||
20 | + | ||
21 | + return Promise.resolve(fake.fakeProductBanner); | ||
18 | }; | 22 | }; |
19 | 23 | ||
20 | module.exports.sizeInfoAsync = function(skn) { | 24 | module.exports.sizeInfoAsync = function(skn) { |
21 | - return api.get('', sign.apiSign({ | ||
22 | - method: 'h5.product.intro', | ||
23 | - productskn: skn | ||
24 | - })).catch(log.error); | 25 | + //return api.get('', sign.apiSign({ |
26 | + // method: 'h5.product.intro', | ||
27 | + // productskn: skn | ||
28 | + //})).catch(log.error); | ||
29 | + | ||
30 | + return Promise.resolve(fake.fakeProductIntro); | ||
25 | }; | 31 | }; |
26 | 32 | ||
27 | module.exports.getProductComfortAsync = function(pid) { | 33 | module.exports.getProductComfortAsync = function(pid) { |
28 | - return api.get('', sign.apiSign({ | ||
29 | - method: 'web.productComfort.data', | ||
30 | - product_id: pid | ||
31 | - })).catch(log.error); | 34 | + //return api.get('', sign.apiSign({ |
35 | + // method: 'web.productComfort.data', | ||
36 | + // product_id: pid | ||
37 | + //})).catch(log.error); | ||
38 | + | ||
39 | + return Promise.resolve(fake.fakeComfort); | ||
32 | }; | 40 | }; |
33 | 41 | ||
34 | module.exports.getProductModelCardAsync = function(pid) { | 42 | module.exports.getProductModelCardAsync = function(pid) { |
35 | - return api.get('', sign.apiSign({ | ||
36 | - method: 'web.productModelcard.list', | ||
37 | - product_id: pid | ||
38 | - })).catch(log.error); | 43 | + //return api.get('', sign.apiSign({ |
44 | + // method: 'web.productModelcard.list', | ||
45 | + // product_id: pid | ||
46 | + //})).catch(log.error); | ||
47 | + | ||
48 | + return Promise.resolve(fake.fakeModelCard); | ||
39 | }; | 49 | }; |
40 | 50 | ||
41 | module.exports.getProductModelTryAsync = function(skn) { | 51 | module.exports.getProductModelTryAsync = function(skn) { |
42 | - return api.get('', sign.apiSign({ | ||
43 | - method: 'web.productModelTry.data', | ||
44 | - product_skn: skn | ||
45 | - })).catch(log.error); | 52 | + //return api.get('', sign.apiSign({ |
53 | + // method: 'web.productModelTry.data', | ||
54 | + // product_skn: skn | ||
55 | + //})).catch(log.error); | ||
56 | + | ||
57 | + return Promise.resolve(fake.fakeModelTry); | ||
46 | }; | 58 | }; |
47 | 59 | ||
48 | /** | 60 | /** |
@@ -51,10 +63,12 @@ module.exports.getProductModelTryAsync = function(skn) { | @@ -51,10 +63,12 @@ module.exports.getProductModelTryAsync = function(skn) { | ||
51 | * @returns {Promise.<type>} | 63 | * @returns {Promise.<type>} |
52 | */ | 64 | */ |
53 | module.exports.getProductInfo = function(pid) { | 65 | module.exports.getProductInfo = function(pid) { |
54 | - return api.get('', sign.apiSign({ | ||
55 | - method: 'h5.product.data', | ||
56 | - productId: pid | ||
57 | - })).catch(console.log); | 66 | + //return api.get('', sign.apiSign({ |
67 | + // method: 'h5.product.data', | ||
68 | + // productId: pid | ||
69 | + //})).catch(console.log); | ||
70 | + | ||
71 | + return Promise.resolve(fake.fakeProduct); | ||
58 | }; | 72 | }; |
59 | 73 | ||
60 | 74 |
@@ -27,6 +27,7 @@ const shopAPI = require('./shop-api'); | @@ -27,6 +27,7 @@ const shopAPI = require('./shop-api'); | ||
27 | const searchAPI = require('./search-api'); | 27 | const searchAPI = require('./search-api'); |
28 | const homeService = require('./home-service'); | 28 | const homeService = require('./home-service'); |
29 | const HeaderModel = require('../../../doraemon/models/header'); | 29 | const HeaderModel = require('../../../doraemon/models/header'); |
30 | +const fake = require('./fake'); | ||
30 | 31 | ||
31 | const BLANK_STR = ' '; | 32 | const BLANK_STR = ' '; |
32 | 33 | ||
@@ -857,7 +858,7 @@ function getDescriptionDataBySizeInfo(sizeInfo) { | @@ -857,7 +858,7 @@ function getDescriptionDataBySizeInfo(sizeInfo) { | ||
857 | }); | 858 | }); |
858 | } | 859 | } |
859 | 860 | ||
860 | - description.confort = getProductComfort(); | 861 | + description.comfort = getProductComfort(); |
861 | } | 862 | } |
862 | 863 | ||
863 | return description; | 864 | return description; |
@@ -1279,7 +1280,10 @@ const getSizeInfo = (productSkn, maxSortId)=> { | @@ -1279,7 +1280,10 @@ const getSizeInfo = (productSkn, maxSortId)=> { | ||
1279 | result.size = getSizeData(sizeInfo); | 1280 | result.size = getSizeData(sizeInfo); |
1280 | 1281 | ||
1281 | // 模特数据 | 1282 | // 模特数据 |
1282 | - result.reference = getReferenceDataBySizeInfo(sizeInfo); | 1283 | + let reference = getReferenceDataBySizeInfo(sizeInfo); |
1284 | + if(_.isEmpty(reference)){ | ||
1285 | + result.reference = reference; | ||
1286 | + } | ||
1283 | 1287 | ||
1284 | // 洗涤材质 | 1288 | // 洗涤材质 |
1285 | result.material = getMaterialDataBySizeInfo(sizeInfo); | 1289 | result.material = getMaterialDataBySizeInfo(sizeInfo); |
apps/product/models/fake.js
0 → 100644
This diff could not be displayed because it is too large.
@@ -6,7 +6,11 @@ const log = require(`${library}/logger`); | @@ -6,7 +6,11 @@ const log = require(`${library}/logger`); | ||
6 | 6 | ||
7 | const api = new API(); | 7 | const api = new API(); |
8 | 8 | ||
9 | +const fake = require('./fake'); | ||
10 | + | ||
9 | module.exports.getSortByConditionAsync = function(condition) { | 11 | module.exports.getSortByConditionAsync = function(condition) { |
10 | - return api.get('sortgroup.json', condition).catch(log.error); | 12 | + //return api.get('sortgroup.json', condition).catch(log.error); |
13 | + | ||
14 | + return Promise.resolve(fake.fakeNav); | ||
11 | }; | 15 | }; |
12 | 16 |
@@ -15,6 +15,9 @@ const serviceApi = new ServiceAPI(); | @@ -15,6 +15,9 @@ const serviceApi = new ServiceAPI(); | ||
15 | 15 | ||
16 | const log = require(`${global.library}/logger`); | 16 | const log = require(`${global.library}/logger`); |
17 | 17 | ||
18 | +const Promise = require('bluebird'); | ||
19 | +const fake = require('../../apps/product/models/fake'); | ||
20 | + | ||
18 | /** | 21 | /** |
19 | * 获取菜单 | 22 | * 获取菜单 |
20 | * @param undefined | 23 | * @param undefined |
@@ -131,7 +134,6 @@ const getThirdNav = (data) => { | @@ -131,7 +134,6 @@ const getThirdNav = (data) => { | ||
131 | }); | 134 | }); |
132 | 135 | ||
133 | 136 | ||
134 | - | ||
135 | return thirdNav; | 137 | return thirdNav; |
136 | }; | 138 | }; |
137 | 139 | ||
@@ -168,8 +170,6 @@ const getSubNav = (data, type) => { | @@ -168,8 +170,6 @@ const getSubNav = (data, type) => { | ||
168 | }; | 170 | }; |
169 | 171 | ||
170 | 172 | ||
171 | - | ||
172 | - | ||
173 | /** | 173 | /** |
174 | * 处理接口返回的数据 | 174 | * 处理接口返回的数据 |
175 | * @param {object} 接口返回的对象 | 175 | * @param {object} 接口返回的对象 |
@@ -191,7 +191,6 @@ const setHeaderData = (resData, type) => { | @@ -191,7 +191,6 @@ const setHeaderData = (resData, type) => { | ||
191 | }; | 191 | }; |
192 | 192 | ||
193 | 193 | ||
194 | - | ||
195 | /** | 194 | /** |
196 | * 请求头部数据 | 195 | * 请求头部数据 |
197 | * @param {String} 频道类型 | 196 | * @param {String} 频道类型 |
@@ -205,7 +204,17 @@ exports.requestHeaderData = (type, parentId) => { | @@ -205,7 +204,17 @@ exports.requestHeaderData = (type, parentId) => { | ||
205 | 204 | ||
206 | type = type || 'boys'; | 205 | type = type || 'boys'; |
207 | 206 | ||
208 | - return serviceApi.get('operations/api/v6/category/getCategory', data, true).then(res => { | 207 | + //return serviceApi.get('operations/api/v6/category/getCategory', data, true).then(res => { |
208 | + // if (res && res.code === 200) { | ||
209 | + // return setHeaderData(res.data, type); | ||
210 | + // } else { | ||
211 | + // log.error('获取头部信息的接口返回状态码 不是 200'); | ||
212 | + // return {}; | ||
213 | + // } | ||
214 | + //}); | ||
215 | + | ||
216 | + return Promise.resolve(fake.fakeHeader).then(res => { | ||
217 | + console.log(res); | ||
209 | if (res && res.code === 200) { | 218 | if (res && res.code === 200) { |
210 | return setHeaderData(res.data, type); | 219 | return setHeaderData(res.data, type); |
211 | } else { | 220 | } else { |
1 | -{{# headerData}} | ||
2 | - <div class="yoho-header {{headType}}"> | ||
3 | - <div class="tool-wrapper clearfix"> | ||
4 | - <div class="center-content"> | ||
5 | - <div class="yoho-group-map left"> | ||
6 | - <span class="icon-hamburger"></span> | ||
7 | - <a href="http://www.yohobuy.com">YOHO!有货</a> | ||
8 | - {{#if yohoGroup}} | ||
9 | - <ul class="yoho-group-list"> | ||
10 | - {{# yohoGroup}} | ||
11 | - <li> | ||
12 | - <a href="{{link}}" class="yoho-group" data-en="{{en}}" data-cn="{{cn}}">{{en}}</a> | ||
13 | - </li> | ||
14 | - {{/ yohoGroup}} | ||
15 | - </ul> | ||
16 | - {{/if}} | ||
17 | - </div> | ||
18 | - <div class="yoho-buy-tools right"> | ||
19 | - <ul> | ||
20 | - <li id="loginBox"> | ||
21 | - <span class="hi">Hi~</span> | ||
22 | - [ <a href="http://www.yohobuy.com/signin.html" class="loginbar">请登录</a> ] | ||
23 | - [ <a href="http://www.yohobuy.com/reg.html" class="registbar">免费注册</a> ] | ||
24 | - </li> | ||
25 | - <li class="myyoho" id="myYohoBox"> | ||
26 | - <span class="tag-seprate"></span> | ||
27 | - <a href="http://www.yohobuy.com/home?t=1453340799.4986">MY有货</a> | ||
28 | - <span class="icon-bottomarrow"></span> | ||
29 | - <div class="simple-user-center"></div> | ||
30 | - </li> | ||
31 | - <li class="myorder"> | ||
32 | - <span class="tag-seprate"></span> | ||
33 | - <span class="icon-papers"></span> | ||
34 | - <a href="http://www.yohobuy.com/home/orders?t=1453168898.0176">我的订单</a> | ||
35 | - </li> | ||
36 | - <li class="mycollect"> | ||
37 | - <span class="tag-seprate"></span> | ||
38 | - <span class="icon-heart"></span> | ||
39 | - <a href="http://www.yohobuy.com/home/favorite?t=1453168898.0176">我的收藏</a> | ||
40 | - </li> | ||
41 | - <li class="message"> | ||
42 | - <span class="tag-seprate"></span> | ||
43 | - <span class="icon-mail"></span> | ||
44 | - <a href="http://www.yohobuy.com/home/message?t=1453168898.0176">消息</a> | ||
45 | - </li> | ||
46 | - <li class="phoneapp"> | ||
47 | - <span class="tag-seprate"></span> | ||
48 | - <span class="icon-phone"></span> | ||
49 | - <a href="http://www.yohobuy.com/download/app">手机版</a> | ||
50 | - <div class="download-app-box"> | ||
51 | - <div class="qr-img"></div> | ||
52 | - <h3 class="qr-words">扫描二维码</h3> | ||
53 | - <h3 class="qr-words">下载有货手机客户端</h3> | ||
54 | - <h3 class="qr-more"> | ||
55 | - <a href="http://www.yohobuy.com/download/app">更多客户端下载</a> | ||
56 | - </h3> | ||
57 | - </div> | ||
58 | - </li> | ||
59 | - </ul> | ||
60 | - </div> | ||
61 | - </div> | ||
62 | - </div> | ||
63 | - <div class="head-wrapper clearfix"> | ||
64 | - <div class="center-content"> | ||
65 | - <div class="outlets-logo"></div> | ||
66 | - <div class="main-logo"><a href="http://www.yohobuy.com/" class="main-link"></a></div> | ||
67 | - <ul class="main-nav-list"> | ||
68 | - {{# navbars}} | ||
69 | - <li {{#if active}} class="cure"{{/if}}{{#if ico}} style="background: url({{image ico 54 32}}) no-repeat center center"{{/if}}> | ||
70 | - {{#if ico}} | ||
71 | - <a href="{{link}}" class="menu-ico"></a> | ||
72 | - {{^}} | ||
73 | - <h3 class="name-cn"> | ||
74 | - <a href="{{link}}">{{cn}}</a> | ||
75 | - </h3> | ||
76 | - <h3 class="name-en"> | ||
77 | - <a href="{{link}}">{{en}}</a> | ||
78 | - </h3> | ||
79 | - {{/if}} | ||
80 | - </li> | ||
81 | - {{/ navbars}} | ||
82 | - </ul> | ||
83 | - <div class="func-area"> | ||
84 | - <ul class="search-suggest"></ul> | ||
85 | - <div class="search-2016"> | ||
86 | - <form action="http://search.yohobuy.com" method="get" id="search-form"> | ||
87 | - <input type="text" name="query" class="search-key" autocomplete="off"> | ||
88 | - <a class="search-btn"></a> | ||
89 | - </form> | ||
90 | - </div> | ||
91 | - <div class="go-cart"> | ||
92 | - <a href="http://www.yohobuy.com/shopping/cart"> | ||
93 | - <span class="iconfont "></span> | ||
94 | - <span class="goods-num-tip">0</span> | ||
95 | - </a> | ||
96 | - <div class="mini-cart-wrapper"> | ||
97 | - <div class="loading-cart"> | ||
98 | - <h3>加载中,请稍后</h3> | ||
99 | - </div> | ||
100 | - <div class="empty-cart"> | ||
101 | - <h3>您的购物车暂无商品</h3> | ||
102 | - </div> | ||
103 | - </div> | ||
104 | - </div> | ||
105 | - </div> | ||
106 | - </div> | ||
107 | - </div> | ||
108 | - <div class="nav-wrapper clearfix"> | ||
109 | - <div class="center-content"> | ||
110 | - <ul class="sub-nav-list"> | ||
111 | - {{# subNav}} | ||
112 | - <li{{#if thirdNav}} class="contain-third"{{/if}}> | ||
113 | - <a href="{{link}}">{{name}} | ||
114 | - {{#if isNew}} | ||
115 | - <span class="newlogo"></span> | ||
116 | - {{/if}} | ||
117 | - </a> | ||
118 | - {{#if thirdNav}} | ||
119 | - <div class="third-nav-wrapper"> | ||
120 | - <div class="center-content"> | ||
121 | - <dl class="hide-list hide"> | ||
122 | - {{# thirdNav}} | ||
123 | - <dt> | ||
124 | - <h1 class=""><a href="{{link}}">{{title}}</a> </h1> | ||
125 | - </dt> | ||
126 | - {{#brandItems}} | ||
127 | - <dd> | ||
128 | - <a href="{{link}}"{{#if hot}} class="hot"{{/if}}>{{brandName}}</a> | ||
129 | - </dd> | ||
130 | - {{/brandItems}} | ||
131 | - {{/thirdNav}} | ||
132 | - </dl> | ||
133 | - <div class="show-detail" data-code="{{imgCode}}"> | ||
134 | - <a><img src="data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///93d3f///yH5BAEAAAMALAAAAAABAAEAAAICVAEAOw=="></a> | ||
135 | - <a class="title">热门小物优选</a> | ||
136 | - </div> | ||
137 | - </div> | ||
138 | - </div> | ||
139 | - {{/if}} | ||
140 | - </li> | ||
141 | - {{/ subNav}} | ||
142 | - </ul> | ||
143 | - </div> | ||
144 | - </div> | ||
145 | - </div> | ||
146 | - <div id="hide-template"> | ||
147 | - <script type="text/html" id="header-login-info-tpl"> | ||
148 | - <span>Hi~ <a href="\{{usercenter}}" class="nick-name">\{{nickname}}</a></span> | ||
149 | - [ <a href="\{{signout}}">退出</a> ] | ||
150 | - </script> | ||
151 | - <script type="text/html" id="simple-account-info-tpl"> | ||
152 | - <div class="account-info-header"> | ||
153 | - <div class="user-img" > | ||
154 | - <img src="\{{head_ico}}"> | ||
155 | - </div> | ||
156 | - <div class="user-name"> | ||
157 | - <a href="http://www.yohobuy.com/home?t=\{{random}}">\{{profile_name}}</a> | ||
158 | - </div> | ||
159 | - <h3 class="user-level"> | ||
160 | - VIP: <span>\{{vip.curVipInfo.title}}</span> | ||
161 | - </h3> | ||
162 | - \{{#unless vip3}} | ||
163 | - <div class="level-detail"> | ||
164 | - <div class="level-view-bar"> | ||
165 | - <div class="text-span"> | ||
166 | - \{{vip.curYearCost}}/\{{vip.nextVipInfo.needCost}} | ||
167 | - </div> | ||
168 | - <p class="\{{#if vip.curYearCostPer}}integrate\{{/if}}" style="width: \{{vip.curYearCostPer}}%;"></p> | ||
169 | - </div> | ||
170 | - <span>\{{vip.nextVipInfo.title}}</span> | ||
171 | - </div> | ||
172 | - \{{/unless}} | ||
173 | - </div> | ||
174 | - <ul class="account-info-content"> | ||
175 | - <li> | ||
176 | - <a href="http://www.yohobuy.com/home/orders?t=\{{timestamp}}">待处理的订单</a> | ||
177 | - <span class="right">\{{orderCount}}</span> | ||
178 | - </li> | ||
179 | - <li> | ||
180 | - <a href="http://www.yohobuy.com/home/favorite?t=\{{timestamp}}">我的收藏</a> | ||
181 | - <span class="right"></span> | ||
182 | - </li> | ||
183 | - <li> | ||
184 | - <a href="http://www.yohobuy.com/home/coupons?t=\{{timestamp}}">我的优惠券</a> | ||
185 | - <span class="right">\{{couponCount}}</span> | ||
186 | - </li> | ||
187 | - <li> | ||
188 | - <a href="http://www.yohobuy.com/home/currency?t=\{{timestamp}}">我的YOHO币</a> | ||
189 | - <span class="right">\{{YohocoinCount}}</span> | ||
190 | - </li> | ||
191 | - <li> | ||
192 | - <a href="http://www.yohobuy.com/home/returns?t=\{{timestamp}}">我的退货换货</a> | ||
193 | - <span class="right">\{{refundCount}}</span> | ||
194 | - </li> | ||
195 | - </ul> | ||
196 | - <div class="account-info-footer"> | ||
197 | - <a href="http://www.yohobuy.com/home/user?t=\{{timestamp}}">完善资料</a> | ||
198 | - </div> | ||
199 | - </script> | ||
200 | - <script type="text/html" id="mini-cart-tpl"> | ||
201 | - \{{#carData}} | ||
202 | - <div class="rich-cart"> | ||
203 | - <div class="goods-list"> | ||
204 | - \{{# totalGoods}} | ||
205 | - \{{#notzero buy_number}} | ||
206 | - <div class="goods-item"> | ||
207 | - <div class="goods-img"> | ||
208 | - <a href="\{{product_url}}"> | ||
209 | - <img src="\{{default_img}}"/> | ||
210 | - </a> | ||
211 | - </div> | ||
212 | - <div class="goods-info"> | ||
213 | - <p class="title"> | ||
214 | - <a href="\{{product_url}}">\{{product_name}}</a> | ||
215 | - </p> | ||
216 | - <p> | ||
217 | - 颜色:\{{color_name}} | ||
218 | - 尺码:\{{size_name}} | ||
219 | - </p> | ||
220 | - </div> | ||
221 | - <div class="goods-price"> | ||
222 | - <p>\{{show_price}} x \{{buy_number}}</p> | ||
223 | - <p> | ||
224 | - <a href="javascript:void(0)" class="cart-goods-del" data-id=\{{goods_incart_id}} data-cheapest=\{{is_cheapest_free}}>删除</a> | ||
225 | - </p> | ||
226 | - </div> | ||
227 | - </div> | ||
228 | - \{{/notzero}} | ||
229 | - \{{/ totalGoods}} | ||
230 | - \{{#if has_promotion}} | ||
231 | - <div class="activity-item"> | ||
232 | - <label class="activity-name">活动</label> | ||
233 | - <h3 class="activity-content"> | ||
234 | - \{{#if fit_outlet_promotion }} | ||
235 | - 购outlet商品,满¥1999再享9折 | ||
236 | - \{{/if}} | ||
237 | - \{{#if has_other_promotion}} | ||
238 | - <span class="mycart_i_down" title="更多" ></span> | ||
239 | - \{{/if}} | ||
240 | - \{{#if has_first_promotion}} | ||
241 | - \{{first_promotions.promotion_title}} | ||
242 | - \{{/if}} | ||
243 | - </h3> | ||
244 | - </div> | ||
245 | - \{{/if}} | ||
246 | - \{{#if fit_free_shipping }} | ||
247 | - <div class="activity-item"> | ||
248 | - <label class="activity-name">免运费</label> | ||
249 | - <h3 class="activity-content">全场满 ¥\{{fit_free_shipping}}免运费</h3> | ||
250 | - </div> | ||
251 | - \{{/if}} | ||
252 | - </div> | ||
253 | - <div class="go-full-cart"> | ||
254 | - <div> | ||
255 | - <a href="/shopping/cart">去购物车结算</a> | ||
256 | - </div> | ||
257 | - </div> | ||
258 | - </div> | ||
259 | - \{{/carData}} | ||
260 | - </script> | ||
261 | - </div> | ||
262 | - | ||
263 | - <input id="api-domain" type="hidden" value="{{apiDomain}}"> | ||
264 | -{{/ headerData}} | 1 | +{{# headerData}} |
2 | + {{log this}} | ||
3 | + <div class="yoho-header {{headType}}"> | ||
4 | + <div class="tool-wrapper clearfix"> | ||
5 | + <div class="center-content"> | ||
6 | + <div class="yoho-group-map left"> | ||
7 | + <span class="icon-hamburger"></span> | ||
8 | + <a href="http://www.yohobuy.com">YOHO!有货</a> | ||
9 | + {{#if yohoGroup}} | ||
10 | + <ul class="yoho-group-list"> | ||
11 | + {{# yohoGroup}} | ||
12 | + <li> | ||
13 | + <a href="{{link}}" class="yoho-group" data-en="{{en}}" data-cn="{{cn}}">{{en}}</a> | ||
14 | + </li> | ||
15 | + {{/ yohoGroup}} | ||
16 | + </ul> | ||
17 | + {{/if}} | ||
18 | + </div> | ||
19 | + <div class="yoho-buy-tools right"> | ||
20 | + <ul> | ||
21 | + <li id="loginBox"> | ||
22 | + <span class="hi">Hi~</span> | ||
23 | + [ <a href="http://www.yohobuy.com/signin.html" class="loginbar">请登录</a> ] | ||
24 | + [ <a href="http://www.yohobuy.com/reg.html" class="registbar">免费注册</a> ] | ||
25 | + </li> | ||
26 | + <li class="myyoho" id="myYohoBox"> | ||
27 | + <span class="tag-seprate"></span> | ||
28 | + <a href="http://www.yohobuy.com/home?t=1453340799.4986">MY有货</a> | ||
29 | + <span class="icon-bottomarrow"></span> | ||
30 | + <div class="simple-user-center"></div> | ||
31 | + </li> | ||
32 | + <li class="myorder"> | ||
33 | + <span class="tag-seprate"></span> | ||
34 | + <span class="icon-papers"></span> | ||
35 | + <a href="http://www.yohobuy.com/home/orders?t=1453168898.0176">我的订单</a> | ||
36 | + </li> | ||
37 | + <li class="mycollect"> | ||
38 | + <span class="tag-seprate"></span> | ||
39 | + <span class="icon-heart"></span> | ||
40 | + <a href="http://www.yohobuy.com/home/favorite?t=1453168898.0176">我的收藏</a> | ||
41 | + </li> | ||
42 | + <li class="message"> | ||
43 | + <span class="tag-seprate"></span> | ||
44 | + <span class="icon-mail"></span> | ||
45 | + <a href="http://www.yohobuy.com/home/message?t=1453168898.0176">消息</a> | ||
46 | + </li> | ||
47 | + <li class="phoneapp"> | ||
48 | + <span class="tag-seprate"></span> | ||
49 | + <span class="icon-phone"></span> | ||
50 | + <a href="http://www.yohobuy.com/download/app">手机版</a> | ||
51 | + <div class="download-app-box"> | ||
52 | + <div class="qr-img"></div> | ||
53 | + <h3 class="qr-words">扫描二维码</h3> | ||
54 | + <h3 class="qr-words">下载有货手机客户端</h3> | ||
55 | + <h3 class="qr-more"> | ||
56 | + <a href="http://www.yohobuy.com/download/app">更多客户端下载</a> | ||
57 | + </h3> | ||
58 | + </div> | ||
59 | + </li> | ||
60 | + </ul> | ||
61 | + </div> | ||
62 | + </div> | ||
63 | + </div> | ||
64 | + <div class="head-wrapper clearfix"> | ||
65 | + <div class="center-content"> | ||
66 | + <div class="outlets-logo"></div> | ||
67 | + <div class="main-logo"><a href="http://www.yohobuy.com/" class="main-link"></a></div> | ||
68 | + <ul class="main-nav-list"> | ||
69 | + {{# navbars}} | ||
70 | + <li {{#if active}} class="cure"{{/if}}{{#if ico}} style="background: url({{image ico 54 32}}) no-repeat center center"{{/if}}> | ||
71 | + {{#if ico}} | ||
72 | + <a href="{{link}}" class="menu-ico"></a> | ||
73 | + {{^}} | ||
74 | + <h3 class="name-cn"> | ||
75 | + <a href="{{link}}">{{cn}}</a> | ||
76 | + </h3> | ||
77 | + <h3 class="name-en"> | ||
78 | + <a href="{{link}}">{{en}}</a> | ||
79 | + </h3> | ||
80 | + {{/if}} | ||
81 | + </li> | ||
82 | + {{/ navbars}} | ||
83 | + </ul> | ||
84 | + <div class="func-area"> | ||
85 | + <ul class="search-suggest"></ul> | ||
86 | + <div class="search-2016"> | ||
87 | + <form action="http://search.yohobuy.com" method="get" id="search-form"> | ||
88 | + <input type="text" name="query" class="search-key" autocomplete="off"> | ||
89 | + <a class="search-btn"></a> | ||
90 | + </form> | ||
91 | + </div> | ||
92 | + <div class="go-cart"> | ||
93 | + <a href="http://www.yohobuy.com/shopping/cart"> | ||
94 | + <span class="iconfont "></span> | ||
95 | + <span class="goods-num-tip">0</span> | ||
96 | + </a> | ||
97 | + <div class="mini-cart-wrapper"> | ||
98 | + <div class="loading-cart"> | ||
99 | + <h3>加载中,请稍后</h3> | ||
100 | + </div> | ||
101 | + <div class="empty-cart"> | ||
102 | + <h3>您的购物车暂无商品</h3> | ||
103 | + </div> | ||
104 | + </div> | ||
105 | + </div> | ||
106 | + </div> | ||
107 | + </div> | ||
108 | + </div> | ||
109 | + <div class="nav-wrapper clearfix"> | ||
110 | + <div class="center-content"> | ||
111 | + <ul class="sub-nav-list"> | ||
112 | + {{# subNav}} | ||
113 | + <li{{#if thirdNav}} class="contain-third"{{/if}}> | ||
114 | + <a href="{{link}}">{{name}} | ||
115 | + {{#if isNew}} | ||
116 | + <span class="newlogo"></span> | ||
117 | + {{/if}} | ||
118 | + </a> | ||
119 | + {{#if thirdNav}} | ||
120 | + <div class="third-nav-wrapper"> | ||
121 | + <div class="center-content"> | ||
122 | + <dl class="hide-list hide"> | ||
123 | + {{# thirdNav}} | ||
124 | + <dt> | ||
125 | + <h1 class=""><a href="{{link}}">{{title}}</a> </h1> | ||
126 | + </dt> | ||
127 | + {{#brandItems}} | ||
128 | + <dd> | ||
129 | + <a href="{{link}}"{{#if hot}} class="hot"{{/if}}>{{brandName}}</a> | ||
130 | + </dd> | ||
131 | + {{/brandItems}} | ||
132 | + {{/thirdNav}} | ||
133 | + </dl> | ||
134 | + <div class="show-detail" data-code="{{imgCode}}"> | ||
135 | + <a><img src="data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///93d3f///yH5BAEAAAMALAAAAAABAAEAAAICVAEAOw=="></a> | ||
136 | + <a class="title">热门小物优选</a> | ||
137 | + </div> | ||
138 | + </div> | ||
139 | + </div> | ||
140 | + {{/if}} | ||
141 | + </li> | ||
142 | + {{/ subNav}} | ||
143 | + </ul> | ||
144 | + </div> | ||
145 | + </div> | ||
146 | + </div> | ||
147 | + <div id="hide-template"> | ||
148 | + <script type="text/html" id="header-login-info-tpl"> | ||
149 | + <span>Hi~ <a href="\{{usercenter}}" class="nick-name">\{{nickname}}</a></span> | ||
150 | + [ <a href="\{{signout}}">退出</a> ] | ||
151 | + </script> | ||
152 | + <script type="text/html" id="simple-account-info-tpl"> | ||
153 | + <div class="account-info-header"> | ||
154 | + <div class="user-img" > | ||
155 | + <img src="\{{head_ico}}"> | ||
156 | + </div> | ||
157 | + <div class="user-name"> | ||
158 | + <a href="http://www.yohobuy.com/home?t=\{{random}}">\{{profile_name}}</a> | ||
159 | + </div> | ||
160 | + <h3 class="user-level"> | ||
161 | + VIP: <span>\{{vip.curVipInfo.title}}</span> | ||
162 | + </h3> | ||
163 | + \{{#unless vip3}} | ||
164 | + <div class="level-detail"> | ||
165 | + <div class="level-view-bar"> | ||
166 | + <div class="text-span"> | ||
167 | + \{{vip.curYearCost}}/\{{vip.nextVipInfo.needCost}} | ||
168 | + </div> | ||
169 | + <p class="\{{#if vip.curYearCostPer}}integrate\{{/if}}" style="width: \{{vip.curYearCostPer}}%;"></p> | ||
170 | + </div> | ||
171 | + <span>\{{vip.nextVipInfo.title}}</span> | ||
172 | + </div> | ||
173 | + \{{/unless}} | ||
174 | + </div> | ||
175 | + <ul class="account-info-content"> | ||
176 | + <li> | ||
177 | + <a href="http://www.yohobuy.com/home/orders?t=\{{timestamp}}">待处理的订单</a> | ||
178 | + <span class="right">\{{orderCount}}</span> | ||
179 | + </li> | ||
180 | + <li> | ||
181 | + <a href="http://www.yohobuy.com/home/favorite?t=\{{timestamp}}">我的收藏</a> | ||
182 | + <span class="right"></span> | ||
183 | + </li> | ||
184 | + <li> | ||
185 | + <a href="http://www.yohobuy.com/home/coupons?t=\{{timestamp}}">我的优惠券</a> | ||
186 | + <span class="right">\{{couponCount}}</span> | ||
187 | + </li> | ||
188 | + <li> | ||
189 | + <a href="http://www.yohobuy.com/home/currency?t=\{{timestamp}}">我的YOHO币</a> | ||
190 | + <span class="right">\{{YohocoinCount}}</span> | ||
191 | + </li> | ||
192 | + <li> | ||
193 | + <a href="http://www.yohobuy.com/home/returns?t=\{{timestamp}}">我的退货换货</a> | ||
194 | + <span class="right">\{{refundCount}}</span> | ||
195 | + </li> | ||
196 | + </ul> | ||
197 | + <div class="account-info-footer"> | ||
198 | + <a href="http://www.yohobuy.com/home/user?t=\{{timestamp}}">完善资料</a> | ||
199 | + </div> | ||
200 | + </script> | ||
201 | + <script type="text/html" id="mini-cart-tpl"> | ||
202 | + \{{#carData}} | ||
203 | + <div class="rich-cart"> | ||
204 | + <div class="goods-list"> | ||
205 | + \{{# totalGoods}} | ||
206 | + \{{#notzero buy_number}} | ||
207 | + <div class="goods-item"> | ||
208 | + <div class="goods-img"> | ||
209 | + <a href="\{{product_url}}"> | ||
210 | + <img src="\{{default_img}}"/> | ||
211 | + </a> | ||
212 | + </div> | ||
213 | + <div class="goods-info"> | ||
214 | + <p class="title"> | ||
215 | + <a href="\{{product_url}}">\{{product_name}}</a> | ||
216 | + </p> | ||
217 | + <p> | ||
218 | + 颜色:\{{color_name}} | ||
219 | + 尺码:\{{size_name}} | ||
220 | + </p> | ||
221 | + </div> | ||
222 | + <div class="goods-price"> | ||
223 | + <p>\{{show_price}} x \{{buy_number}}</p> | ||
224 | + <p> | ||
225 | + <a href="javascript:void(0)" class="cart-goods-del" data-id=\{{goods_incart_id}} data-cheapest=\{{is_cheapest_free}}>删除</a> | ||
226 | + </p> | ||
227 | + </div> | ||
228 | + </div> | ||
229 | + \{{/notzero}} | ||
230 | + \{{/ totalGoods}} | ||
231 | + \{{#if has_promotion}} | ||
232 | + <div class="activity-item"> | ||
233 | + <label class="activity-name">活动</label> | ||
234 | + <h3 class="activity-content"> | ||
235 | + \{{#if fit_outlet_promotion }} | ||
236 | + 购outlet商品,满¥1999再享9折 | ||
237 | + \{{/if}} | ||
238 | + \{{#if has_other_promotion}} | ||
239 | + <span class="mycart_i_down" title="更多" ></span> | ||
240 | + \{{/if}} | ||
241 | + \{{#if has_first_promotion}} | ||
242 | + \{{first_promotions.promotion_title}} | ||
243 | + \{{/if}} | ||
244 | + </h3> | ||
245 | + </div> | ||
246 | + \{{/if}} | ||
247 | + \{{#if fit_free_shipping }} | ||
248 | + <div class="activity-item"> | ||
249 | + <label class="activity-name">免运费</label> | ||
250 | + <h3 class="activity-content">全场满 ¥\{{fit_free_shipping}}免运费</h3> | ||
251 | + </div> | ||
252 | + \{{/if}} | ||
253 | + </div> | ||
254 | + <div class="go-full-cart"> | ||
255 | + <div> | ||
256 | + <a href="/shopping/cart">去购物车结算</a> | ||
257 | + </div> | ||
258 | + </div> | ||
259 | + </div> | ||
260 | + \{{/carData}} | ||
261 | + </script> | ||
262 | + </div> | ||
263 | + | ||
264 | + <input id="api-domain" type="hidden" value="{{apiDomain}}"> | ||
265 | +{{/ headerData}} |
-
Please register or login to post a comment