|
@@ -1,5 +1,7 @@
|
|
|
<script lang="ts">
|
|
|
import { MobileOutlined, MailOutlined, LockOutlined, PlusOutlined, LoadingOutlined } from '@ant-design/icons-vue';
|
|
|
+import DevelopAgreement from '@/components/developAgreement.vue';
|
|
|
+
|
|
|
export default defineComponent({
|
|
|
name: 'register',
|
|
|
components: {
|
|
@@ -7,7 +9,8 @@ export default defineComponent({
|
|
|
MailOutlined,
|
|
|
LockOutlined,
|
|
|
PlusOutlined,
|
|
|
- LoadingOutlined
|
|
|
+ LoadingOutlined,
|
|
|
+ DevelopAgreement
|
|
|
},
|
|
|
})
|
|
|
</script>
|
|
@@ -30,10 +33,13 @@ let submitDisabled = ref<Boolean>(true)
|
|
|
let loading = ref<boolean>(false);
|
|
|
let fileList = ref([]);
|
|
|
let time = ref<number>(60)
|
|
|
-let timer = ref<number>()
|
|
|
+let timer = ref<any>()
|
|
|
let canSendSms = ref<boolean>(true)
|
|
|
let labelCol = ref<object>({ style: { width: '200px' } })
|
|
|
let action = ref<string>('http://153.37.175.42:8070/app/common/upload')
|
|
|
+let checked = ref<boolean>(false)
|
|
|
+let showAgreement = ref<boolean>(false)
|
|
|
+
|
|
|
interface FormState {
|
|
|
provinceName: string,
|
|
|
cityName: string,
|
|
@@ -85,7 +91,7 @@ const formState: UnwrapRef<FormState> = reactive({
|
|
|
contactName: '',
|
|
|
mobile: ''
|
|
|
});
|
|
|
-window._AMapSecurityConfig = {
|
|
|
+(window as any)._AMapSecurityConfig = {
|
|
|
securityJsCode: '23cf1bca0e52bbf8cb129047cdb46f10'
|
|
|
}
|
|
|
onMounted(() => {
|
|
@@ -105,12 +111,15 @@ watch(formState, (newValue) => {
|
|
|
}
|
|
|
}, { deep: true })
|
|
|
const next = async () => {
|
|
|
+ if (!checked.value) {
|
|
|
+ return message.error('请先勾选开发者服务协议!')
|
|
|
+ }
|
|
|
if (formState.password !== formState.passwordAgain) {
|
|
|
return message.error('俩次输入的密码不一致,请修改为相同密码!')
|
|
|
}
|
|
|
let res: any = await verification({ mobile: formState.userAccount, code: formState.code })
|
|
|
if (res.code !== 200) {
|
|
|
- return message.error(res.message)
|
|
|
+ return message.error(res.msg)
|
|
|
}
|
|
|
if (!util.mobile(formState.userAccount)) {
|
|
|
return message.error('请填写正确格式的注册手机号!')
|
|
@@ -161,7 +170,7 @@ const submit = async () => {
|
|
|
if (res.code === 0) {
|
|
|
current.value++;
|
|
|
} else {
|
|
|
- message.error(res.message)
|
|
|
+ message.error(res.msg)
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -242,48 +251,61 @@ const handleChange4 = (info: UploadChangeParam) => {
|
|
|
<!-- 账号信息 -->
|
|
|
<a-form v-if="current === 0" :model="formState" class="w-600px">
|
|
|
<a-form-item>
|
|
|
- <a-input v-model:value="formState.userAccount" :maxlength="11" allowClear placeholder="输入注册手机号">
|
|
|
+ <a-input size="large" v-model:value="formState.userAccount" :maxlength="11" allowClear placeholder="输入注册手机号">
|
|
|
<template #prefix>
|
|
|
<MobileOutlined style="color: rgba(0, 0, 0, 0.25)" />
|
|
|
</template>
|
|
|
</a-input>
|
|
|
</a-form-item>
|
|
|
<a-form-item>
|
|
|
- <a-input-password v-model:value="formState.password" allowClear placeholder="输入登录密码">
|
|
|
+ <a-input-password size="large" v-model:value="formState.password" allowClear placeholder="输入登录密码">
|
|
|
<template #prefix>
|
|
|
<LockOutlined style="color: rgba(0, 0, 0, 0.25)" />
|
|
|
</template>
|
|
|
</a-input-password>
|
|
|
</a-form-item>
|
|
|
<a-form-item>
|
|
|
- <a-input-password v-model:value="formState.passwordAgain" allowClear placeholder="再次输入登录密码">
|
|
|
+ <a-input-password size="large" v-model:value="formState.passwordAgain" allowClear placeholder="再次输入登录密码">
|
|
|
<template #prefix>
|
|
|
<LockOutlined style="color: rgba(0, 0, 0, 0.25)" />
|
|
|
</template>
|
|
|
</a-input-password>
|
|
|
</a-form-item>
|
|
|
<a-form-item>
|
|
|
- <a-input v-model:value="formState.code" :maxlength="4" placeholder="输入短信验证码" allowClear
|
|
|
- style="width: calc(100% - 130px)">
|
|
|
- <template #prefix>
|
|
|
- <MailOutlined style="color: rgba(0, 0, 0, 0.25)" />
|
|
|
- </template>
|
|
|
- </a-input>
|
|
|
- <a-button @click="doSendSms" :disabled="!canSendSms" class="ml-20px w-110px" type="primary">{{ verifyText }}
|
|
|
- </a-button>
|
|
|
+ <a-input-group compact>
|
|
|
+ <a-input size="large" v-model:value="formState.code" :maxlength="4" placeholder="输入短信验证码" allowClear
|
|
|
+ style="width: calc(100% - 130px)">
|
|
|
+ <template #prefix>
|
|
|
+ <MailOutlined style="color: rgba(0, 0, 0, 0.25)" />
|
|
|
+ </template>
|
|
|
+ </a-input>
|
|
|
+ <a-button size="large" @click="doSendSms" :disabled="!canSendSms" class="ml-20px w-110px h-40px"
|
|
|
+ type="primary">{{
|
|
|
+ verifyText
|
|
|
+ }}
|
|
|
+ </a-button>
|
|
|
+ </a-input-group>
|
|
|
+ </a-form-item>
|
|
|
+ <a-form-item>
|
|
|
+ <a-checkbox v-model:checked="checked">
|
|
|
+ <div class="flex text-14px font-500">
|
|
|
+ <p class="text-[#333333]">已阅读并同意</p>
|
|
|
+ <p @click="showAgreement = true" class="text-[#1B8DFF]">《优巨引擎开发平台服务注册协议》</p>
|
|
|
+ </div>
|
|
|
+ </a-checkbox>
|
|
|
</a-form-item>
|
|
|
</a-form>
|
|
|
<!-- 资料提交 -->
|
|
|
<a-form v-if="current === 1" :model="formState" :label-col="labelCol">
|
|
|
<a-form-item label="企业地址" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.address" allowClear placeholder="输入企业地址省市区" />
|
|
|
+ <a-input size="large" v-model:value="formState.address" allowClear placeholder="输入企业地址省市区" />
|
|
|
<a-textarea class="mt-24px" v-model:value="formState.street" placeholder="输入企业详细地址" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="企业名称" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.merchantName" allowClear placeholder="输入企业名称" />
|
|
|
+ <a-input size="large" v-model:value="formState.merchantName" allowClear placeholder="输入企业名称" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="统一社会信用代码" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.bizLicenseNo" allowClear placeholder="输入企业统一社会信用代码" />
|
|
|
+ <a-input size="large" v-model:value="formState.bizLicenseNo" allowClear placeholder="输入企业统一社会信用代码" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="营业执照" :rules="[{ required: true }]">
|
|
|
<template class="flex justify-between">
|
|
@@ -303,17 +325,17 @@ const handleChange4 = (info: UploadChangeParam) => {
|
|
|
</template>
|
|
|
</a-form-item>
|
|
|
<a-form-item label="法人/实际控制人姓名" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.legalPerson" allowClear placeholder="输入企业法人/实际控制人姓名" />
|
|
|
+ <a-input size="large" v-model:value="formState.legalPerson" allowClear placeholder="输入企业法人/实际控制人姓名" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="法人/实际控制人证件类型" :rules="[{ required: true }]">
|
|
|
- <a-select v-model:value="formState.idcardType">
|
|
|
+ <a-select size="large" v-model:value="formState.idcardType">
|
|
|
<a-select-option :value="1">中国大陆身份证</a-select-option>
|
|
|
<a-select-option :value="2">港澳台(身份证/居民通行证)</a-select-option>
|
|
|
<a-select-option :value="3">护照(限境外人士)</a-select-option>
|
|
|
</a-select>
|
|
|
</a-form-item>
|
|
|
<a-form-item label="法人/实际控制人证件号码" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.idcardNo" allowClear placeholder="输入法人/实际控制人证件号码" />
|
|
|
+ <a-input size="large" v-model:value="formState.idcardNo" allowClear placeholder="输入法人/实际控制人证件号码" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="证件照正面" :rules="[{ required: true }]">
|
|
|
<template class="flex justify-between">
|
|
@@ -368,10 +390,10 @@ const handleChange4 = (info: UploadChangeParam) => {
|
|
|
</template>
|
|
|
</a-form-item>
|
|
|
<a-form-item label="公司联系人" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.contactName" allowClear placeholder="输入公司联系人" />
|
|
|
+ <a-input size="large" v-model:value="formState.contactName" allowClear placeholder="输入公司联系人" />
|
|
|
</a-form-item>
|
|
|
<a-form-item label="联系电话" :rules="[{ required: true }]">
|
|
|
- <a-input v-model:value="formState.mobile" allowClear placeholder="输入联系电话" :maxlength="11" />
|
|
|
+ <a-input size="large" v-model:value="formState.mobile" allowClear placeholder="输入联系电话" :maxlength="11" />
|
|
|
</a-form-item>
|
|
|
</a-form>
|
|
|
<!-- 提交成功 -->
|
|
@@ -385,14 +407,19 @@ const handleChange4 = (info: UploadChangeParam) => {
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="w-600px flex items-center justify-between mb-100px">
|
|
|
- <a-button v-if="current === 1" @click="prev">上一步</a-button>
|
|
|
- <a-button class="w-600px mt-50px" v-if="!current" :disabled="firstDisabled" type="primary" @click="next">下一步
|
|
|
+ <a-button size="large" v-if="current === 1" @click="prev">上一步</a-button>
|
|
|
+ <a-button size="large" class="w-600px mt-50px" v-if="!current" :disabled="firstDisabled" type="primary"
|
|
|
+ @click="next">下一步
|
|
|
</a-button>
|
|
|
- <a-button class="w-400px" v-if="current === 1" :disabled="submitDisabled" type="primary" @click="submit">
|
|
|
+ <a-button size="large" class="w-400px" v-if="current === 1" :disabled="submitDisabled" type="primary"
|
|
|
+ @click="submit">
|
|
|
提交资料
|
|
|
</a-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <a-modal centered v-model:visible="showAgreement" :footer="null" :width="900">
|
|
|
+ <DevelopAgreement></DevelopAgreement>
|
|
|
+ </a-modal>
|
|
|
</template>
|
|
|
<style lang='scss' scoped>
|
|
|
.avatar-uploader :deep(.ant-upload) {
|