明树Git Lab
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
J
jt_front
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
jt_front
Commits
6dcd9fa5
Commit
6dcd9fa5
authored
May 26, 2026
by
zhanghan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
060a7d75
Pipeline
#111996
passed with stage
in 26 seconds
Changes
5
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
380 additions
and
188 deletions
+380
-188
InvestmentRecoveryTable.vue
src/components/InvestmentRecoveryTable.vue
+26
-22
annualAdd.vue
src/views/everydayPage/annualAdd.vue
+309
-150
annualPlan.vue
src/views/everydayPage/annualPlan.vue
+40
-3
constructionTimeAdd.vue
src/views/investingManage/constructionTimeAdd.vue
+2
-2
decision.vue
src/views/investingManage/decision.vue
+3
-11
No files found.
src/components/InvestmentRecoveryTable.vue
View file @
6dcd9fa5
...
@@ -361,31 +361,35 @@
...
@@ -361,31 +361,35 @@
<
/el-table-column
>
<
/el-table-column
>
<!--
开累完成率
-->
<!--
开累完成率
-->
<
el
-
table
-
column
<
el
-
table
-
column
label
=
"开累完成率"
align
=
"center"
>
label
=
"开累完成率"
<
el
-
table
-
column
prop
=
"invoiceCompletionRate"
label
=
"开累完成/合同总金额"
min
-
width
=
"180"
prop
=
"invoiceCompletionRate"
align
=
"center"
min
-
width
=
"200"
>
align
=
"center"
<
template
#
default
=
"{ row
}
"
>
>
<
span
class
=
"calculated-value"
>
<
template
#
default
=
"{ row
}
"
>
{{
formatCalculatedValue
(
row
.
invoiceCompletionRate
,
rateUnit
)
}}
<
span
class
=
"calculated-value"
>
<
/span
>
{{
formatCalculatedValue
(
row
.
invoiceCompletionRate
,
rateUnit
)
}}
<
/template
>
<
/span
>
<
/template
>
<
/el-table-column
>
<
/el-table-column
>
<
/el-table-column
>
<!--
欠收金额
-->
<!--
欠收金额
-->
<
el
-
table
-
column
<
el
-
table
-
column
label
=
"欠收金额"
align
=
"center"
>
label
=
"欠收金额"
<
el
-
table
-
column
prop
=
"shortfallAmount"
label
=
"累计应收-累计实收"
min
-
width
=
"150"
prop
=
"shortfallAmount"
align
=
"center"
min
-
width
=
"200"
>
align
=
"center"
<
template
#
default
=
"{ row
}
"
>
>
<
span
class
=
"calculated-value"
>
<
template
#
default
=
"{ row
}
"
>
{{
formatCalculatedValue
(
row
.
shortfallAmount
)
}}
<
span
class
=
"calculated-value"
>
<
/span
>
{{
formatCalculatedValue
(
row
.
shortfallAmount
)
}}
<
/template
>
<
/span
>
<
/template
>
<
/el-table-column
>
<
/el-table-column
>
<
/el-table-column
>
<!--
合同总金额
-->
<!--
合同总金额
-->
...
...
src/views/everydayPage/annualAdd.vue
View file @
6dcd9fa5
...
@@ -555,72 +555,79 @@
...
@@ -555,72 +555,79 @@
title=
"可研/决策信息(单位:万元)"
title=
"可研/决策信息(单位:万元)"
name=
"可研/决策信息(单位:万元)"
name=
"可研/决策信息(单位:万元)"
>
>
<el-table
<div
class=
"kyjc-table-wrap"
>
:data=
"financialIndicators"
<div
class=
"left-table"
>
style=
"width: 100%"
<table
class=
"kyjc-left-table"
>
border
<thead>
:cell-style=
"tableCellStyle"
<tr>
:header-cell-style=
"tableHeaderCellStyle"
<td
class=
"col-serial"
>
序号
</td>
:row-class-name=
"tableRowClassName"
<td
class=
"col-indicator"
>
指标项
</td>
row-key=
"serialNumber"
<td
class=
"col-total"
>
合计
</td>
class=
"table-stripe-colors"
</tr>
>
</thead>
<!-- 序号列 -->
<tbody>
<el-table-column
<tr
prop=
"serialNumber"
v-for=
"(row, idx) in financialIndicators"
label=
"序号"
:key=
"row.serialNumber"
width=
"80"
:class=
"idx % 2 === 0 ? 'even-row' : 'odd-row'"
align=
"center"
>
/>
<td
class=
"col-serial"
>
{{ row.serialNumber }}
</td>
<!-- 指标项列(层级缩进) -->
<td
<el-table-column
class=
"col-indicator"
prop=
"indicatorName"
:style=
"{
label=
"指标项"
textIndent: row.level * 20 + 'px',
min-width=
"300"
textAlign: 'left',
>
}"
<
template
#
default=
"{ row }"
>
>
<div
:style=
"
{ textIndent: `${row.level * 20}px` }">
{{ row.indicatorName }}
{{
row
.
indicatorName
}}
</td>
</div>
<td
class=
"col-total"
>
</
template
>
<span
v-if=
"!row.skipAutoTotal"
</el-table-column>
>
{{
<!-- 合计列(自动统计) -->
row.total ? row.total.toFixed(2) : "0.00"
<el-table-column
label=
"合计"
width=
"120"
align=
"center"
>
}}万元
</span
<
template
#
default=
"{ row }"
>
>
<span
v-if=
"!row.skipAutoTotal"
</td>
>
{{
</tr>
row
.
total
?
row
.
total
.
toFixed
(
2
)
:
"0.00"
</tbody>
}}
万元
</span
</table>
>
</div>
</
template
>
<div
class=
"right-table"
>
</el-table-column>
<el-table
<!-- 动态时间表头:当前时间+后续15期(年/年月) -->
:data=
"financialIndicators"
<el-table-column
border
v-for=
"time in dynamicTimeList"
:row-class-name=
"tableRowClassName"
:key=
"time"
row-key=
"serialNumber"
:label=
"time"
class=
"table-stripe-colors"
width=
"140"
>
align=
"center"
<el-table-column
>
v-for=
"time in dynamicTimeList"
<
template
#
default=
"{ row }"
>
:key=
"time"
<el-input
:label=
"time"
v-if=
"!row.skipAutoTotal"
width=
"140"
v-model=
"row[time]"
align=
"center"
:min=
"0"
:precision=
"2"
controls-position=
"right"
@
change=
"handleFinancialChange(row)"
:disabled=
"isPreview"
class=
"two-tone-input"
style=
"width: 100%"
>
>
<template
#
suffix
>
<
template
#
default=
"{ row }"
>
<span>
万元
</span>
<el-input
v-if=
"!row.skipAutoTotal"
v-model=
"row[time]"
:min=
"0"
:precision=
"2"
controls-position=
"right"
@
change=
"handleFinancialChange(row)"
:disabled=
"isPreview"
class=
"two-tone-input"
style=
"width: 100%"
>
<template
#
suffix
>
<span>
万元
</span>
</
template
>
</el-input>
</template>
</template>
</el-
input
>
</el-
table-column
>
</
templat
e>
</
el-tabl
e>
</
el-table-column
>
</
div
>
</
el-table
>
</
div
>
</el-collapse-item>
</el-collapse-item>
<!-- 年度投资计划:基础信息 -->
<!-- 年度投资计划:基础信息 -->
...
@@ -630,11 +637,7 @@
...
@@ -630,11 +637,7 @@
<div
class=
"row_title"
>
投资目标
</div>
<div
class=
"row_title"
>
投资目标
</div>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"计划年份"
prop=
"jhnf"
>
label-width=
"240px"
label=
"计划年份"
prop=
"jhnf"
>
<el-date-picker
<el-date-picker
v-model=
"formData.jhnf"
v-model=
"formData.jhnf"
type=
"year"
type=
"year"
...
@@ -646,20 +649,12 @@
...
@@ -646,20 +649,12 @@
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"新建/续建"
prop=
"xjXj"
>
label-width=
"240px"
label=
"新建/续建"
prop=
"xjXj"
>
<CommonSelector
v-model=
"formData.xjXj"
dictName=
"xj"
/>
<CommonSelector
v-model=
"formData.xjXj"
dictName=
"xj"
/>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"年度投资目标"
prop=
"ndTzMb"
>
label-width=
"240px"
label=
"年度投资目标"
prop=
"ndTzMb"
>
<el-input
<el-input
v-model=
"formData.ndTzMb"
v-model=
"formData.ndTzMb"
placeholder=
"请输入年度投资目标"
placeholder=
"请输入年度投资目标"
...
@@ -671,11 +666,7 @@
...
@@ -671,11 +666,7 @@
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"项目预计工期"
prop=
"xmYjGq"
>
label-width=
"240px"
label=
"项目预计工期"
prop=
"xmYjGq"
>
<el-input
<el-input
v-model=
"formData.xmYjGq"
v-model=
"formData.xmYjGq"
placeholder=
"请输入项目预计工期(如12个月)"
placeholder=
"请输入项目预计工期(如12个月)"
...
@@ -684,10 +675,7 @@
...
@@ -684,10 +675,7 @@
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"项目融资落地时间或预计落地时间"
>
label-width=
"240px"
label=
"项目融资落地时间或预计落地时间"
>
<el-date-picker
<el-date-picker
v-model=
"formData.xmRzLdSjHyyjLdSj"
v-model=
"formData.xmRzLdSjHyyjLdSj"
type=
"date"
type=
"date"
...
@@ -698,7 +686,6 @@
...
@@ -698,7 +686,6 @@
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label-width=
"240px"
label=
"预计实现资本金内部收益率"
label=
"预计实现资本金内部收益率"
prop=
"yjSxZbjNbsyl"
prop=
"yjSxZbjNbsyl"
>
>
...
@@ -719,7 +706,6 @@
...
@@ -719,7 +706,6 @@
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label-width=
"240px"
label=
"项目计划总投资类型"
label=
"项目计划总投资类型"
prop=
"xmTzZeXmJhZtzLx"
prop=
"xmTzZeXmJhZtzLx"
>
>
...
@@ -730,11 +716,7 @@
...
@@ -730,11 +716,7 @@
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"计划类型"
prop=
"jhLx"
>
label-width=
"240px"
label=
"计划类型"
prop=
"jhLx"
>
<el-input
<el-input
v-model=
"formData.jhLx"
v-model=
"formData.jhLx"
placeholder=
"请输入计划类型"
placeholder=
"请输入计划类型"
...
@@ -745,11 +727,7 @@
...
@@ -745,11 +727,7 @@
<div
class=
"row_title"
>
当前进展
</div>
<div
class=
"row_title"
>
当前进展
</div>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"当前进展阶段"
prop=
"dqJzJd"
>
label-width=
"240px"
label=
"当前进展阶段"
prop=
"dqJzJd"
>
<el-input
<el-input
v-model=
"formData.dqJzJd"
v-model=
"formData.dqJzJd"
placeholder=
"请输入当前进展阶段"
placeholder=
"请输入当前进展阶段"
...
@@ -758,7 +736,6 @@
...
@@ -758,7 +736,6 @@
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label-width=
"240px"
label=
"项目融资是否已经落地"
label=
"项目融资是否已经落地"
prop=
"xmRzSfYjLd"
prop=
"xmRzSfYjLd"
>
>
...
@@ -769,11 +746,7 @@
...
@@ -769,11 +746,7 @@
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"当前进展情况"
prop=
"dqJzQk"
>
label-width=
"240px"
label=
"当前进展情况"
prop=
"dqJzQk"
>
<el-input
<el-input
v-model=
"formData.dqJzQk"
v-model=
"formData.dqJzQk"
placeholder=
"请输入当前进展情况"
placeholder=
"请输入当前进展情况"
...
@@ -781,10 +754,7 @@
...
@@ -781,10 +754,7 @@
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
<el-form-item
label=
"项目实际开工时间"
>
label-width=
"240px"
label=
"项目实际开工时间"
>
<el-date-picker
<el-date-picker
v-model=
"formData.xmSjKgSj"
v-model=
"formData.xmSjKgSj"
type=
"date"
type=
"date"
...
@@ -1017,22 +987,73 @@
...
@@ -1017,22 +987,73 @@
title=
"2026年参股单位出资情况修正(单位:万元)"
title=
"2026年参股单位出资情况修正(单位:万元)"
name=
"2026年参股单位出资情况修正(单位:万元)"
name=
"2026年参股单位出资情况修正(单位:万元)"
>
>
<el-row
:gutter=
"24"
>
<div
class=
"tab-handle"
>
<el-col
:span=
"24"
>
<el-button
<el-form-item
label-width=
"0"
>
v-if=
"!isPreview"
<DynamicTable
type=
"primary"
:columns=
"transferColumns"
size=
"small"
:disabled=
"isPreview"
@
click=
"addGdxx"
v-model=
"formData.cgdwczqkxz"
>
新增
</el-button
:default-row=
"{
>
mc: '',
</div>
fj: '',
<el-table
bz: '',
:data=
"gdxxData"
}"
style=
"width: 100%"
empty-text=
"暂无数据"
border
>
<el-table-column
type=
"index"
label=
"序号"
width=
"60"
/>
<el-table-column
prop=
"gdmc"
label=
"单位名称"
min-width=
"200"
>
<
template
#
default=
"scope"
>
<el-input
v-model=
"scope.row.gdmc"
placeholder=
"请填写单位名称"
/>
/>
</el-form-item>
</
template
>
</el-col>
</el-table-column>
</el-row>
<el-table-column
prop=
"cze"
label=
"我方出资额(万元)"
min-width=
"200"
>
<
template
#
default=
"scope"
>
<el-input
v-model=
"scope.row.cze"
placeholder=
"请输入我方出资额(万元)"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"bz"
label=
"差异说明"
min-width=
"260"
>
<
template
#
default=
"scope"
>
<el-input
v-model=
"scope.row.bz"
type=
"textarea"
:rows=
"2"
placeholder=
"请输入差异说明"
/>
</
template
>
</el-table-column>
<el-table-column
v-if=
"!isPreview"
label=
"操作"
width=
"80"
fixed=
"right"
>
<
template
#
default=
"scope"
>
<el-button
link
type=
"danger"
size=
"small"
@
click=
"deleteGdxx(scope.$index)"
>
删除
</el-button
>
</
template
>
</el-table-column>
</el-table>
</el-collapse-item>
</el-collapse-item>
</el-collapse>
</el-collapse>
</el-form>
</el-form>
...
@@ -1066,7 +1087,6 @@ import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
...
@@ -1066,7 +1087,6 @@ import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
import
{
useRouter
,
useRoute
}
from
"vue-router"
;
import
{
useRouter
,
useRoute
}
from
"vue-router"
;
import
{
ElMessage
}
from
"element-plus"
;
import
{
ElMessage
}
from
"element-plus"
;
import
annualPlan
from
"./annualPlan.vue"
;
import
annualPlan
from
"./annualPlan.vue"
;
import
DynamicTable
from
"@/components/FormDynamicTable/index.vue"
;
import
routerBack
from
"@/components/common/routerBack.vue"
;
import
routerBack
from
"@/components/common/routerBack.vue"
;
import
CollapseNavigation
from
"@/components/CollapseNavigation/index.vue"
;
import
CollapseNavigation
from
"@/components/CollapseNavigation/index.vue"
;
// ========== 年度计划子组件专属时间列表【核心:适配任意年份,父子唯一统一】 ==========
// ========== 年度计划子组件专属时间列表【核心:适配任意年份,父子唯一统一】 ==========
...
@@ -1109,30 +1129,14 @@ const getCurrentYearTimeList = (baseYear) => {
...
@@ -1109,30 +1129,14 @@ const getCurrentYearTimeList = (baseYear) => {
annualDynamicTimeList
.
value
=
timeList
;
annualDynamicTimeList
.
value
=
timeList
;
};
};
// ========== 动态表格列配置(参股单位出资修正) ==========
// ========== 参股单位出资情况修正 ==========
const
transferColumns
=
ref
([
const
gdxxData
=
reactive
([]);
{
const
addGdxx
=
()
=>
{
prop
:
"mc"
,
gdxxData
.
push
({
gdmc
:
""
,
cze
:
""
,
bz
:
""
});
label
:
"单位名称"
,
};
type
:
"input"
,
const
deleteGdxx
=
(
index
)
=>
{
placeholder
:
"请填写单位名称"
,
gdxxData
.
splice
(
index
,
1
);
},
};
{
prop
:
"fj"
,
label
:
"我方出资额(万元)"
,
type
:
"input"
,
placeholder
:
"请输入我方出资额(万元)"
,
min
:
0
,
precision
:
2
,
},
{
prop
:
"bz"
,
label
:
"差异说明"
,
type
:
"textarea"
,
rows
:
2
,
placeholder
:
"请输入差异说明"
,
},
]);
// ========== 表单验证 ==========
// ========== 表单验证 ==========
const
formRef
=
ref
(
null
);
const
formRef
=
ref
(
null
);
...
@@ -1752,6 +1756,15 @@ const changeProject = (val) => {
...
@@ -1752,6 +1756,15 @@ const changeProject = (val) => {
callback
:
(
data
)
=>
{
callback
:
(
data
)
=>
{
loading
.
value
=
false
;
loading
.
value
=
false
;
formData
.
projectName
=
data
.
projectName
||
""
;
formData
.
projectName
=
data
.
projectName
||
""
;
if
(
data
.
projectGdxxs
&&
Array
.
isArray
(
data
.
projectGdxxs
)
&&
data
.
projectGdxxs
.
length
>
0
)
{
gdxxData
.
splice
(
0
,
gdxxData
.
length
,
...
data
.
projectGdxxs
);
}
else
{
gdxxData
.
splice
(
0
,
gdxxData
.
length
);
}
},
},
error
:
()
=>
{
error
:
()
=>
{
loading
.
value
=
false
;
loading
.
value
=
false
;
...
@@ -1776,6 +1789,15 @@ const getJsqtzjcDetail = () => {
...
@@ -1776,6 +1789,15 @@ const getJsqtzjcDetail = () => {
// 1. 回填基础字段,保留xmndjh的完整结构
// 1. 回填基础字段,保留xmndjh的完整结构
Object
.
assign
(
formData
,
data
);
Object
.
assign
(
formData
,
data
);
// 回填股东信息
if
(
data
.
projectGdxxs
&&
Array
.
isArray
(
data
.
projectGdxxs
)
&&
data
.
projectGdxxs
.
length
>
0
)
{
gdxxData
.
splice
(
0
,
gdxxData
.
length
,
...
data
.
projectGdxxs
);
}
// 2. 可研表格:初始化时间+回填(与年度计划无关)
// 2. 可研表格:初始化时间+回填(与年度计划无关)
if
(
data
.
kyjcxx
&&
Array
.
isArray
(
data
.
kyjcxx
)
&&
data
.
kyjcxx
.
length
>
0
)
{
if
(
data
.
kyjcxx
&&
Array
.
isArray
(
data
.
kyjcxx
)
&&
data
.
kyjcxx
.
length
>
0
)
{
dynamicTimeList
.
value
=
Object
.
keys
(
data
.
kyjcxx
[
0
]).
filter
((
key
)
=>
dynamicTimeList
.
value
=
Object
.
keys
(
data
.
kyjcxx
[
0
]).
filter
((
key
)
=>
...
@@ -1831,6 +1853,7 @@ const saveClick = async () => {
...
@@ -1831,6 +1853,7 @@ const saveClick = async () => {
}),
}),
// 年度计划表格:直接传完整的xmndjh,不做map过滤
// 年度计划表格:直接传完整的xmndjh,不做map过滤
xmndjh
:
formData
.
xmndjh
,
xmndjh
:
formData
.
xmndjh
,
projectGdxxs
:
[...
gdxxData
],
};
};
proxy
.
$post
({
proxy
.
$post
({
...
@@ -1977,4 +2000,140 @@ onMounted(() => {
...
@@ -1977,4 +2000,140 @@ onMounted(() => {
gap: 12px;
gap: 12px;
}
}
}
}
// ========== 可研/决策 左右分离表格 ==========
.kyjc-table-wrap {
display: flex;
align-items: flex-start;
gap: 0;
width: 100%;
box-sizing: border-box;
}
.kyjc-table-wrap .left-table {
flex-shrink: 0;
position: sticky;
left: 0;
z-index: 2;
background: #f7faff;
}
.kyjc-table-wrap .right-table {
flex: 1;
min-width: 0;
overflow-x: auto;
}
.kyjc-left-table {
border-collapse: collapse;
border: 1px solid #ebeef5;
border-right: 0;
background: #f7faff;
}
.kyjc-left-table td {
height: 48px;
border: 1px solid #ebeef5;
padding: 0 8px;
text-align: center;
vertical-align: middle;
word-break: break-all;
box-sizing: border-box;
}
.kyjc-left-table .col-serial {
width: 80px;
}
.kyjc-left-table .col-indicator {
width: 300px;
}
.kyjc-left-table .col-total {
width: 120px;
}
.kyjc-left-table thead td {
font-weight: 600;
background: #f0f2f5;
color: #333;
}
.kyjc-left-table .even-row td {
background: #f7faff;
}
.kyjc-left-table .odd-row td {
background: #f5f5f5;
}
.kyjc-table-wrap :deep(.el-table) {
--el-table-border-color: #ebeef5;
border-left: 1px solid #ebeef5 !important;
}
.kyjc-table-wrap :deep(.el-table__header tr),
.kyjc-table-wrap :deep(.el-table__body tr) {
height: 48px !important;
}
.kyjc-table-wrap :deep(.el-table-cell) {
padding: 0 !important;
text-align: center;
vertical-align: middle;
box-sizing: border-box;
}
// 斑马纹与左侧保持一致
.kyjc-table-wrap :deep(.odd-row) {
background-color: #f5f5f5 !important;
}
.kyjc-table-wrap :deep(.even-row) {
background-color: #edf0f5 !important;
}
// ========== 小屏适配 ==========
@media screen and (max-width: 1600px) {
.project-tab-content-wrapper {
gap: 12px;
}
.navigation-wrapper {
padding-left: 4px;
:deep(.collapse-navigation) {
width: 140px !important;
.nav-item {
padding: 8px 10px;
}
.nav-text {
font-size: 12px;
}
}
}
.kyjc-left-table .col-indicator {
width: 200px;
}
.kyjc-left-table .col-total {
width: 100px;
}
}
@media screen and (max-width: 1280px) {
.project-tab-content-wrapper {
gap: 8px;
}
.navigation-wrapper {
padding-left: 0;
:deep(.collapse-navigation) {
width: 110px !important;
.nav-item {
padding: 6px 8px;
}
.nav-text {
font-size: 11px;
}
.nav-dot {
width: 4px;
height: 4px;
margin-right: 4px;
}
}
}
.kyjc-left-table .col-indicator {
width: 160px;
font-size: 12px;
}
.kyjc-left-table .col-serial {
width: 50px;
font-size: 12px;
}
.kyjc-left-table .col-total {
width: 90px;
font-size: 12px;
}
}
</
style
>
</
style
>
src/views/everydayPage/annualPlan.vue
View file @
6dcd9fa5
...
@@ -354,6 +354,15 @@ const tableCellStyle = ({ row, columnIndex }) => {
...
@@ -354,6 +354,15 @@ const tableCellStyle = ({ row, columnIndex }) => {
}
}
.left-table
{
.left-table
{
flex-shrink
:
0
;
flex-shrink
:
0
;
position
:
sticky
;
left
:
0
;
z-index
:
2
;
background
:
#f7faff
;
}
.right-table
{
flex
:
1
;
min-width
:
0
;
overflow-x
:
auto
;
}
}
.investment-table
{
.investment-table
{
width
:
fit-content
;
width
:
fit-content
;
...
@@ -363,10 +372,10 @@ const tableCellStyle = ({ row, columnIndex }) => {
...
@@ -363,10 +372,10 @@ const tableCellStyle = ({ row, columnIndex }) => {
background
:
#f7faff
;
background
:
#f7faff
;
}
}
.investment-table
td
{
.investment-table
td
{
width
:
1
6
0px
;
width
:
1
1
0px
;
height
:
48px
;
height
:
48px
;
border
:
1px
solid
#ebeef5
;
border
:
1px
solid
#ebeef5
;
padding
:
0
!
important
;
padding
:
0
4px
!
important
;
text-align
:
center
;
text-align
:
center
;
vertical-align
:
middle
;
vertical-align
:
middle
;
word-break
:
break-all
;
word-break
:
break-all
;
...
@@ -410,5 +419,33 @@ const tableCellStyle = ({ row, columnIndex }) => {
...
@@ -410,5 +419,33 @@ const tableCellStyle = ({ row, columnIndex }) => {
.flex
{
.flex
{
display
:
flex
;
display
:
flex
;
}
}
// 右侧表格容器加最小宽度,避免挤压
// ========== 小屏适配:左侧列收窄,给右侧更多填写空间 ==========
@media
screen
and
(
max-width
:
1600px
)
{
.investment-table
td
{
width
:
110px
;
font-size
:
12px
;
}
.investment-table
td
.first-col
{
width
:
70px
;
}
.investment-table
td
.second-col
{
width
:
80px
;
}
}
@media
screen
and
(
max-width
:
1280px
)
{
.investment-table
td
{
width
:
80px
;
font-size
:
11px
;
}
.investment-table
td
.first-col
{
width
:
50px
;
}
.investment-table
td
.second-col
{
width
:
60px
;
}
.investment-table
td
.third-col
{
width
:
70px
;
}
}
</
style
>
</
style
>
src/views/investingManage/constructionTimeAdd.vue
View file @
6dcd9fa5
...
@@ -109,9 +109,9 @@
...
@@ -109,9 +109,9 @@
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<el-form-item
label=
"投资模式分类"
>
<el-form-item
label=
"投资模式分类"
>
<
CommonSelector
<
el-input
v-model=
"formData.tzms"
v-model=
"formData.tzms"
dictName=
"tzms
"
placeholder=
"请输入投资模式分类
"
/>
/>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
...
src/views/investingManage/decision.vue
View file @
6dcd9fa5
...
@@ -28,9 +28,7 @@
...
@@ -28,9 +28,7 @@
link
link
type=
"primary"
type=
"primary"
size=
"small"
size=
"small"
v-if=
"
v-if=
"row.projectLzType == 9 || row.projectLzType == 13"
canAudit && (row.projectLzType == 9 || row.projectLzType == 13)
"
:loading=
"row.loading"
:loading=
"row.loading"
@
click=
"editProject(row)"
@
click=
"editProject(row)"
>
>
...
@@ -41,7 +39,7 @@
...
@@ -41,7 +39,7 @@
link
link
type=
"primary"
type=
"primary"
size=
"small"
size=
"small"
v-else-if=
"
canAudit &&
row.projectLzType == 12"
v-else-if=
"row.projectLzType == 12"
:loading=
"row.loading"
:loading=
"row.loading"
@
click=
"previewProject(row)"
@
click=
"previewProject(row)"
>
审核
</el-button
>
审核
</el-button
...
@@ -51,7 +49,7 @@
...
@@ -51,7 +49,7 @@
link
link
type=
"primary"
type=
"primary"
size=
"small"
size=
"small"
v-else-if=
"
canAudit &&
row.projectLzType == 11"
v-else-if=
"row.projectLzType == 11"
:loading=
"row.loading"
:loading=
"row.loading"
@
click=
"editProject(row)"
@
click=
"editProject(row)"
>
填报
</el-button
>
填报
</el-button
...
@@ -98,12 +96,6 @@ const userInfo =
...
@@ -98,12 +96,6 @@ const userInfo =
(
sessionStorage
.
getItem
(
"userInfo"
)
&&
(
sessionStorage
.
getItem
(
"userInfo"
)
&&
JSON
.
parse
(
sessionStorage
.
getItem
(
"userInfo"
)))
||
JSON
.
parse
(
sessionStorage
.
getItem
(
"userInfo"
)))
||
{};
{};
let
canAudit
=
ref
(
false
);
userInfo
.
roles
.
map
((
item
)
=>
{
if
([
"xmlx_sp"
,
"xmjc_sp"
].
includes
(
item
.
key
))
{
canAudit
.
value
=
true
;
}
});
let
tableData
=
ref
([]);
let
tableData
=
ref
([]);
let
tableColumns
=
ref
([
let
tableColumns
=
ref
([
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment