编辑 | blame | 历史 | 原始文档

MES数据管理系统重构方案

BasicData目录整理方案

现有的MES.Service/service/BasicData目录包含了多种类型的数据处理Manager类,但组织结构混乱。本方案将按照功能和数据类型对这些Manager类进行重组,提高代码可维护性。

整理后的文件夹结构

基础数据管理类将被整理为以下几个目录:

  1. 组织架构管理
  • OrganizeManager.cs
  • SysDepartmentManager.cs
  • MesStaffManager.cs
  • MesPositionManager.cs
  1. 物料及单位管理
  • MesItemsManager.cs
  • MesItemTypeManager.cs
  • MesUnitManager.cs
  • MesDepotsManager.cs
  1. 合作伙伴管理
  • MesSupplierManager.cs
  • MesCustomerManager.cs
  1. 生产管理
  • ProductionOrderManager.cs
  • ProductionOrderSubManager.cs
  • MESProductionNoticeManager.cs
  1. 销售和发货管理
  • SalesOrderManager.cs
  • SalesOrderDetailManager.cs
  • SalesReturnNoticeManager.cs
  • SalesReturnNoticeDetailManager.cs
  • ShipmentNoticeManager.cs
  • ShipmentDetailManager.cs
  • MesDeliveryNoteManager.cs
  • MesDeliveryNoteDetailsManager.cs
  • MesDeliveryNoteBarcodeManager.cs
  1. 原材料管理
  • MesRohInManager.cs
  • MesRohInDataManager.cs

删除未使用文件

经过分析,所有Manager类均保留,没有确定可删除的未使用文件。

整理实施步骤

1. 创建文件夹

使用文件资源管理器创建以下文件夹:
- MES.Service\service\BasicData\Organization
- MES.Service\service\BasicData\Material
- MES.Service\service\BasicData\Partner
- MES.Service\service\BasicData\Production
- MES.Service\service\BasicData\Sales
- MES.Service\service\BasicData\RawMaterial

2. 移动文件

按照以下分组将文件移动到对应文件夹:

组织架构管理
- 将 OrganizeManager.cs、SysDepartmentManager.cs、MesStaffManager.cs、MesPositionManager.cs 移动到 Organization 文件夹

物料及单位管理
- 将 MesItemsManager.cs、MesItemTypeManager.cs、MesUnitManager.cs、MesDepotsManager.cs 移动到 Material 文件夹

合作伙伴管理
- 将 MesSupplierManager.cs、MesCustomerManager.cs 移动到 Partner 文件夹

生产管理
- 将 ProductionOrderManager.cs、ProductionOrderSubManager.cs、MESProductionNoticeManager.cs 移动到 Production 文件夹

销售和发货管理
- 将 SalesOrderManager.cs、SalesOrderDetailManager.cs、SalesReturnNoticeManager.cs、SalesReturnNoticeDetailManager.cs、ShipmentNoticeManager.cs、ShipmentDetailManager.cs、MesDeliveryNoteManager.cs、MesDeliveryNoteDetailsManager.cs、MesDeliveryNoteBarcodeManager.cs 移动到 Sales 文件夹

原材料管理
- 将 MesRohInManager.cs、MesRohInDataManager.cs 移动到 RawMaterial 文件夹

3. 更新命名空间

移动文件后,需要修改每个文件中的命名空间定义。例如:

原始命名空间:
csharp namespace MES.Service.service.BasicData;

修改为对应子目录的命名空间:
csharp namespace MES.Service.service.BasicData.Organization; // 或其他相应的子目录名

4. 更新引用

在其他文件中对这些Manager类的引用也需要相应更新。搜索使用了这些类的地方,并添加正确的命名空间引用。

5. 测试验证

完成整理后,需要全面测试应用程序的功能,确保所有功能正常运行。

自动化脚本

项目中提供了organize_basicdata.ps1脚本,可以自动执行文件移动操作。使用方法:

PowerShell -File .\organize_basicdata.ps1

注意事项

  1. 备份重要文件:在进行整理前,建议先备份所有文件,以防意外情况发生。

  2. 命名空间更新:移动文件后,需要手动更新每个文件的命名空间,这是最关键的步骤。

  3. 引用更新:在控制器和其他使用这些Manager类的地方,需要添加对应的using语句,例如:
    csharp using MES.Service.service.BasicData.Organization; using MES.Service.service.BasicData.Material; // 等等

  4. 分阶段实施:建议按照功能模块分阶段实施,每完成一个模块就进行测试,确保功能正常。

  5. 编译错误处理:整理过程中可能会出现编译错误,主要是由于命名空间变更导致的引用问题,需要逐一解决。

README 4 KB