App,Field,Action Select Dialogue
This commit is contained in:
@@ -9,96 +9,67 @@
|
||||
</div>
|
||||
<div style="min-height: 100vh;">
|
||||
<div class="q-pa-md">
|
||||
<q-btn-dropdown
|
||||
split
|
||||
color="primary"
|
||||
label="ルール新規作成"
|
||||
size="lg"
|
||||
>
|
||||
<q-list>
|
||||
<q-item
|
||||
v-for="action in actions"
|
||||
clickable v-close-popup
|
||||
@click="onItemClick"
|
||||
:key="action"
|
||||
>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ action }}</q-item-label>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
</q-btn-dropdown>
|
||||
<q-btn-dropdown split color="primary" label="ルール新規作成" size="lg">
|
||||
<q-list>
|
||||
<q-item v-for="action in actions" clickable v-close-popup @click="onItemClick" :key="action">
|
||||
<q-item-section>
|
||||
<q-item-label>{{ action }}</q-item-label>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
</q-btn-dropdown>
|
||||
</div>
|
||||
<div class="q-pa-md">
|
||||
<q-btn label="アプリ選択" color="primary" @click="showDg()" />
|
||||
<show-dialog v-model:visible="show">
|
||||
<app-select></app-select>
|
||||
</show-dialog>
|
||||
</div>
|
||||
<q-select v-model="model" :options="options" label="Standard"/>
|
||||
<q-btn :label="model+'選択'" color="primary" @click="showDg()" />
|
||||
<show-dialog v-model:visible="show" :name="model" @close="closeDg">
|
||||
<template v-if="model=='アプリ'">
|
||||
<app-select ref="appDg" :name="model" type="single"></app-select>
|
||||
</template>
|
||||
<template v-if="model=='フィールド'">
|
||||
<field-select ref="appDg" :name="model" type="multiple" :appId="1"></field-select>
|
||||
</template>
|
||||
<template v-if="model=='アクション'">
|
||||
<action-select ref="appDg" :name="model" type="single"></action-select>
|
||||
</template>
|
||||
</show-dialog>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</q-page>
|
||||
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import ShowDialog from 'components/ShowDialog.vue';
|
||||
import AppSelect from 'components/AppSelect.vue';
|
||||
import FieldSelect from 'components/FieldSelect.vue';
|
||||
import ActionSelect from 'components/ActionSelect.vue';
|
||||
import { ref } from 'vue'
|
||||
let name = 'アプリ'
|
||||
let show = ref(false);
|
||||
let type = 'multiple';
|
||||
let columns = [
|
||||
{
|
||||
name: 'id',
|
||||
required: true,
|
||||
label: 'アプリID',
|
||||
align: 'left',
|
||||
field: 'id',
|
||||
sortable: true
|
||||
},
|
||||
{ name: 'name', align: 'center', label: 'アプリ名', field: 'name', sortable: true },
|
||||
{ name: 'creator', label: '作成者', field: 'creator', sortable: true },
|
||||
{ name: 'createdate', label: '作成日時', field: 'createdate' }
|
||||
]
|
||||
|
||||
let rows = [
|
||||
{
|
||||
id:1,
|
||||
name: '日報アプリ1',
|
||||
creator: '日報 太郎',
|
||||
createdate: '2023/07/22 11:21:48'
|
||||
},
|
||||
{
|
||||
id:2,
|
||||
name: '日報アプリ2',
|
||||
creator: '日報 太郎',
|
||||
createdate: '2023/07/25 14:10:56'
|
||||
},
|
||||
]
|
||||
let appDg = ref(null);
|
||||
let appDg = ref();
|
||||
let model = ref('アプリ');
|
||||
let options = ['アプリ','フィールド','アクション']
|
||||
const showDg = () => {
|
||||
show.value = true;
|
||||
};
|
||||
|
||||
|
||||
const closeDg = (val) => {
|
||||
if(val == 'OK')
|
||||
{
|
||||
alert(JSON.stringify(appDg.value.selected));
|
||||
const closeDg = (val:string) => {
|
||||
if (val == 'OK') {
|
||||
alert(JSON.stringify(appDg.value.selected))
|
||||
}
|
||||
|
||||
};
|
||||
interface Props {
|
||||
title: string;
|
||||
actions:string[];
|
||||
actions: string[];
|
||||
}
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
title:"ルールエディター",
|
||||
actions:()=>["フィールド制御","一覧画面","その他"]
|
||||
title: "ルールエディター",
|
||||
actions: () => ["フィールド制御", "一覧画面", "その他"]
|
||||
});
|
||||
function onItemClick(evt: Event){
|
||||
return;
|
||||
function onItemClick(evt: Event) {
|
||||
return;
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user