|
@@ -3,6 +3,7 @@ package com.fs.his.task;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -33,12 +34,10 @@ import com.fs.erp.dto.ErpOrderQueryResponse;
|
|
|
import com.fs.erp.dto.ErpOrderResponse;
|
|
import com.fs.erp.dto.ErpOrderResponse;
|
|
|
import com.fs.erp.mapper.FsErpFinishPushMapper;
|
|
import com.fs.erp.mapper.FsErpFinishPushMapper;
|
|
|
import com.fs.erp.service.IErpOrderService;
|
|
import com.fs.erp.service.IErpOrderService;
|
|
|
-import com.fs.fastGpt.domain.FastGptEventTokenLog;
|
|
|
|
|
-import com.fs.fastGpt.domain.FastGptPushTokenTotal;
|
|
|
|
|
-import com.fs.fastGpt.domain.FastgptChatVoiceHomo;
|
|
|
|
|
-import com.fs.fastGpt.domain.FastgptEventLogTotal;
|
|
|
|
|
|
|
+import com.fs.fastGpt.domain.*;
|
|
|
import com.fs.fastGpt.mapper.FastGptChatSessionMapper;
|
|
import com.fs.fastGpt.mapper.FastGptChatSessionMapper;
|
|
|
import com.fs.fastGpt.mapper.FastgptChatVoiceHomoMapper;
|
|
import com.fs.fastGpt.mapper.FastgptChatVoiceHomoMapper;
|
|
|
|
|
+import com.fs.fastGpt.service.AiHookService;
|
|
|
import com.fs.fastGpt.service.IFastgptEventLogTotalService;
|
|
import com.fs.fastGpt.service.IFastgptEventLogTotalService;
|
|
|
import com.fs.fastgptApi.util.AudioUtils;
|
|
import com.fs.fastgptApi.util.AudioUtils;
|
|
|
import com.fs.fastgptApi.vo.AudioVO;
|
|
import com.fs.fastgptApi.vo.AudioVO;
|
|
@@ -67,7 +66,9 @@ import com.fs.im.dto.*;
|
|
|
import com.fs.im.service.IImService;
|
|
import com.fs.im.service.IImService;
|
|
|
import com.fs.im.service.OpenIMService;
|
|
import com.fs.im.service.OpenIMService;
|
|
|
import com.fs.qw.domain.QwCompany;
|
|
import com.fs.qw.domain.QwCompany;
|
|
|
|
|
+import com.fs.qw.domain.QwUser;
|
|
|
import com.fs.qw.mapper.QwRestrictionPushRecordMapper;
|
|
import com.fs.qw.mapper.QwRestrictionPushRecordMapper;
|
|
|
|
|
+import com.fs.qw.mapper.QwUserMapper;
|
|
|
import com.fs.qw.service.*;
|
|
import com.fs.qw.service.*;
|
|
|
import com.fs.qwApi.service.QwApiService;
|
|
import com.fs.qwApi.service.QwApiService;
|
|
|
import com.fs.sop.domain.QwSopTempVoice;
|
|
import com.fs.sop.domain.QwSopTempVoice;
|
|
@@ -225,6 +226,46 @@ public class Task {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private FsIntegralOrderMapper fsIntegralOrderMapper;
|
|
private FsIntegralOrderMapper fsIntegralOrderMapper;
|
|
|
|
|
|
|
|
|
|
+ private final String DELAY_MSG = "delayMsg";
|
|
|
|
|
+
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private QwUserMapper qwUserMapper;
|
|
|
|
|
+
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private AiHookService aiHookService;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 定时任务,处理ai禁止回复之后的消息
|
|
|
|
|
+ */
|
|
|
|
|
+ public void forbidTimeMsgTask() {
|
|
|
|
|
+ Map<String, Object> cacheMap = redisCache.hGetAll(DELAY_MSG);
|
|
|
|
|
+ for (String key : cacheMap.keySet()) {
|
|
|
|
|
+ String value = (String) cacheMap.get(key);
|
|
|
|
|
+ //获取sessionId
|
|
|
|
|
+ Long sessionId = Long.parseLong(key);
|
|
|
|
|
+ try {
|
|
|
|
|
+ if (value != null && !value.isEmpty()) {
|
|
|
|
|
+ FastGptChatSession chatSession = fastGptChatSessionMapper.selectFastGptChatSessionBySessionId(sessionId);
|
|
|
|
|
+ Long qwUserId = chatSession.getQwUserId();
|
|
|
|
|
+ QwUser qwUser = qwUserMapper.selectQwUserById(qwUserId);
|
|
|
|
|
+ String uid = qwUser.getUid();
|
|
|
|
|
+
|
|
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(value);
|
|
|
|
|
+ String content = jsonObject.getString("content");
|
|
|
|
|
+ Long sender = jsonObject.getLong("sender");
|
|
|
|
|
+ Integer type = jsonObject.getInteger("type");
|
|
|
|
|
+
|
|
|
|
|
+ aiHookService.qwHookNotifyAiReply(qwUserId,sender,content,uid,type);
|
|
|
|
|
+ //删除已经处理的缓存
|
|
|
|
|
+ redisCache.hDel(DELAY_MSG,key);
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ log.error("个人定时消息处理异常,会话id:{},文本:{}",sessionId,value,e);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* sop任务token消耗统计
|
|
* sop任务token消耗统计
|
|
|
*/
|
|
*/
|