|
@@ -2,7 +2,7 @@
|
|
|
<div class="appManagement">
|
|
|
<div class="ac_left">
|
|
|
<div class="find">
|
|
|
- <img src="../../../../assets/icon/appStore/find_icon.svg">
|
|
|
+ <img src="../../../../assets/icon/appStore/find_icon.svg" />
|
|
|
<span>发现</span>
|
|
|
</div>
|
|
|
<saveCard
|
|
@@ -12,7 +12,13 @@
|
|
|
:type="1"
|
|
|
@saveClick="openApp"
|
|
|
/>
|
|
|
- <saveCard title="收藏" :icon="require('../../../../assets/icon/appStore/collect_icon.svg')":data="collect" :type="0" @saveClick="openApp" />
|
|
|
+ <saveCard
|
|
|
+ title="收藏"
|
|
|
+ :icon="require('../../../../assets/icon/appStore/collect_icon.svg')"
|
|
|
+ :data="collect"
|
|
|
+ :type="0"
|
|
|
+ @saveClick="openApp"
|
|
|
+ />
|
|
|
</div>
|
|
|
<div class="ac_right">
|
|
|
<div class="ac_header">
|
|
@@ -116,7 +122,6 @@
|
|
|
style="width: 250px;margin-right: 10px;"
|
|
|
placeholder="请输入应用名称"
|
|
|
@keyup.enter.native="getData"
|
|
|
-
|
|
|
>
|
|
|
<i
|
|
|
slot="suffix"
|
|
@@ -136,7 +141,12 @@
|
|
|
</div>
|
|
|
|
|
|
<div class="ac_content">
|
|
|
- <div class="ac_c_item" v-for="(item, index) in dataList" :key="item.id">
|
|
|
+ <div
|
|
|
+ class="ac_c_item"
|
|
|
+ v-if="showType !== '' && !getDataLoading"
|
|
|
+ v-for="(item, index) in dataList"
|
|
|
+ :key="item.id"
|
|
|
+ >
|
|
|
<div class="ac_c_i_top" @click="openApp(item)">
|
|
|
<div class="ac_c_i_t_left">
|
|
|
<img v-if="item.json.icon" :src="item.json.icon" />
|
|
@@ -331,6 +341,230 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+
|
|
|
+ <div class="ac_c_typeCard" v-if="showType == ''">
|
|
|
+ <div class="ac_c_tc_item" v-for="(item2, index) in typeList">
|
|
|
+ <div class="ac_c_tc_i_top">
|
|
|
+ <div>{{ item2.name }}</div>
|
|
|
+
|
|
|
+ <span @click="item2.open = !item2.open"
|
|
|
+ >查看更多
|
|
|
+ <img
|
|
|
+ :style="`transform: rotate(${item2.open ? '0' : '90'}deg);`"
|
|
|
+ src="../../../../assets/icon/appStore/arrow.svg"
|
|
|
+ />
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_tc_i_bottom" v-show="item2.open">
|
|
|
+ <div
|
|
|
+ class="ac_c_item"
|
|
|
+ v-if="item.type === item2.id"
|
|
|
+ v-for="(item, index) in dataList"
|
|
|
+ :key="item.id"
|
|
|
+ >
|
|
|
+ <div class="ac_c_i_top" @click="openApp(item)">
|
|
|
+ <div class="ac_c_i_t_left">
|
|
|
+ <img v-if="item.json.icon" :src="item.json.icon" />
|
|
|
+ <svg
|
|
|
+ v-else
|
|
|
+ t="1732605901531"
|
|
|
+ class="icon"
|
|
|
+ viewBox="0 0 1024 1024"
|
|
|
+ version="1.1"
|
|
|
+ xmlns="http://www.w3.org/2000/svg"
|
|
|
+ p-id="4275"
|
|
|
+ width="200"
|
|
|
+ height="200"
|
|
|
+ >
|
|
|
+ <path
|
|
|
+ d="M179.2 153.6a51.2 51.2 0 0 0-51.2 51.2v128a51.2 51.2 0 0 0 51.2 51.2h128a51.2 51.2 0 0 0 51.2-51.2V204.8a51.2 51.2 0 0 0-51.2-51.2H179.2z m0-102.4h128a153.6 153.6 0 0 1 153.6 153.6v128a153.6 153.6 0 0 1-153.6 153.6H179.2a153.6 153.6 0 0 1-153.6-153.6V204.8a153.6 153.6 0 0 1 153.6-153.6z m0 614.4a51.2 51.2 0 0 0-51.2 51.2v128a51.2 51.2 0 0 0 51.2 51.2h128a51.2 51.2 0 0 0 51.2-51.2V716.8a51.2 51.2 0 0 0-51.2-51.2H179.2z m0-102.4h128a153.6 153.6 0 0 1 153.6 153.6v128a153.6 153.6 0 0 1-153.6 153.6H179.2a153.6 153.6 0 0 1-153.6-153.6V716.8a153.6 153.6 0 0 1 153.6-153.6z m611.84-403.4048a51.2 51.2 0 0 0-72.3968 0L646.144 232.2432a51.2 51.2 0 0 0 0 72.3968l72.448 72.3968a51.2 51.2 0 0 0 72.3968 0l72.3968-72.3968a51.2 51.2 0 0 0 0-72.3968L791.04 159.744z m72.3968-72.3968l72.3968 72.3968a153.6 153.6 0 0 1 0 217.2416l-72.3968 72.3968a153.6 153.6 0 0 1-217.2416 0l-72.3968-72.3968a153.6 153.6 0 0 1 0-217.2416l72.3968-72.3968a153.6 153.6 0 0 1 217.2416 0zM699.7504 896a51.2 51.2 0 0 1 0 102.4A162.1504 162.1504 0 0 1 537.6 836.2496v-110.8992A162.1504 162.1504 0 0 1 699.7504 563.2h110.8992a162.1504 162.1504 0 0 1 162.1504 162.1504v8.448a51.2 51.2 0 0 1-102.4 0v-8.448c0-33.024-26.7264-59.7504-59.7504-59.7504h-110.8992c-33.024 0-59.7504 26.7264-59.7504 59.7504v110.8992c0 33.024 26.7264 59.7504 59.7504 59.7504z"
|
|
|
+ fill="#2C6DD2"
|
|
|
+ p-id="4276"
|
|
|
+ ></path>
|
|
|
+ <path
|
|
|
+ d="M791.4496 160a51.2 51.2 0 0 0-72.3968 0l-72.448 72.3968a51.2 51.2 0 0 0 0 72.3968l72.448 72.3968a51.2 51.2 0 0 0 72.3968 0l72.3968-72.3968a51.2 51.2 0 0 0 0-72.3968l-72.3968-72.3968z"
|
|
|
+ fill="#20C997"
|
|
|
+ p-id="4277"
|
|
|
+ ></path>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_i_t_right">
|
|
|
+ <div class="ac_c_i_t_r_top">
|
|
|
+ <el-tooltip
|
|
|
+ class="item"
|
|
|
+ effect="light"
|
|
|
+ :content="item.name"
|
|
|
+ placement="top"
|
|
|
+ >
|
|
|
+ <span>{{ item.name }}</span>
|
|
|
+ </el-tooltip>
|
|
|
+
|
|
|
+ <div class="ac_c_i_t_popover" v-if="showMenu(item)">
|
|
|
+ <div
|
|
|
+ class="ac_c_i_t_p_box"
|
|
|
+ v-if="editAppCard === item.id"
|
|
|
+ v-click-outside="handleBlur"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ @click.stop="copyApp(item)"
|
|
|
+ v-if="item.json && item.json.copy === '1'"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/copy.svg"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <span>复制</span>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ @click.stop="updateApp(item)"
|
|
|
+ v-if="item.userid === userId"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/edit.svg"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <span>修改</span>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ @click.stop="delApp(item)"
|
|
|
+ v-if="item.userid === userId"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/del.svg"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <span>删除</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <svg
|
|
|
+ t="1732786015570"
|
|
|
+ @click.stop="updateCard(item.id)"
|
|
|
+ :style="
|
|
|
+ `transform: rotate(${
|
|
|
+ editAppCard === item.id ? '0deg' : '90deg'
|
|
|
+ });background-color:${
|
|
|
+ editAppCard === item.id ? '#F3F7FD' : '#fff'
|
|
|
+ }`
|
|
|
+ "
|
|
|
+ class="icon"
|
|
|
+ viewBox="0 0 1024 1024"
|
|
|
+ version="1.1"
|
|
|
+ xmlns="http://www.w3.org/2000/svg"
|
|
|
+ p-id="9199"
|
|
|
+ width="200"
|
|
|
+ height="200"
|
|
|
+ >
|
|
|
+ <path
|
|
|
+ d="M192 443.733333c-38.4 0-68.266667 29.866667-68.266667 68.266667 0 38.4 29.866667 68.266667 68.266667 68.266667s68.266667-29.866667 68.266667-68.266667c0-38.4-29.866667-68.266667-68.266667-68.266667zM512 443.733333c-38.4 0-68.266667 29.866667-68.266667 68.266667 0 38.4 29.866667 68.266667 68.266667 68.266667s68.266667-29.866667 68.266667-68.266667c0-38.4-29.866667-68.266667-68.266667-68.266667zM832 443.733333c-38.4 0-68.266667 29.866667-68.266667 68.266667 0 38.4 29.866667 68.266667 68.266667 68.266667s68.266667-29.866667 68.266667-68.266667c0-38.4-34.133333-68.266667-68.266667-68.266667z"
|
|
|
+ fill="#111111"
|
|
|
+ p-id="9200"
|
|
|
+ ></path>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_i_t_r_center">
|
|
|
+ <span>@{{ item.username }}</span>
|
|
|
+ <div v-if="item.label === 'workflow'">
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/workflow.svg"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ 工作流
|
|
|
+ </div>
|
|
|
+ <div v-if="item.label === 'agent'">
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/agent.svg"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ 智能体
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_i_t_r_bottom">
|
|
|
+ {{ item.detail }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_i_bottom">
|
|
|
+ <div class="ac_c_i_b_left">
|
|
|
+ <el-tooltip
|
|
|
+ class="item"
|
|
|
+ effect="light"
|
|
|
+ content="被复制数"
|
|
|
+ placement="top"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/user_copy.svg"
|
|
|
+ />
|
|
|
+ <span>{{ item.copyCount }}</span>
|
|
|
+ </div>
|
|
|
+ </el-tooltip>
|
|
|
+ <el-tooltip
|
|
|
+ class="item"
|
|
|
+ effect="light"
|
|
|
+ :content="item.likeId ? '取消点赞' : '点赞'"
|
|
|
+ placement="top"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <img
|
|
|
+ :src="
|
|
|
+ require('../../../../assets/icon/appStore/praise_default.svg')
|
|
|
+ "
|
|
|
+ v-if="!item.likeId"
|
|
|
+ style="cursor: pointer;"
|
|
|
+ @click="praiseFn(item, 0)"
|
|
|
+ />
|
|
|
+ <img
|
|
|
+ :src="
|
|
|
+ require('../../../../assets/icon/appStore/praise_active.svg')
|
|
|
+ "
|
|
|
+ v-else
|
|
|
+ style="cursor: pointer;"
|
|
|
+ @click="praiseFn(item, 1)"
|
|
|
+ />
|
|
|
+ <span>{{ item.likeCount }}</span>
|
|
|
+ </div>
|
|
|
+ </el-tooltip>
|
|
|
+ <el-tooltip
|
|
|
+ class="item"
|
|
|
+ effect="light"
|
|
|
+ :content="item.collectId ? '取消收藏' : '收藏'"
|
|
|
+ placement="top"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/collect_default.svg"
|
|
|
+ v-if="!item.collectId"
|
|
|
+ style="cursor: pointer;"
|
|
|
+ @click="collectFn(item, 0)"
|
|
|
+ />
|
|
|
+ <img
|
|
|
+ src="../../../../assets/icon/appStore/collect_active.svg"
|
|
|
+ v-else
|
|
|
+ style="cursor: pointer;"
|
|
|
+ @click="collectFn(item, 1)"
|
|
|
+ />
|
|
|
+ <span>{{ item.collectCount }}</span>
|
|
|
+ </div>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ <div class="ac_c_i_b_right" v-if="item.json.status">
|
|
|
+ <span
|
|
|
+ class="ac_c_i_b_r_type2"
|
|
|
+ v-if="item.json.status === '1'"
|
|
|
+ >测试</span
|
|
|
+ >
|
|
|
+ <span
|
|
|
+ class="ac_c_i_b_r_type1"
|
|
|
+ v-if="item.json.status === '2'"
|
|
|
+ >稳定</span
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<!-- <div
|
|
|
class="ac_c_item"
|
|
|
v-for="(item, index) in dataList"
|
|
@@ -743,7 +977,7 @@ export default {
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "insert_appStore", params)
|
|
|
.then(res => {
|
|
|
- if (res.data == 1) {
|
|
|
+ if (res.data[0][0]["id"]) {
|
|
|
this.$message.success("添加成功");
|
|
|
this.$refs.addAppDialogRef.close(true);
|
|
|
this.getData();
|
|
@@ -835,6 +1069,11 @@ export default {
|
|
|
.then(res => {
|
|
|
let data = res.data[0];
|
|
|
if (data.length > 0) {
|
|
|
+ data.forEach(i => {
|
|
|
+ if (i.open == undefined) {
|
|
|
+ i.open = true;
|
|
|
+ }
|
|
|
+ });
|
|
|
this.typeList = data;
|
|
|
}
|
|
|
})
|
|
@@ -1142,25 +1381,25 @@ export default {
|
|
|
overflow: auto;
|
|
|
}
|
|
|
|
|
|
-.ac_left>.find{
|
|
|
+.ac_left > .find {
|
|
|
width: 100%;
|
|
|
height: 45px;
|
|
|
background-color: #fff;
|
|
|
- border-radius:10px ;
|
|
|
- border: 1px solid #F3F7FD;
|
|
|
+ border-radius: 10px;
|
|
|
+ border: 1px solid #f3f7fd;
|
|
|
box-sizing: border-box;
|
|
|
padding: 0 20px;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
/* box-shadow: 2px 2px 4px 0px #1D39830A; */
|
|
|
- box-shadow: 0px 0px 4px 2px #1D39830A;
|
|
|
+ box-shadow: 0px 0px 4px 2px #1d39830a;
|
|
|
margin-bottom: 10px;
|
|
|
font-weight: bold;
|
|
|
font-size: 16px;
|
|
|
- color: #000000E5;
|
|
|
+ color: #000000e5;
|
|
|
}
|
|
|
|
|
|
-.ac_left>.find>img{
|
|
|
+.ac_left > .find > img {
|
|
|
width: 22px;
|
|
|
height: 22px;
|
|
|
margin-right: 10px;
|
|
@@ -1308,6 +1547,11 @@ export default {
|
|
|
padding-bottom: 10px;
|
|
|
}
|
|
|
|
|
|
+.ac_c_typeCard {
|
|
|
+ width: 100%;
|
|
|
+ height: auto;
|
|
|
+}
|
|
|
+
|
|
|
.ac_c_item {
|
|
|
width: calc(100% / 4 - (15px * 4) / 4);
|
|
|
height: 250px;
|
|
@@ -1395,28 +1639,35 @@ export default {
|
|
|
.ac_c_i_t_left {
|
|
|
width: 100px;
|
|
|
min-width: 100px;
|
|
|
- height: 100%;
|
|
|
+ height: 100px;
|
|
|
box-sizing: border-box;
|
|
|
display: flex;
|
|
|
align-items: flex-start;
|
|
|
box-sizing: border-box;
|
|
|
padding: 10px;
|
|
|
+ margin-right: 10px;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_t_left > svg {
|
|
|
width: 100%;
|
|
|
height: auto;
|
|
|
+ border: 1px solid #e7e7e7;
|
|
|
+ border-radius: 4px;
|
|
|
+ box-sizing: border-box;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_t_left > img {
|
|
|
width: 100%;
|
|
|
object-fit: cover;
|
|
|
height: 80px;
|
|
|
+ border: 1px solid #e7e7e7;
|
|
|
+ border-radius: 4px;
|
|
|
+ box-sizing: border-box;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_t_right {
|
|
|
flex: 1;
|
|
|
- width: calc(100% - 100px);
|
|
|
+ width: calc(100% - 100px - 10px);
|
|
|
height: 100%;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
@@ -1432,7 +1683,6 @@ export default {
|
|
|
align-items: flex-end;
|
|
|
justify-content: space-between;
|
|
|
position: relative;
|
|
|
- font-size: 1.3em;
|
|
|
font-weight: bold;
|
|
|
box-sizing: border-box;
|
|
|
padding-bottom: 2px;
|
|
@@ -1444,6 +1694,7 @@ export default {
|
|
|
white-space: nowrap;
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
+ font-size: 24px;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_t_popover {
|
|
@@ -1509,6 +1760,7 @@ export default {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
align-items: center;
|
|
|
+ margin: 5px 0;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_t_r_center > span {
|
|
@@ -1516,6 +1768,7 @@ export default {
|
|
|
max-width: calc(100% - 80px);
|
|
|
white-space: nowrap;
|
|
|
overflow: hidden;
|
|
|
+ font-size: 20px;
|
|
|
color: #00000066;
|
|
|
text-overflow: ellipsis;
|
|
|
}
|
|
@@ -1526,7 +1779,7 @@ export default {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
- font-size: 0.8em;
|
|
|
+ font-size: 16px;
|
|
|
background-color: #f3f3f3;
|
|
|
color: #00000066;
|
|
|
border-radius: 3px;
|
|
@@ -1540,21 +1793,21 @@ export default {
|
|
|
|
|
|
.ac_c_i_t_r_bottom {
|
|
|
max-width: 100%;
|
|
|
- max-height: calc(100% - 30px - 40px - 20px);
|
|
|
- margin-top: 10px;
|
|
|
+ max-height: calc(100% - 30px - 40px - 20px - 10px + 5px);
|
|
|
+ margin-top: 5px;
|
|
|
margin-bottom: 10px;
|
|
|
+ font-size: 18px;
|
|
|
color: #00000099;
|
|
|
display: -webkit-box;
|
|
|
-webkit-box-orient: vertical;
|
|
|
- -webkit-line-clamp: 5;
|
|
|
+ -webkit-line-clamp: 4;
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
}
|
|
|
|
|
|
.ac_c_i_bottom {
|
|
|
width: 100%;
|
|
|
- height: 40px;
|
|
|
- padding-top: 10px;
|
|
|
+ height: 50px;
|
|
|
box-sizing: border-box;
|
|
|
border-top: solid 2px #e7e7e7;
|
|
|
display: flex;
|
|
@@ -1592,7 +1845,7 @@ export default {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
width: 70px;
|
|
|
- height: 100%;
|
|
|
+ height: 70%;
|
|
|
justify-content: flex-end;
|
|
|
}
|
|
|
|
|
@@ -1625,6 +1878,43 @@ export default {
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
|
|
|
+.ac_c_tc_item {
|
|
|
+ width: 100%;
|
|
|
+ height: auto;
|
|
|
+}
|
|
|
+
|
|
|
+.ac_c_tc_i_top {
|
|
|
+ width: 100%;
|
|
|
+ height: 40px;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ margin-bottom: 20px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 0 20px;
|
|
|
+ /* background-color: red; */
|
|
|
+}
|
|
|
+
|
|
|
+.ac_c_tc_i_top > div {
|
|
|
+ font-size: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.ac_c_tc_i_top > span {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ color: #a2a2a2;
|
|
|
+ font-size: 16px;
|
|
|
+ cursor: pointer;
|
|
|
+}
|
|
|
+
|
|
|
+.ac_c_tc_i_top > span > img {
|
|
|
+ width: 18px;
|
|
|
+ height: 18px;
|
|
|
+ margin-left: 5px;
|
|
|
+ transform: rotate(90deg);
|
|
|
+ transition: 0.3s;
|
|
|
+}
|
|
|
+
|
|
|
/* .ac_c_i_top {
|
|
|
width: 100%;
|
|
|
height: 50px;
|