V2MerchantBusiHeadConfigRequestDemo.cs 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. using System;
  2. using System.Collections.Generic;
  3. using BasePaySdk;
  4. using BasePaySdk.Request;
  5. using Newtonsoft.Json;
  6. using Newtonsoft.Json.Linq;
  7. namespace BasePayDemo
  8. {
  9. /**
  10. * 开通下级商户权限配置接口 - 示例
  11. *
  12. * @author sdk-generator
  13. * @Description
  14. */
  15. public class V2MerchantBusiHeadConfigRequestDemo
  16. {
  17. public static void V2MerchantBusiHeadConfigRequestDemoTest()
  18. {
  19. // 1. 数据初始化
  20. InitMerConfig.init();
  21. // 2.组装请求参数
  22. V2MerchantBusiHeadConfigRequest request = new V2MerchantBusiHeadConfigRequest();
  23. // 请求流水号
  24. request.setReqSeqId(DateTime.Now.ToString("yyy-MM-dd HH.mm.ss.fff"));
  25. // 请求时间
  26. request.setReqDate(DateTime.Now.ToString("yyyyMMdd"));
  27. // 汇付客户Id
  28. request.setHuifuId("6666000108854952");
  29. // 产品编号
  30. // request.setProductId("test");
  31. // 直属渠道号
  32. // request.setUpperHuifuId("test");
  33. // 设置非必填字段
  34. Dictionary<string, object> extendInfoMap = getExtendInfos();
  35. request.setExtendInfo(extendInfoMap);
  36. try {
  37. // 3. 发起API调用
  38. // 调用接口,使用默认商户配置时可省略配置key
  39. Dictionary<string, Object> result = null;
  40. result = BasePayClient.postRequest(request,null);
  41. // 使用指定配置调用接口
  42. // result = BasePayClient.postRequest(request,null,"merchantKey2");
  43. Console.WriteLine(JsonConvert.SerializeObject(result));
  44. }
  45. catch (Exception ex) {
  46. Console.WriteLine(ex);
  47. }
  48. }
  49. /**
  50. * 非必填字段
  51. * @return
  52. */
  53. private static Dictionary<string, object> getExtendInfos() {
  54. // 设置非必填字段
  55. Dictionary<string, object> extendInfoMap = new Dictionary<string, object>();
  56. // 支付宝配置对象
  57. // extendInfoMap.Add("ali_conf_list", getSubmerAliConfList());
  58. // 微信配置对象
  59. // extendInfoMap.Add("wx_conf_list", getSubmerWxConfList());
  60. // 银联二维码配置对象
  61. // extendInfoMap.Add("union_conf_list", getSubmerUnionConfList());
  62. // 银联卡配置对象
  63. // extendInfoMap.Add("bank_card_config", getSubmerBankCardConfig());
  64. // 分账配置对象
  65. // extendInfoMap.Add("split_config", getSubmerSplitConfig());
  66. // 微信直连配置对象
  67. // extendInfoMap.Add("wx_zl_conf_list", getSubmerWxZlConfList());
  68. // 支付宝直连配置对象
  69. // extendInfoMap.Add("ali_zl_conf", getSubmerAliZlConf());
  70. // 线上配置对象
  71. // extendInfoMap.Add("online_fee_conf_list", getSubmerOnlineFeeConfList());
  72. // 余额支付配置对象
  73. // extendInfoMap.Add("balance_pay_config", getSubmerBalancePayConfig());
  74. // 补贴支付配置对象
  75. // extendInfoMap.Add("combine_pay_config", getSubmerCombinePayConfig());
  76. // 银行大额转账配置对象
  77. // extendInfoMap.Add("bank_big_amt_pay_config", getSubmerBankBigAmtPayConfig());
  78. // 全域资金管理配置对象(华通银行)
  79. // extendInfoMap.Add("out_order_funds_config", getSubmerOutOrderFundsConfig());
  80. // 全域资金管理配置(新网银行)
  81. // extendInfoMap.Add("out_order_funds_new_net_config", getOutOrderFundsNewNetConfig());
  82. // 结算配置对象
  83. // extendInfoMap.Add("settle_config_list", getSubmerSettleConfigList());
  84. // 取现配置对象
  85. // extendInfoMap.Add("cash_config_list", getSubmerCashConfigList());
  86. // 外扣配置对象
  87. // extendInfoMap.Add("out_fee_config", getSubmerOutFeeConfig());
  88. // 允许开通支付宝预授权
  89. // extendInfoMap.Add("alipay_pre_auth_flag", "");
  90. // 允许开通微信预授权
  91. // extendInfoMap.Add("wechatpay_pre_auth_flag", "");
  92. // 允许开通商户定时结算
  93. // extendInfoMap.Add("mer_timing_settle_flag", "");
  94. // 允许开通商户优先结算
  95. // extendInfoMap.Add("mer_prior_settle_flag", "");
  96. // 允许使用上级商户经营信息
  97. // extendInfoMap.Add("use_upper_mer_auth_flag", "");
  98. // 允许使用上级商户号发起AT交易
  99. // extendInfoMap.Add("use_upper_mer_at_trans_flag", "");
  100. // 大额支付配置
  101. // extendInfoMap.Add("large_amt_pay_config_list", getLargeAmtPayConfigList());
  102. // 全域资金管理配置(苏商)
  103. // extendInfoMap.Add("out_order_funds_su_shang_config", getOutOrderFundsSuShangConfig());
  104. return extendInfoMap;
  105. }
  106. private static string getSubmerAliConfList() {
  107. Dictionary<string, object> obj = new Dictionary<string, object>();
  108. // 支付场景
  109. // obj.Add("pay_scene", "test");
  110. // 手续费
  111. // obj.Add("fee_rate", "test");
  112. // 允许开通该业务
  113. // obj.Add("open_flag", "test");
  114. JArray objList = new JArray();
  115. objList.Add(JToken.FromObject(obj));
  116. return JsonConvert.SerializeObject(objList);
  117. }
  118. private static string getSubmerWxConfList() {
  119. Dictionary<string, object> obj = new Dictionary<string, object>();
  120. // 支付场景
  121. // obj.Add("pay_scene", "test");
  122. // 手续费
  123. // obj.Add("fee_rate", "test");
  124. // 允许开通该场景业务
  125. // obj.Add("open_flag", "test");
  126. JArray objList = new JArray();
  127. objList.Add(JToken.FromObject(obj));
  128. return JsonConvert.SerializeObject(objList);
  129. }
  130. private static string getSubmerUnionConfList() {
  131. Dictionary<string, object> obj = new Dictionary<string, object>();
  132. // 借记卡手续费1000以上(%)
  133. // obj.Add("debit_fee_rate_up", "test");
  134. // 银联二维码业务贷记卡手续费1000以上(%)
  135. // obj.Add("credit_fee_rate_up", "test");
  136. // 借记卡手续费1000以下(%)
  137. // obj.Add("debit_fee_rate_down", "test");
  138. // 银联二维码业务贷记卡手续费1000以下(%)
  139. // obj.Add("credit_fee_rate_down", "test");
  140. // 允许开通银联二维码业务
  141. // obj.Add("open_flag", "test");
  142. // 银联业务手续费类型
  143. // obj.Add("charge_cate_code", "");
  144. // 借记卡封顶1000以上(元)
  145. // obj.Add("debit_fee_limit_up", "");
  146. // 借记卡封顶1000以下(元)
  147. // obj.Add("debit_fee_limit_down", "");
  148. JArray objList = new JArray();
  149. objList.Add(JToken.FromObject(obj));
  150. return JsonConvert.SerializeObject(objList);
  151. }
  152. private static string getSubmerBankCardConfig() {
  153. Dictionary<string, object> obj = new Dictionary<string, object>();
  154. // 借记卡手续费(%)
  155. // obj.Add("debit_fee_rate", "test");
  156. // 贷记卡手续费(%)
  157. // obj.Add("credit_fee_limit", "test");
  158. // 允许开通银行卡业务
  159. // obj.Add("open_flag", "test");
  160. // 借记卡封顶值
  161. // obj.Add("debit_fee_limit", "");
  162. // 银联手机闪付借记卡手续费1000以上(%)
  163. // obj.Add("cloud_debit_fee_rate_up", "");
  164. // 银联手机闪付借记卡封顶1000以上(元)
  165. // obj.Add("cloud_debit_fee_limit_up", "");
  166. // 银联手机闪付贷记卡手续费1000以上(%)
  167. // obj.Add("cloud_credit_fee_rate_up", "");
  168. // 银联手机闪付借记卡手续费1000以下(%)
  169. // obj.Add("cloud_debit_fee_rate_down", "");
  170. // 银联手机闪付借记卡封顶1000以下(元)
  171. // obj.Add("cloud_debit_fee_limit_down", "");
  172. // 银联手机闪付贷记卡手续费1000以下(%)
  173. // obj.Add("cloud_credit_fee_rate_down", "");
  174. return JsonConvert.SerializeObject(obj);
  175. }
  176. private static string getSubmerSplitConfig() {
  177. Dictionary<string, object> obj = new Dictionary<string, object>();
  178. // 手续费(%)
  179. // obj.Add("fee_rate", "test");
  180. // 允许开通分账业务
  181. // obj.Add("open_flag", "test");
  182. // 固定手续费(元)
  183. // obj.Add("fee_fix_amt", "");
  184. return JsonConvert.SerializeObject(obj);
  185. }
  186. private static string getSubmerWxZlConfList() {
  187. Dictionary<string, object> obj = new Dictionary<string, object>();
  188. // 支付场景
  189. // obj.Add("pay_scene", "test");
  190. // 手续费(%)
  191. // obj.Add("fee_rate", "test");
  192. // 允许开通微信直连业务
  193. // obj.Add("open_flag", "test");
  194. JArray objList = new JArray();
  195. objList.Add(JToken.FromObject(obj));
  196. return JsonConvert.SerializeObject(objList);
  197. }
  198. private static string getSubmerAliZlConf() {
  199. Dictionary<string, object> obj = new Dictionary<string, object>();
  200. // 手续费(%)
  201. // obj.Add("fee_rate", "test");
  202. // 允许开通支付宝直连业务
  203. // obj.Add("open_flag", "test");
  204. return JsonConvert.SerializeObject(obj);
  205. }
  206. private static string getSubmerOnlineFeeConfList() {
  207. Dictionary<string, object> obj = new Dictionary<string, object>();
  208. // 业务类型
  209. // obj.Add("bus_type", "test");
  210. // 借贷记标识
  211. // obj.Add("dc_flag", "test");
  212. // 固定手续费(元)
  213. // obj.Add("fee_fix_amt", "test");
  214. // 银行号
  215. // obj.Add("bank_code", "test");
  216. // 手续费(%)
  217. // obj.Add("fee_rate", "test");
  218. // 允许开通线上支付业务
  219. // obj.Add("open_flag", "test");
  220. JArray objList = new JArray();
  221. objList.Add(JToken.FromObject(obj));
  222. return JsonConvert.SerializeObject(objList);
  223. }
  224. private static string getSubmerBalancePayConfig() {
  225. Dictionary<string, object> obj = new Dictionary<string, object>();
  226. // 手续费(%)
  227. // obj.Add("fee_rate", "test");
  228. // 固定手续费(元)
  229. // obj.Add("fee_fix_amt", "test");
  230. // 允许开通余额支付业务
  231. // obj.Add("open_flag", "test");
  232. return JsonConvert.SerializeObject(obj);
  233. }
  234. private static string getSubmerCombinePayConfig() {
  235. Dictionary<string, object> obj = new Dictionary<string, object>();
  236. // 手续费(%)
  237. // obj.Add("fee_rate", "test");
  238. // 固定手续费(元)
  239. // obj.Add("fee_fix_amt", "test");
  240. // 允许开通补贴支付业务
  241. // obj.Add("open_flag", "test");
  242. return JsonConvert.SerializeObject(obj);
  243. }
  244. private static string getSubmerBankBigAmtPayConfig() {
  245. Dictionary<string, object> obj = new Dictionary<string, object>();
  246. // 手续费(%)
  247. // obj.Add("fee_rate", "test");
  248. // 固定手续费(元)
  249. // obj.Add("fee_fix_amt", "test");
  250. // 允许开通大额转账业务
  251. // obj.Add("open_flag", "test");
  252. return JsonConvert.SerializeObject(obj);
  253. }
  254. private static string getSubmerOutOrderFundsConfig() {
  255. Dictionary<string, object> obj = new Dictionary<string, object>();
  256. // 手续费(%)
  257. // obj.Add("fee_rate", "test");
  258. // 开户手续费(元)
  259. // obj.Add("open_fee_fix_amt", "test");
  260. // 保底手续费(元)
  261. // obj.Add("fee_fix_amt", "test");
  262. // 允许开通全域资金业务(华通)
  263. // obj.Add("open_flag", "test");
  264. return JsonConvert.SerializeObject(obj);
  265. }
  266. private static string getOutOrderFundsNewNetConfig() {
  267. Dictionary<string, object> obj = new Dictionary<string, object>();
  268. // 手续费(%)
  269. // obj.Add("fee_rate", "test");
  270. // 保底手续费(元)
  271. // obj.Add("fee_min_amt", "test");
  272. // 对公固定手续费(元)
  273. // obj.Add("public_fee_fix_amt", "test");
  274. // 对私固定手续费(元)
  275. // obj.Add("private_fee_fix_amt", "test");
  276. // 允许开通全域资金业务(新网)
  277. // obj.Add("open_flag", "test");
  278. return JsonConvert.SerializeObject(obj);
  279. }
  280. private static string getSubmerSettleConfigList() {
  281. Dictionary<string, object> obj = new Dictionary<string, object>();
  282. // 业务类型
  283. // obj.Add("bus_type", "test");
  284. // 手续费(%)
  285. // obj.Add("fee_rate", "test");
  286. // 固定手续费(元)
  287. // obj.Add("fee_fix_amt", "test");
  288. // 允许开通结算配置
  289. // obj.Add("open_flag", "test");
  290. JArray objList = new JArray();
  291. objList.Add(JToken.FromObject(obj));
  292. return JsonConvert.SerializeObject(objList);
  293. }
  294. private static string getSubmerCashConfigList() {
  295. Dictionary<string, object> obj = new Dictionary<string, object>();
  296. // 业务类型
  297. // obj.Add("bus_type", "test");
  298. // 手续费(%)
  299. // obj.Add("fee_rate", "test");
  300. // 固定手续费(元)
  301. // obj.Add("fee_fix_amt", "test");
  302. // 允许开通取现配置
  303. // obj.Add("open_flag", "test");
  304. JArray objList = new JArray();
  305. objList.Add(JToken.FromObject(obj));
  306. return JsonConvert.SerializeObject(objList);
  307. }
  308. private static string getSubmerOutFeeConfig() {
  309. Dictionary<string, object> obj = new Dictionary<string, object>();
  310. // 支持结算手续费外扣
  311. // obj.Add("settle_out_fee_flag", "test");
  312. // 支持交易手续费外扣
  313. // obj.Add("trans_fee_out_flag", "test");
  314. // 支持取现手续费外扣
  315. // obj.Add("cash_out_fee_flag", "test");
  316. return JsonConvert.SerializeObject(obj);
  317. }
  318. private static string getLargeAmtPayConfigList() {
  319. Dictionary<string, object> obj = new Dictionary<string, object>();
  320. // 手续费(%)
  321. // obj.Add("fee_rate", "test");
  322. // 固定手续费(元)
  323. // obj.Add("fee_fix_amt", "test");
  324. // 允许开通大额转账业务
  325. // obj.Add("open_flag", "test");
  326. // 大额支付业务模式
  327. // obj.Add("business_model", "test");
  328. // 允许用户入账
  329. // obj.Add("allow_user_deposit_flag", "");
  330. // 银行卡绑定支付权限
  331. // obj.Add("mer_same_card_recharge_flag", "");
  332. return JsonConvert.SerializeObject(obj);
  333. }
  334. private static string getOutOrderFundsSuShangConfig() {
  335. Dictionary<string, object> obj = new Dictionary<string, object>();
  336. // 手续费(%)
  337. // obj.Add("fee_rate", "test");
  338. // 保底手续费(元)
  339. // obj.Add("fee_min_amt", "test");
  340. // 对公固定手续费(元)
  341. // obj.Add("public_fee_fix_amt", "test");
  342. // 对私固定手续费(元)
  343. // obj.Add("private_fee_fix_amt", "test");
  344. // 允许开通全域资金业务(苏商)
  345. // obj.Add("open_flag", "test");
  346. return JsonConvert.SerializeObject(obj);
  347. }
  348. }
  349. }