Selaa lähdekoodia

门口机和分机用户姓名模糊化控制分开.职员启用与禁用

wuyunfeng 1 vuosi sitten
vanhempi
commit
9e9f72253c

+ 9 - 3
languages/en.js

@@ -7,6 +7,9 @@ module.exports = {
     more: 'More',
     view: 'View',
     delete: 'Delete',
+    enabled: 'Enable',
+    disabled: 'Disable',
+    state: 'State',
     login: 'Login',
     usernameMsg: 'Username',
     passwordMsg: 'Password',
@@ -1018,8 +1021,10 @@ module.exports = {
     nursingColorRgb: 'Nursing door light color',
     twoColorDoorLightValid: 'Two-color door lights are supported',
     support: 'Support two-color door lights',
-    customerNameHidden: 'Activar ocultar nombre de usuario',
-    clerkNameHidden: 'Enable employee name hiding',
+    customerNameHidden: 'Blur user name on bed device',
+    clerkNameHidden: 'Blur employee name on bed device',
+    customerNameHiddenOnDoor: 'Blur user name on door device',
+    clerkNameHiddenOnDoor: 'Blur employee name on door device',
     hidden: 'Turn on hide',
     channelImHistoryStoreDays: 'The number of days that channel messages are retained',
     recordEnabled: 'Turn on the audio and video recording function',
@@ -1366,7 +1371,8 @@ module.exports = {
     LICENSE_EXPIRE: 'The authorization expires, please contact after-sales service',
     LICENSE_FAILED: 'Invalid authorization, please contact after-sales service',
     FILE_UPLOAD_FAILED: 'No file storage directory configured!',
-    FILE_FAILED: 'file error'
+    FILE_FAILED: 'file error',
+    PERMISSION_DENIED: 'Permission denied'
   },
   deviceMenuDetailType: {
     HOSPITAL: 'Hospital Introduction',

+ 9 - 3
languages/es.js

@@ -7,6 +7,9 @@ module.exports = {
     more: 'Más',
     view: 'Ver',
     delete: 'Eliminar',
+    enabled: 'Hacer posible',
+    disabled: 'Mutilar',
+    state: 'Estado',
     login: 'Iniciar sesión',
     usernameMsg: 'Usuario',
     passwordMsg: 'Contraseña',
@@ -1018,8 +1021,10 @@ module.exports = {
     nursingColorRgb: 'Color de la luz de la puerta de enfermería',
     twoColorDoorLightValid: 'Las luces de puerta de dos colores son compatibles o no',
     support: 'Admite luces de puerta de dos colores',
-    customerNameHidden: 'Activar ocultar nombre de usuario',
-    clerkNameHidden: 'Activar ocultar el nombre del empleado',
+    customerNameHidden: 'Nombre de usuario en el dispositivo de cama inexistente',
+    clerkNameHidden: 'Nombre de usuario en el dispositivo de puerta inexistente',
+    customerNameHiddenOnDoor: 'Nombre de usuario en el dispositivo de puerta inexistente',
+    clerkNameHiddenOnDoor: 'Nombre del empleado en el dispositivo de puerta inexistente',
     hidden: 'Activar ocultar',
     channelImHistoryStoreDays: 'El número de días que se retienen los mensajes del canal',
     recordEnabled: 'Active la función de grabación de audio y video',
@@ -1366,7 +1371,8 @@ module.exports = {
     LICENSE_EXPIRE: 'La autorización expira, por favor póngase en contacto con post - venta',
     LICENSE_FAILED: 'Autorización inválida, por favor póngase en contacto con post - venta',
     FILE_UPLOAD_FAILED: '¡Directorio de almacenamiento de archivos no configurado!',
-    FILE_FAILED: 'Error de archivo'
+    FILE_FAILED: 'Error de archivo',
+    PERMISSION_DENIED: 'Se rechaza el permiso'
   },
   deviceMenuDetailType: {
     HOSPITAL: 'Introducción al hospital',

+ 9 - 3
languages/ru-RU.js

@@ -7,6 +7,9 @@ module.exports = {
     more: 'Больше',
     view: 'Посмотреть',
     delete: 'Удалить',
+    enabled: 'Сделать возможным',
+    state: 'Статус',
+    disabled: 'калечить',
     login: 'Войти',
     usernameMsg: 'Имя пользователя',
     passwordMsg: 'арготизм',
@@ -1018,8 +1021,10 @@ module.exports = {
     nursingColorRgb: 'Светлый цвет двери медсестер',
     twoColorDoorLightValid: 'Поддерживается или нет двухцветная дверная подсветка',
     support: 'Поддержка двухцветной подсветки дверей',
-    customerNameHidden: 'открыть имя пользователя',
-    clerkNameHidden: 'раскрыть имя работника',
+    customerNameHidden: 'Очистить имя пользователя на устройстве кровати',
+    clerkNameHidden: 'Размывание имен сотрудников на кровати',
+    customerNameHiddenOnDoor: 'Очистить имя пользователя на устройстве',
+    clerkNameHiddenOnDoor: 'Очистить имя сотрудника на устройстве двери',
     hidden: 'открыть',
     channelImHistoryStoreDays: 'Количество дней, в течение которых сообщения канала хранятся',
     recordEnabled: 'Включение функции записи аудио и видео',
@@ -1366,7 +1371,8 @@ module.exports = {
     LICENSE_EXPIRE: 'срок действия разрешения истекает после продажи',
     LICENSE_FAILED: 'Неверный Авторизация после продажи',
     FILE_UPLOAD_FAILED: 'каталог без профиля!',
-    FILE_FAILED: 'Ошибка файла'
+    FILE_FAILED: 'Ошибка файла',
+    PERMISSION_DENIED: 'Разрешение было отклонено.'
   },
   deviceMenuDetailType: {
     HOSPITAL: 'Краткое описание больницы',

+ 9 - 3
languages/zh-CN.js

@@ -7,6 +7,9 @@ module.exports = {
     more: '更多',
     view: '查看',
     delete: '删除',
+    enabled: '启用',
+    disabled: '禁用',
+    state: '状态',
     login: '登录',
     usernameMsg: 'Username',
     passwordMsg: 'Password',
@@ -1018,8 +1021,10 @@ module.exports = {
     nursingColorRgb: '护理门灯颜色',
     twoColorDoorLightValid: '支持双色门灯',
     support: '支持双色门灯',
-    customerNameHidden: '开启用户姓名隐藏',
-    clerkNameHidden: '开启员工姓名隐藏',
+    customerNameHidden: '分机用户姓名隐藏',
+    clerkNameHidden: '分机员工姓名隐藏',
+    customerNameHiddenOnDoor: '门口机用户姓名隐藏',
+    clerkNameHiddenOnDoor: '门口机员工姓名隐藏',
     hidden: '开启隐藏',
     channelImHistoryStoreDays: '频道留言保留天数',
     recordEnabled: '开启录音录像功能',
@@ -1366,7 +1371,8 @@ module.exports = {
     LICENSE_EXPIRE: '授权到期,请联系售后',
     LICENSE_FAILED: '无效授权,请联系售后',
     FILE_UPLOAD_FAILED: '未配置文件存放目录!',
-    FILE_FAILED: '文件错误'
+    FILE_FAILED: '文件错误',
+    PERMISSION_DENIED: '未授权'
   },
   deviceMenuDetailType: {
     HOSPITAL: '医院简介',

+ 8 - 0
src/api/ncs_clerk.js

@@ -132,3 +132,11 @@ export function getClerkVoByPartId(partId) {
     method: 'GET'
   })
 }
+
+export function enableClerk(id) {
+  return request({
+    url: `/ncs/clerk/enable/${id}`,
+    method: 'PUT',
+    loading: true
+  })
+}

+ 2 - 1
src/utils/enum/ErrorEnum.js

@@ -41,7 +41,8 @@ export const ERROR_TYPE = createEnum(
     LICENSE_EXPIRE: [45, i18n.t('errorType.LICENSE_EXPIRE')],
     LICENSE_FAILED: [46, i18n.t('errorType.LICENSE_FAILED')],
     FILE_UPLOAD_FAILED: [47, i18n.t('errorType.FILE_UPLOAD_FAILED')],
-    FILE_FAILED: [48, i18n.t('errorType.FILE_FAILED')]
+    FILE_FAILED: [48, i18n.t('errorType.FILE_FAILED')],
+    PERMISSION_DENIED: [49, i18n.t('errorType.PERMISSION_DENIED')]
   }
 )
 

+ 1 - 1
src/utils/request.js

@@ -89,7 +89,7 @@ service.interceptors.request.use(
   },
   error => {
     // do something with request error
-    console.log(error) // for debug
+    // console.log(error) // for debug
     return Promise.reject(error)
   }
 )

+ 8 - 5
src/views/hospitalFrame/frameTreeView-admin.vue

@@ -350,13 +350,16 @@ export default {
             this.$refs.frameTree.setCurrentKey(this.selectedNodeId)
           })
         }).catch(response => {
-          this.$message({
-            type: 'info',
-            message: response.message
-          })
+          // this.$message({
+          //   type: 'info',
+          //   message: response.message
+          // })
         })
       }).catch(() => {
-
+        this.$message({
+          type: 'info',
+          message: this.$t('action.cancelDelete')
+        })
       })
     },
 

+ 8 - 5
src/views/hospitalFrame/frameTreeView.vue

@@ -602,13 +602,16 @@ export default {
             this.$refs.frameTree.setCurrentKey(this.selectedNodeId)
           })
         }).catch(response => {
-          this.$message({
-            type: 'info',
-            message: response.message
-          })
+          // this.$message({
+          //   type: 'info',
+          //   message: response.message
+          // })
         })
       }).catch(() => {
-
+        this.$message({
+          type: 'info',
+          message: this.$t('action.cancelDelete')
+        })
       })
     },
 

+ 1 - 1
src/views/ncs-auth/compontents/roleEdit.vue

@@ -103,7 +103,7 @@ export default {
       permissionRules: {
         role_name: [
           this.MixinRequired(this.$t('role.inputRoleName')),
-          { min: 1, max: 10, message: this.$t('role.roleNameMsg'), trigger: 'blur' }
+          { min: 1, max: 50, message: this.$t('role.roleNameMsg'), trigger: 'blur' }
         ]
       },
       permissions: [],

+ 26 - 6
src/views/ncs-clerk/components/clerkList.vue

@@ -361,7 +361,7 @@ export default {
       } else {
         this.shopId = val
       }
-      this.params.fixedCondition = this.part_view ? 't.shop_id=' + this.shopId+' and t.user_state=0 and t.member_id is not NULL' : 't.user_state = 0 and t.member_id is not NULL'
+      this.params.fixedCondition = this.part_view ? 't.shop_id=' + this.shopId+'  and t.member_id is not NULL' : ' t.member_id is not NULL'
       this.GET_MemberList()
     }
   },
@@ -422,13 +422,14 @@ export default {
         sortable: false
       },
       {
-        headerName: this.$t('action.delete'), field: 'id',
+        headerName: this.$t('action.state'), field: 'id',
         cellRendererFramework: 'ButtonCellRender',
         cellRendererParams: param => {
+          console.log(param)
           return {
-            onClick: this.deleteSingle,
-            label: this.$t('action.delete'),
-            buttonType: 'danger',
+            onClick: (param.data.user_state===0?this.deleteSingle:this.enableClerk),
+            label: (param.data.user_state===0?this.$t('action.disabled'):this.$t('action.enabled')),
+            buttonType: (param.data.user_state===0?'danger':'primary'),
             buttonSize: 'mini'
           }
         },
@@ -492,7 +493,7 @@ export default {
     } else {
       this.shopId = this.partId
     }
-    this.params.fixedCondition = this.part_view ? 'shop_id=' + this.shopId +' and user_state=0': 'user_state=0 and member_id is not null'
+    this.params.fixedCondition = this.part_view ? 'shop_id=' + this.shopId : ' member_id is not null'
     this.GET_MemberList()
     this.getRoles({ page_size: 200, page_no: 1, fixedCondition: ' shop_id = -1', sort: ' role_id', dir: 'desc' })
 
@@ -531,6 +532,24 @@ export default {
     deleteSingle(row) {
       this.handlerDelete(row.clerk_id)
     },
+
+    enableClerk(row){
+      API_Clerk.enableClerk(row.clerk_id).then(
+              response => {
+                this.GET_MemberList()
+                this.$message({
+                  type: 'success',
+                  message: this.$t('action.handleSuccess')
+                })
+              }
+      ).catch(response => {
+        this.$message({
+          type: 'info',
+          message: response.message
+        })
+      })
+    },
+
     /** 单条数据删除处理 */
     handlerDelete(ids) {
       this.$confirm(this.$t('member.disableClerk'), this.$t('action.waring'), {
@@ -803,6 +822,7 @@ export default {
       document.body.style.overflow = 'hidden'
       this.showViewer = true
     },
+
     closeViewer() {
       document.body.style.overflow = prevOverflow
       this.showViewer = false

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

@@ -970,11 +970,12 @@
                         response => {
                             this.getList()
                         }
-                    ).catch(response => {
-                        this.$message({
-                            type: 'info',
-                            message: response.message
-                        })
+                    ).catch(err => {
+                        // console.log(err)
+                        // this.$message({
+                        //     type: 'info',
+                        //     message: response.message
+                        // })
                     })
                     if (this.hasSosDeviceSettings) {
                         API_SosDeviceSetting.deleteByDeviceId(id).then(() => {

+ 12 - 0
src/views/ncs-orginazition/components/partInfoEdit.vue

@@ -433,6 +433,18 @@
             </el-col>
 
             <el-col :span="8">
+              <el-form-item :label="this.$t('partInfo.customerNameHiddenOnDoor')" prop="customer_name_hidden">
+                <el-checkbox v-model="formmodel.customer_name_hidden_on_door" :true-label="1" :false-label="0">{{ this.$t('partInfo.hidden') }}</el-checkbox>
+              </el-form-item>
+            </el-col>
+
+            <el-col :span="8">
+              <el-form-item :label="this.$t('partInfo.clerkNameHiddenOnDoor')" prop="clerk_name_hidden">
+                <el-checkbox v-model="formmodel.clerk_name_hidden_on_door" :true-label="1" :false-label="0">{{ this.$t('partInfo.hidden') }}</el-checkbox>
+              </el-form-item>
+            </el-col>
+
+            <el-col :span="8">
               <el-form-item :label="this.$t('partInfo.screenLight')" prop="screen_light">
                 <el-checkbox v-model="formmodel.screen_light" :true-label="1" :false-label="0">{{ this.$t('partInfo.screenLight') }}</el-checkbox>
               </el-form-item>

+ 4 - 4
src/views/ncs-orginazition/index.vue

@@ -341,10 +341,10 @@ export default {
             })
           }
         ).catch(response => {
-          this.$message({
-            type: 'info',
-            message: response.message
-          })
+          // this.$message({
+          //   type: 'info',
+          //   message: response.message
+          // })
         })
       }).catch(() => {
         this.$message({