| | |
| | | @tab-click="handleTabClick"
|
| | | style="height: calc(100% - 20px);"
|
| | | >
|
| | | <el-tab-pane label="我的算法" name="myAlgorithm">
|
| | | <el-tab-pane label="已安装" name="myAlgorithm">
|
| | | <div class="width-new-line task-list" v-show="activeName === 'myAlgorithm'">
|
| | | <p class="src-title">算法软件</p>
|
| | | <div class="flex-list">
|
| | | <!-- <draggable
|
| | | :list="installedList"
|
| | | :group="{ name: 'article', pull: 'clone', put: false }"
|
| | | :sort="false"
|
| | | @start="startRight"
|
| | | @end="endLeft"
|
| | | style="display:inline"
|
| | | >-->
|
| | |
|
| | | <div class="wrap-box" v-for="item in ungradeList" :key="item.id">
|
| | | <div class="list-choose-item-left">
|
| | | <div class="mask">
|
| | |
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | <!-- 未下载 -->
|
| | | <p class="src-title">应用软件</p>
|
| | | </div>
|
| | | </el-tab-pane>
|
| | |
|
| | |
| | | single
|
| | | tip
|
| | | tipWords="上传算法"
|
| | | uploadPlaceholder="离线安装算法"
|
| | | uploadPlaceholder="上传安装软件"
|
| | | url="/data/api-v/sdk/upload"
|
| | | @complete="onFileUpload"
|
| | | @file-added="onFileAdded"
|
| | |
| | | </div>
|
| | | </div>
|
| | | </el-tab-pane>
|
| | | <el-tab-pane label="算法商城" name="algorithmMall" v-show="activeName==='algorithmMall'">
|
| | | <el-tab-pane label="应用中心" name="algorithmMall" v-show="activeName==='algorithmMall'">
|
| | | <div class="tab-content">
|
| | | <p class="src-title">算法软件</p>
|
| | | <div class="store-list">
|
| | | <div class="wrap-box">
|
| | | <div class="inner">
|
| | |
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | <p class="src-title">应用软件</p>
|
| | | <div class="app-list"></div>
|
| | | </div>
|
| | | <el-drawer title="下载" :visible.sync="actDrawerShow" :direction="direction">
|
| | | <div class="drawer-content">
|
| | |
| | | </el-tab-pane>
|
| | | </el-tabs>
|
| | | </div>
|
| | |
|
| | | <!-- 算法管理 -->
|
| | | <!-- <div class="right-box" style="width:58%">
|
| | | <div class="title">
|
| | | <label>算法管理</label>
|
| | | <el-button size="small" type="primary" @click="addTask" style="float:right">添加任务</el-button>
|
| | | </div>
|
| | | <div id="taskArea" class="width-new-line task-manage-table">
|
| | | <div
|
| | | v-for="(row, Index) in TaskMange.list2"
|
| | | :key="Index"
|
| | | class="dic-border mb10 width-new-line"
|
| | | >
|
| | | <div class="flex-box" style="height:100%;">
|
| | | <div class="task-name-google">
|
| | | <div class="mask" v-if="!row.isSetting">
|
| | | <el-tooltip
|
| | | content="编辑名称"
|
| | | transition="none"
|
| | | placement="left"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconbianji1"
|
| | | style="font-size:30px; left:14px; top:30px;"
|
| | | @click="clickSet(row)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="删除任务"
|
| | | transition="none"
|
| | | placement="right"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshanchu4"
|
| | | style="font-size:30px; color:red; top:30px; left:28px;"
|
| | | @click="clickDel(row, Index)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | :content="`${row.enable ? '关闭任务' : '开启任务'}`"
|
| | | placement="left"
|
| | | popper-class="atooltip"
|
| | | transition="none"
|
| | | style="left: -45px; top: 65px;"
|
| | | >
|
| | | <el-switch
|
| | | :active-value="true"
|
| | | :inactive-value="false"
|
| | | v-model="row.enable"
|
| | | @change="updateTaskStatus(row)"
|
| | | ></el-switch>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="修改图标"
|
| | | transition="none"
|
| | | placement="right"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i class="iconfont icontupian1" style="font-size:12px; left:-20px; top:65px;"></i>
|
| | | </el-tooltip>
|
| | | </div>
|
| | | <div class="list-choose-header flex-center">
|
| | | <span class="iconfont iconrenwu" style="font-size:3rem;color:#fff;"></span>
|
| | | </div>
|
| | | <div class="task-name-div">
|
| | | <span :title="row.name" v-if="!row.isSetting">{{ row.name }}</span>
|
| | | <el-input
|
| | | size="small"
|
| | | v-model="row.name"
|
| | | v-if="row.isSetting"
|
| | | v-focus
|
| | | :maxlength="15"
|
| | | style="width:120px"
|
| | | @blur="updateTaskName(row)"
|
| | | ></el-input>
|
| | | </div>
|
| | | </div>
|
| | |
|
| | | <div id="child" class="overflow-x">
|
| | | <draggable
|
| | | :id="row.id"
|
| | | :list="row.child"
|
| | | group="article"
|
| | | filter=".mask"
|
| | | class="dragAreaR flex-box"
|
| | | @start="startRight"
|
| | | @end="endLeft"
|
| | | >
|
| | | <div
|
| | | v-for="(item, index) in row.child"
|
| | | :key="index"
|
| | | :title="item.sdk_name"
|
| | | :class="
|
| | | item.isSelect
|
| | | ? 'list-choose-item alg-shadow'
|
| | | : 'list-choose-item'
|
| | | "
|
| | | >
|
| | | <div class="mask">
|
| | | <el-tooltip
|
| | | content="设置"
|
| | | transition="none"
|
| | | placement="top"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshezhi"
|
| | | style="font-size:15px; top:43px;"
|
| | | @click="clickSetAlgo(row, item)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="删除算法"
|
| | | transition="none"
|
| | | placement="top"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshanchu4"
|
| | | style="font-size: 30px; color:red; left:12px;"
|
| | | @click="clickDelSdk(row, item)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | </div>
|
| | | <div class style="height:100%;padding: 20px 10px 10px 10px;">
|
| | | <div class="flex-center" style>
|
| | | <span
|
| | | :class="`iconfont ${item.icon}`"
|
| | | style="font-size:3rem;margin-left:5px;"
|
| | | ></span>
|
| | | </div>
|
| | | <div
|
| | | :class="item.isSelect?'select-color text-css':'task-name text-css'"
|
| | | style
|
| | | >{{ item.sdk_name }}</div>
|
| | | </div>
|
| | | </div>
|
| | | <div style class="tc drag-info flex-center">
|
| | | <div class="drag-info-text">
|
| | | <span>拖动算法图标到这里</span>
|
| | | </div>
|
| | | </div>
|
| | | </draggable>
|
| | | </div>
|
| | | </div>
|
| | |
|
| | | <div class v-if="row.isShowSetAlgo">
|
| | | <div class="b-top">
|
| | | <div class="flex-box mt10">
|
| | | <span class="alg-t ml10 mr10 fb">算法配置</span>
|
| | | </div>
|
| | | <div style="border: 1px solid #EBEBEB;"></div>
|
| | | <div>
|
| | | <div class="p5">
|
| | | <div v-for="(temp, index) in TaskMange.argsList" :key="index" class="p5 ml50">
|
| | | <el-row :gutter="2">
|
| | | <el-col :span="4">
|
| | | <el-select
|
| | | v-model="temp.value1"
|
| | | placeholder="请选择"
|
| | | width="200px"
|
| | | disabled
|
| | | @change="selectChange($event, 'options1', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options1"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </el-col>
|
| | | <el-col :span="4">
|
| | | <el-select
|
| | | v-model="temp.value2"
|
| | | placeholder="请选择"
|
| | | @change="selectChange($event, 'options2', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options2"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </el-col>
|
| | | <el-col :span="12">
|
| | | <div v-if="temp.value2 === 'is'">
|
| | | <el-select
|
| | | v-model="temp.value3"
|
| | | placeholder="请选择"
|
| | | @change="selectChange($event, 'options3', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options3"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </div>
|
| | | <div v-else class="flex-row-left">
|
| | | <div>
|
| | | <el-input
|
| | | v-model="temp.value3"
|
| | | placeholder="请输入"
|
| | | @blur="valiNum(temp.value3)"
|
| | | ></el-input>
|
| | | </div>
|
| | | <div v-if="temp.unit" class="unit-class">
|
| | | <span>(单位:{{ temp.unit }})</span>
|
| | | </div>
|
| | | </div>
|
| | | </el-col>
|
| | | </el-row>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | <div class="flex-row-right" style="margin: 0px 25px 5px 0px;">
|
| | | <a
|
| | | style="font-family: PingFangSC-Medium;line-height: 32px;
|
| | | font-size: 13px;text-decoration:underline;
|
| | | color: #3D68E1;margin-right: 28px;"
|
| | | @click="getDefault"
|
| | | >恢复默认值</a>
|
| | | <el-button type="info" size="small" class="mb10" @click="cancle(row)">取消</el-button>
|
| | | <el-button type="primary" size="small" class="mr50 mb10" @click="save">保存</el-button>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>-->
|
| | | </div>
|
| | | <!-- 一般用户可见 -->
|
| | | <div class="common" v-if="!isSuperUser">
|
| | | <!-- 算法管理 -->
|
| | | <!-- <div class="right-box" style="width:84%;margin:auto 8%">
|
| | | <div class="title">
|
| | | <label>算法管理</label>
|
| | | <el-button
|
| | | size="small"
|
| | | type="primary"
|
| | | @click="addTask"
|
| | | style="float:right"
|
| | | v-show="isSuperUser"
|
| | | >添加任务</el-button>
|
| | | </div>
|
| | | <div id="taskArea" class="width-new-line task-manage-table">
|
| | | <div
|
| | | v-for="(row, Index) in TaskMange.list2"
|
| | | :key="Index"
|
| | | class="dic-border mb10 width-new-line"
|
| | | >
|
| | | <div class="flex-box" style="height:100%;">
|
| | | <div class="task-name-google">
|
| | | <div class="mask" v-if="row.isSetting">
|
| | | <el-tooltip
|
| | | content="编辑名称"
|
| | | transition="none"
|
| | | placement="left"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconbianji1"
|
| | | style="font-size:30px; left:14px; top:30px;"
|
| | | @click="clickSet(row)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="删除任务"
|
| | | transition="none"
|
| | | placement="right"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshanchu4"
|
| | | style="font-size:30px; color:red; top:30px; left:28px;"
|
| | | @click="clickDel(row, Index)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | :content="`${row.enable ? '关闭任务' : '开启任务'}`"
|
| | | placement="left"
|
| | | popper-class="atooltip"
|
| | | transition="none"
|
| | | style="left: -45px; top: 65px;"
|
| | | >
|
| | | <el-switch
|
| | | :active-value="true"
|
| | | :inactive-value="false"
|
| | | v-model="row.enable"
|
| | | @change="updateTaskStatus(row)"
|
| | | ></el-switch>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="修改图标"
|
| | | transition="none"
|
| | | placement="right"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont icontupian1"
|
| | | style="font-size:12px; left:-20px; top:65px;"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | </div>
|
| | | <div class="list-choose-header flex-center">
|
| | | <span class="iconfont iconrenwu" style="font-size:3rem;color:#fff;"></span>
|
| | | </div>
|
| | | <div class="task-name-div">
|
| | | <span :title="row.name" v-if="!row.isSetting">{{ row.name }}</span>
|
| | | <el-input
|
| | | size="small"
|
| | | v-model="row.name"
|
| | | v-if="row.isSetting"
|
| | | v-focus
|
| | | :maxlength="15"
|
| | | style="width:120px"
|
| | | @blur="updateTaskName(row)"
|
| | | ></el-input>
|
| | | </div>
|
| | | </div>
|
| | |
|
| | | <div id="child" class="overflow-x">
|
| | | <div
|
| | | :id="row.id"
|
| | | :list="row.child"
|
| | | group="article"
|
| | | filter=".child"
|
| | | class="dragAreaR flex-box"
|
| | | @start="startRight"
|
| | | @end="endLeft"
|
| | | >
|
| | | <div
|
| | | v-for="(item, index) in row.child"
|
| | | :key="index"
|
| | | :title="item.sdk_name"
|
| | | :class="
|
| | | item.isSelect
|
| | | ? 'list-choose-item alg-shadow'
|
| | | : 'list-choose-item'
|
| | | "
|
| | | >
|
| | | <div class="mask">
|
| | | <el-tooltip
|
| | | content="设置"
|
| | | transition="none"
|
| | | placement="top"
|
| | | popper-class="atooltip"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshezhi"
|
| | | style="font-size:15px; top:43px;"
|
| | | @click="clickSetAlgo(row, item)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | <el-tooltip
|
| | | content="删除算法"
|
| | | transition="none"
|
| | | placement="top"
|
| | | popper-class="atooltip"
|
| | | v-show="isSuperUser"
|
| | | >
|
| | | <i
|
| | | class="iconfont iconshanchu4"
|
| | | style="font-size: 30px; color:red; left:12px;"
|
| | | @click="clickDelSdk(row, item)"
|
| | | ></i>
|
| | | </el-tooltip>
|
| | | </div>
|
| | | <div class style="height:100%;padding: 20px 10px 10px 10px;">
|
| | | <div class="flex-center" style>
|
| | | <span
|
| | | :class="`iconfont ${item.icon}`"
|
| | | style="font-size:3rem;margin-left:5px;"
|
| | | ></span>
|
| | | </div>
|
| | | <div
|
| | | :class="item.isSelect?'select-color text-css':'task-name text-css'"
|
| | | style
|
| | | >{{ item.sdk_name }}</div>
|
| | | </div>
|
| | | </div>
|
| | | <div style class="tc drag-info flex-center" v-show="isSuperUser">
|
| | | <div class="drag-info-text">
|
| | | <span>拖动算法图标到这里</span>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | |
|
| | | <div class v-if="row.isShowSetAlgo">
|
| | | <div class="b-top">
|
| | | <div class="flex-box mt10">
|
| | | <span class="alg-t ml10 mr10 fb">算法配置</span>
|
| | | </div>
|
| | | <div style="border: 1px solid #EBEBEB;"></div>
|
| | | <div>
|
| | | <div class="p5">
|
| | | <div
|
| | | v-for="(temp, index) in TaskMange.argsList"
|
| | | :key="index"
|
| | | class="p5 ml50"
|
| | | >
|
| | | <el-row :gutter="2">
|
| | | <el-col :span="4">
|
| | | <el-select
|
| | | v-model="temp.value1"
|
| | | placeholder="请选择"
|
| | | width="200px"
|
| | | disabled
|
| | | @change="selectChange($event, 'options1', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options1"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </el-col>
|
| | | <el-col :span="4">
|
| | | <el-select
|
| | | v-model="temp.value2"
|
| | | placeholder="请选择"
|
| | | disabled
|
| | | @change="selectChange($event, 'options2', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options2"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </el-col>
|
| | | <el-col :span="12">
|
| | | <div v-if="temp.value2 === 'is'">
|
| | | <el-select
|
| | | v-model="temp.value3"
|
| | | placeholder="请选择"
|
| | | @change="selectChange($event, 'options3', temp)"
|
| | | >
|
| | | <el-option
|
| | | v-for="item in temp.options3"
|
| | | :key="item.id"
|
| | | :label="item.name"
|
| | | :value="item.value"
|
| | | ></el-option>
|
| | | </el-select>
|
| | | </div>
|
| | | <div v-else class="flex-row-left">
|
| | | <div>
|
| | | <el-input
|
| | | v-model="temp.value3"
|
| | | placeholder="请输入"
|
| | | :disabled="temp.value1 !== 'score'"
|
| | | @blur="valiNum(temp.value3)"
|
| | | ></el-input>
|
| | | </div>
|
| | | <div v-if="temp.unit" class="unit-class">
|
| | | <span>(单位:{{ temp.unit }})</span>
|
| | | </div>
|
| | | </div>
|
| | | </el-col>
|
| | | </el-row>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | <div class="flex-row-right" style="margin: 0px 25px 5px 0px;">
|
| | | <a
|
| | | style="font-family: PingFangSC-Medium;line-height: 32px;
|
| | | font-size: 13px;text-decoration:underline;
|
| | | color: #3D68E1;margin-right: 28px;"
|
| | | @click="getDefault"
|
| | | v-show="isSuperUser"
|
| | | >恢复默认值</a>
|
| | | <el-button type="info" size="small" class="mb10" @click="cancle(row)">取消</el-button>
|
| | | <el-button type="primary" size="small" class="mr50 mb10" @click="save">保存</el-button>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>-->
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | |
| | | .s-task-manage {
|
| | | width: 100% !important;
|
| | | height: 100%;
|
| | |
|
| | | box-sizing: border-box;
|
| | | background-color: rgb(233, 235, 242);
|
| | | padding: 10px;
|
| | | text-align: left;
|
| | | min-width: 1106px;
|
| | | // background-color: #f2f6fc;
|
| | | .s-video-manage-breadcrumb {
|
| | | height: 5%;
|
| | |
| | | text-align: center;
|
| | | color: #666;
|
| | | }
|
| | | }
|
| | | .src-title{
|
| | | color: #333;
|
| | | font-family: 'PingFangSC-Semibold', 'PingFang SC Semibold', 'PingFang SC';
|
| | | font-weight: 650;
|
| | | font-style: normal;
|
| | | height: 36px;
|
| | | font-size: 15px;
|
| | | padding-left: 25px;
|
| | | }
|
| | | .task-manage {
|
| | | height: 100%;
|
| | |
| | | .left-box {
|
| | | // width: 41%;
|
| | | height: 100%;
|
| | | padding-top: 10px;
|
| | | box-sizing: border-box;
|
| | | // float: left;
|
| | |
|
| | |
| | | }
|
| | | .task-list {
|
| | | background: #fff;
|
| | | padding: 30px 20px 20px;
|
| | | padding: 20px;
|
| | | box-sizing: border-box;
|
| | | |
| | | .flex-list {
|
| | | display: flex;
|
| | | flex-direction: row;
|