79 lines
2.1 KiB
Python
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() |