VirtualCard.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace addon\giftcard\model\card;
  3. use addon\giftcard\model\membercard\MemberCard;
  4. /**
  5. * 电子卡(线上)
  6. * Class GiftCardRecords
  7. * @package addon\giftcard\model\records
  8. */
  9. class VirtualCard extends Card
  10. {
  11. public function addCard($params)
  12. {
  13. $source = $params[ 'source' ];
  14. $insert_data = array (
  15. 'order_id' => $params[ 'order_id' ],
  16. 'source' => $source,
  17. 'is_allow_transfer' => $params[ 'is_allow_transfer' ],
  18. 'init_member_id' => $params[ 'member_id' ],
  19. 'card_name' => $params[ 'order_name' ] ?? '',
  20. 'card_cover' => $params[ 'card_cover' ] ?? '',
  21. 'status' => 'to_use',
  22. );
  23. $params[ 'insert_data' ] = $insert_data;
  24. $params[ 'card_type' ] = 'virtual';
  25. $result = $this->addCardItem($params);
  26. $card_id = $result[ 'data' ];
  27. //生成会员所属记录
  28. $member_card_model = new MemberCard();
  29. $card_params = array (
  30. 'site_id' => $params[ 'site_id' ],
  31. 'form_member_id' => 0,
  32. 'member_id' => $params[ 'member_id' ],
  33. 'card_id' => $card_id,
  34. 'source' => $source,
  35. );
  36. $member_card_model->addMemberCard($card_params);
  37. ( new CardLog() )->add([
  38. 'card_id' => $card_id,
  39. 'type' => 'buy',
  40. 'operator_type' => 'member',//todo 暂时是确定的
  41. 'operator' => $params[ 'member_id' ],
  42. 'type_id' => $params[ 'order_id' ]
  43. ]);
  44. return $result;
  45. }
  46. }