feat: 1.5.0

1. 新增pod列表查询
This commit is contained in:
www.byteblogs.com 2023-06-06 23:23:59 +08:00
parent f84eaf7e23
commit 3adbcf600e
47 changed files with 352 additions and 70 deletions

View File

@ -1,8 +1,11 @@
package com.aizuda.easy.retry.server.service;
import com.aizuda.easy.retry.server.web.model.base.PageResult;
import com.aizuda.easy.retry.server.web.model.request.ServerNodeQueryVO;
import com.aizuda.easy.retry.server.web.model.response.ActivePodQuantityResponseVO;
import com.aizuda.easy.retry.server.web.model.response.DispatchQuantityResponseVO;
import com.aizuda.easy.retry.server.web.model.response.SceneQuantityRankResponseVO;
import com.aizuda.easy.retry.server.web.model.response.ServerNodeResponseVO;
import com.aizuda.easy.retry.server.web.model.response.TaskQuantityResponseVO;
import java.util.List;
@ -23,4 +26,5 @@ public interface DashBoardService {
List<DispatchQuantityResponseVO> lineDispatchQuantity(String groupName, String type, String startTime, String endTime);
PageResult<List<ServerNodeResponseVO>> pods(ServerNodeQueryVO serverNodeQueryVO);
}

View File

@ -0,0 +1,22 @@
package com.aizuda.easy.retry.server.service.convert;
import com.aizuda.easy.retry.server.persistence.mybatis.po.ServerNode;
import com.aizuda.easy.retry.server.web.model.response.ServerNodeResponseVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
* @author www.byteblogs.com
* @date 2023-06-06
* @since 2.0
*/
@Mapper
public interface ServerNodeResponseVOConverter {
ServerNodeResponseVOConverter INSTANCE = Mappers.getMapper(ServerNodeResponseVOConverter.class);
List<ServerNodeResponseVO> toServerNodeResponseVO(List<ServerNode> serverNodes);
}

View File

@ -4,6 +4,10 @@ import com.aizuda.easy.retry.server.persistence.mybatis.mapper.RetryTaskLogMappe
import com.aizuda.easy.retry.server.persistence.mybatis.mapper.ServerNodeMapper;
import com.aizuda.easy.retry.server.persistence.mybatis.po.RetryTaskLog;
import com.aizuda.easy.retry.server.persistence.mybatis.po.ServerNode;
import com.aizuda.easy.retry.server.service.convert.ServerNodeResponseVOConverter;
import com.aizuda.easy.retry.server.web.model.base.PageResult;
import com.aizuda.easy.retry.server.web.model.request.ServerNodeQueryVO;
import com.aizuda.easy.retry.server.web.model.response.ServerNodeResponseVO;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.aizuda.easy.retry.common.core.enums.NodeTypeEnum;
import com.aizuda.easy.retry.common.core.enums.RetryStatusEnum;
@ -13,6 +17,7 @@ import com.aizuda.easy.retry.server.web.model.response.ActivePodQuantityResponse
import com.aizuda.easy.retry.server.web.model.response.DispatchQuantityResponseVO;
import com.aizuda.easy.retry.server.web.model.response.SceneQuantityRankResponseVO;
import com.aizuda.easy.retry.server.web.model.response.TaskQuantityResponseVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -30,6 +35,7 @@ import java.util.stream.Collectors;
/**
* @author: www.byteblogs.com
* @date : 2022-04-22 20:19
* @since 1.0.0
*/
@Service
public class DashBoardServiceImpl implements DashBoardService {
@ -142,4 +148,19 @@ public class DashBoardServiceImpl implements DashBoardService {
return totalDispatchQuantityResponseList.stream().sorted(Comparator.comparing(DispatchQuantityResponseVO::getCreateDt)).collect(Collectors.toList());
}
@Override
public PageResult<List<ServerNodeResponseVO>> pods(ServerNodeQueryVO queryVO) {
PageDTO<ServerNode> pageDTO = new PageDTO<>(queryVO.getPage(), queryVO.getSize());
LambdaQueryWrapper<ServerNode> serverNodeLambdaQueryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(queryVO.getGroupName())) {
serverNodeLambdaQueryWrapper.eq(ServerNode::getGroupName, queryVO.getGroupName());
}
PageDTO<ServerNode> serverNodePageDTO = serverNodeMapper.selectPage(pageDTO, serverNodeLambdaQueryWrapper.orderByDesc(ServerNode::getNodeType));
List<ServerNodeResponseVO> serverNodeResponseVOS = ServerNodeResponseVOConverter.INSTANCE.toServerNodeResponseVO(serverNodePageDTO.getRecords());
return new PageResult<>(serverNodePageDTO, serverNodeResponseVOS);
}
}

View File

@ -1,10 +1,13 @@
package com.aizuda.easy.retry.server.web.controller;
import com.aizuda.easy.retry.server.service.DashBoardService;
import com.aizuda.easy.retry.server.web.model.base.PageResult;
import com.aizuda.easy.retry.server.web.model.request.ServerNodeQueryVO;
import com.aizuda.easy.retry.server.web.model.response.ActivePodQuantityResponseVO;
import com.aizuda.easy.retry.server.web.model.response.DispatchQuantityResponseVO;
import com.aizuda.easy.retry.server.web.model.response.SceneQuantityRankResponseVO;
import com.aizuda.easy.retry.server.web.annotation.LoginRequired;
import com.aizuda.easy.retry.server.web.model.response.ServerNodeResponseVO;
import com.aizuda.easy.retry.server.web.model.response.TaskQuantityResponseVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -55,7 +58,7 @@ public class DashBoardController {
return dashBoardService.rankSceneQuantity(groupName, type, startTime, endTime);
}
// @LoginRequired
@LoginRequired
@GetMapping("/dispatch/line")
public List<DispatchQuantityResponseVO> lineDispatchQuantity(@RequestParam(value = "groupName", required = false)
String groupName,
@ -65,4 +68,12 @@ public class DashBoardController {
) {
return dashBoardService.lineDispatchQuantity(groupName, type, startTime, endTime);
}
@LoginRequired
@GetMapping("/pods")
public PageResult<List<ServerNodeResponseVO>> pods(ServerNodeQueryVO serverNodeQueryVO) {
return dashBoardService.pods(serverNodeQueryVO);
}
}

View File

@ -0,0 +1,19 @@
package com.aizuda.easy.retry.server.web.model.request;
import com.aizuda.easy.retry.server.web.model.base.BaseQueryVO;
import lombok.Data;
import org.hibernate.validator.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* @author: www.byteblogs.com
* @date : 2021-11-22 13:45
*/
@Data
public class ServerNodeQueryVO extends BaseQueryVO {
private String groupName;
}

View File

@ -0,0 +1,32 @@
package com.aizuda.easy.retry.server.web.model.response;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @author www.byteblogs.com
* @date 2023-06-06
* @since 2.0
*/
@Data
public class ServerNodeResponseVO {
private Long id;
private String groupName;
private String hostId;
private String hostIp;
private Integer hostPort;
private Integer nodeType;
private String contextPath;
private LocalDateTime createDt;
private LocalDateTime updateDt;
}

View File

