DoubleCopyLevelSetting.php 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <?php
  2. namespace addons\DoubleCopy\common\models;
  3. use common\enums\StatusEnum;
  4. use Yii;
  5. /**
  6. * This is the model class for table "{{%addons_double_copy_level_setting}}".
  7. *
  8. * @property int $id
  9. * @property int $mall_id 商城ID
  10. * @property int $level_id 对应qimall_addons_double_copy_level.id
  11. * @property int $level 等级
  12. * @property string $commission_type 分佣类型:积分score;佣金:commission
  13. * @property string $from_type 分佣类型:二二复制
  14. * @property int $first_prize_type 直推奖类型 0百分比 1 固定金额
  15. * @property float $first_prize 直推奖励
  16. * @property int $indirect_prize_type 间推奖类型 0百分比 1 固定金额
  17. * @property float $indirect_prize 间推奖励
  18. * @property int $second_prize_type 平台补贴类型 0 百分比 1 固定金额
  19. * @property float $second_prize 平台补贴
  20. * @property int $equal_prize_type 培育奖类型 0百分比 1 固定金额
  21. * @property float $equal_prize 培育奖
  22. * @property float $freeze_fund_prize 冻结基金每单比例
  23. * @property int $freeze_fund_num 解冻达标团队人数
  24. * @property int $status 状态[-1:删除;0:禁用;1启用]
  25. * @property int $created_at
  26. * @property int $updated_at
  27. * @property int $allowance_price_type 津贴奖类型 0百分比 1 固定金额
  28. * @property float $allowance_price 津贴奖
  29. */
  30. class DoubleCopyLevelSetting extends \common\models\base\BaseActiveRecord
  31. {
  32. /**
  33. * {@inheritdoc}
  34. */
  35. public static function tableName()
  36. {
  37. return '{{%addons_double_copy_level_setting}}';
  38. }
  39. /**
  40. * {@inheritdoc}
  41. */
  42. public function rules()
  43. {
  44. return [
  45. [['mall_id', 'first_prize', 'indirect_prize', 'second_prize', 'equal_prize'], 'required'],
  46. [['mall_id', 'level_id', 'level', 'first_prize_type', 'indirect_prize_type', 'second_prize_type',
  47. 'equal_prize_type', 'freeze_fund_num', 'status', 'created_at', 'updated_at','allowance_price_type',
  48. 'equal_level_prize_type','repurchase_prize_type', 'is_thaw', 'first_level', 'push_num', 'second_level'], 'integer'],
  49. [['first_prize', 'second_prize', 'equal_prize','freeze_fund_prize','allowance_price','equal_level_prize','repurchase_prize'], 'number'],
  50. [['commission_type', 'from_type'], 'string', 'max' => 255],
  51. ];
  52. }
  53. /**
  54. * {@inheritdoc}
  55. */
  56. public function attributeLabels()
  57. {
  58. return [
  59. 'id' => 'ID',
  60. 'mall_id' => '商城ID',
  61. 'level_id' => '对应qimall_addons_double_copy_level.id',
  62. 'level' => '等级',
  63. 'commission_type' => '分佣类型:积分score;佣金:commission',
  64. 'from_type' => '分佣类型:二二复制',
  65. 'first_prize_type' => '直推奖类型 0百分比 1 固定金额',
  66. 'first_prize' => '直推奖励',
  67. 'indirect_prize_type' => '间推奖类型 0百分比 1 固定金额',
  68. 'indirect_prize' => '间推奖励',
  69. 'second_prize_type' => '平台补贴类型 0 百分比 1 固定金额',
  70. 'second_prize' => '平台补贴',
  71. 'equal_prize_type' => '培育奖类型 0百分比 1 固定金额',
  72. 'equal_prize' => '培育奖',
  73. 'freeze_fund_prize' => '冻结基金每单比例',
  74. 'freeze_fund_num' => '解冻达标团队人数',
  75. 'status' => '状态[-1:删除;0:禁用;1启用]',
  76. 'created_at' => 'Created At',
  77. 'updated_at' => 'Updated At',
  78. ];
  79. }
  80. public function getLevelInfo()
  81. {
  82. return $this->hasOne(DoubleCopyLevel::class, ['id' => 'level_id']);
  83. }
  84. /**
  85. * 保存数据
  86. * @Author: lun
  87. * @DateTime: 2022/5/14 0014 10:07
  88. * @Copyright: copyright (c) 2021 广东七件事集团
  89. * @param $params
  90. * @return bool
  91. */
  92. public static function setData($params)
  93. {
  94. try{
  95. $model = self::findOne([
  96. 'mall_id' => $params['mall_id'],
  97. 'level_id' => $params['level_id'],
  98. 'commission_type' => $params['commission_type']
  99. ]);
  100. if (empty($model)) {
  101. $model = new self();
  102. $model->mall_id = $params['mall_id'];
  103. $model->level_id = $params['level_id'];
  104. $model->commission_type = $params['commission_type'];
  105. $model->loadDefaultValues();
  106. }
  107. if(!$model->load($params,'') || !$model->save()){
  108. throw new \Exception($model->getErrorMessage());
  109. }
  110. return true;
  111. }catch(\Exception $e){
  112. self::$static_error = $e->getMessage();
  113. return false;
  114. }
  115. }
  116. }