commit 7f726a3f5d9147b125a9deecdb127e0538d55b37 Author: Willie Date: Mon May 25 13:18:00 2026 +0800 first commit diff --git a/.obsidian/app.json b/.obsidian/app.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.obsidian/app.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/.obsidian/appearance.json b/.obsidian/appearance.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.obsidian/appearance.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/.obsidian/core-plugins.json b/.obsidian/core-plugins.json new file mode 100644 index 0000000..639b90d --- /dev/null +++ b/.obsidian/core-plugins.json @@ -0,0 +1,33 @@ +{ + "file-explorer": true, + "global-search": true, + "switcher": true, + "graph": true, + "backlink": true, + "canvas": true, + "outgoing-link": true, + "tag-pane": true, + "footnotes": false, + "properties": true, + "page-preview": true, + "daily-notes": true, + "templates": true, + "note-composer": true, + "command-palette": true, + "slash-command": false, + "editor-status": true, + "bookmarks": true, + "markdown-importer": false, + "zk-prefixer": false, + "random-note": false, + "outline": true, + "word-count": true, + "slides": false, + "audio-recorder": false, + "workspaces": false, + "file-recovery": true, + "publish": false, + "sync": true, + "bases": true, + "webviewer": false +} \ No newline at end of file diff --git a/.obsidian/graph.json b/.obsidian/graph.json new file mode 100644 index 0000000..42a46ec --- /dev/null +++ b/.obsidian/graph.json @@ -0,0 +1,22 @@ +{ + "collapse-filter": true, + "search": "", + "showTags": false, + "showAttachments": false, + "hideUnresolved": false, + "showOrphans": true, + "collapse-color-groups": true, + "colorGroups": [], + "collapse-display": true, + "showArrow": false, + "textFadeMultiplier": 0, + "nodeSizeMultiplier": 1, + "lineSizeMultiplier": 1, + "collapse-forces": true, + "centerStrength": 0.518713248970312, + "repelStrength": 10, + "linkStrength": 1, + "linkDistance": 250, + "scale": 1, + "close": true +} \ No newline at end of file diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json new file mode 100644 index 0000000..ffdfdff --- /dev/null +++ b/.obsidian/workspace.json @@ -0,0 +1,209 @@ +{ + "main": { + "id": "beb8390796673000", + "type": "split", + "children": [ + { + "id": "e5f34620b448602c", + "type": "tabs", + "children": [ + { + "id": "b06ed69835363258", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "Welcome.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "Welcome" + } + } + ] + }, + { + "id": "83848d40d51132e0", + "type": "tabs", + "children": [ + { + "id": "765d8162454d6ac1", + "type": "leaf", + "state": { + "type": "graph", + "state": {}, + "icon": "lucide-git-fork", + "title": "Graph view" + } + } + ] + } + ], + "direction": "vertical" + }, + "left": { + "id": "f211fcf2eda902d7", + "type": "split", + "children": [ + { + "id": "8d52e48ec55faf5d", + "type": "tabs", + "children": [ + { + "id": "849c5ff8936a2b67", + "type": "leaf", + "state": { + "type": "file-explorer", + "state": { + "sortOrder": "alphabetical", + "autoReveal": false + }, + "icon": "lucide-folder-closed", + "title": "Files" + } + }, + { + "id": "9d8800f283f8208a", + "type": "leaf", + "state": { + "type": "search", + "state": { + "query": "", + "matchingCase": false, + "explainSearch": false, + "collapseAll": false, + "extraContext": false, + "sortOrder": "alphabetical" + }, + "icon": "lucide-search", + "title": "Search" + } + }, + { + "id": "3b25f519090e2c9c", + "type": "leaf", + "state": { + "type": "bookmarks", + "state": {}, + "icon": "lucide-bookmark", + "title": "Bookmarks" + } + } + ] + } + ], + "direction": "horizontal", + "width": 300 + }, + "right": { + "id": "20fb518bca7d9990", + "type": "split", + "children": [ + { + "id": "64c545489d995ad8", + "type": "tabs", + "children": [ + { + "id": "a73c4f06dea5ed4e", + "type": "leaf", + "state": { + "type": "backlink", + "state": { + "file": "Welcome.md", + "collapseAll": false, + "extraContext": false, + "sortOrder": "alphabetical", + "showSearch": false, + "searchQuery": "", + "backlinkCollapsed": false, + "unlinkedCollapsed": true + }, + "icon": "links-coming-in", + "title": "Backlinks for Welcome" + } + }, + { + "id": "faecf8cc85c32250", + "type": "leaf", + "state": { + "type": "outgoing-link", + "state": { + "file": "Welcome.md", + "linksCollapsed": false, + "unlinkedCollapsed": true + }, + "icon": "links-going-out", + "title": "Outgoing links from Welcome" + } + }, + { + "id": "0669bec93e3ac1cc", + "type": "leaf", + "state": { + "type": "tag", + "state": { + "sortOrder": "frequency", + "useHierarchy": true, + "showSearch": false, + "searchQuery": "" + }, + "icon": "lucide-tags", + "title": "Tags" + } + }, + { + "id": "30648638485f192a", + "type": "leaf", + "state": { + "type": "all-properties", + "state": { + "sortOrder": "frequency", + "showSearch": false, + "searchQuery": "" + }, + "icon": "lucide-archive", + "title": "All properties" + } + }, + { + "id": "b51954752e5b55fd", + "type": "leaf", + "state": { + "type": "outline", + "state": { + "file": "Welcome.md", + "followCursor": false, + "showSearch": false, + "searchQuery": "" + }, + "icon": "lucide-list", + "title": "Outline of Welcome" + } + } + ] + } + ], + "direction": "horizontal", + "width": 300, + "collapsed": true + }, + "left-ribbon": { + "hiddenItems": { + "switcher:Open quick switcher": false, + "graph:Open graph view": false, + "canvas:Create new canvas": false, + "daily-notes:Open today's daily note": false, + "templates:Insert template": false, + "command-palette:Open command palette": false, + "bases:Create new base": false + } + }, + "active": "849c5ff8936a2b67", + "lastOpenFiles": [ + "prop-acc/index.md", + "prop-acc", + "Untitled", + "Welcome.md" + ] +} \ No newline at end of file diff --git a/Welcome.md b/Welcome.md new file mode 100644 index 0000000..f9bca28 --- /dev/null +++ b/Welcome.md @@ -0,0 +1,5 @@ +This is your new *vault*. + +Make a note of something, [[create a link]], or try [the Importer](https://help.obsidian.md/Plugins/Importer)! + +When you're ready, delete this note and make the vault your own. \ No newline at end of file diff --git a/prop-acc/index.md b/prop-acc/index.md new file mode 100644 index 0000000..b77c4dd --- /dev/null +++ b/prop-acc/index.md @@ -0,0 +1,42 @@ +--- +title: 财务模块总览 +tags: + - prop-acc + - 模块总览 +audience: + - 业户 + - 业务人员 +status: stable +last_reviewed: 2026-05-25 +--- + +# 财务模块(prop-acc)总览 + +物业财务系统,管业户的各种收费、押金、预存款,自动出账单、收款、生成收据。 + +## 七大子模块 + +| 子模块 | 一句话 | 文档 | +|---|---|---| +| **一次性收费** | IC 卡、装修证、泳票等单次购买 | [[一次性收费/index\|进入]] | +| **保证金** | 装修押金等代管资金,完工后退还 | _待补_ | +| **预存款** | 业户预存,自动抵扣月度账单 | _待补_ | +| **计量表** | 水表/电表/燃气表,抄表生成账单 | _待补_ | +| **账单** | 周期性账单 + 计量账单 | _待补_ | +| **收款订单** | 一次收款的支付方式、银行账户记录 | _待补_ | +| **收据** | 成功收款后生成的凭证 | _待补_ | + +## 你是谁? + +> [!tip] 业户(物业的客户) +> 关心"我怎么买/缴/取/退",看[[一次性收费/index|一次性收费场景]]最直观。 + +> [!tip] 业务人员(物业职员、财务) +> 关心"前台怎么操作、出问题怎么救",每个场景都有"业务人员视角"段落。 + +## 文档约定 + +- **业户口语**:称"您",场景里描述真实生活情境 +- **mermaid 流程图**:每个场景配一张,直观看完整链路 +- **wikilinks**:`[[XX]]` 是 vault 内部跳转,点击直达 +- **callouts**:`tip` / `warning` / `example` 标注重点