| | |
| | | @submit.native.prevent |
| | | > |
| | | <el-form-item> |
| | | <el-input v-model="queryForm.title" placeholder="名称" /> |
| | | <el-input |
| | | v-model="queryForm.name" |
| | | placeholder="名称" |
| | | clearable="" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-select |
| | | v-model="queryForm.address" |
| | | v-model="queryForm.type" |
| | | placeholder="类型" |
| | | class="handle-select mr10" |
| | | size="mini" |
| | | clearable="" |
| | | > |
| | | <el-option key="1" label="系统" value="系统"></el-option> |
| | | <el-option key="2" label="应用" value="应用"></el-option> |
| | | <el-option key="3" label="算法" value="算法"></el-option> |
| | | <el-option key="os" label="基础" value="os"></el-option> |
| | | <el-option key="sys" label="系统" value="sys"></el-option> |
| | | <el-option key="app" label="应用" value="app"></el-option> |
| | | <el-option key="algo" label="算法" value="algo"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | |
| | | |
| | | <el-table-column prop="state" width="150"> |
| | | <template #default="{ row }"> |
| | | <el-tag>{{ packageState[row.state] }}</el-tag> |
| | | <el-tag :type="row.state == 0 ? 'success' : 'danger'">{{ |
| | | packageState[row.state] |
| | | }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column width="200"> |
| | | <el-table-column width="300"> |
| | | <template #default="scope"> |
| | | <el-button size="small" @click="handlePublish(scope.row)" |
| | | >发布</el-button |
| | | > |
| | | <el-button size="small" @click="handleDownload(scope.row)" |
| | | >下载</el-button |
| | | > |
| | | <el-button |
| | | size="small" |
| | | :disabled="scope.row.state === 0" |
| | | @click="handleRebuild(scope.row)" |
| | | >重置</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <el-tag>{{ row.type | typeFilter }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column show-overflow-tooltip prop="arch" label="架构"> |
| | | </el-table-column> |
| | | <!-- <el-table-column show-overflow-tooltip label="当前版本" prop="latestVersion"></el-table-column> --> |
| | | <el-table-column label="状态"> |
| | | <template #default="{ row }"> |
| | | <el-tag>{{ row.state | stateFilter }}</el-tag> |
| | | <el-tag :type="row.state == 2 ? 'danger' : 'success'">{{ |
| | | row.state | stateFilter |
| | | }}</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | |
| | | |
| | | <script> |
| | | import { getList, deletePrj, getPkgList, buildPkg } from "@/api/project"; |
| | | import { publish, download } from "@/api/package"; |
| | | import { publish, download, rebuild } from "@/api/package"; |
| | | |
| | | import TableEdit from "./components/ProjectEdit.vue"; |
| | | export default { |
| | |
| | | }, |
| | | typeFilter(type) { |
| | | const typeMap = { |
| | | os: "OS基础包", |
| | | sys: "系统包", |
| | | app: "应用包", |
| | | algo: "算法包", |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | imgShow: true, |
| | | list: [], |
| | | listLoading: true, |
| | | layout: "total, sizes, prev, pager, next, jumper", |
| | | packageState: [ |
| | | "完成", |
| | | "已提交", |
| | | "排队中", |
| | | "打包中", |
| | | "打包完成", |
| | | "已 提 交", |
| | | "排 队 中", |
| | | "打 包 中", |
| | | "编译失败", |
| | | "打包失败", |
| | | ], |
| | |
| | | queryForm: { |
| | | pageNo: 1, |
| | | pageSize: 20, |
| | | title: "", |
| | | }, |
| | | }; |
| | | }, |
| | |
| | | }, |
| | | |
| | | async expandChange(row, expandRows) { |
| | | console.log(row); |
| | | if (expandRows.length == 0) { |
| | | console.log("fold"); |
| | | return; |
| | | } |
| | | |
| | | const { data, total } = await getPkgList(row.id); |
| | | this.list.forEach((item, idx) => { |
| | | if (item.id === row.id) { |
| | | this.list[idx].pkgList = data; |
| | | this.list[idx].pkgList = data.reverse(); |
| | | } |
| | | }); |
| | | }, |
| | |
| | | }) |
| | | .then(({ value }) => { |
| | | buildPkg(row, value).then((rsp) => { |
| | | console.log(rsp); |
| | | this.expandChange(row, 1); |
| | | }); |
| | | }) |
| | |
| | | handleDownload(row) { |
| | | download({ path: row.filePath }).then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | | console.log(rsp); |
| | | window.location = rsp.data; |
| | | } |
| | | }); |
| | | }, |
| | | handleRebuild(row) { |
| | | rebuild(row).then((rsp) => { |
| | | if (rsp && rsp.success) { |
| | | this.$baseMessage(rsp.msg, "success"); |
| | | } else { |
| | | this.$baseMessage("保存失败", "error"); |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |