2025-02-24 15:10:30 +08:00

79 lines
2.1 KiB
Python

"""
Examples of using event messages
"""
from datetime import datetime
from mqtt_protocol import ChargeRecord, SwapRecord
from mqtt_protocol.event_messages import RateDetail, ChargeStartType, SwapType, SwapMode
def charge_record_example():
# Create rate details
rate_details = [
RateDetail(rateType=1, startTime="2024-02-24 10:00:00",
stopTime="2024-02-24 12:00:00", elect=50.5),
RateDetail(rateType=2, startTime="2024-02-24 12:00:00",
stopTime="2024-02-24 14:00:00", elect=45.8)
]
# Create a charge record
charge_record = ChargeRecord.create(
equipNo="CHG001",
orderSn="CR202402240001",
gunNo="1",
startTime="2024-02-24 10:00:00",
stopTime="2024-02-24 14:00:00",
startSOC=20.5,
endSOC=85.3,
chgQty=96.3,
startMeter=1000.0,
endMeter=1096.3,
plateNo="京A12345",
vin="LSVAA12345G123456",
stopReason=1,
sharpElect=50.5,
peakElect=45.8,
flatElect=0.0,
valleyElect=0.0,
rateModelID="RATE001",
detailsList=rate_details,
swapSn="",
chgSwitch=0,
startType=ChargeStartType.STATION_AUTO
)
print("Charge Record Example:")
print(charge_record.to_json())
def swap_record_example():
# Create a swap record
swap_record = SwapRecord(
equipNo="ROBOT001",
orderSn="SR202402240001",
startTime="2024-02-24 15:00:00",
stopTime="2024-02-24 15:10:00",
vin="LSVAA12345G123456",
rfidCode="123456789012345678901234",
plateNo="京A12345",
newBatID="BAT001",
newCabinetNo=1,
newBatSoc=95.5,
oldBatID="BAT002",
oldCabinetNo=2,
oldBatSoc=15.5,
swapType=SwapType.BATTERY_SWAP,
swapMode=SwapMode.FULL_AUTO,
swapStartType=1,
lane=1,
userID="USER001",
stationMode=1
)
print("\nSwap Record Example:")
print(swap_record.to_json())
if __name__ == "__main__":
charge_record_example()
swap_record_example()