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的高校办公室行政事务管理系统设计与实现(毕业论文+开题)
共470个文件
svg:161个
java:149个
vue:74个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 58 浏览量
2024-12-23
19:53:41
上传
评论
收藏 10.58MB RAR 举报
温馨提示
1. 行政事务管理的总体功能 行政事务管理涉及公司内部的各类行政支持与服务,确保日常办公流程高效、规范、顺畅。其核心目标是为公司员工提供一个良好的工作环境,并支撑公司整体业务目标的实现。 2. 具体功能模块 1) 办公环境管理 办公设备和设施管理:负责办公设备(如电脑、打印机、电话、空调等)的采购、维护、报修等事务,确保设备的正常运行。 办公空间管理:合理安排办公区域、会议室的使用,确保工作环境整洁、功能齐全,并根据需求进行布局调整。 办公用品采购与发放:定期采购办公耗材(如文具、纸张、打印耗材等),确保办公室日常工作所需物品的供应,并对物品进行发放、登记和管理。 2) 文件管理 文件归档与管理:负责公司内部文档的管理与归档,包括文件的分类、存储、借阅、销毁等,确保重要文件的安全性与易查性。 电子文件管理:对电子文档进行有效管理和备份,确保数据的安全性和可靠性。推动文档数字化和信息化管理。 文件传递与流转:处理公司内部文件的传递、签收、分发与反馈,确保文档流转的及时性和准确性。 3) 会议和活动组织 会议安排与协调:负责公司内部会议的组织安排,包括会议室的预定、会议设备的准备、会议通
资源推荐
资源详情
资源评论
收起资源包目录
办公室行政事务-JAVA-基于springBoot的高校办公室行政事务管理系统设计与实现(毕业论文+开题) (470个子文件)
3-build.bat 16B
2-run.bat 14B
1-install.bat 12B
app.98d6ad55.css 270KB
chunk-vendors.1f0a25b2.css 37KB
style.css 2KB
1644305741783.data_0 8KB
index.html 939B
index.html 591B
favicon.ico 4KB
favicon.ico 4KB
1644306617591.index 256KB
CommonController.java 22KB
JiaoshiController.java 21KB
BangongwuziShenqingController.java 15KB
BangongshiShenqingController.java 15KB
YinzhangaddShenqingController.java 15KB
BangongwuziController.java 15KB
HuiyishiShenqingController.java 15KB
YinzhangShenqingController.java 15KB
HuiyishiController.java 13KB
JiaoshiQingjiaController.java 13KB
JiaoshiLizhiController.java 13KB
BangongshiController.java 13KB
YinzhangController.java 12KB
DictionaryController.java 10KB
HuiyishiShenqingView.java 6KB
JiaoshiEntity.java 5KB
MPUtil.java 5KB
YinzhangaddShenqingEntity.java 5KB
DictionaryServiceImpl.java 5KB
BangongwuziShenqingView.java 5KB
UsersController.java 5KB
JiaoshiQingjiaEntity.java 5KB
CommonServiceImpl.java 5KB
HuiyishiEntity.java 5KB
DictionaryEntity.java 4KB
BangongwuziShenqingEntity.java 4KB
JiaoshiVO.java 4KB
BangongshiShenqingEntity.java 4KB
HuiyishiShenqingEntity.java 4KB
YinzhangShenqingEntity.java 4KB
BangongshiShenqingView.java 4KB
JiaoshiLizhiEntity.java 4KB
YinzhangShenqingView.java 4KB
BangongwuziEntity.java 4KB
YinzhangaddShenqingVO.java 4KB
JiaoshiModel.java 4KB
BaiduUtil.java 4KB
YinzhangaddShenqingModel.java 4KB
PoiUtil.java 4KB
JiaoshiQingjiaVO.java 4KB
FileController.java 4KB
BangongshiEntity.java 4KB
CommonDao.java 3KB
HuiyishiVO.java 3KB
DictionaryVO.java 3KB
CommonService.java 3KB
AuthorizationInterceptor.java 3KB
YinzhangaddShenqingView.java 3KB
JiaoshiQingjiaModel.java 3KB
JiaoshiQingjiaView.java 3KB
JiaoshiLizhiView.java 3KB
BangongwuziShenqingVO.java 3KB
BangongshiShenqingVO.java 3KB
BangongwuziView.java 3KB
HuiyishiShenqingVO.java 3KB
YinzhangShenqingVO.java 3KB
HuiyishiModel.java 3KB
JiaoshiLizhiVO.java 3KB
YinzhangEntity.java 3KB
DictionaryModel.java 3KB
ConfigController.java 3KB
BangongwuziVO.java 3KB
BangongwuziShenqingModel.java 3KB
BangongshiShenqingModel.java 3KB
HuiyishiShenqingModel.java 3KB
YinzhangShenqingModel.java 3KB
JiaoshiLizhiModel.java 3KB
BangongshiView.java 3KB
BangongwuziModel.java 3KB
Query.java 3KB
BangongshiVO.java 3KB
TokenServiceImpl.java 2KB
DictionaryServletContextListener.java 2KB
BangongshiModel.java 2KB
TokenEntity.java 2KB
YinzhangVO.java 2KB
YinzhangModel.java 2KB
PageUtils.java 2KB
HuiyishiView.java 2KB
InterceptorConfig.java 2KB
BangongwuziShenqingServiceImpl.java 1KB
YinzhangaddShenqingServiceImpl.java 1KB
BangongshiShenqingServiceImpl.java 1KB
HuiyishiShenqingServiceImpl.java 1KB
YinzhangShenqingServiceImpl.java 1KB
UsersServiceImpl.java 1KB
JiaoshiQingjiaServiceImpl.java 1KB
JiaoshiLizhiServiceImpl.java 1KB
共 470 条
- 1
- 2
- 3
- 4
- 5
资源评论
创作小达人
- 粉丝: 2105
- 资源: 539
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- HTML5实现好看的游戏开发上市公司网站模板.zip
- HTML5实现好看的游戏公司官网网站模板.zip
- 国开-大数据技术导论-实验5 大数据可视化.doc
- 国开-大数据技术导论-实验4 大数据去重.doc
- 国开-大数据技术导论-实验3 网页数据获取.doc
- 国开-大数据技术导论-实验1 Linux操作系统部署.doc
- 冒泡排序,插入排序,选择排序
- (21688012)微信商城小程序
- (24517238)17 CDMA2000码分多址通信系统.zip
- (9993602)购物车小程序
- (172604420)STL常用容器1
- (173992034)完整word版-C语言程序设计(郑莉)课后习题答案.doc
- (174151238)EDFA的matlab建模,EDFA的matlab建模,EDFA的matlab建模,EDFA的matlab建模,EDFA的mat
- springboot2.x课程配套课件笔记springboot版PDF
- (174269454)C语言课程设计-考试报名管理系统
- (174517244)大一上学期C语言大作业.7z
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功