@ -1 +0,0 @@
.extra-wrapper[data-v-1a7e7946]{line-height:55px;padding-right:24px}.extra-wrapper .extra-item[data-v-1a7e7946]{display:inline-block;margin-right:24px}.extra-wrapper .extra-item a[data-v-1a7e7946]{margin-left:24px}.antd-pro-pages-dashboard-analysis-twoColLayout[data-v-1a7e7946]{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;display:block;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.antd-pro-pages-dashboard-analysis-salesCard[data-v-1a7e7946]{height:calc(100% - 24px)}.antd-pro-pages-dashboard-analysis-salesCard[data-v-1a7e7946] .ant-card-head{position:relative}.dashboard-analysis-iconGroup i[data-v-1a7e7946]{margin-left:16px;color:rgba(0,0,0,.45);cursor:pointer;-webkit-transition:color .32s;transition:color .32s;color:#000}.analysis-salesTypeRadio[data-v-1a7e7946]{position:absolute;right:54px;bottom:12px}

View File

@ -0,0 +1 @@
.extra-wrapper[data-v-5fda951d]{line-height:55px;padding-right:24px}.extra-wrapper .extra-item[data-v-5fda951d]{display:inline-block;margin-right:24px}.extra-wrapper .extra-item a[data-v-5fda951d]{margin-left:24px}.antd-pro-pages-dashboard-analysis-twoColLayout[data-v-5fda951d]{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;display:block;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.antd-pro-pages-dashboard-analysis-salesCard[data-v-5fda951d]{height:calc(100% - 24px)}.antd-pro-pages-dashboard-analysis-salesCard[data-v-5fda951d] .ant-card-head{position:relative}.dashboard-analysis-iconGroup i[data-v-5fda951d]{margin-left:16px;color:rgba(0,0,0,.45);cursor:pointer;-webkit-transition:color .32s;transition:color .32s;color:#000}.analysis-salesTypeRadio[data-v-5fda951d]{position:absolute;right:54px;bottom:12px}

View File

@ -1 +1 @@
<!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/logo.png"><title>Easy-Retry</title><style>.first-loading-wrp{display:flex;justify-content:center;align-items:center;flex-direction:column;min-height:420px;height:100%}.first-loading-wrp>h1{font-size:128px}.first-loading-wrp .loading-wrp{padding:98px;display:flex;justify-content:center;align-items:center}.dot{animation:antRotate 1.2s infinite linear;transform:rotate(45deg);position:relative;display:inline-block;font-size:32px;width:32px;height:32px;box-sizing:border-box}.dot i{width:14px;height:14px;position:absolute;display:block;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.dot i:nth-child(1){top:0;left:0}.dot i:nth-child(2){top:0;right:0;-webkit-animation-delay:.4s;animation-delay:.4s}.dot i:nth-child(3){right:0;bottom:0;-webkit-animation-delay:.8s;animation-delay:.8s}.dot i:nth-child(4){bottom:0;left:0;-webkit-animation-delay:1.2s;animation-delay:1.2s}@keyframes antRotate{to{-webkit-transform:rotate(405deg);transform:rotate(405deg)}}@-webkit-keyframes antRotate{to{-webkit-transform:rotate(405deg);transform:rotate(405deg)}}@keyframes antSpinMove{to{opacity:1}}@-webkit-keyframes antSpinMove{to{opacity:1}}</style><link href="/css/chunk-758b2aa4.1c9c785f.css" rel="prefetch"><link href="/css/chunk-77aaac2a.99cbbcce.css" rel="prefetch"><link href="/css/chunk-ff9025ec.cd4961ff.css" rel="prefetch"><link href="/css/user.6ccd4506.css" rel="prefetch"><link href="/js/chunk-2d0a4079.211a0ec0.js" rel="prefetch"><link href="/js/chunk-2d0b7230.744dfabb.js" rel="prefetch"><link href="/js/chunk-2d0c8f97.cc136224.js" rel="prefetch"><link href="/js/chunk-2d0d43f4.80553fcb.js" rel="prefetch"><link href="/js/chunk-2d0f085f.f21e1806.js" rel="prefetch"><link href="/js/chunk-2d21a08f.6cbb4cc2.js" rel="prefetch"><link href="/js/chunk-2d228eef.9de243f8.js" rel="prefetch"><link href="/js/chunk-40597980.de54e7d4.js" rel="prefetch"><link href="/js/chunk-732da7b5.fd3e2a30.js" rel="prefetch"><link href="/js/chunk-758b2aa4.25d8d22f.js" rel="prefetch"><link href="/js/chunk-77aaac2a.dfff8cf0.js" rel="prefetch"><link href="/js/chunk-ff9025ec.a77794ad.js" rel="prefetch"><link href="/js/fail.026754f1.js" rel="prefetch"><link href="/js/lang-zh-CN-account-settings.f8f25eaf.js" rel="prefetch"><link href="/js/lang-zh-CN-account.c724e71d.js" rel="prefetch"><link href="/js/lang-zh-CN-dashboard-analysis.d7cabd65.js" rel="prefetch"><link href="/js/lang-zh-CN-dashboard.5180154b.js" rel="prefetch"><link href="/js/lang-zh-CN-form-basicForm.ff3088ac.js" rel="prefetch"><link href="/js/lang-zh-CN-form.cc39e450.js" rel="prefetch"><link href="/js/lang-zh-CN-global.bf0df5c8.js" rel="prefetch"><link href="/js/lang-zh-CN-menu.25425a62.js" rel="prefetch"><link href="/js/lang-zh-CN-result-fail.232762aa.js" rel="prefetch"><link href="/js/lang-zh-CN-result-success.3519c60c.js" rel="prefetch"><link href="/js/lang-zh-CN-result.32c5cf1c.js" rel="prefetch"><link href="/js/lang-zh-CN-setting.8c2ce690.js" rel="prefetch"><link href="/js/lang-zh-CN-user.81513cba.js" rel="prefetch"><link href="/js/lang-zh-CN.3dfa92aa.js" rel="prefetch"><link href="/js/user.b5997f11.js" rel="prefetch"><link href="/css/app.b0a9877f.css" rel="preload" as="style"><link href="/css/chunk-vendors.5be6e05a.css" rel="preload" as="style"><link href="/js/app.1239f620.js" rel="preload" as="script"><link href="/js/chunk-vendors.87c1e94d.js" rel="preload" as="script"><link href="/css/chunk-vendors.5be6e05a.css" rel="stylesheet"><link href="/css/app.b0a9877f.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but vue-antd-pro doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"><div class="first-loading-wrp"><h2>Easy-Retry</h2><div class="loading-wrp"><span class="dot dot-spin"><i></i><i></i><i></i><i></i></span></div><div style="display: flex; justify-content: center; align-items: center;">分布式重试服务平台</div></div></div><script src="//cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.min.js"></script><script src="//cdn.jsdelivr.net/npm/vue-router@3.5.1/dist/vue-router.min.js"></script><script src="//cdn.jsdelivr.net/npm/vuex@3.1.1/dist/vuex.min.js"></script><script src="//cdn.jsdelivr.net/npm/axios@0.21.1/dist/axios.min.js"></script><script src="/js/chunk-vendors.87c1e94d.js"></script><script src="/js/app.1239f620.js"></script></body></html>
<!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/logo.png"><title>Easy-Retry</title><style>.first-loading-wrp{display:flex;justify-content:center;align-items:center;flex-direction:column;min-height:420px;height:100%}.first-loading-wrp>h1{font-size:128px}.first-loading-wrp .loading-wrp{padding:98px;display:flex;justify-content:center;align-items:center}.dot{animation:antRotate 1.2s infinite linear;transform:rotate(45deg);position:relative;display:inline-block;font-size:32px;width:32px;height:32px;box-sizing:border-box}.dot i{width:14px;height:14px;position:absolute;display:block;background-color:#1890ff;border-radius:100%;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:antSpinMove 1s infinite linear alternate}.dot i:nth-child(1){top:0;left:0}.dot i:nth-child(2){top:0;right:0;-webkit-animation-delay:.4s;animation-delay:.4s}.dot i:nth-child(3){right:0;bottom:0;-webkit-animation-delay:.8s;animation-delay:.8s}.dot i:nth-child(4){bottom:0;left:0;-webkit-animation-delay:1.2s;animation-delay:1.2s}@keyframes antRotate{to{-webkit-transform:rotate(405deg);transform:rotate(405deg)}}@-webkit-keyframes antRotate{to{-webkit-transform:rotate(405deg);transform:rotate(405deg)}}@keyframes antSpinMove{to{opacity:1}}@-webkit-keyframes antSpinMove{to{opacity:1}}</style><link href="/css/chunk-758b2aa4.1c9c785f.css" rel="prefetch"><link href="/css/chunk-a8f20a8c.2f7a4940.css" rel="prefetch"><link href="/css/chunk-ff9025ec.cd4961ff.css" rel="prefetch"><link href="/css/user.6ccd4506.css" rel="prefetch"><link href="/js/chunk-2d0a4079.7da5e6fb.js" rel="prefetch"><link href="/js/chunk-2d0b7230.ca65cb78.js" rel="prefetch"><link href="/js/chunk-2d0c8f97.1c69a4f0.js" rel="prefetch"><link href="/js/chunk-2d0d43f4.be3ac740.js" rel="prefetch"><link href="/js/chunk-2d0f085f.ac6f6fdb.js" rel="prefetch"><link href="/js/chunk-2d21a08f.df1da97c.js" rel="prefetch"><link href="/js/chunk-2d228eef.2cc40ced.js" rel="prefetch"><link href="/js/chunk-40597980.9f66b135.js" rel="prefetch"><link href="/js/chunk-732da7b5.6755e2c5.js" rel="prefetch"><link href="/js/chunk-74bac939.d2ee8385.js" rel="prefetch"><link href="/js/chunk-758b2aa4.07edbf7a.js" rel="prefetch"><link href="/js/chunk-a8f20a8c.318ab821.js" rel="prefetch"><link href="/js/chunk-ff9025ec.b68686e6.js" rel="prefetch"><link href="/js/fail.813edc07.js" rel="prefetch"><link href="/js/lang-zh-CN-account-settings.f8f25eaf.js" rel="prefetch"><link href="/js/lang-zh-CN-account.f7a734c3.js" rel="prefetch"><link href="/js/lang-zh-CN-dashboard-analysis.d7cabd65.js" rel="prefetch"><link href="/js/lang-zh-CN-dashboard.ffd6ecbd.js" rel="prefetch"><link href="/js/lang-zh-CN-form-basicForm.ff3088ac.js" rel="prefetch"><link href="/js/lang-zh-CN-form.39cd9999.js" rel="prefetch"><link href="/js/lang-zh-CN-global.bf0df5c8.js" rel="prefetch"><link href="/js/lang-zh-CN-menu.25425a62.js" rel="prefetch"><link href="/js/lang-zh-CN-result-fail.232762aa.js" rel="prefetch"><link href="/js/lang-zh-CN-result-success.3519c60c.js" rel="prefetch"><link href="/js/lang-zh-CN-result.b3df3bc6.js" rel="prefetch"><link href="/js/lang-zh-CN-setting.8c2ce690.js" rel="prefetch"><link href="/js/lang-zh-CN-user.81513cba.js" rel="prefetch"><link href="/js/lang-zh-CN.6ae67127.js" rel="prefetch"><link href="/js/user.214c5328.js" rel="prefetch"><link href="/css/app.37a20ada.css" rel="preload" as="style"><link href="/css/chunk-vendors.5be6e05a.css" rel="preload" as="style"><link href="/js/app.71831fdb.js" rel="preload" as="script"><link href="/js/chunk-vendors.b8c3b6d4.js" rel="preload" as="script"><link href="/css/chunk-vendors.5be6e05a.css" rel="stylesheet"><link href="/css/app.37a20ada.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but vue-antd-pro doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"><div class="first-loading-wrp"><h2>Easy-Retry</h2><div class="loading-wrp"><span class="dot dot-spin"><i></i><i></i><i></i><i></i></span></div><div style="display: flex; justify-content: center; align-items: center;">分布式重试服务平台</div></div></div><script src="//cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.min.js"></script><script src="//cdn.jsdelivr.net/npm/vue-router@3.5.1/dist/vue-router.min.js"></script><script src="//cdn.jsdelivr.net/npm/vuex@3.1.1/dist/vuex.min.js"></script><script src="//cdn.jsdelivr.net/npm/axios@0.21.1/dist/axios.min.js"></script><script src="/js/chunk-vendors.b8c3b6d4.js"></script><script src="/js/app.71831fdb.js"></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0a4079"],{"0564":function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e._self._c;return t("a-card",{attrs:{bordered:!1}},[t("div",{staticClass:"table-page-search-wrapper"},[e.showSearch?t("a-form",{attrs:{layout:"inline"}},[t("a-row",{attrs:{gutter:48}},[t("a-col",{attrs:{md:8,sm:24}},[t("a-form-item",{attrs:{label:"组名称"}},[t("a-select",{attrs:{placeholder:"请输入组名称",allowClear:""},on:{change:function(t){return e.handleChange(t)}},model:{value:e.queryParam.groupName,callback:function(t){e.$set(e.queryParam,"groupName",t)},expression:"queryParam.groupName"}},e._l(e.groupNameList,(function(a){return t("a-select-option",{key:a,attrs:{value:a}},[e._v(e._s(a))])})),1)],1)],1),t("a-col",{attrs:{md:8,sm:24}},[t("a-form-item",{attrs:{label:"场景名称"}},[t("a-select",{attrs:{placeholder:"请选择场景名称",allowClear:""},model:{value:e.queryParam.sceneName,callback:function(t){e.$set(e.queryParam,"sceneName",t)},expression:"queryParam.sceneName"}},e._l(e.sceneList,(function(a){return t("a-select-option",{key:a.sceneName,attrs:{value:a.sceneName}},[e._v(" "+e._s(a.sceneName))])})),1)],1)],1),e.advanced?[t("a-col",{attrs:{md:8,sm:24}},[t("a-form-item",{attrs:{label:"业务编号"}},[t("a-input",{attrs:{placeholder:"请输入业务编号",allowClear:""},model:{value:e.queryParam.bizNo,callback:function(t){e.$set(e.queryParam,"bizNo",t)},expression:"queryParam.bizNo"}})],1)],1),t("a-col",{attrs:{md:8,sm:24}},[t("a-form-item",{attrs:{label:"业务id"}},[t("a-input",{attrs:{placeholder:"请输入业务id",allowClear:""},model:{value:e.queryParam.idempotentId,callback:function(t){e.$set(e.queryParam,"idempotentId",t)},expression:"queryParam.idempotentId"}})],1)],1)]:e._e(),t("a-col",{attrs:{md:e.advanced?24:8,sm:24}},[t("span",{staticClass:"table-page-search-submitButtons",style:e.advanced&&{float:"right",overflow:"hidden"}||{}},[t("a-button",{attrs:{type:"primary"},on:{click:function(t){return e.$refs.table.refresh(!0)}}},[e._v("查询")]),t("a-button",{staticStyle:{"margin-left":"8px"},on:{click:function(){return e.queryParam={}}}},[e._v("重置")]),t("a",{staticStyle:{"margin-left":"8px"},on:{click:e.toggleAdvanced}},[e._v(" "+e._s(e.advanced?"收起":"展开")+" "),t("a-icon",{attrs:{type:e.advanced?"up":"down"}})],1)],1)])],2)],1):e._e()],1),t("s-table",{ref:"table",attrs:{size:"default",rowKey:"key",columns:e.columns,data:e.loadData,alert:e.options.alert,rowSelection:e.options.rowSelection,scroll:{x:2e3}},scopedSlots:e._u([{key:"serial",fn:function(a,n,r){return t("span",{},[e._v(" "+e._s(r+1)+" ")])}},{key:"action",fn:function(a,n){return t("span",{},[[t("a",{on:{click:function(t){return e.handleInfo(n)}}},[e._v("详情")])]],2)}}])})],1)},r=[],o=a("261e"),s=a("27e3"),i=a("0fea"),l=a("2af9"),c=a("c1df"),u=a.n(c),d={name:"RetryTaskLog",components:{AInput:s["a"],ATextarea:o["a"],STable:l["j"]},props:{showSearch:{type:Boolean,default:!0}},data:function(){var e=this;return{record:"",mdl:{},advanced:!1,queryParam:{},retryStatus:{0:"重试中",1:"重试完成",2:"最大次数"},columns:[{title:"#",scopedSlots:{customRender:"serial"},width:"5%"},{title:"uniqueId",dataIndex:"uniqueId",width:"5%"},{title:"组名称",dataIndex:"groupName",ellipsis:!0,width:"10%"},{title:"场景id",dataIndex:"sceneName",ellipsis:!0,width:"10%"},{title:"幂等id",dataIndex:"idempotentId",width:"10%"},{title:"业务编号",dataIndex:"bizNo",ellipsis:!0,width:"10%"},{title:"重试状态",dataIndex:"retryStatus",customRender:function(t){return e.retryStatus[t]},width:"5%"},{title:"失败原因",dataIndex:"errorMessage",width:"25%"},{title:"触发时间",dataIndex:"createDt",sorter:!0,customRender:function(e){return u()(e).format("YYYY-MM-DD HH:mm:ss")},ellipsis:!0},{title:"操作",dataIndex:"action",fixed:"right",width:"150px",scopedSlots:{customRender:"action"}}],loadData:function(t){return""!==e.groupName&&""!==e.uniqueId&&(t["groupName"]=e.groupName,t["uniqueId"]=e.uniqueId),Object(i["p"])(Object.assign(t,e.queryParam)).then((function(e){return e}))},selectedRowKeys:[],selectedRows:[],options:{alert:{show:!0,clear:function(){e.selectedRowKeys=[]}},rowSelection:{selectedRowKeys:this.selectedRowKeys,onChange:this.onSelectChange}},optionAlertShow:!1,groupNameList:[],sceneList:[],groupName:"",uniqueId:""}},created:function(){var e=this;Object(i["g"])().then((function(t){e.groupNameList=t.data}))},methods:{handleNew:function(){this.$router.push("/form/basic-config")},refreshTable:function(e){this.groupName=e.groupName,this.uniqueId=e.uniqueId,this.$refs.table.refresh(!0)},handleChange:function(e){var t=this;Object(i["r"])({groupName:e}).then((function(e){t.sceneList=e.data}))},toggleAdvanced:function(){this.advanced=!this.advanced},handleInfo:function(e){this.$router.push({path:"/retry-log/info",query:{id:e.id}})}}},m=d,p=a("2877"),f=Object(p["a"])(m,n,r,!1,null,null,null);t["default"]=f.exports}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c8f97"],{"56bb":function(e,t,r){"use strict";r.r(t);r("b0c0");var a=function(){var e=this,t=e._self._c;return t("div",[t("page-header-wrapper",{staticStyle:{margin:"-24px -1px 0"},on:{back:function(){return e.$router.go(-1)}}},[t("div")]),t("a-card",{attrs:{bordered:!1}},[t("a-descriptions",{attrs:{title:"",bordered:""}},[t("a-descriptions-item",{attrs:{label:"组名称"}},[e._v(" "+e._s(e.retryDealLetterInfo.groupName)+" ")]),t("a-descriptions-item",{attrs:{label:"场景名称"}},[e._v(" "+e._s(e.retryDealLetterInfo.sceneName)+" ")]),t("a-descriptions-item",{attrs:{label:"业务id",span:"2"}},[e._v(" "+e._s(e.retryDealLetterInfo.idempotentId)+" ")]),t("a-descriptions-item",{attrs:{label:"业务编号"}},[e._v(" "+e._s(e.retryDealLetterInfo.bizNo)+" ")]),t("a-descriptions-item",{attrs:{label:"下次触发时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.nextTriggerAt))+" ")]),t("a-descriptions-item",{attrs:{label:"数据类型"}},[t("a-tag",{attrs:{color:e.taskType[e.retryDealLetterInfo.taskType].color}},[e._v(" "+e._s(e.taskType[e.retryDealLetterInfo.taskType].name)+" ")])],1),t("a-descriptions-item",{attrs:{label:"创建时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.createDt))+" ")]),t("a-descriptions-item",{attrs:{label:"更新时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.updateDt))+" ")]),t("a-descriptions-item",{attrs:{label:"执行器名称",span:"2"}},[e._v(" "+e._s(e.retryDealLetterInfo.executorName)+" ")]),t("a-descriptions-item",{attrs:{label:"扩展参数",span:"3"}},[e._v(" "+e._s(e.retryDealLetterInfo.bizNo)+" ")]),t("a-descriptions-item",{attrs:{label:"参数",span:"3"}},[e._v(" "+e._s(e.retryDealLetterInfo.argsStr)+" ")])],1)],1)],1)},s=[],n=r("0fea"),o=r("c1df"),i=r.n(o),l={name:"RetryDeadLetterInfo",data:function(){return{retryDealLetterInfo:{},taskType:{1:{name:"重试数据",color:"#d06892"},2:{name:"回调数据",color:"#f5a22d"}}}},created:function(){var e=this,t=this.$route.query.id,r=this.$route.query.groupName;t&&r&&Object(n["l"])(t,{groupName:r}).then((function(t){e.retryDealLetterInfo=t.data}))},methods:{parseDate:function(e){return i()(e).format("YYYY-MM-DD HH:mm:ss")}}},p=l,c=r("2877"),d=Object(c["a"])(p,a,s,!1,null,"64fa5dd2",null);t["default"]=d.exports}}]);

View File

@ -1 +0,0 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c8f97"],{"56bb":function(e,t,r){"use strict";r.r(t);var a=function(){var e=this,t=e._self._c;return t("div",[t("page-header-wrapper",[t("a-card",{attrs:{bordered:!1}},[t("a-descriptions",{attrs:{title:""}},[t("a-descriptions-item",{attrs:{label:"组名称"}},[e._v(" "+e._s(e.retryDealLetterInfo.groupName)+" ")]),t("a-descriptions-item",{attrs:{label:"场景名称"}},[e._v(" "+e._s(e.retryDealLetterInfo.sceneName)+" ")]),t("a-descriptions-item",{attrs:{label:"业务id",span:"2"}},[e._v(" "+e._s(e.retryDealLetterInfo.idempotentId)+" ")]),t("a-descriptions-item",{attrs:{label:"业务编号"}},[e._v(" "+e._s(e.retryDealLetterInfo.bizNo)+" ")]),t("a-descriptions-item",{attrs:{label:"下次触发时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.nextTriggerAt))+" ")]),t("a-descriptions-item",{attrs:{label:"创建时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.createDt))+" ")]),t("a-descriptions-item",{attrs:{label:"更新时间"}},[e._v(" "+e._s(e.parseDate(e.retryDealLetterInfo.updateDt))+" ")]),t("a-descriptions-item",{attrs:{label:"执行器名称",span:"2"}},[e._v(" "+e._s(e.retryDealLetterInfo.executorName)+" ")]),t("a-descriptions-item",{attrs:{label:"扩展参数",span:"3"}},[e._v(" "+e._s(e.retryDealLetterInfo.bizNo)+" ")]),t("a-descriptions-item",{attrs:{label:"参数",span:"3"}},[e._v(" "+e._s(e.retryDealLetterInfo.argsStr)+" ")])],1)],1)],1)],1)},s=[],n=r("0fea"),i=r("c1df"),o=r.n(i),l={name:"RetryDeadLetterInfo",data:function(){return{retryDealLetterInfo:{},retryStatus:{0:"重试中",1:"重试完成",2:"最大次数"}}},created:function(){var e=this,t=this.$route.query.id,r=this.$route.query.groupName;t&&r&&Object(n["l"])(t,{groupName:r}).then((function(t){e.retryDealLetterInfo=t.data}))},methods:{parseDate:function(e){return o()(e).format("YYYY-MM-DD HH:mm:ss")}}},p=l,c=r("2877"),d=Object(c["a"])(p,a,s,!1,null,"a032b4be",null);t["default"]=d.exports}}]);

View File

@ -1 +0,0 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0d43f4"],{"5fe2":function(t,e,r){"use strict";r.r(e);var a=function(){var t=this,e=t._self._c;return e("div",[e("page-header-wrapper",{staticStyle:{margin:"-24px -1px 0"},on:{back:function(){return t.$router.go(-1)}}},[e("div")]),e("a-card",{attrs:{bordered:!1}},[e("a-descriptions",{attrs:{title:"",bordered:""}},[e("a-descriptions-item",{attrs:{label:"组名称"}},[t._v(" "+t._s(t.retryInfo.groupName)+" ")]),e("a-descriptions-item",{attrs:{label:"场景名称"}},[t._v(" "+t._s(t.retryInfo.sceneName)+" ")]),e("a-descriptions-item",{attrs:{label:"唯一id"}},[t._v(" "+t._s(t.retryInfo.uniqueId)+" ")]),e("a-descriptions-item",{attrs:{label:"幂等id",span:2}},[t._v(" "+t._s(t.retryInfo.idempotentId)+" ")]),e("a-descriptions-item",{attrs:{label:"业务编号"}},[t._v(" "+t._s(t.retryInfo.bizNo)+" ")]),e("a-descriptions-item",{attrs:{label:"下次触发时间"}},[t._v(" "+t._s(t.parseDate(t.retryInfo.nextTriggerAt))+" ")]),e("a-descriptions-item",{attrs:{label:"执行时间"}},[t._v(" "+t._s(t.parseDate(t.retryInfo.createDt))+" ")]),e("a-descriptions-item",{attrs:{label:"当前重试状态"}},[t._v(" "+t._s(t.retryStatus[t.retryInfo.retryStatus])+" ")]),e("a-descriptions-item",{attrs:{label:"执行器名称",span:3}},[t._v(" "+t._s(t.retryInfo.executorName)+" ")]),e("a-descriptions-item",{attrs:{label:"参数",span:3}},[t._v(" "+t._s(t.retryInfo.argsStr)+" ")]),e("a-descriptions-item",{attrs:{label:"失败原因",span:3}},[t._v(" "+t._s(t.retryInfo.errorMessage)+" ")]),e("a-descriptions-item",{attrs:{label:"扩展参数",span:3}},[t._v(" "+t._s(t.retryInfo.extAttrs)+" ")])],1)],1)],1)},s=[],n=r("0fea"),i=r("c1df"),o=r.n(i),d={name:"RetryLogInfo",data:function(){return{retryInfo:{},retryStatus:{0:"重试中",1:"重试完成",2:"最大次数"}}},created:function(){var t=this,e=this.$route.query.id;e&&Object(n["o"])(e).then((function(e){t.retryInfo=e.data}))},methods:{parseDate:function(t){return o()(t).format("YYYY-MM-DD HH:mm:ss")}}},c=d,p=r("2877"),l=Object(p["a"])(c,a,s,!1,null,"517a0dc3",null);e["default"]=l.exports}}]);

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0d43f4"],{"5fe2":function(t,e,r){"use strict";r.r(e);r("b0c0");var a=function(){var t=this,e=t._self._c;return e("div",[e("page-header-wrapper",{staticStyle:{margin:"-24px -1px 0"},on:{back:function(){return t.$router.go(-1)}}},[e("div")]),e("a-card",{attrs:{bordered:!1}},[e("a-descriptions",{attrs:{title:"",bordered:""}},[e("a-descriptions-item",{attrs:{label:"组名称"}},[t._v(" "+t._s(t.retryInfo.groupName)+" ")]),e("a-descriptions-item",{attrs:{label:"场景名称"}},[t._v(" "+t._s(t.retryInfo.sceneName)+" ")]),e("a-descriptions-item",{attrs:{label:"唯一id"}},[t._v(" "+t._s(t.retryInfo.uniqueId)+" ")]),e("a-descriptions-item",{attrs:{label:"幂等id",span:2}},[t._v(" "+t._s(t.retryInfo.idempotentId)+" ")]),e("a-descriptions-item",{attrs:{label:"业务编号"}},[t._v(" "+t._s(t.retryInfo.bizNo)+" ")]),e("a-descriptions-item",{attrs:{label:"下次触发时间"}},[t._v(" "+t._s(t.parseDate(t.retryInfo.nextTriggerAt))+" ")]),e("a-descriptions-item",{attrs:{label:"执行时间"}},[t._v(" "+t._s(t.parseDate(t.retryInfo.createDt))+" ")]),e("a-descriptions-item",{attrs:{label:"当前重试状态 | 数据类型"}},[e("a-tag",{attrs:{color:"red"}},[t._v(" "+t._s(t.retryStatus[t.retryInfo.retryStatus])+" ")]),e("a-divider",{attrs:{type:"vertical"}}),e("a-tag",{attrs:{color:t.taskType[t.retryInfo.taskType].color}},[t._v(" "+t._s(t.taskType[t.retryInfo.taskType].name)+" ")])],1),e("a-descriptions-item",{attrs:{label:"执行器名称",span:3}},[t._v(" "+t._s(t.retryInfo.executorName)+" ")]),e("a-descriptions-item",{attrs:{label:"参数",span:3}},[t._v(" "+t._s(t.retryInfo.argsStr)+" ")]),e("a-descriptions-item",{attrs:{label:"失败原因",span:3}},[t._v(" "+t._s(t.retryInfo.errorMessage)+" ")]),e("a-descriptions-item",{attrs:{label:"扩展参数",span:3}},[t._v(" "+t._s(t.retryInfo.extAttrs)+" ")])],1)],1)],1)},s=[],n=r("0fea"),o=r("c1df"),i=r.n(o),c={name:"RetryLogInfo",data:function(){return{retryInfo:{},retryStatus:{0:"处理中",1:"处理成功",2:"最大次数"},taskType:{1:{name:"重试数据",color:"#d06892"},2:{name:"回调数据",color:"#f5a22d"}}}},created:function(){var t=this,e=this.$route.query.id;e&&Object(n["o"])(e).then((function(e){t.retryInfo=e.data}))},methods:{parseDate:function(t){return i()(t).format("YYYY-MM-DD HH:mm:ss")}}},d=c,p=r("2877"),l=Object(p["a"])(d,a,s,!1,null,"04ff55b8",null);e["default"]=l.exports}}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21a08f"],{ba93:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t._self._c;return e("a-card",{attrs:{bordered:!1}},[e("div",{staticClass:"table-page-search-wrapper"},[e("a-form",{attrs:{layout:"inline"}},[e("a-row",{attrs:{gutter:48}},[[e("a-col",{attrs:{md:8,sm:24}},[e("a-form-item",{attrs:{label:"组名称"}},[e("a-input",{attrs:{placeholder:"请输入组名称",allowClear:""},model:{value:t.queryParam.groupName,callback:function(e){t.$set(t.queryParam,"groupName",e)},expression:"queryParam.groupName"}})],1)],1)],e("a-col",{attrs:{md:t.advanced?24:8,sm:24}},[e("span",{staticClass:"table-page-search-submitButtons",style:t.advanced&&{float:"right",overflow:"hidden"}||{}},[e("a-button",{attrs:{type:"primary"},on:{click:function(e){return t.$refs.table.refresh(!0)}}},[t._v("查询")]),e("a-button",{staticStyle:{"margin-left":"8px"},on:{click:function(){return t.queryParam={}}}},[t._v("重置")])],1)])],2)],1)],1),e("div",{staticClass:"table-operator"},[t.$auth("group.add")?e("a-button",{attrs:{type:"primary",icon:"plus"},on:{click:function(e){return t.handleNew()}}},[t._v("新建")]):t._e()],1),e("s-table",{ref:"table",attrs:{size:"default",rowKey:"key",columns:t.columns,data:t.loadData,alert:t.options.alert,rowSelection:t.options.rowSelection,scroll:{x:1600}},scopedSlots:t._u([{key:"serial",fn:function(a,n,r){return e("span",{},[t._v(" "+t._s(r+1)+" ")])}},{key:"groupStatus",fn:function(a){return e("span",{},[t._v(" "+t._s(0===a?"停用":"启用")+" ")])}},{key:"initScene",fn:function(a){return e("span",{},[t._v(" "+t._s(0===a?"否":"是")+" ")])}},{key:"action",fn:function(a,n){return e("span",{},[[e("a",{on:{click:function(e){return t.handleEdit(n)}}},[t._v("编辑")]),e("a-divider",{attrs:{type:"vertical"}}),e("a",{on:{click:function(e){return t.handleEditStatus(n)}}},[t._v(t._s(1===n.groupStatus?"停用":"启用"))])]],2)}}])})],1)},r=[],o=(a("d3b7"),a("25f0"),a("27e3")),s=a("0fea"),i=a("2af9"),u=a("c1df"),c=a.n(u),d={name:"TableListWrapper",components:{AInput:o["a"],STable:i["j"]},data:function(){var t=this;return{advanced:!1,queryParam:{},columns:[{title:"#",scopedSlots:{customRender:"serial"}},{title:"名称",dataIndex:"groupName"},{title:"状态",dataIndex:"groupStatus",scopedSlots:{customRender:"groupStatus"}},{title:"路由策略",dataIndex:"routeKey",customRender:function(e){return t.routeKey[e]}},{title:"版本",dataIndex:"version"},{title:"分区",dataIndex:"groupPartition",needTotal:!0},{title:"ID生成模式",dataIndex:"idGeneratorModeName"},{title:"初始化场景",dataIndex:"initScene",scopedSlots:{customRender:"initScene"}},{title:"更新时间",dataIndex:"updateDt",sorter:!0,customRender:function(t){return c()(t).format("YYYY-MM-DD HH:mm:ss")}},{title:"描述",dataIndex:"description"},{title:"OnLine机器",dataIndex:"onlinePodList",customRender:function(t){return t.toString()}},{title:"操作",dataIndex:"action",width:"150px",fixed:"right",scopedSlots:{customRender:"action"}}],loadData:function(e){return Object(s["i"])(Object.assign(e,t.queryParam)).then((function(t){return t}))},selectedRowKeys:[],selectedRows:[],options:{alert:{show:!0,clear:function(){t.selectedRowKeys=[]}},rowSelection:{selectedRowKeys:this.selectedRowKeys,onChange:this.onSelectChange}},routeKey:{1:"一致性hash算法",2:"随机算法",3:"最近最久未使用算法"}}},created:function(){},methods:{handleNew:function(){this.$router.push("/basic-config")},handleEdit:function(t){this.$router.push({path:"/basic-config",query:{groupName:t.groupName}})},toggleAdvanced:function(){this.advanced=!this.advanced},handleEditStatus:function(t){var e=this,a=t.id,n=t.groupStatus,r=t.groupName,o=this.$notification;Object(s["z"])({id:a,groupName:r,groupStatus:1===n?0:1}).then((function(t){0===t.status?o["error"]({message:t.message}):(o["success"]({message:t.message}),e.$refs.table.refresh())}))}}},l=d,p=a("2877"),f=Object(p["a"])(l,n,r,!1,null,null,null);e["default"]=f.exports}}]);
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21a08f"],{ba93:function(t,e,a){"use strict";a.r(e);var n=function(){var t=this,e=t._self._c;return e("a-card",{attrs:{bordered:!1}},[e("div",{staticClass:"table-page-search-wrapper"},[e("a-form",{attrs:{layout:"inline"}},[e("a-row",{attrs:{gutter:48}},[[e("a-col",{attrs:{md:8,sm:24}},[e("a-form-item",{attrs:{label:"组名称"}},[e("a-input",{attrs:{placeholder:"请输入组名称",allowClear:""},model:{value:t.queryParam.groupName,callback:function(e){t.$set(t.queryParam,"groupName",e)},expression:"queryParam.groupName"}})],1)],1)],e("a-col",{attrs:{md:t.advanced?24:8,sm:24}},[e("span",{staticClass:"table-page-search-submitButtons",style:t.advanced&&{float:"right",overflow:"hidden"}||{}},[e("a-button",{attrs:{type:"primary"},on:{click:function(e){return t.$refs.table.refresh(!0)}}},[t._v("查询")]),e("a-button",{staticStyle:{"margin-left":"8px"},on:{click:function(){return t.queryParam={}}}},[t._v("重置")])],1)])],2)],1)],1),e("div",{staticClass:"table-operator"},[t.$auth("group.add")?e("a-button",{attrs:{type:"primary",icon:"plus"},on:{click:function(e){return t.handleNew()}}},[t._v("新建")]):t._e()],1),e("s-table",{ref:"table",attrs:{size:"default",rowKey:"key",columns:t.columns,data:t.loadData,alert:t.options.alert,rowSelection:t.options.rowSelection,scroll:{x:1600}},scopedSlots:t._u([{key:"serial",fn:function(a,n,r){return e("span",{},[t._v(" "+t._s(r+1)+" ")])}},{key:"groupStatus",fn:function(a){return e("span",{},[t._v(" "+t._s(0===a?"停用":"启用")+" ")])}},{key:"initScene",fn:function(a){return e("span",{},[t._v(" "+t._s(0===a?"否":"是")+" ")])}},{key:"action",fn:function(a,n){return e("span",{},[[e("a",{on:{click:function(e){return t.handleEdit(n)}}},[t._v("编辑")]),e("a-divider",{attrs:{type:"vertical"}}),e("a",{on:{click:function(e){return t.handleEditStatus(n)}}},[t._v(t._s(1===n.groupStatus?"停用":"启用"))])]],2)}}])})],1)},r=[],o=(a("d3b7"),a("25f0"),a("27e3")),s=a("0fea"),i=a("2af9"),u=a("c1df"),c=a.n(u),d={name:"TableListWrapper",components:{AInput:o["a"],STable:i["j"]},data:function(){var t=this;return{advanced:!1,queryParam:{},columns:[{title:"#",scopedSlots:{customRender:"serial"}},{title:"名称",dataIndex:"groupName"},{title:"状态",dataIndex:"groupStatus",scopedSlots:{customRender:"groupStatus"}},{title:"路由策略",dataIndex:"routeKey",customRender:function(e){return t.routeKey[e]}},{title:"版本",dataIndex:"version"},{title:"分区",dataIndex:"groupPartition",needTotal:!0},{title:"ID生成模式",dataIndex:"idGeneratorModeName"},{title:"初始化场景",dataIndex:"initScene",scopedSlots:{customRender:"initScene"}},{title:"更新时间",dataIndex:"updateDt",sorter:!0,customRender:function(t){return c()(t).format("YYYY-MM-DD HH:mm:ss")}},{title:"描述",dataIndex:"description"},{title:"OnLine机器",dataIndex:"onlinePodList",customRender:function(t){return t.toString()}},{title:"操作",dataIndex:"action",width:"150px",fixed:"right",scopedSlots:{customRender:"action"}}],loadData:function(e){return Object(s["i"])(Object.assign(e,t.queryParam)).then((function(t){return t}))},selectedRowKeys:[],selectedRows:[],options:{alert:{show:!0,clear:function(){t.selectedRowKeys=[]}},rowSelection:{selectedRowKeys:this.selectedRowKeys,onChange:this.onSelectChange}},routeKey:{1:"一致性hash算法",2:"随机算法",3:"最近最久未使用算法"}}},created:function(){},methods:{handleNew:function(){this.$router.push("/basic-config")},handleEdit:function(t){this.$router.push({path:"/basic-config",query:{groupName:t.groupName}})},toggleAdvanced:function(){this.advanced=!this.advanced},handleEditStatus:function(t){var e=this,a=t.id,n=t.groupStatus,r=t.groupName,o=this.$notification;Object(s["A"])({id:a,groupName:r,groupStatus:1===n?0:1}).then((function(t){0===t.status?o["error"]({message:t.message}):(o["success"]({message:t.message}),e.$refs.table.refresh())}))}}},l=d,p=a("2877"),f=Object(p["a"])(l,n,r,!1,null,null,null);e["default"]=f.exports}}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-74bac939"],{"9141d":function(t,e,a){"use strict";a.r(e);var r=function(){var t=this,e=t._self._c;return e("a-card",{attrs:{bordered:!1}},[e("div",{staticClass:"table-page-search-wrapper"},[e("a-form",{attrs:{layout:"inline"}},[e("a-row",{attrs:{gutter:48}},[[e("a-col",{attrs:{md:8,sm:24}},[e("a-form-item",{attrs:{label:"组名称"}},[e("a-input",{attrs:{placeholder:"请输入组名称",allowClear:""},model:{value:t.queryParam.groupName,callback:function(e){t.$set(t.queryParam,"groupName",e)},expression:"queryParam.groupName"}})],1)],1)],e("a-col",{attrs:{md:t.advanced?24:8,sm:24}},[e("span",{staticClass:"table-page-search-submitButtons",style:t.advanced&&{float:"right",overflow:"hidden"}||{}},[e("a-button",{attrs:{type:"primary"},on:{click:function(e){return t.$refs.table.refresh(!0)}}},[t._v("查询")]),e("a-button",{staticStyle:{"margin-left":"8px"},on:{click:function(){return t.queryParam={}}}},[t._v("重置")])],1)])],2)],1)],1),e("s-table",{ref:"table",attrs:{size:"default",rowKey:"key",columns:t.columns,data:t.loadData,alert:t.options.alert,rowSelection:t.options.rowSelection,scroll:{x:1600}},scopedSlots:t._u([{key:"serial",fn:function(a,r,n){return e("span",{},[t._v(" "+t._s(n+1)+" ")])}}])})],1)},n=[],o=a("c1df"),s=a.n(o),l=a("0fea"),c=a("2af9"),d={name:"PodList",components:{STable:c["j"]},data:function(){var t=this;return{advanced:!1,queryParam:{},columns:[{title:"#",scopedSlots:{customRender:"serial"}},{title:"类型",dataIndex:"nodeType",customRender:function(e){return t.nodeType[e]}},{title:"组名称",dataIndex:"groupName"},{title:"PodId",dataIndex:"hostId"},{title:"IP",dataIndex:"hostIp"},{title:"Port",dataIndex:"hostPort"},{title:"路径",dataIndex:"contextPath"},{title:"更新时间",dataIndex:"updateDt",sorter:!0,customRender:function(t){return s()(t).format("YYYY-MM-DD HH:mm:ss")}}],loadData:function(e){return Object(l["x"])(Object.assign(e,t.queryParam)).then((function(t){return t}))},selectedRowKeys:[],selectedRows:[],options:{alert:{show:!0,clear:function(){t.selectedRowKeys=[]}},rowSelection:{selectedRowKeys:this.selectedRowKeys,onChange:this.onSelectChange}},nodeType:{1:"客户端",2:"服务端"}}}},i=d,u=a("2877"),p=Object(u["a"])(i,r,n,!1,null,"301651d2",null);e["default"]=p.exports}}]);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -36,11 +36,20 @@ const api = {
rankSceneQuantity: '/dashboard/scene/rank',
lineDispatchQuantity: '/dashboard/dispatch/line',
totalPartition: '/group/partition',
systemVersion: '/system/version'
systemVersion: '/system/version',
pods: '/dashboard/pods'
}
export default api
export function pods (parameter) {
return request({
url: api.pods,
method: 'get',
params: parameter
})
}
export function systemVersion () {
return request({
url: api.systemVersion,

View File

@ -29,6 +29,12 @@ export const asyncRouterMap = [
name: 'Analysis',
component: () => import('@/views/dashboard/Analysis'),
meta: { title: 'menu.dashboard.analysis', keepAlive: true, permission: ['dashboard'] }
},
{
path: '/dashboard/pods',
name: 'PodList',
component: () => import('@/views/dashboard/PodList'),
meta: { title: 'menu.dashboard.analysis', keepAlive: true, permission: ['dashboard'] }
}
]
},

View File

@ -31,18 +31,20 @@
</chart-card>
</a-col>
<a-col :sm="24" :md="12" :xl="8" :style="{ marginBottom: '24px' }">
<chart-card :loading="loading" title="总在线机器" :total="countActivePodQuantity.total">
<a-tooltip :title="$t('dashboard.analysis.introduce')" slot="action">
<a-icon type="info-circle-o" />
</a-tooltip>
<div>
<span slot="term">客户端</span>
{{ countActivePodQuantity.clientTotal }}
<a-divider type="vertical" />
<span slot="term">服务端</span>
{{ countActivePodQuantity.serverTotal }}
</div>
</chart-card>
<a href="#" @click="jumpPosList">
<chart-card :loading="loading" title="总在线机器" :total="countActivePodQuantity.total">
<a-tooltip :title="$t('dashboard.analysis.introduce')" slot="action" >
<a-icon type="info-circle-o" />
</a-tooltip>
<div>
<span slot="term">客户端</span>
{{ countActivePodQuantity.clientTotal }}
<a-divider type="vertical" />
<span slot="term">服务端</span>
{{ countActivePodQuantity.serverTotal }}
</div>
</chart-card>
</a>
</a-col>
</a-row>
@ -137,6 +139,9 @@ export default {
},
computed: {},
methods: {
jumpPosList () {
this.$router.push({ path: '/dashboard/pods' })
},
dataHandler (type) {
this.$refs.viewChart.getLineDispatchQuantity(this.value, type)
this.getRankSceneQuantity(this.value, type)

View File

@ -0,0 +1,125 @@
<template>
<a-card :bordered="false">
<div class="table-page-search-wrapper">
<a-form layout="inline">
<a-row :gutter="48">
<template>
<a-col :md="8" :sm="24">
<a-form-item label="组名称">
<a-input v-model="queryParam.groupName" placeholder="请输入组名称" allowClear/>
</a-form-item>
</a-col>
</template>
<a-col :md="!advanced && 8 || 24" :sm="24">
<span class="table-page-search-submitButtons" :style="advanced && { float: 'right', overflow: 'hidden' } || {} ">
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
</span>
</a-col>
</a-row>
</a-form>
</div>
<s-table
ref="table"
size="default"
rowKey="key"
:columns="columns"
:data="loadData"
:alert="options.alert"
:rowSelection="options.rowSelection"
:scroll="{ x: 1600 }"
>
<span slot="serial" slot-scope="text, record, index">
{{ index + 1 }}
</span>
</s-table>
</a-card>
</template>
<script>
import moment from 'moment'
import { pods } from '@/api/manage'
import { STable } from '@/components'
export default {
name: 'PodList',
components: {
STable
},
data () {
return {
// /
advanced: false,
//
queryParam: {},
//
columns: [
{
title: '#',
scopedSlots: { customRender: 'serial' }
},
{
title: '类型',
dataIndex: 'nodeType',
customRender: (text) => this.nodeType[text]
},
{
title: '组名称',
dataIndex: 'groupName'
},
{
title: 'PodId',
dataIndex: 'hostId'
},
{
title: 'IP',
dataIndex: 'hostIp'
},
{
title: 'Port',
dataIndex: 'hostPort'
},
{
title: '路径',
dataIndex: 'contextPath'
},
{
title: '更新时间',
dataIndex: 'updateDt',
sorter: true,
customRender: (text) => moment(text).format('YYYY-MM-DD HH:mm:ss')
}
],
// Promise
loadData: parameter => {
console.log('loadData.parameter', parameter)
return pods(Object.assign(parameter, this.queryParam))
.then(res => {
return res
})
},
selectedRowKeys: [],
selectedRows: [],
// custom table alert & rowSelection
options: {
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange
}
},
nodeType: {
'1': '客户端',
'2': '服务端'
}
}
}
}
</script>
<style scoped>
</style>

View File

@ -1,41 +1,49 @@
<template>
<div>
<page-header-wrapper>
<a-card :bordered="false">
<a-descriptions title="">
<a-descriptions-item label="组名称">
{{ retryDealLetterInfo.groupName }}
</a-descriptions-item>
<a-descriptions-item label="场景名称">
{{ retryDealLetterInfo.sceneName }}
</a-descriptions-item>
<a-descriptions-item label="业务id" span="2">
{{ retryDealLetterInfo.idempotentId }}
</a-descriptions-item>
<a-descriptions-item label="业务编号">
{{ retryDealLetterInfo.bizNo }}
</a-descriptions-item>
<a-descriptions-item label="下次触发时间">
{{ parseDate(retryDealLetterInfo.nextTriggerAt) }}
</a-descriptions-item>
<a-descriptions-item label="创建时间">
{{ parseDate( retryDealLetterInfo.createDt) }}
</a-descriptions-item>
<a-descriptions-item label="更新时间">
{{ parseDate(retryDealLetterInfo.updateDt) }}
</a-descriptions-item>
<a-descriptions-item label="执行器名称" span="2">
{{ retryDealLetterInfo.executorName }}
</a-descriptions-item>
<a-descriptions-item label="扩展参数" span="3">
{{ retryDealLetterInfo.bizNo }}
</a-descriptions-item>
<a-descriptions-item label="参数" span="3">
{{ retryDealLetterInfo.argsStr }}
</a-descriptions-item>
</a-descriptions>
</a-card>
<page-header-wrapper @back="() => $router.go(-1)" style="margin: -24px -1px 0">
<div></div>
</page-header-wrapper>
<a-card :bordered="false">
<a-descriptions title="" bordered>
<a-descriptions-item label="组名称">
{{ retryDealLetterInfo.groupName }}
</a-descriptions-item>
<a-descriptions-item label="场景名称">
{{ retryDealLetterInfo.sceneName }}
</a-descriptions-item>
<a-descriptions-item label="业务id" span="2">
{{ retryDealLetterInfo.idempotentId }}
</a-descriptions-item>
<a-descriptions-item label="业务编号">
{{ retryDealLetterInfo.bizNo }}
</a-descriptions-item>
<a-descriptions-item label="下次触发时间">
{{ parseDate(retryDealLetterInfo.nextTriggerAt) }}
</a-descriptions-item>
<a-descriptions-item label="数据类型">
<a-tag :color="taskType[retryDealLetterInfo.taskType].color">
{{ taskType[retryDealLetterInfo.taskType].name }}
</a-tag>
</a-descriptions-item>
<a-descriptions-item label="创建时间">
{{ parseDate( retryDealLetterInfo.createDt) }}
</a-descriptions-item>
<a-descriptions-item label="更新时间">
{{ parseDate(retryDealLetterInfo.updateDt) }}
</a-descriptions-item>
<a-descriptions-item label="执行器名称" span="2">
{{ retryDealLetterInfo.executorName }}
</a-descriptions-item>
<a-descriptions-item label="扩展参数" span="3">
{{ retryDealLetterInfo.bizNo }}
</a-descriptions-item>
<a-descriptions-item label="参数" span="3">
{{ retryDealLetterInfo.argsStr }}
</a-descriptions-item>
</a-descriptions>
</a-card>
</div>
</template>
@ -48,10 +56,15 @@ export default {
data () {
return {
retryDealLetterInfo: {},
retryStatus: {
'0': '重试中',
'1': '重试完成',
'2': '最大次数'
taskType: {
'1': {
'name': '重试数据',
'color': '#d06892'
},
'2': {
'name': '回调数据',
'color': '#f5a22d'
}
}
}
},

View File

@ -26,10 +26,14 @@
<a-descriptions-item label="执行时间">
{{ parseDate( retryInfo.createDt) }}
</a-descriptions-item>
<a-descriptions-item label="当前重试状态">
<a-descriptions-item label="当前重试状态 | 数据类型">
<a-tag color="red">
{{ retryStatus[retryInfo.retryStatus] }}
</a-tag>
<a-divider type="vertical" />
<a-tag :color="taskType[retryInfo.taskType].color">
{{ taskType[retryInfo.taskType].name }}
</a-tag>
</a-descriptions-item>
<a-descriptions-item label="执行器名称" :span="3">
{{ retryInfo.executorName }}
@ -61,6 +65,16 @@ export default {
'0': '处理中',
'1': '处理成功',
'2': '最大次数'
},
taskType: {
'1': {
'name': '重试数据',
'color': '#d06892'
},
'2': {
'name': '回调数据',
'color': '#f5a22d'
}
}
}
},