You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

109 lines
2.8 KiB

<template>
<w-dialog
ref="dialogRef"
:title="$t('re.parameter.dialog.moveParameter.title')"
width="600px"
height="500px"
:can-maximize="false"
body-padding="2px 2px"
:buttons="[
{
label: $t('confirm'),
noCaps: true,
click: () => {
const tickeds = parameterGrid.getTickedRows();
const parameterIds = [];
tickeds.forEach((ticked) => {
parameterIds.push(ticked.id);
});
axios
.post(Environment.apiContextPath('/api/re/model/parameter/move'), {
one: modelGridRef.getSelectedRows()[0].id,
many: parameterIds,
})
.then((response) => {
close();
parameterGrid.refresh();
});
},
},
]"
>
<div class="pt-2" style="height: 100%">
<w-grid
ref="modelGridRef"
dense-body
class="px-1"
hide-bottom
:config-button="false"
selection="multiple"
:checkbox-selection="false"
:tree="true"
:tree-icon="
(row) => {
return { name: 'folder', color: 'amber' };
}
"
:fetch-data-url="Environment.apiContextPath('/api/re/model/findModelWithSubModelsByResourceId?resourceId=' + resource.id)"
:data-url="Environment.apiContextPath('/api/re/model')"
:pageable="false"
:toolbar-configure="{ noIcon: false }"
:columns="[
{ width: '100%', name: 'name', label: $t('name'), sortable: false },
{
width: 80,
name: 'category',
label: $t('category'),
sortable: false,
format: EngineEnums.ModelCategory.formater,
},
{
width: 80,
name: 'executeMode',
label: $t('re.model.grid.entity.executeMode'),
align: 'center',
sortable: false,
format: (value) => {
if (value === 'TOP_DOWN') {
return {
componentType: 'QIcon',
attrs: { name: 'bi-arrow-down', size: '20px' },
};
}
return '';
},
},
]"
></w-grid>
</div>
</w-dialog>
</template>
<script setup lang="ts">
import 'tailwindcss/utilities.css';
import { ref } from 'vue';
import { axios, Environment } from 'platform-core';
import { EngineEnums } from '@/views/shared/enums/EngineEnums';
const props = defineProps({
parameterGrid: { type: Object, default: undefined },
resource: { type: Object, default: undefined },
});
const dialogRef = ref();
const modelGridRef = ref();
const open = () => {
dialogRef.value.show();
};
const close = () => {
dialogRef.value.hide();
};
defineExpose({
open,
close,
});
await EngineEnums.init();
</script>