guojy пре 1 година
родитељ
комит
ad977913c3
7 измењених фајлова са 249 додато и 799 уклоњено
  1. 5 0
      package-lock.json
  2. 1 0
      package.json
  3. 4 1
      src/main.js
  4. 7 7
      src/router/course.js
  5. 140 59
      src/view/course/deal/dealOrder.vue
  6. 58 26
      src/view/course/home.vue
  7. 34 706
      src/view/course/user/login.vue

+ 5 - 0
package-lock.json

@@ -11264,6 +11264,11 @@
       "resolved": "https://registry.npmmirror.com/qrcode.vue/-/qrcode.vue-1.7.0.tgz",
       "integrity": "sha512-R7t6Y3fDDtcU7L4rtqwGUDP9xD64gJhIwpfjhRCTKmBoYF6SS49PIJHRJ048cse6OI7iwTwgyy2C46N9Ygoc6g=="
     },
+    "qrcodejs2": {
+      "version": "0.0.2",
+      "resolved": "https://registry.npmmirror.com/qrcodejs2/-/qrcodejs2-0.0.2.tgz",
+      "integrity": "sha512-+Y4HA+cb6qUzdgvI3KML8GYpMFwB24dFwzMkS/yXq6hwtUGNUnZQdUnksrV1XGMc2mid5ROw5SAuY9XhI3ValA=="
+    },
     "qs": {
       "version": "6.11.2",
       "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz",

+ 1 - 0
package.json

@@ -25,6 +25,7 @@
     "moment": "^2.24.0",
     "px2rem-loader": "^0.1.9",
     "qrcode.vue": "^1.6.3",
+    "qrcodejs2": "0.0.2",
     "qs": "^6.9.6",
     "sortablejs": "^1.14.0",
     "swiper": "^5.2.1",

+ 4 - 1
src/main.js

@@ -24,7 +24,7 @@ import axiosKc from '@/utils/axiosKc'
 import 'shepherd.js/dist/css/shepherd.css';
 
 import {Tabbar,Empty,TabbarItem,Grid,GridItem,Field,NavBar,Row,Col,List ,Picker , Cell,CellGroup,Toast,Popup,Dialog,RadioGroup,Radio,Notify,Button,Icon,Tab, Tabs} from 'vant'
-import {getIsIdentity,supremeAuthority, getIsWx,getTypes, getTypesName,getUserData, getEmployeeMap,getCache,setCache,removeCache,returnDeptName,getEmployeeMapItem,returnFh } from '@/utils/auth'
+import {getWxToken,setWxToken,getIsIdentity,supremeAuthority, getIsWx,getTypes, getTypesName,getUserData, getEmployeeMap,getCache,setCache,removeCache,returnDeptName,getEmployeeMapItem,returnFh } from '@/utils/auth'
 Vue.prototype.$echarts = echarts
 Vue.prototype.$moment = moment
 Vue.prototype.$getTypesName = getTypesName
@@ -50,6 +50,9 @@ Vue.prototype.$isWx=getIsWx()
 // true为APP打包,false为M端打包
 Vue.prototype.$isApp = true
 
+setWxToken('eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImlhdCI6MTcwMzU3MzQyMywiZXhwIjotMSwibmJmIjoxNzAzNTczNDIzLCJqdGkiOiJNS0wwQ1d2QW9IZjhGTnhjIiwic3ViIjoyOCwicHJ2IjoiY2E2NDg5ZDUwZjI0MDdhNjc4MzBlODA5MGQwMTQ4ODM1Njg1OTYyYiIsInJvbGUiOiJlbXBsb3llZSJ9.3tu6W0NaobTYKF_p0GxIDcSNbwFOqPr1vwXS0bO9lb0')
+localStorage.setItem("wx_user_info",JSON.stringify({"account_id":31608,"nickname":"沐阳人","account":{"id":31608,"img_url":"","name":"雷阳","site_count_max":1,"tel":"15270803986","try_user":0,"account":""},"account_site":[{"id":24451,"account_id":31608,"site_id":14,"employee_id":35131,"create_time":"1709805792","update_time":"1709805792","delete_time":null,"site":{"id":14,"name":"广东功道云数字科技有限公司","status":1,"account_id":18,"expire_time":2067350399}}],"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImlhdCI6MTcxMTA5MjAyNSwiZXhwIjotMSwibmJmIjoxNzExMDkyMDI1LCJqdGkiOiJIOExwaTdmTXpXRGVVTmNIIiwic3ViIjozMTYwOCwicHJ2IjoiOTNhMjEyMzNhMWE5ZDMxZmNkNjlmNzZhMjZhZTVkNzczMzU4NzgxNSIsInJvbGUiOiJwbGF0Zm9ybSJ9.q4z339k_Lb1YyLRNQFzSBXV3rvInExqTh6lM0CiguPQ","invitation_wait_count":0,"join_wait_count":0,"wo_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImlhdCI6MTcxMTA5MjAyNSwiZXhwIjotMSwibmJmIjoxNzExMDkyMDI1LCJqdGkiOiI3cFRYclZhR0NwQW11eGNFIiwic3ViIjoxMTc3MCwicHJ2IjoiMDMwMGE1NDlhYjhmNzAyY2RhODMyMzFhNDEzMzJlY2NiZGU5ZGY4ZiIsInJvbGUiOiJ3ZWNoYXRfb3Blbl91c2VyIn0.iK5JQ5e2t8aGSK9CdIelDvOm47zUI4FtDM0oMr0FAtE"}))
+
 
 Vue.use(VueScroller)
 Vue.component('icon', icon)

+ 7 - 7
src/router/course.js

@@ -1,12 +1,5 @@
   // 在线课程相关
   const routes = [
-    {
-      path: '/courseLogin',
-      name: 'courseLogin',
-      component: () => import('@/view/course/user/login'),
-      label: '课程登录',
-      need_login: false,
-    },
     {
       path: '/courseHome',
       name: 'courseHome',
@@ -84,5 +77,12 @@
       label: '课程播放',
       need_login: true,
     },
+    {
+      path: '/courseLogin',
+      name: 'courseLogin',
+      component: () => import('@/view/course/user/login'),
+      label: '课程登录',
+      need_login: false,
+    },
 ]
 export default routes

+ 140 - 59
src/view/course/deal/dealOrder.vue

@@ -1,5 +1,5 @@
 <template>
-<div>
+  <div class="page">
     <van-nav-bar
       title="课程交易"
       left-text="返回"
@@ -7,15 +7,42 @@
       @click-left="onClickLeft"
     ></van-nav-bar>
     <div class="orderContent">
-        <div class="form">
-            <van-button type="primary"  @click="showPop">{{ this.form.id==0?'交易课程':this.form.name }}</van-button>
+      <div class="form">
+        <van-field
+          readonly
+          clickable
+          label="选择课程"
+          :value="form.name"
+          placeholder="选择课程"
+          @click="showPop"
+        />
+        <div class="desc" v-if="form.id != 0">
+          <span>该课程名额剩余{{ coursesUsable }}套</span>
         </div>
+        <van-field
+          readonly
+          label="选择交易数量"
+          :value="form.number"
+          placeholder="选择交易数量"
+          @touchstart.native.stop="numberShow = true"
+        />
+        <van-field
+          v-model="form.beizhu"
+          rows="3"
+          autosize
+          label="备注"
+          type="textarea"
+          maxlength="100"
+          placeholder="备注留言"
+          show-word-limit
+        />
+        <div class="submit">
+          <van-button color="#999" style="padding: 0 .8rem;" @click="$router.go(-1)">取消</van-button>
+          <van-button type='primary'  style="padding: 0 .8rem;" @click="comfirm">确认</van-button>
+        </div>
+      </div>
     </div>
-    <van-popup
-      v-model="popupShow"
-      position="bottom"
-      :style="{ height: '30%' }"
-    >
+    <van-popup v-model="popupShow" position="bottom" :style="{ height: '30%' }">
       <van-picker
         title="选择课程"
         show-toolbar
@@ -23,69 +50,123 @@
         @confirm="onConfirm"
       />
     </van-popup>
-</div>
+    <van-number-keyboard
+      :show="numberShow"
+      @blur="numberShow = false"
+      @input="onInput"
+      @delete="onDelete"  
+    />
+  </div>
 </template>
 
 <script>
+import Vue from "vue";
+import { NumberKeyboard } from "vant";
+
+Vue.use(NumberKeyboard);
 export default {
-  name: 'dealOrder',
+  name: "dealOrder",
   components: {},
-  data () {
+  data() {
     return {
-        popupShow:false,
-        form:{
-            name:"",
-            id:0,
-            number:0,
-            beizhu:""
+      numberShow: false,
+      popupShow: false,
+      form: {
+        name: "",
+        id: 0,
+        number: 0,
+        beizhu: ""
+      },
+      coursesUsable: 0,
+      courseList: [
+        {
+          value: 1,
+          label: "课程精讲1",
+          courseUsable: 18
         },
-        columnsOptions: [
-            {
-                value:1,
-                label:"课程精讲1"
-            },
-            {
-                value:2,
-                label:"课程精讲2"
-            },
-            {
-                value:3,
-                label:"课程精讲3"
-            },
-            {
-                value:4,
-                label:"课程精讲4"
-            },
-            {
-                value:5,
-                label:"课程精讲5"
-            },
-        ],
-    }
+        {
+          value: 2,
+          label: "课程精讲2",
+          courseUsable: 22
+        },
+        {
+          value: 3,
+          label: "课程精讲3",
+          courseUsable: 28
+        },
+        {
+          value: 4,
+          label: "课程精讲4",
+          courseUsable: 118
+        },
+        {
+          value: 5,
+          label: "课程精讲5",
+          courseUsable: 13
+        }
+      ]
+    };
   },
-  computed:{
-    columns(){
-
+  computed: {
+    columnsOptions() {
+      let list = [];
+      this.courseList.forEach(i => {
+        list.push(i.label);
+      });
+      return list;
     }
   },
-  created () { 
-    
-   },
-  methods: { 
-    onClickLeft(){
-        this.$router.go(-1);
+  created() {},
+  methods: {
+    comfirm(){
+      this.$dialog.confirm({
+         title: '提示',
+         message: '确认要提交当前名额交易吗?',
+        }).then(() => {
+          console.log(this.form)
+          this.$toast('名额交易成功!')
+        })
     },
-    showPop(){
-        this.popupShow = true
+    onInput(key) {
+      console.log(key)
+      this.form.number = Number(`${this.form.number}${key}`)
     },
-    onConfirm(e){
-        console.log(e)
-        this.popupShow = false
+    onDelete() {
+      this.form.number = Number(this.form.number.toString().slice(0,this.form.number.toString().length - 1))
     },
-   },
-  computed: {}
-}
+    onClickLeft() {
+      this.$router.go(-1);
+    },
+    showPop() {
+      this.popupShow = true;
+    },
+    onConfirm(e, index) {
+      console.log(index);
+      this.form.name = this.courseList[index].label;
+      this.form.id = this.courseList[index].value;
+      this.coursesUsable = this.courseList[index].courseUsable;
+      this.popupShow = false;
+    }
+  }
+};
 </script>
-<style scoped lang='scss'>
-
+<style scoped lang="scss">
+.page {
+  .orderContent {
+    .form {
+      .desc {
+        padding: 0 0.2rem;
+        font-size: 0.24rem;
+        color: #888;
+        line-height: 2;
+      }
+      .submit{
+        margin-top: .5rem;
+        display: flex;
+        justify-content: space-around;
+        align-items: center;
+      }
+    }
+  }
+}
 </style>

+ 58 - 26
src/view/course/home.vue

@@ -27,7 +27,11 @@
                 style="margin-left: .1rem;"
             /></span>
             <!-- <p>手机:{{ user_info.tel }}</p> -->
-            <p class="userId" @click="copyLink(user_info.id, '.userId')">
+            <p
+              class="userId"
+              :aria-label="user_info.id"
+              @click="copyLink('.userId')"
+            >
               <i class="courseIcon icon-fuzhi"></i>复制身份ID
             </p>
           </div>
@@ -44,22 +48,18 @@
           <van-icon name="friends-o" />
           <span>我的团队</span>
         </div>
-        <div class="tabsLi">
+        <div class="tabsLi" @click="qropen">
           <i class="courseIcon icon-erweima"></i>
           <span>我的二维码</span>
         </div>
       </div>
     </div>
     <div class="courScroll">
-      <scroller
-        ref="scroller"
-        :on-refresh="refresh"
-        :isInitRefresh="false"
-      >
+      <scroller ref="scroller" :on-refresh="refresh" :isInitRefresh="false">
         <div class="myCourseList">
           <courseList
             :dataList="courseClass.proCourse.courseList"
-            :showNum ='1'
+            :showNum="1"
             :fixedTitle="courseClass.proCourse.title"
           ></courseList>
         </div>
@@ -72,16 +72,24 @@
         </div>
       </scroller>
     </div>
-    
+    <van-overlay :show="qrVisible" @click="qrVisible = false">
+      <div class="wrapper">
+        <div class="qrcode-wrap" ref="qrCodeUrl"></div>
+      </div>
+    </van-overlay>
   </div>
 </template>
 
 <script>
 import Vue from "vue";
 import Clipboard from "clipboard";
+import QRCode from "qrcodejs2";
 import { getWxToken, setWxToken, openError } from "@/utils/auth";
 import { isWxEnv } from "./utils";
 import courseList from "./components/courseList.vue";
+import { Overlay } from "vant";
+
+Vue.use(Overlay);
 export default {
   name: "",
   components: {
@@ -90,6 +98,9 @@ export default {
   props: [],
   data() {
     return {
+      qrVisible: false,
+      qrcode: null,
+      qrcodeStatus: false,
       isWx: true,
       isAndroid: this.$getCache("isAndroid"),
       user_info: {
@@ -104,7 +115,7 @@ export default {
           title: "我推广的课程",
           courseList: [
             {
-              id:123,
+              id: 123,
               surplus: 120,
               sale: 341,
               title:
@@ -114,7 +125,7 @@ export default {
               url: "/static/img/course.f1777cf.jpg"
             },
             {
-              id:124,
+              id: 124,
               surplus: 120,
               sale: 341,
               title:
@@ -124,7 +135,7 @@ export default {
               url: "/static/img/course.f1777cf.jpg"
             },
             {
-              id:125,
+              id: 125,
               surplus: 120,
               sale: 341,
               title:
@@ -139,7 +150,7 @@ export default {
           title: "我学习的课程",
           courseList: [
             {
-              id:126,
+              id: 126,
               surplus: 120,
               sale: 341,
               title:
@@ -149,7 +160,7 @@ export default {
               url: "/static/img/course.f1777cf.jpg"
             },
             {
-              id:127,
+              id: 127,
               surplus: 120,
               sale: 341,
               title:
@@ -164,29 +175,44 @@ export default {
     };
   },
   created() {
-    console.log(this.$route.query);
+    // console.log(this.$route.query);
     this.init();
   },
   methods: {
-    copyLink(data, event) {
+    qropen() {
+      this.qrVisible = true;
+      this.$nextTick(() => {
+        this.creatQrCode();
+      });
+    },
+    creatQrCode() {
+      if (!this.qrcodeStatus) {
+        this.qrcode = new QRCode(this.$refs.qrCodeUrl, {
+          text: "https://www.baidu.com/", // 需要转换为二维码的内容
+          width: 200,
+          height: 200,
+          colorDark: "#000000",
+          colorLight: "#ffffff",
+          correctLevel: QRCode.CorrectLevel.H
+        });
+        this.qrcodeStatus = true;
+      }
+    },
+    copyLink(event) {
       let that = this;
       //这里是复制目标的类名
       let clipboard = new Clipboard(event, {
-        text: function() {
-          return data;
+        text: function(trigger) {
+          return trigger.getAttribute("aria-label");
         }
       });
       clipboard.on("success", function(e) {
-        console.info("Action:", e.action);
-        console.info("Text:", e.text); //复制的文本内容
-        console.info("Trigger:", e.trigger); //节点
         e.clearSelection(); //清除选中的文字的选择状态
         that.$toast("身份ID复制成功~");
       });
 
       clipboard.on("error", function(e) {
-        console.error("Action:", e.action);
-        console.error("Trigger:", e.trigger);
+        console.error(e);
       });
     },
     //跳转内页
@@ -232,8 +258,8 @@ export default {
   margin: 0;
   padding: 0;
 }
-img{
-  display:block;
+img {
+  display: block;
 }
 .curPage {
   padding: 0.4rem 0 0;
@@ -241,7 +267,7 @@ img{
   position: relative !important;
   background-color: #eee;
   .userInfo {
-    padding: 0.24rem 0.32rem .12rem;
+    padding: 0.24rem 0.32rem 0.12rem;
     .userImage {
       display: flex;
       align-items: center;
@@ -320,5 +346,11 @@ img{
       margin-top: 0.2rem;
     }
   }
+  .wrapper {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 100vh;
+  }
 }
 </style>

+ 34 - 706
src/view/course/user/login.vue

@@ -1,716 +1,44 @@
 <template>
-  <div class="login-box-parent" style="background:#fff;">
-    <div class="login-box" :class="{ input_focus: input_focus }">
-      <div class="flex-box-v" style="height: 100%;">
-        <div class="login-form-box flex-1" style="background-color:#FFF">
-          <div class="login-form-box-bg">
-            <!-- App背景 -->
-            <icon name="login_logo_bg" class="login_logo_bg"></icon>
-          </div>
-          <div style="height: 1rem;"></div>
-          <div class="login_logo">
-            <icon name="logo" class="app_logn"></icon>
-          </div>
-          <div class="setp1">
-            <van-cell-group style="margin-top:0.3rem;">
-              <van-field class="tel" left-icon="logo" label-class="hidden" label="" type="Number"
-                v-model="formData.username" placeholder="手机号" clearable style="color:#515151;caret-color:#26A2FF;"
-                name="手机号码" v-validate="'required|phone'">
-                <template slot="left-icon">
-                  <icon name="tel" class="login_tel"></icon>
-                </template>
-              </van-field>
-
-              <van-field class="psw" label-class="hidden" left-icon="logo" clearable type="password" v-model="formData.password" placeholder="密码" name="密码" v-validate="'required|alpha_dash|min:6'"  style="color:#515151;caret-color:#26A2FF;">
-                <template slot="left-icon">
-                  <icon name="pwd" class="login_pwd"></icon>
-                </template>
-              </van-field>
-
-            </van-cell-group>
-          </div>
-
-          <div style="padding:0 0.32rem">
-            <van-button class="login_button" color="#228bf8" size="large" :disabled="!next_btn_enable"
-              @click="sendLogin" type="info">登录</van-button>
-          </div>
-          <div style="padding:0.2rem 0.32rem 0.2rem;" class="reg_link_box">
-            <van-row>
-              <van-col span="12">
-                <div class="blue" @click="openUrl(1)">找回密码</div>
-              </van-col>
-              <!-- <van-col span="12" style="text-align: right;">
-                <div @click="openUrl(2)">注册免费试用</div>
-              </van-col> -->
-            </van-row>
-          </div>
-          <div style="text-align: center; padding:0 0.32rem;letter-spacing: 0.01rem"
-            v-if="(auths.length > 0&&isAndroid)||$isWx">
-            <van-divider>快捷登录</van-divider>
-            <div style="display: inline-block;" @click="doWeixinLogin">
-              <icon name="weixindenglu" style="width:1.2rem;"></icon>
-            </div>
-          </div>
-        </div>
-        <div class="footer flex-box-ce flex-center-center" v-if="!$isWx">
-          <van-checkbox icon-size="14px" v-model="isYsShow">登录即同意功道云</van-checkbox>
-          <span style="color:#28a2f1" @click="$router.push({ name: 'user_agreement' })">《服务协议》</span>
-          <span>&</span>
-          <span style="color:#28a2f1" @click="$router.push({ name: 'privacy_agreement' })">《隐私政策》</span>
-        </div>
-      </div>
-    </div>
-
-
-
-    <!-- 隐私条例 -->
-    <van-popup v-model="showYs" :close-on-click-overlay="false" class="popup-all">
-      <div style="position: relative;">
-        <div class="title">提示</div>
-        <div class="content">
-          使用本软件前请认真阅读我们的
-          <span style="color:#28a2f1" @click="$router.push({ name: 'user_agreement' })">《用户服务协议》</span>
-          和
-          <span style="color:#28a2f1" @click="$router.push({ name: 'privacy_agreement' })">《隐私协议》</span>
-          相关条款,您也可以稍后在应用设置里浏览查看。点击“同意使用”即表示您接受我们的服务协议和隐私政策,继续使用我们的软件。
-        </div>
-        <div class="footer2 flex-box-ce">
-          <div class="flex-1" @click="closeYs2">暂不使用</div>
-          <div class="flex-1" @click="closeYs">同意使用</div>
-        </div>
-      </div>
-    </van-popup>
-
-    <!-- 微信登录 -->
-    <van-popup v-model="isShowSelect" class="popup-all">
-      <div style="position: relative;">
-        <div style="position: absolute;top:16px;right:16px" @click="isShowSelect=false"><van-icon name="cross" /></div>
-        <div class="contentBox">
-          <div class="">欢迎使用功道云!</div>
-          <p>请选择以下进入方式,如已有登录账号<br />请先绑定账号再进入</p>
-        </div>
-        <div class="btns" style="padding-bottom: 16px;">
-          <div class="bdBtn" @click="$router.push({ name: 'bindingPhone', query: { secret: wo_token } })">绑定已有账号</div>
-          <div style="font-size: 0.28rem;color: #666" @click="wxLogin">创建新账号</div>
-        </div>
-      </div>
-    </van-popup>
-
-    <van-dialog v-model="isShowDialog" confirmButtonText="同意并继续" confirmButtonColor="#238cf9" @confirm="confirmDialog">
-      <div style="padding: 0.3rem;">
-        <div class="flex-box-ce" style="margin-bottom: 0.24rem;">
-          <div style="font-size: 0.4rem;font-weight: 700;" class="flex-1 black">服务协议和隐私政策</div>
-          <van-icon name="cross" @click="isShowDialog=false" class="fontColorC"
-            style="font-size: 0.3rem;position: relative;top: -0.1rem;right: -0.1rem;" />
-        </div>
-        <div class="fontColorC">
-          为了更好地保障你的合法权益,使用前请阅读并同意功道云<span style="color:#28a2f1"
-            @click="$router.push({ name: 'user_agreement' })">《服务协议》</span>&<span style="color:#28a2f1"
-            @click="$router.push({ name: 'privacy_agreement' })">《隐私政策》</span>
-        </div>
-      </div>
-    </van-dialog>
+<div class="page">
+经销商手机号绑定
+  <div class="tit">
+    <p>请完善用户信息</p>
+  </div>
+  <div class="bindContent">
+    <van-cell-group>
+      <van-field v-model="form.name" label="" placeholder="请输入用户名" />
+    </van-cell-group>
+    <van-cell-group>
+      <van-field v-model="form.name" label="" placeholder="请输入手机号" />
+    </van-cell-group>
+    <van-cell-group>
+      <van-field v-model="form.name" label="" placeholder="请输入验证码" />
+    </van-cell-group>
   </div>
+
+</div>
 </template>
 
 <script>
-  import {
-    setToken,
-    returnJSEncrypt
-  } from '@/utils/auth';
-  import axios from 'axios';
-  import qs from 'qs';
-  import Vue from 'vue';
-  import {
-    Divider
-  } from 'vant';
-  Vue.use(Divider);
-  export default {
-    name: 'login',
-    data() {
-      return {
-        input_focus: false,
-        next_btn_enable: false,
-        isAndroid: this.$getCache('isAndroid'),
-        formData: {
-          username: '',
-          password: ''
-        },
-        aweixin: null,
-        auths: [],
-
-        index: 0,
-        // 微信登录
-        isShowSelect: false,
-        // 隐私相关
-        isYsShow: false,
-        showYs: false,
-        wo_token: '',
-        isShowDialog: false,
-        // wo_token:'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOm51bGwsImlhdCI6MTY0MjI0MDQ3NywiZXhwIjoxNjQ0ODMyNDc3LCJuYmYiOjE2NDIyNDA0NzcsImp0aSI6ImtlZmVxZ09yMVZYWEVNZmwiLCJzdWIiOjgsInBydiI6IjAzMDBhNTQ5YWI4ZjcwMmNkYTgzMjMxYTQxMzMyZWNjYmRlOWRmOGYiLCJyb2xlIjoid2VjaGF0X29wZW5fdXNlciJ9.SRt2d8-J3FXQ0UFU27csIiGOJvOSxzQSoDMV-LpE3ZM' //微信登录token
-      };
-    },
-    created() {
-      let that = this;
-      console.log(this.$route.query)
-      document.body.addEventListener('blur', function(e) {
-        setTimeout(() => {
-          e.target.parentNode.parentNode.parentNode.classList.remove('field-focus');
-          that.input_focus = false;
-        }, 100);
-      }, true);
-      document.body.addEventListener('focus', function(e) {
-        e.target.parentNode.parentNode.parentNode.classList.add('field-focus');
-        setTimeout(() => {
-          that.input_focus = true;
-        }, 100);
-      }, true);
-      this.$store.commit('SET_USERINFO', {}); // 清空人员信息
-      this.$store.commit('SET_USERID', 0);
-      // alert(`$isWx${this.$isWx}`)
-      if (this.$isWx) {
-        this.doWeixinLogin();
-        return false
+export default {
+  name: '',
+  components: {},
+    props: [],
+  data () {
+    return {
+      form:{
+        name:"",
+        tel:'',
+        yzm:''
       }
-      if (window.plus) {
-        this.hei = plus.navigator.getStatusbarHeight();
-        this.getServiceOauth();
-      }
-    },
-    mounted() {
-      this.$removeCache('account')
-    },
-    watch: {
-      formData: {
-        handler(val, oldVal) {
-          if (val.username != '' && val.password != '') {
-            this.next_btn_enable = true;
-          } else {
-            this.next_btn_enable = false;
-          }
-        },
-        deep: true
-      }
-    },
-    methods: {
-      confirmDialog() {
-        this.isShowDialog = true;
-        this.isYsShow = true
-      },
-      wxLogin() {
-        let pl = 'a';
-        if (window.plus) {
-          if (navigator.userAgent.indexOf('Android') > 0) {
-            pl = 'a';
-          } else {
-            pl = 'i';
-          }
-        }
-        axios({
-          method: 'post',
-          url: process.env.BASE_API + '/api/pro/wo/create',
-          headers: {
-            'Content-Type': 'application/x-www-form-urlencoded',
-            pl: pl,
-            'A-TOKEN': this.wo_token
-          }
-        }).then(res => {
-          if (res.data.code == 1) {
-            this.$setCache('account', res.data.data.account);
-            localStorage.setItem('a-token-temp', res.data.data.token); // 保存平台账号登录的token
-            this.registrationExperience(); //进入体验账号
-          } else {
-            this.$toast(res.data.msg);
-          }
-        });
-      },
-      openUrl(index) {
-        if (!this.isLogin()) {
-          return false
-        }
-        if (index == 1) {
-          this.$router.push({
-            name: 'forget_pwd'
-          });
-        } else {
-          this.$router.push({
-            name: 'reg'
-          });
-        }
-      },
-      openHome() {
-        setTimeout(() => {
-          window.location.href = window.location.href.split('#')[0];
-        }, 100);
-      },
-      isLogin() {
-        if (!this.isYsShow && process.env.NODE_ENV == 'production') {
-          this.isShowDialog = true;
-          return false;
-        } else {
-          return true;
-        }
-      },
-      // 判断是否获取微信登录认证
-      getServiceOauth() {
-        var that = this;
-        if (window.plus) {
-          plus.oauth.getServices(function(services) {
-            that.auths = services;
-            for (let i in services) {
-              if (services[i].id == 'weixin') {
-                that.aweixin = services[i];
-              }
-            }
-          });
-        }
-      },
-      doWeixinLogin() {
-        if (this.$isWx) {
-          if (this.isAndroid) {
-            window.open(process.env.VUE_APP_WXURL, '_blank');
-          } else {
-            window.location.href = process.env.VUE_APP_WXURL
-          }
-          return false
-        }
-        let that = this;
-        if (window.plus && this.isLogin()) {
-          if (this.aweixin == null) {
-            plus.nativeUI.alert('当前环境不支持微信登录');
-            return;
-          }
-          this.aweixin.authorize(
-            function(e) {
-              that.WeixinLogin(e.code);
-            },
-            function(e) {
-              if (e.code == '-1002') {
-                plus.nativeUI.alert('请先安装微信客户端');
-              }
-            }, {
-              scope: 'snsapi_userinfo',
-              state: 'authorize test',
-              appid: 'wx84f9a9b3ce29f450'
-            }
-          );
-        }
-      },
-      sendLogin() {
-        if (!this.isLogin()) {
-          return false
-        }
-        this.$validator.validate().then(result => {
-          if (!result) {
-            this.$notify({
-              type: 'danger',
-              message: this.$validator.errors.items[0].msg
-            });
-          } else {
-            this.$toast.loading({
-              mask: true,
-              message: '正在登录...'
-            });
-            this.$store.dispatch('login', {
-                tel: this.formData.username,
-                password: this.formData.password
-              }).then(res => {
-                if (res.code == 1) {
-                  localStorage.setItem('Wx-Token', res.data.wo_token); // 保存平台账号登录的token
-                  this.openUrl2(res.data.account_site, res.data.invitation_wait_count);
-                } else {
-                  this.$toast.fail({
-                    message: res.msg,
-                    duration: 1000
-                  });
-                }
-              })
-              .finally(() => {
-                this.$toast.clear();
-              });
-          }
-        });
-      },
-      // 直接进入,跳过选择行业与公司,体验账户专用
-      registrationExperience() {
-        this.$router.replace({
-          name: 'create_company'
-        })
-      },
-      WeixinLogin(code) {
-        this.$toast.loading({
-          mask: true,
-          message: '正在登录...'
-        });
-        let pl = 'a';
-        if (window.plus) {
-          if (navigator.userAgent.indexOf('Android') > 0) {
-            pl = 'a';
-          } else {
-            pl = 'i';
-          }
-        }
-        let data = {
-          code: code,
-        };
-        axios({
-          method: 'post',
-          url: process.env.BASE_API + '/api/pro/wo/code',
-          data: qs.stringify({
-            data: returnJSEncrypt(data)
-          }),
-          headers: {
-            'Content-Type': 'application/x-www-form-urlencoded',
-            pl: pl
-          }
-        }).then(res => {
-          if (res.data.code == 1) {
-            this.wo_token = res.data.data.wo_token;
-            this.wxSelect();
-          } else {
-            this.$toast(res.data.msg);
-          }
-        });
-      },
-      wxSelect() {
-        let pl = 'a';
-        if (window.plus) {
-          if (navigator.userAgent.indexOf('Android') > 0) {
-            pl = 'a';
-          } else {
-            pl = 'i';
-          }
-        }
-        axios({
-          method: 'get',
-          url: process.env.BASE_API + '/api/pro/wo/oui',
-          headers: {
-            'Content-Type': 'application/x-www-form-urlencoded',
-            pl: pl,
-            'A-TOKEN': this.wo_token
-          }
-        }).then(res => {
-          if (res.data.code == 1) {
-            this.$setCache('account', res.data.data.account);
-            if (res.data.data.account_id !== 0) {
-              localStorage.setItem('a-token-temp', res.data.data.token); // 保存平台账号登录的token
-              // 已绑定平台账号
-              this.openUrl2(res.data.data.account_site, res.data.data.invitation_wait_count);
-            } else {
-              this.$router.replace({
-                name: 'regWx',
-                query: {
-                  wo_token: this.wo_token
-                }
-              });
-              // this.isShowSelect = true;
-            }
-          } else {
-            this.$toast(res.data.msg);
-          }
-        });
-      },
-      openUrl2(account_site, invitation_wait_count) {
-        if (account_site.length > 0) {
-          // 公司数量
-          if (invitation_wait_count > 0) {
-            this.$router.push({
-              name: 'registration_experience',
-              query: {
-                invite: 1,
-                iscompany: 1
-              }
-            }); // 选择行业
-          } else {
-            this.$router.push({
-              name: 'login_company_list'
-            }); // 选择企业
-          }
-        } else {
-          if (invitation_wait_count > 0) {
-            // 待邀请数量
-            this.$router.push({
-              name: 'registration_experience',
-              query: {
-                invite: 1
-              }
-            }); // 选择行业
-          } else {
-            this.registrationExperience(); //进入体验账号
-          }
-        }
-      },
-      // 关闭APP
-      closeYs2() {
-        this.isYsShow = false;
-        this.showYs = false;
-        if (window.plus) {
-          plus.runtime.quit();
-        }
-      },
-      // 关闭隐私
-      closeYs() {
-        localStorage.setItem('isYsShow', true);
-        this.isYsShow = true;
-        this.showYs = false;
-      },
     }
-  };
+  },
+  created () { },
+  mounted () { },
+  methods: { },
+  computed: {}
+}
 </script>
+<style scoped lang='scss'>
 
-<style rel="stylesheet/scss" lang="scss" scoped>
-  .contentBox {
-    text-align: center;
-    padding: 50px 0;
-
-    div {
-      font-size: 0.38rem;
-      color: #222;
-    }
-
-    p {
-      font-size: 0.28rem;
-      color: #666;
-    }
-  }
-
-  .bdBtn {
-    width: 80%;
-    padding: 10px;
-    border-radius: 25px;
-    background-image: linear-gradient(117deg, #04b3fb, #31d4ff);
-    color: #fff;
-    margin: 0 auto;
-    margin-bottom: 16px;
-  }
-
-  .popup-all {
-    border-radius: 0.15rem;
-    background: #fff;
-    width: 80%;
-    text-align: center;
-    font-size: 0.32rem;
-
-    .title {
-      padding: 0.2rem 0;
-    }
-
-    .content {
-      font-size: 0.28rem;
-      padding: 0 0.2rem;
-      padding-bottom: 0.2rem;
-      height: 3rem;
-      // overflow-y: scroll;
-    }
-
-    .footer2 div:nth-child(1) {
-      background-color: #ccc;
-      color: #333333;
-      padding: 0.24rem 0;
-      font-size: 0.28rem;
-    }
-
-    .footer2 div:nth-child(2) {
-      background-color: #1989fa;
-      color: #fff;
-      padding: 0.24rem 0;
-      font-size: 0.28rem;
-    }
-  }
-
-  .body_com {
-    background-color: #fff;
-    position: fixed;
-    top: 1rem;
-    left: 0;
-    right: 0;
-    bottom: 0;
-    overflow: auto;
-    z-index: 2;
-  }
-
-  .login_button {
-    height: 1rem;
-    line-height: 0.8rem;
-    border-radius: 0.15rem;
-  }
-
-  .imgLsit img {
-    height: 100%;
-    width: 100%;
-    vertical-align: bottom;
-  }
-
-  .input_focus.login-box {
-    height: calc(100% - 0rem);
-  }
-
-  .login-box {
-    height: calc(100%);
-    position: relative;
-  }
-
-  .login-box-parent .van-field__icon .van-icon {
-    color: #4b0;
-  }
-
-  .login-form-box-bg {
-    position: absolute;
-    top: -0.4rem;
-    left: 0;
-    width: 100%;
-    height: 3.4rem;
-    color: #26a2ff;
-  }
-
-  .login_logo {
-    position: relative;
-    display: block;
-    margin: -1.45rem auto;
-    width: 3.6rem;
-    color: #fff;
-    margin-bottom: 0rem;
-    z-index: 1;
-  }
-
-  .setp1,
-  .setp2 {
-    padding-bottom: 0.5rem;
-  }
-
-  .login-box-parent .mint-cell.cell-last:before {
-    bottom: 0;
-  }
-
-  .login-box .van-cell[data-v-1a0d0fb5]:not(:last-child)::after {
-    border: none;
-    border-bottom: 0.02rem #efefef solid;
-    transform: scaleY(0.5);
-    left: 0.32rem;
-    right: 0.32rem;
-  }
-
-  .login-box .login-form-box .tel {
-    font-size: 0.32rem;
-    margin-bottom: 0.16rem;
-    padding: 0.2rem 0.32rem;
-    line-height: 0.5rem;
-  }
-
-  .login-box .login-form-box .tel .login_tel {
-    width: 0.37rem;
-    height: 0.37rem;
-    color: #b8b8b8;
-    margin-top: -0.06rem;
-    margin-left: -0.06rem;
-    padding-right: 0rem;
-    border-right: none;
-  }
-
-  .login-box .login-form-box .psw {
-    font-size: 0.32rem;
-    margin-bottom: 0.16rem;
-    padding: 0.2rem 0.32rem;
-    line-height: 0.5rem;
-  }
-
-  .login-box .login-form-box .psw .login_pwd {
-    width: 0.37rem;
-    height: 0.37rem;
-    color: #b8b8b8;
-    margin-top: -0.05rem;
-    margin-left: -0.06rem;
-    padding-right: 0rem;
-    border-right: none;
-  }
-
-  /deep/ .login-box input {
-    font-size: 0.4rem !important;
-    color: #1c1c1c;
-    letter-spacing: 0.005rem;
-  }
-
-  .login-box ::-webkit-input-placeholder {
-    font-size: 0.32rem;
-    color: #b8b8b8 !important;
-    letter-spacing: 0.005rem;
-  }
-
-  .login-box input:-ms-input-placeholder {
-    font-size: 0.32rem;
-    color: #b8b8b8 !important;
-    letter-spacing: 0.005rem;
-  }
-
-  .login-box ::-moz-input-placeholder {
-    font-size: 0.32rem;
-    color: #b8b8b8 !important;
-    letter-spacing: 0.005rem;
-  }
-
-  // .login-box .field-focus ::-webkit-input-placeholder{
-  //   color:#238cf9 !important;
-  // }
-  // .login-box input:-ms-input-placeholder {
-  //    color:#238cf9 !important;
-  //  }
-  // .login-box .field-focus ::-moz-input-placeholder {
-  //   color:#238cf9 !important;
-  // }
-  // .login-box .field-focus .login_tel{
-  //   color:#238cf9 !important;
-  // }
-  // .login-box .field-focus .login_pwd {
-  //   color:#238cf9 !important;
-  // }
-  .login-box .van-hairline--top-bottom:after {
-    border: none;
-    border-bottom: 0.02rem #efefef solid;
-    transform: scaleY(0.5);
-    left: 0.32rem;
-    right: 0.32rem;
-  }
-
-  .login-box .van-hairline-unset--top-bottom:after {
-    border: none;
-    border-bottom: 0.02rem #efefef solid;
-    transform: scaleY(0.5);
-    left: 0.32rem;
-    right: 0.32rem;
-  }
-
-  // /deep/ .login-box .field-focus:after {
-  //   border-bottom: 0.02rem #238cf9 solid !important;
-  // }
-  .login-box .van-row {
-    margin-top: 0.08rem;
-    font-size: 0.28rem;
-  }
-
-  .login-box .van-row .van-col:not(:last-child) {
-    color: #9e9da3;
-  }
-
-  .login-box .van-row .van-col {
-    color: #28a2f1;
-    letter-spacing: 0.005rem;
-  }
-
-  .login-box .login_button {
-    height: 1rem;
-    line-height: 0.8rem;
-    border-radius: 0.04rem;
-  }
-
-  .footer {
-    font-size: 0.28rem;
-    line-height: 1rem;
-    text-align: center;
-    letter-spacing: 0.005rem;
-    margin-bottom: 0.5rem;
-  }
-
-  .footer a {
-    color: #1989fa;
-  }
 </style>