| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <?php
- namespace addons\ServeBonus\common\models;
- use common\enums\StatusEnum;
- use common\models\user\User;
- use Yii;
- /**
- * This is the model class for table "{{%addons_servebonus_commission_log}}".
- *
- * @property int $id
- * @property int $mall_id 商城ID
- * @property int $user_id 用户ID
- * @property int $period_num 第N期
- * @property float $amounts 结算总金额,单位:元
- * @property float $commission 出单奖励/加权平分,单位:元
- * @property int $type 奖励类型:1出单奖励,2加权平分
- * @property int $compute_period 结算周期:1天,2周,3月
- * @property int $start_time 结算开始日期
- * @property int $end_time 结算开始日期
- * @property int|null $status 状态[-1:删除;0:禁用;1启用]
- * @property int $created_at
- * @property int $updated_at
- */
- class ServeBonusCommissionLog extends \common\models\base\BaseActiveRecord
- {
- /**
- * {@inheritdoc}
- */
- public static function tableName()
- {
- return '{{%addons_servebonus_commission_log}}';
- }
- /**
- * {@inheritdoc}
- */
- public function rules()
- {
- return [
- [['mall_id', 'user_id', 'period_id', 'type', 'compute_period', 'start_time', 'end_time', 'status', 'created_at', 'updated_at'], 'integer'],
- [['amounts', 'commission'], 'number'],
- ];
- }
- /**
- * {@inheritdoc}
- */
- public function attributeLabels()
- {
- return [
- 'id' => 'ID',
- 'mall_id' => '商城ID',
- 'user_id' => '用户ID',
- 'period_id' => '第N期',
- 'commission' => '出单奖励,单位:元',
- 'extra_commission' => '加权平分,单位:元',
- 'compute_period' => '结算周期:1天,2周,3月',
- 'start_time' => '结算开始日期',
- 'end_time' => '结算开始日期',
- 'status' => '状态[-1:删除;0:禁用;1启用]',
- 'created_at' => 'Created At',
- 'updated_at' => 'Updated At',
- ];
- }
- public function getUser()
- {
- return $this->hasOne(User::class, ['id' => 'user_id'])->select('id,nickname,mobile,username,avatar_url');
- }
- public function getServebonus()
- {
- return $this->hasOne(ServeBonus::class, ['user_id' => 'user_id'])->where(['status' => StatusEnum::ENABLED])->select('level');
- }
- public function getPeriod()
- {
- return $this->hasOne(ServeBonusPeriod::class, ['id' => 'period_id']);
- }
- /**
- * 获取分红
- * @Author: ltm
- * @DateTime: 2021/11/6 0006 11:53
- * @Copyright: copyright (c) 2021 广东七件事集团
- * @param array $cond
- * @param array $with
- * @param bool $is_array
- * @param string $select
- * @param string $order
- * @return array|\yii\db\ActiveRecord[]
- */
- public static function getServeBonusCommissionLog(array $cond=[], array $with=[],bool $is_array=true,string $select='*',$order=""){
- $default_cond = [['<>','status',StatusEnum::DELETE]];
- $cond = array_merge($default_cond,$cond);
- $query = self::find()->select($select);
- self::paramPack(['where'=>$cond, 'with'=>$with],$query);
- isset($order) && $query->orderBy($order);
- $data = $query->asArray($is_array)->all();
- return $data;
- }
- }
|