Authored by xuqi

shopping cart data with sold out goods

... ... @@ -273,9 +273,14 @@ const filterCartData = (result, uid) => {
if (result.data && result.data.ordinary_cart_data) {
ordinaryCartData = result.data.ordinary_cart_data;
totalOrdinaryMoney = ordinaryCartData.shopping_cart_data.last_order_amount;
ordinaryGoods = _.concat(ordinaryGoods, ordinaryCartData.goods_list);
invalidGoods = _.concat(invalidGoods, ordinaryCartData.off_shelves_goods_list);
ordinarySoldOutGoods = _.concat(ordinarySoldOutGoods, ordinaryCartData.sold_out_goods_list);
ordinarySoldOutGoods = ordinaryCartData.sold_out_goods_list; // 库存不足商品
let soldOutWithoutStorage = _.filter(ordinarySoldOutGoods, {storage_number: '0'}); // 库存为0的商品失效
let soldOutWithStorage = _.reject(ordinarySoldOutGoods, {storage_number: '0'}); // 库存不为0的商品归为普通商品并显示库存不足
ordinaryGoods = _.concat(ordinaryGoods, ordinaryCartData.goods_list, soldOutWithStorage); // 正常商品
invalidGoods = _.concat(invalidGoods, ordinaryCartData.off_shelves_goods_list, soldOutWithoutStorage); // 失效商品
_.forEach(ordinaryGoods, function(good) {
buyNumber = parseInt(good.buy_number, 10);
... ... @@ -299,8 +304,7 @@ const filterCartData = (result, uid) => {
hasGoods: advancedGoods.length || ordinaryGoods.length || invalidGoods.length,
preSalePros: (advancedSoldOutGoods.length || advancedGoods.length) ?
_.concat(advancedGoods, advancedSoldOutGoods) : [],
commonPros: (ordinarySoldOutGoods.length || ordinaryGoods.length) ?
_.concat(ordinaryGoods, ordinarySoldOutGoods) : [],
commonPros: ordinaryGoods,
invalidPros: invalidGoods,
selectedNum: selectedAdvanceNum + selectedOrdinaryNum,
checkAll: totalNum === (selectedAdvanceNum + selectedOrdinaryNum),
... ...
... ... @@ -118,33 +118,33 @@
<li class="chk" data-product_info='{"goods_type": "invalid", "buy_number": {{buy_number}}, "selected": "{{selected}}", "product_sku": "{{product_sku}}", "promotion_id": 0}'>
<span class="iconfont warning">&#xe625;</span>
</li>
<li>
<a href="javascript:void(0)">
<img src="{{image goods_images 100 134}}" alt="{{product_name}}">
</a>
</li>
<li class="pro-info">
<div class="pro-name"><a href="javascript:void(0)">{{product_name}}</a></div>
<div>
{{#if color_name}}
<span class="mr20">颜色: {{color_name}}</span>
{{/if}}
{{#if size_name}}
<span>尺寸: {{size_name}}</span>
{{/if}}
</div>
</li>
<li class="price-num">
<span class="price sale-price">¥ {{round sales_price 2}}</span>
{{> cart/stepper }}
</li>
<li class="total-price-action">
<span class="price item-total-price">¥ {{round (multiple sales_price buy_number) 2}}</span>
<div class="actions">
<div class="remove-item action" data-product_id={{product_id}}><span class="iconfont">&#xe614;</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
<div class="send-to-favorite action" data-product_id={{product_id}}>移入收藏夹</div>
</div>
</li>
<li>
<a href="javascript:void(0)">
<img src="{{image goods_images 100 134}}" alt="{{product_name}}">
</a>
</li>
<li class="pro-info">
<div class="pro-name"><a href="javascript:void(0)">{{product_name}}</a></div>
<div>
{{#if color_name}}
<span class="mr20">颜色: {{color_name}}</span>
{{/if}}
{{#if size_name}}
<span>尺寸: {{size_name}}</span>
{{/if}}
</div>
</li>
<li class="price-num">
<span class="price sale-price">¥ {{round sales_price 2}}</span>
{{> cart/stepper }}
</li>
<li class="total-price-action">
<span class="price item-total-price">¥ {{round (multiple sales_price buy_number) 2}}</span>
<div class="actions">
<div class="remove-item action" data-product_id={{product_id}}><span class="iconfont">&#xe614;</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
<div class="send-to-favorite action" data-product_id={{product_id}}>移入收藏夹</div>
</div>
</li>
</ul>
{{/each}}
</div>
... ...
... ... @@ -11,6 +11,7 @@ var parentID = queryId.substr(0, 1);// 一级分类id
require('../common/header');
require('../common/return-top');
/**
* 目录切换
*/
... ...