gongdecai 2 years ago
parent
commit
75ef3d8ebf

+ 6 - 0
winsea-haixin-plugin-yiliangyiyun/pom.xml

@@ -86,6 +86,12 @@
             <artifactId>spring-websocket</artifactId>
             <artifactId>spring-websocket</artifactId>
             <version>5.1.3.RELEASE</version>
             <version>5.1.3.RELEASE</version>
         </dependency>
         </dependency>
+
+        <dependency>
+            <groupId>com.winnerlook</groupId>
+            <artifactId>voice-sdk</artifactId>
+            <version>1.1.1</version>
+        </dependency>
     </dependencies>
     </dependencies>
 
 
 
 

+ 6 - 5
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/CommonUserController.java

@@ -31,10 +31,7 @@ import com.yh.saas.plugin.yiliangyiyun.entity.view.UserDefinedBean;
 import com.yh.saas.plugin.yiliangyiyun.exception.ServiceException;
 import com.yh.saas.plugin.yiliangyiyun.exception.ServiceException;
 import com.yh.saas.plugin.yiliangyiyun.service.ICommonUserService;
 import com.yh.saas.plugin.yiliangyiyun.service.ICommonUserService;
 import com.yh.saas.plugin.yiliangyiyun.service.INewWorkflowService;
 import com.yh.saas.plugin.yiliangyiyun.service.INewWorkflowService;
-import com.yh.saas.plugin.yiliangyiyun.util.Base64Util;
-import com.yh.saas.plugin.yiliangyiyun.util.FileUtil;
-import com.yh.saas.plugin.yiliangyiyun.util.HttpUtil;
-import com.yh.saas.plugin.yiliangyiyun.util.WebSocket;
+import com.yh.saas.plugin.yiliangyiyun.util.*;
 import com.yh.saas.toolkit.workflow.service.IWorkflowHistoryService;
 import com.yh.saas.toolkit.workflow.service.IWorkflowHistoryService;
 import org.activiti.engine.impl.util.CollectionUtil;
 import org.activiti.engine.impl.util.CollectionUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
