wenhongquan 3 yıl önce
ebeveyn
işleme
6d98ebadc2
25 değiştirilmiş dosya ile 174 ekleme ve 2 silme
  1. 64 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TblTaskController.java
  2. 71 0
      ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
  3. 13 0
      ruoyi-system/src/main/java/com/ruoyi/system/domain/TblTask.java
  4. 24 1
      ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TblTaskServiceImpl.java
  5. 2 1
      ruoyi-system/src/main/resources/mapper/system/TblTaskMapper.xml
  6. BIN
      ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173235A001.png
  7. BIN
      ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173347A001.png
  8. BIN
      ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173646A002.png
  9. BIN
      ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607174009A003.png
  10. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon128_20220607105114A004.png
  11. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon16_20220607104957A001.png
  12. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon16_20220607105007A002.png
  13. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon16_20220607161215A005.png
  14. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon16_20220607161739A006.png
  15. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon16_20220607164716A001.png
  16. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon48_20220607105110A003.png
  17. BIN
      ruoyi/uploadPath/upload/2022/06/07/icon48_20220607161947A007.png
  18. BIN
      ruoyi/uploadPath/upload/2022/06/08/icon16_20220608174127A001.png
  19. BIN
      ruoyi/uploadPath/upload/2022/06/08/《Java开发手册》v1.5.0 华山版_20220608175013A002.pdf
  20. BIN
      ruoyi/uploadPath/upload/2022/06/08/发票运单明细-2_20220608174135A002.pdf
  21. BIN
      ruoyi/uploadPath/upload/2022/06/08/火狐截图_2022-05-24T08-59-56.754Z_20220608175008A001.png
  22. BIN
      ruoyi/uploadPath/upload/2022/06/09/edit@2x_20220609144816A005.png
  23. BIN
      ruoyi/uploadPath/upload/2022/06/09/《Java开发手册》v1.5.0 华山版_20220609144754A003.pdf
  24. BIN
      ruoyi/uploadPath/upload/2022/06/09/深入浅出的GB28181_20220609144804A004.pdf
  25. BIN
      ruoyi/uploadPath/upload/2022/06/09/火狐截图_2022-05-24T08-59-56.754Z_20220609144837A006.png

+ 64 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TblTaskController.java

@@ -2,6 +2,10 @@ package com.ruoyi.web.controller.system;
 
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.quartz.task.RyTask;
+import com.ruoyi.system.domain.TblTaskLog;
+import com.ruoyi.system.service.ITblTaskLogService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -32,8 +36,14 @@ import com.ruoyi.common.core.page.TableDataInfo;
 public class TblTaskController extends BaseController
 {
     @Autowired
+    private RyTask ryTask;
+
+    @Autowired
     private ITblTaskService tblTaskService;
 
+    @Autowired
+    private ITblTaskLogService tblTaskLogService;
+
     /**
      * 查询工单任务列表
      */
@@ -101,4 +111,58 @@ public class TblTaskController extends BaseController
     {
         return toAjax(tblTaskService.deleteTblTaskByTaskIds(taskIds));
     }
+
+
+    /***
+     * 任务派发
+     * @param tblTaskLog
+     * @return
+     */
+    @PostMapping("/distributed")
+    public AjaxResult taskDistributed(@RequestBody TblTaskLog tblTaskLog){
+        if(tblTaskLog==null || tblTaskLog.getTaskId()==null || tblTaskLog.getLogDes()==null){
+            return error("表单不完整");
+        }
+
+        TblTask task = tblTaskService.selectTblTaskByTaskId(tblTaskLog.getTaskId());
+        if(task==null){
+            return error("任务不存在");
+        }
+        task.setStatus(2L);
+        tblTaskLog.setTaskStatus(2L);
+        tblTaskLogService.insertTblTaskLog(tblTaskLog);
+        tblTaskService.updateTblTask(task);
+        //发送钉钉通知
+        ryTask.setNotice("011544081228132554,013303042738042020",null,"派单通知","http://www.baidu.com");
+
+
+        return success("成功");
+    }
+
+
+    /***
+     * 任务驳回
+     * @param tblTaskLog
+     * @return
+     */
+    @PostMapping("/close")
+    public AjaxResult taskClose(@RequestBody TblTaskLog tblTaskLog){
+        if(tblTaskLog==null || tblTaskLog.getTaskId()==null || tblTaskLog.getLogDes()==null){
+            return error("表单不完整");
+        }
+
+        TblTask task = tblTaskService.selectTblTaskByTaskId(tblTaskLog.getTaskId());
+        if(task==null){
+            return error("任务不存在");
+        }
+        task.setStatus(4L);
+        tblTaskLog.setTaskStatus(4L);
+        tblTaskLogService.insertTblTaskLog(tblTaskLog);
+        tblTaskService.updateTblTask(task);
+        //发送钉钉通知
+        ryTask.setNotice("011544081228132554,013303042738042020","现场已驳回了工单","工单驳回通知","http://www.baidu.com");
+
+
+        return success("成功");
+    }
 }

