# personal-manage **Repository Path**: ten-ken/personal-manage ## Basic Information - **Project Name**: personal-manage - **Description**: 此为自己封装的框架,支持导入 上传文件 代码生成 文件或字符串加解密等,所有导入 新增/修改的实体 以及数据校验 都经过相关注解或类封装 处理。 包含功能有 ftp客户端(多线程上传/下载)、定时任务(语音)、代码生成器 、Cmd命令操作(无需些cmd命令)、内置浏览器、数据库表信息生成excel等等 - **Primary Language**: C# - **License**: GPL-3.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 31 - **Forks**: 15 - **Created**: 2020-12-02 - **Last Updated**: 2026-01-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # personal-manage ## 简介 `personal-manage` 是一个基于 **.NET Framework 4.6 (WinForms)** 的综合性个人桌面管理工具。该项目不仅包含了常见的个人数据管理功能,还集成了专为开发者设计的辅助工具(如代码生成器、FTP客户端、数据库管理等),旨在打造一个高效的本地化工作平台。 ## 核心功能 ### 1. 任务调度与执行 * **多线程任务管理:** 支持多个任务的并行调度与执行。 * **语音播报:** 任务完成后支持语音提示。 * **定时提醒:** 包含倒计时、每日任务提醒等功能。 ### 2. 通用业务功能 * **通用 CURD:** 通过反射机制实现了通用的数据库增删改查逻辑。 * **Excel 导入导出:** * 支持基于模板的 Excel 生成(使用 `Aspose.Cells`)。 * 支持无模板的代码式动态导出。 * 支持读取 Excel 数据入库。 * **文件加密/解密:** 提供本地文件的安全保护。 ### 3. 内置浏览器 * 集成 **MiniBlink** 内核,提供轻量级的网页浏览支持。 * 支持与 C# 代码的交互(JS 绑定)。 ### 4. 代码生成器 (核心亮点) 支持连接 **MySQL**, **Oracle**, **SQLite** 数据库,根据表结构自动生成代码: * **Java 版本:** 生成 MyBatis-Plus 风格的 Entity 和 Mapper XML(使用 FreeMarker 模板)。 * **C# 版本:** 生成 Entity、BLL、DAL 代码(使用 NVelocity 模板)。 * **数据库差异同步:** 辅助工具,用于同步线上线下数据库结构。 ### 5. 实用工具箱 * **FTP 客户端:** 可视化的文件上传下载管理。 * **CMD 命令终端:** 在界面中直接执行系统命令。 * **屏幕画笔:** 截图与标注工具。 * **数据图表:** 简单的数据可视化图表展示。 * **二维码生成:** 生成自定义内容的二维码图片。 * **文章管理:** 支持图文混排的文章编辑与展示(带图片轮播和视频播放)。 ## 技术栈 * **开发语言:** C# * **UI 框架:** WinForms * **前端集成:** MiniBlink (C# P/Invoke) * **本地数据库:** SQLite * **目标数据库:** MySQL, Oracle, SQLite * **Office 处理:** Aspose.Cells / Words / Pdf * **模板引擎:** NVelocity, FreeMarker * **控件库:** 自定义 `MyWfControls` (包含 `KenButton`, `KenPage`, `KenArticle` 等) ## 项目结构概览 * `personal-manage.UI`: 主应用程序,包含所有窗体界面。 * `personal-manage.BLL`: 业务逻辑层,处理具体业务规则。 * `personal-manage.DAL`: 数据访问层,实现了数据库操作及自定义的 `LambdarWrapper` (仿 MyBatis-Plus 查询)。 * `personal-manage.Models`: 数据实体层。 * `personal-manage.Common`: 公共类库,包含工具类(如 `AsposeExcel`, `CmdHelper`)、扩展方法及常量定义。 * `personal-manage.Service`: 后台服务层,用于处理定时任务和历史记录管理。 * `MyWfControls`: 自定义 WinForms 控件库。 * `MiniBlinkPinvoke`: MiniBlink 浏览器引擎的 .NET 封装项目。 ## 安装与运行 1. **环境要求:** Visual Studio 2019 或更新版本,需支持 .NET Framework 4.6 开发。 2. **获取代码:** 从 Gitee 克隆仓库。 3. **编译:** 打开 `personal-manage.UI/personal-manage.UI.sln` 解决方案,编译整个解决方案。 4. **运行:** 启动 `personal-manage.UI` 项目。 > **注意:** 项目中引用了部分第三方 DLL(如 `Aspose`, `MiniBlink`, `System.Data.SQLite`),请确保 `bin` 目录或 GAC 中包含这些引用。 ## 界面皮肤 系统支持多套皮肤切换,通过 `SYS_SKIN_INFO` 表管理皮肤配置,动态改变应用外观。 ## 特别感谢 * 感谢 **@龙泉寺扫地僧** 开发了 MiniBlink,并提供了技术支持。 * 感谢开源社区提供的各类 .NET 库支持。 ## 许可证 本项目仅供个人学习交流使用。