From 5c9991be21f57781573f04961ec511ac2938ea3d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 08 四月 2025 15:27:08 +0800 Subject: [PATCH] '功能完善' --- common/NetworkApi.cpp | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 200 insertions(+), 4 deletions(-) diff --git a/common/NetworkApi.cpp b/common/NetworkApi.cpp index c657d1b..daa8218 100644 --- a/common/NetworkApi.cpp +++ b/common/NetworkApi.cpp @@ -331,7 +331,7 @@ } } -int NetworkApi::get_auto_cancel_sell_mode() +int NetworkApi::get_auto_cancel_sell_mode(string code) { rapidjson::StringBuffer buf; rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); @@ -344,6 +344,8 @@ writer.String("auto_cancel_sell_mode"); writer.Key("operate"); writer.Int(3); + writer.Key("code"); + writer.String(code.c_str()); writer.EndObject(); writer.EndObject(); const char* json_content = buf.GetString(); @@ -358,7 +360,7 @@ } } -void NetworkApi::set_auto_cancel_sell_mode(int mode) +void NetworkApi::set_auto_cancel_sell_mode(string code, int mode) { rapidjson::StringBuffer buf; rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); @@ -373,6 +375,8 @@ writer.Int(1); writer.Key("mode"); writer.Int(mode); + writer.Key("code"); + writer.String(code.c_str()); writer.EndObject(); writer.EndObject(); const char* json_content = buf.GetString(); @@ -790,7 +794,7 @@ CString code = arr[0].GetString(); CString codeName= arr[1].IsNull()?L"未知":arr[1].GetString() ; float rate = 0.0f; - if (arr.Size() > 2) { + if (arr.Size() > 2&& arr[2].IsFloat()) { rate = arr[2].GetFloat(); } CodeInfo ci = CodeInfo({ code ,codeName, rate }); @@ -925,6 +929,24 @@ writer.String("sync_l1_subscript_codes"); writer.Key("data"); writer.StartObject(); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_trade_request(std::string(json_content)); + return result; +} + +string NetworkApi::sync_radical_buy_special_codes() +{ + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("async_radical_buy_special_codes"); writer.EndObject(); writer.EndObject(); const char* json_content = buf.GetString(); @@ -1134,7 +1156,7 @@ return result; } -void NetworkApi::set_buy_money_and_count(int normalCount, string normalMoneyJson, int radicalCount, string radicalMoneyJson) +void NetworkApi::set_buy_money_and_count(int normalCount, string normalMoneyJson, int radicalCount, string radicalMoneyJson, int default_buy_money) { rapidjson::StringBuffer buf; rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); @@ -1145,6 +1167,8 @@ writer.StartObject(); writer.Key("ctype"); writer.String("set_buy_money_count_setting"); + writer.Key("default_buy_money"); + writer.Int(default_buy_money); writer.Key("normal"); writer.StartArray(); writer.Int(normalCount); @@ -1381,6 +1405,102 @@ return result; } +string NetworkApi::get_place_order_settings() +{ + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("get_place_order_settings"); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_request(std::string(json_content)); + return result; + + +} + +string NetworkApi::set_place_order_settings(string radical_buy_data) +{ + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("set_place_order_settings"); + + writer.Key("radical_buy"); + writer.String(radical_buy_data.c_str()); + + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_request(std::string(json_content)); + return result; +} + +string NetworkApi::get_buy_open_limit_up_codes() +{ + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("get_buy_open_limit_up_codes"); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_request(std::string(json_content)); + return result; +} + +string NetworkApi::set_buy_open_limit_up_codes(list<string> codes) +{ + + rapidjson::StringBuffer codesbuf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writercodes(codesbuf); + writercodes.StartArray(); + for (list<string>::iterator e = codes.begin(); e != codes.end(); ++e) { + writercodes.String((*e).c_str()); + } + writercodes.EndArray(); + const char* codes_json_content = codesbuf.GetString(); + + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("set_buy_open_limit_up_codes"); + writer.Key("codes"); + writer.String(codes_json_content); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_request(std::string(json_content)); + return result; +} + + + string NetworkApi::list_delegate_records(CString updateTime,bool canCancel) { rapidjson::StringBuffer buf; @@ -1459,3 +1579,79 @@ return cancel_order(code, L"",L""); } + + +string NetworkApi::get_same_block_limit_up_codes_count(list<string> codes) +{ + rapidjson::StringBuffer codesbuf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writercodes(codesbuf); + writercodes.StartArray(); + for (list<string>::iterator e = codes.begin(); e != codes.end(); ++e) { + writercodes.String((*e).c_str()); + } + writercodes.EndArray(); + const char* codes_json_content = codesbuf.GetString(); + + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("get_same_block_limit_up_codes_count"); + writer.Key("codes"); + writer.String(codes_json_content); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_trade_request(std::string(json_content)); + //string result = StringUtil::cstring2String(L"{\"code\":0,\"data\":[{\"code\":\"002729\",\"code_name\":\"好利科技\"}, {\"code\":\"300564\",\"code_name\":\"筑博设计\"}]}"); + return result; +} + +string NetworkApi::get_code_deal_queue(string code, int min_money) +{ + + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("get_deal_queue"); + writer.Key("code"); + writer.String(code.c_str()); + writer.Key("min_money"); + writer.Int(min_money); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_trade_request(std::string(json_content)); + return result; +} + +string NetworkApi::test_place_order(string code) +{ + rapidjson::StringBuffer buf; + rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(buf); + writer.StartObject(); + writer.Key("type"); + writer.String("common"); + writer.Key("data"); + writer.StartObject(); + writer.Key("ctype"); + writer.String("test_place_order"); + writer.Key("code"); + writer.String(code.c_str()); + writer.EndObject(); + writer.EndObject(); + const char* json_content = buf.GetString(); + string result = base_trade_request(std::string(json_content)); + return result; +} + -- Gitblit v1.8.0