瀏覽代碼

新品橱窗

zhengjinyi 3 年之前
父節點
當前提交
335f923ab6

+ 41 - 35
src/main/resources/static/css/product/product-hot.css

@@ -115,24 +115,27 @@ li{list-style:none}
 * 移动端
 */
 @media screen and (max-width:768px){
+    .product-banner{width: 100%;height: 71vw;position: relative;background: #FFFFFF;}
+    .product-banner .product-banner-top{width: 100%;height: 57.3vw;background: url("/img/hot/icon-hottop-bg@h5.png");background-size: cover;}
+    .product-banner .product-banner-top .title{width: 100%;height: 17.7vw;line-height: 17.7vw;font-size:6.5vw;font-weight: bold;text-align: center;color: #FFFFFF;}
+    .product-banner-bot{width: 100%;height: auto;position: absolute;top: 17.7vw;left: 0;}
+    .product-banner-bot .inner{width: 100%;height: auto;box-sizing: border-box;padding: 0 6.4vw;}
+    #productHotBanner{width:100%;height:48vw;background: url("/img/hot/icon-hotpor-bg@h5.png");position:relative;box-sizing: border-box;padding: 2.4vw;}
+    #productHotBanner .swiper-wrapper{position:relative;height:100%;z-index:0}
+    #productHotBanner .swiper-wrapper .swiper-slide{width:100%;height: 41.4vw;position:relative;zoom:1;vertical-align:middle;overflow:hidden;}
+    #productHotBanner .swiper-wrapper .swiper-slide a{display: block;width: 100%;height: 100%;}
+    #productHotBanner .swiper-wrapper .swiper-slide-image{width: 41.4vw;height: 41.4vw;float: left;}
+    #productHotBanner .swiper-wrapper .swiper-slide-image img{width: 41.4vw;height: 41.4vw;display: block;}
+    #productHotBanner .swiper-wrapper .swiper-slide-info{width: 38.2vw;height: 41.4vw;float: right;box-sizing: border-box;padding: 4vw 2vw;position: relative;}
+    #productHotBanner .swiper-wrapper .swiper-slide-info .swiper-slide-name{width:100%;height: auto;margin-bottom:11vw;}
+    #productHotBanner .swiper-wrapper .swiper-slide-info .swiper-slide-name p{line-height: 6vw;font-size: 4.2vw;color: #4A4F58;text-align: center;}
+    #productHotBanner .swiper-wrapper .swiper-slide-info .swiper-slide-btn {width: 100%;height: 8vw;position: absolute;bottom: 0;left: 0;}
+    #productHotBanner .swiper-wrapper .swiper-slide-info .swiper-slide-btn .slide-btn{width: 26.4vw;height: 8vw;margin: 0 auto;display:block;background: #F94B4B;line-height: 8vw;text-align: center;font-size: 16px;color: #FFFFFF;}
+    #productHotBanner .swiper-pagination{width:100%;height:2.6vw;z-index:1;text-align:center;font-size:0;position:absolute;bottom:1.5vw;left:0}
+    #productHotBanner .swiper-pagination .swiper-pagination-bullet:before{content:"";display:block;width:100%;height:.6vw;background:rgba(255, 180, 150, 0.39);;border-radius:.3vw}
+    #productHotBanner .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{width:3.8vw;opacity:1;background: #E15621;}
     #productList{position: relative;}
-    /*footer{display:none!important;}*/
-    .sortBox{width:100%;margin:1px auto;box-sizing:border-box;background:#FFF;}
-    .sortBox li{width:15vw;height:11.6vw;line-height:11.6vw;text-align:center;font-size:3.4vw;color:#93979F;position:relative;margin:0 5vw}
-    .sortBox li.on,.sortBox li.up,.sortBox li.down{color:#E15616}
-    .sortBox li:before,.sortBox li:after{position:absolute;right:0vw;content:'';width:0;height:0;border-style:solid}
-    .sortBox li:before{border-width:0 .8vw .8vw .8vw;border-color:transparent transparent #BEC2C9 transparent;top:5vw}
-    .sortBox li:after{border-width:.8vw .8vw 0 .8vw;border-color:#BEC2C9 transparent transparent transparent;top:6.5vw}
-    .sortBox li:first-child:before,.sortBox li:first-child:after{display:none}
-    .sortBox li.up:before{border-bottom-color:#E15616}
-    .sortBox li.up:after{border-top-color:#E15616;opacity:.3}
-    .sortBox li.down:after{border-top-color:#E15616}
-    .sortBox li.down:before{border-bottom-color:#E15616;opacity:.3}
-    .sortBox li.screen:before{border-width:0 0 0 0;border-color:transparent transparent transparent transparent;top:5vw;}
-    .sortBox li.screen:after{border-width:0 0 0 0;border-color:transparent transparent transparent transparent;top:5vw}
-    .sortBox li.screen .mIcon{width: 4vw;height: 4vw;display: block;position: absolute;top: 0.8vw;right: -2vw;}
-    .sortBox li.screen .mIcon:before{width: 4vw;height: 4vw;background-position: -70vw -78vw;}
-    .productList{margin: 3.2vw auto;width: 97vw;}
+    .productList{margin: 3.2vw auto;width: 97vw;margin-top: 0;}
     .productList .productItem{width: 45.6vw;height: 70vw;overflow: hidden;margin: 0 1.3vw 2.6vw 1.3vw;background: #fff;text-align: left;position: relative;}
     .productItem .page_main_type{width: 8.8vw;height: 8.8vw;text-align: justify;box-sizing: border-box;padding: 1vw;border-radius: 0 0 2vw 2vw;background-color: #33CCBF;font-size: 2.6vw;color: #FFFFFF;line-height: 3.4vw;position: absolute;top: 0;right: 2vw;}
     .productItem .price em {display: block;height: 7vw;line-height: 7vw;color: #4A4F58;font-style: normal;float: left;}
@@ -171,29 +174,32 @@ li{list-style:none}
     .productItem .price .svip-tag .svip-price span{color: #333}
     .productItem .price .svip-tag .svip-price span:nth-child(2){margin-left: -0.4vw}
     /*筛选项*/
-    .product-brand-fiexd{width: 100%;height: 100%;position: fixed;top: 15vw;left: 0;background: rgba(0,0,0,0.6);z-index: 9999;}
-    .product-brand{width: 100%;position: relative;top: 0;left: 0;background: #FFFFFF;z-index: 9999;padding: 3vw 0;border-radius: 0 0 1.6vw 1.6vw;box-sizing: border-box;}
-    .product-brand .product-brand-name{width: 100%;float: left;line-height: 10.4vw;background: #F7F7F7;height: 10.4vw;padding:0 3vw;box-sizing: border-box;}
-    .product-brand .product-brand-name .title{float: left;}
-    .product-brand .product-brand-name .num{float: right;font-size: 3vw;}
-    .product-brand .product-brand-name .num span{color: #E15621;}
-    .product-brand-more{width: 100%;height: 32px;line-height: 32px;font-size: 3.4vw;float: left;color: #909090;text-align: center;box-sizing: border-box;}
-    .product-brand-more .icon:before{background-position: -51.5vw 0px;width: 5.4vw;height: 6.7vw;right: 37vw;position: absolute;}
-    .product-brand-more.show .icon:before{background-position: -43.5vw 0px;width: 5.4vw;height: 6.7vw;right: 37vw;position: absolute;}
-    .product-brand-list{width: 100%;float: left;box-sizing: border-box;padding:3vw;height:22vw;overflow: scroll;overflow-x: hidden;overflow-y:auto;}
-    .product-brand-list.show{height: 44vw;}
-    .product-brand-list .brand-list{width: 20.5vw;height: 7.2vw;padding: 0 2.4vw;border: 1px solid #E2E7EF;float: left;box-sizing: border-box;line-height: 7.2vw;;font-size: 3vw;color: #4A4F58;border-radius: 1vw;margin-right: 3.2vw;margin-bottom: 2.4vw;}
+    .product-brand-content{width: 100%;height: 18.6vw;box-sizing: border-box;padding: 3.3vw 2.8vw;position: relative;}
+    .product-brand{width: 100%;height: 100%;background: #FFFFFF;z-index: 9999;box-sizing: border-box;padding: 2vw 0;border-radius: 1vw;}
+    .product-brand-name{padding: 0 3vw;text-align: center;line-height: 8vw;font-size: 3.8vw;color: #333;float: left;font-weight: bold;}
+    .product-brand-more{width: 9vw;height: 100%;float: right;text-align: center;box-sizing: border-box;}
+    .product-brand-more .icon:before{background-position: -51.5vw 0px;width: 5.4vw;height: 6.7vw;right: 5vw;position: absolute;}
+    .product-brand-more.show .icon:before{background-position: -43.5vw 0px;width: 5.4vw;height: 6.7vw;right: 5vw;position: absolute;}
+    .product-brand-list{float: left;box-sizing: border-box;height:100%;}
+    .product-brand-list .brand-list{width: 20.5vw;height: 8vw;padding: 0 2.4vw;border: 1px solid #E2E7EF;float: left;box-sizing: border-box;line-height: 8vw;;font-size: 3vw;color: #4A4F58;margin-right: 3.2vw;}
     .product-brand-list .brand-list:nth-child(4n){margin-right: 0;}
     .product-brand-list .brand-list.checked{border-color: #E15621;}
     .product-brand-list .brand-list.checked a{color: #E15621;}
     .product-brand-list .brand-list a{width: 100%;height: 100%;display: block;text-align: center;text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-line-clamp: 1;line-clamp: 1;-webkit-box-orient: vertical;word-break: break-all;}
     .product-brand-list .brand-list a:hover{color: #4A4F58;}
     .product-brand-list .brand-list.checked a:hover{color: #E15621;}
-    .product-screen{width: 100%;height: auto;padding:0 3vw;box-sizing: border-box;}
-    .product-screen .sortBox-new{width: 100%;height: 9vw;line-height: 16px;box-sizing: border-box;padding: 2.5vw 0;cursor: pointer;margin-right: 10px;}
-    .product-screen .coll-checked{width: 16px;height: 16px;background: url("/img/cart/icon_weigouxuan@2x.png") no-repeat;background-size: cover;display: block;float: right;}
-    .product-screen .coll-checked.checked{background: url("/img/cart/icon_yixuanze@2x.png") no-repeat;background-size: cover;}
-    .product-screen-btn{width: 100%;height: 11.2vw;float: left;margin-top: 4vw;}
-    .product-screen-btn .sub-button{width: 64vw;height: 11.2vw;margin: 0 auto;line-height: 11.2vw;background-color: #E15621;text-align: center;font-size: 3.4ve;color: #FFFFFF;}
+    .product-brand-fiexd{width: 100%;height: 60vw;position: absolute;top: 14vw;left: 0;padding: 0 2.8vw;box-sizing: border-box;z-index: 999;}
+    .product-brand-fiexdcontent{width: 100%;height: 100%;background: #FFFFFF;box-shadow: 0 10px 14px 0 rgba(86, 119, 252, 0.2);padding: 3vw 0;box-sizing: border-box;}
+    .product-brand-scroll{width: 100%;height: 40vw;overflow: scroll;overflow-x: hidden;overflow-y:auto;box-sizing: border-box;padding: 0 2.4vw;}
+    .product-brand-scroll .brand-list{width: 20.5vw;height: 8vw;padding: 0 2.4vw;border: 1px solid #E2E7EF;float: left;box-sizing: border-box;line-height: 8vw;;font-size: 3vw;color: #4A4F58;margin-right: 2.4vw;margin-bottom: 2.4vw;}
+    .product-brand-scroll .brand-list:nth-child(4n){margin-right: 0;}
+    .product-brand-scroll .brand-list.checked{border-color: #E15621;}
+    .product-brand-scroll .brand-list.checked a{color: #E15621;}
+    .product-brand-scroll .brand-list a{width: 100%;height: 100%;display: block;text-align: center;text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-line-clamp: 1;line-clamp: 1;-webkit-box-orient: vertical;word-break: break-all;}
+    .product-brand-scroll .brand-list a:hover{color: #4A4F58;}
+    .product-brand-scroll .brand-list.checked a:hover{color: #E15621;}
+    .product-screen-btn{width: 100%;height: 10vw;float: left;margin-top: 4vw;}
+    .product-screen-btn .sub-button{width: 50vw;height: 10vw;margin: 0 auto;line-height: 10vw;background-color: #E15621;text-align: center;font-size: 3.4ve;color: #FFFFFF;}
+
 
 }

+ 3 - 0
src/main/resources/static/css/supplier-center/shop/release.css

@@ -18,6 +18,9 @@ div{box-sizing: border-box;}
 .release-container{width: 100%;height: auto;border-top: 1px solid #e2e7ef;padding:20px 0;opacity: 0;}
 .release-container.active{opacity: 1;}
 .release-main-container{width: 100%;padding: 0 220px;box-sizing: border-box;}
+.release-main-container.new{width: 100%;padding: 0 24px;box-sizing: border-box;}
+.release-main-container.new .release-image{width: 100%;height: auto;}
+.release-main-container.new .release-image img{width: 100%;height: auto;}
 .release-from{width: 100%;height:auto;margin-bottom: 15px;line-height: 32px;font-size: 14px;color: #333;}
 .release-from.text p .em{color: #e15616;}
 .release-from.none{margin-bottom: 0;}

二進制
src/main/resources/static/img/hot/icon-hotpor-bg@h5.png


二進制
src/main/resources/static/img/hot/icon-hottop-bg@h5.png


+ 34 - 39
src/main/resources/static/js/product/product-hot.js

@@ -7,7 +7,7 @@ var productList = new Vue({
         noMore: false,
         topGoodList: [],
         listQuery: {
-            brandID:0,
+            brandID:'',
             pageNum:1,
             pageSize:10
         },
@@ -82,33 +82,31 @@ var productList = new Vue({
                 if(response.code == 0){
                     _self.topGoodList = response.data;
                     // 图片懒加载
-                    if (isPC) {
-                        $('#productHotBanner').slide({
-                            mainCell:".swiper-wrapper"
-                            ,titCell:".swiper-pagination span"
-                            ,effect: "leftLoop"
-                            ,interTime: 5000
-                            ,autoPlay: true
-                            ,autoPage: false
-                            ,trigger: "mouseover"
-                        });
-                    } else {
-                        var swiper = new Swiper('#productHotBanner', {
-                            loop : true,
-                            autoplay: {
-                                delay: 2000,
-                                disableOnInteraction: false
-                            },
-                            navigation: {
-                                nextEl: '.swiper-button-next',
-                                prevEl: '.swiper-button-prev'
-                            },
-                            pagination: {
-                                el: '.swiper-pagination',
-                                clickable :true
-                            }
-                        });
-                    }
+                    setTimeout(function(){
+                        if (isPC) {
+                            $('#productHotBanner').slide({
+                                mainCell:".swiper-wrapper"
+                                ,titCell:".swiper-pagination span"
+                                ,effect: "leftLoop"
+                                ,interTime: 5000
+                                ,autoPlay: true
+                                ,autoPage: false
+                                ,trigger: "mouseover"
+                            });
+                        } else {
+                            var swiper = new Swiper('#productHotBanner', {
+                                loop : true,
+                                autoplay: {
+                                    delay: 2000,
+                                    disableOnInteraction: false
+                                },
+                                pagination: {
+                                    el: '.swiper-pagination',
+                                    clickable :true
+                                }
+                            });
+                        }
+                    },500);
                 }else{
                     console.log('获取新品橱窗数据错误')
                 }
@@ -139,18 +137,15 @@ var productList = new Vue({
         },
         getCommoditySearchQUeryBrand:function() { // 查询筛选项品牌
             var _self = this;
-            ProductApi.getCommoditySearchQUeryBrand(_self.brandParam,function (response) {
+            PublicApi.GetHomeNBrandName({},function (response) {
                 if (response.code === 0 && response.data ) {
                     var data = response.data;
                     _self.defaultBrandLists = data.map((el, index) => {
-                        if(_self.hrefBrandId && _self.hrefBrandId == el.id){
-                            el.isChecked = true;
-                        }else{
-                            el.isChecked = false;
-                        }
+                        el.isChecked = false;
                         return el;
                     })
-                    _self.brandLists = _self.defaultBrandLists.slice(0,7)
+                    // _self.brandLists = _self.defaultBrandLists.slice(0,7);
+                    _self.brandLists = _self.defaultBrandLists;
                 }else {
                     console.log('查询品牌列表异常')
                 }
@@ -196,16 +191,16 @@ var productList = new Vue({
                         _self.checkedBrandList.splice(i, 1);
                     }
                 }
-                _self.params.brandIds = this.checkedBrandList.join(',');
+                _self.listQuery.brandID = this.checkedBrandList.join(',');
             }
             _self.isAllcheckedBrand = false;
             _self.checkedBrandLength = _self.checkedBrandList.length;
-            _self.params.brandIds = this.checkedBrandList.join(',');
+            _self.listQuery.brandID = this.checkedBrandList.join(',');
         },
         choiceBrandAll:function(){
             // 点击选择全部品牌
             this.isAllcheckedBrand = true;
-            this.params.brandIds = '';
+            this.listQuery.brandID = '';
             this.brandLists.forEach(function(el){
                 el.isChecked = false;
             });
@@ -229,7 +224,7 @@ var productList = new Vue({
         handleConfirm:function () {// 确认查询多选
             if(this.checkedBrandList.length == 0){return;}
             window.location.href =  '/product/list.html?keyword=' + encodeURIComponent(this.params.keyword) +
-                '&bpn=' + this.params.brandIds + '&pro=' + this.params.promotionFlag +
+                '&bpn=' + this.listQuery.brandID + '&pro=' + this.params.promotionFlag +
                 '&newg='+ this.params.newFlag;
         },
         handleDeleteBrands:function () {// 删除选择的品牌

+ 6 - 2
src/main/resources/static/js/supplier-center/shop/release.js

@@ -10,7 +10,7 @@ var releaseContainer = new Vue({
         NODE_ENV_BASE_URL:'',
         releaseType:'',
         productId:'',
-        activeNum:0,
+        activeNum:4,
         isSelectActive:0,
         isRequest:true,
         isAddBrand:false,//控制提交品牌弹窗
@@ -57,7 +57,8 @@ var releaseContainer = new Vue({
             commodityType:1,
             trainingMethod:0,// 线上培训方式
             trainingType:0,// 售价包含培训费用
-            trainingFee:''
+            trainingFee:'',
+            newvalidFlag:0,// 新品商品状态  0.参与 2.未参与
         },
         params:{
             param:[],//相关参数
@@ -589,6 +590,9 @@ var releaseContainer = new Vue({
                 _this.isProvince=false;
             }
         },
+        radioChangeNewvalidFlag: function(event){//选择新品展示
+            this.releaseParams.newvalidFlag= event.target.value;
+        },
         addProvinceFn: function(item){//选择指定区域
             item.isChecked = ! item.isChecked;
         },

+ 85 - 22
src/main/resources/templates/index.html

@@ -135,7 +135,7 @@
                     <!--固定楼层-->
                     <div class="section_page section_page_user hot" v-for="(floor,index) in hotListPageFloor">
                         <div class="section_page_title" >
-                            <h1 :data-id="0">{{ floor.title }}</h1>
+                            <h1 data-id="0">{{ floor.title }}</h1>
                             <p>{{ floor.detail }}</p>
                             <a class="section_page_btn" href="/product/hot.html" target="_blank"></a>
                         </div>
@@ -143,48 +143,48 @@
                             <div class="section_page_main type_08 swiper-wrapper recommendBox-wrapper clear mfw section_8 max">
                                 <!-- 商品/图片 列表 -->
                                 <a :href="pros.link" class="page_main_item hot ad_04 swiper-slide" target="_blank" v-for="pros in floor.newfloorlist">
-                                    <img class="page_main_image" src="/img/base/placeholder.png" :data-original="pros.image" :alt="pros.name">
-                                    <div class="page_main_type" v-if="pros && pros.productType && pros.productType === 2">医疗器械</div>
+                                    <img class="page_main_image" src="/img/base/placeholder.png" :data-original="pros.product.image" :alt="pros.name">
+                                    <div class="page_main_type" v-if="pros && pros.product.productType && pros.product.productType === 2">医疗器械</div>
                                     <div class="page_main_text">
-                                        <span class="tag" v-if="pros.beautyActFlag == 1">美博会</span>
-                                        <span v-text="pros.name"></span>
+                                        <span class="tag" v-if="pros.product.beautyActFlag == 1">美博会</span>
+                                        <span v-text="pros.product.name"></span>
                                     </div>
                                     <div class="page_main_price">
                                         <!-- 商品价格 -->
                                         <div class="main_price_text">
                                             <!-- 正常商品 -->
-                                            <template v-if="pros.productCategory == 1">
+                                            <template v-if="pros.product.productCategory == 1">
                                                 <div class="price_text_tag">
-                                                    <p class="couponTag" v-if="pros.couponsLogo">优惠券</p>
+                                                    <p class="couponTag" v-if="pros.product.couponsLogo">优惠券</p>
                                                     <!--超级会员价格标签 svipProductFlag 1:超级会员优惠商品 0 不是商超级会员优惠商品-->
-                                                    <template v-if="pros.svipProductFlag === 1">
+                                                    <template v-if="pros.product.svipProductFlag === 1">
                                                         <div class="svip-tag">
                                                             <div class="svip-icon">SVIP</div>
                                                             <!-- 公开价格 && (个人机构 || 资质机构) && 开通SVIP 可查看价格-->
-                                                            <template v-if="showVipPriceTag(pros)">
+                                                            <template v-if="showVipPriceTag(pros.product)">
                                                                 <div class="svip-price">
-                                                                    <span v-html="pros.svipPriceTag"></span>
+                                                                    <span v-html="pros.product.svipPriceTag"></span>
                                                                 </div>
                                                             </template>
                                                         </div>
                                                     </template>
                                                     <template v-else>
-                                                        <p class="listTag" v-if="pros.actStatus ==1 && pros.promotions">
+                                                        <p class="listTag" v-if="pros.product.actStatus ==1 && pros.product.promotions">
                                                             <span v-text="pros.promotions.name"></span>
-                                                            <template v-if="PromotionsFormat(pros.promotions)">
+                                                            <template v-if="PromotionsFormat(pros.product.promotions)">
                                                                 <!--单品优惠:优惠价-->
-                                                                <span class="price_unit">:¥</span><span class="price_num">{{ pros.price | NumFormat }}</span>
+                                                                <span class="price_unit">:¥</span><span class="price_num">{{ pros.product.price | NumFormat }}</span>
                                                             </template>
                                                         </p>
                                                     </template>
                                                 </div>
                                                 <div class="main_price_login">
                                                     <!--priceFlag 0公开价格 1不公开价格 2仅对会员机构公开-->
-                                                    <template v-if="pros.priceFlag == 1">
+                                                    <template v-if="pros.product.priceFlag == 1">
                                                         <em class="price_grade"><span>¥</span>价格未公开</em>
                                                     </template>
                                                     <!--机构价仅会员可见 && 用户是普通机构-->
-                                                    <template v-else-if="pros.priceFlag==2 && GLOBAL_USER_IDENTITY === 4 && GLOBAL_VIP_FLAG!=1">
+                                                    <template v-else-if="pros.product.priceFlag==2 && GLOBAL_USER_IDENTITY === 4 && GLOBAL_VIP_FLAG!=1">
                                                         <em class="price_grade_club"><span>¥</span>会员可见</em>
                                                     </template>
                                                     <!--机构价仅医美机构可见-->
@@ -192,16 +192,16 @@
                                                         <em class="price_grade_club red"><span>¥</span>仅医美机构可见</em>
                                                     </template>
                                                     <!-- 资质机构 || (价格全部机构可见 && 普通机构) || (供应商 && 商品为供应商下的商品) || 超级会员用户 -->
-                                                    <template v-else-if="GLOBAL_USER_IDENTITY === 2 || (pros.priceFlag === 0 && GLOBAL_USER_IDENTITY === 4) || (GLOBAL_USER_IDENTITY === 3 && pros.shopID==GLOBAL_SHOP_ID) || GLOBAL_VIP_FLAG === 1">
-                                                        <div class="main_price_show" :class="{none: showVipPriceTag(pros.product) || PromotionsFormat(pros.promotions)}">
-                                                            ¥<span class="price_num" v-if="showVipPriceTag(pros)">{{ pros.originalPrice | NumFormat }}</span>
-                                                            <span class="price_num" v-else>{{ pros.price | NumFormat }}</span>
+                                                    <template v-else-if="GLOBAL_USER_IDENTITY === 2 || (pros.product.priceFlag === 0 && GLOBAL_USER_IDENTITY === 4) || (GLOBAL_USER_IDENTITY === 3 && pros.shopID==GLOBAL_SHOP_ID) || GLOBAL_VIP_FLAG === 1">
+                                                        <div class="main_price_show" :class="{none: showVipPriceTag(pros.product) || PromotionsFormat(pros.product.promotions)}">
+                                                            ¥<span class="price_num" v-if="showVipPriceTag(pros.product)">{{ pros.product.originalPrice | NumFormat }}</span>
+                                                            <span class="price_num" v-else>{{ pros.product.price | NumFormat }}</span>
                                                         </div>
                                                     </template>
                                                     <template v-else>
                                                         <!--供应商除自己的商品外,也显示价格等级-->
                                                         <em class="price_grade_shop">
-                                                            <span class="bold">¥</span><i :class="'icon mIcon price_grade_'+pros.priceGrade"></i>
+                                                            <span class="bold">¥</span><i :class="'icon mIcon price_grade_'+pros.product.priceGrade"></i>
                                                         </em>
                                                     </template>
                                                 </div>
@@ -210,9 +210,9 @@
                                             <template v-else>
                                                 <div class="main_price_login">
                                                     <div class="price_text_tag"></div>
-                                                    <div v-if="pros.detailTalkFlag==2" class="main_price_show">¥价格祥聊</div>
+                                                    <div v-if="pros.product.detailTalkFlag==2" class="main_price_show">¥价格祥聊</div>
                                                     <div v-else class="main_price_show">
-                                                        ¥<span class="price_num">{{ pros.price | NumFormat }}</span>
+                                                        ¥<span class="price_num">{{ pros.product.price | NumFormat }}</span>
                                                     </div>
                                                 </div>
                                             </template>
@@ -379,6 +379,69 @@
                     </div>
                 </template>
                 <template v-else>
+                    <!--静态化固定楼层-->
+                    <div class="section_page section_page_user hot" th:each="floor,stat : ${floorJson.get('PageFloor')}">
+                        <div class="section_page_title">
+                            <h1 th:text="${floor.get('title')}" data-id="0"></h1>
+                            <p th:text="${floor.get('detail')}"></p>
+                            <a class="section_page_btn" href="/product/hot.html" target="_blank"></a>
+                        </div>
+                        <div class="swiper-container-floor hotList" id="recommendBox">
+                            <div class="section_page_main type_08 swiper-wrapper recommendBox-wrapper clear mfw section_8">
+                                <!-- 商品/图片 列表 -->
+                                <th:block th:each="pros : ${floor.get('floorImageList')}"  th:object="${pros}">
+                                    <a th:href="*{link}" class="page_main_item hot ad_04 swiper-slide" target="_blank">
+                                        <img class="page_main_image" src="/img/base/placeholder.png" th:attr="data-original=*{image}" th:alt="*{name}">
+                                        <th:block th:if="${pros.get('product')}!=null" th:object="${pros.get('product')}">
+                                            <div class="page_main_type" th:if="*{productType}==2">医疗器械</div>
+                                        </th:block>
+                                        <div class="page_main_tag" th:if="*{listType}==2"><p th:text="*{label}"></p></div>
+                                        <div class="page_main_text">
+                                            <th:block th:if="${pros.containsKey('product')}">
+                                                <span class="tag" th:if="${pros.get('product').containsKey('beautyActFlag')} and ${pros.get('product').get('beautyActFlag')}==1">美博会</span>
+                                            </th:block>
+                                            <span th:text="${pros.get('name')}"></span>
+                                        </div>
+                                        <div class="page_main_price" th:if="*{listType}==1">
+                                            <th:block th:if="${pros.get('product')}!=null" th:object="${pros.get('product')}">
+                                                <!-- 商品价格 -->
+                                                <div th:attr="class=*{'main_price_text product_'+productId}, data-id=*{productId}">
+                                                    <!-- 正常商品 -->
+                                                    <th:block th:if="*{productCategory}==1">
+                                                        <div class="price_text_tag">
+                                                            <p class="couponTag" th:if="*{couponsLogo}">优惠券</p>
+                                                            <!--超级会员价格标签 svipProductFlag 1:超级会员优惠商品 0 不是商超级会员优惠商品-->
+                                                            <div class="svip-tag" th:if="*{svipProductFlag}==1">
+                                                                <div class="svip-icon">SVIP</div>
+                                                            </div>
+                                                            <p class="listTag" th:if="*{actStatus}==1 and ${pros.get('product').get('promotions')}!=null">
+                                                                <template th:text="*{promotions.name}"></template>
+                                                                <th:block th:if="*{promotions.type}==1 and *{promotions.mode}==1">
+                                                                    <!--单品优惠:优惠价-->
+                                                                    <span class="price_unit" style="display:none;">:¥</span><span class="price_num"></span>
+                                                                </th:block>
+                                                            </p>
+                                                        </div>
+                                                        <div class="main_price_none">
+                                                            <em class="price_grade"><span class="bold">¥</span><i th:attr="class=*{'icon mIcon price_grade_'+priceGrade}"></i></em>
+                                                        </div>
+                                                    </th:block>
+                                                    <!-- 二手商品 -->
+                                                    <th:block th:if="*{productCategory}!=1">
+                                                        <div class="main_price_none sec">
+                                                            <em class="price_grade"><span>¥</span>登录可见</em>
+                                                        </div>
+                                                    </th:block>
+                                                </div>
+                                            </th:block>
+                                        </div>
+                                    </a>
+                                </th:block>
+                            </div>
+                            <div class="swiper-pagination swiper-pagination-floor mfc" th:attr="data-id=${floor.get('floorImageList').size}"></div>
+                        </div>
+                    </div>
+                    <!--静态化普通楼层-->
                     <div class="section_page" th:each="floor,stat : ${floorJson.get('homePageFloor')}">
                         <th:block th:if="${floor.get('floorContent')}!=null">
                             <div class="section_page_title">

+ 54 - 55
src/main/resources/templates/product/product-hot.html

@@ -18,7 +18,6 @@
   </div>
   <template v-else>
     <!--品牌选择-->
-    <template v-if="isPC">
       <div class="product-banner">
         <div class="product-banner-top">
           <p class="title">采美新品橱窗</p>
@@ -26,8 +25,8 @@
         <div class="product-banner-bot">
           <div class="inner">
             <div id="productHotBanner" class="swiper-container">
-              <div class="swiper-wrapper">
-                  <div class="swiper-slide mfc" v-for="pros in topGoodList">
+              <ul class="swiper-wrapper">
+                  <li class="swiper-slide mfc" v-for="pros in topGoodList">
                     <a :href="'/product-'+pros.productId+'.html'" target="_blank">
                       <div class="swiper-slide-image">
                         <img :src="pros.mainImage" alt="">
@@ -41,71 +40,71 @@
                         </div>
                       </div>
                     </a>
-                  </div>
-              </div>
-              <div class="swiper-pagination mfc"><span v-for="i in topGoodList.length"></span></div>
+                  </li>
+              </ul>
+              <div class="swiper-pagination mfc"><span v-if="isPC" v-for="i in topGoodList.length"></span></div>
             </div>
           </div>
         </div>
       </div>
-      <div class="product-brand clear">
-        <div class="product-brand-name" :class="isShowAllBrands ? 'show' : ''">
-          <p class="title">品牌</p>
-        </div>
-        <div class="product-brand-list" :class="isShowAllBrands ? 'show' : ''">
-          <div class="brand-list" v-if="!isShowAllBrandsButton" @click="choiceBrandAllHref" :class="hrefBrandId ? '' : 'checked'"><a href="javascript:void(0)">全部</a></div>
-          <div class="brand-list" @click="choiceBrandHref(brand, index)" v-for="(brand,index) in brandLists"
-               :key="index" :class="brand.isChecked ? 'checked' : ''">
-            <a href="javascript:void(0)" :title="brand.name" v-html="brand.name"></a>
-          </div>
-        </div>
-        <div class="product-brand-oper" v-if="!isShowAllBrandsButton">
-          <div class="product-brand-more" v-if="defaultBrandLists.length>8" :class="isShowAllBrands ? 'show' : ''"
-               @click="showMoreItem">{{
-            isShowAllBrands ? '收起' : '更多' }} <i class="icon mIcon"></i></div>
-          <div class="product-brand-add" v-if="defaultBrandLists.length>2" @click="showMoreItemCheckedAll">+多选</div>
-        </div>
-        <div class="product-brand-button" v-if="isShowAllBrandsButton">
-          <div class="brand-button">
-            <div class="btn confirm" :class="checkedBrandList.length>0 ? '' : 'disabled'" @click="handleConfirm">确定</div>
-            <div class="btn cancel" @click="handleCancel">取消</div>
-          </div>
-        </div>
-      </div>
-    </template>
-    <template v-else>
-      <div class="product-brand-fiexd" v-if="isProductScreen">
+      <template v-if="isPC">
         <div class="product-brand clear">
-          <div class="product-screen">
-            <div class="sortBox-new" @click="hanldCheckedActivi">
-              <span>促销商品</span>
-              <span class="coll-checked" :class="[isActiviChecked ? 'checked': '']"></span>
-            </div>
-            <div class="sortBox-new" @click="hanldCheckedNews">
-              <span>新品</span>
-              <span class="coll-checked" :class="[isNewsChecked ? 'checked': '']"></span>
-            </div>
-          </div>
           <div class="product-brand-name" :class="isShowAllBrands ? 'show' : ''">
             <p class="title">品牌</p>
-            <p v-if="!isPC" class="num">已选中<span>{{ checkedBrandLength }}</span>个品牌</p>
           </div>
           <div class="product-brand-list" :class="isShowAllBrands ? 'show' : ''">
-            <div class="brand-list" @click="choiceBrandAll" :class="isAllcheckedBrand ? 'checked' : ''"><a href="javascript:void(0)">全部</a></div>
-            <div class="brand-list" v-for="(brand,index) in brandLists" :key="index"
-                 @click="choiceBrand(brand, index)" :class="brand.isChecked ? 'checked' : ''">
+            <div class="brand-list" v-if="!isShowAllBrandsButton" @click="choiceBrandAllHref" :class="hrefBrandId ? '' : 'checked'"><a href="javascript:void(0)">全部</a></div>
+            <div class="brand-list" @click="choiceBrandHref(brand, index)" v-for="(brand,index) in brandLists"
+                 :key="index" :class="brand.isChecked ? 'checked' : ''">
               <a href="javascript:void(0)" :title="brand.name" v-html="brand.name"></a>
             </div>
           </div>
-          <div class="product-brand-more" v-if="defaultBrandLists.length>8" :class="isShowAllBrands ? 'show' : ''" @click="showMoreItem">{{
-            isShowAllBrands ? '收起' : '查看全部' }} <i
-                    class="icon mIcon"></i></div>
-          <div class="product-screen-btn" @click="handleConfirmScreen">
-            <div class="sub-button">确定</div>
+          <div class="product-brand-oper" v-if="!isShowAllBrandsButton">
+            <div class="product-brand-more" v-if="defaultBrandLists.length>8" :class="isShowAllBrands ? 'show' : ''"
+                 @click="showMoreItem">{{
+              isShowAllBrands ? '收起' : '更多' }} <i class="icon mIcon"></i></div>
+            <div class="product-brand-add" v-if="defaultBrandLists.length>2" @click="showMoreItemCheckedAll">+多选</div>
+          </div>
+          <div class="product-brand-button" v-if="isShowAllBrandsButton">
+            <div class="brand-button">
+              <div class="btn confirm" :class="checkedBrandList.length>0 ? '' : 'disabled'" @click="handleConfirmScreen">确定</div>
+              <div class="btn cancel" @click="handleCancel">取消</div>
+            </div>
           </div>
         </div>
-      </div>
-    </template>
+      </template>
+      <template v-else>
+        <div class="product-brand-content">
+          <div class="product-brand clear">
+            <div class="product-brand-name">品牌</div>
+            <div class="product-brand-list" v-if="!isShowAllBrands">
+              <div class="brand-list" @click="choiceBrandAll" :class="isAllcheckedBrand ? 'checked' : ''"><a href="javascript:void(0)">全部</a></div>
+              <div class="brand-list" v-for="(brand,index) in brandLists" :key="index"  v-if="index < 2"
+                   @click="choiceBrand(brand, index)" :class="brand.isChecked ? 'checked' : ''">
+                <a href="javascript:void(0)" :title="brand.name" v-html="brand.name"></a>
+              </div>
+            </div>
+            <div class="product-brand-more" :class="isShowAllBrands ? 'show' : ''" @click="showMoreItem">
+              <i class="icon mIcon"></i>
+            </div>
+          </div>
+          <div class="product-brand-fiexd" v-if="isShowAllBrands">
+            <div class="product-brand-fiexdcontent">
+              <div class="product-brand-scroll">
+                <div class="brand-list" @click="choiceBrandAll" :class="isAllcheckedBrand ? 'checked' : ''"><a href="javascript:void(0)">全部</a></div>
+                <div class="brand-list" v-for="(brand,index) in brandLists" :key="index"
+                     @click="choiceBrand(brand, index)" :class="brand.isChecked ? 'checked' : ''">
+                  <a href="javascript:void(0)" :title="brand.name" v-html="brand.name"></a>
+                </div>
+              </div>
+              <div class="product-screen-btn" @click="handleConfirmScreen">
+                <div class="sub-button">确定</div>
+              </div>
+            </div>
+
+          </div>
+        </div>
+      </template>
     <!--数据为空-->
     <div v-if="isListEmpty" class="empty">
       <img src="/img/common/empty.png">
@@ -119,7 +118,7 @@
         <li class="productItem " v-for="p in listData">
           <div class="page_main_type" v-if="p.productType === 2">医疗器械</div>
           <a class="image" :href="'/product-'+p.productId+'.html'">
-            <img src="/img/base/placeholder.png" :data-original="p.mainImage" :alt="p.name">
+            <img src="/img/base/placeholder.png" :data-original="p.image" :alt="p.name">
             <p class="name" v-html="addhtml + p.name" v-if="p.beautyActFlag==1"></p>
             <p class="name" v-html="p.name" v-else></p>
             <div class="price">

+ 4 - 3
src/main/resources/templates/supplier-center/shop/goods.html

@@ -83,9 +83,10 @@
                         <div class="form-row">
                             新品展示:
                             <select name="" class="state small" @change="SelectChangeInsideFn($event)">
-                                <option value="">请选择</option>
-                                <option value="1">参与</option>
-                                <option value="0">不参与</option>
+                                <option value="">全部</option>
+                                <option value="1">已展示</option>
+                                <option value="2">未参与</option>
+                                <option value="3">审核未通过</option>
                             </select>
                         </div>
                         <div id="newBtn">

+ 8 - 3
src/main/resources/templates/supplier-center/shop/release.html

@@ -475,7 +475,7 @@
                             </div>
                         </div>
                         <!--新品展示编辑-->
-                        <div class="release-main-container" v-show="activeNum == 4">
+                        <div class="release-main-container new" v-show="activeNum == 4">
                             <div class="release-from text imgText">
                                 <P style="line-height: 24px;">采美商城已上线新品重点展示功能,新发布的商品有机会直接展示在网站首页,增加商品曝光量,展示时长为3个月。 您可为这个即将发布的商品选择是否参与新品展示。</P>
                             </div>
@@ -484,16 +484,21 @@
                                 <div class="release-input">
                                     <div class="release-props">
                                         <label class="release-radio">
-                                            <input type="radio" name="byFlag" v-model="releaseParams.byFlag" value="0"  @click="radioChangeByFlag">
+                                            <input type="radio" name="byFlag" v-model="releaseParams.newvalidFlag" value="0"  @click="radioChangeNewvalidFlag">
                                             <i class="icon mIcon">参与</i>
                                         </label>
                                         <label class="release-radio">
-                                            <input type="radio" name="byFlag" v-model="releaseParams.byFlag" value="1" checked @click="radioChangeByFlag">
+                                            <input type="radio" name="byFlag" v-model="releaseParams.newvalidFlag" value="2" checked @click="radioChangeNewvalidFlag">
                                             <i class="icon mIcon">不参与</i>
                                         </label>
                                     </div>
                                 </div>
                             </div>
+                            <div class="release-from clear">
+                                <div class="release-image">
+                                    <img src="/img/supplier/icon-hotimage.png" alt="新品展示">
+                                </div>
+                            </div>
                             <div class="release-from text imgText">
                                 <P style="line-height: 24px;color: red;">请注意:</P>
                                 <P style="line-height: 24px;">最终能否展示在商城首页,需要经过采美审核人员进行审核(2-3个工作日),审核通过后才会展示。</P>