Skip to content

ArvinFly/GeekAsset

Repository files navigation

企业IT固定资产管理系统项目

一、 项目概述

1.1 项目背景

在中小企业中,IT资产(如服务器、员工电脑、网络设备、软件授权等)具有高价值、配置复杂、变动频繁的特点。传统的Excel台账管理方式存在信息滞后、配置变更不透明、配件容易流失、折旧难以量化等痛点。本系统旨在打造一款轻量、高效、好落地的企业内部IT固定资产管理系统,切实解决账实不符、维保过期、资产重购与闲置并存的问题。

1.2 项目目标

  • 全生命周期管控:实现资产从“采购入库、领用流转、维保维修、到期折旧、报废处置”的全闭环管理。
  • 硬件联动与提效:利用本地化C/S架构优势,无缝对接扫码枪、标签打印机,大幅提升盘点效率。
  • IT资产专属化:深入IT设备底标,精准记录SN码、MAC地址、IP和动态硬件配置,防止违规“偷换配件”。
  • 降本增效:通过低值易耗品微仓管理与精准的直线折旧计算,降低企业运营流失,为财务及管理层决策提供数据支撑。

1.3 技术选型(已敲定 · 稳重轻量路线)

  • 开发框架:.NET WinForm —— 锁定 .NET Framework 4.8.1
    • 理由:中小企业系统稳定性、兼容性、部署便利性优先。4.8.1 在 Win10/Win11 上免安装直接运行(老机器装运行库亦简单),不需要 .NET 8 的跨平台特性,也避免自包含发布的上百兆体积。传统扫码枪 COM 口读取、旧版打印机驱动在 .NET Framework 下踩坑最少。
  • UI 组件库SunnyUI(带来现代化扁平化界面,丰富的开箱即用控件如表格、图表、导航等)
  • 数据库:Microsoft SQL Server 2012 及以上版本
  • ORM锁定 Dapper(不使用 EF Core)
    • 理由:系统强调“日志可追溯/防调包”,存在大量“主表更新 + 日志表插入”的事务操作。Dapper 手写 SQL 配合 SqlTransaction,性能高且逻辑透明;复杂的盘点盈亏报表 SQL 可直接拿到 SSMS 验证,排查痛快。
  • 三方高效库MiniExcel(用于百万级/常用资产Excel极速导入导出)
  • 打印驱动TSPL/CPCL 指令直打(拼接指令字符串后经 COM/USB 串行发送字节流,详见第五章);二维码/条码内容用 ZXing.Net 生成(如需图片模式时备用)。

二、 核心模块与功能分解

本系统共规划 7 大核心模块,完全覆盖并扩展了资产、盘点、维修、借还、报表、折旧的基本需求。

├── 1. 基础设置 (Master Data)
├── 2. 资产全生命周期 (Asset Lifecycle)
├── 3. 扫码盘点管理 (Smart Audit)
├── 4. 维修与维保 (Maintenance & Warranty)
├── 5. 财务折旧引擎 (Depreciation Engine)
├── 6. 低值易耗品管理 (Consumables Micro-Store)
└── 7. 数据看板与统计 (Dashboard & Reports)

2.1 基础设置模块 (Master Data)

系统的基石,用于规范底层主数据,确保流转逻辑正常。

  1. 组织架构管理:支持“公司 - 部门 - 小组”的多级架构树状视图展示。
  2. 人员档案中心:导入/录入员工工号、姓名、所属部门、手机、在职状态(联动触发离职未交接资产预警)。
  3. 资产分类树
    • 硬件资产:PC终端、笔记本、服务器、网络设备(交换机/网关/AP)、办公外设。
    • 虚拟/软件资产:操作系统许可(OS License)、专业软件授权(CAD/Adobe)、云服务器实例、域名/SSL证书。
  4. 存放位置库:结构化录入具体存放地(如:机房A、3楼办公区、研发测试房、IT备件库房)。
  5. 往来单位管理:维护设备供应商、外包维保合作商的联系人、账期及售后热线。

