diff --git a/src/components/detailPage/index.vue b/src/components/detailPage/index.vue index 0f563ec..b3fbcdf 100644 --- a/src/components/detailPage/index.vue +++ b/src/components/detailPage/index.vue @@ -5,7 +5,11 @@ - {{ formData[item.value] }} + {{ formData[item.value] ?? + (item.value.includes('.') ? + (formData[item.value.split('.')[0]])[item.value.split('.')[1]] : + '') + }} {{ items.name }} - - {{ formData[item.value] }} @@ -94,8 +96,8 @@ const setFormData = async (data: Record) => { query = { [query]: data.id } } - let res = await props.detailConfig.table.fetchFun({ ...query }) - tableLists.value = res.lists + + tableLists.value = (formData.value)[String(props.detailConfig.table.fetchFun)] ?? (await props.detailConfig.table.fetchFun({ ...query })).lists } } diff --git a/src/views/approval_issuance_achievement_documents/detail.js b/src/views/approval_issuance_achievement_documents/detail.js new file mode 100644 index 0000000..f4a948b --- /dev/null +++ b/src/views/approval_issuance_achievement_documents/detail.js @@ -0,0 +1,65 @@ +const detailConfig = { + title: "成果文件审定、签发", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "任务名称", + value: "task" + }, + { + label: "工序", + value: "processes" + }, + { + label: "资料份数", + value: "number" + }, + { + label: "登记日期", + value: "apptime" + }, + + { + label: "登记人", + value: "person" + }, + { + label: "备注", + value: "tips", + column: 1 + }, + { + label: "多行文本框1", + value: "fd_1", + column: 1 + + }, + { + label: "多行文本框2", + value: "fd_2", + column: 1 + + }, + { + label: "多行文本框3", + value: "fd_3", + column: 1 + }, + + + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/approval_issuance_achievement_documents/index.vue b/src/views/approval_issuance_achievement_documents/index.vue index 5f3b823..f8915e6 100644 --- a/src/views/approval_issuance_achievement_documents/index.vue +++ b/src/views/approval_issuance_achievement_documents/index.vue @@ -61,6 +61,10 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -70,23 +74,27 @@ + diff --git a/src/views/cost_approved_projects/detail.js b/src/views/cost_approved_projects/detail.js new file mode 100644 index 0000000..70937c2 --- /dev/null +++ b/src/views/cost_approved_projects/detail.js @@ -0,0 +1,173 @@ +const detailConfig = { + title: "造价合同", + config: [ + { + label: "合同名称", + value: "contract_name" + }, + { + label: "合同编号", + value: "contract_num" + }, + { + label: "合同类型", + value: "contract_type_text" + }, + { + label: "甲方签约单位", + value: "part_a" + }, + { + label: "甲方联系人", + value: "part_a_contract" + }, + { + label: "业主地址", + value: "part_a_address" + }, + { + label: "乙方签约单位", + value: "part_b" + }, + { + label: "乙方签约人", + value: "part_b_signatory", + }, + { + label: "业务性质", + value: "business_nature_text", + }, + { + label: "行业性质", + value: "industry_nature_text", + }, + { + label: "建设区域", + value: "const_area_text", + }, + { + label: "资金来源", + value: "fund_sources_text", + }, + { + label: "工程总投资", + value: "project_money", + }, + { + label: "工程规模及概况", + value: "project_scale", + }, + { + label: "签订金额(元)", + value: "money", + }, + { + label: "合同服务工期", + value: "contract_service", + }, + { + label: "合同签订费率", + value: "rate", + }, + + { + label: "合同计划开始日期", + value: "start_date", + }, + + { + label: "合同计划结束日期", + value: "end_date", + }, + + { + label: "合同履约金", + value: "performance", + }, + + { + label: "履约金到期时间", + value: "due_time", + }, + + { + label: "合同付款方式", + value: "payment", + }, + + { + label: "合同主要内容", + value: "content", + }, + + { + label: "创建人", + value: "founder", + }, + + { + label: "创建日期", + value: "create_date", + }, + + { + label: "签订部门", + value: "dept", + }, + { + label: "签订负责人", + value: "signing_person", + }, + { + label: "项目总监/经理", + value: "project_director", + }, + { + label: "实施方式", + value: "way_text", + }, + { + label: "盖章名称", + value: "seal_name_text", + }, + { + label: "是否限制", + value: "limit_text", + }, + { + label: "限制次数", + value: "limit_num", + }, + { + label: "文件类型", + value: "file_type_text", + }, + { + label: "盖章份数", + value: "seal_num", + }, + { + label: "盖章人", + value: "sealer", + }, + { + label: "骑缝盖章", + value: "plance_seal_text", + }, + { + label: "发出日期", + value: "send_date", + }, + { + label: "邮寄编号", + value: "number", + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/cost_approved_projects/index.vue b/src/views/cost_approved_projects/index.vue index cc3b4fb..fb4153f 100644 --- a/src/views/cost_approved_projects/index.vue +++ b/src/views/cost_approved_projects/index.vue @@ -112,6 +112,10 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + + @@ -139,14 +144,16 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { apiCostApprovedProjectLists, apiCostApprovedProjectDelete, apiCostApprovedProjectDetail } from '@/api/cost_approved_project' -import { timeFormat } from '@/utils/util' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' +import detailConfig from './detail' + const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) - +const showDetail = ref(false) // 查询条件 const queryParams = reactive({ contract_name: '', @@ -206,5 +213,15 @@ const handleCreation = async (id: number | any[]) => { // await apiCostApprovedProjectDelete({ id }) getLists() } + +// 详情 +const handleDetail = async (id: any) => { + let res = await apiCostApprovedProjectDetail({ id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + getLists() diff --git a/src/views/cost_projects/detail.js b/src/views/cost_projects/detail.js new file mode 100644 index 0000000..8329f10 --- /dev/null +++ b/src/views/cost_projects/detail.js @@ -0,0 +1,130 @@ +const detailConfig = { + title: "造价项目台账", + config: [ + { + label: "项目编号", + value: "project_num" + }, + { + label: "项目名称", + value: "project_name" + }, + { + label: "关联合同", + value: "contract.contract_name" + }, + { + label: "咨询类型", + value: "types_text" + }, + { + label: "行业", + value: "industry_text" + }, + { + label: "所在省份", + value: "province_text" + }, + { + label: "所在市区", + value: "city_text" + }, + { + label: "具体地址", + value: "address", + }, + { + label: "计划开始日期", + value: "starting", + }, + { + label: "计划结束日期", + value: "endtime", + }, + { + label: "计划工期", + value: "jhgq", + }, + { + label: "组织", + value: "org_text", + }, + { + label: "部门", + value: "depar_text", + }, + { + label: "项目负责人", + value: "principal", + }, + { + label: "项目相关人员", + value: "person_text", + }, + { + label: "项目总投资", + value: "invest", + }, + { + label: "预算造价", + value: "budget", + }, + + { + label: "送审造价", + value: "cost", + }, + + { + label: "审定造价", + value: "approval", + }, + + { + label: "委托单位", + value: "aunit", + }, + + { + label: "委托方联系人", + value: "Acontact", + }, + + { + label: "联系电话", + value: "acontactnum", + }, + + { + label: "登记日期", + value: "date", + }, + + { + label: "项目规模及概括", + value: "generalize", + }, + + { + label: "建设单位", + value: "js_unit", + }, + { + label: "注意事项", + value: "note", + }, + { + label: "备注", + value: "remark", + column: 1 + }, + + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/cost_projects/edit.vue b/src/views/cost_projects/edit.vue index de813c6..6aaa2bb 100644 --- a/src/views/cost_projects/edit.vue +++ b/src/views/cost_projects/edit.vue @@ -100,7 +100,7 @@ - diff --git a/src/views/cost_projects/index.vue b/src/views/cost_projects/index.vue index 2d4c59f..7305a16 100644 --- a/src/views/cost_projects/index.vue +++ b/src/views/cost_projects/index.vue @@ -80,6 +80,10 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -89,6 +93,7 @@ + @@ -99,10 +104,14 @@ import { useRoute } from 'vue-router' import { apiCostProjectLists, apiCostProjectDelete, apiCostProjectDetail } from '@/api/cost_project' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' +import detailConfig from './detail' + const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) +const showDetail = ref(false) const route = useRoute() @@ -153,6 +162,17 @@ const handleDelete = async (id: number | any[]) => { await apiCostProjectDelete({ id }) getLists() } + +// 详情 +const handleDetail = async (id: any) => { + let res = await apiCostProjectDetail({ id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + + if (route.query.contractId) { handleAdd() } diff --git a/src/views/data_reception/detail.js b/src/views/data_reception/detail.js new file mode 100644 index 0000000..d4ec69f --- /dev/null +++ b/src/views/data_reception/detail.js @@ -0,0 +1,79 @@ +const detailConfig = { + title: "资料接收", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "登记日期", + value: "apptime" + }, + { + label: "登记人", + value: "person" + }, + { + label: "资料份数", + value: "number" + }, + { + label: "存放位置", + value: "position" + }, + + { + label: "说明", + value: "tips" + }, + { + label: "投标文件", + value: "bidding_file", + column: 1 + + }, + { + label: "招标控制价文件", + value: "zbkzj_file", + column: 1 + + }, + { + label: "工程造价合同", + value: "gczjht_file", + column: 1 + }, + { + label: "项目变更、签证资料", + value: "xmbgqzzl_file", + column: 1 + }, + { + label: "送审概算、预算、结算资料", + value: "ssgsysjs_file", + column: 1 + }, + { + label: "往来函件", + value: "wlhj_file", + column: 1 + }, + { + label: "其他资料", + value: "other_file", + column: 1 + }, + + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/data_reception/index.vue b/src/views/data_reception/index.vue index f4c1990..46d1825 100644 --- a/src/views/data_reception/index.vue +++ b/src/views/data_reception/index.vue @@ -56,6 +56,9 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -65,6 +68,8 @@ + @@ -72,15 +77,17 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { apiDataReceptionLists, apiDataReceptionDelete, apiDataReceptionDetail } from '@/api/data_reception' -import { timeFormat } from '@/utils/util' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' import { apiCostProjectDatas } from "@/api/cost_project"; import { useDictOptions } from "@/hooks/useDictOptions" +import detailConfig from './detail' const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) +const showDetail = ref(false) const loading = ref(false) const queryCostProject = async (query: string) => { @@ -145,6 +152,15 @@ const handleDelete = async (id: number | any[]) => { await apiDataReceptionDelete({ id }) getLists() } +// 详情 +const handleDetail = async (row) => { + let res = await apiDataReceptionDetail({ id: row.id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + getLists() diff --git a/src/views/manage_accept_doc/detail.js b/src/views/manage_accept_doc/detail.js new file mode 100644 index 0000000..78c5ede --- /dev/null +++ b/src/views/manage_accept_doc/detail.js @@ -0,0 +1,53 @@ +const detailConfig = { + title: "项目管理--收文管理", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "编号", + value: "code" + }, + { + label: "内容摘要", + value: "abstract" + }, + { + label: "发文日期", + value: "send_date" + }, + { + label: "发文单位", + value: "send_company" + }, + { + label: "发文人", + value: "send_user" + }, + { + label: "签收人", + value: "accept_user" + }, + { + label: "创建人", + value: "create_user" + }, + { + label: "创建时间", + value: "create_time" + }, + { + label: "备注", + value: "remark", + column: 1 + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/manage_accept_doc/edit.vue b/src/views/manage_accept_doc/edit.vue index 82e8e27..b49dfed 100644 --- a/src/views/manage_accept_doc/edit.vue +++ b/src/views/manage_accept_doc/edit.vue @@ -71,14 +71,6 @@ const popupTitle = computed(() => { return mode.value == 'edit' ? '编辑项目管理--收文管理' : '新增项目管理--收文管理' }) -const handleAvatarSuccess_four = (response: any) => { - formData.annex ||= [] - // @ts-ignore - response.code != 0 ? formData.annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg); -}; - -// 删除上传的文件 -const delFileFn = (index: number) => { formData.annex.splice(index, 1) } // 表单数据 const formData = reactive({ diff --git a/src/views/manage_engineering_changes/detail.js b/src/views/manage_engineering_changes/detail.js new file mode 100644 index 0000000..8e7584d --- /dev/null +++ b/src/views/manage_engineering_changes/detail.js @@ -0,0 +1,45 @@ +const detailConfig = { + title: "项目管理--工程变更", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "编号", + value: "code" + }, + { + label: "变更日期", + value: "date" + }, + { + label: "变更及洽商部位", + value: "position" + }, + { + label: "图纸号", + value: "drawing_number" + }, + { + label: "变更及洽商概述", + value: "overview" + }, + { + label: "监理签认情况", + value: "sign_info" + }, + { + label: "备注", + value: "remark", + column: 1 + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/manage_engineering_changes/edit.vue b/src/views/manage_engineering_changes/edit.vue index 212bb8b..07a998f 100644 --- a/src/views/manage_engineering_changes/edit.vue +++ b/src/views/manage_engineering_changes/edit.vue @@ -32,7 +32,6 @@ - @@ -61,15 +60,6 @@ const mode = ref('add') const showDialog = ref(false) -const handleAvatarSuccess_four = (response: any) => { - formData.annex ||= [] - // @ts-ignore - response.code != 0 ? formData.annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg); -}; - -// 删除上传的文件 -const delFileFn = (index: number) => { formData.annex.splice(index, 1) } - // 弹窗标题 const popupTitle = computed(() => { return mode.value == 'edit' ? '编辑项目管理--工程变更' : '新增项目管理--工程变更' diff --git a/src/views/manage_info_report/detail.js b/src/views/manage_info_report/detail.js new file mode 100644 index 0000000..850a6fa --- /dev/null +++ b/src/views/manage_info_report/detail.js @@ -0,0 +1,52 @@ +const detailConfig = { + title: "项目管理--工程变更", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "信息摘要", + value: "abstract" + }, + { + label: "发生日期", + value: "happen_date" + }, + { + label: "严重程度", + value: "severity_text" + }, + { + label: "信息类别", + value: "info_cate" + }, + { + label: "信息内容", + value: "content" + }, + { + label: "项目部意见", + value: "opinions" + }, + { + label: "主送人", + value: "giver" + }, + { + label: "创建人", + value: "create_user" + }, + { + label: "创建时间", + value: "create_time" + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/manage_info_report/edit.vue b/src/views/manage_info_report/edit.vue index f9f632f..e0a2c51 100644 --- a/src/views/manage_info_report/edit.vue +++ b/src/views/manage_info_report/edit.vue @@ -38,7 +38,6 @@ - diff --git a/src/views/manage_metered_payment/detail.js b/src/views/manage_metered_payment/detail.js new file mode 100644 index 0000000..2bb3cdc --- /dev/null +++ b/src/views/manage_metered_payment/detail.js @@ -0,0 +1,35 @@ +const detailConfig = { + title: "项目管理--计量支付", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "年月", + value: "date" + }, + { + label: "本月完成(万元)", + value: "month_amount" + }, + { + label: "本月支付(万元)", + value: "month_pay" + }, + { + label: "备注", + value: "remark" + }, + { + label: "填报人", + value: "create_user" + }, + { + label: "填报时间", + value: "create_time" + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/manage_monthly_progress_report/detail.js b/src/views/manage_monthly_progress_report/detail.js new file mode 100644 index 0000000..0143283 --- /dev/null +++ b/src/views/manage_monthly_progress_report/detail.js @@ -0,0 +1,45 @@ +const detailConfig = { + title: "项目管理--工程进度月报", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "年月", + value: "date" + }, + { + label: "累计工程进度", + value: "progress" + }, + { + label: "工程状态", + value: "status_text" + }, + { + label: "备注", + value: "remark" + }, + { + label: "存在问题", + value: "problem" + }, + { + label: "进度描述", + value: "desc" + }, + { + label: "备注", + value: "remark", + column: 1 + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/manage_send_doc/detail.js b/src/views/manage_send_doc/detail.js new file mode 100644 index 0000000..9ab5f03 --- /dev/null +++ b/src/views/manage_send_doc/detail.js @@ -0,0 +1,53 @@ +const detailConfig = { + title: "项目管理--项目信息", + config: [ + { + label: "项目名称", + value: "project_name" + }, + { + label: "编号", + value: "code" + }, + { + label: "内容摘要", + value: "abstract" + }, + { + label: "发文日期", + value: "send_date" + }, + { + label: "发文单位", + value: "send_company" + }, + { + label: "发文人", + value: "send_user" + }, + { + label: "签收人", + value: "accept_user" + }, + { + label: "创建人", + value: "create_user" + }, + { + label: "创建时间", + value: "create_time" + }, + { + label: "备注", + value: "remark", + column: 1 + }, + { + label: "附件", + value: "annex", + column: 1 + }, + ] + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/project_change_visa/detail.js b/src/views/project_change_visa/detail.js new file mode 100644 index 0000000..56e2cd4 --- /dev/null +++ b/src/views/project_change_visa/detail.js @@ -0,0 +1,80 @@ +const detailConfig = { + title: "项目提成", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "登记人", + value: "djr" + }, + { + label: "登记日期", + value: "djrq" + }, + ], + table: { + title: "任务明细", + tableConfig: [ + { + label: "所在目录", + value: 'directory', + + }, + { + label: "单位名称", + value: 'unit_name' + }, + { + label: "时间", + value: 'time', + }, + + { + label: "所属专业", + value: 'major', + }, + { + label: "类别", + value: 'category', + }, + { + label: "审核内容", + value: 'review_content', + }, + { + label: "审核意见", + value: 'review_comments', + }, + { + label: "审核人", + value: 'reviewer', + }, + { + label: "施工单位申报值", + value: 'declared_value', + }, + { + label: "咨询单位测算值", + value: 'calculated_value', + }, + { + label: "备注", + value: 'remark', + }, + ], + fetchFun: 'project_change_visa_content', + } + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/project_change_visa/index.vue b/src/views/project_change_visa/index.vue index 484a1ab..01a5b6e 100644 --- a/src/views/project_change_visa/index.vue +++ b/src/views/project_change_visa/index.vue @@ -71,6 +71,10 @@ link @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -80,6 +84,8 @@ + + @@ -92,10 +98,13 @@ import feedback from '@/utils/feedback' import EditPopup from './edit.vue' import { apiCostProjectDatas } from "@/api/cost_project"; import { useDictOptions } from "@/hooks/useDictOptions" +import detailConfig from './detail' const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) +const showDetail = ref(false) const loading = ref(false) const queryCostProject = async (query: string) => { @@ -162,5 +171,15 @@ const handleDelete = async (id: number | any[]) => { getLists() } +// 详情 +const handleDetail = async (row) => { + let res = await apiProjectChangeVisaDetail({ id: row.id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + + getLists() diff --git a/src/views/project_commission/detail.js b/src/views/project_commission/detail.js new file mode 100644 index 0000000..6fce7f6 --- /dev/null +++ b/src/views/project_commission/detail.js @@ -0,0 +1,115 @@ +const detailConfig = { + title: "项目提成", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "project_name" + }, + { + label: "项目编号", + value: "project_num" + }, + { + label: "项目负责人", + value: "project_director" + }, + { + label: "关联合同", + value: "contract_name" + }, + { + label: "行业", + value: "industry_nature_text" + }, + { + label: "项目回款总额", + value: "total_refund_amount" + }, + + { + label: "提成比例", + value: "rate" + }, + { + label: "应提成总金额", + value: "total_commission_amount", + }, + { + label: "已支付总额", + value: "total_pay_amount", + + }, + { + label: "本次支付总额", + value: "bczfze", + }, + { + label: "登记人", + value: "djr", + }, + { + label: "备注", + value: "remark", + column: 1 + }, + ], + table: { + title: "任务明细", + tableConfig: [ + { + label: "工程师", + value: 'engineer', + + }, + { + label: "任务名称", + value: 'task_name' + }, + { + label: "任务类型", + value: 'task_type_text', + }, + + { + label: "专业类型", + value: 'professional_type_text', + }, + { + label: "造价金额", + value: 'zj_amount', + }, + { + label: "收款金额", + value: 'sk_amount', + }, + { + label: "其他增减费用", + value: 'other_fee', + }, + { + label: "提成比例", + value: 'tc_rate', + }, + { + label: "应提成金额", + value: 'tc_amount', + }, + { + label: "本次支付金额", + value: 'pay_amount', + }, + { + label: "备注", + value: 'remark', + }, + ], + fetchFun: 'project_commission_detail', + } + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/project_commission/index.vue b/src/views/project_commission/index.vue index eb5c455..8284f12 100644 --- a/src/views/project_commission/index.vue +++ b/src/views/project_commission/index.vue @@ -85,6 +85,9 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -94,6 +97,7 @@ + @@ -101,15 +105,17 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { apiProjectCommissionLists, apiProjectCommissionDelete, apiProjectCommissionDetail } from '@/api/project_commission' -import { timeFormat } from '@/utils/util' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' import { apiCostProjectDatas } from "@/api/cost_project"; import { useDictOptions } from "@/hooks/useDictOptions" +import detailConfig from './detail' const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) +const showDetail = ref(false) const loading = ref(false) const queryCostProject = async (query: string) => { @@ -174,5 +180,15 @@ const handleDelete = async (id: number | any[]) => { getLists() } +// 详情 +const handleDetail = async (row) => { + let res = await apiProjectCommissionDetail({ id: row.id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + + getLists() diff --git a/src/views/project_survey_signature/detail.js b/src/views/project_survey_signature/detail.js new file mode 100644 index 0000000..1f3d7ac --- /dev/null +++ b/src/views/project_survey_signature/detail.js @@ -0,0 +1,36 @@ +const detailConfig = { + title: "项目提成", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "委托单位", + value: "wt_unit" + }, + { + label: "建设单位", + value: "jsdw" + }, + { + label: "部门负责人", + value: "bmfz" + }, + { + label: "项目负责人", + value: "xmfz" + }, + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/task_allocation/detail.js b/src/views/task_allocation/detail.js new file mode 100644 index 0000000..8a3ce06 --- /dev/null +++ b/src/views/task_allocation/detail.js @@ -0,0 +1,128 @@ +const detailConfig = { + title: "任务分配", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "项目负责人", + value: "project_director" + }, + { + label: "登记日期", + value: "apptime" + }, + { + label: "附件", + value: "annex", + column: 1 + }, + + ], + table: { + title: "任务明细", + tableConfig: [ + { + label: "任务名称", + value: 'task_name', + + }, + { + label: "任务次级", + value: 'level' + }, + { + label: "工序", + value: 'process', + }, + { + label: "任务类型", + value: 'task_type_text', + }, + { + label: "专业类型", + value: 'professional_type_text', + }, + { + label: "工程师", + value: 'engineer', + }, + { + label: "一级审核人", + value: 'first_reviewer', + }, + { + label: "二级审核人", + value: 'secondary_reviewer', + }, + { + label: "三级审核人", + value: 'third_level_reviewer', + }, + { + label: "天数", + value: 'days', + }, + { + label: "开始日期", + value: 'start_date', + }, + { + label: "结束日期", + value: 'end_date', + }, + { + label: "中标金额", + value: 'bid_winning_amount', + }, + { + label: "中标金额", + value: 'bid_winning_amount', + }, + + { + label: "送审造价", + value: 'cost', + }, + + { + label: "第三方核定金额", + value: 'approved_amount', + }, + + { + label: "施工单位", + value: 'construction_unit', + }, + { + label: "联系人", + value: 'contact', + }, + { + label: "联系电话", + value: 'contact_phone', + }, + { + label: "备注", + value: 'remark', + }, + + + ], + query: 'unit_id', + fetchFun: 'task_detail', + } + + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/task_allocation/edit.vue b/src/views/task_allocation/edit.vue index f8cd704..1e45bf0 100644 --- a/src/views/task_allocation/edit.vue +++ b/src/views/task_allocation/edit.vue @@ -35,7 +35,6 @@ - @@ -338,12 +337,7 @@ const setFormData = async (data: Record) => { formData.head = formData.projectInfo?.principal || "" } -const getDetail = async (row: Record) => { - const data = await apiTaskAllocationDetail({ - id: row.id - }) - setFormData(data) -} + // 提交按钮 @@ -374,6 +368,5 @@ const handleClose = () => { defineExpose({ open, setFormData, - getDetail }) diff --git a/src/views/task_allocation/index.vue b/src/views/task_allocation/index.vue index 169288c..efdbd29 100644 --- a/src/views/task_allocation/index.vue +++ b/src/views/task_allocation/index.vue @@ -46,6 +46,9 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -55,6 +58,8 @@ + @@ -62,15 +67,18 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { apiTaskAllocationLists, apiTaskAllocationDelete, apiTaskAllocationDetail } from '@/api/task_allocation' -import { timeFormat } from '@/utils/util' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' import { useDictOptions } from "@/hooks/useDictOptions" import { apiCostProjectDatas } from "@/api/cost_project"; +import detailConfig from './detail' + const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) +const showDetail = ref(false) const loading = ref(false) // 查询条件 @@ -126,5 +134,15 @@ const handleDelete = async (id: number | any[]) => { getLists() } +// 详情 +const handleDetail = async (id: any) => { + let res = await apiTaskAllocationDetail({ id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + + getLists() diff --git a/src/views/task_handling_three_level_review/detail.js b/src/views/task_handling_three_level_review/detail.js new file mode 100644 index 0000000..d675c7d --- /dev/null +++ b/src/views/task_handling_three_level_review/detail.js @@ -0,0 +1,161 @@ +const detailConfig = { + title: "任务办理与三级审核", + config: [ + { + label: "单据编号", + value: "num" + }, + { + label: "项目名称", + value: "projectInfo.project_name" + }, + { + label: "项目编号", + value: "projectInfo.project_num" + }, + { + label: "任务名称", + value: "task" + }, + { + label: "工序", + value: "processes" + }, + { + label: "任务类型", + value: "rtype_text" + }, + { + label: "专业类型", + value: "zType_text" + }, + { + label: "工程师", + value: "engineer" + }, + { + label: "项目负责人", + value: "head" + }, + { + label: "审核流程", + value: "examine_text" + }, + { + label: "一级审核人", + value: "one" + }, + { + label: "二级审核人", + value: "two" + }, + { + label: "三级审核人", + value: "three" + }, + { + label: "登记日期", + value: "apptime" + }, + { + label: "任务级次", + value: "level" + }, + { + label: "建筑面积", + value: "area" + }, + { + label: "建筑结构类型", + value: "types_text" + }, + { + label: "建筑用途", + value: "use" + }, + { + label: "施工单位", + value: "construction" + }, + { + label: "编制要求", + value: "ask_text" + }, + { + label: "造价依据", + value: "according_text" + }, + { + label: "材料补差", + value: "clbc_text" + }, + { + label: "送审金额", + value: "ssje" + }, + { + label: "工程师核定价", + value: "gcshd" + }, + { + label: "核增/核减金额", + value: "hzhj" + }, + { + label: "人工单价", + value: "rg" + }, + { + label: "项目负责人核定价", + value: "xmhd" + }, + { + label: "部门负责人核定价", + value: "bmhd" + }, + { + label: "审核部核定价", + value: "shbhd" + }, + { + label: "开工日期", + value: "kaigong" + }, + + { + label: "竣工日期", + value: "jungong" + }, + { + label: "备注", + value: "bz", + column: 1 + + }, + + { + label: "结果文件", + value: "result_file", + column: 1 + }, + + { + label: "项目负责人附件", + value: "master_annex", + column: 1 + }, + { + label: "部门负责人附件", + value: "bm_annex", + column: 1 + }, + { + label: "审核部附件", + value: "shb_annex", + column: 1 + }, + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/task_handling_three_level_review/index.vue b/src/views/task_handling_three_level_review/index.vue index 11c9072..b1a6528 100644 --- a/src/views/task_handling_three_level_review/index.vue +++ b/src/views/task_handling_three_level_review/index.vue @@ -89,6 +89,10 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + @@ -98,6 +102,7 @@ + @@ -105,14 +110,16 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { apiTaskHandlingThreeLevelReviewLists, apiTaskHandlingThreeLevelReviewDelete, apiTaskHandlingThreeLevelReviewDetail } from '@/api/task_handling_three_level_review' -import { timeFormat } from '@/utils/util' import feedback from '@/utils/feedback' import EditPopup from './edit.vue' +import detailConfig from './detail' + const editRef = shallowRef>() +const detailRef = ref('') // 是否显示编辑框 const showEdit = ref(false) - +const showDetail = ref(false) // 查询条件 const queryParams = reactive({ @@ -173,7 +180,15 @@ const handleDelete = async (id: number | any[]) => { await apiTaskHandlingThreeLevelReviewDelete({ id }) getLists() } +// 详情 +const handleDetail = async (id: any) => { + let res = await apiTaskHandlingThreeLevelReviewDetail({ id }) + showDetail.value = true + await nextTick() + detailRef.value?.open() + detailRef.value?.setFormData(res) +} + getLists() - diff --git a/src/views/task_type/detail.js b/src/views/task_type/detail.js new file mode 100644 index 0000000..1d29d37 --- /dev/null +++ b/src/views/task_type/detail.js @@ -0,0 +1,34 @@ +const detailConfig = { + title: "工程监理--第一次工地会议", + config: [ + { + label: "所属项目", + value: "project_name" + }, + { + label: "任务编号", + value: "num" + }, + { + label: "任务名称", + value: "name" + }, + { + label: "上级类别", + value: "superior_sort_text" + }, + { + label: "任务级次", + value: "level" + }, + { + label: "备注", + value: "remarks", + column: 1 + }, + + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/task_type/index.vue b/src/views/task_type/index.vue index 597d24c..78a9e11 100644 --- a/src/views/task_type/index.vue +++ b/src/views/task_type/index.vue @@ -65,6 +65,10 @@ @click="handleDelete(row.id)"> 删除 + + 详情 + + @@ -74,21 +78,28 @@ +