RcCommissionForm.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\modules\client\models\v1;
  8. use app\models\Goods;
  9. use app\models\Md;
  10. use app\models\Option;
  11. use app\models\Order;
  12. use app\models\OrderDetail;
  13. use app\models\OrderRefund;
  14. use app\models\OrderShare;
  15. use app\models\SaasUser;
  16. use app\models\UserShareMoney;
  17. use yii\base\Model;
  18. use yii\data\Pagination;
  19. use yii\helpers\Json;
  20. use app\models\User;
  21. use app\models\Share;
  22. use app\models\OrderPospal;
  23. use app\models\RcCommissionLog;
  24. use app\models\ReOrder;
  25. use yii\helpers\VarDumper;
  26. class RcCommissionForm extends Model
  27. {
  28. public $yinbao = 0;
  29. public $user_id;
  30. public $user;
  31. public $type;
  32. public $store_id;
  33. public $share_setting;
  34. public $keyword;
  35. public $dateStart;
  36. public $page = 1;
  37. public $limit = 10;
  38. public $status;
  39. // public $page;
  40. // public $limit;
  41. public function rules()
  42. {
  43. return [];
  44. }
  45. public function search()
  46. {
  47. if (!$this->validate()) {
  48. return [
  49. 'code' => 1,
  50. 'msg' => $this->getErrorSummary(false)[0],
  51. ];
  52. }
  53. $query = RcCommissionLog::find()->alias('al')
  54. ->leftJoin(ReOrder::tableName() . 'o', 'o.id = al.order_id')
  55. ->where([
  56. 'al.store_id' => get_store_id(),
  57. 'al.parent_id' => get_user_id(),
  58. ]);
  59. if ($this->type > -1 && in_array($this->type, [1, 2])) {
  60. $query->andWhere(['al.log_type' => $this->type]);
  61. }
  62. // if ($this->status > -1 ) {
  63. // $query->andWhere(['o.is_pay' => $this->status == 1 ? 1 : ($this->status == 2 ? 1 : 0)]);
  64. // }
  65. $query->andWhere(['o.is_pay' => 1]);
  66. $count = $query->count();
  67. $pagination = new Pagination(['totalCount' => $count, 'page' => $this->page - 1, 'pageSize' => $this->limit]);
  68. $query->select('al.*, o.pay_price');
  69. $list = $query->limit($pagination->limit)->offset($pagination->offset)->orderBy('created_at DESC')->asArray()->all();
  70. foreach ($list as &$value) {
  71. $value['date'] = date('Y-m-d H:i:s', $value['created_at']);
  72. $value['content'] = $value['desc'];
  73. $value['user_info'] = User::find()->alias('u')
  74. ->leftJoin(['su' => SaasUser::tableName()], 'su.mobile = u.binding')
  75. ->where(['u.id' => $value['user_id']])->select('su.name, su.avatar')->asArray()->one() ?: [
  76. 'name' => '',
  77. 'avatar' => ''
  78. ];
  79. }
  80. // unset($value);
  81. return [
  82. 'code' => 0,
  83. 'msg' => 'success',
  84. 'data' => [
  85. 'list' => $list,
  86. 'page'=>$this->page - 1,
  87. 'pageSize'=> $this->limit,
  88. 'row_count' => $count
  89. ]
  90. ];
  91. }
  92. }