From 8be38e2a91a47d60347cb51c0c714d8ff6ed86e6 Mon Sep 17 00:00:00 2001 From: yinzijian Date: Fri, 21 Nov 2025 12:04:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=B7=A1=E6=A3=80=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E9=85=8D=E6=97=B6=E6=96=B9=E6=A1=88=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: yinzijian --- app/tmnet_db_func.py | 2 +- proto/phase_grpc.py | 28 +++++++++++++++++++--- proto/phase_server.proto | 27 +++++++++++++++++++++ proto/phase_server_pb2.py | 14 ++++++++--- proto/phase_server_pb2_grpc.py | 44 ++++++++++++++++++++++++++++++++++ 5 files changed, 108 insertions(+), 7 deletions(-) diff --git a/app/tmnet_db_func.py b/app/tmnet_db_func.py index 07d7c3a..dc80e92 100644 --- a/app/tmnet_db_func.py +++ b/app/tmnet_db_func.py @@ -269,7 +269,7 @@ class TmnetDbHelper(TableDbHelperBase): nodeid, area_id, nodeid, area_id, nodeid, nodeid, int(nodeid), int(area_id), nodeid, area_id, nodeid, area_id, nodeid, int(nodeid), int(area_id), nodeid, area_id, nodeid, nodeid, int(nodeid), int(area_id), - nodeid, nodeid, nodeid, int(nodeid), int(area_id))) + nodeid, area_id, nodeid, int(nodeid), int(area_id))) result = cursor.fetchall() self.close(conn, cursor) return result, None diff --git a/proto/phase_grpc.py b/proto/phase_grpc.py index b4c28ef..c8f5829 100644 --- a/proto/phase_grpc.py +++ b/proto/phase_grpc.py @@ -7,6 +7,7 @@ import grpc from app.global_source import g_config from google.protobuf.json_format import MessageToDict + sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../proto'))) from proto import phase_server_pb2_grpc, phase_server_pb2 @@ -146,11 +147,11 @@ def QueryCrossPhaseDiagnosis(citycode: int, crossid: str, date_list: List, tp: s stub, channel = channel_stub() try: request_params = phase_server_pb2.CrossPhaseDiagnosisRequest(citycode=citycode, crossid=crossid, - date_list=date_list, tp=tp, area_id=area_id) + date_list=date_list, tp=tp, area_id=area_id) response = stub.CrossPhaseDiagnosis(request_params, timeout=30) if response.code != 0: raise Exception(response.msg) - + data = MessageToDict(response.data, preserving_proto_field_name=True) if len(data) > 0: data['total_num'] = len(data['values']) @@ -159,7 +160,8 @@ def QueryCrossPhaseDiagnosis(citycode: int, crossid: str, date_list: List, tp: s return None, e finally: channel.close() - + + def QueryCrossPhaseByCity(citycode: int): """ 根据城市ID查询有配时方案路口ID @@ -175,3 +177,23 @@ def QueryCrossPhaseByCity(citycode: int): return [], e finally: channel.close() + + +def QueryCrossPhaseTpStatistics(citycode: int, area_id: int, schedule_week: str, date_list: List[str]): + """ + 统计城市配时时段 + """ + stub, channel = channel_stub() + try: + request_params = phase_server_pb2.CrossPhaseStatisticsRequest(citycode=citycode, + area_id=area_id, + schedule_week=schedule_week, + date_list=date_list,) + response = stub.CrossPhaseStatistics(request_params, timeout=30) + if response.code != 0: + raise Exception(response.msg) + return response, None + except Exception as e: + return None, e + finally: + channel.close() diff --git a/proto/phase_server.proto b/proto/phase_server.proto index ccfca9e..e0aad05 100644 --- a/proto/phase_server.proto +++ b/proto/phase_server.proto @@ -26,6 +26,8 @@ service PhaseService { rpc CrossPhaseDiagnosis (CrossPhaseDiagnosisRequest) returns (CrossPhaseDiagnosisResponse); //根据城市ID查询路口配时方案相关信息 rpc CrossPhaseByCity (CrossPhaseByCityRequest) returns (CrossPhaseByCityResponse); + //路口巡检城市配时方案统计 + rpc CrossPhaseStatistics (CrossPhaseStatisticsRequest) returns (CrossPhaseStatisticsResponse); } message EmptyRequest {} @@ -335,4 +337,29 @@ message CrossPhaseByCityResponse { int32 code = 1; string msg = 2; repeated string data = 3; +} + +message CrossPhaseStatisticsRequest { + int32 citycode = 1; + int32 area_id = 2; + string schedule_week = 3; + repeated string date_list = 4; + +} + +message CrossPhaseStatisticsResponse { + int32 code = 1; + string msg = 2; + List data = 3; + message List { + int32 cross_phase_num = 1; //有配时方案路口数 + int32 cross_update_num = 2; //配时方案更新路口数量 + float avg_tp_num = 3; //平均划分时段 + repeated item_tps_list tp_num_detail = 4; //时段数量详情 + } + + message item_tps_list { + string range = 1; //时段数量范围 + int32 value = 2; //日计划数量 + } } \ No newline at end of file diff --git a/proto/phase_server_pb2.py b/proto/phase_server_pb2.py index 5dcab24..3b11383 100644 --- a/proto/phase_server_pb2.py +++ b/proto/phase_server_pb2.py @@ -24,7 +24,7 @@ _sym_db = _symbol_database.Default() -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12phase_server.proto\x12\x0cphase_server\"\x0e\n\x0c\x45mptyRequest\"\x9f\x01\n\x1b\x45xceptionPhaseCrossResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12<\n\x04\x64\x61ta\x18\x04 \x03(\x0b\x32..phase_server.ExceptionPhaseCrossResponse.List\x1a\'\n\x04List\x12\x0e\n\x06nodeid\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\"2\n\x1e\x45xceptionPhaseCrossInfoRequest\x12\x10\n\x08\x63itycode\x18\x01 \x03(\x05\"\xb3\x02\n\x1f\x45xceptionPhaseCrossInfoResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x05\x12\x13\n\x0b\x63ross_total\x18\x04 \x01(\x05\x12@\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x32.phase_server.ExceptionPhaseCrossInfoResponse.List\x1a\x8e\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\nscheduleid\x18\x03 \x01(\x05\x12\x0e\n\x06planid\x18\x04 \x01(\x05\x12\x11\n\tplan_name\x18\x05 \x01(\t\x12\x10\n\x08tp_start\x18\x06 \x01(\t\x12\x0c\n\x04\x64\x61ys\x18\x07 \x01(\t\x12\x0c\n\x04type\x18\x08 \x01(\t\"D\n\x1f\x45xceptionPhaseByCrossIDsRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x03(\t\"\xb3\x02\n ExceptionPhaseByCrossIDsResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x41\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x33.phase_server.ExceptionPhaseByCrossIDsResponse.List\x1a\xb0\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\ncross_name\x18\x03 \x01(\t\x12\x12\n\nscheduleid\x18\x04 \x01(\x05\x12\x0e\n\x06planid\x18\x05 \x01(\x05\x12\x11\n\tplan_name\x18\x06 \x01(\t\x12\x10\n\x08tp_start\x18\x07 \x01(\t\x12\x0c\n\x04\x64\x61te\x18\x08 \x01(\t\x12\x0c\n\x04week\x18\t \x01(\t\x12\x0c\n\x04type\x18\n \x01(\t\"\x9f\x01\n$GetCrossPhaseDetailByCrossIDsRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x10\n\x08\x63rossids\x18\x02 \x03(\t\x12\x12\n\ngw_src_dir\x18\x03 \x01(\t\x12\x10\n\x08tp_start\x18\x04 \x01(\t\x12\x0e\n\x06tp_end\x18\x05 \x01(\t\x12\x0c\n\x04week\x18\x06 \x01(\t\x12\x0f\n\x07wave_id\x18\x07 \x01(\t\"\x9a\x03\n%GetCrossPhaseDetailByCrossIDsResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\r\n\x05\x63ycle\x18\x03 \x01(\x05\x12\x46\n\x04\x64\x61ta\x18\x04 \x03(\x0b\x32\x38.phase_server.GetCrossPhaseDetailByCrossIDsResponse.List\x1a\xfe\x01\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x15\n\rgreen_forward\x18\x02 \x01(\x05\x12\x14\n\x0cgreen_revers\x18\x03 \x01(\x05\x12\x0e\n\x06offset\x18\x04 \x01(\x05\x12\x10\n\x08offset_r\x18\x05 \x01(\x05\x12\r\n\x05\x63ycle\x18\x06 \x01(\x05\x12\x0b\n\x03\x64\x61y\x18\x07 \x01(\x05\x12\r\n\x05month\x18\x08 \x01(\x05\x12\x0f\n\x07weekday\x18\t \x01(\x05\x12\x12\n\nscheduleid\x18\n \x01(\x05\x12\x0e\n\x06planid\x18\x0b \x01(\x05\x12\x11\n\tplan_name\x18\x0c \x01(\t\x12\x15\n\rcoord_phaseid\x18\r \x01(\x05\x12\x0c\n\x04type\x18\x0e \x01(\t\"\x99\x01\n\x17GetPhaseCrossIDResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x38\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32*.phase_server.GetPhaseCrossIDResponse.List\x1a)\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\"\x91\x01\n\x16PhaseGreenRatioRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x10\n\x08\x63rossids\x18\x02 \x03(\t\x12\x12\n\ngw_src_dir\x18\x03 \x01(\t\x12\x10\n\x08tp_start\x18\x04 \x01(\t\x12\x0e\n\x06tp_end\x18\x05 \x01(\t\x12\x0c\n\x04week\x18\x06 \x01(\t\x12\x0f\n\x07wave_id\x18\x07 \x01(\t\"\xce\x04\n\x17PhaseGreenRatioResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x38\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32*.phase_server.PhaseGreenRatioResponse.List\x1a\xdd\x03\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0b\n\x03s2l\x18\x02 \x01(\x02\x12\x12\n\ns2l_remark\x18\x03 \x01(\t\x12\x13\n\x0bs2l_s_green\x18\x04 \x01(\x05\x12\x13\n\x0bs2l_l_green\x18\x05 \x01(\x05\x12\r\n\x05s2unl\x18\x06 \x01(\x02\x12\x14\n\x0cs2unl_remark\x18\x07 \x01(\t\x12\x15\n\rs2unl_s_green\x18\x08 \x01(\x05\x12\x17\n\x0fs2unl_unl_green\x18\t \x01(\x05\x12\r\n\x05s2uns\x18\n \x01(\x02\x12\x14\n\x0cs2uns_remark\x18\x0b \x01(\t\x12\x15\n\rs2uns_s_green\x18\x0c \x01(\x05\x12\x17\n\x0fs2uns_uns_green\x18\r \x01(\x05\x12\x0f\n\x07\x66wd2rev\x18\x0e \x01(\x02\x12\x16\n\x0e\x66wd2rev_remark\x18\x0f \x01(\t\x12\x19\n\x11\x66wd2rev_fwd_green\x18\x10 \x01(\x05\x12\x19\n\x11\x66wd2rev_rev_green\x18\x11 \x01(\x05\x12\x0e\n\x06planid\x18\x12 \x01(\x05\x12\x0b\n\x03\x64\x61y\x18\x13 \x01(\x05\x12\r\n\x05month\x18\x14 \x01(\x05\x12\x0f\n\x07weekday\x18\x15 \x01(\x05\x12\x12\n\nscheduleid\x18\x16 \x01(\x05\x12\x11\n\tplan_name\x18\x17 \x01(\t\x12\x0c\n\x04type\x18\x18 \x01(\t\"\"\n\x10\x43rossListRequest\x12\x0e\n\x06nodeid\x18\x01 \x01(\x05\"\xba\x01\n\x11\x43rossListResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x32\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32$.phase_server.CrossListResponse.List\x1aV\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x10\n\x08location\x18\x04 \x01(\t\x12\x0f\n\x07src_dir\x18\x05 \x03(\t\"c\n$QueryCrossPhaseRelativeOffsetRequest\x12\x10\n\x08\x63rossids\x18\x01 \x03(\t\x12\x10\n\x08\x63itycode\x18\x02 \x01(\x05\x12\n\n\x02tp\x18\x03 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x04 \x01(\t\"\x94\x05\n%QueryCrossPhaseRelativeOffsetResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x46\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32\x38.phase_server.QueryCrossPhaseRelativeOffsetResponse.List\x1a\xd0\x02\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x02 \x01(\x05\x12\r\n\x05month\x18\x03 \x01(\x05\x12\x0f\n\x07weekday\x18\x04 \x01(\x05\x12\x12\n\nscheduleid\x18\x05 \x01(\x05\x12\x10\n\x08tp_start\x18\x06 \x01(\t\x12\x14\n\x0c\x63ontrol_mode\x18\x07 \x01(\t\x12\x0e\n\x06planid\x18\x08 \x01(\x05\x12\x11\n\tplan_name\x18\t \x01(\t\x12\r\n\x05\x63ycle\x18\n \x01(\x05\x12\x0e\n\x06offset\x18\x0b \x01(\x05\x12\x17\n\x0frelative_offset\x18\x0c \x01(\x05\x12\x0c\n\x04type\x18\r \x01(\t\x12\x15\n\rcoord_phaseid\x18\x0e \x01(\x05\x12N\n\x06stages\x18\x0f \x03(\x0b\x32>.phase_server.QueryCrossPhaseRelativeOffsetResponse.stage_data\x1a\xb4\x01\n\nstage_data\x12\x0f\n\x07stageid\x18\x01 \x01(\x05\x12\x12\n\nstage_name\x18\x02 \x01(\t\x12\x16\n\x0estage_duration\x18\x03 \x01(\x05\x12\r\n\x05green\x18\x04 \x01(\x05\x12\x0e\n\x06yellow\x18\x05 \x01(\x05\x12\x0e\n\x06\x61llred\x18\x06 \x01(\x05\x12\x11\n\tredyellow\x18\x07 \x01(\x05\x12\x10\n\x08phaseids\x18\x08 \x01(\t\x12\x15\n\rphaseid_names\x18\t \x01(\t\"E\n!GreenWaveCrossPhaseTpCheckRequest\x12\x0e\n\x06waveid\x18\x01 \x01(\t\x12\x10\n\x08\x63itycode\x18\x02 \x01(\x05\"?\n\"GreenWaveCrossPhaseTpCheckResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\"]\n\x18\x43rossRunningPhaseRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x11\n\tdate_list\x18\x02 \x03(\t\x12\n\n\x02tp\x18\x03 \x01(\t\x12\x10\n\x08\x63rossids\x18\x04 \x03(\t\"\xd7\x05\n\x19\x43rossRunningPhaseResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12:\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32,.phase_server.CrossRunningPhaseResponse.List\x1a\xbe\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\njj_crossid\x18\x03 \x01(\t\x12\x12\n\nscheduleid\x18\x04 \x01(\x05\x12\x15\n\rschedule_week\x18\x05 \x01(\t\x12\x15\n\rschedule_name\x18\x06 \x01(\t\x12=\n\x03tps\x18\x07 \x03(\x0b\x32\x30.phase_server.CrossRunningPhaseResponse.tps_list\x1a\xdf\x01\n\x08tps_list\x12\x10\n\x08tp_start\x18\x01 \x01(\t\x12\x0e\n\x06tp_end\x18\x02 \x01(\t\x12\x0e\n\x06planid\x18\x03 \x01(\x05\x12\x11\n\tplan_name\x18\x04 \x01(\t\x12\x14\n\x0c\x63ontrol_mode\x18\x05 \x01(\t\x12\r\n\x05\x63ycle\x18\x06 \x01(\x05\x12\x15\n\rcoord_phaseid\x18\x07 \x01(\x05\x12\x0e\n\x06offset\x18\x08 \x01(\x05\x12\x42\n\nstage_list\x18\t \x03(\x0b\x32..phase_server.CrossRunningPhaseResponse.stages\x1a\xbf\x01\n\x06stages\x12\x0f\n\x07stageid\x18\x01 \x01(\x05\x12\x16\n\x0estage_duration\x18\x02 \x01(\x05\x12\x12\n\nstage_name\x18\x03 \x01(\t\x12\r\n\x05green\x18\x04 \x01(\x05\x12\x0e\n\x06yellow\x18\x05 \x01(\x05\x12\x0e\n\x06\x61llred\x18\x06 \x01(\x05\x12\x0e\n\x06phases\x18\x07 \x01(\t\x12\x13\n\x0bphases_name\x18\x08 \x01(\t\x12\x11\n\tmin_green\x18\t \x01(\x05\x12\x11\n\tmax_green\x18\n \x01(\x05\"o\n\x1a\x43rossPhaseDiagnosisRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x0f\n\x07\x61rea_id\x18\x04 \x01(\x05\x12\n\n\x02tp\x18\x05 \x01(\t\x12\x11\n\tdate_list\x18\x06 \x03(\t\"\xd2\x05\n\x1b\x43rossPhaseDiagnosisResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12<\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32..phase_server.CrossPhaseDiagnosisResponse.List\x1aW\n\x04List\x12\x0c\n\x04item\x18\x01 \x01(\t\x12\x41\n\x06values\x18\x02 \x03(\x0b\x32\x31.phase_server.CrossPhaseDiagnosisResponse.details\x1a\xbf\x01\n\x07\x64\x65tails\x12\x0c\n\x04item\x18\x01 \x01(\t\x12\x45\n\x06\x64\x65tail\x18\x02 \x03(\x0b\x32\x35.phase_server.CrossPhaseDiagnosisResponse.item_detail\x12O\n\x0bsuggestions\x18\x03 \x03(\x0b\x32:.phase_server.CrossPhaseDiagnosisResponse.item_suggestions\x12\x0e\n\x06reason\x18\x04 \x01(\t\x1al\n\x0bitem_detail\x12\x0f\n\x07src_dir\x18\x01 \x01(\t\x12L\n\x0c\x63hild_detail\x18\x02 \x03(\x0b\x32\x36.phase_server.CrossPhaseDiagnosisResponse.detail_value\x1a`\n\x10item_suggestions\x12L\n\x0c\x63hild_detail\x18\x01 \x03(\x0b\x32\x36.phase_server.CrossPhaseDiagnosisResponse.detail_value\x1ao\n\x0c\x64\x65tail_value\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\r\n\x05\x63olor\x18\x02 \x01(\t\x12\x12\n\nscheduleid\x18\x03 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x04 \x01(\t\x12\x10\n\x08tp_start\x18\x05 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x06 \x01(\t\"+\n\x17\x43rossPhaseByCityRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\"C\n\x18\x43rossPhaseByCityResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x03(\t2\xaf\n\n\x0cPhaseService\x12\\\n\x13\x45xceptionPhaseCross\x12\x1a.phase_server.EmptyRequest\x1a).phase_server.ExceptionPhaseCrossResponse\x12v\n\x17\x45xceptionPhaseCrossInfo\x12,.phase_server.ExceptionPhaseCrossInfoRequest\x1a-.phase_server.ExceptionPhaseCrossInfoResponse\x12y\n\x18\x45xceptionPhaseByCrossIDs\x12-.phase_server.ExceptionPhaseByCrossIDsRequest\x1a..phase_server.ExceptionPhaseByCrossIDsResponse\x12\x88\x01\n\x1dGetCrossPhaseDetailByCrossIDs\x12\x32.phase_server.GetCrossPhaseDetailByCrossIDsRequest\x1a\x33.phase_server.GetCrossPhaseDetailByCrossIDsResponse\x12T\n\x0fGetPhaseCrossID\x12\x1a.phase_server.EmptyRequest\x1a%.phase_server.GetPhaseCrossIDResponse\x12^\n\x0fPhaseGreenRatio\x12$.phase_server.PhaseGreenRatioRequest\x1a%.phase_server.PhaseGreenRatioResponse\x12L\n\tCrossList\x12\x1e.phase_server.CrossListRequest\x1a\x1f.phase_server.CrossListResponse\x12\x88\x01\n\x1dQueryCrossPhaseRelativeOffset\x12\x32.phase_server.QueryCrossPhaseRelativeOffsetRequest\x1a\x33.phase_server.QueryCrossPhaseRelativeOffsetResponse\x12\x7f\n\x1aGreenWaveCrossPhaseTpCheck\x12/.phase_server.GreenWaveCrossPhaseTpCheckRequest\x1a\x30.phase_server.GreenWaveCrossPhaseTpCheckResponse\x12\x64\n\x11\x43rossRunningPhase\x12&.phase_server.CrossRunningPhaseRequest\x1a\'.phase_server.CrossRunningPhaseResponse\x12j\n\x13\x43rossPhaseDiagnosis\x12(.phase_server.CrossPhaseDiagnosisRequest\x1a).phase_server.CrossPhaseDiagnosisResponse\x12\x61\n\x10\x43rossPhaseByCity\x12%.phase_server.CrossPhaseByCityRequest\x1a&.phase_server.CrossPhaseByCityResponseb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12phase_server.proto\x12\x0cphase_server\"\x0e\n\x0c\x45mptyRequest\"\x9f\x01\n\x1b\x45xceptionPhaseCrossResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12<\n\x04\x64\x61ta\x18\x04 \x03(\x0b\x32..phase_server.ExceptionPhaseCrossResponse.List\x1a\'\n\x04List\x12\x0e\n\x06nodeid\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\"2\n\x1e\x45xceptionPhaseCrossInfoRequest\x12\x10\n\x08\x63itycode\x18\x01 \x03(\x05\"\xb3\x02\n\x1f\x45xceptionPhaseCrossInfoResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\r\n\x05total\x18\x03 \x01(\x05\x12\x13\n\x0b\x63ross_total\x18\x04 \x01(\x05\x12@\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x32.phase_server.ExceptionPhaseCrossInfoResponse.List\x1a\x8e\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\nscheduleid\x18\x03 \x01(\x05\x12\x0e\n\x06planid\x18\x04 \x01(\x05\x12\x11\n\tplan_name\x18\x05 \x01(\t\x12\x10\n\x08tp_start\x18\x06 \x01(\t\x12\x0c\n\x04\x64\x61ys\x18\x07 \x01(\t\x12\x0c\n\x04type\x18\x08 \x01(\t\"D\n\x1f\x45xceptionPhaseByCrossIDsRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x03(\t\"\xb3\x02\n ExceptionPhaseByCrossIDsResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x41\n\x04\x64\x61ta\x18\x05 \x03(\x0b\x32\x33.phase_server.ExceptionPhaseByCrossIDsResponse.List\x1a\xb0\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\ncross_name\x18\x03 \x01(\t\x12\x12\n\nscheduleid\x18\x04 \x01(\x05\x12\x0e\n\x06planid\x18\x05 \x01(\x05\x12\x11\n\tplan_name\x18\x06 \x01(\t\x12\x10\n\x08tp_start\x18\x07 \x01(\t\x12\x0c\n\x04\x64\x61te\x18\x08 \x01(\t\x12\x0c\n\x04week\x18\t \x01(\t\x12\x0c\n\x04type\x18\n \x01(\t\"\x9f\x01\n$GetCrossPhaseDetailByCrossIDsRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x10\n\x08\x63rossids\x18\x02 \x03(\t\x12\x12\n\ngw_src_dir\x18\x03 \x01(\t\x12\x10\n\x08tp_start\x18\x04 \x01(\t\x12\x0e\n\x06tp_end\x18\x05 \x01(\t\x12\x0c\n\x04week\x18\x06 \x01(\t\x12\x0f\n\x07wave_id\x18\x07 \x01(\t\"\x9a\x03\n%GetCrossPhaseDetailByCrossIDsResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\r\n\x05\x63ycle\x18\x03 \x01(\x05\x12\x46\n\x04\x64\x61ta\x18\x04 \x03(\x0b\x32\x38.phase_server.GetCrossPhaseDetailByCrossIDsResponse.List\x1a\xfe\x01\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x15\n\rgreen_forward\x18\x02 \x01(\x05\x12\x14\n\x0cgreen_revers\x18\x03 \x01(\x05\x12\x0e\n\x06offset\x18\x04 \x01(\x05\x12\x10\n\x08offset_r\x18\x05 \x01(\x05\x12\r\n\x05\x63ycle\x18\x06 \x01(\x05\x12\x0b\n\x03\x64\x61y\x18\x07 \x01(\x05\x12\r\n\x05month\x18\x08 \x01(\x05\x12\x0f\n\x07weekday\x18\t \x01(\x05\x12\x12\n\nscheduleid\x18\n \x01(\x05\x12\x0e\n\x06planid\x18\x0b \x01(\x05\x12\x11\n\tplan_name\x18\x0c \x01(\t\x12\x15\n\rcoord_phaseid\x18\r \x01(\x05\x12\x0c\n\x04type\x18\x0e \x01(\t\"\x99\x01\n\x17GetPhaseCrossIDResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x38\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32*.phase_server.GetPhaseCrossIDResponse.List\x1a)\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\"\x91\x01\n\x16PhaseGreenRatioRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x10\n\x08\x63rossids\x18\x02 \x03(\t\x12\x12\n\ngw_src_dir\x18\x03 \x01(\t\x12\x10\n\x08tp_start\x18\x04 \x01(\t\x12\x0e\n\x06tp_end\x18\x05 \x01(\t\x12\x0c\n\x04week\x18\x06 \x01(\t\x12\x0f\n\x07wave_id\x18\x07 \x01(\t\"\xce\x04\n\x17PhaseGreenRatioResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x38\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32*.phase_server.PhaseGreenRatioResponse.List\x1a\xdd\x03\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0b\n\x03s2l\x18\x02 \x01(\x02\x12\x12\n\ns2l_remark\x18\x03 \x01(\t\x12\x13\n\x0bs2l_s_green\x18\x04 \x01(\x05\x12\x13\n\x0bs2l_l_green\x18\x05 \x01(\x05\x12\r\n\x05s2unl\x18\x06 \x01(\x02\x12\x14\n\x0cs2unl_remark\x18\x07 \x01(\t\x12\x15\n\rs2unl_s_green\x18\x08 \x01(\x05\x12\x17\n\x0fs2unl_unl_green\x18\t \x01(\x05\x12\r\n\x05s2uns\x18\n \x01(\x02\x12\x14\n\x0cs2uns_remark\x18\x0b \x01(\t\x12\x15\n\rs2uns_s_green\x18\x0c \x01(\x05\x12\x17\n\x0fs2uns_uns_green\x18\r \x01(\x05\x12\x0f\n\x07\x66wd2rev\x18\x0e \x01(\x02\x12\x16\n\x0e\x66wd2rev_remark\x18\x0f \x01(\t\x12\x19\n\x11\x66wd2rev_fwd_green\x18\x10 \x01(\x05\x12\x19\n\x11\x66wd2rev_rev_green\x18\x11 \x01(\x05\x12\x0e\n\x06planid\x18\x12 \x01(\x05\x12\x0b\n\x03\x64\x61y\x18\x13 \x01(\x05\x12\r\n\x05month\x18\x14 \x01(\x05\x12\x0f\n\x07weekday\x18\x15 \x01(\x05\x12\x12\n\nscheduleid\x18\x16 \x01(\x05\x12\x11\n\tplan_name\x18\x17 \x01(\t\x12\x0c\n\x04type\x18\x18 \x01(\t\"\"\n\x10\x43rossListRequest\x12\x0e\n\x06nodeid\x18\x01 \x01(\x05\"\xba\x01\n\x11\x43rossListResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x32\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32$.phase_server.CrossListResponse.List\x1aV\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x10\n\x08location\x18\x04 \x01(\t\x12\x0f\n\x07src_dir\x18\x05 \x03(\t\"c\n$QueryCrossPhaseRelativeOffsetRequest\x12\x10\n\x08\x63rossids\x18\x01 \x03(\t\x12\x10\n\x08\x63itycode\x18\x02 \x01(\x05\x12\n\n\x02tp\x18\x03 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x04 \x01(\t\"\x94\x05\n%QueryCrossPhaseRelativeOffsetResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x46\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32\x38.phase_server.QueryCrossPhaseRelativeOffsetResponse.List\x1a\xd0\x02\n\x04List\x12\x0f\n\x07\x63rossid\x18\x01 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x02 \x01(\x05\x12\r\n\x05month\x18\x03 \x01(\x05\x12\x0f\n\x07weekday\x18\x04 \x01(\x05\x12\x12\n\nscheduleid\x18\x05 \x01(\x05\x12\x10\n\x08tp_start\x18\x06 \x01(\t\x12\x14\n\x0c\x63ontrol_mode\x18\x07 \x01(\t\x12\x0e\n\x06planid\x18\x08 \x01(\x05\x12\x11\n\tplan_name\x18\t \x01(\t\x12\r\n\x05\x63ycle\x18\n \x01(\x05\x12\x0e\n\x06offset\x18\x0b \x01(\x05\x12\x17\n\x0frelative_offset\x18\x0c \x01(\x05\x12\x0c\n\x04type\x18\r \x01(\t\x12\x15\n\rcoord_phaseid\x18\x0e \x01(\x05\x12N\n\x06stages\x18\x0f \x03(\x0b\x32>.phase_server.QueryCrossPhaseRelativeOffsetResponse.stage_data\x1a\xb4\x01\n\nstage_data\x12\x0f\n\x07stageid\x18\x01 \x01(\x05\x12\x12\n\nstage_name\x18\x02 \x01(\t\x12\x16\n\x0estage_duration\x18\x03 \x01(\x05\x12\r\n\x05green\x18\x04 \x01(\x05\x12\x0e\n\x06yellow\x18\x05 \x01(\x05\x12\x0e\n\x06\x61llred\x18\x06 \x01(\x05\x12\x11\n\tredyellow\x18\x07 \x01(\x05\x12\x10\n\x08phaseids\x18\x08 \x01(\t\x12\x15\n\rphaseid_names\x18\t \x01(\t\"E\n!GreenWaveCrossPhaseTpCheckRequest\x12\x0e\n\x06waveid\x18\x01 \x01(\t\x12\x10\n\x08\x63itycode\x18\x02 \x01(\x05\"?\n\"GreenWaveCrossPhaseTpCheckResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\"]\n\x18\x43rossRunningPhaseRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x11\n\tdate_list\x18\x02 \x03(\t\x12\n\n\x02tp\x18\x03 \x01(\t\x12\x10\n\x08\x63rossids\x18\x04 \x03(\t\"\xd7\x05\n\x19\x43rossRunningPhaseResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12:\n\x04\x64\x61ta\x18\x03 \x03(\x0b\x32,.phase_server.CrossRunningPhaseResponse.List\x1a\xbe\x01\n\x04List\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x12\n\njj_crossid\x18\x03 \x01(\t\x12\x12\n\nscheduleid\x18\x04 \x01(\x05\x12\x15\n\rschedule_week\x18\x05 \x01(\t\x12\x15\n\rschedule_name\x18\x06 \x01(\t\x12=\n\x03tps\x18\x07 \x03(\x0b\x32\x30.phase_server.CrossRunningPhaseResponse.tps_list\x1a\xdf\x01\n\x08tps_list\x12\x10\n\x08tp_start\x18\x01 \x01(\t\x12\x0e\n\x06tp_end\x18\x02 \x01(\t\x12\x0e\n\x06planid\x18\x03 \x01(\x05\x12\x11\n\tplan_name\x18\x04 \x01(\t\x12\x14\n\x0c\x63ontrol_mode\x18\x05 \x01(\t\x12\r\n\x05\x63ycle\x18\x06 \x01(\x05\x12\x15\n\rcoord_phaseid\x18\x07 \x01(\x05\x12\x0e\n\x06offset\x18\x08 \x01(\x05\x12\x42\n\nstage_list\x18\t \x03(\x0b\x32..phase_server.CrossRunningPhaseResponse.stages\x1a\xbf\x01\n\x06stages\x12\x0f\n\x07stageid\x18\x01 \x01(\x05\x12\x16\n\x0estage_duration\x18\x02 \x01(\x05\x12\x12\n\nstage_name\x18\x03 \x01(\t\x12\r\n\x05green\x18\x04 \x01(\x05\x12\x0e\n\x06yellow\x18\x05 \x01(\x05\x12\x0e\n\x06\x61llred\x18\x06 \x01(\x05\x12\x0e\n\x06phases\x18\x07 \x01(\t\x12\x13\n\x0bphases_name\x18\x08 \x01(\t\x12\x11\n\tmin_green\x18\t \x01(\x05\x12\x11\n\tmax_green\x18\n \x01(\x05\"o\n\x1a\x43rossPhaseDiagnosisRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x02 \x01(\t\x12\x0f\n\x07\x61rea_id\x18\x04 \x01(\x05\x12\n\n\x02tp\x18\x05 \x01(\t\x12\x11\n\tdate_list\x18\x06 \x03(\t\"\xd2\x05\n\x1b\x43rossPhaseDiagnosisResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12<\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32..phase_server.CrossPhaseDiagnosisResponse.List\x1aW\n\x04List\x12\x0c\n\x04item\x18\x01 \x01(\t\x12\x41\n\x06values\x18\x02 \x03(\x0b\x32\x31.phase_server.CrossPhaseDiagnosisResponse.details\x1a\xbf\x01\n\x07\x64\x65tails\x12\x0c\n\x04item\x18\x01 \x01(\t\x12\x45\n\x06\x64\x65tail\x18\x02 \x03(\x0b\x32\x35.phase_server.CrossPhaseDiagnosisResponse.item_detail\x12O\n\x0bsuggestions\x18\x03 \x03(\x0b\x32:.phase_server.CrossPhaseDiagnosisResponse.item_suggestions\x12\x0e\n\x06reason\x18\x04 \x01(\t\x1al\n\x0bitem_detail\x12\x0f\n\x07src_dir\x18\x01 \x01(\t\x12L\n\x0c\x63hild_detail\x18\x02 \x03(\x0b\x32\x36.phase_server.CrossPhaseDiagnosisResponse.detail_value\x1a`\n\x10item_suggestions\x12L\n\x0c\x63hild_detail\x18\x01 \x03(\x0b\x32\x36.phase_server.CrossPhaseDiagnosisResponse.detail_value\x1ao\n\x0c\x64\x65tail_value\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\r\n\x05\x63olor\x18\x02 \x01(\t\x12\x12\n\nscheduleid\x18\x03 \x01(\x05\x12\x0f\n\x07\x63rossid\x18\x04 \x01(\t\x12\x10\n\x08tp_start\x18\x05 \x01(\t\x12\x0b\n\x03\x64\x61y\x18\x06 \x01(\t\"+\n\x17\x43rossPhaseByCityRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\"C\n\x18\x43rossPhaseByCityResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x03(\t\"j\n\x1b\x43rossPhaseStatisticsRequest\x12\x10\n\x08\x63itycode\x18\x01 \x01(\x05\x12\x0f\n\x07\x61rea_id\x18\x02 \x01(\x05\x12\x15\n\rschedule_week\x18\x03 \x01(\t\x12\x11\n\tdate_list\x18\x04 \x03(\t\"\xc8\x02\n\x1c\x43rossPhaseStatisticsResponse\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0b\n\x03msg\x18\x02 \x01(\t\x12=\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32/.phase_server.CrossPhaseStatisticsResponse.List\x1a\x9e\x01\n\x04List\x12\x17\n\x0f\x63ross_phase_num\x18\x01 \x01(\x05\x12\x18\n\x10\x63ross_update_num\x18\x02 \x01(\x05\x12\x12\n\navg_tp_num\x18\x03 \x01(\x02\x12O\n\rtp_num_detail\x18\x04 \x03(\x0b\x32\x38.phase_server.CrossPhaseStatisticsResponse.item_tps_list\x1a-\n\ritem_tps_list\x12\r\n\x05range\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05\x32\x9e\x0b\n\x0cPhaseService\x12\\\n\x13\x45xceptionPhaseCross\x12\x1a.phase_server.EmptyRequest\x1a).phase_server.ExceptionPhaseCrossResponse\x12v\n\x17\x45xceptionPhaseCrossInfo\x12,.phase_server.ExceptionPhaseCrossInfoRequest\x1a-.phase_server.ExceptionPhaseCrossInfoResponse\x12y\n\x18\x45xceptionPhaseByCrossIDs\x12-.phase_server.ExceptionPhaseByCrossIDsRequest\x1a..phase_server.ExceptionPhaseByCrossIDsResponse\x12\x88\x01\n\x1dGetCrossPhaseDetailByCrossIDs\x12\x32.phase_server.GetCrossPhaseDetailByCrossIDsRequest\x1a\x33.phase_server.GetCrossPhaseDetailByCrossIDsResponse\x12T\n\x0fGetPhaseCrossID\x12\x1a.phase_server.EmptyRequest\x1a%.phase_server.GetPhaseCrossIDResponse\x12^\n\x0fPhaseGreenRatio\x12$.phase_server.PhaseGreenRatioRequest\x1a%.phase_server.PhaseGreenRatioResponse\x12L\n\tCrossList\x12\x1e.phase_server.CrossListRequest\x1a\x1f.phase_server.CrossListResponse\x12\x88\x01\n\x1dQueryCrossPhaseRelativeOffset\x12\x32.phase_server.QueryCrossPhaseRelativeOffsetRequest\x1a\x33.phase_server.QueryCrossPhaseRelativeOffsetResponse\x12\x7f\n\x1aGreenWaveCrossPhaseTpCheck\x12/.phase_server.GreenWaveCrossPhaseTpCheckRequest\x1a\x30.phase_server.GreenWaveCrossPhaseTpCheckResponse\x12\x64\n\x11\x43rossRunningPhase\x12&.phase_server.CrossRunningPhaseRequest\x1a\'.phase_server.CrossRunningPhaseResponse\x12j\n\x13\x43rossPhaseDiagnosis\x12(.phase_server.CrossPhaseDiagnosisRequest\x1a).phase_server.CrossPhaseDiagnosisResponse\x12\x61\n\x10\x43rossPhaseByCity\x12%.phase_server.CrossPhaseByCityRequest\x1a&.phase_server.CrossPhaseByCityResponse\x12m\n\x14\x43rossPhaseStatistics\x12).phase_server.CrossPhaseStatisticsRequest\x1a*.phase_server.CrossPhaseStatisticsResponseb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -111,6 +111,14 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['_CROSSPHASEBYCITYREQUEST']._serialized_end=5259 _globals['_CROSSPHASEBYCITYRESPONSE']._serialized_start=5261 _globals['_CROSSPHASEBYCITYRESPONSE']._serialized_end=5328 - _globals['_PHASESERVICE']._serialized_start=5331 - _globals['_PHASESERVICE']._serialized_end=6658 + _globals['_CROSSPHASESTATISTICSREQUEST']._serialized_start=5330 + _globals['_CROSSPHASESTATISTICSREQUEST']._serialized_end=5436 + _globals['_CROSSPHASESTATISTICSRESPONSE']._serialized_start=5439 + _globals['_CROSSPHASESTATISTICSRESPONSE']._serialized_end=5767 + _globals['_CROSSPHASESTATISTICSRESPONSE_LIST']._serialized_start=5562 + _globals['_CROSSPHASESTATISTICSRESPONSE_LIST']._serialized_end=5720 + _globals['_CROSSPHASESTATISTICSRESPONSE_ITEM_TPS_LIST']._serialized_start=5722 + _globals['_CROSSPHASESTATISTICSRESPONSE_ITEM_TPS_LIST']._serialized_end=5767 + _globals['_PHASESERVICE']._serialized_start=5770 + _globals['_PHASESERVICE']._serialized_end=7208 # @@protoc_insertion_point(module_scope) diff --git a/proto/phase_server_pb2_grpc.py b/proto/phase_server_pb2_grpc.py index dfa3377..58cb3ee 100644 --- a/proto/phase_server_pb2_grpc.py +++ b/proto/phase_server_pb2_grpc.py @@ -94,6 +94,11 @@ class PhaseServiceStub(object): request_serializer=phase__server__pb2.CrossPhaseByCityRequest.SerializeToString, response_deserializer=phase__server__pb2.CrossPhaseByCityResponse.FromString, _registered_method=True) + self.CrossPhaseStatistics = channel.unary_unary( + '/phase_server.PhaseService/CrossPhaseStatistics', + request_serializer=phase__server__pb2.CrossPhaseStatisticsRequest.SerializeToString, + response_deserializer=phase__server__pb2.CrossPhaseStatisticsResponse.FromString, + _registered_method=True) class PhaseServiceServicer(object): @@ -183,6 +188,13 @@ class PhaseServiceServicer(object): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def CrossPhaseStatistics(self, request, context): + """路口巡检城市配时方案统计 + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_PhaseServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -246,6 +258,11 @@ def add_PhaseServiceServicer_to_server(servicer, server): request_deserializer=phase__server__pb2.CrossPhaseByCityRequest.FromString, response_serializer=phase__server__pb2.CrossPhaseByCityResponse.SerializeToString, ), + 'CrossPhaseStatistics': grpc.unary_unary_rpc_method_handler( + servicer.CrossPhaseStatistics, + request_deserializer=phase__server__pb2.CrossPhaseStatisticsRequest.FromString, + response_serializer=phase__server__pb2.CrossPhaseStatisticsResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'phase_server.PhaseService', rpc_method_handlers) @@ -580,3 +597,30 @@ class PhaseService(object): timeout, metadata, _registered_method=True) + + @staticmethod + def CrossPhaseStatistics(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/phase_server.PhaseService/CrossPhaseStatistics', + phase__server__pb2.CrossPhaseStatisticsRequest.SerializeToString, + phase__server__pb2.CrossPhaseStatisticsResponse.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True)