Quellcode durchsuchen

移动端开店

shenjj vor 7 Jahren
Ursprung
Commit
01aa309100

+ 1 - 1
components/applyPurchase/BusinessOpportunities.vue

@@ -12,7 +12,7 @@
       <p class="process-info">买家发出的<span>公共采购询价单</span>将会通过<span>“数据中心”</span>自动匹配和精准推送给<span>产品库</span>的有该产品的卖家。</p>
 
       <img src="/images/applyPurchase/business333.jpg" alt="">
-      <div class="case-info"><img id="case" src="/images/applyPurchase/case.png" alt=""><p class="case">买方发布“型号RHU002N06T106”的公共采购询价,“大数据中心”将匹配卖家的【个人产品库/企业产品库】是否有该型号,如果卖家产品库有该型号即可以收到该商机推送,如果卖家产品库没有该型号即收不到该商机推送。</p></div>
+      <div class="case-info"><img id="case" src="/images/applyPurchase/case.png" alt=""><p class="case">买方发布“型号RHU002N06T106”的公共采购询价,“大数据中心”将匹配卖家的【个人产品库/公司产品库】是否有该型号,如果卖家产品库有该型号即可以收到该商机推送,如果卖家产品库没有该型号即收不到该商机推送。</p></div>
       <a class="last" @click="Maintenance()">去维护个人产品&nbsp;<i class="iconfont icon-arrow-right"></i></a>
     </div>
   </div>

+ 2 - 2
components/mobile/Home.vue

@@ -69,8 +69,8 @@
         <div class="mobile-modal-content">
           <div>商家地址:深圳市南山区英唐大厦1楼</div>
           <!-- <div class="content-line link-url">在线咨询</div>-->
-          <div>致电:<a href="tel:4008301818" target="_blank" class="content-line link-url">4008301818</a></div>
-          <div>邮件:<a href="mailto:yrsc@usoftchina.com" target="_blank" class="content-line link-url">yrsc@usoftchina.com</a></div>
+          <div>致电:<a href="tel:4008301818" target="_blank" class="content-line">4008301818</a></div>
+          <div>邮件:<a href="mailto:yrsc@usoftchina.com" target="_blank" class="content-line">yrsc@usoftchina.com</a></div>
         </div>
       </div>
     </div>

+ 1 - 1
components/mobile/MobileHeader.vue

