Selaa lähdekoodia

外部访问记录

zhengjinyi 1 vuosi sitten
vanhempi
commit
542a4ddf88

+ 19 - 5
src/main/java/com/caimei/www/controller/unlimited/SupplierController.java

@@ -3,6 +3,7 @@ package com.caimei.www.controller.unlimited;
 import com.caimei.www.controller.BaseController;
 import com.caimei.www.pojo.page.SupplierDetail;
 import com.caimei.www.service.page.SupplierService;
+import lombok.val;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
@@ -20,10 +21,11 @@ import org.springframework.web.bind.annotation.RequestParam;
 @Controller
 public class SupplierController extends BaseController {
 
-	private static final String SUPPLIER_LIST_PATH = "supplier/list";
-	private static final String SUPPLIER_INDEX_PATH = "supplier/index";
+    private static final String SUPPLIER_LIST_PATH = "supplier/list";
+    private static final String SUPPLIER_INDEX_PATH = "supplier/index";
 
     private SupplierService supplierService;
+
     @Autowired
     public void setSupplierService(SupplierService supplierService) {
         this.supplierService = supplierService;
@@ -41,9 +43,21 @@ public class SupplierController extends BaseController {
      * 供应商首页
      */
     @GetMapping("/supplier-{id}.html")
-    public String home(final Model model, @PathVariable("id") Integer supplierId) {
-        SupplierDetail detail = supplierService.getSupplierById(supplierId);
-        if(detail== null){
+    public String home(final Model model, @PathVariable("id") String supplierId) {
+        Integer shopId = 0;
+        Integer partnerId = 0;
+        if (supplierId.contains("-")) {
+            val split = supplierId.split("-");
+            shopId = Integer.valueOf(split[0]);
+            partnerId = Integer.valueOf(split[1]);
+        } else {
+            shopId = Integer.valueOf(supplierId);
+        }
+        SupplierDetail detail = supplierService.getSupplierById(shopId);
+        if (partnerId != 0) {
+            detail.setPartnerId(partnerId);
+        }
+        if (detail == null) {
             return super.errorPath();
         }
         model.addAttribute("supplier", detail);

+ 63 - 59
src/main/java/com/caimei/www/pojo/page/SupplierDetail.java

@@ -1,59 +1,63 @@
-package com.caimei.www.pojo.page;
-
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * Description
- *
- * @author : Charles
- * @date : 2020/7/22
- */
-@Data
-public class SupplierDetail implements Serializable {
-    private Integer id;
-    /** 对应的userId */
-    private Integer userId;
-    /** 供应商名称 */
-    private String name;
-    /** 供应商公司简称 */
-    private String abbr;
-    /** 公司LOGO */
-    private String logo;
-    /** 所在地区 */
-    private String address;
-    /** 经营范围 */
-    private String businessScope;
-    private String[] businessScopeArr;
-    /** 营业执照 */
-    private String businessLicense;
-    /** 税务登记证 */
-    private String taxCertificate;
-    /** 供应商授权采美代理证书 */
-    private String license;
-    /** 介绍 */
-    private String info;
-    /** 主打产品说明 */
-    private String productDesc;
-    /** 网站 */
-    private String site;
-    /**
-     * 医疗器械经营许可
-     */
-    private String medicalPracticeLicense;
-    /**
-     * 公司资质照片1
-     */
-    private String medicalPracticeLicenseImg1;
-    /**
-     * 公司资质照片2
-     */
-    private String medicalPracticeLicenseImg2;
-    /**
-     * 公司资质照片3
-     */
-    private String medicalPracticeLicenseImg3;
-
-    private static final long serialVersionUID = 1L;
-}
+package com.caimei.www.pojo.page;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * Description
+ *
+ * @author : Charles
+ * @date : 2020/7/22
+ */
+@Data
+public class SupplierDetail implements Serializable {
+    private Integer id;
+    /** 对应的userId */
+    private Integer userId;
+    /** 供应商名称 */
+    private String name;
+    /** 供应商公司简称 */
+    private String abbr;
+    /** 公司LOGO */
+    private String logo;
+    /** 所在地区 */
+    private String address;
+    /** 经营范围 */
+    private String businessScope;
+    private String[] businessScopeArr;
+    /** 营业执照 */
+    private String businessLicense;
+    /** 税务登记证 */
+    private String taxCertificate;
+    /** 供应商授权采美代理证书 */
+    private String license;
+    /** 介绍 */
+    private String info;
+    /** 主打产品说明 */
+    private String productDesc;
+    /** 网站 */
+    private String site;
+    /**
+     * 跳转网站id,dep官网-1
+     */
+    private Integer partnerId;
+    /**
+     * 医疗器械经营许可
+     */
+    private String medicalPracticeLicense;
+    /**
+     * 公司资质照片1
+     */
+    private String medicalPracticeLicenseImg1;
+    /**
+     * 公司资质照片2
+     */
+    private String medicalPracticeLicenseImg2;
+    /**
+     * 公司资质照片3
+     */
+    private String medicalPracticeLicenseImg3;
+
+    private static final long serialVersionUID = 1L;
+}

+ 17 - 11
src/main/resources/static/css/account/forget.css

@@ -7,17 +7,23 @@ li{list-style:none}
 @media screen and (min-width:768px){
 body{background-color: #F5F5F5;}
 footer .footTop{display:none;}
-.signAccount{width:1000px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;    border-radius: 15px;box-sizing: border-box;padding: 16px;}
-.signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
-.forget-form{width:498px;margin:0 auto;padding: 20px 0;}
-.right-header{width: 100%;height: 88px;box-sizing: border-box;float: left;padding:24px 316px;background-color: #FFF;}
-.right-header .tabs{width: 356px;height: 88px;margin: 0 auto;}
-.right-header .header-tabs{width: 168px;height: 38px;background-color: #f0f3f7;line-height: 38px;font-size: 14px;text-align: center;color: #627386;float: left;cursor: pointer;}
-.right-header .header-tabs.current{background-color: #FF5B00;color: #FFFFFF;}
-.right-header .header-tabs.le{ border-radius: 19px 0 0 19px;}
-.right-header .header-tabs.ri{ border-radius: 0 19px 19px 0;}
-.container{width: 100%;height: auto;box-sizing: border-box;float: left;background-color: #FFF;}
-
+    .signAccount{width:1000px;margin:20px auto;min-height: 458px;background-color: #FFFFFF;    border-radius: 15px;box-sizing: border-box;padding: 16px;}
+    .signAccount .title{height:42px;line-height:42px;font-size:16px;color:#22272e;text-align:left;background-color: #F5F5F5;}
+    .forget-form{width:498px;margin:0 auto;padding: 20px 0;}
+    .right-header{width: 100%;height: 88px;box-sizing: border-box;float: left;padding:24px 316px;background-color: #FFF;}
+    .right-header .tabs{width: 356px;height: 88px;margin: 0 auto;}
+    .right-header .header-tabs{width: 168px;height: 38px;background-color: #f0f3f7;line-height: 38px;font-size: 14px;text-align: center;color: #627386;float: left;cursor: pointer;}
+    .right-header .header-tabs.current{background-color: #FF5B00;color: #FFFFFF;}
+    .right-header .header-tabs.le{ border-radius: 19px 0 0 19px;}
+    .right-header .header-tabs.ri{ border-radius: 0 19px 19px 0;}
+    .container{width: 100%;height: auto;box-sizing: border-box;float: left;background-color: #FFF;}
+    .foot{width:100%;height:96px;background:#F5F5F5;margin:30px auto}
+    .footer{width:1185px;margin:0 auto;text-align:center;height: 96px;box-sizing: border-box;padding: 20px 0;}
+    .footer p{line-height: 30px;color: #666666;}
+    .footer p span{margin:0 5px}
+    .footer p span a{color: #666666;}
+    .footer p span a:hover{color: #E15621;}
+    .footer p span img.icp{width: 18px;height: 18px;display: inline-block;}
 
 }
 

+ 4 - 4
src/main/resources/static/css/article/article.css

@@ -131,12 +131,12 @@ dl,dd,dt{zoom:1}
 	.search .keyword::-moz-placeholder,
 	.search .keyword:-ms-input-placeholder{color:#B2B2B2}
 	/* .content.sea-top{margin-top:110px} */
-	.foot{width:100%;height:174px;background:#262626;}
-	.footer{width:1185px;margin:0 auto;text-align:center;height: 174px;box-sizing: border-box;padding: 39px 0;}
+	.foot{width:100%;height:auto;background:#262626;}
+	.footer{width:1185px;margin:0 auto;text-align:center;height: auto;box-sizing: border-box;padding: 24px 0;}
 	.footer p{line-height: 30px;color: #FFFFFF;}
 
 	/*友情链接*/
-	.footer .back-link {display: flex;justify-content: center;align-items: center;margin-bottom: 25px;font-size: 14px;}
+	.footer .back-link {display: flex;justify-content: center;align-items: center;margin-bottom: 10px;font-size: 14px;}
 	.footer .back-link a {color: #FFF;}
 	.footer .back-link a:hover{color: #E15621;}
 
@@ -163,7 +163,7 @@ dl,dd,dt{zoom:1}
 	.featured-Articles .featured-content .item-content .item-img .img-a:hover {border: 2px solid #FF5B00;}
 	.featured-Articles .featured-content .item-content .text-a:hover .item-title {color: #FF5B00;}
 
-	.content{width:1185px;margin:0 auto;position:relative;}
+	.content{width:1185px;min-height: 550px;margin:0 auto;position:relative;}
 	.content .mainData{float:left;width: 884px;background:#f5f5f5;min-height: 900px; }
 	.content .new-list{width:100%;}
 	.content .new-list .dataRousce {background: #fff;}

+ 1 - 1
src/main/resources/static/css/base/base.pc.css

@@ -494,7 +494,7 @@ iframe{width:320px !important;height: 280px !important}
 .cmbeans-alert-image .icon:before{width:33px;height:33px;background-position:-195px -548px;}
 .cmbeans-alert-content{width: 310px;height: 399px;position: absolute;top: 0;left: 0;bottom: 0;right: 0;margin: auto;box-sizing: border-box;padding-top: 238px;background-size: cover;}
 .cmbeans-alert-content .icon{width:30px;height:30px;display: block;position: absolute;top: 45px;right: -35px;cursor: pointer;}
-.cmbeans-alert-content .icon:before{width:33px;height:33px;background-position:-197px -550px}
+.cmbeans-alert-content .icon:before{width:33px;height:33px;background-position:-195px -548px;}
 .cmbeans-alert-content-text{height: 48px;line-height: 48px;text-align: center;width: 100%;font-size: 18px;color: #333333;}
 .cmbeans-alert-content-bean{width: 100%;height: 35px;line-height: 35px;box-sizing: border-box;display: flex;flex-direction: column;align-items: center;}
 .cmbeans-alert-content-bean .cmbeans-alert-icon{width: 42px;height: 35px;display: block;float: left;}

+ 3 - 0
src/main/resources/static/js/account/register-club.js

@@ -113,6 +113,8 @@
                     CAIMEI.dialog('两次密码输入不一致',false,function () {});
                     return;
                 }
+                const partnerId = CAIMEI.Storage.getItem('partnerId')
+                console.log('partnerId',partnerId)
                 var params = {
                         source:0,
                         userName : _self.clubUser.name,
@@ -124,6 +126,7 @@
                         isSp: _self.clubUser.isSp,
                         insideFLag:0, //内外部协销标记 0内部协销,1外部协销
                         spId: '', // 协销分享的id
+                        partnerId:partnerId ? partnerId *1 : 0
                 };
                 _self.loginLoading = true;
                 UserApi.ClubRegister(params,function (response) {

+ 18 - 2
src/main/resources/static/js/article/list.js

@@ -40,7 +40,8 @@ const articleList = new Vue({
         featuredList: [], // 精选推荐列表
         dialogVisible: true, // 弹窗
         searchKeys: "", // 搜索词
-        newsList: []
+        newsList: [],
+        isLoading:false
     },
     computed: {
         pageTotal: function () {
@@ -79,7 +80,19 @@ const articleList = new Vue({
         this.getNewList()
     },
     methods: {
-        // init auto-input complete
+        openFullScreen1() {
+            const _self = this
+            const loading = this.$loading({
+                lock: true,
+                text: '',
+                spinner: 'el-icon-loading',
+                background: 'rgba(0, 0, 0, 0.2)'
+            });
+            setTimeout(() => {
+                _self.isLoading = true;
+                loading.close();
+            }, 250);
+        },
         initAuthInputComplete() {
             new AutoComplete({
                 el: '.auto-input',
@@ -409,6 +422,9 @@ const articleList = new Vue({
                 window.open($event.jumpLink)
             }
         }
+    },
+    mounted () {
+        this.openFullScreen1()
     }
 });
 function initFilterSort(option = {}) {

+ 5 - 2
src/main/resources/static/js/mixins/cmSysMixins.js

@@ -13,7 +13,8 @@ var cmSysVitaMixins = function () {
                     userId:0,//用户Id
                     productId:0,//商品Id
                     shopId:0,//供应商Id
-                    behaviorType:1 // 用户行为类型
+                    behaviorType:1, // 用户行为类型
+                    partnerId:0, // 外部官网跳转
                 },
                 handleProsId:'',
                 handleShopId:'',
@@ -54,7 +55,9 @@ var cmSysVitaMixins = function () {
             handleCmSysNetInfo() {
                 //设置定时器
                 const globalUserData = JSON.parse(localStorage.getItem('userInfo'));
-                console.log('handleProsKey',this.handleProsKey)
+                const partnerId = CAIMEI.Storage.getItem('partnerId')
+                console.log('partnerId',partnerId)
+                if(partnerId){ this.cmSysParams.partnerId = partnerId * 1  }
                 if(globalUserData){ this.cmSysParams.userId = globalUserData.userId * 1; }
                 if( this.handleProsId || this.handleShopId || this.handlearticleId || this.handleProsKey || this.handleShopKey ){
                     this.popUpParams.shopId = this.handleShopId

+ 3 - 0
src/main/resources/static/js/shopping/confirm.js

@@ -13,6 +13,7 @@ const defaultCartParam = {
         userId:0			// 用户Id
 };
 const defaultConfirmParam = {
+        partnerId:0, // 外部来源下单默认 0
         cartType:1, 		// 购买类型:(1自主下单, 3协销下单)
         orderMiniType:0,    // 订单提交状态 0初始提交 1 继续提交
         orderSource:1,		// 订单来源 1WWW 6小程序[采美,星范]
@@ -818,7 +819,9 @@ var shoppingConfirm = new Vue({
         const _self = this;
         this.urlType = getUrlParam("type") ? getUrlParam("type") * 1 : "";
         if(globalUserData){
+            const partnerId = CAIMEI.Storage.getItem('partnerId')
             this.userId = this.productParam.userId = this.cartParam.userId = this.supportParm.userId =   globalUserData.userId;
+            this.confirmParam.partnerId = partnerId ? partnerId * 1 : 0
             this.confirmParam.unionId = globalUserData.unionId ? globalUserData.unionId : '';
             this.confirmParam.clubId = globalUserData.clubId
             this.userIdentity = globalUserData.identity;

+ 8 - 5
src/main/resources/static/js/supplier/index.js

@@ -261,6 +261,9 @@ var supplierHome = new Vue({
     mounted: function () {
         const _self = this;
         const userInfo = localStorage.getItem('userInfo');
+        const partnerId = $("#partnerId").val();
+        console.log('partnerId', partnerId)
+        CAIMEI.Storage.setItem('partnerId',partnerId)
         if(this.params.id !== 0) {
             this.getShopInfo();
             this.getMainProducts();
@@ -271,13 +274,13 @@ var supplierHome = new Vue({
         }
         //上垃加载更多
         $(window).on('scroll', function(){
-            var scrollTop = $(this).scrollTop();
-            var scrollHeight = $(document).height();
-            var windowHeight = window.innerHeight + $("footer").height();
+            const scrollTop = $(this).scrollTop();
+            const scrollHeight = $(document).height();
+            const windowHeight = window.innerHeight + $("footer").height();
             if (scrollTop + windowHeight >= scrollHeight) {
                 //此处是滚动条到底部时候触发的事件,在这里写要加载的数据,或者是拉动滚动条的操作
-                var totalPage = Math.ceil(_self.listRecord / _self.params.size)?Math.ceil(_self.listRecord / _self.params.size):1;
-                var next = _self.params.num+1;
+                const totalPage = Math.ceil(_self.listRecord / _self.params.size) ? Math.ceil(_self.listRecord / _self.params.size) : 1;
+                const next = _self.params.num + 1;
                 if(next <= totalPage){
                     if (_self.requestFlag){
                         _self.params.num = next;

+ 1 - 1
src/main/resources/templates/account/forget.html

@@ -114,7 +114,7 @@
     </div>
 </div>
 <!-- 引入底部 -->
-<template th:replace="components/footer"></template>
+<template th:replace="article/components/article-footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/user.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/account/forget.js(v=${version})}"></script>

+ 200 - 198
src/main/resources/templates/article/list.html

@@ -25,244 +25,246 @@
     </div>
 </div>
 <!--主体内容-->
-<div class="content clearfix" id="ArticleContent" v-cloak>
-    <div class="info-banner AppBanner" th:if="${isSearch} and ${articleImages} and ${!articleImages.empty}">
-        <div class="banner">
-            <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
-                <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 1 and ${type.headAppBanner} and ${type.appStatus} == 1">
-                    <a target="_blank" th:href="${type.jumpLink}">
-                        <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])" />
-                    </a>
-                </van-swipe-item>
-            </van-swipe>
-        </div>
-        <div class="sider-banner">
-            <div class="sider-banner-1">
-                <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
-                    <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 2 and ${type.headAppBanner} and ${type.appStatus} == 1">
-                        <a target="_blank" th:href="${type.jumpLink}">
-                            <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
-                        </a>
-                    </van-swipe-item>
-                </van-swipe>
-            </div>
-            <div class="sider-banner-2">
+<div class="content clearfix" id="ArticleContent">
+    <div v-cloak>
+        <div class="info-banner AppBanner" th:if="${isSearch} and ${articleImages} and ${!articleImages.empty}">
+            <div class="banner">
                 <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
-                    <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 3 and ${type.headAppBanner} and ${type.appStatus} == 1">
+                    <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 1 and ${type.headAppBanner} and ${type.appStatus} == 1">
                         <a target="_blank" th:href="${type.jumpLink}">
-                            <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
+                            <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])" />
                         </a>
                     </van-swipe-item>
                 </van-swipe>
             </div>
-        </div>
-    </div>
-    <!--侧边栏Ross广告图-->
-    <div class="mainData">
-        <div class="new-list" id="articleList" v-cloak>
-            <!-- h5 公告-->
-            <div class="info-h5-notice" th:if="${isSearch}">
-                <div class="h5-notice">公告:</div>
-                <div class="h5-notice-title">
-                    <ul>
-                        <li @click="hanldDetails(newsList[0].id)" v-if="newsList[0]?.title">{{ newsList[0].title }}</li>
-                    </ul>
+            <div class="sider-banner">
+                <div class="sider-banner-1">
+                    <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
+                        <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 2 and ${type.headAppBanner} and ${type.appStatus} == 1">
+                            <a target="_blank" th:href="${type.jumpLink}">
+                                <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
+                            </a>
+                        </van-swipe-item>
+                    </van-swipe>
                 </div>
-                <div class="h5-notice-more"><a href="/info/articlerecommendation-3-1.html?isNotice">更多 ></a></div>
-            </div>
-            <div class="info-banner PcBanner" th:if="${isSearch} and ${articleImages} and ${!articleImages.empty}">
-                <div class="banner">
-                    <el-carousel :autoplay="true" show-indicators="false">
-                        <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 1 and ${type.headPcBanner} and ${type.pcStatus} == 1">
+                <div class="sider-banner-2">
+                    <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
+                        <van-swipe-item th:each="type: ${articleImages}" th:if="${type.levelType} == 3 and ${type.headAppBanner} and ${type.appStatus} == 1">
                             <a target="_blank" th:href="${type.jumpLink}">
-                                <img th:src="${type.headPcBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
+                                <img th:src="${type.headAppBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
                             </a>
-                        </el-carousel-item>
-                    </el-carousel>
+                        </van-swipe-item>
+                    </van-swipe>
                 </div>
-                <div class="sider-banner">
-                    <div>
-                        <el-carousel :autoplay="true" show-indicators="false">
-                            <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 2 and ${type.headPcBanner} and ${type.pcStatus} == 1">
-                                <a target="_blank" th:href="${type.jumpLink}">
-                                    <img th:src="${type.headPcBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
-                                </a>
-                            </el-carousel-item>
-                        </el-carousel>
+            </div>
+        </div>
+        <!--侧边栏Ross广告图-->
+        <div class="mainData">
+            <div class="new-list" id="articleList" v-cloak>
+                <!-- h5 公告-->
+                <div class="info-h5-notice" th:if="${isSearch}">
+                    <div class="h5-notice">公告:</div>
+                    <div class="h5-notice-title">
+                        <ul>
+                            <li @click="hanldDetails(newsList[0].id)" v-if="newsList[0]?.title">{{ newsList[0].title }}</li>
+                        </ul>
                     </div>
-                    <div>
+                    <div class="h5-notice-more"><a href="/info/articlerecommendation-3-1.html?isNotice">更多 ></a></div>
+                </div>
+                <div class="info-banner PcBanner" th:if="${isSearch} and ${articleImages} and ${!articleImages.empty}">
+                    <div class="banner">
                         <el-carousel :autoplay="true" show-indicators="false">
-                            <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 3 and ${type.headPcBanner} and ${type.pcStatus} == 1">
+                            <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 1 and ${type.headPcBanner} and ${type.pcStatus} == 1">
                                 <a target="_blank" th:href="${type.jumpLink}">
                                     <img th:src="${type.headPcBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
                                 </a>
                             </el-carousel-item>
                         </el-carousel>
                     </div>
-                </div>
-            </div>
-            <!--    精选文章推荐-->
-            <div class="featured-Articles" id="featured-Articles" th:if="${isSearch} and ${#arrays.length(infoSelected)} > 0">
-                <div class="featured-title">
-                    <div>精选推荐</div>
-                    <div>
-                        <a href="/info/articlerecommendation-1-1.html?isSelected">更多 ></a>
+                    <div class="sider-banner">
+                        <div>
+                            <el-carousel :autoplay="true" show-indicators="false">
+                                <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 2 and ${type.headPcBanner} and ${type.pcStatus} == 1">
+                                    <a target="_blank" th:href="${type.jumpLink}">
+                                        <img th:src="${type.headPcBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
+                                    </a>
+                                </el-carousel-item>
+                            </el-carousel>
+                        </div>
+                        <div>
+                            <el-carousel :autoplay="true" show-indicators="false">
+                                <el-carousel-item th:each="type: ${articleImages}" th:if="${type.levelType} == 3 and ${type.headPcBanner} and ${type.pcStatus} == 1">
+                                    <a target="_blank" th:href="${type.jumpLink}">
+                                        <img th:src="${type.headPcBanner}" th:onclick="handleSwiperHits([[${type}]])"/>
+                                    </a>
+                                </el-carousel-item>
+                            </el-carousel>
+                        </div>
                     </div>
                 </div>
-                <div class="featured-content">
-                    <div class="item-content" th:each="featured: ${infoSelected}">
-                        <div class="item-img">
-                            <a th:href="'/info/detail-' + ${featured.id} + '-1.html'" class="img-a">
-                                <img th:src="${featured.image}"/>
+                <!--    精选文章推荐-->
+                <div class="featured-Articles" id="featured-Articles" th:if="${isSearch} and ${#arrays.length(infoSelected)} > 0">
+                    <div class="featured-title">
+                        <div>精选推荐</div>
+                        <div>
+                            <a href="/info/articlerecommendation-1-1.html?isSelected">更多 ></a>
+                        </div>
+                    </div>
+                    <div class="featured-content">
+                        <div class="item-content" th:each="featured: ${infoSelected}">
+                            <div class="item-img">
+                                <a th:href="'/info/detail-' + ${featured.id} + '-1.html'" class="img-a">
+                                    <img th:src="${featured.image}"/>
+                                </a>
+                            </div>
+                            <a th:href="'/info/detail-' + ${featured.id} + '-1.html'" class="text-a">
+                                <div class="item-title" th:text="${featured.title}"></div>
                             </a>
                         </div>
-                        <a th:href="'/info/detail-' + ${featured.id} + '-1.html'" class="text-a">
-                            <div class="item-title" th:text="${featured.title}"></div>
-                        </a>
                     </div>
                 </div>
-            </div>
-            <!-- 产品搜索结果 -->
-            <div class="search-section" v-show="params.keyword && productRecord > 0">
-                <div class="search__product_list">
-                    <div class="search__tip">为您找到相关产品<span v-text="productRecord"></span>个</div>
-                    <div class="search__content">
-                        <template v-for="product in productList">
-                            <a :href="'/product-' + product.productId + '.html'" class="search__product" :key="product.productId" target="_blank">
-                                <div class="search__product_cover"><img :src="product.image" :alt="product.name"/></div>
-                                <div class="search__product_name" v-html="product.name"></div>
-                            </a>
-                        </template>
-                        <template v-if="isPC && 8 - productRecord > 0">
-                            <div class="search__product" v-for="i in (8 - productRecord)" :key="'empty' + i">
-                                <div class="search__product_cover"><img src="/img/base/placeholder.png"/></div>
-                                <div class="search__product_name"></div>
+                <!-- 产品搜索结果 -->
+                <div class="search-section" v-show="params.keyword && productRecord > 0">
+                    <div class="search__product_list">
+                        <div class="search__tip">为您找到相关产品<span v-text="productRecord"></span>个</div>
+                        <div class="search__content">
+                            <template v-for="product in productList">
+                                <a :href="'/product-' + product.productId + '.html'" class="search__product" :key="product.productId" target="_blank">
+                                    <div class="search__product_cover"><img :src="product.image" :alt="product.name"/></div>
+                                    <div class="search__product_name" v-html="product.name"></div>
+                                </a>
+                            </template>
+                            <template v-if="isPC && 8 - productRecord > 0">
+                                <div class="search__product" v-for="i in (8 - productRecord)" :key="'empty' + i">
+                                    <div class="search__product_cover"><img src="/img/base/placeholder.png"/></div>
+                                    <div class="search__product_name"></div>
+                                </div>
+                            </template>
+                            <div class="search__more" v-if="!isPC && productRecord > 8">
+                                <span class="search__more_tip">更多{{keyword | keywordSlice}}产品</span>
+                                <span class="search__more_line"></span>
+                                <a class="search__more_link" :href="'/product/list.html?productFlag=0&linkageFlag=0&keyword=' + keyword" target="_blank">查看全部</a>
                             </div>
-                        </template>
-                        <div class="search__more" v-if="!isPC && productRecord > 8">
-                            <span class="search__more_tip">更多{{keyword | keywordSlice}}产品</span>
-                            <span class="search__more_line"></span>
-                            <a class="search__more_link" :href="'/product/list.html?productFlag=0&linkageFlag=0&keyword=' + keyword" target="_blank">查看全部</a>
                         </div>
                     </div>
+                    <div class="search__more" v-if="isPC && productRecord > 8">
+                        <span class="search__more_tip">更多{{keyword | keywordSlice}}产品</span>
+                        <span class="search__more_line"></span>
+                        <a class="search__more_link" :href="'/product/list.html?productFlag=0&linkageFlag=0&keyword=' + keyword" target="_blank">查看全部</a>
+                    </div>
                 </div>
-                <div class="search__more" v-if="isPC && productRecord > 8">
-                    <span class="search__more_tip">更多{{keyword | keywordSlice}}产品</span>
-                    <span class="search__more_line"></span>
-                    <a class="search__more_link" :href="'/product/list.html?productFlag=0&linkageFlag=0&keyword=' + keyword" target="_blank">查看全部</a>
-                </div>
-            </div>
-            <!-- 文章筛选 -->
-            <div class="search-filter" v-show="params.keyword">
-                <div class="search__content">
-                    <div class="search__tip">为您找到相关文章<span v-text="listRecord"></span>条</div>
-                    <div class="search__sort" id="searchSortControl">
-                        <div class="search__sort_current">综合排序</div>
-                        <ul class="search__sort_select">
-                            <li class="selected" data-type="1">综合排序</li>
-                            <li data-type="2">时间排序</li>
-                        </ul>
+                <!-- 文章筛选 -->
+                <div class="search-filter" v-show="params.keyword">
+                    <div class="search__content">
+                        <div class="search__tip">为您找到相关文章<span v-text="listRecord"></span>条</div>
+                        <div class="search__sort" id="searchSortControl">
+                            <div class="search__sort_current">综合排序</div>
+                            <ul class="search__sort_select">
+                                <li class="selected" data-type="1">综合排序</li>
+                                <li data-type="2">时间排序</li>
+                            </ul>
+                        </div>
                     </div>
                 </div>
-            </div>
-            <!-- 文章列表 -->
-            <div class="listData-select-title" th:if="${isSearch}">
-                <div class="search-select">
-                    <div class="select-new" :class="params.sortType === 1 ? 'now-search-select' : '' " @click="selectListNew(1)">最新</div>
-                    <div class="select-earliest" :class="params.sortType === 2 ? 'now-search-select' : '' " @click="selectListNew(2)">最热</div>
+                <!-- 文章列表 -->
+                <div class="listData-select-title" th:if="${isSearch}">
+                    <div class="search-select">
+                        <div class="select-new" :class="params.sortType === 1 ? 'now-search-select' : '' " @click="selectListNew(1)">最新</div>
+                        <div class="select-earliest" :class="params.sortType === 2 ? 'now-search-select' : '' " @click="selectListNew(2)">最热</div>
+                    </div>
                 </div>
-            </div>
-            <div v-if="listData && listData.length>0" class="dataRousce">
-                <div class="row" v-for="item in listData">
-                    <div class="new-img">
-                        <a :href="'/info/detail-'+item.id+'-1.html'" target="_blank">
-                            <img :src="item.image"/>
-                        </a>
+                <div v-if="listData && listData.length>0" class="dataRousce">
+                    <div class="row" v-for="item in listData">
+                        <div class="new-img">
+                            <a :href="'/info/detail-'+item.id+'-1.html'" target="_blank">
+                                <img :src="item.image"/>
+                            </a>
+                        </div>
+                        <div class="new-blurb">
+                            <a :href="'/info/detail-'+item.id+'-1.html'" target="_blank">
+                                <p class="title" v-html="item.title"></p>
+                            </a>
+                            <p class="introduction" v-html="item.intro"></p>
+                            <p class="xinxi"><em v-if="item.labels && item.labels.length>0&&item.labels[0]" class="hotspot icon mIcon">
+                                <template v-for="(id,i) in item.labelIds">{{i>0?' | ':''}}<a v-if="item.labels[i]" v-text="item.labels[i]" :href="'/info/label-' +id+ '-1.html'"></a></template>
+                            </em></p>
+                            <p class="xinxi">
+                                <em v-if="!isPC" class="pv icon mIcon" v-text="item.pv"></em>
+                                <em class="write icon mIcon" v-text="item.publisher"></em>
+                                <em v-if="item.publishDate" class="time icon mIcon" v-text="item.publishDate.substr(0,10)"></em>
+                                <em v-if="isPC" class="pv icon mIcon" v-text="item.pv"></em>
+                                <!--                            <em v-if="item.labels.length>0&&item.labels[0]" class="hotspot icon mIcon">-->
+                                <!--                                <template v-for="(id,i) in item.labelIds">{{i>0?',':''}}<a v-if="item.labels[i]" v-text="item.labels[i]" :href="'/info/label-' +id+ '-1.html'"></a></template>-->
+                                <!--                            </em>-->
+                            </p>
+                            <!--                        <p v-if="isPC" class="P_img"><em class="pv icon mIcon" v-text="item.pv"></em></p>-->
+                        </div>
                     </div>
-                    <div class="new-blurb">
-                        <a :href="'/info/detail-'+item.id+'-1.html'" target="_blank">
-                            <p class="title" v-html="item.title"></p>
-                        </a>
-                        <p class="introduction" v-html="item.intro"></p>
-                        <p class="xinxi"><em v-if="item.labels && item.labels.length>0&&item.labels[0]" class="hotspot icon mIcon">
-                            <template v-for="(id,i) in item.labelIds">{{i>0?' | ':''}}<a v-if="item.labels[i]" v-text="item.labels[i]" :href="'/info/label-' +id+ '-1.html'"></a></template>
-                        </em></p>
-                        <p class="xinxi">
-                            <em v-if="!isPC" class="pv icon mIcon" v-text="item.pv"></em>
-                            <em class="write icon mIcon" v-text="item.publisher"></em>
-                            <em v-if="item.publishDate" class="time icon mIcon" v-text="item.publishDate.substr(0,10)"></em>
-                            <em v-if="isPC" class="pv icon mIcon" v-text="item.pv"></em>
-<!--                            <em v-if="item.labels.length>0&&item.labels[0]" class="hotspot icon mIcon">-->
-<!--                                <template v-for="(id,i) in item.labelIds">{{i>0?',':''}}<a v-if="item.labels[i]" v-text="item.labels[i]" :href="'/info/label-' +id+ '-1.html'"></a></template>-->
-<!--                            </em>-->
-                        </p>
-<!--                        <p v-if="isPC" class="P_img"><em class="pv icon mIcon" v-text="item.pv"></em></p>-->
+                    <div class="handleMore" v-if="!noMore">
+                        <el-button class="more" @click="handleMore">查看更多</el-button>
                     </div>
                 </div>
-                <div class="handleMore" v-if="!noMore">
-                    <el-button class="more" @click="handleMore">查看更多</el-button>
+                <div v-if="listLoading" class="loading">
+                    <img src="/img/base/loading.gif">
                 </div>
+                <!-- 如果没有搜索结果。显示此div -->
+                <div v-else-if="listRecord==0" class="no-result">
+                    <p><img src="/img/info/kuqi.jpg"></p>
+                    <p class="nofound">很抱歉,没有找到 “<span v-text="params.keyword"></span>” 相关结果!</p>
+                    <p class="change">请修改或者尝试其他搜索词</p>
+                </div>
+                <div v-if="(!isPC) && noMore" class="no-more">---- 没有更多了 ----</div>
+                <!--分页-->
+                <div v-if="isPC && pageTotal>1" class="pageWrap clear">
+                    <a v-if="params.num>1" class="prev" :href="paginationUrl(params.num*1-1)"></a>
+                    <template v-for="n in showPageBtn">
+                        <a v-if="n" :class="{'on':(n==params.num)}" :href="paginationUrl(n)" v-text="n"></a>
+                        <span v-else>···</span>
+                    </template>
+                    <a v-if="params.num<pageTotal" class="next" :href="paginationUrl(params.num*1+1)"></a>
+                    <span>共<b v-text="pageTotal>1?pageTotal:1"></b>页</span>
+                    <span>跳至</span>
+                    <input v-model="pageInput" @blur="checkNum()"/>
+                    <span>页</span>&nbsp;
+                    <a class="btn" :href="paginationUrl(pageInput)">点击跳转</a>
+                </div>
+                <!--            <div class="side-pop-up" :class="dialogVisible ? 'eject' : 'retract'" @click="handlerPopup">-->
+                <!--                <div v-if="dialogVisible">侧边弹窗13-->
+                <!--                    <el-button @click.stop="dialogVisible = false"></el-button></div>-->
+                <!--            </div>-->
             </div>
-            <div v-if="listLoading" class="loading">
-                <img src="/img/base/loading.gif">
-            </div>
-            <!-- 如果没有搜索结果。显示此div -->
-            <div v-else-if="listRecord==0" class="no-result">
-                <p><img src="/img/info/kuqi.jpg"></p>
-                <p class="nofound">很抱歉,没有找到 “<span v-text="params.keyword"></span>” 相关结果!</p>
-                <p class="change">请修改或者尝试其他搜索词</p>
-            </div>
-            <div v-if="(!isPC) && noMore" class="no-more">---- 没有更多了 ----</div>
-            <!--分页-->
-            <div v-if="isPC && pageTotal>1" class="pageWrap clear">
-                <a v-if="params.num>1" class="prev" :href="paginationUrl(params.num*1-1)"></a>
-                <template v-for="n in showPageBtn">
-                    <a v-if="n" :class="{'on':(n==params.num)}" :href="paginationUrl(n)" v-text="n"></a>
-                    <span v-else>···</span>
-                </template>
-                <a v-if="params.num<pageTotal" class="next" :href="paginationUrl(params.num*1+1)"></a>
-                <span>共<b v-text="pageTotal>1?pageTotal:1"></b>页</span>
-                <span>跳至</span>
-                <input v-model="pageInput" @blur="checkNum()"/>
-                <span>页</span>&nbsp;
-                <a class="btn" :href="paginationUrl(pageInput)">点击跳转</a>
-            </div>
-<!--            <div class="side-pop-up" :class="dialogVisible ? 'eject' : 'retract'" @click="handlerPopup">-->
-<!--                <div v-if="dialogVisible">侧边弹窗13-->
-<!--                    <el-button @click.stop="dialogVisible = false"></el-button></div>-->
-<!--            </div>-->
         </div>
-    </div>
-    <div class="info-Notice" id="infoNotice" th:if="${isSearch}" v-cloak>
-        <div class="notice-title">
-            <div>公告</div>
-            <div>
-                <a href="/info/articlerecommendation-3-1.html?isNotice">更多 ></a>
+        <div class="info-Notice" id="infoNotice" th:if="${isSearch}" v-cloak>
+            <div class="notice-title">
+                <div>公告</div>
+                <div>
+                    <a href="/info/articlerecommendation-3-1.html?isNotice">更多 ></a>
+                </div>
+            </div>
+            <div class="notice-content" v-cloak>
+                <ul class="notice-content-list">
+                    <li class="notice-content-li" v-for="(list ,index) in newsList" :key="index" @click="hanldDetails(list.id)">
+                        {{ list.title }}
+                    </li>
+                </ul>
             </div>
         </div>
-        <div class="notice-content" v-cloak>
-            <ul class="notice-content-list">
-                <li class="notice-content-li" v-for="(list ,index) in newsList" :key="index" @click="hanldDetails(list.id)">
-                    {{ list.title }}
-                </li>
-            </ul>
+        <!--侧边栏供应商广告图-->
+        <div v-if="isPC && shopAdvert.length > 0 " class="article-right-ross article-PC" :class="shopAdvert.length > 0 ? 'show' : 'none'" id="advertisement" v-cloak>
+            <el-carousel :autoplay="true" show-indicators="false" :height="isPC ? '343px' : '61.6vw'">
+                <el-carousel-item v-for="(item, index) in shopAdvert" :key="item.id">
+                    <a @click="setAdvStatistics(item)">
+                        <img :src="item.pcImage" alt="">
+                    </a>
+                </el-carousel-item>
+            </el-carousel>
         </div>
-    </div>
-    <!--侧边栏供应商广告图-->
-    <div v-if="isPC && shopAdvert.length > 0 " class="article-right-ross article-PC" :class="shopAdvert.length > 0 ? 'show' : 'none'" id="advertisement" v-cloak>
-        <el-carousel :autoplay="true" show-indicators="false" :height="isPC ? '343px' : '61.6vw'">
-            <el-carousel-item v-for="(item, index) in shopAdvert" :key="item.id">
-                <a @click="setAdvStatistics(item)">
-                    <img :src="item.pcImage" alt="">
-                </a>
-            </el-carousel-item>
-        </el-carousel>
-    </div>
-    <!--侧边栏-->
-    <template th:replace="article/components/article-sidebar"></template>
-    <div id="scrollTop">
-        <div class="item">
-            <span class="toTop icon mIcon">置顶</span>
+        <!--侧边栏-->
+        <template th:replace="article/components/article-sidebar"></template>
+        <div id="scrollTop">
+            <div class="item">
+                <span class="toTop icon mIcon">置顶</span>
+            </div>
         </div>
     </div>
 </div>

+ 1 - 0
src/main/resources/templates/supplier/index.html

@@ -13,6 +13,7 @@
 
 <!-- 供应商首页 -->
 <div id="supplierHome" v-cloak>
+    <input type="hidden" th:value="${supplier.partnerId}" id="partnerId">
     <div class="supplierTit">
         <!--首页图片轮播-->
         <div id="supplierBanner" class="swiper-container">