Known框架实战演练——进销存框架搭建
本文介绍如何使用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 | 查询商品利润表。 |
Known框架实战演练——进销存框架搭建的更多相关文章
- 文献综述十八:基于SSH框架的进销存管理系统设计与实现
一.基本信息 标题:基于SSH框架的进销存管理系统设计与实现 时间:2017 出版源:内蒙古科技与经济 文件分类:对框架的研究 二.研究背景 进销存管理系统在各企业中广泛应用,使用SSH框架,很大程度 ...
- 文献综述十五:基于b/s中小型超市进销存管理系统的研究与设计
一.基本信息 标题:基于b/s中小型超市进销存管理系统的研究与设计 时间:2015 出版源:湘西财经大学 文件分类:对超市管理系统的研究 二.研究背景 在竞争日益激烈的行业中,尽可能降低运营成本,逐步 ...
- 文献综述十四:基于Oracle11g的超市进销存管理系统设计与实现
一.基本信息 标题:基于Oracle11g的超市进销存管理系统设计与实现 时间:2016 出版源:技术创新 文件分类:对数据库的研究 二.研究背景 为超市设计开发的超市管理系统,采用的是 VC+ Or ...
- spring boot的一个小项目小型进销存系统
项目所需的依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...
- Odoo进销存(采购、销售、仓库)入门教程 - 上
转载地址:http://blog.csdn.net/wangnan537/article/details/46434373 运行环境: Ubuntu14.04+Odoo8.0 作者:苏州-微尘 0. ...
- 浩瀚技术团队... 安卓智能POS移动PDA开单器 开单器 进销存系统 进销存系统
浩瀚技术团队... 智能POS移动PDA开单器 开单器 进销存系统 进销存系统 点餐 会员管理 会员管理 深度解读 手机APP移动办公到底是什么? 快速打单POS·不仅仅是快那么简单!
- 寒冬之下,浩瀚智能开单收银打印扫描POS为何能在批发零售门店商场 车销行业 风靡!:进销存+打印扫描POS机
是一款适用于商超.餐饮.服装鞋帽.家电专营等等具有零售行业特点的企业,供企业管理人员用于管理.监控本品牌的市场占有率.门店覆盖区域.网点分布合理性等经济地理信息的工具平台. 1,功能一:业务抄单文章来 ...
- PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点
传统车销模式弊端:1.手写开单,效率低,动作慢2.现场手写开单明细不能打印,产品明细不规范3.电脑办公人员及车销人员对车上的库存情况掌握不清楚,销售人员对每种产品销售价格不清楚4.老板对员工工作的管控 ...
- 【.NET实战教程】北风网基于ASP.NET多层架构下的企业级进销存软件全程培训
.Net进销存系统详细课程大纲(开发工具采用VS2008+sqlsever2005) [小编提醒:现在学习的话,可以使用vs2012+sql 2008 学习的是思路,教学环境不一定要一模一样]1.项目 ...
- Net通用进销存管理系统 + 开发文档+ 使用说明
通用进销存管理系统 + 开发文档+ 使用说明Net源码下载 包括下面的模块基础资料模块采购管理模块库存管理模块商务管理模块营业管理模块维修管理模块会员管理模块财务管理模块 Net通用进销存管理系统 + ...
随机推荐
- MahApps.Metro的MVVM模式解析(二) 主题功能
MahApps.Metro的MVVM模式解析(二) 主题功能 MahApps.Metro是一个开源的WPF框架,旨在为WPF应用程序提供现代和漂亮的用户界面. 在MahApps.Metro中提供了切换 ...
- django设置中文和上海时间
在settings.py配置文件中进行配置: # 设置为中文 LANGUAGE_CODE = 'zh-hans' # 设置 "亚洲/上海" 时区 TIME_ZONE = 'Asia ...
- Android 13 - Media框架(19)- ACodec(一)
关注公众号免费阅读全文,进入音视频开发技术分享群! 这一节我们将会一起了解 ACodec 的设计方式,在看具体的实现细节前我们要先了解它内部的状态转换机制,这也是ACodec的核心难点之一. 1.AH ...
- Android 12(S) ALooper AHandler AMessage(二)
来写个demo试试看到底是ALooper AHandler AMessage是怎么运行的,源文件以及Android.bp如下: // EvenHandler.h #ifndef __MESSAGE_T ...
- (JAVA)设计模式-适配器模式
模式的定义和特点: 适配器模式(Adapter)是一种将一个类的接口转换成客户希望的另外一个接口的设计模式,可以提高代码的复用性和灵活性. 结构与实现: 定义一个适配器类来实现业务接口,再继承现有组件 ...
- ansible list错误
[root@localhost ansible]# ansible all -list [WARNING]: * Failed to parse /etc/ansible/1.txt with ini ...
- window.onload()函数和jQuery中的document.ready()有什么区别?
a.执行时间:window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行.$(document).ready()是DOM结构绘制 完毕后就执行,不必等到加载完毕.$(doc ...
- raksmart服务器部署SSL报错:ERR_CERT_COMMON_NAME_INVALID
背景:raksmart服务器 下篇 部署项目 SSL报错:ERR_CERT_COMMON_NAME_INVALID 安装certbot sudo apt update sudo apt install ...
- jenkins发布服务失败查看catalina.out启动日志和xxl-job jobhandler naming conflicts
jenkins发布服务失败查看catalina.out启动日志和xxl-job jobhandler naming conflicts 1.查看tomcat/logs/catalina.out 日志, ...
- textFieldShouldReturn: 方法无效化!
问题描述 不管如何在键盘上点击return,textFieldShouldReturn:方法一直没有调用. 问题代码 @interface ViewController : UIViewControl ...