@@ -83,6 +80,8 @@ public class CommonUserController {
     private ICommonCompanyService companyService;
     private ICommonCompanyService companyService;
     @Autowired
     @Autowired
     private WebSocket webSocket;
     private WebSocket webSocket;
+    @Autowired
+    private GeTuiUtils geTuiUtils;
 
 
 
 
     /**
     /**
@@ -469,7 +468,9 @@ public class CommonUserController {
 
 
 
 
     @PostMapping("/test")
     @PostMapping("/test")
-    public void test() {
+    public void test() throws Exception {
+        String userId = "2dbbee49f86f47c9b2ef6f7bba34b441";
+        geTuiUtils.callPhone(userId);
 //        JSONObject jsonObject = new JSONObject();
 //        JSONObject jsonObject = new JSONObject();
 //        jsonObject.put("msg", "1234567");
 //        jsonObject.put("msg", "1234567");
 //        MessagePusherUtils.sendPrivateMessage(AuthSecurityUtils.getCurrentUserId(),JSONObject.toJSONString(jsonObject));
 //        MessagePusherUtils.sendPrivateMessage(AuthSecurityUtils.getCurrentUserId(),JSONObject.toJSONString(jsonObject));

+ 35 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/NewNoticeTaskServiceImpl.java

@@ -10,7 +10,9 @@ import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.toolkit.StringUtils;
 import com.baomidou.mybatisplus.toolkit.StringUtils;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import com.google.common.collect.Sets;
+import com.winsea.svc.base.base.entity.CommonStaff;
 import com.winsea.svc.base.base.entity.CommonStaffRole;
 import com.winsea.svc.base.base.entity.CommonStaffRole;
+import com.winsea.svc.base.base.mapper.CommonStaffMapper;
 import com.winsea.svc.base.base.service.ICommonStaffRoleService;
 import com.winsea.svc.base.base.service.ICommonStaffRoleService;
 import com.winsea.svc.base.base.service.ICommonStaffVesselService;
 import com.winsea.svc.base.base.service.ICommonStaffVesselService;
 import com.winsea.svc.base.base.util.MessagePusherUtils;
 import com.winsea.svc.base.base.util.MessagePusherUtils;
@@ -43,14 +45,18 @@ import java.util.Map;
 import java.util.Set;
 import java.util.Set;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
+import com.yh.saas.plugin.yiliangyiyun.entity.CommonUser;
 import com.yh.saas.plugin.yiliangyiyun.mapper.NewNoticeTaskMapper;
 import com.yh.saas.plugin.yiliangyiyun.mapper.NewNoticeTaskMapper;
 import com.yh.saas.plugin.yiliangyiyun.service.INewNoticeTaskService;
 import com.yh.saas.plugin.yiliangyiyun.service.INewNoticeTaskService;
 import com.yh.saas.plugin.yiliangyiyun.service.INewNoticeUtilService;
 import com.yh.saas.plugin.yiliangyiyun.service.INewNoticeUtilService;
+import com.yh.saas.plugin.yiliangyiyun.util.GeTuiUtils;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.collections.CollectionUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.transaction.annotation.Transactional;
 
 
 @SofaService
 @SofaService
 public class NewNoticeTaskServiceImpl extends ServiceImpl<NoticeTaskMapper, NoticeTaskInfo> implements INewNoticeTaskService {
 public class NewNoticeTaskServiceImpl extends ServiceImpl<NoticeTaskMapper, NoticeTaskInfo> implements INewNoticeTaskService {
@@ -69,6 +75,10 @@ public class NewNoticeTaskServiceImpl extends ServiceImpl<NoticeTaskMapper, Noti
     private NewNoticeTaskMapper newNoticeTaskMapper;
     private NewNoticeTaskMapper newNoticeTaskMapper;
     @Autowired
     @Autowired
     private INewNoticeUtilService noticeUtilService;
     private INewNoticeUtilService noticeUtilService;
+    @Autowired
+    private GeTuiUtils geTuiUtils;
+    @Autowired
+    private CommonStaffMapper commonStaffMapper;
     private Set<String> businessCodes;
     private Set<String> businessCodes;
     @Value("${taskmsg.isPushed:true}")
     @Value("${taskmsg.isPushed:true}")
     private boolean isTaskmsgPushed;
     private boolean isTaskmsgPushed;
@@ -232,6 +242,31 @@ public class NewNoticeTaskServiceImpl extends ServiceImpl<NoticeTaskMapper, Noti
         return this.selectList(noticeTaskWrapper);
         return this.selectList(noticeTaskWrapper);
     }
     }
 
 
+    /**
+     * 添加
+     * @return
+     */
+    /**
+     * 每天16.30点更新
+     */
+    @Transactional(rollbackFor = Exception.class)
+    @Scheduled(cron = "0 */5 * * * ?")
+    public void call() throws Exception {
+        Wrapper<NoticeTaskInfo> noticeTaskWrapper = new EntityWrapper();
+        noticeTaskWrapper.eq("delete_flag", 0);
+        noticeTaskWrapper.eq("accept_type","STAFF");
+        noticeTaskWrapper.notIn("accept_type","RETURN");
+        noticeTaskWrapper.groupBy("accept_id");
+        List<NoticeTaskInfo> noticeTaskInfos = this.selectList(noticeTaskWrapper);
+//        geTuiUtils.callPhone("111");
+        if(CollectionUtils.isNotEmpty(noticeTaskInfos)){
+            for(int i=0;i<noticeTaskInfos.size();i++){
+                geTuiUtils.callPhone(noticeTaskInfos.get(i).getAcceptId());
+            }
+
+        }
+    }
+
     @Override
     @Override
     public List<NoticeBusinessTypeNumber> findBusinessTypeCount() {
     public List<NoticeBusinessTypeNumber> findBusinessTypeCount() {
         NoticeTaskInfo noticeTaskInfo = new NoticeTaskInfo();
         NoticeTaskInfo noticeTaskInfo = new NoticeTaskInfo();

+ 60 - 3
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/util/GeTuiUtils.java

@@ -25,14 +25,22 @@ import com.gexin.rp.sdk.base.payload.APNPayload;
 import com.gexin.rp.sdk.exceptions.RequestException;
 import com.gexin.rp.sdk.exceptions.RequestException;
 import com.gexin.rp.sdk.http.IGtPush;
 import com.gexin.rp.sdk.http.IGtPush;
 import com.gexin.rp.sdk.template.TransmissionTemplate;
 import com.gexin.rp.sdk.template.TransmissionTemplate;
+import com.winnerlook.model.VoiceNotifyBody;
+import com.winnerlook.model.VoiceResponseResult;
+import com.winnerlook.service.VoiceSender;
+import com.winsea.svc.base.base.entity.CommonStaff;
+import com.winsea.svc.base.base.mapper.CommonStaffMapper;
 import com.yh.saas.plugin.yiliangyiyun.entity.CommonUser;
 import com.yh.saas.plugin.yiliangyiyun.entity.CommonUser;
 import com.yh.saas.plugin.yiliangyiyun.mapper.CommonUserMapper;
 import com.yh.saas.plugin.yiliangyiyun.mapper.CommonUserMapper;
+import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.http.HttpResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import java.io.*;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.util.*;
 
 
 /**
 /**
  * @Author:chengchangjiang
  * @Author:chengchangjiang
@@ -44,6 +52,8 @@ import java.util.Map;
 public class GeTuiUtils {
 public class GeTuiUtils {
     @Autowired
     @Autowired
     private CommonUserMapper commonUserMapper;
     private CommonUserMapper commonUserMapper;
+    @Autowired
+    private CommonStaffMapper commonStaffMapper;
     private static String appId = "q2frjgRYqt7RuC9Vjj6Va9";
     private static String appId = "q2frjgRYqt7RuC9Vjj6Va9";
     private static String appKey = "L0gnzFQa2O8aFW15lPRzh2";
     private static String appKey = "L0gnzFQa2O8aFW15lPRzh2";
     private static String masterSecret = "NhuCKHZJhp877ofHWtlQWA";
     private static String masterSecret = "NhuCKHZJhp877ofHWtlQWA";
@@ -175,6 +185,53 @@ public class GeTuiUtils {
             System.out.println("推送异常:" + e.getMessage());
             System.out.println("推送异常:" + e.getMessage());
         }
         }
     }
     }
+
+    public void callPhone(String userId) throws Exception {
+      // 电话信息
+
+        /*请修改为平台分配的accountId*/
+        String accountId="285481";
+        /*请修改为平台分配的token*/
+        String token="9e412526531a43f296d23bb29771c761";
+        VoiceNotifyBody message = new VoiceNotifyBody();
+        /*用户接收回执的服务器地址*/
+        message.setCallbackUrl("http://192.168.1.102:9780/voice/api/VoiceWeb/receiveRecord");
+        CommonStaff commonStaff= commonStaffMapper.selectById(userId);
+//        message.setCalleeNumber("18840825257");
+        if(commonStaff != null){
+        message.setCalleeNumber(commonStaff.getStaffMobilePhone());
+        }
+        message.setReplayTimes(3);
+        message.setDisplayNumber("");
+
+        /*设置平台分配的模板ID*/
+        message.setTemplateId("401045");
+
+        LinkedHashMap<String,String> params = new LinkedHashMap<String,String>();
+        /*设置模板参数*/
+//        params.put("{1}","八就二六五四三五一");
+        /*params.put("{2}","您好");
+        params.put("{3}","895621");*/
+        message.setTemplateArgs(params);
+
+        try {
+            VoiceResponseResult result = VoiceSender.httpsSendVoiceNotify(message, accountId, token);
+
+            System.out.println("result = " + result);
+
+        }catch (Exception e) {
+            //Log.e(this.getClass(), " e = " + e);
+            e.printStackTrace();
+        }
+
+    }
+
+
+
+
+
+
+
     private static TransmissionTemplate genTransmissionTemplate(String content, String title) throws Exception {
     private static TransmissionTemplate genTransmissionTemplate(String content, String title) throws Exception {
         TransmissionTemplate template = new TransmissionTemplate();
         TransmissionTemplate template = new TransmissionTemplate();
         template.setAppId(appId);
         template.setAppId(appId);