|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div class="full-container-p24">
|
|
<div class="full-container-p24">
|
|
|
<div class="df jcfe pb20">
|
|
<div class="df jcfe pb20">
|
|
|
- <el-button type="primary" @click="modalVisable = true"
|
|
|
|
|
|
|
+ <el-button size="medium" type="primary" @click="modalVisable = true"
|
|
|
>新增项目</el-button
|
|
>新增项目</el-button
|
|
|
>
|
|
>
|
|
|
</div>
|
|
</div>
|
|
@@ -12,12 +12,66 @@
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<div class="df">
|
|
<div class="df">
|
|
|
- <el-card v-for="item in pcData" :key="item._id">
|
|
|
|
|
|
|
+ <el-card
|
|
|
|
|
+ v-for="item in pcData"
|
|
|
|
|
+ :key="item._id"
|
|
|
|
|
+ class="mr20"
|
|
|
|
|
+ style="width: 300px"
|
|
|
|
|
+ >
|
|
|
<template #header>
|
|
<template #header>
|
|
|
<div class="card-header">
|
|
<div class="card-header">
|
|
|
<span>{{ item.name }}</span>
|
|
<span>{{ item.name }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
- </template></el-card
|
|
|
|
|
|
|
+ </template>
|
|
|
|
|
+ <div class="mb10 df jscb card-line aic" v-if="item.master_url">
|
|
|
|
|
+ <div class="s-title">正式版:</div>
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="goTo(item.master_url)"
|
|
|
|
|
+ >去访问</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="copy2(item.master_url)"
|
|
|
|
|
+ >复制链接</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="mb10 df jscb card-line aic" v-if="item.dev_url">
|
|
|
|
|
+ <div class="s-title">测试版:</div>
|
|
|
|
|
+ <el-button size="medium" type="primary" @click="goTo(item.dev_url)"
|
|
|
|
|
+ >去访问</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button size="medium" type="primary" @click="copy2(item.dev_url)"
|
|
|
|
|
+ >复制链接</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="mb10 df jscb card-line aic" v-if="item.api_url">
|
|
|
|
|
+ <div class="s-title">接口地址:</div>
|
|
|
|
|
+ <el-button size="medium" type="primary" @click="copy2(item.api_url)"
|
|
|
|
|
+ >复制链接</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="mb10 df jscb card-line aic" v-if="item.api_url">
|
|
|
|
|
+ <div class="s-title">接口文档:</div>
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="goTo(item.api_url + 'swagger-ui.html#/')"
|
|
|
|
|
+ >去访问</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="copy2(item.master_url)"
|
|
|
|
|
+ >复制链接</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="mb10 df jscb card-line aic" v-if="item.desc">
|
|
|
|
|
+ <div>备注:</div>
|
|
|
|
|
+ <div>{{ item.desc }}</div>
|
|
|
|
|
+ </div></el-card
|
|
|
>
|
|
>
|
|
|
</div>
|
|
</div>
|
|
|
</el-card>
|
|
</el-card>
|
|
@@ -28,7 +82,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<div class="df">
|
|
<div class="df">
|
|
|
- <el-card v-for="item in wxData" :key="item._id">
|
|
|
|
|
|
|
+ <el-card v-for="item in wxData" :key="item._id" class="mr20">
|
|
|
<template #header>
|
|
<template #header>
|
|
|
<div class="card-header">
|
|
<div class="card-header">
|
|
|
<span>{{ item.name }}</span>
|
|
<span>{{ item.name }}</span>
|
|
@@ -101,9 +155,9 @@
|
|
|
style="width: 100px"
|
|
style="width: 100px"
|
|
|
></el-image>
|
|
></el-image>
|
|
|
<el-button
|
|
<el-button
|
|
|
- v-else
|
|
|
|
|
- size="small"
|
|
|
|
|
|
|
+ size="medium"
|
|
|
type="primary"
|
|
type="primary"
|
|
|
|
|
+ v-else
|
|
|
@click="upload('master_url')"
|
|
@click="upload('master_url')"
|
|
|
>上传</el-button
|
|
>上传</el-button
|
|
|
>
|
|
>
|
|
@@ -120,9 +174,9 @@
|
|
|
style="width: 100px"
|
|
style="width: 100px"
|
|
|
></el-image>
|
|
></el-image>
|
|
|
<el-button
|
|
<el-button
|
|
|
- v-else
|
|
|
|
|
- size="small"
|
|
|
|
|
|
|
+ size="medium"
|
|
|
type="primary"
|
|
type="primary"
|
|
|
|
|
+ v-else
|
|
|
@click="upload('dev_url')"
|
|
@click="upload('dev_url')"
|
|
|
>上传</el-button
|
|
>上传</el-button
|
|
|
>
|
|
>
|
|
@@ -143,8 +197,16 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
<el-form-item>
|
|
|
<div class="df jcfe">
|
|
<div class="df jcfe">
|
|
|
- <el-button @click="resetForm(ruleFormRef)">重置</el-button>
|
|
|
|
|
- <el-button type="primary" @click="submitForm(ruleFormRef)"
|
|
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="resetForm(ruleFormRef)"
|
|
|
|
|
+ >重置</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ size="medium"
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="submitForm(ruleFormRef)"
|
|
|
>创建项目</el-button
|
|
>创建项目</el-button
|
|
|
>
|
|
>
|
|
|
</div>
|
|
</div>
|
|
@@ -161,6 +223,8 @@ import _ from "lodash";
|
|
|
import { ElMessage, ElMessageBox } from "element-plus";
|
|
import { ElMessage, ElMessageBox } from "element-plus";
|
|
|
import store from "../../store";
|
|
import store from "../../store";
|
|
|
import { chooseFile } from "../../utils/chooseFile";
|
|
import { chooseFile } from "../../utils/chooseFile";
|
|
|
|
|
+import copy from "copy-to-clipboard";
|
|
|
|
|
+
|
|
|
const db = tcb.database();
|
|
const db = tcb.database();
|
|
|
const p = db.collection("huihenduo_projects");
|
|
const p = db.collection("huihenduo_projects");
|
|
|
const __ = db.command;
|
|
const __ = db.command;
|
|
@@ -170,6 +234,7 @@ async function init() {
|
|
|
pcData.value = [];
|
|
pcData.value = [];
|
|
|
wxData.value = [];
|
|
wxData.value = [];
|
|
|
let { data } = await p.get();
|
|
let { data } = await p.get();
|
|
|
|
|
+ console.log(data);
|
|
|
if (data.length) {
|
|
if (data.length) {
|
|
|
for (let i of data) {
|
|
for (let i of data) {
|
|
|
if (i.type == 1) {
|
|
if (i.type == 1) {
|
|
@@ -242,6 +307,13 @@ async function upload(type) {
|
|
|
ruleForm.value[type] = download_url;
|
|
ruleForm.value[type] = download_url;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+function goTo(url) {}
|
|
|
|
|
+
|
|
|
|
|
+function copy2(url) {
|
|
|
|
|
+ console.log(url);
|
|
|
|
|
+ copy(url);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
|
init();
|
|
init();
|
|
|
});
|
|
});
|
|
@@ -255,4 +327,13 @@ onMounted(() => {
|
|
|
.el-form-item {
|
|
.el-form-item {
|
|
|
align-items: center;
|
|
align-items: center;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+.card-line:first-child {
|
|
|
|
|
+ width: 100px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.s-title {
|
|
|
|
|
+ flex: 0 0 auto;
|
|
|
|
|
+ width: 70px;
|
|
|
|
|
+}
|
|
|
</style>
|
|
</style>
|