本文介绍如何使用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 查询商品利润表。

Known框架实战演练——进销存框架搭建的更多相关文章

  1. 文献综述十八:基于SSH框架的进销存管理系统设计与实现

    一.基本信息 标题:基于SSH框架的进销存管理系统设计与实现 时间:2017 出版源:内蒙古科技与经济 文件分类:对框架的研究 二.研究背景 进销存管理系统在各企业中广泛应用,使用SSH框架,很大程度 ...

  2. 文献综述十五:基于b/s中小型超市进销存管理系统的研究与设计

    一.基本信息 标题:基于b/s中小型超市进销存管理系统的研究与设计 时间:2015 出版源:湘西财经大学 文件分类:对超市管理系统的研究 二.研究背景 在竞争日益激烈的行业中,尽可能降低运营成本,逐步 ...

  3. 文献综述十四:基于Oracle11g的超市进销存管理系统设计与实现

    一.基本信息 标题:基于Oracle11g的超市进销存管理系统设计与实现 时间:2016 出版源:技术创新 文件分类:对数据库的研究 二.研究背景 为超市设计开发的超市管理系统,采用的是 VC+ Or ...

  4. spring boot的一个小项目小型进销存系统

    项目所需的依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...

  5. Odoo进销存(采购、销售、仓库)入门教程 - 上

    转载地址:http://blog.csdn.net/wangnan537/article/details/46434373 运行环境: Ubuntu14.04+Odoo8.0 作者:苏州-微尘 0. ...

  6. 浩瀚技术团队... 安卓智能POS移动PDA开单器 开单器 进销存系统 进销存系统

    浩瀚技术团队... 智能POS移动PDA开单器 开单器 进销存系统 进销存系统 点餐 会员管理 会员管理 深度解读 手机APP移动办公到底是什么? 快速打单POS·不仅仅是快那么简单!  

  7. 寒冬之下,浩瀚智能开单收银打印扫描POS为何能在批发零售门店商场 车销行业 风靡!:进销存+打印扫描POS机

    是一款适用于商超.餐饮.服装鞋帽.家电专营等等具有零售行业特点的企业,供企业管理人员用于管理.监控本品牌的市场占有率.门店覆盖区域.网点分布合理性等经济地理信息的工具平台. 1,功能一:业务抄单文章来 ...

  8. PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点

    传统车销模式弊端:1.手写开单,效率低,动作慢2.现场手写开单明细不能打印,产品明细不规范3.电脑办公人员及车销人员对车上的库存情况掌握不清楚,销售人员对每种产品销售价格不清楚4.老板对员工工作的管控 ...

  9. 【.NET实战教程】北风网基于ASP.NET多层架构下的企业级进销存软件全程培训

    .Net进销存系统详细课程大纲(开发工具采用VS2008+sqlsever2005) [小编提醒:现在学习的话,可以使用vs2012+sql 2008 学习的是思路,教学环境不一定要一模一样]1.项目 ...

  10. Net通用进销存管理系统 + 开发文档+ 使用说明

    通用进销存管理系统 + 开发文档+ 使用说明Net源码下载 包括下面的模块基础资料模块采购管理模块库存管理模块商务管理模块营业管理模块维修管理模块会员管理模块财务管理模块 Net通用进销存管理系统 + ...

随机推荐

  1. P1036 [NOIP2002 普及组] 选数

    传送锚点:https://www.luogu.com.cn/problem/P1036 题目描述 已知 \(n\) 个整数 \(x_1,x_2,\cdots,x_n\),以及 \(1\) 个整数 \( ...

  2. ReplayKit2采用端口转发数据时不能终止的问题

    一.现象描述 测试发现在进行USB连接数据投屏中,如果点击屏幕红条进行结束ReplayKit2投屏或者通知栏点击停止录制按钮,大概率出现已经停止录屏,但是通知栏中的录屏按钮还在继续录制的问题 这个现象 ...

  3. python-判断两个序列的成员是否一样

    目的:判断两个序列的成员是否一样,如:list1 = [1, 2],list2 = [2, 1],则两个序列的成员是一样的. 实现:借助集合set()的性质实现. 代码如下: 1 if __name_ ...

  4. if语句嵌套

       // if语句的嵌套         // 在if语句的{}中,执行程序中,再次有if语句         /*         if(){             if(){          ...

  5. 使用itextPDF实现PDF电子公章工具类

    使用itextPDF实现PDF电子公章工具类 一.制作公章 在线网站:印章生成器 - Kalvin在线工具 (kalvinbg.cn) 然后对公章进行下载保存 盖章图片: 二.生成数字签名 2.1: ...

  6. 太卷了,史上最简单的监控系统 catpaw 简介

    指标监控的痛点 当下比较流行的监控系统,比如 Prometheus.Nightingale.VictoriaMetrics,都是基于数值型指标的监控系统,这类监控系统的痛点在于:告警的时候只能拿到异常 ...

  7. Android开发基础——真机测试错误,ADB启动不了,程序安装不了,the connection to adb is down,INSTALL_CANCELED_BY_USER...

    在Android开发中,无论是真机测试还是AVD测试,都会报出这些错误.在这里,我会详细说明一下怎么会出现这些错误的,然后要怎么样才能解决这些错误. 错误一: The connection to ad ...

  8. Mysql RC/RR隔离原理和区别 不可重复读和可重复读

    Mysql RC/RR隔离原理和区别 不可重复读和可重复读 mysql四种隔离级别:1.未提交读(READ UNCOMMITED)脏读2.已提交读 (READ COMMITED)简称(RC) 不可重复 ...

  9. post请求方式 - 使用restTemplate而不使用httpClient,headers.setContentType(MediaType.APPLICATION_JSON_UTF8)

    public static String doPostForJson(String url, String json,String byteAuthorization) { RestTemplate ...

  10. Sealos 5.0 正式发布,云本应该是操作系统

    把所有资源抽象成一个整体,一切皆应用,这才是云应该有的样子. 2018 年 8 月 15 日 Sealos 提交了第一行代码. 随后开源社区以每年翻倍的速度高速增长. 2022 年我们正式创业,经历一 ...