_patch_loaders.py 2.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from pathlib import Path
  2. base = Path(r"d:/Projects/Ai-DOP/SourceCode/references/Admin.NET/Web/src/views/aidop/kanban")
  3. # S1
  4. p = base/'s1.vue'; t = p.read_text(encoding='utf-8')
  5. t = t.replace("import { homeS1 } from './data/homeModulesSync'", "import { homeS1, loadHomeModuleMetrics } from './data/homeModulesSync'")
  6. t = t.replace("onMounted(() => {", "onMounted(async () => {\n await loadHomeModuleMetrics()")
  7. p.write_text(t, encoding='utf-8')
  8. # S2
  9. p = base/'s2.vue'; t = p.read_text(encoding='utf-8')
  10. t = t.replace("import { s2DetailTopCards, s2TrendSeries } from './data/s2Kpis'", "import { s2DetailTopCards, s2TrendSeries, loadS2Kpis } from './data/s2Kpis'")
  11. t = t.replace("onMounted(() => {", "onMounted(async () => {\n await loadS2Kpis()")
  12. p.write_text(t, encoding='utf-8')
  13. # S3..S7
  14. for name in ['s3.vue','s4.vue','s5.vue','s6.vue','s7.vue']:
  15. p = base/name; t = p.read_text(encoding='utf-8')
  16. t = t.replace("from './data/homeModulesSync'", "from './data/homeModulesSync'")
  17. if "loadHomeModuleMetrics" not in t:
  18. t = t.replace("from './data/homeModulesSync'", "from './data/homeModulesSync'\nimport { loadHomeModuleMetrics } from './data/homeModulesSync'")
  19. t = t.replace("onMounted(() => {", "onMounted(async () => {\n await loadHomeModuleMetrics()")
  20. p.write_text(t, encoding='utf-8')
  21. # Home dashboard uses same source
  22. p = Path(r"d:/Projects/Ai-DOP/SourceCode/references/Admin.NET/Web/src/views/dashboard/home.vue")
  23. t = p.read_text(encoding='utf-8')
  24. if "loadHomeModuleMetrics" not in t:
  25. t = t.replace("} from './data/homeModulesSync'", " ,loadHomeModuleMetrics\n} from './data/homeModulesSync'")
  26. if "loadS2Kpis" not in t:
  27. t = t.replace("import { s2HomeKpiList } from './data/s2Kpis'", "import { s2HomeKpiList, loadS2Kpis } from './data/s2Kpis'")
  28. t = t.replace(" loadKanbanData()", " await loadHomeModuleMetrics()\n await loadS2Kpis()\n loadKanbanData()")
  29. t = t.replace("onMounted(() => {", "onMounted(async () => {")
  30. p.write_text(t, encoding='utf-8')
  31. print('patched kanban pages for db loading')