Authored by 陈轩

Merge remote-tracking branch 'origin/develop' into develop

<template>
<tab v-bind:page="'cate'"></tab>
<brand-cate v-bind:category="category" v-bind:jump="true" v-bind:gender="gender"></brand-cate>
<tab :page="'cate'"></tab>
<brand-cate :category="category" :jump="true" :gender="gender"></brand-cate>
</template>
<script>
const tip = require('common/tip');
... ...
... ... @@ -3,7 +3,7 @@
<div class="cate-container clearfix">
<div class="content" style="height: 522px;">
<ul class="primary-level">
<li v-for="(index, ca) in cateNavLeftData" class="ellipsis" v-bind:class="{focus: index === leftcurrent}" class="p-level-item" v-on:click='cateNavLeftFun(index, ca.relationParameter.sort, ca.categoryName)'>
<li v-for="(index, ca) in cateNavLeftData" class="ellipsis" :class="{focus: index === leftcurrent}" class="p-level-item" @click='cateNavLeftFun(index, ca.relationParameter.sort, ca.categoryName)'>
{{ca.categoryName}}
</li>
</ul>
... ...
<template>
<tab v-bind:page="page"></tab>
<tab :page="page"></tab>
<brand-search></brand-search>
<resources v-bind:content-code.sync="contentCode"></resources>
<brand-list v-bind:channel="channel"></brand-list>
<resources :content-code.sync="contentCode"></resources>
<brand-list :channel="channel"></brand-list>
</template>
<script>
const contentCode = require('content-code');
... ...
... ... @@ -14,7 +14,7 @@
</div>
</div>
</div>
<index-list class="index-list" v-bind:index-list="indexList"></index-list>
<index-list class="index-list" :index-list="indexList"></index-list>
</template>
<style>
.brand-list-box {
... ...
<template>
<div class="tab-top-fixed">
<tab v-bind:page="page"></tab>
<tab :page="page"></tab>
</div>
<div class="resources">
<resources v-bind:content-code.sync="contentCode"></resources>
<resources :content-code.sync="contentCode"></resources>
</div>
</template>
<style>
... ...
<template>
<tab v-bind:page="page"></tab>
<resources v-bind:content-code="contentCode"></resources>
<tab :page="page"></tab>
<resources :content-code="contentCode"></resources>
</template>
<script>
... ...
<template>
<div v-if="channel.length" class="channel-tab">
<div class="channel ellipsis" v-for="(index, item) in channel" v-bind:class="{focus: index === current}" v-on:click="changeChannel(index)" v-bind:style="{width: (1 / channel.length) * 100 + '%'}">
<div class="channel ellipsis" v-for="(index, item) in channel" :class="{focus: index === current}" @click="changeChannel(index)" :style="{width: (1 / channel.length) * 100 + '%'}">
<span class="name">{{item.name | uppercase}}</span>
</div>
</div>
... ...
<template>
<div class="focus-floor">
<swipe class="swipe swipe-{{floor.length}}">
<swipe-item v-for="item in floor" v-bind:style="{backgroundColor: item.bgColor}">
<swipe-item v-for="item in floor" :style="{backgroundColor: item.bgColor}">
<a href="{{item.url}}" title="{{item.title}}">
<img v-bind:src="item.src | resize 750 365">
<img :src="item.src | resize 750 365">
</a>
</swipe-item>
</swipe>
... ...
<template>
<div class="goods">
<product-list v-bind:data="productList"></product-list>
<product-list :data="productList"></product-list>
</div>
</template>
... ...
<template>
<div class="resources">
<template v-for="floor in resources">
<focus v-if="floor.focus && floor.focusType === '1'" v-bind:floor="floor.data" v-bind:style="{height: '9.1rem'}">
<focus v-if="floor.focus && floor.focusType === '1'" :floor="floor.data" :style="{height: '9.1rem'}">
<!-- 轮播图,通栏 -->
</focus>
<focus-left-right v-if="floor.focus && floor.focusType === '2'" v-bind:floor="floor.data">
<focus-left-right v-if="floor.focus && floor.focusType === '2'" :floor="floor.data">
<!-- 轮播图,左右滑动 -->
</focus-left-right>
<title-image v-if="floor.titleImage" v-bind:floor="floor.data">
<title-image v-if="floor.titleImage" :floor="floor.data">
<!-- 标题图片 -->
</title-image>
<title-floor v-if="floor.titleFloor" v-bind:title="floor.data.title">
<title-floor v-if="floor.titleFloor" :title="floor.data.title">
<!-- 楼层标题 -->
</title-floor>
<recommend-content-five v-if="floor.recommendContentFive" v-bind:floor="floor.data.list">
<recommend-content-five v-if="floor.recommendContentFive" :floor="floor.data.list">
<!-- 带标题的12个小图推荐 -->
</recommend-content-five>
<goods v-if="floor.goods" v-bind:floor="floor.data">
<goods v-if="floor.goods" :floor="floor.data">
<!-- 商品 -->
</goods>
</template>
... ...
<template>
<div class="title-image">
<title-floor v-bind:title="{name: floor.title, moreName: floor.moreName, moreUrl: floor.moreUrl}"></title-floor>
<a class="image" v-bind:href="floor.image.url">
<title-floor :title="{name: floor.title, moreName: floor.moreName, moreUrl: floor.moreUrl}"></title-floor>
<a class="image" :href="floor.image.url">
<img v-lazy="floor.image.src | resize 750 364">
</a>
</div>
... ...
<template>
<div class="share-bottom clearfix" v-bind:class="{ 'hidden': close }">
<div class="share-bottom clearfix" :class="{ 'hidden': close }">
<span class="icon close" @click="closeBottom()">&#xe610;</span>
<span class="icon blk-icon">&#xe60f;</span>
<a href="javascript:;" class="new-user">新用户送千元礼包</a>
... ...
<template>
<div class="upload">
<form v-el:form v-on:change="upload">
<form v-el:form @change="upload">
<input id="{{inputId}}" type="file" name="filename" accept="image/*">
</form>
</div>
... ...
<template>
<resources v-bind:content-code.sync="contentCode"></resources>
<resources :content-code.sync="contentCode"></resources>
<div v-infinite-scroll="getNewsList()">
<div v-for="editorial in editorialList" class="editorial-box">
<div class="img">
... ...
... ... @@ -17,7 +17,7 @@
<div class="list-item exchange-mode">
<span>换货方式</span>
<i class="icon icon-right right"></i>
<select class="right" v-model="deliveryTpye">
<select class="right select-mode" v-model="deliveryTpye">
<option v-for="mode in delivery" :value="mode.id">{{mode.name}}</option>
</select>
</div>
... ... @@ -302,7 +302,7 @@
}
.exchange-info {
margin: 30px 0;
margin: 20px 0;
background-color: #fff;
}
... ... @@ -327,6 +327,10 @@
.icon:before {
vertical-align: -5px;
}
.select-mode {
margin-right: 25px;
}
}
</style>
... ...
... ... @@ -4,7 +4,7 @@
<div class="field" @click="openFeatureSelector(product.productId)">
换货的颜色尺码
<div class="right">
<span v-if="product.change">颜色:{{product.change.color}} 尺码:{{product.change.size}}</span>
<span class="change" v-if="product.change">颜色:{{product.change.color}} 尺码:{{product.change.size}}</span>
<i class="icon icon-right"></i>
</div>
</div>
... ... @@ -64,6 +64,7 @@
padding: 0 30px;
background-color: #fff;
font-size: 32px;
&:after {
position: absolute;
z-index: 1;
... ... @@ -78,6 +79,11 @@
.field .right {
color: #b0b0b0;
}
.change {
display: inline-block;
margin-right: 14px;
}
}
</style>
... ...
... ... @@ -3,7 +3,7 @@
<div class="order-status">
<p v-if="order.isCancel === 'Y'">交易已取消</p>
<p v-else>{{order.status | convertOrderState}}</p>
<p v-if="order.isCancel !== 'Y' && order.status == 0 && order.payLefttime != 0">剩余: <span v-count-down v-bind:left-time="order.payLefttime"></span>,订单将被取消</p>
<p v-if="order.isCancel !== 'Y' && order.status == 0 && order.payLefttime != 0">剩余: <span v-count-down :left-time="order.payLefttime"></span>,订单将被取消</p>
</div>
<div class="order-address">
<p><span>{{order.userName}}</span><span>{{order.mobile}}</span></p>
... ... @@ -18,7 +18,7 @@
<li class="goods-info" v-for="product in order.orderGoods">
<a :href="product | goodsUrl 'collection'">
<div class="img-box">
<img v-bind:src="product.goodsImage | resize 49 65">
<img :src="product.goodsImage | resize 49 65">
<label v-if="product.goodsType === 'gift'">赠品</label>
<label class="price-gift" v-if="product.goodsType === 'price_gift'">加价购</label>
</div>
... ... @@ -50,14 +50,14 @@
<button v-if="order.isCancel === 'Y'" @click="deleteOrder(order.orderCode)" class="normal">删除订单</button>
<template v-else>
<button v-if="order.status == 0" @click="cancelOrder(order.orderCode)">取消订单</button>
<button v-if="order.status == 0 " class="countdown" @click="goBuy(order)">去支付 <span v-count-down v-bind:left-time="order.payLefttime" v-bind:callback="autoCancel(order.orderCode)"></span></button>
<button v-if="order.status == 0 " class="countdown" @click="goBuy(order)">去支付 <span v-count-down :left-time="order.payLefttime" :callback="autoCancel(order.orderCode)"></span></button>
<a v-if="order.status == 4 || order.status == 5 || order.status == 6" href="/me/logistic?order_code={{order.orderCode}}">查看物流</a>
<button v-if="order.status == 4 || order.status == 5 " class="black" @click="confirmGoods(order.orderCode)">确认收货</button>
<button v-if="order.isSupportRefund == 'Y' || order.isSupportExchange == 'Y'" class="normal" @click="applyRefund()">申请售后</button>
</template>
</div>
<select id="cancel-reason" class="cancel-reason" v-on:blur="reasonChange" v-on:change="reasonChange" v-model="selected">
<option v-for="option in options" v-bind:value="{id:option.id,reason:option.reason}">{{option.reason}}</option>
<select id="cancel-reason" class="cancel-reason" @blur="reasonChange" @change="reasonChange" v-model="selected">
<option v-for="option in options" :value="{id:option.id,reason:option.reason}">{{option.reason}}</option>
</select>
</template>
</template>
... ...
... ... @@ -2,7 +2,7 @@
<div class="logistic-page yoho-page">
<div class="overview">
<div class="left" >
<img class="logoicon" v-bind:src="logo | resize 90 90" />
<img class="logoicon" :src="logo | resize 90 90" />
</div>
<div class="right">
<div>
... ...
... ... @@ -11,7 +11,7 @@
<div class="order-goods" >
<div class="goods-info" v-for="goods in order.orderGoods">
<div class="img-box">
<img v-bind:src="goods.goodsImage | resize 49 65">
<img :src="goods.goodsImage | resize 49 65">
<label v-if="goods.goodsType === 'gift'">赠品</label>
<label class="price-gift" v-if="goods.goodsType === 'price_gift'">加价购</label>
</div>
... ... @@ -36,7 +36,7 @@
<template v-else>
<button v-if="order.status == 0" @click="cancelOrder(order.orderCode)" class="leftpad">取消订单</button>
<button v-if="order.status == 0 " class="countdown" @click="goBuy(order)">去支付
<span v-count-down v-bind:left-time="order.payLefttime" v-bind:callback="autoCancel(order.orderCode)"></span>
<span v-count-down :left-time="order.payLefttime" :callback="autoCancel(order.orderCode)"></span>
</button>
<a v-if="order.status == 4 || order.status == 5 " class="leftpad"
href="/me/logistic?order_code={{order.orderCode}}">查看物流</a>
... ... @@ -54,8 +54,8 @@
<p>Your do not have an order <br>for the time being</p>
<a href="/product/new">随便逛逛</a>
</div>
<select id="cancel-reason" class="cancel-reason" v-on:blur="reasonChange" v-on:change="reasonChange" v-model="selected">
<option v-for="option in options" v-bind:value="{id:option.id,reason:option.reason}">{{option.reason}}</option>
<select id="cancel-reason" class="cancel-reason" @blur="reasonChange" @change="reasonChange" v-model="selected">
<option v-for="option in options" :value="{id:option.id,reason:option.reason}">{{option.reason}}</option>
</select>
</template>
... ...
... ... @@ -13,7 +13,7 @@
<div class="order-goods">
<div class="goods-info" v-for="product in order.goods">
<div class="img-box">
<img v-bind:src="product.goodsImage | resize 49 65">
<img :src="product.goodsImage | resize 49 65">
<label v-if="product.goodsType === 'gift'">赠品</label>
<label class="price-gift" v-if="product.goodsType === 'price_gift'">加价购</label>
</div>
... ...
... ... @@ -191,8 +191,6 @@
font-size: 32px;
line-height: 90px;
background: #fff;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
.return-amount-info {
... ... @@ -205,7 +203,7 @@
.return-amount-item {
position: relative;
width: 100%;
height: 90px;
height: 88px;
&:after {
content: "";
... ... @@ -238,6 +236,7 @@
select {
direction: rtl;
margin-right: 24px;
}
}
}
... ...
... ... @@ -4,7 +4,7 @@
<input type="checkbox" v-model="product.checked" id="checkbox-{{product.goodsId}}">
<label for="checkbox-{{product.goodsId}}"></label>
</div>
<img class="image" v-bind:src="product.goodsImage | resize 100 130">
<img class="image" :src="product.goodsImage | resize 100 130">
<div class="info">
<div class="p-title">
{{product.productName}}
... ...
... ... @@ -54,8 +54,6 @@
.product-list {
margin-top: -4px;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
</style>
... ...
<template>
<div v-if="product.checked" class="reason">
<div v-if="product.isLimitSkn === 'Y'" v-on:click="showTip" class="tip">
<div v-if="product.isLimitSkn === 'Y'" @click="showTip" class="tip">
<span class="icon icon-love"></span>
{{specialNotice.title}}
</div>
... ... @@ -8,20 +8,20 @@
<slot name="type">退货原因</slot>
<span class="icon icon-right"></span>
<select v-model="product.reason.id" name="reason">
<option v-for="reason in reasons" v-bind:value="reason.id" selected="{{reason.id === product.reason.id}}">{{reason.name}}</option>
<select class="reason" v-model="product.reason.id" name="reason">
<option v-for="reason in reasons" :value="reason.id" selected="{{reason.id === product.reason.id}}">{{reason.name}}</option>
</select>
</div>
<template v-if="specialReasons.indexOf(product.reason.id) !== -1">
<div class="remark">
<textarea v-model="product.remark" rows="3" max-length="100" placeholder="原因说明"></textarea>
<textarea v-model="product.remark" rows="4" max-length="100" placeholder="原因说明"></textarea>
</div>
<div class="image-list clearfix">
<div class="image-item" v-for="image in imageListForShow">
<span v-on:click="deleteImage(image.index)" class="icon icon-close"></span>
<img v-bind:src="image.path">
<span @click="deleteImage(image.index)" class="icon icon-close"></span>
<img :src="image.path">
</div>
<upload v-show="imageListForShow.length < 4" class="image-item" v-bind:image-list="product.imageList" v-bind:bucket="bucket"></upload>
<upload v-show="imageListForShow.length < 4" class="image-item" :image-list="product.imageList" :bucket="bucket"></upload>
</div>
</template>
</div>
... ... @@ -83,14 +83,14 @@
font-size: 32px;
line-height: 90px;
background: #f6f6f6;
&:after {
content: "";
display: block;
width: 100%;
height: 30px;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
.tip {
position: relative;
padding: 0 30px;
... ... @@ -115,15 +115,7 @@
width: 100%;
height: 90px;
background: #fff;
&:after {
content: "";
position: absolute;
left: 0;
bottom: -1px;
width: 690px;
height: 0;
border-bottom: 1px solid #eee;
}
.icon,
select {
direction: rtl;
... ... @@ -132,14 +124,19 @@
line-height: 90px;
color: #b0b0b0;
}
.reason {
margin-right: 25px;
}
}
.remark {
margin-top: 20px;
padding: 0 30px;
background: #fff;
border-top: 1px solid #eee;
height: 190px;
textarea {
margin-top: 30px;
margin-top: 25px;
width: 100%;
font-size: 24px;
line-height: 40px;
... ... @@ -149,16 +146,20 @@
}
.image-list {
padding: 30px;
padding-top: 5px;
background: #fff;
.image-item {
position: relative;
float: left;
margin-right: 20px;
width: 150px;
height: 150px;
margin-right: 25px;
width: 154px;
height: 154px;
&:last-child {
margin-right: 0;
}
.icon-close {
position: absolute;
right: -20px;
... ...
<template>
<div class="brand-share">
<img class="brand-top-box" v-bind:src="shopInfo.shopBg | resize 750 478">
<div v-if="shopInfo.shopLogo" class="brand-logo"><img v-bind:src="shopInfo.shopLogo | resize 120 80"></div>
<img class="brand-top-box" :src="shopInfo.shopBg | resize 750 478">
<div v-if="shopInfo.shopLogo" class="brand-logo"><img :src="shopInfo.shopLogo | resize 120 80"></div>
<div v-else class="brand-title">{{ shopInfo.shopName }}</div>
<div class="brand-intro">{{ shopInfo.shopIntro }}</div>
<div class="tip">进入 BLK 选购潮品</div>
<div class="icon arrow">&#xe602;</div>
<a href="//m.yohoblk.com"><img v-bind:src="shopInfo.shopBg | resize 752 365"></a>
<a href="//m.yohoblk.com"><img :src="shopInfo.shopBg | resize 752 365"></a>
</div>
<share-bottom></share-bottom>
</template>
... ...
<template>
<top-bar v-bind:share-data="shareData"></top-bar>
<shop-top v-bind:shop-info="shopInfo"></shop-top>
<div v-bind:class='{"shop-goods-top": !shopInfo.isBlkShop}'>
<goods-list v-bind:data="productList" :empty="empty"></goods-list>
<top-bar :share-data="shareData"></top-bar>
<shop-top :shop-info="shopInfo"></shop-top>
<div :class='{"shop-goods-top": !shopInfo.isBlkShop}'>
<goods-list :data="productList" :empty="empty"></goods-list>
</div>
<filter :config="filterConfig" v-ref:filter></filter>
</template>
... ...
... ... @@ -4,7 +4,7 @@
<img v-if="shopInfo.shopLogo" v-lazy="shopInfo.shopLogo.split('?')[0] + '?imageMogr2/thumbnail/{width}x{height}' | resize 120 80" alt="{{ shopInfo.shopName }}">
<div v-else class="brand-title">{{ shopInfo.shopName }}</div>
<hr>
<div v-show="showMore" transition="brand-intro" v-bind:class="{ 'brand-short': !showMore }">{{ shopInfo.shopIntro }}</div>
<div v-show="showMore" transition="brand-intro" :class="{ 'brand-short': !showMore }">{{ shopInfo.shopIntro }}</div>
</div>
<div v-if="!showMore" class="showmore expand" @click="introTrans()"><span class="icon">&#xe602;</span></div>
<div v-else class="showmore collapse" @click="introTrans()"><span class="icon">&#xe617;</span></div>
... ...