帝可得项目之点位管理


一、需求分析

一旦我们与合作商达成协议,确定了合作的细节和点位,我们就可以安排工作人员去投放智能售货机了。这些点位将成为我们智能售货机的“家”,为消费者提供便捷的购买服务。


二、涉及点位管理的业务流程

  1. 登录系统:后台管理人员登录后台系统
  2. 新增区域: 后台管理人员可以添加区域范围,区域范围与运维/运维人员挂钩,区域下可关联点位。
  3. 新增合作商: 管理人员可以添加合作商,合作商与点位进行关联。
  4. 新增区域点位: 后台管理人员可以在特定区域内新增点位,这些点位是放置智能售货机的具体位置。
  5. 业务流程图在这里插入图片描述

三、数据库和数据表的设计

(1)区域管理

区域表主要字段

主键id、区域名称、备注说明

区域管理相关页面原型

列表展示页面:

在这里插入图片描述

新增页面:

在这里插入图片描述

删除页面:

在这里插入图片描述

详情页面:

在这里插入图片描述

(2)合作商管理

合作商表主要字段

主键id、合作商名称、联系人、联系电话、分成比例、账号、密码

合作商管理相关页面原型

列表展示页面:

在这里插入图片描述

新增页面:

在这里插入图片描述

删除页面:

在这里插入图片描述

修改页面:

在这里插入图片描述

重置密码页面:

在这里插入图片描述

(3)点位管理

点位表主要字段

主键id、点位名称、详细地址、商圈类型(设置为数据字典)、区域外键、合作商外键

点位管理相关页面原型

列表展示页面:

在这里插入图片描述

新增页面:

在这里插入图片描述

删除页面:

在这里插入图片描述

详情页面:

在这里插入图片描述

使用建表语句创建三张表,区域表,合作商表,点位表。

