xiebaomin 1 rok temu
rodzic
commit
cfb2b49186

+ 8 - 0
src/main/java/com/caimei/www/controller/unlimited/ProductController.java

@@ -35,6 +35,7 @@ public class ProductController extends BaseController {
     private static final String INSTRUMENT_PAGE_PATH = "product/instrument";
     private static final String TEMPORARY_PAGE_PATH = "product/temporary";
     private static final String INSTRUMENT_LIST_PATH = "product/instruelist";
+    private static final String PRODUCT_PREVIEW = "product/preview";
     // private static final String QUALITY_AUTHORRIZE_PATH = "product/qualityauthorize";
     /**
      * 新正品联盟页面
@@ -338,6 +339,13 @@ public class ProductController extends BaseController {
         return INSTRUMENT_LIST_PATH;
     }
 
+    /**
+     * 商品资料预览
+     */
+    @GetMapping("/product/preview.html")
+    public String productPreview() {
+        return PRODUCT_PREVIEW;
+    }
     /**
      * 美博会专题页
      */

+ 1 - 1
src/main/resources/static/js/account/login.js

@@ -1,6 +1,6 @@
 var loginPage = new Vue({
     el: "#loginPage",
-    mixins: [cmSysVitaMixins,loginMixins],
+    mixins: [cmSysVitaMixins,dataBaseShare,loginMixins],
     data: {
         maxtime:60,
         loginLoading: false,

+ 130 - 128
src/main/resources/static/js/account/mixins/loginMixins.js

@@ -1,128 +1,130 @@
-// 登录
-var loginMixins = function () {
-    return {
-        data() {
-            return {
-                isCodeModel:false,
-                isInputsTrue:true,
-                codeImagePath:'',
-                codeImageToken:'',
-                accountParams: {// 账号密码登录
-                    mobileOrEmail: '', //用户登录账号
-                    password: '', //用户登录密码
-                },
-                codeParams:{// 验证码登录
-                    mobile:'',
-                    code:''
-                },
-                smsCodeParams:{// 获取手机短信验证码
-                    mobile: '', //用户登录手机号
-                    token:'',
-                    imgCode:'',
-                    platformType:0,
-                    isCheckCaptcha:0,
-                    activateCodeType:7
-                },
-            }
-        },
-        methods: {
-            handleSubLogin(){// 点击账号密码登录
-                const _self = this;
-                if (this.loginLoading) { return false; }
-                this.$nextTick(function(){
-                    if (!verifyForm()) { return false; }
-                    _self.loginLoading = true;
-                    UserApi.PostLoginAccount(_self.accountParams,function(response){
-                        _self.userUpdataeStatus(response)
-                    });
-                });
-            },
-            handleCodeLogin(){// 短信验证码登录
-                const _self = this;
-                if (this.loginLoading) { return false; }
-                this.$nextTick(function(){
-                    if (!verifyForm()) { return false; }
-                    _self.loginLoading = true;
-                    UserApi.userCodeLogin(_self.codeParams,function(response){
-                        _self.userUpdataeStatus(response)
-                    });
-                });
-            },
-            handleCheckMobile(){// 校验手机是否已注册
-                const _self = this;
-                if (!verifyCheack('.massageBtn')) { return false; }
-                if (this.isMobileDisabled) { return false; }
-                UserApi.userCheckePhone({mobile: this.smsCodeParams.mobile},function(response){
-                    if(response.code === 0){
-                        _self.handleShowImage();
-                    }else{
-                        setErrorTxt($('.massageBtn'),response.msg)
-                    }
-                })
-            },
-            handleShowImage() {//获取图形验证码
-                const _self = this;
-                PublicApi.getImgVerifyCode({platformType: 0},function(response){
-                    if(response.code === 0){
-                        _self.smsCodeParams.imgCode = '';
-                        _self.codeImagePath = response.data.baseImage;
-                        _self.smsCodeParams.token = response.data.token;
-                        _self.isCodeModel = true;
-                    }else{
-                        CAIMEI.Alert(response.msg,'确定',false);
-                    }
-                })
-            },
-            handleMobileCode(){// 点击获取短信验证码
-                const _self = this;
-                if( this.isMobileDisabled){ return }
-                this.$nextTick(function() {
-                    if (!verifyCheack('.codeMsgButton')) { return false; }
-                    UserApi.getRegisterMobileCode(_self.smsCodeParams,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{
-                            _self.handleShowImage();
-                            _self.isMobileDisabled = false;
-                            setErrorTxt($('.codeMsgButton'),response.msg)
-                        }
-                    })
-                })
-            },
-            handleRefreshCodeImage:function(){
-                this.handleShowImage()
-            },
-            handleCodeMobileInput(e){// 监听输入手机号
-                this.codeParams.mobile = this.smsCodeParams.mobile = e.target.value;
-                this.handleCheckInput()
-            },
-            handleCodeInput(e){// 监听输入短信验证码
-                this.codeParams.code = e.target.value;
-                this.handleCheckInput()
-            },
-            handleCheckInput() {// 控制按钮按钮高亮
-                this.isInputsTrue = !(this.codeParams.mobile !== '' && this.codeParams.code !== '')
-            },
-            handleCloseCodeModel:function(){
-                this.isCodeModel = false;
-            },
-        }
-    }
-}();
+// 登录
+var loginMixins = function () {
+    return {
+        data() {
+            return {
+                isCodeModel:false,
+                isInputsTrue:true,
+                codeImagePath:'',
+                codeImageToken:'',
+                accountParams: {// 账号密码登录
+                    mobileOrEmail: '', //用户登录账号
+                    password: '', //用户登录密码
+                },
+                codeParams:{// 验证码登录
+                    mobile:'',
+                    code:''
+                },
+                smsCodeParams:{// 获取手机短信验证码
+                    mobile: '', //用户登录手机号
+                    token:'',
+                    imgCode:'',
+                    platformType:0,
+                    isCheckCaptcha:0,
+                    activateCodeType:7
+                },
+            }
+        },
+        methods: {
+            handleSubLogin(){// 点击账号密码登录
+                const _self = this;
+                if (this.loginLoading) { return false; }
+                this.$nextTick(function(){
+                    if (!verifyForm()) { return false; }
+                    _self.loginLoading = true;
+                    UserApi.PostLoginAccount(_self.accountParams,function(response){
+                        _self.requireBaseLoginStatus(response)
+                        _self.userUpdataeStatus(response)
+                    });
+                });
+            },
+            handleCodeLogin(){// 短信验证码登录
+                const _self = this;
+                if (this.loginLoading) { return false; }
+                this.$nextTick(function(){
+                    if (!verifyForm()) { return false; }
+                    _self.loginLoading = true;
+                    UserApi.userCodeLogin(_self.codeParams,function(response){
+                        _self.requireBaseLoginStatus(response)
+                        _self.userUpdataeStatus(response)
+                    });
+                });
+            },
+            handleCheckMobile(){// 校验手机是否已注册
+                const _self = this;
+                if (!verifyCheack('.massageBtn')) { return false; }
+                if (this.isMobileDisabled) { return false; }
+                UserApi.userCheckePhone({mobile: this.smsCodeParams.mobile},function(response){
+                    if(response.code === 0){
+                        _self.handleShowImage();
+                    }else{
+                        setErrorTxt($('.massageBtn'),response.msg)
+                    }
+                })
+            },
+            handleShowImage() {//获取图形验证码
+                const _self = this;
+                PublicApi.getImgVerifyCode({platformType: 0},function(response){
+                    if(response.code === 0){
+                        _self.smsCodeParams.imgCode = '';
+                        _self.codeImagePath = response.data.baseImage;
+                        _self.smsCodeParams.token = response.data.token;
+                        _self.isCodeModel = true;
+                    }else{
+                        CAIMEI.Alert(response.msg,'确定',false);
+                    }
+                })
+            },
+            handleMobileCode(){// 点击获取短信验证码
+                const _self = this;
+                if( this.isMobileDisabled){ return }
+                this.$nextTick(function() {
+                    if (!verifyCheack('.codeMsgButton')) { return false; }
+                    UserApi.getRegisterMobileCode(_self.smsCodeParams,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{
+                            _self.handleShowImage();
+                            _self.isMobileDisabled = false;
+                            setErrorTxt($('.codeMsgButton'),response.msg)
+                        }
+                    })
+                })
+            },
+            handleRefreshCodeImage:function(){
+                this.handleShowImage()
+            },
+            handleCodeMobileInput(e){// 监听输入手机号
+                this.codeParams.mobile = this.smsCodeParams.mobile = e.target.value;
+                this.handleCheckInput()
+            },
+            handleCodeInput(e){// 监听输入短信验证码
+                this.codeParams.code = e.target.value;
+                this.handleCheckInput()
+            },
+            handleCheckInput() {// 控制按钮按钮高亮
+                this.isInputsTrue = !(this.codeParams.mobile !== '' && this.codeParams.code !== '')
+            },
+            handleCloseCodeModel:function(){
+                this.isCodeModel = false;
+            },
+        }
+    }
+}();

+ 5 - 2
src/main/resources/static/js/account/register-club.js

@@ -1,6 +1,6 @@
 var registerPage = new Vue({
     el: "#registerPage",
-    mixins: [cmSysVitaMixins],
+    mixins: [cmSysVitaMixins,dataBaseShare],
     data: {
         loginLoading: false,
         showTabContentIndex:1,
@@ -113,6 +113,8 @@ var registerPage = new Vue({
                     CAIMEI.dialog('两次密码输入不一致',false,function () {});
                     return;
                 }
+                const shareParams = JSON.parse(sessionStorage.getItem('saveParams'))
+                const spId = (_self.isAgreed && shareParams.spId) ? shareParams.spId : '';
                 var params = {
                         source:0,
                         userName : _self.clubUser.name,
@@ -123,12 +125,13 @@ var registerPage = new Vue({
                         isAgreed :  _self.isAgreed,
                         isSp: _self.clubUser.isSp,
                         insideFLag:0, //内外部协销标记 0内部协销,1外部协销
-                        spId: '', // 协销分享的id
+                        spId, // 协销分享的id
                 };
                 _self.loginLoading = true;
                 UserApi.ClubRegister(params,function (response) {
                     if(response.code === 0){
                         CAIMEI.dialog('注册成功!',true,function () {
+                            _self.requireBaseLoginStatus(response)
                             _self.clubLogin();
                             _self.showTabContentIndex = 2;
                             _self.loginLoading = false;

+ 361 - 335
src/main/resources/static/js/document/beautyArchiveDetailMixin.js

@@ -1,335 +1,361 @@
-//商品资料库vue混入对象
-
-var beautyArchiveDetailMixin = {
-    data: {
-        listLoading: false,
-        //用户信息相关
-        permission: 5, //用户权限  0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
-        //页面配置
-        archiveId: '',  //资料列表id
-        currentVideoUrl: '', //正在播放的视频链接(上一个播放的的视频)
-        currentVideo: '',
-        showVideoDialog: false,
-        isPlayer: false, //是否正在播放
-        imageGroup: {},
-        keyword: '',
-        imageArchiveList: [],  // 图片资料列表
-        videoArchiveList: [], // 视频资料列表
-        fileArchiveList: [], // 文件资料列表
-        defaultImage: 'https://static.caimei365.com/app/img/icon2/PC-default.png',  // 默认图片
-        videoCover: 'https://static.caimei365.com/app/img/icon2/video-cover.png', //默认视频封面
-        archiveProductInfo: {},
-        relatedLabels:'',
-        archiveProductInfo: {},
-        userInfo: {}, // 用户信息
-        num:0,
-    },
-    filters: {
-        // 时间格式化
-        formatTime: function (val) {
-            return moment(new Date(val)).format('YYYY-MM-DD hh:mm:ss');
-        }
-    },
-    computed: {
-        //资料查看状态提示
-        TipStatus: function () {
-            // 资料权限
-            var statusText = [
-                false,
-                {text: '请登录后查看!', btn: '去登录', redirect: '/login.html'},
-                {text: '请升级成为会员机构后方可查看!', btn: '去升级', redirect: '/user/setting/upgrade.html'},
-                {text: '请升级成为医美会员机构后方可查看!', btn: '去升级', redirect: '/user/setting/upgrade.html'},
-                {text: '需抵扣100采美豆方可查看!', btn: '去查看', redirect: 10},
-                {text: '无权限查看!', btn: '确认'}
-            ];
-            // 0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
-            return statusText[this.permission];
-        }
-    },
-    methods: {
-        // 文件浏览记录
-        GetStatisticsAddPv(type, authorId) {
-            BeautyArchiveApi.GetStatisticsAddPv({type, authorId}, () => {
-                console.log("浏览记录成功")
-            })
-        },
-        // 图片点击事件
-        handleShowImage: function (i, imageList, info) {
-            if (info) {
-                this.GetStatisticsAddPv(1, info.archiveContentId)
-            }
-            if (this.permission === 2 || this.permission === 4 || this.permission === 1) {
-                if (imageList && imageList.length >= 5) {
-                    if (i < 2) {
-                        this.initPreviewImage()
-                    } else {
-                        if (this.checkPermission() !== 0) return;
-                    }
-                }else {
-                    if (this.checkPermission() !== 0) return;
-                }
-            } else {
-                if (this.checkPermission() !== 0) return;
-            }
-        },
-        //初始化预览图片配置
-        initPreviewImage: function () {
-            var imageGroup = {};
-            var imageEls = document.querySelectorAll('.cm-images');
-            if(imageEls.length <= 0) return;
-            imageEls.forEach(function (imageEl, index) {
-                imageGroup['cm-images-' + index] = new Viewer(imageEl);
-            });
-            this.imageGroup = imageGroup;
-        },
-        //显示视频播放窗口
-        handleShowPlayer: function (url, dom, info) {
-            if (info) {
-                this.GetStatisticsAddPv(1, info.archiveContentId)
-            }
-            if (this.permission === 2 || this.permission === 4 || this.permission === 1) {
-                let _self = this;
-                //暂停上一个正在播放的播放器
-                this.currentVideoUrl = url;
-                this.isPlayer = true;
-                this.showVideoDialog = true;
-                setTimeout(function(){
-                    _self.currentVideo = document.querySelector('#realPlayer');
-                    if(_self.permission === 2 || _self.permission === 4 || _self.permission === 1) {
-                        _self.currentVideo.oncanplay = function () {
-                            console.log(_self.currentVideo.duration)
-                            if (parseInt((_self.currentVideo.duration % 3600)/60) < 10) {
-                                _self.isPlayer = false;
-                                _self.showVideoDialog = false;
-                                _self.currentVideo.pause()
-                                if (_self.checkPermission() !== 0) return;
-                            }
-                            if (parseInt((_self.currentVideo.duration % 3600)/60) >= 10) {
-                                _self.currentVideo.play()
-                            }
-                            _self.currentVideo.addEventListener('timeupdate', () =>{
-                                // if() {}
-                                if (parseInt(_self.currentVideo.currentTime) >= 3) {
-                                    _self.isPlayer = false;
-                                    _self.showVideoDialog = false;
-                                    _self.currentVideo.pause()
-                                    if (_self.checkPermission() !== 0) return;
-                                }
-                            })
-                        }
-
-                    }
-                })
-            } else {
-                let _self = this;
-                if (_self.checkPermission() !== 0) return;
-                //暂停上一个正在播放的播放器
-                this.currentVideoUrl = url;
-                this.isPlayer = true;
-                this.showVideoDialog = true;
-                setTimeout(function(){
-                    _self.currentVideo = document.querySelector('#realPlayer');
-                    _self.currentVideo.addEventListener('pause', function () {
-                        _self.isPlayer = false;
-                        console.log('暂停播放');
-                    });
-                    _self.currentVideo.addEventListener('ended', function () {
-                        _self.isPlayer = false;
-                        console.log('播放结束');
-                    });
-                    _self.currentVideo.addEventListener('error', function () {
-                        _self.isPlayer = false;
-                        console.log('播放错误');
-                    });
-                    _self.currentVideo.addEventListener('play', function () {
-                        _self.isPlayer = true;
-                        console.log('开始播放');
-                    })
-                })
-            }
-
-        },
-        //隐藏视频播放窗口
-        handleClosePlayer: function () {
-            this.$refs.videoRef.pause();
-            this.currentVideoUrl = '';
-            this.showVideoDialog = false;
-            this.isPlayer = false;
-        },
-        //播放视频
-        handlePlayer: function () {
-            if (!this.isPlayer) this.currentVideo.play();
-        },
-        //预览office文件 word ppt pdf
-        handlePreviewOffice: function (file) {
-            if (file) {
-                this.GetStatisticsAddPv(1, file.archiveContentId)
-            }
-            if (this.checkPermission() !== 0) return;
-            var index = file.fileName.lastIndexOf('.');
-            var suffix = file.fileName.substring(index);
-            if (suffix === '.doc' || suffix === '.ppt' || suffix === '.pptx' || suffix === '.docx') {
-                // 如果是 doc 或 ppt 直接打开链接预览
-                // window.open(file.fileUrl, '_black') // 下载
-                window.open('https://view.officeapps.live.com/op/view.aspx?src=' + encodeURIComponent(file.fileUrl), '_black') // 下载
-                // https://view.officeapps.live.com/op/view.aspx?src=
-            } else if (suffix === '.pdf') {
-                // 如果是 pdf 需要跳转到预览页面并设置type为1,src为pdf预览链接
-                window.open(file.fileUrl, '_blank');
-            } else {
-                CAIMEI.Popup({
-                    content: suffix + '类型文件暂时无法预览',
-                    confitmBtnText: '确定',
-                    cancelBtnText: '取消',
-                    closeIcon:true
-                }, function () {
-                }, function () {
-                });
-            }
-        },
-        //文件预览跳转页面
-        fileContentPreview(str) {
-            if (str) {
-                this.GetStatisticsAddPv(1, str.archiveContentId)
-            }
-            if (window.localStorage.getItem('filePreviewInfo')) {
-                window.localStorage.removeItem('filePreviewInfo')
-            }
-            window.localStorage.setItem('filePreviewInfo', JSON.stringify(str))
-            window.location.href = "/product/filePreview.html"
-        },
-
-        openFile: function(url){
-            var a = document.createElement('a');
-            a.href = url + '&random=' + Math.random();
-            a.setAttribute('target', '_blank');
-            document.body.appendChild(a);
-            a.click();
-            document.removeChild(a);
-        },
-        /*
-        * 下一步操作 链接跳转 支付支付采美豆
-        * redirect:
-        *   链接: 链接跳转
-        *   10:   支付采美豆
-        * */
-        handleClickToPage: function (redirect) {
-            var _self = this;
-            if (typeof redirect == "string") {
-                // 跳转链接
-                return window.open(redirect, '_blank');
-            }
-            if (redirect === 10) {
-                // 调用接口
-                CAIMEI.Popup({
-                    content: '确认使用采美豆',
-                    confitmBtnText: '确定',
-                    cancelBtnText: '取消',
-                    closeIcon:true
-                }, function () {
-                    _self.SearchArchiveByBeans()
-                }, function () {
-                });
-            }
-        },
-        //用户权限配置 操作前拦截:预览图片,播放视频,预览文件的拦截
-        checkPermission: function () {
-            //permission:查看权限:0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
-            var _self = this;
-            // 如果 TipStatus 返回false 就放行
-            if (!_self.TipStatus) return 0;
-            CAIMEI.Popup({
-                content: _self.TipStatus.text,
-                confitmBtnText: _self.TipStatus.btn,
-                cancelBtnText: '取消',
-                closeIcon:true
-            }, function () {
-                // 确认 执行 下一步  链接跳转 支付支付采美豆
-                _self.handleClickToPage(_self.TipStatus.redirect);
-            }, function () {
-            });
-            return -1;
-        },
-        //采美豆抵扣查看资料
-        SearchArchiveByBeans: function () {
-            BeautyArchiveApi.SearchArchiveByBeans({
-                userId: GLOBAL_USER_ID,
-                archiveId: this.archiveId
-            }, function (res) {
-                if (res.code) return CAIMEI.dialog(res.msg);
-                // 支付采美豆成功,刷新页面
-                CAIMEI.dialog(res.msg, true, function () {
-                        window.location.reload();
-                    }
-                );
-            });
-        },
-        // 对图片列表格式化处理
-        formatImage: function (list) {
-            var resultList = [];
-            for (var i = 0; i < list.length; i++) {
-                var imageUrl = list[i];
-                var index = imageUrl.indexOf('?');
-                var size = imageUrl.substring(index + 1).replace(/\&|\=/g, '-').split('-');
-                var width = parseInt(size[1]);
-                var height = parseInt(size[3]);
-                var style = '';
-                if (list.length > 1) {
-                    if (width >= height) {
-                        style = 'height:100%;width:auto;max-width:unset;';
-                    } else {
-                        style = 'width:100%;height: auto;max-width:unset;';
-                    }
-                }
-                if (list.length === 1) {
-                    if (width >= height) {
-                        style = 'max-width:800px;height:auto';
-                    } else {
-                        style = 'max-height:800px;width:auto';
-                    }
-                }
-                resultList.push({
-                    imageUrl: imageUrl,
-                    style: style
-                })
-            }
-            return resultList;
-        },
-        //获取资料列表
-        getProdcutArchiveDetails: function () {
-            const _self = this;
-            _self.listLoading = true;
-            if (this.archiveId === 0) return;
-            BeautyArchiveApi.GetProdcutArchiveDetails({
-                userId: GLOBAL_USER_ID,
-                archiveId: this.archiveId
-            }, function (res) {
-                if (res.code !== 0) return false;
-                _self.imageArchiveList = res.data.imageArchiveList;
-                _self.videoArchiveList = res.data.videoArchiveList;
-                _self.fileArchiveList = res.data.fileArchiveList;
-                _self.permission = res.data.permission;
-                _self.archiveProductInfo.productImage = res.data.productImage;
-                _self.archiveProductInfo.productName = res.data.productName;
-                _self.archiveProductInfo.productType = res.data.productType;
-                _self.archiveProductInfo.shopName = res.data.shopName;
-                _self.listLoading = false;
-                _self.relatedLabels =  res.data.relatedLabels;
-                _self.imageArchiveList.forEach((item, index) => {
-                    if (item.imageNum !== item.imageList.length) {
-                        _self.num = item.imageNum - item.imageList.length
-                        for (let i = 0; i < _self.num; i++) {
-                            item.imageList.push(_self.defaultImage)
-                        }
-                    }
-                })
-                // 只有当前用户权限为0时初始化图片预览
-                if (_self.permission === 0) {
-                    setTimeout(function () {
-                        _self.initPreviewImage()
-                    })
-                }
-            })
-        }
-    }
-};
+//商品资料库vue混入对象
+const isDev = $("#coreServer").val() === 'https://core-b.caimei365.com';
+var beautyArchiveDetailMixin = {
+    data: {
+        listLoading: false,
+        //用户信息相关
+        permission: 5, //用户权限  0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
+        //页面配置
+        archiveId: '',  //资料列表id
+        currentVideoUrl: '', //正在播放的视频链接(上一个播放的的视频)
+        currentVideo: '',
+        showVideoDialog: false,
+        isPlayer: false, //是否正在播放
+        imageGroup: {},
+        keyword: '',
+        imageArchiveList: [],  // 图片资料列表
+        videoArchiveList: [], // 视频资料列表
+        fileArchiveList: [], // 文件资料列表
+        defaultImage: 'https://static.caimei365.com/app/img/icon2/PC-default.png',  // 默认图片
+        videoCover: 'https://static.caimei365.com/app/img/icon2/video-cover.png', //默认视频封面
+        relatedLabels:'',
+        archiveProductInfo: {},
+        userInfo: {}, // 用户信息
+        num:0,
+    },
+    filters: {
+        // 时间格式化
+        formatTime: function (val) {
+            return moment(new Date(val)).format('YYYY-MM-DD hh:mm:ss');
+        }
+    },
+    computed: {
+        //资料查看状态提示
+        TipStatus: function () {
+            // 资料权限
+            var statusText = [
+                false,
+                {text: '请登录后查看!', btn: '去登录', redirect: '/login.html'},
+                {text: '请升级成为会员机构后方可查看!', btn: '去升级', redirect: '/user/setting/upgrade.html'},
+                {text: '请升级成为医美会员机构后方可查看!', btn: '去升级', redirect: '/user/setting/upgrade.html'},
+                {text: '需抵扣100采美豆方可查看!', btn: '去查看', redirect: 10},
+                {text: '无权限查看!', btn: '确认'}
+            ];
+            // 0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
+            return statusText[this.permission];
+        }
+    },
+    methods: {
+        // 文件浏览记录
+        GetStatisticsAddPv(type, authorId) {
+            BeautyArchiveApi.GetStatisticsAddPv({type, authorId}, () => {
+                console.log("浏览记录成功")
+            })
+        },
+        // 图片点击事件
+        handleShowImage: function (i, imageList, info) {
+            if (info) {
+                this.GetStatisticsAddPv(1, info.archiveContentId)
+            }
+            // if (this.permission === 2 || this.permission === 4 || this.permission === 1) {
+            //     if (imageList && imageList.length >= 5) {
+            //         if (i < 2) {
+            //             this.initPreviewImage()
+            //         } else {
+            //             if (this.checkPermission() !== 0) return;
+            //         }
+            //     }else {
+            //         if (this.checkPermission() !== 0) return;
+            //     }
+            // } else {
+            //     if (this.checkPermission() !== 0) return;
+            // }
+            if (this.checkPermission() !== 0) return;
+        },
+        //初始化预览图片配置
+        initPreviewImage: function () {
+            var imageGroup = {};
+            var imageEls = document.querySelectorAll('.cm-images');
+            if(imageEls.length <= 0) return;
+            imageEls.forEach(function (imageEl, index) {
+                imageGroup['cm-images-' + index] = new Viewer(imageEl);
+            });
+            this.imageGroup = imageGroup;
+        },
+        //显示视频播放窗口
+        handleShowPlayer: function (url, dom, info) {
+            if (info) {
+                this.GetStatisticsAddPv(1, info.archiveContentId)
+            }
+            let _self = this;
+            if (_self.checkPermission() !== 0) return;
+            //暂停上一个正在播放的播放器
+            this.currentVideoUrl = url;
+            this.isPlayer = true;
+            this.showVideoDialog = true;
+            setTimeout(function(){
+                _self.currentVideo = document.querySelector('#realPlayer');
+                _self.currentVideo.addEventListener('pause', function () {
+                    _self.isPlayer = false;
+                    console.log('暂停播放');
+                });
+                _self.currentVideo.addEventListener('ended', function () {
+                    _self.isPlayer = false;
+                    console.log('播放结束');
+                });
+                _self.currentVideo.addEventListener('error', function () {
+                    _self.isPlayer = false;
+                    console.log('播放错误');
+                });
+                _self.currentVideo.addEventListener('play', function () {
+                    _self.isPlayer = true;
+                    console.log('开始播放');
+                })
+            })
+            // if (this.permission === 2 || this.permission === 4 || this.permission === 1) {
+            //     let _self = this;
+            //     //暂停上一个正在播放的播放器
+            //     this.currentVideoUrl = url;
+            //     this.isPlayer = true;
+            //     this.showVideoDialog = true;
+            //     setTimeout(function(){
+            //         _self.currentVideo = document.querySelector('#realPlayer');
+            //         if(_self.permission === 2 || _self.permission === 4 || _self.permission === 1) {
+            //             _self.currentVideo.oncanplay = function () {
+            //                 console.log(_self.currentVideo.duration)
+            //                 if (parseInt((_self.currentVideo.duration % 3600)/60) < 10) {
+            //                     _self.isPlayer = false;
+            //                     _self.showVideoDialog = false;
+            //                     _self.currentVideo.pause()
+            //                     if (_self.checkPermission() !== 0) return;
+            //                 }
+            //                 if (parseInt((_self.currentVideo.duration % 3600)/60) >= 10) {
+            //                     _self.currentVideo.play()
+            //                 }
+            //                 _self.currentVideo.addEventListener('timeupdate', () =>{
+            //                     // if() {}
+            //                     if (parseInt(_self.currentVideo.currentTime) >= 3) {
+            //                         _self.isPlayer = false;
+            //                         _self.showVideoDialog = false;
+            //                         _self.currentVideo.pause()
+            //                         if (_self.checkPermission() !== 0) return;
+            //                     }
+            //                 })
+            //             }
+            //
+            //         }
+            //     })
+            // } else {
+            //     let _self = this;
+            //     if (_self.checkPermission() !== 0) return;
+            //     //暂停上一个正在播放的播放器
+            //     this.currentVideoUrl = url;
+            //     this.isPlayer = true;
+            //     this.showVideoDialog = true;
+            //     setTimeout(function(){
+            //         _self.currentVideo = document.querySelector('#realPlayer');
+            //         _self.currentVideo.addEventListener('pause', function () {
+            //             _self.isPlayer = false;
+            //             console.log('暂停播放');
+            //         });
+            //         _self.currentVideo.addEventListener('ended', function () {
+            //             _self.isPlayer = false;
+            //             console.log('播放结束');
+            //         });
+            //         _self.currentVideo.addEventListener('error', function () {
+            //             _self.isPlayer = false;
+            //             console.log('播放错误');
+            //         });
+            //         _self.currentVideo.addEventListener('play', function () {
+            //             _self.isPlayer = true;
+            //             console.log('开始播放');
+            //         })
+            //     })
+            // }
+        },
+        //隐藏视频播放窗口
+        handleClosePlayer: function () {
+            this.$refs.videoRef.pause();
+            this.currentVideoUrl = '';
+            this.showVideoDialog = false;
+            this.isPlayer = false;
+        },
+        //播放视频
+        handlePlayer: function () {
+            if (!this.isPlayer) this.currentVideo.play();
+        },
+        //预览office文件 word ppt pdf
+        handlePreviewOffice: function (file) {
+            if (file) {
+                this.GetStatisticsAddPv(1, file.archiveContentId)
+            }
+            const domainUrl = isDev ? 'https://material-b.caimei365.com' : 'https://material.caimei365.com'
+            window.open(`${domainUrl}/preview?t=3&url=${file.fileUrl}&isSp=1`)
+            // if (this.checkPermission() !== 0) return;
+            // var index = file.fileName.lastIndexOf('.');
+            // var suffix = file.fileName.substring(index);
+            // if (suffix === '.doc' || suffix === '.ppt' || suffix === '.pptx' || suffix === '.docx') {
+            //     // 如果是 doc 或 ppt 直接打开链接预览
+            //     // window.open(file.fileUrl, '_black') // 下载
+            //     window.open('https://view.officeapps.live.com/op/view.aspx?src=' + encodeURIComponent(file.fileUrl), '_black') // 下载
+            //     // https://view.officeapps.live.com/op/view.aspx?src=
+            // } else if (suffix === '.pdf') {
+            //     // 如果是 pdf 需要跳转到预览页面并设置type为1,src为pdf预览链接
+            //     window.open(file.fileUrl, '_blank');
+            // } else {
+            //     CAIMEI.Popup({
+            //         content: suffix + '类型文件暂时无法预览',
+            //         confitmBtnText: '确定',
+            //         cancelBtnText: '取消',
+            //         closeIcon:true
+            //     }, function () {
+            //     }, function () {
+            //     });
+            // }
+        },
+        //文件预览跳转页面
+        fileContentPreview(str) {
+            if (str) {
+                this.GetStatisticsAddPv(1, str.archiveContentId)
+            }
+            if (window.localStorage.getItem('filePreviewInfo')) {
+                window.localStorage.removeItem('filePreviewInfo')
+            }
+            window.localStorage.setItem('filePreviewInfo', JSON.stringify(str))
+            window.location.href = "/product/filePreview.html"
+        },
+
+        openFile: function(url){
+            var a = document.createElement('a');
+            a.href = url + '&random=' + Math.random();
+            a.setAttribute('target', '_blank');
+            document.body.appendChild(a);
+            a.click();
+            document.removeChild(a);
+        },
+        /*
+        * 下一步操作 链接跳转 支付支付采美豆
+        * redirect:
+        *   链接: 链接跳转
+        *   10:   支付采美豆
+        * */
+        handleClickToPage: function (redirect) {
+            var _self = this;
+            if (typeof redirect == "string") {
+                // 跳转链接
+                return window.open(redirect, '_blank');
+            }
+            if (redirect === 10) {
+                // 调用接口
+                CAIMEI.Popup({
+                    content: '确认使用采美豆',
+                    confitmBtnText: '确定',
+                    cancelBtnText: '取消',
+                    closeIcon:true
+                }, function () {
+                    _self.SearchArchiveByBeans()
+                }, function () {
+                });
+            }
+        },
+        //用户权限配置 操作前拦截:预览图片,播放视频,预览文件的拦截
+        checkPermission: function () {
+            //permission:查看权限:0可查看,1未登录,2需升级会员机构,3需升级医美会员机构,4需要抵扣采美豆,5无权限查看
+            var _self = this;
+            // 如果 TipStatus 返回false 就放行
+            if (!_self.TipStatus) return 0;
+            CAIMEI.Popup({
+                content: _self.TipStatus.text,
+                confitmBtnText: _self.TipStatus.btn,
+                cancelBtnText: '取消',
+                closeIcon:true
+            }, function () {
+                // 确认 执行 下一步  链接跳转 支付支付采美豆
+                _self.handleClickToPage(_self.TipStatus.redirect);
+            }, function () {
+            });
+            return -1;
+        },
+        //采美豆抵扣查看资料
+        SearchArchiveByBeans: function () {
+            BeautyArchiveApi.SearchArchiveByBeans({
+                userId: GLOBAL_USER_ID,
+                archiveId: this.archiveId
+            }, function (res) {
+                if (res.code) return CAIMEI.dialog(res.msg);
+                // 支付采美豆成功,刷新页面
+                CAIMEI.dialog(res.msg, true, function () {
+                        window.location.reload();
+                    }
+                );
+            });
+        },
+        // 对图片列表格式化处理
+        formatImage: function (list) {
+            var resultList = [];
+            for (var i = 0; i < list.length; i++) {
+                var imageUrl = list[i];
+                var index = imageUrl.indexOf('?');
+                var size = imageUrl.substring(index + 1).replace(/\&|\=/g, '-').split('-');
+                var width = parseInt(size[1]);
+                var height = parseInt(size[3]);
+                var style = '';
+                if (list.length > 1) {
+                    if (width >= height) {
+                        style = 'height:100%;width:auto;max-width:unset;';
+                    } else {
+                        style = 'width:100%;height: auto;max-width:unset;';
+                    }
+                }
+                if (list.length === 1) {
+                    if (width >= height) {
+                        style = 'max-width:800px;height:auto';
+                    } else {
+                        style = 'max-height:800px;width:auto';
+                    }
+                }
+                resultList.push({
+                    imageUrl: imageUrl,
+                    style: style
+                })
+            }
+            return resultList;
+        },
+        //获取资料列表
+        getProdcutArchiveDetails: function () {
+            const _self = this;
+            _self.listLoading = true;
+            if (this.archiveId === 0) return;
+            BeautyArchiveApi.GetProdcutArchiveDetails({
+                userId: GLOBAL_USER_ID,
+                archiveId: this.archiveId
+            }, function (res) {
+                if (res.code !== 0) return false;
+                _self.imageArchiveList = res.data.imageArchiveList;
+                _self.videoArchiveList = res.data.videoArchiveList;
+                _self.fileArchiveList = res.data.fileArchiveList;
+                _self.permission = res.data.permission;
+                _self.archiveProductInfo.productImage = res.data.productImage;
+                _self.archiveProductInfo.productName = res.data.productName;
+                _self.archiveProductInfo.productType = res.data.productType;
+                _self.archiveProductInfo.shopName = res.data.shopName;
+                _self.listLoading = false;
+                _self.relatedLabels =  res.data.relatedLabels;
+                _self.imageArchiveList.forEach((item, index) => {
+                    if (item.imageNum !== item.imageList.length) {
+                        _self.num = item.imageNum - item.imageList.length
+                        for (let i = 0; i < _self.num; i++) {
+                            item.imageList.push(_self.defaultImage)
+                        }
+                    }
+                })
+                // 只有当前用户权限为0时初始化图片预览
+                if (_self.permission === 0) {
+                    setTimeout(function () {
+                        _self.initPreviewImage()
+                    })
+                }
+            })
+        }
+    }
+};

+ 28 - 0
src/main/resources/static/js/document/database-share.js

@@ -0,0 +1,28 @@
+const isDev = $("#coreServer").val() === 'https://core-b.caimei365.com';
+
+var dataBaseShare = {
+    mounted: function () {
+        this.routeParams()
+    },
+    methods: {
+        requireBaseLoginStatus(res) {
+            const params = JSON.parse(window.sessionStorage.getItem('saveParams'))
+            if (params.isDataBase && res.code === 0) {
+                const link = isDev ? 'https://material-b.caimei365.com' : 'https://material.caimei365.com'
+                setTimeout(() => {
+                    window.location.href = `${link}/preview?t=${params.t}&id=${params.id}&uid=${res.data.userId}&spId=${params.spId}`
+                }, 1000)
+            }
+        },
+        routeParams() {
+            const p = window.location.href?.split('?')[1]?.split('&')
+            const f = {}
+            if (p) {
+                p.forEach(e => {
+                    f[e.split('=')[0]] = e.split('=')[1]
+                })
+            }
+            window.sessionStorage.setItem('saveParams', JSON.stringify(f))
+        }
+    }
+}

+ 7 - 1
src/main/resources/static/js/mixins/cmSysMixins.js

@@ -13,7 +13,9 @@ var cmSysVitaMixins = function () {
                     userId:0,//用户Id
                     productId:0,//商品Id
                     shopId:0,//供应商Id
-                    behaviorType:1 // 用户行为类型
+                    behaviorType:1, // 用户行为类型
+                    headUserId: '', // 内容库协销ID
+                    productArchiveId: '', // 内容库文件id
                 },
                 handleProsId:'',
                 handleShopId:'',
@@ -54,6 +56,7 @@ var cmSysVitaMixins = function () {
             handleCmSysNetInfo() {
                 //设置定时器
                 const globalUserData = JSON.parse(localStorage.getItem('userInfo'));
+                const databaseShareData = JSON.parse(sessionStorage.getItem('saveParams'))
                 console.log('handleProsKey',this.handleProsKey)
                 if(globalUserData){ this.cmSysParams.userId = globalUserData.userId * 1; }
                 if( this.handleProsId || this.handleShopId || this.handlearticleId || this.handleProsKey || this.handleShopKey ){
@@ -74,6 +77,9 @@ var cmSysVitaMixins = function () {
                     this.cmSysParams.pageLabel = pageData ? pageData.pageLabel : '';
                 }
                 this.cmSysParams.pagePath = pagePath;
+                this.cmSysParams.headUserId = databaseShareData?.spId || ''
+                this.cmSysParams.productArchiveId = databaseShareData?.id || ''
+                console.log(this.cmSysParams)
                 setTimeout(()=>{
                     this.handleSetNetworks(this.cmSysParams);
                 },2000)

+ 1 - 1
src/main/resources/static/js/mixins/router.config.js

@@ -71,4 +71,4 @@ const includeList = [
     { title:'添加文章',url:'/supplier/article/edit.html',pageLabel:'添加文章',pageType:65 },
     { title:'供应商重置密码',url:'/supplier/setting/password.html',pageLabel:'供应商重置密码',pageType:66 },
     { title:'供应商更换手机号',url:'/supplier/setting/phone.html',pageLabel:'供应商更换手机号',pageType:67 },
-]
+]

+ 475 - 473
src/main/resources/static/js/user-center/setting/upgrade.js

@@ -1,473 +1,475 @@
-;
-var upgradePage = new Vue({
-    el: "#upgradePage",
-    data: {
-        isRequset:true,
-        loginLoading: false,
-        clubUpgradeUser: {
-            userId:'',
-            clubId:'',
-            contractEmail:'',
-            name:'',
-            shortName:'',
-            socialCreditCode:'',
-            mainProduct:[],
-            businessLicense:'',
-            shopPhoto:'',
-            medicalPracticeLicense:'',
-            firstClubType:1,
-            secondClubType:0,
-            department:'',
-            provinceId :'',
-            cityId : '',
-            townId : '',
-            address:'',
-            linkManIdentity:0
-        },
-        userMainPros:[],
-        formData:new FormData(),
-        mentuzCampNullList:[
-            {value:'1',name:'整形'},
-            {value:'2',name:'轻医美'},
-            {value:'3',name:'皮肤科'},
-            {value:'4',name:'产后修复'},
-        ],
-        medicaCampNullList: [
-            {name:'美容'},
-            {name:'美体'},
-            {name:'美发'},
-            {name:'皮肤管理'},
-            {name:'光电'},
-            {name:'综合类'},
-            {name:'中医养生'},
-            {name:'spa'},
-        ],
-        mainPros: ['产品','仪器','服务','整形'],
-        mainProEdit: '',
-        provinceArray:[],
-        cityArray: [],//市
-        townArray: [],//区
-        addressfrom: {
-            townID:'',
-            provinceID: '',//省id
-            cityID: '',
-        },
-        rule:{
-            name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
-            phone: '^\\d{6,12}$',
-            code: '^\\d{6}$',
-            license: '^[a-zA-Z0-9_]{18}$',
-            email: '^(([^<>()\\[\\]\\\\.,;:\\s@&quot;]+(\\.[^<>()\\[\\]\\\\.,;:\\s@&quot;]+)*)|(&quot;.+&quot;))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$',
-            password: "^[^\\u4e00-\\u9fa5]{8,16}$"
-        },
-        flagshow:false,
-        businessflag:false,
-        typeflag:false,
-        secondtypeflag:false,
-        mproflag:false,
-        userMainProflag:false,
-        medicalPracticeLicenseFlag: false,
-        userName:''
-    },
-    computed: {
-
-    },
-    methods: {
-        handleChangeType: function(type){
-            if(type === parseInt(this.clubUpgradeUser.firstClubType)) return;
-            this.userMainPros = [];
-            this.clubUpgradeUser.secondClubType = (type === 1 ? 1 : 5);
-        },
-        infoInformationData:function(){//机构资料初始化
-            var _self = this;
-            UserApi.GetApplicationData({userId:_self.clubUpgradeUser.userId},function (response) {
-                if(response.code === 0){
-                    var data = response.data;
-                    _self.isRequset = false;
-                    _self.clubUpgradeUser = data.club;
-                    _self.userIdentity = data.user.userIdentity;
-                    _self.userName = data.user.userName;
-                    _self.clubUpgradeUser.clubId = data.user.clubId;
-                    _self.clubUpgradeUser.userId = data.user.userId;
-                    _self.clubUpgradeUser.contractEmail = data.club.contractEmail;
-                    _self.clubUpgradeUser.provinceId = data.club.provinceId;
-                    _self.clubUpgradeUser.linkManIdentity = data.club.linkManIdentity ? data.club.linkManIdentity : 0;
-                    _self.clubUpgradeUser.cityId = data.club.cityId;
-                    _self.clubUpgradeUser.townId= data.club.townId;
-                    _self.clubUpgradeUser.shopPhoto = data.club.shopPhoto;
-                    _self.clubUpgradeUser.businessLicense = data.club.businessLicense;
-                    _self.clubUpgradeUser.firstClubType = data.club.firstClubType;
-                    _self.clubUpgradeUser.secondClubType = data.club.secondClubType;
-                    _self.clubUpgradeUser.address = data.club.address;
-                    if( _self.clubUpgradeUser.firstClubType === 1){
-                        if(data.club.mainProduct){
-                            _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
-                            _self.medicaCampNullList = _self.setNewMainProduct(_self.userMainPros);
-                        }else{
-                            _self.userMainPros = _self.medicaCampNullList;
-                        }
-                    }else if(_self.clubUpgradeUser.firstClubType === 2){
-                        if(data.club.mainProduct){
-                            _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
-                            _self.mentuzCampNullList = _self.setNewMainProduct(_self.userMainPros);
-                        }else{
-                            _self.userMainPros = _self.mentuzCampNullList;
-                        }
-                    }
-                    if( _self.clubUpgradeUser.contractEmail){
-                        _self.clubUpgradeUser.name = data.club.name;
-                    }else{
-                        _self.clubUpgradeUser.name = '';
-                    }
-                    if(data.club.provinceId ==null){
-                         _self.clubUpgradeUser.provinceId = 0;
-                     }
-                    if(data.club.cityId!==''&&data.club.cityId!=null){
-                        _self.getcity();
-                    }else {
-                         _self.clubUpgradeUser.cityId = 0
-                    }
-                    if(data.club.townId!==''&&data.club.townId!=null){
-                        _self.getcTown();
-                    }else {
-                         _self.clubUpgradeUser.townId = 0
-                    }
-                }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
-                }
-            })
-        },
-        SubComfirUpgradeFn:function() {//升级会员机构
-            var _self = this;
-            var pass = verifyForm();
-            if (!pass) { this.scrollIntoView(); return false;}
-            if(!_self.clubUpgradeUser.linkManIdentity){
-                $('#userNameType').parent().addClass("error");
-                $('#userNameType').siblings('.errTips').text('请选择联系人身份').addClass("show");
-                _self.scrollIntoView();
-                return  false;
-            }
-            if(_self.clubUpgradeUser.townId==0||_self.clubUpgradeUser.address==''){
-                _self.flagshow = true;
-                setTimeout(function () {
-                    _self.flagshow = false;
-                    _self.scrollIntoView();
-                },2000)
-                return;
-            }
-             if(_self.clubUpgradeUser.businessLicense==''||_self.clubUpgradeUser.businessLicense==null){
-                _self.businessflag = true;
-                     setTimeout(function () {
-                            _self.businessflag = false;
-                        },2000)
-                return;
-            }
-             if(_self.clubUpgradeUser.firstClubType==''||_self.clubUpgradeUser.firstClubType==null){
-               _self.typeflag = true;
-               setTimeout(function () {
-                    _self.typeflag = false;
-                },2000);
-               return;
-            }
-            if(_self.clubUpgradeUser.firstClubType==1){
-                if (_self.clubUpgradeUser.secondClubType == '' || _self.clubUpgradeUser.secondClubType == null) {
-                    _self.secondtypeflag = true;
-                    setTimeout(function () {
-                        _self.secondtypeflag = false;
-                    }, 2000);
-                    return;
-                }
-                if(!_self.clubUpgradeUser.medicalPracticeLicense){
-                    _self.medicalPracticeLicenseFlag = true;
-                    setTimeout(function () {
-                        _self.medicalPracticeLicenseFlag = false;
-                    }, 2000);
-                    return;
-                }
-                if(_self.userMainPros==''){
-                      _self.mproflag = true;
-                     setTimeout(function () {
-                        _self.mproflag = false;
-                    },2000);
-                    return;
-                }
-            }
-            if(_self.clubUpgradeUser.firstClubType==2){
-                if(_self.userMainPros ==''){
-                    _self.userMainProflag = true;
-                 setTimeout(function () {
-                    _self.userMainProflag = false;
-                },2000);
-                    return;
-                }
-            }
-            _self.clubUpgradeUser.mainProduct = _self.userMainPros.join("/");
-            if (_self.loginLoading) { return false; }
-            this.$nextTick(function() {
-            var  params= {
-                    userId:_self.clubUpgradeUser.userId,
-                    clubId:_self.clubUpgradeUser.clubId,				//会所Id
-                    name:_self.clubUpgradeUser.name,
-                    linkMan:_self.clubUpgradeUser.linkMan,
-                    linkManIdentity:_self.clubUpgradeUser.linkManIdentity,
-                    shortName:_self.clubUpgradeUser.shortName,
-                    contractEmail:_self.clubUpgradeUser.contractEmail,
-                    provinceId:_self.clubUpgradeUser.provinceId,
-                    cityId:_self.clubUpgradeUser.cityId,
-                    townId:_self.clubUpgradeUser.townId,
-                    address:_self.clubUpgradeUser.address,
-                    socialCreditCode:_self.clubUpgradeUser.socialCreditCode,
-                    businessLicense:_self.clubUpgradeUser.businessLicense,
-                    shopPhoto:_self.clubUpgradeUser.shopPhoto,
-                    firstClubType:Number(_self.clubUpgradeUser.firstClubType), //机构类型分类 医美:0和生美:1
-                    secondClubType:Number(_self.clubUpgradeUser.secondClubType),	//机构类型二级分类 诊所:1,门诊:2,医院:3
-                    department:_self.clubUpgradeUser.department,				//科室
-                    medicalPracticeLicense:_self.clubUpgradeUser.medicalPracticeLicense,//资质图片
-                    mainProduct:_self.clubUpgradeUser.mainProduct,
-                };
-                _self.loginLoading = true;
-                UserApi.ClubUpgrade(params,function (response) {
-                    if(response.code === 0){
-                        CAIMEI.Alert('升级信息提交成功,审核通过后您的身份即成为会员机构并且获得500采美豆的奖励','知道了',true,function () {
-                            _self.clubLoginIndex();
-                            _self.loginLoading = false;
-                        });
-                    } else {
-                        CAIMEI.Alert(response.msg,'确定',false);
-                        _self.loginLoading = false;
-                    }
-                });
-            });
-        },
-        clubLoginIndex:function(){// 跳过升级直接去个人中心
-            window.location.href = '/user/dashboard.html';
-        },
-        setNewMainProduct:function(arr){
-            var Array = [];
-            if(arr){
-                arr.forEach(function(item){
-                    var obj ={
-                        name:item,
-                    };
-                    Array.push(obj);
-                });
-            }
-            return Array
-        },
-        setNewMainpro:function(arr){//回显处理主营内容
-            var newArr = [];
-                if (arr!=null){
-                     arr.split('/').forEach(function(item){
-                    newArr.push(item);
-                });
-            }
-            return newArr
-        },
-        mainProAdd: function(){
-            var _self = this;
-            if (_self.mainProEdit.length>0) {
-                if (_self.mainPros.indexOf(_self.mainProEdit)<0){
-                    var obj = {name:_self.mainProEdit};
-                    if(Number(_self.clubUpgradeUser.firstClubType) == 1){
-                        if(_self.checkedArray(_self.mainProEdit,_self.medicaCampNullList)){
-                            CAIMEI.dialog('主营内容已存在!',false);
-                        }else {
-                            _self.medicaCampNullList.push(obj);
-                        }
-                    }else{
-                        if(_self.checkedArray(_self.mainProEdit,_self.mentuzCampNullList)){
-                            CAIMEI.dialog('主营内容已存在!',false);
-                        }else {
-                            _self.mentuzCampNullList.push(obj);
-                        }
-                    }
-                }
-            }
-        },
-        checkedArray:function(content,arr){//判断主营内容是否已存在
-            for(var i in arr){
-                if(arr[i].name == content){
-                    return true;
-                }
-            }
-            return false;
-        },
-        blurHandle: function(event) { // 失去焦点校验
-            var el = event.currentTarget;
-            verifyHandle(el);
-        },
-        uploadBusinessLicenseImageFn: function(event){//上传营业执照
-            var _this = this;
-            var inputDOM = _this.$refs.businessLicenseImage;
-            var file = inputDOM.files;
-            _this.formData.append('file', file[0]);
-            PublicApi.uploadimg(_this.formData,function(response){
-                _this.clubUpgradeUser.businessLicense = response.data;
-                event.target.value = '';
-            });
-        },
-        uploadMentuzImageFn: function(event){//上传营业执照
-            var _this = this;
-            var inputDOM = _this.$refs.businessMentuImage;
-            var file = inputDOM.files;
-            _this.formData.append('file', file[0]);
-            PublicApi.uploadimg(_this.formData,function(response){
-                _this.clubUpgradeUser.shopPhoto = response.data;
-                event.target.value = '';
-            });
-        },
-        uploadMedicaImageFn: function(event){//上传资质证书
-            var _this = this;
-            var inputDOM = _this.$refs.businessMedicaImage;
-            var file = inputDOM.files;
-            _this.formData.append('file', file[0]);
-            PublicApi.uploadimg(_this.formData,function(response){
-                _this.clubUpgradeUser.medicalPracticeLicense = response.data;
-                event.target.value = '';
-            });
-        },
-        deleteBusinessImage:function(){//清楚营业执照图片
-            this.clubUpgradeUser.businessLicense = '';
-        },
-        deleteMentuzImage:function(){//清楚门头照图片
-            this.clubUpgradeUser.shopPhoto = '';
-        },
-        deleteMedicalImage:function(){//清楚资质照图片
-            this.clubUpgradeUser.medicalPracticeLicense = '';
-        },
-        // GetProvinceFn: function(){//获取全部省份
-        //     var _this = this;
-        //     PublicApi.GetProvince({},function(response){
-        //         if(response.code == 0){
-        //             _this.ProvinceList =response.data;
-        //         }else{
-        //             CAIMEI.Alert(response.msg,'确定',false);
-        //         }
-        //     })
-        // },
-        //
-        // ChangeProvince:function () {//选择省份
-        //     var _self = this;
-        //     _self.addressfrom.provinceID = event.target.value;
-        //     _self.clubUpgradeUser.provinceID = event.target.value;
-        //     if(_self.addressfrom.provinceID==''){//省为请选择时市区初始化
-        //         _self.cityArray=[];
-        //         _self.townArray=[];
-        //         _self.clubUpgradeUser.townID=''
-        //     }else {
-        //         _self.GetCtiyFn();
-        //     }
-        // },
-        // ChangeGetcity:function(event){//加载市
-        //     var _self = this;
-        //     _self.addressfrom.cityID = event.target.value;
-        //     _self.clubUpgradeUser.cityID = event.target.value;
-        //     if(_self.addressfrom.cityID==''){
-        //         _self.townArray=[];
-        //     }else {
-        //         _self.GetTownFn();
-        //     }
-        // },
-        // ChangeGetcTown:function(event){//选择地区
-        //     var _self = this;
-        //     _self.clubUpgradeUser.townID = event.target.value;
-        // },
-        // GetCtiyFn: function(){//获取市
-        //     var _self = this;
-        //     PublicApi.GetCity({ type:1, parentId: _self.addressfrom.provinceID },function(response){
-        //         if(response.code == 0 ){
-        //             _self.cityArray = response.data;
-        //         }else{
-        //             CAIMEI.Alert(response.msg,'确定',false);
-        //         }
-        //     })
-        // },
-        // GetTownFn: function(){//获取区
-        //     var _self = this;
-        //     PublicApi.GetTown({ type:2, parentId: _self.addressfrom.cityID },function(response){
-        //         if(response.code == 0 ){
-        //             _self.townArray = response.data;
-        //         }else{
-        //             CAIMEI.Alert(response.msg,'确定',false);
-        //         }
-        //     })
-        // },
-        province:function () {
-           var _this = this;
-           _this.clubUpgradeUser.provinceId = event.target.value;
-            if(_this.clubUpgradeUser.provinceId==0){//省为请选择时市区初始化
-                _this.cityArray=[];
-                _this.townArray=[];
-                _this.clubUpgradeUser.townId=0;
-                _this.clubUpgradeUser.cityId = 0;
-            }else {
-              _this.getcity();
-              _this.clubUpgradeUser.cityId = 0;
-            }
-        },
-        getcity:function(event){//加载市
-           var _this = this;
-            PublicApi.GetCity({ type:1, parentId: _this.clubUpgradeUser.provinceId },function(response){
-                 if(response.code == 0 ){
-                    _this.cityArray = response.data;
-                     _this.clubUpgradeUser.cityId = event.target.value;
-                     if(_this.clubUpgradeUser.cityId==0){
-                           _this.townArray=[];
-                           _this.clubUpgradeUser.townId = 0;
-                     }else {
-                         _this.getcTown();
-                          _this.clubUpgradeUser.townId = 0;
-                     }
-                }
-            })
-        },
-         getcTown:function(event){
-            var _this = this;
-            PublicApi.GetTown({ type:2, parentId:_this.clubUpgradeUser.cityId},function(response){
-                if(response.code == 0 ){
-                    _this.townArray = response.data;
-                    _this.clubUpgradeUser.townId = event.target.value;
-                }else{
-                    CAIMEI.Alert(response.msg, '确定', false);
-                }
-            })
-        },
-        changeUserNameType:function(event){
-            $('#userNameType').parent().removeClass("error");
-            $('#userNameType').siblings('.errTips').removeClass("show");
-        },
-        showViewerImageFn:function(){//预览营业执照图片
-            var viewer = new Viewer(document.getElementById('businessLicenseImage'));
-        },
-        showViewerImageFn1:function(){//预览门头照图片
-            var viewer = new Viewer(document.getElementById('uploadMentuzImage'));
-        },
-        showViewerImageFn2:function(){//预览资质图片
-            var viewer = new Viewer(document.getElementById('medicalPracticeLicenseImg'));
-        },
-        scrollIntoView: function(){
-            document.getElementById('upgradePage').scrollIntoView({block: 'start', behavior: 'smooth'});
-        },
-    },
-    created: function () {
-
-    },
-    mounted: function () {
-        var _self = this;
-        if(globalUserData){
-            _self.clubUpgradeUser.userId = globalUserData.userId;
-            _self.clubUpgradeUser.clubId = globalUserData.clubId;
-            _self.infoInformationData();
-        }
-        PublicApi.GetProvince({},function(response){ //省份
-            if(response.code == 0){
-            console.log(response)
-            _self.provinceArray = response.data;
-            }else{
-                CAIMEI.Alert(response.msg, '确定', false);
-            }
-        });
-        $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
-        $('.navLayout').find('.navList').eq(1).addClass("on").find('.con').show().find('a').eq(0).addClass("on");
-    }
-});
+;
+var upgradePage = new Vue({
+    el: "#upgradePage",
+    mixins: [dataBaseShare],
+    data: {
+        isRequset:true,
+        loginLoading: false,
+        clubUpgradeUser: {
+            userId:'',
+            clubId:'',
+            contractEmail:'',
+            name:'',
+            shortName:'',
+            socialCreditCode:'',
+            mainProduct:[],
+            businessLicense:'',
+            shopPhoto:'',
+            medicalPracticeLicense:'',
+            firstClubType:1,
+            secondClubType:0,
+            department:'',
+            provinceId :'',
+            cityId : '',
+            townId : '',
+            address:'',
+            linkManIdentity:0
+        },
+        userMainPros:[],
+        formData:new FormData(),
+        mentuzCampNullList:[
+            {value:'1',name:'整形'},
+            {value:'2',name:'轻医美'},
+            {value:'3',name:'皮肤科'},
+            {value:'4',name:'产后修复'},
+        ],
+        medicaCampNullList: [
+            {name:'美容'},
+            {name:'美体'},
+            {name:'美发'},
+            {name:'皮肤管理'},
+            {name:'光电'},
+            {name:'综合类'},
+            {name:'中医养生'},
+            {name:'spa'},
+        ],
+        mainPros: ['产品','仪器','服务','整形'],
+        mainProEdit: '',
+        provinceArray:[],
+        cityArray: [],//市
+        townArray: [],//区
+        addressfrom: {
+            townID:'',
+            provinceID: '',//省id
+            cityID: '',
+        },
+        rule:{
+            name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
+            phone: '^\\d{6,12}$',
+            code: '^\\d{6}$',
+            license: '^[a-zA-Z0-9_]{18}$',
+            email: '^(([^<>()\\[\\]\\\\.,;:\\s@&quot;]+(\\.[^<>()\\[\\]\\\\.,;:\\s@&quot;]+)*)|(&quot;.+&quot;))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$',
+            password: "^[^\\u4e00-\\u9fa5]{8,16}$"
+        },
+        flagshow:false,
+        businessflag:false,
+        typeflag:false,
+        secondtypeflag:false,
+        mproflag:false,
+        userMainProflag:false,
+        medicalPracticeLicenseFlag: false,
+        userName:''
+    },
+    computed: {
+
+    },
+    methods: {
+        handleChangeType: function(type){
+            if(type === parseInt(this.clubUpgradeUser.firstClubType)) return;
+            this.userMainPros = [];
+            this.clubUpgradeUser.secondClubType = (type === 1 ? 1 : 5);
+        },
+        infoInformationData:function(){//机构资料初始化
+            var _self = this;
+            UserApi.GetApplicationData({userId:_self.clubUpgradeUser.userId},function (response) {
+                if(response.code === 0){
+                    var data = response.data;
+                    _self.isRequset = false;
+                    _self.clubUpgradeUser = data.club;
+                    _self.userIdentity = data.user.userIdentity;
+                    _self.userName = data.user.userName;
+                    _self.clubUpgradeUser.clubId = data.user.clubId;
+                    _self.clubUpgradeUser.userId = data.user.userId;
+                    _self.clubUpgradeUser.contractEmail = data.club.contractEmail;
+                    _self.clubUpgradeUser.provinceId = data.club.provinceId;
+                    _self.clubUpgradeUser.linkManIdentity = data.club.linkManIdentity ? data.club.linkManIdentity : 0;
+                    _self.clubUpgradeUser.cityId = data.club.cityId;
+                    _self.clubUpgradeUser.townId= data.club.townId;
+                    _self.clubUpgradeUser.shopPhoto = data.club.shopPhoto;
+                    _self.clubUpgradeUser.businessLicense = data.club.businessLicense;
+                    _self.clubUpgradeUser.firstClubType = data.club.firstClubType;
+                    _self.clubUpgradeUser.secondClubType = data.club.secondClubType;
+                    _self.clubUpgradeUser.address = data.club.address;
+                    if( _self.clubUpgradeUser.firstClubType === 1){
+                        if(data.club.mainProduct){
+                            _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
+                            _self.medicaCampNullList = _self.setNewMainProduct(_self.userMainPros);
+                        }else{
+                            _self.userMainPros = _self.medicaCampNullList;
+                        }
+                    }else if(_self.clubUpgradeUser.firstClubType === 2){
+                        if(data.club.mainProduct){
+                            _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
+                            _self.mentuzCampNullList = _self.setNewMainProduct(_self.userMainPros);
+                        }else{
+                            _self.userMainPros = _self.mentuzCampNullList;
+                        }
+                    }
+                    if( _self.clubUpgradeUser.contractEmail){
+                        _self.clubUpgradeUser.name = data.club.name;
+                    }else{
+                        _self.clubUpgradeUser.name = '';
+                    }
+                    if(data.club.provinceId ==null){
+                         _self.clubUpgradeUser.provinceId = 0;
+                     }
+                    if(data.club.cityId!==''&&data.club.cityId!=null){
+                        _self.getcity();
+                    }else {
+                         _self.clubUpgradeUser.cityId = 0
+                    }
+                    if(data.club.townId!==''&&data.club.townId!=null){
+                        _self.getcTown();
+                    }else {
+                         _self.clubUpgradeUser.townId = 0
+                    }
+                }else{
+                    CAIMEI.Alert(response.msg,'确定',false);
+                }
+            })
+        },
+        SubComfirUpgradeFn:function() {//升级会员机构
+            var _self = this;
+            var pass = verifyForm();
+            if (!pass) { this.scrollIntoView(); return false;}
+            if(!_self.clubUpgradeUser.linkManIdentity){
+                $('#userNameType').parent().addClass("error");
+                $('#userNameType').siblings('.errTips').text('请选择联系人身份').addClass("show");
+                _self.scrollIntoView();
+                return  false;
+            }
+            if(_self.clubUpgradeUser.townId==0||_self.clubUpgradeUser.address==''){
+                _self.flagshow = true;
+                setTimeout(function () {
+                    _self.flagshow = false;
+                    _self.scrollIntoView();
+                },2000)
+                return;
+            }
+             if(_self.clubUpgradeUser.businessLicense==''||_self.clubUpgradeUser.businessLicense==null){
+                _self.businessflag = true;
+                     setTimeout(function () {
+                            _self.businessflag = false;
+                        },2000)
+                return;
+            }
+             if(_self.clubUpgradeUser.firstClubType==''||_self.clubUpgradeUser.firstClubType==null){
+               _self.typeflag = true;
+               setTimeout(function () {
+                    _self.typeflag = false;
+                },2000);
+               return;
+            }
+            if(_self.clubUpgradeUser.firstClubType==1){
+                if (_self.clubUpgradeUser.secondClubType == '' || _self.clubUpgradeUser.secondClubType == null) {
+                    _self.secondtypeflag = true;
+                    setTimeout(function () {
+                        _self.secondtypeflag = false;
+                    }, 2000);
+                    return;
+                }
+                if(!_self.clubUpgradeUser.medicalPracticeLicense){
+                    _self.medicalPracticeLicenseFlag = true;
+                    setTimeout(function () {
+                        _self.medicalPracticeLicenseFlag = false;
+                    }, 2000);
+                    return;
+                }
+                if(_self.userMainPros==''){
+                      _self.mproflag = true;
+                     setTimeout(function () {
+                        _self.mproflag = false;
+                    },2000);
+                    return;
+                }
+            }
+            if(_self.clubUpgradeUser.firstClubType==2){
+                if(_self.userMainPros ==''){
+                    _self.userMainProflag = true;
+                 setTimeout(function () {
+                    _self.userMainProflag = false;
+                },2000);
+                    return;
+                }
+            }
+            _self.clubUpgradeUser.mainProduct = _self.userMainPros.join("/");
+            if (_self.loginLoading) { return false; }
+            this.$nextTick(function() {
+            var  params= {
+                    userId:_self.clubUpgradeUser.userId,
+                    clubId:_self.clubUpgradeUser.clubId,				//会所Id
+                    name:_self.clubUpgradeUser.name,
+                    linkMan:_self.clubUpgradeUser.linkMan,
+                    linkManIdentity:_self.clubUpgradeUser.linkManIdentity,
+                    shortName:_self.clubUpgradeUser.shortName,
+                    contractEmail:_self.clubUpgradeUser.contractEmail,
+                    provinceId:_self.clubUpgradeUser.provinceId,
+                    cityId:_self.clubUpgradeUser.cityId,
+                    townId:_self.clubUpgradeUser.townId,
+                    address:_self.clubUpgradeUser.address,
+                    socialCreditCode:_self.clubUpgradeUser.socialCreditCode,
+                    businessLicense:_self.clubUpgradeUser.businessLicense,
+                    shopPhoto:_self.clubUpgradeUser.shopPhoto,
+                    firstClubType:Number(_self.clubUpgradeUser.firstClubType), //机构类型分类 医美:0和生美:1
+                    secondClubType:Number(_self.clubUpgradeUser.secondClubType),	//机构类型二级分类 诊所:1,门诊:2,医院:3
+                    department:_self.clubUpgradeUser.department,				//科室
+                    medicalPracticeLicense:_self.clubUpgradeUser.medicalPracticeLicense,//资质图片
+                    mainProduct:_self.clubUpgradeUser.mainProduct,
+                };
+                _self.loginLoading = true;
+                UserApi.ClubUpgrade(params,function (response) {
+                    if(response.code === 0){
+                        CAIMEI.Alert('升级信息提交成功,审核通过后您的身份即成为会员机构并且获得500采美豆的奖励','知道了',true,function () {
+                            _self.requireBaseLoginStatus(response)
+                            _self.clubLoginIndex();
+                            _self.loginLoading = false;
+                        });
+                    } else {
+                        CAIMEI.Alert(response.msg,'确定',false);
+                        _self.loginLoading = false;
+                    }
+                });
+            });
+        },
+        clubLoginIndex:function(){// 跳过升级直接去个人中心
+            window.location.href = '/user/dashboard.html';
+        },
+        setNewMainProduct:function(arr){
+            var Array = [];
+            if(arr){
+                arr.forEach(function(item){
+                    var obj ={
+                        name:item,
+                    };
+                    Array.push(obj);
+                });
+            }
+            return Array
+        },
+        setNewMainpro:function(arr){//回显处理主营内容
+            var newArr = [];
+                if (arr!=null){
+                     arr.split('/').forEach(function(item){
+                    newArr.push(item);
+                });
+            }
+            return newArr
+        },
+        mainProAdd: function(){
+            var _self = this;
+            if (_self.mainProEdit.length>0) {
+                if (_self.mainPros.indexOf(_self.mainProEdit)<0){
+                    var obj = {name:_self.mainProEdit};
+                    if(Number(_self.clubUpgradeUser.firstClubType) == 1){
+                        if(_self.checkedArray(_self.mainProEdit,_self.medicaCampNullList)){
+                            CAIMEI.dialog('主营内容已存在!',false);
+                        }else {
+                            _self.medicaCampNullList.push(obj);
+                        }
+                    }else{
+                        if(_self.checkedArray(_self.mainProEdit,_self.mentuzCampNullList)){
+                            CAIMEI.dialog('主营内容已存在!',false);
+                        }else {
+                            _self.mentuzCampNullList.push(obj);
+                        }
+                    }
+                }
+            }
+        },
+        checkedArray:function(content,arr){//判断主营内容是否已存在
+            for(var i in arr){
+                if(arr[i].name == content){
+                    return true;
+                }
+            }
+            return false;
+        },
+        blurHandle: function(event) { // 失去焦点校验
+            var el = event.currentTarget;
+            verifyHandle(el);
+        },
+        uploadBusinessLicenseImageFn: function(event){//上传营业执照
+            var _this = this;
+            var inputDOM = _this.$refs.businessLicenseImage;
+            var file = inputDOM.files;
+            _this.formData.append('file', file[0]);
+            PublicApi.uploadimg(_this.formData,function(response){
+                _this.clubUpgradeUser.businessLicense = response.data;
+                event.target.value = '';
+            });
+        },
+        uploadMentuzImageFn: function(event){//上传营业执照
+            var _this = this;
+            var inputDOM = _this.$refs.businessMentuImage;
+            var file = inputDOM.files;
+            _this.formData.append('file', file[0]);
+            PublicApi.uploadimg(_this.formData,function(response){
+                _this.clubUpgradeUser.shopPhoto = response.data;
+                event.target.value = '';
+            });
+        },
+        uploadMedicaImageFn: function(event){//上传资质证书
+            var _this = this;
+            var inputDOM = _this.$refs.businessMedicaImage;
+            var file = inputDOM.files;
+            _this.formData.append('file', file[0]);
+            PublicApi.uploadimg(_this.formData,function(response){
+                _this.clubUpgradeUser.medicalPracticeLicense = response.data;
+                event.target.value = '';
+            });
+        },
+        deleteBusinessImage:function(){//清楚营业执照图片
+            this.clubUpgradeUser.businessLicense = '';
+        },
+        deleteMentuzImage:function(){//清楚门头照图片
+            this.clubUpgradeUser.shopPhoto = '';
+        },
+        deleteMedicalImage:function(){//清楚资质照图片
+            this.clubUpgradeUser.medicalPracticeLicense = '';
+        },
+        // GetProvinceFn: function(){//获取全部省份
+        //     var _this = this;
+        //     PublicApi.GetProvince({},function(response){
+        //         if(response.code == 0){
+        //             _this.ProvinceList =response.data;
+        //         }else{
+        //             CAIMEI.Alert(response.msg,'确定',false);
+        //         }
+        //     })
+        // },
+        //
+        // ChangeProvince:function () {//选择省份
+        //     var _self = this;
+        //     _self.addressfrom.provinceID = event.target.value;
+        //     _self.clubUpgradeUser.provinceID = event.target.value;
+        //     if(_self.addressfrom.provinceID==''){//省为请选择时市区初始化
+        //         _self.cityArray=[];
+        //         _self.townArray=[];
+        //         _self.clubUpgradeUser.townID=''
+        //     }else {
+        //         _self.GetCtiyFn();
+        //     }
+        // },
+        // ChangeGetcity:function(event){//加载市
+        //     var _self = this;
+        //     _self.addressfrom.cityID = event.target.value;
+        //     _self.clubUpgradeUser.cityID = event.target.value;
+        //     if(_self.addressfrom.cityID==''){
+        //         _self.townArray=[];
+        //     }else {
+        //         _self.GetTownFn();
+        //     }
+        // },
+        // ChangeGetcTown:function(event){//选择地区
+        //     var _self = this;
+        //     _self.clubUpgradeUser.townID = event.target.value;
+        // },
+        // GetCtiyFn: function(){//获取市
+        //     var _self = this;
+        //     PublicApi.GetCity({ type:1, parentId: _self.addressfrom.provinceID },function(response){
+        //         if(response.code == 0 ){
+        //             _self.cityArray = response.data;
+        //         }else{
+        //             CAIMEI.Alert(response.msg,'确定',false);
+        //         }
+        //     })
+        // },
+        // GetTownFn: function(){//获取区
+        //     var _self = this;
+        //     PublicApi.GetTown({ type:2, parentId: _self.addressfrom.cityID },function(response){
+        //         if(response.code == 0 ){
+        //             _self.townArray = response.data;
+        //         }else{
+        //             CAIMEI.Alert(response.msg,'确定',false);
+        //         }
+        //     })
+        // },
+        province:function () {
+           var _this = this;
+           _this.clubUpgradeUser.provinceId = event.target.value;
+            if(_this.clubUpgradeUser.provinceId==0){//省为请选择时市区初始化
+                _this.cityArray=[];
+                _this.townArray=[];
+                _this.clubUpgradeUser.townId=0;
+                _this.clubUpgradeUser.cityId = 0;
+            }else {
+              _this.getcity();
+              _this.clubUpgradeUser.cityId = 0;
+            }
+        },
+        getcity:function(event){//加载市
+           var _this = this;
+            PublicApi.GetCity({ type:1, parentId: _this.clubUpgradeUser.provinceId },function(response){
+                 if(response.code == 0 ){
+                    _this.cityArray = response.data;
+                     _this.clubUpgradeUser.cityId = event.target.value;
+                     if(_this.clubUpgradeUser.cityId==0){
+                           _this.townArray=[];
+                           _this.clubUpgradeUser.townId = 0;
+                     }else {
+                         _this.getcTown();
+                          _this.clubUpgradeUser.townId = 0;
+                     }
+                }
+            })
+        },
+         getcTown:function(event){
+            var _this = this;
+            PublicApi.GetTown({ type:2, parentId:_this.clubUpgradeUser.cityId},function(response){
+                if(response.code == 0 ){
+                    _this.townArray = response.data;
+                    _this.clubUpgradeUser.townId = event.target.value;
+                }else{
+                    CAIMEI.Alert(response.msg, '确定', false);
+                }
+            })
+        },
+        changeUserNameType:function(event){
+            $('#userNameType').parent().removeClass("error");
+            $('#userNameType').siblings('.errTips').removeClass("show");
+        },
+        showViewerImageFn:function(){//预览营业执照图片
+            var viewer = new Viewer(document.getElementById('businessLicenseImage'));
+        },
+        showViewerImageFn1:function(){//预览门头照图片
+            var viewer = new Viewer(document.getElementById('uploadMentuzImage'));
+        },
+        showViewerImageFn2:function(){//预览资质图片
+            var viewer = new Viewer(document.getElementById('medicalPracticeLicenseImg'));
+        },
+        scrollIntoView: function(){
+            document.getElementById('upgradePage').scrollIntoView({block: 'start', behavior: 'smooth'});
+        },
+    },
+    created: function () {
+
+    },
+    mounted: function () {
+        var _self = this;
+        if(globalUserData){
+            _self.clubUpgradeUser.userId = globalUserData.userId;
+            _self.clubUpgradeUser.clubId = globalUserData.clubId;
+            _self.infoInformationData();
+        }
+        PublicApi.GetProvince({},function(response){ //省份
+            if(response.code == 0){
+            console.log(response)
+            _self.provinceArray = response.data;
+            }else{
+                CAIMEI.Alert(response.msg, '确定', false);
+            }
+        });
+        $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
+        $('.navLayout').find('.navList').eq(1).addClass("on").find('.con').show().find('a').eq(0).addClass("on");
+    }
+});

+ 140 - 139
src/main/resources/templates/account/login.html

@@ -1,139 +1,140 @@
-<!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">
-    <template th:replace="components/analysis"></template>
-</head>
-<body>
-<!-- 引用头部 -->
-<template th:replace="account/components/header"></template>
-
-<!-- 二级页面 -->
-<div id="loginPage">
-    <div class="loginWrap clear" v-cloak>
-        <div class="login-image">
-            <img src="/img/account/login.png" alt="">
-        </div>
-        <div class="loginForm">
-            <div class="title">
-                <h2>生美 / 医美采购服务平台</h2>
-            </div>
-            <form v-show="!qrCodeLogin">
-                <div class="formLine-tabs">
-                    <a class="tabs-item" :class="{ current: loginTabs === 0 }" href="javascript:void(0);" @click="handleTabsClick(0)">验证码登录</a>
-                    <a class="tabs-item" :class="{ current: loginTabs === 1 }" href="javascript:void(0);" @click="handleTabsClick(1)">密码登录</a>
-                </div>
-                <div v-show="loginTabs === 0">
-                    <div class="formLine" >
-                        <input  class="massageBtn"  type="text" @input="handleCodeMobileInput" v-model.trim="codeParams.mobile" placeholder="请输入手机号码" :rule="rule.mobile" maxlength="11" @blur="blurHandle($event)" needverify>
-                        <i class="checked icon mIcon"></i>
-                        <span class="errTips icon mIcon" tips="请输入正确格式的手机号"></span>
-                    </div>
-                    <div class="formLine smscode">
-                        <input type="text" class="smscode" @input="handleCodeInput" v-model.trim="codeParams.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
-                        <i class="checked icon mIcon"></i>
-                        <span class="errTips icon mIcon" tips="请输入短信验证码"></span>
-                        <a class="code-btn" href="javascript:void(0);" @click="handleCheckMobile" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
-                    </div>
-                    <div class="submit clear">
-                        <button class="btn" type="button" @click="handleCodeLogin" :disabled="isInputsTrue" :class="[isInputsTrue ?'disabled':'']">登录</button>
-                    </div>
-                </div>
-                <div v-show="loginTabs === 1">
-                    <div class="formLine">
-                        <input type="text" v-model.trim="accountParams.mobileOrEmail" 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.trim="accountParams.password" 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="verify-wrap" id="verify-wrap"></div>
-                    <div class="submit clear">
-                        <button class="btn" type="button" @click="handleSubLogin" :disabled="isSlideFinishState" :class="[isSlideFinishState ?'disabled':'']">登录</button>
-                    </div>
-                </div>
-                <div class="forget">
-<!--                    <a class="btn" href="/club/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>-->
-                    <a class="btn" href="/club/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>
-                    <a href="/forget.html" v-if="loginTabs === 1" style="z-index: 99999">忘记密码?</a>
-                </div>
-                <template  v-if="!isPC && isWeChat" >
-                    <div class="login-line">
-                        <span>第三方登录</span>
-                    </div>
-                    <div class="submit clear">
-                        <a class="weChat" @click="handleWeChatLogin" href="javascript:void(0);">
-                            <i class="mIcon"></i>
-                        </a>
-                    </div>
-                </template>
-                <template  v-if="isPC" >
-                    <div class="login-line">
-                        <span>第三方登录</span>
-                    </div>
-                    <div class="from-wechat">
-                        <a href="javascript:void(0);" class="codeBtn WEB-icon" @click="toQrCodeLogin"></a>
-                    </div>
-                </template>
-            </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 class="bg" v-if="stautsfalse" :style="stautsfalse?'opacity:1':''">
-        <div class="bg-content">
-            <div class="bg-tittle"><p>提示</p><p class="icon mIcon" @click="handleHideBg"></p></div>
-            <div class="text-conten">
-                <p class="status">{{text}}</p>
-                <p class="tip-p">联系电话:0755-22907771</p>
-                <p class="tip-p">地址:深圳市福田区锦峰大厦21B</p>
-                <div  @click="information" v-if="infofalse" >修改申请信息</div>
-            </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="handleCloseCodeModel"></i></div>
-            <div class="model-content">
-                <div class="model-form">
-                    <input class="input codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="smsCodeParams.imgCode" maxlength="4" needverify>
-                    <div class="image"><img :src="codeImagePath" alt=""></div>
-                    <div class="refresh" @click="handleRefreshCodeImage">
-                        <i class="icon mIcon"></i>
-                        <span>刷新</span>
-                    </div>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
-                </div>
-                <div class="model-button">
-                    <div class="button"  @click="handleMobileCode">获取短信验证码</div>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-
-<!-- 引入底部 -->
-<template th:replace="article/components/article-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="@{/lib/slideVerify.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/account/mixins/loginMixins.js(v=${version})}"></script>
-<script charset="utf-8" type="text/javascript" th:src="@{/js/account/login.js(v=${version})}"></script>
-</body>
-</html>
+<!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">
+    <template th:replace="components/analysis"></template>
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 二级页面 -->
+<div id="loginPage">
+    <div class="loginWrap clear" v-cloak>
+        <div class="login-image">
+            <img src="/img/account/login.png" alt="">
+        </div>
+        <div class="loginForm">
+            <div class="title">
+                <h2>生美 / 医美采购服务平台</h2>
+            </div>
+            <form v-show="!qrCodeLogin">
+                <div class="formLine-tabs">
+                    <a class="tabs-item" :class="{ current: loginTabs === 0 }" href="javascript:void(0);" @click="handleTabsClick(0)">验证码登录</a>
+                    <a class="tabs-item" :class="{ current: loginTabs === 1 }" href="javascript:void(0);" @click="handleTabsClick(1)">密码登录</a>
+                </div>
+                <div v-show="loginTabs === 0">
+                    <div class="formLine" >
+                        <input  class="massageBtn"  type="text" @input="handleCodeMobileInput" v-model.trim="codeParams.mobile" placeholder="请输入手机号码" :rule="rule.mobile" maxlength="11" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入正确格式的手机号"></span>
+                    </div>
+                    <div class="formLine smscode">
+                        <input type="text" class="smscode" @input="handleCodeInput" v-model.trim="codeParams.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入短信验证码"></span>
+                        <a class="code-btn" href="javascript:void(0);" @click="handleCheckMobile" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                    </div>
+                    <div class="submit clear">
+                        <button class="btn" type="button" @click="handleCodeLogin" :disabled="isInputsTrue" :class="[isInputsTrue ?'disabled':'']">登录</button>
+                    </div>
+                </div>
+                <div v-show="loginTabs === 1">
+                    <div class="formLine">
+                        <input type="text" v-model.trim="accountParams.mobileOrEmail" 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.trim="accountParams.password" 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="verify-wrap" id="verify-wrap"></div>
+                    <div class="submit clear">
+                        <button class="btn" type="button" @click="handleSubLogin" :disabled="isSlideFinishState" :class="[isSlideFinishState ?'disabled':'']">登录</button>
+                    </div>
+                </div>
+                <div class="forget">
+<!--                    <a class="btn" href="/club/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>-->
+                    <a class="btn" href="/club/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>
+                    <a href="/forget.html" v-if="loginTabs === 1" style="z-index: 99999">忘记密码?</a>
+                </div>
+                <template  v-if="!isPC && isWeChat" >
+                    <div class="login-line">
+                        <span>第三方登录</span>
+                    </div>
+                    <div class="submit clear">
+                        <a class="weChat" @click="handleWeChatLogin" href="javascript:void(0);">
+                            <i class="mIcon"></i>
+                        </a>
+                    </div>
+                </template>
+                <template  v-if="isPC" >
+                    <div class="login-line">
+                        <span>第三方登录</span>
+                    </div>
+                    <div class="from-wechat">
+                        <a href="javascript:void(0);" class="codeBtn WEB-icon" @click="toQrCodeLogin"></a>
+                    </div>
+                </template>
+            </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 class="bg" v-if="stautsfalse" :style="stautsfalse?'opacity:1':''">
+        <div class="bg-content">
+            <div class="bg-tittle"><p>提示</p><p class="icon mIcon" @click="handleHideBg"></p></div>
+            <div class="text-conten">
+                <p class="status">{{text}}</p>
+                <p class="tip-p">联系电话:0755-22907771</p>
+                <p class="tip-p">地址:深圳市福田区锦峰大厦21B</p>
+                <div  @click="information" v-if="infofalse" >修改申请信息</div>
+            </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="handleCloseCodeModel"></i></div>
+            <div class="model-content">
+                <div class="model-form">
+                    <input class="input codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="smsCodeParams.imgCode" maxlength="4" needverify>
+                    <div class="image"><img :src="codeImagePath" alt=""></div>
+                    <div class="refresh" @click="handleRefreshCodeImage">
+                        <i class="icon mIcon"></i>
+                        <span>刷新</span>
+                    </div>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
+                </div>
+                <div class="model-button">
+                    <div class="button"  @click="handleMobileCode">获取短信验证码</div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- 引入底部 -->
+<template th:replace="article/components/article-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="@{/lib/slideVerify.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/document/database-share.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/mixins/loginMixins.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/login.js(v=${version})}"></script>
+</body>
+</html>

+ 278 - 277
src/main/resources/templates/account/register-club.html

@@ -1,277 +1,278 @@
-<!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/register.css(v=${version})}" rel="stylesheet" type="text/css">
-    <template th:replace="components/analysis"></template>
-</head>
-<body>
-<!-- 引用头部 -->
-<template th:replace="account/components/header"></template>
-
-<!-- 注册账号 -->
-<div id="registerPage">
-    <div class="signAccount clear" v-show="showTabContentIndex == 1">
-        <div class="title">欢迎机构入驻</div>
-        <div class="registerClub">
-            <!--机构注册表单-->
-            <form>
-                <div class="formLine">
-                    <p><em>*</em>联系人:</p>
-                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入联系人姓名" :rule="rule.name" maxlength="6" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
-                </div>
-                <div class="formLine" >
-                    <p><em>*</em>手机号(<span>手机号可用作登录账号</span>):</p>
-                    <input  class="massageBtn"  type="text" v-model.trim="clubUser.phone" placeholder="请输入您的常用手机号" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效电话号码"></span>
-                </div>
-                <div class="formLine code">
-                    <p><em>*</em>短信验证码:</p>
-                    <input type="text" v-model.trim="clubUser.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
-                    <a class="getCode" href="javascript:void(0);" @click="handleShowImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>登录密码:</p>
-                    <input type="password" v-model.trim="clubUser.password" autocomplete="new-password" placeholder="请输入8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>确认密码:</p>
-                    <input type="password" v-model.trim="clubUser.password2" autocomplete="new-password" placeholder="请再次确认密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
-                    <i class="icon showPwd" @click="showPassword($event)"></i>
-                </div>
-                <div class="formLine release-from">
-                    <p><em>*</em>是否需要为您匹配专属客户经理:</p>
-                    <p>建议选择“需要”,采美专业的客户经理会为您提供更多支持,帮助您轻松采购!</p>
-                    <div class="release-input">
-                        <div class="release-props">
-                            <label class="release-radio"><input type="radio" name="commodityType" v-model="clubUser.isSp" value="1"><i class="icon mIcon">需要</i></label>
-                            <label class="release-radio"><input type="radio" name="commodityType" v-model="clubUser.isSp" value="2" checked><i class="icon mIcon">不需要</i></label>
-                        </div>
-                    </div>
-                </div>
-                <div class="subLine">
-                    <p>
-                        <span class="iconfont icon-weigouxuan" :class="isAgree ? 'icon-gouxuan' : 'icon-weigouxuan' " @click="checkedIsAgreeFn"></span>
-                        我已阅读并同意
-                        <a href="/help/1036.html" target="_blank">《机构协议》</a>
-                        <a href="/help/1023.html" target="_blank">《用户协议》</a>及
-                        <a href="/help/1013.html" target="_blank">《隐私权政策》</a>
-                    </p>
-                    <span class="errTips icon mIcon show" v-if="isShowAgree">请阅读并同意协议</span>
-                    <div class="btn" :class="loginLoading ? 'disabled':''"  @click="clubRegister()" onclick="_czc.push(['_trackEvent','注册页面','点击','确认注册','','Um_Event_ConfirmRegister'])">注册</div>
-                </div>
-            </form>
-        </div>
-    </div>
-    <div class="signAccount upgrade clear" v-show="showTabContentIndex == 2">
-        <div class="title">升级资质机构</div>
-        <div class="title-tips"><p>补充以下详细信息即可升级为资质机构,享受更多更好的服务</p></div>
-        <div class="registerClub clear">
-            <!--机构注册表单-->
-            <form>
-                <div class="formLine">
-                    <p style="padding-left: 8px">联系人:{{ userName }}</p>
-                </div>
-                <div class="formLine">
-                    <p id="userNameType"><em>*</em>联系人身份:</p>
-                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="1"  @change="changeUserNameType"><i class="icon mIcon">老板</i></label>
-                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="2" checked  @change="changeUserNameType"><i class="icon mIcon">采购</i></label>
-                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="3" checked  @change="changeUserNameType"><i class="icon mIcon">运营</i></label>
-                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="4" checked  @change="changeUserNameType"><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon" tips="请选择联系人身份"></span>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>邮箱<span>(邮箱可用作登录账号,请使用公司邮箱或法人邮箱)</span>:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.contractEmail" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="32" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请输入与营业执照的注册名称保持一致的机构名称" :rule="rule.name" maxlength="30" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入机构名称"></span>
-                </div>
-                <div class="formLine">
-                    <p>机构简称<span>(示例:美丽人生)</span>:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.shortName" placeholder="请输入姓名或常用名" maxlength="10" >
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>联系地址:</p>
-                    <div class="address">
-                        <select name="provinceID" id="cProvince" @change="ChangeProvince">
-                            <option value="" >请选择</option>
-                            <option v-for="(item ,index) in ProvinceList" :key="index" :value='item.id' >{{item.name}}</option>
-                        </select>
-                        <select name="cityID" id="cCity" @change="ChangeGetcity($event)" >
-                            <option value="">请选择</option>
-                            <option v-for="(item ,index) in cityArray" :key="index" :value="item.id" >{{item.name}}</option>
-                        </select>
-                        <select name="townID" id="cTown" @change="ChangeGetcTown($event)" needverify>
-                            <option value="">请选择</option>
-                            <option v-for="(item ,index) in townArray" :key="index" :value="item.id"  >{{item.name}}</option>
-                        </select>
-                        <textarea placeholder="请输入您的详细联系地址"  v-model="clubUpgradeUser.address" @blur="blurHandle($event)" needverify></textarea>
-                        <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
-                    </div>
-                </div>
-                <div class="formLine">
-                    <p>营业执照编号:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
-                </div>
-                <div class="formLine clear">
-                    <div class="form-upload">
-                        <p><em>*</em>营业执照图片:</p>
-                        <div class="form-upload-image" v-if="clubUpgradeUser.businessLicense!=''">
-                            <img class="upload-img" :src="clubUpgradeUser.businessLicense" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
-                            <i class="icon mIcon" @click="deleteBusinessImage()"></i>
-                        </div>
-                        <div class="formLine-file" v-else id="formbusinessLicenseImage">
-                            <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
-                            <i class="icon mIcon file-biss"></i>
-                        </div>
-                        <span class="errTips icon mIcon"></span>
-                    </div>
-                    <div class="form-upload-tips">
-                        <i class="icon mIcon icon-wen"></i>
-                        <div class="wen-tips">点击图片可放大图片</div>
-                    </div>
-                </div>
-                <div class="formLine clear">
-                    <div class="form-upload">
-                        <p>门头照:</p>
-                        <div class="form-upload-image" v-if="clubUpgradeUser.shopPhoto!=''">
-                            <img class="upload-img" :src="clubUpgradeUser.shopPhoto" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
-                            <i class="icon mIcon" @click="deleteMentuzImage()"></i>
-                        </div>
-                        <div class="formLine-file" v-else>
-                            <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
-                            <i class="icon mIcon file-door"></i>
-                        </div>
-                    </div>
-                </div>
-                <div class="formLine">
-                    <p id="firstClubType"><em>*</em>机构类型:</p>
-                    <label class="diyBox" @click="handleChangeType(1)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1"  @change="ChangeFirstClubType"><i class="icon mIcon">医美</i></label>
-                    <label class="diyBox" @click="handleChangeType(2)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked  @change="ChangeFirstClubType"><i class="icon mIcon">生美</i></label>
-                    <label class="diyBox" @click="handleChangeType(3)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="3" checked  @change="ChangeFirstClubType"><i class="icon mIcon">项目公司</i></label>
-                    <label class="diyBox" @click="handleChangeType(4)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="4" checked  @change="ChangeFirstClubType"><i class="icon mIcon">个人</i></label>
-                    <label class="diyBox" @click="handleChangeType(5)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="5" checked  @change="ChangeFirstClubType"><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon" tips="请选择公司类型"></span>
-                </div>
-                <!-- 医美 -->
-                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="4" ><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon" tips="请选择公司类型"></span>
-                </div>
-                <!-- 生美 -->
-                <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon" tips="请选择公司类型">请选择公司类型</span>
-                </div>
-                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
-                    <div class="form-upload">
-                        <p><em>*</em>资质:</p>
-                        <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicense!=''">
-                            <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicense" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
-                            <i class="icon mIcon" @click="deleteMedicalImage()"></i>
-                        </div>
-                        <div class="formLine-file" v-else id="formmedicalPracticeLicenseImage">
-                            <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
-                            <i class="icon mIcon file-zizhi"></i>
-                        </div>
-                        <span class="errTips icon mIcon"></span>
-                    </div>
-                    <div class="form-upload-tips">
-                        <i class="icon icon-wen"></i>
-                        <div class="wen-tips">点击图片可放大图片</div>
-                    </div>
-                </div>
-                <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
-                    <p>科室:</p>
-                    <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
-                </div>
-                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
-                    <p><em>*</em>主营内容:</p>
-                    <p class="business clear" id="business">
-                        <label v-for="pro in medicaCampNullList" class="diyBox second" >
-                            <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                            <i class="icon mIcon">{{pro.name}}</i>
-                        </label>
-                    </p>
-                    <p class="business">
-                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                    </p>
-                    <div style="clear:both;"></div>
-                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                </div>
-                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
-                    <p><em>*</em>主营内容:</p>
-                    <p class="business clear" id="business">
-                        <label v-for="pro in mentuzCampNullList" class="diyBox second" @click>
-                            <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                            <i class="icon mIcon">{{pro.name}}</i>
-                        </label>
-                    </p>
-                    <p class="business">
-                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                    </p>
-                    <div style="clear:both;"></div>
-                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                </div>
-                <div class="subLine">
-                    <button class="btn-upgrade none" type="button" @click="clubLoginIndex()" onclick="_czc.push(['_trackEvent','机构注册','点击','跳过升级申请','','Um_Event_ClubUpgradeCanel'])">先跳过,以后再升级</button>
-                    <button class="btn-upgrade" :class="loginLoading ? 'disabled':''" type="button" @click="clubUpgrade()" onclick="_czc.push(['_trackEvent','机构注册','点击','确认提交升级申请','','Um_Event_ClubUpgradeConfirm'])">确认升级并提交审核</button>
-                </div>
-            </form>
-        </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 codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="imageCode" maxlength="4" needverify>
-                    <div class="image"><img :src="codeImagePath" alt=""></div>
-                    <div class="refresh" @click="handleRefreshCodeImage">
-                        <i class="icon mIcon"></i>
-                        <span>刷新</span>
-                    </div>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
-                </div>
-                <div class="model-button">
-                    <div class="button"  @click="getMobileCodeFn">获取短信验证码</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" th:src="@{/js/common/serviceapi/user.service.js(v=${version})}"></script>
-<script charset="utf-8" type="text/javascript" th:src="@{/js/account/register-club.js(v=${version})}"></script>
-</body>
-</html>
+<!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/register.css(v=${version})}" rel="stylesheet" type="text/css">
+    <template th:replace="components/analysis"></template>
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 注册账号 -->
+<div id="registerPage">
+    <div class="signAccount clear" v-show="showTabContentIndex == 1">
+        <div class="title">欢迎机构入驻</div>
+        <div class="registerClub">
+            <!--机构注册表单-->
+            <form>
+                <div class="formLine">
+                    <p><em>*</em>联系人:</p>
+                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入联系人姓名" :rule="rule.name" maxlength="6" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
+                </div>
+                <div class="formLine" >
+                    <p><em>*</em>手机号(<span>手机号可用作登录账号</span>):</p>
+                    <input  class="massageBtn"  type="text" v-model.trim="clubUser.phone" placeholder="请输入您的常用手机号" :rule="rule.phone" maxlength="11" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入有效电话号码"></span>
+                </div>
+                <div class="formLine code">
+                    <p><em>*</em>短信验证码:</p>
+                    <input type="text" v-model.trim="clubUser.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入有效短信验证码"></span>
+                    <a class="getCode" href="javascript:void(0);" @click="handleShowImage" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>登录密码:</p>
+                    <input type="password" v-model.trim="clubUser.password" autocomplete="new-password" placeholder="请输入8-16位数字和字母组合" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                    <i class="icon showPwd" @click="showPassword($event)"></i>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>确认密码:</p>
+                    <input type="password" v-model.trim="clubUser.password2" autocomplete="new-password" placeholder="请再次确认密码" :rule="rule.password" maxlength="32" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="8-16位数字或字母或字符"></span>
+                    <i class="icon showPwd" @click="showPassword($event)"></i>
+                </div>
+                <div class="formLine release-from">
+                    <p><em>*</em>是否需要为您匹配专属客户经理:</p>
+                    <p>建议选择“需要”,采美专业的客户经理会为您提供更多支持,帮助您轻松采购!</p>
+                    <div class="release-input">
+                        <div class="release-props">
+                            <label class="release-radio"><input type="radio" name="commodityType" v-model="clubUser.isSp" value="1"><i class="icon mIcon">需要</i></label>
+                            <label class="release-radio"><input type="radio" name="commodityType" v-model="clubUser.isSp" value="2" checked><i class="icon mIcon">不需要</i></label>
+                        </div>
+                    </div>
+                </div>
+                <div class="subLine">
+                    <p>
+                        <span class="iconfont icon-weigouxuan" :class="isAgree ? 'icon-gouxuan' : 'icon-weigouxuan' " @click="checkedIsAgreeFn"></span>
+                        我已阅读并同意
+                        <a href="/help/1036.html" target="_blank">《机构协议》</a>
+                        <a href="/help/1023.html" target="_blank">《用户协议》</a>及
+                        <a href="/help/1013.html" target="_blank">《隐私权政策》</a>
+                    </p>
+                    <span class="errTips icon mIcon show" v-if="isShowAgree">请阅读并同意协议</span>
+                    <div class="btn" :class="loginLoading ? 'disabled':''"  @click="clubRegister()" onclick="_czc.push(['_trackEvent','注册页面','点击','确认注册','','Um_Event_ConfirmRegister'])">注册</div>
+                </div>
+            </form>
+        </div>
+    </div>
+    <div class="signAccount upgrade clear" v-show="showTabContentIndex == 2">
+        <div class="title">升级资质机构</div>
+        <div class="title-tips"><p>补充以下详细信息即可升级为资质机构,享受更多更好的服务</p></div>
+        <div class="registerClub clear">
+            <!--机构注册表单-->
+            <form>
+                <div class="formLine">
+                    <p style="padding-left: 8px">联系人:{{ userName }}</p>
+                </div>
+                <div class="formLine">
+                    <p id="userNameType"><em>*</em>联系人身份:</p>
+                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="1"  @change="changeUserNameType"><i class="icon mIcon">老板</i></label>
+                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="2" checked  @change="changeUserNameType"><i class="icon mIcon">采购</i></label>
+                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="3" checked  @change="changeUserNameType"><i class="icon mIcon">运营</i></label>
+                    <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="4" checked  @change="changeUserNameType"><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon" tips="请选择联系人身份"></span>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>邮箱<span>(邮箱可用作登录账号,请使用公司邮箱或法人邮箱)</span>:</p>
+                    <input type="text" v-model.trim="clubUpgradeUser.contractEmail" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="32" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
+                    <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请输入与营业执照的注册名称保持一致的机构名称" :rule="rule.name" maxlength="30" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入机构名称"></span>
+                </div>
+                <div class="formLine">
+                    <p>机构简称<span>(示例:美丽人生)</span>:</p>
+                    <input type="text" v-model.trim="clubUpgradeUser.shortName" placeholder="请输入姓名或常用名" maxlength="10" >
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>联系地址:</p>
+                    <div class="address">
+                        <select name="provinceID" id="cProvince" @change="ChangeProvince">
+                            <option value="" >请选择</option>
+                            <option v-for="(item ,index) in ProvinceList" :key="index" :value='item.id' >{{item.name}}</option>
+                        </select>
+                        <select name="cityID" id="cCity" @change="ChangeGetcity($event)" >
+                            <option value="">请选择</option>
+                            <option v-for="(item ,index) in cityArray" :key="index" :value="item.id" >{{item.name}}</option>
+                        </select>
+                        <select name="townID" id="cTown" @change="ChangeGetcTown($event)" needverify>
+                            <option value="">请选择</option>
+                            <option v-for="(item ,index) in townArray" :key="index" :value="item.id"  >{{item.name}}</option>
+                        </select>
+                        <textarea placeholder="请输入您的详细联系地址"  v-model="clubUpgradeUser.address" @blur="blurHandle($event)" needverify></textarea>
+                        <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
+                    </div>
+                </div>
+                <div class="formLine">
+                    <p>营业执照编号:</p>
+                    <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
+                </div>
+                <div class="formLine clear">
+                    <div class="form-upload">
+                        <p><em>*</em>营业执照图片:</p>
+                        <div class="form-upload-image" v-if="clubUpgradeUser.businessLicense!=''">
+                            <img class="upload-img" :src="clubUpgradeUser.businessLicense" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
+                            <i class="icon mIcon" @click="deleteBusinessImage()"></i>
+                        </div>
+                        <div class="formLine-file" v-else id="formbusinessLicenseImage">
+                            <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
+                            <i class="icon mIcon file-biss"></i>
+                        </div>
+                        <span class="errTips icon mIcon"></span>
+                    </div>
+                    <div class="form-upload-tips">
+                        <i class="icon mIcon icon-wen"></i>
+                        <div class="wen-tips">点击图片可放大图片</div>
+                    </div>
+                </div>
+                <div class="formLine clear">
+                    <div class="form-upload">
+                        <p>门头照:</p>
+                        <div class="form-upload-image" v-if="clubUpgradeUser.shopPhoto!=''">
+                            <img class="upload-img" :src="clubUpgradeUser.shopPhoto" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
+                            <i class="icon mIcon" @click="deleteMentuzImage()"></i>
+                        </div>
+                        <div class="formLine-file" v-else>
+                            <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
+                            <i class="icon mIcon file-door"></i>
+                        </div>
+                    </div>
+                </div>
+                <div class="formLine">
+                    <p id="firstClubType"><em>*</em>机构类型:</p>
+                    <label class="diyBox" @click="handleChangeType(1)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1"  @change="ChangeFirstClubType"><i class="icon mIcon">医美</i></label>
+                    <label class="diyBox" @click="handleChangeType(2)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked  @change="ChangeFirstClubType"><i class="icon mIcon">生美</i></label>
+                    <label class="diyBox" @click="handleChangeType(3)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="3" checked  @change="ChangeFirstClubType"><i class="icon mIcon">项目公司</i></label>
+                    <label class="diyBox" @click="handleChangeType(4)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="4" checked  @change="ChangeFirstClubType"><i class="icon mIcon">个人</i></label>
+                    <label class="diyBox" @click="handleChangeType(5)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="5" checked  @change="ChangeFirstClubType"><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon" tips="请选择公司类型"></span>
+                </div>
+                <!-- 医美 -->
+                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="4" ><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon" tips="请选择公司类型"></span>
+                </div>
+                <!-- 生美 -->
+                <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon" tips="请选择公司类型">请选择公司类型</span>
+                </div>
+                <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                    <div class="form-upload">
+                        <p><em>*</em>资质:</p>
+                        <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicense!=''">
+                            <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicense" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
+                            <i class="icon mIcon" @click="deleteMedicalImage()"></i>
+                        </div>
+                        <div class="formLine-file" v-else id="formmedicalPracticeLicenseImage">
+                            <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
+                            <i class="icon mIcon file-zizhi"></i>
+                        </div>
+                        <span class="errTips icon mIcon"></span>
+                    </div>
+                    <div class="form-upload-tips">
+                        <i class="icon icon-wen"></i>
+                        <div class="wen-tips">点击图片可放大图片</div>
+                    </div>
+                </div>
+                <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
+                    <p>科室:</p>
+                    <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
+                </div>
+                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
+                    <p><em>*</em>主营内容:</p>
+                    <p class="business clear" id="business">
+                        <label v-for="pro in medicaCampNullList" class="diyBox second" >
+                            <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
+                            <i class="icon mIcon">{{pro.name}}</i>
+                        </label>
+                    </p>
+                    <p class="business">
+                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                    </p>
+                    <div style="clear:both;"></div>
+                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                </div>
+                <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
+                    <p><em>*</em>主营内容:</p>
+                    <p class="business clear" id="business">
+                        <label v-for="pro in mentuzCampNullList" class="diyBox second" @click>
+                            <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
+                            <i class="icon mIcon">{{pro.name}}</i>
+                        </label>
+                    </p>
+                    <p class="business">
+                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                    </p>
+                    <div style="clear:both;"></div>
+                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                </div>
+                <div class="subLine">
+                    <button class="btn-upgrade none" type="button" @click="clubLoginIndex()" onclick="_czc.push(['_trackEvent','机构注册','点击','跳过升级申请','','Um_Event_ClubUpgradeCanel'])">先跳过,以后再升级</button>
+                    <button class="btn-upgrade" :class="loginLoading ? 'disabled':''" type="button" @click="clubUpgrade()" onclick="_czc.push(['_trackEvent','机构注册','点击','确认提交升级申请','','Um_Event_ClubUpgradeConfirm'])">确认升级并提交审核</button>
+                </div>
+            </form>
+        </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 codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="imageCode" maxlength="4" needverify>
+                    <div class="image"><img :src="codeImagePath" alt=""></div>
+                    <div class="refresh" @click="handleRefreshCodeImage">
+                        <i class="icon mIcon"></i>
+                        <span>刷新</span>
+                    </div>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
+                </div>
+                <div class="model-button">
+                    <div class="button"  @click="getMobileCodeFn">获取短信验证码</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" th:src="@{/js/common/serviceapi/user.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/document/database-share.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/register-club.js(v=${version})}"></script>
+</body>
+</html>

+ 139 - 138
src/main/resources/templates/account/supplierTologin.html

@@ -1,138 +1,139 @@
-<!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">
-  <template th:replace="components/analysis"></template>
-</head>
-<body>
-<!-- 引用头部 -->
-<template th:replace="account/components/header"></template>
-
-<!-- 二级页面 -->
-<div id="loginPage">
-  <div class="loginWrap clear" v-cloak>
-    <div class="login-image">
-      <img src="/img/account/login.png" alt="">
-    </div>
-    <div class="loginForm">
-      <div class="title">
-        <h2>生美 / 医美采购服务平台</h2>
-      </div>
-      <form v-show="!qrCodeLogin">
-        <div class="formLine-tabs">
-          <a class="tabs-item" :class="{ current: loginTabs === 0 }" href="javascript:void(0);" @click="handleTabsClick(0)">验证码登录</a>
-          <a class="tabs-item" :class="{ current: loginTabs === 1 }" href="javascript:void(0);" @click="handleTabsClick(1)">密码登录</a>
-        </div>
-        <div v-show="loginTabs === 0">
-          <div class="formLine" >
-            <input  class="massageBtn"  type="text" @input="handleCodeMobileInput" v-model.trim="codeParams.mobile" placeholder="请输入手机号码" :rule="rule.mobile" maxlength="11" @blur="blurHandle($event)" needverify>
-            <i class="checked icon mIcon"></i>
-            <span class="errTips icon mIcon" tips="请输入正确格式的手机号"></span>
-          </div>
-          <div class="formLine smscode">
-            <input type="text" class="smscode" @input="handleCodeInput" v-model.trim="codeParams.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
-            <i class="checked icon mIcon"></i>
-            <span class="errTips icon mIcon" tips="请输入短信验证码"></span>
-            <a class="code-btn" href="javascript:void(0);" @click="handleCheckMobile" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
-          </div>
-          <div class="submit clear">
-            <button class="btn" type="button" @click="handleCodeLogin" :disabled="isInputsTrue" :class="[isInputsTrue ?'disabled':'']">登录</button>
-          </div>
-        </div>
-        <div v-show="loginTabs === 1">
-          <div class="formLine">
-            <input type="text" v-model.trim="accountParams.mobileOrEmail" 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.trim="accountParams.password" 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="verify-wrap" id="verify-wrap"></div>
-          <div class="submit clear">
-            <button class="btn" type="button" @click="handleSubLogin" :disabled="isSlideFinishState" :class="[isSlideFinishState ?'disabled':'']">登录</button>
-          </div>
-        </div>
-        <div class="forget">
-          <a class="btn" href="/supplier/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>
-          <a href="/forget.html" v-if="loginTabs === 1" style="z-index: 99999">忘记密码?</a>
-        </div>
-        <template  v-if="!isPC && isWeChat" >
-          <div class="login-line">
-            <span>第三方登录</span>
-          </div>
-          <div class="submit clear">
-            <a class="weChat" @click="handleWeChatLogin" href="javascript:void(0);">
-              <i class="mIcon"></i>
-            </a>
-          </div>
-        </template>
-        <template  v-if="isPC" >
-          <div class="login-line">
-            <span>第三方登录</span>
-          </div>
-          <div class="from-wechat">
-            <a href="javascript:void(0);" class="codeBtn WEB-icon" @click="toQrCodeLogin"></a>
-          </div>
-        </template>
-      </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 class="bg" v-if="stautsfalse" :style="stautsfalse?'opacity:1':''">
-    <div class="bg-content">
-      <div class="bg-tittle"><p>提示</p><p class="icon mIcon" @click="handleHideBg"></p></div>
-      <div class="text-conten">
-        <p class="status">{{text}}</p>
-        <p class="tip-p">联系电话:0755-22907771</p>
-        <p class="tip-p">地址:深圳市福田区锦峰大厦21B</p>
-        <div  @click="information" v-if="infofalse" >修改申请信息</div>
-      </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="handleCloseCodeModel"></i></div>
-      <div class="model-content">
-        <div class="model-form">
-          <input class="input codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="smsCodeParams.imgCode" maxlength="4" needverify>
-          <div class="image"><img :src="codeImagePath" alt=""></div>
-          <div class="refresh" @click="handleRefreshCodeImage">
-            <i class="icon mIcon"></i>
-            <span>刷新</span>
-          </div>
-          <i class="checked icon mIcon"></i>
-          <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
-        </div>
-        <div class="model-button">
-          <div class="button"  @click="handleMobileCode">获取短信验证码</div>
-        </div>2
-      </div>
-    </div>
-  </div>
-</div>
-
-<!-- 引入底部 -->
-<template th:replace="article/components/article-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="@{/lib/slideVerify.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/account/mixins/loginMixins.js(v=${version})}"></script>
-<script charset="utf-8" type="text/javascript" th:src="@{/js/account/login.js(v=${version})}"></script>
-</body>
-</html>
+<!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">
+  <template th:replace="components/analysis"></template>
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 二级页面 -->
+<div id="loginPage">
+  <div class="loginWrap clear" v-cloak>
+    <div class="login-image">
+      <img src="/img/account/login.png" alt="">
+    </div>
+    <div class="loginForm">
+      <div class="title">
+        <h2>生美 / 医美采购服务平台</h2>
+      </div>
+      <form v-show="!qrCodeLogin">
+        <div class="formLine-tabs">
+          <a class="tabs-item" :class="{ current: loginTabs === 0 }" href="javascript:void(0);" @click="handleTabsClick(0)">验证码登录</a>
+          <a class="tabs-item" :class="{ current: loginTabs === 1 }" href="javascript:void(0);" @click="handleTabsClick(1)">密码登录</a>
+        </div>
+        <div v-show="loginTabs === 0">
+          <div class="formLine" >
+            <input  class="massageBtn"  type="text" @input="handleCodeMobileInput" v-model.trim="codeParams.mobile" placeholder="请输入手机号码" :rule="rule.mobile" maxlength="11" @blur="blurHandle($event)" needverify>
+            <i class="checked icon mIcon"></i>
+            <span class="errTips icon mIcon" tips="请输入正确格式的手机号"></span>
+          </div>
+          <div class="formLine smscode">
+            <input type="text" class="smscode" @input="handleCodeInput" v-model.trim="codeParams.code" autocomplete="off" placeholder="请输入短信验证码" :rule="rule.code"  maxlength="6" @blur="blurHandle($event)" needverify>
+            <i class="checked icon mIcon"></i>
+            <span class="errTips icon mIcon" tips="请输入短信验证码"></span>
+            <a class="code-btn" href="javascript:void(0);" @click="handleCheckMobile" :class="[isMobileDisabled  ? 'disabled' : '']">{{ mobileCodeText }}</a>
+          </div>
+          <div class="submit clear">
+            <button class="btn" type="button" @click="handleCodeLogin" :disabled="isInputsTrue" :class="[isInputsTrue ?'disabled':'']">登录</button>
+          </div>
+        </div>
+        <div v-show="loginTabs === 1">
+          <div class="formLine">
+            <input type="text" v-model.trim="accountParams.mobileOrEmail" 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.trim="accountParams.password" 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="verify-wrap" id="verify-wrap"></div>
+          <div class="submit clear">
+            <button class="btn" type="button" @click="handleSubLogin" :disabled="isSlideFinishState" :class="[isSlideFinishState ?'disabled':'']">登录</button>
+          </div>
+        </div>
+        <div class="forget">
+          <a class="btn" href="/supplier/register.html" rel="nofollow" onclick="_czc.push(['_trackEvent','登录页面','注册','点击','','Um_Event_Regirster'])">免费注册</a>
+          <a href="/forget.html" v-if="loginTabs === 1" style="z-index: 99999">忘记密码?</a>
+        </div>
+        <template  v-if="!isPC && isWeChat" >
+          <div class="login-line">
+            <span>第三方登录</span>
+          </div>
+          <div class="submit clear">
+            <a class="weChat" @click="handleWeChatLogin" href="javascript:void(0);">
+              <i class="mIcon"></i>
+            </a>
+          </div>
+        </template>
+        <template  v-if="isPC" >
+          <div class="login-line">
+            <span>第三方登录</span>
+          </div>
+          <div class="from-wechat">
+            <a href="javascript:void(0);" class="codeBtn WEB-icon" @click="toQrCodeLogin"></a>
+          </div>
+        </template>
+      </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 class="bg" v-if="stautsfalse" :style="stautsfalse?'opacity:1':''">
+    <div class="bg-content">
+      <div class="bg-tittle"><p>提示</p><p class="icon mIcon" @click="handleHideBg"></p></div>
+      <div class="text-conten">
+        <p class="status">{{text}}</p>
+        <p class="tip-p">联系电话:0755-22907771</p>
+        <p class="tip-p">地址:深圳市福田区锦峰大厦21B</p>
+        <div  @click="information" v-if="infofalse" >修改申请信息</div>
+      </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="handleCloseCodeModel"></i></div>
+      <div class="model-content">
+        <div class="model-form">
+          <input class="input codeMsgButton" type="text" placeholder="请输入图形验证码" v-model="smsCodeParams.imgCode" maxlength="4" needverify>
+          <div class="image"><img :src="codeImagePath" alt=""></div>
+          <div class="refresh" @click="handleRefreshCodeImage">
+            <i class="icon mIcon"></i>
+            <span>刷新</span>
+          </div>
+          <i class="checked icon mIcon"></i>
+          <span class="errTips icon mIcon" tips="请输入图形验证码"></span>
+        </div>
+        <div class="model-button">
+          <div class="button"  @click="handleMobileCode">获取短信验证码</div>
+        </div>2
+      </div>
+    </div>
+  </div>
+</div>
+
+<!-- 引入底部 -->
+<template th:replace="article/components/article-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="@{/lib/slideVerify.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/document/database-share.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/mixins/loginMixins.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/login.js(v=${version})}"></script>
+</body>
+</html>

+ 147 - 146
src/main/resources/templates/account/upgrade.html

@@ -1,146 +1,147 @@
-<!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/upgrade.css(v=${version})}" rel="stylesheet" type="text/css">
-    <template th:replace="components/analysis"></template>
-</head>
-<body>
-<!-- 引用头部 -->
-<template th:replace="account/components/header"></template>
-
-<!-- 升级机构 -->
-<div id="upgradePage">
-    <div class="signAccount">
-        <div class="title">升级会员机构</div>
-        <div class="title-tips"><p>补充以下详细信息即可升级为会员机构,享受更多更好的服务</p></div>
-        <div class="registerClub clear">
-            <!--机构注册表单-->
-            <form>
-                <div class="formLine">
-                    <p><em>*</em>邮箱:</p>
-                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入邮箱地址" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
-                    <input type="text" v-model.trim="clubUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
-                </div>
-                <div class="formLine">
-                    <p>机构简称<span>(示例:美丽人生)</span>:</p>
-                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入机构简称" :rule="rule.name" maxlength="50" needverify>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>联系地址:</p>
-                    <div class="address">
-                        <select><option value="">请选择</option></select>
-                        <select><option value="">请选择</option></select>
-                        <select><option value="">请选择</option></select>
-                        <textarea placeholder="建议您如实填写详细收货地址,例如:街道名称,门牌号码,楼层和房间号等信息"></textarea>
-                    </div>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
-                </div>
-                <div class="formLine">
-                    <p>营业执照:</p>
-                    <input type="text" v-model.trim="clubUser.businessLicense" placeholder="请输入统一社会信用代码" :rule="rule.license" maxlength="50" @blur="blurHandle($event)" needverify>
-                    <i class="checked icon mIcon"></i>
-                    <span class="errTips icon mIcon" tips="请输入正确的统一社会信用代码"></span>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>营业执照图片:</p>
-                    <div v-if="clubUser.businessLicenseImage!=''">
-                        <img :src="clubUser.businessLicenseImage" alt="">
-                    </div>
-                    <div class="formLine-file" v-else>
-                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
-                        <i class="icon file-biss"></i>
-                    </div>
-                    <span class="errTips icon mIcon"></span>
-                </div>
-                <div class="formLine">
-                    <p>门头照:</p>
-                    <div v-if="clubUser.businessLicenseImage!=''">
-                        <img :src="clubUser.businessLicenseImage" alt="">
-                    </div>
-                    <div class="formLine-file" v-else>
-                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
-                        <i class="icon file-door"></i>
-                    </div>
-                    <span class="errTips icon mIcon"></span>
-                </div>
-                <div class="formLine">
-                    <p><em>*</em>机构类型:</p>
-                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUser.firstShopType" value="1" ><i class="icon mIcon">医美</i></label>
-                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUser.firstShopType" value="2" checked><i class="icon mIcon">生美</i></label>
-                    <span class="errTips icon mIcon mIcon" tips="请选择公司类型"></span>
-                </div>
-                <!-- 医美 -->
-                <div v-show="clubUser.firstShopType == 1" class="formLine">
-                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="1" checked><i class="icon mIcon">诊所</i></label>
-                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="2" ><i class="icon mIcon">门诊</i></label>
-                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="3" ><i class="icon mIcon">医院</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon mIcon" tips="请选择公司类型"></span>
-                </div>
-                <!-- 生美 -->
-                <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
-                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
-                    <span class="errTips icon mIcon" tips="请选择公司类型" ></span>
-                </div>
-                <div v-show="clubUser.firstShopType == 1" class="formLine">
-                    <p>资质:</p>
-                    <div v-if="clubUser.businessLicenseImage!=''">
-                        <img :src="clubUser.businessLicenseImage" alt="">
-                    </div>
-                    <div class="formLine-file" v-else>
-                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
-                        <i class="icon file-zizhi"></i>
-                    </div>
-                    <span class="errTips icon mIcon"></span>
-                </div>
-                <div v-show="clubUser.department != 1" class="formLine">
-                    <p>科室:</p>
-                    <input type="text" v-model.trim="clubUser.name" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" :rule="rule.name" maxlength="50">
-                </div>
-                <div class="formLine clear" v-show="clubUser.firstShopType == 1">
-                    <p><em>*</em>主营内容:</p>
-                    <p class="business">
-                        <label v-for="pro in mentuzCampNullList" class="diyBox second"><input type="checkbox" name="secondShopType" v-model="clubUser.mainPros" :value="pro" ><i class="icon mIcon">{{pro.name}}</i></label>
-                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                    </p>
-                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                </div>
-                <div class="formLine clear" v-show="clubUser.firstShopType == 2">
-                    <p><em>*</em>主营内容:</p>
-                    <p class="business">
-                        <label v-for="pro in medicaCampNullList" class="diyBox second"><input type="checkbox" name="secondShopType" v-model="clubUser.mainPros" :value="pro" ><i class="icon mIcon">{{pro.name}}</i></label>
-                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                    </p>
-                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
-                </div>
-                <div class="subLine">
-                    <button class="btn" type="button" @click="clubRegister()">提交审核</button>
-                </div>
-            </form>
-        </div>
-    </div>
-</div>
-
-<!-- 引入底部 -->
-<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/user.service.js(v=${version})}"></script>
-<script charset="utf-8" type="text/javascript" th:src="@{/js/account/upgrade.js(v=${version})}"></script>
-</body>
-</html>
+<!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/upgrade.css(v=${version})}" rel="stylesheet" type="text/css">
+    <template th:replace="components/analysis"></template>
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="account/components/header"></template>
+
+<!-- 升级机构 -->
+<div id="upgradePage">
+    <div class="signAccount">
+        <div class="title">升级会员机构</div>
+        <div class="title-tips"><p>补充以下详细信息即可升级为会员机构,享受更多更好的服务</p></div>
+        <div class="registerClub clear">
+            <!--机构注册表单-->
+            <form>
+                <div class="formLine">
+                    <p><em>*</em>邮箱:</p>
+                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入邮箱地址" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
+                    <input type="text" v-model.trim="clubUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
+                </div>
+                <div class="formLine">
+                    <p>机构简称<span>(示例:美丽人生)</span>:</p>
+                    <input type="text" v-model.trim="clubUser.name" placeholder="请输入机构简称" :rule="rule.name" maxlength="50" needverify>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>联系地址:</p>
+                    <div class="address">
+                        <select><option value="">请选择</option></select>
+                        <select><option value="">请选择</option></select>
+                        <select><option value="">请选择</option></select>
+                        <textarea placeholder="建议您如实填写详细收货地址,例如:街道名称,门牌号码,楼层和房间号等信息"></textarea>
+                    </div>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
+                </div>
+                <div class="formLine">
+                    <p>营业执照:</p>
+                    <input type="text" v-model.trim="clubUser.businessLicense" placeholder="请输入统一社会信用代码" :rule="rule.license" maxlength="50" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的统一社会信用代码"></span>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>营业执照图片:</p>
+                    <div v-if="clubUser.businessLicenseImage!=''">
+                        <img :src="clubUser.businessLicenseImage" alt="">
+                    </div>
+                    <div class="formLine-file" v-else>
+                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
+                        <i class="icon file-biss"></i>
+                    </div>
+                    <span class="errTips icon mIcon"></span>
+                </div>
+                <div class="formLine">
+                    <p>门头照:</p>
+                    <div v-if="clubUser.businessLicenseImage!=''">
+                        <img :src="clubUser.businessLicenseImage" alt="">
+                    </div>
+                    <div class="formLine-file" v-else>
+                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
+                        <i class="icon file-door"></i>
+                    </div>
+                    <span class="errTips icon mIcon"></span>
+                </div>
+                <div class="formLine">
+                    <p><em>*</em>机构类型:</p>
+                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUser.firstShopType" value="1" ><i class="icon mIcon">医美</i></label>
+                    <label class="diyBox"><input type="radio" name="firstShopType" v-model="clubUser.firstShopType" value="2" checked><i class="icon mIcon">生美</i></label>
+                    <span class="errTips icon mIcon mIcon" tips="请选择公司类型"></span>
+                </div>
+                <!-- 医美 -->
+                <div v-show="clubUser.firstShopType == 1" class="formLine">
+                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="1" checked><i class="icon mIcon">诊所</i></label>
+                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="2" ><i class="icon mIcon">门诊</i></label>
+                    <label class="diyBox second"><input type="radio" name="department" v-model="clubUser.department" value="3" ><i class="icon mIcon">医院</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon mIcon" tips="请选择公司类型"></span>
+                </div>
+                <!-- 生美 -->
+                <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
+                    <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
+                    <span class="errTips icon mIcon" tips="请选择公司类型" ></span>
+                </div>
+                <div v-show="clubUser.firstShopType == 1" class="formLine">
+                    <p>资质:</p>
+                    <div v-if="clubUser.businessLicenseImage!=''">
+                        <img :src="clubUser.businessLicenseImage" alt="">
+                    </div>
+                    <div class="formLine-file" v-else>
+                        <input class="file" type="file" v-model="clubUser.businessLicenseImage">
+                        <i class="icon file-zizhi"></i>
+                    </div>
+                    <span class="errTips icon mIcon"></span>
+                </div>
+                <div v-show="clubUser.department != 1" class="formLine">
+                    <p>科室:</p>
+                    <input type="text" v-model.trim="clubUser.name" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" :rule="rule.name" maxlength="50">
+                </div>
+                <div class="formLine clear" v-show="clubUser.firstShopType == 1">
+                    <p><em>*</em>主营内容:</p>
+                    <p class="business">
+                        <label v-for="pro in mentuzCampNullList" class="diyBox second"><input type="checkbox" name="secondShopType" v-model="clubUser.mainPros" :value="pro" ><i class="icon mIcon">{{pro.name}}</i></label>
+                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                    </p>
+                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                </div>
+                <div class="formLine clear" v-show="clubUser.firstShopType == 2">
+                    <p><em>*</em>主营内容:</p>
+                    <p class="business">
+                        <label v-for="pro in medicaCampNullList" class="diyBox second"><input type="checkbox" name="secondShopType" v-model="clubUser.mainPros" :value="pro" ><i class="icon mIcon">{{pro.name}}</i></label>
+                        <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                        <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                    </p>
+                    <span class="errTips icon mIcon" tips="请选择或添加主营产品"></span>
+                </div>
+                <div class="subLine">
+                    <button class="btn" type="button" @click="clubRegister()">提交审核</button>
+                </div>
+            </form>
+        </div>
+    </div>
+</div>
+
+<!-- 引入底部 -->
+<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/user.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/document/database-share.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/account/upgrade.js(v=${version})}"></script>
+</body>
+</html>

+ 215 - 214
src/main/resources/templates/user-center/setting/upgrade.html

@@ -1,214 +1,215 @@
-<!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/base/center.css(v=${version})}" rel="stylesheet" type="text/css">
-    <link th:href="@{/css/user-center/setting/upgrade.css(v=${version})}" rel="stylesheet" type="text/css">
-    <template th:replace="components/analysis"></template>
-</head>
-<body>
-<!-- 引用头部 -->
-<template th:replace="components/header"></template>
-<!-- 升级机构 -->
-<div id="upgradePage">
-    <div class="navLayout" v-cloak>
-        <div v-if="isPC" class="crumbs">
-            <span>机构管理中心</span>
-            <span>&gt;</span>
-            <span>机构升级</span>
-        </div>
-        <div class="wrap clear">
-            <!--左侧导航-->
-            <template th:replace="user-center/components/tableft"></template>
-            <div class="right">
-                <!--loading-->
-                <div v-if="isRequset" class="loading">
-                    <img src="/img/base/loading.gif">
-                </div>
-                <div class="container clear" v-else>
-                    <div class="title">升级资质机构</div>
-                    <div class="title-tips"><p>补充以下详细信息即可升级为资质机构,享受更多更好的服务</p></div>
-                    <div class="registerClub clear">
-                        <form>
-                            <div class="formLine">
-                                <p style="padding-left: 8px">联系人:{{ userName }}</p>
-                            </div>
-                            <div class="formLine">
-                                <p id="userNameType"><em>*</em>联系人身份:</p>
-                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="1"  @change="changeUserNameType"><i class="icon mIcon">老板</i></label>
-                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="2" checked  @change="changeUserNameType"><i class="icon mIcon">采购</i></label>
-                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="3" checked  @change="changeUserNameType"><i class="icon mIcon">运营</i></label>
-                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="4" checked  @change="changeUserNameType"><i class="icon mIcon">其他</i></label>
-                                <span class="errTips icon mIcon" tips="请选择联系人身份"></span>
-                            </div>
-                            <div class="formLine">
-                                <p><em>*</em>邮箱:</p>
-                                <input type="text" v-model.trim="clubUpgradeUser.contractEmail" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="50" @blur="blurHandle($event)" needverify>
-                                <i class="checked icon mIcon"></i>
-                                <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
-                            </div>
-                            <div class="formLine">
-                                <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
-                                <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
-                                <i class="checked icon mIcon"></i>
-                                <span class="errTips icon mIcon" tips="请输入机构名称"></span>
-                            </div>
-                            <div class="formLine">
-                                <p>机构简称<span>(示例:美丽人生)</span>:</p>
-                                <input type="text" v-model.trim="clubUpgradeUser.shortName" placeholder="请输入机构简称" :rule="rule.name" maxlength="50" needverify>
-                            </div>
-                            <div class="formLine">
-                                <p><em>*</em>联系地址:</p>
-                                <div class="address">
-                                    <select name="provinceID" id="cProvince" @change="province" v-model="clubUpgradeUser.provinceId">
-                                        <option value="0" >请选择</option>
-                                        <option v-for="(item ,index) in provinceArray" :key="index" :value='item.id' >{{item.name}}</option>
-                                    </select>
-                                    <select name="cityID" id="cCity" @change="getcity($event)" v-model="clubUpgradeUser.cityId">
-                                        <option value="0" >请选择</option>
-                                        <option v-for="(item ,index) in cityArray" :key="index" :value="item.id" >{{item.name}}</option>
-                                    </select>
-                                    <select name="townID" id="cTown" @change="getcTown($event)" v-model="clubUpgradeUser.townId">
-                                        <option value="0" >请选择</option>
-                                        <option v-for="(item ,index) in townArray" :key="index" :value="item.id"  >{{item.name}}</option>
-                                    </select>
-                                    <textarea placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  v-model="clubUpgradeUser.address"></textarea>
-                                </div>
-                                <i class="checked icon mIcon"></i>
-                                <span class="errTips icon mIcon" tips="" :class="flagshow?'show':''">请输入正确的联系地址</span>
-                            </div>
-                            <div class="formLine">
-                                <p><em>*</em>营业执照:</p>
-                                <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
-                                <i class="checked icon mIcon"></i>
-                                <span class="errTips icon mIcon" tips="请输入统一社会信用代码"></span>
-                            </div>
-                            <div class="formLine clear">
-                                <div class="form-upload">
-                                    <p><em>*</em>营业执照图片:</p>
-                                    <div class="form-upload-image" v-if="clubUpgradeUser.businessLicense!=''&&clubUpgradeUser.businessLicense!=null">
-                                        <img class="upload-img" :src="clubUpgradeUser.businessLicense" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
-                                        <i class="icon mIcon" @click="deleteBusinessImage()"></i>
-                                    </div>
-                                    <div class="formLine-file" v-else>
-                                        <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
-                                        <i class="icon mIcon file-biss"></i>
-                                    </div>
-                                    <span class="errTips icon mIcon" :class="businessflag?'show':''" >请上传营业执照图片</span>
-                                </div>
-                                <div class="form-upload-tips">
-                                    <i class="icon mIcon icon-wen"></i>
-                                    <div class="wen-tips">点击图片可放大图片</div>
-                                </div>
-                            </div>
-                            <div class="formLine clear">
-                                <div class="form-upload">
-                                    <p>门头照:</p>
-                                    <div class="form-upload-image" v-if="clubUpgradeUser.shopPhoto!='' && clubUpgradeUser.shopPhoto!=null">
-                                        <img class="upload-img" :src="clubUpgradeUser.shopPhoto" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
-                                        <i class="icon mIcon" @click="deleteMentuzImage()"></i>
-                                    </div>
-                                    <div class="formLine-file" v-else>
-                                        <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
-                                        <i class="icon mIcon file-door"></i>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="formLine">
-                                <p><em>*</em>机构类型:</p>
-                                <label class="diyBox" @click="handleChangeType(1)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" ><i class="icon mIcon">医美</i></label>
-                                <label class="diyBox" @click="handleChangeType(2)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked><i class="icon mIcon">生美</i></label>
-                                <label class="diyBox" @click="handleChangeType(3)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="3" checked><i class="icon mIcon">项目公司</i></label>
-                                <label class="diyBox" @click="handleChangeType(4)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="4" checked><i class="icon mIcon">个人</i></label>
-                                <label class="diyBox" @click="handleChangeType(5)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="5" checked><i class="icon mIcon">其他</i></label>
-                                <span class="errTips icon mIcon" tips="" :class="typeflag?'show':''">请选择公司类型</span>
-                            </div>
-                            <!-- 医美 -->
-                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="4" ><i class="icon mIcon">其他</i></label>
-                                <span class="errTips icon mIcon" tips="" :class="secondtypeflag?'show':''">请选择公司类型</span>
-                            </div>
-                            <!-- 生美 -->
-                            <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
-                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
-                                <span class="errTips icon mIcon" tips="" :class="secondtypeflag?'show':''">请选择公司类型</span>
-                            </div>
-                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
-                                <div class="form-upload">
-                                    <p><em>*</em>资质:</p>
-                                    <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicense!=''&&clubUpgradeUser.medicalPracticeLicense!=null">
-                                        <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicense" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
-                                        <i class="icon mIcon" @click="deleteMedicalImage()"></i>
-                                    </div>
-                                    <div class="formLine-file" v-else>
-                                        <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
-                                        <i class="icon mIcon file-zizhi"></i>
-                                    </div>
-                                    <span class="errTips icon mIcon"></span>
-                                </div>
-                                <div class="form-upload-tips">
-                                    <i class="icon icon-wen"></i>
-                                    <div class="wen-tips">点击图片可放大图片</div>
-                                </div>
-                                <div style="clear:both"></div>
-                                <span class="errTips icon mIcon" tips="" :class="medicalPracticeLicenseFlag?'show':''">请上传医疗执业许可证</span>
-                            </div>
-                            <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
-                                <p>科室:</p>
-                                <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
-                            </div>
-                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
-                                <p><em>*</em>主营内容:</p>
-                                <p class="business clear">
-                                    <label v-for="pro in medicaCampNullList" class="diyBox second" >
-                                        <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                                        <i class="icon mIcon">{{pro.name}}</i>
-                                    </label>
-                                </p>
-                                <p class="business">
-                                    <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
-                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                                </p>
-                                <span class="errTips icon mIcon" tips="" :class="mproflag?'show':''">请选择或添加主营产品</span>
-                            </div>
-                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
-                                <p><em>*</em>主营内容:</p>
-                                <p class="business clear">
-                                    <label v-for="pro in mentuzCampNullList" class="diyBox second">
-                                        <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
-                                        <i class="icon mIcon">{{pro.name}}</i>
-                                    </label>
-                                </p>
-                                <p class="business">
-                                    <input type="text" placeholder=" 请输入其他自定义主营内容" v-model.trim="mainProEdit">
-                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
-                                </p>
-                                <span class="errTips icon mIcon" tips="" :class="userMainProflag?'show':''">请选择或添加主营产品</span>
-                            </div>
-                            <div class="subLine">
-                                <button class="btn" type="button" @click="SubComfirUpgradeFn()" onclick="_czc.push(['_trackEvent','升级页面','点击','用户确认升级','','Um_Event_ConfirmClubUpgrade'])">确认升级并提交审核</button>
-                            </div>
-                        </form>
-                    </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" th:src="@{/js/center.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/user-center/setting/upgrade.js(v=${version})}"></script>
-</body>
-</html>
+<!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/base/center.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/user-center/setting/upgrade.css(v=${version})}" rel="stylesheet" type="text/css">
+    <template th:replace="components/analysis"></template>
+</head>
+<body>
+<!-- 引用头部 -->
+<template th:replace="components/header"></template>
+<!-- 升级机构 -->
+<div id="upgradePage">
+    <div class="navLayout" v-cloak>
+        <div v-if="isPC" class="crumbs">
+            <span>机构管理中心</span>
+            <span>&gt;</span>
+            <span>机构升级</span>
+        </div>
+        <div class="wrap clear">
+            <!--左侧导航-->
+            <template th:replace="user-center/components/tableft"></template>
+            <div class="right">
+                <!--loading-->
+                <div v-if="isRequset" class="loading">
+                    <img src="/img/base/loading.gif">
+                </div>
+                <div class="container clear" v-else>
+                    <div class="title">升级资质机构</div>
+                    <div class="title-tips"><p>补充以下详细信息即可升级为资质机构,享受更多更好的服务</p></div>
+                    <div class="registerClub clear">
+                        <form>
+                            <div class="formLine">
+                                <p style="padding-left: 8px">联系人:{{ userName }}</p>
+                            </div>
+                            <div class="formLine">
+                                <p id="userNameType"><em>*</em>联系人身份:</p>
+                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="1"  @change="changeUserNameType"><i class="icon mIcon">老板</i></label>
+                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="2" checked  @change="changeUserNameType"><i class="icon mIcon">采购</i></label>
+                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="3" checked  @change="changeUserNameType"><i class="icon mIcon">运营</i></label>
+                                <label class="diyBox second"><input type="radio" name="linkManIdentity" v-model="clubUpgradeUser.linkManIdentity" value="4" checked  @change="changeUserNameType"><i class="icon mIcon">其他</i></label>
+                                <span class="errTips icon mIcon" tips="请选择联系人身份"></span>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>邮箱:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.contractEmail" placeholder="请输入邮箱地址" :rule="rule.email" maxlength="50" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入正确的邮箱地址"></span>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>机构名称<span>(示例:深圳市美丽人生医疗美容有限公司)</span>:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.name" placeholder="请与营业执照的注册名称保持一致" :rule="rule.name" maxlength="50" @blur="blurHandle($event)" needverify>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入机构名称"></span>
+                            </div>
+                            <div class="formLine">
+                                <p>机构简称<span>(示例:美丽人生)</span>:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.shortName" placeholder="请输入机构简称" :rule="rule.name" maxlength="50" needverify>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>联系地址:</p>
+                                <div class="address">
+                                    <select name="provinceID" id="cProvince" @change="province" v-model="clubUpgradeUser.provinceId">
+                                        <option value="0" >请选择</option>
+                                        <option v-for="(item ,index) in provinceArray" :key="index" :value='item.id' >{{item.name}}</option>
+                                    </select>
+                                    <select name="cityID" id="cCity" @change="getcity($event)" v-model="clubUpgradeUser.cityId">
+                                        <option value="0" >请选择</option>
+                                        <option v-for="(item ,index) in cityArray" :key="index" :value="item.id" >{{item.name}}</option>
+                                    </select>
+                                    <select name="townID" id="cTown" @change="getcTown($event)" v-model="clubUpgradeUser.townId">
+                                        <option value="0" >请选择</option>
+                                        <option v-for="(item ,index) in townArray" :key="index" :value="item.id"  >{{item.name}}</option>
+                                    </select>
+                                    <textarea placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  v-model="clubUpgradeUser.address"></textarea>
+                                </div>
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="" :class="flagshow?'show':''">请输入正确的联系地址</span>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>营业执照:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.socialCreditCode" placeholder="请输入统一社会信用代码" maxlength="18">
+                                <i class="checked icon mIcon"></i>
+                                <span class="errTips icon mIcon" tips="请输入统一社会信用代码"></span>
+                            </div>
+                            <div class="formLine clear">
+                                <div class="form-upload">
+                                    <p><em>*</em>营业执照图片:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.businessLicense!=''&&clubUpgradeUser.businessLicense!=null">
+                                        <img class="upload-img" :src="clubUpgradeUser.businessLicense" alt="" id="businessLicenseImage" @click="showViewerImageFn()">
+                                        <i class="icon mIcon" @click="deleteBusinessImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessLicenseImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadBusinessLicenseImageFn">
+                                        <i class="icon mIcon file-biss"></i>
+                                    </div>
+                                    <span class="errTips icon mIcon" :class="businessflag?'show':''" >请上传营业执照图片</span>
+                                </div>
+                                <div class="form-upload-tips">
+                                    <i class="icon mIcon icon-wen"></i>
+                                    <div class="wen-tips">点击图片可放大图片</div>
+                                </div>
+                            </div>
+                            <div class="formLine clear">
+                                <div class="form-upload">
+                                    <p>门头照:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.shopPhoto!='' && clubUpgradeUser.shopPhoto!=null">
+                                        <img class="upload-img" :src="clubUpgradeUser.shopPhoto" alt="" id="uploadMentuzImage" @click="showViewerImageFn1()">
+                                        <i class="icon mIcon" @click="deleteMentuzImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessMentuImage" class="file" type="file" accept="image/png,image/jpeg,image/gif,image/jpg"  @change="uploadMentuzImageFn">
+                                        <i class="icon mIcon file-door"></i>
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="formLine">
+                                <p><em>*</em>机构类型:</p>
+                                <label class="diyBox" @click="handleChangeType(1)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="1" ><i class="icon mIcon">医美</i></label>
+                                <label class="diyBox" @click="handleChangeType(2)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="2" checked><i class="icon mIcon">生美</i></label>
+                                <label class="diyBox" @click="handleChangeType(3)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="3" checked><i class="icon mIcon">项目公司</i></label>
+                                <label class="diyBox" @click="handleChangeType(4)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="4" checked><i class="icon mIcon">个人</i></label>
+                                <label class="diyBox" @click="handleChangeType(5)"><input type="radio" name="firstShopType" v-model="clubUpgradeUser.firstClubType" value="5" checked><i class="icon mIcon">其他</i></label>
+                                <span class="errTips icon mIcon" tips="" :class="typeflag?'show':''">请选择公司类型</span>
+                            </div>
+                            <!-- 医美 -->
+                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="1" checked><i class="icon mIcon">诊所</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="2" ><i class="icon mIcon">门诊</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="3" ><i class="icon mIcon">医院</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="4" ><i class="icon mIcon">其他</i></label>
+                                <span class="errTips icon mIcon" tips="" :class="secondtypeflag?'show':''">请选择公司类型</span>
+                            </div>
+                            <!-- 生美 -->
+                            <div v-show="clubUpgradeUser.firstClubType == 2" class="formLine">
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="5" checked><i class="icon mIcon">美容院</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="6" ><i class="icon mIcon">养生馆</i></label>
+                                <label class="diyBox second"><input type="radio" name="secondClubType" v-model="clubUpgradeUser.secondClubType" value="7" ><i class="icon mIcon">其他</i></label>
+                                <span class="errTips icon mIcon" tips="" :class="secondtypeflag?'show':''">请选择公司类型</span>
+                            </div>
+                            <div v-show="clubUpgradeUser.firstClubType == 1" class="formLine">
+                                <div class="form-upload">
+                                    <p><em>*</em>资质:</p>
+                                    <div class="form-upload-image" v-if="clubUpgradeUser.medicalPracticeLicense!=''&&clubUpgradeUser.medicalPracticeLicense!=null">
+                                        <img class="upload-img" :src="clubUpgradeUser.medicalPracticeLicense" alt="" id="medicalPracticeLicenseImg" @click="showViewerImageFn2()">
+                                        <i class="icon mIcon" @click="deleteMedicalImage()"></i>
+                                    </div>
+                                    <div class="formLine-file" v-else>
+                                        <input ref="businessMedicaImage" class="file" type="file"  accept="image/png,image/jpeg,image/gif,image/jpg" @change="uploadMedicaImageFn">
+                                        <i class="icon mIcon file-zizhi"></i>
+                                    </div>
+                                    <span class="errTips icon mIcon"></span>
+                                </div>
+                                <div class="form-upload-tips">
+                                    <i class="icon icon-wen"></i>
+                                    <div class="wen-tips">点击图片可放大图片</div>
+                                </div>
+                                <div style="clear:both"></div>
+                                <span class="errTips icon mIcon" tips="" :class="medicalPracticeLicenseFlag?'show':''">请上传医疗执业许可证</span>
+                            </div>
+                            <div v-if="clubUpgradeUser.secondClubType == 2 || clubUpgradeUser.secondClubType == 3" class="formLine">
+                                <p>科室:</p>
+                                <input type="text" v-model.trim="clubUpgradeUser.department" placeholder="请填写您所经营的科室,用逗号隔开.(至少三个)" maxlength="50">
+                            </div>
+                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 1">
+                                <p><em>*</em>主营内容:</p>
+                                <p class="business clear">
+                                    <label v-for="pro in medicaCampNullList" class="diyBox second" >
+                                        <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
+                                        <i class="icon mIcon">{{pro.name}}</i>
+                                    </label>
+                                </p>
+                                <p class="business">
+                                    <input type="text" placeholder="请输入其他自定义品项目" v-model.trim="mainProEdit">
+                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                                </p>
+                                <span class="errTips icon mIcon" tips="" :class="mproflag?'show':''">请选择或添加主营产品</span>
+                            </div>
+                            <div class="formLine clear" v-if="clubUpgradeUser.firstClubType == 2">
+                                <p><em>*</em>主营内容:</p>
+                                <p class="business clear">
+                                    <label v-for="pro in mentuzCampNullList" class="diyBox second">
+                                        <input type="checkbox" name="secondClubType" v-model="userMainPros" :value="pro.name" >
+                                        <i class="icon mIcon">{{pro.name}}</i>
+                                    </label>
+                                </p>
+                                <p class="business">
+                                    <input type="text" placeholder=" 请输入其他自定义主营内容" v-model.trim="mainProEdit">
+                                    <a href="javascript:void(0);" @click="mainProAdd()">确认添加</a>
+                                </p>
+                                <span class="errTips icon mIcon" tips="" :class="userMainProflag?'show':''">请选择或添加主营产品</span>
+                            </div>
+                            <div class="subLine">
+                                <button class="btn" type="button" @click="SubComfirUpgradeFn()" onclick="_czc.push(['_trackEvent','升级页面','点击','用户确认升级','','Um_Event_ConfirmClubUpgrade'])">确认升级并提交审核</button>
+                            </div>
+                        </form>
+                    </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" th:src="@{/js/center.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/document/database-share.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript" th:src="@{/js/user-center/setting/upgrade.js(v=${version})}"></script>
+</body>
+</html>