Transfer.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace addon\giftcard\model;
  11. use app\model\BaseModel;
  12. /**
  13. * 订单
  14. */
  15. class Transfer extends BaseModel
  16. {
  17. /**
  18. * 获取订单详细列表
  19. * @param array $condition
  20. * @param int $page
  21. * @param int $page_size
  22. * @param string $order
  23. * @param string $field
  24. * @param string $alias
  25. * @param array $join
  26. * @param null $group
  27. * @param null $limit
  28. * @return array
  29. */
  30. public function transferPagelist($condition = [], $page = 1, $page_size = PAGE_LIST_ROWS, $order = '', $field = '*', $alias = 'a', $join = [], $group = null, $limit = null)
  31. {
  32. $list = model("giftcard_transfer_record")->pageList($condition, $field, $order, $page, $page_size, $alias, $join, $group, $limit);
  33. return $this->success($list);
  34. }
  35. public function addTransferRecord($data)
  36. {
  37. // $info = model('giftcard_transfer_record')->getInfo([['record_id', '=', $data['record_id'] ]], 'transfer_id');
  38. // if (!empty($info)) return $this->success(['transfer_id' => $info['transfer_id'] ]);
  39. $res = model('giftcard_transfer_record')->add($data);
  40. return $this->success([ 'transfer_id' => $res ]);
  41. }
  42. // public function addTransferRecord($data)
  43. // {
  44. // model('giftcard_transfer_record')->startTrans();
  45. // model('giftcard_record')->startTrans();
  46. // try {
  47. // $record_data = [
  48. // 'source_from' => 2,
  49. // 'use_member_id' => $data['receive_member_id']
  50. // ];
  51. // model('giftcard_record')->update($record_data, [['id','=',$data['record_id']],['site_id','=',$data['site_id']]]);
  52. //
  53. // model('giftcard_transfer_record')->add($data);
  54. //
  55. // model('giftcard_record')->commit();
  56. // model('giftcard_transfer_record')->commit();
  57. // return $this->success();
  58. // } catch (\Exception $e) {
  59. // model('giftcard_record')->rollback();
  60. // model('giftcard_transfer_record')->rollback();
  61. // return $this->error($e->getMessage() . $e->getLine());
  62. // }
  63. // }
  64. public function editTransferRecord($id, $data)
  65. {
  66. model('giftcard_transfer_record')->startTrans();
  67. model('giftcard_record')->startTrans();
  68. try {
  69. $record_data = [
  70. 'source_from' => 2,
  71. 'use_member_id' => $data[ 'receive_member_id' ]
  72. ];
  73. model('giftcard_record')->update($record_data, [ [ 'id', '=', $data[ 'record_id' ] ], [ 'site_id', '=', $data[ 'site_id' ] ] ]);
  74. $transfer_data = [
  75. 'receive_member_id' => $data[ 'receive_member_id' ],
  76. 'receive_member_name' => $data[ 'receive_member_name' ],
  77. 'status' => 1
  78. ];
  79. model('giftcard_transfer_record')->update($transfer_data, [ [ 'transfer_id', '=', $id ], [ 'site_id', '=', $data[ 'site_id' ] ] ]);
  80. model('giftcard_record')->commit();
  81. model('giftcard_transfer_record')->commit();
  82. return $this->success();
  83. } catch (\Exception $e) {
  84. model('giftcard_record')->rollback();
  85. model('giftcard_transfer_record')->rollback();
  86. return $this->error($e->getMessage() . $e->getLine());
  87. }
  88. }
  89. public function getTransferRecordInfo($condition = [], $field = '*', $alias = 'a', $join = [])
  90. {
  91. $data = model("giftcard_transfer_record")->getInfo($condition, $field, $alias, $join);
  92. $giftcard_info = model("goods_giftcard")->getList([ [ 'giftcard_id', '=', $data[ 'giftcard_id' ] ], [ 'site_id', '=', $data[ 'site_id' ] ] ]);
  93. $data[ 'goods_num' ] = count($giftcard_info) ?? 0;
  94. return $this->success($data);
  95. }
  96. }