博主介绍:十年全栈开发经验,专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌
技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。
特色服务内容:答辩必过班 (全程一对一技术交流,帮助大家顺利完成答辩,小白必选)
主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。
AAA✅✅✅
系统介绍
摘要
随着信息化时代的到来,管理系统都趋向于智能化、系统化,车辆充电桩管理系统也不例外,但目前国内仍都使用人工管理,市场规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化,而车辆充电桩管理系统能很好地解决这一问题,轻松应对车辆充电桩平时的工作,既能提高人力物力财力,又能加快工作的效率,取代人工管理是必然趋势。
本车辆充电桩管理系统以springboot作为框架,b/s模式以及MySql作为后台运行的数据库,同时使用Tomcat用为系统的服务器。本系统主要包括首页、个人中心、维修员管理、用户管理、电桩类别管理、充电桩管理、充电桩报修管理、维修回复管理、系统管理等功能,通过这些功能的实现基本能够满足日常车辆充电桩管理的操作。
功能截图:
系统功能图:
随着我国汽车行业的不断发展,电动汽车已经开始逐步的领导整个汽车行业,越来越多的人在追求环保和经济实惠的同时开始使用电动汽车,电动汽车和燃油汽车最大的而不同就是 需要充电,同时我国的基础充电桩也开始遍及了大多数城市的个个角落本系统就是为了方便管理这些汽车充电桩而开发的
前台功能:用户进入系统可以实现首页、充电桩、充电常识、个人中心、后台管理等功能进行操作:
后台由管理员和维修员,主要功能包括首页、个人中心、维修员管理、用户管理、电桩类别管理、充电桩管理、充电桩报修管理、维修回复管理、系统管理等功能。
系统架构图:
开发环境:
名称 | 开发环境 |
---|---|
前端集成开发环境 | WebStorm 2021.1 |
后端集成开发环境 | IntelliJ IDEA 2019.11 |
系统前端开发语言 | JavaScript ES6 |
系统后端开发语言 | Java jdk 1.8 |
系统前端框架 | Vue |
系统后端框架 | Springboot Vue MybatisPlus |
Web服务器 | Tomcat 9.0.41 |
数据库版本 | MySQL 8.0.22 |
本地操作系统 | Windows 10 |
服务器操作系统 | Linux CentOS |
运行截图:
相关代码
package com.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;
import com.entity.ChongdianzhuangEntity;
import com.entity.view.ChongdianzhuangView;
import com.service.ChongdianzhuangService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;
import com.service.StoreupService;
import com.entity.StoreupEntity;
@RestController
@RequestMapping("/chongdianzhuang")
public class ChongdianzhuangController {
@Autowired
private ChongdianzhuangService chongdianzhuangService;
@Autowired
private StoreupService storeupService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,ChongdianzhuangEntity chongdianzhuang,
HttpServletRequest request){
EntityWrapper<ChongdianzhuangEntity> ew = new EntityWrapper<ChongdianzhuangEntity>();
PageUtils page = chongdianzhuangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chongdianzhuang), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,ChongdianzhuangEntity chongdianzhuang,
HttpServletRequest request){
EntityWrapper<ChongdianzhuangEntity> ew = new EntityWrapper<ChongdianzhuangEntity>();
PageUtils page = chongdianzhuangService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, chongdianzhuang), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( ChongdianzhuangEntity chongdianzhuang){
EntityWrapper<ChongdianzhuangEntity> ew = new EntityWrapper<ChongdianzhuangEntity>();
ew.allEq(MPUtil.allEQMapPre( chongdianzhuang, "chongdianzhuang"));
return R.ok().put("data", chongdianzhuangService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(ChongdianzhuangEntity chongdianzhuang){
EntityWrapper< ChongdianzhuangEntity> ew = new EntityWrapper< ChongdianzhuangEntity>();
ew.allEq(MPUtil.allEQMapPre( chongdianzhuang, "chongdianzhuang"));
ChongdianzhuangView chongdianzhuangView = chongdianzhuangService.selectView(ew);
return R.ok("查询充电桩成功").put("data", chongdianzhuangView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
ChongdianzhuangEntity chongdianzhuang = chongdianzhuangService.selectById(id);
return R.ok().put("data", chongdianzhuang);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
ChongdianzhuangEntity chongdianzhuang = chongdianzhuangService.selectById(id);
return R.ok().put("data", chongdianzhuang);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody ChongdianzhuangEntity chongdianzhuang, HttpServletRequest request){
chongdianzhuang.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(chongdianzhuang);
chongdianzhuangService.insert(chongdianzhuang);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody ChongdianzhuangEntity chongdianzhuang, HttpServletRequest request){
chongdianzhuang.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(chongdianzhuang);
chongdianzhuangService.insert(chongdianzhuang);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody ChongdianzhuangEntity chongdianzhuang, HttpServletRequest request){
//ValidatorUtils.validateEntity(chongdianzhuang);
chongdianzhuangService.updateById(chongdianzhuang);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
chongdianzhuangService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<ChongdianzhuangEntity> wrapper = new EntityWrapper<ChongdianzhuangEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
int count = chongdianzhuangService.selectCount(wrapper);
return R.ok().put("count", count);
}
}
详细视频演示
请首页简介wx(Mrzys1),dd我获取更详细的演示视频
推荐项目:
基于springboot的自动化办公系统(企业人事管理系统)
项目案例:
为什么选择我
博主本身从事开发软件开发、十年全栈开发经验,有丰富的编程能力和水平、累积给上千名同学进行辅导
源码获取:
大家点赞、收藏、关注、评论啦 、主页介绍查看👇🏻获取联系方式👇🏻