唐耀东
2022-05-13 32c5fc95afbb2241d80b986e385e17ee553c258c
提交代码
3个文件已修改
2个文件已添加
323 ■■■■■ 已修改文件
src/views/components/nvr/form.vue 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/components/server/form.vue 131 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/construction/ai/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/construction/ipc/index.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/construction/system/index.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/components/nvr/form.vue
New file
@@ -0,0 +1,130 @@
<template>
  <div>
    <el-form ref="form" :model="form" label-width="80px" :disabled="true">
      <el-row>
        <el-col :span="12">
          <el-form-item label="部署名称" prop="deploymentName">
            <el-input v-model="form.deploymentName" maxlength="64" show-word-limit placeholder="请输入部署名称"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="通道" prop="passageway">
            <el-select v-model="form.passageway" placeholder="请选择通道(路)">
              <el-option
                  v-for="dict in dict.type.DICT109"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
              />
            </el-select>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="12">
          <el-form-item label="LAN1" prop="lanOne">
            <el-input v-model="form.lanOne" placeholder="请输入LAN1"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="IP" prop="ipOne">
            <el-input v-model="form.ipOne" placeholder="请输入IP"/>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="12">
          <el-form-item label="LAN2" prop="lanTwo">
            <el-input v-model="form.lanTwo" placeholder="请输入LAN2"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="IP" prop="ipTwo">
            <el-input v-model="form.ipTwo" placeholder="请输入IP"/>
          </el-form-item>
        </el-col>
      </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>
        </el-col>
        <el-col :span="12">
          <el-form-item label="硬盘" prop="hardDisk">
            <el-input v-model="form.hardDisk" maxlength="64" show-word-limit placeholder="请输入硬盘"/>
          </el-form-item>
        </el-col>
      </el-row>
      <el-form-item label="安装位置" prop="buildingId">
        <building v-model="form.buildingId"></building>
      </el-form-item>
      <el-form-item label="所属单位" prop="organizationId">
        <organization v-model="form.organizationId"></organization>
      </el-form-item>
      <el-form-item label="施工批次" prop="constructionBatchId">
        <constructionBatch v-model="form.constructionBatchId"></constructionBatch>
      </el-form-item>
      <el-form-item label="序列号" prop="serialNumber">
        <el-input v-model="form.serialNumber" maxlength="64" show-word-limit placeholder="请输入序列号"/>
      </el-form-item>
      <el-row>
        <el-col :span="12">
          <el-form-item label="型号" prop="model">
            <el-input v-model="form.model" maxlength="64" show-word-limit placeholder="请输入型号"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="生产厂商" prop="manufacturerId">
            <manufacturer v-model="form.manufacturerId"></manufacturer>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
  </div>
