JutuikeUtil.php 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. <?php
  2. namespace App\Http\Utils\Jutuike;
  3. use App\Exceptions\CommonException;
  4. use App\Http\Bean\Util\Jutuike\GetOrderListParamBean;
  5. use App\Http\Bean\Util\Jutuike\GoodsListParamBean;
  6. use App\Http\Bean\Util\Jutuike\GoodsSearchParamBean;
  7. use App\Http\Enum\ErrorEnum;
  8. use App\Http\Utils\BaseUtil;
  9. use App\Http\Utils\LoggerFactoryUtil;
  10. use function Complex\theta;
  11. use Tool\ShanTaoTool\HttpCurl;
  12. /**
  13. * jutuike工具类
  14. * Class JutuikeUtil
  15. * @package App\Http\Utils\Jutuike
  16. */
  17. class JutuikeUtil extends BaseUtil
  18. {
  19. /**
  20. * @var string 平台接口地址
  21. */
  22. static $baseUrl = "http://api.jutuike.com/";
  23. /**
  24. * @var string 电商聚合接口地址
  25. */
  26. static $baseJuheurl = "http://api.act.jutuike.com/";
  27. /**
  28. * 获取活动列表
  29. */
  30. public static function getActList($page=1)
  31. {
  32. $url = self::$baseUrl."union/act_list";
  33. $params = [
  34. "apikey"=>env("JU_TUI_KE_API_KEY"),
  35. "page"=>$page,
  36. "pageSize"=>100
  37. ];
  38. $res = HttpCurl::getCurl($url,$params);
  39. return $res;
  40. }
  41. /**
  42. * 获取订单列表
  43. * @param GetOrderListParamBean $getOrderListParamBean
  44. */
  45. public static function getOrderList(GetOrderListParamBean $getOrderListParamBean)
  46. {
  47. $url = self::$baseUrl."union/orders";
  48. $params = [
  49. "apikey"=>env("JU_TUI_KE_API_KEY")
  50. ];
  51. if ($getOrderListParamBean->getStartTime()){
  52. $params["start_time"] = $getOrderListParamBean->getStartTime();
  53. }
  54. if ($getOrderListParamBean->getEndTime()){
  55. $params["end_time"] = $getOrderListParamBean->getEndTime();
  56. }
  57. if ($getOrderListParamBean->getQueryType()){
  58. $params["query_type"] = $getOrderListParamBean->getQueryType();
  59. }
  60. if ($getOrderListParamBean->getStatus()){
  61. $params["status"] = $getOrderListParamBean->getStatus();
  62. }
  63. if ($getOrderListParamBean->getOrderSn()){
  64. $params["order_sn"] = $getOrderListParamBean->getOrderSn();
  65. }
  66. if ($getOrderListParamBean->getPage()){
  67. $params["page"] = $getOrderListParamBean->getPage();
  68. }
  69. if ($getOrderListParamBean->getPageSize()){
  70. $params["pageSize"] = $getOrderListParamBean->getPageSize();
  71. }
  72. $res = HttpCurl::getCurl($url,$params);
  73. return $res;
  74. }
  75. /**
  76. * 获取活动转链接口
  77. * @param $sid string 推广位
  78. * @param $actId int 活动ID
  79. */
  80. public static function transferAct($sid,$actId)
  81. {
  82. $url = self::$baseUrl."union/act";
  83. $params = [
  84. "apikey"=>env("JU_TUI_KE_API_KEY"),
  85. "sid"=>$sid,
  86. "act_id"=>$actId
  87. ];
  88. $res = HttpCurl::getCurl($url,$params);
  89. if($res["code"]!=1){
  90. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  91. $instance->info("活动ID:".$actId);
  92. $instance->info("推广位ID:".$sid);
  93. $instance->info("上游返回数据:".json_encode($res));
  94. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  95. }
  96. return $res["data"]["h5"];
  97. }
  98. /**
  99. * 获取转链的商品信息
  100. * @param $linkurl 转链url
  101. */
  102. public static function transferGoodsLink($linkurl)
  103. {
  104. $url = self::$baseJuheurl."union/wn_convert";
  105. $params = [
  106. "pub_id"=>env("JU_TUI_KE_PUB_ID"),
  107. "content"=>$linkurl,
  108. ];
  109. $res = HttpCurl::postCurl($url,$params);
  110. dd($res);
  111. if($res["code"]!=1){
  112. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  113. $instance->info("上游返回数据:".json_encode($res));
  114. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  115. }
  116. return $res["data"];
  117. }
  118. /**
  119. * 转链API接口
  120. * @param $goodsId 商品ID
  121. * @param $sid 推广位ID
  122. * @param string $source 来源 jd-京东,vip-唯品会,pdd-拼多多,kaola-考拉,taobao-淘宝 默认vip
  123. */
  124. public static function convert($goodsId,$sid,$source="taobao")
  125. {
  126. $url = self::$baseJuheurl."union/convert";
  127. $params = [
  128. "pub_id"=>env("JU_TUI_KE_PUB_ID"),
  129. "goodsId"=>$goodsId,
  130. "sid"=>$sid,
  131. "source"=>$source,
  132. ];
  133. $res = HttpCurl::postCurl($url,$params);
  134. if($res["code"]!=1){
  135. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  136. $instance->info("上游返回数据:".json_encode($res));
  137. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  138. }
  139. return $res["data"];
  140. }
  141. /**
  142. * 获取平台分类接口
  143. * @param string $source
  144. */
  145. public static function goodsCategory($source)
  146. {
  147. $url = self::$baseJuheurl."union/goods_category";
  148. $params = [
  149. "pub_id"=>env("JU_TUI_KE_PUB_ID"),
  150. ];
  151. $params["source"] = $source;
  152. $res = HttpCurl::postCurl($url,$params);
  153. if($res["code"]!=1){
  154. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  155. $instance->info("上游返回数据:".json_encode($res));
  156. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  157. }
  158. return $res["data"];
  159. }
  160. /**
  161. * 获取商品列表
  162. * @param GoodsListParamBean $goodsListParamBean
  163. */
  164. public static function goodsList(GoodsListParamBean $goodsListParamBean)
  165. {
  166. $url = self::$baseJuheurl."union/query_goods";
  167. $params = [
  168. "pub_id"=>env("JU_TUI_KE_PUB_ID"),
  169. "source"=>$goodsListParamBean->getSource(),
  170. "cat"=>$goodsListParamBean->getCat(),
  171. "page"=>$goodsListParamBean->getPage(),
  172. "pageSize"=>$goodsListParamBean->getPageSize(),
  173. ];
  174. $res = HttpCurl::postCurl($url,$params);
  175. if($res["code"]!=1){
  176. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  177. $instance->info("上游返回数据:".json_encode($res));
  178. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  179. }
  180. return $res["data"];
  181. }
  182. /**
  183. * 商品搜索接口
  184. * @param GoodsSearchParamBean $goodsSearchParamBean
  185. */
  186. public static function goodsSearch(GoodsSearchParamBean $goodsSearchParamBean)
  187. {
  188. $url = self::$baseJuheurl."union/search";
  189. $params = [
  190. "pub_id"=>env("JU_TUI_KE_PUB_ID"),
  191. "sid"=>$goodsSearchParamBean->getSource(),
  192. "source"=>$goodsSearchParamBean->getSource(),
  193. "keyword"=>$goodsSearchParamBean->getKeyword(),
  194. "sort"=>$goodsSearchParamBean->getSort(),
  195. "page"=>$goodsSearchParamBean->getPage(),
  196. "pageSize"=>$goodsSearchParamBean->getPageSize(),
  197. ];
  198. $res = HttpCurl::postCurl($url,$params);
  199. if($res["code"]!=1){
  200. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  201. $instance->info("上游返回数据:".json_encode($res));
  202. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  203. }
  204. return $res["data"];
  205. }
  206. /**
  207. * 电商平台列表接口
  208. */
  209. public static function plateformList()
  210. {
  211. $url = self::$baseJuheurl."union/platform";
  212. $params = [
  213. "pub_id"=>env("JU_TUI_KE_PUB_ID")
  214. ];
  215. $res = HttpCurl::postCurl($url,$params);
  216. if($res["code"]!=1){
  217. $instance = new LoggerFactoryUtil(JutuikeUtil::class);
  218. $instance->info("上游返回数据:".json_encode($res));
  219. throw new CommonException(ErrorEnum::ERROR_TRANS_LINK);
  220. }
  221. return $res["data"];
  222. }
  223. }