| | |
| | | import redis_manager |
| | | from log import logger_code_operate |
| | | |
| | | __reset_code_dict = {} |
| | | __set_operate_code_state_dict = {} |
| | | |
| | | |
| | | class L2CodeOperate(object): |
| | | __instance = None |
| | |
| | | L2CodeOperate.setGPCode(client_id, pos, code) |
| | | # 修复l2的数据错误 |
| | | elif type == 3: |
| | | if tool.is_trade_time(): |
| | | if tool.is_set_code_time(): |
| | | client = data["client"] |
| | | data = data["data"] |
| | | result = server.send_msg(client, data) |
| | |
| | | return redis.get("operate_queue_read_state") is not None |
| | | |
| | | |
| | | # 通过l2代码校验代码位 |
| | | @tool.async_call |
| | | def verify_with_l2_data_pos_info(code, client, channel): |
| | | code_ = gpcode_manager.get_listen_code_by_pos(client, channel) |
| | | if code_ != code: |
| | | key = "{}-{}-{}".format(client, channel, code) |
| | | |
| | | # 间隔2s |
| | | if key not in __reset_code_dict or round( |
| | | time.time() * 1000) - __reset_code_dict[key] > 2000: |
| | | |
| | | L2CodeOperate.set_operate_code_state(client, channel, 0) |
| | | __reset_code_dict[key] = round(time.time() * 1000) |
| | | if code_ is None: |
| | | code_ = "" |
| | | if tool.is_set_code_time(): |
| | | L2CodeOperate.repaire_operate(int(client), int(channel), code_) |
| | | else: |
| | | key = "{}-{}".format(client, channel) |
| | | if key not in __set_operate_code_state_dict or round( |
| | | time.time() * 1000) - __set_operate_code_state_dict[key] > 1000: |
| | | __set_operate_code_state_dict[key] = round(time.time() * 1000) |
| | | L2CodeOperate.set_operate_code_state(client, channel, 1) |
| | | |
| | | |
| | | # 获取客户端正在监听的代码 |
| | | def get_listen_codes_from_client(client_id): |
| | |
| | | code = gpcode_manager.get_listen_code_by_pos(client_id, index) |
| | | if code is not None and len(code) > 0 and index_codes.get(index) != code: |
| | | # 交易时间才修复代码 |
| | | if tool.is_trade_time(): |
| | | if tool.is_set_code_time(): |
| | | L2CodeOperate().repaire_operate(client_id, index, code) |
| | | elif code is None or len(code) == 0 and index_codes.get(index) is not None: |
| | | # 删除前端代码位 |