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.DingdanxinxiInfo;
import com.example.dao.DingdanxinxiInfoDao;
import com.example.service.DingdanxinxiInfoService;
import com.example.exception.CustomException;
import com.example.common.ResultCode;
import com.example.vo.EchartsData;
import com.example.vo.DingdanxinxiInfoVo;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.example.service.*;
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 = "/dingdanxinxiInfo")
public class DingdanxinxiInfoController {
@Resource
private DingdanxinxiInfoService dingdanxinxiInfoService;
@Resource
private DingdanxinxiInfoDao dingdanxinxiInfoDao;
@PostMapping
public Result<DingdanxinxiInfo> add(@RequestBody DingdanxinxiInfoVo dingdanxinxiInfo) {
//mixmajixami
dingdanxinxiInfoService.add(dingdanxinxiInfo);
return Result.success(dingdanxinxiInfo);
}
//youtixing1
//youtixing2
@GetMapping("/getByDiqu")
public Result<List<Map<String,String>>> qidu() {
return Result.success(dingdanxinxiInfoService.findByDiqu());
}
@DeleteMapping("/{id}")
public Result delete(@PathVariable Long id) {
dingdanxinxiInfoService.delete(id);
return Result.success();
}
@PutMapping
public Result update(@RequestBody DingdanxinxiInfoVo dingdanxinxiInfo) {
dingdanxinxiInfoService.update(dingdanxinxiInfo);
return Result.success();
}
//@PutMapping("/update2")
// public Result update2(@RequestBody DingdanxinxiInfoVo dingdanxinxiInfo) {
// dingdanxinxiInfoService.update2(dingdanxinxiInfo);
// return Result.success();
// }
@GetMapping("/{id}")
public Result<DingdanxinxiInfo> detail(@PathVariable Long id) {
DingdanxinxiInfo dingdanxinxiInfo = dingdanxinxiInfoService.findById(id);
return Result.success(dingdanxinxiInfo);
}
@GetMapping("/changeStatus/{id}")
public Result<DingdanxinxiInfo> changeStatus(@PathVariable Long id) {
dingdanxinxiInfoService.changeStatus(id);
return Result.success();
}
@GetMapping("/changeIszf/{id}")
public Result<DingdanxinxiInfo> changeIszf(@PathVariable Long id) {
dingdanxinxiInfoService.changeIszf(id);
return Result.success();
}
@GetMapping
public Result<List<DingdanxinxiInfoVo>> all() {
return Result.success(dingdanxinxiInfoService.findAll());
}
@GetMapping("/page/{name}")
public Result<PageInfo<DingdanxinxiInfoVo>> page(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "5") Integer pageSize,
HttpServletRequest request) {
return Result.success(dingdanxinxiInfoService.findPage(name, pageNum, pageSize, request));
}
@GetMapping("/pageqt/{name}")
public Result<PageInfo<DingdanxinxiInfoVo>> pageqt(@PathVariable String name,
@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "8") Integer pageSize,
HttpServletRequest request) {
return Result.success(dingdanxinxiInfoService.findPageqt(name, pageNum, pageSize, request));
}
// @PostMapping("/register")
// public Result<DingdanxinxiInfo> register(@RequestBody DingdanxinxiInfo dingdanxinxiInfo) {
// if (StrUtil.isBlank(dingdanxinxiInfo.getName()) || StrUtil.isBlank(dingdanxinxiInfo.getPassword())) {
// throw new CustomException(ResultCode.PARAM_ERROR);
// }
// return Result.success(dingdanxinxiInfoService.add(dingdanxinxiInfo));
// }
/**
* 批量通过excel添加信息
* @param file excel文件
* @throws IOException
*/
@PostMapping("/upload")
public Result upload(MultipartFile file) throws IOException {
List<DingdanxinxiInfo> infoList = ExcelUtil.getReader(file.getInputStream()).readAll(DingdanxinxiInfo.class);
if (!CollectionUtil.isEmpty(infoList)) {
// 处理一下空数据
List<DingdanxinxiInfo> resultList = infoList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getCaipinming())).collect(Collectors.toList());
for (DingdanxinxiInfo info : resultList) {
dingdanxinxiInfoService.add(info);
}
}
return Result.success();
}
@GetMapping("/get/dingdanxinxi_tj_shangjiamingcheng")
Result<List<EchartsData>> dingdanxinxi_tj_shangjiamingcheng() {
List<EchartsData> list = new ArrayList<>();
List<Map<String, Object>> dingdanxinxi_tj_shangjiamingchengList = dingdanxinxiInfoDao.dingdanxinxi_tj_shangjiamingcheng();
Map<String, Double> typeMap = new HashMap<>();
for (Map<String, Object> map : dingdanxinxi_tj_shangjiamingchengList) {
typeMap.put((String)map.get("aa"), (Double.valueOf((String)map.get("bb").toString())));
}
getPieData("订单信息按商家名称统计", list, typeMap);
getBarData("订单信息按商家名称统计", list, typeMap);
return Result.success(list);
}
@GetMapping("/getExcelModel")
public void getExcelModel(HttpServletResponse response) throws IOException {
// 1. 生成excel
Map<String, Object> row = new LinkedHashMap<>();
row.put("shangjiamingcheng", "A商家名称");
row.put("caipinming", "A菜品名");
row.put("jiage", "A价格");
row.put("goumaishuliang", "A购买数量");
row.put("goumaijine", "A购买金额");
row.put("yonghuming", "A用户名");
row.put("dianhua", "A电话");
row.put("dizhi", "A地址");
row.put("manyidu", "A满意度");
row.put("pingjianeirong", "A评价内容");
row.put("status", "是");
row.put("level", "dingdanxinxi");
List<Map<String, Object>> list = CollUtil.newArrayList(row);
// 2. 写excel
ExcelWriter writer = ExcelUtil.getWriter(true);
writer.write(list, true);
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
response.setHeader("Content-Disposition","attachment;filename=dingdanxinxiInfoModel.xlsx");
ServletOutputStream out = response.getOutputStream();
writer.flush(out, true);
writer.close();
IoUtil.close(System.out);
}
@GetMapping("/getExcel")
public void getExcel(HttpServletResponse response) throws IOException {
// 1. 生成excel
Map<String, Object> row = new LinkedHashMap<>();
row.put("shangjiamingcheng", "A商家名称");
row.put("caipinming", "A菜品名");
row.put("jiage", "A价格");
row.put("goumaishuliang", "A购买数量");
row.put("goumaijine", "A购买金额");
row.put("yonghuming", "A用户名");
row.put(
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
毕业设计:外卖系统系统 (源码 + 数据库 + 说明文档) 2 系统总体框架 4 2.1 模型结构 4 2.2 功能模块简介 4 3 技术介绍 5 3.1 基于B/S结构开发 5 3.2 springboot框架 5 3.4 tomcat简介 6 3.5 CSS样式设计简介 6 3.6 Html标记语言简介 6 3.7 mysql数据库简介 7 4 系统详细设计 8 4.1 数据库设计 8 4.1.1 E-R图 8 4.1.2 主要数据表 10 4.2系统管理员 12 4.2.1 后台登录 12 4.2.2管理员界面 12 4.2.3员工信息管理 12 4.2.4客户信息管理 12 4.5 主要代码分析 12 4.5.1 用户登录代码 12 4.5.2数据库操作 12
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计:基于springboot外卖系统系统 (源码 + 数据库 + 说明文档) (1185个子文件)
alipay_md5.asp 11KB
alipay_md5.asp 11KB
alipay_function.asp 6KB
alipay_function.asp 6KB
alipay_notify.asp 5KB
alipay_notify.asp 5KB
alipay_service.asp 2KB
alipay_service.asp 2KB
DingdanxinxiInfoController.class 14KB
MaijiaxinxiInfoController.class 13KB
XinwentongzhiInfoController.class 13KB
ShangjiaxinxiInfoController.class 13KB
CanyinxinxiInfoController.class 13KB
XitongjianjieInfoController.class 12KB
YonghuxinxiInfoController.class 12KB
LiuyanbanInfoController.class 12KB
AccountController.class 11KB
AdminInfoController.class 9KB
NxSystemFileController.class 8KB
MaijiaxinxiInfoService.class 6KB
ShangjiaxinxiInfoService.class 5KB
EchartsController.class 5KB
YonghuxinxiInfoService.class 5KB
XinwentongzhiInfoService.class 5KB
AdminInfoService.class 5KB
DingdanxinxiInfoService.class 5KB
CommentInfoService.class 5KB
AdminInfo.class 4KB
CanyinxinxiInfoService.class 4KB
YonghuxinxiInfo.class 4KB
XitongjianjieInfoService.class 4KB
XinwentongzhiInfo.class 4KB
DingdanxinxiInfo.class 4KB
CollectInfoController.class 4KB
LiuyanbanInfoService.class 4KB
CanyinxinxiInfo.class 4KB
CommentInfoController.class 4KB
MaijiaxinxiInfo.class 4KB
ShangjiaxinxiInfo.class 3KB
RichtextInfoController.class 3KB
CollectInfoService.class 3KB
RichtextInfoService.class 3KB
NxSystemFileInfoService.class 3KB
Account.class 3KB
LiuyanbanInfo.class 3KB
CollectInfo.class 3KB
CommentInfo.class 3KB
Result.class 2KB
EchartsData.class 2KB
DingdanxinxiInfoDao.class 2KB
ResultCode.class 2KB
MyInterceptor.class 2KB
XitongjianjieInfo.class 2KB
GlobalExceptionHandler.class 2KB
MaijiaxinxiInfoDao.class 2KB
CanyinxinxiInfoDao.class 2KB
XinwentongzhiInfoDao.class 2KB
ShangjiaxinxiInfoDao.class 2KB
EchartsData$Data.class 2KB
WebMvcConfig.class 2KB
CommentInfoDao.class 1KB
EchartsData$Series.class 1KB
MyInterceptorConfig.class 1KB
AuthorityInfo.class 1KB
NxSystemFileInfo.class 1KB
CollectInfoDao.class 1KB
RichtextInfo.class 1KB
LiuyanbanInfoDao.class 1KB
YonghuxinxiInfoDao.class 1KB
AuthorityInfo$Model.class 1KB
CustomException.class 1KB
XitongjianjieInfoDao.class 1KB
AdminInfoDao.class 928B
Application.class 793B
NxSystemFileInfoDao.class 773B
RichtextInfoDao.class 641B
XitongjianjieInfoVo.class 332B
XinwentongzhiInfoVo.class 332B
ShangjiaxinxiInfoVo.class 332B
DingdanxinxiInfoVo.class 328B
YonghuxinxiInfoVo.class 324B
CanyinxinxiInfoVo.class 324B
MaijiaxinxiInfoVo.class 324B
LiuyanbanInfoVo.class 316B
RichtextInfoVo.class 312B
CollectInfoVo.class 308B
AdminInfoVo.class 300B
index.css 227KB
index.css 227KB
index.css 227KB
index.css 227KB
index.css 227KB
index.css 227KB
bootstrap.css 141KB
bootstrap.css 141KB
bootstrap.min.css 119KB
bootstrap.min.css 119KB
bootstrap.min.css 119KB
bootstrap.min.css 119KB
common.css 118KB
共 1185 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
资源评论
学习资源网
- 粉丝: 938
- 资源: 1994
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功