Known框架实战演练——进销存框架搭建

本文介绍如何使用Known开发框架搭建进销存管理系统的项目结构,以及开发前的一些配置和基础代码。

1. 创建项目结构

使用cmd命令工具,进入D:\Publics\JxcLite目录,先安装Known框架项目模板,再用命令创建项目结构。两个命令如下:

dotnet new install KnownTemplate
dotnet new known --name=JxcLite

命令执行成功后,该文件夹下面自动生成JxcLite项目文件,项目文件结构如下:

├─JxcLite          -> 项目模块类库。
├─JxcLite.Client   -> 项目前端页面类库。
├─JxcLite.Web      -> 项目后端业务逻辑类库。
├─JxcLite.WinForm  -> 项目WinForm App。
├─JxcLite.sln      -> 项目解决方案文件。

双击打开JxcLite.sln文件,即可通过VS2022开发工具修改和添加系统项目文件。

2. 开发前准备

2.1. 配置数据库

本项目默认使用Known框架模板提供的SQLite数据库,如果要更改其他数据库,请参考官方文档更换数据库

2.2. 配置系统名称

用VS2022打开项目后,双击JxcLite项目中的AppConfig.cs文件,修改系统名称。代码如下:

public static class AppConfig
{
    public static string AppName => "进销存管理系统";
}

2.3. 配置系统扩展按钮

双击JxcLite项目中的Resources\actions.txt资源文件,在此扩展Known框架提供的功能按钮信息,例如本项目除增删改查导按钮之外,还需要退货、确认、开票、回款按钮。

Return  | 退货 | rollback   | primary
Confirm | 确认 | check      | primary
Invoice | 开票 | profile    | primary
Payment | 回款 | pay-circle | primary

2.4. 配置多语言

如果项目需要多语言,双击打开JxcLite项目中的AppConfig.cs文件,在AddJxcLite方法中修改多语言设置,代码如下:

public static class AppConfig
{
    public static void AddJxcLite(this IServiceCollection services)
    {
        services.AddKnown(info =>
        {
            ...
            info.IsLanguage = true;
            ...
        });
    }
}

JxcLite项目中的Resources\Locales文件夹下修改对应语言的资源文件,资源文件为Dictionary对象的JSON数据,内容如下所示:

//简体中文
{
  "Menu.BasicData": "基础数据",
  "GoodsInfo": "商品信息",
}
//English
{
  "Menu.BasicData": "Basic Data",
  "GoodsInfo": "Goods Info",
}

2.5. 系统常量

系统常量包含商业伙伴类型(PartnerType)和业务单据类型(BillType),代码如下:

public class PartnerType
{
    public const string Supplier = "供应商";
    public const string Customer = "客户";
}

public class BillType
{
    public const string Import = "进货";
    public const string ImportReturn = "进退货";
    public const string Export = "销货";
    public const string ExportReturn = "销退货";
}

3. 安装运行

配置完成后,直接运行项目。第一次运行,需要先安装程序,填写企业信息和管理员密码,安装时,自动生成框架数据库表和示例数据。安装成功后,直接跳转到登录页面,输入Admin和安装时设置的管理员密码登录进入系统。

4. 配置数据字典

基础数据-数据字典模块添加如下数据字典。

类别代码 类别名称 字典内容
GoodsType 商品类别 测试
Unit 计量单位 个、千克
SettleMode 结算方式 现金、微信、支付宝、对账

5. 配置功能菜单

下面我们根据需求文档整理好功能模块数据,在系统管理-模块管理中逐一添加进去,各模块数据表格如下:

一级模块 二级模块 代码 图标 Url 描述
基础数据 BaseData database
商品信息 GoodsList ordered-list /bds/goods 查询和维护商品信息。
供应商管理 SupplierList usergroup-delete /bds/suppliers 查询和维护供应商信息。
客户管理 CustomerList usergroup-add /bds/customers 查询和维护客户信息。
进货管理 Import import
采购进货单 ImportList unordered-list /bms/ImportList 查询和维护采购进货单信息。
采购退货单 ImportReturn unordered-list /bms/ImportReturn 查询和维护采购退货单信息。
销货管理 Export export
销售出货单 ExportList unordered-list /bms/ExportList 查询和维护销售出货单信息。
销售退货单 ExportReturn unordered-list /bms/ExportReturn 查询和维护销售退货单信息。
库存管理 Inventory appstore
商品库存表 GoodsInventory table /wms/GoodsInventory 查询和维护商品库存表。
财务管理 Finance property-safety
客户对账单 CustomerAccount unordered-list /fms/CustomerAccount 查询和维护客户对账单信息。
供应商对账单 SupplierAccount unordered-list /fms/SupplierAccount 查询和维护供应商对账单信息。
统计报表 Report line-chart
进货明细表 ImportDetail table /rms/ImportDetail 查询进货明细表。
进退货明细表 ImportReturnDetail table /rms/ImportReturnDetail 查询进退货明细表。
销货明细表 ExportDetail table /rms/ExportDetail 查询销货明细表。
销退货明细表 ExportReturnDetail table /rms/ExportReturnDetail 查询销退货明细表。
商品利润表 GoodsProfit table /rms/GoodsProfit 查询商品利润表。
posted @ 2024-07-22 09:11  known  阅读(38)  评论(0编辑  收藏  举报