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":{ "param":{
"authId": "1", "authId": "1",
"type": "2", "type": "10",
"value":"70000", "value":"3000",
"time":"1607937529000" "time":"1607937529000"
} }
} }

37
src/components/LoadCells/LoadCells.vue

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

7
src/components/Map/Map.js

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

76
src/components/Panel/Panel.vue

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

8
src/components/RFID/RFID.styl

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

15
src/components/RFID/RFID.vue

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

10
src/components/Sensor/Sensor.js

@ -153,15 +153,7 @@ const mixin = {
}; };
}, },
}, },
watch: { 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);
},
},
}; };
export default mixin; export default mixin;

13
src/components/Sensor/Sensor.vue

@ -16,6 +16,19 @@ export default {
height: '', 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() { mounted() {
this.drawLine(); this.drawLine();
let wh = window.innerWidth; let wh = window.innerWidth;

84
src/mixins/socket.js

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

2
src/views/BtnPage/BtnPage.vue

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

Loading…
Cancel
Save