ScoreBonusCommissionItemSettingDetail.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace addons\ScoreBonus\common\models;
  3. use Yii;
  4. /**
  5. * This is the model class for table "{{%addons_score_bonus_commission_item_setting_detail}}".
  6. *
  7. * @property int $id
  8. * @property int $mall_id 商城ID
  9. * @property int $score_bonus_commission_item_setting_id
  10. * @property int $level
  11. * @property int $calculate_type 计算方式,1:百分比,2:固定值
  12. * @property float $value 值,calculate_type = 1 时表示百分比(计算时需要 /100);calculate_type = 2 时表示设置的固定值
  13. * @property int $status 状态[-1:删除;0:禁用;1启用]
  14. * @property int $created_at
  15. * @property int $updated_at
  16. */
  17. class ScoreBonusCommissionItemSettingDetail extends \common\models\base\BaseActiveRecord
  18. {
  19. /**
  20. * {@inheritdoc}
  21. */
  22. public static function tableName()
  23. {
  24. return '{{%addons_score_bonus_commission_item_setting_detail}}';
  25. }
  26. /**
  27. * {@inheritdoc}
  28. */
  29. public function rules()
  30. {
  31. return [
  32. [['mall_id', 'score_bonus_commission_item_setting_id'], 'required'],
  33. [['mall_id', 'score_bonus_commission_item_setting_id', 'calculate_type', 'status', 'created_at', 'updated_at'], 'integer'],
  34. [['value'], 'number'],
  35. ];
  36. }
  37. /**
  38. * {@inheritdoc}
  39. */
  40. public function attributeLabels()
  41. {
  42. return [
  43. 'id' => 'ID',
  44. 'mall_id' => 'Mall ID',
  45. 'score_bonus_commission_item_setting_id' => 'Short Video Commission Item Setting ID',
  46. 'calculate_type' => 'Calculate Type',
  47. 'value' => 'Value',
  48. 'status' => 'Status',
  49. 'created_at' => 'Created At',
  50. 'updated_at' => 'Updated At',
  51. ];
  52. }
  53. public static function setData($data)
  54. {
  55. $model = self::findOne(['mall_id' => $data['mall_id'], 'score_bonus_commission_item_setting_id' => $data['score_bonus_commission_item_setting_id']]);
  56. if (empty($model)) {
  57. $model = new self();
  58. }
  59. if(!$model->load($data,'') || !$model->save()){
  60. throw new \Exception($model->getErrorMessage());
  61. }
  62. return true;
  63. }
  64. public static function lists($params=[],$is_array=true){
  65. $list = [];
  66. $query = static::find();
  67. try{
  68. self::paramPack($params, $query);
  69. if(!empty($params['limit'])){
  70. $query->limit($params['limit']);
  71. }
  72. if(!empty($params['offset'])){
  73. $query->offset($params['offset']);
  74. }
  75. elseif(!empty($params['page']) && !empty($params['limit'])){
  76. $query->offset(($params['page']-1)*$params['limit']);
  77. }
  78. self::$_sql[] = $query->createCommand()->getRawSql();
  79. $list = $query->AsArray($is_array)->all();
  80. return $list;
  81. }catch (\Exception $e){
  82. var_dump($e->getMessage());
  83. self::$static_error = $e->getMessage();
  84. return false;
  85. }
  86. }
  87. }