</template>
<script>
import {getNvr} from "@/api/oa/nvr";
import building from "../building";
import organization from "../organization";
import constructionBatch from "../constructionBatch";
import manufacturer from "../manufacturer";
export default {
  name: "NvrForm",
  dicts: ['DICT109'],
  components: {
    building,
    organization,
    constructionBatch,
    manufacturer
  },
  props: {
    nvrId: {
      type: Number,
      default: undefined
    }
  },
  data() {
    return {
      // 表单参数
      form: {},
    }
  },
  created() {
    this.getInfo()
  },
  methods: {
    getInfo() {
      getNvr(this.nvrId).then(response => {
        this.form = response.data;
      });
    }
  }
}
</script>
<style scoped>
</style>
src/views/components/server/form.vue
New file
@@ -0,0 +1,131 @@
<template>
  <div>
    <el-form ref="form" :model="form" label-width="80px" :disabled="true">
      <el-form-item label="部署名称" prop="deploymentName">
        <el-input v-model="form.deploymentName" maxlength="64" show-word-limit placeholder="请输入部署名称"/>
      </el-form-item>
      <el-row>
        <el-col :span="12">
          <el-form-item label="LAN" prop="lan">
            <el-input v-model="form.lan" placeholder="请输入LAN"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="IP" prop="ip">
            <el-input v-model="form.ip" placeholder="请输入IP"/>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="12">
          <el-form-item label="操作系统" prop="operatingSystem">
            <el-select v-model="form.operatingSystem" placeholder="请选择操作系统">
              <el-option
                  v-for="dict in dict.type.DICT115"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
              ></el-option>
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="账户" prop="account">
            <el-input v-model="form.account" maxlength="64" show-word-limit placeholder="请输入账户"/>
          </el-form-item>
        </el-col>
      </el-row>
      <el-form-item label="部署位置" prop="buildingId">
        <building v-model="form.buildingId"></building>
      </el-form-item>
      <el-row>
        <el-col :span="12">
          <el-form-item label="机柜号" prop="cabinetNumber">
            <el-input v-model="form.cabinetNumber" maxlength="64" show-word-limit placeholder="请输入机柜号"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="机架号" maxlength="64" show-word-limit prop="rackNumber">
            <el-input v-model="form.rackNumber" maxlength="64" show-word-limit placeholder="请输入机架号"/>
          </el-form-item>
        </el-col>
      </el-row>
      <el-form-item label="所属单位" prop="organizationId">
        <organization v-model="form.organizationId"></organization>
      </el-form-item>
      <el-form-item label="施工批次" prop="constructionBatchId">
        <constructionBatch v-model="form.constructionBatchId"></constructionBatch>
      </el-form-item>
      <el-form-item label="序列号" prop="serialNumber">
        <el-input v-model="form.serialNumber" maxlength="64" show-word-limit placeholder="请输入序列号"/>
      </el-form-item>
      <el-row>
        <el-col :span="12">
          <el-form-item label="型号" prop="model">
            <el-input v-model="form.model" maxlength="64" show-word-limit placeholder="请输入型号"/>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="生产厂商" prop="manufacturerId">
            <manufacturer v-model="form.manufacturerId"></manufacturer>
          </el-form-item>
        </el-col>
      </el-row>
      <el-form-item label="性能指标" prop="performanceIndex">
        <el-input v-model="form.performanceIndex" type="textarea" :rows="8" maxlength="64" show-word-limit
                  placeholder="请输入内容"/>
      </el-form-item>
      <el-form-item label="备注" prop="remarks">
        <el-input v-model="form.remarks" type="textarea" :rows="8" maxlength="64" show-word-limit
                  placeholder="请输入内容"/>
      </el-form-item>
    </el-form>
  </div>
</template>
<script>
import {getServer} from "@/api/oa/server";
import building from "../building";
import organization from "../organization";
import constructionBatch from "../constructionBatch";
import manufacturer from "../manufacturer";
import nvr from "../nvr";
export default {
  name: "ServerForm",
  dicts: ['DICT115'],
  components: {
    building,
    organization,
    constructionBatch,
    manufacturer,
    nvr
  },
  props: {
    serverId: {
      type: Number,
      default: undefined
    }
  },
  data() {
    return {
      // 表单参数
      form: {},
    }
  },
  created() {
    this.getInfo()
  },
  methods: {
    getInfo() {
      getServer(this.serverId).then(response => {
        this.form = response.data;
      });
    }
  }
}
</script>
<style scoped>
</style>
src/views/construction/ai/index.vue
@@ -89,7 +89,7 @@
      <el-table-column label="施工批次" align="center" prop="constructionBatchId_dictText"/>
      <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" prop="manufacturerId_dictText"/>
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button
src/views/construction/ipc/index.vue
@@ -75,7 +75,11 @@
      <el-table-column label="IP" align="center" prop="ip"/>
      <el-table-column label="端口" align="center" prop="port"/>
      <el-table-column label="登录账户" align="center" prop="loginAccount"/>
      <el-table-column label="NVR" align="center" prop="nvrId_dictText"/>
      <el-table-column label="NVR" align="center" prop="nvrId_dictText">
        <template slot-scope="scope">
          <el-link type="primary" @click="nvrClick(scope.row)">{{scope.row.nvrId_dictText}}</el-link>
        </template>
      </el-table-column>
      <el-table-column label="通道" align="center" prop="passageway_dictText"/>
      <el-table-column label="安装位置" align="center" prop="buildingId_dictText"/>
      <el-table-column label="所属单位" align="center" prop="organizationId_dictText"/>
