Manage.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace Card\Lib;
  3. use Dever;
  4. class Manage
  5. {
  6. /**
  7. * 显示用户信息
  8. *
  9. * @return mixed
  10. */
  11. public function showUserInfo($id)
  12. {
  13. $info = Dever::db('card/order')->find($id);
  14. $table = array();
  15. if ($info && $info['status'] > 1 && $info['uid'] && $info['uid'] > 0) {
  16. $user = Dever::load('passport/user-one', $info['uid']);
  17. if ($user) {
  18. $table['购买人'] = $user['username'] . '('.$user['mobile'].')';
  19. $table['下单时间'] = date('Y-m-d H:i:s', $info['cdate']);
  20. $table['支付时间'] = date('Y-m-d H:i:s', $info['pdate']);
  21. }
  22. if ($info['duid'] && $info['duid'] > 0) {
  23. $user = Dever::load('passport/user-one', $info['duid']);
  24. if ($user) {
  25. $table['领取人'] = $user['username'] . '('.$user['mobile'].')';
  26. $table['兑换时间'] = date('Y-m-d H:i:s', $info['ddate']);
  27. }
  28. }
  29. }
  30. return Dever::table($table);
  31. }
  32. /**
  33. * 创建兑换码
  34. *
  35. * @return mixed
  36. */
  37. public function createCard($id, $name, $param)
  38. {
  39. $num = Dever::param('num', $param);
  40. $info_id = Dever::param('info_id', $param);
  41. $info = Dever::db('card/info')->find($info_id);
  42. if ($info && $num > 0) {
  43. for ($i = 0; $i< $num;$i++) {
  44. $this->createCode($info);
  45. }
  46. }
  47. }
  48. private function createCode($info)
  49. {
  50. # 生成卡号
  51. $card = $info['card_prefix'] . Dever::rand($info['card_len'], $info['card_type'] - 1);
  52. $where['card'] = $card;
  53. $state = Dever::db('card/code')->find($where);
  54. if (!$state) {
  55. $where['card_id'] = $info['id'];
  56. if ($info['type'] == 1) {
  57. $info['day'] = 3650;
  58. }
  59. $where['edate'] = time() + ($info['day']*86400);
  60. Dever::db('card/code')->insert($where);
  61. } else {
  62. $this->createCode($info);
  63. }
  64. }
  65. /**
  66. * 作废
  67. *
  68. * @return mixed
  69. */
  70. public function drop_api($id)
  71. {
  72. $update['where_id'] = $id;
  73. $update['type'] = 4;
  74. Dever::db('card/code')->update($update);
  75. return 'ok';
  76. }
  77. public function recovery_api($id)
  78. {
  79. $update['where_id'] = $id;
  80. $update['type'] = 1;
  81. Dever::db('card/code')->update($update);
  82. return 'ok';
  83. }
  84. }