本文介紹如何使用Known開發框架搭建進銷存管理系統的專案結構,以及開發前的一些配置和基礎程式碼。
- 專案程式碼:JxcLite
- 開源地址: https://gitee.com/known/JxcLite
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 | 查詢商品利潤表。 |