Browse Source

优化夜间最小查询范围
新增工单登记下一环节,工单处置转派消息发送

linzhiwei 2 years ago
parent
commit
08dc182cfc

+ 13 - 10
hnls-gis/src/main/java/com/tofly/xrtygis/service/impl/DmanightflowServiceImpl.java

@@ -64,12 +64,12 @@ public class DmanightflowServiceImpl extends ServiceImpl<DmanightflowMapper, Dma
         Date startDate = DateUtil.formatDate(startTime, "yyyy-MM-dd");
         Date endDate = DateUtil.formatDate(endTime, "yyyy-MM-dd");
         //计算3个月后的时间
-        Date addDate = Date7Utils.addNextPeriod(3, startDate);
-        //比较时间是否大于3个月之后的时间
-        if (endDate.after(addDate)) {
-            //如果超过了3个月,则最多取到3个月的数据
-            endDate = addDate;
-        }
+//        Date addDate = Date7Utils.addNextPeriod(3, startDate);
+//        //比较时间是否大于3个月之后的时间
+//        if (endDate.after(addDate)) {
+//            //如果超过了3个月,则最多取到3个月的数据
+//            endDate = addDate;
+//        }
         if ("1".equals(flag)) {
             return baseMapper.getMinFlowCollet(tableIds, startDate, endDate,page);
         } else if ("2".equals(flag)) {
@@ -136,13 +136,16 @@ public class DmanightflowServiceImpl extends ServiceImpl<DmanightflowMapper, Dma
                 LocalDateTime time2 = DateTimeUtil.fromLong2LocalDateTime(pressure.getMintime().getTime());
                 LocalDateTime startTime1 = time1.minusMinutes(5);
                 LocalDateTime endTime1 = time1.plusMinutes(5);
-                if(tableId.equals(pressureTableId)){
-                    if(startTime1.isBefore(time2) || time2.isBefore(endTime1)){
-                        info.setMinpval(pressure.getMinpval());
-                    }
+                if(null!=pressureTableId){
+                    if(tableId.equals(pressureTableId)){
+                        if(startTime1.isBefore(time2) || time2.isBefore(endTime1)){
+                            info.setMinpval(pressure.getMinpval());
+                        }
 
+                    }
                 }
 
+
             });
             Date time = new Date();
             info.setUday(time);

+ 2 - 1
hnls-mis/hnls-mis-boot/src/main/java/com/tofly/xrtymis/XrtyMisApplication.java

@@ -2,12 +2,13 @@ package com.tofly.xrtymis;
 
 import com.tofly.baseapi.config.ToflyWebColudApplication;
 import com.tofly.common.oauth.feign.ToflyFeignClientInterceptor;
+import com.tofly.xrtymis.config.FeignConfig;
 import org.springframework.boot.SpringApplication;
 import org.springframework.cloud.openfeign.EnableFeignClients;
 
 //@ToflyWebColudApplication中未加入@EnableFeignClients的参数
 @ToflyWebColudApplication
