|
|
@@ -27,14 +27,14 @@
|
|
|
|
|
|
<view class="p0" st="">{{ deviceInfo.qrcode}}</view>
|
|
|
<view class="p1">
|
|
|
- <view v-if="portDetail.portStatus == 2">
|
|
|
+ <view v-if="portStatus == 2">
|
|
|
{{$t('charge.charging')}}
|
|
|
</view>
|
|
|
- <view v-else-if="portDetail.portStatus == 6">
|
|
|
+ <view v-else-if="portStatus == 6">
|
|
|
{{$t('charge.planed')}}
|
|
|
</view>
|
|
|
|
|
|
- <view v-else-if="portDetail.portStatus == 5">
|
|
|
+ <view v-else-if="portStatus == 5">
|
|
|
{{$t('charge.connected')}}
|
|
|
</view>
|
|
|
|
|
|
@@ -49,39 +49,45 @@
|
|
|
|
|
|
</view>
|
|
|
</view>
|
|
|
+ <view style="display: flex;flex-direction: row;margin:0 33%;" v-if="curPort.length>1">
|
|
|
+ <view class="port_item" :class="item.id==choosePort?'selected_item':''" v-for="item in curPort" @click="selectPort(item.id);">{{ i18(item.text )}}</view>
|
|
|
+ </view>
|
|
|
<view class="dstatus">
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/tmp.png"/>
|
|
|
- <view class="item-value">{{portDetail.dev_temper}}℃</view>
|
|
|
+ <view class="item-value">{{deviceTemp}}℃</view>
|
|
|
<span class="item-text">{{$t('charge.devtemper')}}</span>
|
|
|
</view>
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/dianya.png"/>
|
|
|
- <view class="item-value">{{ portDetail.voltage }}V</view>
|
|
|
+ <view class="item-value">{{ deviceV }}V</view>
|
|
|
<span class="item-text">{{$t('charge.voltage')}}</span>
|
|
|
</view>
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/dianliu.png"/>
|
|
|
- <view class="item-value" v-if="portDetail.voltage == 0">0A</view>
|
|
|
- <view class="item-value" v-else>{{portDetail.POWER/portDetail.voltage}}A</view>
|
|
|
+ <view class="item-value" v-if="deviceV == 0">0A</view>
|
|
|
+ <view class="item-value" v-else>{{currentValue}}A</view>
|
|
|
<span class="item-text">{{$t('charge.current')}}</span>
|
|
|
</view>
|
|
|
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/shjian.png"/>
|
|
|
- <view class="item-value">{{ portDetail.time }}{{ i18('分钟') }}</view>
|
|
|
- <span class="item-text">{{$t('charge.chargetime')}}</span>
|
|
|
+ <view class="item-value">{{ chargeTime }}{{ i18('分钟') }}</view>
|
|
|
+ <span class="item-text" v-if="portDetail.portStatus == 6">{{i18('剩余时间')}}</span>
|
|
|
+ <span class="item-text" v-else>{{$t('charge.chargetime')}}</span>
|
|
|
+
|
|
|
</view>
|
|
|
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/gonglv.png"/>
|
|
|
- <view class="item-value">{{ portDetail.power }}W</view>
|
|
|
+ <view class="item-value">{{ gonglv }}W</view>
|
|
|
<span class="item-text">{{$t('charge.power')}}</span>
|
|
|
</view>
|
|
|
|
|
|
<view class="ditem">
|
|
|
<image class="itemimg" src="/static/images/new/dianliang.png"/>
|
|
|
- <view class="item-value">{{ portDetail.elec }} {{ i18('度') }}</view>
|
|
|
+ <view class="item-value" v-if="portDetail.voltage == 0">0 {{ i18('度') }}</view>
|
|
|
+ <view class="item-value" v-else>{{ dianliang }} {{ i18('度') }}</view>
|
|
|
<span class="item-text">{{$t('charge.elec')}}</span>
|
|
|
</view>
|
|
|
|
|
|
@@ -116,6 +122,15 @@ import i18 from '@/utils/i18.js'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
+ refreshTimer:null,
|
|
|
+ curPort:[],
|
|
|
+ chargeTime:0,
|
|
|
+ deviceTemp:0,
|
|
|
+ deviceV:0,
|
|
|
+ currentValue:0,
|
|
|
+ gonglv:0,
|
|
|
+ dianliang:0,
|
|
|
+ portStatus:0,
|
|
|
deviceInfo:{},
|
|
|
visitTime:"",
|
|
|
timer:null,
|
|
|
@@ -139,6 +154,7 @@ export default {
|
|
|
this.deviceInfo.deviceId = opt.id;
|
|
|
this.deviceInfo.ccid = opt.ccid;
|
|
|
this.deviceInfo.qrcode = opt.qrcode;
|
|
|
+ this.startTimer();
|
|
|
},
|
|
|
onShow(){
|
|
|
this.getInfo();
|
|
|
@@ -146,6 +162,9 @@ export default {
|
|
|
},
|
|
|
onUnload (){
|
|
|
this.closeSocket();
|
|
|
+ if(this.refreshTimer != null){
|
|
|
+ clearTimeout(this.refreshTimer)
|
|
|
+ }
|
|
|
},
|
|
|
methods: {
|
|
|
toPage(){
|
|
|
@@ -204,12 +223,107 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
+ startTimer(){
|
|
|
+ let self = this;
|
|
|
+ if(this.refreshTimer != null){
|
|
|
+ clearTimeout(this.refreshTimer);
|
|
|
+ }
|
|
|
+ self.refreshTimer = setTimeout(function(){
|
|
|
+ self.getInfo();
|
|
|
+ self.startTimer();
|
|
|
+ },30000);
|
|
|
+ },
|
|
|
confirmPort(e){
|
|
|
let value = e.value[0]
|
|
|
this.choosePort = value.port;
|
|
|
this.showPort = false;
|
|
|
this.getInfo()
|
|
|
},
|
|
|
+ parsePortCmd(real_data) {
|
|
|
+ let self = this;
|
|
|
+ self.portDetail = real_data;
|
|
|
+ self.portList = [[]];
|
|
|
+ self.curPort = [];
|
|
|
+ let port_first_status = self.portDetail["port_first_status"];
|
|
|
+ let port_second_status = self.portDetail["port_second_status"]
|
|
|
+ if(port_first_status){
|
|
|
+ self.portList[0].push({port:1,text:"端口一"});
|
|
|
+ self.curPort.push({
|
|
|
+ text:"端口一",
|
|
|
+ status:port_first_status,
|
|
|
+ id:1,
|
|
|
+ })
|
|
|
+ let power = self.portDetail.power;
|
|
|
+ let voltage = parseInt(self.portDetail.voltage);
|
|
|
+ if(voltage >0){
|
|
|
+ let current = power/voltage;
|
|
|
+ current = current.toFixed(1);
|
|
|
+ self.portDetail.currentValue = current;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(port_second_status){
|
|
|
+ self.portList[0].push({port:2,text:"端口二"});
|
|
|
+ self.curPort.push({
|
|
|
+ text:"端口二",
|
|
|
+ status:port_second_status,
|
|
|
+ id:2
|
|
|
+ })
|
|
|
+ let power = self.portDetail.power_1;
|
|
|
+ let voltage = parseInt(self.portDetail.voltage);
|
|
|
+ if(voltage >0){
|
|
|
+ let current = power/voltage;
|
|
|
+ current = current.toFixed(1);
|
|
|
+ self.portDetail.currentValue_1 = current;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let choosePort = self.choosePort
|
|
|
+ /**
|
|
|
+ * chargeTime:0,
|
|
|
+ * deviceTemp:0,
|
|
|
+ * deviceV:0,
|
|
|
+ * currentValue:0,
|
|
|
+ * gonglv:0,
|
|
|
+ * dianliang:0,
|
|
|
+ * portStatus:0,
|
|
|
+ */
|
|
|
+ if(choosePort == 1){
|
|
|
+ self.portDetail.portStatus = port_first_status;
|
|
|
+ self.chargeTime = self.portDetail.time;
|
|
|
+ self.gonglv = self.portDetail.power;
|
|
|
+ self.dianliang = self.portDetail.elec/100;
|
|
|
+ self.currentValue = self.portDetail.currentValue;
|
|
|
+ if(port_first_status != 2){
|
|
|
+ self.chargeTime = 0;
|
|
|
+ if(port_first_status == 6){
|
|
|
+ self.chargeTime = self.portDetail.time;
|
|
|
+ }
|
|
|
+ self.gonglv = 0;
|
|
|
+ self.dianliang = 0;
|
|
|
+ self.currentValue = 0;
|
|
|
+ }
|
|
|
+ }else if(choosePort == 2){
|
|
|
+ self.portDetail.portStatus = port_second_status;
|
|
|
+ self.chargeTime = self.portDetail.time_1;
|
|
|
+ self.gonglv = self.portDetail.power_1;
|
|
|
+ self.dianliang = self.portDetail.elec_1/100;
|
|
|
+ self.currentValue = self.portDetail.currentValue_1;
|
|
|
+ if(port_second_status != 2){
|
|
|
+ self.chargeTime = 0;
|
|
|
+ if(port_first_status == 6){
|
|
|
+ self.chargeTime = self.portDetail.time_1;
|
|
|
+ }
|
|
|
+ self.gonglv = 0;
|
|
|
+ self.dianliang = 0;
|
|
|
+ self.currentValue = 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ self.portStatus = self.portDetail.portStatus;
|
|
|
+ self.deviceTemp = self.portDetail.dev_temper;
|
|
|
+ self.deviceV = self.portDetail.voltage;
|
|
|
+ self.$modal.closeLoading();
|
|
|
+ },
|
|
|
initSocket(key){
|
|
|
let self = this;
|
|
|
let socketUrl = getApp().globalData.config.socketUrl
|
|
|
@@ -229,25 +343,9 @@ export default {
|
|
|
let data = JSON.parse(res.data);
|
|
|
let type = data.type;
|
|
|
let real_data = data.real_data;
|
|
|
- if(type == 103){
|
|
|
- self.portDetail = real_data
|
|
|
- self.portList = [[]];
|
|
|
- let port_first_status = self.portDetail["port_first_status"];
|
|
|
- let port_second_status = self.portDetail["port_second_status"]
|
|
|
- if(port_first_status){
|
|
|
- self.portList[0].push({port:1,text:"端口一"});
|
|
|
- }
|
|
|
- if(port_second_status){
|
|
|
- self.portList[0].push({port:2,text:"端口二"});
|
|
|
- }
|
|
|
- let choosePort = self.choosePort
|
|
|
- if(choosePort == 1){
|
|
|
- self.portDetail.portStatus = port_first_status;
|
|
|
- }else if(choosePort == 2){
|
|
|
- self.portDetail.portStatus = port_second_status;
|
|
|
- }
|
|
|
|
|
|
- self.$modal.closeLoading();
|
|
|
+ if(type == 103){
|
|
|
+ self.parsePortCmd(real_data);
|
|
|
}
|
|
|
if(type == 116){
|
|
|
self.$modal.closeLoading();
|
|
|
@@ -299,6 +397,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
getInfo() {
|
|
|
+ let self= this;
|
|
|
this.$modal.loading("正在获取状态,请稍等...");
|
|
|
sendPortDetailCmd(this.deviceInfo).then(res => {
|
|
|
this.$modal.loading("正在获取状态,请稍等...");
|
|
|
@@ -310,7 +409,15 @@ export default {
|
|
|
if(!this.scriptTask){
|
|
|
this.initSocket(this.deviceInfo.deviceId);
|
|
|
}
|
|
|
- // this.getPortInfo()
|
|
|
+ setTimeout(function (){
|
|
|
+ getPortDetail(self.deviceInfo,self.visitTime).then(res=>{
|
|
|
+ let data = res.data;
|
|
|
+ if(data != null){
|
|
|
+ self.parsePortCmd(data);
|
|
|
+ }else{
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },500)
|
|
|
})
|
|
|
},
|
|
|
stopCharge(){
|