|
@@ -17,7 +17,7 @@
|
|
|
<!--工具栏-->
|
|
|
<div slot="toolbar" class="inner-toolbar">
|
|
|
<div class="toolbar-search">
|
|
|
- <en-table-search placeholder="请输入搜索关键字" @search="handlerSearch" />
|
|
|
+ <en-table-search placeholder="请输入设备别名或设备标识码" @search="handlerSearch" />
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-pagination
|
|
@@ -48,13 +48,13 @@
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
<el-form-item style="margin-top:15px;">
|
|
|
- <el-button type="primary" @click="handlerFormSubmit('editform')">保存修改</el-button>
|
|
|
- <el-button v-if="member_id" type="primar" @click="xiaban('editform')">下班</el-button>
|
|
|
+ <el-button type="success" @click="handlerFormSubmit('editform')">保存修改</el-button>
|
|
|
+ <el-button v-if="member_id" type="primary" @click="xiaban">初始化设备</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane v-if="role_id" label="管理空间" name="watch-frame">
|
|
|
- <nurse-watch-frame :device-id="deviceInfo.id" :role-id="role_id" @fanhui="fanhui" />
|
|
|
+ <el-tab-pane v-if="member_id" label="管理空间" name="watch-frame">
|
|
|
+ <nurse-watch-frame :device-id="deviceInfo.id" :role-id="role_id" :role-name="role_name" :member-id="member_id" @fanhui="fanhui" />
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
</el-dialog>
|
|
@@ -70,7 +70,6 @@ import * as clerk_API from '@/api/ncs_clerk'
|
|
|
import ButtonCellRender from '@/components/AgGridCellRender/ButtonCellRender'
|
|
|
import RadioFilter from '@/components/AgGridCustomFilter/RadioFilter'
|
|
|
import nurseWatchFrame from '@/views/hospitalFrame/nurse_watch_frame'
|
|
|
-import * as API_UserInfo from "@/api/calling-userInfo";
|
|
|
|
|
|
export default {
|
|
|
name: 'Index',
|
|
@@ -117,6 +116,7 @@ export default {
|
|
|
],
|
|
|
clerks: [],
|
|
|
role_id: null,
|
|
|
+ role_name: '',
|
|
|
activeName: 'huan-ban',
|
|
|
member_id: null
|
|
|
}
|
|
@@ -141,21 +141,21 @@ export default {
|
|
|
valueGetter: this.hashValueGetter
|
|
|
},
|
|
|
{ headerName: '设备别名', field: 'name', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
- { headerName: '设备状态', field: 'status', sortable: true, cellRenderer: this.formatterSatus, minWidth: 120, filterFramework: 'RadioFilter',
|
|
|
- filterParams: {
|
|
|
- listData: this.deviceStatusTransfer
|
|
|
- }
|
|
|
- },
|
|
|
+ // { headerName: '设备状态', field: 'status', sortable: true, cellRenderer: this.formatterSatus, minWidth: 120, filterFramework: 'RadioFilter',
|
|
|
+ // filterParams: {
|
|
|
+ // listData: this.deviceStatusTransfer
|
|
|
+ // }
|
|
|
+ // },
|
|
|
{ headerName: '绑定人', field: 'member_name', sortable: true, filter: 'agTextColumnFilter', minWidth: 140, valueFormatter: this.formatterName },
|
|
|
- { headerName: '所属位置', field: 'full_name', sortable: true, filter: 'agTextColumnFilter', minWidth: 140 },
|
|
|
- { headerName: '有线物理地址', field: 'eth_mac', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
+ // { headerName: '所属位置', field: 'full_name', sortable: true, filter: 'agTextColumnFilter', minWidth: 140 },
|
|
|
+ { headerName: '设备标识码', field: 'eth_mac', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
{ headerName: '有线IP地址', field: 'eth_ip', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
{ headerName: '设备型号', field: 'model', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
{ headerName: '出厂编号', field: 'code', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
- { headerName: '软件版本', field: 'soft_ver', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
- { headerName: '硬件版本', field: 'hard_ver', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
- { headerName: 'WIFI物理地址', field: 'wifi_mac', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
- { headerName: 'WIFIIP地址', field: 'wifi_ip', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
+ // { headerName: '软件版本', field: 'soft_ver', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
+ // { headerName: '硬件版本', field: 'hard_ver', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
+ // { headerName: 'WIFI物理地址', field: 'wifi_mac', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
+ // { headerName: 'WIFIIP地址', field: 'wifi_ip', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
{ headerName: 'SIP账号', field: 'sip_id', sortable: true, filter: 'agTextColumnFilter', minWidth: 150 },
|
|
|
// { headerName: '最后修改时间', field: 'update_time', sortable: true, valueFormatter: this.formatterDate, minWidth: 170 },
|
|
|
{ headerName: '更新时间', field: 'update_time', sortable: true, filter: 'agDateColumnFilter', minWidth: 170, valueFormatter: this.formatterDate,
|
|
@@ -169,11 +169,13 @@ export default {
|
|
|
{
|
|
|
headerName: '换班', field: 'shop_id',
|
|
|
cellRendererFramework: 'ButtonCellRender',
|
|
|
- cellRendererParams: {
|
|
|
- onClick: this.huanban,
|
|
|
- label: '换班',
|
|
|
- buttonType: 'success',
|
|
|
- buttonSize: 'mini'
|
|
|
+ cellRendererParams: param => {
|
|
|
+ return {
|
|
|
+ onClick: this.huanban,
|
|
|
+ label: param.data['member_id'] === null ? '绑定' : '换班',
|
|
|
+ buttonType: param.data['member_id'] === null ? 'primary' : 'success',
|
|
|
+ buttonSize: 'mini'
|
|
|
+ }
|
|
|
},
|
|
|
filter: false,
|
|
|
pinned: 'right',
|
|
@@ -182,22 +184,22 @@ export default {
|
|
|
resizable: false,
|
|
|
sortable: false
|
|
|
},
|
|
|
- {
|
|
|
- headerName: '管理', field: 'shop_id',
|
|
|
- cellRendererFramework: 'ButtonCellRender',
|
|
|
- cellRendererParams: {
|
|
|
- onClick: this.handEdit,
|
|
|
- label: '管理',
|
|
|
- buttonType: 'primary',
|
|
|
- buttonSize: 'mini'
|
|
|
- },
|
|
|
- filter: false,
|
|
|
- pinned: 'right',
|
|
|
- lockPinned: true,
|
|
|
- minWidth: 100,
|
|
|
- resizable: false,
|
|
|
- sortable: false
|
|
|
- }
|
|
|
+ // {
|
|
|
+ // headerName: '管理', field: 'shop_id',
|
|
|
+ // cellRendererFramework: 'ButtonCellRender',
|
|
|
+ // cellRendererParams: {
|
|
|
+ // onClick: this.handEdit,
|
|
|
+ // label: '管理',
|
|
|
+ // buttonType: 'primary',
|
|
|
+ // buttonSize: 'mini'
|
|
|
+ // },
|
|
|
+ // filter: false,
|
|
|
+ // pinned: 'right',
|
|
|
+ // lockPinned: true,
|
|
|
+ // minWidth: 100,
|
|
|
+ // resizable: false,
|
|
|
+ // sortable: false
|
|
|
+ // }
|
|
|
]
|
|
|
this.defaultColDef = {
|
|
|
sortable: true,
|
|
@@ -250,7 +252,8 @@ export default {
|
|
|
this.deviceInfo = JSON.parse(e.data)
|
|
|
this.role_id = this.deviceInfo.role_id
|
|
|
this.member_id = this.deviceInfo.member_id
|
|
|
- this.getEmployees(this.deviceInfo.role_name)
|
|
|
+ this.role_name = this.deviceInfo.role_name
|
|
|
+ this.getEmployees()
|
|
|
}
|
|
|
},
|
|
|
websocketclose: function(e) {
|
|
@@ -320,9 +323,13 @@ export default {
|
|
|
role_id: this.role_id
|
|
|
}
|
|
|
this.sendMsg(sendData)
|
|
|
+ const _this = this
|
|
|
+ _this.member_id = _this.deviceInfo.member_id
|
|
|
+ _this.activeName = 'watch-frame'
|
|
|
+ _this.getEmployees()
|
|
|
},
|
|
|
xiaban() {
|
|
|
- this.$confirm('您确定要下班吗?', '提示', {
|
|
|
+ this.$confirm('您确定要初始化吗?', '提示', {
|
|
|
confirmButtonText: '确定',
|
|
|
cancelButtonText: '取消',
|
|
|
type: 'warning'
|
|
@@ -335,11 +342,11 @@ export default {
|
|
|
role_id: this.role_id
|
|
|
}
|
|
|
this.sendMsg(sendData)
|
|
|
+ this.formshow = false
|
|
|
})
|
|
|
},
|
|
|
sendMsg(sendData) {
|
|
|
this.websock.send(JSON.stringify(sendData))
|
|
|
- this.formshow = false
|
|
|
const _this = this
|
|
|
setTimeout(function() {
|
|
|
_this.$message.success('操作成功')
|
|
@@ -420,7 +427,7 @@ export default {
|
|
|
return '<span style="color:red">未启用</span>'
|
|
|
}
|
|
|
},
|
|
|
- getEmployees(role_name) {
|
|
|
+ getEmployees() {
|
|
|
const _this = this
|
|
|
_this.nurses = []
|
|
|
clerk_API.listByPartRoleId({ partId: this.$store.getters.partId }).then(res => {
|
|
@@ -432,10 +439,9 @@ export default {
|
|
|
}, {})
|
|
|
const groupData = groupBy(res, item => item.role_name)
|
|
|
if (Object.entries(groupData).length > 0) {
|
|
|
- console.log('_this.deviceInfo.member_id===', _this.deviceInfo.member_id)
|
|
|
if (_this.deviceInfo.member_id) {
|
|
|
Object.entries(groupData).forEach(item => {
|
|
|
- if (item[0] === role_name) {
|
|
|
+ if (item[0] === _this.role_name) {
|
|
|
_this.nurses.push(item)
|
|
|
}
|
|
|
})
|
|
@@ -453,16 +459,19 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
huanban(row) {
|
|
|
+ this.activeName = 'huan-ban'
|
|
|
this.formshow = true
|
|
|
- this.deviceInfo = row
|
|
|
+ this.deviceInfo = Object.assign({}, row)
|
|
|
this.role_id = this.deviceInfo.role_id
|
|
|
this.member_id = this.deviceInfo.member_id
|
|
|
- this.getEmployees(this.deviceInfo.role_name)
|
|
|
+ this.role_name = this.deviceInfo.role_name
|
|
|
+ this.getEmployees()
|
|
|
},
|
|
|
changeClerk(e) {
|
|
|
const clerk = this.clerks.find(res => res.member_id === e)
|
|
|
if (clerk) {
|
|
|
this.role_id = clerk.role_id
|
|
|
+ this.role_name = clerk.role_name
|
|
|
}
|
|
|
},
|
|
|
fanhui() {
|