Forráskód Böngészése

Merge remote-tracking branch 'origin/developerB' into developer

zhengjinyi 2 éve
szülő
commit
34c8b156a6
42 módosított fájl, 215 hozzáadás és 38 törlés
  1. 1 1
      src/main/resources/config/dev/application-dev.yml
  2. 3 0
      src/main/resources/static/js/activity/activityTopic.js
  3. 3 0
      src/main/resources/static/js/activity/attestation.js
  4. 3 1
      src/main/resources/static/js/activity/beautyTopic.js
  5. 7 0
      src/main/resources/static/js/article/detail.js
  6. 1 1
      src/main/resources/static/js/common/serviceapi/user.service.js
  7. 12 1
      src/main/resources/static/js/common/serviceapi/utils.service.js
  8. 17 0
      src/main/resources/static/js/encyclopedia/detail.js
  9. 11 8
      src/main/resources/static/js/flea-market/form.js
  10. 4 1
      src/main/resources/static/js/flea-market/list.js
  11. 4 0
      src/main/resources/static/js/flea-market/secondDetail.js
  12. 3 1
      src/main/resources/static/js/index.js
  13. 56 0
      src/main/resources/static/js/mixins/cmSysMixins.js
  14. 12 1
      src/main/resources/static/js/product/detail.js
  15. 7 0
      src/main/resources/static/js/product/instruement.js
  16. 3 0
      src/main/resources/static/js/product/list.js
  17. 6 0
      src/main/resources/static/js/product/produce-list.js
  18. 3 0
      src/main/resources/static/js/product/product-hot.js
  19. 3 1
      src/main/resources/static/js/product/temporary.js
  20. 3 1
      src/main/resources/static/js/single-page/page.js
  21. 3 0
      src/main/resources/static/js/single-page/topic.js
  22. 3 0
      src/main/resources/static/js/supplier/list.js
  23. 1 0
      src/main/resources/templates/activity/activityTopic.html
  24. 1 0
      src/main/resources/templates/activity/attestation.html
  25. 1 0
      src/main/resources/templates/activity/beautyTopic.html
  26. 2 1
      src/main/resources/templates/article/detail.html
  27. 4 0
      src/main/resources/templates/encyclopedia/components/footer.html
  28. 3 2
      src/main/resources/templates/encyclopedia/instrument-detail.html
  29. 3 2
      src/main/resources/templates/encyclopedia/product-detail.html
  30. 1 0
      src/main/resources/templates/flea-market/detail.html
  31. 1 0
      src/main/resources/templates/flea-market/form.html
  32. 1 0
      src/main/resources/templates/flea-market/list.html
  33. 1 0
      src/main/resources/templates/index.html
  34. 1 0
      src/main/resources/templates/product/detail.html
  35. 17 16
      src/main/resources/templates/product/instruelist.html
  36. 4 0
      src/main/resources/templates/product/instrument.html
  37. 1 0
      src/main/resources/templates/product/list.html
  38. 1 0
      src/main/resources/templates/product/product-hot.html
  39. 1 0
      src/main/resources/templates/product/temporary.html
  40. 1 0
      src/main/resources/templates/single-page/page.html
  41. 1 0
      src/main/resources/templates/single-page/topic.html
  42. 1 0
      src/main/resources/templates/supplier/list.html

+ 1 - 1
src/main/resources/config/dev/application-dev.yml

@@ -56,7 +56,7 @@ caimei:
   #spiServer: http://192.168.2.68:8008
   coreServer: https://core-b.caimei365.com
   #coreServer: http://192.168.2.67:18002
-  #coreServer: http://192.168.2.75:18002
+#  coreServer: http://192.168.2.17:18002
   #coreServer: http://192.168.2.200:18002
   imageDomain: https://img-b.caimei365.com
   wwwDomain: http://localhost:8009

+ 3 - 0
src/main/resources/static/js/activity/activityTopic.js

@@ -1,5 +1,6 @@
 var activity = new Vue({
     el: '#activity',
+    mixins: [cmSysVitaMixins],
     data: {
         listLoading: true, //加载动画
         hotlist: [],       //热搜词
@@ -29,6 +30,7 @@ var activity = new Vue({
     },
     computed: {},
     created: function () {
+        this.cmSysParams.pageType = 13;
         // this.init();
     },
     methods: {
@@ -91,6 +93,7 @@ var activity = new Vue({
                 if (res.code === 0) {
                     _self.floorList = res.data.floorList;
                     _self.pageInfo = res.data.page;
+                    _self.cmSysParams.pageLabel = _self.pageInfo.contentLabel;
                     if( _self.pageInfo.backgroundImageWay == 1){
                         _self.bgClass = 'bg-repeat';
                     }else{

+ 3 - 0
src/main/resources/static/js/activity/attestation.js

@@ -1,4 +1,5 @@
 new Vue({
+    mixins: [cmSysVitaMixins],
     data: {
         popupVisiable: false,
         twoData: [
@@ -62,6 +63,8 @@ new Vue({
     },
     mounted() {
         // this.initSwiper1()
+        this.cmSysParams.pageType = 5;
+        this.cmSysParams.pageLabel = '认证通';
         this.initSwiper2()
     },
     methods: {

+ 3 - 1
src/main/resources/static/js/activity/beautyTopic.js

@@ -5,7 +5,7 @@
 var activeApp = (function () {
     return new Vue({
         el: '#app',
-        mixins: [swiperMixin, showMoreMixin],
+        mixins: [swiperMixin, showMoreMixin,cmSysVitaMixins],
         data: {
             isMobile: window.innerWidth < 992,
             showCouponEntry: false,
@@ -52,6 +52,7 @@ var activeApp = (function () {
         }
         ,
         created: function created() {
+            this.cmSysParams.pageType = 13;
             this.initUserInfo();
             this.getFloorData();
         }
@@ -143,6 +144,7 @@ var activeApp = (function () {
                     if (res.code === 0) {
                         that.floorList = res.data.floorList;
                         that.pageInfo = res.data.page;
+                        that.cmSysParams.pageLabel = that.pageInfo.contentLabel;
                         that.isRequest = false;
                         that.makeVideoFetchMap();
                         that.activityEntryVisiable = that.initActivityEntry(res.data.page.redPacketBeginTime, res.data.page.redPacketEndTime);

+ 7 - 0
src/main/resources/static/js/article/detail.js

@@ -19,6 +19,7 @@
 //相关阅读
 var articleRelated = new Vue({
     el: "#articleRelated",
+    mixins: [cmSysVitaMixins],
     data: {
         infoId: $("#articleId").val()?$("#articleId").val()*1:0,
         articleLabels: $("#articleLabels").val()?$("#articleLabels").val():"",
@@ -40,6 +41,12 @@ var articleRelated = new Vue({
 
     },
     created: function () {
+        const pageLabelArray = []
+        $('.dea-tag-li').each(function(){
+            pageLabelArray.push($(this).find('a').text());
+        })
+        this.cmSysParams.pageType = 11;
+        this.cmSysParams.pageLabel =  pageLabelArray.join('/');
         this.infoId = $("#articleId").val() ? $("#articleId").val()*1 : 0;
         this.articleLabels = $("#articleLabels").val()?$("#articleLabels").val():"";
         // 获取相关阅读

+ 1 - 1
src/main/resources/static/js/common/serviceapi/user.service.js

@@ -462,5 +462,5 @@ var UserApi = {
             }).then(function (res) {
                 callback(res);
             });
-        },
+        }
 };

+ 12 - 1
src/main/resources/static/js/common/serviceapi/utils.service.js

@@ -571,7 +571,18 @@ var PublicApi = {
                 .then(function(res){
                     callback(res)
                 });
-        }
+        },
+        userRecordStatistics: function (params, callback) {//上送统计用户浏览记录
+            Http.AjaxService({
+                url: '/user/record/Statistics',
+                type:'get',
+                data:params,
+                json:false,
+                isHost:true
+            }).then(function (res) {
+                callback(res);
+            });
+        },
 
 };
 

+ 17 - 0
src/main/resources/static/js/encyclopedia/detail.js

@@ -89,3 +89,20 @@ $(function () {
         $(this).parents('#video-popup').hide();
     });
 });
+//百科
+var encyclopedia = new Vue({
+    el: "#encyclopedia",
+    mixins: [cmSysVitaMixins],
+    data: {
+
+    },
+    methods: {},
+    created: function () {
+        // 行为轨迹统计
+        this.cmSysParams.pageType = 12;
+        this.cmSysParams.pageLabel =  $('#discription').text();
+    },
+    mounted: function () {
+
+    }
+});

+ 11 - 8
src/main/resources/static/js/flea-market/form.js

@@ -1,6 +1,7 @@
 var isPC = ($(window).width()>768);
 var fleaMarketForm = new Vue({
     el:'#fleaMarketForm',
+    mixins: [cmSysVitaMixins],
     data:{
         fenlei:[
             {name:'二手仪器',value:1},
@@ -482,17 +483,19 @@ var fleaMarketForm = new Vue({
     },
     mounted:function () {
         var _this = this;
+        this.cmSysParams.pageType = 4;
+        this.cmSysParams.pageLabel = '发布二手';
         SecondApi.brandList({},function (res) {//品牌列表
             if(res.code == 0){
                _this.BrandList = res.data;
             }
         })
-     PublicApi.GetProvince({},function(response){ //省份
-            if(response.code == 0){
-                _this.provinceArray = response.data
-            }else{
-                CAIMEI.Alert(response.msg, '确定', false);
-            }
-        })
-    },
+         PublicApi.GetProvince({},function(response){ //省份
+                if(response.code == 0){
+                    _this.provinceArray = response.data
+                }else{
+                    CAIMEI.Alert(response.msg, '确定', false);
+                }
+            })
+        },
 })

+ 4 - 1
src/main/resources/static/js/flea-market/list.js

@@ -1,6 +1,7 @@
 var isPC = ($(window).width()>768);
 var fleaMarketList = new Vue({
      el: "#fleaMarketList",
+     mixins: [cmSysVitaMixins],
      data:{
          currentId:1,
          currentID2:0,
@@ -156,7 +157,9 @@ var fleaMarketList = new Vue({
         }
      },
      mounted:function () {
-          var _this = this;
+        var _this = this;
+        this.cmSysParams.pageType = 3;
+        this.cmSysParams.pageLabel = '二手市场';
           var userInfo = JSON.parse(localStorage.getItem('userInfo'));
           if(userInfo){
               _this.userId = userInfo.userId;

+ 4 - 0
src/main/resources/static/js/flea-market/secondDetail.js

@@ -3,6 +3,7 @@
  */
 var fleaMarket = new Vue({
     el:"#fleaMarket",
+    mixins: [cmSysVitaMixins],
     data: {
         tabIndex:0,
         shopId:'',
@@ -38,6 +39,8 @@ var fleaMarket = new Vue({
                    _this.detail = res.data;
                    _this.previewThumb =  res.data.imageList;
                    _this.previewBigimage =res.data.imageList[0];
+                   _this.cmSysParams.productId = `${_this.productId}`;
+                   _this.cmSysParams.pageLabel = `${res.data.brandName}`;
                    setTimeout(function(){  // 图片懒加载
                        $("img[data-original]").lazyload();
                    },500);
@@ -125,6 +128,7 @@ var fleaMarket = new Vue({
     },
     created: function () {
         this.id = $("#productId").val();
+        this.cmSysParams.pageType = 7;
     },
     mounted: function () {
      var _self = this;

+ 3 - 1
src/main/resources/static/js/index.js

@@ -2,7 +2,7 @@
 // if(isFormal){var _czc = _czc || [];_czc.push(["_setAccount", "1279558759"]);}
 var homeData = new Vue({
     el: '#container',
-    mixins: [cmsMixins],
+    mixins: [cmsMixins,cmSysVitaMixins],
     data: {
         userId:0,
         asideNav: [],
@@ -360,6 +360,8 @@ var homeData = new Vue({
     },
     mounted: function() {
         var _this = this;
+        this.cmSysParams.pageType = 1;
+        this.cmSysParams.pageLabel = '首页';
         // 页面主图轮播
         this.swiperBanner();
         // 获取设置商品价格

+ 56 - 0
src/main/resources/static/js/mixins/cmSysMixins.js

@@ -0,0 +1,56 @@
+// 统计数据
+// 统计类型 1:首页banner;2:直播模块;3:最新活动;4:热门文章;5:新品橱窗;6:活动列表
+var cmSysVitaMixins = function () {
+    return {
+        data() {
+            return {
+                browseTime: 0,  // 浏览时长初始值为 0
+                clearTimeSet: null,
+                cmSysParams:{
+                    pagePath:'',//页面路径
+                    accessDuration:0,//停留时间
+                    pageType:'',//页面类型
+                    pageLabel:'',//页面标签
+                    userId:0,//用户Id
+                    productId:0//商品Id
+                }
+            }
+
+        },
+        methods: {
+            setTime() {
+                //设置定时器
+                let _self = this;
+                const globalUserData = JSON.parse(localStorage.getItem('userInfo'));
+                if(globalUserData){ this.cmSysParams.userId = globalUserData.userId * 1; }
+                this.cmSysParams.pagePath = window.location.href;
+                this.clearTimeSet = setInterval(() => {
+                    _self.browseTime++;
+                }, 1000);
+            },
+            userRecordStatistics(url,data) {// navigator.sendBeacon 方式  发送统计数据
+                const blob = new Blob([JSON.stringify(data)], {
+                    type: 'application/json; charset=UTF-8',
+                });
+                navigator.sendBeacon(url, blob);
+            },
+            beforeunloadHandler(e) {
+                this.cmSysParams.accessDuration = this.browseTime*1000
+                console.log(`页面路径:${this.cmSysParams.pagePath}`,`停留:${this.cmSysParams.accessDuration}s`,`标签:${this.cmSysParams.pageLabel}`)
+                var NODE_ENV_BASE_URL = $("#coreServer").val();
+                var url = `${NODE_ENV_BASE_URL}/user/record/StatisticsPc`
+                this.userRecordStatistics(url,this.cmSysParams); // 上送后台接口,将浏览时长等信息传到后台,离开当前路由后调用
+                clearInterval(this.clearTimeSet); // 离开页面后清除定时器
+            }
+        },
+        mounted() {
+            // 页面加载完成后开始计时
+            this.setTime();
+            // 绑定窗口关闭[监听]事件
+            window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
+        },
+        destroyed() { // 解除窗口关闭[监听]事件
+            window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))
+        }
+    }
+}();

+ 12 - 1
src/main/resources/static/js/product/detail.js

@@ -1,6 +1,6 @@
 var productDetail = new Vue({
     el: "#productDetail",
-    mixins: [beautyArchiveDetailMixin],
+    mixins: [beautyArchiveDetailMixin,cmSysVitaMixins],
     data: {
         showProduct: false,
         productId: 0,
@@ -176,6 +176,7 @@ var productDetail = new Vue({
             ProductApi.GetProductDdtails({userId: GLOBAL_USER_ID, productId: _self.productId,typeId:_self.typeId}, function (response) {
                 if (response.code == 0) {
                     var product = response.data;
+                    var $pageLabel = '';
                     _self.product = response.data;
                     _self.pcActType = product.pcActType;
                     _self.beautyActFlag = product.beautyActFlag;
@@ -183,6 +184,14 @@ var productDetail = new Vue({
                     _self.recommendType = product.recommendType ? product.recommendType : 0;
                     _self.archiveId = product.archiveId; // 保存资料列表id
                     _self.productDetailChose = product.productDetailChose; // 同资质机构显示商品详情
+                    if(product.tinyTypeName){
+                        $pageLabel = product.tinyTypeName
+                    }else if(!product.tinyTypeName && product.smallTypeName){
+                        $pageLabel = product.smallTypeName
+                    }else{
+                        $pageLabel = product.bigTypeName
+                    }
+                    _self.cmSysParams.pageLabel = `${$pageLabel}-${product.brandName?product.brandName:''}`;//设置统计数据标签
                     if(product.shopType == 2){
                         _self.isShowCaimeiShop = true
                     }
@@ -817,6 +826,8 @@ var productDetail = new Vue({
     },
     created: function () {
         this.productId = this.couponParam.productId = this.listQuery.productId = $("#productId").val();
+        this.cmSysParams.pageType = 6;
+        this.cmSysParams.productId = this.productId;
         this.typeId = $("#typeId").val();
         console.log('typeId', this.typeId)
         this.userId = this.couponParam.userId = this.listQuery.userId = GLOBAL_USER_ID;

+ 7 - 0
src/main/resources/static/js/product/instruement.js

@@ -1,5 +1,6 @@
  var instrueMent = new Vue({
     el:'#instrueMent',
+     mixins: [cmSysVitaMixins],
     data:{
          listLoading:true,
          categorylist:[],
@@ -95,6 +96,7 @@
                  if(response.code == 0){
                      var data = response.data;
                      _self.floorList = data.floorList;
+                     _self.cmSysParams.pageLabel = data.contentLabel;
                      setTimeout(function(){
                          // 图片懒加载
                          $("img[data-original]").lazyload();
@@ -206,6 +208,9 @@
             });
         }
     },
+    created: function () {
+         this.cmSysParams.pageType = 13;
+    },
     mounted: function(){
         var _self = this;
          var userInfo = localStorage.getItem('userInfo');
@@ -219,6 +224,8 @@
         if (GLOBAL_USER_ID) {
             this.GetHomeData();
         }else {
+            //获取页面标签名称
+            this.cmSysParams.pageLabel = $('#contentLabel').val();
             // 设置页面查看更多
             this.setReadeMore();
             // 推荐专区商品轮播

+ 3 - 0
src/main/resources/static/js/product/list.js

@@ -1,5 +1,6 @@
 var productList = new Vue({
     el: "#productList",
+    mixins: [cmSysVitaMixins],
     data: {
         // searchFlag: false,
         listLoading: true,
@@ -320,6 +321,8 @@ var productList = new Vue({
             this.params.num = 1;
         }
         this.params.keyword = this.brandParam.keyword = getUrlParam("keyword") ? getUrlParam("keyword") : "";
+        this.cmSysParams.pageType = 8;
+        this.cmSysParams.pageLabel = this.params.keyword;
         // 搜索框赋值
         $('#topSearch').find('[data-select]').attr("data-select", 0).text("产品");
         $('#topSearch').find('.jqSelect').find('select').val(0);

+ 6 - 0
src/main/resources/static/js/product/produce-list.js

@@ -1,5 +1,6 @@
 var productList = new Vue({
     el:'#productList',
+    mixins: [cmSysVitaMixins],
     data:{
         userId:0,
         listLoading: true,
@@ -322,6 +323,11 @@ var productList = new Vue({
                 $("img[data-original]").lazyload();
             });
         }
+        //设置数据统计
+        this.$nextTick(function(){
+            _self.cmSysParams.pageType = 10;//设置数据统计
+            _self.cmSysParams.pageLabel = $('.crumbs-nav-item.on').eq(-1).text();//设置数据统计
+        })
         // 获取对应品牌列表
         this.getCommoditySearchQUeryBrand();
         // 设置选中的品牌

+ 3 - 0
src/main/resources/static/js/product/product-hot.js

@@ -1,5 +1,6 @@
 var productList = new Vue({
     el: "#productList",
+    mixins: [cmSysVitaMixins],
     data: {
         // searchFlag: false,
         isRequest:false,
@@ -261,6 +262,8 @@ var productList = new Vue({
     created: function () {
         var _self = this
         // this.searchFlag = (this.params.keyword !== "");
+        this.cmSysParams.pageType = 2;
+        this.cmSysParams.pageLabel = '新品';
         if(globalUserData){
             this.userId = 	this.listQuery.userId = globalUserData.userId;
             this.userIdentity = globalUserData.identity;

+ 3 - 1
src/main/resources/static/js/product/temporary.js

@@ -1,5 +1,6 @@
  var instrueMent = new Vue({
     el:'#instrueMent',
+    mixins: [cmSysVitaMixins],
     data:{
          listLoading:true,
          categorylist:[],
@@ -21,7 +22,7 @@
         },
     },
      created: function() {
-
+         this.cmSysParams.pageType = 13;
      },
      methods:{
          PromotionsFormat:function(promo){//促销活动类型数据处理
@@ -60,6 +61,7 @@
                      _self.hotlist = res.data.hotSearchList;
                      _self.floorList = res.data.floorList;
                      _self.typeSort = res.data.page.typeSort;
+                     _self.cmSysParams.pageLabel = res.data.page.contentLabel;
                      _self.listLoading =false;
                      _self.floorList.forEach(function(page){
                          if(page.floorContent) {

+ 3 - 1
src/main/resources/static/js/single-page/page.js

@@ -1,5 +1,6 @@
 var freePage = new Vue({
     el: "#freePage",
+    mixins: [cmSysVitaMixins],
     data: {
         pageId:0,
         bgClass:'',
@@ -15,6 +16,7 @@ var freePage = new Vue({
             PagesApi.GetPageFree({id: _self.pageId}, function (response) {
                 if (response.code === 0) {
                     _self.pageInfo =  response.data;
+                    _self.cmSysParams.pageLabel = _self.pageInfo.contentLabel;
                     if( _self.pageInfo.backgroundImageWay == 1){
                         _self.bgClass = 'bg-repeat';
                     }else{
@@ -27,7 +29,7 @@ var freePage = new Vue({
         },
     },
     created: function () {
-
+        this.cmSysParams.pageType = 13;
     },
     mounted: function () {
         var _self = this;

+ 3 - 0
src/main/resources/static/js/single-page/topic.js

@@ -1,5 +1,6 @@
 var topicPage = new Vue({
     el: "#topicPage",
+    mixins: [cmSysVitaMixins],
     data: {
         pageId: 0,
         floorDatas: [],
@@ -17,6 +18,7 @@ var topicPage = new Vue({
                     var data = response.data;
                     _self.floorDatas = data.floorList;
                     _self.pageInfo = data.page;
+                    _self.cmSysParams.pageLabel = _self.pageInfo.contentLabel;
                     if( _self.pageInfo.backgroundImageWay == 1){
                         _self.bgClass = 'bg-repeat';
                     }else{
@@ -31,6 +33,7 @@ var topicPage = new Vue({
         },
     },
     created: function () {
+        this.cmSysParams.pageType = 13;
         var paramsArr = window.location.pathname.split(".")[0].split("-");
         this.pageId  =  paramsArr.length>=1 ? paramsArr[1] : '';
         // 获取列表数据

+ 3 - 0
src/main/resources/static/js/supplier/list.js

@@ -1,5 +1,6 @@
 var supplierList = new Vue({
     el: "#supplierList",
+    mixins: [cmSysVitaMixins],
     data: {
         searchFlag: false,
         listLoading: true,
@@ -94,6 +95,8 @@ var supplierList = new Vue({
             this.params.num = 1;
         }
         this.params.keyword = getUrlParam("keyword") ? getUrlParam("keyword") : "";
+        this.cmSysParams.pageType = 9;
+        this.cmSysParams.pageLabel = this.params.keyword;
         // 搜索框赋值
         $('#topSearch').find('[data-select]').attr("data-select", 1).text("供应商");
         $('#topSearch').find('.jqSelect').find('select').val(1);

+ 1 - 0
src/main/resources/templates/activity/activityTopic.html

@@ -1768,6 +1768,7 @@
   <template th:replace="components/foot-link"></template>
   <script charset="utf-8" type="text/javascript"
     th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+  <script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
   <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/activityTopic.js(v=${version})}"></script>
 </body>
 

+ 1 - 0
src/main/resources/templates/activity/attestation.html

@@ -314,6 +314,7 @@
         th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript"
         th:src="@{/js/common/serviceapi/shopping.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/attestation.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/activity/beautyTopic.html

@@ -849,6 +849,7 @@
 <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/beautyTopic/utils.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/beautyTopic/layout.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/beautyTopic/mixin.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/activity/beautyTopic.js(v=${version})}"></script>
 <script>
     var isFormal = window.location.href.indexOf('www.caimei365.com') !== -1;

+ 2 - 1
src/main/resources/templates/article/detail.html

@@ -37,7 +37,7 @@
                 <span class="like icon mIcon" th:attr="data-count=*{likes}, data-id=*{id}" th:text="*{likes}"></span>
             </div>
             <p class="dea-tag">
-                <span th:each="label,labelStat:*{labels}" th:if="${not #strings.isEmpty(label)}">
+                <span class="dea-tag-li" th:each="label,labelStat:*{labels}" th:if="${not #strings.isEmpty(label)}">
                     <a th:each="labelId,idStat:*{labelIds}" th:if="${idStat.index==labelStat.index}" th:href="'/info/label-'+${labelId}+'-1.html'" th:text="${label}"></a>
                 </span>
             </p>
@@ -90,6 +90,7 @@
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" src="/lib/jquery.qrcode.min.js"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/article/common.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/article/detail.js(v=${version})}"></script>
 </body>
 </html>

+ 4 - 0
src/main/resources/templates/encyclopedia/components/footer.html

@@ -13,4 +13,8 @@
 </footer>
 <!-- 底部公共js -->
 <script src="/lib/jquery-3.6.0.min.js"></script>
+<script charset="utf-8" type="text/javascript" src="/lib/vue2.6.12.min.js"></script>
+<script charset="utf-8" type="text/javascript" src="/lib/jquery.slide-2.1.3.js"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/utils.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/base.js(v=${version})}"></script>
 <script th:src="@{/js/encyclopedia/common.js(v=${version})}" xmlns:th="https://www.thymeleaf.org"></script>

+ 3 - 2
src/main/resources/templates/encyclopedia/instrument-detail.html

@@ -18,7 +18,7 @@
 <!-- 引用公共头部 -->
 <template th:replace="encyclopedia/components/header"></template>
 
-<article class="article" th:object="${baikeInstrument}">
+<article class="article" th:object="${baikeInstrument}" id="encyclopedia">
     <!-- 仪器简述 -->
     <section class="section description">
         <div class="title">
@@ -28,7 +28,7 @@
         <div class="content">
             <div class="content-left">
                 <div class="names">
-                    <div class="name"><b>仪器名称:</b><span th:text="*{name}"></span></div>
+                    <div class="name"><b>仪器名称:</b><span id="discription" th:text="*{name}"></span></div>
                     <div class="alias">别名:<span th:text="*{alias}"></span></div>
                 </div>
                 <!-- 描述 -->
@@ -322,6 +322,7 @@
 <!-- 引用公共底部 -->
 <template th:replace="encyclopedia/components/footer"></template>
 <script charset="utf-8" type="text/javascript" src="/lib/viewer.min.js"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script th:src="@{/js/encyclopedia/detail.js(v=${version})}"></script>
 </body>
 </html>

+ 3 - 2
src/main/resources/templates/encyclopedia/product-detail.html

@@ -17,7 +17,7 @@
 <body>
 <!-- 引用公共头部 -->
 <template th:replace="encyclopedia/components/header"></template>
-<article class="article" th:object="${baikeProduct}">
+<article class="article" th:object="${baikeProduct}" id="encyclopedia">
     <!-- 产品简述 -->
     <section class="section description">
         <div class="title">
@@ -27,7 +27,7 @@
         <div class="content">
             <div class="content-left">
                 <div class="names">
-                    <div class="name"><b>产品名称:</b><span th:text="*{name}"></span></div>
+                    <div class="name"><b>产品名称:</b><span id="discription"  th:text="*{name}"></span></div>
                     <div class="alias">别名:<span th:text="*{alias}"></span></div>
                 </div>
                 <!-- 描述 -->
@@ -308,6 +308,7 @@
 <!-- 引用公共底部 -->
 <template th:replace="encyclopedia/components/footer"></template>
 <script charset="utf-8" type="text/javascript" src="/lib/viewer.min.js"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script th:src="@{/js/encyclopedia/detail.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/flea-market/detail.html

@@ -185,6 +185,7 @@
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" src="/lib/magnifier.js"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/second.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/flea-market/secondDetail.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/flea-market/form.html

@@ -222,6 +222,7 @@
 <script charset="utf-8" type="text/javascript"
         th:src="@{/js/common/serviceapi/second.service.js(v=${version})}"></script>
 <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/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/flea-market/form.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/flea-market/list.html

@@ -144,6 +144,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/second.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/flea-market/list.js(v=${version})}"></script>
 </body>
 </html>

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

@@ -582,6 +582,7 @@
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmsMixins.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/index.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/product/detail.html

@@ -772,6 +772,7 @@
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/shopping.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/beautyArchive.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/document/beautyArchiveDetailMixin.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/detail.js(v=${version})}"></script>
 </body>
 </html>

+ 17 - 16
src/main/resources/templates/product/instruelist.html

@@ -14,27 +14,27 @@
 <input type="hidden" th:value="${productCount}" id="productCount">
 <!-- 商品列表 -->
 <div id="productList" v-cloak>
+    <div class="crumbs-nav" v-if="isPC">
+        <div class="search-text">
+            <div class="crumbs-link"> 筛选条件: </div>
+            <div  class="crumbs-nav-main">
+                <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(bigTypeName)}" th:text="${bigTypeName}"></div>
+                <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(smallTypeName)}" th:text="${smallTypeName}"></div>
+                <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(tinyTypeName)}" th:text="${tinyTypeName}"></div>
+                <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(tinyTypeName)}" th:text="${tinyTypeName}"></div>
+            </div>
+        </div>
+        <div class="search-text-brand" v-if="isChoiceBrandText">
+            品牌:
+            <a href="javascript:void(0);">{{ choiceBrandText }}</a>
+            <i class="icon icon-del" @click="handleDeleteBrands"></i>
+        </div>
+    </div>
      <!--loading-->
     <div v-if="listLoading" class="loading">
         <img src="/img/base/loading.gif">
     </div>
     <template v-else>
-        <div class="crumbs-nav" v-if="isPC">
-            <div class="search-text">
-                <div class="crumbs-link"> 筛选条件: </div>
-                <div  class="crumbs-nav-main">
-                    <div class="crumbs-nav-item" th:if="not${#strings.isEmpty(bigTypeName)}" th:text="${bigTypeName}"></div>
-                    <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(smallTypeName)}" th:text="${smallTypeName}"></div>
-                    <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(tinyTypeName)}" th:text="${tinyTypeName}"></div>
-                    <div class="crumbs-nav-item on" th:if="not${#strings.isEmpty(tinyTypeName)}" th:text="${tinyTypeName}"></div>
-                </div>
-            </div>
-            <div class="search-text-brand" v-if="isChoiceBrandText">
-                品牌:
-                <a href="javascript:void(0);">{{ choiceBrandText }}</a>
-                <i class="icon icon-del" @click="handleDeleteBrands"></i>
-            </div>
-        </div>
         <div id="listClassify">
         <template v-if="isPC">
             <div class="classification">
@@ -287,6 +287,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/produce-list.js(v=${version})}"></script>
 </body>
 </html>

+ 4 - 0
src/main/resources/templates/product/instrument.html

@@ -13,6 +13,9 @@
 <template th:replace="components/header"></template>
 <div id="container">
     <div id="instrueMent" >
+        <th:block th:if="${typeFloorJson.get('contentLabel')}!=null" th:object="${typeFloorJson}">
+            <input type="hidden" th:value="${typeFloorJson.get('contentLabel')}" id="contentLabel">
+        </th:block>
         <div class="instrue-right" th:if="${typeFloorJson.get('hotSearchList')}!=null and ${typeFloorJson.get('hotSearchList').size}>0">
             <div class="wrap_tittle"> 大家都在搜<span class="line"></span></div>
             <div v-if="isPC" class="hot-search">
@@ -314,5 +317,6 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/instruement.js(v=${version})}"></script>
 </body>

+ 1 - 0
src/main/resources/templates/product/list.html

@@ -237,6 +237,7 @@
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript"
         th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/list.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/product/product-hot.html

@@ -205,6 +205,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/product-hot.js(v=${version})}"></script>
 </body>
 </html>

+ 1 - 0
src/main/resources/templates/product/temporary.html

@@ -828,5 +828,6 @@
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript"
         th:src="@{/js/common/serviceapi/product.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/product/temporary.js(v=${version})}"></script>
 </body>

+ 1 - 0
src/main/resources/templates/single-page/page.html

@@ -49,6 +49,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/pages.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/single-page/page.js(v=${version})}"></script>
 
 </body>

+ 1 - 0
src/main/resources/templates/single-page/topic.html

@@ -54,6 +54,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/pages.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/single-page/topic.js(v=${version})}"></script>
 </body>
 </html>

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

@@ -79,6 +79,7 @@
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/supplier.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/mixins/cmSysMixins.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/supplier/list.js(v=${version})}"></script>
 </body>
 </html>