From 89c6a5382be60ab3b8daa7ccfff45c9846d5ea82 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 29 十二月 2023 11:52:05 +0800
Subject: [PATCH] 服务商
---
server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java | 42 ++++++++
server/services/src/main/java/com/doumee/config/SpringContextUtil.java | 33 ++++++
server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java | 11 +-
server/services/src/main/java/com/doumee/core/mqtt/service/MqttToolService.java | 1
server/services/src/main/resources/application-dev.yml | 7 +
server/services/src/main/java/com/doumee/service/business/SitesService.java | 3
server/services/src/main/java/com/doumee/core/dingding/DingDingNotice.java | 27 +++++
server/services/src/main/java/com/doumee/dao/business/model/Sites.java | 3
server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java | 4
/dev/null | 16 ---
server/platform/src/main/java/com/doumee/api/system/SystemUserController.java | 2
server/platform/src/main/java/com/doumee/task/ScheduleTool.java | 16 ++
server/services/src/main/java/com/doumee/core/constants/Constants.java | 1
server/services/src/main/java/com/doumee/core/mqtt/config/MqttClientInit.java | 34 +++++-
server/web/src/main/java/com/doumee/task/ScheduleTool.java | 51 ++++++++++
server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java | 16 ++-
server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java | 3
server/web/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java | 7 -
18 files changed, 228 insertions(+), 49 deletions(-)
diff --git a/server/platform/src/main/java/com/doumee/api/system/SystemUserController.java b/server/platform/src/main/java/com/doumee/api/system/SystemUserController.java
index 2bf2c72..ee9335e 100644
--- a/server/platform/src/main/java/com/doumee/api/system/SystemUserController.java
+++ b/server/platform/src/main/java/com/doumee/api/system/SystemUserController.java
@@ -102,7 +102,7 @@
@RequiresPermissions("system:user:update")
public ApiResponse updateById(@Validated(OperaType.Update.class) @RequestBody CreateSystemUserDTO systemUser) {
systemUser.setUpdateUser(this.getLoginUser().getId());
- systemUser.setUsername(systemUser.getMobile());
+// systemUser.setUsername(systemUser.getMobile());
systemUserBiz.updateById(systemUser);
return ApiResponse.success(null);
}
diff --git a/server/platform/src/main/java/com/doumee/service/MqttSubService.java b/server/platform/src/main/java/com/doumee/service/MqttSubService.java
deleted file mode 100644
index 732b91e..0000000
--- a/server/platform/src/main/java/com/doumee/service/MqttSubService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.doumee.service;
-
-import com.doumee.dao.business.model.Locks;
-import com.doumee.dao.business.model.MqttLog;
-
-/**
- * 涓庣‖浠跺鎺ユ湇鍔�
- * @author 姹熻箘韫�
- * @date 2023/10/09 18:06
- */
-public interface MqttSubService {
-
-
- void startSubcribe();
-
-}
diff --git a/server/platform/src/main/java/com/doumee/task/ScheduleTool.java b/server/platform/src/main/java/com/doumee/task/ScheduleTool.java
index 625342b..bf31212 100644
--- a/server/platform/src/main/java/com/doumee/task/ScheduleTool.java
+++ b/server/platform/src/main/java/com/doumee/task/ScheduleTool.java
@@ -5,10 +5,12 @@
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.Constants;
import com.doumee.core.exception.BusinessException;
+import com.doumee.core.mqtt.config.MqttClientInit;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.HttpsUtil;
import com.doumee.core.wx.WxPayProperties;
import com.doumee.dao.business.model.Goodsorder;
+import com.doumee.dao.business.model.Sites;
import com.doumee.dao.system.model.SystemDictData;
import com.doumee.service.business.*;
import com.doumee.service.system.SystemDictDataService;
@@ -60,6 +62,7 @@
/**
* @throws Exception
*/
+ @Scheduled(cron = "0 0 10 * * ? ")
public void getWxBill() throws Exception {
//鍓嶄竴澶╃殑鏁告摎
Date ydate = DateUtil.addDaysToDate(new Date(), -1);
@@ -85,7 +88,7 @@
@Scheduled(cron = "0/15 * * * * ? ")
public void autoRefreshLockStatus() throws Exception {
log.info("=====================寮�濮嬪畾鏃跺埛鏂伴獞琛屼腑鐨勬暟鍏呭�兼湭寮�閿佸け璐�=======================");
- memberRidesService.autoRefreshLockStatus();
+ //memberRidesService.autoRefreshLockStatus();
log.info("=====================缁撴潫瀹氭椂鍒锋柊楠戣涓殑鏁板厖鍊兼湭寮�閿佸け璐�=======================");
}
@@ -100,7 +103,16 @@
sitesService.siteReservesNotice();;
log.info("=====================缁撴潫 绔欑偣杞﹁締婊℃灦鐜囬璀�=======================");
}
-
+ /**
+ * 妫�鏌ラ�氫俊寮傚父鐨勭珯鐐瑰彂閫氱煡
+ * @throws Exception
+ */
+ @Scheduled(fixedDelay = 1000L * 60L * 5)
+ public void noticeNoLinkList() throws Exception {
+ log.info("=====================寮�濮� 妫�鏌ラ�氫俊寮傚父鐨勭珯鐐瑰彂閫氱煡=======================");
+ sitesService.noticeNoLinkList(new Sites());;
+ log.info("=====================缁撴潫 妫�鏌ラ�氫俊寮傚父鐨勭珯鐐瑰彂閫氱煡=======================");
+ }
@Autowired
private WxPayProperties wxPayProperties;
diff --git a/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java b/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
index 54ba793..b191d9c 100644
--- a/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
+++ b/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
@@ -111,17 +111,17 @@
@Transactional
public void create(CreateSystemUserDTO systemUser) {
- if (StringUtils.isBlank(systemUser.getMobile()) || systemUser.getMobile().length() < 6){
+ if (StringUtils.isBlank(systemUser.getUsername()) ){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鍒涘缓鐢ㄦ埛鍙傛暟閿欒");
}
// 楠岃瘉鐢ㄦ埛鍚�
SystemUser queryUserDto = new SystemUser();
queryUserDto.setUsername(systemUser.getUsername());
queryUserDto.setDeleted(Constants.ZERO);
- queryUserDto.setUsername(systemUser.getMobile());
+// queryUserDto.setUsername(systemUser.getUsername());
SystemUser user = systemUserService.findOne(queryUserDto);
if (user != null) {
- throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙风爜宸插瓨鍦�");
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鐢ㄦ埛鍚嶅凡瀛樺湪");
}
// 楠岃瘉宸ュ彿
if (StringUtils.isNotBlank(systemUser.getEmpNo())) {
@@ -137,10 +137,11 @@
// 鐢熸垚瀵嗙爜鐩�
String salt = RandomStringUtils.randomAlphabetic(6);
// 鐢熸垚瀵嗙爜
- systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getMobile().substring(systemUser.getMobile().length() - 6), salt));
+// systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getMobile().substring(systemUser.getMobile().length() - 6), salt));
+ systemUser.setPassword(Utils.Secure.encryptPassword(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.DEFAULT_PWD).getCode(), salt));
systemUser.setSalt(salt);
systemUser.setId(UUID.randomUUID().toString());
- systemUser.setUsername(systemUser.getMobile());
+
// 鍒涘缓鐢ㄦ埛璁板綍
systemUserService.create(systemUser);
// 璁剧疆閮ㄩ棬
@@ -168,13 +169,16 @@
@Override
public void updateById(CreateSystemUserDTO systemUser) {
// 楠岃瘉鐢ㄦ埛鍚�
+ if (StringUtils.isBlank(systemUser.getUsername()) ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄦ埛鍚嶄笉鑳戒负绌�");
+ }
SystemUser queryUserDto = new SystemUser();
// queryUserDto.setId(systemUser.getId());
queryUserDto.setUsername(systemUser.getUsername());
queryUserDto.setDeleted(Constants.ZERO);
SystemUser user = systemUserService.findOne(queryUserDto);
if (user != null && !user.getId().equals(systemUser.getId())) {
- throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙峰凡瀛樺湪");
+ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鐢ㄦ埛鍚嶅凡瀛樺湪");
}
// 楠岃瘉宸ュ彿
diff --git a/server/services/src/main/java/com/doumee/config/SpringContextUtil.java b/server/services/src/main/java/com/doumee/config/SpringContextUtil.java
new file mode 100644
index 0000000..4577f53
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/config/SpringContextUtil.java
@@ -0,0 +1,33 @@
+package com.doumee.config;
+
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SpringContextUtil implements ApplicationContextAware {
+
+ private static ApplicationContext applicationContext;
+
+ @Override
+ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
+ this.applicationContext = applicationContext;
+ }
+
+ public static ApplicationContext getApplicationContext() {
+ return applicationContext;
+ }
+
+ public static Object getBean(String name) {
+ return getApplicationContext().getBean(name);
+ }
+
+ public static <T> T getBean(Class<T> clazz) {
+ return getApplicationContext().getBean(clazz);
+ }
+
+ public static <T> T getBean(String name, Class<T> clazz) {
+ return getApplicationContext().getBean(name, clazz);
+ }
+}
\ No newline at end of file
diff --git a/server/services/src/main/java/com/doumee/core/constants/Constants.java b/server/services/src/main/java/com/doumee/core/constants/Constants.java
index d803d96..d4f5491 100644
--- a/server/services/src/main/java/com/doumee/core/constants/Constants.java
+++ b/server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -41,6 +41,7 @@
public static String REDIS_DEBUG_STR="test_";
public static final String AD = "AD";
public static String REPAIR = "REPAIR";
+ public static final String NOTICE_SITE_LINK_LIMIT="NOTICE_SITE_LINK_LIMIT";
public interface MqttTopic{
diff --git a/server/services/src/main/java/com/doumee/core/dingding/DingDingNotice.java b/server/services/src/main/java/com/doumee/core/dingding/DingDingNotice.java
index 2eab145..a739834 100644
--- a/server/services/src/main/java/com/doumee/core/dingding/DingDingNotice.java
+++ b/server/services/src/main/java/com/doumee/core/dingding/DingDingNotice.java
@@ -2,8 +2,10 @@
import com.alibaba.fastjson.JSONObject;
import com.doumee.core.constants.Constants;
+import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.HttpsUtil;
import com.doumee.dao.business.model.BikeRepair;
+import com.doumee.dao.business.model.Sites;
import com.doumee.dao.business.web.request.RepairRequest;
import org.apache.commons.codec.binary.Base64;
@@ -12,6 +14,7 @@
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
/**
@@ -55,6 +58,30 @@
content.put("text",text);
HttpsUtil.post(ddUrl+"×tamp="+timestamp+"&sign="+getSign(timestamp,secret), JSONObject.toJSONString(content),"application/json",false);
}
+ /**
+ * 閽夐拤閫氱煡 - 绔欑偣閫氫俊寮傚父涓婃姤
+ * @param ddUrl
+ * @throws Exception
+ */
+ public static void siteNoLink(List<Sites> siteList, String ddUrl , String secret) throws Exception{
+ Long timestamp = System.currentTimeMillis();
+ Map<String,Object> content = new HashMap<>();
+ content.put("msgtype","text");
+ Map<String,String> text = new HashMap<>();
+ String desc = "";
+ if(siteList.size() == 1){
+ desc = "銆愮珯鐐瑰紓甯镐笂鎶ャ�戠珯鐐广��"+siteList.get(0).getId()+"銆戯紝鑷��"+ DateUtil.getPlusTime2(siteList.get(0).getLastLinkDate())+"銆戝悗鏈敹鍒伴�氳璇锋眰,璇峰強鏃舵煡鐪嬪鐞哱n";
+ }else{
+ desc = "銆愮珯鐐瑰紓甯镐笂鎶ャ�� 浠ヤ笅绔欑偣閫氳鍙戠敓寮傚父锛岃鍙婃椂鏌ョ湅澶勭悊锛歕n";
+ for (Sites site : siteList){
+ desc += "绔欑偣銆�"+site.getId()+"銆戯紝鑷��"+ DateUtil.getPlusTime2(site.getLastLinkDate())+"銆戝悗鏈敹鍒伴�氳璇锋眰\n";
+ }
+ }
+
+ text.put("content",desc);
+ content.put("text",text);
+ HttpsUtil.post(ddUrl+"×tamp="+timestamp+"&sign="+getSign(timestamp,secret), JSONObject.toJSONString(content),"application/json",false);
+ }
/**
diff --git a/server/services/src/main/java/com/doumee/core/mqtt/config/MqttClientInit.java b/server/services/src/main/java/com/doumee/core/mqtt/config/MqttClientInit.java
index 7028dc9..43e47d2 100644
--- a/server/services/src/main/java/com/doumee/core/mqtt/config/MqttClientInit.java
+++ b/server/services/src/main/java/com/doumee/core/mqtt/config/MqttClientInit.java
@@ -1,21 +1,33 @@
package com.doumee.core.mqtt.config;
+import com.doumee.config.SpringContextUtil;
import com.doumee.core.constants.Constants;
import com.doumee.core.mqtt.service.MqttPushCallback;
+import com.doumee.core.mqtt.service.MqttSubService;
+import com.doumee.core.mqtt.service.MqttToolService;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttTopic;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
+import org.springframework.beans.factory.annotation.Autowired;
public class MqttClientInit {
static MqttClient client;
static MqttClient subClient;
-
+ public static boolean isNeedReSub =false ;
public static synchronized MqttClient getInstance(MqttConfig config ){
if(client !=null){
+ if(!client.isConnected()){
+ try {
+ client.reconnect();
+ } catch (MqttException e) {
+ throw new RuntimeException(e);
+ }
+ }
return client;
}
+
try {
// host涓轰富鏈哄悕锛宑lientid鍗宠繛鎺QTT鐨勫鎴风ID锛屼竴鑸互鍞竴鏍囪瘑绗﹁〃绀猴紝MemoryPersistence璁剧疆clientid鐨勪繚瀛樺舰寮忥紝榛樿涓轰互鍐呭瓨淇濆瓨
String clientId =config.getClientid() +config.getVersion();
@@ -45,6 +57,7 @@
}
public static synchronized MqttClient getSubInstance(MqttConfig config,MqttPushCallback callBack){
if(subClient !=null){
+ refreshClient();
return subClient;
}
try {
@@ -78,11 +91,22 @@
}
+ public static synchronized void isSubClientValid() {
+ if(isNeedReSub){
+ MqttSubService service = SpringContextUtil.getBean(MqttSubService.class);
+ if(service!=null){
+ service.startSubcribe();
+ }
+ }
+ }
- public static synchronized void refreshClient() throws MqttException {
- if(client !=null){
- boolean result = client.isConnected();
- client.reconnect();
+ public static synchronized void refreshClient() {
+ try {
+ if(subClient !=null && !subClient.isConnected()){
+ subClient.reconnect();
+ }
+ }catch (Exception e){
+ e.printStackTrace();
}
}
diff --git a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
index b050971..d8c11d4 100644
--- a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
+++ b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttPushCallback.java
@@ -1,5 +1,6 @@
package com.doumee.core.mqtt.service;
+import com.doumee.config.SpringContextUtil;
import com.doumee.core.mqtt.config.MqttClientInit;
import com.doumee.core.mqtt.config.MqttConfig;
import com.doumee.service.business.DeviceService;
@@ -18,15 +19,13 @@
@Autowired
private MqttConfig mqttConfig;
//鎺ユ敹娑堟伅鍥炶皟
- @Override
+
+ @Override
public void connectionLost(Throwable cause) {
// 杩炴帴涓㈠け鍚庯紝涓�鑸湪杩欓噷闈㈣繘琛岄噸杩�
System.out.println("杩炴帴鏂紑锛岄噸杩炰腑");
- try {
- MqttClientInit.refreshClient();
- } catch (MqttException e) {
- throw new RuntimeException(e);
- }
+ MqttClientInit.isNeedReSub =true;
+ MqttClientInit.refreshClient();
}
@Override
diff --git a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttToolService.java b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttToolService.java
index f4ef56c..0ce51e3 100644
--- a/server/services/src/main/java/com/doumee/core/mqtt/service/MqttToolService.java
+++ b/server/services/src/main/java/com/doumee/core/mqtt/service/MqttToolService.java
@@ -31,6 +31,7 @@
}*/
}
MqttClientInit.getSubInstance(config,callBack).subscribe(topics, Qos);
+ MqttClientInit.isNeedReSub = false;
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/Sites.java b/server/services/src/main/java/com/doumee/dao/business/model/Sites.java
index 43ffeaf..62a07ca 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/Sites.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/Sites.java
@@ -69,6 +69,9 @@
@ApiModelProperty(value = "鐘舵�� 0鍦ㄧ嚎 1绂荤嚎 ", example = "1")
@ExcelColumn(name="鐘舵�� 0鍦ㄧ嚎 1绂荤嚎")
private Integer online;
+ @ApiModelProperty(value = "鏄惁寮傚父涓婃姤 0鏄� 1鍚� ", example = "1")
+ @ExcelColumn(name="鏄惁寮傚父涓婃姤 0鏄� 1鍚�")
+ private Integer needNotice;
@ApiModelProperty(value = "閿佸ご鏁伴噺", example = "1")
@ExcelColumn(name="閿佸ご鏁伴噺")
diff --git a/server/services/src/main/java/com/doumee/service/business/SitesService.java b/server/services/src/main/java/com/doumee/service/business/SitesService.java
index cb77062..b528b16 100644
--- a/server/services/src/main/java/com/doumee/service/business/SitesService.java
+++ b/server/services/src/main/java/com/doumee/service/business/SitesService.java
@@ -84,13 +84,14 @@
* @return List<Sites>
*/
List<Sites> findList(Sites sites);
-
+ void noticeNoLinkList(Sites sites);
/**
* 鍒嗛〉鏌ヨ
*
* @param pageWrap 鍒嗛〉瀵硅薄
* @return PageData<Sites>
*/
+
PageData<Sites> findPage(PageWrap<Sites> pageWrap);
/**
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
index a466654..c1ab843 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberRidesServiceImpl.java
@@ -604,7 +604,7 @@
//杞﹁締璁板綍
Bikes bikes = dealBikesByParam(model);
//鐘舵�侊紝0闂悎, 1鎵撳紑锛�2杩愯涓�, 3寮傚父
- if(locks.getStatus() == Constants.LockStatus.open){
+ if(Constants.formatIntegerNum(locks.getStatus()) == Constants.LockStatus.open){
//濡傛灉鏄紑閿佷笟鍔★紝鍒ゆ柇鏄惁鏈夊紑閿佷腑鐨勪俊鎭�
MemberRides memberRides = new MemberRides();
memberRides.setStatus(Constants.MEMBER_RIDES_STATUS.LOCKING.getKey());
@@ -621,7 +621,7 @@
update.setId(memberRides.getId());
//锛堟洿鏂拌姹傚紑閿佷腑鐨勯攣澶村叧鑱旂殑楠戣璁板綍锛�
memberRidesMapper.updateById( update);
- }else if(locks.getStatus() == Constants.LockStatus.closed ){
+ }else if(Constants.formatIntegerNum(locks.getStatus()) == Constants.LockStatus.closed ){
//濡傛灉鏄叧閿佷笟鍔★紝鍒ゆ柇瑙﹀彂杩樿溅
if(StringUtils.isNotBlank(locks.getBikeCode())){
MemberRides mbikes = new MemberRides();
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java
index 1bfd82a..be5d97a 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java
@@ -119,6 +119,7 @@
update.setName(sites.getName());
update.setLockNum(sites.getLockNum());
update.setIp(sites.getIp());
+ update.setNeedNotice(sites.getNeedNotice());
sitesMapper.updateById(update);
}
@@ -147,6 +148,42 @@
public List<Sites> findList(Sites sites) {
QueryWrapper<Sites> wrapper = new QueryWrapper<>(sites);
return sitesMapper.selectList(wrapper);
+ }
+ @Override
+ public void noticeNoLinkList(Sites sites) {
+ //鍙戦�侀拤閽夐�氱煡
+ int second =0;
+ try {
+ second = Integer.parseInt(systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.NOTICE_SITE_LINK_LIMIT).getCode());
+ }catch (Exception e){
+
+ }
+ if(second <=0){
+ return ;
+ }
+ sites.setIsdeleted(Constants.ZERO);
+ sites.setStatus(Constants.ZERO);
+ QueryWrapper<Sites> wrapper = new QueryWrapper<>(sites);
+ wrapper.lambda().orderByDesc(Sites::getLastLinkDate);
+ List<Sites> siteList =sitesMapper.selectList(wrapper);
+ List<Sites> errorList = new ArrayList<>();
+ for(Sites site : siteList){
+ //鏃堕棿鏌ヨ繃閫氫俊寮傚父闃堝��
+ if(Constants.formatIntegerNum(site.getNeedNotice()) == Constants.ZERO
+ && System.currentTimeMillis()-site.getLastLinkDate().getTime() > second*1000){
+ errorList.add(site);
+ }
+ }
+ if(errorList.size()>0){
+ try {
+ DingDingNotice.siteNoLink(errorList,
+ systemDictDataBiz.queryByCode(Constants.DINGDING,Constants.DINGDING_URL).getCode(),
+ systemDictDataBiz.queryByCode(Constants.DINGDING,Constants.DINGDING_SECRET).getCode());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
}
@Override
@@ -195,13 +232,14 @@
if (pageWrap.getModel().getClientVersion() != null) {
queryWrapper.lambda().eq(Sites::getClientVersion, pageWrap.getModel().getClientVersion());
}
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ /*for(PageWrap.SortData sortData: pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
queryWrapper.orderByDesc(sortData.getProperty());
} else {
queryWrapper.orderByAsc(sortData.getProperty());
}
- }
+ }*/
+ queryWrapper.lambda().orderByAsc(Sites::getCode);
return PageData.from(sitesMapper.selectPage(page, queryWrapper));
}
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
index 6c372d7..c0032c1 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
@@ -410,7 +410,7 @@
detail.setRefundSuccessDate(DateUtil.getDateFromString2(info.getRefundSuccessTime()));//鎴愬姛閫�娆炬椂闂�
detail.setRefundApplyDate(DateUtil.getDateFromString2(info.getRefundTime())); //鐢宠閫�娆炬椂闂�
//璁$畻鑷杞︽敹鍏ワ紝鍖归厤鏉ヨ嚜鑷杞﹀皬绋嬪簭鐨勬墍鏈夋敮浠樻垚鍔熷拰閫�娆炬垚鍔熺殑閲戦锛屼綔涓鸿嚜琛岃溅鏀跺叆锛堢疮璁℃敹娆鹃噾棰�-绱閫�娆炬垚鍔熼噾棰濓級
- if(StringUtils.equals(detail.getAppid(), WxMiniConfig.wxPayV2Service.getConfig().getAppId())){
+ if(StringUtils.equals(detail.getAppid(), WxMiniConfig.wxPayV2Service.getConfig().getSubAppId())){
//鑷杞︽敹鍏ョ疮璁℃敹娆鹃噾棰�(鏀粯鎴愬姛鎬婚噾棰�-閫�娆炬�婚噾棰濓級
if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
//濡傛灉鏄氦鏄�
@@ -422,7 +422,6 @@
bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
}
}
-
detailList.add(detail);
}
}
diff --git a/server/services/src/main/resources/application-dev.yml b/server/services/src/main/resources/application-dev.yml
index 0ceac3a..292c4cc 100644
--- a/server/services/src/main/resources/application-dev.yml
+++ b/server/services/src/main/resources/application-dev.yml
@@ -73,6 +73,13 @@
password: doumee@168
version: 003
+########################mqtt鐩稿叧閰嶇疆########################
+#mqtt:
+# host: tcp://39.100.125.239:1883
+# username: parkbike
+# password: parkbike@168
+# version: 003
+
tencent:
map:
remoteHost: https://apis.map.qq.com
diff --git a/server/platform/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java b/server/web/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java
similarity index 79%
rename from server/platform/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java
rename to server/web/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java
index e56e312..daec17e 100644
--- a/server/platform/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java
+++ b/server/web/src/main/java/com/doumee/service/impl/MqttSubServiceImpl.java
@@ -1,19 +1,14 @@
package com.doumee.service.impl;
-import com.alibaba.fastjson.JSONObject;
import com.doumee.core.constants.Constants;
import com.doumee.core.mqtt.config.MqttConfig;
+import com.doumee.core.mqtt.service.MqttSubService;
import com.doumee.core.mqtt.service.MqttToolService;
import com.doumee.dao.business.MqttLogMapper;
-import com.doumee.dao.business.model.Locks;
-import com.doumee.dao.business.model.MqttLog;
-import com.doumee.service.MqttSubService;
-import com.doumee.service.business.DeviceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
-import java.util.Date;
/**
* 涓庣‖浠跺鎺ユ湇鍔�
diff --git a/server/web/src/main/java/com/doumee/task/ScheduleTool.java b/server/web/src/main/java/com/doumee/task/ScheduleTool.java
new file mode 100644
index 0000000..2f51645
--- /dev/null
+++ b/server/web/src/main/java/com/doumee/task/ScheduleTool.java
@@ -0,0 +1,51 @@
+package com.doumee.task;
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.mqtt.config.MqttClientInit;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.HttpsUtil;
+import com.doumee.core.wx.WxPayProperties;
+import com.doumee.dao.business.model.Sites;
+import com.doumee.dao.system.model.SystemDictData;
+import com.doumee.service.business.*;
+import com.doumee.service.system.SystemDictDataService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.util.ThreadContext;
+import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * 瀹氭椂浠诲姟
+ * @author jiangping
+ * @date 2021-10-10 14:40:35
+ * https://www.bejson.com/othertools/cron/ cron 琛ㄨ揪寮忕敓鎴愬湴鍧�
+ */
+@Component
+@EnableScheduling
+@Slf4j
+public class ScheduleTool {
+
+ /**
+ * 绔欑偣杞﹁締婊℃灦鐜囬璀�
+ * @throws Exception
+ */
+ @Scheduled(fixedDelay = 1000L *20L )
+ public void reSubMqtt() throws Exception {
+ log.info("=====================妫�鏌ユ槸鍚﹂渶瑕侀噸鏂拌闃�===========start============");
+ MqttClientInit.isSubClientValid();
+ log.info("=====================妫�鏌ユ槸鍚﹂渶瑕侀噸鏂拌闃�===========end============");
+ }
+
+
+
+}
--
Gitblit v1.9.3