From 1c65d5a6081889043abc20c6bd760d8172fca0fd Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 03 5月 2025 17:42:14 +0800
Subject: [PATCH] 222
---
PipeLineLems/web/src/libs/Base/Base.ts | 89 ++++++++++++++++++++++++++++++++++----------
1 files changed, 69 insertions(+), 20 deletions(-)
diff --git a/PipeLineLems/web/src/libs/Base/Base.ts b/PipeLineLems/web/src/libs/Base/Base.ts
index b3329ef..68f13be 100644
--- a/PipeLineLems/web/src/libs/Base/Base.ts
+++ b/PipeLineLems/web/src/libs/Base/Base.ts
@@ -1,26 +1,30 @@
import sdk from 'sdk'
import { ref, reactive, Ref, computed, onMounted, nextTick } from 'vue'
import { Create } from '@/libs/Create/Create'
-import { globalState } from '../Store/Store'
+import { globalState } from '../Store/globalState'
const { request } = sdk.utils
// @ts-ignore
import compose from 'koa-compose'
+import { ConfigureCodeMap, SwappedConfigureCodeMap } from '@/libs/system-enum'
+import { getSettings } from '@/api/common-enum'
+interface SettingType {
+ settings: {
+ name: string
+ value: string
+ }[]
+}
let composeMiddleArray: any = []
let flag = 0
-export class Base<
- T extends {
- [key: string]: any
- } = {}
-> {
+export class Base<T extends {} = {}> {
// 鐘舵��
[key: string]: any
constructor(initState?: T) {
if (initState) {
this.initState(initState)
- // this.getVariable()
+ this.getVariable()
this.onMounted && onMounted(this.onMounted.bind(this))
}
}
@@ -28,7 +32,7 @@
* 鍏ㄥ眬鐘舵��
*/
//@ts-ignore
- static globalState: Record<string, any> = globalState
+ static globalState = globalState
/**
* 璇锋眰request锛宺equest.get request.post...
*/
@@ -68,6 +72,48 @@
}
}
/**
+ * 鑾峰彇鐢ㄦ埛璁剧疆
+ */
+ async getFormDataBySettings() {
+ const { settings }: SettingType = (await getSettings()) || {
+ settings: [],
+ }
+ const formData: Record<string, any> = {}
+ settings.forEach((item: any) => {
+ const key = SwappedConfigureCodeMap[item.name]
+ if (key) {
+ if (typeof item.name === ConfigureCodeMap.ProductionLineSegment) {
+ try {
+ item.value = JSON.parse(item.value)
+ formData[key] = item.value
+ } catch (error) {
+ item.value = []
+ }
+ } else {
+ try {
+ if (this.isStringAnObject(item.value)) {
+ formData[key] = JSON.parse(item.value)
+ } else {
+ formData[key] = item.value
+ }
+ } catch (error) {
+ formData[key] = []
+ console.error(error)
+ }
+ }
+ }
+ })
+ console.log(settings, formData, 'settings')
+ return formData
+ }
+
+ /**
+ * 鍒濆鍖栫郴缁熼厤缃�
+ */
+ private async initSystemConfig() {
+ this.baseSystemConfig.value = await this.getFormDataBySettings()
+ }
+ /**
* 鏍规嵁name鑾峰彇鍙橀噺ID
* @param name
* @returns
@@ -102,16 +148,17 @@
this.clear()
// 缂撳瓨涓�鍒嗛挓,濡傛灉涓嬫閲嶆柊璇锋眰锛屽垯鏇存柊
if (size > 0 && Date.now() - t < Base.CACHE_TIME) return next && next()
- try {
- const vars = await request.get('/api/v1/variable/query')
- const varMap = this.transformArrayToMap(vars.result)
- this.setState(Base.CACHE_KEY, Date.now())
- this.setState(Base.MAP_KEY, varMap)
- next && next()
- } catch (error) {
- // next()
- console.error(error, '鍙橀噺鏌ヨ鎺ュ彛鎶ラ敊锛屾殏鍋滆姹�')
- }
+ // 鍘婚櫎鑾峰彇鍙橀噺
+ // try {
+ // const vars = await request.get('/api/v1/variable/query')
+ // const varMap = this.transformArrayToMap(vars.result)
+ // this.setState(Base.CACHE_KEY, Date.now())
+ // this.setState(Base.MAP_KEY, varMap)
+ // next && next()
+ // } catch (error) {
+ // // next()
+ // console.error(error, '鍙橀噺鏌ヨ鎺ュ彛鎶ラ敊锛屾殏鍋滆姹�')
+ // }
}
/**
* 娓呯悊鍏ㄥ眬鍙傛暟
@@ -154,7 +201,7 @@
* @param key key
* @returns any
*/
- getState(key: string | any) {
+ getState(key: string | symbol) {
return Base.globalState[key]
}
/**
@@ -163,7 +210,7 @@
* @param value value
* @returns void
*/
- setState(key: string | any, value: any) {
+ setState(key: string | symbol, value: any) {
return (Base.globalState[key] = ref(value))
}
@@ -187,5 +234,7 @@
return sdk.userInfo || {}
}
+ static userInfo = sdk.userInfo || {}
+
// useVModels
}
--
Gitblit v1.9.3