<template>
<el-dialog
:title="!dataForm.id ? '新增' : '修改'"
:close-on-click-modal="false"
:visible.sync="visible">
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
<el-form-item label="" prop="batteryId">
<el-input v-model="dataForm.batteryId" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryVoltage">
<el-input v-model="dataForm.batteryVoltage" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryCurrent">
<el-input v-model="dataForm.batteryCurrent" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batterySoc">
<el-input v-model="dataForm.batterySoc" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryHardVersion">
<el-input v-model="dataForm.batteryHardVersion" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batterySoftVersion">
<el-input v-model="dataForm.batterySoftVersion" placeholder=""></el-input>
</el-form-item>
<el-form-item label="0x01(1):放电模式 0x10(16):充电模式 0x21(33):保护模式 0x30(48):待机无输出模式 0x31(49):待机预放电模式 0xFF(255):故障需返厂" prop="batteryWorkMode">
<el-input v-model="dataForm.batteryWorkMode" placeholder="0x01(1):放电模式 0x10(16):充电模式 0x21(33):保护模式 0x30(48):待机无输出模式 0x31(49):待机预放电模式 0xFF(255):故障需返厂"></el-input>
</el-form-item>
<el-form-item label="保护状态 bit16~bit 31 保留 bit15:Gsensor 故障 bit14:BMS 与 Tracker通讯超时 bit13: 预放电失败 bit12: IC保护 bit11: 智能充电通信超时 bit10:压差过大 bit9:温差过大 bit8:短路 bit7:充电过压 bit6:充电过流 bit5:放电欠压 bit4:放电过流 bit3:充电低温 bit2:充电高温 bit1:放电高温 bit0:放电低温" prop="batteryProtectCode">
<el-input v-model="dataForm.batteryProtectCode" placeholder="保护状态 bit16~bit 31 保留 bit15:Gsensor 故障 bit14:BMS 与 Tracker通讯超时 bit13: 预放电失败 bit12: IC保护 bit11: 智能充电通信超时 bit10:压差过大 bit9:温差过大 bit8:短路 bit7:充电过压 bit6:充电过流 bit5:放电欠压 bit4:放电过流 bit3:充电低温 bit2:充电高温 bit1:放电高温 bit0:放电低温"></el-input>
</el-form-item>
<el-form-item label="转成2进制, 总共为16位,高8位为电池包工作状态,低8位为故障状态码 bit9BMS 与 Tracker通讯故障,bit8BMS 板 G sensor损坏,(8/9无效)bit7:失效,bit6:失衡,bit5:放电 MOS 损坏,bit4:充电 MOS 损坏,bit3IC 损坏,bit2:温度传感器损坏,bit1:采样线断线,虚焊等故障 保留,置 0,bit0:保留" prop="batteryErrorCode">
<el-input v-model="dataForm.batteryErrorCode" placeholder="转成2进制, 总共为16位,高8位为电池包工作状态,低8位为故障状态码 bit9BMS 与 Tracker通讯故障,bit8BMS 板 G sensor损坏,(8/9无效)bit7:失效,bit6:失衡,bit5:放电 MOS 损坏,bit4:充电 MOS 损坏,bit3IC 损坏,bit2:温度传感器损坏,bit1:采样线断线,虚焊等故障 保留,置 0,bit0:保留"></el-input>
</el-form-item>
<el-form-item label="" prop="batteryTemperatureMax">
<el-input v-model="dataForm.batteryTemperatureMax" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryTemperatureMin">
<el-input v-model="dataForm.batteryTemperatureMin" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryVoltageMax">
<el-input v-model="dataForm.batteryVoltageMax" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryVoltageMin">
<el-input v-model="dataForm.batteryVoltageMin" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="mosStatus">
<el-input v-model="dataForm.mosStatus" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="mosTemp">
<el-input v-model="dataForm.mosTemp" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="batteryCycleTimes">
<el-input v-model="dataForm.batteryCycleTimes" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="steadyStatus">
<el-input v-model="dataForm.steadyStatus" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="cellVoltage">
<el-input v-model="dataForm.cellVoltage" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="model">
<el-input v-model="dataForm.model" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="manufacture">
<el-input v-model="dataForm.manufacture" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="imei">
<el-input v-model="dataForm.imei" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="imsi">
<el-input v-model="dataForm.imsi" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="iccid">
<el-input v-model="dataForm.iccid" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="trackerHardwareVersion">
<el-input v-model="dataForm.trackerHardwareVersion" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="trackerSoftwareVersion">
<el-input v-model="dataForm.trackerSoftwareVersion" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="reportreason">
<el-input v-model="dataForm.reportreason" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="detstatus">
<el-input v-model="dataForm.detstatus" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="csq">
<el-input v-model="dataForm.csq" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="networkType">
<el-input v-model="dataForm.networkType" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="locationMode">
<el-input v-model="dataForm.locationMode" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="longitude">
<el-input v-model="dataForm.longitude" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="longitudeDirection">
<el-input v-model="dataForm.longitudeDirection" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="latitude">
<el-input v-model="dataForm.latitude" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="latitudeDirection">
<el-input v-model="dataForm.latitudeDirection" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="gpsSpeed">
<el-input v-model="dataForm.gpsSpeed" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="gpsSignal">
<el-input v-model="dataForm.gpsSignal" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="satelliteNum">
<el-input v-model="dataForm.satelliteNum" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="accuracy">
<el-input v-model="dataForm.accuracy" placeholder=""></el-input>
</el-form-item>
<el-form-item label="业务模式 1:关机模式 2:运营模式 3:运输模式 4:通讯充电模式 5:盲充模式 6:存储模式 7:搜寻模式 8:返厂模式" prop="businessmode">
<el-input v-model="dataForm.businessmode" placeholder="业务模式 1:关机模式 2:运营模式 3:运输模式 4:通讯充电模式 5:盲充模式 6:存储模式 7:搜寻模式 8:返厂模式"></el-input>
</el-form-item>
<el-form-item label="1:设备主动请求或上报 2:平台主动推送或下指令 3:平台指令反馈的结果" prop="flag">
<el-input v-model="dataForm.flag" placeholder="1:设备主动请求或上报 2:平台主动推送或下指令 3:平台指令反馈的结果"></el-input>
</el-form-item>
<el-form-item label="" prop="uploadTime">
<el-input v-model="dataForm.uploadTime" placeholder=""></el-input>
</el-form-item>
<el-form-item label="" prop="createTime">
<el-input v-model="dataForm.createTime" placeholder=""></el-input>
</el-form-item>
<el-form-item label="更新时间" prop="updateTime">
<el-input v-model="dataForm.updateTime" placeholder="更新时间"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">取消</el-button>
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
</span>
</el-dialog>
</template>
<script>
export default {
data () {
return {
visible: false,
dataForm: {
id: 0,
batteryId: '',
batteryVoltage: '',
batteryCurrent: '',
batterySoc: '',
batteryHardVersion: '',
batterySoftVersion: '',
batteryWorkMode: '',
batteryProtectCode: '',
batteryErrorCode: '',
batteryTemperatureMax: '',
batteryTemperatureMin: '',
batteryVoltageMax: '',
batteryVoltageMin: '',
mosStatus: '',
mosTemp: '',
batteryCycleTimes: '',
steadyStatus: '',
cellVoltage: '',
model: '',
manufacture: '',
imei: '',
imsi: '',
iccid: '',
trackerHardwareVersion: '',
trackerSoftwareVersion: '',
reportreason: '',
detstatus: '',
csq: '',
networkType: '',
locationMode: '',
longitude: '',
longitudeDirection: '',
latitude: '',
latitudeDirection: '',
gpsSpeed: '',
gpsSignal: '',
satelliteNum: '',
accuracy: '',
businessmode: '',
flag: '',
uploadTime: '',
createTime: '',
updateTime: ''
},
dataRule: {
batteryId: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryVoltage: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryCurrent: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batterySoc: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryHardVersion: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batterySoftVersion: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryWorkMode: [
{ required: true, message: '0x01(1):放电模式 0x10(16):充电模式 0x21(33):保护模式 0x30(48):待机无输出模式 0x31(49):待机预放电模式 0xFF(255):故障需返厂不能为空', trigger: 'blur' }
],
batteryProtectCode: [
{ required: true, message: '保护状态 bit16~bit 31 保留 bit15:Gsensor 故障 bit14:BMS 与 Tracker通讯超时 bit13: 预放电失败 bit12: IC保护 bit11: 智能充电通信超时 bit10:压差过大 bit9:温差过大 bit8:短路 bit7:充电过压 bit6:充电过流 bit5:放电欠压 bit4:放电过流 bit3:充电低温 bit2:充电高温 bit1:放电高温 bit0:放电低温不能为空', trigger: 'blur' }
],
batteryErrorCode: [
{ required: true, message: '转成2进制, 总共为16位,高8位为电池包工作状态,低8位为故障状态码 bit9BMS 与 Tracker通讯故障,bit8BMS 板 G sensor损坏,(8/9无效)bit7:失效,bit6:失衡,bit5:放电 MOS 损坏,bit4:充电 MOS 损坏,bit3IC 损坏,bit2:温度传感器损坏,bit1:采样线断线,虚焊等故障 保留,置 0,bit0:保留不能为空', trigger: 'blur' }
],
batteryTemperatureMax: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryTemperatureMin: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryVoltageMax: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryVoltageMin: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
mosStatus: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
mosTemp: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
batteryCycleTimes: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
steadyStatus: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
cellVoltage: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
model: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
manufacture: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
imei: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
imsi: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
iccid: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
trackerHardwareVersion: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
trackerSoftwareVersion: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
reportreason: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
detstatus: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
csq: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
networkType: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
locationMode: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
longitude: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
longitudeDirection: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
latitude: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
latitudeDirection: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
gpsSpeed: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
gpsSignal: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
satelliteNum: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
accuracy: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
businessmode: [
{ required: true, message: '业务模式 1:关机模式 2:运营模式 3:运输模式 4:通讯充电模式 5:盲充模式 6:存储模式 7:搜寻模式 8:返厂模式不能为空', trigger: 'blur' }
],
flag: [
{ required: true, message: '1:设备主动请求或上报 2:平台主动推送或下指令 3:平台指令反馈的结果不能为空', trigger: 'blur' }
],
uploadTime: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
createTime: [
{ required: true, message: '不能为空', trigger: 'blur' }
],
updateTime: [
{ required: true, message: '更新时间不能为空', trigger: 'blur' }
]
}
}
},
methods: {
init (id) {
this.dataForm.id = id || 0
this.visible = true
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
if (this.dataForm.id) {
this.$http({
url: this.$http.adornUrl(`/maya/mybatteryinfolastest/info/${this.dataForm.id}`),
method: 'get',
params: this.$http.adornParams()
}).then(({data}) => {
if (data && data.code === 0) {
this.dataForm.batteryId = data.myBatteryInfoLastest.batteryId
this.dataForm.batteryVoltage = data.myBatteryInfoLastest.batteryVoltage
this.dataForm.batteryCurrent = data.myBatteryInfoLastest.batteryCurrent
this.dataForm.batterySoc = data.myBatteryInfoLastest.batterySoc
this.dataForm.batteryHardVersion = data.myBatteryInfoLastest.batteryHardVersion
this.dataForm.batterySoftVersion = data.myBatteryInfoLastest.batterySoftVersion
this.dataForm.batteryWorkMode = data.myBatteryInfoLastest.batteryWorkMode
this.dataForm.batteryProtectCode = data.myBatteryInfoLastest.batteryProtectCode
this.dataForm.batteryErrorCode = data.myBatteryInfoLastest.batteryErrorCode
this.dataForm.batteryTemperatureMax = data.myBatteryInfoLastest.batteryTemperatureMax
this.dataForm.batteryTemperatureMin = data.myBatteryInfoLastest.batteryTemperatureMin
this.dataForm.batteryVoltageMax = data.myBatteryInfoLastest.batteryVoltageMax
this.dataForm.batteryVoltageMin = data.myBatteryInfoLastest.batteryVoltageMin
this.dataForm.mosStatus = data.myBatteryInfoLastest.mosStatus
this.dataForm.mosTemp = data.myBatteryInfoLastest.mosTemp
this.dataForm.batteryCycleTimes = data.myBatteryInfoLastest.batteryCycleTimes
this.dataForm.steadyStatus = data.myBatteryInfoLastest.steadyStatus
this.dataForm.cellVoltage = data.myBatteryInfoLastest.cellVoltage
this.dataForm.model = data.myBatteryInfoLastest.model
this.dataForm.manufacture = data.myBatteryInfoLastest.manufacture
this.dataForm.imei = data.myBatteryInfoLastest.imei
this.dataForm.imsi = data.myBatteryInfoLastest.imsi
this.dataForm.iccid = data.myBatteryInfoLastest.iccid
this.dataForm.trackerHardwareVersion = data.myBatteryInfoLastest.trackerHardwareVersion
this.dataForm.trackerSoftwareVersion = data.myBatteryInfoLastest.trackerSoftwareVersion
this.dataForm.reportreason = data.myBatteryInfoLastest.reportreason
this.dataForm.detstatus = data.myBatteryInfoLastest.detstatus
this.dataForm.csq = data.myBatteryInfoLastest.csq
this.dataForm.networkType = data.myBatteryInfoLastest.networkType
this.dataForm.locationMode = data.myBatteryInfoLastest.locationMode
this.dataForm.longitude = data.myBatteryInfoLastest.longitude
this.dataForm.longitudeDirection = data.myBatteryInfoLastest.longitudeDirection
this.dataForm.latitude = data.myBatteryInfoLastest.latitude
this.dataForm.latitudeDirection = data.myBatteryInfoLastest.latitudeDirection
this.dataForm.gpsSpeed = data.myBatteryInfoLastest.gpsSpeed
this.dataForm.gpsSignal = data.myBatteryInfoLastest.gpsSignal
this.dataForm.satelliteNum = data.myBatteryInfoLastest.satelliteNum
this.dataForm.accuracy = data.myBatteryInfoLastest.accuracy
this.dataForm.businessmode = data.myBatteryInfoLastest.businessmode
this.dataForm.flag = data.myBatteryInfoLastest.flag
this.dataForm.uploadTime = data.myBatteryInfoLastest.uploadTime
this.dataForm.createTime = data.myBatteryInfoLastest.createTime
this.dataForm.updateTime = data.myBatteryInfoLastest.updateTime
}
})
}
})
},
// 表单提交
dataFormSubmit () {
this.$refs['dataForm'].validate((valid) => {
if (valid) {
this.$http({
url: this.$http.adornUrl(`/maya/mybatteryinfolastest/${!this.dataForm.id ? 'save' : 'update'}`),
method: 'post',
data: this.$http.adornData({
'id': this.dataForm.id || undefined,
'batteryId': this.dataForm.batteryId,
'batteryVoltage': this.dataForm.batteryVoltage,
'batteryCurrent': this.dataForm.batteryCurrent,
'batterySoc': this.dataForm.batterySoc,
'batteryHardVersion': this.dataForm.batteryHardVersion,
'batterySoftVersion': this.dataForm.batterySoftVersion,
'batteryWorkMode': this.dataForm.batteryWorkMode,
'batteryProtectCode': this.dataForm.batteryProtectCode,
'batteryErrorCode': this.dataForm.batteryErrorCode,
'batteryTemperatureMax': this.dataForm.batteryTemperatureMax,
'batteryTemperatureMin': this.dataForm.batteryTemperatureMin,
'batteryVoltageMax': this.dataForm.batteryVoltageMax,
'batteryVoltageMin': this.dataForm.batteryVoltageMin,
'mosStatus': this.dataForm.mosStatus,
'mosTemp': this.dataForm.mosTemp,
'batteryCycleTimes': this.dataForm.batteryCycleTimes,
'steadyStatus': this.dataForm.steadyStatus,
'cellVoltage': this.dataForm.cellVoltage,
'model': this.dataForm.model,
'manufacture': this.dataForm.manufacture,
'imei': this.dataForm.imei,
'imsi': this.dataForm.imsi,
'iccid': this.dataForm.iccid,
'trackerHardwareVersion': this.dataForm.trackerHardwareVersion,
'trackerSoftwareVersion': this.dataForm.trackerSoftwareVersion,
'reportreason': this.dataForm.reportreason,
'detstatus': this.dataForm.detstatus,
'csq': this.dataForm.csq,
'networkType': this.dataForm.networkType,
'locationMode': this.dataForm.locationMode,
'longitude': this.dataForm.longitude,
'longitudeDirection': this.dataForm.longitudeDirection,
'latitude': this.dataForm.latitude,
'latitudeDirection': this.dataForm.latitudeDirection,
'gpsSpeed': this.dataForm.gpsSpeed,
'gpsSignal': this.dataForm.gpsSignal,
'satelliteNum': this.dataForm.satelliteNum,
'accuracy': this.dataForm.accuracy,
'businessmode': this.dataForm.businessmode,
'flag': this.dataForm.flag,
'uploadTime': this.dataForm.uploadTime,
'createTime': this.dataForm.createTime,
'updateTime': this.dataForm.updateTime
})
}).then(({data}) => {
if (data && data.code === 0) {
this.$message({
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
this.visible = false
this.$emit('refreshDataList')
}
})
} else {
this.$message.error(data.msg)
}
})
}
})
}
}
}
</script>
优化此页面ui,并添加字段batteryKind电池类型: 0-运营、1-售后、2-内测、3-报废
最新发布