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通用进销存管理系统 + ...
随机推荐
- RocketMQ主从同步原理
一. 主从同步概述 主从同步这个概念相信大家在平时的工作中,多少都会听到.其目的主要是用于做一备份类操作,以及一些读写分离场景.比如我们常用的关系型数据库mysql,就有主从同步功能在. 主从同步,就 ...
- C# wpf 使用GDI+实现截屏
wpf截屏系列第一章 使用GDI+实现截屏(本章)第二章 使用DockPanel制作截屏框第三章 实现截屏框实时截屏第四章 使用ffmpeg命令行实现录屏 文章目录wpf截屏系列前言一.引用Syste ...
- RTOS入门
RTOS是什么? RTOS是一款操作系统,相当于Windows\Linux 分为ucos FreeRTOS RT-Thread LiteOS 比裸机开发的优势在于,多任务系统,不必串行 临界区 临界区 ...
- java中SimpleDateFormat解析日期格式的问题
在日常写代码的过程中,我们经常要处理各种格式的日期,常见的日期格式有:"20240601","2024-06-01","2024-6-1". ...
- unaipp 发送验证码倒计时
view代码 <view class="margin-top" @tap="getCheckNum()"> <view class=" ...
- vue 的directives一个坑
大江东去,浪淘尽,千古风流人物.故垒西边,人道是,三国周郎赤壁.乱石穿空,惊涛拍岸,卷起千堆雪.江山如画,一时多少豪杰.遥想公瑾当年,小乔初嫁了,雄姿英发.羽扇纶巾,谈笑间,樯橹灰飞烟灭.故国神游,多 ...
- 2D 3D 景深 动画 阴影
2D 二维的平面空间,让元素在X轴或者Y轴进行变化 2D里面的功能函数 2D-位移 2D-旋转 2D-缩放 2D-倾斜 变形属性 transform:: 位移:transform:translate( ...
- npm包管理器 切换npm源 使用nrm来管理npm镜像源
npm是NodeJs项目模块管理工具,它已经集成了nodejs安装包中,在npm从从5.2版开始,增加了 npx 命令(解决的主要问题,就是调用项目内部安装的模块,很多工具不再需要npm -g 全局来 ...
- kettle从入门到精通 第三十八课 kettle 分页全量同步(数据量大)
1.上一课我们学习了在数据量小的情况下的全量同步示例,本次我们一起学习下kettle 分页全量同步. 2.kettle分页全量同步示例依然基于test数据库,从t1表全量同步数据到t2表,由于t1表的 ...
- 记录vue和js操作——尽管很快实现了功能,可总感觉到不爽
需求产生的原因是:后端有一些数据是从旧平台直接迁移过来的,新平台需要根据迁移过来的数据,自动生产新的数据格式. 操作符有如下几种,分项.支路和数字配合操作符可以自定义组合,例如 [0000000000 ...