Browse Source

ws相关

master
aBin 5 years ago
parent
commit
beb4503caf
  1. 4
      rest/project.http
  2. 37
      src/components/LoadCells/LoadCells.vue
  3. 7
      src/components/Map/Map.js
  4. 76
      src/components/Panel/Panel.vue
  5. 8
      src/components/RFID/RFID.styl
  6. 15
      src/components/RFID/RFID.vue
  7. 10
      src/components/Sensor/Sensor.js
  8. 13
      src/components/Sensor/Sensor.vue
  9. 84
      src/mixins/socket.js
  10. 2
      src/views/BtnPage/BtnPage.vue

4
rest/project.http

@ -65,8 +65,8 @@ POST {{record}}/debug/record
{
"param":{
"authId": "1",
"type": "2",
"value":"70000",
"type": "10",
"value":"3000",
"time":"1607937529000"
}
}

37
src/components/LoadCells/LoadCells.vue

@ -17,29 +17,6 @@
<span>{{ item.number[a-1] ? item.number[a-1] : 0 }}</span>
</div>
</div>
<!-- <div class="number flex-1">
<div class="num_item">
<span>{{ item.number.split('')[0] }}</span>
</div>
<div class="num_item">
<span>{{ item.number.split('')[1] }}</span>
</div>
<div :style="item.number.split('')[2] === '.' ? 'padding-right:5%' : '' " class="num_item">
<span>{{ item.number.split('')[2] }}</span>
</div>
<div class="num_item">
<span>{{ item.number.split('')[3] }}</span>
</div>
<div class="num_item">
<span>{{ item.number.split('')[4] }}</span>
</div>
<div class="num_item">
<span>{{ item.number.split('')[5] }}</span>
</div>
<div class="num_item">
<span>{{ item.number.split('')[6] }}</span>
</div>
</div>-->
</div>
</div>
</template>
@ -64,7 +41,7 @@ export default {
{
id: 3,
name: '称重传感器3',
number: ['0', '0', '.', '0', '0', '0', '0'],
number: ['0', '.', '0'],
},
{
id: 4,
@ -75,15 +52,15 @@ export default {
};
},
computed: mapState('home', ['weighSensor1', 'weighSensor2', 'weighSensor3', 'weighSensor4']),
computed: mapState('messages', ['weighSensor1', 'weighSensor2', 'weighSensor3', 'weighSensor4']),
watch: {
weighSensor1(value) {
console.log('value: ', value);
if (value) {
weighSensor1: {
handle(value) {
console.log('weighSensor1: ', value);
this.lists[0].number = value.split('');
console.log('this.lists: ', this.lists);
}
},
deep: true,
},
weighSensor2(value) {
if (value) {

7
src/components/Map/Map.js

@ -8,7 +8,7 @@ var option = {
regionHeight: 6, //地图高度
map: '山西',
viewControl: {
distance: 350, //地图视角 控制初始大小
distance: 300, //地图视角 控制初始大小
rotateSensitivity: 1, //禁止旋转
zoomSensitivity: 1, //禁止缩放
},
@ -44,10 +44,11 @@ var option = {
// regions: [
// {
// name: '运城',
// selected: true,
// itemStyle: {
// borderWidth: 3,
// areaColor: 'red',
// color: 'red',
// areaColor: '#f00',
// color: '#f00',
// },
// },
// ],

76
src/components/Panel/Panel.vue

@ -4,27 +4,27 @@
<div class="d-flex panel-box-1">
<div class="flex-1">
<span class="panel-tips">患者体重kg</span>
<span class="panel-con">{{ weight }}</span>
<span class="panel-con">{{ weightMessage }}</span>
</div>
<div class="flex-1">
<span class="panel-tips">药物剂量mg</span>
<span class="panel-con">{{ thrombolytic }}</span>
<span class="panel-con">{{ thrombolyticDose }}</span>
</div>
</div>
<div class="d-flex panel-box-1">
<div class="flex-1">
<span class="panel-tips">团注剂量mg</span>
<span class="panel-con">{{ bolus }}</span>
<span class="panel-con">{{ bolusDose }}</span>
</div>
<div class="flex-1">
<span class="panel-tips">维持剂量mg</span>
<span class="panel-con">{{ maintenance }}</span>
<span class="panel-con">{{ maintenanceDose }}</span>
</div>
</div>
<div style="width: 95%; padding-left: 5%">
<div style="width: 120%">
<span :style="{ marginLeft: percentA }" class="tips">
123
{{ info }}
<a-icon class="down-icon" type="caret-down" />
</span>
</div>
@ -38,7 +38,7 @@
</template>
<script>
import { mapState } from 'vuex';
import { mapState, mapMutations } from 'vuex';
export default {
name: 'Panel',
data() {
@ -71,39 +71,49 @@ export default {
'解脱',
'结束',
],
weight: 0,
thrombolytic: 0,
bolus: 0,
maintenance: 0,
info: '呼叫',
};
},
computed: mapState('messages', ['weightMessage', 'bolusDose', 'maintenanceDose', 'thrombolyticDose', 'startMessages']),
computed: mapState('messages', ['weightMessage', 'bolusDose', 'maintenanceDose', 'thrombolyticDose', 'startMessages', 'rfidMessage']),
watch: {
weightMessage(val) {
this.weight = val;
},
bolusDose(val) {
this.bolus = bolusDose;
},
maintenanceDose(val) {
this.maintenance = val;
},
thrombolyticDose(val) {
this.thrombolytic = val;
},
},
mounted() {
const that = this;
var add = setInterval(function() {
if (that.percent === 100) {
that.percent = 0;
that.percentA = 0;
rfidMessage(val) {
console.log(val);
if (this.startMessages) {
this.percent = 0;
this.percentA = 0;
this.info = '呼叫';
this.setStartMessages(false);
} else {
that.percent += 100 / 16;
that.percentA = (that.percent * 100) / 120 + '%';
if (val.step && val.step - 0 > (this.percent * 16) / 100 && val.step - 0 <= 16) {
console.log(val.step - 0, this.percent);
this.percent = ((val.step - 0) * 100) / 16;
this.percentA = (this.percent * 100) / 120 + '%';
this.info = this.lists[val.step - 0];
}
}
},
startMessages(val) {
if (val) {
this.percent = 0;
this.percentA = 0;
this.info = '呼叫';
this.setStartMessages(false);
}
}, 1000);
},
},
methods: { ...mapMutations('messages', ['setStartMessages']) },
// mounted() {
// const that = this;
// var add = setInterval(function() {
// if (that.percent === 100) {
// that.percent = 0;
// that.percentA = 0;
// } else {
// that.percent += 100 / 16;
// that.percentA = (that.percent * 100) / 120 + '%';
// }
// }, 1000);
// },
};
</script>

8
src/components/RFID/RFID.styl

@ -84,15 +84,15 @@
.list {
width: 4rem;
height: 3.4rem;
line-height: 3.4rem;
font-size: 12px;
}
.list span {
width: 90%;
}
.active {
width: 4rem;
height: 4rem;
line-height: 4rem;
font-size: 12px;
}
.list1 {

15
src/components/RFID/RFID.vue

@ -42,7 +42,7 @@ export default {
},
computed: {
...mapState('home', ['rfidMessage']),
...mapState('messages', ['rfidMessage']),
newArr() {
const arr = this.group(this.lists, 10);
return arr;
@ -50,12 +50,13 @@ export default {
},
watch: {
weighSensor1(value) {
// console.log('value: ', value);
// if (value) {
// this.lists[0].number = value.split('');
// console.log('this.lists: ', this.lists);
// }
weighSensor1: {
handle(value) {
// console.log('value: ', value);
// this.lists[0].number = value.split('');
// console.log('this.lists: ', this.lists);
},
deep: true,
},
},

10
src/components/Sensor/Sensor.js

@ -153,15 +153,7 @@ const mixin = {
};
},
},
watch: {
vibrationSensor(val) {
var vibList = val.split(',');
this.series1 = this.series1.concat(parseInt(vibList[0]));
this.series2 = this.series1.concat(parseInt(vibList[1]));
this.series3 = this.series1.concat(parseInt(vibList[2]));
console.log('vibrationSensor:', val);
},
},
watch: {},
};
export default mixin;

13
src/components/Sensor/Sensor.vue

@ -16,6 +16,19 @@ export default {
height: '',
};
},
watch: {
vibrationSensor(val) {
console.log(val.value);
if (val.type === 7) {
var vibList = val.value.split(',');
this.series1 = this.series1.concat(parseInt(vibList[0]));
this.series2 = this.series2.concat(parseInt(vibList[1]));
this.series3 = this.series3.concat(parseInt(vibList[2]));
this.drawLine();
}
console.log(this.series1, this.series2, this.series3);
},
},
mounted() {
this.drawLine();
let wh = window.innerWidth;

84
src/mixins/socket.js

@ -57,49 +57,57 @@ const mixin = {
*/
handleMessagesData(item) {
const data = JSON.parse(item.data);
console.log('data: ', data.data);
switch (data.type) {
case 'ChannelStatus': // 认证消息
this.handleAuthMessage(data);
break;
case 0: // 开始
// 收到开始消息
this.setStartMessages(true);
break;
case 1: // 体重
// 收到同步消息
// 把消息添加到store 的消息栈中
this.setStartMessages(true);
this.messagesAddWeight(data.data.value);
console.log(data.data.value);
break;
case 2: // RFID
this.messagesAddRfid(data.data);
break;
case 3: // 称重传感器一
this.messagesAddWeighSensor1(data.data.value);
break;
case 4: // 称重传感器二
this.messagesAddWeighSensor2(data.data.value);
break;
case 5: // 称重传感器三
this.messagesAddWeighSensor3(data.data.value);
break;
case 6: // 称重传感器四
this.messagesAddWeighSensor4(data.data.value);
break;
case 7: // 震动传感器
this.messagesAddVibrationSensor(data.data);
break;
case 8: // 溶栓剂量(总量)
this.messagesAddThrombolyticDose(data.data);
break;
case 9: // 团注剂量
this.messagesAddBolusDose(data.data);
break;
case 10: // 维持剂量
this.messagesAddMaintenanceDose(data.data);
case 'CarRecord': // 平车
if (!data.data.type) return;
switch (data.data.type) {
case 0: // 开始
// 收到开始消息
this.setStartMessages(true);
break;
case 1: // 体重
// 收到同步消息
// 把消息添加到store 的消息栈中
this.setStartMessages(true);
this.messagesAddWeight(data.data.value);
break;
case 2: // RFID
this.messagesAddRfid(data.data);
break;
case 3: // 称重传感器一
this.messagesAddWeighSensor1(data.data.value);
break;
case 4: // 称重传感器二
this.messagesAddWeighSensor2(data.data.value);
break;
case 5: // 称重传感器三
this.messagesAddWeighSensor3(data.data.value);
break;
case 6: // 称重传感器四
this.messagesAddWeighSensor4(data.data.value);
break;
case 7: // 震动传感器
this.messagesAddVibrationSensor(data.data);
console.log('RFID.data: ', data.data);
break;
case 8: // 溶栓剂量(总量)
this.messagesAddThrombolyticDose(data.data.value);
break;
case 9: // 团注剂量
this.messagesAddBolusDose(data.data.value);
break;
case 10: // 维持剂量
this.messagesAddMaintenanceDose(data.data.value);
break;
default:
break;
}
break;
default:
break;
}

2
src/views/BtnPage/BtnPage.vue

@ -107,7 +107,7 @@ export default {
param: {
authId: '1',
type: '7',
value: '10,20,10',
value: '10,20,30',
time: new Date().getTime(),
},
};

Loading…
Cancel
Save