PowerGridБаримт бичиг
Танилцуулга

Тойм

2 мин уншихREADME.mdGitHub дээр засах

Монгол Улсын эрчим хүчний үндэсний дижитал дэд бүтэц — 1,000,000 цахилгааны тоолуурын өгөгдлийг нэг хабд.

Утасны апп (iOS): mobile-brand/ — bash deploy/prepare-core.sh && .build/core/native-apps/mobile/ios/build.sh.

Gerege Nexus-ийн private distribution.

01Бүтээгдэхүүн

Эн тэргүүний зорилт: эрчим хүчний урсгалыг бүрэн хянах ба гар утсаар төлбөр төлөх; дараа нь postpaid-аас prepaid руу шилжих (төлөвлөгөө).

PowerGrid нь хэмжилтийн өгөгдлийн платформ: тоолуурын заалтыг эх төхөөрөмжөөс авч, хадгалж, баталгаажуулж, дахин гаргаж үзүүлэх баталгаатай урсгал. Төлбөр, хэрэглэгчийн үйлчилгээ нь энэ баталгаатай өгөгдөл дээр нэмэгдэнэ.

ДавхаргаХариуцах ажил
HES адаптерDLMS (Gurux) уншилт, retry, backfill, command dispatch
Оролт ба түүхий архивSource ID, receipt ID, idempotency, давхардал арилгах
MDM ба VEEБодит / тооцоолсон / орлуулсан заалт, хувилбар, засварын түүх
ДомэйнТрансформаторын баланс, тариф, billing ledger, event
КомандТусдаа worker, зөвшөөрөл, read-back баталгаажуулалт, audit
Эрх (17-р бүлэг)Core (PostgreSQL+RLS) / Grouping / Analytics тусдаа; ЕХ 2023/1162 үүрэг

Хоёр апп нэг багц modules/powergrid-д:

  • PowerGrid Hub (io.gerege.powergrid, workspace) — түгээх компани, ЭХЗХ: сүлжээний бүртгэл, заалт, баланс, төлбөрийн хаб, PowerGrid-ийн өөрийн billing (тариф, сарын тооцоо).
  • PowerGrid App (io.gerege.powergrid.app, person) — иргэн: eID-ээр данс холбох, хэрэглээ, нэхэмжлэл ба задаргаа, гар утсаар төлөх, өгөгдлөө татах ба хуваалцах. Цөмийн person gate-ийн ард (backend/v1.34.0, nexus.PersonApp, nexus.PersonOf) /api/v1/me/powergrid/*-д ажиллана; иргэн бүрт анхдагчаар суугдана (DefaultPersonApps, backend/v1.35.0), устгавал буцаж суугдахгүй.

PowerGrid Hub — модуль modules/powergrid (io.gerege.powergrid) нь nexus.Register-ээр бүртгэгдэнэ. Одоо дараах хэсгүүдтэй:

  • сүлжээний бүртгэл;
  • байгууллага дамнасан эрх (ADR-001);
  • өгөгдлийн гэрээ meter-data/v1;
  • түвшин бүрийн баланс;
  • төлбөрийн хаб billing/v1.

Schema-г cmd/migrate цөмийнхийн дараа ажиллуулна. Дээрх давхаргууд үе шаттай нэмэгдэнэ (цөмийн MODULES.md).

Эхний спринт (PG-01…PG-11): тоолуурын inventory, simulator-ийг production-оос хаах, TEAMI mapping, raw receipt + idempotency, архивын төлөв ба version, бодит collection worker, command status, service point түүх, D+1 completeness, лабораторийн нийцлийн тест, authz схем + pgTAP. Дэлгэрэнгүйг судалгааны 16-р бүлэг-ээс.

02Build

Go 1.26, цөмийн private репод GitHub эрх, Docker Buildx хэрэгтэй.

sh
gh auth setup-gitexport GOPRIVATE=github.com/gerege-systems/nexusgo build -o bin/power-grid .go vet ./...bash deploy/prepare-core.sh

CI нь Go distribution-ийг шалгаж, түгжсэн frontend-ийг test/lint хийгээд хоёр образ барина; main дээр ghcr.io/gerege-systems/power-grid-mn-д commit-SHA tag-аар гарна. Security workflow өөрчлөлт бүр болон Даваа гариг бүр ажиллана. Репод PRIVATE_NEXUS_TOKEN secret (цөм дээр contents:read) хэрэгтэй.

03Production — powergrid.mn

compose.yml, deploy/, Deploy workflow. Provision ба шалгах алхам: docs/deployment.mn.md.

Автомат deploy нь repo variable DEPLOY_ENABLED=true болон одоогийн main-ий амжилттай CI-аар хаалттай. Сервер, DNS, SSH host key бэлэн болтол унтраалттай. Тохируулсан pipeline нь ажиллаж буй deployment-ийн нотолгоо биш.

Энэ хуудас тус болсон уу?Таны хариу баримтыг сайжруулахад тусална.