8/31 dev 权限,sse,账单,bug

This commit is contained in:
Zy
2026-08-31 18:00:11 +08:00
parent 466ec4675e
commit de4bae3bc1
51 changed files with 575 additions and 591 deletions

View File

@@ -4,7 +4,7 @@
<transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
<div v-show="showSearch" class="mb-[10px]">
<el-card shadow="hover">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-form ref="queryFormRef" :inline="true" :model="queryParams">
<el-form-item label="应用名称" prop="channel">
<el-select v-model="queryParams.channel" placeholder="请选择">
<el-option v-for="(item, index) in com_app_list" :key="index" :label="item.label" :value="item.value"></el-option>
@@ -17,13 +17,13 @@
</el-select>
</el-form-item>
<el-form-item label="版本号" prop="versionCode">
<el-input maxlength="20" v-model.trim="queryParams.versionCode" placeholder="请输入版本号" clearable @keyup.enter="handleQuery" />
<el-input v-model.trim="queryParams.versionCode" clearable maxlength="20" placeholder="请输入版本号" @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="版本名称" prop="versionName">
<el-input maxlength="20" v-model.trim="queryParams.versionName" placeholder="请输入版本名称" clearable @keyup.enter="handleQuery" />
<el-input v-model.trim="queryParams.versionName" clearable maxlength="20" placeholder="请输入版本名称" @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Search" type="primary" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
@@ -31,70 +31,70 @@
</div>
</transition>
<el-card shadow="never" class="flex-1">
<el-card class="flex-1" shadow="never">
<template #header>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-has-permi="['system:version:add']">新增</el-button>
<el-button v-has-permi="['system:version:add']" icon="Plus" plain type="primary" @click="handleAdd">新增</el-button>
</el-col>
</el-row>
</template>
<el-table
:default-sort="{ prop: 'versionCode', order: 'descending' }"
v-loading="loading"
border
:data="versionList"
:default-sort="{ prop: 'versionCode', order: 'descending' }"
border
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="应用名称" sortable align="center" prop="appChannel">
<el-table-column align="center" type="selection" width="55" />
<el-table-column align="center" label="应用名称" prop="appChannel" sortable>
<template #default="scope">
<dict-tag :options="com_app_list" :value="scope.row.appChannel"></dict-tag>
</template>
</el-table-column>
<el-table-column label="版本类型" align="center" prop="platform">
<el-table-column align="center" label="版本类型" prop="platform">
<template #default="scope">
<el-tag type="success" v-if="scope.row.platform === 'ios'">ios</el-tag>
<el-tag type="primary" v-else>android</el-tag>
<el-tag v-if="scope.row.platform === 'ios'" type="success">ios</el-tag>
<el-tag v-else type="primary">android</el-tag>
</template>
</el-table-column>
<el-table-column label="更新渠道" sortable align="center" prop="channel" />
<el-table-column label="版本号" sortable align="center" prop="versionCode" />
<el-table-column label="版本名称" sortable align="center" prop="versionName" />
<el-table-column label="最低支持版本" sortable align="center" prop="minVersionName" />
<el-table-column label="下载地址" align="center" prop="downloadUrl" />
<el-table-column label="更新日志" align="center" prop="releaseNotes" />
<el-table-column label="停用/启用" align="center" prop="status">
<el-table-column align="center" label="更新渠道" prop="channel" sortable />
<el-table-column align="center" label="版本号" prop="versionCode" sortable />
<el-table-column align="center" label="版本名称" prop="versionName" sortable />
<el-table-column align="center" label="最低支持版本" prop="minVersionName" sortable />
<el-table-column align="center" label="下载地址" prop="downloadUrl" />
<el-table-column align="center" label="更新日志" prop="releaseNotes" />
<el-table-column align="center" label="停用/启用" prop="status">
<template #default="scope">
<el-switch
@change="(val: string) => switchVersion(scope.row.id, val)"
v-model="scope.row.status"
active-value="1"
inactive-value="0"
@change="(val: string) => switchVersion(scope.row.id, val)"
></el-switch>
</template>
</el-table-column>
<el-table-column label="上传时间" align="center" prop="createTime" />
<el-table-column align="center" label="上传时间" prop="createTime" />
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
<pagination v-show="total > 0" v-model:limit="queryParams.pageSize" v-model:page="queryParams.pageNum" :total="total" @pagination="getList" />
</el-card>
<!-- 添加或修改对话框 -->
<el-dialog :title="dialog.title" v-model="dialog.visible" width="650px" append-to-body>
<el-dialog v-model="dialog.visible" :title="dialog.title" append-to-body width="650px">
<el-form ref="versionFormRef" :model="form" :rules="rules" label-width="130px">
<el-form-item label="App端" prop="appChannel">
<el-select @change="handleGetVersionlast" v-model="form.appChannel" placeholder="请选择">
<el-select v-model="form.appChannel" placeholder="请选择" @change="handleGetVersionlast">
<el-option v-for="(item, index) in com_app_list" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="App类型" prop="platform">
<el-radio-group @change="handleChangePlatform" v-model="form.platform">
<el-radio-group v-model="form.platform" @change="handleChangePlatform">
<el-radio :value="appType.android">Android</el-radio>
<el-radio :value="appType.ios">ios</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="版本名称" prop="versionName">
<el-input maxlength="20" v-model.trim="form.versionName" placeholder="请输入版本名称例如:1.2.0" />
<el-input v-model.trim="form.versionName" maxlength="20" placeholder="请输入版本名称例如:1.2.0" />
</el-form-item>
<el-form-item label="最低支持版本" prop="minVersionCode">
<el-select v-if="getlastVersionlist.length > 0" v-model="form.minVersionCode" placeholder="请输入最低支持版本">
@@ -105,7 +105,7 @@
</el-select>
</el-form-item>
<el-form-item label="渠道" prop="channel">
<el-radio-group @change="handleChangeChannel" v-model="form.channel">
<el-radio-group v-model="form.channel" @change="handleChangeChannel">
<el-radio v-if="form.platform !== appType.ios" value="huawei">华为</el-radio>
<el-radio v-if="form.platform !== appType.ios" value="xiaomi">小米</el-radio>
<el-radio v-if="form.platform !== appType.ios" value="oppo">oppo</el-radio>
@@ -117,7 +117,7 @@
</el-form-item>
<el-form-item label="更新日志" prop="releaseNotes">
<el-input maxlength="200" show-word-limit :rows="5" v-model="form.releaseNotes" type="textarea" placeholder="请输入内容" />
<el-input v-model="form.releaseNotes" :rows="5" maxlength="200" placeholder="请输入内容" show-word-limit type="textarea" />
</el-form-item>
<!-- <el-form-item label="低版本强制更新">-->
<!-- <div>-->
@@ -144,7 +144,7 @@
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<el-form-item label="上传安装包地址" prop="downloadUrl">
<el-input maxlength="20" v-model.trim="form.downloadUrl" placeholder="请输入更新地址" />
<el-input v-model.trim="form.downloadUrl" maxlength="20" placeholder="请输入更新地址" />
</el-form-item>
<!-- </div>-->
</el-form>
@@ -158,7 +158,7 @@
</div>
</template>
<script setup name="Version" lang="ts">
<script lang="ts" name="Version" setup>
import { listVersion, addVersion, getPastVersion, switchVersion } from '@/api/system/version';
import { VersionVO, VersionQuery, VersionForm } from '@/api/system/version/type';
@@ -341,7 +341,6 @@ const channelUrl = {
'ios': 'itms-apps://apps.apple.com/cn/app/id'
};
function handleChangeChannel(val: string) {
console.log(val);
form.value.downloadUrl = channelUrl[val];
}
/** 提交按钮 */