| | |
| | | if datas: |
| | | for d in datas: |
| | | # 查询是否有数据 |
| | | _id = f"{d['insertDate']}-{d['orderLocalID']}" |
| | | result = mysqldb.select_one( |
| | | f"select * from hx_trade_delegate_record where orderLocalID='{d['orderLocalID']}'") |
| | | f"select * from hx_trade_delegate_record where id='{_id}'") |
| | | if not result: |
| | | # 新增数据 |
| | | nameDict = HistoryKDatasUtils.get_gp_codes_names([d['securityID']]) |
| | | name = nameDict.get(d['securityID']) |
| | | mysqldb.execute( |
| | | "insert into hx_trade_delegate_record values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')" % ( |
| | | d["orderLocalID"], d["securityID"], name, d["direction"], |
| | | "insert into hx_trade_delegate_record values('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')" % ( |
| | | _id, d["orderLocalID"], d["securityID"], name, d["direction"], |
| | | d["orderSysID"], d["insertTime"], d["insertDate"], d["acceptTime"], d["cancelTime"], |
| | | d["limitPrice"], d["turnover"], d["volume"], d["volumeTraded"], d["orderStatus"], |
| | | d["orderSubmitStatus"], d["statusMsg"], tool.get_now_datetime_str(), |
| | |
| | | else: |
| | | # 修改数据 |
| | | updateDict = {} |
| | | if result[4] != d['orderSysID']: |
| | | if result[5] != d['orderSysID']: |
| | | updateDict['orderSysID'] = d['orderSysID'] |
| | | if result[7] != d['acceptTime']: |
| | | if result[8] != d['acceptTime']: |
| | | updateDict['acceptTime'] = d['acceptTime'] |
| | | if result[8] != d['cancelTime']: |
| | | if result[9] != d['cancelTime']: |
| | | updateDict['cancelTime'] = d['cancelTime'] |
| | | if result[10] != str(d['turnover']): |
| | | if result[11] != str(d['turnover']): |
| | | updateDict['turnover'] = d['turnover'] |
| | | if result[12] != d['volumeTraded']: |
| | | if result[13] != d['volumeTraded']: |
| | | updateDict['volumeTraded'] = d['volumeTraded'] |
| | | if result[13] != int(d['orderStatus']): |
| | | if result[14] != int(d['orderStatus']): |
| | | updateDict['orderStatus'] = d['orderStatus'] |
| | | if result[14] != int(d['orderSubmitStatus']): |
| | | if result[15] != int(d['orderSubmitStatus']): |
| | | updateDict['orderSubmitStatus'] = d['orderSubmitStatus'] |
| | | if result[15] != d['statusMsg']: |
| | | if result[16] != d['statusMsg']: |
| | | updateDict['statusMsg'] = d['statusMsg'] |
| | | if updateDict: |
| | | # 有更新数据 |
| | |
| | | else: |
| | | where_list.append(f"{k}={updateDict[k]}") |
| | | mysqldb.execute( |
| | | f"update hx_trade_delegate_record set {','.join(where_list)} where orderLocalID='{result[0]}'") |
| | | f"update hx_trade_delegate_record set {','.join(where_list)} where id='{result[0]}'") |
| | | finally: |
| | | pass |
| | | |