package com.example.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.CheliangxinxiInfo;
import com.example.dao.CheliangxinxiInfoDao;
import com.example.service.CheliangxinxiInfoService;
import com.example.exception.CustomException;
import com.example.common.ResultCode;
import com.example.vo.EchartsData;
import com.example.vo.CheliangxinxiInfoVo;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.example.service.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Value;
import cn.hutool.core.util.StrUtil;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
@RestController
@RequestMapping(value = "/cheliangxinxiInfo")
public class CheliangxinxiInfoController {
@Resource
private CheliangxinxiInfoService cheliangxinxiInfoService;
@Resource
private CheliangxinxiInfoDao cheliangxinxiInfoDao;
@PostMapping
public Result<CheliangxinxiInfo> add(@RequestBody CheliangxinxiInfoVo cheliangxinxiInfo) {
//mixmajixami
cheliangxinxiInfoService.add(cheliangxinxiInfo);
return Result.success(cheliangxinxiInfo);
}
//youtixing1
//youtixing2
@DeleteMapping("/{id}")
public Result delete(@PathVariable Long id) {
cheliangxinxiInfoService.delete(id);
return Result.success();
}
@PutMapping
public Result update(@RequestBody CheliangxinxiInfoVo cheliangxinxiInfo) {
cheliangxinxiInfoService.update(cheliangxinxiInfo);
return Result.success();
}
//@PutMapping("/update2")
// public Result update2(@RequestBody CheliangxinxiInfoVo cheliangxinxiInfo) {
// cheliangxinxiInfoService.update2(cheliangxinxiInfo);
// return Result.success();
// }
@GetMapping("/{id}")
public Result<CheliangxinxiInfo> detail(@PathVariable Long id) {
CheliangxinxiInfo cheliangxinxiInfo = cheliangxinxiInfoService.findById(id);
return Result.success(cheliangxinxiInfo);
}
@GetMapping("/searchGoods")
public Result<List<CheliangxinxiInfo>> search(@RequestParam("text") String text) {
List<CheliangxinxiInfo> cheliangxinxiInfo = cheliangxinxiInfoService.findByText(text);
return Result.success(cheliangxinxiInfo);
}
@GetMapping("/changeStatus/{id}")
public Result<CheliangxinxiInfo> changeStatus(@PathVariable Long id) {
cheliangxinxiInfoService.changeStatus(id);
return Result.success();
}
@GetMapping
public Result<List<CheliangxinxiInfoVo>> all() {
return Result.success(cheliangxinxiInfoService.findAll());
}
@GetMapping("/findAllType")
public Result<List<CheliangxinxiInfoVo>> findAllType() {
return Result.success(cheliangxinxiInfoService.findAllType());
}
@GetMapping("/findByType/{type}")
public Result<List<CheliangxinxiInfoVo>> findByType(@PathVariable String type) {
return Result.success(cheliangxinxiInfoService.findByType(type));
}
@GetMapping("/page/{name}")
public Result<PageInfo<CheliangxinxiInfoVo>> page(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "5") Integer pageSize,
HttpServletRequest request) {
return Result.success(cheliangxinxiInfoService.findPage(name, pageNum, pageSize, request));
}
@GetMapping("/pageqt/{name}")
public Result<PageInfo<CheliangxinxiInfoVo>> pageqt(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "8") Integer pageSize,
HttpServletRequest request) {
return Result.success(cheliangxinxiInfoService.findPageqt(name, pageNum, pageSize, request));
}
// @PostMapping("/register")
// public Result<CheliangxinxiInfo> register(@RequestBody CheliangxinxiInfo cheliangxinxiInfo) {
// if (StrUtil.isBlank(cheliangxinxiInfo.getName()) || StrUtil.isBlank(cheliangxinxiInfo.getPassword())) {
// throw new CustomException(ResultCode.PARAM_ERROR);
// }
// return Result.success(cheliangxinxiInfoService.add(cheliangxinxiInfo));
// }
/**
* 批量通过excel添加信息
* @param file excel文件
* @throws IOException
*/
@PostMapping("/upload")
public Result upload(MultipartFile file) throws IOException {
List<CheliangxinxiInfo> infoList = ExcelUtil.getReader(file.getInputStream()).readAll(CheliangxinxiInfo.class);
if (!CollectionUtil.isEmpty(infoList)) {
// 处理一下空数据
List<CheliangxinxiInfo> resultList = infoList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getCheliangbianhao())).collect(Collectors.toList());
for (CheliangxinxiInfo info : resultList) {
cheliangxinxiInfoService.add(info);
}
}
return Result.success();
}
@GetMapping("/get/cheliangxinxi_tj_cheliangpinpai")
Result<List<EchartsData>> cheliangxinxi_tj_cheliangpinpai() {
List<EchartsData> list = new ArrayList<>();
List<Map<String, Object>> cheliangxinxi_tj_cheliangpinpaiList = cheliangxinxiInfoDao.cheliangxinxi_tj_cheliangpinpai();
Map<String, Double> typeMap = new HashMap<>();
for (Map<String, Object> map : cheliangxinxi_tj_cheliangpinpaiList) {
typeMap.put((String)map.get("aa"), (Double.valueOf((String)map.get("bb").toString())));
}
getPieData("车辆信息按车辆品牌统计", list, typeMap);
getBarData("车辆信息按车辆品牌统计", list, typeMap);
return Result.success(list);
}
@GetMapping("/get/cheliangxinxi_tj_chexing")
Result<List<EchartsData>> cheliangxinxi_tj_chexing() {
List<EchartsData> list = new ArrayList<>();
List<Map<String, Object>> cheliangxinxi_tj_chexingList = cheliangxinxiInfoDao.cheliangxinxi_tj_chexing();
Map<String, Double> typeMap = new HashMap<>();
for (Map<String, Object> map : cheliangxinxi_tj_chexingList) {
typeMap.put((String)map.get("aa"), (Double.valueOf((String)map.get("bb").toString())));
}
getPieData("车辆信息按车型统计", list, typeMap);
getBarData("车辆信息按车型统计", list, typeMap);
return Result.success(list);
}
@GetMapping("/get/cheliangxinxi_tj_qudongfangshi")
Result<List<EchartsData>> cheliangxinxi_tj_qudongfangshi() {
List<EchartsData> list = new ArrayList<>();
List<Map<String, Object>> cheliangxinxi_tj_qudongfangshiList = cheliangxinxiInfoDao.cheliangxinxi_tj_qudongfangshi();
Map<String, Double> typeMap = new HashMap<>();
for (Map<String, Object> map : cheliangxinxi_tj_qudongfangshiList) {
typeMap.put((String)map.get("aa"), (Double.valueOf((String)map.get("bb").toString())));
}
getPieData("车辆信息�
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
小程序毕业设计,小程序课程设计,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行!可以放心下载 1. 技术组成 前端: 小程序 后台框架:SSM/SpringBoot(如果有的话) 开发环境:idea,微信开发者工具 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库可视化工具:使用 Navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本),maven
资源推荐
资源详情
资源评论
收起资源包目录
小程序毕业设计-小程序新能源汽车信息安全服务平台(java)(包括源码,数据库,教程).zip (954个子文件)
CheliangxinxiInfoController.class 16KB
GoumaiInfoController.class 14KB
ShangpinxinxiInfoController.class 14KB
WodecheliangInfoController.class 13KB
DingdanxinxiInfoController.class 13KB
ZhuceyonghuInfoController.class 13KB
ShangpinleibieInfoController.class 12KB
YonghuleixingInfoController.class 12KB
LiuyanbanInfoController.class 12KB
AccountController.class 11KB
AdminInfoController.class 9KB
NxSystemFileController.class 8KB
YonghuService.class 7KB
GoumaiInfoService.class 6KB
YonghuController.class 6KB
ZhuceyonghuInfoService.class 6KB
CollectInfoService.class 5KB
EchartsController.class 5KB
CheliangxinxiInfoService.class 5KB
WodecheliangInfoService.class 5KB
ShangpinxinxiInfoService.class 5KB
AdminInfoService.class 5KB
AdminInfo.class 4KB
DingdanxinxiInfoService.class 4KB
CollectInfoController.class 4KB
CartInfoService.class 4KB
CheliangxinxiInfo.class 4KB
ZhuceyonghuInfo.class 4KB
GoumaiInfo.class 4KB
ShangpinxinxiInfo.class 4KB
ShangpinleibieInfoService.class 4KB
YonghuleixingInfoService.class 4KB
LiuyanbanInfoService.class 4KB
AdvertiserInfoService.class 4KB
WodecheliangInfo.class 3KB
AdvertiserInfoController.class 3KB
RichtextInfoController.class 3KB
CartInfoController.class 3KB
CollectInfo.class 3KB
DingdanxinxiInfo.class 3KB
RichtextInfoService.class 3KB
NxSystemFileInfoService.class 3KB
CheliangxinxiInfoDao.class 3KB
Yonghu.class 3KB
LiuyanbanInfo.class 3KB
Account.class 3KB
AdvertiserInfo.class 2KB
Result.class 2KB
CartInfo.class 2KB
GoumaiInfoDao.class 2KB
EchartsData.class 2KB
ResultCode.class 2KB
ShangpinxinxiInfoDao.class 2KB
MyInterceptor.class 2KB
WodecheliangInfoDao.class 2KB
GlobalExceptionHandler.class 2KB
DingdanxinxiInfoDao.class 2KB
ShangpinleibieInfo.class 2KB
YonghuleixingInfo.class 2KB
ZhuceyonghuInfoDao.class 2KB
EchartsData$Data.class 2KB
WebMvcConfig.class 2KB
YonghuDao.class 1KB
EchartsData$Series.class 1KB
MyInterceptorConfig.class 1KB
AuthorityInfo.class 1KB
NxSystemFileInfo.class 1KB
RichtextInfo.class 1KB
LiuyanbanInfoDao.class 1KB
ShangpinleibieInfoDao.class 1KB
YonghuleixingInfoDao.class 1KB
YonghuVo.class 1KB
AuthorityInfo$Model.class 1KB
CustomException.class 1KB
CartInfoDao.class 1KB
AdminInfoDao.class 928B
CollectInfoDao.class 876B
Application.class 793B
GoumaiInfoVo.class 783B
NxSystemFileInfoDao.class 773B
AdvertiserInfoDao.class 651B
RichtextInfoDao.class 641B
ShangpinleibieInfoVo.class 336B
CheliangxinxiInfoVo.class 332B
YonghuleixingInfoVo.class 332B
ShangpinxinxiInfoVo.class 332B
DingdanxinxiInfoVo.class 328B
WodecheliangInfoVo.class 328B
ZhuceyonghuInfoVo.class 324B
LiuyanbanInfoVo.class 316B
RichtextInfoVo.class 312B
AdminInfoVo.class 300B
index.css 227KB
index.css 227KB
bootstrap.min.css 119KB
bootstrap.min.css 119KB
layui.css 78KB
layui.css 78KB
font-awesome.css 26KB
font-awesome.css 26KB
共 954 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
程序员徐师兄
- 粉丝: 1551
- 资源: 2497
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 源码文件的编译-kibana-elastic
- 题目打印出所有的“水仙花数”-最大数问题:从键盘上任意输入10个整数,求出其中的最大数
- 数据结构-kmp算法详解-KMP算法是D.E.Knuth、J.H.Morris和V.R.Pratt共同提出的,简称KMP算法
- Flutter+Getx+状态管理、路由管理、getx用法+用于展示Getx用法
- RPReplay_Final1730045568.mov
- COMO算法源码!!!!!
- 基于Java语言实现的小徐发财之路源码分享
- 基于Java的WeixinAutoChat微信机器人设计源码
- 基于Java、JavaScript、CSS的SwapPub大社区内部二手商品互换网站设计源码
- 基于Neoclide框架的coc.nvim插件源码分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功