2.2 资产全生命周期管理 (Asset Lifecycle)

  1. 资产一键入库
    • 支持单条表单录入。
    • 支持Excel模板批量导入(自动校验必填项、下拉资产分类匹配)。
  2. 资产黄金卡片(核心表设计)
    • 通用字段:资产编号(唯一ID)、资产名称、规格型号、入库状态(闲置/在用/报修/借出/报废)、当前领用人、存放地点。
    • 财务与维保字段(已补齐,打通折旧与到期预警)
      • SupplierID(外键,关联供应商)
      • PurchaseDate(采购日期)
      • PurchasePrice含税原值,财务折旧基数)
      • WarrantyExpireDate(维保到期日,用于首页“未来 30 天即将过保”红字高亮预警)
    • IT专属字段SN序列号(出厂防伪)、MAC地址(网络留痕)、固定IP/DHCP、硬件配置快照(CPU/内存/固态/独立显卡)
  3. 核心流转业务窗体
    • 领用与退还:长期绑定员工。退还时自动恢复设备状态为“闲置”,清除当前使用人。
    • 短期借用/归还:针对备用机、投影仪、测试终端。借用必须设置“预计归还时间”,超时系统高亮催还。
    • 资产调拨:跨部门、跨物理地点的流转,生成无纸化调拨记录。
    • 报废处置:登记报废原因(损毁/老旧/无法维修),剥离资产正常运行账目,计入残值回收。

2.3 扫码盘点管理 (Smart Audit)

解决传统Excel盘点费时费力、极易错漏的痛点。

  1. 盘点任务创建:支持按“部门”、“区域位置”或“分类”生成特定盘点计划(如《2026年中期机房资产盘点》)。
  2. 扫码枪监听窗体
    • 利用 WinForm 窗体键盘钩子或输入框焦点,直接接收 USB/无线扫码枪传入的条码数据。
    • 每扫完一辆/台设备,系统声音提示(成功/重复/未知条码),并自动将该资产在盘点列表的状态变更为“已盘”。
  3. 差异对账单:盘点结束后,一键生成**《盘点差异分析表》**,清晰标出:盘盈(无账有物)、盘亏(有账无物)、信息不符(位置/使用者变动)

2.4 维修与维保模块 (Maintenance)

  1. 报修登记:记录故障设备、报修人、故障现象、送修日期。
  2. 维修过程跟踪:区分“IT内部自行更换配件”或“送往原厂/第三方外修”;详细记录更换了何种配件(防止硬件被调包)及产生金额
  3. 维保到期看板:通过资产卡片中的“维保截止日期”,系统自动筛选出**“未来30天内即将过保”**的设备,在首页仪表盘弹出红字高亮提醒。

2.5 财务折旧计算模块 (Depreciation)

针对中小企业财务合规及资产实际价值评估,采用最稳妥实用的平均年限法(直线法)

  1. 折旧规则配置:按分类设置预计使用年限(例如:笔记本/PC设定3年,服务器/机房网络设备设定5年)、预留残值率(通常统一为 5%)。
  2. 月度计提引擎
    • 提供【生成本月折旧】功能。
    • 计算公式:月折旧额 = 资产含税原值(PurchasePrice)× (1 - 预计残值率) ÷ (预计使用年限 × 12)
  3. 折旧三条铁律(符合国内会计准则,不做创新)
    • 规则A · 当月增加,次月计提:5 月入库的电脑,6 月才产生第一笔折旧。
    • 规则B · 残值封顶:净值扣减到设定残值(如原值 5%)时,系统自动停止该资产计提,状态保持“已折完仍在用”。
    • 规则C · 幂等性防重:在 Asset_Depreciation_Log 表建立 (Year, Month, AssetID) 联合唯一索引。每次点击【生成本月折旧】前先 IF NOT EXISTS 校验,确保哪怕手抖点十次,一个月也只提一次。
  4. 折旧看板:实时查询单台设备当前状态的:原值、已计提月份、累计折旧额、当前净值(账面剩余价值)

2.6 低值易耗品管理模块 (Consumables Micro-Store)

解决IT部门最琐碎的非固定资产物资(鼠标、键盘、转接头、网线、水晶头、打印机墨盒等)高频损耗问题。

  1. 品名与规格备案:设置耗材类目、规格、单位。
  2. 微仓库存管控:入库增加库存,员工申领减少库存。
  3. 安全库存报警:设置最低阈值(如网线少于1箱,水晶头少于200个),系统自动在主页预警,提示采购。

