jeecg-boot-vue3/src/views/sys/login/ThirdModal.vue

65 lines
2.7 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<!-- 第三方登录绑定账号密码输入弹框 -->
<a-modal title="请输入密码" v-model:open="thirdPasswordShow" @ok="thirdLoginCheckPassword" @cancel="thirdLoginNoPassword">
<a-input-password placeholder="请输入密码" v-model:value="thirdLoginPassword" style="margin: 15px; width: 80%" />
</a-modal>
<!-- 第三方登录提示是否绑定账号弹框 -->
<a-modal :footer="null" :closable="false" v-model:open="thirdConfirmShow" :class="'ant-modal-confirm'">
<div class="ant-modal-confirm-body-wrapper">
<div class="ant-modal-confirm-body">
<QuestionCircleFilled style="color: #faad14" />
<span class="ant-modal-confirm-title">提示</span>
<div class="ant-modal-confirm-content"> 已有同名账号存在,请确认是否绑定该账号 </div>
</div>
<div class="ant-modal-confirm-btns">
<a-button @click="thirdLoginUserCreate" :loading="thirdCreateUserLoding">创建新账号</a-button>
<a-button @click="thirdLoginUserBind" type="primary">确认绑定</a-button>
</div>
</div>
</a-modal>
<!-- 第三方登录绑定手机号 -->
<a-modal title="绑定手机号" v-model:open="bindingPhoneModal" :maskClosable="false">
<Form class="p-4 enter-x" style="margin: 15px 10px">
<FormItem class="enter-x">
<a-input size="large" placeholder="请输入手机号" v-model:value="thirdPhone" class="fix-auto-fill">
<template #prefix>
<Icon icon="ant-design:mobile-outlined" :style="{ color: 'rgba(0,0,0,.25)' }"></Icon>
</template>
</a-input>
</FormItem>
<FormItem name="sms" class="enter-x">
<CountdownInput size="large" class="fix-auto-fill" v-model:value="thirdCaptcha" placeholder="请输入验证码" :sendCodeApi="sendCodeApi">
<template #prefix>
<Icon icon="ant-design:mail-outlined" :style="{ color: 'rgba(0,0,0,.25)' }"></Icon>
</template>
</CountdownInput>
</FormItem>
</Form>
<template #footer>
<a-button type="primary" @click="thirdHandleOk"></a-button>
</template>
</a-modal>
</template>
<script lang="ts">
import { defineComponent } from 'vue';
import { Form, Input } from 'ant-design-vue';
import { CountdownInput } from '/@/components/CountDown';
import { useThirdLogin } from '/@/hooks/system/useThirdLogin';
import { QuestionCircleFilled } from '@ant-design/icons-vue';
const FormItem = Form.Item;
const InputPassword = Input.Password;
export default defineComponent({
name: 'ThirdModal',
components: { FormItem, Form, InputPassword, CountdownInput, QuestionCircleFilled },
setup() {
return {
...useThirdLogin(),
};
},
});
</script>