ZaiZai 6 months ago
parent
commit
4f2c0cc647
2 changed files with 35 additions and 1 deletions
  1. 1 1
      public/version.json
  2. 34 0
      src/store/modules/useProject.js

+ 1 - 1
public/version.json

@@ -1,3 +1,3 @@
 {
-  "value": "20240822173958"
+  "value": "20240822175634"
 }

+ 34 - 0
src/store/modules/useProject.js

@@ -0,0 +1,34 @@
+import { computed, ref, watch } from 'vue'
+import { useAppStore } from '~src/store'
+import { isNullES } from 'js-fast-way'
+
+export function useProject() {
+    const useAppState = useAppStore()
+
+    const projectId = ref(useAppState.getProjectId)
+    const contractId = ref(useAppState.getContractId)
+    const projectInfo = ref(useAppState.getProjectInfo)
+    const contractInfo = ref(useAppState.getContractInfo)
+
+    watch(() => [
+        useAppState.getProjectId, useAppState.getContractId,
+        useAppState.getProjectInfo, useAppState.getContractInfo,
+    ], ([pid, cid, pinfo, cinfo]) => {
+        projectId.value = pid
+        contractId.value = cid
+        projectInfo.value = pinfo
+        contractInfo.value = cinfo
+    }, { deep: true })
+
+    const isAppLoading = computed(() => {
+        return !isNullES(projectId.value) && !isNullES(contractId.value)
+    })
+
+    return {
+        projectId,
+        contractId,
+        projectInfo,
+        contractInfo,
+        isAppLoading,
+    }
+}