Skip to content

peterpetrica/Property_Management_System

Repository files navigation

物业管理系统

完结撒花 🎆🎆🎆

这不算一个完美的项目,但至少是一个结果还不错的 C 语言课程设计作业

欢迎基于此进行二次开发或直接使用来应付课设或者大作业,本项目遵循 MIT 协议 (如果可能的话,使用的时候可以给我留个言或者给个 star 吧)

本项目主要由 @peterpetrica 主要负责维护(至少在编写期间)

同时参与编写的同学有:

  • @ZhuLaoliu888
  • @abbydu626
  • @Fxiansheng-ai

在此感谢以下贡献者:

项目指北

项目开发指南

项目总要求

SQLite 如何使用 C 语言调用?

同时,你可以在名为 practice 的 branch 里进行开发的练习(可以在 Github Desktop 中切换)

项目流程图

项目时序图

快速开始

使用 Windows 开始

最简便的方式是直接下载 Visual Studio 和 Github Desktop

先使用 github desktop 克隆(clone)下本仓库,然后使用 vs 从文件夹打开,打开本项目,VS 应当会配置好所有内容,可以直接开始

务必挂上梯子或者有良好的网络环境(如校园网)

请在 VS 的扩展商店搜索并安装force utf-8插件,来统一项目中文编码(需要推出 VS 来完成插件安装)

使用 Linux 开始

如果你还没有 linux 环境,可以参照如何安装 wsl 及 Ubuntu部分进行操作后再继续本节。

安装所需的必要软件

  • gcc
  • git
  • cmake
  • ninja

ubuntu 下仅需:

sudo apt-get install -y ninja-build git gcc g++ cmake pkg-config

安装 vcpkg 并进行必要配置

选择一个你喜欢的地方拉下 vcpkg,并执行编译安装脚本

git clone https://github.com/microsoft/vcpkg.git

cd vcpkg && ./bootstrap-vcpkg.sh

然后你需要将你的 vcpkg 安装位置写入环境变量

export VCPKG_ROOT=/path/to/vcpkg
export PATH=$VCPKG_ROOT:$PATH
# 如需永久存在,请写入.bashrc或.zshrc

然后你应该拉下本项目并额外配置 cmake 参数来使用 vcpkg

在此项目根目录下创建 CMakeUserPresets.json 文件,内容如下:

{
  "version": 2,
  "configurePresets": [
    {
      "name": "default",
      "inherits": "vcpkg",
      "environment": {
        "VCPKG_ROOT": "引号内填入vcpkg文件夹的绝对路径"
      }
    }
  ]
}

使用 cmake 构建

使用 CMake 配置构建,过程中需要梯子

cmake --preset=default

然后生成项目

cmake --build build

然后就能在 build 文件夹下看到构建好的文件了

也可以直接使用脚本来构建和测试

运行:

./build.sh

然后:

./run.sh

初始化工作环境 $^{*}$

  1. 根据您的操作系统及 CPU 指令架构,在仓库根目录下的 .filter-tools 目录中选择对应的文件,记录其文件名 $^{**}$

  2. 在克隆的仓库中启动终端,使用以下命令在仓库中使用如下命令添加 Filter

    # 仅替换 `<platform>` `<arch>` 为您的平台,不要更改相对路径
    ## 除非你知道你在做什么
    
    git config --local filter.garbage2null.smudge "./.filter-tools/garbage2null-<platform>-<arch>"
    git config --local filter.garbage2null.clean "./.filter-tools/garbage2null-<platform>-<arch>"
    

自动化文档生成

本项目采用 Doxygen/JavaDoc 风格的注释,可以使用 doxygen 来自动化生成文档

先安装 doxygen

sudo apt install -y doxygen doxygen-gui

运行即可

doxywizard

如何安装 wsl 及 Ubuntu

启用 windows 功能

在启用或关闭 window 功能选项卡(可以搜索得到)中打开虚拟机平台(Virtual Machine Platform)和适用于 Linux 的 Windows 子系统选项,重启电脑

更新 wsl 内核并安装 ubuntu22.04

打开 powershell,依次运行:

wsl --set-default-version 2

wsl --update

# 目前建议版本使用 22.04 为宜
wsl --install -d Ubuntu-22.04

过程中会要求给 ubuntu 取个用户名和密码(密码不会显示你输入的,输入完直接回车即可)

配置 vscode

下载vscode并安装

打开,在扩展选项卡(几个小方块那个图标)中的搜索栏搜索 Chinese,选择简体中文插件安装;然后搜索 wsl,选择 WSL 插件安装。然后右下角会提示重启 vscode,点击重启即可。

然后点击 vscode 左下角的><状图标,在顶部选择连接到 WSL(也可能是英文的),即可进入刚安装好的 ubuntu 环境

此时按下ctrl + ~ 即可打开终端,输入

sudo apt update
# 会提示你输入密码,密码就是创建 ubuntu 时你取的那个,直接输入、回车即可,密码不会显示在屏幕上
sudo apt upgrade -y

更新完成后,请参照使用 Linux 开始部分继续。

增加了假数据生成脚本

脚本放置在 data_gen 文件夹下

先执行

pip install -r ./data_gen/requirements.txt

来安装所需依赖库,再运行

python3 ./data_gen/property_faker.py

即可

SQLite 可视化

在终端中依次输入以下命令:

sudo apt install -y sqlitebrowser

sqlitebrowser ~/.property_management/property_management.db

Tip

  • 我在下面的项目总要求里添加了数据库的表单数据结构预期实现,请按照那个作为预期的数据库结构
  • user_id 是字符串!(至少需要 40 位的数组来存放)

About

物业管理系统

Resources

License

Stars

Watchers

Forks

Contributors

Languages