package com.controller;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ResourceUtils;
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.annotation.IgnoreAuth;
import com.baidu.aip.face.AipFace;
import com.baidu.aip.face.MatchRequest;
import com.baidu.aip.util.Base64Util;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.service.CommonService;
import com.service.ConfigService;
import com.utils.BaiduUtil;
import com.utils.FileUtil;
import com.utils.R;
/**
* 通用接口
*/
@RestController
public class CommonController{
@Autowired
private CommonService commonService;
private static AipFace client = null;
@Autowired
private ConfigService configService;
/**
* 获取table表中的column列表(联动接口)
* @param table
* @param column
* @return
*/
@IgnoreAuth
@RequestMapping("/option/{tableName}/{columnName}")
public R getOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,String level,String parent) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
if(StringUtils.isNotBlank(level)) {
params.put("level", level);
}
if(StringUtils.isNotBlank(parent)) {
params.put("parent", parent);
}
List<String> data = commonService.getOption(params);
return R.ok().put("data", data);
}
/**
* 根据table中的column获取单条记录
* @param table
* @param column
* @return
*/
@IgnoreAuth
@RequestMapping("/follow/{tableName}/{columnName}")
public R getFollowByOption(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName, @RequestParam String columnValue) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
params.put("columnValue", columnValue);
Map<String, Object> result = commonService.getFollowByOption(params);
return R.ok().put("data", result);
}
/**
* 修改table表的sfsh状态
* @param table
* @param map
* @return
*/
@RequestMapping("/sh/{tableName}")
public R sh(@PathVariable("tableName") String tableName, @RequestBody Map<String, Object> map) {
map.put("table", tableName);
commonService.sh(map);
return R.ok();
}
/**
* 获取需要提醒的记录数
* @param tableName
* @param columnName
* @param type 1:数字 2:日期
* @param map
* @return
*/
@IgnoreAuth
@RequestMapping("/remind/{tableName}/{columnName}/{type}")
public R remindCount(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("table", tableName);
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));
}
}
int count = commonService.remindCount(map);
return R.ok().put("count", count);
}
/**
* 单列求和
*/
@IgnoreAuth
@RequestMapping("/cal/{tableName}/{columnName}")
public R cal(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
Map<String, Object> result = commonService.selectCal(params);
return R.ok().put("data", result);
}
/**
* 分组统计
*/
@IgnoreAuth
@RequestMapping("/group/{tableName}/{columnName}")
public R group(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("column", columnName);
List<Map<String, Object>> result = commonService.selectGroup(params);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* (按值统计)
*/
@IgnoreAuth
@RequestMapping("/value/{tableName}/{xColumnName}/{yColumnName}")
public R value(@PathVariable("tableName") String tableName, @PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("xColumn", xColumnName);
params.put("yColumn", yColumnName);
List<Map<String, Object>> result = commonService.selectValue(params);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* (按值统计)时间统计类型
*/
@IgnoreAuth
@RequestMapping("/value/{tableName}/{xColumnName}/{yColumnName}/{timeStatType}")
public R valueDay(@PathVariable("tableName") String tableName, @PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", tableName);
params.put("xColumn", xColumnName);
params.put("yColumn", yColumnName);
params.put("timeStatType", timeStatType);
List<Map<String, Object>> result = commonService.selectTimeStatValue(params);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for(Map<String, Object> m : result) {
for(String k : m.keySet()) {
if(m.get(k) instanceof Date) {
m.put(k, sdf.format((Date)m.get(k)));
}
}
}
return R.ok().put("data", result);
}
/**
* 人脸比对
*
* @param face1 人脸1
* @param face2 人脸2
* @return
*/
@RequestMapping("/matchFace")
@IgnoreAuth
public R matchFace(String face1, String face2,HttpServletRequest request) {
if(client==null) {
/*String AppID = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "AppID")).getValue();*/
String APIKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "APIKey")).getValue();
String SecretKey = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "SecretKey")).getValue();
String token = BaiduUtil.getAuth(APIKey, SecretKey);
if(token==null) {
return R.error("请在配置�
没有合适的资源?快使用搜索试试~ 我知道了~
基于springboot的超市进销存管理系统源码.zip
共479个文件
svg:161个
java:147个
vue:53个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 42 浏览量
2023-06-20
18:45:43
上传
评论
收藏 10.48MB ZIP 举报
温馨提示
源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经
资源推荐
资源详情
资源评论
收起资源包目录
基于springboot的超市进销存管理系统源码.zip (479个子文件)
update-password.vue.bak 3KB
IndexMain.vue.bak 2KB
IndexAsideStatic.vue.bak 2KB
BreadCrumbs.vue.bak 2KB
IndexHeader.vue.bak 2KB
3-build.bat 15B
2-run.bat 14B
1-install.bat 12B
.classpath 2KB
mvnw.cmd 7KB
app.77d99d28.css 269KB
chunk-vendors.a72b0961.css 37KB
canvas-bg-1.css 391B
canvas-bg-2.css 83B
canvas-bg-3.css 61B
.factorypath 15KB
.gitignore 364B
index.html 940B
index.html 569B
favicon.ico 4KB
favicon.ico 4KB
maven-wrapper.jar 50KB
CommonController.java 9KB
YuangongController.java 9KB
XiaoshoudingdanController.java 7KB
CaigouxinxiController.java 7KB
ChukuxinxiController.java 7KB
RukuxinxiController.java 7KB
ShangpinleibieController.java 7KB
ShangpinxinxiController.java 7KB
ChengyunshangController.java 7KB
GongyingshangController.java 7KB
CangkuxinxiController.java 7KB
GangweiController.java 6KB
BumenController.java 6KB
KehuController.java 6KB
XiaoshoudingdanEntity.java 5KB
CaigouxinxiEntity.java 5KB
MPUtil.java 5KB
UserController.java 5KB
ChukuxinxiEntity.java 5KB
ShangpinxinxiEntity.java 5KB
MavenWrapperDownloader.java 5KB
RukuxinxiEntity.java 5KB
XiaoshoudingdanModel.java 4KB
XiaoshoudingdanVO.java 4KB
FileController.java 4KB
CaigouxinxiModel.java 4KB
ChukuxinxiModel.java 4KB
CaigouxinxiVO.java 4KB
YuangongEntity.java 4KB
ShangpinxinxiModel.java 4KB
ChukuxinxiVO.java 4KB
ShangpinxinxiVO.java 4KB
BaiduUtil.java 4KB
RukuxinxiModel.java 4KB
ChengyunshangEntity.java 3KB
GongyingshangEntity.java 3KB
RukuxinxiVO.java 3KB
AuthorizationInterceptor.java 3KB
CangkuxinxiEntity.java 3KB
ConfigController.java 3KB
KehuEntity.java 3KB
YuangongModel.java 3KB
Query.java 3KB
GangweiEntity.java 3KB
YuangongVO.java 3KB
TokenServiceImpl.java 2KB
BumenEntity.java 2KB
TokenEntity.java 2KB
CommonUtil.java 2KB
ChengyunshangModel.java 2KB
GongyingshangModel.java 2KB
ShangpinleibieEntity.java 2KB
XiaoshoudingdanServiceImpl.java 2KB
ShangpinleibieServiceImpl.java 2KB
ChengyunshangVO.java 2KB
GongyingshangVO.java 2KB
CangkuxinxiModel.java 2KB
ShangpinxinxiServiceImpl.java 2KB
GongyingshangServiceImpl.java 2KB
ChengyunshangServiceImpl.java 2KB
PageUtils.java 2KB
CaigouxinxiServiceImpl.java 2KB
CangkuxinxiServiceImpl.java 2KB
ChukuxinxiServiceImpl.java 2KB
KehuModel.java 2KB
CangkuxinxiVO.java 2KB
RukuxinxiServiceImpl.java 2KB
YuangongServiceImpl.java 2KB
GangweiServiceImpl.java 2KB
KehuVO.java 2KB
BumenServiceImpl.java 2KB
KehuServiceImpl.java 2KB
InterceptorConfig.java 1KB
CommonServiceImpl.java 1KB
UserServiceImpl.java 1KB
GangweiModel.java 1KB
UserEntity.java 1KB
GangweiVO.java 1KB
共 479 条
- 1
- 2
- 3
- 4
- 5
资源评论
老歪不歪
- 粉丝: 59
- 资源: 4367
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Springboot+Vue师生共评的作业管理系统毕业源码案例设计(源码+论文).zip
- pl2303 windows 10/11 驱动
- 基于Springboot+Vue社区医院管理系统-毕业源码案例设计(95分以上).zip
- 51单片机设计vb与单片机源码电压检测系统(含VB上位机)proteus仿真+程序资料
- 基于Springboot+Vue图书管理系统-毕业源码案例设计(高分毕业设计).zip
- 基于Springboot+Vue师生健康信息管理系统毕业源码案例设计(高分毕业设计).zip
- 基于Springboot+Vue视频网站系统设计毕业源码案例设计(高分毕业设计).zip
- 中国【月尺度降水】-【1km高分辨率】-1990-2023年数据
- 2024-2025学年第一学期第20周考试安排表.xls
- 基于Springboot+Vue图书商城管理系统-毕业源码案例设计(高分项目).zip
- 基于Springboot+Vue文理医院预约挂号系统-毕业源码案例设计(源码+项目说明+演示视频).zip
- 湘潭大学数值计算PPT
- 基于Springboot+Vue网上点餐系统毕业源码案例设计(95分以上).zip
- openGuass数据库一键安装脚本
- 基于Springboot+Vue夕阳红公寓管理系统的设计与实现-毕业源码案例设计(95分以上).zip
- FRC游戏作品检测9-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma、TFRecord、VOC数据集合集.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功