# 绿纤ERP管理系统 ## 项目简介 绿纤ERP管理系统是一个基于现代化技术栈开发的企业资源规划系统,专为绿纤行业量身定制。系统采用前后端分离架构,提供完整的生产、销售、库存、财务等业务管理功能。 ## 技术栈 ### 后端技术 - **.NET Core 3.1/5.0** - 跨平台Web框架 - **SqlSugar** - 轻量级ORM框架 - **MySQL** - 关系型数据库 - **JWT** - 身份认证 - **Serilog** - 结构化日志 - **Swagger** - API文档 ### 前端技术 - **Vue 2.6** - 渐进式JavaScript框架 - **Element UI** - 企业级UI组件库 - **Vuex** - 状态管理 - **Vue Router** - 路由管理 - **Axios** - HTTP客户端 - **SCSS** - CSS预处理器 ## 项目结构 ``` lvqianmeiye_ERP/ ├── netcore/ # 后端.NET Core项目 │ └── src/ │ ├── Application/ # 应用层 │ ├── Infrastructure/ # 基础设施层 │ └── Modularity/ # 业务模块层 │ ├── System/ # 系统管理模块 │ ├── Extend/ # 🎯 核心业务模块(绿纤ERP业务逻辑) │ │ ├── NCC.Extend/ # 业务服务层 │ │ ├── NCC.Extend.Entitys/ # 实体模型层 │ │ └── NCC.Extend.Interfaces/ # 接口定义层 │ ├── OAuth/ # 身份认证模块 │ ├── Message/ # 消息中心模块 │ ├── Order/ # 订单管理模块 │ ├── VisualDev/ # 可视化开发模块 │ └── Tenant/ # 多租户支持模块 ├── antis-ncc-admin/ # 前端Vue项目 │ ├── src/ │ │ ├── api/ # API接口 │ │ ├── components/ # 公共组件 │ │ ├── views/ # 页面视图 │ │ │ ├── lqBmzb/ # 部门管理页面 │ │ │ ├── lqCpxx/ # 产品信息页面 │ │ │ ├── lqHygl/ # 会员管理页面 │ │ │ └── ... # 其他业务页面 │ │ ├── router/ # 路由配置 │ │ └── store/ # 状态管理 │ ├── package.json # 前端依赖配置 │ └── vue.config.js # Vue构建配置 └── html/ # 静态资源 ``` ## 🎯 核心业务模块说明 **Extend模块**是系统的核心业务模块,包含绿纤ERP的所有业务逻辑。该模块采用三层架构设计: ### NCC.Extend(业务服务层) 包含所有业务服务的具体实现,按功能分类: #### 📋 基础管理类 - `LqBmzbService` - 部门管理服务 - `LqCpxxService` - 产品信息管理服务 - `LqKhxxService` - 客户信息管理服务 - `LqRyzlService` - 人员资料管理服务 #### 🏭 生产管理类 - `LqJsfaService` - 工艺方案管理服务 - `LqSbtjbService` - 设备统计管理服务 - `LqYcsdJsjService` - 技术数据管理服务 - `LqYcsdJjlftjsService` - 技术方案管理服务 - `LqYcsdMdlbjhsxxService` - 模具管理服务 #### 💰 销售管理类 - `LqXhHyhkService` - 销售回款管理服务 - `LqXhmxbService` - 销售明细管理服务 - `LqTkXscService` - 提成管理服务 - `LqTkjlbService` - 提成记录管理服务 #### 📦 库存管理类 - `LqKqhzbService` - 库存汇总管理服务 - `LqLssjService` - 历史数据管理服务 - `LqYjmxbService` - 原料明细管理服务 #### 📊 财务管理类 - `LqSkzhService` - 收款账户管理服务 - `LqHzfService` - 汇总费用管理服务 - `LqJdqdService` - 季度清单管理服务 #### 🔧 系统工具类 - `EmailService` - 邮件服务 - `DocumentService` - 文档管理服务 - `BigDataService` - 大数据分析服务 - `WorkLogService` - 工作日志服务 ### NCC.Extend.Entitys(实体模型层) - **Entity/** - 数据库实体模型(66个实体) - **Dto/** - 数据传输对象(304个DTO) - **Mapper/** - 对象映射配置(50个映射器) - **Model/** - 业务模型类 ### NCC.Extend.Interfaces(接口定义层) - 定义所有业务服务的接口契约 - 支持依赖注入和单元测试 - 提供清晰的业务边界 ## 环境要求 ### 开发环境 - **Node.js**: 16.20.2 (必须使用此版本) - **.NET Core SDK**: 3.1 或 5.0 - **MySQL**: 5.7 或 8.0 - **Visual Studio 2019/2022** 或 **VS Code** ### 浏览器支持 - Chrome 70+ - Firefox 65+ - Safari 12+ - Edge 79+ ## 快速开始 ### 1. 克隆项目 ```bash git clone [项目地址] cd lvqianmeiye_ERP ``` ### 2. 后端启动 #### 方式一:Visual Studio 1. 打开 `netcore/smart.agriculture.platform.NET.sln` 2. 设置 `NCC.API` 为启动项目 3. 按 F5 运行 #### 方式二:命令行 ```bash cd netcore/src/Application/NCC.API dotnet restore dotnet run ``` ### 3. 前端启动 ```bash cd antis-ncc-admin # 安装依赖 npm install # 启动开发服务器 npm run dev ``` ### 4. 访问系统 - 前端地址:http://localhost:3000 - 后端API:http://localhost:5000 - API文档:http://localhost:5000/antis.doc ## 默认账号 - **管理员账号**:admin - **默认密码**:123456 ## 主要功能模块 > 💡 **说明**:所有业务功能的核心代码都位于 `netcore/src/Modularity/Extend/` 模块中 ### 📋 基础管理模块 - **部门管理** (`LqBmzbService`) - 组织架构管理,部门分类维护 - **产品信息** (`LqCpxxService`) - 产品档案管理,产品分类维护 - **客户信息** (`LqKhxxService`) - 客户档案管理,客户关系维护 - **人员资料** (`LqRyzlService`) - 员工信息管理,人员档案维护 ### 🏭 生产管理模块 - **工艺方案** (`LqJsfaService`) - 生产工艺配置,工艺流程管理 - **设备统计** (`LqSbtjbService`) - 设备使用情况统计,设备维护管理 - **技术数据** (`LqYcsdJsjService`) - 技术参数管理,工艺数据维护 - **技术方案** (`LqYcsdJjlftjsService`) - 技术方案管理,工艺优化 - **模具管理** (`LqYcsdMdlbjhsxxService`) - 模具档案管理,模具维护 ### 💰 销售管理模块 - **销售回款** (`LqXhHyhkService`) - 销售回款管理,资金回笼跟踪 - **销售明细** (`LqXhmxbService`) - 销售明细管理,销售数据分析 - **提成管理** (`LqTkXscService`) - 销售提成计算,提成规则维护 - **提成记录** (`LqTkjlbService`) - 提成记录管理,提成发放跟踪 ### 📦 库存管理模块 - **库存汇总** (`LqKqhzbService`) - 库存数据分析,库存统计报表 - **历史数据** (`LqLssjService`) - 历史数据管理,数据归档 - **原料明细** (`LqYjmxbService`) - 原料库存管理,原料使用跟踪 ### 📊 财务管理模块 - **收款账户** (`LqSkzhService`) - 收款账户管理,资金账户维护 - **汇总费用** (`LqHzfService`) - 费用汇总管理,成本分析 - **季度清单** (`LqJdqdService`) - 季度财务清单,财务报告 ### 🔧 系统工具模块 - **邮件服务** (`EmailService`) - 邮件发送,通知提醒 - **文档管理** (`DocumentService`) - 文档存储,文件管理 - **大数据分析** (`BigDataService`) - 数据分析,报表生成 - **工作日志** (`WorkLogService`) - 工作日志记录,操作跟踪 ### ⚙️ 系统管理模块(位于System模块) - **用户管理** - 系统用户维护,用户权限管理 - **角色权限** - 权限分配管理,角色权限配置 - **系统配置** - 系统参数设置,基础配置维护 - **日志管理** - 操作日志查看,系统日志分析 ## 开发指南 ### 🎯 核心业务开发(Extend模块) #### 添加新的业务服务 1. **创建实体模型** (`NCC.Extend.Entitys/Entity/`) ```csharp [SugarTable("lq_新表名")] [Tenant(ClaimConst.TENANT_ID)] public class Lq新实体Entity { [SugarColumn(ColumnName = "F_Id", IsPrimaryKey = true)] public string Id { get; set; } // 其他字段... } ``` 2. **创建DTO对象** (`NCC.Extend.Entitys/Dto/`) - `Lq新实体ListQueryInput` - 列表查询输入 - `Lq新实体CrInput` - 创建输入 - `Lq新实体UpInput` - 更新输入 - `Lq新实体InfoOutput` - 详情输出 - `Lq新实体ListOutput` - 列表输出 3. **创建接口定义** (`NCC.Extend.Interfaces/`) ```csharp public interface ILq新实体Service : ITransient { Task GetInfo(string id); Task GetList(Lq新实体ListQueryInput input); Task Create(Lq新实体CrInput input); Task Update(string id, Lq新实体UpInput input); Task Delete(string id); } ``` 4. **实现业务服务** (`NCC.Extend/`) ```csharp [ApiDescriptionSettings(Tag = "Extend", Name = "Lq新实体", Order = 200)] [Route("api/Extend/[controller]")] public class Lq新实体Service : ILq新实体Service, IDynamicApiController, ITransient { // 服务实现... } ``` #### 前端页面开发 1. **创建页面组件** (`antis-ncc-admin/src/views/lq新模块/`) - `index.vue` - 列表页面 - `Form.vue` - 表单页面 - `ExportBox.vue` - 导出组件 2. **添加API接口** (`antis-ncc-admin/src/api/extend/`) ```javascript export function getLq新实体List(data) { return request({ url: '/api/Extend/Lq新实体', method: 'GET', data }) } ``` ### 前端开发 ```bash # 开发模式 npm run dev # 构建生产版本 npm run build # 代码检查 npm run lint ``` ### 后端开发 ```bash # 还原包 dotnet restore # 编译项目 dotnet build # 运行项目 dotnet run # 发布项目 dotnet publish -c Release ``` ## 配置说明 ### 数据库配置 修改 `netcore/src/Application/NCC.API/appsettings.json` 中的连接字符串: ```json { "ConnectionStrings": { "DefaultConnection": "Database=lqerp;Data Source=localhost;Port=3306;User Id=root;Password=yourpassword;Charset=utf8;" } } ``` ### 前端代理配置 修改 `antis-ncc-admin/vue.config.js` 中的代理地址: ```javascript proxy: { '/dev': { target: 'http://localhost:5000', // 后端API地址 changeOrigin: true, pathRewrite: { '^/dev': '' } } } ``` ## 部署说明 ### 后端部署 1. 发布项目:`dotnet publish -c Release` 2. 配置数据库连接字符串 3. 部署到IIS或Linux服务器 ### 前端部署 1. 构建项目:`npm run build` 2. 将 `dist` 目录部署到Web服务器 3. 配置Nginx或IIS反向代理 ## 常见问题 ### Q: 前端启动失败 A: 确保使用Node.js 16.20.2版本,其他版本可能不兼容 ### Q: 后端连接数据库失败 A: 检查数据库连接字符串和MySQL服务状态 ### Q: 权限验证失败 A: 检查JWT配置和Token有效期设置 ### Q: 页面显示异常 A: 检查浏览器控制台错误信息和网络请求状态 ## 技术支持 如有技术问题,请联系开发团队或查看项目文档。 ## 版本信息 - **当前版本**:v1.0.0 - **最后更新**:2024年 - **维护状态**:活跃开发中 --- **注意**:本项目仅供学习和内部使用,请勿用于商业用途。