Browse Source

转换盒升级

wuyunfeng 3 years ago
parent
commit
6e3e8e6ad7

+ 7 - 1
src/views/customer/components/customerManager.vue

@@ -983,7 +983,7 @@ export default {
     /** 上传成功后的钩子 更换图片 置空存储数组*/
     uploaded(response) {
       this.imageUrl = serverUrl + '/' + response
-      this.formmodel.face = response
+      this.formmodel.face = serverUrl + '/' + response
     },
     /** 图片上传之前的校验 */
     handleShopLogoBefore(file) {
@@ -1068,6 +1068,12 @@ export default {
       this.formmodel = {
         ...row
       }
+      if (row['face']) {
+        this.imageUrl = row['face']
+      } else {
+        this.imageUrl = null
+      }
+
       // 编辑时把当前用户床位加入到空床位,否则会显示一个床位Id号
       this.emptyBeds.push({ id: this.formmodel.frame_id, full_name: this.formmodel.full_name })
       if (this.formmodel.in_date) {

+ 67 - 0
src/views/entrace-guard/index.vue

@@ -0,0 +1,67 @@
+<template>
+  <div>
+    <el-button @click="shotPicture">拍照</el-button>
+      <el-button @click="openDoor">开锁</el-button>
+      <el-button @click="lockDoor">锁门</el-button>
+      <el-button @click="addVisit">下发人证基本信息</el-button>
+      <el-button @click="addUser">添加人员</el-button>
+  </div>
+</template>
+
+<script>
+import { DeviceUrl } from '@/utils/domain'
+export default {
+  name: 'Index',
+  data() {
+    return {
+      websock: null
+    }
+  },
+  mounted() {
+    this.initWebSocket()
+  },
+  methods: {
+    initWebSocket: function() {
+      var stockbase = DeviceUrl.replace('http', 'ws')
+      this.websock = new WebSocket(stockbase + '/entraceguard')
+      this.websock.onopen = this.websocketonopen
+      this.websock.onerror = this.websocketonerror
+      this.websock.onmessage = this.websocketonmessage
+      this.websock.onclose = this.websocketclose
+    },
+    websocketonopen: function() {
+      this.$message.success('服务正常,可自动发现新看板')
+      this.websock.send(JSON.stringify({ 'cmd': 'web_clinet', 'id': this.$store.getters.uuid }))
+      console.log('WebSocket连接成功')
+    },
+    websocketonerror: function(e) {
+      console.log('WebSocket连接发生错误')
+    },
+    websocketonmessage: function(e) {
+      console.log(e)
+    },
+    websocketclose: function(e) {
+      console.log('connection closed (' + e.code + ')')
+    },
+    shotPicture() {
+      this.websock.send(JSON.stringify({ 'cmd': 'shotpicture', 'from': this.$store.getters.uuid, 'to': 'RLM-00112935' }))
+    },
+    openDoor() {
+      this.websock.send(JSON.stringify({ 'cmd': 'open_door', 'from': this.$store.getters.uuid, 'to': 'RLM-00112935' }))
+    },
+    lockDoor() {
+      this.websock.send(JSON.stringify({ 'cmd': 'lock_door', 'from': this.$store.getters.uuid, 'to': 'RLM-00112935' }))
+    },
+    addVisit() {
+      this.websock.send(JSON.stringify({ 'cmd': 'add_visit', 'from': this.$store.getters.uuid, 'to': 'RLM-00112935' }))
+    },
+    addUser() {
+      this.websock.send(JSON.stringify({ 'cmd': 'add_user', 'from': this.$store.getters.uuid, 'to': 'RLM-00112935' }))
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

File diff suppressed because it is too large
+ 544 - 549
src/views/ncs-clerk/clerkList.vue


+ 7 - 6
src/views/ncs-device/components/deviceManager.vue

@@ -68,8 +68,8 @@
         </el-row>
         <el-row>
           <el-col :span="12">
-            <el-form-item label="有线物理地址" prop="eth_mac">
-              <el-input v-model="deviceModel.eth_mac" clearable placeholder="请输入物理MAC地址" />
+            <el-form-item label="设备唯一标识" prop="eth_mac">
+              <el-input v-model="deviceModel.eth_mac" clearable placeholder="请输入设备唯一标识" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -225,8 +225,7 @@ export default {
           { required: true, message: '请输入设备型号', trigger: 'blur' }
         ],
         eth_mac: [
-          { required: true, message: '请输入设备MAC地址', trigger: 'blur' },
-          { pattern: /^([0-9A-Fa-f]{2}:?){6}/gi, message: '请输入正确的MAC地址', trigger: 'blur' }
+          { required: true, message: '请输入设备MAC地址', trigger: 'blur' }
         ],
         frame_id: [
           { required: Object.keys(this.frame).length === 0, message: '请选安装位置!', trigger: 'blur' } // 没有传入frame 属性,必须选择安装位置
@@ -254,7 +253,9 @@ export default {
         { key: '模拟门灯', value: 14 },
         { key: '遥控器', value: 15 },
         { key: '信标', value: 16 },
-        { key: '看板', value: 17 }
+        { key: '看板', value: 17 },
+        { key: '门禁设备', value: 18 },
+        { key: '探视机', value: 19 }
       ],
       deviceStatusTransfer: [
         { key: '启用', value: 1, color: 'green' },
@@ -342,7 +343,7 @@ export default {
         cellRenderer: this.onlineStateFormatter
       },
       { headerName: '部署位置', field: 'full_name', sortable: true, filter: 'agTextColumnFilter' },
-      { headerName: '以太网MAC地址', field: 'eth_mac', sortable: true, filter: 'agTextColumnFilter' },
+      { headerName: '设备唯一标识', field: 'eth_mac', sortable: true, filter: 'agTextColumnFilter' },
       { headerName: '以太网IP地址', field: 'eth_ip', sortable: true, filter: 'agTextColumnFilter' },
       { headerName: '通讯端口', field: 'eth_ip_port', sortable: true, filter: 'agNumberColumnFilter' },
       { headerName: '设备型号', field: 'model', sortable: true, filter: 'agTextColumnFilter' },

+ 1 - 1
src/views/ncs-orginazition/components/AppVersionManager.vue

@@ -20,7 +20,7 @@
             </el-upload>
           </el-form-item>
           <el-form-item label="版本数字" prop="version_no">
-            <el-input-number v-model="formmodel.version_no" :min="1" :max="100" placeholder="请输入版本数字" />
+            <el-input-number v-model="formmodel.version_no" :min="1" :max="1000" placeholder="请输入版本数字" />
 <!--            <el-input v-model="formmodel.version_no" type="number" clearable :maxlength="100" placeholder="请输入版本信息" />-->
           </el-form-item>
           <el-form-item label="版本信息" prop="version_code">

+ 10 - 0
src/views/ncs-orginazition/partInfoSetting.vue

@@ -54,6 +54,16 @@
           <app-version-manager :part-id="part_id" :device-type="7" />
         </keep-alive>
       </el-tab-pane>
+      <el-tab-pane label="探视机" name="vistitation">
+        <keep-alive>
+          <app-version-manager :part-id="part_id" :device-type="19" />
+        </keep-alive>
+      </el-tab-pane>
+      <el-tab-pane label="转换盒" name="transferDevice">
+        <keep-alive>
+          <app-version-manager :part-id="part_id" :device-type="11" />
+        </keep-alive>
+      </el-tab-pane>
     </el-tabs>
   </div>
 </template>