明树Git Lab

Commit d2c0f73b authored by suesueyue's avatar suesueyue

处理完成

parent 67560525
Pipeline #111444 passed with stage
in 20 seconds
...@@ -266,6 +266,7 @@ const activeCollapse = reactive([ ...@@ -266,6 +266,7 @@ const activeCollapse = reactive([
"项目批复信息", "项目批复信息",
"其他", "其他",
"投决计划", "投决计划",
"投评报告及测算表",
"项目投资资金流量表", "项目投资资金流量表",
"项目资本金现金流量表", "项目资本金现金流量表",
"能建方现金流量表", "能建方现金流量表",
...@@ -288,7 +289,7 @@ let projectId = route.query.projectId; ...@@ -288,7 +289,7 @@ let projectId = route.query.projectId;
const lxType = computed(() => formData.projectLzType?.toString()); const lxType = computed(() => formData.projectLzType?.toString());
const jcType = computed(() => jcFormData.projectLzType?.toString()); const jcType = computed(() => jcFormData.projectLzType?.toString());
const isDaibanUser = computed(() => const isDaibanUser = computed(() =>
formData?.daibanUsers?.includes(userInfo?.id), formData?.daibanUsers?.includes(userInfo?.id)
); );
// 表单禁用状态:基于流程节点 + 待办人判断 // 表单禁用状态:基于流程节点 + 待办人判断
...@@ -306,26 +307,25 @@ const jcFormDisabled = computed(() => { ...@@ -306,26 +307,25 @@ const jcFormDisabled = computed(() => {
}); });
const showSave = computed( const showSave = computed(
() => !isPreview && (!formData.id || formData.projectCreator === userInfo?.id), () => !isPreview && (!formData.id || formData.projectCreator === userInfo?.id)
); );
const showSubmitLixiang = computed( const showSubmitLixiang = computed(
() => lxType.value === "1" && formData.projectCreator === userInfo?.id, () => lxType.value === "1" && formData.projectCreator === userInfo?.id
); );
const showSubmitJuece = computed( const showSubmitJuece = computed(
() => () => jcType.value === "7" && formData.projectCreator === userInfo?.id
jcType.value === "7" && formData.projectCreator === userInfo?.id,
); );
const showFirstAudit = computed( const showFirstAudit = computed(
() => isDaibanUser.value && lxType.value === "3", () => isDaibanUser.value && lxType.value === "3"
); );
const showAuditLixiang = computed( const showAuditLixiang = computed(
() => isDaibanUser.value && hasApproveRole && lxType.value === "4", () => isDaibanUser.value && hasApproveRole && lxType.value === "4"
); );
const showAuditJuece = computed( const showAuditJuece = computed(
() => isDaibanUser.value && jcType.value === "8", () => isDaibanUser.value && jcType.value === "8"
); );
const showApprove = computed( const showApprove = computed(
() => isDaibanUser.value && hasApproveRole && lxType.value === "2", () => isDaibanUser.value && hasApproveRole && lxType.value === "2"
); );
// 下载文件 // 下载文件
...@@ -348,7 +348,7 @@ const downloadTemplate = async (type) => { ...@@ -348,7 +348,7 @@ const downloadTemplate = async (type) => {
headers: { headers: {
Authorization: token.value, Authorization: token.value,
}, },
}, }
) )
.then((res) => res.blob()) .then((res) => res.blob())
.then((blob) => { .then((blob) => {
...@@ -359,14 +359,14 @@ const downloadTemplate = async (type) => { ...@@ -359,14 +359,14 @@ const downloadTemplate = async (type) => {
type === "tjjh" type === "tjjh"
? "投决计划" ? "投决计划"
: type === "xmtzzjll" : type === "xmtzzjll"
? "项目投资资金流量表" ? "项目投资资金流量表"
: type === "xmzbjxjll" : type === "xmzbjxjll"
? "项目资本金现金流量表" ? "项目资本金现金流量表"
: type === "njfxjll" : type === "njfxjll"
? "能建方现金流量表" ? "能建方现金流量表"
: type === "lrb" : type === "lrb"
? "利润表" ? "利润表"
: ""; : "";
link.download = name + "模板.xlsx"; link.download = name + "模板.xlsx";
document.body.appendChild(link); document.body.appendChild(link);
link.click(); link.click();
...@@ -385,7 +385,7 @@ const finance = useFinanceTables(); ...@@ -385,7 +385,7 @@ const finance = useFinanceTables();
const getObjSums = (obj, objkey) => { const getObjSums = (obj, objkey) => {
return Object.entries(obj).reduce( return Object.entries(obj).reduce(
(acc, [key, item]) => acc.plus(new Decimal(item[objkey] || 0)), (acc, [key, item]) => acc.plus(new Decimal(item[objkey] || 0)),
new Decimal(0), new Decimal(0)
); );
}; };
...@@ -516,7 +516,7 @@ const getProjectInfo = () => { ...@@ -516,7 +516,7 @@ const getProjectInfo = () => {
?.children || []; ?.children || [];
resource.jcQxgjList.value = resource.jcQxgjList.value =
resource.jcDsgjList.value.filter( resource.jcDsgjList.value.filter(
(item) => item.key == jcData.dsjngjjw, (item) => item.key == jcData.dsjngjjw
)[0]?.children || []; )[0]?.children || [];
resource.jcTzsxejflList.value = resource.jcTzsxejflList.value =
resource.tzsxyjflList.filter((item) => item.key == jcData.tzsxyjfl)[0] resource.tzsxyjflList.filter((item) => item.key == jcData.tzsxyjfl)[0]
...@@ -671,10 +671,10 @@ const submitAudit = () => { ...@@ -671,10 +671,10 @@ const submitAudit = () => {
formData.projectLzType.toString() === "3" formData.projectLzType.toString() === "3"
? "approvalLixiangByTouGuanJbr" ? "approvalLixiangByTouGuanJbr"
: formData.projectLzType.toString() === "4" : formData.projectLzType.toString() === "4"
? "approvalLixiang" ? "approvalLixiang"
: jcFormData.projectLzType.toString() === "8" : jcFormData.projectLzType.toString() === "8"
? "approvalJuece" ? "approvalJuece"
: ""; : "";
proxy.$post({ proxy.$post({
url: "/api/project/" + url, url: "/api/project/" + url,
data: { data: {
......
...@@ -400,7 +400,7 @@ ...@@ -400,7 +400,7 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="审核处室" label-width="160"> <el-form-item label="审核处室" label-width="160">
<el-input v-model="jcFormData.shcs" /> <el-input v-model="jcFormData.jcpfshcs" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
...@@ -415,7 +415,7 @@ ...@@ -415,7 +415,7 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item label="批复文件" :label-width="130"> <el-form-item label="批复文件" :label-width="130">
<FileUploader v-model="lcbspData" /> <FileUploader v-model="jcFormData.jcpfwj" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
......
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
<el-form-item label="是否能建重大或重要投资项目"> <el-form-item label="是否能建重大或重要投资项目">
<CommonSelector <CommonSelector
:radio="true" :radio="true"
v-model="jcFormData.sfnjzdhzytzxm" v-model="jcFormData.sfnjzdhzytz"
dictName="sf" dictName="sf"
/> />
</el-form-item> </el-form-item>
...@@ -589,8 +589,8 @@ ...@@ -589,8 +589,8 @@
<div class="col-title">投资指南分类</div> <div class="col-title">投资指南分类</div>
<el-form-item label="2+9布局分类"> <el-form-item label="2+9布局分类">
<CommonSelector <CommonSelector
v-model="jcFormData.tzznyjfl" v-model="jcFormData.bjfl"
dictName="tzzn" dictName="layoutType"
@change="changeJcTzznyjfl" @change="changeJcTzznyjfl"
/> />
</el-form-item> </el-form-item>
...@@ -674,7 +674,7 @@ ...@@ -674,7 +674,7 @@
<el-form-item label="是否列入国资委负面清单"> <el-form-item label="是否列入国资委负面清单">
<CommonSelector <CommonSelector
:radio="true" :radio="true"
v-model="jcFormData.sfjntbjgl" v-model="jcFormData.sflrgzwfmqd"
dictName="sf" dictName="sf"
/> />
</el-form-item> </el-form-item>
...@@ -1415,7 +1415,7 @@ ...@@ -1415,7 +1415,7 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-form-item label="里程碑计划审批表" :label-width="130"> <el-form-item label="里程碑计划审批表" :label-width="130">
<FileUploader v-model="lcbspData" /> <FileUploader v-model="jcFormData.tpbgjcsb" />
</el-form-item> </el-form-item>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="投评决策资料" name="投评决策资料"> <el-collapse-item title="投评决策资料" name="投评决策资料">
......
<template> <template>
<div class="tab-content"> <div class="tab-content">
<div class="tab-content"> <div class="tab-content">
<el-form <el-form :model="jcFormData" :label-width="150" :disabled="isPreview">
:model="jcFormData" <el-collapse v-model="activeCollapse">
:label-width="150" <el-collapse-item title="投评报告及测算表" name="投评报告及测算表">
:disabled="isPreview" <FileUploader v-model="jcFormData.tpbgjcsb" />
</el-collapse-item>
<el-collapse-item title="投决计划" name="投决计划">
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('tjjh')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl + '/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'tjjh',
projectId: formData.id,
}"
:on-success="(res, file) => importTjjh(res.data, file)"
>
<el-button type="primary" size="small" style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="jcTjjhData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in tjglColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
>
<template #default="scope_">
<!-- 去掉空白单元行 -->
<el-input
v-if="
scope_.row[col.children[1].key] ||
scope_.row[col.children[1].key] === 0
"
v-model="scope_.row[col_.key.toString()]"
:min="0"
:max="99999999999.99999999"
controls-position="right"
/>
<span v-else></span>
</template>
</el-table-column>
<span v-else>{{ scope.row[col.key] }}</span>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item
title="项目投资资金流量表"
name="项目投资资金流量表"
>
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('xmtzzjll')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl + '/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'xmtzzjll',
projectId: formData.id,
}"
:on-success="(res, file) => importXmtzzjll(res.data, file)"
>
<el-button type="primary" size="small" style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="xmtzzjllData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in xmtzzjllColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
>
<template #default="scope_">
<!-- 去掉空白单元行 -->
<el-input
v-if="
scope_.row[col.children[1].key] ||
scope_.row[col.children[1].key] === 0
"
v-model="scope_.row[col_.key.toString()]"
:min="0"
:max="99999999999.99999999"
controls-position="right"
/>
<span v-else></span>
</template>
</el-table-column>
<span v-else>{{ scope.row[col.key] }}</span>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item
title="项目资本金现金流量表"
name="项目资本金现金流量表"
>
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('xmzbjxjll')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl + '/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'xmzbjxjll',
projectId: formData.id,
}"
:on-success="(res, file) => importXmzbjxjll(res.data, file)"
>
<el-button type="primary" size="small" style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="xmzbjxjllData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in xmzbjxjllColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
> >
<el-collapse v-model="activeCollapse"> <template #default="scope_">
<el-collapse-item title="投决计划" name="投决计划"> <!-- 去掉空白单元行 -->
<div class="tab-handle"> <el-input
<el-button v-if="
type="primary" scope_.row[col.children[1].key] ||
size="small" scope_.row[col.children[1].key] === 0
@click="downloadTemplate('tjjh')" "
>模板下载</el-button v-model="scope_.row[col_.key.toString()]"
> :min="0"
<el-upload :max="99999999999.99999999"
:action=" controls-position="right"
windowConfig.baseUrl + />
'/api/template/importExcelTempData' <span v-else></span>
" </template>
:headers="{ Authorization: token }" </el-table-column>
:show-file-list="false" <span v-else>{{ scope.row[col.key] }}</span>
:data="{ </template>
tampName: 'tjjh', </el-table-column>
projectId: formData.id, </el-table-column>
}" </el-table>
:on-success=" </el-collapse-item>
(res, file) => importTjjh(res.data, file) <el-collapse-item title="能建方现金流量表" name="能建方现金流量表">
" <div class="tab-handle">
> <el-button
<el-button type="primary"
type="primary" size="small"
size="small" @click="downloadTemplate('njfxjll')"
style="margin-left: 12px" >模板下载</el-button
>导入数据</el-button >
> <el-upload
</el-upload> :action="
</div> windowConfig.baseUrl + '/api/template/importExcelTempData'
<el-table "
:data="jcTjjhData" :headers="{ Authorization: token }"
style="width: 100%" :show-file-list="false"
empty-text="暂无数据" :data="{
border tampName: 'njfxjll',
> projectId: formData.id,
<el-table-column }"
v-for="(column, index) in tjglColumns" :on-success="(res, file) => importNjfxjll(res.data, file)"
:key="index" >
:prop="column.key" <el-button type="primary" size="small" style="margin-left: 12px"
:label="column.label" >导入数据</el-button
> >
<el-table-column </el-upload>
v-for="(col, ind) in column.children" </div>
:key="ind" <el-table
:prop="col.key" :data="njfxjllData"
:label="col.label" style="width: 100%"
:width="ind === 1 ? 180 : null" empty-text="暂无数据"
> border
<template #default="scope"> >
<el-table-column <el-table-column
v-if="col.children?.length" v-for="(column, index) in njfxjllColumns"
v-for="(col_, ind_) in col.children" :key="index"
:key="ind_" :prop="column.key"
:prop="col_.key.toString()" :label="column.label"
:label="col_.label.toString()" >
width="180" <el-table-column
> v-for="(col, ind) in column.children"
<template #default="scope_"> :key="ind"
<!-- 去掉空白单元行 --> :prop="col.key"
<el-input :label="col.label"
v-if=" :width="ind === 1 ? 180 : null"
scope_.row[col.children[1].key] || >
scope_.row[col.children[1].key] === 0 <template #default="scope">
" <el-table-column
v-model=" v-if="col.children?.length"
scope_.row[col_.key.toString()] v-for="(col_, ind_) in col.children"
" :key="ind_"
:min="0" :prop="col_.key.toString()"
:max="99999999999.99999999" :label="col_.label.toString()"
controls-position="right" width="180"
/> >
<span v-else></span> <template #default="scope_">
</template> <!-- 去掉空白单元行 -->
</el-table-column> <el-input
<span v-else>{{ scope.row[col.key] }}</span> v-if="
</template> scope_.row[col.children[1].key] ||
</el-table-column> scope_.row[col.children[1].key] === 0
</el-table-column> "
</el-table> v-model="scope_.row[col_.key.toString()]"
</el-collapse-item> :min="0"
<el-collapse-item :max="99999999999.99999999"
title="项目投资资金流量表" controls-position="right"
name="项目投资资金流量表" />
> <span v-else></span>
<div class="tab-handle"> </template>
<el-button </el-table-column>
type="primary" <span v-else>{{ scope.row[col.key] }}</span>
size="small" </template>
@click="downloadTemplate('xmtzzjll')" </el-table-column>
>模板下载</el-button </el-table-column>
> </el-table>
<el-upload </el-collapse-item>
:action=" <el-collapse-item title="利润表" name="利润表">
windowConfig.baseUrl + <div class="tab-handle">
'/api/template/importExcelTempData' <el-button
" type="primary"
:headers="{ Authorization: token }" size="small"
:show-file-list="false" @click="downloadTemplate('lrb')"
:data="{ >模板下载</el-button
tampName: 'xmtzzjll', >
projectId: formData.id, <el-upload
}" :action="
:on-success=" windowConfig.baseUrl + '/api/template/importExcelTempData'
(res, file) => importXmtzzjll(res.data, file) "
" :headers="{ Authorization: token }"
> :show-file-list="false"
<el-button :data="{
type="primary" tampName: 'lrb',
size="small" projectId: formData.id,
style="margin-left: 12px" }"
>导入数据</el-button :on-success="(res, file) => importLrb(res.data, file)"
> >
</el-upload> <el-button type="primary" size="small" style="margin-left: 12px"
</div> >导入数据</el-button
<el-table >
:data="xmtzzjllData" </el-upload>
style="width: 100%" </div>
empty-text="暂无数据" <el-table
border :data="lrbData"
> style="width: 100%"
<el-table-column empty-text="暂无数据"
v-for="(column, index) in xmtzzjllColumns" border
:key="index" >
:prop="column.key" <el-table-column
:label="column.label" v-for="(column, index) in lrbColumns"
> :key="index"
<el-table-column :prop="column.key"
v-for="(col, ind) in column.children" :label="column.label"
:key="ind" >
:prop="col.key" <el-table-column
:label="col.label" v-for="(col, ind) in column.children"
:width="ind === 1 ? 180 : null" :key="ind"
> :prop="col.key"
<template #default="scope"> :label="col.label"
<el-table-column :width="ind === 1 ? 180 : null"
v-if="col.children?.length" >
v-for="(col_, ind_) in col.children" <template #default="scope">
:key="ind_" <el-table-column
:prop="col_.key.toString()" v-if="col.children?.length"
:label="col_.label.toString()" v-for="(col_, ind_) in col.children"
width="180" :key="ind_"
> :prop="col_.key.toString()"
<template #default="scope_"> :label="col_.label.toString()"
<!-- 去掉空白单元行 --> width="180"
<el-input >
v-if=" <template #default="scope_">
scope_.row[col.children[1].key] || <!-- 去掉空白单元行 -->
scope_.row[col.children[1].key] === 0 <el-input
" v-if="
v-model=" scope_.row[col.children[1].key] ||
scope_.row[col_.key.toString()] scope_.row[col.children[1].key] === 0
" "
:min="0" v-model="scope_.row[col_.key.toString()]"
:max="99999999999.99999999" :min="0"
controls-position="right" :max="99999999999.99999999"
/> controls-position="right"
<span v-else></span> />
</template> <span v-else></span>
</el-table-column> </template>
<span v-else>{{ scope.row[col.key] }}</span> </el-table-column>
</template> <span v-else>{{ scope.row[col.key] }}</span>
</el-table-column> </template>
</el-table-column> </el-table-column>
</el-table> </el-table-column>
</el-collapse-item> </el-table>
<el-collapse-item </el-collapse-item>
title="项目资本金现金流量表" </el-collapse>
name="项目资本金现金流量表" </el-form>
> </div>
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('xmzbjxjll')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl +
'/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'xmzbjxjll',
projectId: formData.id,
}"
:on-success="
(res, file) => importXmzbjxjll(res.data, file)
"
>
<el-button
type="primary"
size="small"
style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="xmzbjxjllData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in xmzbjxjllColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
>
<template #default="scope_">
<!-- 去掉空白单元行 -->
<el-input
v-if="
scope_.row[col.children[1].key] ||
scope_.row[col.children[1].key] === 0
"
v-model="
scope_.row[col_.key.toString()]
"
:min="0"
:max="99999999999.99999999"
controls-position="right"
/>
<span v-else></span>
</template>
</el-table-column>
<span v-else>{{ scope.row[col.key] }}</span>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item
title="能建方现金流量表"
name="能建方现金流量表"
>
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('njfxjll')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl +
'/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'njfxjll',
projectId: formData.id,
}"
:on-success="
(res, file) => importNjfxjll(res.data, file)
"
>
<el-button
type="primary"
size="small"
style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="njfxjllData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in njfxjllColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
>
<template #default="scope_">
<!-- 去掉空白单元行 -->
<el-input
v-if="
scope_.row[col.children[1].key] ||
scope_.row[col.children[1].key] === 0
"
v-model="
scope_.row[col_.key.toString()]
"
:min="0"
:max="99999999999.99999999"
controls-position="right"
/>
<span v-else></span>
</template>
</el-table-column>
<span v-else>{{ scope.row[col.key] }}</span>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="利润表" name="利润表">
<div class="tab-handle">
<el-button
type="primary"
size="small"
@click="downloadTemplate('lrb')"
>模板下载</el-button
>
<el-upload
:action="
windowConfig.baseUrl +
'/api/template/importExcelTempData'
"
:headers="{ Authorization: token }"
:show-file-list="false"
:data="{
tampName: 'lrb',
projectId: formData.id,
}"
:on-success="
(res, file) => importLrb(res.data, file)
"
>
<el-button
type="primary"
size="small"
style="margin-left: 12px"
>导入数据</el-button
>
</el-upload>
</div>
<el-table
:data="lrbData"
style="width: 100%"
empty-text="暂无数据"
border
>
<el-table-column
v-for="(column, index) in lrbColumns"
:key="index"
:prop="column.key"
:label="column.label"
>
<el-table-column
v-for="(col, ind) in column.children"
:key="ind"
:prop="col.key"
:label="col.label"
:width="ind === 1 ? 180 : null"
>
<template #default="scope">
<el-table-column
v-if="col.children?.length"
v-for="(col_, ind_) in col.children"
:key="ind_"
:prop="col_.key.toString()"
:label="col_.label.toString()"
width="180"
>
<template #default="scope_">
<!-- 去掉空白单元行 -->
<el-input
v-if="
scope_.row[col.children[1].key] ||
scope_.row[col.children[1].key] === 0
"
v-model="
scope_.row[col_.key.toString()]
"
:min="0"
:max="99999999999.99999999"
controls-position="right"
/>
<span v-else></span>
</template>
</el-table-column>
<span v-else>{{ scope.row[col.key] }}</span>
</template>
</el-table-column>
</el-table-column>
</el-table>
</el-collapse-item>
</el-collapse>
</el-form>
</div>
</div> </div>
</template> </template>
<script setup> <script setup>
import { inject } from "vue"; import { inject } from "vue";
import FileUploader from "@/components/FileUploader/index.vue";
const { const {
jcFormData, formData, isPreview, activeCollapse, jcFormData,
jcTjjhData, tjglColumns, tpbgjcsbData,
xmtzzjllData, xmtzzjllColumns, formData,
xmzbjxjllData, xmzbjxjllColumns, isPreview,
njfxjllData, njfxjllColumns, tpbgjcsb,
lrbData, lrbColumns, activeCollapse,
jcTjjhData,
tjglColumns,
xmtzzjllData,
xmtzzjllColumns,
xmzbjxjllData,
xmzbjxjllColumns,
njfxjllData,
njfxjllColumns,
lrbData,
lrbColumns,
downloadTemplate, downloadTemplate,
importTjjh, importXmtzzjll, importXmzbjxjll, importNjfxjll, importLrb, importTjjh,
windowConfig, token, importXmtzzjll,
importXmzbjxjll,
importNjfxjll,
importLrb,
windowConfig,
token,
} = inject("jcShared"); } = inject("jcShared");
</script> </script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment