MchCashForm.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\modules\client\models\v1\admin;
  8. use app\models\Mch;
  9. use app\models\MchCash;
  10. use app\models\User;
  11. use yii\base\Model;
  12. use yii\helpers\Json;
  13. class MchCashForm extends Model
  14. {
  15. public $store_id;
  16. public $status;
  17. /**
  18. * @return array
  19. */
  20. public function rules()
  21. {
  22. return [
  23. [['status'], 'integer'],
  24. ];
  25. }
  26. /**
  27. * 获取商户提现列表
  28. * @return array
  29. */
  30. public function getList ()
  31. {
  32. if (!$this->validate()) {
  33. return [
  34. 'code' => 1,
  35. 'msg' => $this->getErrorSummary(false)[0]
  36. ];
  37. }
  38. $query = MchCash::find()->alias('mc')
  39. ->leftJoin(['m' => Mch::tableName()], 'mc.mch_id=m.id')
  40. ->leftJoin(['u' => User::tableName()], 'm.user_id=u.id')
  41. ->where([
  42. 'mc.store_id' => $this->store_id,
  43. ]);
  44. if ($this->status != -1) {
  45. $query->andWhere(['mc.status' => $this->status]);
  46. }
  47. $query->select('u.nickname, u.avatar_url, u.platform, m.logo, m.name, mc.*')
  48. ->orderBy('mc.created_at DESC');
  49. $pagination = pagination_make($query);
  50. $list = $pagination['list'];
  51. foreach ($list as &$item) {
  52. $type_data = $item['type_data'] ? Json::decode($item['type_data']) : [];
  53. $content = "";
  54. switch ($item['type']) {
  55. case 0:
  56. $content .= "转账方式:微信自动转账<br>";
  57. break;
  58. case 1:
  59. $content .= "转账方式:微信线下转账<br>";
  60. $content .= "微信号:{$type_data['account']}<br>";
  61. $content .= "微信昵称:{$type_data['nickname']}<br>";
  62. break;
  63. case 2:
  64. $content .= "转账方式:支付宝转账<br>";
  65. $content .= "支付宝账号:{$type_data['account']}<br>";
  66. $content .= "支付宝昵称:{$type_data['nickname']}<br>";
  67. break;
  68. case 3:
  69. $content .= "转账方式:转账到银行<br>";
  70. $content .= "银行卡号:{$type_data['account']}<br>";
  71. $content .= "开户人:{$type_data['nickname']}<br>";
  72. $content .= "开户行:{$type_data['bank_name']}<br>";
  73. break;
  74. case 4:
  75. $content .= "转账方式:转账到余额<br>";
  76. break;
  77. default:
  78. break;
  79. }
  80. if ($item['status'] == 1) {
  81. switch ($item['virtual_type']) {
  82. case 0:
  83. $content .= "实际转账方式:微信自动转账<br>";
  84. break;
  85. case 1:
  86. $content .= "实际转账方式:微信线下转账<br>";
  87. break;
  88. case 2:
  89. $content .= "实际转账方式:支付宝转账<br>";
  90. break;
  91. case 3:
  92. $content .= "实际转账方式:转账到银行<br>";
  93. break;
  94. case 4:
  95. $content .= "实际转账方式:转账到余额<br>";
  96. break;
  97. default:
  98. break;
  99. }
  100. }
  101. $item['account_content'] = $content;
  102. }
  103. return [
  104. 'code' => 0,
  105. 'msg' => 'success',
  106. 'data' => [
  107. 'data' => $list,
  108. 'pageNo' => $pagination['pageNo'],
  109. 'totalCount' => $pagination['totalCount']
  110. ],
  111. ];
  112. }
  113. }