<template>
  <div>
    <div>
      <el-dialog title="新建网关" :visible.sync="outerVisible" width="382px" v-loading="loading">
        <el-form :model="formData" :rules="rules" ref="formData" label-width="85px" class="demo-ruleForm">
          <el-form-item label="网关名称:" prop="wgpz_wgmc">
            <el-select v-model="formData.wgpz_wgmc" placeholder="有线区网关1" style="width: 200px">
              <el-option v-for="item in options1" :key="item.value" :label="item.label" :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="网关ID:" prop="wgpz_wgid">
            <el-select v-model="formData.wgpz_wgid" placeholder="LAN-BOX1" style="width: 200px">
              <el-option v-for="item in options2" :key="item.value" :label="item.label" :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="网关类型:" prop="wgpz_wglx">
            <el-select v-model="formData.wgpz_wglx" placeholder="lot Life 网关" style="width: 200px">
              <el-option v-for="item in options3" :key="item.value" :label="item.label" :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
        </el-form>
        <el-dialog width="382px" title="系统提示" :visible.sync="innerVisible" append-to-body>
          <p class="inner_content" style="color: #fff !important">
            请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
          </p>
          <div slot="footer" class="dialog-footer">
            <el-button type="primary" @click="innerConfirm()">确定</el-button>
            <el-button @click="innerVisible = false">取 消</el-button>
          </div>
        </el-dialog>
        <div slot="footer" class="dialog-footer-outer">
          <el-button type="primary" @click="saveInfo('formData')">保存</el-button>
          <el-button @click="outerVisible = false">取 消</el-button>
        </div>
      </el-dialog>
    </div>
  </div>
</template>

<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
export default {
  name: "TestDataAcquisition",

  data() {
    return {
      loading: false,
      options1: [
        {
          value: "有线区网关1",
          label: "有线区网关1",
        },
        {
          value: "无线区网关1",
          label: "无线区网关1",
        },
      ],
      options2: [
        {
          value: "LAN-BOX1",
          label: "LAN-BOX1",
        },
        {
          value: "WLAN-BOX1",
          label: "WLAN-BOX1",
        },
      ],
      options3: [
        {
          value: "loT Lite网关",
          label: "loT Lite网关",
        },
        {
          value: "MODBUS网关",
          label: "MODBUS网关",
        },
        {
          value: "BACNET网关",
          label: "BACNET网关",
        },
        {
          value: "OPC UA网关",
          label: "OPC UA网关",
        },
        {
          value: "OPC DA网关",
          label: "OPC DA网关",
        },
        {
          value: "loT网关",
          label: "loT网关",
        },
      ],
      value: "",
      formData: {
        wgpz_wgmc: "有线区网关1",
        wgpz_wgid: "LAN-BOX1",
        wgpz_wglx: "loT网关",
      },
      rules: {
        wgpz_wgmc: [
          { required: true, message: "请选择网关名称", trigger: "blur" },
        ],
        wgpz_wgid: [
          { required: true, message: "请选择网关id", trigger: "blur" },
        ],
        wgpz_wglx: [
          { required: true, message: "请选择网关类型", trigger: "blur" },
        ],
      },
      outerVisible: true,
      innerVisible: false,
    };
  },

  mounted() { },

  methods: {
    saveInfo(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          // alert('submit!');
          this.innerVisible = true;
        } else {
          console.log("error submit!!");
          return false;
        }
      });
    },
    async innerConfirm() {
      this.outerVisible = false;
      this.innerVisible = false;
      let datas = sessionStorage.getItem("DB-IotLite_yx");
      // console.log(JSON.parse(datas));
      datas = { ...JSON.parse(datas), ...this.formData };
      console.log(datas);
      let res = await SaveUserAnswer({
        mark: "DB-IotLite_yx",
        user_id: "USER202307301114011710",
        mark_value: JSON.stringify(datas),
      });
      if (res.status == 200) {
        this.$message({
          message: '保存成功',
          type: 'success'
        });
      }
      console.log(res);
      console.log(JSON.parse(res.data.data.mark_value));
      sessionStorage.setItem("DB-IotLite_yx", JSON.stringify(this.formData));
      this.$router.replace("/channelconfig");
    },
    async getUserAnswer() {
      this.loading = true;
      let res2 = await GetUserAnswer({
        mark: "DB-IotLite_yx",
        user_id: "USER202307301114011710",
      });
      this.loading = false;
      if (res2.data.data && res2.data.state) {
        console.log(res2);
        console.log(res2.data.data.mark_value);
        let res3 = JSON.parse(res2.data.data.mark_value);
        if (res3.wgpz_wgid) {
          this.formData.wgpz_wgid = res3.wgpz_wgid;
          console.log(this.formData.wgpz_wgid);
          this.formData.wgpz_wgmc = res3.wgpz_wgmc;
          this.formData.wgpz_wglx = res3.wgpz_wglx;
        }
      }
    },
  },
  created() {
    this.getUserAnswer();
  },
};
</script>

<style lang="less" scoped>
.data_acquire {
  font-size: 14px;
}

.inner_content {
  margin-left: 30px;
  width: 280px;
  height: 40px;
  // color: rgba(255, 255, 255, 0);
  font-size: 14px;
  text-align: left;
  font-family: "SourceHanSansSC-regular";
}
</style>
