mirror of
https://github.com/luoye663/e5.git
synced 2024-12-25 11:18:50 +00:00
~
This commit is contained in:
parent
3f7505c16d
commit
1cf4593fed
@ -3,6 +3,8 @@ package io.qyi.e5.outlook.controller;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import io.qyi.e5.bean.result.Result;
|
import io.qyi.e5.bean.result.Result;
|
||||||
import io.qyi.e5.bean.result.ResultEnum;
|
import io.qyi.e5.bean.result.ResultEnum;
|
||||||
|
import io.qyi.e5.config.ResultVO;
|
||||||
|
import io.qyi.e5.config.exception.APIException;
|
||||||
import io.qyi.e5.config.security.UsernamePasswordAuthenticationToken;
|
import io.qyi.e5.config.security.UsernamePasswordAuthenticationToken;
|
||||||
import io.qyi.e5.outlook.entity.Outlook;
|
import io.qyi.e5.outlook.entity.Outlook;
|
||||||
import io.qyi.e5.outlook.service.IOutlookService;
|
import io.qyi.e5.outlook.service.IOutlookService;
|
||||||
@ -49,7 +51,7 @@ public class AuthController {
|
|||||||
@RequestMapping("/receive")
|
@RequestMapping("/receive")
|
||||||
public Result Receive(String code, String state, String session_state) throws Exception {
|
public Result Receive(String code, String state, String session_state) throws Exception {
|
||||||
if (!redisUtil.hasKey(states + state)) {
|
if (!redisUtil.hasKey(states + state)) {
|
||||||
return ResultUtil.error(-1, "state已过期,请到用户中心重新授权!");
|
throw new APIException("state已过期,请到用户中心重新授权!");
|
||||||
}
|
}
|
||||||
/*这里不应该查询,在进行授权时因该把基础数据丢到redis*/
|
/*这里不应该查询,在进行授权时因该把基础数据丢到redis*/
|
||||||
QueryWrapper<Outlook> outlookQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<Outlook> outlookQueryWrapper = new QueryWrapper<>();
|
||||||
@ -58,13 +60,13 @@ public class AuthController {
|
|||||||
/*删除redis中的此键*/
|
/*删除redis中的此键*/
|
||||||
redisUtil.del(states + state);
|
redisUtil.del(states + state);
|
||||||
if (outlook == null) {
|
if (outlook == null) {
|
||||||
return ResultUtil.error(-2, "没有查询到此用户,请检查是否在系统中注册!");
|
throw new APIException("没有查询到此用户,请检查是否在系统中注册!");
|
||||||
}
|
}
|
||||||
System.out.println(outlook);
|
System.out.println(outlook);
|
||||||
boolean authorization_code = outlookService.getTokenAndSave(code, outlook.getClientId(), outlook.getClientSecret(), "https://e5.qyi.io/outlook/auth2/receive"
|
boolean authorization_code = outlookService.getTokenAndSave(code, outlook.getClientId(), outlook.getClientSecret(), "https://e5.qyi.io/outlook/auth2/receive"
|
||||||
, "authorization_code");
|
, "authorization_code");
|
||||||
if (!authorization_code) {
|
if (!authorization_code) {
|
||||||
return ResultUtil.error(-3, "clientId 或 clientSecret 填写错误!授权失败!");
|
throw new APIException("clientId 或 clientSecret 填写错误!授权失败!");
|
||||||
}
|
}
|
||||||
/*添加此用户进消息队列*/
|
/*添加此用户进消息队列*/
|
||||||
Task.sendTaskOutlookMQ(outlook.getGithubId());
|
Task.sendTaskOutlookMQ(outlook.getGithubId());
|
||||||
@ -72,16 +74,17 @@ public class AuthController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/getAuthorizeUrl")
|
@RequestMapping("/getAuthorizeUrl")
|
||||||
public Result getAuthorizeUrl() {
|
public Result getAuthorizeUrl(int id) {
|
||||||
// 查询此用户的github_id与
|
// 查询此用户的github_id与
|
||||||
QueryWrapper<Outlook> outlookQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<Outlook> outlookQueryWrapper = new QueryWrapper<>();
|
||||||
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
||||||
outlookQueryWrapper.eq("github_id", authentication.getGithub_id());
|
outlookQueryWrapper.eq("github_id", authentication.getGithub_id());
|
||||||
|
outlookQueryWrapper.eq("id", id);
|
||||||
Outlook outlook = outlookService.getOne(outlookQueryWrapper);
|
Outlook outlook = outlookService.getOne(outlookQueryWrapper);
|
||||||
|
|
||||||
if (outlook != null) {
|
if (outlook != null) {
|
||||||
if (outlook.getClientId().length() < 1 || outlook.getClientSecret().length() < 1) {
|
if (outlook.getClientId().length() < 1 || outlook.getClientSecret().length() < 1) {
|
||||||
return ResultUtil.error(ResultEnum.NO_DATA_FOUND);
|
throw new APIException("没有设置key你授权啥呢!!!");
|
||||||
}
|
}
|
||||||
// 生成随机uuid标识用户
|
// 生成随机uuid标识用户
|
||||||
String state = EncryptUtil.getInstance().SHA1Hex(UUID.randomUUID().toString());
|
String state = EncryptUtil.getInstance().SHA1Hex(UUID.randomUUID().toString());
|
||||||
@ -89,7 +92,8 @@ public class AuthController {
|
|||||||
String url = String.format(authorizeUrl, outlook.getClientId(), "https://e5.qyi.io/outlook/auth2/receive", state);
|
String url = String.format(authorizeUrl, outlook.getClientId(), "https://e5.qyi.io/outlook/auth2/receive", state);
|
||||||
return ResultUtil.success(url);
|
return ResultUtil.success(url);
|
||||||
} else {
|
} else {
|
||||||
return ResultUtil.error(ResultEnum.NO_DATA_FOUND);
|
throw new APIException("没有此记录");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -134,6 +134,27 @@ public class OutlookController {
|
|||||||
});
|
});
|
||||||
return ResultUtil.success(vo);
|
return ResultUtil.success(vo);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 设置状态暂停状态
|
||||||
|
* @title setPause
|
||||||
|
* @description
|
||||||
|
* @author 落叶随风
|
||||||
|
* @param: id outlook id
|
||||||
|
* @updateTime 2020/12/13 19:24
|
||||||
|
* @return: io.qyi.e5.bean.result.Result
|
||||||
|
* @throws
|
||||||
|
*/
|
||||||
|
@GetMapping("/setPause")
|
||||||
|
public Result setPause(@RequestParam int id) {
|
||||||
|
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
||||||
|
outlookService.setPause(authentication.getGithub_id(),id);
|
||||||
|
return ResultUtil.success();
|
||||||
|
}
|
||||||
|
@GetMapping("/setStart")
|
||||||
|
public Result setStart(@RequestParam int id) {
|
||||||
|
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
||||||
|
outlookService.setStart(authentication.getGithub_id(),id);
|
||||||
|
return ResultUtil.success();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -30,4 +30,8 @@ public interface IOutlookService extends IService<Outlook> {
|
|||||||
int deleteInfo(int github_id);
|
int deleteInfo(int github_id);
|
||||||
|
|
||||||
List<Outlook> getOutlooklist(int github_id);
|
List<Outlook> getOutlooklist(int github_id);
|
||||||
|
|
||||||
|
void setPause(int github_id, int outlookId);
|
||||||
|
|
||||||
|
void setStart(int github_id, int outlookId);
|
||||||
}
|
}
|
||||||
|
@ -117,7 +117,8 @@ public class OutlookServiceImpl extends ServiceImpl<OutlookMapper, Outlook> impl
|
|||||||
outlook1.setClientId(client_id);
|
outlook1.setClientId(client_id);
|
||||||
outlook1.setClientSecret(client_secret);
|
outlook1.setClientSecret(client_secret);
|
||||||
outlook1.setStep(1)
|
outlook1.setStep(1)
|
||||||
.setStatus(8);;
|
.setStatus(8);
|
||||||
|
;
|
||||||
if (baseMapper.update(outlook1, queryWrapper) != 1) {
|
if (baseMapper.update(outlook1, queryWrapper) != 1) {
|
||||||
throw new APIException("更新记录失败!");
|
throw new APIException("更新记录失败!");
|
||||||
}
|
}
|
||||||
@ -125,7 +126,7 @@ public class OutlookServiceImpl extends ServiceImpl<OutlookMapper, Outlook> impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean saveRandomTime(int github_id, int cron_time, int outlook_id ,int cron_time_random_start, int cron_time_random_end) {
|
public boolean saveRandomTime(int github_id, int cron_time, int outlook_id, int cron_time_random_start, int cron_time_random_end) {
|
||||||
if (github_id == 0 || outlook_id == 0) {
|
if (github_id == 0 || outlook_id == 0) {
|
||||||
throw new APIException("缺少参数!");
|
throw new APIException("缺少参数!");
|
||||||
}
|
}
|
||||||
@ -302,5 +303,30 @@ public class OutlookServiceImpl extends ServiceImpl<OutlookMapper, Outlook> impl
|
|||||||
List<Outlook> outlooks = baseMapper.selectList(qw);
|
List<Outlook> outlooks = baseMapper.selectList(qw);
|
||||||
return outlooks;
|
return outlooks;
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public void setPause(int github_id, int outlookId) {
|
||||||
|
UpdateWrapper<Outlook> up = new UpdateWrapper<>();
|
||||||
|
up.eq("github_id", github_id).eq("id", outlookId);
|
||||||
|
Outlook outlook = baseMapper.selectOne(up);
|
||||||
|
if (outlook == null) {
|
||||||
|
throw new APIException("查无此记录!");
|
||||||
|
}
|
||||||
|
/*只允许运行状态的应用设置暂停*/
|
||||||
|
if (outlook.getStatus() != 2) {
|
||||||
|
throw new APIException("只允许 运行状态 的应用设置暂停!");
|
||||||
|
}
|
||||||
|
if (baseMapper.update(new Outlook().setStatus(2), up) != 1) {
|
||||||
|
throw new APIException("更新失败!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setStart(int github_id, int outlookId) {
|
||||||
|
UpdateWrapper<Outlook> up = new UpdateWrapper<>();
|
||||||
|
up.eq("github_id", github_id).eq("id", outlookId);
|
||||||
|
if (baseMapper.update(new Outlook().setStatus(6), up) != 1) {
|
||||||
|
throw new APIException("更新失败!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2,14 +2,13 @@ package io.qyi.e5.outlook_log.controller;
|
|||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.google.gson.Gson;
|
import io.qyi.e5.bean.result.Result;
|
||||||
import io.qyi.e5.config.security.UsernamePasswordAuthenticationToken;
|
import io.qyi.e5.config.security.UsernamePasswordAuthenticationToken;
|
||||||
import io.qyi.e5.outlook.entity.Outlook;
|
|
||||||
import io.qyi.e5.outlook.service.IOutlookService;
|
import io.qyi.e5.outlook.service.IOutlookService;
|
||||||
import io.qyi.e5.outlook_log.bena.LogVo;
|
import io.qyi.e5.outlook_log.bena.LogVo;
|
||||||
import io.qyi.e5.outlook_log.entity.OutlookLog;
|
import io.qyi.e5.outlook_log.entity.OutlookLog;
|
||||||
import io.qyi.e5.outlook_log.service.IOutlookLogService;
|
import io.qyi.e5.outlook_log.service.IOutlookLogService;
|
||||||
import org.apache.commons.lang.time.DateUtils;
|
import io.qyi.e5.util.ResultUtil;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
@ -17,9 +16,9 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.security.core.context.SecurityContextHolder;
|
import org.springframework.security.core.context.SecurityContextHolder;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.Model;
|
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
@ -53,12 +52,12 @@ public class OutlookLogController {
|
|||||||
|
|
||||||
@GetMapping("/findLog")
|
@GetMapping("/findLog")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public String findLog(){
|
public Result findLog(@RequestParam int outlookId){
|
||||||
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
UsernamePasswordAuthenticationToken authentication = (UsernamePasswordAuthenticationToken) SecurityContextHolder.getContext().getAuthentication();
|
||||||
int github_id = authentication.getGithub_id();
|
int github_id = authentication.getGithub_id();
|
||||||
|
|
||||||
QueryWrapper<OutlookLog> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<OutlookLog> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.eq("github_id", github_id).orderByDesc("call_time");
|
queryWrapper.eq("github_id", github_id).eq("outlook_id", outlookId).orderByAsc("call_time");
|
||||||
List<OutlookLog> list = outlookLogService.list(queryWrapper);
|
List<OutlookLog> list = outlookLogService.list(queryWrapper);
|
||||||
Iterator<OutlookLog> iterator = list.iterator();
|
Iterator<OutlookLog> iterator = list.iterator();
|
||||||
List<LogVo> logVo = new LinkedList<>();
|
List<LogVo> logVo = new LinkedList<>();
|
||||||
@ -68,19 +67,7 @@ public class OutlookLogController {
|
|||||||
BeanUtils.copyProperties(next,vo);
|
BeanUtils.copyProperties(next,vo);
|
||||||
logVo.add(vo);
|
logVo.add(vo);
|
||||||
}
|
}
|
||||||
Gson gson = new Gson();
|
return ResultUtil.success(logVo);
|
||||||
return gson.toJson(logVo);
|
|
||||||
}
|
|
||||||
|
|
||||||
@GetMapping("/exec111111")
|
|
||||||
public void s() throws Exception {
|
|
||||||
List<Outlook> list = outlookService.findAll();
|
|
||||||
logger.info(String.valueOf(list.size()));
|
|
||||||
for (Outlook outlook :list) {
|
|
||||||
logger.info(outlook.toString());
|
|
||||||
outlookService.getMailList(outlook);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,11 @@ public class OutlookLog implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private Integer githubId;
|
private Integer githubId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* outlook_id
|
||||||
|
*/
|
||||||
|
private Integer outlookId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 调用时间
|
* 调用时间
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user