- VisualStudio2022插件的安装及使用-编程手把手系列文章
- pprof-在现网场景怎么用
- C#实现的下拉多选框,下拉多选树,多级节点
- 【学习笔记】基础数据结构:猫树
本文介绍如何使用Known开发框架搭建进销存管理系统的项目结构,以及开发前的一些配置和基础代码.
使用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开发工具修改和添加系统项目文件.
本项目默认使用Known框架模板提供的SQLite数据库,如果要更改其他数据库,请参考官方文档更换数据库.
用VS2022打开项目后,双击JxcLite项目中的AppConfig.cs文件,修改系统名称。代码如下:
public static class AppConfig
{
public static string AppName => "进销存管理系统";
}
双击JxcLite项目中的Resources\actions.txt资源文件,在此扩展Known框架提供的功能按钮信息,例如本项目除增删改查导按钮之外,还需要退货、确认、开票、回款按钮.
Return | 退货 | rollback | primary
Confirm | 确认 | check | primary
Invoice | 开票 | profile | primary
Payment | 回款 | pay-circle | primary
如果项目需要多语言,双击打开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",
}
系统常量包含商业伙伴类型(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 = "销退货";
}
配置完成后,直接运行项目。第一次运行,需要先安装程序,填写企业信息和管理员密码,安装时,自动生成框架数据库表和示例数据。安装成功后,直接跳转到登录页面,输入Admin和安装时设置的管理员密码登录进入系统.
在基础数据-数据字典模块添加如下数据字典.
类别代码 | 类别名称 | 字典内容 |
---|---|---|
GoodsType | 商品类别 | 测试 |
Unit | 计量单位 | 个、千克 |
SettleMode | 结算方式 | 现金、微信、支付宝、对账 |
下面我们根据需求文档整理好功能模块数据,在系统管理-模块管理中逐一添加进去,各模块数据表格如下:
一级模块 | 二级模块 | 代码 | 图标 | 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 | 查询商品利润表。 |
最后此篇关于Known框架实战演练——进销存框架搭建的文章就讲到这里了,如果你想了解更多关于Known框架实战演练——进销存框架搭建的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
016-03-07T09:10:16.992-0600 W NETWORK [HostnameCanonicalizationWorker] Failed to obtain name info f
我有一个工作的 C 程序,其中字符串数组的长度在编译时已知。它是: char array_person_name[3][101]; char person_name[101] = ""; ... st
我正在做一个需要Graph DB 的项目。我正在使用 C# .Net Core 开发项目。我不得不选择 ArangoDB 作为这个项目的 Graph DB。不幸的是,.Net 没有官方驱动程序。这就是
我正在尝试使用 DataContractSerializer 将对象序列化为 Xml。我有以下类(class); [ActiveRecord(Lazy = true)] [KnownType(type
我有: 身份服务器 4, 具有 OpenId Connect 和混合流的 Mvc 应用 WebApi 应用 假设用户已经获得带有 id_token 和访问 token 的 cookie。然后他从 mv
我有: 身份服务器 4, 具有 OpenId Connect 和混合流的 Mvc 应用 WebApi 应用 假设用户已经获得带有 id_token 和访问 token 的 cookie。然后他从 mv
我有一个简单的 Asp.Net Core Azure Web 应用程序,需要向本地 Rest 服务发出 http get 请求。此 Rest 服务托管在 IIS 上,仅针对端口 443 设置了绑定(b
这个问题可能是一个很好回答的问题,但不幸的是我不知道正确的术语来正确地问它,所以...... template class __bit_iterator; 有人可以在这里解释最后一个模板参数吗?我唯
在基于ASP.NET Core 1.1.1开发的VS2017 Ver 15.3.3应用程序中,我使用Account confirmation and password recovery in ASP.
我有一个应用程序(aspnet core app 3.1),在启动期间使用以下代码从 azure blob 存储加载数据: BlobClient client = new BlobClient(loa
我有一个应用程序(aspnet core app 3.1),在启动期间使用以下代码从 azure blob 存储加载数据: BlobClient client = new BlobClient(loa
我想知道如何查询Wikidata通过使用别名(“也称为”)。 现在我正在努力 SELECT ?item WHERE { ?item rdfs:aliases ?alias. FILTER(CONTAI
这是一个 PNG 类,在类文档中列出了两个构造函数,如下所示。 PNG::PNG ( string const & file_name ) Creates a PNG image
这就是我目前拥有的,以及我的教授提供的扫描仪。 #include "Similarity.h" #include "Scanner.h" using namespace std; int Simila
我想从我的 asp 页面连接到 mysql 数据库。因此,根据我的托管服务提供商的说法,我使用了连接字符串,其中服务器被指定为“localhost:3309” Dim myConnection As
我正在尝试集成的第三方应用程序,要求将文件放入 .well-known文件夹。如何使该文件可从 URL 访问? ( example.com/.well-known/token.txt )。站点部署为
尝试学习 Hibernate,我正在尝试学习如何执行 NamedQuries但每次我都会收到 Exception in thread "main" org.hibernate.MappingExcep
我正在尝试将 PWA 发布到 Google Playstore。我被困在数字 Assets 握手中。 这是我的 nginx conf - location /asd/ { default_t
我正在尝试设置 wordpress xml-rpc带 rails : blog = XMLRPC::Client.new("localhost/blog", "/xmlrpc.php", 80) 但是
我在我的 nginx 配置中有这个: location ~ /\. { deny all; } location /.well-known/ { allow all; } 但是我还是不
我是一名优秀的程序员,十分优秀!