CREATE TABLE `tb_region` (
  `id` INT AUTO_INCREMENT COMMENT '主键id' PRIMARY KEY,
  `region_name` VARCHAR(255) NOT NULL COMMENT '区域名称',
  `create_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `create_by` VARCHAR(64) COMMENT '创建人',
  `update_by` VARCHAR(64) COMMENT '修改人',
  `remark` TEXT COMMENT '备注'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='区域表';

-- 插入测试数据
INSERT INTO `tb_region` (`region_name`,`remark`) VALUES ('北京市朝阳区','北京市朝阳区'), ('北京市海淀区','北京市海淀区'), ('北京市东城区','北京市东城区');

CREATE TABLE `tb_partner` (
  `id` INT AUTO_INCREMENT COMMENT '主键id' PRIMARY KEY,
  `partner_name` VARCHAR(255) NOT NULL COMMENT '合作商名称',
  `contact_person` VARCHAR(64) COMMENT '联系人',
  `contact_phone` VARCHAR(15) COMMENT '联系电话',
  `profit_ratio` INT COMMENT '分成比例',
  `account` VARCHAR(64) COMMENT '账号',
  `password` VARCHAR(64) COMMENT '密码',
  `create_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `create_by` VARCHAR(64) COMMENT '创建人',
  `update_by` VARCHAR(64) COMMENT '修改人',
  `remark` TEXT COMMENT '备注'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='合作商表';

-- 插入测试数据
INSERT INTO `tb_partner` (`partner_name`, `contact_person`, `contact_phone`, `profit_ratio`, `account`, `password`) VALUES
('合作商A', '张三', '13800138000', 30, 'a001', 'pwdA'),
('合作商B', '李四', '13912345678', 25, 'b002', 'pwdB');

CREATE TABLE `tb_node` (
  `id` INT AUTO_INCREMENT COMMENT '主键id' PRIMARY KEY,
  `node_name` VARCHAR(255) NOT NULL COMMENT '点位名称',
  `address` VARCHAR(255) NOT NULL COMMENT '详细地址',
  `business_type` INT COMMENT '商圈类型',
  `region_id` INT COMMENT '区域ID',
  `partner_id` INT COMMENT '合作商ID',
  `create_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `create_by` VARCHAR(64) COMMENT '创建人',
  `update_by` VARCHAR(64) COMMENT '修改人',
  `remark` TEXT COMMENT '备注',
  FOREIGN KEY (`region_id`) REFERENCES `tb_region`(`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY (`partner_id`) REFERENCES `tb_partner`(`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='点位表';


-- 插入测试数据
-- 假设区域ID为1对应'北京市朝阳区',合作商ID为1对应'合作商A'
INSERT INTO `tb_node` (`node_name`, `address`, `business_type`, `region_id`, `partner_id`) VALUES
('三里屯点位', '北京市朝阳区三里屯路', 1, 1, 1),
('五道口点位', '北京市海淀区五道口', 2, 2, 2);

四、点位相关代码生成

方法

使用若依代码生成器,生成区域管理、合作商管理、点位管理前后端基础代码,并导入到项目中。

步骤

创建目录菜单

在这里插入图片描述

添加数据字典

先添加字典
在这里插入图片描述
再添加字典标签和字典值,刚创建的字典在第二页,找到点击下面箭头指的地方
在这里插入图片描述
点击新增,添加如下几个字典值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置代码生成信息

(1)找到代码生成器

在这里插入图片描述
(2)导入之前创建的区域表、合作商表、点位表

在这里插入图片描述
(3)配置这三张表的生成信息

  • 区域表
    点击编辑图标,然后依次配置接下来三部分的信息
    首先是基本信息,其中要把实体类前面的Tb去掉,然后作者改成自己(可改可不改,默认是ruoyi)
    在这里插入图片描述
    然后是字段信息,这个界面的配置要参考页面原型。
    在这里插入图片描述
    最后是生成信息,其中生成个包路径默认是com.dkd.system,我们得换成com.dkd.manage,因为之后的业务代码都是写在dkd-manage中,生成模块名也改为manage,生成业务名不需要改,生成功能名是最终在页面展示时显示的,所以改为区域管理,上级菜单选点位管理,最后点提交就行
    在这里插入图片描述
    另外两张表与上面的步骤一样,就不列出来了。
  1. 下载代码并导入到项目中

(1)全选然后点击生成按钮
在这里插入图片描述
下载后的文件如下
在这里插入图片描述
(2)将下载的三个sql文件导入到数据库中,导入后在sys_menu表会出现如下字段
在这里插入图片描述
根据页面原型,进入菜单管理,调整点位管理下面三个子页面的顺序
在这里插入图片描述
接下来导入前端的环境,前端的文件是下载文件中的vue文件,api存放是是请求的js文件,views存放的是视图组件。

在这里插入图片描述
打开api文件,复制到前端代码中的src下面的api中,如图所示
在这里插入图片描述
在这里插入图片描述
同理,打开views文件,将里面的manage文件复制到前端代码中的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到此为止,前端代码已经复制完成,接下来弄后端,打开main文件
在这里插入图片描述
在这里插入图片描述
其中java文件夹存放的是三层架构加实体类的内容,resources文件夹存放的是xml的映射文件。分别将这两个文件复制粘贴到后期代码对应的位置。

在这里插入图片描述
这里有个注意的点,如果粘贴后IDEA右下角提示Externally added files can addad to Git,由于我们是外部复制的内容,所以一定要选择Always Add选项,这样文件才不会爆红,其中.gitkeep文件不用管,只起到一个占位的作用。

到此,一切准备就绪,启动后端项目
在这里插入图片描述
运行前端项目,登录之后进入点位管理,发现已经能够正常显示界面内容了。
在这里插入图片描述
测试一下查询功能,没问题
在这里插入图片描述
到此,点位管理这块的基础功能已经实现,才发现已经快到凌晨三点半了哈哈,晚上写代码心能静下来,但是发现和原型不一样,需要对着页面原型改造一下,所以接下来请依次看下面几篇文章:
帝可得项目之点位管理之区域管理,帝可得项目之点位管理之合作商管理,帝可得项目之点位管理之点位管理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值