package com.controller;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import com.alibaba.fastjson.JSON;
import com.utils.StringUtil;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.baomidou.mybatisplus.mapper.Wrapper;
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{
private static final Logger logger = LoggerFactory.getLogger(CommonController.class);
@Autowired
private CommonService commonService;
@Autowired
private ConfigService configService;
private static AipFace client = null;
private static String BAIDU_DITU_AK = null;
@RequestMapping("/location")
public R location(String lng,String lat) {
if(BAIDU_DITU_AK==null) {
BAIDU_DITU_AK = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "baidu_ditu_ak")).getValue();
if(BAIDU_DITU_AK==null) {
return R.error("请在配置管理中正确配置baidu_ditu_ak");
}
}
Map<String, String> map = BaiduUtil.getCityByLonLat(BAIDU_DITU_AK, lng, lat);
return R.ok().put("data", map);
}
/**
* 人脸比对
*
* @param face1 人脸1
* @param face2 人脸2
* @return
*/
@RequestMapping("/matchFace")
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("请在配置管理中正确配置APIKey和SecretKey");
}
client = new AipFace(null, APIKey, SecretKey);
client.setConnectionTimeoutInMillis(2000);
client.setSocketTimeoutInMillis(60000);
}
JSONObject res = null;
try {
File file1 = new File(request.getSession().getServletContext().getRealPath("/upload")+"/"+face1);
File file2 = new File(request.getSession().getServletContext().getRealPath("/upload")+"/"+face2);
String img1 = Base64Util.encode(FileUtil.FileToByte(file1));
String img2 = Base64Util.encode(FileUtil.FileToByte(file2));
MatchRequest req1 = new MatchRequest(img1, "BASE64");
MatchRequest req2 = new MatchRequest(img2, "BASE64");
ArrayList<MatchRequest> requests = new ArrayList<MatchRequest>();
requests.add(req1);
requests.add(req2);
res = client.match(requests);
System.out.println(res.get("result"));
} catch (FileNotFoundException e) {
e.printStackTrace();
return R.error("文件不存在");
} catch (IOException e) {
e.printStackTrace();
}
return R.ok().put("data", com.alibaba.fastjson.JSONObject.parse(res.get("result").toString()));
}
/**
* 获取table表中的column列表(联动接口)
* @return
*/
@RequestMapping("/option/{tableName}/{columnName}")
@IgnoreAuth
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获取单条记录
* @return
*/
@RequestMapping("/follow/{tableName}/{columnName}")
@IgnoreAuth
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 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
*/
@RequestMapping("/remind/{tableName}/{columnName}/{type}")
@IgnoreAuth
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("/group/{tableName}")
public R group1(@PathVariable("tableName") String tableName, @RequestParam Map<String,Object> params) {
params.put("table1", tableName);
List<Map<String, Object>> result = commonService.chartBoth(params);
return R.ok().put("data", result);
}
/**
* 单列求和
*/
@RequestMapping("/cal/{tableName}/{columnName}")
@IgnoreAuth
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);
}
/**
* 分组统计
*/
@RequestMapping("/group/{tableName}/{columnName}")
@IgnoreAuth
public R group(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("table", table
没有合适的资源?快使用搜索试试~ 我知道了~
Java项目-基于springboot+Vue的制造装备物联及生产管理erp系统2(附源码,数据库,教程).zip
共458个文件
svg:161个
java:141个
vue:70个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 96 浏览量
2024-03-06
14:26:12
上传
评论
收藏 9.77MB ZIP 举报
温馨提示
Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:html/javascript 后台框架:SpringBoot 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven
资源推荐
资源详情
资源评论
收起资源包目录
Java项目-基于springboot+Vue的制造装备物联及生产管理erp系统2(附源码,数据库,教程).zip (458个子文件)
3-build.bat 16B
2-run.bat 14B
1-install.bat 12B
app.f3a386e8.css 268KB
chunk-vendors.8ee77068.css 37KB
style.css 2KB
index.html 948B
index.html 600B
favicon.ico 4KB
favicon.ico 4KB
CommonController.java 23KB
WeixiuyuanController.java 19KB
CailiaoChuruInoutController.java 19KB
YonghuController.java 18KB
DictionaryController.java 11KB
ZhiljiankongController.java 11KB
CailiaoChuruInoutListController.java 11KB
ShebeijianxiuController.java 10KB
GukedingdanController.java 10KB
ShengcanjihuaController.java 10KB
CailiaoController.java 9KB
ChanpinController.java 9KB
ShebeiController.java 9KB
YonghuEntity.java 7KB
ZhiljiankongView.java 7KB
WeixiuyuanEntity.java 7KB
ShebeijianxiuView.java 6KB
YonghuVO.java 6KB
GukedingdanEntity.java 6KB
CailiaoChuruInoutListView.java 6KB
WeixiuyuanVO.java 5KB
YonghuModel.java 5KB
MPUtil.java 5KB
DictionaryServiceImpl.java 5KB
ZhiljiankongEntity.java 5KB
CailiaoChuruInoutEntity.java 5KB
UsersController.java 5KB
WeixiuyuanModel.java 5KB
CommonServiceImpl.java 5KB
GukedingdanVO.java 5KB
DictionaryEntity.java 4KB
CailiaoEntity.java 4KB
ShebeiEntity.java 4KB
ChanpinEntity.java 4KB
ShengcanjihuaEntity.java 4KB
CailiaoChuruInoutListEntity.java 4KB
GukedingdanModel.java 4KB
GukedingdanView.java 4KB
ShengcanjihuaView.java 4KB
ZhiljiankongVO.java 4KB
CailiaoChuruInoutVO.java 4KB
BaiduUtil.java 4KB
PoiUtil.java 4KB
ShebeijianxiuEntity.java 4KB
CommonDao.java 4KB
FileController.java 4KB
ZhiljiankongModel.java 4KB
CommonService.java 3KB
ShebeiVO.java 3KB
CailiaoChuruInoutModel.java 3KB
CailiaoVO.java 3KB
ChanpinVO.java 3KB
DictionaryVO.java 3KB
ShengcanjihuaVO.java 3KB
AuthorizationInterceptor.java 3KB
ShebeiModel.java 3KB
CailiaoChuruInoutListVO.java 3KB
CailiaoModel.java 3KB
ChanpinModel.java 3KB
ShengcanjihuaModel.java 3KB
DictionaryModel.java 3KB
ConfigController.java 3KB
CailiaoChuruInoutListModel.java 3KB
ShebeijianxiuVO.java 3KB
Query.java 3KB
ShebeijianxiuModel.java 2KB
TokenServiceImpl.java 2KB
DictionaryServletContextListener.java 2KB
TokenEntity.java 2KB
PageUtils.java 2KB
ChanpinView.java 2KB
ShebeiView.java 2KB
YonghuView.java 2KB
InterceptorConfig.java 2KB
CailiaoChuruInoutView.java 1KB
CailiaoChuruInoutListServiceImpl.java 1KB
CailiaoChuruInoutServiceImpl.java 1KB
UsersServiceImpl.java 1KB
ShengcanjihuaServiceImpl.java 1KB
ShebeijianxiuServiceImpl.java 1KB
ZhiljiankongServiceImpl.java 1KB
CailiaoView.java 1KB
GukedingdanServiceImpl.java 1KB
WeixiuyuanServiceImpl.java 1KB
WeixiuyuanView.java 1KB
ChanpinServiceImpl.java 1KB
CailiaoServiceImpl.java 1KB
ShebeiServiceImpl.java 1KB
YonghuServiceImpl.java 1KB
UsersEntity.java 1KB
共 458 条
- 1
- 2
- 3
- 4
- 5
资源评论
2013crazy
- 粉丝: 819
- 资源: 2235
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功