From b7a71b30c1c1b06a162678c90a54c8188097dc81 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期五, 13 十二月 2024 20:57:39 +0800 Subject: [PATCH] 1 --- se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java | 80 ++++++++++++++++++++++++++++++---------- 1 files changed, 60 insertions(+), 20 deletions(-) diff --git a/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java index b48b211..d606e87 100644 --- a/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java +++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java @@ -2,10 +2,15 @@ import java.util.List; import com.se.common.core.utils.DateUtils; +import com.se.system.service.WebSocketService; +import com.se.system.utils.CaffeineUtils; +import com.se.system.utils.ConnectUtils; +import com.se.system.utils.StringUtils; import org.springframework.stereotype.Service; import com.se.system.mapper.SysStatusCtrlMapper; import com.se.system.domain.SysStatusCtrl; import com.se.system.service.inte.ISysStatusCtrlService; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -16,82 +21,117 @@ * @date 2024-12-07 */ @Service -public class SysStatusCtrlServiceImpl implements ISysStatusCtrlService -{ +@SuppressWarnings("ALL") +public class SysStatusCtrlServiceImpl implements ISysStatusCtrlService { @Resource private SysStatusCtrlMapper sysStatusCtrlMapper; + private final static String CACHE_KEY = "list:statusctrl"; + /** * 鏌ヨ绯荤粺鐘舵�佺洃鎺� - * + * * @param statusId 绯荤粺鐘舵�佺洃鎺т富閿� * @return 绯荤粺鐘舵�佺洃鎺� */ @Override - public SysStatusCtrl selectSysStatusCtrlByStatusId(Long statusId) - { + public SysStatusCtrl selectSysStatusCtrlByStatusId(Long statusId) { return sysStatusCtrlMapper.selectSysStatusCtrlByStatusId(statusId); } /** * 鏌ヨ绯荤粺鐘舵�佺洃鎺у垪琛� - * + * * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺� * @return 绯荤粺鐘舵�佺洃鎺� */ @Override - public List<SysStatusCtrl> selectSysStatusCtrlList(SysStatusCtrl sysStatusCtrl) - { + public List<SysStatusCtrl> selectSysStatusCtrlList(SysStatusCtrl sysStatusCtrl) { return sysStatusCtrlMapper.selectSysStatusCtrlList(sysStatusCtrl); } /** * 鏂板绯荤粺鐘舵�佺洃鎺� - * + * * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺� * @return 缁撴灉 */ @Override - public int insertSysStatusCtrl(SysStatusCtrl sysStatusCtrl) - { + public int insertSysStatusCtrl(SysStatusCtrl sysStatusCtrl) { + CaffeineUtils.remove(CACHE_KEY); sysStatusCtrl.setCreateTime(DateUtils.getNowDate()); return sysStatusCtrlMapper.insertSysStatusCtrl(sysStatusCtrl); } /** * 淇敼绯荤粺鐘舵�佺洃鎺� - * + * * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺� * @return 缁撴灉 */ @Override - public int updateSysStatusCtrl(SysStatusCtrl sysStatusCtrl) - { + public int updateSysStatusCtrl(SysStatusCtrl sysStatusCtrl) { + CaffeineUtils.remove(CACHE_KEY); sysStatusCtrl.setUpdateTime(DateUtils.getNowDate()); return sysStatusCtrlMapper.updateSysStatusCtrl(sysStatusCtrl); } /** * 鎵归噺鍒犻櫎绯荤粺鐘舵�佺洃鎺� - * + * * @param statusIds 闇�瑕佸垹闄ょ殑绯荤粺鐘舵�佺洃鎺т富閿� * @return 缁撴灉 */ @Override - public int deleteSysStatusCtrlByStatusIds(Long[] statusIds) - { + public int deleteSysStatusCtrlByStatusIds(Long[] statusIds) { + CaffeineUtils.remove(CACHE_KEY); return sysStatusCtrlMapper.deleteSysStatusCtrlByStatusIds(statusIds); } /** * 鍒犻櫎绯荤粺鐘舵�佺洃鎺т俊鎭� - * + * * @param statusId 绯荤粺鐘舵�佺洃鎺т富閿� * @return 缁撴灉 */ @Override - public int deleteSysStatusCtrlByStatusId(Long statusId) - { + public int deleteSysStatusCtrlByStatusId(Long statusId) { + CaffeineUtils.remove(CACHE_KEY); return sysStatusCtrlMapper.deleteSysStatusCtrlByStatusId(statusId); } + + private List<SysStatusCtrl> getList() { + List<SysStatusCtrl> list = CaffeineUtils.getListByKey(CACHE_KEY); + if (null == list) { + list = selectSysStatusCtrlList(new SysStatusCtrl()); + CaffeineUtils.putListByKey(CACHE_KEY, list); + } + + return list; + } + + public void runSubSysTest() { + List<SysStatusCtrl> list = getList(); + if (CollectionUtils.isEmpty(list)) return; + + for (SysStatusCtrl ctrl : list) { + ctrl.setStatus("0"); + ctrl.setRemark(""); + if (!StringUtils.isEmpty(ctrl.getIp()) && !ConnectUtils.isReachable(ctrl.getIp())) { + ctrl.setStatus("1"); + ctrl.setRemark("IP涓嶈繛閫�"); + } + if (!StringUtils.isEmpty(ctrl.getUrl()) && !ConnectUtils.testUrl(ctrl.getUrl(), ctrl.getMethod())) { + ctrl.setStatus("1"); + ctrl.setRemark((ctrl.getRemark().length() > 0 ? ctrl.getRemark() + "锛�" : "") + "URL杩炴帴涓嶄笂"); + } + } + + sysStatusCtrlMapper.updates(list); + } + + private void sendMsg(String json) throws Exception { + //String json = JSONObject.toJSONStringWithDateFormat(jsonObject, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue); + WebSocketService.broadCastInfo(json); + } } -- Gitblit v1.9.3