增加巡检页面配时方案信息
Signed-off-by: yinzijian <yinzijian@haomozhixing.onaliyun.com>
This commit is contained in:
parent
bdbcf274f9
commit
8be38e2a91
|
|
@ -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, nodeid, int(nodeid), int(area_id),
|
||||||
nodeid, area_id, nodeid, area_id, 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, 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()
|
result = cursor.fetchall()
|
||||||
self.close(conn, cursor)
|
self.close(conn, cursor)
|
||||||
return result, None
|
return result, None
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ import grpc
|
||||||
|
|
||||||
from app.global_source import g_config
|
from app.global_source import g_config
|
||||||
from google.protobuf.json_format import MessageToDict
|
from google.protobuf.json_format import MessageToDict
|
||||||
|
|
||||||
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../proto')))
|
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../proto')))
|
||||||
from proto import phase_server_pb2_grpc, phase_server_pb2
|
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()
|
stub, channel = channel_stub()
|
||||||
try:
|
try:
|
||||||
request_params = phase_server_pb2.CrossPhaseDiagnosisRequest(citycode=citycode, crossid=crossid,
|
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)
|
response = stub.CrossPhaseDiagnosis(request_params, timeout=30)
|
||||||
if response.code != 0:
|
if response.code != 0:
|
||||||
raise Exception(response.msg)
|
raise Exception(response.msg)
|
||||||
|
|
||||||
data = MessageToDict(response.data, preserving_proto_field_name=True)
|
data = MessageToDict(response.data, preserving_proto_field_name=True)
|
||||||
if len(data) > 0:
|
if len(data) > 0:
|
||||||
data['total_num'] = len(data['values'])
|
data['total_num'] = len(data['values'])
|
||||||
|
|
@ -159,7 +160,8 @@ def QueryCrossPhaseDiagnosis(citycode: int, crossid: str, date_list: List, tp: s
|
||||||
return None, e
|
return None, e
|
||||||
finally:
|
finally:
|
||||||
channel.close()
|
channel.close()
|
||||||
|
|
||||||
|
|
||||||
def QueryCrossPhaseByCity(citycode: int):
|
def QueryCrossPhaseByCity(citycode: int):
|
||||||
"""
|
"""
|
||||||
根据城市ID查询有配时方案路口ID
|
根据城市ID查询有配时方案路口ID
|
||||||
|
|
@ -175,3 +177,23 @@ def QueryCrossPhaseByCity(citycode: int):
|
||||||
return [], e
|
return [], e
|
||||||
finally:
|
finally:
|
||||||
channel.close()
|
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()
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ service PhaseService {
|
||||||
rpc CrossPhaseDiagnosis (CrossPhaseDiagnosisRequest) returns (CrossPhaseDiagnosisResponse);
|
rpc CrossPhaseDiagnosis (CrossPhaseDiagnosisRequest) returns (CrossPhaseDiagnosisResponse);
|
||||||
//根据城市ID查询路口配时方案相关信息
|
//根据城市ID查询路口配时方案相关信息
|
||||||
rpc CrossPhaseByCity (CrossPhaseByCityRequest) returns (CrossPhaseByCityResponse);
|
rpc CrossPhaseByCity (CrossPhaseByCityRequest) returns (CrossPhaseByCityResponse);
|
||||||
|
//路口巡检城市配时方案统计
|
||||||
|
rpc CrossPhaseStatistics (CrossPhaseStatisticsRequest) returns (CrossPhaseStatisticsResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
message EmptyRequest {}
|
message EmptyRequest {}
|
||||||
|
|
@ -335,4 +337,29 @@ message CrossPhaseByCityResponse {
|
||||||
int32 code = 1;
|
int32 code = 1;
|
||||||
string msg = 2;
|
string msg = 2;
|
||||||
repeated string data = 3;
|
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; //日计划数量
|
||||||
|
}
|
||||||
}
|
}
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -94,6 +94,11 @@ class PhaseServiceStub(object):
|
||||||
request_serializer=phase__server__pb2.CrossPhaseByCityRequest.SerializeToString,
|
request_serializer=phase__server__pb2.CrossPhaseByCityRequest.SerializeToString,
|
||||||
response_deserializer=phase__server__pb2.CrossPhaseByCityResponse.FromString,
|
response_deserializer=phase__server__pb2.CrossPhaseByCityResponse.FromString,
|
||||||
_registered_method=True)
|
_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):
|
class PhaseServiceServicer(object):
|
||||||
|
|
@ -183,6 +188,13 @@ class PhaseServiceServicer(object):
|
||||||
context.set_details('Method not implemented!')
|
context.set_details('Method not implemented!')
|
||||||
raise NotImplementedError('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):
|
def add_PhaseServiceServicer_to_server(servicer, server):
|
||||||
rpc_method_handlers = {
|
rpc_method_handlers = {
|
||||||
|
|
@ -246,6 +258,11 @@ def add_PhaseServiceServicer_to_server(servicer, server):
|
||||||
request_deserializer=phase__server__pb2.CrossPhaseByCityRequest.FromString,
|
request_deserializer=phase__server__pb2.CrossPhaseByCityRequest.FromString,
|
||||||
response_serializer=phase__server__pb2.CrossPhaseByCityResponse.SerializeToString,
|
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(
|
generic_handler = grpc.method_handlers_generic_handler(
|
||||||
'phase_server.PhaseService', rpc_method_handlers)
|
'phase_server.PhaseService', rpc_method_handlers)
|
||||||
|
|
@ -580,3 +597,30 @@ class PhaseService(object):
|
||||||
timeout,
|
timeout,
|
||||||
metadata,
|
metadata,
|
||||||
_registered_method=True)
|
_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)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue