pai_user.action.php 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | Fanwe 方维p2p借贷系统
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2011 http://www.fanwe.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Author: 云淡风轻(1956838968@qq.com)
  8. // +----------------------------------------------------------------------
  9. class pai_userModule extends baseModule
  10. {
  11. //观众端竞拍支付管理页面
  12. function order(){
  13. //$root = array('status' => 1,'error'=>'',"data"=>array());
  14. //api_ajax_return($root);
  15. $this->virtual_order_details();
  16. }
  17. /**
  18. * 观众-获得参与的竞拍列表
  19. * int p 当前页
  20. * int is_true 0虚拟产品 1真实产品
  21. */
  22. public function goods(){
  23. $root = array('status' => 1,'error'=>'',"data"=>array(),"page_title"=>"我的竞拍");
  24. $page = intval($_REQUEST['p']);//取第几页数据
  25. $is_true = intval($_REQUEST['is_true']);
  26. $user_id = intval($GLOBALS['user_info']['id']);
  27. $page_size = intval($_REQUEST['page_size']);//取第几页数据
  28. if($user_id == 0){
  29. $root['status']=10007;
  30. $root['error']="请先登录";
  31. api_ajax_return($root);
  32. }
  33. if($page==0)$page = 1;
  34. if($page_size==0)$page_size=PAI_PAGE_SIZE;
  35. $rs = FanweServiceCall("pai_user","goods",array("user_id"=>$user_id,"is_true"=>$is_true,"page"=>$page,"page_size"=>$page_size));
  36. $data = array();
  37. $data['rs_count'] = intval($rs['rs_count']);
  38. foreach($rs['list'] as $k=>$v){
  39. format_pai_goods($v);
  40. $rs['list'][$k] = $v;
  41. }
  42. $data['list'] = $rs['list'];
  43. $data['page'] = $rs['page'];
  44. $root['is_podcast'] = 0;
  45. $root['is_true'] = $is_true;
  46. $root['data'] = $data;
  47. if (intval($_REQUEST['ajax'])==1) {
  48. $GLOBALS['tmpl']->assign("data",$root);
  49. $request['html'] =$GLOBALS['tmpl']->fetch("/inc/ajax_pai_goods.html");
  50. $request['is_has'] =$data['page']['has_next'];
  51. api_ajax_return($request);
  52. }else{
  53. api_ajax_return($root);
  54. }
  55. }
  56. /**
  57. * 竞拍的商品
  58. * int id 商品ID
  59. * int user_id 竞拍人id
  60. * int get_joindata 是否获取user_id的参与记录
  61. * int get_pailogs 是否获取竞拍记录
  62. */
  63. public function goods_detail(){
  64. $root = array('status' => 1,'error'=>'',"data"=>array());
  65. $page = intval($_REQUEST['p']);//取第几页数据
  66. $pai_id = intval($_REQUEST['id']);
  67. $user_id = intval($GLOBALS['user_info']['id']);
  68. $get_joindata = intval($_REQUEST['get_joindata']);
  69. $get_pailogs = intval($_REQUEST['get_pailogs']);
  70. if($user_id == 0){
  71. $root['status']=10007;
  72. $root['error']="请先登录";
  73. api_ajax_return($root);
  74. }
  75. //查询商品信息
  76. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  77. if($pai_id==0||$goodsinfo['status']!=1){
  78. $root['status']=10008;
  79. $root['error']="竞拍商品不存在";
  80. api_ajax_return($root);
  81. }
  82. $data = array();
  83. if($page==0)$page = 1;
  84. $page_size=PAI_PAGE_SIZE;
  85. $rs = FanweServiceCall("pai_user","goods_detail",array("pai_id"=>$pai_id,"user_id"=>$user_id,"get_joindata"=>$get_joindata,"get_pailogs"=>$get_pailogs,"page"=>$page,"page_size"=>$page_size));
  86. if($rs['status']==1){
  87. format_pai_goods($rs['list']['info']);
  88. $data['info'] = $rs['list']['info'];
  89. $data['has_join'] = $rs['list']['has_join'];
  90. $data['join_data'] = $rs['list']['join_data'];
  91. format_pai_logs($rs['list']['pai_list'],$rs['list']['info']['status']);
  92. $data['pai_list'] = $rs['list']['pai_list'];
  93. $data['page'] = $rs['page'];
  94. $data['rs_count'] = $rs['rs_count'];
  95. if($data['join_data']==""){
  96. $data['join_data']=array();
  97. }
  98. if($data['pai_list']==""){
  99. $data['pai_list']=array();
  100. }
  101. }else{
  102. $root['status'] = intval($rs['status']);
  103. $root['error'] = $rs['error'];
  104. }
  105. $root['data'] = $data;
  106. api_ajax_return($root);
  107. }
  108. /**
  109. * 参与竞拍提交保证金
  110. * int id 商品ID
  111. * consignee string 收货人姓名
  112. * consignee_mobile string 收货人手机号
  113. * consignee_district json 区域JSON数据[虚拟非必需]
  114. * consignee_address string 地址[虚拟非必需]
  115. */
  116. public function dojoin(){
  117. $root = array('status' => 1,'error'=>'',"data"=>array());
  118. $pai_id = intval($_REQUEST['id']);
  119. $user_id = intval($GLOBALS['user_info']['id']);
  120. $consignee = strim($_REQUEST['consignee']);
  121. $consignee_mobile = strim($_REQUEST['consignee_mobile']);
  122. $consignee_district = strim($_REQUEST['consignee_district']);
  123. $consignee_address = strim($_REQUEST['consignee_address']);
  124. if($user_id == 0){
  125. $root['status']=10007;
  126. $root['error']="请先登录";
  127. api_ajax_return($root);
  128. }
  129. //查询商品信息
  130. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  131. if($pai_id==0||intval($goodsinfo['status'])!=1 || $goodsinfo['info']['status']!=0){
  132. $root['status']=10008;
  133. $root['error']="竞拍商品不存在";
  134. api_ajax_return($root);
  135. }
  136. //判段收货信息
  137. if($consignee==''){
  138. $root['status']=10017;
  139. $root['error']="姓名为空";
  140. api_ajax_return($root);
  141. }
  142. if($consignee_mobile==''){
  143. $root['status']=10018;
  144. $root['error']="手机号码为空";
  145. api_ajax_return($root);
  146. }
  147. if(strlen($consignee_mobile)<= 0|| strlen($consignee_mobile)>11 ||!check_mobile($consignee_mobile)){
  148. $root['status']=10019;
  149. $root['error']="手机号码格式错误";
  150. api_ajax_return($root);
  151. }
  152. if($goodsinfo['info']['is_ture']!=0){
  153. if($consignee_district==''){
  154. $root['status']=10034;
  155. $root['error']="区域数据错误";
  156. api_ajax_return($root);
  157. }
  158. if($consignee_address==''){
  159. $root['status']=10035;
  160. $root['error']="收货地址为空";
  161. api_ajax_return($root);
  162. }
  163. }
  164. $rs = FanweServiceCall("pai_user","dojoin",array("pai_id"=>$pai_id,"user_id"=>$user_id,"consignee"=>$consignee,"consignee_mobile"=>$consignee_mobile,"consignee_district"=>$consignee_district,"consignee_address"=>$consignee_address));
  165. if($rs['status']!=1){
  166. $root['status'] =$rs['status'];
  167. $root['error'] =$rs['error'];
  168. }else{
  169. $root['error'] ="缴纳保证金成功";
  170. }
  171. api_ajax_return($root);
  172. }
  173. /**
  174. * 参与竞拍
  175. * int id 商品ID
  176. */
  177. public function dopai(){
  178. $root = array('status' => 1,'error'=>'',"data"=>array());
  179. $pai_id = intval($_REQUEST['id']);
  180. $pai_diamonds = intval($_REQUEST['pai_diamonds']);
  181. $user_id = intval($GLOBALS['user_info']['id']);
  182. if($user_id == 0){
  183. $root['status']=10007;
  184. $root['error']="请先登录";
  185. api_ajax_return($root);
  186. }
  187. //查询商品信息
  188. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id,"condition"=>"status"));
  189. if($pai_id==0||$goodsinfo['status']!=1){
  190. $root['status']=10008;
  191. $root['error']="竞拍商品不存在";
  192. api_ajax_return($root);
  193. }
  194. $rs = FanweServiceCall("pai_user","dopai",array("pai_id"=>$pai_id,"pai_diamonds"=>$pai_diamonds,"user_id"=>$user_id));
  195. if($rs['status']==1){
  196. $root['data'] = $rs['data'];
  197. foreach($rs['date']['info'] as $k=>$v){
  198. format_pai_goods($v);
  199. $rs['date']['info'][$k] = $v;
  200. }
  201. $root['error'] ='出价成功';
  202. }else{
  203. $root['status'] =$rs['status'];
  204. if ($rs['status']==10052) {
  205. $root['error'] ='未提交保证金';
  206. }elseif ($rs['status']==10053) {
  207. $root['error'] ='竞拍失败,出价非最高价';
  208. //$root['data'] = $rs['data'];
  209. $root['pai_diamonds'] = $rs['data']['pai_diamonds'];
  210. }else{
  211. $root['error'] ='竞拍失败';
  212. }
  213. }
  214. api_ajax_return($root);
  215. }
  216. /**
  217. * 参与竞拍人员列表
  218. * int p 当前页
  219. * int id 商品ID
  220. */
  221. public function pailogs(){
  222. $root = array('status' => 1,'error'=>'',"data"=>array(),"page_title"=>"竞拍记录");
  223. $page = intval($_REQUEST['p']);//取第几页数据
  224. $pai_id = intval($_REQUEST['id']);
  225. $user_id = intval($GLOBALS['user_info']['id']);
  226. if($user_id == 0){
  227. $root['status']=10007;
  228. $root['error']="请先登录";
  229. api_ajax_return($root);
  230. }
  231. //查询商品信息
  232. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  233. if($pai_id==0||$goodsinfo['status']!=1){
  234. $root['status']=10008;
  235. $root['error']="竞拍商品不存在";
  236. api_ajax_return($root);
  237. }
  238. if($page==0)$page = 1;
  239. $page_size=PAI_PAGE_SIZE;
  240. $rs = FanweServiceCall("pai_user","pailogs",array("pai_id"=>$pai_id,"page"=>$page,"page_size"=>$page_size));
  241. //print_r("-rs-");echo "<hr/>";
  242. //print_r($rs);echo "<hr/>";
  243. /*foreach($rs['list'] as $k=>$v){
  244. foreach($rs['list'] as $k=>$v){
  245. if($k==0){
  246. $rs['list'][$k]['pai_status'] = "领先";
  247. }
  248. else{
  249. $rs['list'][$k]['pai_status'] = "出局";
  250. }
  251. //出价
  252. $rs['list'][$k]['total_diamonds'] = $v['pai_sort'] * $v['jj_diamonds']+$v['qp_diamonds'];
  253. $rs['list'][$k]['pai_date_format'] = to_date($v['pai_time'],"m.d H:i:s");
  254. if($v['status'] == 0){
  255. $rs['list'][$k]['status_format'] = "未支付";
  256. }
  257. elseif($v['status'] ==1){
  258. $rs['list'][$k]['status_format'] = "已支付";
  259. }
  260. elseif($v['status'] ==2){
  261. $rs['list'][$k]['status_format'] = "已流拍";
  262. }
  263. }
  264. }*/
  265. format_pai_logs($rs['list'],$rs['status']);
  266. $data['list'] = $rs['list'];
  267. $data['page'] = $page;
  268. $root['data'] = $data;
  269. api_ajax_return($root);
  270. }
  271. /**
  272. * 参与竞拍的人 - 列表
  273. * int id 商品ID
  274. * int p 当前页
  275. */
  276. public function joins(){
  277. $root = array('status' => 1,'error'=>'',"data"=>array());
  278. $pai_id = intval($GLOBALS['id']);
  279. $page = intval($_REQUEST['p']);//取第几页数据
  280. $page_size = PAI_PAGE_SIZE;
  281. //查询商品信息
  282. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  283. if($pai_id==0||$goodsinfo['status']!=1){
  284. $root['status']=10008;
  285. $root['error']="竞拍商品不存在";
  286. api_ajax_return($root);
  287. }
  288. if($page==0)$page = 1;
  289. $rs = FanweServiceCall("pai_user","joins",array("pai_id"=>$pai_id,"page"=>$page,"page_size"=>$page_size));
  290. $data['rs_count'] = $rs['rs_count'];
  291. $data['list'] = $rs['list'];
  292. $data['page'] = $rs['page'];
  293. $root['data'] = $data;
  294. api_ajax_return($root);
  295. }
  296. /**
  297. * 参与竞拍的人
  298. * int id 商品ID
  299. * int pai_status -1所有状态 ,0 出局 1待付款 2排队中 3超时出局
  300. */
  301. function getjoin(){
  302. $root = array('status' => 1,'error'=>'',"data"=>array());
  303. $pai_id = intval($_REQUEST['id']);
  304. $user_id = intval($GLOBALS['user_info']['id']);
  305. $pai_status = intval($_REQUEST['pai_status']);
  306. if($user_id == 0){
  307. $root['status']=10007;
  308. $root['error']="请先登录";
  309. api_ajax_return($root);
  310. }
  311. //查询商品信息
  312. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  313. if($pai_id==0||$goodsinfo['status']!=1){
  314. $root['status']=10008;
  315. $root['error']="竞拍商品不存在";
  316. api_ajax_return($root);
  317. }
  318. $rs = FanweServiceCall("pai_user","getjoin",array("pai_id"=>$pai_id,"user_id"=>$user_id,"pai_status"=>$pai_status));
  319. if($rs['status']==1){
  320. $root['data'] = $rs['list'];
  321. }else{
  322. $root['status'] = intval($rs['status']);
  323. }
  324. api_ajax_return($root);
  325. }
  326. /**
  327. * 支付单支付成功
  328. * string $order_sn 要查询的订单编号
  329. */
  330. function pay_diamonds(){
  331. $root = array('status' => 1);
  332. $order_sn = strim($_REQUEST['order_sn']);
  333. $user_id = intval($GLOBALS['user_info']['id']);
  334. if($user_id == 0){
  335. $root['status']=10007;
  336. $root['error']="请先登录";
  337. api_ajax_return($root);
  338. }
  339. if($order_sn==''){
  340. $root['status']=10037;
  341. $root['error']="订单已支付";
  342. api_ajax_return($root);
  343. }
  344. $rs = FanweServiceCall("pai_user","pay_diamonds",array("order_sn"=>$order_sn,"user_id"=>$user_id));
  345. if($rs['status']!=1){
  346. $root['status'] =$rs['status'];
  347. if ($root['status']==10037) {
  348. $root['error']="订单号错误";
  349. }elseif ($root['status']==10004){
  350. $root['error']="订单支付失败";
  351. }elseif ($root['status']==10054){
  352. $root['error']="订单已付款";
  353. }elseif ($root['status']==10062){
  354. $root['error']="金额不足,请先充值";
  355. }elseif ($root['status']==10063){
  356. $root['error']="订单已超时";
  357. }
  358. }else{
  359. $root['error']="付款成功";
  360. $root['is_true'] = $rs['is_true'];
  361. $root['order_sn']=$rs['order_sn'];
  362. }
  363. api_ajax_return($root);
  364. }
  365. /*公众端查看虚拟订单详情
  366. *
  367. */
  368. function virtual_order_details(){
  369. $root = array('status' => 1,'error'=>'',"data"=>array(),"page_title"=>"订单详情");
  370. //$podcast_id = intval($_REQUEST['viewer_id']);//购买人id
  371. $user_id = intval($GLOBALS['user_info']['id']);
  372. $order_sn = strim($_REQUEST['order_sn']);//要查询的订单编号
  373. $pai_id = intval($_REQUEST['pai_id']);//拍卖ID
  374. if($user_id == 0){
  375. $root['status']=10007;
  376. $root['error']="请先登录";
  377. api_ajax_return($root);
  378. }
  379. if($order_sn==''){
  380. $root['status']='10037';
  381. $root['error']="订单号错误";
  382. api_ajax_return($root);
  383. }
  384. //查询商品信息
  385. $goodsinfo = FanweServiceCall("pai_user","p_goodsinfo",array("pai_id"=>$pai_id));
  386. if($pai_id==0||$goodsinfo['status']!=1){
  387. $root['status']=10008;
  388. $root['error']="竞拍商品不存在";
  389. api_ajax_return($root);
  390. }
  391. $rs = FanweServiceCall("pai_user","virtual_order_details",array("podcast_id"=>$user_id,"order_sn"=>$order_sn,"pai_id"=>$pai_id));
  392. if(isset($rs['consignee_district']) && $rs['consignee_district']!=""){
  393. $rs['consignee_district'] = json_decode($rs['consignee_district'],1);
  394. if($rs['consignee_district']==""){
  395. $rs['consignee_district'] = array();
  396. }
  397. }
  398. else{
  399. $rs['consignee_district'] = array();
  400. }
  401. foreach($rs['goods_list'] as $k=>$v){
  402. if ($v['goods_icon']!='') {
  403. $rs['goods_list'][$k]['goods_icon'] = json_decode($rs['goods_list'][$k]['goods_icon'],1);
  404. if ($v['goods_icon']=="") {
  405. $rs['goods_list'][$k]['goods_icon']=array();
  406. }else{
  407. foreach($rs['goods_list'][$k]['goods_icon'] as $k1=>$v1){
  408. //$rs['goods_list'][$k]['goods_icon'][$k1]=get_domain().APP_ROOT.$v1;
  409. $rs['goods_list'][$k]['goods_icon'][$k1]=get_spec_image($v1);
  410. }
  411. }
  412. }else{
  413. $rs['goods_list'][$k]['goods_icon']=array();
  414. }
  415. }
  416. $goods_detail=FanweServiceCall("pai_podcast","goods_detail",array("podcast_id"=>$user_id,"order_sn"=>$order_sn,"pai_id"=>$pai_id));
  417. $goods=$goods_detail['info'];
  418. format_pai_goods($goods);
  419. $rs['name']=$goods['name'];
  420. $rs['date_time']=$goods['date_time'];
  421. $rs['pay_time']=$goods['pay_time'];
  422. $rs['status']=$goods['status'];
  423. //如果订单未付款,将付款时间改为0
  424. $rs['final_time']=$goods['final_time'];
  425. if ($rs['order_status']==6) {
  426. $rs['pay_time']=0;
  427. $rs['final_time']=0;
  428. }
  429. $rs['expire_date_time']=$goods['expire_date_time'];
  430. $rs['last_pai_diamonds']=$goods['last_pai_diamonds'];
  431. $rs['info_status']=$goods['info_status'];
  432. $rs['button_status']=$goods['button_status'];
  433. $rs['expire_time']=$goods['expire_time'];
  434. $rs['contact']=$goods['contact'];
  435. $rs['mobile']=$goods['mobile'];
  436. $rs['img']=$goods['img'];
  437. $rs['pai_id']=$pai_id;
  438. $rs['order_status_time']=$goods['order_status_time'];
  439. if (OPEN_GOODS==1) {
  440. $rs['shop_id']=$goods['shop_id'];
  441. $rs['shop_name']=$goods['shop_name'];
  442. }
  443. $rs['is_true']=$goods['is_true'];
  444. $root['data'] = $rs;
  445. api_ajax_return($root);
  446. }
  447. /*进入直播间-获取拍卖信息
  448. *
  449. */
  450. function get_video(){
  451. $root = array('status' => 1,'error'=>'',"data"=>array());
  452. $user_id = intval($GLOBALS['user_info']['id']);
  453. if($user_id == 0){
  454. $root['status']=10007;
  455. $root['error']="请先登录";
  456. api_ajax_return($root);
  457. }
  458. $pai_id = intval($_REQUEST['pai_id']);//拍卖ID
  459. if($pai_id == 0){
  460. $root['status']=10010;
  461. $root['error']="竞拍商品不存在";
  462. api_ajax_return($root);
  463. }
  464. $rs = FanweServiceCall("pai_user","get_video",array("pai_id"=>$pai_id,"user_id"=>$user_id));
  465. $root['status']=$rs['status'];
  466. format_pai_goods($rs['info']);
  467. $data['info']=$rs['info'];
  468. $data['buyer']=$rs['buyer'];
  469. $data['join_data']=$rs['join_data'];
  470. $data['has_join']=$rs['has_join'];
  471. $root['data'] = $data;
  472. api_ajax_return($root);
  473. }
  474. //进入直播间参数
  475. function go_video(){
  476. $pai_id = intval($_REQUEST['pai_id']);
  477. $user_id = intval($GLOBALS['user_info']['id']);
  478. if($user_id == 0){
  479. $root['status']=10007;
  480. $root['error']="请先登录";
  481. api_ajax_return($root);
  482. }
  483. $video = $GLOBALS['db']->getRow("select * from ".DB_PREFIX."video where pai_id=".$pai_id);
  484. $pai_podcast = $GLOBALS['db']->getRow("select * from ".DB_PREFIX."user where id=".intval($video['user_id']));
  485. $data=array();
  486. if ($video) {
  487. $data['status']=1;
  488. $data['error']="";
  489. $data['roomId']=intval($video['id']);
  490. $data['groupId']=strim($video['group_id']);
  491. $data['createrId']=intval($video['user_id']);
  492. $data['loadingVideoImageUrl']= get_spec_image(strim($pai_podcast['head_image']));
  493. $data['video_type']= intval($video['video_type']);
  494. }else{
  495. $data['status']=0;
  496. $data['error']="直播间已关闭";
  497. $data['roomId']=0;
  498. $data['groupId']="";
  499. $data['createrId']=0;
  500. $data['loadingVideoImageUrl']= "";
  501. $data['video_type']= 0;
  502. }
  503. api_ajax_return($data);
  504. }
  505. //测试
  506. function test(){
  507. $id = 2;
  508. $rs = FanweServiceCall("pai_user","test",array("id"=>$id));
  509. print_r($rs);exit;
  510. }
  511. }