|
|
@ -230,8 +230,10 @@ const handleCancl = () => {
|
|
|
|
const handleSubmit = async () => {
|
|
|
|
const handleSubmit = async () => {
|
|
|
|
await formRef.value?.validate?.()
|
|
|
|
await formRef.value?.validate?.()
|
|
|
|
const params = {
|
|
|
|
const params = {
|
|
|
|
...valiFormData.value
|
|
|
|
...valiFormData.value,
|
|
|
|
|
|
|
|
mediaList: mediaList.value
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
console.log(233, params)
|
|
|
|
const data = await postAddAPI(params)
|
|
|
|
const data = await postAddAPI(params)
|
|
|
|
valiFormData.value.type = ''
|
|
|
|
valiFormData.value.type = ''
|
|
|
|
valiFormData.value.projectId = ''
|
|
|
|
valiFormData.value.projectId = ''
|
|
|
@ -241,6 +243,8 @@ const handleSubmit = async () => {
|
|
|
|
valiFormData.value.amount = ''
|
|
|
|
valiFormData.value.amount = ''
|
|
|
|
valiFormData.value.owner = ''
|
|
|
|
valiFormData.value.owner = ''
|
|
|
|
valiFormData.value.remark = ''
|
|
|
|
valiFormData.value.remark = ''
|
|
|
|
|
|
|
|
// 图片上传
|
|
|
|
|
|
|
|
mediaList.value = []
|
|
|
|
emit('close', true)
|
|
|
|
emit('close', true)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 选择责任人
|
|
|
|
// 选择责任人
|
|
|
@ -259,6 +263,58 @@ const selectOne = (val: string)=>{
|
|
|
|
const selectConfirm = (val: string)=>{
|
|
|
|
const selectConfirm = (val: string)=>{
|
|
|
|
valiFormData.value.owner = val
|
|
|
|
valiFormData.value.owner = val
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
const handleMediaAdd = () => {
|
|
|
|
|
|
|
|
uni.chooseImage({
|
|
|
|
|
|
|
|
count: 5,
|
|
|
|
|
|
|
|
mediaType: ['image','video'],
|
|
|
|
|
|
|
|
sourceType: ['album', 'camera'],
|
|
|
|
|
|
|
|
maxDuration: 30,
|
|
|
|
|
|
|
|
camera: 'back',
|
|
|
|
|
|
|
|
success: (res)=> {
|
|
|
|
|
|
|
|
console.log('chooseImage', res)
|
|
|
|
|
|
|
|
const tempFilePath = res.tempFilePaths[0]
|
|
|
|
|
|
|
|
handleUploadFile(tempFilePath)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 调用上传接口,把我们拍的照片,或者手机相册选择的相册发送给对应的服务器,然后服务器会返回一个在线的图片地址
|
|
|
|
|
|
|
|
const handleUploadFile = (e) => {
|
|
|
|
|
|
|
|
const _this = this
|
|
|
|
|
|
|
|
const tempFilePath = e.tempFilePaths[0]
|
|
|
|
|
|
|
|
const businessId = e.tempFiles[0].uuid
|
|
|
|
|
|
|
|
uni.uploadFile({
|
|
|
|
|
|
|
|
url: '/infra/file/uploadWatch', //服务器地址
|
|
|
|
|
|
|
|
filePath: tempFilePath,//这个就是我们上面拍照返回或者先中照片返回的数组
|
|
|
|
|
|
|
|
name: 'files',
|
|
|
|
|
|
|
|
formData: {
|
|
|
|
|
|
|
|
businessType: 'errorOrderPhoto',
|
|
|
|
|
|
|
|
businessId: businessId,
|
|
|
|
|
|
|
|
businessFileType: 'errorOrderPhoto',
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
success: (res) => {
|
|
|
|
|
|
|
|
const url = JSON.parse(res.data).data
|
|
|
|
|
|
|
|
const obj = {
|
|
|
|
|
|
|
|
k: businessId,
|
|
|
|
|
|
|
|
v: url
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
mediaList.value.push(obj)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const mediaValue = ref([])
|
|
|
|
|
|
|
|
const mediaList = ref([])
|
|
|
|
|
|
|
|
// 获取上传状态
|
|
|
|
|
|
|
|
const select = (e: any) => {
|
|
|
|
|
|
|
|
handleUploadFile(e)
|
|
|
|
|
|
|
|
console.log('选择文件:', e)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 删除图片
|
|
|
|
|
|
|
|
const deleteImage = (e: any) => {
|
|
|
|
|
|
|
|
const idx = mediaList.value.findIndex(q => q.k = e.tempFile.uuid)
|
|
|
|
|
|
|
|
mediaList.value.splice(idx,1)
|
|
|
|
|
|
|
|
console.log('删除图片', mediaList.value, e.tempFile.uuid)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
</script>
|
|
|
|
</script>
|
|
|
|
<template>
|
|
|
|
<template>
|
|
|
|
<view class="data-detail">
|
|
|
|
<view class="data-detail">
|
|
|
@ -301,6 +357,10 @@ const selectConfirm = (val: string)=>{
|
|
|
|
<uni-forms-item label="情况描述" required name="remark">
|
|
|
|
<uni-forms-item label="情况描述" required name="remark">
|
|
|
|
<uni-easyinput type="textarea" v-model="valiFormData.remark" placeholder="请输入情况描述" />
|
|
|
|
<uni-easyinput type="textarea" v-model="valiFormData.remark" placeholder="请输入情况描述" />
|
|
|
|
</uni-forms-item>
|
|
|
|
</uni-forms-item>
|
|
|
|
|
|
|
|
<uni-forms-item class="media-item" label="照片(最多可上传5张)" name="mediaValue">
|
|
|
|
|
|
|
|
<uni-file-picker limit="5" v-model="mediaValue" fileMediatype="image" mode="grid" :auto-upload="false"
|
|
|
|
|
|
|
|
@select="select" @delete="deleteImage" />
|
|
|
|
|
|
|
|
</uni-forms-item>
|
|
|
|
</uni-forms>
|
|
|
|
</uni-forms>
|
|
|
|
<view class="action">
|
|
|
|
<view class="action">
|
|
|
|
<button class="cancle" @click="handleCancl()">取消</button>
|
|
|
|
<button class="cancle" @click="handleCancl()">取消</button>
|
|
|
@ -334,6 +394,10 @@ const selectConfirm = (val: string)=>{
|
|
|
|
display: flex!important;
|
|
|
|
display: flex!important;
|
|
|
|
align-items: center!important;
|
|
|
|
align-items: center!important;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
.media-add {
|
|
|
|
|
|
|
|
width: 140rpx;
|
|
|
|
|
|
|
|
height: 140rpx;
|
|
|
|
|
|
|
|
}
|
|
|
|
.action {
|
|
|
|
.action {
|
|
|
|
display: flex;
|
|
|
|
display: flex;
|
|
|
|
justify-content: space-between;
|
|
|
|
justify-content: space-between;
|
|
|
|