From 6a58a5a148c27c9ff66901bfbae6e52c1a56b5d2 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 04 七月 2024 17:17:53 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/HeLibraryController.java |   30 +++------
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java     |   26 +++++++-
 smartor/src/main/java/com/smartor/domain/HtmlContentVO.java                         |   31 ++++++++++
 smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java           |   74 ++++++++++++++++++++++++
 4 files changed, 137 insertions(+), 24 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
index 208dc59..124b1cb 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java
@@ -21,6 +21,7 @@
 import com.ruoyi.common.enums.PhotoEnum;
 import com.ruoyi.common.enums.RadioEnum;
 import com.ruoyi.common.enums.VadioEnum;
+import com.smartor.domain.HtmlContentVO;
 import org.apache.poi.hwpf.HWPFDocument;
 import org.apache.poi.hwpf.converter.PicturesManager;
 import org.apache.poi.hwpf.converter.WordToHtmlConverter;
@@ -32,10 +33,7 @@
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.constant.Constants;
@@ -224,6 +222,26 @@
         }
     }
 
+    /**
+     * @param HtmlContentVO
+     * @return
+     */
+    @GetMapping("/common/htmlContent")
+    public AjaxResult htmlContent(@RequestBody HtmlContentVO htmlContentVO) {
+        // 鑾峰彇鏂囦欢鐨勫師濮嬪悕绉�
+        String fileName = htmlContentVO.getFileName();
+        // 灏嗘枃浠朵繚瀛樺埌鎸囧畾鐩綍
+        File outputFile = new File(RuoYiConfig.getUploadPath() + "/show/" + fileName.split("\\.", 2)[0] + fileName);
+        try (BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile))) {
+            writer.write(htmlContentVO.getContent());
+
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return AjaxResult.success();
+    }
+
+
     public static void convertDocToHtml(String docFilePath, String outputHtmlFilePath) throws TransformerException, IOException, ParserConfigurationException {
 
         InputStream inputStream = new FileInputStream(docFilePath);
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/HeLibraryController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/HeLibraryController.java
index efedc9a..e542da5 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/HeLibraryController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/HeLibraryController.java
@@ -1,32 +1,24 @@
 package com.ruoyi.web.controller.smartor;
 
-import java.util.List;
-import javax.servlet.http.HttpServletResponse;
-
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.smartor.domain.HeLibrary;
 import com.smartor.domain.HeLibraryVO;
-import com.smartor.domain.IvrLibaTemplateVO;
 import com.smartor.service.IHeLibraryService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.ObjectUtils;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-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.RestController;
-import com.ruoyi.common.annotation.Log;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.enums.BusinessType;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
 
 /**
  * 瀹f暀璧勬枡搴揅ontroller
diff --git a/smartor/src/main/java/com/smartor/domain/HtmlContentVO.java b/smartor/src/main/java/com/smartor/domain/HtmlContentVO.java
new file mode 100644
index 0000000..c2fbad9
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/HtmlContentVO.java
@@ -0,0 +1,31 @@
+package com.smartor.domain;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 瀹f暀鍒嗙被瀵硅薄 he_category
+ *
+ * @author smartor
+ * @date 2023-03-04
+ */
+@Data
+@ApiModel(value = "HtmlContentVO", description = "瀵屾枃鏈唴瀹�")
+public class HtmlContentVO extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "鍐呭")
+    private String content;
+
+    @ApiModelProperty(value = "鏂囦欢鍚�")
+    private String fileName;
+
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
index ca3dcf8..a51c4e9 100644
--- a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
@@ -54,7 +54,7 @@
             return wjSend(sendTaskVO);
         } else if (sendTaskVO.getTaskType() == 3) {
             //瀹f暀
-
+            xjSend(sendTaskVO);
         }
         return null;
     }
@@ -202,6 +202,78 @@
         return 1;
     }
 
+    public int xjSend(SendTaskVO sendTaskVO) {
+        ServiceTask serviceTask1 = iServiceTaskService.selectServiceTaskByTaskid(sendTaskVO.getTaskId());
+        if (sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 3 || sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 4) {
+            //浠诲姟鏆傚仠鎴栫粓姝�
+            ServiceTask serviceTask = new ServiceTask();
+            serviceTask.setTaskid(sendTaskVO.getTaskId());
+            serviceTask.setStopState(serviceTask1.getStopState() + 1);
+            serviceTask.setSendState(sendTaskVO.getSendState());
+            iServiceTaskService.updateServiceTask(serviceTask);
+            return 0;
+        }
+
+        //鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌�
+        if (StringUtils.isEmpty(sendTaskVO.getSendType())) {
+            sendTaskVO.setSendType(serviceTask1.getSendType().toString());
+        }
+        //鍒ゆ柇浠诲姟鏄惁鏄珛鍗冲彂閫�
+        if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
+
+            String content = sendMQContent(sendTaskVO, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), null);
+            //绔嬪嵆鍙戦��
+            redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
+
+            //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
+            ServiceTask serviceTask = new ServiceTask();
+            serviceTask.setTaskid(serviceTask1.getTaskid());
+            serviceTask.setSendState(2);
+            iServiceTaskService.updateServiceTask(serviceTask);
+        } else if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("1") || StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("3")) {
+            //鏃堕棿娈靛彂閫�
+            ObjectMapper objectMapper = new ObjectMapper();
+            if (StringUtils.isNotEmpty(serviceTask1.getSendTimeSlot())) {
+                List<TaskSendTimeVO> taskSendTimeVOList = null;
+                try {
+                    taskSendTimeVOList = objectMapper.readValue(serviceTask1.getSendTimeSlot(), new TypeReference<List<TaskSendTimeVO>>() {
+                    });
+                } catch (JsonProcessingException e) {
+                    log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
+                }
+                for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
+                    //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
+                    List<TaskSendTimeVO> list = new ArrayList<>();
+                    list.add(taskSendTimeVO);
+
+                    //鑾峰彇寮�濮嬪彂閫佹椂闂�
+                    String begantime = taskSendTimeVO.getBegantime();
+                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                    //璁板綍鐩墠鍒板彂閫佹椂闂寸殑姣鍊� 锛堝彂閫佹椂闂寸殑姣鍊� - 褰撳墠鏃堕棿鐨勬绉掑�硷級
+                    Long milliseconds = 1000L;
+                    try {
+                        Date date = sdf.parse(begantime);
+                        milliseconds = date.getTime() - System.currentTimeMillis();
+                        System.out.println("鏃ユ湡姣鏁帮細" + milliseconds);
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+
+                    SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
+                    sendTaskVO1.setSendType("1");
+                    String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), list);
+                    redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
+                }
+                //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
+                ServiceTask serviceTask = new ServiceTask();
+                serviceTask.setTaskid(serviceTask1.getTaskid());
+                serviceTask.setSendState(2);
+                iServiceTaskService.updateServiceTask(serviceTask);
+            }
+        }
+        return 1;
+    }
+
     /**
      * MQ浠诲姟鍒涘缓鍐呭
      *

--
Gitblit v1.9.3