首页 > 数据库 >平台代收代付数据库表的设计

平台代收代付数据库表的设计

时间:2023-12-20 23:12:58浏览次数:31  
标签:COMMENT 费用 平台 cost 数据库 买方 代付 卖方 代收

平台代收代付数据库表的设计

1.费用项目通过cost_code来唯一标识,根据费用编码来锁定费用,不使用在数据表中比如费用表,每增加一个费用而增加一个费用字段的方式,这样会导致不灵活,不容易扩展。
通过费用编码的方式,可以将费用表的字段的方式纵向的拉平为多条费用的横向方式,便于扩展,系统每增加一个费用项目,使计费更加清晰。
2.费用按大类可以分为:费用,罚金,补贴。
3.按费用的收入和支出的方向,确定费用是给谁,从谁那边扣除等,方便订单的费用结算。
4.表如下:
1.买方费用表
2.卖方费用表
3.买方罚金表,比如违约金,取消订单等
4.卖方罚金表
5.买方补贴表,比如平台的优惠券
6.卖方补贴表

5.关键字段设计

`cost_target_code` varchar(16) DEFAULT NULL COMMENT '目标编码(卖方/买方/平台)1-买方,2-卖方,3-平台',
`cost_target_desc` varchar(32) DEFAULT NULL COMMENT '目标描述',
`cost_source_code` varchar(16) DEFAULT NULL COMMENT '来源编码(卖方/买方/平台)1-买方,2-卖方,3-平台',
`cost_source_desc` varchar(200) DEFAULT NULL COMMENT '来源描述',
 `amount` int(11) DEFAULT '0' COMMENT '金额',
`cost_code` varchar(16) DEFAULT NULL COMMENT '费用编码',
`cost_name` varchar(32) DEFAULT NULL COMMENT '费用名称',
`cost_type` tinyint(4) DEFAULT NULL COMMENT '费用大类类型(可选)',
`cost_type_desc` varchar(1000) DEFAULT NULL COMMENT '费用大类类型(可选)类型描述',

6.举例

cost_target_code	cost_target_desc	cost_source_code	cost_source_desc	amount
1					买方				2					卖方				100		

1					买方				3					平台				200

2					卖方				1					买方				300

3					平台				1					买方				400

以上逻辑:
1: 卖方给买方 100元
2:卖方给平台 200元
3: 买方给卖方 300元
4: 买方给平台 400元

代收代付的逻辑:
1: 卖方给买方 100元
3: 买方给卖方 300元

如果将需求逻辑调整为:某一业务场景卖方不给罚金也不扣款罚金,由平台来处理。(逻辑上:由平台来代替卖方,收入和支出。)
1: 卖方给买方 100元 》》 平台给买方 100元
2:卖方给平台 200元 没有记录
3: 买方给卖方 300元 》》 买方给平台 300元
4: 买方给平台 400元 保留不变

标签:COMMENT,费用,平台,cost,数据库,买方,代付,卖方,代收
From: https://www.cnblogs.com/oktokeep/p/17917839.html

相关文章

  • openPlant实时数据库使用demo
    相关依赖由于没有com.magus.jdbc.jar依赖,需要手动下载防止lib下进行配置<dependency> <groupId>com.magus</groupId> <artifactId>jdbc</artifactId> <version>3.0</version> <scope>system</scope> <systemPath>${basedir}/lib/c......
  • StarRocks2.3 MPP数据库安装
    1. 规划FEBE10.11.14.1510.11.14.13、10.11.14.15、10.11.14.162.安装记录2.1已安装已完成 10.11.14.15、10.11.14.16两台机器相应节点的安装。10.11.14.1510.11.14.16下面完成 10.11.14.13机器BE节点的安装。参考:https://docs.starrocks.io/zh-cn/2.3/quick_start/Deploy......
  • openGauss学习笔记-166 openGauss 数据库运维-备份与恢复-导入数据-使用COPY FROM STD
    openGauss学习笔记-166openGauss数据库运维-备份与恢复-导入数据-使用COPYFROMSTDIN导入数据-从MY向openGauss数据库进行数据迁移166.1示例2:从MY向openGauss数据库进行数据迁移下面示例演示如何通过CopyManager从MY向openGauss数据库进行数据迁移的过程。importjava.io.St......
  • openGauss学习笔记-167 openGauss 数据库运维-备份与恢复-导入数据-使用gsql元命令导
    openGauss学习笔记-167openGauss数据库运维-备份与恢复-导入数据-使用gsql元命令导入数据gsql工具提供了元命令\copy进行数据导入。167.1\copy命令\copy命令格式以及说明参见表1\copy元命令说明。表1\copy元命令说明语法说明\copy{table[(column_list)......
  • c203数据库练习题下半
    2、视图练习(1)建立视图v_xs_1,要求包含男生的学号,姓名,性别,出生日期,班级编号,专业名称字段,并要求视图操作数据时进行检查。使用select命令查询创建的视图。createviewv_xs_1asselectxh,xm,xb,csrq,bjbh,zymcfromxsjbxxbwherexb='男'withcheckoption;建立一个学院教师......
  • c203数据库练习题上半
    1.使用SQL语言创建满足以下要求的数据库。(1)创建数据库名称为jwgl,字符集选择utf8,排序规则选择utf8_general_ci。createdatabasejwglcharactersetutf8collateutf8_general_ci;(2)查看数据库。showdatabases;(3)将数据库jwgl的指定字符集修改为gb2312。mysql>alterdatabasejwg......
  • 关于数据库的基础
    单一索引:只是用某一列数据作为索引,默认是index索引,这一列可以包含重复数据;如果某一列不存在重复数据最好设置成unique形式的索引,比index的索引速度更快,在text数据上要使用fulltext索引。联合索引:为了更进一步提高检索速度,每次检索都需要用多列同时进行时,就可以把这多列设为联合索......
  • 数据库备份与恢复
    在任何数据库环境中,总会有不确定的意外情况发生,比如例外的停电、计算机系统中的各种软硬件故障、人为破坏、管理员误操作等是不可避免的,这些情况可能会导致数据的丢失、服务器瘫痪等严重的后果。存在多个服务器时,会出现主从服务器之间的数据同步问题。为了有效防止数据丢失,并......
  • 达梦数据库V8 命令行静默安装
    unzipdm8_20230420_x86_kylin10_64.zipmount-oloop-tiso9660dm8_20230420_x86_kylin10_64.iso/mnt/ulimit-HSn65535groupadddinstalluseradd-gdinstall-m-d/home/dmdba-s/bin/bashdmdbapasswddmdbamkdir/data/dm8chown-Rdmdba:dinstall/......
  • 数据库软硬件选型的思考
    数据库软硬件选型的思考背景最近有多个项目出现过数据库的问题这里想总结语一下遇到的问题.以及可能的软硬件优化方案与思路.暂时还没有进行过系统的测试验证,所以仅是一个思考,后续会慢慢完善.硬件选型截止现在2024年元旦之前.Oracle数据库我认为还是选择Inte......