add
This commit is contained in:
parent
2c7e66c9fb
commit
b720bab372
@ -1,32 +0,0 @@
|
||||
<template>
|
||||
<el-upload
|
||||
accept="doc, docx, xls, xlsx, ppt, pptx, pdf, txt, zip, rar, tar, jpg, png, gif, jpeg, webp, wmv, avi, mpg, mpeg, 3gp, mov, mp4, flv, f4v, rmvb, mkv"
|
||||
class="upload-demo" :show-file-list="false" aria-hidden="true" :headers="{ Token: userStore?.token }"
|
||||
:action="base_url + '/upload/file'" :on-success="handleAvatarSuccess" ref="upload" :limit="5" multiple>
|
||||
<el-button type="primary">
|
||||
上传
|
||||
</el-button>
|
||||
</el-upload>
|
||||
<div>
|
||||
<div v-for="(item, index) in annex" style="margin-left: 5px;display: block;">
|
||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{
|
||||
item.name }}</a>
|
||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFile(index)">x</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, defineProps, defineEmits } from "vue"
|
||||
import configs from "@/config"
|
||||
import useUserStore from "@/stores/modules/user";
|
||||
const userStore = useUserStore();
|
||||
const base_url = ref(configs.baseUrl + configs.urlPrefix)
|
||||
const props = defineProps({
|
||||
annex: Array
|
||||
})
|
||||
|
||||
const emits = defineEmits(["handleAvatarSuccess", 'delFileFn']);
|
||||
const handleAvatarSuccess = (res) => { emits("handleAvatarSuccess", res); }
|
||||
const delFile = (index) => { emits("delFile", index); }
|
||||
|
||||
</script>
|
@ -1,65 +1,63 @@
|
||||
<template>
|
||||
<div style="margin-bottom: 30px">
|
||||
联系人
|
||||
<!-- <el-button @click="handleAdd" v-if="!formData.contacts.length">+</el-button> -->
|
||||
<div>
|
||||
{{ config?.title || '' }}
|
||||
</div>
|
||||
<div style="margin-bottom: 30px">
|
||||
<el-table :data="formData.contacts">
|
||||
<el-table-column label="序号">
|
||||
<div>
|
||||
<el-table :data="formData">
|
||||
<el-table-column label="操作">
|
||||
<template #default="{ row }">
|
||||
<el-button @click="handleAdd">+</el-button>
|
||||
<el-button @click="handleDelete(row)">-</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="姓名" prop="name">
|
||||
<el-table-column :label="item.label" v-for="(item, index) in config.tableConfig" :key="index"
|
||||
:prop="item[value]">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.name" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="职务" prop="duties">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.duties" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="办公电话" prop="telephone">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.telephone" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="手机号码" prop="mobile">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.mobile" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="电子邮箱" prop="email">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.email" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="传真" prop="fax">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.fax" />
|
||||
<el-input v-model="row[item.value]" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<template #empty>
|
||||
<span class="cursor-pointer">暂无数据,点击添加 <el-button @click="handleAdd">+</el-button></span>
|
||||
</template>
|
||||
</el-table>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
import { ref, defineProps, onMounted } from "vue"
|
||||
import { defineProps } from "vue"
|
||||
|
||||
const props = defineProps({
|
||||
|
||||
formData: {
|
||||
type: Object,
|
||||
require: true
|
||||
},
|
||||
config: {
|
||||
type: Object,
|
||||
require: true
|
||||
}
|
||||
})
|
||||
|
||||
// 生成table的每一列的初始对象
|
||||
const list = props.config.tableConfig.map(item => item.value)
|
||||
const getInitialData = () => {
|
||||
return list.reduce((acc, curr) => {
|
||||
acc[curr] = '';
|
||||
return acc;
|
||||
}, {});
|
||||
}
|
||||
|
||||
|
||||
const handleAdd = () => {
|
||||
props.formData.push(getInitialData());
|
||||
};
|
||||
|
||||
|
||||
const handleDelete = async (row: any) => {
|
||||
if (row.id) {
|
||||
await props.config.deleteApi({ id: row.id });
|
||||
}
|
||||
const index = props.formData.indexOf(row);
|
||||
props.formData.splice(index, 1);
|
||||
};
|
||||
|
||||
|
||||
</script>
|
||||
</script>
|
||||
|
@ -39,6 +39,6 @@ const handleAvatarSuccess = (response: any) => {
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFile = (index: number) => { props.formData.annex.splice(index, 1) }
|
||||
const delFile = (index: number) => { props.formData[props.value].splice(index, 1) }
|
||||
|
||||
</script>
|
@ -53,48 +53,43 @@
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标文件" prop="bidding_file">
|
||||
<annexUpload :annex="formData.bidding_file" @handleAvatarSuccess="handleAvatarSuccess_four"
|
||||
@delFile="delFileFn" />
|
||||
|
||||
<uploadAnnex :formData="formData" value="bidding_file"></uploadAnnex>
|
||||
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="招标控制价文件" prop="zbkzj_file" label-width="140px">
|
||||
<annexUpload :annex="formData.zbkzj_file" @handleAvatarSuccess="handleAvatarSuccess_four1"
|
||||
@delFile="delFileFn1" />
|
||||
<uploadAnnex :formData="formData" value="zbkzj_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="工程造价合同" prop="gczjht_file" label-width="120px">
|
||||
<annexUpload :annex="formData.gczjht_file" @handleAvatarSuccess="handleAvatarSuccess_four2"
|
||||
@delFile="delFileFn2" />
|
||||
<uploadAnnex :formData="formData" value="gczjht_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="项目变更、签证资料" prop="xmbgqzzl_file" label-width="170px">
|
||||
<annexUpload :annex="formData.xmbgqzzl_file"
|
||||
@handleAvatarSuccess="handleAvatarSuccess_four3" @delFile="delFileFn3" />
|
||||
<uploadAnnex :formData="formData" value="xmbgqzzl_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="送审概算、预算、结算资料" prop="ssgsysjs_file" label-width="200px">
|
||||
<annexUpload :annex="formData.ssgsysjs_file"
|
||||
@handleAvatarSuccess="handleAvatarSuccess_four4" @delFile="delFileFn4" />
|
||||
<uploadAnnex :formData="formData" value="ssgsysjs_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="往来函件" prop="wlhj_file">
|
||||
<annexUpload :annex="formData.wlhj_file" @handleAvatarSuccess="handleAvatarSuccess_four5"
|
||||
@delFile="delFileFn5" />
|
||||
<uploadAnnex :formData="formData" value="wlhj_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="其他资料" prop="other_file">
|
||||
<annexUpload :annex="formData.other_file" @handleAvatarSuccess="handleAvatarSuccess_four6"
|
||||
@delFile="delFileFn6" />
|
||||
<uploadAnnex :formData="formData" value="other_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -162,67 +157,6 @@ const customEvent = (e) => {
|
||||
showDialog.value = false
|
||||
}
|
||||
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.bidding_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.bidding_file.splice(index, 1) }
|
||||
|
||||
|
||||
const handleAvatarSuccess_four1 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.zbkzj_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn1 = (index: number) => { formData.zbkzj_file.splice(index, 1) }
|
||||
|
||||
const handleAvatarSuccess_four2 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.gczjht_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn2 = (index: number) => { formData.gczjht_file.splice(index, 1) }
|
||||
|
||||
const handleAvatarSuccess_four3 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.xmbgqzzl_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn3 = (index: number) => { formData.xmbgqzzl_file.splice(index, 1) }
|
||||
|
||||
const handleAvatarSuccess_four4 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.ssgsysjs_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn4 = (index: number) => { formData.ssgsysjs_file.splice(index, 1) }
|
||||
|
||||
|
||||
const handleAvatarSuccess_four5 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.wlhj_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn5 = (index: number) => { formData.wlhj_file.splice(index, 1) }
|
||||
|
||||
const handleAvatarSuccess_four6 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.other_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn6 = (index: number) => { formData.other_file.splice(index, 1) }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 表单验证
|
||||
const formRules = reactive<any>({
|
||||
|
@ -40,11 +40,9 @@
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="附件" prop="annex">
|
||||
<annexUpload :annex="formData.check_annex" @handleAvatarSuccess="handleAvatarSuccess_four"
|
||||
@delFile="delFileFn" />
|
||||
<uploadAnnex :formData="formData" value="check_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
</el-row>
|
||||
|
||||
</el-form>
|
||||
@ -103,15 +101,6 @@ const emit = defineEmits(['success', 'close'])
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
const mode = ref('add')
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
|
||||
Array.isArray(formData.check_annex) ? "" : formData.check_annex = []
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.check_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.check_annex.splice(index, 1) }
|
||||
|
||||
// 弹窗标题
|
||||
const popupTitle = computed(() => {
|
||||
|
@ -16,8 +16,8 @@
|
||||
type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="rectification_reply_annex">
|
||||
<annexUpload :annex="formData.rectification_reply_annex"
|
||||
@handleAvatarSuccess="handleAvatarSuccess_four" @delFile="delFileFn" />
|
||||
<uploadAnnex :formData="formData" value="rectification_reply_annex"></uploadAnnex>
|
||||
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
@ -42,14 +42,7 @@ const mode = ref('add')
|
||||
const popupTitle = computed(() => {
|
||||
return '监理回复'
|
||||
})
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
Array.isArray(formData.rectification_reply_annex) ? '' : formData.rectification_reply_annex = []
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.rectification_reply_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.rectification_reply_annex.splice(index, 1) }
|
||||
// 表单数据
|
||||
const formData = reactive({
|
||||
id: '',
|
||||
|
@ -44,55 +44,8 @@
|
||||
<el-dialog v-model="showDialog" title="选择项目" width="70%">
|
||||
<dialogTable @customEvent="customEvent" :config="supervision_project" />
|
||||
</el-dialog>
|
||||
<formTable :formData="formData.contacts" :config="tableConfig"></formTable>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- <FormTable></FormTable> -->
|
||||
<!-- <div style="margin-bottom: 30px">
|
||||
联系人
|
||||
<el-button @click="handleAdd" v-if="!formData.contacts.length">+</el-button>
|
||||
</div>
|
||||
<div style="margin-bottom: 30px">
|
||||
<el-table :data="formData.contacts">
|
||||
<el-table-column label="序号">
|
||||
<template #default="{ row }">
|
||||
<el-button @click="handleAdd">+</el-button>
|
||||
<el-button @click="handleDelete(row)">-</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="姓名" prop="name">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.name" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="职务" prop="duties">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.duties" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="办公电话" prop="telephone">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.telephone" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="手机号码" prop="mobile">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.mobile" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="电子邮箱" prop="email">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.email" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="传真" prop="fax">
|
||||
<template #default="{ row }">
|
||||
<el-input v-model="row.fax" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div> -->
|
||||
</el-form>
|
||||
</popup>
|
||||
</div>
|
||||
@ -144,30 +97,46 @@ const formData = reactive({
|
||||
contacts: [],
|
||||
});
|
||||
|
||||
const tableConfig = reactive(
|
||||
{
|
||||
title: "联系人",
|
||||
tableConfig: [
|
||||
{
|
||||
label: "姓名",
|
||||
value: 'name'
|
||||
|
||||
},
|
||||
{
|
||||
label: "职务",
|
||||
value: 'duties'
|
||||
},
|
||||
{
|
||||
label: "办公电话",
|
||||
value: 'telephone'
|
||||
},
|
||||
{
|
||||
label: "手机号码",
|
||||
value: 'mobile'
|
||||
},
|
||||
{
|
||||
label: "电子邮箱",
|
||||
value: 'email'
|
||||
},
|
||||
{
|
||||
label: "传真",
|
||||
value: 'fax'
|
||||
},
|
||||
],
|
||||
deleteApi: apiSupervisionParticipatingUnitsContactsDelete,
|
||||
}
|
||||
)
|
||||
|
||||
const customEvent = (e) => {
|
||||
formData.project_id = e.id;
|
||||
formData.project_name = e.project_name;
|
||||
showDialog.value = false;
|
||||
};
|
||||
|
||||
const handleAdd = () => {
|
||||
formData.contacts.push({
|
||||
name: "",
|
||||
duties: "",
|
||||
telephone: "",
|
||||
mobile: "",
|
||||
email: "",
|
||||
fax: "",
|
||||
});
|
||||
};
|
||||
const handleDelete = async (row: any) => {
|
||||
if (row.id) {
|
||||
await apiSupervisionParticipatingUnitsContactsDelete({ id: row.id });
|
||||
}
|
||||
const index = formData.contacts.indexOf(row);
|
||||
formData.contacts.splice(index, 1);
|
||||
};
|
||||
|
||||
// 表单验证
|
||||
const formRules = reactive<any>({
|
||||
project_id: [
|
||||
|
@ -26,8 +26,7 @@
|
||||
type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="rectification_annex">
|
||||
<annexUpload :annex="formData.rectification_annex" @handleAvatarSuccess="handleAvatarSuccess_four"
|
||||
@delFile="delFileFn" />
|
||||
<uploadAnnex :formData="formData" value="rectification_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</popup>
|
||||
@ -37,9 +36,9 @@
|
||||
<script lang="ts" setup name="supervisionProblemEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
import { apiSupervisionProblemAdd, apiSupervisionProblemEdit, apiSupervisionProblemDetail, apisupervision_problem } from '@/api/supervision_problem'
|
||||
import { timeFormat } from '@/utils/util'
|
||||
import { apiSupervisionProblemDetail, apisupervision_problem } from '@/api/supervision_problem'
|
||||
import type { PropType } from 'vue'
|
||||
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
@ -66,14 +65,7 @@ const formData = reactive({
|
||||
"rectification_opinion": "aa",
|
||||
"rectification_annex": []
|
||||
})
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
Array.isArray(formData.rectification_annex) ? '' : formData.rectification_annex = []
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.rectification_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.rectification_annex.splice(index, 1) }
|
||||
|
||||
// 表单验证
|
||||
const formRules = reactive<any>({
|
||||
|
@ -40,8 +40,7 @@
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="附件" prop="annex">
|
||||
<annexUpload :annex="formData.check_annex" @handleAvatarSuccess="handleAvatarSuccess_four"
|
||||
@delFile="delFileFn" />
|
||||
<uploadAnnex :formData="formData" value="check_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@ -88,12 +87,9 @@
|
||||
<script lang="ts" setup name="supervisionDiaryEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
// import { apiSupervisionDiaryAdd, apiSupervisionDiaryEdit, apiSupervisionDiaryDetail } from '@/api/supervision_diary'
|
||||
|
||||
import { apisupervision_witness_sampling_detail } from '@/api/supervision_witness_sampling'
|
||||
|
||||
import { timeFormat } from '@/utils/util'
|
||||
import type { PropType } from 'vue'
|
||||
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
@ -104,15 +100,6 @@ const emit = defineEmits(['success', 'close'])
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
const mode = ref('add')
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
|
||||
Array.isArray(formData.check_annex) ? "" : formData.check_annex = []
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.check_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.check_annex.splice(index, 1) }
|
||||
|
||||
// 弹窗标题
|
||||
const popupTitle = computed(() => {
|
||||
|
@ -2,7 +2,7 @@
|
||||
<div class="edit-popup">
|
||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||
@close="handleClose">
|
||||
<el-form ref="formRef" :model="formData" label-width="90px" :rules="formRules">
|
||||
<el-form ref="formRef" :model="formData" label-width="160px" :rules="formRules">
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="标识" prop="dataid">
|
||||
@ -116,7 +116,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="建筑结构类型" prop="type" label-width="120px">
|
||||
<el-form-item label="建筑结构类型" prop="type">
|
||||
<el-select class="flex-1" v-model="formData.type" clearable placeholder="请选择建筑结构类型">
|
||||
<el-option v-for="(item, index) in dictData.building_structure_type " :key="index"
|
||||
:label="item.name" :value="parseInt(item.value)" />
|
||||
@ -169,7 +169,7 @@
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="工程师核定价" prop="gcshd" label-width="120px">
|
||||
<el-form-item label="工程师核定价" prop="gcshd">
|
||||
<el-input v-model="formData.gcshd" clearable placeholder="请输入工程师核定价" type="number" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -196,7 +196,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="审核部核定价" prop="shbhd" label-width="120px">
|
||||
<el-form-item label="审核部核定价" prop="shbhd">
|
||||
<el-input v-model="formData.shbhd" clearable placeholder="请输入审核部核定价" type="number" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -225,27 +225,22 @@
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="结果文件" prop="result_file">
|
||||
<annexUpload :annex="formData.result_file" @handleAvatarSuccess="handleAvatarSuccess_four"
|
||||
@delFile="delFileFn" />
|
||||
|
||||
<uploadAnnex :formData="formData" value="result_file"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="项目负责人附件" prop="master_annex">
|
||||
<annexUpload :annex="formData.master_annex" @handleAvatarSuccess="handleAvatarSuccess"
|
||||
@delFile="delFileFn1" />
|
||||
<uploadAnnex :formData="formData" value="master_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="部门负责人附件" prop="bm_annex">
|
||||
<annexUpload :annex="formData.bm_annex" @handleAvatarSuccess="handleAvatarSuccess2"
|
||||
@delFile="delFileFn2" />
|
||||
<uploadAnnex :formData="formData" value="bm_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="审核部附件" prop="shb_annex">
|
||||
<annexUpload :annex="formData.shb_annex" @handleAvatarSuccess="handleAvatarSuccess3"
|
||||
@delFile="delFileFn3" />
|
||||
<uploadAnnex :formData="formData" value="shb_annex"></uploadAnnex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -257,19 +252,16 @@
|
||||
<personnelselector ref="personnel" @confirm="submituser" type="1">
|
||||
</personnelselector>
|
||||
</div>
|
||||
|
||||
</el-form>
|
||||
</popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="taskHandlingThreeLevelReviewEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
import { apiTaskHandlingThreeLevelReviewAdd, apiTaskHandlingThreeLevelReviewEdit, } from '@/api/task_handling_three_level_review'
|
||||
import type { PropType } from 'vue'
|
||||
import { cost_project } from "@/components/dialogTable/dialogTableConfig"
|
||||
import file from "@/components/material/file.vue";
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
@ -335,40 +327,6 @@ const formData = reactive({
|
||||
|
||||
})
|
||||
|
||||
const handleAvatarSuccess_four = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.result_file.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn = (index: number) => { formData.result_file.splice(index, 1) }
|
||||
|
||||
|
||||
|
||||
const handleAvatarSuccess = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.master_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn1 = (index: number) => { formData.master_annex.splice(index, 1) }
|
||||
|
||||
const handleAvatarSuccess2 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.bm_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn2 = (index: number) => { formData.bm_annex.splice(index, 1) }
|
||||
|
||||
|
||||
const handleAvatarSuccess3 = (response: any) => {
|
||||
// @ts-ignore
|
||||
response.code != 0 ? formData.shb_annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
|
||||
};
|
||||
|
||||
// 删除上传的文件
|
||||
const delFileFn3 = (index: number) => { formData.shb_annex.splice(index, 1) }
|
||||
|
||||
//确认
|
||||
const submituser = (e: any) => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user