v1.2.1版本,优化调整了很多,整改验收阶段新加字段
This commit is contained in:
@@ -299,7 +299,7 @@
|
||||
import { ref, reactive, onMounted, computed } from 'vue'
|
||||
import { onShow } from '@dcloudio/uni-app'
|
||||
import { getEnterpriseinfo, addEnterprise, updateEnterprise, getEnterprisetype, getindustry } from '@/request/api.js'
|
||||
import { baseUrl, getToken } from '@/request/request.js'
|
||||
import { createUploadListHandlers, mapServerFileToUploadItem } from '@/utils/upload.js'
|
||||
|
||||
// 企业信息
|
||||
const enterpriseInfo = ref({})
|
||||
@@ -520,11 +520,7 @@ const openEditPopup = () => {
|
||||
if (enterpriseInfo.value.certificates) {
|
||||
try {
|
||||
const certs = JSON.parse(enterpriseInfo.value.certificates)
|
||||
certificateFiles.value = certs.map(cert => ({
|
||||
url: cert.filePath || cert.url,
|
||||
name: cert.fileName || cert.name,
|
||||
status: 'success'
|
||||
}))
|
||||
certificateFiles.value = certs.map((cert) => mapServerFileToUploadItem(cert))
|
||||
} catch (e) {
|
||||
certificateFiles.value = []
|
||||
}
|
||||
@@ -535,60 +531,7 @@ const openEditPopup = () => {
|
||||
showPopup.value = true
|
||||
}
|
||||
|
||||
// 上传文件
|
||||
const afterRead = async (event) => {
|
||||
let lists = [].concat(event.file)
|
||||
let fileListLen = certificateFiles.value.length
|
||||
lists.forEach((item) => {
|
||||
certificateFiles.value.push({
|
||||
...item,
|
||||
status: 'uploading',
|
||||
message: '上传中'
|
||||
})
|
||||
})
|
||||
for (let i = 0; i < lists.length; i++) {
|
||||
const result = await uploadFilePromise(lists[i].url)
|
||||
let item = certificateFiles.value[fileListLen]
|
||||
certificateFiles.value.splice(fileListLen, 1, {
|
||||
...item,
|
||||
status: 'success',
|
||||
message: '',
|
||||
url: result
|
||||
})
|
||||
fileListLen++
|
||||
}
|
||||
}
|
||||
|
||||
// 删除文件
|
||||
const deleteCertificate = (event) => {
|
||||
certificateFiles.value.splice(event.index, 1)
|
||||
}
|
||||
|
||||
// 上传文件Promise
|
||||
const uploadFilePromise = (filePath) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.uploadFile({
|
||||
url: baseUrl + '/frontend/attachment/upload',
|
||||
filePath: filePath,
|
||||
name: 'file',
|
||||
header: {
|
||||
'Authorization': getToken()
|
||||
},
|
||||
success: (res) => {
|
||||
const data = JSON.parse(res.data)
|
||||
if (data.code === 0) {
|
||||
resolve(data.data)
|
||||
} else {
|
||||
reject(data.msg || '上传失败')
|
||||
}
|
||||
},
|
||||
fail: (err) => {
|
||||
console.error('上传失败:', err)
|
||||
reject(err)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
const { afterRead, deletePic: deleteCertificate } = createUploadListHandlers(certificateFiles)
|
||||
|
||||
// 提交表单
|
||||
const handleSubmit = async () => {
|
||||
@@ -606,11 +549,12 @@ const handleSubmit = async () => {
|
||||
return
|
||||
}
|
||||
|
||||
// 构建资质证书JSON
|
||||
const certificates = certificateFiles.value.map(file => ({
|
||||
fileName: file.name || file.url.split('/').pop(),
|
||||
filePath: file.url
|
||||
}))
|
||||
const certificates = certificateFiles.value
|
||||
.filter((f) => f.status === 'success')
|
||||
.map((file) => ({
|
||||
fileName: file.name || (file.serverPath || file.url || '').split('/').pop(),
|
||||
filePath: file.serverPath || file.url
|
||||
}))
|
||||
|
||||
const params = {
|
||||
deptId: Number(formData.deptId) || Number(getDeptId()),
|
||||
|
||||
Reference in New Issue
Block a user