添加release版本

这个提交包含在:
徐勤民 2024-08-23 18:19:29 +08:00
父节点 eaa3c7fd63
当前提交 66a8c8ba20
共有 6 个文件被更改,包括 143 次插入4 次删除

查看文件

@ -33,5 +33,7 @@ export default {
register: (params) => API.POSTJSON("/tenant/v1/create", params), register: (params) => API.POSTJSON("/tenant/v1/create", params),
login: (params) => API.POSTJSON("/user/v1/login", params), login: (params) => API.POSTJSON("/user/v1/login", params),
appList: (params) => API.POSTJSON("/manager/v1/list", params), appList: (params) => API.POSTJSON("/manager/v1/list", params),
appCreate: (params) => API.POSTJSON("/manager/v1/create", params) appCreate: (params) => API.POSTJSON("/manager/v1/create", params),
releaseList: (params) => API.POSTJSON("/release/v1/list", params),
releaseAdd: (params) => API.POSTJSON("/release/v1/add", params)
} }

查看文件

@ -5,6 +5,7 @@ import RegisterView from "@/views/RegisterView.vue"
import MainView from "@/views/MainView.vue" import MainView from "@/views/MainView.vue"
import ImHomeView from "@/views/im/ImHomeView.vue" import ImHomeView from "@/views/im/ImHomeView.vue"
import AppHomeView from "@/views/app/AppHomeView.vue" import AppHomeView from "@/views/app/AppHomeView.vue"
import AppReleaseView from "@/views/app/AppReleaseView.vue"
const router = createRouter({ const router = createRouter({
history: createWebHashHistory(), history: createWebHashHistory(),
@ -54,6 +55,11 @@ const router = createRouter({
path: "/appManager", path: "/appManager",
name: "应用信息", name: "应用信息",
component: AppHomeView component: AppHomeView
},
{
path: "/AppRelease",
name: "版本记录",
component: AppReleaseView
} }
] ]
} }

11
src/stores/manager.ts 普通文件
查看文件

@ -0,0 +1,11 @@
import { ref, computed } from "vue"
import { defineStore } from "pinia"
export const useManagerStore = defineStore("token", () => {
const appId = ref(undefined)
function setAppId(t: string) {
appId.value = t
}
return { appId, setAppId }
})

查看文件

@ -35,6 +35,7 @@
<span>版本管理</span> <span>版本管理</span>
</template> </template>
<el-menu-item index="/appManager">应用信息</el-menu-item> <el-menu-item index="/appManager">应用信息</el-menu-item>
<el-menu-item index="/AppRelease">版本记录</el-menu-item>
</el-sub-menu> </el-sub-menu>
</el-menu> </el-menu>
</el-aside> </el-aside>

查看文件

@ -4,6 +4,12 @@ import API from "@/api/index.js"
import { ref } from "vue" import { ref } from "vue"
import { PriceTag } from "@element-plus/icons-vue" import { PriceTag } from "@element-plus/icons-vue"
import { ElMessage } from "element-plus" import { ElMessage } from "element-plus"
import { useRouter } from "vue-router"
import { useManagerStore } from "@/stores/manager"
const router = useRouter()
const manager = useManagerStore()
const Api = API const Api = API
const appList = ref([]) const appList = ref([])
@ -35,9 +41,9 @@ const addApp = () => {
packageName.value = undefined packageName.value = undefined
showDialog.value = true showDialog.value = true
} }
const showApp = (scope) => { const showApp = (item) => {
detail.value = undefined manager.setAppId(item.appId)
// showDetailsDialog.value = true router.push("/AppRelease")
} }
init() init()
</script> </script>

查看文件

@ -0,0 +1,113 @@
<script setup lang="ts">
// @ts-ignore
import API from "@/api/index.js"
import { ref } from "vue"
import { PriceTag } from "@element-plus/icons-vue"
import { ElMessage } from "element-plus"
import { useManagerStore } from "@/stores/manager"
const manager = useManagerStore()
const Api = API
const appList = ref([])
const init = () => {
Api.appList({ pageNumber: 0, pageSize: 100 }).then((res) => {
appList.value = res.content
})
}
const appCreate = () => {
ElMessage.success("新建应用成功")
Api.appCreate({
downloadUrl: downloadUrl.value,
packageName: packageName.value,
appName: name.value
}).then(() => {
init()
showDialog.value = false
})
}
const name = ref(undefined)
const downloadUrl = ref(undefined)
const packageName = ref(undefined)
const showDialog = ref(false)
const detail = ref(undefined)
const showDetailsDialog = ref(false)
const addApp = () => {
name.value = undefined
downloadUrl.value = undefined
packageName.value = undefined
showDialog.value = true
}
const showApp = (scope) => {
detail.value = undefined
// showDetailsDialog.value = true
}
init()
</script>
<template>
<el-card style="margin-top: 20px">
<template #header>
<el-button @click="addApp">新建应用{{ manager.appId }}</el-button>
</template>
<el-table :data="appList" style="width: 100%">
<el-table-column type="index" width="150" label="序号" />
<el-table-column prop="appName" label="应用名称" />
<el-table-column prop="createTime" label="创建时间" />
<el-table-column fixed="right" label="操作" min-width="120">
<template #default="scope">
<el-button link type="primary" size="small" @click="showApp(scope.row)"> 详情 </el-button>
<el-button link type="primary" size="small">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-card>
<el-dialog v-model="showDialog" title="新建应用" width="500">
<el-input
class="text item"
v-model="name"
style="width: 440px"
placeholder="请输入应用名称"
:prefix-icon="PriceTag"
:clearable="true"
/>
<el-input
class="text item"
v-model="downloadUrl"
style="width: 440px; margin-top: 20px"
placeholder="请输入下载地址"
:prefix-icon="PriceTag"
:clearable="true"
/>
<el-input
class="text item"
v-model="packageName"
style="width: 440px; margin-top: 20px"
placeholder="请输入应用包名"
:prefix-icon="PriceTag"
:clearable="true"
/>
<template #footer>
<div class="dialog-footer">
<el-button @click="showDialog = false">Cancel</el-button>
<el-button type="primary" @click="appCreate"> Confirm</el-button>
</div>
</template>
</el-dialog>
<el-dialog v-model="showDetailsDialog" title="应用信息" width="500">
<el-input
class="text item"
v-model="name"
style="width: 440px"
placeholder="请输入应用名称"
:prefix-icon="PriceTag"
:clearable="true"
/>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="showDetailsDialog = false"> 关闭</el-button>
</div>
</template>
</el-dialog>
</template>
<style scoped></style>