GoodsBusiness.php 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436
  1. <?php
  2. namespace app\business;
  3. use Illuminate\Support\Arr;
  4. use support\Db;
  5. use support\Log;
  6. use support\Redis;
  7. use yzh52521\EasyHttp\Http;
  8. class GoodsBusiness
  9. {
  10. /**购买慈善项目
  11. * @return void
  12. */
  13. static public function buyType1(array $param)
  14. {
  15. try {
  16. $payorderId = PayorderBusiness::orderAdd($param);
  17. $payorder = Db::table('wa_payorder')->where('id', $payorderId)->first();
  18. // if ($payorder->pay_type == 1) {
  19. // throw new \Exception('通道未开通!');
  20. // $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  21. // Log::channel('payment')->info('拉丁支付', $data);
  22. // if (Arr::get($data, 'data.code') != 200) {
  23. // throw new \Exception('通道未开通!');
  24. // }
  25. // $arr = [
  26. // 'type' => 2,
  27. // 'url' => Arr::get($data, 'data.attrData.payUrl'),
  28. // 'payOrderId' => ''
  29. // ];
  30. // } elseif ($payorder->pay_type == 2) {
  31. // $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  32. // Log::channel('payment')->info('桥头支付支付', $data);
  33. // if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  34. // throw new \Exception('调用支付失败!');
  35. // }
  36. // $arr = [
  37. // 'type' => 2,
  38. // 'url' => Arr::get($data, 'data.payParams.payUrl'),
  39. // 'payOrderId' => ''
  40. // ];
  41. // }elseif ($payorder->pay_type == 3) {
  42. // $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  43. // Log::channel('payment')->info('林北支付支付', $data);
  44. // if (Arr::get($data, 'data.code') != 1000) {
  45. // throw new \Exception('通道未开通!');
  46. // }
  47. // $arr = [
  48. // 'type' => 2,
  49. // 'url' => Arr::get($data, 'data.data.message.url'),
  50. // 'payOrderId' => ''
  51. // ];
  52. // }elseif ($payorder->pay_type == 4){
  53. // $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  54. // Log::channel('payment')->info('西门支付', $data);
  55. // if (Arr::get($data, 'data.code') != 200) {
  56. // throw new \Exception('通道未开通!');
  57. // }
  58. // $arr = [
  59. // 'type' => 2,
  60. // 'url' => Arr::get($data, 'data.attrData.payUrl'),
  61. // 'payOrderId' => ''
  62. // ];
  63. // }elseif ($payorder->pay_type == 5) {
  64. // $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  65. // Log::channel('payment')->info('鸿运支付支付', $data);
  66. // if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  67. // throw new \Exception('调用支付失败!');
  68. // }
  69. // $arr = [
  70. // 'type' => 2,
  71. // 'url' => Arr::get($data, 'data.payParams.payUrl'),
  72. // 'payOrderId' => ''
  73. // ];
  74. // } elseif ($payorder->pay_type == 0) {
  75. // $arr = [
  76. // 'type' => 3,
  77. // 'url' => '',
  78. // 'payOrderId' => $payorder->order_no,
  79. // ];
  80. // } else {
  81. // $arr = [
  82. // 'type' => 1,
  83. // 'url' => '',
  84. // 'payOrderId' => ''
  85. // ];
  86. // throw new \Exception('通道未开通!');
  87. // }
  88. $arr = [
  89. 'type' => 2,
  90. 'url' => Arr::get($param, 'url', ''),
  91. 'payOrderId' => ''
  92. ];
  93. PayorderBusiness::payorderSave(collect($payorder)->toArray());
  94. } catch (\Throwable $exception) {
  95. throw new \Exception($exception->getMessage());
  96. }
  97. return $arr;
  98. }
  99. /** 银行卡
  100. * @param array $param
  101. * @return void
  102. */
  103. static public function usersocialcark(array $param)
  104. {
  105. try {
  106. if (!empty($param['data_array'])) {
  107. foreach ($param['data_array'] as $k => $v) {
  108. if (!empty($param['user_data']['money']) && !empty($v['money']) && $param['user_data']['money'] > $v['money']) {
  109. $social_carkId = Db::table('wa_user_social_cark')->insertGetId([
  110. 'type' => 1,
  111. 'user_id' => $param['user_data']['id'],
  112. 'name' => $v['name'],
  113. 'card_num' => $v['card_num'],
  114. 'money' => $v['money'],
  115. 'affiliated_bank' => $v['affiliated_bank'],
  116. ]);
  117. StreamBusiness::delStream($param['user_data']['id'], $v['money'], streamType17, moldType1, moldTypefild1, $social_carkId);
  118. } else {
  119. throw new \Exception('还款失败!');
  120. }
  121. }
  122. } else {
  123. throw new \Exception('未数据提交!');
  124. }
  125. } catch (\Throwable $exception) {
  126. throw new \Exception($exception->getMessage());
  127. }
  128. return true;
  129. }
  130. /** 保价支付
  131. * @param array $param
  132. * @return void
  133. */
  134. static public function buyType2(array $param)
  135. {
  136. try {
  137. $payorderId = PayorderBusiness::CardorderAdd($param);
  138. $payorder = Db::table('wa_payorder')->where('id', $payorderId)->first();
  139. if ($payorder->pay_type == 1) {
  140. $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  141. Log::channel('payment')->info('拉丁支付', $data);
  142. if (Arr::get($data, 'data.code') != 200) {
  143. throw new \Exception('通道未开通!');
  144. }
  145. $arr = [
  146. 'type' => 2,
  147. 'url' => Arr::get($data, 'data.attrData.payUrl'),
  148. 'payOrderId' => ''
  149. ];
  150. // throw new \Exception('通道未开通!');
  151. } elseif ($payorder->pay_type == 2) {
  152. $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  153. Log::channel('payment')->info('桥头支付支付', $data);
  154. if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  155. throw new \Exception('调用支付失败!');
  156. }
  157. $arr = [
  158. 'type' => 2,
  159. 'url' => Arr::get($data, 'data.payParams.payUrl'),
  160. 'payOrderId' => ''
  161. ];
  162. }elseif ($payorder->pay_type == 3) {
  163. $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  164. Log::channel('payment')->info('林北支付支付', $data);
  165. if (Arr::get($data, 'data.code') != 1000) {
  166. throw new \Exception('通道未开通!');
  167. }
  168. $arr = [
  169. 'type' => 2,
  170. 'url' => Arr::get($data, 'data.data.message.url'),
  171. 'payOrderId' => ''
  172. ];
  173. }elseif ($payorder->pay_type == 4){
  174. $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  175. Log::channel('payment')->info('西门支付', $data);
  176. if (Arr::get($data, 'data.code') != 200) {
  177. throw new \Exception('通道未开通!');
  178. }
  179. $arr = [
  180. 'type' => 2,
  181. 'url' => Arr::get($data, 'data.attrData.payUrl'),
  182. 'payOrderId' => ''
  183. ];
  184. }elseif ($payorder->pay_type == 5) {
  185. $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  186. Log::channel('payment')->info('鸿运支付支付', $data);
  187. if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  188. throw new \Exception('调用支付失败!');
  189. }
  190. $arr = [
  191. 'type' => 2,
  192. 'url' => Arr::get($data, 'data.payParams.payUrl'),
  193. 'payOrderId' => ''
  194. ];
  195. }elseif ($payorder->pay_type == 0) {
  196. $arr = [
  197. 'type' => 3,
  198. 'url' => '',
  199. 'payOrderId' => $payorder->order_no,
  200. ];
  201. } else {
  202. $arr = [
  203. 'type' => 1,
  204. 'url' => '',
  205. 'payOrderId' => ''
  206. ];
  207. throw new \Exception('通道未开通!');
  208. }
  209. // $arr = [
  210. // 'type' => 2,
  211. // 'url' => Arr::get($param, 'url', ''),
  212. // 'payOrderId' => ''
  213. // ];
  214. // PayorderBusiness::payorderSave(collect($payorder)->toArray());
  215. } catch (\Throwable $exception) {
  216. throw new \Exception($exception->getMessage());
  217. }
  218. return $arr;
  219. }
  220. /** 预存支付
  221. * @param array $param
  222. * @return void
  223. */
  224. static public function buyType3(array $param)
  225. {
  226. try {
  227. $payorderId = PayorderBusiness::CardorderTwoAdd($param);
  228. $payorder = Db::table('wa_payorder')->where('id', $payorderId)->first();
  229. // if ($payorder->pay_type == 1) {
  230. // $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  231. // Log::channel('payment')->info('拉丁支付', $data);
  232. // if (Arr::get($data, 'data.code') != 200) {
  233. // throw new \Exception('通道未开通!');
  234. // }
  235. // $arr = [
  236. // 'type' => 2,
  237. // 'url' => Arr::get($data, 'data.attrData.payUrl'),
  238. // 'payOrderId' => ''
  239. // ];
  240. // } elseif ($payorder->pay_type == 2) {
  241. // $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  242. // Log::channel('payment')->info('桥头支付支付', $data);
  243. // if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  244. // throw new \Exception('调用支付失败!');
  245. // }
  246. // $arr = [
  247. // 'type' => 2,
  248. // 'url' => Arr::get($data, 'data.payParams.payUrl'),
  249. // 'payOrderId' => ''
  250. // ];
  251. // }elseif ($payorder->pay_type == 3) {
  252. // $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  253. // Log::channel('payment')->info('林北支付支付', $data);
  254. // if (Arr::get($data, 'data.code') != 1000) {
  255. // throw new \Exception('通道未开通!');
  256. // }
  257. // $arr = [
  258. // 'type' => 2,
  259. // 'url' => Arr::get($data, 'data.data.message.url'),
  260. // 'payOrderId' => ''
  261. // ];
  262. // }elseif ($payorder->pay_type == 4){
  263. // $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  264. // Log::channel('payment')->info('西门支付', $data);
  265. // if (Arr::get($data, 'data.code') != 200) {
  266. // throw new \Exception('通道未开通!');
  267. // }
  268. // $arr = [
  269. // 'type' => 2,
  270. // 'url' => Arr::get($data, 'data.attrData.payUrl'),
  271. // 'payOrderId' => ''
  272. // ];
  273. // }elseif ($payorder->pay_type == 5) {
  274. // $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  275. // Log::channel('payment')->info('鸿运支付支付', $data);
  276. // if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  277. // throw new \Exception('调用支付失败!');
  278. // }
  279. // $arr = [
  280. // 'type' => 2,
  281. // 'url' => Arr::get($data, 'data.payParams.payUrl'),
  282. // 'payOrderId' => ''
  283. // ];
  284. // }elseif ($payorder->pay_type == 0) {
  285. // $arr = [
  286. // 'type' => 3,
  287. // 'url' => '',
  288. // 'payOrderId' => $payorder->order_no,
  289. // ];
  290. // } else {
  291. // $arr = [
  292. // 'type' => 1,
  293. // 'url' => '',
  294. // 'payOrderId' => ''
  295. // ];
  296. // throw new \Exception('通道未开通!');
  297. // }
  298. $arr = [
  299. 'type' => 2,
  300. 'url' => Arr::get($param, 'url', ''),
  301. 'payOrderId' => ''
  302. ];
  303. PayorderBusiness::payorderSave(collect($payorder)->toArray());
  304. } catch (\Throwable $exception) {
  305. throw new \Exception($exception->getMessage());
  306. }
  307. return $arr;
  308. }
  309. /** 缴纳支付
  310. * @param array $param
  311. * @return void
  312. */
  313. static public function buyType4(array $param)
  314. {
  315. try {
  316. $payorderId = PayorderBusiness::CardorderThreeAdd($param);
  317. $payorder = Db::table('wa_payorder')->where('id', $payorderId)->first();
  318. if ($payorder->pay_type == 1) {
  319. $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  320. Log::channel('payment')->info('拉丁支付', $data);
  321. if (Arr::get($data, 'data.code') != 200) {
  322. throw new \Exception('通道未开通!');
  323. }
  324. $arr = [
  325. 'type' => 2,
  326. 'url' => Arr::get($data, 'data.attrData.payUrl'),
  327. 'payOrderId' => ''
  328. ];
  329. // throw new \Exception('通道未开通!');
  330. } elseif ($payorder->pay_type == 2) {
  331. $data = PayTwoBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  332. Log::channel('payment')->info('桥头支付支付', $data);
  333. if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  334. throw new \Exception('调用支付失败!');
  335. }
  336. $arr = [
  337. 'type' => 2,
  338. 'url' => Arr::get($data, 'data.payParams.payUrl'),
  339. 'payOrderId' => ''
  340. ];
  341. }elseif ($payorder->pay_type == 3) {
  342. $data = PayThreeBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  343. Log::channel('payment')->info('林北支付支付', $data);
  344. if (Arr::get($data, 'data.code') != 1000) {
  345. throw new \Exception('通道未开通!');
  346. }
  347. $arr = [
  348. 'type' => 2,
  349. 'url' => Arr::get($data, 'data.data.message.url'),
  350. 'payOrderId' => ''
  351. ];
  352. }elseif ($payorder->pay_type == 4){
  353. $data = PayorderBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  354. Log::channel('payment')->info('西门支付', $data);
  355. if (Arr::get($data, 'data.code') != 200) {
  356. throw new \Exception('通道未开通!');
  357. }
  358. $arr = [
  359. 'type' => 2,
  360. 'url' => Arr::get($data, 'data.attrData.payUrl'),
  361. 'payOrderId' => ''
  362. ];
  363. }elseif ($payorder->pay_type == 5) {
  364. $data = PayFiveBusiness::payment($payorder->order_no, $payorder->pay_characteristic, $payorder->money, Arr::get($param, 'url', ''));
  365. Log::channel('payment')->info('鸿运支付支付', $data);
  366. if (Arr::get($data, 'data.retCode') != 'SUCCESS') {
  367. throw new \Exception('调用支付失败!');
  368. }
  369. $arr = [
  370. 'type' => 2,
  371. 'url' => Arr::get($data, 'data.payParams.payUrl'),
  372. 'payOrderId' => ''
  373. ];
  374. }elseif ($payorder->pay_type == 0) {
  375. $arr = [
  376. 'type' => 3,
  377. 'url' => '',
  378. 'payOrderId' => $payorder->order_no,
  379. ];
  380. } else {
  381. $arr = [
  382. 'type' => 1,
  383. 'url' => '',
  384. 'payOrderId' => ''
  385. ];
  386. throw new \Exception('通道未开通!');
  387. }
  388. //
  389. // $arr = [
  390. // 'type' => 2,
  391. // 'url' => Arr::get($param, 'url', ''),
  392. // 'payOrderId' => ''
  393. // ];
  394. // PayorderBusiness::payorderSave(collect($payorder)->toArray());
  395. } catch (\Throwable $exception) {
  396. throw new \Exception($exception->getMessage());
  397. }
  398. return $arr;
  399. }
  400. }