+ 71 - 0
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java

@@ -10,6 +10,9 @@ import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.service.ISysDeptService;
 import com.ruoyi.system.service.ISysUserService;
+import com.ruoyi.system.service.impl.SysUserServiceImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -27,6 +30,8 @@ import java.util.*;
 public class RyTask
 {
 
+    private static final Logger log = LoggerFactory.getLogger(RyTask.class);
+
     @Autowired
     private ISysDeptService iSysDeptService;
 
@@ -51,8 +56,74 @@ public class RyTask
 
 
     private String  appkey = "dingmidxbep08wynpmtx";
+
+    private Long agentId = 1658484749L;
     private String  appSecret = "9_NL7MkSkxQJwlFp9wo2VX8oSxU55hxSOG2Xv8Vk6r_OcLATjMewPNRfPCIuXWNI";
 
+    public void setNotice(String userids,String content,String title,String url){
+        if(token.equals("")||(new Date().getTime()/1000 - tokentime)>exp){
+            getToken();
+        }
+        try {
+            DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2");
+            OapiMessageCorpconversationAsyncsendV2Request request = new OapiMessageCorpconversationAsyncsendV2Request();
+            request.setAgentId(agentId);
+            request.setUseridList(userids);
+            request.setToAllUser(false);
+
+            OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg();
+//            msg.setMsgtype("text");
+//            msg.setText(new OapiMessageCorpconversationAsyncsendV2Request.Text());
+//            msg.getText().setContent("test123");
+//            request.setMsg(msg);
+
+//        msg.setMsgtype("image");
+//        msg.setImage(new OapiMessageCorpconversationAsyncsendV2Request.Image());
+//        msg.getImage().setMediaId("@lADOdvRYes0CbM0CbA");
+//        request.setMsg(msg);
+//
+//        msg.setMsgtype("file");
+//        msg.setFile(new OapiMessageCorpconversationAsyncsendV2Request.File());
+//        msg.getFile().setMediaId("@lADOdvRYes0CbM0CbA");
+//        request.setMsg(msg);
+//
+//        msg.setMsgtype("link");
+//        msg.setLink(new OapiMessageCorpconversationAsyncsendV2Request.Link());
+//        msg.getLink().setTitle("test");
+//        msg.getLink().setText("test");
+//        msg.getLink().setMessageUrl("test");
+//        msg.getLink().setPicUrl("test");
+//        request.setMsg(msg);
+//
+//        msg.setMsgtype("markdown");
+//        msg.setMarkdown(new OapiMessageCorpconversationAsyncsendV2Request.Markdown());
+//        msg.getMarkdown().setText("##### text");
+//        msg.getMarkdown().setTitle("### Title");
+//        request.setMsg(msg);
+
+//        msg.setOa(new OapiMessageCorpconversationAsyncsendV2Request.OA());
+//        msg.getOa().setHead(new OapiMessageCorpconversationAsyncsendV2Request.Head());
+//        msg.getOa().getHead().setText("head");
+//        msg.getOa().setBody(new OapiMessageCorpconversationAsyncsendV2Request.Body());
+//        msg.getOa().getBody().setContent("xxx");
+//        msg.setMsgtype("oa");
+//        request.setMsg(msg);
+
+            msg.setActionCard(new OapiMessageCorpconversationAsyncsendV2Request.ActionCard());
+            msg.getActionCard().setTitle(title);
+            msg.getActionCard().setMarkdown(content==null?"### 有新工单啦":content);
+            msg.getActionCard().setSingleTitle("测试测试"+new Date().getTime());
+            msg.getActionCard().setSingleUrl(url);
+            msg.setMsgtype("action_card");
+            request.setMsg(msg);
+            OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(request, token);
+            log.debug("发送钉钉消息");
+
+        }catch (Exception e){
+
+        }
+
+    }
 
     public SysUser getUserByCode(String code){
         if(token.equals("")||(new Date().getTime()/1000 - tokentime)>exp){

+ 13 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/TblTask.java

@@ -1,6 +1,8 @@
 package com.ruoyi.system.domain;
 
 import java.util.Date;
+import java.util.List;
+
 import com.fasterxml.jackson.annotation.JsonFormat;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
@@ -111,6 +113,17 @@ public class TblTask extends BaseEntity
     private String taskArea;
 
 
+    public List<TblTaskLog> getTblTaskLogList() {
+        return tblTaskLogList;
+    }
+
+    public void setTblTaskLogList(List<TblTaskLog> tblTaskLogList) {
+        this.tblTaskLogList = tblTaskLogList;
+    }
+
+    private List<TblTaskLog> tblTaskLogList;
+
+
 
     public String getTaskArea() {
         return taskArea;

+ 24 - 1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TblTaskServiceImpl.java

@@ -1,7 +1,12 @@
 package com.ruoyi.system.service.impl;
 
+import java.util.Calendar;
+import java.util.Date;
 import java.util.List;
 import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.system.domain.TblTaskLog;
+import com.ruoyi.system.mapper.TblTaskLogMapper;
+import com.ruoyi.system.service.ITblTaskLogService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.system.mapper.TblTaskMapper;
@@ -20,6 +25,9 @@ public class TblTaskServiceImpl implements ITblTaskService
     @Autowired
     private TblTaskMapper tblTaskMapper;
 
+    @Autowired
+    private ITblTaskLogService tblTaskLogService;
+
     /**
      * 查询工单任务
      * 
@@ -29,7 +37,11 @@ public class TblTaskServiceImpl implements ITblTaskService
     @Override
     public TblTask selectTblTaskByTaskId(Long taskId)
     {
-        return tblTaskMapper.selectTblTaskByTaskId(taskId);
+        TblTask task = tblTaskMapper.selectTblTaskByTaskId(taskId);
+        TblTaskLog taskLog = new TblTaskLog();
+        taskLog.setTaskId(taskId);
+        task.setTblTaskLogList( tblTaskLogService.selectTblTaskLogList(taskLog));
+        return task;
     }
 
     /**
@@ -54,6 +66,17 @@ public class TblTaskServiceImpl implements ITblTaskService
     public int insertTblTask(TblTask tblTask)
     {
         tblTask.setCreateTime(DateUtils.getNowDate());
+
+        //获取当前时间
+        int year = Calendar.getInstance().get(Calendar.YEAR);
+        TblTask task = new TblTask();
+        task.setTaskCode(year+"");
+        List<TblTask> tasks = tblTaskMapper.selectTblTaskList(task);
+        if(tasks!=null){
+            tblTask.setTaskCode(year+ String.format("%03d", tasks.size()+1));
+        }else{
+            tblTask.setTaskCode(year+"001");
+        }
         return tblTaskMapper.insertTblTask(tblTask);
     }
 

+ 2 - 1
ruoyi-system/src/main/resources/mapper/system/TblTaskMapper.xml

@@ -44,7 +44,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="taskContent != null  and taskContent != ''"> and task_content = #{taskContent}</if>
             <if test="taskAddr != null  and taskAddr != ''"> and task_addr = #{taskAddr}</if>
             <if test="taskLocation != null  and taskLocation != ''"> and task_location = #{taskLocation}</if>
-            <if test="taskCode != null  and taskCode != ''"> and task_code = #{taskCode}</if>
+            <if test="taskCode != null  and taskCode != ''"> and task_code like  concat('%', #{taskCode}, '%')</if>
             <if test="taskType != null "> and task_type = #{taskType}</if>
             <if test="taskEventType != null "> and task_event_type = #{taskEventType}</if>
             <if test="taskEventCategory != null "> and task_event_category = #{taskEventCategory}</if>
@@ -69,6 +69,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 and date_format(task_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
             </if>
         </where>
+        order by create_time desc
     </select>
     
     <select id="selectTblTaskByTaskId" parameterType="Long" resultMap="TblTaskResult">

BIN
ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173235A001.png


BIN
ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173347A001.png


BIN
ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607173646A002.png


BIN
ruoyi/uploadPath/upload/2022/06/07/downie_16x16_20220607174009A003.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon128_20220607105114A004.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon16_20220607104957A001.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon16_20220607105007A002.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon16_20220607161215A005.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon16_20220607161739A006.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon16_20220607164716A001.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon48_20220607105110A003.png


BIN
ruoyi/uploadPath/upload/2022/06/07/icon48_20220607161947A007.png


BIN
ruoyi/uploadPath/upload/2022/06/08/icon16_20220608174127A001.png


BIN
ruoyi/uploadPath/upload/2022/06/08/《Java开发手册》v1.5.0 华山版_20220608175013A002.pdf


BIN
ruoyi/uploadPath/upload/2022/06/08/发票运单明细-2_20220608174135A002.pdf


BIN
ruoyi/uploadPath/upload/2022/06/08/火狐截图_2022-05-24T08-59-56.754Z_20220608175008A001.png


BIN
ruoyi/uploadPath/upload/2022/06/09/edit@2x_20220609144816A005.png


BIN
ruoyi/uploadPath/upload/2022/06/09/《Java开发手册》v1.5.0 华山版_20220609144754A003.pdf


BIN
ruoyi/uploadPath/upload/2022/06/09/深入浅出的GB28181_20220609144804A004.pdf


BIN
ruoyi/uploadPath/upload/2022/06/09/火狐截图_2022-05-24T08-59-56.754Z_20220609144837A006.png