@@ -175,7 +175,7 @@
 //          this.rightIcon = 'phone'
         } else if (this.startWith(val, '/mobile/center/vendor/product')) {
           if (this.$route.query.providerType === 'enterprise') {
-            title = '企业产品库'
+            title = '公司产品库'
           } else if (this.$route.query.providerType === 'person') {
             title = '个人产品库'
           } else {

+ 1 - 1
components/mobile/applyPurchase/SeekList.vue

@@ -2,7 +2,7 @@
   <div>
     <ul class="seek-list">
       <li v-for="(item, index) in purchaseManListData" class="clearfix">
-        <p v-if="!item.quotation && !(userType === 'buyer' && seekType === 'wait')">
+        <p v-if="!(userType === 'buyer' && seekType === 'wait')">
           <span v-if="item.inquiry && (item.inquiry.enName || (item.inquiry.enterprise && item.inquiry.enterprise.enName))">{{[item.inquiry.enName || item.inquiry.enterprise.enName, user.logged] | enterpriseFilter}}</span>
           <span v-else>{{[item.userName, user.logged] | userNameFilter}}</span>
         </p>

+ 1 - 1
components/mobile/brand/BrandDetail.vue

@@ -392,7 +392,7 @@
           overflow: hidden;
           text-overflow: ellipsis;
           white-space: nowrap;
-          color: #01a44e;
+          /*color: #01a44e;*/
           margin-left: .28rem;
           position: relative;
           bottom: .32rem;

+ 134 - 0
components/mobile/register-saler/Register.vue

@@ -0,0 +1,134 @@
+<template>
+  <div>
+    <!--<div class="step-menu">-->
+      <!--<ul class="x-step">-->
+        <!--<li :class="section >= 1?'active':''" >第一步:完善企业信息-->
+          <!--<i class="x-split"></i></li>-->
+        <!--<li :class="section >= 2?'active':''" >第二步:阅读相关条例-->
+          <!--<i class="x-split"></i></li>-->
+        <!--<li :class="section >= 3?'active':''" >第三步:提交申请</li>-->
+      <!--</ul>-->
+    <!--</div>-->
+    <div class="mobile-tab-list">
+      <step-first v-show="section == 1"
+                  @sectionEvent="sectionChange"
+                  @registerAction="onRegister"
+                  :loginData="loginData"
+                  :enterpriseData="enterpriseData"
+                  :businessImgUrl="businessImgUrl"
+                  @businessImgUrlAction="onBusinessImgUrl"
+                  @isSelfCacheDataAction="onCacheData"></step-first>
+      <step-second v-show="section == 2"
+                   @sectionEvent="sectionChange"
+                   :checkData="checkData"
+                   :loginData="loginData"
+                   :cacheData="cacheData"></step-second>
+      <step-third v-show="section == 3"
+                  @sectionEvent="sectionChange"
+                  :registerData="registerData"
+                  :enterpriseData="enterpriseData"
+                  :checkData="checkData"
+                  :businessImgUrl="businessImgUrl"
+                  @businessImgUrlAction="onBusinessImgUrl"
+                  :loginData="loginData"></step-third>
+    </div>
+    </div>
+</template>
+<script>
+  import StepFirst from '~components/mobile/register-saler/register/StepFirst.vue'
+  import StepSecond from '~components/mobile/register-saler/register/StepSecond.vue'
+  import StepThird from '~components/mobile/register-saler/register/StepThird.vue'
+  export default {
+    data () {
+      return {
+        section: 1,
+        checkData: {
+          checked: false
+        },
+        registerData: {
+          enterprise: {},
+          c: false,
+          url: ''
+        },
+        loginData: {
+          isSelf: true,
+          section: 1,
+          enterprise: {}
+        },
+        cacheData: {},
+        enterpriseData: {},
+        businessImgUrl: ''
+      }
+    },
+    components: {
+      StepFirst,
+      StepSecond,
+      StepThird
+    },
+    computed: {
+      user () {
+        return this.$store.state.option.user
+      }
+    },
+    created () {
+      let ens = this.user.data.enterprises
+      let isSelf = true
+      let tempEnterprise = {}
+      if (ens && ens.length) {
+        ens.forEach(function (item) {
+          if (item.current) {
+            isSelf = false
+            tempEnterprise = item
+          }
+        })
+      } else {
+        isSelf = true
+      }
+      // if (!isSelf) { // 是企业
+      //   this.$http.get('/basic/enterprise/' + tempEnterprise.uu + '/info')
+      //     .then(response => {
+      //       this.enterpriseData = response.data
+      //       this.section = 1
+      //       this.checkData.checked = false
+      //     })
+      // } else { // 是个人
+      //   this.$http.get('/basic/user/userCacheEnterprise')
+      //     .then(response => {
+      //       if (!response.data) {
+      //         this.section = 1
+      //         this.checkData.checked = false
+      //       } else if (!response.data.enIsRead) {
+      //         this.section = 2
+      //         this.checkData.checked = false
+      //         this.enterpriseData = response.data
+      //       } else if (response.data.enIsRead) {
+      //         this.section = 3
+      //         this.checkData.checked = true
+      //         this.enterpriseData = response.data
+      //       }
+      //     })
+      // }
+      this.loginData.isSelf = isSelf
+      this.loginData.section = this.section
+      this.loginData.enterprise = tempEnterprise
+    },
+    methods: {
+      sectionChange: function (num) {
+        this.section = num
+      },
+      onRegister: function (data) {
+        this.registerData.isValidRegister = data.isValidRegister
+        this.registerData.enterprise = data.enterprise
+        this.registerData.url = data.url
+      },
+      onCacheData: function (cache) {
+        this.cacheData = cache
+      },
+      onBusinessImgUrl: function (url) {
+        this.businessImgUrl = url
+      }
+    }
+  }
+</script>
+<style>
+</style>

+ 6 - 0
components/mobile/register-saler/index.js

@@ -0,0 +1,6 @@
+import Register from './Register.vue'
+import StepFirst from './register/StepFirst.vue'
+import StepSecond from './register/StepSecond.vue'
+import StepThird from './register/StepThird.vue'
+
+export { Register, StepFirst, StepSecond, StepThird }

+ 878 - 0
components/mobile/register-saler/register/StepFirst.vue

@@ -0,0 +1,878 @@
+<template>
+  <!--填写注册信息-->
+  <div class="section" @click="onHideBox">
+    <div class="mobile-register">
+      <!--<div class="x-form-set-header">-->
+        <!--<h4>企业基本信息</h4>-->
+      <!--</div>-->
+      <div class="wrap-title"><span class="line"></span>企业基本信息</div>
+      <div class="">
+        <label class="col-sm-2 mobile-x-required">企业名称:</label>
+        <div class="col-sm-5 mobile-x-input-kuang">
+          <input :class="!validName.isValidTypeName || !validName.isValidName?'form-control error-box-border':'form-control'" type="text" @change="nameCheck(3)" @input="nameTypeCheck()" :disabled="!loginData.isSelf" v-model="data.name" name="name" required="" placeholder="填写营业执照上的企业名称">
+          <div class="mobile-x-text-help" v-show="validName.isValidTypeName && validName.isValidName && !validName.init">
+            <i class="glyphicon glyphicon-ok x-icon-left"></i>
+          </div>
+        </div>
+        <div class="col-sm-5 mobile-x-text-info" v-show="!validName.isValidTypeName && !validName.init">
+          <p>
+            <i class="fa fa-info-circle"></i>请填写正确的企业名称,2~99个字符
+          </p>
+        </div>
+        <div class="col-sm-5 mobile-x-text-info" v-show="!validName.isValidName && !validName.init">
+          <p>
+            <i class="fa fa-info-circle"></i>注册的企业名称已存在,请联系管理员
+          </p>
+        </div>
+      </div>
+      <div class="">
+        <label class="col-sm-2 mobile-x-required">营业执照号:</label>
+        <div class="col-sm-5 mobile-x-input-kuang">
+          <input type="text" :class="!validLicence.isValidLicence?'form-control error-box-border':'form-control x-input'" :disabled="!loginData.isSelf" @input="validLicence.init=false" @change="licenceCheck(3)" v-model="data.licenceId" name="name" required="" placeholder="请填写营业执照上的注册号">
+          <div class="mobile-x-text-help" v-show="validLicence.isValidLicence && !validLicence.init">
+            <i class="glyphicon glyphicon-ok x-icon-left"></i>
+          </div>
+        </div>
+        <div class="col-sm-5" v-show="!validLicence.isValidLicence && !validLicence.init"><p><i class="fa fa-info-circle"></i>请填写营业执照上的注册号</p></div>
+      </div>
+      <div class="row">
+        <label class="col-sm-2 mobile-x-required">注册地址:</label>
+        <div class="col-sm-5 mobile-x-input-kuang">
+          <input type="text" readonly aria-haspopup="true" aria-expanded="false" @click="onShowAddress" v-model="data.address" class="form-control" name="name" required="" placeholder="填写总部所在地详细地址" style="padding-left:0.4rem;background-color: transparent;">
+          <span class="fa fa-map-marker mobile-fa-map-marker"></span>
+          <div class="mobile-x-text-help" v-show="validAddress.isValidAddress && !validAddress.init">
+            <i class="glyphicon glyphicon-ok x-icon-left"></i>
+          </div>
+        </div>
+        <div class="mobile-modal mobile-fiexd-modal" v-show="showAddressBox">
+          <div @mouseenter="isInAddressBox = true"
+               @mouseleave="isInAddressBox = false"
+               style="display: block;"
+             class="dropdown-menu mobile-x-union-menu" aria-labelledby="address">
+            <div class="mobile-x-union-header clearfix">
+              <div>省份</div>
+              <div>城市</div>
+              <div>县区</div>
+            </div>
+            <div class="mobile-x-union-list clearfix">
+              <ul class="mobile-list-unstyled">
+                <li v-for="province in cityData.province"
+                    :class="province == address.currentProvince ? 'active' : ''"
+                    v-text="province"
+                    @click="getCity(province)"></li>
+              </ul>
+              <ul class="mobile-list-unstyled">
+                <li v-for="city in cityData.city"
+                    :class="city == address.currentCity ? 'active' : ''"
+                    v-text="city"
+                    @click="getDistrict(city)"></li>
+              </ul>
+              <ul class="mobile-list-unstyled">
+                <li v-for="district in cityData.district"
+                    v-text="district"
+                    :class="district == address.currentDistrict ? 'active' : ''"
+                    @click="chooseDistrict(district)"></li>
+              </ul>
+            </div>
+            <div class="mobile-x-item-ext2">详细地址</div>
+            <div class="mobile-x-item-ext">
+              <div class="form-group">
+                <div class="col-sm-12">
+                   <textarea id="street" name="street" rows="4" v-model="address.detail" @input="onDetailAddressInput" class="form-control x-input" placeholder="xx路xx大厦xx栋xx楼xx室"></textarea>
+                </div>
+              </div>
+              <div class="text-right">
+                <a class="register-btn btn-submit" @click="submitAddress">确定</a> <a @click="showAddressBox = false" class="register-btn btn-console">取消</a>
+              </div>
+            </div>
+          </div>
+        </div>
+
+        <div class="col-sm-5" v-show="!validAddress.isValidAddress && !validAddress.init"><p><i class="fa fa-info-circle"></i>填写总部所在地详细地址</p></div>
+      </div>
+    </div>
+    <div class="row next-btn"><button class="btn" :style="loginData.isSelf && !isValid ? 'opacity: .65;':''" @click="sectionChange(2)">下一步</button></div>
+    <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
+  </div>
+</template>
+<script>
+  import { RemindBox } from '~components/mobile/common'
+  export default {
+    data () {
+      return {
+        timeoutCount: 0,
+        collectResult: '',
+        data: {
+          name: '',
+//          lawPerson: '',
+//          url: '',
+          licenceId: '',
+          address: ''
+//          linkman: '',
+//          phone: '',
+//          email: '',
+//          fax: '',
+//          website: '',
+//          profession: '',
+//          logoUrl: '',
+//          tagsData: []
+        },
+        validName: {
+          isValidTypeName: true,
+          isValidName: true,
+          init: true
+        },
+//        validUpload: {
+//          isValidUpload: true,
+//          init: true
+//        },
+        validLicence: {
+          isValidLicence: true,
+          init: true
+        },
+        validAddress: {
+          isValidAddress: true,
+          init: true
+        },
+//        validLawPerson: {
+//          isValidLawPerson: true,
+//          init: true
+//        },
+//        validPhone: {
+//          isValidPhone: true,
+//          init: true
+//        },
+//        validEmail: {
+//          isValidEmail: true,
+//          init: true
+//        },
+//        validFax: {
+//          isValidFax: true,
+//          init: true
+//        },
+//        validLogo: {
+//          isValidLogo: true,
+//          init: true
+//        },
+        isValid: false,
+//        isPdf: false,
+        showAddressBox: false,
+        isInAddressBox: false,
+//        showProfessionBox: false,
+//        isInProfessionBox: false,
+        temCityData: {},
+        cityData: {
+          province: [],
+          city: [],
+          district: []
+        },
+        address: {
+          currentProvince: '',
+          currentCity: '',
+          currentDistrict: '',
+          detail: ''
+        }
+//        tempProfession: {},
+//        professionData: {
+//          profession: [],
+//          detail: [],
+//          thirdDetail: []
+//        },
+//        currentProfession: {
+//          profession: '',
+//          detail: '',
+//          thirdDetail: ''
+//        },
+//        tag: ''
+      }
+    },
+    props: ['loginData', 'enterpriseData', 'businessImgUrl'],
+    watch: {
+      enterpriseData: function (val, oldVal) {
+        if (val.name) {  // 个人
+          this.initData(val)
+          this.nameCheck(3)
+          this.nameTypeCheck()
+          this.licenceCheck(3)
+          this.addressCheck()
+//            this.imgUrlCheck()
+//            this.lawPersonCheck()
+//            this.phoneCheck()
+//            this.emailCheck()
+//            this.faxCheck()
+          this.checkFullData()
+          this.submitRegisterData()
+        }
+        if (val.uu) {  // 企业
+          this.initData(val)
+//          this.nameCheck(3)
+//          this.nameTypeCheck()
+//          this.licenceCheck(3)
+          this.enAddressCheck()
+//            this.imgUrlCheck()
+//            this.lawPersonCheck()
+//            this.phoneCheck()
+//            this.emailCheck()
+//            this.faxCheck()
+//          this.checkFullData()
+          this.submitRegisterData()
+        }
+      }
+//      businessImgUrl: function (val, oldVal) {
+//        this.data.url = val
+//        this.checkFullData()
+//        this.submitRegisterData()
+//      }
+    },
+    mounted () {
+      this.$http.get('/data/city.json').then(response => {
+        this.temCityData = response.data
+        for (let province in response.data) {
+          this.cityData.province.push(province)
+        }
+        for (let item in this.temCityData['北京']) {
+          this.cityData.city.push(item)
+        }
+        this.cityData.district = this.temCityData['北京']['北京市']
+        this.address.currentProvince = '北京'
+        this.address.currentCity = '北京市'
+        this.address.currentDistrict = '东城区'
+      })
+//      this.$http.get('/data/profession.json').then(response => {
+//        this.tempProfession = response.data
+//        for (let profession in response.data) {
+//          this.professionData.profession.push(profession)
+//        }
+//      })
+    },
+    methods: {
+      initData: function (val) {
+        this.data.name = val.spaceName || val.enName || val.name || ''
+        this.data.licenceId = val.businessCode || val.licenceId || val.enBussinessCode || ''
+        this.data.address = val.address || val.enAddress || ''
+      },
+      sectionChange: function (type) {
+        if (!this.isValid) {
+          if (!this.validName.isValidName) {
+            console.log('跳到绑定页面')
+          } else {
+            this.timeoutCount++
+            this.collectResult = '请填写正确的注册信息'
+          }
+          // this.$message.error('请填写正确的注册信息')
+        } else {
+          if (this.enterpriseData.uu) {
+            this.enCheckFullData()
+          } else {
+            this.checkFullData()
+          }
+          let enterprise = this.data
+//          enterprise.tagsData = enterprise.tagsData.toString()
+//          if (typeof this.data.tagsData === 'string') {
+//            this.data.tagsData = this.data.tagsData.split(',')
+//          }
+          let data = {}
+          data.enterprise = enterprise
+          data.isValidRegister = this.isValid
+//          data.url = this.data.url
+          enterprise.enIsRead = false
+//          enterprise.enBussinessCodeImage = this.data.url
+          // 个人用户,提交保存缓存企业信息
+          if (this.loginData.isSelf) {
+            this.$http.post('/basic/user/userCacheEnterprise', enterprise)
+            this.$emit('isSelfCacheDataAction', enterprise)
+          } else { // 企业用户,更新当前企业信息,主要是更新企业地址
+            this.enterpriseData.enAddress = this.data.address
+            this.$http.post('/basic/enterprise/' + this.enterpriseData.uu + '/updateInfo', this.enterpriseData)
+          }
+          this.$emit('registerAction', data)
+          this.$emit('sectionEvent', type)
+//          this.$emit('businessImgUrlAction', this.data.url)
+        }
+      },
+//      upload: function (e) {
+//        let file = e.target.files[0]
+//        this.validUpload.init = false
+//        if (file.size > 5 * 1024 * 1024) {
+//          this.validUpload.isValidUpload = false
+//        } else {
+//          this.validUpload.isValidUpload = true
+//          if (file.type !== 'application/pdf') {
+//            this.isPdf = false
+//            let param = new FormData()
+//            param.append('file', file, file.name)
+//            param.append('chunk', '0')
+//            let config = {
+//              headers: {'Content-Type': 'multipart/form-data'}
+//            }
+//            this.$http.post('/api/images', param, config)
+//              .then(response => {
+//                this.data.url = response.data[0].path
+//                this.$emit('businessImgUrlAction', this.data.url)
+//              }, err => {
+//                console.log(err)
+//                this.validUpload.isValidUpload = false
+//              })
+//          } else {
+//            let param = new FormData()
+//            param.append('file', file, file.name)
+//            let config = {
+//              headers: {'Content-Type': file.type}
+//            }
+//            this.$http.post('/file', param, config)
+//              .then(response => {
+//                this.isPdf = true
+//                this.data.url = response.data[0].path
+//                this.$emit('businessImgUrlAction', this.data.url)
+//              }, err => {
+//                console.log(err)
+//                this.validUpload.isValidUpload = false
+//              })
+//          }
+//        }
+//        this.validCheck()
+//      },
+//      uploadLogo: function (e) {
+//        this.validLogo.init = false
+//        let file = e.target.files[0]
+//        if (file.size > 100 * 1024) {
+//          this.validLogo.isValidLogo = false
+// //          this.$message.error('图片请勿超过100Kb')
+//        } else {
+//          let param = new FormData()
+//          param.append('file', file, file.name)
+//          let config = {
+//            headers: {'Content-Type': file.type}
+//          }
+//          this.$http.post('/api/images', param, config)
+//            .then(response => {
+//              this.validLogo.isValidLogo = true
+//              this.data.logoUrl = response.data[0].path
+//            }, err => {
+//              console.log(err)
+//              this.$message.error('图片上传失败')
+//            })
+//        }
+//      },
+      validCheck: function () {
+        this.isValid =
+//          this.validUpload.isValidUpload && !this.validUpload.init &&
+          this.validName.isValidTypeName && !this.validName.init && this.validName.isValidName &&
+          this.validLicence.isValidLicence && !this.validLicence.init &&
+          this.validAddress.isValidAddress && !this.validAddress.init
+//          this.validLawPerson.isValidLawPerson && !this.validLawPerson.init &&
+//          (this.validPhone.init || this.validPhone.isValidPhone) &&
+//          (this.validEmail.init || this.validEmail.isValidEmail) &&
+//          (this.validFax.init || this.validFax.isValidFax)
+      },
+      enValidCheck: function () {
+        this.isValid = this.validAddress.isValidAddress && !this.validAddress.init
+      },
+      checkFullData: function () {
+        this.isValid =
+//          this.validUpload.isValidUpload &&
+          this.validName.isValidTypeName && this.validName.isValidName &&
+          this.validLicence.isValidLicence &&
+          this.validAddress.isValidAddress
+//          this.validLawPerson.isValidLawPerson
+      },
+      enCheckFullData: function () {
+        this.isValid = this.validAddress.isValidAddress
+      },
+      // 企业名称字符验证
+      nameTypeCheck: function () {
+        this.validName.isValidTypeName = this.data.name !== '' && this.data.name.length >= 2 && this.data.name.length <= 99 && this.commonValid(this.data.name)
+        this.validName.init = false
+      },
+      // 企业名称是否已存在验证
+      nameCheck: function (num) {
+        if (num > 0) {
+          this.$http.post('/basic/enterprise/register/valid/name?name=' + this.data.name)
+            .then(response => {
+              if (response.data.code !== 12) {
+                this.validName.init = false
+                this.validName.isValidName = response.data.success
+                this.validCheck()
+              } else {
+                this.nameCheck(num - 1)
+              }
+            })
+        }
+      },
+//      imgUrlCheck: function () {
+//        this.validUpload.init = false
+//        this.validUpload.isValidUpload = this.data.url !== ''
+//      },
+      licenceCheck: function (num) {
+        if ((/^[\S-]{1,255}$/).test(this.data.licenceId)) {
+          if (num > 0) {
+            this.$http.post('/basic/enterprise/register/valid/businessCode?businessCode=' + this.data.licenceId)
+              .then(response => {
+                if (response.data.code !== 12) {
+                  this.validLicence.init = false
+                  this.validLicence.isValidLicence = response.data.success && this.data.licenceId
+                  this.validCheck()
+                } else {
+                  //      this.validLicence.init = tmpInit
+                  this.licenceCheck(num - 1)
+                }
+              })
+          }
+        } else {
+          this.validLicence.init = false
+          this.validLicence.isValidLicence = false
+          this.validCheck()
+        }
+      },
+      // 个人地址校验
+      addressCheck: function () {
+        this.validAddress.init = false
+        this.validAddress.isValidAddress = this.data.address !== ''
+        this.validCheck()
+      },
+      // 企业地址校验
+      enAddressCheck: function () {
+        this.validAddress.init = false
+        this.validAddress.isValidAddress = this.data.address !== ''
+        this.enValidCheck()
+      },
+//      lawPersonCheck: function () {
+//        this.validLawPerson.init = false
+//        this.validLawPerson.isValidLawPerson = (/^\S{1,255}$/).test(this.data.lawPerson)
+//        this.validCheck()
+//      },
+//      phoneCheck: function () {
+//        this.validPhone.init = false
+//        this.validPhone.isValidPhone = (/^[\d-]{8,}$/).test(this.data.phone) || this.data.phone === ''
+//        this.validCheck()
+//      },
+//      emailCheck: function () {
+//        this.validEmail.init = false
+//        this.validEmail.isValidEmail = (/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/).test(this.data.email) || this.data.email === ''
+//        this.validCheck()
+//      },
+//      faxCheck: function () {
+//        this.validFax.init = false
+//        this.validFax.isValidFax = (/^(([\0]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/).test(this.data.fax) || this.data.fax === ''
+//        this.validCheck()
+//      },
+      commonValid: function (str) {
+        return str.indexOf(' ') === -1
+      },
+      submitRegisterData: function () {
+        let enterprise = this.data
+        let data = {}
+        data.enterprise = enterprise
+        data.isValidRegister = this.isValid
+//        data.url = this.data.url
+        this.$emit('registerAction', data)
+      },
+      onHideBox: function () {
+        this.onHideAddress()
+//        this.onHideProfession()
+      },
+      onShowAddress: function () {
+        if (this.showAddressBox) {
+          this.onHideAddress()
+        } else {
+          this.showAddressBox = true
+          this.isClickInputAddress = true
+        }
+      },
+      onHideAddress: function () {
+        if (!this.isInAddressBox && !this.isClickInputAddress) {
+          this.showAddressBox = false
+        }
+        this.isClickInputAddress = false
+      },
+//      onShowProfession: function () {
+//        if (this.showProfessionBox) {
+//          this.onHideProfession()
+//        } else {
+//          this.showProfessionBox = true
+//          this.isClickInputProfession = true
+//        }
+//      },
+//      onHideProfession: function () {
+//        if (!this.isInProfessionBox && !this.isClickInputProfession) {
+//          this.showProfessionBox = false
+//        }
+//        this.isClickInputProfession = false
+//      },
+      getCity: function (province) {
+        this.cityData.city = []
+        this.address.currentCity = ''
+        this.cityData.district = []
+        this.address.currentDistrict = ''
+        this.address.currentProvince = province
+        for (let item in this.temCityData[province]) {
+          this.cityData.city.push(item)
+        }
+      },
+      getDistrict: function (city) {
+        this.address.currentCity = city
+        this.address.currentDistrict = ''
+        this.cityData.district = this.temCityData[this.address.currentProvince][city]
+      },
+      chooseDistrict: function (district) {
+        this.address.currentDistrict = district
+      },
+      submitAddress: function () {
+        if (this.address.currentDistrict !== '' && this.address.currentCity !== '' && this.address.currentProvince !== '') {
+          if (this.address.detail !== '') {
+            this.data.address = this.address.currentProvince + this.address.currentCity + this.address.currentDistrict + this.address.detail
+            this.showAddressBox = false
+            if (this.enterpriseData.uu) {
+              this.enAddressCheck()
+            } else {
+              this.addressCheck()
+            }
+          } else {
+            this.timeoutCount++
+            this.collectResult = '请输入详细地址'
+            // this.$message.error('请输入详细地址')
+          }
+        } else {
+          this.timeoutCount++
+          this.collectResult = '请选择省、市、区'
+        }
+      },
+//      getProfessionDetail: function (profession) {
+//        this.currentProfession.profession = profession
+//        this.currentProfession.detail = ''
+//        this.professionData.detail = []
+//        this.currentProfession.thirdDetail = ''
+//        this.professionData.thirdDetail = []
+//        let _this = this
+//        _this.professionData.detail = []
+//        for (let item in this.tempProfession[profession]) {
+//          if (typeof this.tempProfession[profession][item] !== 'object') {
+//            _this.professionData.detail.push(this.tempProfession[profession][item])
+//          } else {
+//            _this.professionData.detail.push(item)
+//          }
+//        }
+//      },
+//      chooseProfessionDetail: function (detail) {
+//        this.currentProfession.detail = detail
+//        this.currentProfession.thirdDetail = ''
+//        this.professionData.thirdDetail = []
+//        if (typeof this.tempProfession[this.currentProfession.profession][detail] !== 'object') {
+//          this.data.profession = detail
+//          this.showProfessionBox = false
+//        } else {
+//          this.professionData.thirdDetail = this.tempProfession[this.currentProfession.profession][detail]
+//        }
+//      },
+//      chooseProfessionThirdDetail: function (thirdDetail) {
+//        this.currentProfession.thirdDetail = thirdDetail
+//        this.data.profession = thirdDetail
+//        this.showProfessionBox = false
+//      },
+//      tagCheck: function () {
+//        if (this.tag.length > 10) {
+//          this.tag = this.tag.substring(0, 10)
+//        }
+//      },
+//      addTags: function () {
+//        let flag = true
+//        let _this = this
+//        if (!this.tag || this.tag === '') {
+//          flag = false
+//        } else {
+//          this.data.tagsData.forEach(function (item) {
+//            if (item === _this.tag) {
+//              flag = false
+//            }
+//          })
+//        }
+//        if (flag) {
+//          this.data.tagsData.push(this.tag)
+//          this.tag = ''
+//        } else {
+//          this.tag = ''
+//        }
+//      },
+//      removeTag: function (index) {
+//        this.data.tagsData.splice(index, 1)
+//      },
+      onDetailAddressInput: function () {
+        this.address.detail = this.address.detail.trim()
+      }
+    },
+    components: {
+      RemindBox
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .mobile-register {
+    border: 1px solid #d3d3d3;
+    margin: 0.2rem 0.2rem;
+    border-radius: 5px;
+    background: #fff;
+    padding-bottom: 0.3rem;
+  }
+  .mobile-register input[type="file"] {
+    display: block;
+  }
+  .wrap-title {
+    color: #333;
+    font-size: 0.28rem;
+    border-bottom: 1px solid #d3d3d3;
+    height: 0.5rem;
+    text-align: left;
+    padding: 0 0 0.1rem 0.05rem;
+    margin: 0.17rem 0.25rem 0.13rem 0.25rem;
+    line-height: 0.5rem;
+    .line{
+      width: 0.05rem;
+      background: #3f84f6;
+      display: inline-block;
+      vertical-align: top;
+      margin-right: 0.08rem;
+      height: 0.28rem;
+      margin-top: 0.09rem;
+    }
+  }
+  .mobile-x-required {
+    font-size: 0.28rem;
+    color: #226ce7;
+  }
+  .mobile-x-input-kuang {
+    margin-bottom: 0.15rem;
+    position: relative;
+    input {
+      font-size: 0.24rem;
+      padding-right: 0.5rem;
+    }
+    .mobile-x-text-help {
+      position: absolute;
+      right: 0.5rem;
+      top: 0.2rem;
+    }
+  }
+  .mobile-x-text-info {
+    color: red;
+    font-size:0.24rem;
+  }
+  .mobile-fa-map-marker {
+    position: absolute;
+    top: 0.25rem;
+    left: 0.5rem;
+  }
+  .mobile-fiexd-modal {
+    .dropdown-menu{
+      width: 100%;
+      top:0.98rem;
+      bottom: 0.98rem;
+      padding: 0;
+      border-radius: 0;
+      border: 0;
+      overflow-y: auto;
+      max-height: 10rem;
+      padding-bottom: 0.4rem;
+      .mobile-x-union-header {
+        font-size: 0.24rem;
+        border-bottom: 1px solid #d3d3d3;
+        line-height: 0.5rem;
+      }
+    }
+  }
+  .previewImg {
+    max-height: 200px;
+    max-width: 200px;
+    margin-top: 5px;
+  }
+  .mobile-x-union-header>div,.mobile-x-union-list ul {
+    float: left;
+    width: 2.5rem;
+    border-right: 0.01rem solid #e4ecf3;
+  }
+  .mobile-x-union-list ul {
+    height: 7rem;
+    margin: 0;
+    overflow-y: auto;
+    border-bottom: 1px solid #d3d3d3;
+  }
+  .mobile-x-union-menu .mobile-x-item-ext {
+    .col-sm-12 {
+      margin: 0px;
+      padding: 0 10px;
+    }
+  }
+  .mobile-x-item-ext2 {
+    padding: 10px
+  }
+  .mobile-x-union-list ul:last-child, .mobile-x-union-header>div:last-child {
+    border-right-width: 0
+  }
+  .mobile-x-union-header>div,.mobile-x-union-list>ul>li {
+    white-space: nowrap;
+    padding: 2px 5px;
+    cursor: pointer;
+  }
+  .mobile-x-union-list>ul>li:hover,.mobile-x-union-list>ul>li.active {
+    background: #fee9c7;
+  }
+  .mobile-x-input {
+    border-color: #ccc;
+    border-radius: 0;
+    box-shadow: none;
+  }
+  textarea.form-control {
+    height: auto;
+  }
+  .text-right {
+    text-align: right;
+  }
+  .register-btn {
+    padding: 5px 10px;
+    font-size: 12px;
+    line-height: 1.5;
+  }
+  .btn-submit {
+    background: #5078cb;
+    color: #fff;
+  }
+  .btn-console {
+    border: 1px solid #ccc;
+    background: #fff;
+    color: #888;
+    margin-left: 5px;
+    transition: all .2s ease-in-out;
+  }
+  .btn-console:hover {
+    border: 1px solid #adadad;
+    background: #e6e6e6;
+    color: #333;
+  }
+  .mobile-x-text-help {
+    color: green;
+  }
+  .mobile-register .row .upload-area   {
+    width: 130px;
+    height: 130px;
+    left: 15px;
+    padding: 0;
+    z-index: 100;
+  }
+  .error-box-border {
+    border-color: #f4645f!important;
+  }
+  .x-btn-blank:hover, .x-btn-blank[disabled] {
+    border: 1px solid #adadad;
+    background: #e6e6e6;
+    color: #333;
+  }
+  .mobile-register .row .auto-width {
+    width: auto!important;
+  }
+  .select-dot input {
+    background: url("/images/all/dot.png") no-repeat;
+    background-position-x: 353px;
+    background-position-y: 10px;
+  }
+  .mobile-register .row .logo-text {
+    font-size: 12px;
+    width: 180px;
+    position: relative;
+    top: 5px;
+    left: 175px;
+    text-align: center;
+    color: #999;
+    line-height: 20px;
+  }
+  .logo-img-area {
+    width: 130px;
+    height: 130px;
+  }
+  .logo-img-area .preview-logo-img {
+    max-width: 130px;
+    max-height: 130px;
+  }
+  .no-tags {
+    float: left;
+    padding: 2px 14px;
+    line-height: 20px;
+    border: #5078cb 1px solid;
+    border-radius: 5px;
+    font-size: 12px;
+    margin: 0 3px;
+    background: #5078cb;
+    color: #fff;
+    margin-top: 5px;
+  }
+  .mobile-register .row .add-tag-btn {
+    position: absolute;
+    right: 24px;
+    color: #5078cb;
+    font-size: 12px;
+    cursor: pointer;
+  }
+  .mobile-register .row .tags-box {
+    margin-top: 15px;
+  }
+  .mobile-register .row p {
+    color: red;
+  }
+  .mobile-register .row .form-control:focus{
+    border-color: #5078cb;
+    box-shadow: none;
+  }
+  .x-input:focus, .x-input-blank:focus {
+    border-color: #5078cb;
+    box-shadow: none;
+  }
+  .mobile-register .row {
+    margin: 0px;
+    padding:0;
+  }
+  .mobile-register .row .tags-list ul{
+    list-style: none;
+  }
+  .mobile-register .row .tags-list ul li {
+    display: inline-block;
+    padding: 2px 14px;
+    line-height: 20px;
+    border: #5078cb 1px solid;
+    border-radius: 5px;
+    font-size: 12px;
+    color: #5078cb;
+    margin: 0 3px;
+  }
+  .mobile-register .row .tags-list ul li i{
+    font-size: 12px;
+    color: red;
+    position: relative;
+    top: -3px;
+    right: -12px;
+  }
+  .mobile-register .row .tags-lists {
+    margin-top: 10px;
+  }
+  .mobile-register .row .tags-lists em {
+    font-style: inherit;
+    margin-left: 163px;
+    font-size: 12px;
+    color: #999;
+  }
+  .mobile-register .row .tags-lists span {
+    float: left;
+    padding: 2px 14px;
+    line-height: 20px;
+    border: #5078cb 1px solid;
+    border-radius: 5px;
+    font-size: 12px;
+    color: #5078cb;
+    margin: 0 3px;
+  }
+  .mobile-register .row .x-text-tip {
+    color: #777;
+    margin-top: 15px;
+  }
+  .mobile-register .row .x-text-tip i {
+    margin-right: 5px;
+  }
+</style>

+ 117 - 0
components/mobile/register-saler/register/StepSecond.vue

@@ -0,0 +1,117 @@
+<template>
+  <!--阅读服务协议-->
+  <div class="section">
+    <div class="mobile-agreement">
+      <div class="mobile-join_xieyi">
+        <div class="article-flag">
+          <span @click="chooseTag=1" :class="chooseTag==1?'active':''">优软商城服务条款</span>
+          <span @click="chooseTag=2" :class="chooseTag==2?'active':''">优软商城买卖条例</span>
+        </div>
+        <!--<textarea readonly></textarea>-->
+        <div class="text-area">
+          <div class="ql-container ql-snow" v-html="article"></div>
+        </div>
+      </div>
+    </div>
+    <div class="row" style="margin-left: 30px; text-align: center;">
+      <label class="checkbox-inline">
+        <input type="checkbox" id="agree" name="agree" value="1" :checked="checkData.checked" @click="onCheck()" >
+        我已阅读并同意<a href="http://www.usoftmall.com/help#/issue/50" target="_blank">
+        《优软商城服务条款》</a>、<a href="http://www.usoftmall.com/help#/issue/16" target="_blank">
+        《优软商城买卖条例》</a>
+      </label>
+    </div>
+    <div class="row next-btn step-two-btn" style="margin-top: 20px">
+      <button @click="sectionChange(1)" class="btn">上一步</button>
+      <button @click="sectionChange(3)" class="btn" :style="!checkData.checked ? 'opacity: .65;':''">下一步</button>
+    </div>
+  </div>
+</template>
+<script>
+  export default {
+    props: ['checkData', 'loginData', 'cacheData'],
+    data () {
+      return {
+        chooseTag: 1,
+        article: ''
+      }
+    },
+    watch: {
+      chooseTag: function (val) {
+        this.getArticle(val === 1 ? 50 : 16)
+      }
+    },
+    mounted () {
+      this.getArticle(50)
+    },
+    methods: {
+      sectionChange: function (type) {
+        if (!this.checkData.checked && type === 3) {
+          this.$message.error('请阅读相关条例')
+        } else {
+          this.$emit('sectionEvent', type)
+        }
+      },
+      getArticle: function (num) {
+        this.$http.get('/api/help-service/issues/' + num).then(response => {
+          this.article = response.data.article
+        })
+      },
+      onCheck: function () {
+        this.checkData.checked = !this.checkData.checked
+        if (this.loginData.isSelf) {
+          this.cacheData.enIsRead = this.checkData.checked
+          this.$http.post('/basic/user/userCacheEnterprise', this.cacheData)
+        } else {
+          if (this.checkData.checked) {
+            this.$http.post('/basic/enterprise/openVendorSetRead/' + this.loginData.enterprise.uu)
+              .then(() => {
+                this.$http.get('/user/authentication/reflash')
+                  .then(() => {
+                    this.$http.get(`/user/authentication/` + this.loginData.enterprise.uu).then(() => {
+                      this.$store.dispatch('loadUserInfo')
+                    })
+                  })
+              })
+          } else {
+            this.$http.post('/basic/enterprise/openVendorSetNotRead/' + this.loginData.enterprise.uu)
+              .then(() => {
+                this.$http.get('/user/authentication/reflash')
+                  .then(() => {
+                    this.$http.get(`/user/authentication/` + this.loginData.enterprise.uu).then(() => {
+                      this.$store.dispatch('loadUserInfo')
+                    })
+                  })
+              })
+          }
+        }
+      }
+    }
+  }
+</script>
+
+<style>
+  @import '~assets/scss/help.css';
+  .step-two-btn button:first-child{
+    background: #fff;
+    color: #5078cb;
+    border: 1px solid #5078cb;
+  }
+  .mobile-join_xieyi .ql-editor span,.mobile-join_xieyi .ql-editor a {
+    font-size: 12px;
+    line-height: 25px;
+  }
+  .mobile-join_xieyi .ql-editor br {
+    display: none;
+  }
+  .mobile-join_xieyi .ql-editor {
+    padding: 0 0 0 25px;
+  }
+ /* .join_xieyi .ql-editor p {
+    width: 494px;
+    margin: 0 auto;
+  }*/
+  .ql-container.ql-snow {
+    border: none;
+  }
+</style>

+ 1108 - 0
components/mobile/register-saler/register/StepThird.vue

@@ -0,0 +1,1108 @@
+<template>
+  <!--最后一步-->
+  <div class="section">
+    <div class="step-last">
+<!--      <h4 class="h4">免费开店</h4>
+      <p class="title">申请开店完全免费,一个企业只能开一家店,申请到正式开通预计需1-3个工作日。了解更多请看《开店规则》</p>-->
+    </div>
+    <!--<div class="radioCheck">-->
+      <!--<label for="1" class="radioLabel">-->
+        <!--<input type="radio" v-model="selectFlag" name="role" value="open" id="1"/>-->
+        <!--<label for="1" class="txtContact"></label>-->
+        <!--<span>免费开店</span>-->
+      <!--</label>-->
+      <!--<label for="2" class="radioLabel">-->
+        <!--<input type="radio" v-model="selectFlag" name="role" value="seller" id="2" checked/>-->
+        <!--<label for="2" class="txtContact"></label>-->
+        <!--<span>暂不开店直接寄售</span>-->
+      <!--</label>-->
+    <!--</div>-->
+    <!--导入店铺模板-->
+    <div class="container vendor_store_apply" v-show="selectFlag == 'open'">
+        <div>
+          <!-- Nav tabs -->
+          <ul class="nav nav-tabs">
+            <li><div style="height: 39px;line-height: 39px;font-size: 14px;">店铺类型:</div></li>
+            <li class="custom_tab" :class="{active: tab == 'ORIGINAL_FACTORY'}" @click="toggleTab('ORIGINAL_FACTORY')">
+              <a href="javascript:void(0)">原厂</a>
+            </li>
+            <li class="custom_tab" :class="{active: tab == 'AGENCY'}" @click="toggleTab('AGENCY')">
+              <a href="javascript:void(0)">代理商</a>
+            </li>
+            <li class="custom_tab" :class="{active: tab == 'DISTRIBUTION'}" @click="toggleTab('DISTRIBUTION')">
+              <a href="javascript:void(0)">经销商</a>
+            </li>
+          </ul>
+          <!-- Tab panes -->
+          <div class="tab-content">
+            <!-- 原厂 -->
+            <div role="tabpanel" class="tab-pane" v-if="tab == 'ORIGINAL_FACTORY'" :class="{active: tab == 'ORIGINAL_FACTORY'}">
+              <div class="row com_row">
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'BUSINESS_LICENSE'" :url="businessLicenseUrl" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">营业执照<em style="color: #FF0000;">*</em></span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload  :typeData="'TAX_PAYER'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">纳税人证明</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'TAX_REGISTRATION'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">税务登记证</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-12"><em>* </em>如已上传最新版营业执照(三证合一),则其他两证无需上传 ; 仅支持JPG、PNG、GIF、PDF格式,每张大小不超过3M</div>
+              </div>
+              <!--增加品牌-->
+              <div class="brand-type row" v-for="(brand, index) in brands">
+                <div class="col-md-1">品牌{{index+1}}<em v-if="index == 0">*</em></div>
+                <div class="col-md-7">
+                  <input type="text" v-model="brand.name"
+                         @input="onBrandInput(brand, index)"
+                         @blur.stop.prevent="onBrandChanged(brand, index)"
+                         class="form-control" name="brandName"  autocomplete="off" placeholder="请输入英文品牌或中文品牌,如:松下; panasonic等"/>
+                  <ul class="dropdown-menu"
+                      v-show="showSimilarKey.flag && showSimilarKey.index == index"
+                      @mouseenter="showFlag = true"
+                      @mouseleave="showFlag = false">
+                    <li @mouseenter="setKeyActive"
+                        @mouseleave="setKeyDefault"
+                        @click.stop.prevent="changedName(brand, index, key_index)"
+                        v-for="(key, key_index) in similarKeys[index]">
+                      <a v-text="key.nameCn">
+                        <!--<strong>C</strong>apital Advan<strong>c</strong>ed-->
+                      </a>
+                    </li>
+                  </ul>
+                </div>
+                <div class="brand-small-upload col-md-4">
+                  <div class="brand-small-img">
+                    <upload :typeData="index" @uploadAction="onUpload"></upload>
+                  </div>
+                  <div class="file-text">品牌logo/商标注册原件/授权说明书</div>
+                  <div v-show="brands.length > 1" @click="deleteBrand(index)" class="delete" title="删除"><i class="fa fa-trash"></i></div>
+                  <div class="col-md-12"><em v-if="index == 0">*</em>仅支持JPG、PNG、GIF、PDF格式,大小不超过3M</div>
+                </div>
+              </div>
+              <div class="add-brand row">
+                <a href="javascript:void(0)" title="增加品牌" @click="addBrand"><em><i class="fa fa-plus-circle"></i>增加品牌</em></a>
+              </div>
+              <div class="unpass-reason row" style="display: none">
+                原因:<span style="color: #d32526;">原因</span>
+              </div>
+            </div>
+            <!--原厂end-->
+            <!--代理商 begin-->
+            <div role="tabpanel" class="tab-pane" v-if="tab == 'AGENCY'" :class="{active: tab == 'AGENCY'}">
+              <div class="row com_row">
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'BUSINESS_LICENSE'" :url="businessLicenseUrl" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">营业执照<em style="color: #FF0000;">*</em></span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload  :typeData="'TAX_PAYER'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">纳税人证明</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'TAX_REGISTRATION'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">税务登记证</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-12"><em>* </em>如已上传最新版营业执照(三证合一),则其他两证无需上传 ; 仅支持JPG、PNG、GIF、PDF格式,每张大小不超过3M</div>
+              </div>
+              <!--增加品牌-->
+              <div class="brand-type row" v-for="(brand, index) in brands">
+                <div class="col-md-1">品牌{{index+1}}<em>*</em></div>
+                <div class="col-md-7">
+                  <input type="text" v-model="brand.name"
+                         @input="onBrandInput(brand, index)"
+                         @blur.stop.prevent="onBrandChanged(brand, index)"
+                         class="form-control" name="brandName"  autocomplete="off" placeholder="请输入英文品牌或中文品牌,如:松下; panasonic等"/>
+                  <ul class="dropdown-menu"
+                      v-show="showSimilarKey.flag && showSimilarKey.index == index"
+                      @mouseenter="showFlag = true"
+                      @mouseleave="showFlag = false">
+                    <li @mouseenter="setKeyActive"
+                        @mouseleave="setKeyDefault"
+                        v-for="(key, key_index) in similarKeys[index]">
+                      <a v-text="key.nameCn"  @click.stop.prevent="changedName(brand, index, key_index)">
+                        <!--<strong>C</strong>apital Advan<strong>c</strong>ed-->
+                      </a>
+                    </li>
+                  </ul>
+                </div>
+                <div class="brand-small-upload col-md-4">
+                  <div class="brand-small-img">
+                    <upload :typeData="index" @uploadAction="onUpload"></upload>
+                  </div>
+                  <div class="file-text">代理资格证/代理授权书</div>
+                  <div v-show="brands.length > 1" @click="deleteBrand(index)" class="delete" title="删除"><i class="fa fa-trash"></i></div>
+                  <div class="col-md-12"> <em>*</em>仅支持JPG、PNG、GIF、PDF格式,大小不超过3M</div>
+                </div>
+              </div>
+              <div class="add-brand row">
+                <a href="javascript:void(0)" title="增加品牌" @click="addBrand"><em><i class="fa fa-plus-circle"></i>增加品牌</em></a>
+              </div>
+              <div class="unpass-reason row" style="display: none">
+                原因:<span style="color: #d32526;">原因</span>
+              </div>
+            </div>
+            <!--代理商 end-->
+            <!--经销商 begin-->
+            <div role="tabpanel" class="tab-pane" v-if="tab == 'DISTRIBUTION'" :class="{active: tab == 'DISTRIBUTION'}">
+              <div class="row com_row">
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'BUSINESS_LICENSE'" :url="businessLicenseUrl" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">营业执照<em style="color: #FF0000;">*</em></span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload  :typeData="'TAX_PAYER'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">纳税人证明</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-4 custom_col">
+                  <div class="row" style="margin: 0;">
+                    <div class="col-md-5 col-md-offset-1 show_image_area show_image">
+                      <upload :typeData="'TAX_REGISTRATION'" @uploadAction="onUpload"></upload>
+                    </div>
+                    <div class="col-md-5" style="padding: 0;">
+                      <span style="margin-top: 50%;padding-right: 20px;">税务登记证</span>
+                    </div>
+                  </div>
+                </div>
+                <div class="col-md-12"><em>* </em>如已上传最新版营业执照(三证合一),则其他两证无需上传 ; 仅支持JPG、PNG、GIF、PDF格式,每张大小不超过3M</div>
+              </div>
+            </div>
+            <!--经销商 end-->
+          </div>
+          <!-- Submit button -->
+         <!-- <div style="padding: 28px 40px;">
+            <button type="button" class="btn btn-primary" style="float: right" @click="submitApply">提交申请</button>
+            <div class="clear-fix"></div>
+          </div>-->
+        </div>
+        <!--删除上传图片-->
+        <div class="com-del-box" style="display: none">
+          <div class="title">
+            <a><i class="fa fa-close fa-lg"></i></a>
+          </div>
+          <div class="content">
+            <p><i class="fa fa-exclamation-circle"></i>是否删除选中信息</p>
+            <div><a>取消</a><a>确认</a></div>
+          </div>
+        </div>
+        <!--删除品牌图片-->
+        <div class="com-del-box" style="display: none">
+          <div class="title">
+            <a><i class="fa fa-close fa-lg"></i></a>
+          </div>
+          <div class="content">
+            <p><i class="fa fa-exclamation-circle"></i>品牌信息为重要信息,确定删除吗?</p>
+            <div><a>取消</a><a>确认</a></div>
+          </div>
+        </div>
+        <!--提示框-->
+        <div class="com-del-box" v-if="showBrandNameInvalid">
+          <div class="title">
+            <a @click="showBrandNameInvalid = false"><i class="fa fa-close fa-lg"></i></a>
+          </div>
+          <div class="content">
+            <p style="line-height: 20px;margin-top: 10px;padding:0 10px">非常抱歉,目前暂无此品牌!<br>若直接前往“品牌申请”,我们将为您先开通寄售功能,待申请通过后再提交开店申请。</p>
+            <p style="line-height: 20px;">前往<a @click="goBrandApply()"  target="_blank" style="color: #5078CB">品牌申请&nbsp;<i class="fa fa-arrow-right"></i></a></p>
+          </div>
+        </div>
+      </div>
+    <!--<div class="step-last">
+      <h4 class="h4">库存寄售</h4>
+      <p class="title">无需开店,即可发布贵司仓库里的滞销产品,优软商城代为销售,匿名清仓无压力<button class="no-apply" @click="goProduct">暂不开店,直接寄售</button></p>
+    </div>-->
+    <div class="row btn-area">
+      <span @click="sectionChange(2)">上一步</span>
+      <span @click="btnDisabled?'':selectFlag == 'open'?submitApply():goProduct()" :class="btnDisabled?'btn-disabled':''">提交申请</span>
+    </div>
+    <div class="loading" v-show="showLoading">
+      <img src="/images/all/loading.gif" alt="">
+    </div>
+  </div>
+</template>
+<script>
+  import Upload from '~components/common/upload/upload.vue'
+  export default {
+    data () {
+      return {
+        tab: 'ORIGINAL_FACTORY',
+        brands: [{
+          type: 'BRAND',
+          name: '',
+          url: '',
+          isPdf: false,
+          brandUuid: ''
+        }],
+        businessLicenseUrl: '',
+        taxPayerUrl: '',
+        taxRegistrationUrl: '',
+//        defaultBusinessUrl: '',
+        showBrandNameInvalid: false,
+        similarKeys: [[]],
+        showSimilarKey: {
+          flag: false,
+          index: 0
+        },
+        showFlag: false,
+        isSelfRegisterSuccess: true,
+        selectFlag: 'open',
+        showLoading: false,
+        btnDisabled: false
+      }
+    },
+    props: [
+      'checkData',
+      'registerData',
+      'loginData',
+      'enterpriseData',
+      'businessImgUrl'
+    ],
+    watch: {
+      enterpriseData: function (val, oldVal) {
+        if (val !== {}) {
+          this.businessLicenseUrl = val.url || val.businessCodeImage || ''
+//          this.defaultBusinessUrl = val.enBussinessCodeImage || ''
+        }
+      },
+      businessImgUrl: function (val, oldVal) {
+        this.businessLicenseUrl = val
+      }
+    },
+    components: {
+      Upload
+    },
+    computed: {
+      user () {
+        return this.$store.state.option.user
+      }
+    },
+    methods: {
+      sectionChange: function (type) {
+        this.$emit('sectionEvent', type)
+      },
+      toggleTab (t) {
+        this.tab = t
+        this.brands = [{
+          type: 'BRAND',
+          name: '',
+          url: '',
+          isPdf: false,
+          brandUuid: ''
+        }]
+      },
+      onUpload: function (obj) {
+        if (obj.type === 'BUSINESS_LICENSE') {
+    //      this.businessLicenseUrl = obj.url
+          this.businessLicenseUrl = obj.url
+          if (obj.url !== '') {
+            this.$emit('businessImgUrlAction', this.businessLicenseUrl)
+          }
+        } else if (obj.type === 'TAX_PAYER') {
+          this.taxPayerUrl = obj.url
+        } else if (obj.type === 'TAX_REGISTRATION') {
+          this.taxRegistrationUrl = obj.url
+        } else if (typeof obj.type === 'number') {
+          this.brands[obj.type].url = obj.url
+        }
+      },
+      onBrandChanged: function (item, index) {
+        this.showSimilarKey.flag = this.showFlag
+        if (!this.showFlag) {
+          this.onCheck(item)
+        }
+      },
+      onCheck: function (item, index) {
+        if (item.name && item.name !== '') {
+          this.$http.get('/api/product/brand', {params: {name: item.name, op: 'by_name'}})
+            .then(response => {
+              item.brandUuid = response.data.uuid
+              item.isPdf = item.url.substring(item.url.length - 4, item.url.length) === '.pdf'
+            }, err => {
+              console.log(err)
+              this.showBrandNameInvalid = true
+            })
+        }
+      },
+      onBrandInput: function (brand, index) {
+        this.showSimilarKey.flag = false
+        this.$http.get('/search/similarBrands?keyword=' + brand.name)
+          .then(response => {
+            if (response.data.length > 0 && response.data instanceof Array) {
+              this.similarKeys[index] = response.data
+            }
+            if (response.data.length > 0 && response.data instanceof Array) {
+              this.showSimilarKey.flag = true
+              this.showSimilarKey.index = index
+            }
+          })
+      },
+      changedName: function (brand, index, keyIndex) {
+        brand.name = this.similarKeys[index][keyIndex].nameCn
+        this.showSimilarKey.flag = false
+        this.onCheck(brand)
+      },
+      setKeyActive: function (e) {
+        e.target.setAttribute('class', 'active')
+      },
+      setKeyDefault: function (e) {
+        e.target.setAttribute('class', '')
+      },
+      submitApply: function () {
+        if (this.loginData.isSelf) {
+          if (!this.registerData.isValidRegister) {
+            this.$message.error('请输入正确的注册信息')
+          } else if (!this.checkData.checked) {
+            this.$message.error('您还没有勾选相关条款')
+          } else {
+            this.registerSelf()
+          }
+        } else {
+          if (!this.checkData.checked) {
+            this.$message.error('您还没有勾选相关条款')
+          } else {
+            this.storeApply(this.loginData.enterprise.uu)
+          }
+        }
+      },
+      registerSelf: function () {
+        this.showLoading = true
+        this.$http.post('/basic/enterprise/register?filePath=' + this.registerData.url, this.registerData.enterprise)
+          .then(response => {
+            if (response.data.success) {
+              this.isSelfRegisterSuccess = true
+              this.$http.delete('basic/user/userCacheEnterprise')
+              this.$http.get('/user/authentication/reflash')
+                .then(() => {
+                  this.$http.get(`/user/authentication/` + response.data.data.enuu).then(() => {
+                    this.$store.dispatch('loadUserInfo')
+                    this.loginData.isSelf = false
+                    this.loginData.enterprise.uu = response.data.data.enuu
+                    this.storeApply(response.data.data.enuu)
+//                    window.location.reload()
+                    this.showLoading = false
+                  })
+                }
+              )
+            } else {
+              this.isSelfRegisterSuccess = false
+              this.showLoading = false
+              this.$message.error(response.data.message || '企业注册失败,请重新填写信息')
+            }
+          }, err => {
+            console.log(err)
+            this.isSelfRegisterSuccess = false
+            this.showLoading = false
+            this.$message.error('企业注册失败,请重新填写信息')
+          })
+      },
+      storeApply: function (enuu) {
+        this.showLoading = true
+        let validCode = 0
+        if (this.businessLicenseUrl === '') {
+          this.$message.error('请上传营业执照')
+          this.showLoading = false
+        } else {
+          if (this.brands[0].name === '') {
+            validCode = 1
+          } else if (this.brands[0].url === '') {
+            validCode = 2
+          }
+          if (validCode === 0 || this.tab === 'DISTRIBUTION') {
+            let qualifications = []
+            qualifications.push({
+              type: 'BUSINESS_LICENSE',
+              resourceUrl: this.businessLicenseUrl,
+              isPdf: this.isPdf(this.businessLicenseUrl)
+            })
+            if (this.taxPayerUrl !== '') {
+              qualifications.push({
+                type: 'TAX_PAYER',
+                resourceUrl: this.taxPayerUrl,
+                isPdf: this.isPdf(this.taxPayerUrl)
+              })
+            }
+            if (this.taxPayerUrl !== '') {
+              qualifications.push({
+                type: 'TAX_REGISTRATION',
+                resourceUrl: this.taxRegistrationUrl,
+                isPdf: this.isPdf(this.taxRegistrationUrl)
+              })
+            }
+//            console.log(qualifications)
+            let tmpBrands = []
+            this.brands.forEach(function (item) {
+              if (item.name !== '' && item.url !== '') {
+                tmpBrands.push(item)
+              }
+            })
+            this.$http.post('/store-service/applications', {
+              brands: tmpBrands,
+              qualifications: qualifications,
+              type: this.tab
+            }).then(response => {
+              this.showLoading = false
+              if (response.data.success) {
+                this.btnDisabled = true
+                this.$message.success('感谢您对优软商城的支持,我们会尽快对您提交的信息进行审核,预计审核时间为3个工作日,审核结果将以站内消息及邮件形式通知您!')
+              } else {
+                this.btnDisabled = true
+                this.$message.error('开通店铺异常,请前往我的店铺查看店铺开通进度')
+              }
+              this.$http.post('/basic/enterprise/openVendor/' + enuu)
+                .then(() => {
+                  this.$http.get('/user/authentication/reflash')
+                    .then(() => {
+                      this.$http.get(`/user/authentication/` + enuu).then(() => {
+                        this.$store.dispatch('loadUserInfo')
+                      })
+                    })
+                })
+              window.setTimeout(function () {
+                window.location.href = '/vendor#/store-apply/wait'
+              }, 3000)
+            }, err => {
+              console.log(err)
+              this.$http.post('/basic/enterprise/openVendorSetRead/' + enuu)
+              this.$message.error('开通店铺失败')
+              this.showLoading = false
+            })
+          } else {
+            if (validCode === 1) {
+              this.$message.error('请添加品牌信息')
+              this.showLoading = false
+            } else if (validCode === 2) {
+              this.$message.error('请上传品牌图片')
+              this.showLoading = false
+            }
+          }
+        }
+      },
+      addBrand: function () {
+        this.brands.push({
+          type: 'BRAND',
+          name: '',
+          url: '',
+          isPdf: false,
+          brandUuid: ''
+        })
+        this.similarKeys.push([])
+      },
+      deleteBrand: function (index) {
+        this.brands.splice(index, 1)
+        this.similarKeys.splice(index, 1)
+      },
+      isPdf: function (url) {
+        return url.substring(url.length - 4, url.length) === '.pdf'
+      },
+      reflashEnterprise: function (enuu, url) {
+        this.$http.post('/basic/enterprise/openVendor/' + enuu)
+          .then(() => {
+            this.$http.get('/user/authentication/reflash')
+              .then(() => {
+                this.$http.get(`/user/authentication/` + enuu).then(() => {
+                  this.$store.dispatch('loadUserInfo')
+                  window.location.href = url
+                })
+              }
+              )
+          })
+      },
+      goProduct: function (baseUrl) {
+        if (this.loginData.isSelf) {
+          if (!this.registerData.isValidRegister) {
+            this.$message.error('请输入正确的注册信息')
+          } else if (!this.checkData.checked) {
+            this.$message.error('您还没有勾选相关条款')
+          } else {
+            this.showLoading = true
+            this.$http.post('/basic/enterprise/register?filePath=' + this.registerData.url, this.registerData.enterprise)
+              .then(response => {
+                if (response.data.success) {
+                  this.isSelfRegisterSuccess = true
+                  this.$http.delete('basic/user/userCacheEnterprise')
+                  this.reflashEnterprise(response.data.data.enuu, baseUrl || '/vendor#/vendor_upload')
+                } else {
+                  this.isSelfRegisterSuccess = false
+                  this.$message.error(response.data.message || '企业注册失败,请重新填写信息')
+                }
+                this.showLoading = false
+              }, err => {
+                console.log(err)
+                this.isSelfRegisterSuccess = false
+                this.showLoading = false
+                this.$message.error('企业注册失败,请重新填写信息')
+              })
+          }
+        } else {
+          if (!this.checkData.checked) {
+            this.$message.error('您还没有勾选相关条款')
+          } else {
+            this.reflashEnterprise(this.loginData.enterprise.uu, baseUrl || '/vendor#/vendor_upload')
+          }
+        }
+      },
+      goBrandApply: function () {
+        this.showBrandNameInvalid = false
+        this.goProduct('/vendor#/brand/apply/')
+      }
+    }
+  }
+</script>
+<style scoped>
+  .com-input{
+    width: 100%;
+    height: 100%;
+    text-align: center;
+    position: absolute;
+    bottom: 0;
+    left: 0;
+    opacity: 0;
+    display: inline-block !important;
+  }
+  .el-upload-list--picture-card .el-upload-list__item{
+    width: 160px;
+    height: 120px;
+    top: 69px;
+  }
+  div.vendor_store_apply {
+    margin: 0 auto;
+    width: 1026px;
+    background-color: #FFFFFF;
+    margin-bottom: 20px;
+    margin-top: 25px;
+  }
+
+  div.vendor_store_apply .com_row {
+    padding: 0 40px;
+    min-height: 40px;
+  }
+
+  div.vendor_store_apply .title_row {
+    margin-bottom: 20px;
+    border-bottom: #e8e8e8 1px solid;
+  }
+
+  div.vendor_store_apply .custom_col {
+    margin: 0;
+    padding: 0;
+  }
+
+  div.vendor_store_apply .custom_col img.previewImage {
+    max-width: 160px;
+    max-height: 120px;
+    cursor: pointer;
+    /*padding: 0 30px;*/
+  }
+
+  div.vendor_store_apply .row h2 {
+    padding: 10px 0;
+    font-size: 16px;
+    font-weight: 500;
+    color: #000000;
+  }
+
+  div.vendor_store_apply .row span {
+    display: block;
+    padding: 10px 0;
+    font-size: 14px;
+    color: #000000;
+  }
+
+  div.vendor_store_apply #file_upload {
+    width: 100px;
+    height: 100px;
+    border:1px solid #CDCDCD;
+    /*background: url("static/img/vendor/images/upload.png");*/
+  }
+
+  div.vendor_store_apply #upload_qualification {
+    width: 100px;
+    height: 100px;
+    opacity: 0;
+  }
+
+  div.vendor_store_apply .custom_tab {
+    margin: 0 15px;
+    width: 90px;
+    text-align: center;
+  }
+
+  div.vendor_store_apply .nav li.custom_tab.active>a,
+  div.vendor_store_apply .nav li.custom_tab.active>a:focus,
+  div.vendor_store_apply .nav li.custom_tab.active>a:hover {
+    border: 1px solid #5078CB;
+    border-bottom-color: transparent;
+    color: #5078cb;
+  }
+
+  div.vendor_store_apply .uploadify-button {
+    display: block;
+  }
+
+  div.vendor_store_apply .custom_col .show_image_area {
+    height: 120px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+  }
+  .nav-tabs{
+    height: 41px;
+    background: none;
+    padding: 0 40px;
+  }
+  .nav-tabs>li>a{
+    border-radius: 0;
+    color: #333;
+  }
+  div.vendor_store_apply .btn-primary{
+    background: #5078cb;
+    border-radius: 0;
+  }
+  div.vendor_store_apply .btn-primary:hover{
+    background: #3f7ae3;
+  }
+  div.vendor_store_apply .com_row .col-md-2{
+    width: 120px;
+  }
+  div.vendor_store_apply .com_row .col-md-10 span{
+    color: #666;
+  }
+
+  /*修改的样式*/
+  div.vendor_store_apply .custom_col .show_image_area{
+    position: relative;
+    overflow: hidden;
+  }
+  .hover-show{
+    position: absolute;
+    width: 100%;
+    height: 100%;
+    top: 120px;
+    left: 0;
+    background: rgba(0,0,0,.5);
+  }
+  div.vendor_store_apply .custom_col .show_image_area .hover-show{
+    top: 0;
+  }
+  .hover-show .delete{
+    padding: 0;
+    width: 30px;
+    height: 30px;
+    float: right;
+    text-align: center;
+  }
+  .hover-show .delete:hover{
+    cursor: pointer;
+  }
+  .hover-show .delete i{
+    color: #fff;
+    font-size: 18px;
+  }
+  .hover-show a{
+    display: inline-block;
+    width: 100%;
+    height: 60px;
+    font-size: 14px;
+    color: #fff;
+    text-align: center;
+    line-height: 60px;
+  }
+  .hover-show a i{
+    margin-right: 5px;
+    font-size: 16px;
+  }
+  .brand-type{
+    line-height: 34px;
+    font-size: 14px;
+    margin: 20px 20px 5px 20px;
+  }
+  .brand-type .brand-small-img{
+    position: relative;
+    width: 84px;
+    height: 84px;
+    overflow: hidden;
+    text-align: center;
+    border: #e8e8e8 1px solid;
+  }
+  .brand-type .brand-small-img .preview img{
+    max-width: 84px;
+    max-height: 84px;
+  }
+  .brand-type em{
+    color: #ff0000;
+  }
+  .brand-type .col-md-7,.brand-type .col-md-1{
+    margin-top: 25px;
+  }
+  .brand-small-upload .file-text,.brand-type .brand-small-img{
+    float: left;
+  }
+  .brand-small-upload .file-text{
+    width: 120px;
+    margin-left: 10px;
+    line-height: 20px;
+    margin-top: 6%;
+  }
+  .brand-small-upload .delete{
+    float: right;
+    text-align: center;
+    line-height: 84px;
+  }
+  .brand-small-upload .delete i{
+    font-size: 18px;
+    color: #5078cb;
+  }
+  .brand-small-upload .delete:hover{
+    cursor: pointer;
+  }
+  .brand-small-upload .delete:hover i{
+    color: #f00;
+  }
+  .brand-small-upload .brand-small-img .hover-show{
+    top: 0;
+  }
+  .brand-small-upload .brand-small-img .hover-show{
+  }
+  .brand-small-upload .brand-small-img .hover-show span i{
+    color: #fff;
+  }
+  .brand-small-upload .brand-small-img .hover-show span.delete{
+    line-height: 30px;
+    padding: 0;
+  }
+  .brand-small-upload .brand-small-img .hover-show a{
+    line-height: 30px;
+    height: 30px;
+  }
+  .tab-content {
+    border: 1px #5078CB solid;
+    padding-bottom: 30px;
+  }
+  .tab-content .com_row{
+    margin:40px 0 0;
+    border-bottom: #ccc 1px dashed;
+    padding-bottom: 40px !important;
+  }
+  .tab-content .com_row .col-md-12{
+    color: #999;
+    margin-top: 20px;
+    font-size: 12px;
+    padding-left: 50px;
+  }
+  .brand-small-upload .col-md-12{
+    color: #999;
+    font-size: 12px;
+    padding-left: 0;
+  }
+  .tab-content .com_row .col-md-12 em,.brand-small-upload .col-md-12 em{
+    color: #f00;
+  }
+  .add-brand{
+    text-align: center;
+    border-bottom: #ccc 1px dashed;
+    margin: 0 0 20px 0;
+    height: 34px;
+  }
+  .add-brand a{
+    font-size: 14px;
+    color: #5078cb;
+    width: 200px;
+    height: 15px;
+    display: inline-block;
+    border: #ccc 1px dashed;
+    border-top: 0;
+    border-bottom-left-radius: 50px;
+    border-bottom-right-radius: 50px;
+    margin-top: 31px;
+    background: #fff;
+    line-height: 15px;
+    text-decoration: none;
+  }
+  .add-brand a i{
+    margin-right: 5px;
+    font-size: 20px;
+    vertical-align: middle;
+  }
+  .add-brand a em{
+    position: relative;
+    top: -10px;
+    font-weight: bold;
+    font-style: inherit;
+  }
+  .add-brand a:hover em{
+    color: #d32526;
+    text-decoration: none;
+  }
+  .unpass-reason {
+    margin: 0 40px;
+    line-height: 34px;
+  }
+
+  /* 预览框 end */
+
+  .brand-type .dropdown-menu {
+    width: 95%;
+  }
+  .brand-type .dropdown-menu li {
+    font-size: 14px;
+  }
+  .com-del-box{
+    position: fixed;
+    z-index: 1000;
+    height: auto;
+    opacity: 1;
+    background-color: white;
+    width: 310px;
+    -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    -moz-box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    -o-box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    margin: -155px 0 0 -75px;
+    top: 55%;
+    left: 43%;
+  }
+  .com-del-box .title{
+    height: 30px;
+    background-color: #5078cb;
+    text-align: right;
+    padding-right: 15px;
+    line-height: 30px;
+  }
+  .com-del-box .title a{
+    color: white;
+    font-size: 16px;
+  }
+  .com-del-box .content{
+    width: 100%;
+    text-align: center;
+    margin: 0 auto;
+  }
+  .com-del-box .content p{
+    line-height: 50px;
+    font-size: 14px;
+    padding-top: 10px;
+  }
+  .com-del-box .content p i{
+    color: #5078cb;
+    font-size: 16px;
+    margin-right: 10px;
+  }
+  .com-del-box .content div{
+    width: 100%;
+    text-align: center;
+    margin: 0 auto;
+  }
+  .com-del-box .content div a{
+    width: 55px;
+    height: 26px;
+    line-height: 26px;
+    display: inline-block;
+    text-align: center;
+    font-size: 14px;
+  }
+  .com-del-box .content div a:first-child{
+    background: #b4b5b9;
+    color: #333;
+    margin-right: 10px;
+  }
+  .com-del-box .content div a:last-child{
+    background: #5078cb;
+    color: #fff;
+  }
+  .com-del-box .content div a:hover{
+    background: #3f7ae3;
+    color: #fff;
+  }
+  div.vendor_store_apply .custom_col .show_image_area{
+    width: 160px;
+    border: #dcdcdc 1px solid;
+    margin: 0 10px 0 0;
+    padding: 0;
+  }
+  div.vendor_store_apply .tab-content .custom_col{
+    width: 280px;
+  }
+  div.vendor_store_apply .tab-content .custom_col:first-child{
+    margin-left: 50px;
+  }
+  div.vendor_store_apply .custom_col .row .col-md-5:last-child{
+    width: 110px;
+  }
+  div.vendor_store_apply .custom_col .row .col-md-5:last-child span{
+    margin-top: 85% !important;
+    padding-bottom: 0 !important;
+  }
+  .hoverShow{
+    position: absolute;
+    width: 30px;
+    height: 30px;
+    top: 0px;
+    right: 0;
+    background: rgba(0,0,0,.4);
+    display: none;
+  }
+
+  div.vendor_store_apply .custom_col .show_image_area:hover .hoverShow{
+    display: block;
+  }
+  div.vendor_store_apply .custom_col .show_image_area .deleteImg{
+    position: absolute;
+    right: 7px;
+    top: 0;
+    display: inline-block;
+    padding: 0;
+    margin-top: 6px;
+    font-size: 18px;
+    color: #fff;
+  }
+  .hover-show a{
+    color: #fff;
+    text-decoration: none;
+  }
+  .hover-show a:hover, .hover-show a:active, .hover-show a:focus{
+    color: #fff;
+    text-decoration: none;
+  }
+ /* .dropdown-menu>.active>a, .dropdown-menu>.active>a:focus, .dropdown-menu>.active>a:hover {
+    color: #fff;
+  }*/
+  .dropdown-menu {
+    display: block;
+    left: 14px;
+  }
+  /*
+  radio
+  */
+  .radioLabel {
+    line-height: 20px;
+    cursor: pointer;
+  }
+  .radioLabel label{
+    width: 16px;
+    height: 16px;
+    background: url("/images/messageBoard/radio.png");
+    background-position: 0 -1px;
+    vertical-align: middle;
+    margin-bottom: 0 !important;
+    margin-right: 0 !important;
+    cursor: pointer;
+  }
+  .radioLabel input[type="radio"]:checked + label {
+    background-position: -19px -1px;
+  }
+  .radioLabel input[type="radio"] + label + span {
+    margin-left: 5px;
+  }
+  .radioLabel input[type="radio"]:checked + label{
+    color: #5078cb;
+  }
+  .radioLabel input[type="radio"]{
+    display: none;
+  }
+  .radioLabel span {
+    font-weight: bold;
+    font-size: 18px;
+    color: #5e5e5e;
+  }
+  .radioCheck {
+    padding-top: 35px;
+    padding-left: 30px;
+    padding-bottom: 35px;
+  }
+  .radioCheck .radioLabel:first-child {
+    margin-right: 10px;
+  }
+  .btn-area {
+    margin-top: 20px;
+    text-align: center;
+  }
+  .btn-area span {
+    height: 35px;
+    line-height: 35px;
+    border: 1px solid #5078cb;
+    padding: 0 62px;
+    font-size: 16px;
+    display: inline-block;
+    color: #5078cb;
+    cursor: pointer;
+    background: #fff;
+  }
+  .btn-area span:first-child{
+    margin-right: 16px;
+  }
+  .btn-area span:last-child{
+    background: #5078cb;
+    color: #fff;
+  }
+/*  .btn-area span:hover {
+
+  }*/
+  .loading {
+    position: fixed;
+    top: 0;
+    left: 0;
+    right: 0;
+    width:  100%;
+    height: 100%;
+    z-index: 1000;
+    text-align: center;
+  }
+  .loading img {
+    position: relative;
+    top: 40%;
+  }
+  .btn-area .btn-disabled {
+    cursor: not-allowed;
+    opacity: .5;
+  }
+</style>

+ 1 - 1
nuxt.config.js

@@ -1,7 +1,7 @@
 const path = require('path')
 const isProdMode = Object.is(process.env.NODE_ENV, 'production')
 // b2c后台
-const baseUrl = process.env.BASE_URL || (isProdMode ? 'http://api.usoftmall.com/' : 'http://192.168.253.121:9090/platform-b2c/')
+const baseUrl = process.env.BASE_URL || (isProdMode ? 'http://api.usoftmall.com/' : 'http://10.1.51.125:8080/platform-b2c/')
 // 公共询价
 const commonUrl = process.env.COMMON_URL || (isProdMode ? 'https://api-inquiry.usoftmall.com/' : 'http://218.17.158.219:24000/')
 // 公共物料

+ 1 - 1
pages/mobile/center/index.vue

@@ -89,7 +89,7 @@
     <div v-if="activeType == 'provider'" class="provider">
       <div class="seek">
         <ul class="seek-type" >
-          <li :class="{active: providerType == 'enterprise'}" style="width: 33.3%" @click="switchprovide('enterprise')"><div>企业产品库</div></li>
+          <li :class="{active: providerType == 'enterprise'}" style="width: 33.3%" @click="switchprovide('enterprise')"><div>公司产品库</div></li>
           <li :class="{active: providerType == 'person'}" style="width: 33.3%" @click="switchprovide('person')"><div>个人产品库</div></li>
           <li :class="{active: providerType == 'onLine'}" style="width: 33.3%" @click="switchprovide('onLine')"><div>在售产品</div></li>
         </ul>

+ 2 - 2
pages/mobile/center/user/collect/component.vue

@@ -98,12 +98,12 @@
         event.stopPropagation()
         this.$http.delete('/trade/collection/' + item.id)
           .then(response => {
-            this.onRemind('取消收藏成功')
+            this.onRemind('取消成功')
             this.isChange = true
             this.page = 1
             this.reloadList()
           }, err => {
-            this.onRemind(err.response.data || '取消收藏失败')
+            this.onRemind(err.response.data || '取消失败')
           })
       },
       reloadList: function () {

+ 2 - 2
pages/mobile/center/user/collect/store.vue

@@ -104,12 +104,12 @@
         event.stopPropagation()
         this.$http.post('/trade/storeFocus/delete/storeId', [item.storeid])
           .then(response => {
-            this.onRemind('取消收藏成功')
+            this.onRemind('取消成功')
             this.isChange = true
             this.page = 1
             this.reloadList()
           }, err => {
-            this.onRemind(err.response.data || '取消收藏失败')
+            this.onRemind(err.response.data || '取消失败')
           })
       },
       reloadList: function () {

+ 1 - 1
pages/mobile/center/vendor/index.vue

@@ -14,7 +14,7 @@
         <ul>
           <nuxt-link tag="li" to="/mobile/center/vendor/product?providerType=enterprise">
             <img src="/images/mobile/center/vendor/material.png" alt="">
-            <p>企业产品库</p>
+            <p>公司产品库</p>
           </nuxt-link>
           <nuxt-link tag="li" to="/mobile/center/vendor/product?providerType=person">
             <img src="/images/mobile/center/vendor/material-person.png" alt="">

+ 735 - 0
pages/mobile/store/index.vue

@@ -0,0 +1,735 @@
+<template>
+  <div class="mobile-become-store">
+    <div class="mobile-all-content">
+      <register></register>
+    </div>
+  </div>
+</template>
+<script>
+  import { Register } from '~components/mobile/register-saler'
+  export default {
+    name: 'mobile',
+    layout: 'mobile',
+    middleware: 'authenticated',
+    components: {
+      Register
+    },
+    computed: {
+      user () {
+        return this.$store.state.option.user
+      }
+    }
+//    mounted () {
+//      if (!this.user.logged) {
+//        this.$http.get('/login/page', {params: {returnUrl: window.location.href}}).then(response => {
+//          if (response.data) {
+//            window.location.href = response.data.content + '&baseUrl=' + encodeURIComponent(window.location.protocol + '//' + window.location.host + response.data.baseUrl)
+//          }
+//        })
+//      }
+//    }
+  }
+</script>
+<style>
+  /* 公共模块 */
+  .mobile-become-store{
+    width: 100%;
+    background: #F5F5F5;
+    margin: 0 auto;
+    height: 100%;
+    position: fixed;
+    top: 0.88rem;
+    left: 0;
+    right: 0;
+    bottom: 0.98rem;
+  }
+  .mobile-become-store .mobile-all-content .h3{
+    font-size: 24px;
+    line-height: 80px;
+    text-align: center;
+    font-weight: bold;
+  }
+  .mobile-become-store .mobile-all-content .header-title{
+    width: 70%;
+    margin: 0 auto;
+    margin-bottom: 40px;
+  }
+  .mobile-become-store .mobile-all-content .header-title .col-md-6{
+    padding: 0 45px;
+  }
+  .mobile-become-store .mobile-all-content .header-title .col-md-6 img {
+    margin-left: 95px;
+  }
+  .mobile-become-store .mobile-all-content .header-title h4{
+    font-size: 18px;
+    line-height: 30px;
+    text-align: center;
+    margin-top: 5px;
+    margin-bottom: 10px;
+  }
+  .mobile-become-store .mobile-all-content .header-title p{
+    font-size: 14px;
+    line-height: 25px;
+    color: #666;
+    margin-bottom: 30px;
+  }
+  .step-menu{
+    width: 100%;
+    margin: 0 auto;
+    height: 34px;
+    background: #e8e8e8;
+    line-height: 34px;
+  }
+  .step-menu ul{
+    width: 100%;
+    margin: 0 auto;
+  }
+  .step-menu ul li{
+    width: 33.33333333%;
+    float: left;
+    height: 34px;
+    line-height: 34px;
+    font-size: 14px;
+    color: #555;
+    text-align: center;
+    position: relative;
+    cursor: default!important;
+  }
+  .step-menu ul li:hover{
+    cursor: pointer;
+    /*background: #0099ff;
+    color: #fff;*/
+  }
+  .step-menu ul li.active{
+    background: #5078cb;
+    color: #fff;
+  }
+  .mobile-become-store .section{
+    width: 100%;
+    margin: 0 auto;
+  }
+  .mobile-become-store .section .register{
+    width: 95%;
+    margin: 0 auto;
+    padding-top: 30px;
+  }
+  .mobile-become-store .section .register .row{
+    line-height: 34px;
+    padding-bottom: 15px;
+    margin: 0 auto;
+  }
+  .mobile-become-store .section .register .row p{
+    margin-bottom: 0;
+  }
+  .mobile-become-store .section .register .row .form-control{
+    border-color: #ccc;
+    border-radius: 0;
+    box-shadow: none;
+  }
+  .x-form-set-header {
+    position: relative;
+    margin-bottom: 45px;
+  }
+  .x-form-set-header h4 {
+    font-size: 20px;
+    font-weight: 400;
+    color: #888;
+    margin-top: 0;
+    padding-bottom: 14px;
+    text-align: center;
+  }
+  .x-form-set-header:after {
+    content: "";
+    width: 120px;
+    height: 2px;
+    background: #5078cb;
+    position: absolute;
+    left: 0;
+    right: 0;
+    margin: 0 auto;
+    bottom: 0;
+  }
+  .x-required:before {
+    position: relative;
+    bottom: -5px;
+    content: "* ";
+    font-size: 18px;
+    color: #f4645f;
+  }
+  .register label{
+    font-size: 14px;
+    color: #555;
+    text-align: right;
+    padding-right: 10px;
+  }
+  .next-btn{
+    width: 100%;
+    margin: 0 auto;
+    text-align: center;
+    padding-top: 30px !important;
+  }
+  .next-btn button{
+    width: 175px;
+    padding: 0;
+    height: 35px;
+    line-height: 35px;
+    border-radius: 0;
+    background: #5078cb;
+    color: #fff;
+    letter-spacing: 4px;
+    margin-right: 20px;
+  }
+  .no-apply{
+    width: 150px;
+    height: 34px;
+    line-height: 34px;
+    background: #0099ff;
+    text-align: center;
+    border: none;
+    font-size: 14px;
+    color: #fff;
+    margin-top: 30px;
+    margin: 0 20px;
+    float: right;
+    border-radius: 3px;
+  }
+  .next-btn button:hover, .next-btn button:focus {
+    background: #3765cb;
+    color: #fff;
+  }
+  .mobile-agreement{
+    width: 100%;
+    margin: 0 auto;
+  }
+  .step-last{
+    width: 92%;
+    margin: 0 auto;
+  }
+  .step-last .h4{
+    font-size: 18px;
+    line-height: 40px;
+    margin: 20px 0 0 0;
+  }
+  .step-last p.title{
+    font-size: 14px;
+    color: #666;
+    line-height: 30px;
+    text-align: left;
+    width: 100% !important;
+  }
+  .apply-include{
+    width: 100%;
+    margin: 0 auto;
+    height: 300px;
+    border: #e8e8e8 1px solid;
+    line-height: 300px;
+    font-size: 18px;
+    text-align: center;
+  }
+  /*服务协议*/
+  .mobile-join_xieyi{
+    border: 1px solid #d3d3d3;
+    margin: 0.2rem 0.2rem;
+    border-radius: 5px;
+    background: #fff;
+    padding-bottom: 0.3rem;
+  }
+  .mobile-join_xieyi div.article-flag {
+    width: 100%;
+    display: inline-block;
+    height: 0.72rem;
+    line-height: 0.72rem;
+    box-shadow: 0px 5px 5px #000;
+  }
+  .mobile-join_xieyi div.article-flag span {
+    text-align: center;
+    cursor: pointer;
+    color: #a0a0a0;
+    font-size: 0.24rem;
+    width: 50%;
+    display: inline-block;
+  }
+  .mobile-join_xieyi div.article-flag span:first-child {
+    border-bottom: none;
+  }
+  /*.join_xieyi div.article-flag span:hover {
+    color: #708ed2;
+    border-color: #708ed2;
+    background: #fff;
+  }*/
+  .mobile-join_xieyi div.article-flag span.active {
+    color: #708ed2;
+    border-color: #708ed2;
+    background: #fff;
+  }
+
+  .mobile-join_xieyi div.text-area {
+    height: 352px;
+    overflow: auto;
+    word-break: break-all;
+    outline: none;
+    border: 2px solid #eee;
+    border-left: none;
+  }
+  .x-btn-blank{
+    border: 1px solid #ccc;
+    background: #fff;
+    color: #888;
+    position: relative;
+    overflow: hidden;
+    text-align: left;
+    display: block;
+    height: 34px;
+    line-height: 31px;
+  }
+  .file-input{
+    position: absolute;
+    font-size: 14px;
+    top: 0;
+    left: 0;
+    opacity: 0;
+  }
+  .x-btn-blank i{
+    margin-left: 5px;
+    color: #888;
+    font-size: 16px;
+    position: relative;
+    top: 2px;
+  }
+  .register .col-sm-5 i.fa-info-circle{
+    font-size: 16px;
+    color: #888;
+    position: relative;
+    top: 2px;
+    margin-right: 5px;
+  }
+  .register .col-sm-5 p, .register .col-sm-5 p i{
+    color: red !important;
+  }
+  .register .col-sm-5 span.fa-map-marker, .register .col-sm-5 span.web{
+    position: absolute;
+    top: 1px;
+    z-index: 2;
+    display: block;
+    width: 34px;
+    height: 34px;
+    line-height: 34px;
+    text-align: center;
+    color: #999;
+    font-size: 16px;
+    left: 12px;
+  }
+  .register .col-sm-5 span.web{
+    font-size:14px;
+    left:25px;
+  }
+  /* 开店申请模块 */
+  .com-input{
+    width: 100%;
+    height: 100%;
+    text-align: center;
+    position: absolute;
+    bottom: 0;
+    left: 0;
+    opacity: 0;
+    display: inline-block !important;
+  }
+  .el-upload-list--picture-card .el-upload-list__item{
+    width: 160px;
+    height: 120px;
+    top: 69px;
+  }
+  div.vendor_store_apply {
+    margin: 0 auto;
+    width: 1026px;
+    background-color: #FFFFFF;
+    margin-bottom: 20px;
+    margin-top: 20px;
+  }
+
+  div.vendor_store_apply .com_row {
+    padding: 0 40px;
+    min-height: 40px;
+  }
+
+  div.vendor_store_apply .title_row {
+    margin-bottom: 20px;
+    border-bottom: #e8e8e8 1px solid;
+  }
+
+  div.vendor_store_apply .custom_col {
+    margin: 0;
+    padding: 0;
+  }
+
+  div.vendor_store_apply .custom_col img.previewImage {
+    max-width: 160px;
+    max-height: 120px;
+    cursor: pointer;
+    /*padding: 0 30px;*/
+  }
+
+  div.vendor_store_apply .row h2 {
+    padding: 10px 0;
+    font-size: 16px;
+    font-weight: 500;
+    color: #000000;
+  }
+
+  div.vendor_store_apply .row span {
+    display: block;
+    padding: 10px 0;
+    font-size: 14px;
+    color: #000000;
+  }
+
+  div.vendor_store_apply #file_upload {
+    width: 100px;
+    height: 100px;
+    border:1px solid #CDCDCD;
+    /*background: url("static/img/vendor/images/upload.png");*/
+  }
+
+  div.vendor_store_apply #upload_qualification {
+    width: 100px;
+    height: 100px;
+    opacity: 0;
+  }
+
+  div.vendor_store_apply .custom_tab {
+    margin: 0 15px;
+    width: 90px;
+    text-align: center;
+  }
+
+  div.vendor_store_apply .nav li.custom_tab.active>a,
+  div.vendor_store_apply .nav li.custom_tab.active>a:focus,
+  div.vendor_store_apply .nav li.custom_tab.active>a:hover {
+    border: 1px solid #5078CB;
+    border-bottom-color: transparent;
+    color: #5078cb;
+  }
+
+  div.vendor_store_apply .uploadify-button {
+    display: block;
+  }
+
+  div.vendor_store_apply .custom_col .show_image_area {
+    height: 120px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+  }
+  .nav-tabs{
+    height: 41px;
+    background: none;
+    padding: 0 40px;
+  }
+  .nav-tabs>li>a{
+    border-radius: 0;
+    color: #333;
+  }
+  div.vendor_store_apply .btn-primary{
+    background: #5078cb;
+    border-radius: 0;
+  }
+  div.vendor_store_apply .btn-primary:hover{
+    background: #3f7ae3;
+  }
+  div.vendor_store_apply .com_row .col-md-2{
+    width: 120px;
+  }
+  div.vendor_store_apply .com_row .col-md-10 span{
+    color: #666;
+  }
+
+  /*修改的样式*/
+  div.vendor_store_apply .custom_col .show_image_area{
+    position: relative;
+    overflow: hidden;
+  }
+  .hover-show{
+    position: absolute;
+    width: 100%;
+    height: 100%;
+    top: 120px;
+    left: 0;
+    background: rgba(0,0,0,.5);
+  }
+  div.vendor_store_apply .custom_col .show_image_area .hover-show{
+    top: 0;
+  }
+  .hover-show .delete{
+    padding: 0;
+    width: 30px;
+    height: 30px;
+    float: right;
+    text-align: center;
+  }
+  .hover-show .delete:hover{
+    cursor: pointer;
+  }
+  .hover-show .delete i{
+    color: #fff;
+    font-size: 18px;
+  }
+  .hover-show a{
+    display: inline-block;
+    width: 100%;
+    height: 60px;
+    font-size: 14px;
+    color: #fff;
+    text-align: center;
+    line-height: 60px;
+  }
+  .hover-show a i{
+    margin-right: 5px;
+    font-size: 16px;
+  }
+  .brand-type{
+    line-height: 34px;
+    font-size: 14px;
+    margin: 20px 20px 5px 20px;
+  }
+  .brand-type .brand-small-img{
+    position: relative;
+    width: 84px;
+    height: 84px;
+    overflow: hidden;
+    text-align: center;
+    border: #e8e8e8 1px solid;
+  }
+  .brand-type .brand-small-img .preview img{
+    max-width: 84px;
+    max-height: 84px;
+  }
+  .brand-type em{
+    color: #ff0000;
+  }
+  .brand-type .col-md-7,.brand-type .col-md-1{
+    margin-top: 25px;
+  }
+  .brand-small-upload .file-text,.brand-type .brand-small-img{
+    float: left;
+  }
+  .brand-small-upload .file-text{
+    width: 120px;
+    margin-left: 10px;
+    line-height: 20px;
+    margin-top: 6%;
+  }
+  .brand-small-upload .delete{
+    float: right;
+    text-align: center;
+    line-height: 84px;
+  }
+  .brand-small-upload .delete i{
+    font-size: 18px;
+    color: #5078cb;
+  }
+  .brand-small-upload .delete:hover{
+    cursor: pointer;
+  }
+  .brand-small-upload .delete:hover i{
+    color: #f00;
+  }
+  .brand-small-upload .brand-small-img .hover-show{
+    top: 0;
+  }
+  .brand-small-upload .brand-small-img .hover-show{
+  }
+  .brand-small-upload .brand-small-img .hover-show span i{
+    color: #fff;
+  }
+  .brand-small-upload .brand-small-img .hover-show span.delete{
+    line-height: 30px;
+    padding: 0;
+  }
+  .brand-small-upload .brand-small-img .hover-show a{
+    line-height: 30px;
+    height: 30px;
+  }
+  .tab-content .com_row{
+    margin:40px 0 0;
+    border-bottom: #ccc 1px dashed;
+    padding-bottom: 40px !important;
+  }
+  .tab-content .com_row .col-md-12{
+    color: #999;
+    margin-top: 20px;
+    font-size: 12px;
+    padding-left: 50px;
+  }
+  .brand-small-upload .col-md-12{
+    color: #999;
+    font-size: 12px;
+    padding-left: 0;
+  }
+  .tab-content .com_row .col-md-12 em,.brand-small-upload .col-md-12 em{
+    color: #f00;
+  }
+  .add-brand{
+    text-align: center;
+    border-bottom: #ccc 1px dashed;
+    margin: 0 0 20px 0;
+    height: 34px;
+  }
+  .add-brand a{
+    font-size: 14px;
+    color: #5078cb;
+    width: 200px;
+    height: 15px;
+    display: inline-block;
+    border: #ccc 1px dashed;
+    border-top: 0;
+    border-bottom-left-radius: 50px;
+    border-bottom-right-radius: 50px;
+    margin-top: 31px;
+    background: #fff;
+    line-height: 15px;
+    text-decoration: none;
+  }
+  .add-brand a i{
+    margin-right: 5px;
+    font-size: 20px;
+    vertical-align: middle;
+  }
+  .add-brand a em{
+    position: relative;
+    top: -10px;
+    font-weight: bold;
+    font-style: inherit;
+  }
+  .add-brand a:hover em{
+    color: #d32526;
+    text-decoration: none;
+  }
+  .unpass-reason {
+    margin: 0 40px;
+    line-height: 34px;
+  }
+
+  /* 预览框 end */
+
+  .brand-type .dropdown-menu {
+    width: 95%;
+  }
+  .brand-type .dropdown-menu li {
+    font-size: 14px;
+  }
+  .com-del-box{
+    position: fixed;
+    z-index: 2;
+    height: 152px;
+    opacity: 1;
+    background-color: white;
+    width: 310px;
+    -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    box-shadow: 0 5px 15px rgba(0,0,0,.5);
+    margin: -155px 0 0 -75px;
+    top: 55%;
+    left: 50%;
+  }
+  .com-del-box .title{
+    height: 30px;
+    background-color: #5078cb;
+    text-align: right;
+    padding-right: 15px;
+    line-height: 30px;
+  }
+  .com-del-box .title a{
+    color: white;
+    font-size: 16px;
+  }
+  .com-del-box .content{
+    width: 100%;
+    text-align: center;
+    margin: 0 auto;
+  }
+  .com-del-box .content p{
+    line-height: 50px;
+    font-size: 14px;
+    padding-top: 10px;
+  }
+  .com-del-box .content p i{
+    color: #5078cb;
+    font-size: 16px;
+    margin-right: 10px;
+  }
+  .com-del-box .content div{
+    width: 100%;
+    text-align: center;
+    margin: 0 auto;
+  }
+  .com-del-box .content div a{
+    width: 55px;
+    height: 26px;
+    line-height: 26px;
+    display: inline-block;
+    text-align: center;
+    font-size: 14px;
+  }
+  .com-del-box .content div a:first-child{
+    background: #b4b5b9;
+    color: #333;
+    margin-right: 10px;
+  }
+  .com-del-box .content div a:last-child{
+    background: #5078cb;
+    color: #fff;
+  }
+  .com-del-box .content div a:hover{
+    background: #3f7ae3;
+    color: #fff;
+  }
+  div.vendor_store_apply .custom_col .show_image_area{
+    width: 160px;
+    border: #dcdcdc 1px solid;
+    margin: 0 10px 0 0;
+    padding: 0;
+  }
+  div.vendor_store_apply .tab-content .custom_col{
+    width: 280px;
+  }
+  div.vendor_store_apply .tab-content .custom_col:first-child{
+    margin-left: 50px;
+  }
+  div.vendor_store_apply .custom_col .row .col-md-5:last-child{
+    width: 110px;
+  }
+  div.vendor_store_apply .custom_col .row .col-md-5:last-child span{
+    margin-top: 85% !important;
+    padding-bottom: 0 !important;
+  }
+  .hoverShow{
+    position: absolute;
+    width: 30px;
+    height: 30px;
+    top: 0px;
+    right: 0;
+    background: rgba(0,0,0,.4);
+    display: none;
+  }
+
+  div.vendor_store_apply .custom_col .show_image_area:hover .hoverShow{
+    display: block;
+  }
+  div.vendor_store_apply .custom_col .show_image_area .deleteImg{
+    position: absolute;
+    right: 7px;
+    top: 0;
+    display: inline-block;
+    padding: 0;
+    margin-top: 6px;
+    font-size: 18px;
+    color: #fff;
+  }
+  .hover-show a{
+    color: #fff;
+    text-decoration: none;
+  }
+  .hover-show a:hover, .hover-show a:active, .hover-show a:focus{
+    color: #fff;
+    text-decoration: none;
+  }
+</style>