he wei
2024-11-08 106374208e6e7265db3c00ddfa948c39b7c252ea
src/views/test/paramContent.vue
@@ -30,6 +30,12 @@
    type: Boolean,
    default: false,
  },
  isUpdate: {
    type: Boolean,
  },
  testType: {
    type: Number,
  }
});
const list = reactive({
@@ -38,13 +44,16 @@
});
const params = reactive({
  batteryTemperatureProtect: null,
  batteryName: "",
  nominalCapacity: 0,
  testType: 1,
  batteryName: 0,
  batteryType: 0,
  batteryNumber: 0,
  diffBatteryVoltage: 0,
  // 放电参数
  dischargeMode: 0,
  dischargePower: 0,
  dischargeCurrent: 0,
  dischargeTime: 0,
  dischargeVoltage: 0,
@@ -58,6 +67,7 @@
  chargeCurrent: 0,
  chargeStopCurrent: 0,
  chargeTime: 0,
  chargePower: 0,
  isChargeCapacityEnable: false,
  chargeCapacity: 0,
  isMaxBatteryVoltageEnable: false,
@@ -94,6 +104,13 @@
    },
  ],
  // 放电参数
  dischargePower: [
    {
      required: true,
      message: "不能为空",
      trigger: "blur",
    },
  ],
  dischargeCurrent: [
    {
      required: true,
@@ -196,23 +213,21 @@
function startOne() {
  let loading = $loading();
  startA200(
    props.devs.devId,
    params.testType
  )
  startA200(props.devs.devId, params.testType)
    .then((res) => {
      loading.close();
      let { code, data } = res.data;
      let { code, data, msg } = res.data;
      if (200 == code) {
        $message.success("操作成功");
        close();
        console.log(data);
      } else {
        $message.error("操作失败");
        $message.error("操作失败:" + msg);
      }
    })
    .catch((err) => {
      loading.close();
      $message.error("操作失败");
      $message.error("操作失败:" + err);
      console.log(err);
    });
}
@@ -235,7 +250,7 @@
        $message.success("操作成功");
        if (failList.length) {
          let failNames = props.devs
            .filter((v) => failList.some(vv => vv == v.devId))
            .filter((v) => failList.some((vv) => vv == v.devId))
            .map((v) => v.devIdcode);
          $alert(`操作失败的设备列表:${failNames.join(", ")}。`);
@@ -284,54 +299,57 @@
    });
}
function setParams() {
  let _params;
  // 判断测试类型 是充电还是放电
  if (params.testType == 0) {
    _params = {
      nominalCapacity: 0,
      testType: 0,
      batteryName: 0,
      batteryType: 0,
      batteryNumber: 0,
      diffBatteryVoltage: 0,
      // 放电参数
      dischargeCurrent: 0,
      dischargeTime: 0,
      dischargeVoltage: 0,
      isDischargeCapacityEnable: 0,
      dischargeCapacity: 0,
      isMinBatteryVoltageEnable: 0,
      minBatteryVoltage: 0,
    };
  } else {
    _params = {
      nominalCapacity: 0,
      testType: 0,
      batteryName: 0,
      batteryType: 0,
      batteryNumber: 0,
      diffBatteryVoltage: 0,
      // 充电参数
      chargeVoltage: 0,
      chargeProtectVoltage: 0,
      chargeCurrent: 0,
      chargeStopCurrent: 0,
      chargeTime: 0,
      isChargeCapacityEnable: 0,
      chargeCapacity: 0,
      isMaxBatteryVoltageEnable: 0,
      maxBatteryVoltage: 0,
    };
  }
  Object.keys(_params).forEach((v) => {
    _params[v] = params[v];
  });
  // let _params;
  // // 判断测试类型 是充电还是放电
  // if (params.testType == 1) {
  //   _params = {
  //     nominalCapacity: 0,
  //     testType: 0,
  //     batteryName: 0,
  //     batteryType: 0,
  //     batteryNumber: 0,
  //     diffBatteryVoltage: 0,
  //     // 放电参数
  //     dischargeCurrent: 0,
  //     dischargeTime: 0,
  //     dischargeVoltage: 0,
  //     isDischargeCapacityEnable: 0,
  //     dischargeCapacity: 0,
  //     isMinBatteryVoltageEnable: 0,
  //     minBatteryVoltage: 0,
  //   };
  // } else {
  //   _params = {
  //     nominalCapacity: 0,
  //     testType: 0,
  //     batteryName: 0,
  //     batteryType: 0,
  //     batteryNumber: 0,
  //     diffBatteryVoltage: 0,
  //     // 充电参数
  //     chargePower: 0,
  //     chargeVoltage: 0,
  //     chargeProtectVoltage: 0,
  //     chargeCurrent: 0,
  //     chargeStopCurrent: 0,
  //     chargeTime: 0,
  //     isChargeCapacityEnable: 0,
  //     chargeCapacity: 0,
  //     isMaxBatteryVoltageEnable: 0,
  //     maxBatteryVoltage: 0,
  //   };
  // }
  // Object.keys(_params).forEach((v) => {
  //   _params[v] = params[v];
  // });
  if (props.isBatch) {
    _params["devIds"] = props.devs.map((v) => v.devId);
    setBatchParams(_params);
    // _params["devIds"] = props.devs.map((v) => v.devId);
    // setBatchParams(_params);
    params["devIds"] = props.devs.map((v) => v.devId);
    setBatchParams(params);
  } else {
    _params['devId'] = props.devs.devId;
    setOneParams(_params);
    params["devId"] = props.devs.devId;
    setOneParams(params);
  }
}
function setOneParams(params) {
@@ -339,14 +357,14 @@
  setA200Param(params)
    .then((res) => {
      let { code, data } = res.data;
      let { code, data, msg } = res.data;
      loading.close();
      if (200 == code) {
        console.log(data);
        $message.success("操作成功");
        testFlag.value = true;
      } else {
        $message.error("操作失败");
        $message.error("操作失败:" + msg);
        testFlag.value = false;
      }
    })
@@ -374,18 +392,18 @@
        }
      });
      if (code && data && successList.length) {
        console.log(
          "failList",
          failList,
          "successList",
          successList,
          "============="
        );
        // console.log(
        //   "failList",
        //   failList,
        //   "successList",
        //   successList,
        //   "============="
        // );
        list.successList = successList;
        $message.success("操作成功");
        if (failList.length) {
          let failNames = props.devs
            .filter((v) => failList.some(vv => vv == v.devId))
            .filter((v) => failList.some((vv) => vv == v.devId))
            .map((v) => v.devIdcode);
          $alert(`操作失败的设备列表:${failNames.join(", ")}。`);
@@ -405,6 +423,11 @@
}
onMounted(() => {
  params.testType = props.testType;
  if (props.isBatch) {
    // console.log('dev0', props.devs[0], '=============');
    params.testType = props.devs[0].state.testType;
  }
  getParams();
});
</script>
@@ -462,13 +485,30 @@
      </el-col>
      <!-- 放电参数 -->
      <template v-if="1 == params.testType">
      <el-col :span="layout.span">
          <el-form-item label="放电模式" prop="dischargeMode">
             <el-select
              v-model="params.dischargeMode"
              class=""
              placeholder="Select"
            >
              <el-option label="恒流模式" :value="0" />
              <el-option label="恒功率模式" :value="1" />
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="layout.span">
          <el-form-item label="放电功率(KW)" prop="dischargePower">
            <el-input v-model="params.dischargePower"></el-input>
          </el-form-item>
        </el-col>
        <el-col :span="layout.span">
          <el-form-item label="放电电流(A)" prop="dischargeCurrent">
            <el-input v-model="params.dischargeCurrent"></el-input>
          </el-form-item>
        </el-col>
        <el-col :span="layout.span">
          <el-form-item label="放电时间(m)" prop="dischargeTime">
          <el-form-item label="放电时间(s)" prop="dischargeTime">
            <el-input v-model="params.dischargeTime"></el-input>
          </el-form-item>
        </el-col>
@@ -515,6 +555,18 @@
      <!-- 充电参数 -->
      <template v-else>
        <el-col :span="layout.span">
          <el-form-item label="充电功率" prop="chargePower">
             <el-select
              v-model="params.chargePower"
              class=""
              placeholder="Select"
            >
              <el-option label="2.2KW插座" :value="2.2" />
              <el-option label="4.4KW配电箱" :value="4.4" />
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="layout.span">
          <el-form-item label="充电限压(V)" prop="chargeVoltage">
            <el-input v-model="params.chargeVoltage"></el-input>
          </el-form-item>
@@ -535,7 +587,7 @@
          </el-form-item>
        </el-col>
        <el-col :span="layout.span">
          <el-form-item label="充电时间(m)" prop="chargeTime">
          <el-form-item label="充电时间(s)" prop="chargeTime">
            <el-input v-model="params.chargeTime"></el-input>
          </el-form-item>
        </el-col>
@@ -577,7 +629,7 @@
    </el-row>
    <div class="form-footer">
      <el-button @click="close">关闭</el-button>
      <el-button type="primary" :disabled="!testFlag" @click="startTest"
      <el-button type="primary" v-if="!isUpdate" :disabled="!testFlag" @click="startTest"
        >启动</el-button
      >
      <el-button type="primary" :disabled="!setFlag" @click="setParams"