Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
client
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
e16bc30c
authored
Apr 29, 2024
by
赵月辉
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成企业申请认证接口对接
parent
0ffcdf3c
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
186 additions
and
49 deletions
+186
-49
src/api/console.js
+11
-0
src/components/ImageUpload/index.vue
+0
-1
src/views/console/authentication.vue
+24
-10
src/views/console/components/step-0.vue
+53
-8
src/views/console/components/step-1.vue
+29
-8
src/views/console/components/step-2.vue
+48
-6
src/views/console/components/step-3.vue
+19
-14
src/views/index.vue
+2
-2
No files found.
src/api/console.js
0 → 100644
View file @
e16bc30c
// 控制台相关接口
import
request
from
'@/utils/request'
// 获取首页banner
export
function
enterpriseAudit
(
query
)
{
return
request
({
url
:
'/api/v1/enterpriseAudit'
,
method
:
'post'
,
data
:
query
})
}
src/components/ImageUpload/index.vue
View file @
e16bc30c
...
...
@@ -94,7 +94,6 @@ const showTip = computed(
)
watch
(()
=>
props
.
modelValue
,
val
=>
{
console
.
log
(
val
)
if
(
val
)
{
// 首先将值转为数组
const
list
=
Array
.
isArray
(
val
)
?
val
:
props
.
modelValue
.
split
(
','
)
...
...
src/views/console/authentication.vue
View file @
e16bc30c
...
...
@@ -31,15 +31,17 @@
</el-step>
</el-steps>
<div
class=
"step-content"
>
<step0
ref=
"step0Ref"
v-
if
=
"stepActive === 0"
></step0>
<step1
ref=
"step1Ref"
v-
if
=
"stepActive === 1"
></step1>
<step2
ref=
"step2Ref"
v-
if
=
"stepActive === 2"
></step2>
<step3
ref=
"step3Ref"
v-if=
"stepActive === 3
"
></step3>
<step4
ref=
"step4Ref"
v-if
=
"stepActive === 4"
></step4>
<step0
ref=
"step0Ref"
v-
show
=
"stepActive === 0"
></step0>
<step1
ref=
"step1Ref"
v-
show
=
"stepActive === 1"
></step1>
<step2
ref=
"step2Ref"
v-
show
=
"stepActive === 2"
></step2>
<step3
v-show=
"stepActive === 3"
:form-data=
"formData
"
></step3>
<step4
v-show
=
"stepActive === 4"
></step4>
<div
class=
"footer-bar"
>
<div
v-if=
"stepActive < 4"
class=
"footer-bar"
>
<el-button
@
click=
"prev"
>
上一步
</el-button>
<el-button
type=
"primary"
@
click=
"next"
>
下一步
</el-button>
<el-button
v-if=
"stepActive < 3"
type=
"primary"
@
click=
"next"
>
下一步
</el-button>
<el-button
v-if=
"stepActive === 3"
type=
"primary"
@
click=
"submit"
>
提交
</el-button>
</div>
</div>
</div>
...
...
@@ -51,6 +53,7 @@ import step1 from './components/step-1.vue'
import
step2
from
'./components/step-2.vue'
import
step3
from
'./components/step-3.vue'
import
step4
from
'./components/step-4.vue'
import
{
enterpriseAudit
}
from
'@/api/console.js'
export
default
{
name
:
'Authentication'
,
...
...
@@ -63,7 +66,8 @@ export default {
},
data
()
{
return
{
stepActive
:
0
stepActive
:
0
,
formData
:
{}
}
},
methods
:
{
...
...
@@ -73,9 +77,19 @@ export default {
}
},
next
()
{
if
(
this
.
stepActive
<
4
)
{
// this.$refs[`step${this.stepActive}Ref`].$refs.formRef.validate().then(res =>
{
this
.
stepActive
+=
1
}
if
(
this
.
stepActive
===
3
)
{
this
.
formData
=
{...
this
.
$refs
.
step0Ref
.
ruleForm
,
...
this
.
$refs
.
step1Ref
.
ruleForm
,
...
this
.
$refs
.
step2Ref
.
ruleForm
}
}
// }).catch(err => {
// console.log(err)
// })
},
submit
()
{
enterpriseAudit
(
this
.
formData
).
then
(
res
=>
{
this
.
stepActive
+=
1
})
}
}
}
...
...
src/views/console/components/step-0.vue
View file @
e16bc30c
...
...
@@ -6,16 +6,22 @@
</div>
</
template
>
<div
class=
""
>
<el-form
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"姓名"
>
<el-input
placeholder=
"请输入姓名"
size=
"large"
style=
"width: 343px"
></el-input>
<el-form
ref=
"formRef"
:model=
"ruleForm"
:rules=
"rules"
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"姓名"
prop=
"contactUser"
>
<el-input
v-model=
"ruleForm.contactUser"
placeholder=
"请输入姓名"
size=
"large"
style=
"width: 343px"
></el-input>
</el-form-item>
<el-form-item
label=
"身份证"
>
<el-input
placeholder=
"请输入身份证号"
size=
"large"
style=
"width: 343px"
></el-input>
<el-form-item
label=
"身份证"
prop=
"idCard"
>
<el-input
v-model=
"ruleForm.idCard"
placeholder=
"请输入身份证号"
size=
"large"
style=
"width: 343px"
></el-input>
</el-form-item>
<el-form-item
label=
"身份证图片"
>
<image-upload
style=
"margin-right: 20px"
:limit=
"1"
>
<el-form-item
label=
"身份证图片"
required
prop=
"idCardImage"
>
<image-upload
v-model=
"ruleForm.idCardBackImage"
style=
"margin-right: 20px"
:limit=
"1"
>
<
template
#
uploader-icon
>
<div
style=
"text-align: center"
>
<el-icon
class=
"avatar-uploader-icon"
size=
"32px"
>
...
...
@@ -30,7 +36,7 @@
<div
style=
"text-align: center;font-size: 14px;color: #626566;"
>
人像面
</div>
</
template
>
</image-upload>
<image-upload
:limit=
"1"
>
<image-upload
v-model=
"ruleForm.idCardFrontImage"
:limit=
"1"
>
<
template
#
uploader-icon
>
<div
style=
"text-align: center"
>
<el-icon
class=
"avatar-uploader-icon"
size=
"32px"
>
...
...
@@ -53,6 +59,45 @@
<
script
setup
>
import
ImageUpload
from
'@/components/ImageUpload/index.vue'
import
{
ref
,
computed
,
defineExpose
}
from
'vue'
const
formRef
=
ref
()
const
ruleForm
=
ref
({
contactUser
:
''
,
idCard
:
''
,
idCardImage
:
'1'
,
idCardBackImage
:
''
,
idCardFrontImage
:
''
})
function
validateIdCardImage
(
rule
,
value
,
callback
)
{
if
(
!
ruleForm
.
value
.
idCardFrontImage
||
!
ruleForm
.
value
.
idCardFrontImage
)
{
callback
(
new
Error
(
'请上传身份证人像面和身份证国徽面'
))
return
}
callback
()
}
const
rules
=
computed
(()
=>
{
return
{
contactUser
:
[
{
required
:
true
,
message
:
'请输入姓名'
,
trigger
:
'blur'
}
],
idCard
:
[
{
required
:
true
,
message
:
'请输入身份证号'
,
trigger
:
'blur'
},
{
pattern
:
'/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/'
,
message
:
'请输入正确的身份证号码'
,
trigger
:
'blur'
}
],
idCardImage
:
[{
validator
:
validateIdCardImage
,
trigger
:
'blur'
}]
}
})
defineExpose
({
formRef
,
ruleForm
})
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/views/console/components/step-1.vue
View file @
e16bc30c
...
...
@@ -6,16 +6,21 @@
</div>
</
template
>
<div
class=
""
>
<el-form
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"企业名称"
>
<el-input
placeholder=
"请输入企业名称"
size=
"large"
style=
"width: 343px"
></el-input>
<el-form
ref=
"formRef"
:model=
"ruleForm"
:rules=
"rules"
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"企业名称"
prop=
"name"
>
<el-input
v-model=
"ruleForm.name"
placeholder=
"请输入企业名称"
size=
"large"
style=
"width: 343px"
></el-input>
</el-form-item>
<el-form-item
label=
"法人代表"
>
<el-input
placeholder=
"请输入法人代表"
size=
"large"
style=
"width: 343px"
></el-input>
<el-form-item
label=
"法人代表"
prop=
"legalPerson"
>
<el-input
v-model=
"ruleForm.legalPerson"
placeholder=
"请输入法人代表"
size=
"large"
style=
"width: 343px"
></el-input>
</el-form-item>
<el-form-item
label=
"企业营业执照"
>
<image-upload
:limit=
"1"
:is-show-tip=
"false"
>
<el-form-item
label=
"企业营业执照"
prop=
"licenseImages"
>
<image-upload
v-model=
"ruleForm.licenseImages"
:limit=
"1"
:is-show-tip=
"false"
>
<
template
#
uploader-icon
>
<div
style=
"text-align: center"
>
<el-icon
class=
"avatar-uploader-icon"
size=
"32px"
>
...
...
@@ -35,6 +40,22 @@
<
script
setup
>
import
ImageUpload
from
'@/components/ImageUpload/index.vue'
import
{
ref
,
computed
,
defineExpose
}
from
'vue'
const
formRef
=
ref
()
const
ruleForm
=
ref
({})
const
rules
=
computed
(()
=>
{
return
{
name
:
[{
required
:
true
,
message
:
'请输入企业名称'
,
trigger
:
'blur'
}],
legalPerson
:
[{
required
:
true
,
message
:
'请输入法人代表'
,
trigger
:
'blur'
}],
licenseImages
:
[{
required
:
true
,
message
:
'请上传企业营业执照'
,
trigger
:
'change'
}]
}
})
defineExpose
({
formRef
,
ruleForm
})
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/views/console/components/step-2.vue
View file @
e16bc30c
...
...
@@ -6,16 +6,22 @@
</div>
</
template
>
<div
class=
""
>
<el-form
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"手机号"
>
<el-input
placeholder=
"请输入手机号"
size=
"large"
style=
"width: 343px"
></el-input>
<el-form
ref=
"formRef"
:model=
"ruleForm"
:rules=
"rules"
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"手机号"
prop=
"contactPhone"
>
<el-input
v-model
.
number=
"ruleForm.contactPhone"
placeholder=
"请输入手机号"
size=
"large"
style=
"width: 343px"
></el-input>
</el-form-item>
<el-form-item
label=
"承诺书模板"
>
<el-button
link
type=
"primary"
>
下载模板
</el-button>
<el-button
link
type=
"primary"
@
click=
"openPage"
>
下载模板
</el-button>
</el-form-item>
<el-form-item
label=
"承诺书上传"
>
<image-upload
:limit=
"1"
:is-show-tip=
"false"
>
<el-form-item
label=
"承诺书上传"
prop=
"wordUrl"
>
<image-upload
v-model=
"ruleForm.wordUrl"
:limit=
"1"
:is-show-tip=
"false"
>
<
template
#
uploader-icon
>
<div
style=
"text-align: center"
>
<el-icon
class=
"avatar-uploader-icon"
size=
"32px"
>
...
...
@@ -35,6 +41,42 @@
<
script
setup
>
import
ImageUpload
from
'@/components/ImageUpload/index.vue'
import
{
ref
,
computed
,
defineExpose
}
from
'vue'
const
formRef
=
ref
()
const
ruleForm
=
ref
({})
function
validatePhone
(
rule
,
value
,
callback
)
{
const
reg
=
/^1
[
3456789
]\d{9}
$/
if
(
!
reg
.
test
(
value
))
{
callback
(
new
Error
(
'请输入正确的手机号'
))
return
}
callback
()
}
const
rules
=
computed
(()
=>
{
return
{
contactPhone
:
[
{
required
:
true
,
message
:
'请输入手机号'
,
trigger
:
'blur'
},
{
validator
:
validatePhone
,
trigger
:
'blur'
}
],
wordUrl
:
[{
required
:
true
,
message
:
'请上传承诺书'
,
trigger
:
'change'
}]
}
})
const
baseUrl
=
import
.
meta
.
env
.
VITE_APP_BASE_API
function
openPage
()
{
window
.
open
(
baseUrl
+
'/prod-api/profile/upload/2024/04/29/网络安全承诺书模板_20240429114604A005.doc'
)
}
defineExpose
({
formRef
,
ruleForm
})
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/views/console/components/step-3.vue
View file @
e16bc30c
...
...
@@ -10,20 +10,20 @@
<el-col
:span=
"12"
>
<el-form
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"姓名"
>
姓名
{{ formData.contactUser }}
</el-form-item>
<el-form-item
label=
"身份证"
>
身份证号
{{ formData.idCard }}
</el-form-item>
<el-form-item
label=
"身份证图片"
>
<div
class=
"mr20"
>
<el-image
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
<el-image
:src=
"baseUrl + formData.idCardBackImage"
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
<div
style=
"text-align: center;font-size: 14px;color: #626566;"
>
人像面
</div>
</div>
<div>
<el-image
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
<el-image
:src=
"baseUrl + formData.idCardFrontImage"
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
<div
style=
"text-align: center;font-size: 14px;color: #626566;"
>
国徽面
</div>
</div>
</el-form-item>
...
...
@@ -32,16 +32,15 @@
<el-col
:span=
"12"
>
<el-form
label-width=
"145px"
label-position=
"left"
>
<el-form-item
label=
"企业名称"
>
企业名称
{{ formData.name }}
</el-form-item>
<el-form-item
label=
"法人代表"
>
法人代表
{{ formData.legalPerson }}
</el-form-item>
<el-form-item
label=
"企业营业执照"
>
<div
class=
"mr20"
>
<el-image
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
<div
style=
"text-align: center;font-size: 14px;color: #626566;"
>
人像面
</div>
<el-image
:src=
"baseUrl + formData.licenseImages"
style=
"width: 200px; height: 130px"
fit=
"cover"
/>
</div>
</el-form-item>
</el-form>
...
...
@@ -49,16 +48,12 @@
<el-col
:span=
"12"
>
<el-form
label-width=
"145px"
label-position=
"left"
style=
"padding-top: 30px"
>
<el-form-item
label=
"手机号"
>
手机号
</el-form-item>
<el-form-item
label=
"承诺书模板"
>
承诺书模板
{{ formData.contactPhone }}
</el-form-item>
<el-form-item
label=
"承诺书上传"
>
<div
class=
"mr20"
>
<el-image
style=
"width: 132px; height: 200px"
fit=
"cover"
/>
<div
style=
"text-align: center;font-size: 14px;color: #626566;"
>
人像面
</div>
<el-image
:src=
"baseUrl + formData.wordUrl"
style=
"width: 132px; height: 200px"
fit=
"cover"
/>
</div>
</el-form-item>
</el-form>
...
...
@@ -70,6 +65,16 @@
<
script
setup
>
import
ImageUpload
from
'@/components/ImageUpload/index.vue'
import
{
defineProps
}
from
'vue'
defineProps
({
formData
:
{
type
:
Object
}
})
const
baseUrl
=
import
.
meta
.
env
.
VITE_APP_BASE_API
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/views/index.vue
View file @
e16bc30c
...
...
@@ -62,7 +62,7 @@
<div
class=
"bg-text"
>
APPLICATION
</div>
行业应用
</div>
<div
class=
block-sub-title
>
<div
class=
"block-sub-title"
>
集成机器学习、深度学习、自然语言处理、图像识别等先进技术,为金融、医疗、教育、零售、制造业等多个领域提供智能化解决方案。
</div>
<el-row
:gutter=
"24"
>
...
...
@@ -106,7 +106,7 @@
<div
class=
"bg-text"
>
INFORMATION
</div>
活动资讯
</div>
<!--
<div
class=
block-sub-title
>
活动时间待定,活动内容待定,活动礼品自带
</div>
-->
<!--
<div
class=
"block-sub-title"
>
活动时间待定,活动内容待定,活动礼品自带
</div>
-->
<div
class=
"flex flex-justify-center"
>
<div
class=
"information"
style=
"margin-right: 182px"
>
<div
class=
"information-item"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment