|
@@ -0,0 +1,58 @@
|
|
|
+import { DemensionPagesInter, DemensionPagesListInter } from '@/js-pages/types'
|
|
|
+import pagesArr from '@/js-pages'
|
|
|
+import { useRoute } from 'vue-router'
|
|
|
+import $axios from '@/api'
|
|
|
+import { reactive } from 'vue'
|
|
|
+
|
|
|
+const routerMatch = () => {
|
|
|
+
|
|
|
+ //遍历获取所有维度列表
|
|
|
+ const allDemensionArr = [] as DemensionPagesListInter[]
|
|
|
+ const demensionArr = (arr: any[]): DemensionPagesInter[] => {
|
|
|
+ return arr.reduce((total, item: any) => item.list ? demensionArr(item.list) : allDemensionArr.push(item), [])
|
|
|
+ }
|
|
|
+ demensionArr(pagesArr)
|
|
|
+
|
|
|
+ //根据路由名称匹配对应维度
|
|
|
+ const route = useRoute()
|
|
|
+ const selectDemension = allDemensionArr.find(item => route.path === `/${item.routing}`)!
|
|
|
+
|
|
|
+ const state = reactive({
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ deleted: 0,
|
|
|
+ entityType: 2,
|
|
|
+ entityName: '宁德时代新能源科技股份有限公司',
|
|
|
+ entityId: '76d4d8ae15b063986d88abe92a5efe83',
|
|
|
+ totalNum: 0,
|
|
|
+ totalPage: 0
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ const getList = async (extraParams?: {}) => {
|
|
|
+ //发起请求
|
|
|
+ const { pageNum, pageSize, deleted, entityType, entityName, entityId } = state
|
|
|
+ const params = {
|
|
|
+ dimensionCode: selectDemension?.code,
|
|
|
+ pageNum,
|
|
|
+ pageSize,
|
|
|
+ deleted,
|
|
|
+ entityType,
|
|
|
+ entityName,
|
|
|
+ entityId,
|
|
|
+ ...extraParams
|
|
|
+ }
|
|
|
+ const res = await $axios.get('lawyer-workbench/risk/dimension/page', { params }) as { totalNum: number, totalPage: number }
|
|
|
+ state.totalNum = res.totalNum
|
|
|
+ state.totalPage = res.totalPage
|
|
|
+ return res
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ return {
|
|
|
+ selectDemension,
|
|
|
+ state,
|
|
|
+ getList
|
|
|
+ }
|
|
|
+}
|
|
|
+export default routerMatch
|