mirror of
https://github.com/whyour/qinglong.git
synced 2025-05-23 23:06:06 +08:00
parent
920efb8fab
commit
8079e4e7b8
|
@ -1,3 +1,11 @@
|
|||
.ant-table-pagination.ant-pagination {
|
||||
margin-bottom: 0 !important;
|
||||
}
|
||||
|
||||
tr {
|
||||
td:nth-child(2) {
|
||||
span {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ import CronLogModal from './logModal';
|
|||
import cron_parser from 'cron-parser';
|
||||
import { diffTime } from '@/utils/date';
|
||||
import { getTableScroll } from '@/utils/index';
|
||||
import { history } from 'umi';
|
||||
import './index.less';
|
||||
|
||||
const { Text } = Typography;
|
||||
|
@ -76,7 +77,11 @@ const Crontab = ({ headerStyle, isPhone }: any) => {
|
|||
width: 150,
|
||||
align: 'center' as const,
|
||||
render: (text: string, record: any) => (
|
||||
<span>
|
||||
<span
|
||||
onClick={() => {
|
||||
goToScriptManager(record);
|
||||
}}
|
||||
>
|
||||
{record.name || record._id}{' '}
|
||||
{record.isPinned ? (
|
||||
<span>
|
||||
|
@ -329,6 +334,20 @@ const Crontab = ({ headerStyle, isPhone }: any) => {
|
|||
const [pageSize, setPageSize] = useState(20);
|
||||
const [tableScrollHeight, setTableScrollHeight] = useState<number>();
|
||||
|
||||
const goToScriptManager = (record: any) => {
|
||||
const cmd = record.command.split(' ');
|
||||
if (cmd[0] === 'task') {
|
||||
let [p, s] = cmd[1].split('/');
|
||||
if (!s) {
|
||||
s = p;
|
||||
p = '';
|
||||
}
|
||||
history.push(`/script?p=${p}&s=${s}`);
|
||||
} else if (cmd[1] === 'repo') {
|
||||
location.href = cmd[2];
|
||||
}
|
||||
};
|
||||
|
||||
const getCrons = () => {
|
||||
setLoading(true);
|
||||
request
|
||||
|
|
|
@ -31,6 +31,8 @@ import {
|
|||
UserOutlined,
|
||||
} from '@ant-design/icons';
|
||||
import EditScriptNameModal from './editNameModal';
|
||||
import debounce from 'lodash/debounce';
|
||||
import { history } from 'umi';
|
||||
|
||||
const { Text } = Typography;
|
||||
|
||||
|
@ -95,7 +97,10 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
setData(data.data);
|
||||
setFilterData(data.data);
|
||||
})
|
||||
.finally(() => setLoading(false));
|
||||
.finally(() => {
|
||||
setLoading(false);
|
||||
initGetScript();
|
||||
});
|
||||
};
|
||||
|
||||
const getDetail = (node: any) => {
|
||||
|
@ -106,6 +111,22 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
});
|
||||
};
|
||||
|
||||
const initGetScript = () => {
|
||||
const { p, s } = history.location.query as any;
|
||||
if (s) {
|
||||
const obj = {
|
||||
node: {
|
||||
title: s,
|
||||
value: s,
|
||||
key: p ? `${p}-${s}` : s,
|
||||
parent: p,
|
||||
},
|
||||
};
|
||||
setExpandedKeys([p]);
|
||||
onTreeSelect([`${p}-${s}`], obj);
|
||||
}
|
||||
};
|
||||
|
||||
const onSelect = (value: any, node: any) => {
|
||||
if (node.key === select || !value) {
|
||||
return;
|
||||
|
@ -119,6 +140,10 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
getDetail(node);
|
||||
};
|
||||
|
||||
const onExpand = (expKeys: any) => {
|
||||
setExpandedKeys(expKeys);
|
||||
};
|
||||
|
||||
const onTreeSelect = useCallback(
|
||||
(keys: Key[], e: any) => {
|
||||
const content = editorRef.current
|
||||
|
@ -147,6 +172,13 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
const onSearch = useCallback(
|
||||
(e) => {
|
||||
const keyword = e.target.value;
|
||||
debounceSearch(keyword);
|
||||
},
|
||||
[data, setFilterData],
|
||||
);
|
||||
|
||||
const debounceSearch = useCallback(
|
||||
debounce((keyword) => {
|
||||
setSearchValue(keyword);
|
||||
const { tree, expandedKeys } = getFilterData(
|
||||
keyword.toLocaleLowerCase(),
|
||||
|
@ -154,7 +186,7 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
);
|
||||
setExpandedKeys(expandedKeys);
|
||||
setFilterData(tree);
|
||||
},
|
||||
}, 300),
|
||||
[data, setFilterData],
|
||||
);
|
||||
|
||||
|
@ -451,6 +483,8 @@ const Script = ({ headerStyle, isPhone, theme }: any) => {
|
|||
showIcon={true}
|
||||
height={height}
|
||||
selectedKeys={[select]}
|
||||
expandedKeys={expandedKeys}
|
||||
onExpand={onExpand}
|
||||
showLine={{ showLeafIcon: true }}
|
||||
onSelect={onTreeSelect}
|
||||
></Tree>
|
||||
|
|
Loading…
Reference in New Issue
Block a user