255], [['commission_value'], 'safe'] ]; } /** * {@inheritdoc} */ public function attributeLabels() { return [ 'id' => 'ID', 'mall_id' => '商城ID', 'is_enable' => '是否独立设置:0:否;1是', 'item_id' => '项目id', 'item_type' => '项目类型:商品goods', 'commission_type' => '分佣类型:积分score;佣金:commission', 'is_percent' => '类型 0百分比 1 固定金额', 'status' => '状态[-1:删除;0:禁用;1启用]', 'created_at' => 'Created At', 'updated_at' => 'Updated At', 'commission_value' => '配置值', 'is_not_involved_distribution' => '不参与分销循环;0参与,1不参与', ]; } // public function getDetail() // { // return $this->hasMany(DistributionCommissionItemSettingDetail::class, ['distribution_commission_item_setting_id' => 'id'])->indexBy('level'); // } public static function setData($params, $data) { try{ foreach ($data as $item) { $model = self::findOne([ 'mall_id' => $params['mall_id'], 'item_type' => $item['item_type'], 'commission_type' => $item['commission_type'], 'item_id' => $params['item_id'], 'status' => [StatusEnum::ENABLED], ]); if (empty($model)) { $model = new self(); $model->mall_id = $params['mall_id']; $model->item_id = $params['item_id']; $model->loadDefaultValues(); } if(!$model->load($item,'') || !$model->save()){ throw new \Exception($model->getErrorMessage()); } // // 插入配置详情 // $detail = ['mall_id' => $params['mall_id'], 'distribution_commission_item_setting_id' => $model->id]; // $res = DistributionCommissionItemSettingDetail::setData($detail, $item['detail']); // if ($res == false) throw new \Exception(DistributionCommissionItemSettingDetail::getStaticError()); } return true; }catch(\Exception $e){ self::$static_error = $e->getMessage(); return false; } } public static function getGoodsComssionConfig($params){ $data = DistributionCommissionItemSetting::lists([ 'where' => $params['where'], 'index' => $params['index'], ],true); foreach($data as &$item){ $item['commission_value'] = json_decode($item['commission_value'], true); } unset($item); return $data; } }