Authored by htoooth

'updateTpl'

... ... @@ -1033,13 +1033,13 @@ const _getCoupon = (coupons) => {
return false;
}
let couponList = _.get(coupons, 'data', []);
let couponList = _.get(coupons, 'data', []);
let pickProp = Fn.pick(['couponName', 'amount', 'couponId', 'acquireStatus','rule4ShortName']);
let encodeId = Fn.update('couponId', (cid) => crypto.encryption(null, cid + ''));
let replace = Fn.update('rule4ShortName',(r)=> r.replace(/¥/g,'¥'));
let pickProp = Fn.pick(['couponName', 'amount', 'couponId', 'acquireStatus', 'rule4ShortName']);
let encodeId = Fn.update('couponId', (cid) => crypto.encryption(null, cid + ''));
let replace = Fn.update('rule4ShortName', (r)=> r.replace(/¥/g, '¥'));
return Fn.map(Fn.pipe(pickProp, encodeId, replace))(couponList);
return Fn.map(Fn.pipe(pickProp, encodeId, replace))(couponList);
return coupons.data;
};
... ... @@ -1278,6 +1278,7 @@ const _detailDataPkg = (origin, uid, vipLevel, cookies) => {
result.brandUrl = helpers.urlFormat('', null, propOrigin('brand_info.brand_domain'));
bandInfo = _getBrandDataByProductBaseInfo(origin, additionalData);
bandInfo.isCollect = favoriteData.brand;
bandInfo.brandUrl = result.brandUrl;
if (domainBrand.type && domainBrand.shopId) {
let type = _.parseInt(domainBrand.type);
... ...
... ... @@ -2,13 +2,13 @@
<div class="coupon-big">
<div class="header">优惠券</div>
<div class="coupon-big-list">
<div class="coupon-list-body">
{{#newList}}
{{>product/coupon-big-item}}
{{>./coupon-list}}
{{/newList}}
{{#oldList}}
{{>product/coupon-big-item}}
{{>./coupon-list}}
{{/oldList}}
</div>
</div>
... ...
{{#if body}}
<div class="coupon-list">
<div class="header">
<div class="divide-line"></div>
<div class="title">{{title}}</div>
</div>
<div class="item-bg">
<div class="pre">优惠券</div>
<div class="body">
{{#each body}}
<div class="item-bg">
<div class="pre">优惠券</div>
<div class="desc">
<div class="amount">¥&nbsp;{{amount}}</div>
<div class="rule">{{rule4ShortName}}</div>
</div>
<div class="desc">
<div class="amount">¥&nbsp;{{amount}}</div>
<div class="rule">{{rule4ShortName}}</div>
</div>
<div class="status" data-id="{{couponId}}" data-domain="{{domain}}">
{{#if_cond acquireStatus '==' 1}}
<div class="coupon-status">点击</div>
<div class="coupon-go">领取</div>
{{else}}
<div class="coupon-status">已领取</div>
<div class="coupon-go"><a class="coupon-btn">去使用</a></div>
{{/if_cond}}
</div>
</div>
{{/each}}
</div>
<div class="status" data-id="{{couponId}}"
data-index="{{index}}"
data-status="{{acquireStatus}}">
{{#if_cond acquireStatus '==' 1}}
<div class="coupon-status">点击</div>
<div class="coupon-go">领取</div>
{{else}}
<div class="coupon-status">已领取</div>
<div class="coupon-go"><a class="coupon-btn">去使用</a></div>
{{/if_cond}}
</div>
{{/if}}
</div>
... ...
{{#if body}}
<div class="coupon-list">
<div class="header">
<div class="divide-line"></div>
<div class="title">{{title}}</div>
</div>
<div class="coupon-list-body">
{{#each body}}
{{>./coupon-item}}
{{/each}}
</div>
</div>
{{/if}}
... ...
... ... @@ -5,7 +5,7 @@
'use strict';
module.exports = (left, operator, right, options) => {
module.exports = function(left, operator, right, options){
switch (operator) {
case '==':
return (left == right) ? options.fn(this) : options.inverse(this); // eslint-disable-line
... ...
... ... @@ -31,7 +31,8 @@ var colTxt = {
var $saleReturn = $('#saleReturn');
var tpl = require('hbs/product/coupon-big-list.hbs');
var dialogTpl = require('hbs/product/coupon-dialog.hbs');
var couponItem = require('hbs/product/coupon-item.hbs');
bindEvent.add(function() {
var $imgShow = $('#img-show'),
... ... @@ -66,88 +67,54 @@ bindEvent.add(function() {
var $moreCoupon = $('.more-coupon');
var $coupons = $('.coupon-item').map(function() {
var $coupons = $('.coupon-item').map(function(val, i) {
var $this = $(this);
return {
id: $this.data('id'),
name: $this.data('name'),
couponId: $this.data('id'),
couponName: $this.data('name'),
amount: $this.data('amount'),
status: $this.data('status')
acquireStatus: $this.data('status'),
rule4ShortName: $this.data('rule'),
index: i
};
}).get();
var gotCoupons = $.grep($coupons, function(val) {
return val.status === 3;
var newCoupons = $.grep($coupons, function(val) {
return val.acquireStatus === 1;
});
var newCoupons = $.grep($coupons, function(val) {
return val.status === 1;
var oldCoupons = $.grep($coupons, function(val) {
return val.acquireStatus === 3;
});
var json = {
newList: {
title: '可以领取的券',
body: [
{
'couponName': '满¥199减10',
'amount': 22,
'acquireStatus': 1,
'createTime': 1475152374,
'startTime': 1474992000,
'lifeTime': '2016.09.28-2016.11.17',
'endTime': 1479312000,
'couponId': 14144,
'rule4ShortName': '满¥100减10元'
},
{
'couponName': '满¥199减10',
'amount': 15,
'acquireStatus': 1,
'createTime': 1476358258,
'startTime': 1476115200,
'lifeTime': '2016.10.11-2016.11.18',
'endTime': 1479398400,
'couponId': 14202,
'rule4ShortName': '满¥100减10元'
}
]
body: newCoupons
},
oldList: {
title: '已领取的券',
body: [
{
'couponName': '满¥199减10',
'amount': 22,
'acquireStatus': 3,
'createTime': 1475152374,
'startTime': 1474992000,
'lifeTime': '2016.09.28-2016.11.17',
'endTime': 1479312000,
'couponId': 14144,
'rule4ShortName': '满¥100减10元'
},
{
'couponName': '满¥199减10',
'amount': 15,
'acquireStatus': 3,
'createTime': 1476358258,
'startTime': 1476115200,
'lifeTime': '2016.10.11-2016.11.18',
'endTime': 1479398400,
'couponId': 14202,
'rule4ShortName': '满¥100减10元'
}
]
body: oldCoupons
}
};
var couponDialog = new Dialog({
content: dialogTpl({coupon: json}),
className: 'coupon-big'
});
$moreCoupon.on('click', function() {
new Dialog({
content: tpl({coupon: json}),
className: 'coupon-big'
}).show();
couponDialog.show();
});
$(document).on('click', '.status', function() {
var $this = $(this);
var id = $this.data('id');
var index = $this.data('index');
var status = $this.data('status');
});
function imgShow(src) {
... ...
... ... @@ -246,6 +246,10 @@
color: red;
}
.more-coupon {
cursor: pointer;
}
.small-desc {
line-height: 18px;
font-size: 12px;
... ... @@ -1204,7 +1208,7 @@
font-size: 18px;
color: #999;
text-align: center;
background-color: white;
background-color: #f8f8f8;
margin-right: 125px;
margin-left: 125px;
text-align: center;
... ...
... ... @@ -42,16 +42,16 @@ module.exports = {
query: {
helperDirs: [
path.join(__dirname, '/js/common/helpers')
],
partialDirs: [
path.join(__dirname, '/hbs', 'partials')
]
//partialDirs: [
// path.join(__dirname, '/hbs', 'partials')
//]
}
}]
},
resolve: {
alias: {
hbs: path.join(__dirname, 'hbs', 'actions')
hbs: path.join(__dirname, 'hbs')
}
},
plugins: [
... ...