2.7 综合数据报表与看板 (Dashboard)

利用 SunnyUI 强大的内置 Chart 控件进行可视化包装。

  1. IT经理驾驶舱(主页)
    • 核心指标块:资产总数、总资产净值、设备在用率、资产闲置率、耗材告警数。
    • 可视化图表:各部门资产占用金额饼图(UIPieChart)、近半年资产报修频次趋势图(UILineChart)。
  2. 全量数据报表
    • 《单台资产全生命周期履历表》(一键查明该电脑自入库起经历的所有领用人、维修历史、变动记录)。
    • 所有报表提供 一键导出Excel 按钮。

三、 数据库设计概要 (SQL Server)

为了支撑核心业务并保证“防调包”、“流转可追溯”,采用主表与日志表分离的架构思路。

3.1 核心表清单(已敲定 · 日志双表分离)

  1. Sys_User / Sys_Dept:用户与部门组织架构表。
  2. Asset_Info(资产主表):存储资产最新、当下的静态与动态参数(含 2.2 补齐的财务与维保字段)。
  3. Asset_Flow_Log(流转日志表)关键表。只记录“人/位置”流转——借用、归还、领用、退还、调拨。
    • 核心字段:AssetID动作类型来源归属人目标归属人操作人时间
    • 每次流转必须插入一条不可逆记录,用于查询“设备用过哪些人”。
  4. Asset_Hardware_Log(硬件/维保变更日志表):只记录“配置/费用”变更——换件、升级、维修。
    • 核心字段:AssetID变更类型(如加内存/换主板)、变更前配置快照(Old_Spec)变更后配置快照(New_Spec)产生费用经办人时间
    • 用于查询“设备修过多少次、花了多少钱”。
    • 拆分收益:避免单张超级大表字段冗余,流转与硬件两类查询的 SQL 各自非常干净。
  5. Asset_Depreciation_Log(折旧历史表):记录按月计提的折旧流水,建 (Year, Month, AssetID) 联合唯一索引保证幂等。
  6. Consumables_Inventory / Consumables_Log:耗材库存与领用流水表。

说明:原 Asset_Transfer_LogAsset_Maintenance 已合并重构为上述 Asset_Flow_Log + Asset_Hardware_Log 双表结构。

3.2 防换件关键逻辑提示

Asset_Info 表中设立:

  • Original_Spec (文本,只读):入库时的原始硬件信息(如:i7-12700 / 16G DDR5 / 512G NVMe)。
  • Current_Spec (文本,可变):当前的硬件配置。如果维修或升级(如加装内存),必须通过系统“维修/升级窗体”修改,并自动向 Asset_Hardware_Log 写入一条含 Old_Spec/New_Spec 的变更日志。

3.3 并发控制要点(局域网共享库)

  • 日常资产领用/退还冲突极小,常规事务即可。
  • 耗材扣减必须加事务 + 条件更新防超扣:Dapper 中领用 SQL 必须带 WHERE Inventory >= @DeductQty,根据受影响行数判断是否成功,杜绝两人同时领网线导致库存为负。

三点五、 系统边界:权限与部署(已敲定)

A. 登录与权限(硬编码经典三角色 RBAC)

不做复杂动态权限树,采用固定三角色模型,覆盖 95% 中小企业场景:

角色 核心权限 关键限制
系统管理员 (Admin) 拥有一切权限,含删除基础数据、撤销错账
IT运维/库管 (Operator) 入库、领用/退还、扫码盘点、维修登记 看不到财务原值、进不了折旧模块、不能物理删除任何记录(仅作废标记)
财务人员 (Finance) 只读资产列表、【生成折旧】、导出各类财务报表 不参与资产动账与盘点

B. 部署与并发模型

  • 局域网 C/S 共享库模式:SQL Server 部署在公司内网服务器,客户端安装在 IT 与财务的电脑上。
  • 并发控制详见 3.3(重点是耗材扣减的条件更新)。

四、 开发计划与里程碑

