add
This commit is contained in:
parent
9d3c48cd45
commit
635b87490c
26
src/api/marketing_bid_evaluation.ts
Normal file
26
src/api/marketing_bid_evaluation.ts
Normal file
@ -0,0 +1,26 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 市场经营--投标管理--投标评审列表
|
||||
export function apiMarketingBidEvaluationLists(params: any) {
|
||||
return request.get({ url: '/marketing.marketing_bid_evaluation/lists', params })
|
||||
}
|
||||
|
||||
// 添加市场经营--投标管理--投标评审
|
||||
export function apiMarketingBidEvaluationAdd(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_bid_evaluation/add', params })
|
||||
}
|
||||
|
||||
// 编辑市场经营--投标管理--投标评审
|
||||
export function apiMarketingBidEvaluationEdit(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_bid_evaluation/edit', params })
|
||||
}
|
||||
|
||||
// 删除市场经营--投标管理--投标评审
|
||||
export function apiMarketingBidEvaluationDelete(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_bid_evaluation/delete', params })
|
||||
}
|
||||
|
||||
// 市场经营--投标管理--投标评审详情
|
||||
export function apiMarketingBidEvaluationDetail(params: any) {
|
||||
return request.get({ url: '/marketing.marketing_bid_evaluation/detail', params })
|
||||
}
|
26
src/api/marketing_business_opportunity.ts
Normal file
26
src/api/marketing_business_opportunity.ts
Normal file
@ -0,0 +1,26 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 市场经营--投标管理--业务机会列表
|
||||
export function apiMarketingBusinessOpportunityLists(params: any) {
|
||||
return request.get({ url: '/marketing.marketing_business_opportunity/lists', params })
|
||||
}
|
||||
|
||||
// 添加市场经营--投标管理--业务机会
|
||||
export function apiMarketingBusinessOpportunityAdd(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_business_opportunity/add', params })
|
||||
}
|
||||
|
||||
// 编辑市场经营--投标管理--业务机会
|
||||
export function apiMarketingBusinessOpportunityEdit(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_business_opportunity/edit', params })
|
||||
}
|
||||
|
||||
// 删除市场经营--投标管理--业务机会
|
||||
export function apiMarketingBusinessOpportunityDelete(params: any) {
|
||||
return request.post({ url: '/marketing.marketing_business_opportunity/delete', params })
|
||||
}
|
||||
|
||||
// 市场经营--投标管理--业务机会详情
|
||||
export function apiMarketingBusinessOpportunityDetail(params: any) {
|
||||
return request.get({ url: '/marketing.marketing_business_opportunity/detail', params })
|
||||
}
|
@ -51,11 +51,16 @@ export function usePaging(options: Options) {
|
||||
calcWidth: ({ column }: Icolumn) => {
|
||||
if (!pager.lists?.length) return column.label;
|
||||
|
||||
let propWidth = column.label.length * 14 + 27;
|
||||
let list = pager.lists.map(
|
||||
(item: Object) => (item as any)[column.property]
|
||||
let propWidth = column.label.length * 14 + 30;
|
||||
let list = pager.lists.map((item: Object) =>
|
||||
column.property.includes(
|
||||
"."
|
||||
) /**用于el-columnc传入深层次的对象属性,如projectInfo.contract */
|
||||
? (item as any)[column.property.split(".")[0]][
|
||||
column.property.split(".")[1]
|
||||
]
|
||||
: (item as any)[column.property]
|
||||
);
|
||||
|
||||
// start 遍历获取lits每一项所需要的宽度的最大值
|
||||
const maxLength = list.reduce((max, str) => {
|
||||
return Math.max(max, getWidthOfString(str));
|
||||
|
@ -39,17 +39,17 @@
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="申请编号" prop="num" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="关联项目" prop="projectInfo.project_name" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="盖章申请类型" prop="types" width="120">
|
||||
<el-table-column label="盖章申请类型" prop="types" width="120">
|
||||
<template #default="{ row }">
|
||||
<dict-value :options="dictData.apply_with_seal_type" :value="row.types" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :render-header="pager.calcWidth" label="文件类型" prop="filetype">
|
||||
<el-table-column label="文件类型" prop="filetype" :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<dict-value :options="dictData.apply_with_seal_file_type" :value="row.filetype" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :render-header="pager.calcWidth" label="骑缝盖章" prop="ridingseam">
|
||||
<el-table-column label="骑缝盖章" prop="ridingseam" :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<dict-value :options="dictData.isqfgz" :value="row.ridingseam" />
|
||||
</template>
|
||||
@ -57,28 +57,25 @@
|
||||
<el-table-column :render-header="pager.calcWidth" label="印章名称" prop="name" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="盖章次数" prop="frequency" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="限制次数" prop="limit" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="盖章人" prop="stampman" show-overflow-tooltip />
|
||||
<!-- <el-table-column :render-header="pager.calcWidth" label="项目负责人" prop="project_director"
|
||||
<el-table-column label="盖章人" prop="stampman" show-overflow-tooltip />
|
||||
<!-- <el-table-column label="项目负责人" prop="project_director"
|
||||
show-overflow-tooltip width="100" /> -->
|
||||
<el-table-column :render-header="pager.calcWidth" label="盖章内容" prop="content" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="印章是否外借" prop="loan" show-overflow-tooltip
|
||||
width="120">
|
||||
<el-table-column label="盖章内容" prop="content" show-overflow-tooltip width="100" />
|
||||
<el-table-column label="印章是否外借" prop="loan" show-overflow-tooltip width="120">
|
||||
<template #default="{ row }">
|
||||
{{ row.loan == 1 ? '是' : "否" }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :render-header="pager.calcWidth" label="印章借用日期" prop="borrow" show-overflow-tooltip
|
||||
width="120" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="结束借用日期" prop="returndate" show-overflow-tooltip
|
||||
width="120" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际借章日期" prop="sjborrow" show-overflow-tooltip
|
||||
width="120" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际借章人" prop="sjborrower" show-overflow-tooltip
|
||||
width="100" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际归还日期" prop="sjreturn" show-overflow-tooltip
|
||||
width="120" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际归还人" prop="returnee" show-overflow-tooltip
|
||||
width="100" />
|
||||
<el-table-column :render-header="pager.calcWidth" label="印章借用日期" prop="borrow" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="结束借用日期" prop="returndate"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际借章日期" prop="sjborrow"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际借章人" prop="sjborrower"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="实际归还日期" prop="sjreturn"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="实际归还人" prop="returnee" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="170" fixed="right" align="center">
|
||||
<template #default="{ row }">
|
||||
<el-button v-perms="['project_process_management.apply_with_seal/edit']" type="primary" link
|
||||
|
@ -19,6 +19,12 @@
|
||||
@click="showDialog = true" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<!-- <el-col :span="8">
|
||||
<el-form-item label="合同类型">
|
||||
<el-input v-model="formData.contract_type_text" clearable placeholder="系统自动获取" disabled />
|
||||
</el-form-item>
|
||||
</el-col> -->
|
||||
|
||||
|
||||
<el-col :span="8">
|
||||
<el-form-item label="咨询类型" prop="types">
|
||||
@ -239,6 +245,8 @@ const formData = reactive({
|
||||
project_name: "",
|
||||
contract_id: "",
|
||||
contract_name: "",
|
||||
contract_type: "",
|
||||
contract_type_text: "",
|
||||
types: "",
|
||||
industry: "",
|
||||
province: "",
|
||||
@ -282,7 +290,8 @@ const customEvent = (e) => {
|
||||
formData.starting = e.start_date
|
||||
formData.endtime = e.end_date
|
||||
formData.principal_name = e.project_director
|
||||
// formData.principal_name = e.project_director
|
||||
formData.contract_type = e.contract_type
|
||||
formData.contract_type_text = e.contract_type_text
|
||||
formData.invest = e.project_money
|
||||
formData.aunit_name = e.part_a_name
|
||||
formData.aunit = e.part_a
|
||||
|
@ -19,9 +19,12 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="项目编号" prop="project_num" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="项目编号" :render-header="pager.calcWidth" prop="project_num"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="项目名称" :render-header="pager.calcWidth" prop="project_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="合同名称" :render-header="pager.calcWidth" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="专业" width="200">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
@ -29,35 +32,35 @@
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="任务名称" prop="task_name" show-overflow-tooltip>
|
||||
<el-table-column label="任务名称" prop="task_name" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="task_name" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="任务类型" prop="task_type" show-overflow-tooltip>
|
||||
<el-table-column label="任务类型" prop="task_type" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="task_type" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="工程师" prop="engineer" show-overflow-tooltip>
|
||||
<el-table-column label="工程师" prop="engineer" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="engineer" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="造价金额" prop="zj_amount" show-overflow-tooltip>
|
||||
<el-table-column label="造价金额" prop="zj_amount" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="zj_amount" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="收款金额" prop="sk_amount" show-overflow-tooltip>
|
||||
<el-table-column label="收款金额" prop="sk_amount" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
@ -65,21 +68,21 @@
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="提成比例(%)" prop="tc_rate" show-overflow-tooltip>
|
||||
<el-table-column label="提成比例(%)" prop="tc_rate" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="tc_rate" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="其他加减项" prop="other_fee" show-overflow-tooltip>
|
||||
<el-table-column label="其他加减项" prop="other_fee" show-overflow-tooltip :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="other_fee" show-overflow-tooltip />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="应提成金额" prop="tc_amount" show-overflow-tooltip>
|
||||
<el-table-column label="应提成金额" prop="tc_amount" show-overflow-toolti :render-header="pager.calcWidth">
|
||||
<template #default="{ row }">
|
||||
<el-table :data="row.children" :show-header="false">
|
||||
<el-table-column prop="tc_amount" show-overflow-tooltip />
|
||||
|
@ -18,9 +18,12 @@
|
||||
<div class="mt-4">
|
||||
<el-table border :data="pager.lists">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="项目编号" prop="project_num" show-overflow-tooltip />
|
||||
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="项目编号" :render-header="pager.calcWidth" prop="project_num"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="项目名称" :render-header="pager.calcWidth" prop="project_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同名称" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="开始日期" prop="starting" show-overflow-tooltip />
|
||||
<el-table-column label="结束日期" prop="endtime" show-overflow-tooltip />
|
||||
<el-table-column label="咨询类型" prop="types" show-overflow-tooltip />
|
||||
|
@ -21,20 +21,32 @@
|
||||
<div class="mt-4">
|
||||
<el-table border :data="pager.lists">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="合同编号" prop="contract_num" show-overflow-tooltip />
|
||||
<el-table-column label="合同类型" prop="contract_type" show-overflow-tooltip />
|
||||
<el-table-column label="甲方签约单位" prop="part_a" show-overflow-tooltip />
|
||||
<el-table-column label="乙方签约单位" prop="part_b" show-overflow-tooltip />
|
||||
<el-table-column label="合同签订日期" prop="create_time" show-overflow-tooltip />
|
||||
<el-table-column label="合同计划开始日期" prop="start_date" show-overflow-tooltip />
|
||||
<el-table-column label="合同计划结束日期" prop="end_date" show-overflow-tooltip />
|
||||
<el-table-column label="工程总投资(万)" prop="project_money" show-overflow-tooltip />
|
||||
<el-table-column label="合同签订金额" prop="sign_money" show-overflow-tooltip />
|
||||
<el-table-column label="已开票金额" prop="total_invoice_amount" show-overflow-tooltip />
|
||||
<el-table-column label="已到账金额" prop="total_refund_amount" show-overflow-tooltip />
|
||||
<el-table-column label="已结算金额" prop="total_settlement_amount" show-overflow-tooltip />
|
||||
<el-table-column label="应收账款" prop="total_collection_amount" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同名称" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同编号" prop="contract_num"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同类型" prop="contract_type"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="甲方签约单位" prop="part_a" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="乙方签约单位" prop="part_b" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同签订日期" prop="create_time"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同计划开始日期" prop="start_date"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同计划结束日期" prop="end_date"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="工程总投资" prop="project_money"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同签订金额" prop="sign_money"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="已开票金额" prop="total_invoice_amount"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="已到账金额" prop="total_refund_amount"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="已结算金额" prop="total_settlement_amount"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="应收账款" prop="total_collection_amount"
|
||||
show-overflow-tooltip />
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="flex justify-end mt-4">
|
||||
|
@ -20,26 +20,30 @@
|
||||
<div class="mt-4">
|
||||
<el-table border :data="pager.lists">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="项目编号" prop="project_num" show-overflow-tooltip />
|
||||
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
|
||||
<el-table-column label="关联合同" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="咨询类型" prop="types" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="项目编号" prop="project_num"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="项目名称" prop="project_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="关联合同" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="咨询类型" prop="types" show-overflow-tooltip />
|
||||
<el-table-column label="行业" prop="industry_nature" show-overflow-tooltip />
|
||||
<el-table-column label="项目负责人" prop="project_director" show-overflow-tooltip />
|
||||
<el-table-column label="委托单位" prop="aunit" show-overflow-tooltip />
|
||||
<el-table-column label="所在省份" prop="province" show-overflow-tooltip />
|
||||
<el-table-column label="所在市区" prop="city" show-overflow-tooltip />
|
||||
<el-table-column label="项目负责人" :render-header="pager.calcWidth" prop="project_director"
|
||||
show-overflow-tooltip />
|
||||
<!-- <el-table-column label="委托单位" prop="aunit" show-overflow-tooltip /> -->
|
||||
<el-table-column label="所在省份" prop="province" show-overflow-tooltip :render-header="pager.calcWidth" />
|
||||
<el-table-column label="所在市区" prop="city" show-overflow-tooltip :render-header="pager.calcWidth" />
|
||||
<!-- <el-table-column label="进度状态" prop="working_hours" show-overflow-tooltip /> -->
|
||||
<el-table-column label="计划进度" prop="working_hours" show-overflow-tooltip align='center'>
|
||||
<el-table-column label="计划开始日期" prop="starting" show-overflow-tooltip />
|
||||
<el-table-column label="计划结束日期" prop="endtime" show-overflow-tooltip />
|
||||
<el-table-column label="计划工期(天)" prop="jhgq" show-overflow-tooltip />
|
||||
<el-table-column label="计划开始日期" prop="starting" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="计划结束日期" prop="endtime" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="计划工期" prop="jhgq" show-overflow-tooltip width="100" />
|
||||
</el-table-column>
|
||||
<el-table-column label="实际进度" prop="working_hours" show-overflow-tooltip align='center'>
|
||||
<el-table-column label="实际开始日期" prop="actual_starting" show-overflow-tooltip />
|
||||
<el-table-column label="实际结束日期" prop="actual_endtime" show-overflow-tooltip />
|
||||
<el-table-column label="实际工期(天)" prop="duration" show-overflow-tooltip />
|
||||
<el-table-column label="已完成进度(%)" prop="done_progress" show-overflow-tooltip />
|
||||
<el-table-column label="实际开始日期" prop="actual_starting" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="实际结束日期" prop="actual_endtime" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="实际工期" prop="duration" show-overflow-tooltip width="120" />
|
||||
<el-table-column label="已完成进度(%)" prop="done_progress" show-overflow-tooltip width="120" />
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
|
265
src/views/marketing_bid_evaluation/edit.vue
Normal file
265
src/views/marketing_bid_evaluation/edit.vue
Normal file
@ -0,0 +1,265 @@
|
||||
<template>
|
||||
<div class="edit-popup">
|
||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
|
||||
<el-form ref="formRef" :model="formData" label-width="90px" :rules="formRules">
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="业务机会id" prop="business_opportunity_id">
|
||||
<el-input v-model="formData.business_opportunity_id" clearable placeholder="请输入业务机会id" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="招标方式" prop="bid_type">
|
||||
<el-input v-model="formData.bid_type" clearable placeholder="请输入招标方式" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标性质" prop="bid__nature">
|
||||
<el-input v-model="formData.bid__nature" clearable placeholder="请输入投标性质" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标项目编号" prop="bid_code">
|
||||
<el-input v-model="formData.bid_code" clearable placeholder="请输入投标项目编号" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标保证金" prop="bid_margin">
|
||||
<el-input v-model="formData.bid_margin" clearable placeholder="请输入投标保证金" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="报名和标书费" prop="bid_amount">
|
||||
<el-input v-model="formData.bid_amount" clearable placeholder="请输入报名和标书费" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="报价范围" prop="quotation_amount">
|
||||
<el-input v-model="formData.quotation_amount" clearable placeholder="请输入报价范围" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="报名截止日期" prop="end_date">
|
||||
<el-input v-model="formData.end_date" clearable placeholder="请输入报名截止日期" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标日期" prop="bid_date">
|
||||
<el-input v-model="formData.bid_date" clearable placeholder="请输入投标日期" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="服务工期" prop="service_duration">
|
||||
<el-input v-model="formData.service_duration" clearable placeholder="请输入服务工期" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="投标地点" prop="bid_address">
|
||||
<el-input v-model="formData.bid_address" clearable placeholder="请输入投标地点" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="招标代理单位" prop="bid_agency">
|
||||
<el-input v-model="formData.bid_agency" clearable placeholder="请输入招标代理单位" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="联系地址" prop="bid_agency_address">
|
||||
<el-input v-model="formData.bid_agency_address" clearable placeholder="请输入联系地址" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="联系人" prop="bid_agency_contacts">
|
||||
<el-input v-model="formData.bid_agency_contacts" clearable placeholder="请输入联系人" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="联系方式" prop="bid_agency_telephone">
|
||||
<el-input v-model="formData.bid_agency_telephone" clearable placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="附件" prop="annex">
|
||||
<upload-annex :annex="formData.annex"></upload-annex>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="marketingBidEvaluationEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
import { apiMarketingBidEvaluationAdd, apiMarketingBidEvaluationEdit, apiMarketingBidEvaluationDetail } from '@/api/marketing_bid_evaluation'
|
||||
import type { PropType } from 'vue'
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
default: () => ({})
|
||||
}
|
||||
})
|
||||
const emit = defineEmits(['success', 'close'])
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
const mode = ref('add')
|
||||
|
||||
|
||||
// 弹窗标题
|
||||
const popupTitle = computed(() => {
|
||||
return mode.value == 'edit' ? '编辑市场经营--投标管理--投标评审' : '新增市场经营--投标管理--投标评审'
|
||||
})
|
||||
|
||||
// 表单数据
|
||||
const formData = reactive({
|
||||
id: '',
|
||||
business_opportunity_id: '',
|
||||
bid_type: '',
|
||||
bid__nature: '',
|
||||
bid_code: '',
|
||||
bid_margin: '',
|
||||
bid_amount: '',
|
||||
quotation_amount: '',
|
||||
end_date: '',
|
||||
bid_date: '',
|
||||
service_duration: '',
|
||||
bid_address: '',
|
||||
bid_agency: '',
|
||||
bid_agency_address: '',
|
||||
bid_agency_contacts: '',
|
||||
bid_agency_telephone: '',
|
||||
annex: '',
|
||||
})
|
||||
|
||||
|
||||
// 表单验证
|
||||
const formRules = reactive<any>({
|
||||
business_opportunity_id: [{
|
||||
required: true,
|
||||
message: '请输入业务机会id',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_type: [{
|
||||
required: true,
|
||||
message: '请输入招标方式',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid__nature: [{
|
||||
required: true,
|
||||
message: '请输入投标性质',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_code: [{
|
||||
required: true,
|
||||
message: '请输入投标项目编号',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_margin: [{
|
||||
required: true,
|
||||
message: '请输入投标保证金',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_amount: [{
|
||||
required: true,
|
||||
message: '请输入报名和标书费',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
quotation_amount: [{
|
||||
required: true,
|
||||
message: '请输入报价范围',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
end_date: [{
|
||||
required: true,
|
||||
message: '请输入报名截止日期',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_date: [{
|
||||
required: true,
|
||||
message: '请输入投标日期',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
service_duration: [{
|
||||
required: true,
|
||||
message: '请输入服务工期',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_address: [{
|
||||
required: true,
|
||||
message: '请输入投标地点',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_agency: [{
|
||||
required: true,
|
||||
message: '请输入招标代理单位',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_agency_address: [{
|
||||
required: true,
|
||||
message: '请输入联系地址',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_agency_contacts: [{
|
||||
required: true,
|
||||
message: '请输入联系人',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_agency_telephone: [{
|
||||
required: true,
|
||||
message: '请输入联系方式',
|
||||
trigger: ['blur']
|
||||
}]
|
||||
})
|
||||
|
||||
|
||||
// 获取详情
|
||||
const setFormData = async (data: Record<any, any>) => {
|
||||
for (const key in formData) {
|
||||
if (data[key] != null && data[key] != undefined) {
|
||||
//@ts-ignore
|
||||
formData[key] = data[key]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
const getDetail = async (row: Record<string, any>) => {
|
||||
const data = await apiMarketingBidEvaluationDetail({
|
||||
id: row.id
|
||||
})
|
||||
setFormData(data)
|
||||
}
|
||||
|
||||
|
||||
// 提交按钮
|
||||
const handleSubmit = async () => {
|
||||
await formRef.value?.validate()
|
||||
const data = { ...formData, }
|
||||
mode.value == 'edit'
|
||||
? await apiMarketingBidEvaluationEdit(data)
|
||||
: await apiMarketingBidEvaluationAdd(data)
|
||||
popupRef.value?.close()
|
||||
emit('success')
|
||||
}
|
||||
|
||||
//打开弹窗
|
||||
const open = (type = 'add') => {
|
||||
mode.value = type
|
||||
popupRef.value?.open()
|
||||
}
|
||||
|
||||
// 关闭回调
|
||||
const handleClose = () => {
|
||||
emit('close')
|
||||
}
|
||||
|
||||
|
||||
|
||||
defineExpose({
|
||||
open,
|
||||
setFormData,
|
||||
getDetail
|
||||
})
|
||||
</script>
|
138
src/views/marketing_bid_evaluation/index.vue
Normal file
138
src/views/marketing_bid_evaluation/index.vue
Normal file
@ -0,0 +1,138 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="!border-none mb-4" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||
<el-form-item label="业务机会id" prop="business_opportunity_id">
|
||||
<el-input class="w-[280px]" v-model="queryParams.business_opportunity_id" clearable
|
||||
placeholder="请输入业务机会id" />
|
||||
</el-form-item>
|
||||
<el-form-item label="招标方式" prop="bid_type">
|
||||
<el-input class="w-[280px]" v-model="queryParams.bid_type" clearable placeholder="请输入招标方式" />
|
||||
</el-form-item>
|
||||
<el-form-item label="投标性质" prop="bid__nature">
|
||||
<el-input class="w-[280px]" v-model="queryParams.bid__nature" clearable placeholder="请输入投标性质" />
|
||||
</el-form-item>
|
||||
<el-form-item label="投标项目编号" prop="bid_code">
|
||||
<el-input class="w-[280px]" v-model="queryParams.bid_code" clearable placeholder="请输入投标项目编号" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="resetPage">查询</el-button>
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
<el-button v-perms="['marketing.marketing_bid_evaluation/add']" type="primary" @click="handleAdd">
|
||||
<template #icon>
|
||||
<icon name="el-icon-Plus" />
|
||||
</template>
|
||||
新增
|
||||
</el-button>
|
||||
<el-button v-perms="['marketing.marketing_bid_evaluation/delete']" :disabled="!selectData.length"
|
||||
@click="handleDelete(selectData)">
|
||||
删除
|
||||
</el-button>
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="业务机会id" prop="business_opportunity_id" show-overflow-tooltip />
|
||||
<el-table-column label="招标方式" prop="bid_type" show-overflow-tooltip />
|
||||
<el-table-column label="投标性质" prop="bid__nature" show-overflow-tooltip />
|
||||
<el-table-column label="投标项目编号" prop="bid_code" show-overflow-tooltip />
|
||||
<el-table-column label="投标保证金" prop="bid_margin" show-overflow-tooltip />
|
||||
<el-table-column label="报名和标书费" prop="bid_amount" show-overflow-tooltip />
|
||||
<el-table-column label="报价范围" prop="quotation_amount" show-overflow-tooltip />
|
||||
<el-table-column label="报名截止日期" prop="end_date" show-overflow-tooltip />
|
||||
<el-table-column label="投标日期" prop="bid_date" show-overflow-tooltip />
|
||||
<el-table-column label="服务工期" prop="service_duration" show-overflow-tooltip />
|
||||
<el-table-column label="投标地点" prop="bid_address" show-overflow-tooltip />
|
||||
<el-table-column label="招标代理单位" prop="bid_agency" show-overflow-tooltip />
|
||||
<el-table-column label="联系地址" prop="bid_agency_address" show-overflow-tooltip />
|
||||
<el-table-column label="联系人" prop="bid_agency_contacts" show-overflow-tooltip />
|
||||
<el-table-column label="联系方式" prop="bid_agency_telephone" show-overflow-tooltip />
|
||||
<el-table-column label="附件" prop="annex" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="120" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<el-button v-perms="['marketing.marketing_bid_evaluation/edit']" type="primary" link
|
||||
@click="handleEdit(row)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button v-perms="['marketing.marketing_bid_evaluation/delete']" type="danger" link
|
||||
@click="handleDelete(row.id)">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="flex mt-4 justify-end">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
</el-card>
|
||||
<edit-popup v-if="showEdit" ref="editRef" :dict-data="dictData" @success="getLists" @close="showEdit = false" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="marketingBidEvaluationLists">
|
||||
import { usePaging } from '@/hooks/usePaging'
|
||||
import { useDictData } from '@/hooks/useDictOptions'
|
||||
import { apiMarketingBidEvaluationLists, apiMarketingBidEvaluationDelete } from '@/api/marketing_bid_evaluation'
|
||||
import { timeFormat } from '@/utils/util'
|
||||
import feedback from '@/utils/feedback'
|
||||
import EditPopup from './edit.vue'
|
||||
|
||||
const editRef = shallowRef<InstanceType<typeof EditPopup>>()
|
||||
// 是否显示编辑框
|
||||
const showEdit = ref(false)
|
||||
|
||||
|
||||
// 查询条件
|
||||
const queryParams = reactive({
|
||||
business_opportunity_id: '',
|
||||
bid_type: '',
|
||||
bid__nature: '',
|
||||
bid_code: ''
|
||||
})
|
||||
|
||||
// 选中数据
|
||||
const selectData = ref<any[]>([])
|
||||
|
||||
// 表格选择后回调事件
|
||||
const handleSelectionChange = (val: any[]) => {
|
||||
selectData.value = val.map(({ id }) => id)
|
||||
}
|
||||
|
||||
// 获取字典数据
|
||||
const { dictData } = useDictData('')
|
||||
|
||||
// 分页相关
|
||||
const { pager, getLists, resetParams, resetPage } = usePaging({
|
||||
fetchFun: apiMarketingBidEvaluationLists,
|
||||
params: queryParams
|
||||
})
|
||||
|
||||
// 添加
|
||||
const handleAdd = async () => {
|
||||
showEdit.value = true
|
||||
await nextTick()
|
||||
editRef.value?.open('add')
|
||||
}
|
||||
|
||||
// 编辑
|
||||
const handleEdit = async (data: any) => {
|
||||
showEdit.value = true
|
||||
await nextTick()
|
||||
editRef.value?.open('edit')
|
||||
editRef.value?.setFormData(data)
|
||||
}
|
||||
|
||||
// 删除
|
||||
const handleDelete = async (id: number | any[]) => {
|
||||
await feedback.confirm('确定要删除?')
|
||||
await apiMarketingBidEvaluationDelete({ id })
|
||||
getLists()
|
||||
}
|
||||
|
||||
getLists()
|
||||
</script>
|
||||
|
@ -48,9 +48,9 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="机构名称" prop="org_name" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="机构名称" prop="org_name" show-overflow-tooltip />
|
||||
<el-table-column label="法定代表人" prop="fddbr" show-overflow-tooltip />
|
||||
<el-table-column label="联系电话" prop="telephone" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="联系电话" prop="telephone" show-overflow-tooltip />
|
||||
<el-table-column label="机构注册地址" prop="jgzcdz" show-overflow-tooltip />
|
||||
<el-table-column label="备案开始期" prop="baksq" show-overflow-tooltip />
|
||||
<el-table-column label="备案结束期" prop="bajsq" show-overflow-tooltip />
|
||||
|
268
src/views/marketing_business_opportunity/edit.vue
Normal file
268
src/views/marketing_business_opportunity/edit.vue
Normal file
@ -0,0 +1,268 @@
|
||||
<template>
|
||||
<div class="edit-popup">
|
||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
|
||||
<el-form ref="formRef" :model="formData" label-width="90px" :rules="formRules">
|
||||
<el-form-item label="项目名称" prop="project_name">
|
||||
<el-input v-model="formData.project_name" clearable placeholder="请输入项目名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="项目编号" prop="project_code">
|
||||
<el-input v-model="formData.project_code" clearable placeholder="请输入项目编号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="预计招标日期" prop="bid_date">
|
||||
<el-input v-model="formData.bid_date" clearable placeholder="请输入预计招标日期" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建设单位" prop="custom_id">
|
||||
<el-input v-model="formData.custom_id" clearable placeholder="请输入建设单位" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建设管理单位" prop="management_company">
|
||||
<el-input v-model="formData.management_company" clearable placeholder="请输入建设管理单位" />
|
||||
</el-form-item>
|
||||
<el-form-item label="业务性质" prop="business_nature">
|
||||
<el-input v-model="formData.business_nature" clearable placeholder="请输入业务性质" />
|
||||
</el-form-item>
|
||||
<el-form-item label="行业性质" prop="industry_nature">
|
||||
<el-input v-model="formData.industry_nature" clearable placeholder="请输入行业性质" />
|
||||
</el-form-item>
|
||||
<el-form-item label="消息来源" prop="info_sources">
|
||||
<el-input v-model="formData.info_sources" clearable placeholder="请输入消息来源" />
|
||||
</el-form-item>
|
||||
<el-form-item label="资金来源" prop="fund_sources">
|
||||
<el-input v-model="formData.fund_sources" clearable placeholder="请输入资金来源" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建设区域" prop="const_area">
|
||||
<el-input v-model="formData.const_area" clearable placeholder="请输入建设区域" />
|
||||
</el-form-item>
|
||||
<el-form-item label="项目地点" prop="project_address">
|
||||
<el-input v-model="formData.project_address" clearable placeholder="请输入项目地点" />
|
||||
</el-form-item>
|
||||
<el-form-item label="工程总投资" prop="total_investment">
|
||||
<el-input v-model="formData.total_investment" clearable placeholder="请输入工程总投资" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建安投资额" prop="jianan_investment">
|
||||
<el-input v-model="formData.jianan_investment" clearable placeholder="请输入建安投资额" />
|
||||
</el-form-item>
|
||||
<el-form-item label="工程概况" prop="project_overview">
|
||||
<el-input v-model="formData.project_overview" clearable placeholder="请输入工程概况" />
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="formData.remark" clearable placeholder="请输入备注" />
|
||||
</el-form-item>
|
||||
<el-form-item label="负责人" prop="head">
|
||||
<el-input v-model="formData.head" clearable placeholder="请输入负责人" />
|
||||
</el-form-item>
|
||||
<el-form-item label="负责部门" prop="dept">
|
||||
<el-input v-model="formData.dept" clearable placeholder="请输入负责部门" />
|
||||
</el-form-item>
|
||||
<el-form-item label="分管领导" prop="leader">
|
||||
<el-input v-model="formData.leader" clearable placeholder="请输入分管领导" />
|
||||
</el-form-item>
|
||||
<el-form-item label="联系人信息" prop="contacts">
|
||||
<el-input v-model="formData.contacts" clearable placeholder="请输入联系人信息" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件" prop="annex">
|
||||
<el-input v-model="formData.annex" clearable placeholder="请输入附件" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="marketingBusinessOpportunityEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import Popup from '@/components/popup/index.vue'
|
||||
import { apiMarketingBusinessOpportunityAdd, apiMarketingBusinessOpportunityEdit, apiMarketingBusinessOpportunityDetail } from '@/api/marketing_business_opportunity'
|
||||
import { timeFormat } from '@/utils/util'
|
||||
import type { PropType } from 'vue'
|
||||
defineProps({
|
||||
dictData: {
|
||||
type: Object as PropType<Record<string, any[]>>,
|
||||
default: () => ({})
|
||||
}
|
||||
})
|
||||
const emit = defineEmits(['success', 'close'])
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const popupRef = shallowRef<InstanceType<typeof Popup>>()
|
||||
const mode = ref('add')
|
||||
|
||||
|
||||
// 弹窗标题
|
||||
const popupTitle = computed(() => {
|
||||
return mode.value == 'edit' ? '编辑市场经营--投标管理--业务机会' : '新增市场经营--投标管理--业务机会'
|
||||
})
|
||||
|
||||
// 表单数据
|
||||
const formData = reactive({
|
||||
id: '',
|
||||
project_name: '',
|
||||
project_code: '',
|
||||
bid_date: '',
|
||||
custom_id: '',
|
||||
management_company: '',
|
||||
business_nature: '',
|
||||
industry_nature: '',
|
||||
info_sources: '',
|
||||
fund_sources: '',
|
||||
const_area: '',
|
||||
project_address: '',
|
||||
total_investment: '',
|
||||
jianan_investment: '',
|
||||
project_overview: '',
|
||||
remark: '',
|
||||
head: '',
|
||||
dept: '',
|
||||
leader: '',
|
||||
contacts: '',
|
||||
annex: '',
|
||||
})
|
||||
|
||||
|
||||
// 表单验证
|
||||
const formRules = reactive<any>({
|
||||
project_name: [{
|
||||
required: true,
|
||||
message: '请输入项目名称',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
project_code: [{
|
||||
required: true,
|
||||
message: '请输入项目编号',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
bid_date: [{
|
||||
required: true,
|
||||
message: '请输入预计招标日期',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
custom_id: [{
|
||||
required: true,
|
||||
message: '请输入建设单位',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
management_company: [{
|
||||
required: true,
|
||||
message: '请输入建设管理单位',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
business_nature: [{
|
||||
required: true,
|
||||
message: '请输入业务性质',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
industry_nature: [{
|
||||
required: true,
|
||||
message: '请输入行业性质',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
info_sources: [{
|
||||
required: true,
|
||||
message: '请输入消息来源',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
fund_sources: [{
|
||||
required: true,
|
||||
message: '请输入资金来源',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
const_area: [{
|
||||
required: true,
|
||||
message: '请输入建设区域',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
project_address: [{
|
||||
required: true,
|
||||
message: '请输入项目地点',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
total_investment: [{
|
||||
required: true,
|
||||
message: '请输入工程总投资',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
jianan_investment: [{
|
||||
required: true,
|
||||
message: '请输入建安投资额',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
project_overview: [{
|
||||
required: true,
|
||||
message: '请输入工程概况',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
remark: [{
|
||||
required: true,
|
||||
message: '请输入备注',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
head: [{
|
||||
required: true,
|
||||
message: '请输入负责人',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
dept: [{
|
||||
required: true,
|
||||
message: '请输入负责部门',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
leader: [{
|
||||
required: true,
|
||||
message: '请输入分管领导',
|
||||
trigger: ['blur']
|
||||
}],
|
||||
contacts: [{
|
||||
required: true,
|
||||
message: '请输入联系人信息',
|
||||
trigger: ['blur']
|
||||
}]
|
||||
})
|
||||
|
||||
|
||||
// 获取详情
|
||||
const setFormData = async (data: Record<any, any>) => {
|
||||
for (const key in formData) {
|
||||
if (data[key] != null && data[key] != undefined) {
|
||||
//@ts-ignore
|
||||
formData[key] = data[key]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
const getDetail = async (row: Record<string, any>) => {
|
||||
const data = await apiMarketingBusinessOpportunityDetail({
|
||||
id: row.id
|
||||
})
|
||||
setFormData(data)
|
||||
}
|
||||
|
||||
|
||||
// 提交按钮
|
||||
const handleSubmit = async () => {
|
||||
await formRef.value?.validate()
|
||||
const data = { ...formData, }
|
||||
mode.value == 'edit'
|
||||
? await apiMarketingBusinessOpportunityEdit(data)
|
||||
: await apiMarketingBusinessOpportunityAdd(data)
|
||||
popupRef.value?.close()
|
||||
emit('success')
|
||||
}
|
||||
|
||||
//打开弹窗
|
||||
const open = (type = 'add') => {
|
||||
mode.value = type
|
||||
popupRef.value?.open()
|
||||
}
|
||||
|
||||
// 关闭回调
|
||||
const handleClose = () => {
|
||||
emit('close')
|
||||
}
|
||||
|
||||
|
||||
|
||||
defineExpose({
|
||||
open,
|
||||
setFormData,
|
||||
getDetail
|
||||
})
|
||||
</script>
|
161
src/views/marketing_business_opportunity/index.vue
Normal file
161
src/views/marketing_business_opportunity/index.vue
Normal file
@ -0,0 +1,161 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="!border-none mb-4" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" label-width="">
|
||||
<el-form-item label="项目名称" prop="project_name">
|
||||
<el-input class="w-[280px]" v-model="queryParams.project_name" clearable placeholder="请输入项目名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="项目编号" prop="project_code">
|
||||
<el-input class="w-[280px]" v-model="queryParams.project_code" clearable placeholder="请输入项目编号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建设单位" prop="custom_id">
|
||||
<el-input class="w-[280px]" v-model="queryParams.custom_id" clearable placeholder="请输入建设单位" />
|
||||
</el-form-item>
|
||||
<el-form-item label="业务性质" prop="business_nature">
|
||||
<el-input class="w-[280px]" v-model="queryParams.business_nature" clearable placeholder="请输入业务性质" />
|
||||
</el-form-item>
|
||||
<el-form-item label="行业性质" prop="industry_nature">
|
||||
<el-input class="w-[280px]" v-model="queryParams.industry_nature" clearable placeholder="请输入行业性质" />
|
||||
</el-form-item>
|
||||
<el-form-item label="消息来源" prop="info_sources">
|
||||
<el-input class="w-[280px]" v-model="queryParams.info_sources" clearable placeholder="请输入消息来源" />
|
||||
</el-form-item>
|
||||
<el-form-item label="资金来源" prop="fund_sources">
|
||||
<el-input class="w-[280px]" v-model="queryParams.fund_sources" clearable placeholder="请输入资金来源" />
|
||||
</el-form-item>
|
||||
<el-form-item label="建设区域" prop="const_area">
|
||||
<el-input class="w-[280px]" v-model="queryParams.const_area" clearable placeholder="请输入建设区域" />
|
||||
</el-form-item>
|
||||
<el-form-item label="工程总投资" prop="total_investment">
|
||||
<el-input class="w-[280px]" v-model="queryParams.total_investment" clearable placeholder="请输入工程总投资" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="resetPage">查询</el-button>
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
<el-button v-perms="['marketing.marketing_business_opportunity/add']" type="primary" @click="handleAdd">
|
||||
<template #icon>
|
||||
<icon name="el-icon-Plus" />
|
||||
</template>
|
||||
新增
|
||||
</el-button>
|
||||
<el-button v-perms="['marketing.marketing_business_opportunity/delete']" :disabled="!selectData.length"
|
||||
@click="handleDelete(selectData)">
|
||||
删除
|
||||
</el-button>
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
|
||||
<el-table-column label="项目编号" prop="project_code" show-overflow-tooltip />
|
||||
<el-table-column label="预计招标日期" prop="bid_date" show-overflow-tooltip />
|
||||
<el-table-column label="建设单位" prop="custom_id" show-overflow-tooltip />
|
||||
<el-table-column label="建设管理单位" prop="management_company" show-overflow-tooltip />
|
||||
<el-table-column label="业务性质" prop="business_nature" show-overflow-tooltip />
|
||||
<el-table-column label="行业性质" prop="industry_nature" show-overflow-tooltip />
|
||||
<el-table-column label="消息来源" prop="info_sources" show-overflow-tooltip />
|
||||
<el-table-column label="资金来源" prop="fund_sources" show-overflow-tooltip />
|
||||
<el-table-column label="建设区域" prop="const_area" show-overflow-tooltip />
|
||||
<el-table-column label="项目地点" prop="project_address" show-overflow-tooltip />
|
||||
<el-table-column label="工程总投资" prop="total_investment" show-overflow-tooltip />
|
||||
<el-table-column label="建安投资额" prop="jianan_investment" show-overflow-tooltip />
|
||||
<el-table-column label="工程概况" prop="project_overview" show-overflow-tooltip />
|
||||
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
|
||||
<el-table-column label="负责人" prop="head" show-overflow-tooltip />
|
||||
<el-table-column label="负责部门" prop="dept" show-overflow-tooltip />
|
||||
<el-table-column label="分管领导" prop="leader" show-overflow-tooltip />
|
||||
<el-table-column label="联系人信息" prop="contacts" show-overflow-tooltip />
|
||||
<el-table-column label="附件" prop="annex" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="120" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<el-button v-perms="['marketing.marketing_business_opportunity/edit']" type="primary" link
|
||||
@click="handleEdit(row)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button v-perms="['marketing.marketing_business_opportunity/delete']" type="danger" link
|
||||
@click="handleDelete(row.id)">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="flex mt-4 justify-end">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
</el-card>
|
||||
<edit-popup v-if="showEdit" ref="editRef" :dict-data="dictData" @success="getLists" @close="showEdit = false" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="marketingBusinessOpportunityLists">
|
||||
import { usePaging } from '@/hooks/usePaging'
|
||||
import { useDictData } from '@/hooks/useDictOptions'
|
||||
import { apiMarketingBusinessOpportunityLists, apiMarketingBusinessOpportunityDelete } from '@/api/marketing_business_opportunity'
|
||||
import { timeFormat } from '@/utils/util'
|
||||
import feedback from '@/utils/feedback'
|
||||
import EditPopup from './edit.vue'
|
||||
|
||||
const editRef = shallowRef<InstanceType<typeof EditPopup>>()
|
||||
// 是否显示编辑框
|
||||
const showEdit = ref(false)
|
||||
|
||||
|
||||
// 查询条件
|
||||
const queryParams = reactive({
|
||||
project_name: '',
|
||||
project_code: '',
|
||||
custom_id: '',
|
||||
business_nature: '',
|
||||
industry_nature: '',
|
||||
info_sources: '',
|
||||
fund_sources: '',
|
||||
const_area: '',
|
||||
total_investment: ''
|
||||
})
|
||||
|
||||
// 选中数据
|
||||
const selectData = ref<any[]>([])
|
||||
|
||||
// 表格选择后回调事件
|
||||
const handleSelectionChange = (val: any[]) => {
|
||||
selectData.value = val.map(({ id }) => id)
|
||||
}
|
||||
|
||||
// 获取字典数据
|
||||
const { dictData } = useDictData('')
|
||||
|
||||
// 分页相关
|
||||
const { pager, getLists, resetParams, resetPage } = usePaging({
|
||||
fetchFun: apiMarketingBusinessOpportunityLists,
|
||||
params: queryParams
|
||||
})
|
||||
|
||||
// 添加
|
||||
const handleAdd = async () => {
|
||||
showEdit.value = true
|
||||
await nextTick()
|
||||
editRef.value?.open('add')
|
||||
}
|
||||
|
||||
// 编辑
|
||||
const handleEdit = async (data: any) => {
|
||||
showEdit.value = true
|
||||
await nextTick()
|
||||
editRef.value?.open('edit')
|
||||
editRef.value?.setFormData(data)
|
||||
}
|
||||
|
||||
// 删除
|
||||
const handleDelete = async (id: number | any[]) => {
|
||||
await feedback.confirm('确定要删除?')
|
||||
await apiMarketingBusinessOpportunityDelete({ id })
|
||||
getLists()
|
||||
}
|
||||
|
||||
getLists()
|
||||
</script>
|
||||
|
@ -44,8 +44,9 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="回访编号" prop="code" show-overflow-tooltip />
|
||||
<el-table-column label="合同名称" :render-header="pager.calcWidth" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="回访编号" :render-header="pager.calcWidth" prop="code" show-overflow-tooltip />
|
||||
<el-table-column label="回访方式" prop="return_visit_type_text" show-overflow-tooltip />
|
||||
<el-table-column label="客户名称" prop="custom_name" show-overflow-tooltip />
|
||||
<el-table-column label="客户负责人" prop="custom_head" show-overflow-tooltip />
|
||||
|
@ -43,15 +43,19 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="协议名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="协议编号" prop="contract_code" show-overflow-tooltip />
|
||||
<el-table-column label="甲方单位" prop="part_a_name" show-overflow-tooltip />
|
||||
<el-table-column label="协议名称" :render-header="pager.calcWidth" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="协议编号" :render-header="pager.calcWidth" prop="contract_code"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="甲方单位" :render-header="pager.calcWidth" prop="part_a_name"
|
||||
show-overflow-tooltip /> :render-header="pager.calcWidth"
|
||||
<el-table-column label="乙方单位" prop="part_b" show-overflow-tooltip />
|
||||
<el-table-column label="协议性质" prop="agreement_nature_text" show-overflow-tooltip />
|
||||
<el-table-column label="业务性质" prop="business_nature_text" show-overflow-tooltip />
|
||||
<el-table-column label="签订部门" prop="signed_dept_name" show-overflow-tooltip />
|
||||
<el-table-column label="签订负责人" prop="signed_head_name" show-overflow-tooltip />
|
||||
<el-table-column label="签订时间" prop="create_time" show-overflow-tooltip />
|
||||
<el-table-column label="签订时间" :render-header="pager.calcWidth" prop="create_time"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="审核状态" prop="approve_status_text" show-overflow-tooltip />
|
||||
<el-table-column label="移交状态" prop="review_status_text" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="170" fixed="right">
|
||||
|
@ -34,7 +34,8 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同名称" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="录入人" prop="create_user" show-overflow-tooltip />
|
||||
<el-table-column label="录入日期" prop="create_time" show-overflow-tooltip />
|
||||
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
|
||||
|
@ -38,7 +38,8 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column :render-header="pager.calcWidth" label="合同名称" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="合同编号" prop="contract_code" show-overflow-tooltip />
|
||||
<el-table-column label="建设区域" prop="const_area" show-overflow-tooltip />
|
||||
<el-table-column label="业务性质" prop="business_nature" show-overflow-tooltip />
|
||||
|
@ -34,17 +34,27 @@
|
||||
<div class="mt-4">
|
||||
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" />
|
||||
<el-table-column label="协议名称" prop="contract_name" show-overflow-tooltip />
|
||||
<el-table-column label="协议编号" prop="contract_code" show-overflow-tooltip />
|
||||
<el-table-column label="关联主合同" prop="supplementary_agreement_name" show-overflow-tooltip />
|
||||
<el-table-column label="甲方单位" prop="part_a_name" show-overflow-tooltip />
|
||||
<el-table-column label="乙方单位" prop="part_b" show-overflow-tooltip />
|
||||
<el-table-column label="签订金额" prop="signed_amount" show-overflow-tooltip />
|
||||
<el-table-column label="签订负责人" prop="signed_head_name" show-overflow-tooltip />
|
||||
<el-table-column label="业务性质" prop="business_nature_text" show-overflow-tooltip />
|
||||
<el-table-column label="签订时间" prop="create_time" show-overflow-tooltip />
|
||||
<el-table-column label="审核状态" prop="approve_status_text" show-overflow-tooltip />
|
||||
<el-table-column label="移交状态" prop="review_status_text" show-overflow-tooltip />
|
||||
<el-table-column label="协议名称" :render-header="pager.calcWidth" prop="contract_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="协议编号" :render-header="pager.calcWidth" prop="contract_code"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="关联主合同" :render-header="pager.calcWidth" prop="supplementary_agreement_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="甲方单位" :render-header="pager.calcWidth" prop="part_a_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="乙方单位" :render-header="pager.calcWidth" prop="part_b" show-overflow-tooltip />
|
||||
<el-table-column label="签订金额" :render-header="pager.calcWidth" prop="signed_amount"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="签订负责人" :render-header="pager.calcWidth" prop="signed_head_name"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="业务性质" :render-header="pager.calcWidth" prop="business_nature_text"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="签订时间" :render-header="pager.calcWidth" prop="create_time"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="审核状态" :render-header="pager.calcWidth" prop="approve_status_text"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="移交状态" :render-header="pager.calcWidth" prop="review_status_text"
|
||||
show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="170" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<el-button v-perms="['marketing.marketing_supplementary_agreement/edit']" type="primary" link
|
||||
|
@ -1,56 +1,81 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="!border-none mb-4" shadow="never">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" inline label-width="auto">
|
||||
<el-form-item label="所属项目" prop="project_id">
|
||||
<selectRemote :formData="queryParams" model="project_id" :api="apiProjectSearch" />
|
||||
</el-form-item>
|
||||
<el-form-item label="客户名称" prop="custom_name">
|
||||
<el-input class="w-[280px]" v-model="queryParams.custom_name" clearable placeholder="请输入客户名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="跟进类型" prop="follow_type">
|
||||
<el-select v-model="queryParams.follow_type" class="w-[280px]" clearable placeholder="请选择跟进类型">
|
||||
<el-option label="全部" value=""></el-option>
|
||||
<el-option v-for="(item, index) in dictData.follow_type" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="项目把握度" prop="project_assurance">
|
||||
<el-select v-model="queryParams.project_assurance" class="w-[280px]" clearable placeholder="请选择项目把握度">
|
||||
<el-form class="mb-[-16px]" :model="queryParams" label-width="100px">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="所属项目" prop="project_id">
|
||||
<selectRemote :formData="queryParams" model="project_id" :api="apiProjectSearch" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="客户名称" prop="custom_name">
|
||||
<el-input v-model="queryParams.custom_name" clearable placeholder="请输入客户名称" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="跟进类型" prop="follow_type">
|
||||
<el-select class="flex-1" v-model="queryParams.follow_type" clearable placeholder="请选择跟进类型">
|
||||
<el-option label="全部" value=""></el-option>
|
||||
<el-option v-for="(item, index) in dictData.follow_type" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="项目把握度" prop="project_assurance">
|
||||
<el-select class="flex-1" v-model="queryParams.project_assurance" clearable
|
||||
placeholder="请选择项目把握度">
|
||||
<el-option v-for="(item, index) in dictData.project_assurance" :key="index"
|
||||
:label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="跟进状态" prop="follow_status">
|
||||
<el-select class="flex-1" v-model="queryParams.follow_status" clearable placeholder="请选择跟进状态">
|
||||
<el-option v-for="(item, index) in dictData.follow_status" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="跟进阶段" prop="follow_stage">
|
||||
<el-select class="flex-1" v-model="queryParams.follow_stage" clearable placeholder="请输入跟进阶段">
|
||||
<el-option v-for="(item, index) in dictData.follow_stage" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="主题" prop="theme">
|
||||
<el-input v-model="queryParams.theme" clearable placeholder="请输入主题" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="联系人" prop="contacts">
|
||||
<el-input v-model="queryParams.contacts" clearable placeholder="请输入联系人" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="联系方式" prop="contact_information">
|
||||
<el-input v-model="queryParams.contact_information" clearable placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="执行人" prop="executor">
|
||||
<el-input v-model="queryParams.executor" clearable placeholder="请输入执行人" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="resetPage">查询</el-button>
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-option v-for="(item, index) in dictData.project_assurance" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="跟进状态" prop="follow_status">
|
||||
<el-select v-model="queryParams.follow_status" class="w-[280px]" clearable placeholder="请选择跟进状态">
|
||||
|
||||
<el-option v-for="(item, index) in dictData.follow_status" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="跟进阶段" prop="follow_stage">
|
||||
<el-select v-model="queryParams.follow_stage" class="w-[280px]" clearable placeholder="请输入跟进阶段">
|
||||
<el-option v-for="(item, index) in dictData.follow_stage" :key="index" :label="item.name"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="主题" prop="theme">
|
||||
<el-input v-model="queryParams.theme" class="w-[280px]" clearable placeholder="请输入主题" />
|
||||
</el-form-item>
|
||||
<el-form-item label="联系人" prop="contacts">
|
||||
<el-input class="w-[280px]" v-model="queryParams.contacts" clearable placeholder="请输入联系人" />
|
||||
</el-form-item>
|
||||
<el-form-item label="联系方式" prop="contact_information">
|
||||
<el-input class="w-[280px]" v-model="queryParams.contact_information" clearable placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
<el-form-item label="执行人" prop="executor">
|
||||
<el-input class="w-[280px]" v-model="queryParams.executor" clearable placeholder="请输入执行人" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="resetPage">查询</el-button>
|
||||
<el-button @click="resetParams">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<el-card class="!border-none" v-loading="pager.loading" shadow="never">
|
||||
|
@ -12,47 +12,49 @@
|
||||
|
||||
<el-col :span="8">
|
||||
<el-form-item label="项目编号">
|
||||
<el-input v-model="formData.project_num" readonly clearable disabled />
|
||||
<el-input v-model="formData.project_num" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="合同名称">
|
||||
<el-input v-model="formData.contract_name" readonly clearable disabled />
|
||||
<el-input v-model="formData.contract_name" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<!-- <el-col :span="8">
|
||||
<el-form-item label="合同类型">
|
||||
<el-input v-model="formData.contract_type" readonly clearable disabled />
|
||||
<el-input v-model="formData.contract_type" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
<el-col :span="8">
|
||||
<el-form-item label="甲方签约单位">
|
||||
<el-input v-model="formData.part_a" readonly clearable disabled />
|
||||
<el-input v-model="formData.part_a" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="乙方签约单位">
|
||||
<el-input v-model="formData.part_b" readonly clearable disabled />
|
||||
<el-input v-model="formData.part_b" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="签订金额">
|
||||
<el-input v-model="formData.sign_money" readonly clearable disabled />
|
||||
<el-input v-model="formData.sign_money" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="合同签订日期">
|
||||
<el-input v-model="formData.sign_time" readonly clearable disabled />
|
||||
<el-input v-model="formData.sign_time" readonly clearable disabled placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="累计已开票">
|
||||
<el-input v-model="formData.total_invoice_amount" readonly clearable disabled />
|
||||
<el-input v-model="formData.total_invoice_amount" readonly clearable disabled
|
||||
placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="累计已到账">
|
||||
<el-input v-model="formData.total_refund_amount" readonly clearable disabled />
|
||||
<el-input v-model="formData.total_refund_amount" readonly clearable disabled
|
||||
placeholder="系统自动获取" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
@ -190,11 +192,12 @@ const customEvent = (e) => {
|
||||
showDialog.value = false
|
||||
let list = ['project_num', 'contract_name', 'part_a', 'part_b', 'total_invoice_amount', 'total_refund_amount']
|
||||
list.forEach(item => {
|
||||
formData[item] = e[item] ?? (e.contract)[item]
|
||||
formData[item] = e[item]
|
||||
})
|
||||
formData.contract_type = e.contract.contract_type_text
|
||||
formData.sign_money = e.contract.money
|
||||
formData.sign_time = e.contract.create_time
|
||||
console.log(formData, 'formDATAT')
|
||||
// formData.contract_type = e.contract.contract_type_text
|
||||
// formData.sign_money = e.contract.money
|
||||
// formData.sign_time = e.contract.create_time
|
||||
|
||||
}
|
||||
|
||||
|
@ -48,7 +48,8 @@
|
||||
<el-table-column label="签约时间" prop="sign_time" show-overflow-tooltip />
|
||||
<el-table-column label="发票类型" prop="invoice_type_text" show-overflow-tooltip />
|
||||
<el-table-column label="是否到账" prop="is_refund" show-overflow-tooltip />
|
||||
<el-table-column label="开票申请金额" prop="apply_amount" show-overflow-tooltip />
|
||||
<el-table-column label="开票申请金额" prop="apply_amount" show-overflow-tooltip
|
||||
:render-header="pager.calcWidth" />
|
||||
<el-table-column label="到账金额" prop="refund_amount" show-overflow-tooltip />
|
||||
<el-table-column label="操作" width="170" fixed="right" align="center">
|
||||
<template #default="{ row }">
|
||||
|
@ -146,10 +146,10 @@ const customEvent = (e) => {
|
||||
list.forEach(item => {
|
||||
formData[item] = e[item] ?? (e.contract)[item]
|
||||
})
|
||||
formData.contract_type = e.contract.contract_type_text
|
||||
// formData.contract_type = e.contract.contract_type_text
|
||||
formData.project_id = e.id
|
||||
formData.sign_money = e.contract.money
|
||||
formData.sign_time = e.contract.create_time
|
||||
// formData.sign_money = e.contract.money
|
||||
// formData.sign_time = e.contract.create_time
|
||||
showDialog.value = false
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user