
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
本项目旨在为充电站提供一套方便操作的管理系统,随着电动汽车节能时代的到来,新能源汽车越来越普及,充电站的普及已成为不可阻挡的趋势,因此设计出了方便管理车辆、充电桩、客户信息等的一套完整的项目。
该项目是B/S架构项目,应用了SSM框架整合以及Shiro安全框架做权限处理,对于普通用户、企业、管理员可以给予不同的权限。结合硬件部打包发来的数据,实时统计充电桩的状态,让管理员可以时刻监测到充电桩的状态,可针对性的提前做处理。
本项目分为三大模块:
1. 控制台:
1.1 充电监测
针对充电中的状态进行实时监测
1.2 车辆状态
监测车辆的状态信息,检查是否有异常项
2. 设备管理:
2.1车辆管理
录入车辆信息,方面统计及后期维护
2.2电池箱管理
管理电池箱,电池箱的状态,及时更换或维修
2.3充电桩管理
管理充电桩,充电桩的状态,及时更换或维修
3. 系统管理:
3.1用户管理
记录用户信息,显示机构树,模糊搜索,状态管理
3.2角色管理
权限分配,给不同的用户或公司分配不同的权限
3.3资源管理
自定义添加权限资源,包括按钮、菜单、字段
3.4机构管理
管理公司信息,总公司、分公司、子公司、部门等
数据库设计:
DROP DATABASE pcm;
CREATE DATABASE pcm CHARACTER SET utf8;
USE pcm;
-- 机构表
CREATE TABLE base_organization(
id INT NOT NULL AUTO_INCREMENT,-- 编号
name VARCHAR(128) NOT NULL,-- 机构名称
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.启用 2.禁用
description varchar(255) DEFAULT NULL, -- 描述
level INT DEFAULT 0,-- 机构等级
parentId INT NOT NULL DEFAULT 0,-- 父级编号(0默认为顶级机构)
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(id)
);
-- 角色表
CREATE TABLE base_role(
id INT NOT NULL AUTO_INCREMENT,-- 编号
name VARCHAR(64) NOT NULL,-- 角色名称
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.启用 2.禁用
description varchar(255) DEFAULT NULL, -- 描述
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(id)
);
-- 用户表
CREATE TABLE base_user(
id INT NOT NULL AUTO_INCREMENT,-- 编号
userName VARCHAR(64) NOT NULL,-- 用户名
password VARCHAR(255) NOT NULL,-- 密码
realName VARCHAR(255),-- 用户真实姓名
email VARCHAR(32),-- 电子邮件
phone VARCHAR(64),-- 联系电话
description VARCHAR(255),-- 备注
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.启用 2.禁用
roleId INT NOT NULL, -- 所属角色
orgId INT NOT NULL, -- 所属机构
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(id),
FOREIGN KEY(orgId) REFERENCES base_organization(id),
FOREIGN KEY(roleId) REFERENCES base_role(id)
);
CREATE UNIQUE INDEX userName ON base_user(userName);
-- 资源表
CREATE TABLE base_resource(
id INT NOT NULL AUTO_INCREMENT,-- 编号
name VARCHAR(64) NOT NULL,-- 资源名称
parentId INT DEFAULT 0,-- 父级编号
resKey VARCHAR(64),-- 资源Key
resUrl VARCHAR(255),-- 资源Url
resType TINYINT NOT NULL,-- 资源类型 1.菜单 2.按钮 3.字段
status TINYINT DEFAULT 1,-- 资源状态 1.启用 2.禁用
belong TINYINT NOT NULL,-- 所属系统 1.后台 2.前台
sort INT DEFAULT 0,-- 排序
description VARCHAR(255),-- 备注
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(id)
);
-- 用户角色关系表
CREATE TABLE base_user_role(
id INT NOT NULL AUTO_INCREMENT,-- 编号
userId INT NOT NULL,-- 用户编号
roleId INT NOT NULL,-- 角色编号
PRIMARY KEY(id),
FOREIGN KEY(userId) REFERENCES base_user(id),
FOREIGN KEY(roleId) REFERENCES base_role(id)
);
-- 角色资源关系表
CREATE TABLE base_role_resource(
id INT NOT NULL AUTO_INCREMENT,-- 编号
roleId INT NOT NULL,-- 角色编号
resId INT NOT NULL,-- 资源编号
PRIMARY KEY(id),
FOREIGN KEY(resId) REFERENCES base_resource(id),
FOREIGN KEY(roleId) REFERENCES base_role(id)
);
-- 日志表
CREATE TABLE base_log(
id INT NOT NULL AUTO_INCREMENT,-- 编号
logType INT NOT NULL,-- 日志类型 1.成功 2.警告 3.失败
logContent VARCHAR(4096),-- 日志内容
excuteResult VARCHAR(255),-- 执行结果
userName VARCHAR(64),-- 操作用户
loginIp VARCHAR(64),-- 操作ip
createTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(id),
FOREIGN KEY(userName) REFERENCES base_user(userName)
);
-- 车辆表
CREATE TABLE t_car(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
carNumber BIGINT NOT NULL UNIQUE, -- 车辆编号
carType INT(1) NOT NULL, -- 车辆类型 1-人车, 2-料车
plateNo VARCHAR(32) NOT NULL, -- 车牌号
orgId INT NOT NULL,-- 所属机构/部门
driver VARCHAR(32), -- 司机
driverPhone VARCHAR(32), -- 司机电话
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.启用 2.禁用
description varchar(255) DEFAULT NULL, -- 描述
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(ID),
FOREIGN KEY(orgId) REFERENCES base_organization(id)
);
-- 电池箱表
CREATE TABLE t_battery(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
batteryNumber BIGINT NOT NULL UNIQUE, -- 电池箱编号
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.未使用 2.已使用
description varchar(255) DEFAULT NULL, -- 描述
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(ID)
);
-- 车辆电池箱关系表
CREATE TABLE t_car_battery(
id INT NOT NULL AUTO_INCREMENT,-- id
carNumber INT NOT NULL,-- 车辆编号
batterySerial INT NOT NULL, -- 电池箱序列号-1,2,3,4,5,6
batteryNumber INT NOT NULL,-- 电池箱编号
PRIMARY KEY(id),
FOREIGN KEY(carNumber) REFERENCES t_car(carNumber),
FOREIGN KEY(batteryNumber) REFERENCES t_battery(batteryNumber)
);
-- 充电桩表
CREATE TABLE t_charge_pile(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
chargePileNumber BIGINT NOT NULL UNIQUE, -- 充电桩编号
sort INT DEFAULT 0,-- 排序
status TINYINT DEFAULT 1,-- 状态 1.启用 2.禁用
description varchar(255) DEFAULT NULL, -- 描述
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(ID)
);
-- 监控模块表
CREATE TABLE t_module(
id INT NOT NULL AUTO_INCREMENT, -- 模块编号
moduleName VARCHAR(256) NOT NULL, -- 模块名称
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(ID)
);
-- 属性表
CREATE TABLE t_attr(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
attrName VARCHAR(128) NOT NULL, -- 属性名称
sort INT DEFAULT 0, -- 排序
moduleId INT NOT NULL, -- 模块编号
createTime TIMESTAMP DEFAULT '0000-00-00 00:00:00',
lastModifiedTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY(ID)
);
-- hchange: high change; lchange: low change
-- 车辆监控数据
CREATE TABLE t_car_monitor_hchange(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
-- 行车状态指示
qdxh TINYINT(1), -- 启动信号1 有效
qdlx TINYINT(1), -- 驱动类型0 两驱, 1 四驱
qjxh TINYINT(1), -- 前进信号1 有效
htxh TINYINT(1), -- 后退信号1 有效
kdxh TINYINT(1), -- 空档信号1 有效
qyxh TINYINT(1), -- 牵引信号1 有效
zdxh TINYINT(1), -- 制动信号1 有效
mkgxh TINYINT(1), -- 门开关信号1 有效
ygxh TINYINT(1), -- 雨刮信号1 有效
jwbjxh TINYINT(1), -- 甲烷报警信号1 有效
zcgztcxh TINYINT(1), -- 整车故障停车信号1 有效
dcgzbj TINYINT(1), -- 电池故障报警1 有效
dqgzbj TINYINT(1), -- 电驱故障报警1 有效
zczbh TINYINT(1), -- 整车准备好1 有效
-- 电池组工作状态
zdyclgz TINYINT(1), -- 总电压测量故障 0:正常 1:报警
zdlcl TINYINT(1), -- 总电流测量 0:正常1:报警
dyclgz TINYINT(1), -- 24V 电压测量故障 0:正常 1:报警
dlclgz TINYINT(1), -- 24V 电流测量故障 0:正常 1:报警
zkzqwdgggz TINYINT(1), -- 主控制器温度过高故障 0:正常 1:报警
ywjcgz TINYINT(1), -- 烟雾检测故障 0:正常 1:报警
socgd TINYINT(1), -- 总SOC值过低 0:正常 1:报警
dczzt TINYINT(1), -- 电池组状态 0:待机1:放电
b1ljgz TINYINT(1), -- 1号电池箱连接故障 0:正常1:故障
b2ljgz TINYINT(1), -- 2号电池箱连接故障 0:正常1:故障
b3ljgz TINYINT(1), -- 3号电池箱连接故障 0:正常1:故障
b4ljgz TINYINT(1), -- 4号电池箱连接故障 0:正常1:故障
b5ljgz TINYINT(1), -- 5号电池箱连接故障 0:正常1:故障
b6ljgz TINYINT(1), -- 6号电池箱连接故障 0:正常1:故障
xtsjgz TINYINT(1), -- 系统时间故障 0:正常 1:故障
ccqgz TINYINT(1), -- 存储器故障 0:正常 1:故障
b1fdsn TINYINT(1), -- 电池箱一放电使能1 有效
b2fdsn TINYINT(1), -- 电池箱二放电使能1 有效
b3fdsn TINYINT(1), -- 电池箱三放电使能1 有效
b4fdsn TINYINT(1), -- 电池箱四放电使能1 有效
b5fdsn TINYINT(1), -- 电池箱五放电使能1 有效
b6fdsn TINYINT(1), -- 电池箱六放电使能1 有效
b1zdcdsn TINYINT(1), -- 电池箱一制动充电使能1 有效
b2zdcdsn TINYINT(1), -- 电池箱二制动充电使能1 有效
b3zdcdsn TINYINT(1), -- 电池箱三制动充电使能1 有效
b4zdcdsn TINYINT(1), -- 电池箱四制动充电使能1 有效
b5zdcdsn TINYINT(1), -- 电池箱五制动充电使能1 有效
b6zdcdsn TINYINT(1), -- 电池箱六制动充电使能1 有效
b1fwsn TINYINT(1), -- 电池箱一复位使能1 有效
b2fwsn TINYINT(1), -- 电池箱二复位使能1 有效
b3fwsn TINYINT(1), -- 电池箱三复位使能1 有效
b4fwsn TINYINT(1), -- 电池箱四复位使能1 有效
b5fwsn TINYINT(1), -- 电池箱五复位使能1 有效
b6fwsn TINYINT(1), -- 电池箱六复位使能1 有效
-- 监测
zcgz TINYINT(1), -- 工作正常
jxgz TINYINT(1), -- 接线故障
gyzddzx TINYINT(1), -- 高压正对地绝缘电阻小
gyfddzx TINYINT(1), -- 高压负对地绝缘电阻小
sbgz TINYINT(1), -- 设备故障
zc TINYINT(1), -- 正常
ejjg TINYINT(1), -- 二级警告
yjjg TINYINT(1), -- 一级警告
receiveTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 服务端接收时间
collectTime TIMESTAMP, -- 客户端采集时间
PRIMARY KEY(id)
);
CREATE TABLE t_car_monitor_lchange(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
-- 行车状态指示
ymtbkd INT, -- 油门踏板开度0-100 1=1%
zdtbkd INT, -- 制动踏板开度0-100 1=1%
speed INT, -- 车速0-1000 1=0.1km/h
xszlc INT, -- 行驶总里程0-65535 1=1km
-- 电池组工作状态
dczmxdy INT, -- 电池组母线电压0-10000 1= 0.1V
dczmxdl INT, -- 电池组母线电流0-5000 1= 0.1A
zkzqwd INT, -- 主控制器温度0-250 -40 ~ 210, 1℃ /bit,偏移量: -40
zkzqxdsd INT, -- 主控制器相对湿度0-100 1=1%
dczdy INT, -- 电池组24V 电压0-300 1= 0.1V
dczdl INT, -- 电池组24V 电流0-250 1= 0.1A
dczsoc INT, -- 电池组总SOC 0-1000 1= 0.1%
-- 监测
jydz INT, -- 绝缘电阻0-65535 1= 1K
dcdy INT, -- 电池电压1=1V
receiveTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 服务端接收时间
collectTime TIMESTAMP, -- 客户端采集时间
PRIMARY KEY(id)
);
-- 车辆电机数据
CREATE TABLE t_car_emachine_hchange(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
machineType INT NOT NULL, -- 电机类型 1-FR电机 2-FL电机 3-RR电机 4-RL电机 5-液压泵电机
kzsn TINYINT(1), -- 控制使能1 有效
ljms TINYINT(1), -- 力矩模式1 有效
sdms TINYINT(1), -- 速度模式1 有效
lssd TINYINT(1), -- 零速锁定1 有效
qyms TINYINT(1), -- 牵引模式1 有效
zdms TINYINT(1), -- 制动模式1 有效
xtfw TINYINT(1), -- 系统复位1 有效
zddztr TINYINT(1), -- 制动电阻投入1 有效
zzxh TINYINT(1), -- 正转信号1 有效
fzxh TINYINT(1), -- 反转信号1 有效
kzxh TINYINT(1), -- 空转信号1 有效
kzljcw TINYINT(1), -- 控制逻辑错误1 有效
gzxh TINYINT(1), -- 故障信号1 有效
yhgqbj TINYINT(1), --
djwzcgqgz TINYINT(1), --
kzsn TINYINT(1), --
kzsn TINYINT(1), --
kzsn TINYINT(1), --
receiveTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 服务端接收时间
collectTime TIMESTAMP, -- 客户端采集时间
PRIMARY KEY(id)
);
CREATE TABLE t_car_emachine_lchange(
id BIGINT NOT NULL AUTO_INCREMENT, -- 编号
-- 电机
djdqzj INT, -- 电机当前转矩0-400 1= 1Nm/液压泵当前功率
djdqzs INT, -- 电机当前转速0-5000 1= 1rpm
djrzwd INT, -- 电机绕组温度0-250 -40 ~ 210, 1℃ /bit,偏移量: -40
djkzqwd INT, -- 电机控制器温度0-250 -40 ~ 210, 1℃ /bit,偏移量: -40
djdqgzdy INT, -- 电机当前工作电压0-10000 1= 0.1V
djdqgzdl INT, -- 电机当前工作电流0-2000 1= 0.1A
zdhldl INT, --制动回路电流0-2000 1= 0.1A
djkzqsx INT, -- 电机控制器时序0-65535 每发送一次,数值加1 , 0 - 65535 循环
djzjzl INT, -- 电机转矩指令0-400 1= 1NM
-- 液压泵电机
yybdjzs INT, -- 液压泵电机转速指令0-2560 1=10rpm
dclc INT, -- 单次里程0-65535 1= 2m
receiveTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 服务端接收时间
collectTime TIMESTAMP, -- 客户端采集时间
PRIMARY KEY(id)
);
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与联系我们,我们会予以更改或删除相关文章,以保证您的权益!