HuiPay.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507
  1. <?php
  2. namespace app\traits;
  3. use AdapayMerchantSdk\MerchantApp;
  4. use AdapayMerchantSdk\MerchantConf;
  5. use AdapayMerchantSdk\MerchantUser;
  6. use AdapayMerchantSdk\MerchantProfile;
  7. use AdaPaySdk\AdapayTools;
  8. use AdaPaySdk\CorpMember;
  9. use AdaPaySdk\Drawcash;
  10. use AdaPaySdk\Member;
  11. use AdaPaySdk\Payment;
  12. use AdaPaySdk\PaymentConfirm;
  13. use AdaPaySdk\PaymentReverse;
  14. use AdaPaySdk\Refund;
  15. use AdaPaySdk\SettleAccount;
  16. use app\BaseController;
  17. use think\facade\Db;
  18. use think\facade\Log;
  19. use think\model\relation\HasMany;
  20. trait HuiPay
  21. {
  22. /**
  23. * @param $uid
  24. * 配置文件
  25. */
  26. public function config($name)
  27. {
  28. ini_set('date.timezone','Asia/Shanghai');
  29. if(!defined('SDK_BASE')){
  30. define("SDK_BASE", dirname(__FILE__));
  31. define("SDK_VERSION", "v1.2.1");
  32. define("GATE_WAY_URL", "https://%s.adapay.tech");
  33. define("DEBUG", true);
  34. define("LOG", dirname(SDK_BASE)."/../runtime/huifuLog/prod");
  35. define("ENV", "prod");
  36. \AdaPay\AdaPay::init(dirname(__FILE__). '/../../extend/AdaPay/config/'.$name.'.json', "live", false);
  37. }
  38. }
  39. /**
  40. * @param $uid
  41. * 配置文件
  42. */
  43. public function configs($name)
  44. {
  45. ini_set('date.timezone','Asia/Shanghai');
  46. if(!defined('SDK_BASE')){
  47. define("SDK_BASE", dirname(__FILE__));
  48. define("SDK_VERSION", "v1.2.1");
  49. define("GATE_WAY_URL", "https://%s.adapay.tech");
  50. define("DEBUG", true);
  51. define("LOG", dirname(SDK_BASE)."/../runtime/huifuLog/prod");
  52. define("ENV", "prod");
  53. \AdaPay\AdaPay::init(dirname(__FILE__). '/../../extend/AdaPay/config/'.$name.'.json', "live", false);
  54. }
  55. }
  56. /**
  57. * @param $merchant_params
  58. * @return array
  59. * 商户进件
  60. */
  61. public function incoming_parts($merchant_params,$name)
  62. {
  63. $this->config($name);
  64. $merchant=new MerchantUser();
  65. $merchant->create($merchant_params);
  66. # 返回进件结果
  67. $merchant->isError();
  68. return $merchant->result;
  69. }
  70. /**
  71. * @param $merchant_params
  72. * @return array
  73. * 进件查询
  74. */
  75. public function incoming_parts_select($merchant_params,$name)
  76. {
  77. $this->config($name);
  78. $merchant = new MerchantUser();
  79. $merchant->query($merchant_params);
  80. $merchant->isError();
  81. return $merchant->result;
  82. }
  83. /**
  84. * @param $merchant_params
  85. * @return array
  86. * 商户入驻查询
  87. */
  88. public function Merchant_settlement_select($merchant_params,$name)
  89. {
  90. $this->config($name);
  91. $merchant = new MerchantConf();
  92. $merchant->query($merchant_params);
  93. # 返回入驻查询结果
  94. $merchant->isError();
  95. return $merchant->result;
  96. }
  97. /**
  98. * @param $merchant_params
  99. * @return array
  100. * 商户入驻查询
  101. */
  102. public function Merchant_settlement($merchant_params,$name)
  103. {
  104. $this->config($name);
  105. $merchant = new MerchantConf();
  106. $merchant->create($merchant_params);
  107. # 返回入驻结果
  108. $merchant->isError();
  109. return $merchant->result;
  110. }
  111. /**
  112. * @param $merchant_params
  113. * @return array
  114. * 商户入驻修改
  115. */
  116. public function modify($merchant_params)
  117. {
  118. $this->config('config');
  119. $merchant = new MerchantConf();
  120. $merchant->modify($merchant_params);
  121. # 返回修改结果
  122. $merchant->isError();
  123. return $merchant->result;
  124. }
  125. /**
  126. * @param $mer_upload_params
  127. * @return array
  128. * 提交照片
  129. */
  130. public function merProfilePicture($mer_upload_params,$name)
  131. {
  132. $this->config($name);
  133. $merchant = new MerchantProfile();
  134. $merchant->merProfilePicture($mer_upload_params);
  135. # 返回上传结果
  136. $merchant->isError();
  137. return $merchant->result;
  138. }
  139. /**
  140. * @param $mer_upload_params
  141. * @return array
  142. * 提交审核
  143. */
  144. public function merProfileForAudit($mer_upload_params,$name)
  145. {
  146. $this->config($name);
  147. $merchant = new MerchantProfile();
  148. $merchant->merProfileForAudit($mer_upload_params);
  149. # 返回修改结果
  150. $merchant->isError();
  151. return $merchant->result;
  152. }
  153. /**
  154. * @param $mer_upload_params
  155. * @return array
  156. * 审核状态
  157. */
  158. public function merProfileAuditStatus($mer_upload_params)
  159. {
  160. $this->config('config');
  161. $merchant = new MerchantProfile();
  162. $merchant->merProfileAuditStatus($mer_upload_params);
  163. # 返回修改结果
  164. $merchant->isError();
  165. return $merchant->result;
  166. }
  167. /**
  168. * @param $payment
  169. * @return array
  170. * 创建app
  171. */
  172. public function create_app_traits($payment_params)
  173. {
  174. $payment=new MerchantApp();
  175. $payment->create($payment_params);
  176. # 返回创建结果
  177. $payment->isError();
  178. return $payment->result;
  179. }
  180. /**
  181. * @param $payment
  182. * @return array
  183. * 查询app
  184. */
  185. public function select_app_traits($payment_params)
  186. {
  187. $payment=new MerchantApp();
  188. $payment->query($payment_params);
  189. # 返回查询结果
  190. $payment->isError();
  191. return $payment->result;
  192. }
  193. /**
  194. * @param $payment
  195. * @return array
  196. * 创建支付对象
  197. */
  198. public function Payment_create_traits($payment_params,$type,$key)
  199. {
  200. log::info($key);
  201. if ($key == 'api_live_b0a687ec-5450-4ada-a0e4-65bac0f46871'){
  202. $this->configs('tdyl');
  203. }else{
  204. $this->configs('merchantConfig');
  205. }
  206. $payment=new Payment();
  207. $payment->create($payment_params,$key);
  208. # 返回创建结果
  209. $payment->isError();
  210. return $payment->result;
  211. }
  212. public function Payment_create_traits_a($payment_params,$type,$key)
  213. {
  214. log::info($key);
  215. $this->configs('merchantConfig');
  216. $payment=new Payment();
  217. $payment->create($payment_params,$key);
  218. # 返回创建结果
  219. $payment->isError();
  220. return $payment->result;
  221. }
  222. public function Payment_create_traits_b($payment_params,$type,$key)
  223. {
  224. log::info($key);
  225. $this->configs('tdyl');
  226. $payment=new Payment();
  227. $payment->create_b($payment_params,$key);
  228. # 返回创建结果
  229. $payment->isError();
  230. return $payment->result;
  231. }
  232. /**
  233. * @param $paymnet_params
  234. * @return array
  235. * 查询支付对象
  236. */
  237. public function Payment_query_traits($paymnet_params)
  238. {
  239. $payment=new Payment();
  240. $payment->query($paymnet_params);
  241. # 返回查询结果
  242. $payment->isError();
  243. return $payment->result;
  244. }
  245. /**
  246. * @param $paymnet_params
  247. * @return array
  248. * 关闭支付对象
  249. */
  250. public function Payment_close_traits($paymnet_params)
  251. {
  252. $payment=new Payment();
  253. $payment->close($paymnet_params);
  254. # 返回查询结果
  255. $payment->isError();
  256. return $payment->result;
  257. }
  258. /**
  259. * @param $paymnet_params
  260. * @return array
  261. * 支付撤销
  262. */
  263. public function payment_Reverse($payment_params,$type,$pay_wx,$key)
  264. {
  265. if($type==1){//支付宝
  266. $this->config('merchantConfig');
  267. }else{//微信
  268. if ($pay_wx == 2){
  269. $this->config('merchantConfigtdba');
  270. }elseif ($pay_wx == 3){
  271. $this->config('tdyl');
  272. }
  273. }
  274. $payment = new PaymentReverse();
  275. # 发起支付撤销
  276. $payment->create($payment_params,$key);
  277. # 返回查询结果
  278. $payment->isError();
  279. return $payment->result;
  280. }
  281. /**
  282. * @param $paymnet_params
  283. * @return array
  284. * 退款
  285. */
  286. public function Payment_refund_traits($paymnet_params,$key)
  287. {
  288. $this->config('merchantConfig');
  289. $Refund=new Refund();
  290. $Refund->create($paymnet_params,$key);
  291. # 返回查询结果
  292. $Refund->isError();
  293. return $Refund->result;
  294. }
  295. /**
  296. * @param $paymnet_params
  297. * @return array
  298. * 退款查询
  299. */
  300. public function Payment_refund_query_traits($paymnet_params)
  301. {
  302. // dump($paymnet_params);die;
  303. $Refund=new Refund();
  304. $Refund->query($paymnet_params);
  305. # 返回查询结果
  306. $Refund->isError();
  307. return $Refund->result;
  308. }
  309. /**
  310. * @param $paymnet_params
  311. * @return array
  312. * 创建个人用户
  313. */
  314. public function crate_merber_personal_traits($paymnet_params,$type,$key)
  315. {
  316. if ($type == 3){
  317. $this->config('tdyl');
  318. }else{
  319. $this->config('merchantConfig');
  320. }
  321. $merber=new Member() ;
  322. $merber->create($paymnet_params,$key);
  323. # 返回查询结果
  324. $merber->isError();
  325. return $merber->result;
  326. }
  327. /**
  328. * @param $paymnet_params
  329. * @return array
  330. * 创建结算账户
  331. */
  332. public function create_settleAccounttraits($paymnet_params,$type,$key)
  333. {
  334. if ($type == 3){
  335. $this->config('tdyl');
  336. }else{
  337. $this->config('merchantConfig');
  338. }
  339. $merber=new SettleAccount() ;
  340. $merber->create($paymnet_params,$key);
  341. # 返回查询结果
  342. $merber->isError();
  343. return $merber->result;
  344. }
  345. /**
  346. * @param $paymnet_params
  347. * @return array
  348. * 查询结算账户
  349. */
  350. public function query_config_settleAccount_traits($paymnet_params)
  351. {
  352. $merber=new SettleAccount() ;
  353. $merber->query($paymnet_params);
  354. # 返回查询结果
  355. $merber->isError();
  356. return $merber->result;
  357. }
  358. /**
  359. * @param $paymnet_params
  360. * @return array
  361. * 修改结算账户
  362. */
  363. public function update_config_settleAccount_traits($paymnet_params)
  364. {
  365. $merber=new SettleAccount() ;
  366. $merber->update($paymnet_params);
  367. # 返回查询结果
  368. $merber->isError();
  369. return $merber->result;
  370. }
  371. /**
  372. * @param $paymnet_params
  373. * @return array
  374. * 删除结算账户
  375. */
  376. public function delete_config_settleAccount_traits($paymnet_params)
  377. {
  378. $merber=new SettleAccount() ;
  379. $merber->delete($paymnet_params);
  380. # 返回查询结果
  381. $merber->isError();
  382. return $merber->result;
  383. }
  384. /**
  385. * @param $paymnet_params
  386. * @return array
  387. * 查询个人用户
  388. */
  389. public function query_merber_personal_traits($paymnet_params)
  390. {
  391. $merber=new Member() ;
  392. $merber->query($paymnet_params);
  393. # 返回查询结果
  394. $merber->isError();
  395. return $merber->result;
  396. }
  397. /**
  398. * @param $paymnet_params
  399. * @return array
  400. * 创建企业用户
  401. */
  402. public function crate_merber_enterprise_traits($paymnet_params,$type,$key)
  403. {
  404. if($type==1){//支付宝
  405. $this->config('merchantConfig');
  406. }elseif ($type==2){//微信
  407. $this->config('merchantConfigtdba');
  408. }elseif ($type==3){//天地易联
  409. $this->config('tdyl');
  410. }
  411. $merber=new CorpMember() ;
  412. $merber->create($paymnet_params,$key);
  413. # 返回查询结果
  414. $merber->isError();
  415. return $merber->result;
  416. }
  417. /**
  418. * @param $paymnet_params
  419. * @return array
  420. * 查询企业用户
  421. */
  422. public function query_merber_enterprise_traits($paymnet_params)
  423. {
  424. $merber=new CorpMember() ;
  425. $merber->query($paymnet_params);
  426. # 返回查询结果
  427. $merber->isError();
  428. return $merber->result;
  429. }
  430. public function download($date){
  431. $bill = new AdapayTools();
  432. # 对账单下载
  433. $bill->download($date);
  434. # 返回查询结果
  435. $bill->isError();
  436. return $bill->result;
  437. }
  438. /**
  439. * @param $paymnet_params
  440. * @return array
  441. * 钱包提现
  442. */
  443. public function cash_withdrawal_traits($paymnet_params)
  444. {
  445. $merber=new Drawcash() ;
  446. $merber->create($paymnet_params);
  447. # 返回查询结果
  448. $merber->isError();
  449. return $merber->result;
  450. }
  451. /**
  452. * @param $paymnet_params
  453. * @return array
  454. * 创建支付确认对象
  455. */
  456. public function payment_confirm_create_traits($paymnet_params)
  457. {
  458. $merber=new PaymentConfirm() ;
  459. $merber->create($paymnet_params);
  460. # 返回查询结果
  461. $merber->isError();
  462. return $merber->result;
  463. }
  464. /**
  465. * @param $paymnet_params
  466. * @return array
  467. * 查询支付确认对象
  468. */
  469. public function payment_confirm_query_traits($paymnet_params)
  470. {
  471. $merber=new PaymentConfirm() ;
  472. $merber->query($paymnet_params);
  473. # 返回查询结果
  474. $merber->isError();
  475. return $merber->result;
  476. }
  477. }