ZZJ
2022-07-28 edef6ae8f59823258ce610c9074d32e698958b51
src/views/hashrate/AlgManage/index.vue
@@ -10,17 +10,15 @@
        <div class="algCard" v-for="(item, index) in payAlg" :key="index">
          <img :src="item.logoUrl" alt="" draggable="false" />
          <div class="name">{{ item.productName }}</div>
          <span class="button pay" @click="toDetail(item.productName)"
            >购买</span
          >
          <span class="button pay" @click="toDetail(item.id)">购买</span>
        </div>
      </div>
      <!-- 免费算法列表 -->
      <div class="label freeLabel">
        免费算法 <span class="des">从此处拖拽算法图标安装到设备</span>
        本地算法 <span class="des">从此处拖拽算法图标安装到设备</span>
      </div>
      <div class="freeList">
      <div class="freeList scroll">
        <div
          class="algCard"
          v-for="(item, index) in freeAlg"
@@ -34,9 +32,7 @@
            @dragstart="dragStart(item)"
          />
          <div class="name">{{ item.productName }}</div>
          <span class="button detail" @click="toDetail(item.productName)"
            >查看详情</span
          >
          <span class="button detail" @click="toDetail(item.id)">查看详情</span>
        </div>
      </div>
    </div>
@@ -53,29 +49,29 @@
        <div class="algList">
          <!-- 算法card -->
          <Card
            v-for="(alg, index) in item.sdkList"
            v-for="(alg, index) in item.sdkList1"
            :key="index"
            :alg="alg"
            :devId="item.devId"
            @unInstall="item.sdkList.splice(index, 1)"
            @unInstall="item.sdkList1.splice(index, 1)"
          ></Card>
          <!-- 拖拽存放box -->
          <div
            class="dropBox"
            v-if="dragAlg"
            @dragover="dragover($event)"
            @drop="drop(item.sdkList, item.devId)"
            @drop="drop(item.sdkList1, item.devId)"
          >
            请拖动到此处
          </div>
          <!-- 空算法情况 -->
          <div
            class="empty"
            v-if="item.sdkList && item.sdkList.length === 0 && !dragAlg"
            v-if="item.sdkList1 && item.sdkList1.length === 0 && !dragAlg"
          >
            <img src="/images/hashrate/算法管理空页面.png" alt="" />
            <img src="/images/hashrate/sdkEmpty.png" alt="" />
            <div class="des">
              暂未安装算法,从左侧算法中心拖到算法到此处,即可安装
              暂未安装算法,从左侧算法中心算法到此处,即可安装
            </div>
          </div>
        </div>
@@ -187,7 +183,19 @@
    async getEquipment() {
      const res = await findAllSdk();
      if (res && res.success) {
        this.equipmentArr = res.data;
        this.equipmentArr = [];
        res.data.forEach((item, index) => {
          if (item.sdkList) {
            let sdkList1 = [];
            item.sdkList.forEach((sdk) => {
              if (sdk.installed) {
                sdkList1.push(sdk);
              }
            });
            item.sdkList1 = sdkList1;
            this.equipmentArr.push(item);
          }
        });
      }
    },
    //拖拽开始
@@ -205,16 +213,21 @@
        sdk_name: this.dragAlg.productName,
      });
      const res = await downloadOrUpgrade({
        nodeId: devId,
        path: this.dragAlg.productBaseId,
        userId: JSON.parse(sessionStorage.getItem("userInfo")).id,
      });
      if (res && res.success) {
        this.$notify({
          type: "success",
          message: "操作成功,请稍后",
      try {
        const res = await downloadOrUpgrade({
          nodeId: devId,
          path: this.dragAlg.productBaseId,
          userId: JSON.parse(sessionStorage.getItem("userInfo")).id,
          inputText: this.dragAlg.productName,
        });
        if (res && res.success) {
          this.$notify({
            type: "success",
            message: "操作成功,请稍后",
          });
        }
      } catch (err) {
        algArr.pop();
      }
      this.dragAlg = null;
@@ -245,7 +258,7 @@
        let devObj = {};
        let sdkIds = [];
        devObj.devId = dev.devId;
        dev.sdkList.forEach((sdk) => {
        dev.sdkList1.forEach((sdk) => {
          if (sdk.isUpgrade) {
            sdkIds.push(sdk.id);
          }
@@ -261,15 +274,15 @@
      if (res && res.success) {
        this.$notify({
          type: "success",
          message: "操作成功",
          message: res.msg,
        });
      }
    },
    toDetail(productName) {
    toDetail(id) {
      this.$router.push({
        path: "/productDetail",
        query: {
          name: productName,
          id: id,
        },
      });
    },