From c192f834c4e092bc7c0f2722c343c25c1be619ab Mon Sep 17 00:00:00 2001
From: shikeying <pxzsky@163.com>
Date: 星期五, 07 四月 2023 17:32:33 +0800
Subject: [PATCH] 添加部分组件,添加拼图验证(未完成)

---
 src/views/user/login.vue |   29 +++++++++++++++++++++++++----
 1 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/src/views/user/login.vue b/src/views/user/login.vue
index 53cec33..aa875b7 100644
--- a/src/views/user/login.vue
+++ b/src/views/user/login.vue
@@ -40,6 +40,12 @@
       <el-form-item v-if="loginForm.verifyType==='slide'">
         <drag-verify @success="verifyTrue" ref="verify"/>
       </el-form-item>
+      <el-form-item v-if="loginForm.verifyType==='jigsaw'">
+<!--        <drag-verify @success="verifyTrue" ref="verify"/>-->
+        <transition duration="1000" name="el-fade-in">
+          <jigsaw-verify v-if="loginForm.verifyType==='jigsaw'" :left="left" :top="top" @hide="verifyFalse" @success="handleLogin" />
+        </transition>
+      </el-form-item>
       <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">璁颁綇瀵嗙爜</el-checkbox>
       <el-form-item style="width:100%;">
         <el-button
@@ -67,24 +73,28 @@
 <script>
   import {getCodeImg, getCodeNone} from "@/api/login";
   import dragVerify from './dragVerify/index.vue' // 婊戝姩楠岃瘉缁勪欢
+  import jigsawVerify from '@/views/components/verify'  // 鎷煎浘楠岃瘉缁勪欢锛�2023-04-06
   import Cookies from "js-cookie";
-  import {encrypt} from '@/utils/jsencrypt'
+  // import {encrypt} from '@/utils/jsencrypt'
 
   export default {
   components: {
-    'drag-verify': dragVerify
+    'drag-verify': dragVerify,
+    'jigsaw-verify': jigsawVerify
   },
   data() {
     return {
       verify:false,  // 婊戝姩鏍¢獙
       codeUrl: "",
+      left: null,    // 鎷煎浘楠岃瘉鐮佷綅缃�
+      top: null,     // 鎷煎浘楠岃瘉鐮佷綅缃�
       loginForm: {
         username: 'supervisor',
         password: '123456',
         code:'',
         uuid: '',
         loginType: 'user_pass',  // 鐢ㄦ埛鍚嶃�佸瘑鐮佹柟寮忕櫥褰�
-        verifyType: 'slide'//  'code': 楠岃瘉鐮�  'slide':婊戝潡  'jigsaw':鎷煎浘
+        verifyType: 'jigsaw'//  'code': 楠岃瘉鐮�  'slide':婊戝潡  'jigsaw':鎷煎浘
         // rememberMe: false,
       },
       loginRules: {
@@ -122,6 +132,9 @@
     verifyTrue () {
       this.verify = true
     },
+    verifyFalse() {
+      this.verify = false
+    },
     getCode() {
       if(this.loginForm.verifyType==='code'){
         getCodeImg().then(res => {
@@ -141,6 +154,8 @@
 
       } else if(this.loginForm.verifyType==='jigsaw'){
         // 鎷煎浘鏂瑰紡锛岀湅闇�瑕佸暐鍙傛暟锛屾殏鏈疄鐜�
+        console.log('jigsaw...');
+        this.loginForm.code = 'jigsaw'; // 濉厖code榛樿鍊硷紝鍚﹀垯楠岃瘉涓嶉�氳繃銆�2023-04-06
 
       } else if(this.loginForm.verifyType==='slide' || this.loginForm.verifyType==='sms'){
         // 涓嶉渶瑕侀獙璇佺爜锛屼絾浠嶉渶瑕佽姹傛帴鍙h幏鍙杣uid
@@ -160,7 +175,13 @@
       this.loginForm.password = password === undefined ? this.loginForm.password : password
       this.loginForm.rememberMe = rememberMe === undefined ? this.loginForm.rememberMe : rememberMe
     },
-    handleLogin() {
+    handleLogin(param) {
+      // console.log(param);
+      if(param != null){
+        // 鎷煎浘楠岃瘉鐮佹椂锛岃皟鐢ㄦ柟浼氫紶鍏ode锛堢敤鎴烽獙璇佺爜浣嶇疆锛夛紝uuid
+        this.loginForm.code = param.x;
+        this.loginForm.uuid = param.uuid;
+      }
       this.$refs.loginForm.validate(valid => {
         if (valid) {
           if (this.loginForm.verifyType==='slide' && !this.verify) {

--
Gitblit v1.9.1