-@EnableFeignClients(basePackages ={"com.tofly.api"},defaultConfiguration = {ToflyFeignClientInterceptor.class})
+@EnableFeignClients(basePackages ={"com.tofly.api"},defaultConfiguration = {FeignConfig.class})
 public class XrtyMisApplication {
     public static void main(String[] args) {
         SpringApplication.run(XrtyMisApplication.class, args);

+ 57 - 0
hnls-mis/hnls-mis-boot/src/main/java/com/tofly/xrtymis/config/FeignConfig.java

@@ -0,0 +1,57 @@
+package com.tofly.xrtymis.config;
+
+import com.alibaba.fastjson.JSON;
+import feign.Request;
+import feign.RequestInterceptor;
+import feign.RequestTemplate;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import java.lang.reflect.Field;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+
+public class FeignConfig implements RequestInterceptor {
+    @Override
+    public void apply(RequestTemplate requestTemplate) {
+        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        assert attributes != null;
+        HttpServletRequest request = attributes.getRequest();
+        //添加token
+        requestTemplate.header("Authorization", request.getHeader("Authorization"));
+        //将body的数据写入参数
+        if("GET".equals(requestTemplate.method())){
+            try{
+                //获取body内容
+                String json = requestTemplate.requestBody().asString();
+                if (StringUtils.isEmpty(json)) {
+                    return ;
+                }
+                Map<String, Object> map= JSON.parseObject(json);
+                Set<String> set = map.keySet();
+                Iterator<String> it = set.iterator();
+                while (it.hasNext()) {
+                    String key = (String) it.next();
+                    Object values = map.get(key);
+                    if (values!=null && !"".equals(values) && !"null".equals(values)) {
+                        //将body的参数写入queries
+                        requestTemplate.query(key,values.toString());
+                    }
+                }
+                Class requestClass=requestTemplate.getClass();
+                Field field = requestClass.getDeclaredField("body");
+                field.setAccessible(true);
+                //修改body为空。
+                field.set(requestTemplate, Request.Body.empty());
+            }catch (Exception e){
+
+            }
+
+
+        }
+
+    }
+}

+ 39 - 5
hnls-mis/hnls-mis-boot/src/main/java/com/tofly/xrtymis/custom/service/impl/GdglinfoServiceImpl.java

@@ -19,13 +19,11 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.tofly.api.CodeClient;
-import com.tofly.api.DepartmentClient;
-import com.tofly.api.UserClent;
-import com.tofly.api.UserTaskClient;
+import com.tofly.api.*;
 import com.tofly.api.audit.AuditClient;
 import com.tofly.api.message.MessageClient;
 import com.tofly.api.message.MessageStateClient;
+import com.tofly.api.mssage.SendMessageFeign;
 import com.tofly.api.order.OrderClient;
 import com.tofly.baseapi.mapper.ToflyCodeCommonMapper;
 import com.tofly.common.core.entity.ResultRespone;
@@ -44,6 +42,8 @@ import com.tofly.pojo.maintain.vo.datail.RepairOrderDetailVo;
 import com.tofly.pojo.message.Messagepush;
 import com.tofly.pojo.message.Messagerecipient;
 import com.tofly.pojo.message.Usertask;
+import com.tofly.pojo.note.SendMessage;
+import com.tofly.pojo.note.SendNoteEn;
 import com.tofly.pojo.plan.Checkhistory;
 import com.tofly.xrtymis.config.FilePathBean;
 import com.tofly.xrtymis.custom.commons.CommonConstants;
@@ -218,6 +218,8 @@ public class GdglinfoServiceImpl extends ServiceImpl<GdglinfoMapper, Gdglinfo> i
     private NoiseLoggerInfoService noiseUploadService;
     @Value("${xrty.isRxgd}")
     private String isRxgd;
+    @Autowired
+    private SendMessageFeign sendMessageFeign;
 
     /**
      * 工单详情查询
@@ -523,7 +525,22 @@ public class GdglinfoServiceImpl extends ServiceImpl<GdglinfoMapper, Gdglinfo> i
             tzrys.forEach(i->{
                 gdglinfoMassage(gdglinfo, "6", finalTopicName, i, gdglinfo.getDjsj(), finalRouteip, finalEndDate, finalRouteipapp);
             });
-
+            if (GdglinfoEM.ISENABLE.getType().equals(gdflowconfig.getRzczSfqy())) {
+                ResultRespone<User> byId = userClent.getById(Long.valueOf(tzry));
+                String phone = byId.getResult().getPhone();
+                // 发送短信给处置人员
+                SendMessage sendMessage = new SendMessage();
+                sendMessage.setLxdh(phone);
+                sendMessage.setTxlx("2");
+                String sjdh = gdglinfo.getSjdh()==null?"无":gdglinfo.getSjdh();
+                String gdms = gdglinfo.getGdms() == null ? "无" : gdglinfo.getGdms();
+                sendMessage.setTxnr("工单地址: "+gdglinfo.getAddress()+",工单说明: "+gdms+",联系电话: "+sjdh+",请前往'掌上统一办公APP'处理");
+                SendNoteEn sendNoteEn = new SendNoteEn();
+                List<SendMessage> sendMessageList = new ArrayList<>();
+                sendMessageList.add(sendMessage);
+                sendNoteEn.setSendMessageList(sendMessageList);
+                sendMessageFeign.sendMessage(sendNoteEn);
+            }
         }
         // 本环节不消除待办
         if (!Long.valueOf(GdglinfoEM.BHJ.getType()).equals(gdglinfo.getGddjZt())) {
@@ -542,6 +559,8 @@ public class GdglinfoServiceImpl extends ServiceImpl<GdglinfoMapper, Gdglinfo> i
                 throw new ToflyDeniedException("添加审批人失败");
             }
         }
+
+
         return ResultRespone.success(gdid);
     }
 
@@ -1251,6 +1270,21 @@ public class GdglinfoServiceImpl extends ServiceImpl<GdglinfoMapper, Gdglinfo> i
             //增加接收人
             redeploy.setJsry(tzry);
             redeployService.save(redeploy);
+            // 给转派人发送短信
+            ResultRespone<User> byId = userClent.getById(tzry);
+            String phone = byId.getResult().getPhone();
+            // 发送短信给处置人员
+            SendMessage sendMessage = new SendMessage();
+            sendMessage.setLxdh(phone);
+            sendMessage.setTxlx("2");
+            String sjdh = gdglinfo.getSjdh()==null?"无":gdglinfo.getSjdh();
+            String gdms = gdglinfo.getGdms() == null ? "无" : gdglinfo.getGdms();
+            sendMessage.setTxnr("工单地址: "+gdglinfo.getAddress()+",工单说明: "+gdms+",联系电话: "+sjdh+",请前往'掌上统一办公APP'处理");
+            SendNoteEn sendNoteEn = new SendNoteEn();
+            List<SendMessage> sendMessageList = new ArrayList<>();
+            sendMessageList.add(sendMessage);
+            sendNoteEn.setSendMessageList(sendMessageList);
+            sendMessageFeign.sendMessage(sendNoteEn);
 
         }
         //添加消息