Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Z
zrch-risk-39
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Administrator
zrch-risk-39
Commits
738d9d93
提交
738d9d93
authored
2月 10, 2026
作者:
kxjia
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修改存档
上级
8e1dca10
隐藏空白字符变更
内嵌
并排
正在显示
27 个修改的文件
包含
855 行增加
和
161 行删除
+855
-161
ArchiveList.vue
zrch-risk-client-39/src/views/baosong/ArchiveList.vue
+231
-0
ArchiveDrawer.vue
...isk-client-39/src/views/baosong/archive/ArchiveDrawer.vue
+261
-0
ArchiveList.vue
...-risk-client-39/src/views/baosong/archive/ArchiveList.vue
+74
-0
RecordHistory.vue
...-39/src/views/baosong/record/components/RecordHistory.vue
+3
-3
Tb1.vue
...isk-client-39/src/views/baosong/report/components/Tb1.vue
+6
-5
Tb10.vue
...sk-client-39/src/views/baosong/report/components/Tb10.vue
+9
-2
Tb11.vue
...sk-client-39/src/views/baosong/report/components/Tb11.vue
+7
-3
Tb2.vue
...isk-client-39/src/views/baosong/report/components/Tb2.vue
+6
-2
Tb3.vue
...isk-client-39/src/views/baosong/report/components/Tb3.vue
+6
-2
Tb4.vue
...isk-client-39/src/views/baosong/report/components/Tb4.vue
+6
-2
Tb5.vue
...isk-client-39/src/views/baosong/report/components/Tb5.vue
+6
-2
Tb6.vue
...isk-client-39/src/views/baosong/report/components/Tb6.vue
+9
-2
Tb7.vue
...isk-client-39/src/views/baosong/report/components/Tb7.vue
+4
-5
Tb8.vue
...isk-client-39/src/views/baosong/report/components/Tb8.vue
+4
-2
Tb9.vue
...isk-client-39/src/views/baosong/report/components/Tb9.vue
+10
-3
Tm1.vue
...isk-client-39/src/views/baosong/report/components/Tm1.vue
+16
-3
Tm2.vue
...isk-client-39/src/views/baosong/report/components/Tm2.vue
+7
-3
Tq1.vue
...isk-client-39/src/views/baosong/report/components/Tq1.vue
+6
-2
Tq2.vue
...isk-client-39/src/views/baosong/report/components/Tq2.vue
+7
-2
Tq3.vue
...isk-client-39/src/views/baosong/report/components/Tq3.vue
+6
-2
Tq4.vue
...isk-client-39/src/views/baosong/report/components/Tq4.vue
+6
-2
BaosongTaskReview.api.ts
...ient-39/src/views/baosong/review/BaosongTaskReview.api.ts
+8
-2
BaosongTaskReview.data.ts
...ent-39/src/views/baosong/review/BaosongTaskReview.data.ts
+16
-4
BaosongTaskReviewList.vue
...ent-39/src/views/baosong/review/BaosongTaskReviewList.vue
+15
-66
BaosongTask.api.ts
...-risk-client-39/src/views/baosong/task/BaosongTask.api.ts
+8
-0
BaosongTask.data.ts
...risk-client-39/src/views/baosong/task/BaosongTask.data.ts
+115
-42
index.vue
zrch-risk-client-39/src/views/metric/approval/index.vue
+3
-0
没有找到文件。
zrch-risk-client-39/src/views/baosong/ArchiveList.vue
0 → 100644
浏览文件 @
738d9d93
<
template
>
<a-card
style=
"width: 100%"
:tab-list=
"tabList"
:active-tab-key=
"activeKey"
@
tabChange=
"key => onTabChange(key)"
>
<template
#
tabBarExtraContent
>
<div
class=
"date-picker-wrapper"
>
<a-space>
<a-date-picker
placeholder=
"选择年"
picker=
"year"
>
<template
#
renderExtraFooter
></
template
>
</a-date-picker>
<a-date-picker
v-show=
"activeKey === 'quarter'"
placeholder=
"选择季度"
picker=
"quarter"
>
<
template
#
renderExtraFooter
></
template
>
</a-date-picker>
<a-date-picker
v-show=
"activeKey === 'month'"
placeholder=
"选择月"
picker=
"month"
>
<
template
#
renderExtraFooter
></
template
>
</a-date-picker>
</a-space>
</div>
</template>
<div
style=
"background-color: #ececec; padding: 20px"
>
<a-row
:gutter=
"[16,16]"
>
<a-col
:span=
"8"
v-for=
"item in dataList"
:key=
"item.id"
>
<a-card
:bordered=
"false"
>
<
template
#
title
>
{{
item
.
code
}}
-
{{
item
.
nm
}}
</
template
>
<
template
#
extra
>
<a-space>
<a
href=
"#"
@
click
.
prevent=
"downLoadXml(item)"
>
直接下载XML
</a>
<a
href=
"#"
@
click
.
prevent=
"gotoPage(item)"
>
预览并下载
</a>
</a-space>
</
template
>
<span>
年度:{{ item.vyear }}
</span>
<span>
版本:{{ item.version }}
</span>
<span>
节点数:{{ item.childNum }}
</span><br>
<span>
{{ item.xmlfilePath }}
</span>
</a-card>
</a-col>
</a-row>
</div>
</a-card>
</template>
<
script
lang=
"ts"
setup
>
import
{
ref
,
onMounted
,
computed
,
nextTick
}
from
'vue'
;
import
{
allTpls
}
from
'../tpl/BaosongTpl.api'
;
import
{
useRoute
,
useRouter
}
from
'vue-router'
;
import
{
downLoadTaskXml
}
from
'../review/BaosongTaskReview.api'
;
const
route
=
useRoute
();
const
router
=
useRouter
();
const
queryParam
=
ref
({
taskId
:
0
,
taskName
:
''
,
tplId
:
''
,
tplName
:
''
,
tplCode
:
''
})
onMounted
(()
=>
{
if
(
route
.
query
.
taskId
)
{
queryParam
.
value
.
taskId
=
Number
(
route
.
query
.
taskId
);
// Convert to number
}
if
(
route
.
query
.
taskName
)
{
queryParam
.
value
.
taskName
=
String
(
route
.
query
.
taskName
);
// Ensure it's a string
}
iniData
();
})
const
activeKey
=
ref
(
'year'
);
// 使用 computed 计算 tabList,根据 dataMap 中的记录数动态设置 disabled
const
tabList
=
computed
(()
=>
{
const
tabs
=
[
{
key
:
'year'
,
tab
:
'年报'
,
type
:
1
},
{
key
:
'quarter'
,
tab
:
'季报'
,
type
:
2
},
{
key
:
'month'
,
tab
:
'月报'
,
type
:
3
},
];
return
tabs
.
map
(
tab
=>
({
...
tab
,
//disabled: !dataMap.value[tab.type] || dataMap.value[tab.type].length === 0
}));
});
const
onTabChange
=
async
(
value
:
string
)
=>
{
activeKey
.
value
=
value
;
if
(
value
===
'year'
)
{
dataList
.
value
=
await
filteredData
(
1
)
}
else
if
(
value
===
'quarter'
)
{
dataList
.
value
=
await
filteredData
(
2
)
}
else
if
(
value
===
'month'
)
{
dataList
.
value
=
await
filteredData
(
3
)
}
else
{
//dataList.value = await filteredData(4)
}
}
const
gotoPage
=
async
(
item
)
=>
{
// 确保所有参数都设置完成后再跳转
queryParam
.
value
.
tplName
=
item
.
nm
||
''
queryParam
.
value
.
tplCode
=
item
.
code
||
''
queryParam
.
value
.
tplId
=
item
.
id
||
''
let
targetPath
=
''
const
code
=
item
.
code
||
''
if
(
code
===
'T-B-1'
)
{
targetPath
=
'/baosong/report/components/Tb1'
}
else
if
(
code
===
'T-B-2'
)
{
targetPath
=
'/baosong/report/components/Tb2'
}
else
if
(
code
===
'T-B-3'
)
{
targetPath
=
'/baosong/report/components/Tb3'
}
else
if
(
code
===
'T-B-4'
)
{
targetPath
=
'/baosong/report/components/Tb4'
}
else
if
(
code
===
'T-B-5'
)
{
targetPath
=
'/baosong/report/components/Tb5'
}
else
if
(
code
===
'T-B-6'
)
{
targetPath
=
'/baosong/report/components/Tb6'
}
else
if
(
code
===
'T-B-7'
)
{
targetPath
=
'/baosong/report/components/Tb7'
}
else
if
(
code
===
'T-B-8'
)
{
targetPath
=
'/baosong/report/components/Tb8'
}
else
if
(
code
===
'T-B-9'
)
{
targetPath
=
'/baosong/report/components/Tb9'
}
else
if
(
code
===
'T-B-10'
)
{
targetPath
=
'/baosong/report/components/Tb10'
}
else
if
(
code
===
'T-B-11'
)
{
targetPath
=
'/baosong/report/components/Tb11'
}
else
if
(
code
===
'R-R-1'
)
{
targetPath
=
'/baosong/report/components/Rr1'
}
else
if
(
code
===
'R-R-2'
)
{
targetPath
=
'/baosong/report/components/Rr2'
}
else
if
(
code
===
'T-M-1'
)
{
targetPath
=
'/baosong/report/components/Tm1'
}
else
if
(
code
===
'T-M-2'
)
{
targetPath
=
'/baosong/report/components/Tm2'
}
else
if
(
code
===
'T-M-3'
)
{
targetPath
=
'/baosong/report/components/Tm3'
}
else
if
(
code
===
'T-Q-1'
)
{
targetPath
=
'/baosong/report/components/Tq1'
}
else
if
(
code
===
'T-Q-2'
)
{
targetPath
=
'/baosong/report/components/Tq2'
}
else
if
(
code
===
'T-Q-3'
)
{
targetPath
=
'/baosong/report/components/Tq3'
}
else
if
(
code
===
'T-Q-4'
)
{
targetPath
=
'/baosong/report/components/Tq4'
}
else
if
(
code
===
'T-Q-5'
)
{
targetPath
=
'/baosong/report/components/Tq5'
}
if
(
targetPath
)
{
console
.
log
(
'跳转到页面:'
,
targetPath
,
'参数:'
,
queryParam
.
value
);
// 使用 Promise 确保数据更新完成后再跳转
await
nextTick
();
router
.
push
({
path
:
targetPath
,
query
:
{
taskId
:
queryParam
.
value
.
taskId
,
taskName
:
queryParam
.
value
.
taskName
,
tplId
:
queryParam
.
value
.
tplId
,
tplName
:
queryParam
.
value
.
tplName
,
tplCode
:
queryParam
.
value
.
tplCode
}
});
}
}
const
dataList
=
ref
([])
const
dataMap
=
ref
({})
const
dataAllList
=
ref
([])
async
function
iniData
()
{
dataAllList
.
value
=
await
allTpls
({});
dataMap
.
value
=
dataAllList
.
value
.
reduce
((
result
,
item
)
=>
{
const
key
=
item
.
tp
;
if
(
!
result
[
key
])
{
result
[
key
]
=
[];
}
result
[
key
].
push
(
item
);
return
result
;
},
{});
dataList
.
value
=
dataMap
.
value
[
1
]
}
const
filteredData
=
(
async
(
tp
)
=>
{
return
dataMap
.
value
[
tp
]
});
async
function
downLoadXml
(
record
)
{
let
retData
=
await
downLoadTaskXml
(
record
);
handleDownloadFile
(
retData
);
}
const
handleDownloadFile
=
(
filePath
)
=>
{
const
globOnlineViewUrl
:
string
=
import
.
meta
.
env
.
VITE_GLOB_ONLINE_VIEW_URL
;
const
url
=
globOnlineViewUrl
+
filePath
;
if
(
url
)
{
window
.
open
(
url
);
}
};
</
script
>
<
style
scoped
>
.date-picker-wrapper
{
display
:
flex
;
justify-content
:
left
;
align-items
:
left
;
width
:
100%
;
padding
:
0
20px
auto
;
margin-right
:
500px
;
}
</
style
>
\ No newline at end of file
zrch-risk-client-39/src/views/baosong/archive/ArchiveDrawer.vue
0 → 100644
浏览文件 @
738d9d93
<
template
>
<a-drawer
placement=
"right"
v-model:open=
"innerVisible"
:get-container=
"true"
width=
"100%"
:title=
"titile"
:mask=
"true"
@
close=
"handleClose()"
:style=
"
{ position: 'absolute', paddingTop: '0px', margin: '0px' }"
>
<a-card
style=
"width: 100%"
:tab-list=
"tabList"
:active-tab-key=
"activeKey"
@
tabChange=
"key => onTabChange(key)"
>
<template
#
tabBarExtraContent
>
<div
class=
"date-picker-wrapper"
>
<a-space>
<a-date-picker
placeholder=
"选择年"
picker=
"year"
>
<template
#
renderExtraFooter
></
template
>
</a-date-picker>
<a-date-picker
v-show=
"activeKey === 'quarter'"
placeholder=
"选择季度"
picker=
"quarter"
>
<
template
#
renderExtraFooter
></
template
>
</a-date-picker>
<a-date-picker
v-show=
"activeKey === 'month'"
placeholder=
"选择月"
picker=
"month"
>
<
template
#
renderExtraFooter
></
template
>
</a-date-picker>
</a-space>
</div>
</template>
<div
style=
"background-color: #ececec; padding: 20px"
>
<a-row
:gutter=
"[16,16]"
>
<a-col
:span=
"8"
v-for=
"item in dataList"
:key=
"item.id"
>
<a-card
:bordered=
"false"
>
<
template
#
title
>
{{
item
.
code
}}
-
{{
item
.
nm
}}
</
template
>
<
template
#
extra
>
<a-space>
<a
href=
"#"
@
click
.
prevent=
"downLoadXml(item)"
>
直接下载XML
</a>
<a
href=
"#"
@
click
.
prevent=
"gotoPage(item)"
>
预览
</a>
</a-space>
</
template
>
<span>
年度:{{ item.vyear }}
</span>
<span>
版本:{{ item.version }}
</span>
<span>
节点数:{{ item.childNum }}
</span><br>
<span>
{{ item.xmlfilePath }}
</span>
</a-card>
</a-col>
</a-row>
</div>
</a-card>
</a-drawer>
</template>
<
script
lang=
"ts"
setup
>
import
{
ref
,
onMounted
,
computed
,
nextTick
}
from
'vue'
;
import
{
allTpls
}
from
'../tpl/BaosongTpl.api'
;
import
{
useRoute
,
useRouter
}
from
'vue-router'
;
import
{
downLoadTaskXml
}
from
'../review/BaosongTaskReview.api'
;
const
route
=
useRoute
();
const
router
=
useRouter
();
// const queryParam = ref({
// taskId:0,
// taskName:'',
// tplId:'',
// tplName:'',
// tplCode:''
// })
onMounted
(()
=>
{
// if (route.query.taskId) {
// queryParam.value.taskId = Number(route.query.taskId); // Convert to number
// }
// if (route.query.taskName) {
// queryParam.value.taskName = String(route.query.taskName); // Ensure it's a string
// }
iniData
();
})
const
activeKey
=
ref
(
'year'
);
// 使用 computed 计算 tabList,根据 dataMap 中的记录数动态设置 disabled
const
tabList
=
computed
(()
=>
{
const
tabs
=
[
{
key
:
'year'
,
tab
:
'年报'
,
type
:
1
},
{
key
:
'quarter'
,
tab
:
'季报'
,
type
:
2
},
{
key
:
'month'
,
tab
:
'月报'
,
type
:
3
},
];
return
tabs
.
map
(
tab
=>
({
...
tab
,
//disabled: !dataMap.value[tab.type] || dataMap.value[tab.type].length === 0
}));
});
const
onTabChange
=
async
(
value
:
string
)
=>
{
activeKey
.
value
=
value
;
if
(
value
===
'year'
)
{
dataList
.
value
=
await
filteredData
(
1
)
}
else
if
(
value
===
'quarter'
)
{
dataList
.
value
=
await
filteredData
(
2
)
}
else
if
(
value
===
'month'
)
{
dataList
.
value
=
await
filteredData
(
3
)
}
else
{
//dataList.value = await filteredData(4)
}
}
const
gotoPage
=
async
(
item
)
=>
{
// 确保所有参数都设置完成后再跳转
// queryParam.value.tplName = item.nm || ''
// queryParam.value.tplCode = item.code || ''
// queryParam.value.tplId = item.id || ''
let
targetPath
=
''
const
code
=
item
.
code
||
''
if
(
code
===
'T-B-1'
)
{
targetPath
=
'/baosong/report/components/Tb1'
}
else
if
(
code
===
'T-B-2'
)
{
targetPath
=
'/baosong/report/components/Tb2'
}
else
if
(
code
===
'T-B-3'
)
{
targetPath
=
'/baosong/report/components/Tb3'
}
else
if
(
code
===
'T-B-4'
)
{
targetPath
=
'/baosong/report/components/Tb4'
}
else
if
(
code
===
'T-B-5'
)
{
targetPath
=
'/baosong/report/components/Tb5'
}
else
if
(
code
===
'T-B-6'
)
{
targetPath
=
'/baosong/report/components/Tb6'
}
else
if
(
code
===
'T-B-7'
)
{
targetPath
=
'/baosong/report/components/Tb7'
}
else
if
(
code
===
'T-B-8'
)
{
targetPath
=
'/baosong/report/components/Tb8'
}
else
if
(
code
===
'T-B-9'
)
{
targetPath
=
'/baosong/report/components/Tb9'
}
else
if
(
code
===
'T-B-10'
)
{
targetPath
=
'/baosong/report/components/Tb10'
}
else
if
(
code
===
'T-B-11'
)
{
targetPath
=
'/baosong/report/components/Tb11'
}
else
if
(
code
===
'R-R-1'
)
{
targetPath
=
'/baosong/report/components/Rr1'
}
else
if
(
code
===
'R-R-2'
)
{
targetPath
=
'/baosong/report/components/Rr2'
}
else
if
(
code
===
'T-M-1'
)
{
targetPath
=
'/baosong/report/components/Tm1'
}
else
if
(
code
===
'T-M-2'
)
{
targetPath
=
'/baosong/report/components/Tm2'
}
else
if
(
code
===
'T-M-3'
)
{
targetPath
=
'/baosong/report/components/Tm3'
}
else
if
(
code
===
'T-Q-1'
)
{
targetPath
=
'/baosong/report/components/Tq1'
}
else
if
(
code
===
'T-Q-2'
)
{
targetPath
=
'/baosong/report/components/Tq2'
}
else
if
(
code
===
'T-Q-3'
)
{
targetPath
=
'/baosong/report/components/Tq3'
}
else
if
(
code
===
'T-Q-4'
)
{
targetPath
=
'/baosong/report/components/Tq4'
}
else
if
(
code
===
'T-Q-5'
)
{
targetPath
=
'/baosong/report/components/Tq5'
}
if
(
targetPath
)
{
await
nextTick
();
router
.
push
({
path
:
targetPath
,
query
:
{
taskId
:
taskObj
.
value
.
id
,
taskName
:
taskObj
.
value
.
name
||
''
,
tplId
:
item
.
id
,
tplName
:
item
.
nm
||
''
,
tplCode
:
item
.
code
||
''
,
comfrom
:
'archive'
}
});
}
}
const
dataList
=
ref
([])
const
dataMap
=
ref
({})
const
dataAllList
=
ref
([])
const
taskObj
=
ref
({})
const
innerVisible
=
ref
(
false
)
const
titile
=
ref
(
''
)
async
function
iniData
()
{
dataAllList
.
value
=
await
allTpls
({});
dataMap
.
value
=
dataAllList
.
value
.
reduce
((
result
,
item
)
=>
{
const
key
=
item
.
tp
;
if
(
!
result
[
key
])
{
result
[
key
]
=
[];
}
result
[
key
].
push
(
item
);
return
result
;
},
{});
dataList
.
value
=
dataMap
.
value
[
1
]
}
const
filteredData
=
(
async
(
tp
)
=>
{
return
dataMap
.
value
[
tp
]
});
async
function
downLoadXml
(
record
)
{
let
retData
=
await
downLoadTaskXml
({
taskid
:
taskObj
.
value
.
id
,
tplid
:
record
.
id
,
tplname
:
record
.
nm
||
''
,
taskname
:
taskObj
.
value
.
name
||
''
});
handleDownloadFile
(
retData
);
}
const
handleDownloadFile
=
(
filePath
)
=>
{
const
globOnlineViewUrl
:
string
=
import
.
meta
.
env
.
VITE_GLOB_ONLINE_VIEW_URL
;
const
url
=
globOnlineViewUrl
+
filePath
;
if
(
url
)
{
window
.
open
(
url
);
}
};
const
handleClose
=
()
=>
{
innerVisible
.
value
=
false
;
}
const
openDrawer
=
(
task
)
=>
{
taskObj
.
value
=
task
titile
.
value
=
task
.
name
||
''
innerVisible
.
value
=
true
;
iniData
();
}
defineExpose
({
openDrawer
});
</
script
>
<
style
scoped
>
.date-picker-wrapper
{
display
:
flex
;
justify-content
:
left
;
align-items
:
left
;
width
:
100%
;
padding
:
0
20px
auto
;
margin-right
:
500px
;
}
</
style
>
\ No newline at end of file
zrch-risk-client-39/src/views/baosong/archive/ArchiveList.vue
0 → 100644
浏览文件 @
738d9d93
<
template
>
<div>
<!--引用表格-->
<BasicTable
@
register=
"registerTable"
:rowSelection=
"rowSelection"
>
<!--操作栏-->
<template
#
action=
"
{ record }">
<TableAction
:actions=
"getTableAction(record)"
/>
</
template
>
<!--字段回显插槽-->
<
template
#
htmlSlot=
"{ text }"
>
<div
v-html=
"text"
></div>
</
template
>
</BasicTable>
<ArchiveDrawer
ref=
"refArchiveDrawer"
@
callback=
"handleSuccess"
/>
</div>
</template>
<
script
lang=
"ts"
name=
"baosong-baosongTask"
setup
>
import
{
ref
,
computed
,
unref
}
from
'vue'
;
import
{
BasicTable
,
useTable
,
TableAction
}
from
'/@/components/Table'
;
import
{
useListPage
}
from
'/@/hooks/system/useListPage'
;
import
ArchiveDrawer
from
'./ArchiveDrawer.vue'
;
import
{
columns
,
searchFormSchema
}
from
'/@/views/baosong/task/BaosongTask.data'
;
import
{
archiveList
}
from
'/@/views/baosong/task/BaosongTask.api'
;
const
refArchiveDrawer
=
ref
();
const
{
tableContext
}
=
useListPage
({
tableProps
:
{
title
:
'任务表'
,
api
:
archiveList
,
columns
,
canResize
:
false
,
formConfig
:
{
labelWidth
:
"30%"
,
schemas
:
searchFormSchema
,
autoSubmitOnEnter
:
true
,
showAdvancedButton
:
true
,
fieldMapToNumber
:
[],
fieldMapToTime
:
[],
},
actionColumn
:
{
width
:
200
,
fixed
:
'right'
,
},
},
});
const
[
registerTable
,
{
reload
},
{
rowSelection
,
selectedRowKeys
}]
=
tableContext
;
async
function
handleSuccess
()
{
(
selectedRowKeys
.
value
=
[])
&&
reload
();
}
async
function
handleOpenDrawer
(
record
){
refArchiveDrawer
.
value
.
openDrawer
(
record
)
}
function
getTableAction
(
record
)
{
return
[
{
label
:
'下载'
,
//disabled:(record.sta!=9),
onClick
:
handleOpenDrawer
.
bind
(
null
,
record
),
},
];
}
</
script
>
<
style
scoped
>
</
style
>
zrch-risk-client-39/src/views/baosong/record/components/RecordHistory.vue
浏览文件 @
738d9d93
...
...
@@ -29,9 +29,9 @@
max-height=
"300"
:data=
"historyDataList"
:show-radio=
"true"
:row-config=
"{ isCurrent: true, isHover: true }"
:row-config=
"{ isCurrent: true, isHover: true
, useKey: true
}"
@
cell-click=
"rowChangeEvent"
:column
Config=
"{ resizable
: true }"
:column
-config=
"{ resizable: true, useKey
: true }"
:scroll-y=
"{ enabled: true, gt: 50 }"
:radio-config=
"{ labelField: 'name', highlight: true }"
>
...
...
@@ -54,7 +54,7 @@
{{
resultStatus
==
"warning"
?
"缺少参数值"
:
""
}}
</
template
>
<div
v-if=
"formulaDataList.length > 0"
>
<vxe-table
:show-header=
"false"
border
stripe
:data=
"formulaDataList"
:column-config=
"{ resizable
: true }"
>
<vxe-table
:show-header=
"false"
border
stripe
:data=
"formulaDataList"
:column-config=
"{ resizable: true, useKey
: true }"
>
<vxe-column
field=
"name"
title=
"项目"
width=
"100"
></vxe-column>
<vxe-column
field=
"content"
title=
"内容"
></vxe-column>
</vxe-table>
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb1.vue
浏览文件 @
738d9d93
...
...
@@ -22,7 +22,7 @@
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
...
...
@@ -305,9 +305,7 @@ import { ref, reactive, onMounted, computed } from 'vue'
import
{
VxeUI
,
VxeTableInstance
}
from
'vxe-table'
import
'vxe-table/lib/style.css'
import
{
useRoute
}
from
'vue-router'
// 组件导入
import
MultiColumnTable
from
'../tableComponents/MultiColumnTable.vue'
import
AttachTable
from
'../tableComponents/AttachTable.vue'
...
...
@@ -338,6 +336,7 @@ interface QueryParam {
tplId
:
number
tplName
:
string
tplCode
:
string
comfrom
:
string
}
interface
FormDataItem
{
...
...
@@ -414,7 +413,8 @@ const queryParam = ref<QueryParam>({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
const
formData
=
reactive
<
Record
<
string
,
any
>>
({})
...
...
@@ -479,13 +479,14 @@ const initPage = async () => {
}
const
initQueryParams
=
()
=>
{
const
{
taskId
,
taskName
,
tplId
,
tplName
,
tplCode
}
=
route
.
query
const
{
taskId
,
taskName
,
tplId
,
tplName
,
tplCode
,
comfrom
}
=
route
.
query
if
(
taskId
)
queryParam
.
value
.
taskId
=
Number
(
taskId
)
if
(
taskName
)
queryParam
.
value
.
taskName
=
String
(
taskName
)
if
(
tplId
)
queryParam
.
value
.
tplId
=
Number
(
tplId
)
if
(
tplName
)
queryParam
.
value
.
tplName
=
String
(
tplName
)
if
(
tplCode
)
queryParam
.
value
.
tplCode
=
String
(
tplCode
)
if
(
comfrom
)
queryParam
.
value
.
comfrom
=
String
(
comfrom
)
}
const
loadUserRights
=
async
()
=>
{
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb10.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"checkData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
...
...
@@ -310,7 +310,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
// 权限相关状态
...
...
@@ -353,6 +354,12 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
// 设置查询参数
setQueryParams
();
// 获取权限和验证公式
try
{
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb11.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<!--
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"checkData()"
>
校验
</vxe-button>
-->
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
>
保存
</vxe-button>
</
template
>
...
...
@@ -176,7 +176,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
interface
FormData
{
...
...
@@ -231,7 +232,10 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
try
{
if
(
queryParam
.
value
.
tplId
>
0
&&
queryParam
.
value
.
taskId
>
0
)
{
userAllocItems
.
value
=
await
findUserRightForTplItem
({
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb2.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"validateData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
...
...
@@ -230,7 +230,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -249,6 +250,9 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
try
{
loading
.
value
=
true
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb3.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"validateData()"
:disabled=
"loading"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
:disabled=
"loading"
>
保存
</vxe-button>
...
...
@@ -297,7 +297,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
interface
FormData
{
...
...
@@ -330,6 +331,9 @@ onMounted(async ()=>{
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
try
{
userAllocItems
.
value
=
await
findUserRightForTplItem
({
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb4.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"validateData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
>
保存
</vxe-button>
...
...
@@ -69,7 +69,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
// 权限相关状态
...
...
@@ -122,6 +123,9 @@ onMounted(async ()=>{
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
// 获取权限和验证公式
try
{
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb5.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold; margin-left: 20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"validateData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
>
保存
</vxe-button>
...
...
@@ -254,6 +254,7 @@
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
,
comfrom
:
''
});
// 权限相关状态
...
...
@@ -305,7 +306,10 @@
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
// 获取权限和验证公式
try
{
userAllocItems
.
value
=
await
findUserRightForTplItem
({
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb6.vue
浏览文件 @
738d9d93
...
...
@@ -17,7 +17,7 @@
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
...
...
@@ -366,6 +366,7 @@
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
,
comfrom
:
''
});
// 权限相关状态
...
...
@@ -418,7 +419,13 @@
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
// 初始化数据
await
refCheckTbData
.
value
.
initData
();
// 获取权限和验证公式
try
{
userAllocItems
.
value
=
await
findUserRightForTplItem
({
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb7.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"validateData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
>
保存
</vxe-button>
...
...
@@ -346,7 +346,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
// 状态变量
...
...
@@ -426,9 +427,6 @@ const initializePage = async () => {
fetchValidationFormulas
()
])
console
.
log
(
'获取到的权限:'
,
userAllocItems
.
value
.
length
)
console
.
log
(
'获取到的公式:'
,
validFormula
.
value
.
length
)
await
setTplItemMap
()
setFormItemRight
()
await
setData
()
...
...
@@ -455,6 +453,7 @@ const setQueryParams = () => {
if
(
params
.
tplId
)
queryParam
.
value
.
tplId
=
Number
(
params
.
tplId
)
if
(
params
.
tplName
)
queryParam
.
value
.
tplName
=
String
(
params
.
tplName
)
if
(
params
.
tplCode
)
queryParam
.
value
.
tplCode
=
String
(
params
.
tplCode
)
if
(
params
.
comfrom
)
queryParam
.
value
.
comfrom
=
String
(
params
.
comfrom
)
}
// 获取用户权限
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb8.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer()"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"checkData()"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch()"
>
保存
</vxe-button>
...
...
@@ -356,7 +356,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
// 状态变量
...
...
@@ -470,6 +471,7 @@ const setQueryParams = () => {
if
(
params
.
tplId
)
queryParam
.
value
.
tplId
=
Number
(
params
.
tplId
)
if
(
params
.
tplName
)
queryParam
.
value
.
tplName
=
String
(
params
.
tplName
)
if
(
params
.
tplCode
)
queryParam
.
value
.
tplCode
=
String
(
params
.
tplCode
)
if
(
params
.
comfrom
)
queryParam
.
value
.
comfrom
=
String
(
params
.
comfrom
)
}
// 获取用户权限
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tb9.vue
浏览文件 @
738d9d93
...
...
@@ -15,7 +15,7 @@
<span
style=
"font-weight: bold;margin-left:20px"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-edit"
@
click=
"handleOpenHistoryDrawer"
:disabled=
"loading"
>
近5年数据填报
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"validateData"
>
校验
</vxe-button>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
...
...
@@ -346,7 +346,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
// 权限相关状态
...
...
@@ -392,7 +393,13 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
);
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
);
}
// 设置查询参数
setQueryParams
();
// 获取权限和验证公式
try
{
userAllocItems
.
value
=
await
findUserRightForTplItem
({
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tm1.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -110,7 +110,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -129,7 +130,19 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
// 设置查询参数
setQueryParams
();
// 获取权限和验证公式
await
Promise
.
all
([
fetchUserRights
(),
fetchValidationFormulas
()
])
await
setTplItemMap
()
await
setData
()
})
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tm2.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -82,7 +82,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -101,7 +102,10 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
await
setTplItemMap
()
await
setData
()
})
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tq1.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -110,7 +110,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -130,6 +131,9 @@ onMounted(async () => {
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
await
setTplItemMap
()
await
setData
()
})
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tq2.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -110,7 +110,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -129,7 +130,11 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
await
setTplItemMap
()
await
setData
()
})
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tq3.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -110,7 +110,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -129,6 +130,9 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
await
setTplItemMap
()
await
setData
()
...
...
zrch-risk-client-39/src/views/baosong/report/components/Tq4.vue
浏览文件 @
738d9d93
...
...
@@ -7,7 +7,7 @@
<span
class=
"info-label"
>
表格:
{{
queryParam
?.
tplCode
}}
{{
queryParam
?.
tplName
}}
</span>
</div>
</
template
>
<
template
#
tools
>
<
template
#
tools
v-if=
"!queryParam.comfrom"
>
<vxe-button
status=
"primary"
icon=
"vxe-icon-save"
@
click=
"saveBatch"
>
保存
</vxe-button>
</
template
>
</vxe-toolbar>
...
...
@@ -110,7 +110,8 @@ const queryParam = ref({
taskName
:
''
,
tplId
:
-
1
,
tplName
:
''
,
tplCode
:
''
tplCode
:
''
,
comfrom
:
''
})
onMounted
(
async
()
=>
{
...
...
@@ -129,6 +130,9 @@ onMounted(async () => {
if
(
route
.
query
.
tplCode
)
{
queryParam
.
value
.
tplCode
=
String
(
route
.
query
.
tplCode
)
}
if
(
route
.
query
.
comfrom
)
{
queryParam
.
value
.
comfrom
=
String
(
route
.
query
.
comfrom
)
}
await
setTplItemMap
()
await
setData
()
...
...
zrch-risk-client-39/src/views/baosong/review/BaosongTaskReview.api.ts
浏览文件 @
738d9d93
...
...
@@ -63,6 +63,12 @@ export const saveOrUpdate = (params, isUpdate) => {
return
defHttp
.
post
({
url
:
url
,
params
});
};
export
const
queryTaskReview
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
queryTaskReview
,
params
});
// export const queryTaskReview = (params) => defHttp.get({
// url: Api.queryTaskReview,
// params
// });
export
const
downLoadTaskXml
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
downLoadTaskXml
,
params
});
export
const
downLoadTaskXml
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
downLoadTaskXml
,
params
});
zrch-risk-client-39/src/views/baosong/review/BaosongTaskReview.data.ts
浏览文件 @
738d9d93
...
...
@@ -20,9 +20,21 @@ export const columns: BasicColumn[] = [
align
:
'center'
,
dataIndex
:
'appSta'
,
customRender
:
({
text
})
=>
{
if
(
text
===
1
)
return
'通过'
return
'未通过'
//return render.renderDict(text, 'rate_approve');
if
(
!
text
||
text
===
0
)
{
return
render
.
renderTag
(
"待审批"
,
"blue"
);
}
if
(
!
text
||
text
===
1
)
{
return
render
.
renderTag
(
"通过"
,
"green"
);
}
if
(
!
text
||
text
===
2
)
{
return
render
.
renderTag
(
"未通过"
,
"red"
);
}
if
(
!
text
||
text
===
9
)
{
return
render
.
renderTag
(
"归档"
,
"gray"
);
}
const
color
=
text
==
'L'
?
'blue'
:
text
==
'M'
?
'yellow'
:
'red'
;
return
render
.
renderTag
(
render
.
renderDict
(
text
,
'priority'
),
color
);
},
ifShow
:
true
,
},
...
...
@@ -123,7 +135,7 @@ export const formSchemaApprove: FormSchema[] = [
return
{
options
:
[
{
label
:
'通过'
,
value
:
1
},
{
label
:
'否决'
,
value
:
0
},
{
label
:
'否决'
,
value
:
2
},
],
};
},
...
...
zrch-risk-client-39/src/views/baosong/review/BaosongTaskReviewList.vue
浏览文件 @
738d9d93
...
...
@@ -19,11 +19,8 @@
import
{
useListPage
}
from
'/@/hooks/system/useListPage'
;
import
{
getFileAccessHttpUrl
}
from
'/@/utils/common/compUtils'
;
import
{
columns
,
searchFormSchema
}
from
'./BaosongTaskReview.data'
;
import
{
list
,
deleteOne
,
batchDelete
,
downLoadTaskXml
}
from
'./BaosongTaskReview.api'
;
import
{
list
,
deleteOne
,
batchDelete
,
downLoadTaskXml
,
saveOrUpdate
}
from
'./BaosongTaskReview.api'
;
import
BaosongApproveModal
from
'./components/BaosongApproveModal.vue'
;
import
{
defHttp
}
from
'/@/utils/http/axios'
;
const
checkedKeys
=
ref
<
Array
<
string
|
number
>>
([]);
const
[
registerModal
,
{
openModal
}]
=
useModal
();
const
[
registerAppModal
,
{
openModal
:
openAppModal
}]
=
useModal
();
...
...
@@ -58,48 +55,21 @@
},
beforeFetch
(
params
)
{
params
=
Object
.
assign
(
params
,{
token
:
allReportData
.
value
})
},
params
=
Object
.
assign
(
params
,{
token
:
allReportData
.
value
})
},
},
});
const
[
registerTable
,
{
reload
},
{
rowSelection
,
selectedRowKeys
}]
=
tableContext
;
let
url
=
window
.
location
.
href
;
console
.
log
(
"----------- "
,
url
);
// 输出当前路由的完整路径
let
intNumber
=
url
.
indexOf
(
"Token="
);
intNumber
=
intNumber
+
6
;
let
cctoken
=
url
.
substring
(
intNumber
);
console
.
log
(
"----------- cctoken"
,
cctoken
);
// 输出当前路由的完整路径
const
allReportDataUrl
=
"/api/jflow/getUserTokey"
const
allReportData
=
ref
();
const
gettoken
=
async
()
=>
{
allReportData
.
value
=
await
defHttp
.
get
({
url
:
allReportDataUrl
,
params
:{
Token
:
cctoken
}});
}
onMounted
(
async
()
=>
{
await
gettoken
();
console
.
log
(
"----------- gettoken "
,
allReportData
.
value
);
});
function
handleAdd
()
{
openModal
(
true
,
{
isUpdate
:
false
,
showFooter
:
true
,
});
}
function
handleEdit
(
record
:
Recordable
)
{
record
[
'token'
]
=
allReportData
.
value
;
openModal
(
true
,
{
record
,
isUpdate
:
true
,
showFooter
:
true
,
});
function
handleEdit
(
record
:
Recordable
)
{
record
.
appSta
=
9
;
saveOrUpdate
(
record
,
true
).
then
((
res
)
=>
{
handleSuccess
();
})
}
function
handleDetail
(
record
:
Recordable
)
{
...
...
@@ -114,9 +84,6 @@
await
deleteOne
({
id
:
record
.
id
},
handleSuccess
);
}
async
function
batchHandleDelete
()
{
await
batchDelete
({
ids
:
selectedRowKeys
.
value
},
handleSuccess
);
}
function
handleSuccess
()
{
(
selectedRowKeys
.
value
=
[])
&&
reload
();
...
...
@@ -128,14 +95,14 @@
label
:
'审核'
,
onClick
:
handleApproval
.
bind
(
null
,
record
),
},
{
label
:
'下载'
,
onClick
:
downLoadXml
.
bind
(
null
,
record
),
},
// {
// label: '下载',
// onClick: downLoadXml.bind(null, record),
// },
{
label
:
'归档'
,
onClick
:
downLoadXml
.
bind
(
null
,
record
),
disabled
:
!
(
record
.
appSta
==
1
),
onClick
:
handleEdit
.
bind
(
null
,
record
),
},
];
}
...
...
@@ -146,12 +113,6 @@
label
:
'详情'
,
onClick
:
handleDetail
.
bind
(
null
,
record
),
},
{
label
:
'归档'
,
onClick
:
handleDetail
.
bind
(
null
,
record
),
},
{
label
:
'删除'
,
popConfirm
:
{
...
...
@@ -171,10 +132,7 @@
}
async
function
downLoadXml
(
record
)
{
//{id: record.id}
record
[
'token'
]
=
allReportData
.
value
;
let
retData
=
await
downLoadTaskXml
(
record
);
handleDownloadFile
(
retData
);
}
...
...
@@ -182,15 +140,6 @@
return
row
.
taskid
+
'_'
+
row
.
tplid
;
}
function
goToFile
(
filepath
)
{
if
(
!!
filepath
)
{
let
url
=
getFileAccessHttpUrl
(
filepath
);
window
.
open
(
url
);
}
else
{
message
.
warning
(
'没有找到要下载的文件'
);
}
}
const
handleDownloadFile
=
(
filePath
)
=>
{
const
globOnlineViewUrl
:
string
=
import
.
meta
.
env
.
VITE_GLOB_ONLINE_VIEW_URL
;
const
url
=
globOnlineViewUrl
+
filePath
;
...
...
zrch-risk-client-39/src/views/baosong/task/BaosongTask.api.ts
浏览文件 @
738d9d93
...
...
@@ -16,6 +16,9 @@ enum Api {
listForFillData
=
'/baosong/baosongTask/listForFillData'
,
importData
=
'/baosong/baosongTask/importData'
,
archiveList
=
'/baosong/baosongTask/archiveList'
,
}
/**
...
...
@@ -34,6 +37,11 @@ export const getImportUrl = Api.importExcel;
export
const
list
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
list
,
params
});
export
const
archiveList
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
archiveList
,
params
});
export
const
listForFillData
=
(
params
)
=>
defHttp
.
get
({
url
:
Api
.
listForFillData
,
params
});
...
...
zrch-risk-client-39/src/views/baosong/task/BaosongTask.data.ts
浏览文件 @
738d9d93
...
...
@@ -3,6 +3,8 @@ import { FormSchema } from '/@/components/Table';
import
{
rules
}
from
'/@/utils/helper/validator'
;
import
{
render
}
from
'/@/utils/common/renderUtils'
;
import
{
getAllRolesList
,
queryUserByDepId
}
from
'/@/views/system/user/user.api'
;
const
objTmp
=
{
1
:
"year"
,
2
:
"quarter"
,
3
:
"month"
}
const
valueFormat
=
{
1
:
"YYYY"
,
2
:
"YYYYqQ"
,
3
:
"YYYY-MM"
}
//列表数据
export
const
columns
:
BasicColumn
[]
=
[
{
...
...
@@ -45,7 +47,7 @@ export const columns: BasicColumn[] = [
resizable
:
true
},
{
title
:
'
截至日期
'
,
title
:
'
统计时段
'
,
align
:
'left'
,
dataIndex
:
'enterDate'
,
customRender
:
({
text
})
=>
{
...
...
@@ -153,10 +155,99 @@ export const formSchema: FormSchema[] = [
label
:
'报表类型'
,
field
:
'tp'
,
component
:
'JDictSelectTag'
,
componentProps
:
{
componentProps
:
({
formActionType
,
formModel
})
=>
{
return
{
dictCode
:
'report_tp'
,
placeholder
:
'请选择'
,
stringToNumber
:
true
,
sync
:
true
,
onChange
:
async
(
tp
)
=>
{
const
{
updateSchema
}
=
formActionType
;
updateSchema
([
{
field
:
'enterDate'
,
component
:
'DatePicker'
,
componentProps
:
{
picker
:
objTmp
[
tp
],
valueFormat
:
valueFormat
[
tp
],
format
:
valueFormat
[
tp
],
onChange
:
(
val
)
=>
{
let
date
=
new
Date
(
val
);
let
year
=
date
.
getFullYear
();
let
month
=
date
.
getMonth
()
+
1
;
let
stDate
=
""
;
let
endDate
=
""
;
if
(
formModel
.
tp
==
3
)
{
let
firstDate
=
year
+
"-"
+
(
month
<
10
?
'0'
+
month
:
month
)
+
"-01"
;
let
lastDate
=
new
Date
(
year
,
month
,
0
).
getDate
();
stDate
=
firstDate
;
endDate
=
year
+
"-"
+
(
month
<
10
?
'0'
+
month
:
month
)
+
"-"
+
lastDate
}
else
if
(
formModel
.
tp
==
2
)
{
let
firstDate
=
date
;
let
quarter
=
Math
.
floor
((
firstDate
.
getMonth
()
+
3
)
/
3
);
let
lastMonth
=
quarter
*
3
;
let
lastDate
=
new
Date
(
year
,
lastMonth
,
0
).
getDate
();
stDate
=
firstDate
.
toISOString
().
slice
(
0
,
10
)
endDate
=
year
+
"-"
+
(
lastMonth
<
10
?
'0'
+
lastMonth
:
lastMonth
)
+
"-"
+
lastDate
}
else
if
(
formModel
.
tp
==
1
)
{
stDate
=
year
+
"-01-01"
;
endDate
=
year
+
"-12-31"
}
formModel
.
startDate
=
stDate
formModel
.
endDate
=
endDate
}
},
},
]);
formModel
.
enterDate
=
''
formModel
.
startDate
=
""
formModel
.
endDate
=
""
}
}
},
required
:
true
,
},
{
label
:
'统计时段'
,
field
:
'enterDate'
,
component
:
'DatePicker'
,
componentProps
:
({
formActionType
,
formModel
})
=>
{
const
tp
=
formModel
.
tp
console
.
log
(
tp
)
console
.
log
(
objTmp
[
tp
])
console
.
log
(
valueFormat
[
tp
])
return
{
picker
:
objTmp
[
tp
],
valueFormat
:
valueFormat
[
tp
],
format
:
valueFormat
[
tp
]
}
},
required
:
true
,
},
{
label
:
'开始日期'
,
field
:
'startDate'
,
dynamicDisabled
:
false
,
component
:
'DatePicker'
,
componentProps
:
{
valueFormat
:
'YYYY-MM-DD'
,
format
:
"YYYY-MM-DD"
,
},
required
:
true
,
},
{
label
:
'结束日期'
,
field
:
'endDate'
,
component
:
'DatePicker'
,
dynamicDisabled
:
false
,
componentProps
:
{
valueFormat
:
'YYYY-MM-DD'
,
format
:
"YYYY-MM-DD"
,
},
required
:
true
,
},
...
...
@@ -186,22 +277,21 @@ export const formSchema: FormSchema[] = [
defaultExpandLevel
:
2
,
multiple
:
false
,
onSelect
:
async
(
options
,
values
)
=>
{
const
depId
=
values
.
value
[
0
]
if
(
depId
.
length
==
32
){
const
users
=
await
queryUserByDepId
({
id
:
depId
});
const
newArray
=
users
.
map
(
user
=>
({
label
:
user
.
realname
,
value
:
user
.
id
}));
const
{
updateSchema
}
=
formActionType
;
updateSchema
([
{
field
:
'respUser'
,
componentProps
:
{
options
:
newArray
},
},
]);
}
// const depId = values.value[0]
// if(depId.length==32){
// const users = await queryUserByDepId({id:depId});
// const newArray = users.map(user => ({
// label: user.realname,
// value: user.id
// }));
// const { updateSchema } = formActionType;
// updateSchema([
// {
// field: 'respUser',
// componentProps: { options: newArray },
// },
// ]);
// }
},
};
},
...
...
@@ -209,38 +299,21 @@ export const formSchema: FormSchema[] = [
{
label
:
'负责人'
,
field
:
'respUser'
,
component
:
'Select'
,
componentProps
:
{
options
:[]
component
:
'JSelectUserByDept'
,
componentProps
:{
labelKey
:
'realname'
,
rowKey
:
'username'
},
required
:
fals
e
,
required
:
tru
e
,
},
{
label
:
'联系电话'
,
field
:
'enterTel'
,
component
:
'Input'
,
required
:
false
,
},
{
label
:
'填报日期'
,
field
:
'enterDate'
,
component
:
'DatePicker'
,
required
:
false
,
},
{
label
:
'开始日期'
,
field
:
'startDate'
,
component
:
'DatePicker'
,
required
:
false
,
},
{
label
:
'结束日期'
,
field
:
'endDate'
,
component
:
'DatePicker'
,
required
:
false
,
required
:
true
,
},
// TODO 主键隐藏字段,目前写死为ID
{
label
:
''
,
...
...
zrch-risk-client-39/src/views/metric/approval/index.vue
浏览文件 @
738d9d93
...
...
@@ -138,6 +138,9 @@ async function setDataList(params) {
const
handleApproval
=
async
(
appSta
)
=>
{
const
ids
=
await
getSelectIds
();
if
(
ids
.
length
==
0
){
return
;
}
batchSaveApproval
({
ids
:
ids
,
appSta
:
appSta
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论