25 changed files with 52 additions and 2751 deletions
			
			
		- 
					102components/big-coffee/big-coffee.less
 - 
					74components/big-coffee/big-coffee.vue
 - 
					55components/exclusive-plan/exclusive-plan.less
 - 
					58components/exclusive-plan/exclusive-plan.vue
 - 
					108components/health-tips/health-tips.less
 - 
					102components/health-tips/health-tips.vue
 - 
					112components/index-call/index-call.less
 - 
					114components/index-call/index-call.vue
 - 
					73components/index-category/index-category.less
 - 
					69components/index-category/index-category.vue
 - 
					114components/index-cube/index-cube.less
 - 
					252components/index-cube/index-cube.vue
 - 
					166components/index-grouping/index-grouping.less
 - 
					94components/index-grouping/index-grouping.vue
 - 
					216components/index-groupon/index-groupon.less
 - 
					98components/index-groupon/index-groupon.vue
 - 
					133components/index-seckill/index-seckill.less
 - 
					160components/index-seckill/index-seckill.vue
 - 
					260components/index-suit/index-suit.less
 - 
					77components/index-suit/index-suit.vue
 - 
					75components/waterfalls-flow/waterfalls-flow.less
 - 
					99components/waterfalls-flow/waterfalls-flow.vue
 - 
					4pages/business/payment/money.vue
 - 
					185pages/index/index/index.vue
 - 
					3pages/user/member/code.vue
 
@ -1,102 +0,0 @@ | 
				
			|||
.big-coffee{ | 
				
			|||
  background-color: #FFFFFF; | 
				
			|||
  padding: 0 15px; | 
				
			|||
  .title{ | 
				
			|||
    padding: 10px 0px 0px 0; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 24px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      line-height: 33px; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
    } | 
				
			|||
    i{ | 
				
			|||
      margin-left: 5px; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 700; | 
				
			|||
        margin-top: -8px; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .ul-list{ | 
				
			|||
   .li-item{ | 
				
			|||
     padding: 9px 0px; | 
				
			|||
     display: flex; | 
				
			|||
     align-items: center; | 
				
			|||
     .left-info{ | 
				
			|||
       width:122px; | 
				
			|||
       height:122px; | 
				
			|||
       image{ | 
				
			|||
         width: 100%; | 
				
			|||
         height: 100%; | 
				
			|||
         vertical-align:middle; | 
				
			|||
       } | 
				
			|||
     } | 
				
			|||
     .right-info{ | 
				
			|||
       flex: 1; | 
				
			|||
       overflow: hidden; | 
				
			|||
       padding-left: 18px; | 
				
			|||
       .name{ | 
				
			|||
         height: 48px; | 
				
			|||
         color:#111111; | 
				
			|||
         font-size: 16px; | 
				
			|||
         line-height: 24px; | 
				
			|||
         margin-bottom:29px; | 
				
			|||
         display: -webkit-box; | 
				
			|||
         -webkit-box-orient: vertical; | 
				
			|||
         -webkit-line-clamp: 2; | 
				
			|||
         overflow: hidden; | 
				
			|||
       } | 
				
			|||
       .referrer{ | 
				
			|||
         display: flex; | 
				
			|||
         align-items: center; | 
				
			|||
         .avatar{ | 
				
			|||
           width: 34px; | 
				
			|||
           height: 34px; | 
				
			|||
           border-radius: 50%; | 
				
			|||
           image{ | 
				
			|||
             width: 100%; | 
				
			|||
             height: 100%; | 
				
			|||
             border-radius: 50%; | 
				
			|||
           } | 
				
			|||
         } | 
				
			|||
         .detail{ | 
				
			|||
           flex: 1; | 
				
			|||
           overflow: hidden; | 
				
			|||
           padding-left: 7px; | 
				
			|||
           .nick-name{ | 
				
			|||
             color:#666666; | 
				
			|||
             font-size: 12px; | 
				
			|||
             line-height: 17px; | 
				
			|||
             overflow: hidden; | 
				
			|||
             text-overflow: ellipsis; | 
				
			|||
             white-space: nowrap; | 
				
			|||
           } | 
				
			|||
           .sub-intro{ | 
				
			|||
             color: #999999; | 
				
			|||
             font-size: 10px; | 
				
			|||
             line-height: 14px; | 
				
			|||
             overflow: hidden; | 
				
			|||
             text-overflow: ellipsis; | 
				
			|||
             white-space: nowrap; | 
				
			|||
           } | 
				
			|||
         } | 
				
			|||
       } | 
				
			|||
     } | 
				
			|||
   } | 
				
			|||
 } | 
				
			|||
} | 
				
			|||
@ -1,74 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="big-coffee" :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
    <view class="title" v-if="coffeeTitle && show"> | 
				
			|||
        <span>{{coffeeTitle}}</span> | 
				
			|||
        <!--<span data-link="/pages/article/coffeeList/coffeeList?type=1" bindtap="_jumpImg"> | 
				
			|||
            更多 | 
				
			|||
             <i class="iconfont icon-gengduo"></i> | 
				
			|||
        </span>--> | 
				
			|||
    </view> | 
				
			|||
    <view class="ul-list"> | 
				
			|||
        <view class="li-item" v-for="(item, index) in coffeeData" :key="index"  :data-link="item.link" @tap="_jumpImg"> | 
				
			|||
            <view class="left-info"> | 
				
			|||
                <image :src="item.image"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="right-info"> | 
				
			|||
                <view class="name"> | 
				
			|||
                    {{item.associate.title}} | 
				
			|||
                </view> | 
				
			|||
                <view class="referrer"> | 
				
			|||
                    <view class="avatar"> | 
				
			|||
                        <image :src="item.associate.author_avatar"></image> | 
				
			|||
                    </view> | 
				
			|||
                    <view class="detail"> | 
				
			|||
                        <view class="nick-name">推荐者:{{item.associate.author}}</view> | 
				
			|||
                        <view class="sub-intro">{{item.associate.author_title}}</view> | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
  props: { | 
				
			|||
	  coffeeData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  coffeeTitle: { | 
				
			|||
	    type: String, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  show: { | 
				
			|||
	    type: Number, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
  }, | 
				
			|||
   | 
				
			|||
  methods: { | 
				
			|||
	   _jumpImg(e) { | 
				
			|||
	    var link = e.currentTarget.dataset.link; | 
				
			|||
	    if (!link || link == 'uto_miniprogram') return; | 
				
			|||
	    wx.navigateTo({ | 
				
			|||
	      url: link | 
				
			|||
	    }); | 
				
			|||
	  }, | 
				
			|||
    }, | 
				
			|||
 | 
				
			|||
}; | 
				
			|||
 | 
				
			|||
</script> | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "big-coffee"; | 
				
			|||
</style> | 
				
			|||
@ -1,55 +0,0 @@ | 
				
			|||
.exclusive-plan{ | 
				
			|||
  background-color: #FFFFFF; | 
				
			|||
  .title{ | 
				
			|||
    padding: 10px 15px 5px 15px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 24px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      line-height: 33px; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 700; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .content-plans{ | 
				
			|||
    //padding:0px 0px 20px 0px; | 
				
			|||
    white-space: nowrap; | 
				
			|||
    overflow: auto; | 
				
			|||
    .item{ | 
				
			|||
      display: inline-block; | 
				
			|||
      width:240px; | 
				
			|||
      height: 125px; | 
				
			|||
      margin: 5px; | 
				
			|||
 | 
				
			|||
      &:first-child { | 
				
			|||
        margin-left: 15px; | 
				
			|||
      } | 
				
			|||
      &:last-child { | 
				
			|||
        margin-right: 15px; | 
				
			|||
      } | 
				
			|||
      image{ | 
				
			|||
        width: 100%; | 
				
			|||
        height: 100%; | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,58 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="exclusive-plan" :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
    <view class="title" v-if="planTitle && show"> | 
				
			|||
        <span>{{planTitle}}</span> | 
				
			|||
        <span data-link="/pages/article/list/list?type=2" @tap="_jumpImg">更多 | 
				
			|||
             <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view class="content-plans"> | 
				
			|||
        <view class="item" v-for="(item, index) in planData" :key="index"  :data-link="item.link" @tap="_jumpImg"> | 
				
			|||
            <image :src="item.image"></image> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
  props: { | 
				
			|||
	   planData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  planTitle: { | 
				
			|||
	    type: String, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  show: { | 
				
			|||
	    type: Number, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
  }, | 
				
			|||
  options: { | 
				
			|||
    addGlobalClass: true | 
				
			|||
  }, | 
				
			|||
  methods: { | 
				
			|||
    | 
				
			|||
	   _jumpImg(e) { | 
				
			|||
		 var link = e.currentTarget.dataset.link; | 
				
			|||
		 if (!link || link == 'uto_miniprogram') return; | 
				
			|||
		 wx.navigateTo({ | 
				
			|||
		   url: link | 
				
			|||
		 }); | 
				
			|||
	   } | 
				
			|||
   } | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "exclusive-plan"; | 
				
			|||
</style> | 
				
			|||
@ -1,108 +0,0 @@ | 
				
			|||
.health-tips{ | 
				
			|||
  background-color: #FFFFFF; | 
				
			|||
  padding: 0 0px; | 
				
			|||
  //margin-bottom:15px; | 
				
			|||
  .title{ | 
				
			|||
    padding: 10px 15px 0px 15px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 24px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      line-height: 33px; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 700; | 
				
			|||
        margin-top: -8px; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .ul-content{ | 
				
			|||
    .li-item{ | 
				
			|||
      .top-box{ | 
				
			|||
        padding: 11px 15px 8px 15px; | 
				
			|||
        display: flex; | 
				
			|||
        align-items: center; | 
				
			|||
        justify-content: space-between; | 
				
			|||
        .topic{ | 
				
			|||
          color: #111111; | 
				
			|||
          font-size: 14px; | 
				
			|||
          line-height: 24px; | 
				
			|||
 | 
				
			|||
          font-weight: 700; | 
				
			|||
        } | 
				
			|||
        .change{ | 
				
			|||
          height: 19px; | 
				
			|||
          border-radius:4px; | 
				
			|||
          border: 1px solid #333333; | 
				
			|||
          width: 44px; | 
				
			|||
          text-align: center; | 
				
			|||
          color: #333333; | 
				
			|||
          font-size: 11px; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
      .center-box{ | 
				
			|||
        padding:0 15px 9px 15px; | 
				
			|||
        color: #999999; | 
				
			|||
        font-size: 12px; | 
				
			|||
        line-height: 19px; | 
				
			|||
      } | 
				
			|||
      .bottom-box{ | 
				
			|||
        overflow: auto; | 
				
			|||
        padding:18px 10px; | 
				
			|||
        display: flex; | 
				
			|||
        flex-wrap: nowrap; | 
				
			|||
        .item{ | 
				
			|||
          margin: 0 5px; | 
				
			|||
          .info{ | 
				
			|||
            .img-box{ | 
				
			|||
              width: 100px; | 
				
			|||
              height: 100px; | 
				
			|||
              image{ | 
				
			|||
                width: 100%; | 
				
			|||
                height: 100%; | 
				
			|||
                vertical-align: middle; | 
				
			|||
              } | 
				
			|||
 | 
				
			|||
            } | 
				
			|||
            .name{ | 
				
			|||
              padding:6px 0 3px 0; | 
				
			|||
              color:#333333; | 
				
			|||
              font-size: 12px; | 
				
			|||
              line-height: 19px; | 
				
			|||
              white-space: nowrap; | 
				
			|||
              text-overflow: ellipsis; | 
				
			|||
              overflow: hidden; | 
				
			|||
            } | 
				
			|||
            .money{ | 
				
			|||
              color: #E7031C; | 
				
			|||
              font-size: 11px; | 
				
			|||
              line-height: 16px; | 
				
			|||
              span{ | 
				
			|||
                color: #999999; | 
				
			|||
                font-size: 10px; | 
				
			|||
                line-height: 14px; | 
				
			|||
                text-decoration: line-through; | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
 | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
} | 
				
			|||
@ -1,102 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="health-tips" :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
    <view class="title" v-if="title && show"> | 
				
			|||
        <span>{{title}}</span> | 
				
			|||
    </view> | 
				
			|||
    <view class="ul-content"> | 
				
			|||
        <view class="li-item" v-if="tipsData"> | 
				
			|||
            <view class="top-box"> | 
				
			|||
                <view class="topic"> | 
				
			|||
                    {{tipsData.name}} | 
				
			|||
                </view> | 
				
			|||
                <view class="change" @tap="_changeItem"> | 
				
			|||
                    换一换 | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
            <view class="center-box"> | 
				
			|||
                {{tipsData.meta.subtitle}} | 
				
			|||
            </view> | 
				
			|||
            <view class="bottom-box"> | 
				
			|||
                <view class="item" :data-id="item.associate.id" v-for="(item, index) in tipsData.children" :key="index"  @tap="_jumpToDetail"> | 
				
			|||
                    <view class="info"> | 
				
			|||
                        <view class="img-box"> | 
				
			|||
                            <image :src="item.associate.img"></image> | 
				
			|||
                        </view> | 
				
			|||
                        <view class="name"> | 
				
			|||
                            {{item.associate.name}} | 
				
			|||
                        </view> | 
				
			|||
                        <view class="money"> | 
				
			|||
                            ¥{{item.associate.sell_price}} | 
				
			|||
                            <span>¥{{item.associate.market_price}}</span> | 
				
			|||
                        </view> | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return { | 
				
			|||
      tipsData: '', | 
				
			|||
      tapIndex: 0 | 
				
			|||
    }; | 
				
			|||
  }, | 
				
			|||
  props: { | 
				
			|||
	 healthData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  title: { | 
				
			|||
	    type: String, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  show: { | 
				
			|||
	    type: Number, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
	  | 
				
			|||
  }, | 
				
			|||
   | 
				
			|||
    mounted() { | 
				
			|||
      this.tipsData= this.healthData[0]; | 
				
			|||
    } , | 
				
			|||
   | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      _changeItem(e) { | 
				
			|||
        var index = this.tapIndex; | 
				
			|||
        if (index == this.healthData.length - 1) { | 
				
			|||
          index = 0; | 
				
			|||
        } else { | 
				
			|||
          index++; | 
				
			|||
        } | 
				
			|||
		this.tipsData= this.healthData[0]; | 
				
			|||
		this.tapIndex= index; | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpToDetail(e) { | 
				
			|||
        var id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
	   | 
				
			|||
	 | 
				
			|||
    }, | 
				
			|||
 | 
				
			|||
    | 
				
			|||
 | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "health-tips"; | 
				
			|||
</style> | 
				
			|||
@ -1,112 +0,0 @@ | 
				
			|||
@import '../../common/css/global'; | 
				
			|||
//dacall | 
				
			|||
.seckill-box{ | 
				
			|||
  background: #FFFFFF; | 
				
			|||
  padding:10px 15px; | 
				
			|||
  .title{ | 
				
			|||
    height: 35px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    line-height: 35px; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 22px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      display: inline-block; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        &.iconfont{ | 
				
			|||
          font-size: 15px; | 
				
			|||
          font-weight: 600; | 
				
			|||
          margin-left: 5px; | 
				
			|||
 | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .seckill-info{ | 
				
			|||
    display: flex; | 
				
			|||
    align-items: flex-start; | 
				
			|||
    margin-top: 10px; | 
				
			|||
    .left{ | 
				
			|||
      width: 100px; | 
				
			|||
      height: 100px; | 
				
			|||
      image{ | 
				
			|||
        width: 100%; | 
				
			|||
        height: 100%; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .right{ | 
				
			|||
      flex: 1; | 
				
			|||
      margin-left: 10px; | 
				
			|||
      overflow: hidden; | 
				
			|||
      .goods-name{ | 
				
			|||
        overflow: hidden; | 
				
			|||
        text-overflow: ellipsis; | 
				
			|||
        white-space: nowrap; | 
				
			|||
        font-size: 16px; | 
				
			|||
      } | 
				
			|||
      .price-box { | 
				
			|||
        color: #e50303; | 
				
			|||
        font-size: 18px; | 
				
			|||
        .old{ | 
				
			|||
          font-size: 12px; | 
				
			|||
          color: #9c9c9c; | 
				
			|||
          text-decoration: line-through; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        &.free-money{ | 
				
			|||
          font-size: 14px; | 
				
			|||
          color: #9C9C9C; | 
				
			|||
          display: flex; | 
				
			|||
          align-items: center; | 
				
			|||
          justify-content: space-between; | 
				
			|||
 | 
				
			|||
          .money{ | 
				
			|||
            display: flex; | 
				
			|||
            align-items: center; | 
				
			|||
            .new { | 
				
			|||
              font-size: 18px; | 
				
			|||
              color: @globalColor; | 
				
			|||
            } | 
				
			|||
            .old{ | 
				
			|||
              font-size: 10px; | 
				
			|||
              margin-left: 5px; | 
				
			|||
              text-decoration: line-through; | 
				
			|||
 | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
      .seckill-time{ | 
				
			|||
        display: flex; | 
				
			|||
        align-items: flex-end; | 
				
			|||
        justify-content: space-between; | 
				
			|||
        .free{ | 
				
			|||
          white-space: nowrap; | 
				
			|||
          overflow: hidden; | 
				
			|||
          text-overflow: ellipsis; | 
				
			|||
          flex: 1; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .buy{ | 
				
			|||
          width: 70px; | 
				
			|||
          height: 25px; | 
				
			|||
          border-radius: 50px; | 
				
			|||
          color: #fff; | 
				
			|||
          background:#FB5054; | 
				
			|||
          font-size: 12px; | 
				
			|||
          line-height: 25px; | 
				
			|||
          text-align: center; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,114 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<!--打call--> | 
				
			|||
<view class="seckill-box" :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
    <view class="title " data-src="/pages/store/callList/callList" @tap="_jumpImg"> | 
				
			|||
        <span>打Call免费领</span> | 
				
			|||
        <span>更多 | 
				
			|||
             <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view v-for="(item, index) in callData" :key="index" > | 
				
			|||
        <view class="seckill-info" :data-goods="item.associate.goods.id" :data-id="item.associate_id" @tap="_jumpCall"> | 
				
			|||
            <view class="left"> | 
				
			|||
                <image :src="item.associate.img"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="right"> | 
				
			|||
                <view class="goods-name"> | 
				
			|||
                    {{item.associate.label}} | 
				
			|||
                </view> | 
				
			|||
                <view class="price-box free-money"> | 
				
			|||
                    <view class="money"> | 
				
			|||
                        <text class="new">¥{{item.associate.goods.sell_price}}</text> | 
				
			|||
                        <text class="old">¥{{item.associate.goods.market_price}}</text> | 
				
			|||
                    </view> | 
				
			|||
                    <view class="nun"> | 
				
			|||
                        限量{{item.associate.limit}}件 | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
                <view class="seckill-time"> | 
				
			|||
                    <view v-if="item.associate.activity_status == 'NoBegin'"> | 
				
			|||
                        <seckill :end="item.associate.ends_at" typename="集call" :starts="item.associate.starts_at" :server="server" mold="index"></seckill> | 
				
			|||
                    </view> | 
				
			|||
                    <view class="free" v-else> | 
				
			|||
                        集满{{item.associate.per_count}}个Call即可免费领 | 
				
			|||
                    </view> | 
				
			|||
                    <view :style="'background: ' + config.mainColor" class="buy"> | 
				
			|||
                        去打Call | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
 | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
import {pageLogin, getUrl,config} from '../../common/js/utils.js'; | 
				
			|||
import seckill from "../seckill/seckill"; | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
  components: { | 
				
			|||
    seckill | 
				
			|||
  }, | 
				
			|||
  props: { | 
				
			|||
	  callData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  isLogin: { | 
				
			|||
	    type: Boolean, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  config: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  server: { | 
				
			|||
	    type: String, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
  }, | 
				
			|||
  options: { | 
				
			|||
    addGlobalClass: true | 
				
			|||
  }, | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpCall(e) { | 
				
			|||
        if (this.isLogin) { | 
				
			|||
          var id = e.currentTarget.dataset.id; | 
				
			|||
          wx.navigateTo({ | 
				
			|||
            url: '/pages/store/call/call?id=' + id | 
				
			|||
          }); | 
				
			|||
        } else { | 
				
			|||
          wx.showModal({ | 
				
			|||
            content: '请先登录', | 
				
			|||
            success: res => { | 
				
			|||
              if (res.confirm || !res.cancel && !res.confirm) { | 
				
			|||
                pageLogin(getUrl()); | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
          }); | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    }, | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-call"; | 
				
			|||
</style> | 
				
			|||
@ -1,73 +0,0 @@ | 
				
			|||
//最佳销售单品 | 
				
			|||
.index-categrory{ | 
				
			|||
  .best { | 
				
			|||
    overflow: hidden; | 
				
			|||
 | 
				
			|||
    .title { | 
				
			|||
     padding:10px 15px; | 
				
			|||
      display: flex; | 
				
			|||
      justify-content: space-between; | 
				
			|||
      color: #000; | 
				
			|||
      align-items: center; | 
				
			|||
      background: #FFFFFF; | 
				
			|||
      span:nth-child(1) { | 
				
			|||
        font-size: 22px; | 
				
			|||
        font-weight: bold; | 
				
			|||
        display: inline-block; | 
				
			|||
        //padding-left: 6px; | 
				
			|||
        //border-left: 4px solid #E7031C; | 
				
			|||
 | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    .SalesGoods-box { | 
				
			|||
 | 
				
			|||
      .SalesGoods-item { | 
				
			|||
        text-align: center; | 
				
			|||
        display: inline-block; | 
				
			|||
        width: 33.33%; | 
				
			|||
        padding: 0 3px; | 
				
			|||
        box-sizing: border-box; | 
				
			|||
        vertical-align: middle; | 
				
			|||
        margin-bottom: 6px; | 
				
			|||
 | 
				
			|||
        .item { | 
				
			|||
          background: #FFFFFF; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .slider-image { | 
				
			|||
        width: 100%; | 
				
			|||
      } | 
				
			|||
      .goods-name { | 
				
			|||
        white-space: nowrap; | 
				
			|||
        overflow: hidden; | 
				
			|||
        text-overflow: ellipsis; | 
				
			|||
        padding-left: 2px; | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .money-box { | 
				
			|||
        display: flex; | 
				
			|||
        align-items: center; | 
				
			|||
        padding-left: 7px; | 
				
			|||
        .money-now { | 
				
			|||
          color: red; | 
				
			|||
          font-size: 12px; | 
				
			|||
        } | 
				
			|||
        .money-old { | 
				
			|||
          color: #c7c7c7; | 
				
			|||
          font-size: 13px; | 
				
			|||
          text-decoration: line-through; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .button-box { | 
				
			|||
      width: 100%; | 
				
			|||
      height: 44px; | 
				
			|||
      text-align: center; | 
				
			|||
      line-height: 44px; | 
				
			|||
      background: #FFFFFF; | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,69 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<!--最佳销售单品--> | 
				
			|||
<view> | 
				
			|||
	<view class="index-categrory" v-for="(items, idx) in categoryData" :key="idx"  :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
	    <view class="best"> | 
				
			|||
	        <view class="title"> | 
				
			|||
	            <span>{{items.meta.name}}</span> | 
				
			|||
	        </view> | 
				
			|||
	        <view class="SalesGoods-box"> | 
				
			|||
	            <view class="SalesGoods-item" :data-id="item.id" v-for="(item, index) in items.goodsList" :key="index"  @tap="_jumpToDetail"> | 
				
			|||
	                <view class="item"> | 
				
			|||
	                    <image mode="widthFix" class="slider-image" :src="item.img" :alt="item.image"></image> | 
				
			|||
	                    <view class="goods-name">{{item.name}}</view> | 
				
			|||
	                    <view class="money-box"> | 
				
			|||
	                        <view class="money-now">¥{{item.sell_price}}</view> | 
				
			|||
	                    </view> | 
				
			|||
	                </view> | 
				
			|||
	            </view> | 
				
			|||
	        </view> | 
				
			|||
	        <view class="button-box" data-src="/pages/store/list/list" @tap="_jumpImg"> | 
				
			|||
	            查看全部商品 | 
				
			|||
	        </view> | 
				
			|||
	    </view> | 
				
			|||
	</view> | 
				
			|||
</view> | 
				
			|||
 | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
  props: { | 
				
			|||
	  categoryData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  }  | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      _jumpToDetail(e) { | 
				
			|||
        var id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
    }, | 
				
			|||
    | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-category"; | 
				
			|||
</style> | 
				
			|||
@ -1,114 +0,0 @@ | 
				
			|||
//图片魔方 | 
				
			|||
.picture-cube{ | 
				
			|||
  background-color: #FFFFFF; | 
				
			|||
  .title{ | 
				
			|||
    color:#111111; | 
				
			|||
    padding: 20px 15px; | 
				
			|||
    font-size:22px; | 
				
			|||
    font-weight: 700; | 
				
			|||
    span{ | 
				
			|||
      display: inline-block; | 
				
			|||
 | 
				
			|||
      /*padding-left:6px; | 
				
			|||
      border-left:4px solid #E7031C;*/ | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  //一图模式 | 
				
			|||
  .one-mode{ | 
				
			|||
    image{ | 
				
			|||
      box-sizing: border-box; | 
				
			|||
 | 
				
			|||
      width: 100%; | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  //二图模式 | 
				
			|||
  .two-mode{ | 
				
			|||
    //  第一种表现形式 | 
				
			|||
    .first-show{ | 
				
			|||
      display: flex; | 
				
			|||
      padding: 5px; | 
				
			|||
      .item{ | 
				
			|||
        flex: 1; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .common-show{ | 
				
			|||
      display: flex; | 
				
			|||
      .item{ | 
				
			|||
        flex: 1; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
          height: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
      .two-item{ | 
				
			|||
        flex: 2; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  //  三图模式 | 
				
			|||
  .three-mode{ | 
				
			|||
    .first-show{ | 
				
			|||
      display: flex; | 
				
			|||
      padding: 5px; | 
				
			|||
      .item{ | 
				
			|||
        flex: 1; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .common-show{ | 
				
			|||
      display: flex; | 
				
			|||
      .item{ | 
				
			|||
        flex: 1; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
        } | 
				
			|||
        .info{ | 
				
			|||
          height: 50%; | 
				
			|||
          padding: 5px; | 
				
			|||
          image{ | 
				
			|||
            height: 100%; | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  //  四图模式 | 
				
			|||
  .four-mode{ | 
				
			|||
    .first-show{ | 
				
			|||
      display: flex; | 
				
			|||
      flex-wrap: wrap; | 
				
			|||
      padding: 5px; | 
				
			|||
      .item{ | 
				
			|||
        width: 50%; | 
				
			|||
        padding: 5px; | 
				
			|||
          image{ | 
				
			|||
            width: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .second-show{ | 
				
			|||
      display: flex; | 
				
			|||
      .item{ | 
				
			|||
        flex: 1; | 
				
			|||
        padding: 5px; | 
				
			|||
        image{ | 
				
			|||
          width: 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,252 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="picture-cube" :style="{marginBottom: meta.margin_bottom + 'px',background: meta.background_color}"> | 
				
			|||
    <!--一图模式--> | 
				
			|||
    <view class="one-mode" v-if="showType == '1_1'"> | 
				
			|||
        <view class="title" v-if="cubeTitle && show"> | 
				
			|||
            <span>{{cubeTitle}}</span> | 
				
			|||
        </view> | 
				
			|||
        <view :style="' padding-left: ' + meta.padding_left + 'px; padding-right: ' + meta.padding_right + 'px; padding-bottom: ' + meta.padding_bottom + 'px; padding-top: ' + meta.padding_top + 'px;'"> | 
				
			|||
            <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
            </navigator> | 
				
			|||
            <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
    <!--二图模式--> | 
				
			|||
    <view class="two-mode" v-if="mode == 2"> | 
				
			|||
        <view class="title" v-if="cubeTitle && show"> | 
				
			|||
            <span>{{cubeTitle}}</span> | 
				
			|||
        </view> | 
				
			|||
        <!--第一种表现形式--> | 
				
			|||
        <view class="first-show" v-if="showType == '2_1'"> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <!--第二种表现形式--> | 
				
			|||
        <view class="common-show" v-if="showType == '2_2'"> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="two-item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <!--第三种表现形式--> | 
				
			|||
        <view class="common-show" v-if="showType == '2_3'"> | 
				
			|||
            <view class="two-item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
    <!--三图模式--> | 
				
			|||
    <view class="three-mode" v-if="mode == 3"> | 
				
			|||
        <view class="title" v-if="cubeTitle && show"> | 
				
			|||
            <span>{{cubeTitle}}</span> | 
				
			|||
        </view> | 
				
			|||
        <!--第一种表现形式--> | 
				
			|||
        <view class="first-show" v-if="showType == '3_1'"> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[2].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[2].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[2].image" v-else :data-src="cubeData[2].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <!--第二种表现形式--> | 
				
			|||
        <view class="common-show" v-if="showType == '3_2'"> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <view class="info"> | 
				
			|||
                    <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                        <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                    </navigator> | 
				
			|||
                    <image :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
                </view> | 
				
			|||
                <view class="info"> | 
				
			|||
                    <navigator target="miniProgram" hover-class="none" v-if="cubeData[2].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                        <image mode="widthFix" :src="cubeData[2].image"></image> | 
				
			|||
                    </navigator> | 
				
			|||
                    <image :src="cubeData[2].image" v-else :data-src="cubeData[2].link" @tap="_jumpLink"></image> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <!--第三种表现形式--> | 
				
			|||
        <view class="common-show" v-if="showType == '3_3'"> | 
				
			|||
            <view class="item"> | 
				
			|||
                <view class="info"> | 
				
			|||
                    <navigator target="miniProgram" hover-class="none" v-if="cubeData[1].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                        <image mode="widthFix" :src="cubeData[1].image"></image> | 
				
			|||
                    </navigator> | 
				
			|||
                    <image :src="cubeData[1].image" v-else :data-src="cubeData[1].link" @tap="_jumpLink"></image> | 
				
			|||
                </view> | 
				
			|||
                <view class="info"> | 
				
			|||
                    <navigator target="miniProgram" hover-class="none" v-if="cubeData[2].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                        <image mode="widthFix" :src="cubeData[2].image"></image> | 
				
			|||
                    </navigator> | 
				
			|||
                    <image :src="cubeData[2].image" v-else :data-src="cubeData[2].link" @tap="_jumpLink"></image> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
            <view class="item"> | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="cubeData[0].link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="cubeData[0].image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="cubeData[0].image" v-else :data-src="cubeData[0].link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
 | 
				
			|||
    </view> | 
				
			|||
    <!--四图模式--> | 
				
			|||
    <view class="four-mode" v-if="mode == 4"> | 
				
			|||
        <view class="title" v-if="cubeTitle && show"> | 
				
			|||
            <span>{{cubeTitle}}</span> | 
				
			|||
        </view> | 
				
			|||
        <!--第一种表现形式--> | 
				
			|||
        <view class="first-show" v-if="showType == '4_1'"> | 
				
			|||
            <view class="item" v-for="(item, index) in cubeData" :key="index" > | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="item.link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="item.image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="item.image" v-else :data-src="item.link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <!--第二种表现形式--> | 
				
			|||
        <view class="second-show" v-if="showType == '4_2'"> | 
				
			|||
            <view class="item" v-for="(item, index) in cubeData" :key="index" > | 
				
			|||
                <navigator target="miniProgram" hover-class="none" v-if="item.link == 'uto_miniprogram'" app-id="wx009e0be72cbf5e80" class="item-navigator"> | 
				
			|||
                    <image mode="widthFix" :src="item.image"></image> | 
				
			|||
                </navigator> | 
				
			|||
                <image mode="widthFix" :src="item.image" v-else :data-src="item.link" @tap="_jumpLink"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return { | 
				
			|||
      mode: '', | 
				
			|||
      bottom: '' | 
				
			|||
    }; | 
				
			|||
  }, | 
				
			|||
   | 
				
			|||
  props: { | 
				
			|||
	   | 
				
			|||
	    showType: { | 
				
			|||
	      type: String, | 
				
			|||
	      value: '' | 
				
			|||
	    }, | 
				
			|||
	    cubeData: { | 
				
			|||
	      type: Array, | 
				
			|||
	      value: '' | 
				
			|||
	    }, | 
				
			|||
	    cubeTitle: { | 
				
			|||
	      type: String, | 
				
			|||
	      value: '' | 
				
			|||
	    }, | 
				
			|||
	    show: { | 
				
			|||
	      type: Number, | 
				
			|||
	      value: '' | 
				
			|||
	    }, | 
				
			|||
	    meta: { | 
				
			|||
	      type: Object, | 
				
			|||
	      value: "" | 
				
			|||
	    }  , | 
				
			|||
		isAgent:{ | 
				
			|||
			type:Number, | 
				
			|||
			value:'' | 
				
			|||
		} | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
	mounted() { | 
				
			|||
		  var type = this.showType; | 
				
			|||
		  var mode = ''; | 
				
			|||
		  mode = type.split('_')[0]; | 
				
			|||
		  this.mode=mode; | 
				
			|||
	},	   | 
				
			|||
		 | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      //图片跳链接 | 
				
			|||
      _jumpLink(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
		if(src == '/pages/distribution/distributionCenter/distributionCenter'){ | 
				
			|||
			var token = this.$cookieStorage.get('user_token'); | 
				
			|||
			if(token){ | 
				
			|||
				var is_agent = this.isAgent; | 
				
			|||
				//如果不是分销员 | 
				
			|||
				if(is_agent == 1){  | 
				
			|||
					wx.navigateTo({ | 
				
			|||
						url:'/pages/distribution/distributionCenter/distributionCenter' | 
				
			|||
					}) | 
				
			|||
				} else{ | 
				
			|||
					wx.navigateTo({ | 
				
			|||
						url:'/pages/distribution/applyDistribution/applyDistribution' | 
				
			|||
					}) | 
				
			|||
				} | 
				
			|||
				 | 
				
			|||
			} else{ | 
				
			|||
				var url = 'pages/index/index/index'; | 
				
			|||
				wx.navigateTo({ | 
				
			|||
					url: '/pages/user/register/register?url=' + url | 
				
			|||
				}) | 
				
			|||
			} | 
				
			|||
		} else{ | 
				
			|||
			wx.navigateTo({ | 
				
			|||
			  url: src | 
				
			|||
			}); | 
				
			|||
		} | 
				
			|||
         | 
				
			|||
      } | 
				
			|||
    }, | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-cube"; | 
				
			|||
</style> | 
				
			|||
@ -1,166 +0,0 @@ | 
				
			|||
@import '../../common/css/global'; | 
				
			|||
.g-main { | 
				
			|||
  position: relative; | 
				
			|||
 | 
				
			|||
  .m-lead { | 
				
			|||
    font-size: 13px; | 
				
			|||
    background: #ffffff; | 
				
			|||
    padding:10px 15px; | 
				
			|||
 | 
				
			|||
    .ul-box { | 
				
			|||
 | 
				
			|||
      display: flex; | 
				
			|||
      display: -webkit-flex; | 
				
			|||
      flex-direction: row; | 
				
			|||
      justify-content: center; | 
				
			|||
      height: 100%; | 
				
			|||
      .li-box { | 
				
			|||
        position: relative; | 
				
			|||
        flex: 1; | 
				
			|||
        width: 1px; | 
				
			|||
        height: 100%; | 
				
			|||
        span { | 
				
			|||
          display: inline-block; | 
				
			|||
          font-size: 22px; | 
				
			|||
          //padding-left: 6px; | 
				
			|||
          //border-left: 4px solid #E7031C; | 
				
			|||
          font-weight: 700; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .hover { | 
				
			|||
          border-bottom: 2px solid #333; | 
				
			|||
          box-sizing: border-box; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        span.active { | 
				
			|||
          font-size: 17px; | 
				
			|||
          font-weight: bold; | 
				
			|||
          -webkit-box-sizing: border-box; | 
				
			|||
          -moz-box-sizing: border-box; | 
				
			|||
          box-sizing: border-box; | 
				
			|||
          border-bottom: 2px solid #000000; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
  .grouping-tap-box { | 
				
			|||
    height: 45px; | 
				
			|||
    line-height: 45px; | 
				
			|||
    display: flex; | 
				
			|||
    align-items: center; | 
				
			|||
    background: #FFFFFF; | 
				
			|||
    margin-bottom: 10px; | 
				
			|||
    color: #999999; | 
				
			|||
    .tap-item { | 
				
			|||
      flex: 1; | 
				
			|||
      text-align: center; | 
				
			|||
 | 
				
			|||
 | 
				
			|||
      &.active { | 
				
			|||
        span { | 
				
			|||
          position: relative; | 
				
			|||
          color: @globalColor; | 
				
			|||
          &:after { | 
				
			|||
            content: ''; | 
				
			|||
            position: absolute; | 
				
			|||
            bottom: -12px; | 
				
			|||
            left: -10px; | 
				
			|||
            right: -10px; | 
				
			|||
            height: 2px; | 
				
			|||
            background: @globalColor; | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
  .m-content { | 
				
			|||
    padding: 10px 15px; | 
				
			|||
    padding-top: 0; | 
				
			|||
 | 
				
			|||
    &.g-bg { | 
				
			|||
      background: #F3F3F3; | 
				
			|||
    } | 
				
			|||
    .m-main { | 
				
			|||
      display: flex; | 
				
			|||
      justify-content: space-between; | 
				
			|||
      flex-wrap: wrap; | 
				
			|||
      align-content: space-between; | 
				
			|||
 | 
				
			|||
      image { | 
				
			|||
        width: 100%; | 
				
			|||
        box-sizing: border-box; | 
				
			|||
        display: block; | 
				
			|||
      } | 
				
			|||
      .img-box { | 
				
			|||
        position: relative; | 
				
			|||
        width: 100%; | 
				
			|||
        height: 100%; | 
				
			|||
        margin-bottom: 10px; | 
				
			|||
        .description { | 
				
			|||
          position: absolute; | 
				
			|||
          width: 100%; | 
				
			|||
          left: 0; | 
				
			|||
          bottom: 0; | 
				
			|||
          height: 30px; | 
				
			|||
          line-height: 30px; | 
				
			|||
          text-indent: 5px; | 
				
			|||
          color: #fff; | 
				
			|||
          background: rgba(0, 0, 0, .5); | 
				
			|||
          overflow: hidden; | 
				
			|||
          text-overflow: ellipsis; | 
				
			|||
          display: -webkit-box; | 
				
			|||
          -webkit-box-orient: vertical; | 
				
			|||
          white-space: nowrap; | 
				
			|||
          font-size: 14px; | 
				
			|||
        } | 
				
			|||
        &:last-child { | 
				
			|||
          margin-bottom: 0; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
      .goods_box { | 
				
			|||
        width: 49%; | 
				
			|||
        background: #ffffff; | 
				
			|||
        margin-bottom: 5px; | 
				
			|||
        box-shadow:0px 1px 4px 0px rgba(210,210,210,0.5); | 
				
			|||
        overflow: hidden; | 
				
			|||
        .goods_image { | 
				
			|||
          position: relative; | 
				
			|||
          padding-top: 100%; | 
				
			|||
          width: 100%; | 
				
			|||
 | 
				
			|||
          image { | 
				
			|||
            position: absolute; | 
				
			|||
            left: 0; | 
				
			|||
            top: 0; | 
				
			|||
            height: 100%; | 
				
			|||
            width: 100%; | 
				
			|||
            object-fit: cover; | 
				
			|||
            object-position: center center; | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .title { | 
				
			|||
          font-size: 13px; | 
				
			|||
          color: #4a4a4a; | 
				
			|||
          padding:0 10px; | 
				
			|||
          height: 36px; | 
				
			|||
          line-height: 18px; | 
				
			|||
          margin-top: 5px; | 
				
			|||
          display: -webkit-box; | 
				
			|||
          -webkit-box-orient: vertical; | 
				
			|||
          -webkit-line-clamp:2; | 
				
			|||
          overflow: hidden; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .price { | 
				
			|||
          color: #ea4448; | 
				
			|||
          font-size: 14px; | 
				
			|||
          padding: 6px 10px; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
} | 
				
			|||
@ -1,94 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="g-main" :style="{marginBottom: meta.margin_bottom + 'px',background: meta.background_color}"> | 
				
			|||
    <view class="m-lead" style="margin-bottom: 5px" v-if="groupingData.length == 1"> | 
				
			|||
        <view class="ul-box"> | 
				
			|||
            <view class="li-box" @tap="_changeItem" :data-index="index" v-for="(item, index) in groupingData" :key="index" > | 
				
			|||
                <span>{{item.name}}</span> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
    <view class="grouping-tap-box" v-else> | 
				
			|||
        <view class="tap-item" :class="tapIndex == index ? 'active' : ''" @tap="_changeItem" :data-index="index" v-for="(item, index) in groupingData"  :key="index"> | 
				
			|||
            <span>{{item.name}}</span> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
    <view class="m-content" :class="groupingData.length != 1 ? 'g-bg' : ''"> | 
				
			|||
        <view class="m-main" v-if="goods_arr.type && goods_arr.type == 'micro_page_componet_goods_group'"> | 
				
			|||
            <view class="goods_box" :data-id="item.associate.id" @tap="_jumpToDetail" v-for="(item, index) in goods_arr.children" :key="index" > | 
				
			|||
                <view class="goods_image"> | 
				
			|||
                    <image :src="item.associate.img"></image> | 
				
			|||
                </view> | 
				
			|||
                <view class="title">{{item.associate.name}}</view> | 
				
			|||
                <view class="price">¥ {{item.associate.sell_price}}</view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
 | 
				
			|||
        <view class="m-main" v-else> | 
				
			|||
            <view class="img-box" :data-src="item.link" v-for="(item, index) in goods_arr.children" :key="index"  @tap="_jumpImg"> | 
				
			|||
                <image mode="widthFix" :src="item.image"></image> | 
				
			|||
                <view class="description" v-if="item.name">{{item.name}}</view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return { | 
				
			|||
      currentDesc: 'news', | 
				
			|||
      goods_arr: [], | 
				
			|||
      tapIndex: 0 | 
				
			|||
    }; | 
				
			|||
  }, | 
				
			|||
  props: { | 
				
			|||
	   groupingData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
	mounted() { | 
				
			|||
		this.goods_arr=this.groupingData[0] | 
				
			|||
	}, | 
				
			|||
 | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
		 | 
				
			|||
      _changeItem(e) { | 
				
			|||
        var index = e.currentTarget.dataset.index; | 
				
			|||
        if (index == this.tapIndex) return; | 
				
			|||
		this.goods_arr=this.groupingData[index]; | 
				
			|||
		this.tapIndex=index; | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpToDetail(e) { | 
				
			|||
        var id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      } | 
				
			|||
   | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
 | 
				
			|||
	 | 
				
			|||
}; | 
				
			|||
 | 
				
			|||
</script> | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-grouping"; | 
				
			|||
</style> | 
				
			|||
@ -1,216 +0,0 @@ | 
				
			|||
//拼团 | 
				
			|||
@import '../../common/css/global'; | 
				
			|||
.groupon-item-box { | 
				
			|||
  padding: 10px 15px; | 
				
			|||
  background: #ffffff; | 
				
			|||
  .title{ | 
				
			|||
    padding: 10px 0px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 22px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 700; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .item { | 
				
			|||
    display: flex; | 
				
			|||
    /*align-items: center;*/ | 
				
			|||
    padding: 10px 0; | 
				
			|||
    margin-bottom: 5px; | 
				
			|||
    background: #ffffff; | 
				
			|||
    overflow: hidden; | 
				
			|||
    .left { | 
				
			|||
      position: relative; | 
				
			|||
      width: 120px; | 
				
			|||
      .num { | 
				
			|||
        font-size: 12px; | 
				
			|||
        position: absolute; | 
				
			|||
        width: 100%; | 
				
			|||
        bottom: 0; | 
				
			|||
        background: @mainColor; | 
				
			|||
        opacity: .8; | 
				
			|||
        text-align: center; | 
				
			|||
        color: @countColor; | 
				
			|||
      } | 
				
			|||
      image { | 
				
			|||
        display: block; | 
				
			|||
        width: 100%; | 
				
			|||
      } | 
				
			|||
      .img-box { | 
				
			|||
        display: flex; | 
				
			|||
        align-items: center; | 
				
			|||
        margin-top: 10px; | 
				
			|||
        box-sizing: border-box; | 
				
			|||
        justify-content: space-between; | 
				
			|||
        image { | 
				
			|||
          width: 47%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .right { | 
				
			|||
      display: flex; | 
				
			|||
      flex-direction: column; | 
				
			|||
      justify-content: space-between; | 
				
			|||
      font-size: 14px; | 
				
			|||
      margin-left: 12px; | 
				
			|||
      flex: 1; | 
				
			|||
 | 
				
			|||
      .price-box { | 
				
			|||
        .old-price { | 
				
			|||
          font-size: 12px; | 
				
			|||
          color: #9B9B9B; | 
				
			|||
          text-decoration: line-through; | 
				
			|||
        } | 
				
			|||
        .marketing-time-box{ | 
				
			|||
          width: 100%; | 
				
			|||
          height: 100%; | 
				
			|||
          font-size: 14px; | 
				
			|||
 | 
				
			|||
          //兼容首页样式 | 
				
			|||
          &.index{ | 
				
			|||
            font-size: 12px; | 
				
			|||
          } | 
				
			|||
          /*.seckill-item{ | 
				
			|||
            text-align: right; | 
				
			|||
            .no-starts{ | 
				
			|||
              display: none; | 
				
			|||
            } | 
				
			|||
            .text{ | 
				
			|||
              display: inline-block; | 
				
			|||
              margin: 2px 5px; | 
				
			|||
            } | 
				
			|||
            .tiem{ | 
				
			|||
              display: inline-block; | 
				
			|||
            } | 
				
			|||
            .num-item{ | 
				
			|||
              display: inline-block; | 
				
			|||
              background: #FFFFFF; | 
				
			|||
              color: #fe4545; | 
				
			|||
             text-align: center; | 
				
			|||
              width: 26px; | 
				
			|||
              border-radius: 3px; | 
				
			|||
            } | 
				
			|||
            .zero{ | 
				
			|||
              display: inline-block; | 
				
			|||
            } | 
				
			|||
 | 
				
			|||
            .time-out{ | 
				
			|||
              display: flex; | 
				
			|||
              align-items: center; | 
				
			|||
              justify-content: space-between; | 
				
			|||
              flex: 1; | 
				
			|||
 | 
				
			|||
              .tiem{ | 
				
			|||
                color: #ffffff; | 
				
			|||
                span{ | 
				
			|||
                  color: @countColor; | 
				
			|||
                } | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
            i{ | 
				
			|||
              display: none; | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
          .seckill { | 
				
			|||
            &.seckill-item{ | 
				
			|||
              .tiem{ | 
				
			|||
                color: @countColor; | 
				
			|||
                span{ | 
				
			|||
                  background: @mainColor; | 
				
			|||
                  color: @countColor; | 
				
			|||
                } | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
            .text{ | 
				
			|||
              color: @countColor; | 
				
			|||
            } | 
				
			|||
          }*/ | 
				
			|||
 | 
				
			|||
 | 
				
			|||
          .seckill-item { | 
				
			|||
            text-align: right; | 
				
			|||
            color: @countColor; | 
				
			|||
            .time-out { | 
				
			|||
              display: flex; | 
				
			|||
              align-items: center; | 
				
			|||
              justify-content: space-between; | 
				
			|||
              .num-item { | 
				
			|||
                display: inline-block; | 
				
			|||
                text-align: center; | 
				
			|||
                width: 26px; | 
				
			|||
                border-radius: 3px; | 
				
			|||
                background:#FB5054; | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .seckill-time-box { | 
				
			|||
          .seckill-item { | 
				
			|||
            text-align: left; | 
				
			|||
            .time-out { | 
				
			|||
              color: #000 !important; | 
				
			|||
              display: block; | 
				
			|||
            } | 
				
			|||
            .tiem{ | 
				
			|||
              color: #000; | 
				
			|||
              margin: 5px 0; | 
				
			|||
            } | 
				
			|||
            i{ | 
				
			|||
              display: none; | 
				
			|||
            } | 
				
			|||
            .my-class{ | 
				
			|||
              margin: 5px 0; | 
				
			|||
              color: #EA4448; | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
        .meal-price { | 
				
			|||
          display: flex; | 
				
			|||
          align-items: flex-end; | 
				
			|||
          .price { | 
				
			|||
            flex: 1; | 
				
			|||
            color: #FF2741; | 
				
			|||
            span { | 
				
			|||
              color: #4A4A4A; | 
				
			|||
 | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
          .btn { | 
				
			|||
            color: #ffffff; | 
				
			|||
            background: @mainColor; | 
				
			|||
            padding: 5px 10px; | 
				
			|||
            border-radius: 4px; | 
				
			|||
            ._span { | 
				
			|||
              display: flex; | 
				
			|||
              align-items: center; | 
				
			|||
            } | 
				
			|||
            i { | 
				
			|||
              font-size: 12px; | 
				
			|||
            } | 
				
			|||
            &.no-start { | 
				
			|||
              background: #26a96d; | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
} | 
				
			|||
@ -1,98 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="groupon-item-box" :style="{marginBottom: meta.margin_bottom + 'px',background: meta.background_color}"> | 
				
			|||
    <view class="title" data-src="/pages/store/groups/groups" @tap="_jumpImg"> | 
				
			|||
        <span>超值拼团</span> | 
				
			|||
        <span>更多 | 
				
			|||
             <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view v-for="(item, index) in indexData" :key="index" > | 
				
			|||
        <view class="item" :data-id="item.associate.goods.id" @tap="_jumpToDetail"> | 
				
			|||
            <view class="left"> | 
				
			|||
                <image mode="widthFix" :src="item.associate.goods.img" alt></image> | 
				
			|||
                <view :style="'background: ' + config.mainColor + '; color: ' + config.countColor" class="num"> | 
				
			|||
                    {{item.associate.number}}人团 | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
            <view class="right"> | 
				
			|||
                <view class="name"> | 
				
			|||
                    {{item.associate.goods.name}} | 
				
			|||
                </view> | 
				
			|||
                <view class="price-box"> | 
				
			|||
                    <view> | 
				
			|||
                        <seckill :end="item.associate.ends_at" :starts="item.associate.starts_at" :server="server" typename="拼团"></seckill> | 
				
			|||
                    </view> | 
				
			|||
                    <view class="meal-price"> | 
				
			|||
                        <view class="price"> | 
				
			|||
                            ¥{{item.associate.price}} <span class="old-price">¥{{item.associate.goods.sell_price}}</span> | 
				
			|||
                        </view> | 
				
			|||
                        <view class="btn" :style="'background: ' + config.mainColor"> | 
				
			|||
                            <span>去拼团 <i class="iconfont icon-Chevron"></i></span> | 
				
			|||
                        </view> | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
import seckill from "../seckill/seckill"; | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
 options: { | 
				
			|||
      addGlobalClass: true | 
				
			|||
    }, | 
				
			|||
 | 
				
			|||
  components: { | 
				
			|||
    seckill | 
				
			|||
  }, | 
				
			|||
   | 
				
			|||
  props: { | 
				
			|||
	   | 
				
			|||
	indexData: { | 
				
			|||
	    type: Array, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  config: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  server: { | 
				
			|||
	    type: String, | 
				
			|||
	    value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
	    type: Object, | 
				
			|||
	    value: "" | 
				
			|||
	  } | 
				
			|||
	   | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpToDetail(e) { | 
				
			|||
        var id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      } | 
				
			|||
	}  | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-groupon"; | 
				
			|||
</style> | 
				
			|||
@ -1,133 +0,0 @@ | 
				
			|||
@import '../../common/css/global'; | 
				
			|||
//秒杀 | 
				
			|||
.seckill-box{ | 
				
			|||
  background: #FFFFFF; | 
				
			|||
  padding:10px 15px; | 
				
			|||
  .title{ | 
				
			|||
    padding: 20px 0px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 22px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        &.iconfont{ | 
				
			|||
          font-size: 15px; | 
				
			|||
          font-weight: 600; | 
				
			|||
          margin-left: 5px; | 
				
			|||
 | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .seckill-info{ | 
				
			|||
    display: flex; | 
				
			|||
    align-items: center; | 
				
			|||
    margin-top: 10px; | 
				
			|||
    .left{ | 
				
			|||
      width: 100px; | 
				
			|||
      height: 100px; | 
				
			|||
      image{ | 
				
			|||
        width: 100%; | 
				
			|||
        height: 100%; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .right{ | 
				
			|||
      flex: 1; | 
				
			|||
      margin-left: 10px; | 
				
			|||
      overflow: hidden; | 
				
			|||
      .goods-name{ | 
				
			|||
        overflow: hidden; | 
				
			|||
        text-overflow: ellipsis; | 
				
			|||
        white-space: nowrap; | 
				
			|||
        font-size: 16px; | 
				
			|||
      } | 
				
			|||
      .price-box { | 
				
			|||
        color: #e50303; | 
				
			|||
        font-size: 18px; | 
				
			|||
        .old{ | 
				
			|||
          font-size: 12px; | 
				
			|||
          color: #9c9c9c; | 
				
			|||
          text-decoration: line-through; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        &.free-money{ | 
				
			|||
          font-size: 14px; | 
				
			|||
          color: #9C9C9C; | 
				
			|||
          display: flex; | 
				
			|||
          align-items: center; | 
				
			|||
          justify-content: space-between; | 
				
			|||
 | 
				
			|||
          .money{ | 
				
			|||
            display: flex; | 
				
			|||
            align-items: center; | 
				
			|||
            .new { | 
				
			|||
              font-size: 18px; | 
				
			|||
              color: @globalColor; | 
				
			|||
            } | 
				
			|||
            .old{ | 
				
			|||
              font-size: 10px; | 
				
			|||
              margin-left: 5px; | 
				
			|||
              text-decoration: line-through; | 
				
			|||
 | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
      .seckill-time{ | 
				
			|||
        display: flex; | 
				
			|||
        align-items: flex-end; | 
				
			|||
        justify-content: space-between; | 
				
			|||
        .marketing-time-box { | 
				
			|||
          .seckill-item { | 
				
			|||
            text-align: left !important; | 
				
			|||
            color: #000 !important; | 
				
			|||
            .time-out { | 
				
			|||
              flex-direction: column; | 
				
			|||
              color: #000 !important; | 
				
			|||
              align-items: flex-start !important; | 
				
			|||
              .tiem { | 
				
			|||
                margin: 5px 0; | 
				
			|||
                .num-item { | 
				
			|||
                  color: #ffffff !important; | 
				
			|||
                } | 
				
			|||
              } | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
 | 
				
			|||
        } | 
				
			|||
        .free{ | 
				
			|||
          white-space: nowrap; | 
				
			|||
          overflow: hidden; | 
				
			|||
          text-overflow: ellipsis; | 
				
			|||
          flex: 1; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .buy{ | 
				
			|||
          width: 70px; | 
				
			|||
          height: 25px; | 
				
			|||
          border-radius: 50px; | 
				
			|||
          color: #fff; | 
				
			|||
          background: @mainColor; | 
				
			|||
          font-size: 12px; | 
				
			|||
          line-height: 25px; | 
				
			|||
          text-align: center; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,160 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="seckill-box" :style="{marginBottom: meta.margin_bottom + 'px',background: meta.background_color}" v-if="indexData && indexData.length"> | 
				
			|||
    <view class="title" data-src="/pages/store/seckill/seckill" @tap="_jumpImg"> | 
				
			|||
        <span>限时秒杀</span> | 
				
			|||
        <span> | 
				
			|||
            更多 | 
				
			|||
         <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view v-for="(item, index) in indexData" :key="index" > | 
				
			|||
        <view class="seckill-info" :data-id="item.associate.goods.id" @tap="_jumpToDetail"> | 
				
			|||
            <view class="left"> | 
				
			|||
                <image :src="item.image"></image> | 
				
			|||
            </view> | 
				
			|||
            <view class="right"> | 
				
			|||
                <view class="goods-name"> | 
				
			|||
                    {{item.associate.goods.name}} | 
				
			|||
                </view> | 
				
			|||
                <view class="price-box"> | 
				
			|||
                    <text>¥{{item.associate.seckill_price}}</text> | 
				
			|||
                    <text class="old">¥{{item.associate.goods.sell_price}}</text> | 
				
			|||
                </view> | 
				
			|||
                <view class="seckill-time"> | 
				
			|||
                    <view> | 
				
			|||
                        <seckill :end="item.associate.ends_at" :starts="item.associate.starts_at" :server="server" mold="index" @starts="isStarts" @end="isEnd" :data-index="index" :data-idx="bigIndex"></seckill> | 
				
			|||
                    </view> | 
				
			|||
                    <view :style="'background: ' + config.mainColor" class="buy"> | 
				
			|||
                        去抢购 | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
import seckill from "../seckill/seckill"; | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
  components: { | 
				
			|||
    seckill | 
				
			|||
  }, | 
				
			|||
    options: { | 
				
			|||
        addGlobalClass: true | 
				
			|||
    }, | 
				
			|||
  props: { | 
				
			|||
      indexData: { | 
				
			|||
          type: Array, | 
				
			|||
          value: '' | 
				
			|||
      }, | 
				
			|||
      config: { | 
				
			|||
          type: null, | 
				
			|||
          value: '' | 
				
			|||
      }, | 
				
			|||
      server: { | 
				
			|||
          type: String, | 
				
			|||
          value: '' | 
				
			|||
      }, | 
				
			|||
      bigIndex: { | 
				
			|||
          type: Number, | 
				
			|||
          value: '' | 
				
			|||
      }, | 
				
			|||
      meta: { | 
				
			|||
          type: Object, | 
				
			|||
          value: "" | 
				
			|||
      } | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      // | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpToDetail(e) { | 
				
			|||
        var id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      // 秒杀结束 | 
				
			|||
      isEnd(e) { | 
				
			|||
        var index = e.index; | 
				
			|||
        var idx = e.idx; | 
				
			|||
        var myEventDetail = { | 
				
			|||
          index: index, | 
				
			|||
          idx: idx | 
				
			|||
        }; | 
				
			|||
 | 
				
			|||
  //         this.setData({ | 
				
			|||
  //              [`indexData[${index}].associate.seckill`]: null | 
				
			|||
  //          }) | 
				
			|||
    | 
				
			|||
		this.indexData[index]={associate:{seckill:null}}; | 
				
			|||
		    | 
				
			|||
        this.$emit('endevent', myEventDetail); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      // 秒杀开始 | 
				
			|||
      isStarts(e) { | 
				
			|||
        var index = e.index; | 
				
			|||
        var idx = e.idx; | 
				
			|||
        var myEventDetail = { | 
				
			|||
          index: index, | 
				
			|||
          idx: idx | 
				
			|||
        }; | 
				
			|||
	 | 
				
			|||
	  | 
				
			|||
	 | 
				
			|||
	   if(this.indexData[index]==undefined|| | 
				
			|||
	    this.indexData[index].associate==undefined ||  | 
				
			|||
	    this.indexData[index].associate.init_status==undefined || | 
				
			|||
		this.indexData[index].associate.init_status != 1){ | 
				
			|||
		   // this.setData({ | 
				
			|||
		   //     [`indexData[${index}].associate.seckill.init_status`]:1    | 
				
			|||
		   // }) | 
				
			|||
			this.indexData[index]={associate:{init_status:1}}; | 
				
			|||
			 | 
				
			|||
	    } | 
				
			|||
		    | 
				
			|||
        this.$emit('startevent', myEventDetail); | 
				
			|||
      }, | 
				
			|||
        setData: function (obj) { | 
				
			|||
            let that = this; | 
				
			|||
            let keys = []; | 
				
			|||
            let val, data; | 
				
			|||
            Object.keys(obj).forEach(function (key) { | 
				
			|||
                keys = key.split('.'); | 
				
			|||
                val = obj[key]; | 
				
			|||
                data = that.$data; | 
				
			|||
                keys.forEach(function (key2, index) { | 
				
			|||
                    if (index + 1 == keys.length) { | 
				
			|||
                        that.$set(data, key2, val); | 
				
			|||
                    } else { | 
				
			|||
                        if (!data[key2]) { | 
				
			|||
                            that.$set(data, key2, {}); | 
				
			|||
                        } | 
				
			|||
                    } | 
				
			|||
 | 
				
			|||
                    data = data[key2]; | 
				
			|||
                }); | 
				
			|||
            }); | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
    }, | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-seckill"; | 
				
			|||
</style> | 
				
			|||
@ -1,260 +0,0 @@ | 
				
			|||
.module-box { | 
				
			|||
  background: #ffffff; | 
				
			|||
  padding: 10px 20px; | 
				
			|||
  .meal-price { | 
				
			|||
    border: 2px solid #979797; | 
				
			|||
    height: 50px; | 
				
			|||
    line-height: 48px; | 
				
			|||
    text-align: center; | 
				
			|||
    font-size: 16px; | 
				
			|||
    text:first-child { | 
				
			|||
      color: #e50303 | 
				
			|||
    } | 
				
			|||
    text:last-child { | 
				
			|||
      text-decoration: line-through; | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .module-title { | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 22px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 600; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .space-btween { | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    align-items: center; | 
				
			|||
  } | 
				
			|||
  .module-content { | 
				
			|||
    padding: 10px 0; | 
				
			|||
    position: relative; | 
				
			|||
    //套餐 | 
				
			|||
    .meal_list { | 
				
			|||
      overflow: auto; | 
				
			|||
      white-space: nowrap; | 
				
			|||
      width: 100%; | 
				
			|||
      table, image { | 
				
			|||
        width: 100% !important; | 
				
			|||
        height: auto; | 
				
			|||
      } | 
				
			|||
      .store_list { | 
				
			|||
        //top:0; | 
				
			|||
        width: 26.4%; | 
				
			|||
        position: relative; | 
				
			|||
        display: inline-block; | 
				
			|||
        margin-right: 10%; | 
				
			|||
        view { | 
				
			|||
          box-sizing: border-box; | 
				
			|||
        } | 
				
			|||
        image { | 
				
			|||
          width: 100%; | 
				
			|||
          height: 100px; | 
				
			|||
        } | 
				
			|||
        .description { | 
				
			|||
          width: 100%; | 
				
			|||
          margin-top: 5px; | 
				
			|||
          font-size: 14px; | 
				
			|||
          //height: 48px; | 
				
			|||
          overflow: hidden; | 
				
			|||
          word-break: break-all; | 
				
			|||
          //word-spacing: ; | 
				
			|||
          -webkit-line-clamp: 2; | 
				
			|||
          text-overflow: ellipsis; | 
				
			|||
          //display: -webkit-box; | 
				
			|||
          //-webkit-box-orient: vertical; | 
				
			|||
          //white-space: normal; | 
				
			|||
 | 
				
			|||
        } | 
				
			|||
        .price { | 
				
			|||
          font-size: 14px; | 
				
			|||
          height: auto; | 
				
			|||
          /*overflow: visible;*/ | 
				
			|||
          white-space: normal; | 
				
			|||
          overflow: hidden; | 
				
			|||
          text-overflow: ellipsis; | 
				
			|||
        } | 
				
			|||
        &:last-child { | 
				
			|||
          margin-right: 0; | 
				
			|||
          &:after { | 
				
			|||
            display: none; | 
				
			|||
            /*content: ;  */ | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
        &:after { | 
				
			|||
          content: ""; | 
				
			|||
          display: block; | 
				
			|||
          position: absolute; | 
				
			|||
          right: -28%; | 
				
			|||
          top: 20%; | 
				
			|||
          width: 18%; | 
				
			|||
 | 
				
			|||
          height: 10%; | 
				
			|||
          background: url('https://ibrand-miniprogram.oss-cn-hangzhou.aliyuncs.com/%E5%B0%8F%E7%A8%8B%E5%BA%8F/uploading.png'); | 
				
			|||
          background-size: 100% 100%; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    .add { | 
				
			|||
      position: relative; | 
				
			|||
      transform: translateY(120%); | 
				
			|||
      width: 18px; | 
				
			|||
      height: 18px; | 
				
			|||
      margin-bottom: auto; | 
				
			|||
 | 
				
			|||
      &:last-child { | 
				
			|||
        display: none; | 
				
			|||
      } | 
				
			|||
      .t { | 
				
			|||
 | 
				
			|||
        position: absolute; | 
				
			|||
        top: 8px; | 
				
			|||
        left: 0; | 
				
			|||
        width: 100%; | 
				
			|||
        height: 2px; | 
				
			|||
        background: #b2b2b2; | 
				
			|||
        border-radius: 19px | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .l { | 
				
			|||
 | 
				
			|||
        position: absolute; | 
				
			|||
        left: 8px; | 
				
			|||
        top: 0; | 
				
			|||
        height: 100%; | 
				
			|||
        width: 2px; | 
				
			|||
        background: #b2b2b2; | 
				
			|||
        border-radius: 19px | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
    .meal { | 
				
			|||
      position: relative; | 
				
			|||
      width: 25%; | 
				
			|||
 | 
				
			|||
      .goods_image { | 
				
			|||
        position: relative; | 
				
			|||
        width: 100%; | 
				
			|||
        padding-top: 100%; | 
				
			|||
        image { | 
				
			|||
          position: absolute; | 
				
			|||
          left: 0; | 
				
			|||
          top: 0; | 
				
			|||
          width: 100%; | 
				
			|||
          height: 100%; | 
				
			|||
          object-fit: cover; | 
				
			|||
          object-position: center; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .goods_title { | 
				
			|||
        margin-top: 10px; | 
				
			|||
        overflow: hidden; | 
				
			|||
        text-overflow: ellipsis; | 
				
			|||
        display: -webkit-box; | 
				
			|||
        -webkit-line-clamp: 3; | 
				
			|||
        -webkit-box-orient: vertical; | 
				
			|||
        color: #000; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    .content { | 
				
			|||
      margin-left: 120px; | 
				
			|||
      height: 100%; | 
				
			|||
      .content_title { | 
				
			|||
        padding-right: 30px; | 
				
			|||
        overflow: hidden; | 
				
			|||
        text-overflow: ellipsis; | 
				
			|||
        white-space: nowrap; | 
				
			|||
        font-size: 16px; | 
				
			|||
        line-height: 18px; | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .content_info { | 
				
			|||
        display: flex; | 
				
			|||
        justify-content: space-between; | 
				
			|||
        align-items: baseline; | 
				
			|||
        vertical-align: bottom; | 
				
			|||
 | 
				
			|||
        .price { | 
				
			|||
          color: #e50303; | 
				
			|||
          font-size: 18px; | 
				
			|||
        } | 
				
			|||
        .delPrice { | 
				
			|||
          margin-right: auto; | 
				
			|||
          font-size: 12px; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .onlyPrice { | 
				
			|||
          color: #9c9c9c; | 
				
			|||
          font-size: 14px; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
 | 
				
			|||
      .countDown { | 
				
			|||
        margin-top: 7px; | 
				
			|||
        .text { | 
				
			|||
          font-size: 12px; | 
				
			|||
          color: #4a4a4a; | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        .release { | 
				
			|||
          display: flex; | 
				
			|||
          flex-direction: row; | 
				
			|||
          justify-content: space-between; | 
				
			|||
          align-items: center; | 
				
			|||
          .time { | 
				
			|||
            display: flex; | 
				
			|||
            align-items: center; | 
				
			|||
            text { | 
				
			|||
              line-height: 19px; | 
				
			|||
              margin: 0 3px; | 
				
			|||
            } | 
				
			|||
            .dot { | 
				
			|||
              display: inline-block; | 
				
			|||
              width: 19px; | 
				
			|||
              height: 19px; | 
				
			|||
              background: #6d6d6d; | 
				
			|||
              font-size: 12px; | 
				
			|||
              line-height: 19px; | 
				
			|||
              text-align: center; | 
				
			|||
            } | 
				
			|||
          } | 
				
			|||
 | 
				
			|||
          .btnBuy { | 
				
			|||
            display: inline-block; | 
				
			|||
            width: 70px; | 
				
			|||
            height: 25px; | 
				
			|||
            border-radius: 50px; | 
				
			|||
            color: #ffffff; | 
				
			|||
            background: #ea4448; | 
				
			|||
            font-size: 12px; | 
				
			|||
            line-height: 25px; | 
				
			|||
            text-align: center; | 
				
			|||
          } | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
} | 
				
			|||
@ -1,77 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="module-box" :style="'margin-bottom: ' + meta.margin_bottom + 'px'" v-if="suitData && suitData.length"> | 
				
			|||
    <view class="module-title" data-src="/pages/store/mealList/mealList" @tap="_jumpImg"> | 
				
			|||
        <span>推荐套餐</span> | 
				
			|||
        <span> | 
				
			|||
            更多 | 
				
			|||
            <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view v-for="(items, idx) in suitData" :key="idx"> | 
				
			|||
        <view class="module-content"> | 
				
			|||
            <view class="meal_list"> | 
				
			|||
                <view class="store_list" v-for="(item, index) in items.associate.items" :key="index" > | 
				
			|||
					 | 
				
			|||
                    <view @tap="jumpToDetail" :data-id="item.goods.id"> | 
				
			|||
                        <image class="slide-image" :src="item.goods.img"></image> | 
				
			|||
                        <view class="description">{{item.goods.name}}</view> | 
				
			|||
                    </view> | 
				
			|||
                </view> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
        <view class="meal-price" :data-suitid="items.associate_id" @tap="_jumpMeal"> | 
				
			|||
            搭配套餐价=<text>¥{{items.associate.total}}</text>/<text>¥{{items.associate.origin_total}}</text> | 
				
			|||
        </view> | 
				
			|||
 | 
				
			|||
    </view> | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
   options: { | 
				
			|||
    addGlobalClass: true | 
				
			|||
  }, | 
				
			|||
    | 
				
			|||
	props: { | 
				
			|||
	  suitData: { | 
				
			|||
		type: Array, | 
				
			|||
		value: '' | 
				
			|||
	  }, | 
				
			|||
	  show: { | 
				
			|||
		type: Number, | 
				
			|||
		value: '' | 
				
			|||
	  }, | 
				
			|||
	  meta: { | 
				
			|||
		type: Object, | 
				
			|||
		value: "" | 
				
			|||
	  }, | 
				
			|||
   }, | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      _jumpImg(e) { | 
				
			|||
        var src = e.currentTarget.dataset.src; | 
				
			|||
        if (!src || src == 'uto_miniprogram') return; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: src | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpMeal(e) { | 
				
			|||
		console.log(this.suitData); | 
				
			|||
        var id = e.currentTarget.dataset.suitid; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/meal/meal?id=${id}` | 
				
			|||
        }); | 
				
			|||
      } | 
				
			|||
    }, | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "index-suit"; | 
				
			|||
</style> | 
				
			|||
@ -1,75 +0,0 @@ | 
				
			|||
.waterfalls-flow{ | 
				
			|||
  .title{ | 
				
			|||
    padding: 10px 15px 10px 15px; | 
				
			|||
    display: flex; | 
				
			|||
    justify-content: space-between; | 
				
			|||
    color: #000; | 
				
			|||
    align-items: center; | 
				
			|||
    background-color: #FFFFFF; | 
				
			|||
 | 
				
			|||
    span:nth-child(1) { | 
				
			|||
      font-size: 22px; | 
				
			|||
      font-weight: bold; | 
				
			|||
      display: inline-block; | 
				
			|||
      //padding-left: 6px; | 
				
			|||
      //border-left: 4px solid #E7031C; | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
    span:nth-child(2) { | 
				
			|||
      font-size: 12px; | 
				
			|||
      display: flex; | 
				
			|||
      align-items: center; | 
				
			|||
      text{ | 
				
			|||
        font-size: 15px; | 
				
			|||
        font-weight: 700; | 
				
			|||
        margin-left: 5px; | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
  .help-select-contet { | 
				
			|||
    column-count: 2; //分为2列 | 
				
			|||
    column-gap: 10px;//列之间间隔为10px | 
				
			|||
    width: 100%; | 
				
			|||
    padding:10px 15px; | 
				
			|||
  } | 
				
			|||
  .help-select-card { | 
				
			|||
    background: #fff; | 
				
			|||
    width:100%; | 
				
			|||
    display: inline-block; /*内部卡片需要设置为inline-block,否则会截断显示,如图一*/ | 
				
			|||
    justify-content: center; | 
				
			|||
    flex-direction: column; | 
				
			|||
    align-items: center; | 
				
			|||
    margin-bottom: 10rpx; | 
				
			|||
    image{ | 
				
			|||
      width: 100%; | 
				
			|||
    } | 
				
			|||
    .goods-detail{ | 
				
			|||
      padding: 10px 8px; | 
				
			|||
      .name{ | 
				
			|||
        color:#333333; | 
				
			|||
        font-size: 12px; | 
				
			|||
        height: 38px; | 
				
			|||
        line-height: 18px; | 
				
			|||
        margin-bottom:10px; | 
				
			|||
        display: -webkit-box; | 
				
			|||
        -webkit-box-orient: vertical; | 
				
			|||
        -webkit-line-clamp: 2; | 
				
			|||
        overflow: hidden; | 
				
			|||
      } | 
				
			|||
      .money{ | 
				
			|||
        color:#E7031C; | 
				
			|||
        font-size: 14px; | 
				
			|||
        line-height: 20px; | 
				
			|||
        span{ | 
				
			|||
          color:#999999; | 
				
			|||
          font-size: 12px; | 
				
			|||
          line-height: 17px; | 
				
			|||
          text-decoration: line-through; | 
				
			|||
          display: inline-block; | 
				
			|||
          padding-left: 6px; | 
				
			|||
        } | 
				
			|||
      } | 
				
			|||
    } | 
				
			|||
  } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
@ -1,99 +0,0 @@ | 
				
			|||
<template> | 
				
			|||
<view class="waterfalls-flow" :style="'margin-bottom: ' + meta.margin_bottom + 'px'"> | 
				
			|||
    <view class="title" v-if="show && title" @tap="_jumpList"> | 
				
			|||
        <span>{{title}}</span> | 
				
			|||
        <span>更多 | 
				
			|||
             <text class="iconfont icon-gengduo"></text> | 
				
			|||
        </span> | 
				
			|||
    </view> | 
				
			|||
    <view class="help-select-contet"> | 
				
			|||
        <view class="help-select-card" v-for="(item, index) in waterData" :key="index" > | 
				
			|||
           <view v-if="index > 0" @tap="_jumpDeatil" :data-id="item.id"> | 
				
			|||
               <image mode="widthFix" :src="item.img"></image> | 
				
			|||
               <view class="goods-detail"> | 
				
			|||
                   <view class="name"> | 
				
			|||
                       {{item.name}} | 
				
			|||
                   </view> | 
				
			|||
                   <view class="money"> | 
				
			|||
                       ¥{{item.sell_price}} | 
				
			|||
                       <span>¥{{item.market_price}}</span> | 
				
			|||
                   </view> | 
				
			|||
               </view> | 
				
			|||
           </view> | 
				
			|||
            <view v-else @tap="_jumpLink" :data-link="item.link"> | 
				
			|||
                <image mode="widthFix" class="help-select-iamge" :src="item.image"></image> | 
				
			|||
            </view> | 
				
			|||
        </view> | 
				
			|||
    </view> | 
				
			|||
 | 
				
			|||
</view> | 
				
			|||
</template> | 
				
			|||
<script> | 
				
			|||
 | 
				
			|||
export default { | 
				
			|||
  data() { | 
				
			|||
    return {}; | 
				
			|||
  }, | 
				
			|||
 | 
				
			|||
   options: { | 
				
			|||
    addGlobalClass: true | 
				
			|||
  }, | 
				
			|||
  props: { | 
				
			|||
	   | 
				
			|||
	 waterData: { | 
				
			|||
	   type: Array, | 
				
			|||
	   value: '' | 
				
			|||
	 }, | 
				
			|||
	 title: { | 
				
			|||
	   type: String, | 
				
			|||
	   value: '' | 
				
			|||
	 }, | 
				
			|||
	 show: { | 
				
			|||
	   type: Number, | 
				
			|||
	   value: '' | 
				
			|||
	 }, | 
				
			|||
	 meta: { | 
				
			|||
	   type: Object, | 
				
			|||
	   value: "" | 
				
			|||
	 }  | 
				
			|||
	   | 
				
			|||
	   | 
				
			|||
  }, | 
				
			|||
   | 
				
			|||
    //组件的方法 | 
				
			|||
    methods: { | 
				
			|||
      //内部方法建议以下划线开头 | 
				
			|||
      _jumpLink(e) { | 
				
			|||
        let link = e.currentTarget.dataset.link; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: link, | 
				
			|||
          fail: err => { | 
				
			|||
            wx.switchTab({ | 
				
			|||
              url: link | 
				
			|||
            }); | 
				
			|||
          } | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      //跳到商品详情页 | 
				
			|||
      _jumpDeatil(e) { | 
				
			|||
        let id = e.currentTarget.dataset.id; | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: `/pages/store/detail/detail?id=${id}` | 
				
			|||
        }); | 
				
			|||
      }, | 
				
			|||
 | 
				
			|||
      _jumpList() { | 
				
			|||
        wx.navigateTo({ | 
				
			|||
          url: '/pages/store/list/list' | 
				
			|||
        }); | 
				
			|||
      }  | 
				
			|||
    }, | 
				
			|||
  | 
				
			|||
}; | 
				
			|||
</script> | 
				
			|||
 | 
				
			|||
 | 
				
			|||
<style rel="stylesheet/less" lang="less"> | 
				
			|||
@import "waterfalls-flow"; | 
				
			|||
</style> | 
				
			|||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue