Browse Source

资料库

zhengjinyi 4 years ago
parent
commit
dd52f9ec88

+ 42 - 0
src/main/java/com/caimei/www/controller/authorized/document/DocumentController.java

@@ -0,0 +1,42 @@
+package com.caimei.www.controller.authorized.document;
+
+import com.caimei.www.controller.BaseController;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.GetMapping;
+
+@Controller
+public class DocumentController extends BaseController {
+    /** 资料库登录 */
+    private static final String DOCUMENT_LOGIN = "document/login";
+    /** 资料列表 */
+    private static final String DOCUMENT_LIST = "document/list";
+    /** 资料详情 */
+    private static final String DOCUMENT_DETAILS = "document/details";
+    /** 更多资料 */
+    private static final String DOCUMENT_MORECONTENT= "document/more-content";
+
+
+    /** 资料库登录 */
+    @GetMapping("/document/login.html")
+    public String dashboard() {
+        return DOCUMENT_LOGIN;
+    }
+
+    /** 资料列表 */
+    @GetMapping("/document/list.html")
+    public String orderList() {
+        return DOCUMENT_LIST;
+    }
+
+    /** 资料详情 */
+    @GetMapping("/document/details.html")
+    public String orderDetail() {
+        return DOCUMENT_DETAILS;
+    }
+
+    /** 更多资料 */
+    @GetMapping("/document/more-content.html")
+    public String orderSettlement() {
+        return DOCUMENT_MORECONTENT;
+    }
+}

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

@@ -4,7 +4,7 @@ spring:
   #数据源连接--start
   datasource:
     #driverClassName: com.mysql.jdbc.Driver
-    url: jdbc:mysql://192.168.2.101:3306/caimei?characterEncoding=UTF8&serverTimezone=Asia/Shanghai
+    url: jdbc:mysql://192.168.2.100:3306/caimei?characterEncoding=UTF8&serverTimezone=Asia/Shanghai
     username: developer
     password: 05bZ/OxTB:X+yd%1
 #    url: jdbc:mysql://119.29.0.46:3306/caimei?characterEncoding=UTF8&serverTimezone=Asia/Shanghai
@@ -53,7 +53,7 @@ logging:
 # 服务域名
 caimei:
   siteEnv: 0 #网站环境,(2:正式环境,1:测试环境,0:开发环境)
-  spiServer: https://spi-b.caimei365.com
+  spiServer: http://192.168.2.56:8008
   imageDomain: https://img-b.caimei365.com
   wwwDomain: https://www-b.caimei365.com
 

+ 67 - 0
src/main/resources/static/css/document/details.css

@@ -0,0 +1,67 @@
+@charset "utf-8";
+li{list-style:none}
+.toLogin{display:none;}
+/**
+ * PC端
+ */
+@media screen and (min-width:768px){
+footer .footTop{display:none;}
+.loginWrap{width:950px;height:366px;overflow:hidden;background:#FFF url(/img/account/login.png) no-repeat 30px center;margin:95px auto;box-sizing:border-box;box-shadow:0 10px 20px 0 rgba(255,180,150,0.17);border-radius:2px}
+.loginForm{float:right;width:400px;padding:20px 24px;font-size:14px;position:relative}
+.loginForm h1{color:#22272e;font-size:24px;font-weight:bold;line-height:30px}
+.loginForm h2{color:#22272e;font-size:16px;font-weight:normal;line-height:24px}
+.loginForm form{margin-top:60px}
+.loginForm .formLine{height:70px;padding:0;}
+.loginForm input{height:48px;line-height:48px;}
+.loginForm .checked{top:14px;}
+.loginForm .forget{text-align:right;color:#4a4f58;font-size:14px;line-height:14px;margin-top:-10px}
+.loginForm .submit{height:44px;line-height:0;font-size:0;text-align:justify;margin-top:20px}
+.loginForm .submit:after{content:'';display:inline-block;width:100%}
+.loginForm .submit .btn{display:inline-block;box-sizing:border-box;width:192px;height:44px;line-height:44px;background-color:#ffe6dc;border-radius:2px;border:solid 1px #e15616;text-align:center;color:#e15616;font-size:14px;cursor:pointer}
+.loginForm .submit button.btn{background-color:#e15616;color:#FFF}
+.loginForm .submit .btn:hover{opacity:.8}
+.loginForm .codeBtn{position:absolute;right:0;top:0;width:100px;height:100px}
+.loginForm .codeBtn:before{width:100px;height:100px;background-position:-138px -146px}
+.loginForm .qrCodeBox{text-align:center}
+.loginForm .qrCode{width:168px;height:168px;border-radius:2px;border:solid 1px #ffb496;margin:27px auto 0 auto}
+.loginForm .qrInfo{text-align:center;height:44px;line-height:44px;font-size:16px;color:#93979f}
+.loginForm .changeBtn{display:inline-block;height:24px;line-height:24px;color:#e15616;font-size:16px;position:absolute;right:24px;top:20px}
+.loginForm .changeBtn:before{width:24px;height:24px;background-position:-175px -251px;vertical-align:top;margin-right:6px}
+.loginForm .showPwd{position:absolute;right:22px;top:16px;width:22px;height:16px;cursor:pointer}
+.loginForm .showPwd:before{width:22px;height:20px;background-position:-240px -299px}
+.loginForm .showPwd.on:before{width:22px;height:20px;background-position:-205px -299px}
+#qrCodeWrap{position:relative}
+#qrCodeWrap .model{position:absolute;width:200px;height:200px;top:15px;left:98px;display:flex;justify-content:center;align-items:center;background:rgba(255,255,255,1);color:#000;z-index:99999;cursor:pointer;border:1px solid #EBEBEB}
+#qrCodeWrap .model .refresh{width:21px;height:21px;display:block;margin:0 auto 3px}
+#qrCodeWrap .model .refresh-div{width:100px;height:64px;display:block}
+#qrCodeWrap .model .refresh-div p{text-align:center;font-size:14px;line-height:20px}
+.baseHeadCenter.account .accountLogin{display:none}
+
+
+}
+
+/**
+* 移动端
+*/
+@media screen and (max-width:768px){
+body{background:#FFF}
+footer{display:none}
+.loginForm .showPwd{display:none;}
+.loginForm{padding-top:4vw;text-align:center;background:#FFF url(/img/account/login_m.png) no-repeat center 25vw;background-size:57vw 43.2vw}
+.loginForm h1{color:#22272e;font-size:6.4vw;font-weight:bold;line-height:10vw}
+.loginForm h2{font-size:3.1vw;font-weight:normal;line-height:5.4vw;color:#627386}
+.loginForm form{width:93.4vw;margin:54vw auto 0}
+.loginForm .formLine{height:16.4vw;padding:0;}
+.loginForm input{height:11.2vw;line-height:6vw;padding: 2.6vw 0;box-sizing: border-box;}
+.loginForm .checked{top:3.6vw;right:3.6vw;}
+.loginForm .forget{text-align:right;color:#4a4f58;font-size:3.4vw;line-height:3.4vw;margin-bottom:4.8vw}
+.loginForm .submit{line-height:11.2vw;font-size:3.4vw;text-align:center;color:#22272e;}
+.loginForm .submit .btn{display:inline-block;box-sizing:border-box;width:100%;height:11.2vw;border:solid 1px #b8bfca;border-radius:2px;margin-bottom:4.8vw}
+.loginForm .submit button.btn{border-color:#e15616;background:#e15616;color:#FFF;}
+.loginForm .submit .weChat{display:block;margin:6vw auto;width:50vw;color:#627386;line-height:8vw}
+.loginForm .submit .weChat span{display:inline-block;width:100%}
+.loginForm .submit .weChat .mIcon:before{width:12vw;height:12vw;background-position:0 -77.8vw}
+
+
+
+}

+ 55 - 0
src/main/resources/static/css/document/list.css

@@ -0,0 +1,55 @@
+@charset "utf-8";
+li{list-style:none}
+.toLogin{display:none;}
+/**
+ * PC端
+ */
+@media screen and (min-width:768px){
+    body{background-color: #F7F7F7;}
+    ::-webkit-input-placeholder {
+        color: #ffffff;
+    }
+    :-moz-placeholder {/* Firefox 18- */
+        color: #ffffff;
+    }
+    ::-moz-placeholder{/* Firefox 19+ */
+        color: #ffffff;
+    }
+    :-ms-input-placeholder {
+        color: #ffffff;
+    }
+    .header{width: 100%;height: 80px;background: linear-gradient(90deg, #FF8B45, #E15616);box-sizing: border-box;padding: 18px 0;}
+    .wrap{width: 1200px;height: 100%;line-height: 44px;font-size: 20px;color: #ffffff;}
+    .wrap .logo{width: 52px;height: 44px;margin-right: 10px;}
+    .wrap .search{width: 400px;height: 44px;float: right;border-radius: 22px;background-color: rgba(255,255,255,0.16);box-sizing: border-box;padding: 0 20px;}
+    .wrap .search .input{width: 316px;height: 44px;background-color: rgba(255,255,255,0);box-sizing: border-box;border: none;font-size: 16px;color: #ffffff;}
+    .wrap .search .icon-search{width: 44px;height: 44px;float: right;box-sizing: border-box;padding: 10px;}
+    .wrap .search .icon-search img{width: 22px;height: 22px;display: block;}
+    .document-content{width: 100%;height: auto;float: left;}
+    .document-content .inner{width: 1200px;margin: 0 auto;}
+    .document-content .document-list{width: 100%;height: auto;margin-top: 40px;}
+    .document-list .list-item{width: 100%;min-height: 160px;background-color: #FFFFFF;border-radius: 4px;box-sizing: border-box;padding: 20px 20px 0 20px ;float: left;margin-bottom: 20px;}
+    .document-list .list-item .list-item-top{width: 100%;height:auto;float: left;padding-bottom:20px; }
+    .document-list .list-item .list-item-top .image{width: 140px;height: 120px;float: left;border: 1px solid #F3F6F9;border-radius: 4px;margin-right: 20px;}
+    .document-list .list-item .list-item-top .image img{width: 140px;height: 120px;display: block;}
+    .document-list .list-item .list-item-top .main {width: 800px;height: 120px;float: left;}
+    .document-list .list-item .list-item-top .main h1{font-weight: normal;font-size: 20px;line-height: 40px;color: #E15616;text-align: left;}
+    .document-list .list-item .list-item-top .main p{font-weight: normal;font-size: 16px;line-height: 34px;color: #666666;text-align: left;}
+    .document-list .list-item .list-item-bot{width: 100%;height: auto;padding: 20px 0;border-top: 1px solid #CFDBE2;float: left;}
+    .document-list .list-item .list-item-bot .pdf-li{width: 100%;height: 30px;line-height: 30px;font-size: 14px;color: #999999;float: left;margin: 5px 0;}
+    .document-list .list-item .list-item-bot .pdf-li .img{width: 30px;height: 30px;display: block;float: left;}
+    .document-list .list-item .list-item-bot .pdf-li .name{float: left;margin-left: 15px;cursor: pointer;}
+    .document-list .list-item .list-item-bot .pdf-li .name:hover{color: #E15616;}
+    .document-list .list-item .list-item-bot .pdf-li .time{float: right;}
+
+}
+
+/**
+* 移动端
+*/
+@media screen and (max-width:768px){
+
+
+
+
+}

+ 72 - 0
src/main/resources/static/css/document/login.css

@@ -0,0 +1,72 @@
+@charset "utf-8";
+li{list-style:none}
+.toLogin{display:none;}
+/**
+ * PC端
+ */
+@media screen and (min-width:768px){
+    .header{width: 100%;height: 80px;background: linear-gradient(90deg, #FF8B45, #E15616);box-sizing: border-box;padding: 18px 0;}
+    .wrap{width: 1200px;height: 100%;line-height: 44px;font-size: 20px;color: #ffffff;}
+    .wrap .logo{width: 52px;height: 44px;margin-right: 10px;}
+    .login-contailer{width: 100%;height: 1000px;background: url("/img/document/document_bg.jpg")no-repeat;background-size: cover;box-sizing: border-box;padding-top: 200px;}
+    .loginWrap{width:1100px;height:560px;overflow:hidden;background-color: #ffffff;margin:0 auto;box-sizing:border-box;box-shadow: 0px 0px 20px 0px rgba(227, 88, 24, 0.1);border-radius: 10px;}
+    .login-image{width: 490px;height: 560px;float: left;}
+    .loginForm{float:right;width:610px;height:560px;padding:90px 123px;font-size:14px;position:relative;box-sizing: border-box;}
+    .loginForm h1{color:#E15616;font-size:24px;font-weight:bold;line-height:30px;text-align: center;}
+    .loginForm form{margin-top:40px}
+    .loginForm .formLine{height:70px;padding:0;}
+    .loginForm input{height:48px;line-height:48px;}
+    .loginForm .checked{top:14px;}
+    .loginForm .submit{height:44px;line-height:0;font-size:0;text-align:justify;margin-top:20px}
+    .loginForm .submit:after{content:'';display:inline-block;width:100%}
+    .loginForm .submit .btn{display:inline-block;box-sizing:border-box;width: 360px;height: 48px;background: linear-gradient(90deg, #FF8B45, #E15616);border-radius: 4px;cursor: pointer;font-size: 18px;color: #ffffff;}
+    .loginForm .submit button.btn{background-color:#e15616;color:#FFF}
+    .loginForm .submit .btn:hover{opacity:.8}
+    .formLine.code input{width: 230px;float: left;}
+    .formLine.code .code-btn{width: 120px;height: 46px;background: #FFF8F3;border: 1px solid #E15616;border-radius: 4px;float: right;display: block;line-height: 48px;text-align: center;}
+    #codeMsg{display: inline-block;float: left;}
+    .loginForm .codeBtn{position:absolute;right:0;top:0;width:100px;height:100px;}
+    .loginForm .codeBtn:before{width:100px;height:100px;background-position:-138px -146px}
+    .loginForm .qrCodeBox{text-align:center}
+    .loginForm .qrCode{width:168px;height:168px;border-radius:2px;border:solid 1px #ffb496;margin:27px auto 0 auto}
+    .loginForm .qrInfo{text-align:center;height:44px;line-height:44px;font-size:16px;color:#93979f}
+    .loginForm .changeBtn{display:inline-block;height:24px;line-height:24px;color:#e15616;font-size:16px;position:absolute;right:24px;top:20px}
+    .loginForm .changeBtn:before{width:24px;height:24px;background-position:-175px -251px;vertical-align:top;margin-right:6px}
+    .loginForm .showPwd{position:absolute;right:22px;top:16px;width:22px;height:16px;cursor:pointer}
+    .loginForm .showPwd:before{width:22px;height:20px;background-position:-240px -299px}
+    .loginForm .showPwd.on:before{width:22px;height:20px;background-position:-205px -299px}
+    #qrCodeWrap{position:relative}
+    #qrCodeWrap .model{position:absolute;width:200px;height:200px;top:15px;left:98px;display:flex;justify-content:center;align-items:center;background:rgba(255,255,255,1);color:#000;z-index:99999;cursor:pointer;border:1px solid #EBEBEB}
+    #qrCodeWrap .model .refresh{width:21px;height:21px;display:block;margin:0 auto 3px}
+    #qrCodeWrap .model .refresh-div{width:100px;height:64px;display:block}
+    #qrCodeWrap .model .refresh-div p{text-align:center;font-size:14px;line-height:20px}
+    .baseHeadCenter.account .accountLogin{display:none}
+
+
+}
+
+/**
+* 移动端
+*/
+@media screen and (max-width:768px){
+body{background:#FFF}
+footer{display:none}
+.loginForm .showPwd{display:none;}
+.loginForm{padding-top:4vw;text-align:center;background:#FFF url(/img/account/login_m.png) no-repeat center 25vw;background-size:57vw 43.2vw}
+.loginForm h1{color:#22272e;font-size:6.4vw;font-weight:bold;line-height:10vw}
+.loginForm h2{font-size:3.1vw;font-weight:normal;line-height:5.4vw;color:#627386}
+.loginForm form{width:93.4vw;margin:54vw auto 0}
+.loginForm .formLine{height:16.4vw;padding:0;}
+.loginForm input{height:11.2vw;line-height:6vw;padding: 2.6vw 0;box-sizing: border-box;}
+.loginForm .checked{top:3.6vw;right:3.6vw;}
+.loginForm .forget{text-align:right;color:#4a4f58;font-size:3.4vw;line-height:3.4vw;margin-bottom:4.8vw}
+.loginForm .submit{line-height:11.2vw;font-size:3.4vw;text-align:center;color:#22272e;}
+.loginForm .submit .btn{display:inline-block;box-sizing:border-box;width:100%;height:11.2vw;border:solid 1px #b8bfca;border-radius:2px;margin-bottom:4.8vw}
+.loginForm .submit button.btn{border-color:#e15616;background:#e15616;color:#FFF;}
+.loginForm .submit .weChat{display:block;margin:6vw auto;width:50vw;color:#627386;line-height:8vw}
+.loginForm .submit .weChat span{display:inline-block;width:100%}
+.loginForm .submit .weChat .mIcon:before{width:12vw;height:12vw;background-position:0 -77.8vw}
+
+
+
+}

+ 67 - 0
src/main/resources/static/css/document/more-content.css

@@ -0,0 +1,67 @@
+@charset "utf-8";
+li{list-style:none}
+.toLogin{display:none;}
+/**
+ * PC端
+ */
+@media screen and (min-width:768px){
+footer .footTop{display:none;}
+.loginWrap{width:950px;height:366px;overflow:hidden;background:#FFF url(/img/account/login.png) no-repeat 30px center;margin:95px auto;box-sizing:border-box;box-shadow:0 10px 20px 0 rgba(255,180,150,0.17);border-radius:2px}
+.loginForm{float:right;width:400px;padding:20px 24px;font-size:14px;position:relative}
+.loginForm h1{color:#22272e;font-size:24px;font-weight:bold;line-height:30px}
+.loginForm h2{color:#22272e;font-size:16px;font-weight:normal;line-height:24px}
+.loginForm form{margin-top:60px}
+.loginForm .formLine{height:70px;padding:0;}
+.loginForm input{height:48px;line-height:48px;}
+.loginForm .checked{top:14px;}
+.loginForm .forget{text-align:right;color:#4a4f58;font-size:14px;line-height:14px;margin-top:-10px}
+.loginForm .submit{height:44px;line-height:0;font-size:0;text-align:justify;margin-top:20px}
+.loginForm .submit:after{content:'';display:inline-block;width:100%}
+.loginForm .submit .btn{display:inline-block;box-sizing:border-box;width:192px;height:44px;line-height:44px;background-color:#ffe6dc;border-radius:2px;border:solid 1px #e15616;text-align:center;color:#e15616;font-size:14px;cursor:pointer}
+.loginForm .submit button.btn{background-color:#e15616;color:#FFF}
+.loginForm .submit .btn:hover{opacity:.8}
+.loginForm .codeBtn{position:absolute;right:0;top:0;width:100px;height:100px}
+.loginForm .codeBtn:before{width:100px;height:100px;background-position:-138px -146px}
+.loginForm .qrCodeBox{text-align:center}
+.loginForm .qrCode{width:168px;height:168px;border-radius:2px;border:solid 1px #ffb496;margin:27px auto 0 auto}
+.loginForm .qrInfo{text-align:center;height:44px;line-height:44px;font-size:16px;color:#93979f}
+.loginForm .changeBtn{display:inline-block;height:24px;line-height:24px;color:#e15616;font-size:16px;position:absolute;right:24px;top:20px}
+.loginForm .changeBtn:before{width:24px;height:24px;background-position:-175px -251px;vertical-align:top;margin-right:6px}
+.loginForm .showPwd{position:absolute;right:22px;top:16px;width:22px;height:16px;cursor:pointer}
+.loginForm .showPwd:before{width:22px;height:20px;background-position:-240px -299px}
+.loginForm .showPwd.on:before{width:22px;height:20px;background-position:-205px -299px}
+#qrCodeWrap{position:relative}
+#qrCodeWrap .model{position:absolute;width:200px;height:200px;top:15px;left:98px;display:flex;justify-content:center;align-items:center;background:rgba(255,255,255,1);color:#000;z-index:99999;cursor:pointer;border:1px solid #EBEBEB}
+#qrCodeWrap .model .refresh{width:21px;height:21px;display:block;margin:0 auto 3px}
+#qrCodeWrap .model .refresh-div{width:100px;height:64px;display:block}
+#qrCodeWrap .model .refresh-div p{text-align:center;font-size:14px;line-height:20px}
+.baseHeadCenter.account .accountLogin{display:none}
+
+
+}
+
+/**
+* 移动端
+*/
+@media screen and (max-width:768px){
+body{background:#FFF}
+footer{display:none}
+.loginForm .showPwd{display:none;}
+.loginForm{padding-top:4vw;text-align:center;background:#FFF url(/img/account/login_m.png) no-repeat center 25vw;background-size:57vw 43.2vw}
+.loginForm h1{color:#22272e;font-size:6.4vw;font-weight:bold;line-height:10vw}
+.loginForm h2{font-size:3.1vw;font-weight:normal;line-height:5.4vw;color:#627386}
+.loginForm form{width:93.4vw;margin:54vw auto 0}
+.loginForm .formLine{height:16.4vw;padding:0;}
+.loginForm input{height:11.2vw;line-height:6vw;padding: 2.6vw 0;box-sizing: border-box;}
+.loginForm .checked{top:3.6vw;right:3.6vw;}
+.loginForm .forget{text-align:right;color:#4a4f58;font-size:3.4vw;line-height:3.4vw;margin-bottom:4.8vw}
+.loginForm .submit{line-height:11.2vw;font-size:3.4vw;text-align:center;color:#22272e;}
+.loginForm .submit .btn{display:inline-block;box-sizing:border-box;width:100%;height:11.2vw;border:solid 1px #b8bfca;border-radius:2px;margin-bottom:4.8vw}
+.loginForm .submit button.btn{border-color:#e15616;background:#e15616;color:#FFF;}
+.loginForm .submit .weChat{display:block;margin:6vw auto;width:50vw;color:#627386;line-height:8vw}
+.loginForm .submit .weChat span{display:inline-block;width:100%}
+.loginForm .submit .weChat .mIcon:before{width:12vw;height:12vw;background-position:0 -77.8vw}
+
+
+
+}

BIN
src/main/resources/static/img/document/document_bg.jpg


BIN
src/main/resources/static/img/document/document_img.png


BIN
src/main/resources/static/img/document/document_logo.png


BIN
src/main/resources/static/img/document/icon-search.png


+ 19 - 0
src/main/resources/static/js/common/serviceapi/document.service.js

@@ -0,0 +1,19 @@
+/* HTTP API 二手业务模块
+ * Copyright 2020, CAIMEI365
+ * Date   2020/11/10
+ * auther zhj
+ */
+var DocumentApi = {
+        SecondHandProduct: function (params, callback) {//发布信息
+            Http.AjaxService({ url:'/product/releaseSecondHandProduct', type:'post', data:params, json:false, mask:true,replace:false})
+            .then(function(res){
+                callback(res);
+            });
+        },
+        SeconHandProductList: function (params, callback) {//商品列表
+            Http.AjaxService({ url:'/product/getSecondHandProductList', type:'get', data:params, json:true, mask:true,replace:false})
+            .then(function(res){
+                callback(res);
+            });
+        },
+};

+ 209 - 0
src/main/resources/static/js/document/details.js

@@ -0,0 +1,209 @@
+var loginPage = new Vue({
+    el: "#loginPage",
+    data: {
+        maxtime:60,
+        loginLoading: false,
+        qrCodeLogin: false,
+        loginAccount: '',
+        loginPassword: '',
+        rule:{
+            account: "(^([\\w-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$)|(^\\d{6,12}$)",
+            password: "^[^\\u4e00-\\u9fa5]{6,30}$"
+        },
+        userData: {
+            account: '',
+            email: '',
+            phone: '',
+            name: '',
+            userName: '',
+            userId: '',
+            spId: '',
+            clubId: '',
+            shopId: '',
+            identity: '',
+            permission: '',
+            token: ''
+        },
+        isWeChat: false
+    },
+    computed: {
+
+    },
+    methods: {
+        toQrCodeLogin: function(){//切换微信登录二维码
+            var _self = this;
+            var timeClock = null;
+            this.qrCodeLogin = true;
+            UserApi.ToWechatLogin({},function(response){
+                var wxLogin = new WxLogin({
+                        self_redirect: true,
+                        id: "qrCodeWrap",
+                        appid: response.data.AppId,
+                        scope: 'snsapi_login',
+                        redirect_uri: response.data.redirect_uri,
+                        state: response.data.state,
+                        style: "black",
+                        href: "https://www.caimei365.com/css/base/base.pc.css"
+                });
+                timeClock = setInterval(function(){
+                    _self.maxtime--;
+                    if (_self.maxtime == 0) {
+                        clearInterval(timeClock);
+                    };
+                },1000);
+                _self.getWrchatStatusData({uuid:response.data.state})
+            });
+        },
+        getWrchatStatusData:function(params){//轮询查询用户是否扫描过二维码登录
+            var _self = this;
+            var timer = null;
+            UserApi.ToWechatPolling(params,function(response){
+                if(response.code == -90){
+                    if(_self.maxtime == 0){
+                        clearInterval(timer);
+                        _self.maxtime = 60;
+                        $('#qrCodeWrap').append('<div class="model"><div class="refresh-div"><img class="refresh" src="/img/base/shua.png" alt=""><p>二维码已失效,点击刷新</p></div></div>');
+                        $('#qrCodeWrap .model').click(function () {
+                            $(this).remove();
+                            _self.toQrCodeLogin();
+                        })
+                    }else{
+                        timer = setTimeout(function(){
+                            _self.getWrchatStatusData(params);
+                        },3000)
+                    }
+                }else {
+                    clearTimeout(timer); //清理定时任务
+                    if(response.code == 0){
+                        _self.userData = {
+                            account: response.data.account,
+                            email: response.data.email,
+                            phone: response.data.bindMobile,
+                            name: response.data.name,
+                            userName: response.data.userName,
+                            userId: response.data.userID,
+                            spId: response.data.serviceProviderID,
+                            clubId: response.data.clubID,
+                            shopId: response.data.shopID,
+                            userIdentity: response.data.userIdentity,
+                            permission: response.data.userPermission,
+                            token: response.data.token
+                        };
+                        _self.setStorages( _self.userData);
+                        // 登录成功页面跳转
+                        var loginBeforePath = getBaseCookie("loginBeforePath");
+                        if (loginBeforePath && loginBeforePath!='undefined' && loginBeforePath.indexOf('.html')>0) {
+                            delBaseCookie("loginBeforePath");
+                            window.location.href = loginBeforePath;
+                        } else if (_self.userData.userIdentity*1 === 3) {
+                            location.href = '/supplier/dashboard.html';
+                        } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) {
+                            location.href = '/user/dashboard.html';
+                        } else {
+                            location.href="/index.html";
+                        }
+                    }else if(response.code == -4){
+                        window.location.href = '/bind.html';
+                    }
+                }
+            });
+        },
+        // 微信公众号授权登录
+        weChatLogin: function(){
+            if (this.isWeChat) {
+                // 微信浏览器自动授权登录
+                var urlForWeChat = 'https://www.caimei365.com/we_chat/redirect_uri.html';
+                $.get(spiServer+'/user/authorizationLink?mode=2&redirectUri='+urlForWeChat, function(r){
+                    if(r.code===0 && r.data){
+                        setBaseCookie("weChatAutoLogin", 2);
+                        window.location.href = r.data;
+                    }
+                });
+            }
+        },
+        toNormalLogin: function(){
+            this.qrCodeLogin = false;
+        },
+        showPassword: function(event) {
+            var el = event.currentTarget;
+            var pwdEle = $(el).siblings('input');
+            if(pwdEle.attr('type') === 'password') {
+                $(el).addClass('on');
+                pwdEle.attr('type','text');
+            } else {
+                $(el).removeClass('on');
+                pwdEle.attr('type','password');
+            }
+        },
+        blurHandle: function(event) {  // 失去焦点校验
+            var el = event.currentTarget;
+            verifyHandle(el);
+        },
+        loginSubmit: function () {  // 账号登录
+            var _self = this;
+            var pass = verifyForm();
+            if (this.loginLoading) { return false; }
+            this.$nextTick(function(){
+                if (!pass) { return false; }
+                _self.loginLoading = true;
+                var params =  {mobileOrEmail: _self.loginAccount,password: _self.loginPassword,source: 'www'};
+                UserApi.PostLoginAccount(params,function(response){
+                    _self.loginLoading = false;
+                    if(response.code === 0){
+                        _self.userData = {
+                            account: response.data.account,
+                            email: response.data.email,
+                            phone: response.data.bindMobile,
+                            name: response.data.name,
+                            userName: response.data.userName,
+                            userId: response.data.userID,
+                            spId: response.data.serviceProviderID,
+                            clubId: response.data.clubID,
+                            shopId: response.data.shopID,
+                            userIdentity: response.data.userIdentity,
+                            permission: response.data.userPermission,
+                            token: response.data.token
+                        };
+                        _self.setStorages( _self.userData);
+                        // 登录成功页面跳转
+                        var loginBeforePath = getBaseCookie("loginBeforePath");
+                        if (loginBeforePath && loginBeforePath!='undefined' && loginBeforePath.indexOf('.html')>0) {
+                            delBaseCookie("loginBeforePath");
+                            window.location.href = loginBeforePath;
+                        } else if (_self.userData.userIdentity*1 === 3) {
+                            location.href = '/supplier/dashboard.html';
+                        } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) {
+                            location.href = '/user/dashboard.html';
+                        } else {
+                            location.href="/index.html";
+                        }
+                    } else {// 登录失败
+                        CAIMEI.Alert(response.msg,'确定',false);
+                    }
+                });
+            });
+        },
+        setStorages:function(data){//存储本地数据
+            localStorage.setItem('userInfo',JSON.stringify(data));
+        }
+    },
+    created: function () {
+        var userAgent = navigator.userAgent.toLowerCase();
+        this.isWeChat = userAgent.match(/MicroMessenger/i);
+        // this.weChatAutoLogin();
+    },
+    mounted: function () {
+        var _self = this;
+        $('body').on("focus",'[needverify]:visible',function(){
+            $(this).siblings('.errTips').removeClass("show").siblings('.checked').removeClass("show");
+        });
+        //enter键登录
+        $(document).keyup(function (e) {
+            var e = e || event;
+            e.stopPropagation();
+            if (e.keyCode === 13) {
+                _self.loginSubmit();
+            }
+        });
+    }
+});

+ 627 - 0
src/main/resources/static/js/document/list.js

@@ -0,0 +1,627 @@
+var documentList = new Vue({
+    el: "#documentList",
+    data: {
+        requestFlag: true,
+        userId: 0,
+        supplierInfo:{},
+        supplierBanner: [],
+        mainProducts:[],
+        params: {
+            size: 12,
+            num: 1,
+            id: 0,
+            keyword: ''
+        },
+        listRecord:0,
+        productLists:[],
+        pagesProductList:[
+            {
+                "id":6,
+                "type":null,
+                "title":"品牌仪器",
+                "detail":"科医人 赛诺龙 路创丽 Jeisys 华熙生物",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/C2/Cmis2F-b03iAbm6AAAB-3AQ2ab4270.jpg",
+                "floorData":[
+                    {
+                        "id":19,
+                        "status":null,
+                        "title":"脸部抗衰仪器系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-22.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/C2/Cmis2F-b03iAbm6AAAB-3AQ2ab4270.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":23,
+                        "status":null,
+                        "title":"脱毛嫩肤仪器系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-20.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R9kaAE5-iAACBMZJBjPU450.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":22,
+                        "status":null,
+                        "title":"瘦身塑形仪器系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-49.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R9HeAP5lxAACLzIoow4k828.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":56,
+                        "status":null,
+                        "title":"激光仪器系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-228.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R9GuAQslKAABsHxQEqMs728.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":55,
+                        "status":null,
+                        "title":"光子嫩肤仪器系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-227.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R9IWAPcPfAACGRRPiWNI482.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":10,
+                "type":null,
+                "title":"科学护肤品",
+                "detail":"敏感肌  痘痘肌  黑色素  多效修复  净化角质",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6kGAedqnAAEFz7A20Dk764.jpg",
+                "floorData":[
+                    {
+                        "id":45,
+                        "status":null,
+                        "title":"华熙米蓓尔皮肤护理系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%25E7%25B1%25B3%25E8%2593%2593%25E5%25B0%2594&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6kGAedqnAAEFz7A20Dk764.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":26,
+                        "status":null,
+                        "title":"优斐斯液体敷料系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/prolist-1285.html?brandID=67",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6fiALawUAAC9Gw_OU98595.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":29,
+                        "status":null,
+                        "title":"肌本演绎舒缓系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/web/supplier/view/supplierHomePage.jsp?shopId=1248",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6bmAaIdDAAD3eoag-y4911.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":57,
+                        "status":null,
+                        "title":"上海汇融舜华颜冻干安瓶",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/web/supplier/view/supplierHomePage.jsp?shopId=1259",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6ZSACbCsAACzgFjQRcs111.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":62,
+                        "status":null,
+                        "title":"韩国恩盛VITAL水光面膜",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/product-3893.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/D1/Cmis21-aHICADWnZAAGWiXX_syA466.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":11,
+                "type":null,
+                "title":"高端院用产品",
+                "detail":"皮肤护理  紧致抗衰  玻尿酸补水嫩肤 ",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/B4/Cmis2F9XMo2AELI3AAO-S150ml8816.jpg",
+                "floorData":[
+                    {
+                        "id":32,
+                        "status":null,
+                        "title":"德玛莉肌活系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/prolist-1267.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B4/Cmis2F9XMo2AELI3AAO-S150ml8816.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":58,
+                        "status":null,
+                        "title":"美生美稚龄长效童颜",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/product-3669.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6tqAb9oFAAEnv5BPpTA032.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":61,
+                        "status":null,
+                        "title":"BIOLINE高端护肤系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/index.html?id=1225",
+                        "image":"https://img.caimei365.com/group1/M00/03/BF/Cmis2F-Gcn6AKqTSAAEhEKsbcVs589.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":31,
+                        "status":null,
+                        "title":"肌本演绎高端护肤系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/web/supplier/view/supplierHomePage.jsp?shopId=1248",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6qyAB2CTAAC4XyL7zAg816.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":51,
+                        "status":null,
+                        "title":"优斐斯护肤系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/prolist-1285.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B2/Cmis2F9R6qOAREllAADzyGgdFoY829.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":4,
+                "type":null,
+                "title":"术后修护",
+                "detail":"皮肤屏障修复 净肤  美白 私密养护",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/BF/Cmis2F-GcJCAWAqdAB7ucSzYvvA841.jpg",
+                "floorData":[
+                    {
+                        "id":60,
+                        "status":null,
+                        "title":"肌本演绎修护系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/index.html?id=1248",
+                        "image":"https://img.caimei365.com/group1/M00/03/BF/Cmis2F-GcJCAWAqdAB7ucSzYvvA841.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":59,
+                        "status":null,
+                        "title":"优斐斯修护系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/index.html?id=1285",
+                        "image":"https://img.caimei365.com/group1/M00/03/BF/Cmis2F-GcFqAXiioAAFxGLPuidY392.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":36,
+                        "status":null,
+                        "title":"伯纳赫点斗修护系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-132.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R_5eAOfXIAADU3Nytmv0342.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":47,
+                        "status":null,
+                        "title":"Reyoungel瑞漾修护系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/prolist-1211.html?brandID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/3C/Cmis21y-xz2AHSu0AAGcagKhNL0844.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":53,
+                        "status":null,
+                        "title":"UPLANT宫龄修护系列",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/supplier/prolist-1247.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/5C/Cmis211CTB2ARsSXAACVJxRbLsc158.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":12,
+                "type":null,
+                "title":"导入液 针剂 ",
+                "detail":"水光导入液 塑形针剂 配套耗材",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R-XKAGQppAADFs1u-igo687.jpg",
+                "floorData":[
+                    {
+                        "id":50,
+                        "status":null,
+                        "title":"青春抗衰动能素",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-182.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R-XKAGQppAADFs1u-igo687.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":39,
+                        "status":null,
+                        "title":"无针水光导入液",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-138.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R-WmAJ48rAAChfUHq0jE879.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":43,
+                        "status":null,
+                        "title":"补水 塑形针剂",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-141.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R-V2ADyOEAAEnv5BPpTA478.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":40,
+                        "status":null,
+                        "title":"小气泡溶液",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-139.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9R-VCACzDVAADJ7-QlA04237.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":42,
+                        "status":null,
+                        "title":"治疗头",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/cmpage/info-1-142.html",
+                        "image":"https://img.caimei365.com/group1/M00/01/17/Cmis21vESJGAJ-L8AACdGTWUK_Y617.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":3,
+                "type":null,
+                "title":"项目仪器",
+                "detail":"紧致抗衰 私密养护 美白祛斑 减脂塑形",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SAH6ASXTuAAB-HRqRRMI866.jpg",
+                "floorData":[
+                    {
+                        "id":11,
+                        "status":null,
+                        "title":"除皱抗衰项目系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-39.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SAH6ASXTuAAB-HRqRRMI866.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":10,
+                        "status":null,
+                        "title":"美白祛斑项目系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-38.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/9A/Cmis2F8H3g6AZrebAAB-P2l3KJQ806.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":9,
+                        "status":null,
+                        "title":"祛妊娠纹项目系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-40.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/9A/Cmis2F8H3gWASntuAADIG70r2WM840.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":7,
+                        "status":null,
+                        "title":"瘦身塑形项目系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-7.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SDIyADjOuAAChTjRFOmI030.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":6,
+                        "status":null,
+                        "title":"私密养护项目系列",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/cmpage/info-1-41.html",
+                        "image":"https://img.caimei365.com/group1/M00/03/9A/Cmis2F8H3fOAE8UeAABaHH4JaDo889.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            },
+            {
+                "id":5,
+                "type":null,
+                "title":"会所常用品",
+                "detail":"面膜粉 洁面巾 卸妆棉 按摩精油",
+                "link":null,
+                "subFloors":false,
+                "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCp6AbxEmAACsLXphp3o046.jpg",
+                "floorData":[
+                    {
+                        "id":12,
+                        "status":null,
+                        "title":"按摩精油",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%25E6%258C%2589%25E6%2591%25A9%25E7%25B2%25BE%25E6%25B2%25B9&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCp6AbxEmAACsLXphp3o046.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":13,
+                        "status":null,
+                        "title":"软膜粉",
+                        "detail":null,
+                        "link":"https://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%2520%25E8%25BD%25AF%25E8%2586%259C%25E7%25B2%2589&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCpiALQVKAADRAwxVJyU552.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":15,
+                        "status":null,
+                        "title":"卸妆棉",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%25E5%258C%2596%25E5%25A6%2586%25E6%25A3%2589&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCpGAAnfkAACLsfmvAUM980.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":14,
+                        "status":null,
+                        "title":"无纺布制品",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%25E6%2597%25A0%25E7%25BA%25BA%25E5%25B8%2583&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCouABo2yAABoFVyTJ3A443.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    },
+                    {
+                        "id":8,
+                        "status":null,
+                        "title":"洁面巾",
+                        "detail":null,
+                        "link":"http://www.caimei365.com/product/search/list/0-0-0-1-0.html?wd=%25E6%25B4%2581%25E9%259D%25A2%25E5%25B7%25BE&amp;searchTypeID=0",
+                        "image":"https://img.caimei365.com/group1/M00/03/B3/Cmis2F9SCoaAf0xsAADEJHhV2oM348.jpg",
+                        "beginTime":'2020-11-10 17:10',
+                        "endTime":null
+                    }
+                ]
+            }
+        ],
+    },
+    computed: {
+
+    },
+    methods: {
+        getShopInfo: function(){
+            var _self = this;
+            $.getJSON(spiServer + "/supplier/home/detail",{supplierId: this.params.id}).done(function (r) {
+                if (r.code === 0 && r.data) {
+                    _self.supplierInfo = r.data;
+                }
+            });
+        },
+        getBanners: function(){
+            var _self = this;
+            $.getJSON(spiServer + "/supplier/home/images",{supplierId: this.params.id}).done(function (r) {
+                if (r.code === 0 && r.data) {
+                    _self.supplierBanner = r.data;
+                    _self.supplierBanner = r.data;
+                    setTimeout(function(){
+                        if (isPC) {
+                            $('#supplierBanner').slide({
+                                mainCell:".swiper-wrapper"
+                                ,titCell:".swiper-pagination span"
+                                ,effect: "leftLoop"
+                                ,prevCell:".swiper-button-prev"
+                                ,nextCell:".swiper-button-next"
+                                ,interTime: 2000
+                                ,autoPlay: true
+                                ,autoPage: false
+                                ,trigger: "mouseover"
+                            });
+                        } else {
+                            var swiper = new Swiper('#supplierBanner', {
+                                loop : true,
+                                autoplay: {
+                                    delay: 2000,
+                                    disableOnInteraction: false
+                                },
+                                navigation: {
+                                    nextEl: '.swiper-button-next',
+                                    prevEl: '.swiper-button-prev'
+                                },
+                                pagination: {
+                                    el: '.swiper-pagination',
+                                    clickable :true
+                                }
+                            });
+                        }
+                    },500);
+                }
+            });
+        },
+        getMainProducts: function(){
+            var _self = this;
+            $.getJSON(spiServer + "/supplier/home/products",{supplierId: this.params.id}).done(function (r) {
+                if (r.code === 0 && r.data) {
+                    if(_self.userId && _self.userId>0){
+                        var productIdArr = [];
+                        r.data.map(function (item) {
+                            // 0公开价格 1不公开价格 2仅对会员机构公开
+                            if (item.priceFlag !== 1) {
+                                productIdArr.push(item.id)
+                            }
+                        });
+                        setProductPrice(r.data, productIdArr.join(","), _self.userId, function () {
+                            _self.$forceUpdate();
+                            setTimeout(function(){
+                                // 图片懒加载
+                                $("img[data-original]").lazyload();
+                            },500);
+                        });
+                    }
+                    _self.mainProducts = r.data;
+                }
+            });
+        },
+        getProductLists: function(){
+            var _self = this;
+            $.getJSON(spiServer + "/search/query/product/supplier",{
+                keyword: _self.params.keyword,
+                pageSize: _self.params.size,
+                pageNum: _self.params.num,
+                id:_self.params.id
+            }, function (r) {
+                if (r.code === 0 && r.data) {
+                    var result = JSON.parse(r.data);
+                    _self.listRecord = result.total;
+                    var resultData = setSearchProductList(result.items, _self.userId, function(){
+                        _self.$forceUpdate();
+                        setTimeout(function(){
+                            // 图片懒加载
+                            $("img[data-original]").lazyload();
+                        },500);
+                    });
+                    _self.productLists = _self.productLists.concat(resultData);
+                }
+                _self.requestFlag = true;
+            })
+        },
+        keyupSearch: function(event) {
+            // 搜索输入框 按回车键搜索
+            var keyCode = event.keyCode || event.which;
+            if(keyCode === 13){
+                this.supplierSearch();
+            }
+        },
+        supplierSearch: function(){
+            if (this.params.keyword.length < 2) {
+                $.confirm({
+                    useBootstrap: false,
+                    boxWidth: (isPC?'300px':'70%'),
+                    title:'提示',
+                    content:'请至少输入两个关键字!',
+                    closeIcon: true,
+                    animation: 'opacity',
+                    closeAnimation: 'opacity',
+                    animateFromElement: false,
+                    buttons: {
+                        close: {
+                            text: '确定',
+                            btnClass: 'btn-confirm'
+                        }
+                    }
+                });
+                return false;
+            }
+            this.productLists = [];
+            this.getProductLists();
+            var floorScroll = $('#supProduct').offset().top;
+            $('html,body').animate({scrollTop: floorScroll},600);
+        },
+        upgrade: function () {
+            location.href='/upgrade.html';
+        }
+    },
+    created: function () {
+        this.params.id = getUrlParam("id") ? getUrlParam("id") * 1 : 0;
+        if(this.params.id !== 0) {
+            this.getShopInfo();
+            this.getBanners();
+        }
+    },
+    mounted: function () {
+        if(this.params.id !== 0) {
+            this.getMainProducts();
+            this.getProductLists();
+        }
+        var userInfo = localStorage.getItem('userInfo');
+        if(userInfo){
+            this.userId = JSON.parse(userInfo).userId;
+        }
+        var _self = this;
+        $('.supplierInfo').slide({
+            mainCell:".tabCon"
+            ,titCell:".tabTit span"
+            ,trigger: "click"
+        });
+        //上垃加载更多
+        $(window).on('scroll', function(){
+            var scrollTop = $(this).scrollTop();
+            var scrollHeight = $(document).height();
+            var 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;
+                if(next <= totalPage){
+                    if (_self.requestFlag){
+                        _self.params.num = next;
+                        // 获取列表数据
+                        _self.getProductLists();
+                    }
+                    _self.requestFlag = false;
+                }
+            }
+        });
+        $('body').on("click", '.showSearch', function(){
+            $('.supplierTit .search').show();
+        })
+    }
+});

+ 166 - 0
src/main/resources/static/js/document/login.js

@@ -0,0 +1,166 @@
+var loginPage = new Vue({
+    el: "#loginPage",
+    data: {
+        maxtime:60,
+        loginLoading: false,
+        qrCodeLogin: false,
+        loginAccount: '',
+        activateCode: '',
+        showClass:'',
+        mobilCount:0,
+        mobileCodeText:'获取验证码',
+        mobilTime:null,
+        isMobileDisabled:false,
+        emailCount:0,
+        emailCodeText:'获取验证码',
+        emailTime:null,
+        isEmailDisabled:false,
+        isCodeModel:false,
+        codeImagePath:'',
+        codeImageToken:'',
+        imageCode:'',
+        rule:{
+            phone: '^\\d{6,12}$',
+            code: '^\\d{6}$',
+        },
+        isWeChat: false
+    },
+    computed: {
+
+    },
+    methods: {
+        getMobileImage:function() {//获取图形验证码
+            var _self = this;
+            var pass = verifyCheack('.massageBtn');
+            if (_self.isMobileDisabled) { return false; }
+            this.$nextTick(function() {
+                if (!pass) {
+                    return false;
+                }
+                PublicApi.getImgVerifyCode({platformType: 0},function(response){
+                    if(response.code == 0){
+                        _self.imageCode = '';
+                        _self.codeImagePath = response.data.baseImage;
+                        _self.codeImageToken = response.data.token;
+                        _self.isCodeModel = true;
+                    }else{
+                        CAIMEI.Alert(response.msg,'确定',false);
+                    }
+                })
+            });
+        },
+        getMobileCodeFn:function(){//机构注册获取注册短信验证码
+            var _self = this;
+            var params = {
+                mobile:_self.phonePwd.mobileOrEmail,
+                imgCode:_self.imageCode,
+                token:_self.codeImageToken,
+                activateCodeType:1,
+                platformType:0
+            };
+            _self.isMobileDisabled = true;
+            UserApi.getRegisterMobileCode(params,function (response) {
+                if(response.code == 0){
+                    _self.isCodeModel = false;
+                    CAIMEI.dialog('验证短信已发送',false,function () {});
+                    var TIME_COUNT = 60;
+                    if (!_self.mobilTime) {
+                        _self.mobilCount = TIME_COUNT;
+                        _self.isMobileDisabled = true;
+                        _self.mobilTime = setInterval(function(){
+                            if (_self.mobilCount > 1 && _self.mobilCount <= TIME_COUNT) {
+                                _self.mobilCount--;
+                                _self.mobileCodeText = _self.mobilCount +'s重新发送';
+                            } else {
+                                _self.isMobileDisabled = false;
+                                clearInterval(_self.mobilTime);
+                                _self.mobilTime = null;
+                                _self.mobileCodeText = '获取验证码';
+                            }
+                        },1000)
+                    }
+                }else{
+                    CAIMEI.Alert(response.msg,'确定',false);
+                    _self.isMobileDisabled = false;
+                    _self.isCodeModel = false;
+                }
+            })
+        },
+        blurHandle: function(event) {  // 失去焦点校验
+            var el = event.currentTarget;
+            verifyHandle(el);
+        },
+        refreshCodeImage:function(){
+            this.getMobileImage()
+        },
+        closeCodeModel:function(){
+            this.isCodeModel = false;
+        },
+        loginSubmit: function () {  // 账号登录
+            var _self = this;
+            var pass = verifyForm();
+            if (this.loginLoading) { return false; }
+            this.$nextTick(function(){
+                if (!pass) { return false; }
+                _self.loginLoading = true;
+                var params =  {mobileOrEmail: _self.loginAccount,password: _self.loginPassword,source: 'www'};
+                UserApi.PostLoginAccount(params,function(response){
+                    _self.loginLoading = false;
+                    if(response.code === 0){
+                        _self.userData = {
+                            account: response.data.account,
+                            email: response.data.email,
+                            phone: response.data.bindMobile,
+                            name: response.data.name,
+                            userName: response.data.userName,
+                            userId: response.data.userID,
+                            spId: response.data.serviceProviderID,
+                            clubId: response.data.clubID,
+                            shopId: response.data.shopID,
+                            userIdentity: response.data.userIdentity,
+                            permission: response.data.userPermission,
+                            token: response.data.token
+                        };
+                        _self.setStorages( _self.userData);
+                        // 登录成功页面跳转
+                        var loginBeforePath = getBaseCookie("loginBeforePath");
+                        if (loginBeforePath && loginBeforePath!='undefined' && loginBeforePath.indexOf('.html')>0) {
+                            delBaseCookie("loginBeforePath");
+                            window.location.href = loginBeforePath;
+                        } else if (_self.userData.userIdentity*1 === 3) {
+                            location.href = '/supplier/dashboard.html';
+                        } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) {
+                            location.href = '/user/dashboard.html';
+                        } else {
+                            location.href="/index.html";
+                        }
+                    } else {// 登录失败
+                        CAIMEI.Alert(response.msg,'确定',false);
+                    }
+                });
+            });
+        },
+        setStorages:function(data){//存储本地数据
+            localStorage.setItem('userInfo',JSON.stringify(data));
+        }
+    },
+    created: function () {
+        var userAgent = navigator.userAgent.toLowerCase();
+        this.isWeChat = userAgent.match(/MicroMessenger/i);
+        // this.weChatAutoLogin();
+    },
+    mounted: function () {
+        var _self = this;
+        $('body').on("focus",'[needverify]:visible',function(){
+            $(this).siblings('.errTips').removeClass("show").siblings('.checked').removeClass("show");
+        });
+        //enter键登录
+        $(document).keyup(function (e) {
+            var e = e || event;
+            e.stopPropagation();
+            if (e.keyCode === 13) {
+                _self.loginSubmit();
+            }
+        });
+    }
+});

+ 209 - 0
src/main/resources/static/js/document/more-content.js

@@ -0,0 +1,209 @@
+var loginPage = new Vue({
+    el: "#loginPage",
+    data: {
+        maxtime:60,
+        loginLoading: false,
+        qrCodeLogin: false,
+        loginAccount: '',
+        loginPassword: '',
+        rule:{
+            account: "(^([\\w-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$)|(^\\d{6,12}$)",
+            password: "^[^\\u4e00-\\u9fa5]{6,30}$"
+        },
+        userData: {
+            account: '',
+            email: '',
+            phone: '',
+            name: '',
+            userName: '',
+            userId: '',
+            spId: '',
+            clubId: '',
+            shopId: '',
+            identity: '',
+            permission: '',
+            token: ''
+        },
+        isWeChat: false
+    },
+    computed: {
+
+    },
+    methods: {
+        toQrCodeLogin: function(){//切换微信登录二维码
+            var _self = this;
+            var timeClock = null;
+            this.qrCodeLogin = true;
+            UserApi.ToWechatLogin({},function(response){
+                var wxLogin = new WxLogin({
+                        self_redirect: true,
+                        id: "qrCodeWrap",
+                        appid: response.data.AppId,
+                        scope: 'snsapi_login',
+                        redirect_uri: response.data.redirect_uri,
+                        state: response.data.state,
+                        style: "black",
+                        href: "https://www.caimei365.com/css/base/base.pc.css"
+                });
+                timeClock = setInterval(function(){
+                    _self.maxtime--;
+                    if (_self.maxtime == 0) {
+                        clearInterval(timeClock);
+                    };
+                },1000);
+                _self.getWrchatStatusData({uuid:response.data.state})
+            });
+        },
+        getWrchatStatusData:function(params){//轮询查询用户是否扫描过二维码登录
+            var _self = this;
+            var timer = null;
+            UserApi.ToWechatPolling(params,function(response){
+                if(response.code == -90){
+                    if(_self.maxtime == 0){
+                        clearInterval(timer);
+                        _self.maxtime = 60;
+                        $('#qrCodeWrap').append('<div class="model"><div class="refresh-div"><img class="refresh" src="/img/base/shua.png" alt=""><p>二维码已失效,点击刷新</p></div></div>');
+                        $('#qrCodeWrap .model').click(function () {
+                            $(this).remove();
+                            _self.toQrCodeLogin();
+                        })
+                    }else{
+                        timer = setTimeout(function(){
+                            _self.getWrchatStatusData(params);
+                        },3000)
+                    }
+                }else {
+                    clearTimeout(timer); //清理定时任务
+                    if(response.code == 0){
+                        _self.userData = {
+                            account: response.data.account,
+                            email: response.data.email,
+                            phone: response.data.bindMobile,
+                            name: response.data.name,
+                            userName: response.data.userName,
+                            userId: response.data.userID,
+                            spId: response.data.serviceProviderID,
+                            clubId: response.data.clubID,
+                            shopId: response.data.shopID,
+                            userIdentity: response.data.userIdentity,
+                            permission: response.data.userPermission,
+                            token: response.data.token
+                        };
+                        _self.setStorages( _self.userData);
+                        // 登录成功页面跳转
+                        var loginBeforePath = getBaseCookie("loginBeforePath");
+                        if (loginBeforePath && loginBeforePath!='undefined' && loginBeforePath.indexOf('.html')>0) {
+                            delBaseCookie("loginBeforePath");
+                            window.location.href = loginBeforePath;
+                        } else if (_self.userData.userIdentity*1 === 3) {
+                            location.href = '/supplier/dashboard.html';
+                        } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) {
+                            location.href = '/user/dashboard.html';
+                        } else {
+                            location.href="/index.html";
+                        }
+                    }else if(response.code == -4){
+                        window.location.href = '/bind.html';
+                    }
+                }
+            });
+        },
+        // 微信公众号授权登录
+        weChatLogin: function(){
+            if (this.isWeChat) {
+                // 微信浏览器自动授权登录
+                var urlForWeChat = 'https://www.caimei365.com/we_chat/redirect_uri.html';
+                $.get(spiServer+'/user/authorizationLink?mode=2&redirectUri='+urlForWeChat, function(r){
+                    if(r.code===0 && r.data){
+                        setBaseCookie("weChatAutoLogin", 2);
+                        window.location.href = r.data;
+                    }
+                });
+            }
+        },
+        toNormalLogin: function(){
+            this.qrCodeLogin = false;
+        },
+        showPassword: function(event) {
+            var el = event.currentTarget;
+            var pwdEle = $(el).siblings('input');
+            if(pwdEle.attr('type') === 'password') {
+                $(el).addClass('on');
+                pwdEle.attr('type','text');
+            } else {
+                $(el).removeClass('on');
+                pwdEle.attr('type','password');
+            }
+        },
+        blurHandle: function(event) {  // 失去焦点校验
+            var el = event.currentTarget;
+            verifyHandle(el);
+        },
+        loginSubmit: function () {  // 账号登录
+            var _self = this;
+            var pass = verifyForm();
+            if (this.loginLoading) { return false; }
+            this.$nextTick(function(){
+                if (!pass) { return false; }
+                _self.loginLoading = true;
+                var params =  {mobileOrEmail: _self.loginAccount,password: _self.loginPassword,source: 'www'};
+                UserApi.PostLoginAccount(params,function(response){
+                    _self.loginLoading = false;
+                    if(response.code === 0){
+                        _self.userData = {
+                            account: response.data.account,
+                            email: response.data.email,
+                            phone: response.data.bindMobile,
+                            name: response.data.name,
+                            userName: response.data.userName,
+                            userId: response.data.userID,
+                            spId: response.data.serviceProviderID,
+                            clubId: response.data.clubID,
+                            shopId: response.data.shopID,
+                            userIdentity: response.data.userIdentity,
+                            permission: response.data.userPermission,
+                            token: response.data.token
+                        };
+                        _self.setStorages( _self.userData);
+                        // 登录成功页面跳转
+                        var loginBeforePath = getBaseCookie("loginBeforePath");
+                        if (loginBeforePath && loginBeforePath!='undefined' && loginBeforePath.indexOf('.html')>0) {
+                            delBaseCookie("loginBeforePath");
+                            window.location.href = loginBeforePath;
+                        } else if (_self.userData.userIdentity*1 === 3) {
+                            location.href = '/supplier/dashboard.html';
+                        } else if (_self.userData.userIdentity*1 === 2 || _self.userData.userIdentity*1 === 4) {
+                            location.href = '/user/dashboard.html';
+                        } else {
+                            location.href="/index.html";
+                        }
+                    } else {// 登录失败
+                        CAIMEI.Alert(response.msg,'确定',false);
+                    }
+                });
+            });
+        },
+        setStorages:function(data){//存储本地数据
+            localStorage.setItem('userInfo',JSON.stringify(data));
+        }
+    },
+    created: function () {
+        var userAgent = navigator.userAgent.toLowerCase();
+        this.isWeChat = userAgent.match(/MicroMessenger/i);
+        // this.weChatAutoLogin();
+    },
+    mounted: function () {
+        var _self = this;
+        $('body').on("focus",'[needverify]:visible',function(){
+            $(this).siblings('.errTips').removeClass("show").siblings('.checked').removeClass("show");
+        });
+        //enter键登录
+        $(document).keyup(function (e) {
+            var e = e || event;
+            e.stopPropagation();
+            if (e.keyCode === 13) {
+                _self.loginSubmit();
+            }
+        });
+    }
+});

+ 65 - 0
src/main/resources/templates/document/details.html

@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html lang="zh-CN" xmlns:th="https://www.thymeleaf.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+      xsi:schemaLocation="https://www.thymeleaf.org ">
+<head>
+    <title>采美365网--医疗美容生活美容正品采购平台</title>
+    <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/account/login.css(v=${version})}" rel="stylesheet" type="text/css">
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 二级页面 -->
+<div id="loginPage">
+    <div class="loginWrap clear">
+        <div class="loginForm">
+            <div class="title">
+                <h1>欢迎登录</h1>
+                <h2>生美 / 医美采购服务平台</h2>
+            </div>
+            <form v-show="!qrCodeLogin">
+                <div class="formLine">
+                    <input type="text" v-model="loginAccount" placeholder="请输入邮箱或手机号" :rule="rule.account" maxlength="30" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请提供正确的邮箱或手机号码"></span>
+                </div>
+                <div class="formLine">
+                    <input type="password" v-model="loginPassword" placeholder="请输入密码" :rule="rule.password" maxlength="30" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的密码"></span>
+                    <i class="icon showPwd" @click="showPassword($event)"></i>
+                </div>
+                <div class="forget">
+                    <a href="/forget.html">忘记密码?</a>
+                </div>
+                <div class="submit clear">
+                    <a v-if="isPC" class="btn" href="/register.html">免费注册</a>
+                    <button class="btn" type="button" @click="loginSubmit()">登录</button>
+                    <a v-if="!isPC" class="btn" href="/register.html">免费注册</a>
+                    <a v-if="!isPC && isWeChat" class="weChat" @click="weChatLogin()" href="javascript:void(0);">
+                        <span>微信授权登录</span><i class="mIcon"></i>
+                    </a>
+                </div>
+                <a v-if="isPC" href="javascript:void(0);" class="codeBtn icon" @click="toQrCodeLogin()"></a>
+            </form>
+            <div v-if="isPC" v-show="qrCodeLogin" class="qrCodeBox">
+                <a href="javascript:void(0);" class="changeBtn icon" @click="toNormalLogin()">账号登录</a>
+                <div id="qrCodeWrap">
+                    <div class="qrCode"><img src="" alt=""></div>
+                    <div class="qrInfo">请使用微信扫描二维码登录“采美365网”</div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- 引入底部 -->
+<template th:replace="components/footer"></template>
+<template th:replace="components/foot-link"></template>
+<script charset="utf-8" type="text/javascript" src="https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></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/account/login.js(v=${version})}"></script>
+</body>
+</html>

+ 58 - 0
src/main/resources/templates/document/list.html

@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html lang="zh-CN" xmlns:th="https://www.thymeleaf.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+      xsi:schemaLocation="https://www.thymeleaf.org ">
+<head>
+    <title>采美365网--医疗美容生活美容正品采购平台</title>
+    <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/document/list.css(v=${version})}" rel="stylesheet" type="text/css">
+</head>
+<body>
+<!-- 二级页面 -->
+<div id="documentList">
+    <!-- 引用头部 -->
+    <header id="globalHead" xmlns:th="http://www.w3.org/1999/xhtml">
+        <div class="header document">
+            <div class="wrap clear">
+                <img class="logo" src="/img/document/document_logo.png" alt="采美 生美/医美采购服务平台"/>
+                <span>采美资料库</span>
+                <div class="search">
+                    <input class="input" type="text" placeholder="请输入商品名/资料库名/资料名">
+                    <div class="icon-search">
+                        <img src="/img/document/icon-search.png" alt="">
+                    </div>
+                </div>
+            </div>
+        </div>
+        <input type="hidden" th:value="${spiServer}" id="spiServer">
+        <input type="hidden" th:value="${agent}" id="userAgent">
+    </header>
+    <div class="document-content">
+        <div class="inner">
+            <div class="document-list">
+                <div class="list-item" v-for="(item,index) in pagesProductList" :key="index">
+                    <div class="list-item-top">
+                        <div class="image"><img :src="item.image" alt=""></div>
+                        <div class="main">
+                            <h1>供应商:{{ item.title }}</h1>
+                            <p>商品名称:{{ item.detail }}</p>
+                            <p>资料库名称:{{ item.detail }}</p>
+                        </div>
+                    </div>
+                    <div class="list-item-bot" v-if="item.subFloors">
+                        <div class="pdf-li" v-for="(pdf,idx) in item.floorData" :key="idx">
+                            <img class="img" src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3803097572,3132492008&fm=26&gp=0.jpg" alt="">
+                            <p class="name">{{ pdf.title }}</p>
+                            <p class="time">{{ pdf.beginTime }}</p>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<!-- 引入底部 -->
+<template th:replace="components/foot-link"></template>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/document.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/document/list.js(v=${version})}"></script>
+</body>
+</html>

+ 76 - 0
src/main/resources/templates/document/login.html

@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<html lang="zh-CN" xmlns:th="https://www.thymeleaf.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+      xsi:schemaLocation="https://www.thymeleaf.org ">
+<head>
+    <title>采美365网--医疗美容生活美容正品采购平台</title>
+    <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/document/login.css(v=${version})}" rel="stylesheet" type="text/css">
+</head>
+<body>
+<!-- 引用头部 -->
+<header id="globalHead" xmlns:th="http://www.w3.org/1999/xhtml">
+    <div class="header document">
+        <div class="wrap clear">
+            <img class="logo" src="/img/document/document_logo.png" alt="采美 生美/医美采购服务平台"/>
+            <span>采美资料库</span>
+        </div>
+    </div>
+    <input type="hidden" th:value="${spiServer}" id="spiServer">
+    <input type="hidden" th:value="${agent}" id="userAgent">
+</header>
+<!-- 二级页面 -->
+<div id="loginPage">
+    <div class="login-contailer">
+        <div class="loginWrap clear">
+            <div class="login-image">
+                <img src="/img/document/document_img.png" alt="">
+            </div>
+            <div class="loginForm">
+                <div class="title">
+                    <h1>欢迎登录</h1>
+                </div>
+                <form v-show="!qrCodeLogin">
+                    <div class="formLine">
+                        <input type="text" v-model="loginAccount" placeholder="请输入手机号" :rule="rule.phone" maxlength="30" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入正确的手机号"></span>
+                    </div>
+                    <div class="formLine code">
+                        <input type="text" v-model="activateCode" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                        <a class="code-btn" href="javascript:void(0);" @click="getMobileImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效短信验证码" id="codeMsg"></span>
+                    </div>
+                    <div class="submit clear">
+                        <button class="btn" type="button" @click="loginSubmit()">登录</button>
+                    </div>
+                </form>
+            </div>
+        </div>
+    </div>
+    <div class="content-model"  :class="isCodeModel ? 'active' : ''">
+        <div class="model-main">
+            <div class="model-title"><p>获取短信验证码</p><i class="icon mIcon icon-close"  @click="closeCodeModel"></i></div>
+            <div class="model-content">
+                <div class="model-form">
+                    <input class="input" type="text" placeholder="请输入图形验证码" v-model="imageCode" maxlength="4">
+                    <div class="image"><img :src="codeImagePath" alt=""></div>
+                    <div class="refresh" @click="refreshCodeImage">
+                        <i class="icon mIcon"></i>
+                        <span>刷新</span>
+                    </div>
+                </div>
+                <div class="model-button">
+                    <div class="button"  @click="getMobileCodeFn">获取短信验证码</div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<!-- 引入底部 -->
+<template th:replace="components/foot-link"></template>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/document.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/document/login.js(v=${version})}"></script>
+</body>
+</html>

+ 65 - 0
src/main/resources/templates/document/more-content.html

@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html lang="zh-CN" xmlns:th="https://www.thymeleaf.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+      xsi:schemaLocation="https://www.thymeleaf.org ">
+<head>
+    <title>采美365网--医疗美容生活美容正品采购平台</title>
+    <template th:replace="components/head-link"></template>
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/account/login.css(v=${version})}" rel="stylesheet" type="text/css">
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 二级页面 -->
+<div id="loginPage">
+    <div class="loginWrap clear">
+        <div class="loginForm">
+            <div class="title">
+                <h1>欢迎登录</h1>
+                <h2>生美 / 医美采购服务平台</h2>
+            </div>
+            <form v-show="!qrCodeLogin">
+                <div class="formLine">
+                    <input type="text" v-model="loginAccount" placeholder="请输入邮箱或手机号" :rule="rule.account" maxlength="30" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请提供正确的邮箱或手机号码"></span>
+                </div>
+                <div class="formLine">
+                    <input type="password" v-model="loginPassword" placeholder="请输入密码" :rule="rule.password" maxlength="30" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的密码"></span>
+                    <i class="icon showPwd" @click="showPassword($event)"></i>
+                </div>
+                <div class="forget">
+                    <a href="/forget.html">忘记密码?</a>
+                </div>
+                <div class="submit clear">
+                    <a v-if="isPC" class="btn" href="/register.html">免费注册</a>
+                    <button class="btn" type="button" @click="loginSubmit()">登录</button>
+                    <a v-if="!isPC" class="btn" href="/register.html">免费注册</a>
+                    <a v-if="!isPC && isWeChat" class="weChat" @click="weChatLogin()" href="javascript:void(0);">
+                        <span>微信授权登录</span><i class="mIcon"></i>
+                    </a>
+                </div>
+                <a v-if="isPC" href="javascript:void(0);" class="codeBtn icon" @click="toQrCodeLogin()"></a>
+            </form>
+            <div v-if="isPC" v-show="qrCodeLogin" class="qrCodeBox">
+                <a href="javascript:void(0);" class="changeBtn icon" @click="toNormalLogin()">账号登录</a>
+                <div id="qrCodeWrap">
+                    <div class="qrCode"><img src="" alt=""></div>
+                    <div class="qrInfo">请使用微信扫描二维码登录“采美365网”</div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- 引入底部 -->
+<template th:replace="components/footer"></template>
+<template th:replace="components/foot-link"></template>
+<script charset="utf-8" type="text/javascript" src="https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></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/account/login.js(v=${version})}"></script>
+</body>
+</html>

+ 1 - 1
src/main/resources/templates/user-center/order/detail.html

@@ -106,7 +106,7 @@
                                                 <div class="info">
                                                     <p v-if="pros.productCategory != 2">规格:<span class="none">{{pros.productUnit ? pros.productUnit : ''}}</span> </p>
                                                     <p>数量:<span class="none">{{pros.num}}</span> </p>
-                                                    <p>单价:<span class="none">¥{{pros.price | NumFormat}}</span><span class="red" v-show="pros.includedTaxFlag === '1' || pros.includedTaxFlag === '2'">({{ pros.includedTaxFlag | formatIncludedTax }})</span></p>
+                                                    <p>单价:<span class="none">¥{{pros.price | NumFormat}}</span></p>
                                                     <p>税率:<span class="none">{{pros.taxRate}}%</span></p>
                                                     <p>折扣:<span class="none">{{pros.discount == null ? '0' : pros.discount}}%</span></p>
                                                     <p>折后单价:<span class="none">¥{{pros.discountPrice | NumFormat}}</span></p>