Commit 09b43629 by 孙美琪

个人中心提交

parent 145071dc
...@@ -6,5 +6,5 @@ VITE_APP_ENV = 'development' ...@@ -6,5 +6,5 @@ VITE_APP_ENV = 'development'
# 面向科创园区的普惠算力公共服务平台/开发环境 # 面向科创园区的普惠算力公共服务平台/开发环境
#VITE_APP_BASE_API = 'http://192.168.1.112:48080/app-api/' #VITE_APP_BASE_API = 'http://192.168.1.112:48080/app-api/'
VITE_APP_BASE_API = 'https://phsl.lijinqi.com/app-api/' VITE_APP_BASE_API = 'https://client.phsl.lijinqi.com/app-api/'
#VITE_APP_BASE_API = 'http://localhost:48080/' #VITE_APP_BASE_API = 'http://localhost:48080/'
...@@ -5,7 +5,7 @@ VITE_APP_TITLE = 面向科创园区的普惠算力公共服务平台 ...@@ -5,7 +5,7 @@ VITE_APP_TITLE = 面向科创园区的普惠算力公共服务平台
VITE_APP_ENV = 'production' VITE_APP_ENV = 'production'
# 面向科创园区的普惠算力公共服务平台/生产环境 # 面向科创园区的普惠算力公共服务平台/生产环境
VITE_APP_BASE_API = '/prod-api' VITE_APP_BASE_API = '/app-api'
# 是否在打包时开启压缩,支持 gzip 和 brotli # 是否在打包时开启压缩,支持 gzip 和 brotli
VITE_BUILD_COMPRESS = gzip VITE_BUILD_COMPRESS = gzip
...@@ -5,7 +5,7 @@ VITE_APP_TITLE = 面向科创园区的普惠算力公共服务平台 ...@@ -5,7 +5,7 @@ VITE_APP_TITLE = 面向科创园区的普惠算力公共服务平台
VITE_APP_ENV = 'staging' VITE_APP_ENV = 'staging'
# 面向科创园区的普惠算力公共服务平台/生产环境 # 面向科创园区的普惠算力公共服务平台/生产环境
VITE_APP_BASE_API = '/stage-api' VITE_APP_BASE_API = '/app-api'
# 是否在打包时开启压缩,支持 gzip 和 brotli # 是否在打包时开启压缩,支持 gzip 和 brotli
VITE_BUILD_COMPRESS = gzip VITE_BUILD_COMPRESS = gzip
...@@ -4,7 +4,7 @@ import request from '@/utils/request' ...@@ -4,7 +4,7 @@ import request from '@/utils/request'
// 提交企业认证审核 // 提交企业认证审核
export function enterpriseAudit (query) { export function enterpriseAudit (query) {
return request({ return request({
url: '/api/v1/enterpriseAudit', url: '/member/enterprise/create',
method: 'post', method: 'post',
data: query data: query
}) })
......
...@@ -18171,10 +18171,10 @@ aside a:hover { ...@@ -18171,10 +18171,10 @@ aside a:hover {
color: #303233 color: #303233
} }
.app-main { //.app-main {
padding-top: 90px; // padding-top: 90px;
min-height: calc(100vh - 90px) // min-height: calc(100vh - 90px)
} //}
.sidebarLogoFade-enter-active { .sidebarLogoFade-enter-active {
transition: opacity 1.5s transition: opacity 1.5s
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
</template> </template>
<script setup> <script setup>
import { getToken } from '@/utils/auth' import {getToken} from '@/utils/auth'
const props = defineProps({ const props = defineProps({
modelValue: [String, Object, Array], modelValue: [String, Object, Array],
...@@ -85,8 +85,7 @@ const number = ref(0) ...@@ -85,8 +85,7 @@ const number = ref(0)
const uploadList = ref([]) const uploadList = ref([])
const dialogImageUrl = ref('') const dialogImageUrl = ref('')
const dialogVisible = ref(false) const dialogVisible = ref(false)
const baseUrl = import.meta.env.VITE_APP_BASE_API const uploadImgUrl = ref(import.meta.env.VITE_APP_BASE_API + '/infra/file/upload') // 上传的图片服务器地址
const uploadImgUrl = ref(import.meta.env.VITE_APP_BASE_API + '/common/upload') // 上传的图片服务器地址
const headers = ref({Authorization: 'Bearer ' + getToken()}) const headers = ref({Authorization: 'Bearer ' + getToken()})
const fileList = ref([]) const fileList = ref([])
const showTip = computed( const showTip = computed(
...@@ -100,12 +99,8 @@ watch(() => props.modelValue, val => { ...@@ -100,12 +99,8 @@ watch(() => props.modelValue, val => {
// 然后将数组转为对象数组 // 然后将数组转为对象数组
fileList.value = list.map(item => { fileList.value = list.map(item => {
if (typeof item === 'string') { if (typeof item === 'string') {
if (item.indexOf(baseUrl) === -1) {
item = {name: baseUrl + item, url: baseUrl + item}
} else {
item = {name: item, url: item} item = {name: item, url: item}
} }
}
return item return item
}) })
} else { } else {
...@@ -115,7 +110,7 @@ watch(() => props.modelValue, val => { ...@@ -115,7 +110,7 @@ watch(() => props.modelValue, val => {
}, {deep: true, immediate: true}) }, {deep: true, immediate: true})
// 上传前loading加载 // 上传前loading加载
function handleBeforeUpload (file) { function handleBeforeUpload(file) {
let isImg = false let isImg = false
if (props.fileType.length) { if (props.fileType.length) {
let fileExtension = '' let fileExtension = ''
...@@ -148,14 +143,14 @@ function handleBeforeUpload (file) { ...@@ -148,14 +143,14 @@ function handleBeforeUpload (file) {
} }
// 文件个数超出 // 文件个数超出
function handleExceed () { function handleExceed() {
proxy.$modal.msgError(`上传文件数量不能超过 ${props.limit} 个!`) proxy.$modal.msgError(`上传文件数量不能超过 ${props.limit} 个!`)
} }
// 上传成功回调 // 上传成功回调
function handleUploadSuccess (res, file) { function handleUploadSuccess(res, file) {
if (res.code === 200) { if (res.code === 0) {
uploadList.value.push({name: res.fileName, url: baseUrl + res.fileName}) uploadList.value.push({name: res.data, url: res.data})
uploadedSuccessfully() uploadedSuccessfully()
} else { } else {
number.value-- number.value--
...@@ -167,11 +162,11 @@ function handleUploadSuccess (res, file) { ...@@ -167,11 +162,11 @@ function handleUploadSuccess (res, file) {
} }
// 删除图片 // 删除图片
function handleDelete (file) { function handleDelete(file) {
const findex = fileList.value.map(f => f.name).indexOf(file.name) const findex = fileList.value.map(f => f.name).indexOf(file.name)
if (findex > -1 && uploadList.value.length === number.value) { if (findex > -1 && uploadList.value.length === number.value) {
fileList.value.splice(findex, 1) fileList.value.splice(findex, 1)
emit('update:modelValue', listToString(fileList.value)) emit('update:modelValue', fileList.value)
return false return false
} }
} }
...@@ -182,7 +177,7 @@ function uploadedSuccessfully () { ...@@ -182,7 +177,7 @@ function uploadedSuccessfully () {
fileList.value = fileList.value.filter(f => f.url !== undefined).concat(uploadList.value) fileList.value = fileList.value.filter(f => f.url !== undefined).concat(uploadList.value)
uploadList.value = [] uploadList.value = []
number.value = 0 number.value = 0
emit('update:modelValue', listToString(fileList.value)) emit('update:modelValue', fileList.value[0].url)
proxy.$modal.closeLoading() proxy.$modal.closeLoading()
} }
} }
...@@ -205,7 +200,7 @@ function listToString (list, separator) { ...@@ -205,7 +200,7 @@ function listToString (list, separator) {
separator = separator || ',' separator = separator || ','
for (let i in list) { for (let i in list) {
if (undefined !== list[i].url && list[i].url.indexOf('blob:') !== 0) { if (undefined !== list[i].url && list[i].url.indexOf('blob:') !== 0) {
strs += list[i].url.replace(baseUrl, '') + separator strs += list[i].url.replace('') + separator
} }
} }
return strs != '' ? strs.substr(0, strs.length - 1) : '' return strs != '' ? strs.substr(0, strs.length - 1) : ''
......
...@@ -218,7 +218,7 @@ function logout() { ...@@ -218,7 +218,7 @@ function logout() {
} }
.app-main { .app-main {
padding-top: 90px; //padding-top: 90px;
height: 100%; height: 100%;
//height: calc(100vh - 64px); //height: calc(100vh - 64px);
overflow-y: auto; overflow-y: auto;
......
...@@ -187,7 +187,7 @@ export const constantRoutes = [ ...@@ -187,7 +187,7 @@ export const constantRoutes = [
path: 'overview', path: 'overview',
component: () => import('@/views/console/overview.vue'), component: () => import('@/views/console/overview.vue'),
name: 'Overview', name: 'Overview',
meta: {title: '首页', icon: 'workbench'} meta: {title: '个人中心', icon: 'workbench'}
} }
] ]
}, },
......
...@@ -12,16 +12,16 @@ ...@@ -12,16 +12,16 @@
:rules="rules" :rules="rules"
label-width="145px" label-width="145px"
label-position="left"> label-position="left">
<el-form-item label="姓名" prop="contactUser"> <el-form-item label="姓名" prop="contactName">
<el-input v-model="ruleForm.contactUser" placeholder="请输入姓名" size="large" <el-input v-model="ruleForm.contactName" placeholder="请输入姓名" size="large"
style="width: 343px"></el-input> style="width: 343px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="身份证" prop="idCard"> <el-form-item label="身份证" prop="identityCard">
<el-input v-model="ruleForm.idCard" placeholder="请输入身份证号" size="large" style="width: 343px"></el-input> <el-input v-model="ruleForm.identityCard" placeholder="请输入身份证号" size="large" style="width: 343px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="身份证图片" required prop="idCardImage"> <el-form-item label="身份证图片" required prop="idCardImage">
<image-upload v-model="ruleForm.idCardBackImage" style="margin-right: 20px" :limit="1"> <image-upload v-model="ruleForm.portraitFace" style="margin-right: 20px" :limit="1">
<template #uploader-icon> <template #uploader-icon>
<div style="text-align: center"> <div style="text-align: center">
<el-icon class="avatar-uploader-icon" size="32px"> <el-icon class="avatar-uploader-icon" size="32px">
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
<div style="text-align: center;font-size: 14px;color: #626566;">人像面</div> <div style="text-align: center;font-size: 14px;color: #626566;">人像面</div>
</template> </template>
</image-upload> </image-upload>
<image-upload v-model="ruleForm.idCardFrontImage" :limit="1"> <image-upload v-model="ruleForm.nationalEmblemFace" :limit="1">
<template #uploader-icon> <template #uploader-icon>
<div style="text-align: center"> <div style="text-align: center">
<el-icon class="avatar-uploader-icon" size="32px"> <el-icon class="avatar-uploader-icon" size="32px">
...@@ -64,15 +64,15 @@ import { ref, computed, defineExpose } from 'vue' ...@@ -64,15 +64,15 @@ import { ref, computed, defineExpose } from 'vue'
const formRef = ref() const formRef = ref()
const ruleForm = ref({ const ruleForm = ref({
contactUser: '', contactName: '',
idCard: '', identityCard: '',
idCardImage: '1', idCardImage: '1',
idCardBackImage: '', portraitFace: '',
idCardFrontImage: '' nationalEmblemFace: ''
}) })
function validateIdCardImage (rule, value, callback) { function validateIdCardImage (rule, value, callback) {
if (!ruleForm.value.idCardFrontImage || !ruleForm.value.idCardFrontImage) { if (!ruleForm.value.nationalEmblemFace || !ruleForm.value.nationalEmblemFace) {
callback(new Error('请上传身份证人像面和身份证国徽面')) callback(new Error('请上传身份证人像面和身份证国徽面'))
return return
} }
...@@ -81,10 +81,10 @@ function validateIdCardImage (rule, value, callback) { ...@@ -81,10 +81,10 @@ function validateIdCardImage (rule, value, callback) {
const rules = computed(() => { const rules = computed(() => {
return { return {
contactUser: [ contactName: [
{required: true, message: '请输入姓名', trigger: 'blur'} {required: true, message: '请输入姓名', trigger: 'blur'}
], ],
idCard: [ identityCard: [
{required: true, message: '请输入身份证号', trigger: 'blur'}, {required: true, message: '请输入身份证号', trigger: 'blur'},
{ {
pattern: '/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/', pattern: '/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/',
......
...@@ -12,15 +12,15 @@ ...@@ -12,15 +12,15 @@
:rules="rules" :rules="rules"
label-width="145px" label-width="145px"
label-position="left"> label-position="left">
<el-form-item label="企业名称" prop="name"> <el-form-item label="企业名称" prop="enterpriseName">
<el-input v-model="ruleForm.name" placeholder="请输入企业名称" size="large" style="width: 343px"></el-input> <el-input v-model="ruleForm.enterpriseName" placeholder="请输入企业名称" size="large" style="width: 343px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="法人代表" prop="legalPerson"> <el-form-item label="法人代表" prop="legalPerson">
<el-input v-model="ruleForm.legalPerson" placeholder="请输入法人代表" size="large" <el-input v-model="ruleForm.legalPerson" placeholder="请输入法人代表" size="large"
style="width: 343px"></el-input> style="width: 343px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="企业营业执照" prop="licenseImages"> <el-form-item label="企业营业执照" prop="businessLicense">
<image-upload v-model="ruleForm.licenseImages" :limit="1" :is-show-tip="false"> <image-upload v-model="ruleForm.businessLicense" :limit="1" :is-show-tip="false">
<template #uploader-icon> <template #uploader-icon>
<div style="text-align: center"> <div style="text-align: center">
<el-icon class="avatar-uploader-icon" size="32px"> <el-icon class="avatar-uploader-icon" size="32px">
...@@ -48,9 +48,9 @@ const ruleForm = ref({}) ...@@ -48,9 +48,9 @@ const ruleForm = ref({})
const rules = computed(() => { const rules = computed(() => {
return { return {
name: [{required: true, message: '请输入企业名称', trigger: 'blur'}], enterpriseName: [{required: true, message: '请输入企业名称', trigger: 'blur'}],
legalPerson: [{required: true, message: '请输入法人代表', trigger: 'blur'}], legalPerson: [{required: true, message: '请输入法人代表', trigger: 'blur'}],
licenseImages: [{required: true, message: '请上传企业营业执照', trigger: 'change'}] businessLicense: [{required: true, message: '请上传企业营业执照', trigger: 'change'}]
} }
}) })
......
...@@ -12,16 +12,16 @@ ...@@ -12,16 +12,16 @@
:rules="rules" :rules="rules"
label-width="145px" label-width="145px"
label-position="left"> label-position="left">
<el-form-item label="手机号" prop="contactPhone"> <el-form-item label="联系电话" prop="mobile">
<el-input v-model.number="ruleForm.contactPhone" placeholder="请输入手机号" size="large" <el-input v-model.number="ruleForm.mobile" placeholder="请输入联系电话" size="large"
style="width: 343px"></el-input> style="width: 343px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="承诺书模板"> <el-form-item label="承诺书模板">
<el-button link type="primary" @click="openPage">下载模板</el-button> <el-button link type="primary" @click="openPage">下载模板</el-button>
</el-form-item> </el-form-item>
<el-form-item label="承诺书上传" prop="wordUrl"> <el-form-item label="承诺书上传" prop="letterOfCommitment">
<image-upload v-model="ruleForm.wordUrl" :limit="1" :is-show-tip="false"> <image-upload v-model="ruleForm.letterOfCommitment" :limit="1" :is-show-tip="false">
<template #uploader-icon> <template #uploader-icon>
<div style="text-align: center"> <div style="text-align: center">
<el-icon class="avatar-uploader-icon" size="32px"> <el-icon class="avatar-uploader-icon" size="32px">
...@@ -59,14 +59,14 @@ function validatePhone (rule, value, callback) { ...@@ -59,14 +59,14 @@ function validatePhone (rule, value, callback) {
const rules = computed(() => { const rules = computed(() => {
return { return {
contactPhone: [ mobile: [
{required: true, message: '请输入手机号', trigger: 'blur'}, {required: true, message: '请输入联系电话', trigger: 'blur'},
{ {
validator: validatePhone, validator: validatePhone,
trigger: 'blur' trigger: 'blur'
} }
], ],
wordUrl: [{required: true, message: '请上传承诺书', trigger: 'change'}] letterOfCommitment: [{required: true, message: '请上传承诺书', trigger: 'change'}]
} }
}) })
......
...@@ -10,20 +10,20 @@ ...@@ -10,20 +10,20 @@
<el-col :span="12"> <el-col :span="12">
<el-form label-width="145px" label-position="left"> <el-form label-width="145px" label-position="left">
<el-form-item label="姓名"> <el-form-item label="姓名">
{{ formData.contactUser }} {{ formData.contactName }}
</el-form-item> </el-form-item>
<el-form-item label="身份证"> <el-form-item label="身份证">
{{ formData.idCard }} {{ formData.identityCard }}
</el-form-item> </el-form-item>
<el-form-item label="身份证图片"> <el-form-item label="身份证图片">
<div class="mr20"> <div class="mr20">
<el-image :src="baseUrl + formData.idCardBackImage" style="width: 200px; height: 130px" fit="cover"/> <el-image :src="formData.portraitFace" style="width: 200px; height: 130px" fit="cover"/>
<div style="text-align: center;font-size: 14px;color: #626566;">人像面</div> <div style="text-align: center;font-size: 14px;color: #626566;">人像面</div>
</div> </div>
<div> <div>
<el-image :src="baseUrl + formData.idCardFrontImage" style="width: 200px; height: 130px" fit="cover"/> <el-image :src="formData.nationalEmblemFace" style="width: 200px; height: 130px" fit="cover"/>
<div style="text-align: center;font-size: 14px;color: #626566;">国徽面</div> <div style="text-align: center;font-size: 14px;color: #626566;">国徽面</div>
</div> </div>
</el-form-item> </el-form-item>
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<el-form-item label="企业营业执照"> <el-form-item label="企业营业执照">
<div class="mr20"> <div class="mr20">
<el-image :src="baseUrl + formData.licenseImages" style="width: 200px; height: 130px" fit="cover"/> <el-image :src="formData.businessLicense" style="width: 200px; height: 130px" fit="cover"/>
</div> </div>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -48,12 +48,12 @@ ...@@ -48,12 +48,12 @@
<el-col :span="12"> <el-col :span="12">
<el-form label-width="145px" label-position="left" style="padding-top: 30px"> <el-form label-width="145px" label-position="left" style="padding-top: 30px">
<el-form-item label="手机号"> <el-form-item label="手机号">
{{ formData.contactPhone }} {{ formData.mobile }}
</el-form-item> </el-form-item>
<el-form-item label="承诺书上传"> <el-form-item label="承诺书上传">
<div class="mr20"> <div class="mr20">
<el-image :src="baseUrl + formData.wordUrl" style="width: 132px; height: 200px" fit="cover"/> <el-image :src="formData.letterOfCommitment" style="width: 132px; height: 200px" fit="cover"/>
</div> </div>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -64,7 +64,6 @@ ...@@ -64,7 +64,6 @@
</template> </template>
<script setup> <script setup>
import ImageUpload from '@/components/ImageUpload/index.vue'
import { defineProps } from 'vue' import { defineProps } from 'vue'
defineProps({ defineProps({
...@@ -73,8 +72,6 @@ defineProps({ ...@@ -73,8 +72,6 @@ defineProps({
} }
}) })
const baseUrl = import.meta.env.VITE_APP_BASE_API
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment