[UI] version page
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
<q-list>
|
||||
<q-item clickable v-close-popup @click="onSaveVersion">
|
||||
<q-item-section avatar >
|
||||
<q-icon name="history"></q-icon>
|
||||
<q-icon name="bookmark_border"></q-icon>
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-item-label>新バージョン保存</q-item-label>
|
||||
@@ -100,7 +100,7 @@
|
||||
import { ref, reactive, computed, onMounted } from 'vue';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { IActionNode, ActionNode, IActionFlow, ActionFlow, RootAction, IActionProperty } from 'src/types/ActionTypes';
|
||||
import { IManagedApp, IVersionInfo } from 'src/types/AppTypes';
|
||||
import { IAppDisplay, IManagedApp, IVersionInfo } from 'src/types/AppTypes';
|
||||
import { storeToRefs } from 'pinia';
|
||||
import { useFlowEditorStore } from 'stores/flowEditor';
|
||||
import { useAuthStore } from 'stores/useAuthStore';
|
||||
@@ -346,11 +346,9 @@ const onSaveAllFlow= async ()=>{
|
||||
const fetchData = async () => {
|
||||
initLoading.value = true;
|
||||
if (store.appInfo === undefined && route?.params?.id !== undefined) {
|
||||
const { appid, appname } = await fetchAppById(route.params.id as string);
|
||||
store.setApp({
|
||||
appId: appid,
|
||||
name: appname
|
||||
});
|
||||
// only for page refreshed
|
||||
const app = await fetchAppById(route.params.id as string);
|
||||
store.setApp(app);
|
||||
};
|
||||
await store.loadFlow();
|
||||
initLoading.value = false
|
||||
@@ -358,24 +356,39 @@ const fetchData = async () => {
|
||||
}
|
||||
|
||||
const fetchAppById = async(id: string) => {
|
||||
try {
|
||||
const result = await api.get('api/apps');
|
||||
return result.data.find((item: IManagedApp) => item.appid === id ) as IManagedApp;
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
const result = await api.get(`api/v1/app?app=${id}`);
|
||||
const data = result?.data;
|
||||
if (data?.message) {
|
||||
$q.notify({
|
||||
type: 'negative',
|
||||
caption: "エラー",
|
||||
message: data.message
|
||||
});
|
||||
}
|
||||
return { appid: data.appId, appname: data.name };
|
||||
let result = await api.get('api/apps');
|
||||
const app = result.data?.data?.find((item: IManagedApp) => item.appid === id ) as IManagedApp;
|
||||
if (app) {
|
||||
return convertManagedAppToAppInfo(app);
|
||||
}
|
||||
|
||||
result = await api.get(`api/v1/app?app=${id}`);
|
||||
const kApp = result?.data as IAppDisplay | KErrorMsg;
|
||||
if (isErrorMsg(kApp)) {
|
||||
$q.notify({
|
||||
type: 'negative',
|
||||
caption: 'エラー',
|
||||
message: kApp.message,
|
||||
});
|
||||
}
|
||||
return kApp;
|
||||
}
|
||||
|
||||
type KErrorMsg = {
|
||||
message: string;
|
||||
}
|
||||
|
||||
const isErrorMsg = (e: IAppDisplay | KErrorMsg): e is KErrorMsg => {
|
||||
return 'message' in e;
|
||||
};
|
||||
|
||||
const convertManagedAppToAppInfo = (app: IManagedApp): AppInfo => {
|
||||
return {
|
||||
appId: app.appid,
|
||||
name: app.appname
|
||||
}
|
||||
};
|
||||
|
||||
const onClearFilter=()=>{
|
||||
filter.value='';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user