|
@@ -376,9 +376,105 @@
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.doctorTitle')">
|
|
|
|
+ <el-input v-model="formmodel.doctor_title" :label="this.$t('partInfo.doctorTitle')" :maxlength="15" >
|
|
|
|
+ <el-select v-model="formmodel.doctor_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option :label="this.$t('partInfo.display')" :value="1"></el-option>
|
|
|
|
+ <el-option :label="this.$t('partInfo.onDisplay')" :value="0"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.nurseTitle')">
|
|
|
|
+ <el-input v-model="formmodel.nurse_title" :label="this.$t('partInfo.nurseTitle')" :maxlength="15" >
|
|
|
|
+ <el-select v-model="formmodel.nurse_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option :label="this.$t('partInfo.display')" :value="1" />
|
|
|
|
+ <el-option :label="this.$t('partInfo.onDisplay')" :value="0" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.doorNurseTitle')">
|
|
|
|
+ <el-input v-model="formmodel.door_nurse_title" :label="this.$t('partInfo.doorNurseTitle')" :maxlength="15" >
|
|
|
|
+ <el-select v-model="formmodel.door_nurse_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option :label="this.$t('partInfo.display')" :value="1"></el-option>
|
|
|
|
+ <el-option :label="this.$t('partInfo.onDisplay')" :value="0"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.doorNursingTitle')">
|
|
|
|
+ <el-input v-model="formmodel.door_nursing_title" :label="this.$t('partInfo.doorNursingTitle')" :maxlength="15" >
|
|
|
|
+ <el-select v-model="formmodel.door_nursing_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option :label="this.$t('partInfo.display')" :value="1" />
|
|
|
|
+ <el-option :label="this.$t('partInfo.onDisplay')" :value="0" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.upSeconds')">
|
|
|
|
+ <el-input-number v-model="formmodel.up_seconds" :min="1" :max="300" :label="this.$t('partInfo.upSeconds')" />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.customizeHospitalCallFirst')">
|
|
|
|
+ <el-input v-model="formmodel.customize_hospital_call_first_name" :label="this.$t('partInfo.customizeHospitalCallFirstName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
+ <el-select v-model="formmodel.customize_hospital_call_first" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.customizeHospitalCallSecond')">
|
|
|
|
+ <el-input v-model="formmodel.customize_hospital_call_second_name" :label="this.$t('partInfo.customizeHospitalCallSecondName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
+ <el-select v-model="formmodel.customize_hospital_call_second" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.customizeHospitalCallThird')">
|
|
|
|
+ <el-input v-model="formmodel.customize_hospital_call_third_name" :label="this.$t('partInfo.customizeHospitalCallThirdName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
+ <el-select v-model="formmodel.customize_hospital_call_third" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
+ <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
|
|
<el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.iotProductId')">
|
|
|
|
+ <el-input v-model="formmodel.iot_product_id" clearable :maxlength="20" />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.iotProductKey')">
|
|
|
|
+ <el-input v-model="formmodel.iot_product_key" clearable :maxlength="100" />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </fieldset>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <fieldset class="margin-top-sm">
|
|
|
|
+ <legend>{{ this.$t('zy20240611.deviceFunction') }}</legend>
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.nursingColorRgb')">
|
|
<el-form-item :label="this.$t('partInfo.nursingColorRgb')">
|
|
<!-- <colorPicker v-model="formmodel.nursing_color_rgb" />-->
|
|
<!-- <colorPicker v-model="formmodel.nursing_color_rgb" />-->
|
|
<el-input v-model="formmodel.nursing_color_rgb" />
|
|
<el-input v-model="formmodel.nursing_color_rgb" />
|
|
@@ -397,26 +493,26 @@
|
|
<el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.autoAccept')" prop="auto_accept">
|
|
<el-form-item :label="this.$t('partInfo.autoAccept')" prop="auto_accept">
|
|
- <el-checkbox v-model="formmodel.auto_accept" :true-label="1" :false-label="0">{{ this.$t('partInfo.openAutoAccept') }}</el-checkbox>
|
|
|
|
|
|
+ <el-checkbox v-model="formmodel.auto_accept" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
|
|
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.unmannedCall')" prop="empty_bed_call_enabled">
|
|
<el-form-item :label="this.$t('partInfo.unmannedCall')" prop="empty_bed_call_enabled">
|
|
- <el-checkbox v-model="formmodel.empty_bed_call_enabled" :true-label="1" :false-label="0">{{ this.$t('partInfo.openUnmannedCall') }}</el-checkbox>
|
|
|
|
|
|
+ <el-checkbox v-model="formmodel.empty_bed_call_enabled" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.eventForward')" prop="event_forward">
|
|
<el-form-item :label="this.$t('partInfo.eventForward')" prop="event_forward">
|
|
- <el-checkbox v-model="formmodel.event_forward" :true-label="1" :false-label="0">{{ this.$t('partInfo.openEventForward') }}</el-checkbox>
|
|
|
|
|
|
+ <el-checkbox v-model="formmodel.event_forward" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.recordEnabled')" prop="record_enabled">
|
|
<el-form-item :label="this.$t('partInfo.recordEnabled')" prop="record_enabled">
|
|
- <el-checkbox v-model="formmodel.record_enabled" :true-label="1" :false-label="0">{{ this.$t('partInfo.recordAble') }}</el-checkbox>
|
|
|
|
|
|
+ <el-checkbox v-model="formmodel.record_enabled" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
@@ -462,13 +558,13 @@
|
|
<el-row>
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.screenLight')" prop="screen_light">
|
|
<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-checkbox v-model="formmodel.screen_light" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('partInfo.roomCallBed')" prop="room_call_bed">
|
|
<el-form-item :label="this.$t('partInfo.roomCallBed')" prop="room_call_bed">
|
|
- <el-checkbox v-model="formmodel.room_call_bed" :true-label="1" :false-label="0">{{ this.$t('partInfo.roomCallBed') }}</el-checkbox>
|
|
|
|
|
|
+ <el-checkbox v-model="formmodel.room_call_bed" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
@@ -525,6 +621,12 @@
|
|
<el-checkbox v-model="formmodel.broadcast_enable" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
<el-checkbox v-model="formmodel.broadcast_enable" :true-label="1" :false-label="0">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
+
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.boardShowEmptyBed')" prop="board_show_empty_bed">
|
|
|
|
+ <el-checkbox v-model="formmodel.board_show_empty_bed">{{ this.$t('action.enabled') }}</el-checkbox>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
<el-row>
|
|
<el-row>
|
|
@@ -547,14 +649,14 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.communicationModeMobile')" prop="communication_mode_mobile">
|
|
|
|
- <el-radio-group v-model="formmodel.communication_mode_mobile">
|
|
|
|
- <el-radio :label="1">{{ this.$t('partInfo.networkCall') }}</el-radio>
|
|
|
|
- <el-radio :label="2">{{ this.$t('partInfo.mobileCall') }}</el-radio>
|
|
|
|
- </el-radio-group>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-col :span="8">
|
|
|
|
+ <el-form-item :label="this.$t('partInfo.communicationModeMobile')" prop="communication_mode_mobile">
|
|
|
|
+ <el-radio-group v-model="formmodel.communication_mode_mobile">
|
|
|
|
+ <el-radio :label="1">{{ this.$t('partInfo.networkCall') }}</el-radio>
|
|
|
|
+ <el-radio :label="2">{{ this.$t('partInfo.mobileCall') }}</el-radio>
|
|
|
|
+ </el-radio-group>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row>
|
|
<el-row>
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFirst')" prop="customize_role_call_first">
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFirst')" prop="customize_role_call_first">
|
|
@@ -564,7 +666,7 @@
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
- v-for="(item,index) in partRoles" :key="index">{{item.role_name}}</el-radio>
|
|
|
|
|
|
+ v-for="(item,index) in partRoles" :key="index" v-if="item.role_type !== 'NURSE'">{{item.role_name}}</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
@@ -573,11 +675,11 @@
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallSecond')" prop="customize_role_call_second">
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallSecond')" prop="customize_role_call_second">
|
|
<el-radio-group v-model="formmodel.customize_role_call_second">
|
|
<el-radio-group v-model="formmodel.customize_role_call_second">
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
- <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
|
|
|
|
+ <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
- v-for="(item,index) in partRoles" :key="index">{{item.role_name}}</el-radio>
|
|
|
|
|
|
+ v-for="(item,index) in partRoles" :key="index" v-if="item.role_type !== 'NURSE'">{{item.role_name}}</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
@@ -587,11 +689,11 @@
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallThird')" prop="customize_role_call_third">
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallThird')" prop="customize_role_call_third">
|
|
<el-radio-group v-model="formmodel.customize_role_call_third">
|
|
<el-radio-group v-model="formmodel.customize_role_call_third">
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
- <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
|
|
|
|
+ <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id ||
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
- v-for="(item,index) in partRoles" :key="index">{{item.role_name}}</el-radio>
|
|
|
|
|
|
+ v-for="(item,index) in partRoles" :key="index" v-if="item.role_type !== 'NURSE'">{{item.role_name}}</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
@@ -601,115 +703,28 @@
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFourth')" prop="customize_role_call_fourth">
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFourth')" prop="customize_role_call_fourth">
|
|
<el-radio-group v-model="formmodel.customize_role_call_fourth">
|
|
<el-radio-group v-model="formmodel.customize_role_call_fourth">
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
- <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
|
|
|
|
+ <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
formmodel.customize_role_call_fifth===item.role_id "
|
|
- v-for="(item,index) in partRoles" :key="index">{{item.role_name}}</el-radio>
|
|
|
|
|
|
+ v-for="(item,index) in partRoles" :key="index" v-if="item.role_type !== 'NURSE'">{{item.role_name}}</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
-
|
|
|
|
<el-row>
|
|
<el-row>
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFifth')" prop="customize_role_call_fifth">
|
|
<el-form-item :label="this.$t('partInfo.customizeRoleCallFifth')" prop="customize_role_call_fifth">
|
|
<el-radio-group v-model="formmodel.customize_role_call_fifth">
|
|
<el-radio-group v-model="formmodel.customize_role_call_fifth">
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
<el-radio :label="0">{{ this.$t('partInfo.onDisplay') }}</el-radio>
|
|
- <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
|
|
|
|
+ <el-radio :label="item.role_id" :disabled="formmodel.customize_role_call_first===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_second===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_third===item.role_id ||
|
|
formmodel.customize_role_call_fourth===item.role_id "
|
|
formmodel.customize_role_call_fourth===item.role_id "
|
|
- v-for="(item,index) in partRoles" :key="index">{{item.role_name}}</el-radio>
|
|
|
|
|
|
+ v-for="(item,index) in partRoles" :key="index" v-if="item.role_type !== 'NURSE'">{{item.role_name}}</el-radio>
|
|
</el-radio-group>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.customizeHospitalCallFirst')">
|
|
|
|
- <el-input v-model="formmodel.customize_hospital_call_first_name" :label="this.$t('partInfo.customizeHospitalCallFirstName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
- <el-select v-model="formmodel.customize_hospital_call_first" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
-
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.customizeHospitalCallSecond')">
|
|
|
|
- <el-input v-model="formmodel.customize_hospital_call_second_name" :label="this.$t('partInfo.customizeHospitalCallSecondName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
- <el-select v-model="formmodel.customize_hospital_call_second" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
-
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.customizeHospitalCallThird')">
|
|
|
|
- <el-input v-model="formmodel.customize_hospital_call_third_name" :label="this.$t('partInfo.customizeHospitalCallThirdName')" :maxlength="15" :placeholder="this.$t('partInfo.inputName')">
|
|
|
|
- <el-select v-model="formmodel.customize_hospital_call_third" filterable slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option v-for="(item,index) in otherHostDevice" :key="index" :label="item.name" :value="item.id" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
-
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.doctorTitle')">
|
|
|
|
- <el-input v-model="formmodel.doctor_title" :label="this.$t('partInfo.doctorTitle')" :maxlength="15" >
|
|
|
|
- <el-select v-model="formmodel.doctor_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option :label="this.$t('partInfo.display')" :value="1"></el-option>
|
|
|
|
- <el-option :label="this.$t('partInfo.onDisplay')" :value="0"></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.nurseTitle')">
|
|
|
|
- <el-input v-model="formmodel.nurse_title" :label="this.$t('partInfo.nurseTitle')" :maxlength="15" >
|
|
|
|
- <el-select v-model="formmodel.nurse_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option :label="this.$t('partInfo.display')" :value="1" />
|
|
|
|
- <el-option :label="this.$t('partInfo.onDisplay')" :value="0" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.doorNurseTitle')">
|
|
|
|
- <el-input v-model="formmodel.door_nurse_title" :label="this.$t('partInfo.doorNurseTitle')" :maxlength="15" >
|
|
|
|
- <el-select v-model="formmodel.door_nurse_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option :label="this.$t('partInfo.display')" :value="1"></el-option>
|
|
|
|
- <el-option :label="this.$t('partInfo.onDisplay')" :value="0"></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.doorNursingTitle')">
|
|
|
|
- <el-input v-model="formmodel.door_nursing_title" :label="this.$t('partInfo.doorNursingTitle')" :maxlength="15" >
|
|
|
|
- <el-select v-model="formmodel.door_nursing_valid" slot="prepend" :placeholder="this.$t('action.choice')">
|
|
|
|
- <el-option :label="this.$t('partInfo.display')" :value="1" />
|
|
|
|
- <el-option :label="this.$t('partInfo.onDisplay')" :value="0" />
|
|
|
|
- </el-select>
|
|
|
|
- </el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.upSeconds')">
|
|
|
|
- <el-input-number v-model="formmodel.up_seconds" :min="1" :max="300" :label="this.$t('partInfo.upSeconds')" />
|
|
|
|
- </el-form-item>
|
|
|
|
-
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item prop="board_show_empty_bed">
|
|
|
|
- <el-checkbox v-model="formmodel.board_show_empty_bed">{{ this.$t('partInfo.boardShowEmptyBed') }}</el-checkbox>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
-
|
|
|
|
<el-row v-if="isShow">
|
|
<el-row v-if="isShow">
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item :label="this.$t('zy20240205.linuxSerial1')" prop="linux_serial1">
|
|
<el-form-item :label="this.$t('zy20240205.linuxSerial1')" prop="linux_serial1">
|
|
@@ -766,17 +781,31 @@
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.iotProductId')">
|
|
|
|
- <el-input v-model="formmodel.iot_product_id" clearable :maxlength="20" />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="8">
|
|
|
|
- <el-form-item :label="this.$t('partInfo.iotProductKey')">
|
|
|
|
- <el-input v-model="formmodel.iot_product_key" clearable :maxlength="100" />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-row v-if="isShow">
|
|
|
|
+ <el-form-item :label="deviceButtonFunctionStr"
|
|
|
|
+ v-for="(item, index) in deviceButtonParamsTemp" :key="'u' + index">
|
|
|
|
+ <el-col :span="6" style="margin: auto">
|
|
|
|
+ <el-select v-model="item.key" :maxlength="50" :placeholder="selectKey" clearable>
|
|
|
|
+ <el-option v-for="(keyItem, keyIndex) in serialKeyTypeTransfer" :key="keyIndex" :label="keyItem.key" :value="keyItem.value" :disabled="isDeviceButtonDisabled(keyItem, keyIndex)"/>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6" style="margin: auto">
|
|
|
|
+ <el-select v-model="item.type" :maxlength="50" :placeholder="selectTcpType" clearable @change="handleChange(index)">
|
|
|
|
+ <el-option v-for="(keyItem, keyIndex) in deviceButtonTypeTransfer" :key="keyIndex" :label="keyItem.key" :value="keyItem.value"/>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6" style="margin: auto">
|
|
|
|
+ <el-select v-model="item.value" :maxlength="50" :placeholder="selectTcpType" clearable>
|
|
|
|
+ <el-option v-if="item.type === deviceButtonType.SOS" v-for="(keyItem, keyIndex) in deviceButtonSosTransfer" :key="keyIndex" :label="keyItem.key" :value="keyItem.value"/>
|
|
|
|
+ <el-option v-else-if="item.type === deviceButtonType.VOICE" v-for="(keyItem, keyIndex) in deviceButtonVoiceTransfer" :key="keyIndex" :label="keyItem.key" :value="keyItem.value"/>
|
|
|
|
+ <el-option v-else-if="item.type === deviceButtonType.EVENT" v-for="(keyItem, keyIndex) in deviceButtonEventTransfer" :key="keyIndex" :label="keyItem.key" :value="keyItem.value"/>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="3" style="margin: auto">
|
|
|
|
+ <el-button v-if="index === 0" type="primary" @click="addDeviceButton(deviceButtonParamsTemp)"> {{ addStr }} </el-button>
|
|
|
|
+ <el-button v-else type="danger" @click="delDeviceButton(deviceButtonParamsTemp, index)"> {{ delStr }} </el-button>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-form-item>
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
|
<el-row>
|
|
<el-row>
|
|
@@ -811,8 +840,6 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
-
|
|
|
|
-
|
|
|
|
</fieldset>
|
|
</fieldset>
|
|
|
|
|
|
<el-form-item align="center" class="margin-top-sm">
|
|
<el-form-item align="center" class="margin-top-sm">
|
|
@@ -839,6 +866,12 @@ import * as API_Device from '@/api/ncs_device'
|
|
import * as API_Excel from "@/api/ncs_excel";
|
|
import * as API_Excel from "@/api/ncs_excel";
|
|
import moment from 'moment'
|
|
import moment from 'moment'
|
|
import {SERIAL_TYPE} from "@/utils/enum/SerialTypeEnum";
|
|
import {SERIAL_TYPE} from "@/utils/enum/SerialTypeEnum";
|
|
|
|
+import {DEVICE_TYPE} from "@/utils/enum/DeviceTypeEnum";
|
|
|
|
+import {SERIAL_KEY_TYPE} from "@/utils/enum/SerialKeyTypeEnum";
|
|
|
|
+import {DEVICE_BUTTON_TYPE} from "@/utils/enum/DeviceButtonTypeEnum";
|
|
|
|
+import i18n from "@/utils/i18n";
|
|
|
|
+import * as API_event from "@/api/ncs_event";
|
|
|
|
+import {getEventListByPartId} from "@/api/ncs_event";
|
|
const serverUrl = domain.serverUrl
|
|
const serverUrl = domain.serverUrl
|
|
const DeviceUrl = domain.DeviceUrl
|
|
const DeviceUrl = domain.DeviceUrl
|
|
export default {
|
|
export default {
|
|
@@ -865,6 +898,7 @@ export default {
|
|
isShow: false,
|
|
isShow: false,
|
|
isDisabled: false,
|
|
isDisabled: false,
|
|
partRoles: [],
|
|
partRoles: [],
|
|
|
|
+ partEvents: [],
|
|
systemConfig: {},
|
|
systemConfig: {},
|
|
formmodelAdmin: {},
|
|
formmodelAdmin: {},
|
|
noMember: true,
|
|
noMember: true,
|
|
@@ -874,6 +908,22 @@ export default {
|
|
excelUploadUrl: DeviceUrl + '/ncs/excel/upload/' + this.partId,
|
|
excelUploadUrl: DeviceUrl + '/ncs/excel/upload/' + this.partId,
|
|
excelUploadDemo: serverUrl + '/upload/excel/demo/excel_demo.xlsx',
|
|
excelUploadDemo: serverUrl + '/upload/excel/demo/excel_demo.xlsx',
|
|
serialType: SERIAL_TYPE.getKeyValueList(),
|
|
serialType: SERIAL_TYPE.getKeyValueList(),
|
|
|
|
+ deviceButtonFunctionStr: this.$t('zy20240611.deviceButtonFunctionStr'),
|
|
|
|
+ selectKey: this.$t('zy20240611.selectKey'),
|
|
|
|
+ selectTcpType: this.$t('action.choiceType'),
|
|
|
|
+ addStr: this.$t('action.add'),
|
|
|
|
+ delStr: this.$t('action.delete'),
|
|
|
|
+ deviceButtonParamsTemp: [{
|
|
|
|
+ key: '',
|
|
|
|
+ type: '',
|
|
|
|
+ value: ''
|
|
|
|
+ }],
|
|
|
|
+ serialKeyTypeTransfer: SERIAL_KEY_TYPE.getKeyValueList(),
|
|
|
|
+ deviceButtonTypeTransfer: DEVICE_BUTTON_TYPE.getKeyValueList(),
|
|
|
|
+ deviceButtonType: DEVICE_BUTTON_TYPE,
|
|
|
|
+ deviceButtonSosTransfer: [{ key : this.$t('tcpType.SOS'), value : 'SOS'}],
|
|
|
|
+ deviceButtonEventTransfer: [],
|
|
|
|
+ deviceButtonVoiceTransfer: []
|
|
}
|
|
}
|
|
},
|
|
},
|
|
async mounted() {
|
|
async mounted() {
|
|
@@ -881,7 +931,8 @@ export default {
|
|
// this.nurseLevel0Config = await API_Nurse.getNurseConfigs(this.partId, 0)
|
|
// this.nurseLevel0Config = await API_Nurse.getNurseConfigs(this.partId, 0)
|
|
this.getPartInfo()
|
|
this.getPartInfo()
|
|
this.getParents()
|
|
this.getParents()
|
|
- this.getRoles({ page_size: 200, page_no: 1, fixedCondition: ' shop_id = -1 and role_name<>"护士"', sort: ' role_id', dir: 'desc' })
|
|
|
|
|
|
+ this.getRoles({ page_size: 200, page_no: 1, fixedCondition: ' shop_id = -1', sort: ' role_id', dir: 'desc' })
|
|
|
|
+ this.getEvents(this.partId)
|
|
this.getOtherHostDevice(this.partId)
|
|
this.getOtherHostDevice(this.partId)
|
|
console.log(this.excelUploadUrl)
|
|
console.log(this.excelUploadUrl)
|
|
},
|
|
},
|
|
@@ -980,6 +1031,7 @@ export default {
|
|
// this.formmodel.door_nursing_title = res.door_nursing_title
|
|
// this.formmodel.door_nursing_title = res.door_nursing_title
|
|
// this.formmodel.door_nursing_valid = res.door_nursing_valid
|
|
// this.formmodel.door_nursing_valid = res.door_nursing_valid
|
|
this.formmodel.up_seconds = res.up_seconds
|
|
this.formmodel.up_seconds = res.up_seconds
|
|
|
|
+ this.deviceButtonParamsTemp = this.strToParamsTemp(res.device_button_function)
|
|
API_SystemConfig.getConfig('groupHostTransferSeconds').then(r => {
|
|
API_SystemConfig.getConfig('groupHostTransferSeconds').then(r => {
|
|
this.systemConfig = r
|
|
this.systemConfig = r
|
|
})
|
|
})
|
|
@@ -1006,6 +1058,18 @@ export default {
|
|
// 获取角色
|
|
// 获取角色
|
|
API_Clerk.getRoles(param).then(response => {
|
|
API_Clerk.getRoles(param).then(response => {
|
|
this.partRoles = response.data
|
|
this.partRoles = response.data
|
|
|
|
+ this.partRoles.forEach(p => {
|
|
|
|
+ this.deviceButtonVoiceTransfer.push({ key : p.role_name, value : p.role_type })
|
|
|
|
+ })
|
|
|
|
+ this.deviceButtonVoiceTransfer.push({ key : this.$t('zy20240611.voiceCancel'), value : 'CANCEL' })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getEvents(part_id) {
|
|
|
|
+ API_event.getEventListByPartId(part_id).then(response => {
|
|
|
|
+ this.partEvents = response
|
|
|
|
+ this.partEvents.forEach(p => {
|
|
|
|
+ this.deviceButtonEventTransfer.push({ key : p.name, value : p.id })
|
|
|
|
+ })
|
|
})
|
|
})
|
|
},
|
|
},
|
|
onSubmit() {
|
|
onSubmit() {
|
|
@@ -1032,6 +1096,7 @@ export default {
|
|
if (this.formmodel.qr_url) {
|
|
if (this.formmodel.qr_url) {
|
|
this.imageUrl = this.formmodel.qr_url
|
|
this.imageUrl = this.formmodel.qr_url
|
|
}
|
|
}
|
|
|
|
+ this.formmodel.device_button_function = this.paramsTempToStr(this.deviceButtonParamsTemp)
|
|
console.log(this.formmodel)
|
|
console.log(this.formmodel)
|
|
API_Part.editPartSetting(this.formmodel, this.partId).then(res => {
|
|
API_Part.editPartSetting(this.formmodel, this.partId).then(res => {
|
|
this.$message.success(this.$t('action.saveSuccess'))
|
|
this.$message.success(this.$t('action.saveSuccess'))
|
|
@@ -1198,6 +1263,57 @@ export default {
|
|
return false
|
|
return false
|
|
}
|
|
}
|
|
return true
|
|
return true
|
|
|
|
+ },
|
|
|
|
+ addDeviceButton(paramsTemp){
|
|
|
|
+ paramsTemp.push({
|
|
|
|
+ key: '',
|
|
|
|
+ type: '',
|
|
|
|
+ value: ''
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ delDeviceButton(paramsTemp, index) {
|
|
|
|
+ paramsTemp.splice(index, 1)
|
|
|
|
+ },
|
|
|
|
+ isDeviceButtonDisabled(option, currentIndex) {
|
|
|
|
+ const selectedArr = this.deviceButtonParamsTemp.map(item => item.key)
|
|
|
|
+ selectedArr.splice(currentIndex, 1)
|
|
|
|
+ return selectedArr.includes(option.value)
|
|
|
|
+ },
|
|
|
|
+ paramsTempToStr(paramsTemp) {
|
|
|
|
+ let _paramsTemp = []
|
|
|
|
+ if (paramsTemp.length !== 0) {
|
|
|
|
+ for (let i = 0; i < paramsTemp.length; i++) {
|
|
|
|
+ if (paramsTemp[i].key !== '' && paramsTemp[i].value !== '' && paramsTemp[i].type !== '') {
|
|
|
|
+ _paramsTemp.push(paramsTemp[i])
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (_paramsTemp.length !== 0) {
|
|
|
|
+ return JSON.stringify(_paramsTemp);
|
|
|
|
+ }
|
|
|
|
+ return undefined;
|
|
|
|
+ },
|
|
|
|
+ strToParamsTemp(str) {
|
|
|
|
+ if (str === '' || str === null) {
|
|
|
|
+ return [{
|
|
|
|
+ key: '',
|
|
|
|
+ type: '',
|
|
|
|
+ value: ''
|
|
|
|
+ }]
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ try {
|
|
|
|
+ let jsonStr = str
|
|
|
|
+ jsonStr = jsonStr.replace(/>/g, '>').replace(/</g, '<');
|
|
|
|
+ return JSON.parse(jsonStr)
|
|
|
|
+ } catch (e) {
|
|
|
|
+ console.error("Parsing error:", e);
|
|
|
|
+ // 处理错误或设置错误状态
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ handleChange(index) {
|
|
|
|
+ this.deviceButtonParamsTemp[index].value = ''
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|