vrorder_helper.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. require_once(BASE_HELPER_PATH . '/mcard/mcard.php');
  3. require_once(BASE_HELPER_PATH . '/mtopcard/mtopcard.php');
  4. class vrorder_helper
  5. {
  6. //提供给商家管理后台.
  7. public static function extend_order_info($order)
  8. {
  9. $order_id = $order['order_id'];
  10. $refill_order = Model('refill_order');
  11. $refill_info = $refill_order->getOrderInfo(['order_id' => $order_id]);
  12. if(empty($refill_info)) {
  13. return self::card_key_info($order);
  14. } else {
  15. return self::refill_info($refill_info);
  16. }
  17. }
  18. private static function refill_info($refill_info)
  19. {
  20. if(empty($refill_info)) {
  21. return [];
  22. }
  23. else {
  24. $ret['接收卡'] = $refill_info['card_no'];
  25. $ret['卡类别'] = mtopcard\scard_type($refill_info['card_type']);
  26. $ret['身份证号码'] = $refill_info['idcard'];
  27. $ret['身份证姓名'] = $refill_info['card_name'];
  28. // $ret['卡号'] = $item['card_no'];
  29. // $ret['卡密'] = $item['card_key'];
  30. return $ret;
  31. }
  32. }
  33. private static function card_key_info($order)
  34. {
  35. global $config;
  36. $handlers = $config['vgoods_handlers'];
  37. $goods_id = $order['goods_id'];
  38. if(array_key_exists($goods_id,$handlers))
  39. {
  40. $handler = $handlers[$goods_id];
  41. if($handler['type'] == 'oil_card' || $handler['type'] == 'phone_card') {
  42. $mod_card = Model('card_key');
  43. $item = $mod_card->where(['order_id' => $order['order_id']])->find();
  44. if(!empty($item))
  45. {
  46. $ret = [];
  47. $ret['接收卡'] = $item['receive_card_no'];
  48. if($handler['type'] == 'oil_card') {
  49. $extra_info = json_decode($order['extra_info'],true);
  50. $ret['绑定手机号'] = $extra_info['input']['phone_no'] ?? '';
  51. }
  52. $ret['卡类别'] = mtopcard\scard_type($item['receive_card_type']);
  53. $ret['卡号'] = $item['card_no'];
  54. $ret['卡密'] = $item['card_key'];
  55. return $ret;
  56. }
  57. }
  58. elseif($handler['type'] == 'member_card') {
  59. return [];
  60. }
  61. else {
  62. return [];
  63. }
  64. }
  65. else {
  66. return [];
  67. }
  68. }
  69. //取消虚拟订单时的状态
  70. public static function unfreeze_extra($order)
  71. {
  72. global $config;
  73. $handlers = $config['vgoods_handlers'];
  74. $goods_id = $order['goods_id'];
  75. if(array_key_exists($goods_id,$handlers))
  76. {
  77. $handler = $handlers[$goods_id];
  78. if($handler['type'] == 'oil_card' || $handler['type'] == 'phone_card')
  79. {
  80. $mod_card = Model('card_key');
  81. $item = $mod_card->where(['order_id' => $order['order_id']])->find();
  82. if(!empty($item)) {
  83. $card_id = $item['card_id'];
  84. $mod_card->reuse($card_id);
  85. }
  86. }
  87. }
  88. }
  89. }