本系统采用敏捷开发模式,按 1 名资深工程师全职高优推进标定,总周期 6 周

关键策略 · 数据清洗双线并行:期初历史资产数据的清洗,绝不能压到 Phase 6 —— 历史乱账、错账、不知去向的设备,光是对齐和盘问就极其耗时。因此自 Phase 2 结束、标准“资产导入 Excel 模板”可用起,立即下发给相关部门线下填报与盘点历史资产,与后续研发(Phase 3~5)完全并行。等 Phase 6 联调时,直接拿清洗好的干净数据灌库。

阶段 周期 核心任务 交付物
Phase 1: 基础构建 第 1 周 SQL Server 数据库表结构设计;SunnyUI 客户端主窗体框架(左侧导航、顶部状态、多标签页TabContainer)搭建。 数据库脚本、项目基础工程
Phase 2: 主干功能 第 2 周 基础设置模块(部门/人员/分类)开发;资产入库表单及 Excel 批量导入导出功能开发。 数据导入功能、资产基础台账、标准“资产导入 Excel 模板”下发,启动线下期初数据填报与历史资产清洗(与 Phase 3~5 并行)
Phase 3: 业务流转 第 3 周 领用/退还逻辑;短期借用及超时催还逻辑;流转日志自动触发与写入测试。 资产动账窗体、流转履历表
Phase 4: 硬件与盘点 第 4 周 扫码枪监听逻辑编写;盘点任务生成与差异对比算法优化;标签打印驱动功能联调。 盘点模块、标签打印功能
Phase 5: 财务与高级 第 5 周 直线折旧计算引擎编写与验证;低值易耗品微仓功能开发;首页 SunnyUI 图表看板绑定。 折旧单生成、主页Dashboard
Phase 6: 联调与上线 第 6 周 导入 Phase 2 起已线下清洗完成的干净期初数据;系统权限微调;交付部署。 完工系统、运行环境

五、 硬件与周边配套选型方案(低成本低门槛)

WinForm 开发的最大优势在于对本地硬件的绝对控制。为了让系统完美落地,建议配套以下高性价比硬件:

  1. 标签打印机
    • 推荐佳博(Gprinter) 或 得力(Deli) 支持 TSPL 指令的桌面型热敏标签打印机(USB/串口通讯)。
    • 耗材:40mm * 20mm(或 50mm * 30mm)三防热敏标签纸(防水、防油、防刮),成本每张不足1分钱。
    • 打印内容设计:公司资产名称、资产编号、资产条形码/二维码。
    • 打印方案(已敲定 · 抛弃 GDI 纯画图):用 System.Drawing 在 40x20mm 上画条码,极易因 DPI 缩放导致条码模糊或越界、扫码枪扫不出。
      • 最佳实践:在 .NET 中拼接 TSPL/CPCL 指令字符串(定义好坐标、字号、二维码内容),通过 COM 口/USB 串行直接发送字节流给打印机。出来的标签边缘锐利、极其稳定。
      • ZXing.Net 仅作为图片模式的备用方案保留。
  2. 扫码枪
    • 推荐:普通一维/二维无线随身扫码枪(带USB接收器,即插即用,模拟键盘输入模式)。IT人员可在机房或库房移动扫码,数据直接打入 WinForm 激活的文本框中。

六、 风险评估与应对方案

  1. 风险:期初资产数据混乱导致系统无法推进
    • 对策:在 Phase 2 提供标准的 Excel 导入模板,规定必填项,由 IT 部门联合行政先在 Excel 中清理出第一批“期初数据”,严禁在系统初始化时采用全手工录入。
  2. 风险:员工抗拒或忘记登记“借还调拨”
    • 对策:系统提供自动联动机制(如:系统每天早上自动检索【超时未还借用资产】,生成通知文本,方便IT一键复制发送给对应人员)。
  3. 风险:客户端版本更新不便
    • 对策:在 WinForm 主程序外增加一个极简的 AutoUpdater.exe(自动更新小工具)。启动时比对服务器上的 version.xml,如有新版本则自动下载替换,解决 C/S 架构升级痛点。

部分功能截图

About

极客固定资产管理系统,用AI开发的固定资产管理系统

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors