帝可得智能售货机运营管理系统

1.项目介绍

帝可得是一个基于物联网概念下的智能售货机运营管理系统

应用场景:智能家居、共享充电中、智能售货机

智能售货机的优势在于其自我管理能力

  • 物联网技术:像是售货机的顺风耳和千里眼。

  • 智能分析与推荐

  • 人员设备绑定管理

  • 移动支付支持

  • 线上线下融合(OMO):顾客可以在线上浏览商品,然后直接在售货机上购买,或者在售货机上看到喜欢的商品后,直接在线上下单。

1.1售货机术语

区域管理: 为了更高效地进行经营管理,公司将运营范围划分为若干个逻辑区域。这些区域的划分基于业务需求,可能与地理上的行政区域有所区别,以确保更合理的资源分配和更高效的运营管理。

点位选择: 点位指的是智能售货机的具体放置位置。选择点位时,我们会考虑人流量、目标顾客群体、可见度以及便利性等因素,以最大化售货机的使用效率和顾客的购买体验。

售货机功能: 智能售货机就像是一个自动的小店,里面摆满了各种商品。顾客想要什么,直接在机器上选,然后机器就会把商品送到他们手中,就像是一个自动化的仓库。

货道设计:售货机里面的货道,你可以想象成超市里的那种货架。每一层都有好几个位置可以放商品,这样就能放很多种不同的商品,而且每一层都能放很多,这样顾客的选择就会更多。

1.2平台管理

平台管理员:主要作用有基础数据的管理和创建工单排除员工完成维修或补货。

1.3产品原型

帝可得项目点击链接立即查看 腾讯 CoDesign - 腾讯 CoDesign

1.4库表设计

2.初始AI

2.1AIGC

AIGC(AI Generated Content):AIGC是AI领域的一个应用分支,专注于利用AI技术自动生成内容,包括文本,代码,图片,音频,视频。

AI大模型:通常指的是具有大量参数的深度学习模型,经过大量数据训练,具备复杂计算能力的人工智能系统,它们能够执行多种高级任务,其中包括内容生成。eg:通义千问,智谱清言。

2.2提示工程

1.Prompt

提示(Prompt)是我们对大模型提出的问题。

2.提示工程

提示工程(Prompt Engineering)也被称为上下文提示,它涉及到设计和优化输入文本,也就是Prompt,来引导AI模型生成预期的输出。

简单来说,就像是给AI出一个好问题,让它给我们一个满意的答案。

3.Prompt的组成

  • 角色:给 AI 定义一个最匹配任务的角色,比如:「你是一位软件工程师」「你是一位小学老师」

  • 指示:对任务进行描述

  • 上下文:给出与任务相关的其它背景信息(尤其在多轮交互中)

  • 例子:必要时给出举例,[实践证明其对输出正确性有帮助]

  • 输入:任务的输入信息;在提示词中明确的标识出输入

  • 输出:输出的格式描述,以便后继模块自动解析模型的输出结果,比如(JSON、Java)

例如:表结构,生成数据库说明文档,生成代码,生成代码流程图

3.项目搭建

3.1搭建后端项目

1.初始化项目

Git下载

通过idea克隆源码,仓库地址:dkd-parent: 帝可得后台管理系统

Maven构建

使用idea打开项目(get from VCS)后,等待环境检查(主要是Maven下载项目依赖)

2.MySQL相关

导入sql

1、创建数据库create schema dkd;

2、执行sql脚本文件,完成导入

配置信息

dkd-admin模块下,编辑resources目录下的application-druid.yml,修改数据库连接

3.Redis相关

启动

在redis解压目录下,编辑redis.windows.conf配置文件,设置redis密码

在redis解压目录下,执行redis-server.exe redis.windows.conf启动

配置信息

dkd-admin模块下,resources目录下的application.yml,设置redis密码等相关信息

4.项目运行

dkd-admin模块下,运行com.ruoyi.DkdApplication.java

3.2搭建前端项目

1.初始化项目

通过vscode克隆源码,仓库地址:dkd-vue: 帝可得前端

需要关闭文件夹

2.安装依赖

右上角控制面板

npm install

3.项目运行

npm run dev

4.点位管理

4.1流程

4.2库表设计

你是一位软件工程师,帮我生成MySQL的表结构
需求如下:
1,区域表,表名tb_region,字段有主键id、区域名称
2,合作商表,表名tb_partner,字段有主键id、合作商名称、联系人、联系电话、分成比例(int类型)、账号、密码
3,点位表,表名tb_node,字段有主键id、点位名称、详细地址、商圈类型(int类型)
其他要求:
1,每张表中都有创建时间(create_time)、修改时间(date_time)、创建人(create_by)、修改人(update_by)、备注(remark)这些字段
2,每张表的主键都是自增的
3,区域与点位是一对多的关系,合作商与点位是一对多的关系,请用字段表示出来,并建立外键约束
4,请为所有字段都添加上comment
5,帮我给生成的表中插入一些北京城市相关区域、点位、合作商的测试数据

4.3步骤

①创建目录菜单

创建点位管理目录菜单

②添加数据字典

先创建商圈的字典类型

再创建商圈的字典数据

③配置代码生成信息

导入三张表(代码生成器)

④下载代码并导入项目

导入后端代码:右键main

4.4区域管理改造

1.参考页面原型,完成基础布局展示改造

将主键改为序号并升序排序

删除和新增的图标进行删除

2.在区域列表查询中,需要显示每个区域的点位数

实现思路

(1)同步存储:在区域表中有点位数的字段,当点位发生变化时,同步区域表中的点位数。

  • 优点:由于是单表查询操作,查询列表效率最高。

  • 缺点:需要在点位增删改时修改区域表中的数据,有额外的开销,数据也可能不一致。

(2)关联查询:编写关联查询语句,在mapper 层封装。

  • 优点:实时查询,数据100%正确,不需要单独维护。

  • 缺点:SQL语句较复杂,如果数据量大,性能比较低。

区域和点位表,记录个数都不是很多,所以我们采用关联查询这种方案。

1.SQL查询:先聚合统计每个区域的点位数,然后与区域表进行关联查询

-- 传统模式
-- 1.先聚合统计每个区域下的点位数
-- 确定查询表 tb_node
-- 确定分组字段 region_id
select region_id,count(*) as node_count from tb_node group by region_id;
-- 2.然后与区域表进行关联查询
select r.id,r.region_name,r.remark,ifnull(n.node_count,0) as node_count from tb_region r
    left join (select region_id,count(*) as node_count from tb_node group by region_id) n on r.id=n.region_id;

-- AI辅助编程模式
-- 查询区域表所有的信息,需要显示每个区域的点位数
SELECT r.*, COUNT(n.id) AS node_count FROM tb_region r LEFT JOIN tb_node n ON r.id = n.region_id GROUP BY r.id;

2.根据接口文档和sql创建RegionVo(返回给前端的类)

创建包VO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值