liuchengxin
2022-05-27 d138b7df8fa97dc7ed6b07acdfef804ebb186a74
src/views/construction/nvr/index.vue
@@ -1,5 +1,5 @@
<template>
  <div class="app-container">
  <div class="construction-view">
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="88px">
      <el-form-item label="通道(路)" prop="passageway">
        <el-select v-model="queryParams.passageway" placeholder="请选择通道(路)">
@@ -17,21 +17,24 @@
      <el-form-item label="所属单位" prop="organizationId">
        <organization v-model="queryParams.organizationId" :schoolId="schoolId"></organization>
      </el-form-item>
      <el-form-item label="施工批次" prop="constructionBatchId">
        <construction-batch v-model="queryParams.constructionBatchId" :schoolId="schoolId"></construction-batch>
      </el-form-item>
      <el-form-item label="型号" prop="model">
        <el-input
      <template v-if="showMoreCondition">
        <el-form-item label="施工批次" prop="constructionBatchId">
          <construction-batch v-model="queryParams.constructionBatchId" :schoolId="schoolId"></construction-batch>
        </el-form-item>
        <el-form-item label="型号" prop="model">
          <el-input
            v-model="queryParams.model"
            placeholder="请输入型号"
            clearable
            size="small"
            @keyup.enter.native="handleQuery"
        />
      </el-form-item>
          />
        </el-form-item>
      </template>
      <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
        <div class="show-more-search">
          <ShowMore :showMoreCondition.sync="showMoreCondition"></ShowMore>
          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
        </div>
      </el-form-item>
    </el-form>
@@ -43,7 +46,6 @@
            icon="el-icon-plus"
            size="mini"
            @click="handleAdd"
            v-hasPermi="['oa:nvr:add']"
        >新增
        </el-button>
      </el-col>
@@ -55,7 +57,6 @@
            size="mini"
            :disabled="single"
            @click="handleUpdate"
            v-hasPermi="['oa:nvr:edit']"
        >修改
        </el-button>
      </el-col>
@@ -67,7 +68,6 @@
            size="mini"
            :disabled="multiple"
            @click="handleDelete"
            v-hasPermi="['oa:nvr:remove']"
        >删除
        </el-button>
      </el-col>
@@ -80,21 +80,21 @@
          <span>{{ scope.$index + (queryParams.pageNum - 1) * queryParams.pageSize + 1 }} </span>
        </template>
      </el-table-column>
      <el-table-column label="部署名称" align="center" prop="deploymentName"/>
      <el-table-column label="通道(路)" align="center" prop="passageway"/>
      <el-table-column label="LAN1" align="center" prop="lanOne"/>
      <el-table-column label="IP" align="center" prop="ipOne"/>
      <el-table-column label="LAN2" align="center" prop="lanTwo"/>
      <el-table-column label="IP" align="center" prop="ipTwo"/>
      <el-table-column label="登录账户" align="center" prop="loginAccount"/>
      <el-table-column label="硬盘" align="center" prop="hardDisk"/>
      <el-table-column label="安装位置" align="center" prop="buildingId"/>
      <el-table-column label="所属单位" align="center" prop="organizationId"/>
      <!--      <el-table-column label="施工批次" align="center" prop="constructionBatchId" />-->
      <!--      <el-table-column label="序列号" align="center" prop="serialNumber" />-->
      <!--      <el-table-column label="型号" align="center" prop="model" />-->
      <!--      <el-table-column label="生产厂商" align="center" prop="manufacturerId" />-->
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
      <el-table-column label="部署名称" min-width="240" align="center" prop="deploymentName"/>
      <el-table-column label="通道(路)" width="120" align="center" prop="passageway_dictText"/>
<!--      <el-table-column label="LAN1" align="center" width="150" prop="lanOne"/>-->
<!--      <el-table-column label="IP" align="center" width="130" prop="ipOne"/>-->
<!--      <el-table-column label="安装位置" align="center" min-width="240" prop="buildingId_dictText"/>-->
<!--      <el-table-column label="所属单位" align="center" min-width="200" prop="organizationId_dictText"/>-->
<!--      <el-table-column label="施工批次" align="center" prop="constructionBatchId_dictText"/>-->
<!--      <el-table-column label="型号" align="center" min-width="180" prop="model"/>-->
      <el-table-column label="IP(LAN2)" align="center" width="130" prop="ipTwo"/>
<!--      <el-table-column label="LAN2" align="center" min-width="150" prop="lanTwo"/>-->
      <el-table-column label="账户/密码" align="center" min-width="180" prop="loginAccount"/>
      <el-table-column label="序列号" min-width="220" align="center" prop="serialNumber"/>
      <el-table-column label="生产厂商" align="center" min-width="220" prop="manufacturerId_dictText"/>
      <el-table-column label="硬盘" align="center" min-width="120" prop="hardDisk"/>
      <el-table-column label="操作" align="center" fixed="right" width="220" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button
              size="mini"
@@ -108,7 +108,6 @@
              type="text"
              icon="el-icon-edit"
              @click="handleUpdate(scope.row)"
              v-hasPermi="['oa:nvr:edit']"
          >修改
          </el-button>
          <el-button
