he wei
2024-01-08 a125df511a766bc5aa608fd9b5fc6bf666bf7011
src/views/hrControl/index.vue
@@ -3,15 +3,26 @@
    <div class="p-content flex-r">
      <div class="p-left flex-c">
        <panel class="panel group" title="遥测量模拟(组端)">
          <div slot="tools" class="btn-grp">
          <div slot="leftTools" class="btn-grp">
            <gradient-btn size="xs" @click="selectAll('checkList1')"
              >全选</gradient-btn
            >
            <gradient-btn size="xs" @click="cancelSelectAll('checkList1')"
              >取消全选</gradient-btn
            >
          </div>
          <div slot="tools" class="btn-grp">
            <gradient-btn
              size="xs"
              :disabled="!checkList1.some((v) => v == true) || !hasPermission"
              @click="batchGroupSet(1)"
              >批量给定</gradient-btn
            >
            <gradient-btn
              size="xs"
              :disabled="!checkList1.some((v) => v == true) || !hasPermission"
              @click="batchGroupSet"
              >批量给定</gradient-btn
              @click="batchGroupSet(0)"
              >批量取消</gradient-btn
            >
          </div>
          <div class="content">
@@ -42,44 +53,95 @@
            </el-radio-group>
          </div>
          <div class="content flex-c">
            <div class="banner btn-grp" v-show="0 == battInfoType">
              <gradient-btn size="xs" @click="selectAll('checkListMon', 0)"
                >全选</gradient-btn
              >
              <gradient-btn
                size="xs"
                :disabled="
                  !checkListMon[0].some((v) => v == true) || !hasPermission
                "
                @click="batchMonSet(0)"
                >批量给定</gradient-btn
              >
            <div class="banner" v-show="0 == battInfoType">
              <div class="btn-grp">
                <gradient-btn size="xs" @click="selectAll('checkListMon', 0)"
                  >全选</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  @click="cancelSelectAll('checkListMon', 0)"
                  >取消全选</gradient-btn
                >
              </div>
              <div class="btn-grp">
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[0].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(0, 1)"
                  >批量给定</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[0].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(0, 0)"
                  >批量取消</gradient-btn
                >
              </div>
            </div>
            <div class="banner btn-grp" v-show="1 == battInfoType">
              <gradient-btn size="xs" @click="selectAll('checkListMon', 1)"
                >全选</gradient-btn
              >
              <gradient-btn
                size="xs"
                :disabled="
                  !checkListMon[1].some((v) => v == true) || !hasPermission
                "
                @click="batchMonSet(1)"
                >批量给定</gradient-btn
              >
            <div class="banner" v-show="1 == battInfoType">
              <div class="btn-grp">
                <gradient-btn size="xs" @click="selectAll('checkListMon', 1)"
                  >全选</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  @click="cancelSelectAll('checkListMon', 1)"
                  >取消全选</gradient-btn
                >
              </div>
              <div class="btn-grp">
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[1].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(1, 1)"
                  >批量给定</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[1].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(1, 0)"
                  >批量取消</gradient-btn
                >
              </div>
            </div>
            <div class="banner btn-grp" v-show="2 == battInfoType">
              <gradient-btn size="xs" @click="selectAll('checkListMon', 2)"
                >全选</gradient-btn
              >
              <gradient-btn
                size="xs"
                :disabled="
                  !checkListMon[2].some((v) => v == true) || !hasPermission
                "
                @click="batchMonSet(2)"
                >批量给定</gradient-btn
              >
            <div class="banner" v-show="2 == battInfoType">
              <div class="btn-grp">
                <gradient-btn size="xs" @click="selectAll('checkListMon', 2)"
                  >全选</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  @click="cancelSelectAll('checkListMon', 2)"
                  >取消全选</gradient-btn
                >
              </div>
              <div class="btn-grp">
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[2].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(2, 1)"
                  >批量给定</gradient-btn
                >
                <gradient-btn
                  size="xs"
                  :disabled="
                    !checkListMon[2].some((v) => v == true) || !hasPermission
                  "
                  @click="batchMonSet(2, 0)"
                  >批量取消</gradient-btn
                >
              </div>
            </div>
            <div class="grid1 scroller" v-show="0 == battInfoType">
              <yc-grid :count="monCount" :config="monProps[0]">
@@ -238,7 +300,9 @@
                <div class="card-content">
                  <div class="item-row">
                    <div class="label">停止原因:</div>
                    <div class="value">{{ stopReason[testStopTypeReal] || '未知' }}</div>
                    <div class="value">
                      {{ stopReason[testStopTypeReal] || "未知" }}
                    </div>
                  </div>
                  <div class="item-row">
                    <div class="label">状态码:</div>
@@ -500,7 +564,7 @@
      if (!this.isWSOpen1) {
        return false;
      }
      this.SOCKET1.send('');
      this.SOCKET1.send("");
    },
    onWSMessage1(res) {
      let { data, data2, data3, data4 } = JSON.parse(res.data);
@@ -520,11 +584,19 @@
      } else {
        let arr = this[list][idx].map(() => true);
        this.$set(this[list], idx, arr);
        // this[list][idx] = this[list][idx].map(() => true);
      }
    },
    batchGroupSet(type) {
      this.$confirm("确认批量给定?", "提示", {
    cancelSelectAll(list, idx) {
      if (idx == undefined) {
        this[list] = this[list].map(() => false);
      } else {
        let arr = this[list][idx].map(() => false);
        this.$set(this[list], idx, arr);
      }
    },
    batchGroupSet(setFlag) {
      let title = setFlag ? "确认批量给定?" : "确认批量取消给定?";
      this.$confirm(title, "提示", {
        type: "warning",
      })
        .then(() => {
@@ -539,13 +611,13 @@
              let $el = this.$refs[refName];
              // console.log($el);
              params["battIndex"] = 0;
              params[$el.option.key1] = $el.num;
              params[$el.option.flag] = 1;
              params[$el.option.key1] = setFlag ? $el.num : undefined;
              params[$el.option.flag] = setFlag ? 1 : 0;
              params["logList"].push({
                param: $el.option.flag,
                paramCn: $el.title,
                value: $el.num,
                st: 1,
                value: setFlag ? $el.num : undefined,
                st: setFlag ? 1 : 0,
              });
            });
@@ -562,8 +634,9 @@
        })
        .catch(() => {});
    },
    batchMonSet(type) {
      this.$confirm("确认批量执行?", "提示", {
    batchMonSet(type, setFlag) {
      let title = setFlag ? "确认批量给定?" : "确认批量取消给定?";
      this.$confirm(title, "提示", {
        type: "warning",
      })
        .then(() => {
@@ -579,8 +652,8 @@
              let $el = this.$refs[refName];
              let params2 = {};
              params2[$el.option.key1] = $el.num;
              params2[$el.option.flag] = 1;
              params2[$el.option.key1] = setFlag ? $el.num : undefined;
              params2[$el.option.flag] = setFlag ? 1 : 0;
              params2["battIndex"] = 0;
              params2["monNum"] = $el.option.monNum;
@@ -588,8 +661,8 @@
              params["logList"].push({
                param: $el.option.flag,
                paramCn: $el.title,
                value: $el.num,
                st: 1,
                value: setFlag ? $el.num : undefined,
                st: setFlag ? 1 : 0,
                monNum: $el.option.monNum,
                battIndex: 0,
              });
@@ -705,8 +778,8 @@
}
.banner {
  display: flex;
  justify-content: flex-end;
  margin: -10px -10px 0 0;
  justify-content: space-between;
  margin: -10px -10px 0 -10px;
}
.grid1 {
  flex: 1;