fix : 需求上报详情删除重复项,优化台账上方基础信息排版,表格内容少时固定宽度,驳回弹窗'重新提交'改为'发起节点'

This commit is contained in:
2024-08-06 15:06:29 +08:00
parent ab191e940b
commit 33e6ad37b9
15 changed files with 191 additions and 273 deletions

View File

@@ -22,6 +22,9 @@
<el-table-column
prop="nodeName"
label="节点名称">
<template #default="scope">
{{scope.row.nodeId==-1?'发起节点':scope.row.nodeName}}
</template>
</el-table-column>
<el-table-column
prop="name"

View File

@@ -1,96 +1,9 @@
<template>
<div class="detail-block" v-loading="loading">
<baseTitle title="需求上报信息"></baseTitle>
<el-form :model="localFormData" ref="summaryForm" :rules="rules">
<el-row gutter="20" style="margin-bottom: -18px">
<baseTitle title="预期知识产权"></baseTitle>
<el-row gutter="20" style="margin-bottom: -18px;margin-left: 5px">
<el-col :span="6">
<el-form-item label="项目名称" prop="projectName">
<span>{{ localFormData.projectName }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="开始时间" prop="startTime">
<span>{{ localFormData.startTime }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="结束时间" prop="endTime">
<span>{{ localFormData.endTime }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="项目类型" prop="projectType">
<span>{{ filterDict(cacheStore.getDict('project_type'), localFormData.projectType) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="研发主体" prop="rdSubject">
<span>{{ filterDict(cacheStore.getDict('rd_subject'), localFormData.rdSubject) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="出资类型" prop="investmentType">
<span>{{ filterDict(cacheStore.getDict('invest_type'), localFormData.investmentType) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="所属业务板块" prop="businessSegment">
<span>{{ filterDict(cacheStore.getDict('business_segment'), localFormData.businessSegment) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="标准制定" prop="technicalStandard">
<span>{{ filterDict(cacheStore.getDict('technical_standard'), localFormData.technicalStandard) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="项目影响" prop="projectImpact">
<span>{{ filterDict(cacheStore.getDict('project_impact'), localFormData.projectImpact) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="经费预算(元)" prop="economicEstimate">
<span>{{ toThousands(localFormData.economicEstimate) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="产学研联合" prop="industryUniversityResearch">
<span>{{
filterDict(cacheStore.getDict('industry_university'), localFormData.industryUniversityResearch)
}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="开展政府申报" prop="governmentDeclaration">
<span>{{
filterDict(cacheStore.getDict('government_declaration'), localFormData.governmentDeclaration)
}}</span>
</el-form-item>
</el-col>
<el-col :span="6" v-if="localFormData.isSpecialFund">
<el-form-item label="所属专项资金项目" prop="specialFund">
<span>{{
localFormData.specialFundId === 0 ? localFormData.specialFund : changeName(fundOption, localFormData.specialFundId)
}}</span>
</el-form-item>
</el-col>
<el-col :span="6" v-if="localFormData.isSpecialFund">
<el-form-item label="申请总部专项资金(元)" prop="specialFundAmount">
<span>{{ toThousands(localFormData.specialFundAmount) }}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="部门分管领导" prop="optionalChargeLeadership">
<span>{{ localFormData.optionalChargeLeadership?.map(item=>item.name).join()||'--' }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row gutter="20" style="margin-bottom: -18px">
<el-col :span="24">
<baseTitle title="预期知识产权"></baseTitle>
</el-col>
<el-col :span="12">
<el-form-item label="预期成果形式" prop="resultForm">
<span>{{ filterDict(cacheStore.getDict('result_form'), localFormData.resultForm) }}</span>
</el-form-item>
@@ -128,10 +41,9 @@
</el-form-item>
</el-col>
</el-row>
<el-row gutter="20" >
<el-col :span="24">
<baseTitle title="项目描述"></baseTitle>
</el-col>
<baseTitle title="项目描述"></baseTitle>
<el-row gutter="20" style="margin-left: 5px;margin-bottom: -18px;">
<el-col :span="24">
<el-form-item label="现有业务描述" prop="serviceDescription">
<span>{{ localFormData.serviceDescription }}</span>
@@ -142,11 +54,12 @@
<span>{{ localFormData.contentDescription }}</span>
</el-form-item>
</el-col>
<el-col :span="24" style="margin-top: -18px">
<baseTitle title="需求上报申请书"></baseTitle>
</el-col>
</el-row>
<baseTitle title="需求上报申请书" style="margin-bottom: 10px">></baseTitle>
<el-row gutter="20" style="margin-bottom: -15px;">
<el-col :span="24">
<single-file-component tag="需求上报" v-model:value="localFormData.singleFile" :processViewer="processViewer" />
<single-file-component tag="需求上报" v-model:value="localFormData.singleFile" :processViewer="processViewer"/>
<!-- <el-form-item>-->
<!-- {{localFormData.singleFile}}-->
<!-- <el-button type="primary" link @click="handleDownload(localFormData.singleFile)" style="font-size: 16px">-->
@@ -154,9 +67,9 @@
<!-- </el-button>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="24" style="margin-top: -12px">
<baseTitle title="附件列表"></baseTitle>
</el-col>
</el-row>
<baseTitle title="附件列表" style="margin-bottom: 0"></baseTitle>
<el-row gutter="20" style="margin-bottom: -18px;">
<el-col :span="24">
<file-component tag="需求上报"
v-model:value="localFormData.fileList" :processViewer="processViewer"
@@ -175,7 +88,7 @@
</el-form-item>
</div>
<div v-if="data.state==='5'" style="margin-bottom: 15px">
<baseTitle title="前置流程"></baseTitle>
<baseTitle title="前置流程" v-if="localFormData.preProcess"></baseTitle>
<div style="display: flex;align-items: center;flex-wrap: wrap;">
<div v-for="(item,index) in localFormData.preProcess" :key="item.requestId">
<a :href="item.baseUrl" target="_blank"
@@ -404,6 +317,22 @@ getFundOptions()
</script>
<style scoped lang="scss">
:deep(.el-table__header) {
.is-leaf:first-child {
.cell {
margin-left: -25px !important;
}
}
}
:deep(.el-table__body) {
.el-table__cell:first-child {
.cell {
margin-left: -13px !important;
}
}
}
.detail-block {
overflow-x: hidden;
overflow-y: auto;

View File

@@ -1,6 +1,8 @@
<template>
<div style="padding: 0 30px">
<baseTitle title="项目基本信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left"></fvForm>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left" style="margin-left: 15px"></fvForm>
<div class="steps-box">
<el-steps v-if="stepsShow" :active="localActive" finish-status="success">
<el-step
@@ -30,6 +32,7 @@
<component v-if="localActive == index" v-bind="item.props || {}" :is="item.component" />
</template> -->
</div>
</div>
</template>
<script setup lang="jsx">

View File

@@ -120,12 +120,14 @@ const tableConfig = reactive({
{
prop: 'time',
label: '时间',
align: 'center'
align: 'center',
width: 120,
},
{
prop: 'projectCost',
label: '项目费用',
align: 'center',
width: 120,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectCost !== null&&row.projectCost !== null&&row.projectCost!==undefined) {
@@ -139,6 +141,7 @@ const tableConfig = reactive({
prop: 'researchStage',
label: '研发阶段',
align: 'center',
width: 120,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.researchStage&&row.researchStage !== null&&row.researchStage!==undefined) {

View File

@@ -1,7 +1,9 @@
<template>
<baseTitle title="年度计划"></baseTitle>
<fvSearchForm :searchConfig="searchConfig" @search="search"></fvSearchForm>
<fvTable ref="tableIns" :tableConfig="tableConfig" @headBtnClick="headBtnClick"></fvTable>
<div style="padding: 0 20px">
<baseTitle title="年度计划" style="margin-left: -15px;margin-bottom: -2px"></baseTitle>
<fvSearchForm :searchConfig="searchConfig" @search="search"></fvSearchForm>
<fvTable ref="tableIns" :tableConfig="tableConfig" @headBtnClick="headBtnClick"></fvTable>
</div>
</template>
<script setup lang="jsx">

View File

@@ -142,13 +142,13 @@ const tableConfig = reactive({
prop: 'deadline',
label: '需求上报截止时间',
align: 'center',
// width: 150,
width: 150,
},
{
prop: 'approveName',
label: '当前审批节点',
align: 'center',
// width: 100,
width: 120,
currentRender: ({row, index}) => {
if(row.state=='1'){
return <span>{row.approveName}</span>
@@ -157,18 +157,11 @@ const tableConfig = reactive({
}
}
},
// {
// prop: 'taskNode',
// label: '当前审批节点',
// align: 'center',
// // width: 300
//
// },
{
prop: 'state',
label: '状态',
align: 'center',
// width: 100,
width: 120,
showOverflowTooltip: false,
currentRender: ({row, index}) => (<Tag dictType={'demand_collection'} value={row.state}/>)
},

View File

@@ -183,6 +183,7 @@ const tableConfig = reactive({
prop: 'projectType',
label: '项目类型',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectType !== null) {
@@ -196,6 +197,7 @@ const tableConfig = reactive({
prop: 'rdSubject',
label: '研发主体',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.rdSubject !== null) {
@@ -209,6 +211,7 @@ const tableConfig = reactive({
prop: 'projectImpact',
label: '项目影响',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectImpact !== null) {
@@ -230,6 +233,7 @@ const tableConfig = reactive({
prop: 'state',
label: '状态',
align: 'center',
width: 150,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.state !== null && row.state != 0) {
@@ -244,6 +248,7 @@ const tableConfig = reactive({
label: '操作',
align: 'center',
fixed: 'right',
width: 150,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
let btn = []

View File

@@ -171,6 +171,7 @@ const tableConfig = reactive({
prop: 'projectType',
label: '项目类型',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectType !== null) {
@@ -184,6 +185,7 @@ const tableConfig = reactive({
prop: 'rdSubject',
label: '研发主体',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.rdSubject !== null) {
@@ -197,6 +199,7 @@ const tableConfig = reactive({
prop: 'projectImpact',
label: '项目影响',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectImpact !== null) {
@@ -210,6 +213,7 @@ const tableConfig = reactive({
prop: 'economicEstimate',
label: '经费预算(元)',
align: 'center',
width: 150,
currentRender:({row})=>{
return <span>{toThousands(row.economicEstimate)}</span>
}
@@ -226,6 +230,7 @@ const tableConfig = reactive({
prop: 'approveName',
label: '当前审批节点',
align: 'center',
width: 120,
currentRender: ({row, index}) => {
if(row.state=='3'||row.state=='4'){
return <span>{row.taskNode}</span>
@@ -240,6 +245,7 @@ const tableConfig = reactive({
prop: 'state',
label: '状态',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.state !== null) {
@@ -254,6 +260,7 @@ const tableConfig = reactive({
label: '操作',
align: 'center',
fixed:'right',
width: 150,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
let btn = []

View File

@@ -1,11 +1,11 @@
<template>
<view style="overflow-y: scroll">
<view style="overflow-y: scroll;">
<baseTitle title="项目基本信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left"></fvForm>
<baseTitle title="表格更新数据" style="margin-top: -10px"></baseTitle>
<fvForm :schema="tableUpdateData" @getInstance="(e)=>tableUpdateFormData = e"></fvForm>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left" style="margin-left: 15px"></fvForm>
<baseTitle title="研发台账明细" style="margin-top: -10px"></baseTitle>
<fvForm :schema="tableUpdateData" @getInstance="(e)=>tableUpdateFormData = e" style="margin-left: 15px"></fvForm>
<fvSearchForm :searchConfig="searchConfig" @search="search"></fvSearchForm>
<div style="display: flex">
<div style="display: flex;margin-left: 15px" >
<el-button color="#DED0B2" @click="exportExcelHandler">导出</el-button>
<import-excel :projectId="projectId" v-if="buttonShow" @success="importTheExpenseLedger"/>
<el-button color="#DED0B2" v-if="buttonShow" @click="handleImportTemplateDownload">模板下载</el-button>
@@ -244,22 +244,22 @@ const tableUpdateData = computed(() => {
},
labelWidth:'left'
},
{
label: '项目开始时间',
prop: 'startTime',
colProps: {
span: 6
},
labelWidth:'left'
},
{
label: '项目预计持续时间',
prop: 'endTime',
colProps: {
span: 6
},
labelWidth:'left'
},
// {
// label: '项目开始时间',
// prop: 'startTime',
// colProps: {
// span: 6
// },
// labelWidth:'left'
// },
// {
// label: '项目预计持续时间',
// prop: 'endTime',
// colProps: {
// span: 6
// },
// labelWidth:'left'
// },
{
label: '项目开展方式',
prop: 'projectDevelopmentWay',
@@ -268,14 +268,14 @@ const tableUpdateData = computed(() => {
},
labelWidth:'left'
},
{
label: '项目预算',
prop: 'projectBudgetDescription',
colProps: {
span: 24
},
labelWidth:'left'
},
// {
// label: '项目预算',
// prop: 'projectBudgetDescription',
// colProps: {
// span: 24
// },
// labelWidth:'left'
// },
{
label: '项目总体完成率',
prop: 'projectCompletionRate',
@@ -548,11 +548,29 @@ onActivated(() => {
min-height: 400px !important;
}
:deep(.el-form-item__label-wrap){
margin-left: 0!important;
margin-left: 15px!important;
}
:deep(.el-form-item__content){
.el-input{
width: 100%!important;
}
}
.search-form {
padding-top: 0!important;
}
:deep(.el-table__header){
.is-leaf:first-child{
.cell{
margin-left: -20px!important;
}
}
}
:deep(.el-table__body){
.el-table__cell:first-child{
.cell{
margin-left: -10px!important;
}
}
}
</style>

View File

@@ -174,6 +174,7 @@ const tableConfig = reactive({
prop: 'projectType',
label: '项目类型',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectType && row.projectType !== null && row.projectType !== undefined) {
@@ -187,6 +188,7 @@ const tableConfig = reactive({
prop: 'rdSubject',
label: '研发主体',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.rdSubject && row.rdSubject !== null && row.rdSubject !== undefined) {
@@ -200,6 +202,7 @@ const tableConfig = reactive({
prop: 'researchStage',
label: '研发阶段',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.researchStage && row.researchStage !== null && row.researchStage !== undefined) {
@@ -213,6 +216,7 @@ const tableConfig = reactive({
prop: 'projectImpact',
label: '项目影响',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectImpact && row.projectImpact !== null && row.projectImpact !== undefined) {
@@ -226,6 +230,7 @@ const tableConfig = reactive({
prop: 'economicEstimate',
label: '经费预算(元)',
align: 'center',
width: 150,
currentRender:({row})=>{
return <span>{toThousands(row.economicEstimate)}</span>
}
@@ -242,6 +247,7 @@ const tableConfig = reactive({
prop: 'approveName',
label: '当前审批节点',
align: 'center',
width: 120,
currentRender: ({row, index}) => {
if(row.state=='3'||row.state=='4'){
return <span>{row.taskNode}</span>
@@ -256,6 +262,7 @@ const tableConfig = reactive({
prop: 'state',
label: '状态',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.state && row.state !== null && row.state !== undefined) {

View File

@@ -169,6 +169,7 @@ const tableConfig = reactive({
prop: 'projectType',
label: '项目类型',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectType !== null) {
@@ -182,6 +183,7 @@ const tableConfig = reactive({
prop: 'rdSubject',
label: '研发主体',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.rdSubject !== null) {
@@ -195,6 +197,7 @@ const tableConfig = reactive({
prop: 'projectImpact',
label: '项目影响',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.projectImpact !== null) {
@@ -208,6 +211,7 @@ const tableConfig = reactive({
prop: 'economicEstimate',
label: '经费预算(元)',
align: 'center',
width: 150,
currentRender:({row})=>{
return <span>{toThousands(row.economicEstimate)}</span>
}
@@ -224,6 +228,7 @@ const tableConfig = reactive({
prop: 'approveName',
label: '当前审批节点',
align: 'center',
width: 120,
currentRender: ({row, index}) => {
if(row.state=='3'||row.state=='4'){
return <span>{row.taskNode}</span>
@@ -243,6 +248,7 @@ const tableConfig = reactive({
prop: 'state',
label: '状态',
align: 'center',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.state !== null) {
@@ -257,6 +263,7 @@ const tableConfig = reactive({
label: '操作',
align: 'center',
fixed:'right',
width: 100,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
let btn = []

View File

@@ -1,6 +1,6 @@
<template>
<baseTitle title="项目基本信息"></baseTitle>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left"></fvForm>
<fvForm :schema="schema" @getInstance="(e)=>baseForm = e" label-position="left" label-width="left" style="margin-left: 15px"></fvForm>
<div class="steps-box">
<el-steps :active="localActive" finish-status="success">
<el-step

View File

@@ -1,94 +1,8 @@
<template>
<div class="detail-block" v-loading="loading">
<baseTitle title="需求上报信息" style="margin-top: -15px"></baseTitle>
<el-form :model="localFormData" ref="summaryForm" :rules="rules">
<el-row gutter="20" style="margin-bottom: -18px">
<el-col :span="24">
<el-form-item label="项目名称" prop="projectName">
<span>{{ localFormData.projectName }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="开始时间" prop="startTime">
<span>{{ localFormData.startTime }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="结束时间" prop="endTime">
<span>{{ localFormData.endTime }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目类型" prop="projectType">
<span>{{ filterDict(cacheStore.getDict('project_type'), localFormData.projectType) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="研发主体" prop="rdSubject">
<span>{{ filterDict(cacheStore.getDict('rd_subject'), localFormData.rdSubject) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="出资类型" prop="investmentType">
<span>{{ filterDict(cacheStore.getDict('invest_type'), localFormData.investmentType) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="所属业务板块" prop="businessSegment">
<span>{{ filterDict(cacheStore.getDict('business_segment'), localFormData.businessSegment) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="预期技术标准制定" prop="technicalStandard">
<span>{{ filterDict(cacheStore.getDict('technical_standard'), localFormData.technicalStandard) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="项目影响" prop="projectImpact">
<span>{{ filterDict(cacheStore.getDict('project_impact'), localFormData.projectImpact) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="经费预算(元)" prop="economicEstimate">
<span>{{ toThousands(localFormData.economicEstimate) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="产学研联合" prop="industryUniversityResearch">
<span>{{
filterDict(cacheStore.getDict('industry_university'), localFormData.industryUniversityResearch)
}}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="开展政府申报" prop="governmentDeclaration">
<span>{{
filterDict(cacheStore.getDict('government_declaration'), localFormData.governmentDeclaration)
}}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="专项资金名称" prop="specialFund" v-if="localFormData.isSpecialFund">
<span>{{
localFormData.specialFundId === 0 ? localFormData.specialFund : changeName(fundOption, localFormData.specialFundId)
}}</span>
</el-form-item>
</el-col>
<el-col :span="24" v-if="localFormData.isSpecialFund">
<el-form-item label="其中申请公司总部科技创新专项资金(元)" prop="specialFundAmount">
<span>{{ toThousands(localFormData.specialFundAmount) }}</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="部门分管领导" prop="optionalChargeLeadership">
<span>{{ localFormData.optionalChargeLeadership?.map(item=>item.name).join() }}</span>
</el-form-item>
</el-col>
<el-col :span="24" style="margin-top: -15px">
<baseTitle title="预期知识产权"></baseTitle>
</el-col>
<baseTitle title="预期知识产权"></baseTitle>
<el-row gutter="20" style="margin-bottom: -18px;margin-left: 5px">
<el-col :span="24">
<el-form-item label="预期成果形式" prop="resultForm">
<span>{{ filterDict(cacheStore.getDict('result_form'), localFormData.resultForm) }}</span>
@@ -129,10 +43,8 @@
</el-col>
</el-row>
<el-row gutter="20" style="margin-bottom: -18px">
<el-col :span="24">
<baseTitle title="项目描述"></baseTitle>
</el-col>
<baseTitle title="项目描述"></baseTitle>
<el-row gutter="20" style="margin-bottom: -18px;margin-left: 5px;">
<el-col :span="24">
<el-form-item label="现有业务描述" prop="serviceDescription">
<span>{{ localFormData.serviceDescription }}</span>
@@ -143,26 +55,26 @@
<span>{{ localFormData.contentDescription }}</span>
</el-form-item>
</el-col>
<el-col :span="24" style="margin-top: -25px">
<baseTitle title="需求上报申请书"></baseTitle>
</el-col>
</el-row>
<baseTitle title="需求上报申请书" style="margin-bottom: 10px">></baseTitle>
<el-row gutter="20" style="margin-bottom: -15px;">
<el-col :span="24">
<single-file-component tag="需求上报" :fileNameTableWidth="200" :fullscreen="true"
v-model:value="localFormData.singleFile" :processViewer="processViewer"
labelAlign="top"/>
<!-- <el-form-item label="需求上报申请书" label-position="top" style="display:block;">-->
<!-- &lt;!&ndash; style="font-size: 16px"&ndash;&gt;-->
<!-- <el-button type="primary" link @click="handleDownload(localFormData.singleFile)">-->
<!-- {{ localFormData.singleFile?.originalFileName }}-->
<!-- </el-button>-->
<!-- </el-form-item>-->
<single-file-component tag="需求上报" :fileNameTableWidth="200" :fullscreen="true"
v-model:value="localFormData.singleFile" :processViewer="processViewer"
labelAlign="top"/>
<!-- <el-form-item label="需求上报申请书" label-position="top" style="display:block;">-->
<!-- &lt;!&ndash; style="font-size: 16px"&ndash;&gt;-->
<!-- <el-button type="primary" link @click="handleDownload(localFormData.singleFile)">-->
<!-- {{ localFormData.singleFile?.originalFileName }}-->
<!-- </el-button>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="24" style="margin-top: -15px">
<baseTitle title="附件列表"></baseTitle>
<el-col :span="24" style="margin-top: -15px;">
<baseTitle title="附件列表" style="margin-bottom: 0"></baseTitle>
</el-col>
<el-col :span="24">
<file-component
tag="需求上报" :fileNameTableWidth="200" :fullscreen="true"
tag="需求上报" :fileNameTableWidth="200" :fullscreen="true"
v-model:value="localFormData.fileList"
:processViewer="processViewer"
:file-list-show="fileListShow"
@@ -219,7 +131,8 @@
</div>
</div>
<div class="process">
<operation-render v-if="processViewer && data.operationList && data.operationList.length > 0&&!changeDiagram" :isColumn="true"
<operation-render v-if="processViewer && data.operationList && data.operationList.length > 0&&!changeDiagram"
:isColumn="true"
:operation-list="data.operationList"
:step="'report'"
:state="data.state"/>
@@ -248,6 +161,7 @@ import {ElNotification} from "element-plus";
import {approvePlan} from "@/api/project-demand/summary";
import SelectPreProcess from "@/components/SelectPreProcess.vue";
const emit = defineEmits(['update:value'])
const tagsViewStore = useTagsView()
const cacheStore = useCacheStore()
@@ -308,9 +222,9 @@ const handleRejectPlan = async () => {
return
}
const params = {
auditOpinion:_value.value,
projectId:parseInt(route.query.projectId),
state:false
auditOpinion: _value.value,
projectId: parseInt(route.query.projectId),
state: false
}
console.log('params', params)
const res = await approvePlan(params)
@@ -326,9 +240,9 @@ const handleRejectPlan = async () => {
}
const handleAgreePlan = async () => {
const params = {
auditOpinion:_value.value,
projectId:parseInt(route.query.projectId),
state:true
auditOpinion: _value.value,
projectId: parseInt(route.query.projectId),
state: true
}
console.log('params', params)
const res = await approvePlan(params)
@@ -400,17 +314,33 @@ watch(() => props.loading, (newVal) => {
}, {deep: true})
watchEffect(() => {
props.formData.singleFile=[props.formData.singleFile]
props.formData.singleFile = [props.formData.singleFile]
return Object.keys(props.formData).length && (localFormData.value = props.formData)
})
getFundOptions()
</script>
<style scoped>
<style scoped lang="scss">
.detail-block {
overflow-x: hidden;
overflow-y: auto;
padding-bottom: 20px;
}
:deep(.el-table__header) {
.is-leaf:first-child {
.cell {
margin-left: -25px !important;
}
}
}
:deep(.el-table__body) {
.el-table__cell:first-child {
.cell {
margin-left: -13px !important;
}
}
}
</style>

View File

@@ -76,11 +76,11 @@ const tableConfig = reactive({
label: '专项资金名称',
align: 'center'
},
{
prop: 'approveName',
label: '审批人',
align: 'center'
},
// {
// prop: 'approveName',
// label: '审批人',
// align: 'center'
// },
{
prop: 'fundAmount',
label: '资金金额(元)',
@@ -100,17 +100,27 @@ const tableConfig = reactive({
{
prop: 'projectNumber',
label: '项目数量',
align: 'center'
align: 'center',
width: 100,
},
{
prop: 'taskNode',
label: '当前节点',
align: 'center'
prop: 'approveName',
label: '当前审批节点',
align: 'center',
width: 150,
currentRender: ({row, index}) => {
if(row.state=='1'){
return <span>{row.approveName}</span>
}else {
return <span>{row.taskNode}</span>
}
}
},
{
prop: 'state',
label: '状态',
align: 'center',
width: 150,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
if (row.state == undefined||row.state == 0) {
@@ -125,6 +135,7 @@ const tableConfig = reactive({
label: '操作',
align: 'center',
fixed:'right',
width: 150,
showOverflowTooltip: false,
currentRender: ({row, index}) => {
let btn = []

View File

@@ -1,6 +1,6 @@
<template>
<div>
<el-button v-print="print" color="#ded0b2" icon="Printer"> 打印</el-button>
<el-button v-print="print" color="#ded0b2" icon="Printer" style="margin-left: 15px"> 打印</el-button>
</div>
<div style="margin: 10px" id="printBox">
<el-timeline>