syntax = "proto2"; package message; import "message_base.proto"; // 请求 // 1.分配车位 // 2.查询车辆位置 // 3.解锁车位 // 4.手动操作修改车位状态 // 5.临时锁定车位 //车辆状态枚举 enum Vehicle_status { eVehicle_idle = 0; //车辆空闲 eVehicle_in_garage = 1; //车辆已入库 eVehicle_parking = 2; //车辆停车中 eVehicle_fetching = 3; //车辆取车中 eVehicle_reserved = 4; //已预约未停入 eVehicle_unknown = 5; //未知状态 } //1.分配车位请求 message Parkspace_allocation_request_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Car_info car_info=3; required int32 terminal_id=4; //终端id,优化车位分配用 } //分配车位反馈 message Parkspace_allocation_response_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Error_manager error_manager=3; //分配成功与否标志 required Parkspace_info allocated_space_info=4; //分配车位信息 } //2.查询车辆位置请求 message Parkspace_search_request_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Car_info car_info=3; //车辆凭证或号牌 } //查询车辆位置反馈 message Parkspace_search_response_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Error_manager error_manager=3; //分配成功与否标志 optional Parkspace_info car_position=4; //待查询车辆存放位置 } //3.解锁车位请求 message Parkspace_release_request_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Parkspace_info release_space_info=3; //待释放车位信息 } //解锁车位反馈 message Parkspace_release_response_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Error_manager error_manager=3; //分配成功与否标志 required Parkspace_info release_space_info=4; //待释放车位信息 } // 4.手动操作修改车位状态 message Parkspace_force_update_request_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Parkspace_info update_space_info=3; //待手动修改车位信息,通过id定位 } //手动操作反馈 message Parkspace_force_update_response_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Error_manager error_manager=3; //分配成功与否标志 required Parkspace_info update_space_info=4; //已修改后的车位信息 } // 5.临时锁定车位 message Parkspace_confirm_alloc_request_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Parkspace_info confirm_space_info=3; //已修改后的车位信息 } message Parkspace_confirm_alloc_response_msg { required Base_info base_info=1; //消息类型 required string command_key=2; //指令唯一标识符id required Error_manager error_manager=3; //分配成功与否标志 required Parkspace_info confirm_alloc_space_info=4; //已修改后的车位信息 } // 车位心跳状态信息 message Parkspace_allocation_status_msg { required Base_info base_info=1; //消息类型 required Error_manager error_manager=2; repeated Parkspace_info parkspace_info=3; //车位状态 }