@@ -124,7 +123,6 @@
              class="del-btn"
              icon="el-icon-delete"
              @click="handleDelete(scope.row)"
              v-hasPermi="['oa:nvr:remove']"
          >删除
          </el-button>
        </template>
@@ -141,7 +139,7 @@
    <!-- 添加或修改NVR设备对话框 -->
    <el-dialog :title="title" :visible.sync="open" width="600px" :append-to-body="true" :close-on-click-modal="false">
      <el-form ref="form" :model="form" :rules="rules" label-width="80px" :disabled="disabled">
      <el-form ref="form" :model="form" :rules="rules" label-width="90px" :disabled="disabled">
        <el-row>
          <el-col :span="12">
            <el-form-item label="部署名称" prop="deploymentName">
@@ -187,8 +185,8 @@
        </el-row>
        <el-row>
          <el-col :span="12">
            <el-form-item label="登录账号" prop="loginAccount">
              <el-input v-model="form.loginAccount" maxlength="64" show-word-limit placeholder="请输入登录账号"/>
            <el-form-item label="账户/密码" prop="loginAccount">
              <el-input v-model="form.loginAccount" maxlength="64" show-word-limit placeholder="请输入账户/密码"/>
            </el-form-item>
          </el-col>
          <el-col :span="12">
@@ -249,6 +247,7 @@
import organization from '../../components/organization'
import constructionBatch from '../../components/constructionBatch'
import manufacturer from '../../components/manufacturer'
import ShowMore from "@/views/components/showMore";
export default {
  name: "Nvr",
@@ -257,7 +256,8 @@
    building,
    organization,
    constructionBatch,
    manufacturer
    manufacturer,
    ShowMore
  },
  props: {
    schoolId: {
@@ -310,38 +310,38 @@
        passageway: [
          {required: true, message: "通道不能为空", trigger: "blur"}
        ],
        lanOne: [
          {required: true, message: "LAN1不能为空", trigger: "blur"},
          {
            pattern: /^[A-F0-9]{2}(-[A-F0-9]{2}){5}$|^[A-F0-9]{2}(:[A-F0-9]{2}){5}$|^[A-F0-9]{12}$|^[A-F0-9]{4}(\.[A-F0-9]{4}){2}$/,
            message: "请输入正确的LAN",
            trigger: "blur"
          }
        ],
        ipOne: [
          {required: true, message: "ip1不能为空", trigger: "blur"},
          {
            pattern: /^(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])$/,
            message: "请输入正确的ip地址",
            trigger: "blur"
          }
        ],
        lanTwo: [
          {required: true, message: "LAN2不能为空", trigger: "blur"},
          {
            pattern: /^[A-F0-9]{2}(-[A-F0-9]{2}){5}$|^[A-F0-9]{2}(:[A-F0-9]{2}){5}$|^[A-F0-9]{12}$|^[A-F0-9]{4}(\.[A-F0-9]{4}){2}$/,
            pattern: /^[0-9a-fA-F:]*$/,
            message: "请输入正确的LAN",
            trigger: "blur"
          }
        ],
        ipTwo: [
          {required: true, message: "ip2不能为空", trigger: "blur"},
          {required: true, message: "IP不能为空", trigger: "blur"},
          {
            pattern: /^(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])$/,
            message: "请输入正确的ip地址",
            message: "请输入正确的ip地址,文本范围 0~9、.",
            trigger: "blur"
          }
        ],
        // lanTwo: [
        //   {required: true, message: "LAN2不能为空", trigger: "blur"},
        //   {
        //     pattern: /^[0-9a-fA-F:]*$/,
        //     message: "请输入正确的LAN",
        //     trigger: "blur"
        //   }
        // ],
        // ipTwo: [
        //   {required: true, message: "ip2不能为空", trigger: "blur"},
        //   {
        //     pattern: /^(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])$/,
        //     message: "请输入正确的ip地址,文本范围 0~9、.",
        //     trigger: "blur"
        //   }
        // ],
        loginAccount: [
          {required: true, message: "登录账号不能为空", trigger: "blur"}
        ],
@@ -362,7 +362,8 @@
        ]
      },
      disabled: false,
      fileOpen: false
      fileOpen: false,
      showMoreCondition: false
    };
  },
  watch: {
@@ -446,7 +447,7 @@
        this.loading = false;
        this.form = response.data;
        this.open = true;
        this.title = "修改NVR设备";
        this.title = "NVR设备详情";
      });
    },
    /** 修改按钮操作 */
@@ -493,7 +494,7 @@
    /** 删除按钮操作 */
    handleDelete(row) {
      const ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除NVR设备编号为"' + ids + '"的数据项?').then(() => {
      this.$modal.confirm('是否确认删除?').then(() => {
        this.loading = true;
        return delNvr(ids);
      }).then(() => {
@@ -515,8 +516,7 @@
      this.loading = true;
      this.disabled = false;
      this.reset();
      const id = row.id || this.ids
      getNvr(id).then(response => {
      getNvr(row.id).then(response => {
        this.loading = false;
        this.form = response.data;
        this.fileOpen = true;