@@ -195,6 +199,14 @@
        <el-button @click="cancel">取 消</el-button>
      </div>
    </el-dialog>
    <!-- 服务器 -->
    <Dialog title="服务器" :visible.sync="nvrOpen" width="700px" :append-to-body="true" :destroy-on-close="true">
      <nvr-form v-if="nvrOpen" :nvrId="nvrId"></nvr-form>
      <div slot="footer" class="dialog-footer">
        <el-button @click="nvrOpen = false">关 闭</el-button>
      </div>
    </Dialog>
  </div>
</template>
@@ -205,6 +217,7 @@
import constructionBatch from "../../components/constructionBatch";
import manufacturer from "../../components/manufacturer";
import nvr from '../../components/nvr'
import nvrForm from '../../components/nvr/form'
export default {
  name: "Ipc",
@@ -214,7 +227,8 @@
    organization,
    constructionBatch,
    manufacturer,
    nvr
    nvr,
    nvrForm
  },
  props: {
    schoolId: {
@@ -294,7 +308,9 @@
        ],
        passageway: []
      },
      disabled: false
      disabled: false,
      nvrOpen: false,
      nvrId: undefined
    };
  },
  computed: {
@@ -471,11 +487,9 @@
        this.loading = false;
      });
    },
    /** 导出按钮操作 */
    handleExport() {
      this.download('oa/ipc/export', {
        ...this.queryParams
      }, `ipc_${new Date().getTime()}.xlsx`)
    nvrClick(row) {
      this.nvrId = row.nvrId;
      this.nvrOpen = true;
    }
  }
};
src/views/construction/system/index.vue
@@ -75,7 +75,11 @@
      <el-table-column label="功能描述" align="center" prop="functionDescription"/>
      <el-table-column label="授权方式" align="center" prop="authorizationMethod_dictText"/>
      <el-table-column label="授权数量" align="center" prop="authorizedQuantity"/>
      <el-table-column label="载体服务器" align="center" prop="serverId_dictText"/>
      <el-table-column label="载体服务器" align="center" prop="serverId_dictText">
        <template slot-scope="scope">
          <el-link type="primary" @click="serverClick(scope.row)">{{scope.row.serverId_dictText}}</el-link>
        </template>
      </el-table-column>
      <el-table-column label="施工批次" align="center" prop="constructionBatchId_dictText"/>
      <el-table-column label="生产厂商" align="center" prop="manufacturerId_dictText"/>
      <el-table-column label="备注" align="center" prop="remarks"/>
@@ -200,6 +204,14 @@
        <el-button @click="cancel">取 消</el-button>
      </div>
    </Dialog>
    <!-- 服务器 -->
    <Dialog title="服务器" :visible.sync="serverOpen" width="700px" :append-to-body="true" :destroy-on-close="true">
      <server-form v-if="serverOpen" :serverId="serverId"></server-form>
      <div slot="footer" class="dialog-footer">
        <el-button @click="serverOpen = false">关 闭</el-button>
      </div>
    </Dialog>
  </div>
</template>
@@ -211,6 +223,7 @@
import manufacturer from "../../components/manufacturer";
import nvr from "../../components/nvr";
import server from '../../components/server'
import serverForm from '../../components/server/form'
export default {
  name: "System",
@@ -221,7 +234,8 @@
    constructionBatch,
    manufacturer,
    nvr,
    server
    server,
    serverForm
  },
  props: {
    schoolId: {
@@ -294,7 +308,9 @@
        ],
      },
      disabled: false,
      fileOpen: false
      fileOpen: false,
      serverOpen: false,
      serverId: undefined
    };
  },
  created() {
@@ -438,11 +454,9 @@
        this.loading = false;
      });
    },
    /** 导出按钮操作 */
    handleExport() {
      this.download('oa/system/export', {
        ...this.queryParams
      }, `system_${new Date().getTime()}.xlsx`)
    serverClick(row) {
      this.serverId = row.serverId;
      this.serverOpen = true;
    }
  }
};