Merge pull request #71 from jetlinks/dev-hub

Dev hub
This commit is contained in:
胡彪 2023-03-27 17:25:47 +08:00 committed by GitHub
commit 0b800b712b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 48 additions and 32 deletions

View File

@ -4,7 +4,10 @@ export const queryCollector = (data: any) =>
server.post(`/data-collect/collector/_query/no-paging?paging=false`, data);
export const queryChannelNoPaging = () =>
server.post(`/data-collect/channel/_query/no-paging`, { paging: false });
server.post(`/data-collect/channel/_query/no-paging`, {
paging: false,
sorts: [{ name: 'createTime', order: 'desc' }],
});
export const save = (data: any) => server.post(`/data-collect/collector`, data);

View File

@ -301,7 +301,13 @@ const formData = ref({
});
const handleOk = async () => {
const data = await formRef.value?.validate();
console.log(2, formRef.value, formRef.value?.validate());
const data = await formRef.value?.validate().catch((err) => {
console.log(23, err);
});
console.log(3, data);
delete data?.nspwc;
const { codec } = data?.configuration;

View File

@ -20,7 +20,7 @@
<template #headerTitle>
<j-space>
<PermissionButton
v-if="data?.provider !== 'OPC_UA'"
v-if="data?.provider == 'MODBUS_TCP'"
type="primary"
@click="handlAdd"
hasPermission="DataCollect/Collector:add"

View File

@ -56,22 +56,8 @@
<j-form-item
:name="['circuitBreaker', 'type']"
:rules="LeftTreeRules.type"
label="故障处理"
>
<template #label>
<span>
故障处理
<j-tooltip
:title="
getTypeTooltip(formData.circuitBreaker.type)
"
>
<AIcon
type="QuestionCircleOutlined"
style="margin-left: 2px"
/>
</j-tooltip>
</span>
</template>
<j-card-select
:showImage="false"
v-model:value="formData.circuitBreaker.type"
@ -83,6 +69,9 @@
@change="changeCardSelectType"
/>
</j-form-item>
<p style="color: #616161">
{{ getTypeTooltip(formData.circuitBreaker.type) }}
</p>
<j-form-item
:name="['configuration', 'endian']"
v-if="visibleEndian"
@ -137,15 +126,12 @@
</j-modal>
</template>
<script lang="ts" setup>
import { Form } from 'ant-design-vue';
import { save, update } from '@/api/data-collect/collector';
import { Store } from 'jetlinks-store';
import { cloneDeep } from 'lodash';
import { LeftTreeRules } from '../../data';
import type { FormInstance } from 'ant-design-vue';
const loading = ref(false);
const useForm = Form.useForm;
const channelListAll = ref();
const channelList = ref();
const visibleEndian = ref(false);

View File

@ -24,7 +24,10 @@
:tree-data="defualtDataSource"
v-model:selected-keys="selectedKeys"
:fieldNames="{ key: 'id' }"
v-if="defualtDataSource[0].children.length !== 0"
v-if="
defualtDataSource.length !== 0 ||
defualtDataSource?.[0]?.children?.length !== 0
"
:height="600"
defaultExpandAll
>
@ -129,13 +132,15 @@ const visible = ref(false);
const current = ref({});
const collectorAll = ref();
const defualtDataSource: any = ref([
const root = [
{
id: '*',
name: '全部',
children: [],
},
]);
];
const defualtDataSource: any = ref(_.cloneDeep(root));
const defualtParams = {
paging: false,
@ -195,9 +200,11 @@ const saveChange = (value: object) => {
};
const handleSearch = async (value: any) => {
let clickSearch = false;
if (!searchValue.value && !value) {
params.value = _.cloneDeep(defualtParams);
} else if (!!searchValue.value) {
clickSearch = true;
params.value = { ..._.cloneDeep(defualtParams) };
params.value.terms[1] = {
terms: [
@ -214,12 +221,24 @@ const handleSearch = async (value: any) => {
spinning.value = true;
const res: any = await queryCollector(params.value);
if (res.status === 200) {
defualtDataSource.value[0].children = res.result;
collectorAll.value = res.result;
if (selectedKeys.value.length === 0) {
selectedKeys.value = [res?.result[0]?.id] || [];
emits('change', res?.result[0]);
if (clickSearch) {
defualtDataSource.value = res.result;
} else {
defualtDataSource.value = _.cloneDeep(root);
defualtDataSource.value[0].children = res.result;
}
collectorAll.value = res.result;
if (selectedKeys.value.length === 0) {
selectedKeys.value = ['*'];
}
//change
setTimeout(() => {
const _selectedKeys = _.cloneDeep(selectedKeys.value);
selectedKeys.value = [];
selectedKeys.value = _selectedKeys;
}, 0);
}
spinning.value = false;
};
@ -238,8 +257,10 @@ watch(
() => selectedKeys.value,
(n) => {
const key = _.isArray(n) ? n[0] : n;
const row = collectorAll.value.find((i: any) => i.id === key);
emits('change', row);
if (key) {
const row = collectorAll.value.find((i: any) => i.id === key);
emits('change', row);
}
},
);

View File

@ -6,7 +6,7 @@
</div>
<div class="right">
<j-spin :spinning="spinning">
<Point v-if="!!data" :data="data" />
<Point v-if="data || data === undefined" :data="data" />
<j-empty style="margin-top: 20%" v-else />
</j-spin>
</div>