request; if ($request->isAjax) { // 提交等级内容 if ($request->isPost) { $params = Yii::$app->request->post(); $res = Yii::$app->services->validate->validate($params, [ [['page','title','id','date_start','date_end'], 'safe'], ]); if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage()); if(!empty($params['title'])) $where[] = ['like','title',$params['title']]; if(!empty($params['id'])) $where[] = ['=','id',$params['id']]; if($params['date_start'] && $params['date_end']) $where[] = ['between', 'created_at', strtotime($params['date_start']),strtotime($params['date_end'])]; $where[] = ['=','mall_id',$this->mall_id]; $where[] = ['>=','status',StatusEnum::DISABLED]; $order = 'id desc'; //var_dump($where); $list = ScoreExpansion::listPage(['where' => $where,'order' => $order],false); // echo '
';print_r($list);die;
                    $list['integral_type'] = ScoreExpansionEnum::getRedpackType('', $this->mall_id);
                    $list['new_time'] = time();
                    $Platform_config = PlatformSetting::getConfByGroup( 'system', true);
                    $web_url = $Platform_config['h5_url']['value'];
                    $mall_sign = $this->mall['mall_sign'];
                    $list['redpacklinks'] = $web_url.'/#/'.ScoreExpansionEnum::INTEGRAL_LINKS."?sign=".$mall_sign;
//                    var_dump($list['redpacklinks']);die;
                    return $this->success('操作成功',$list);
                }
            }
        } catch (\Exception $e) {
            return $this->error($e->getMessage(), []);
        }
        return $this->render($this->action->id);
    }

    /**
     * @Author: ltm
     * @DateTime: 2022/3/21 0021 16:16
     * @Copyright: copyright (c) 2021 广东七件事集团
     * @param $data
     * @return string
     */
    public function actionEdit(){
        try {
            $request = Yii::$app->request;
            if ($request->isAjax) {
                // 提交等级内容
                if ($request->isGet) {
                    $params = Yii::$app->request->get();
                    $res = Yii::$app->services->validate->validate($params, [
                        [['id','type'], 'safe'],
                    ]);
                    if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
                    $detail = ScoreExpansion::getOne([['id'=>$params['id']]],true);
                    $user_level_list =  UserLevel::getUserLevel([['mall_id' => $this->mall_id, 'status' => StatusEnum::ENABLED]], [], 1,'level,name,id');
                    $default['level'] = 0;
                    $default['name'] = '系统默认会员等级';
                    $default['id'] = 0;
                    array_unshift($user_level_list,$default);
                    $list = [];
                    if(!empty($detail['rule_values'])) $detail['rule_data'] = json_decode($detail['rule_values']);
                    if(!empty($detail['limit_user_level'])) $detail['limit_user_level'] = json_decode($detail['limit_user_level']);
                    if(!empty($detail['rule'])) $detail['rule'] = json_decode($detail['rule']);
                    if(!empty($detail['start_time'])) $detail['start_time'] = date("Y-m-d H:i:s",$detail['start_time']);
                    if(!empty($detail['end_time'])) $detail['end_time'] = date("Y-m-d H:i:s",$detail['end_time']);
                    if($params['type'] == 1) unset($detail['id']);
                    $list['detail'] = $detail;
                    $list['limit_user_level_list'] = $user_level_list;
                    $integral_name = Yii::$app->services->setting->addons->get($this->mall_id, ScoreExpansionEnum::ADDONS_NAME, 'basic.integral_name');
                    $integral_name = empty($integral_name) ? '积分' : $integral_name;
                    $list['integral_name'] = $integral_name;
//                    echo '
';print_r($list);die;
                    return $this->success('操作成功',$list);
                }
                //提交等级内容
                if ($request->isPost) {
                    $params = Yii::$app->request->post();
//                    echo '
';print_r($params);die;
                    $res = Yii::$app->services->validate->validate($params, [
                        [['title','time_type','integral_type'], 'required'],
                        [['times','id','integral_type','status','rule','rule_data'], 'safe'],
                        [['description','cover','time_type_time','award','day_award','limit_user_level','virtual_award','time_slot'],'safe']
                    ]);
                    $params = ScoreExpansion::exceptNullVal($params);
//                    echo '
';print_r($params);die;
                    if($params['time_type'] == 1){
                        $params['start_time'] = strtotime($params['time_type_time']['0']);
                        $params['end_time'] = strtotime($params['time_type_time']['1']);
                    }else{
                        $params['start_time'] = strtotime($params['time_slot']['0']);
                        $params['end_time'] = strtotime($params['time_slot']['1']);
                    }

                    $params['rule'] = json_encode($params['rule']);
                    $params['rule_values'] = json_encode($params['rule_data']);
                    $params['limit_user_level'] = json_encode($params['limit_user_level']);
                    if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage());

                    $params['mall_id'] = $this->mall_id;
                    $res = ScoreExpansion::setData($params);
                    if ($res === false) throw new Exception(Redpack::getStaticCodeError()['error']);
                    return $this->success('操作成功');
                }
            }
        } catch (\Exception $e) {
            return $this->error($e->getMessage(), []);
        }
        return $this->render($this->action->id);
    }

    /**
     * 失效或删除
     * @Author: ltm
     * @DateTime: 2022/3/23 0023 14:06
     * @Copyright: copyright (c) 2021 广东七件事集团
     * @return mixed|string|void
     */
    public function actionDelOrEnable(){
        try {
            $request = Yii::$app->request;
            if ($request->isAjax) {
                if ($request->isPost) {
                    $params = Yii::$app->request->post();
                    $res = Yii::$app->services->validate->validate($params, [
                        [['id','type'], 'required'],
                    ]);
                    if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage());

                    if($params['type'] == StatusEnum::ENABLED)  $params['status'] = StatusEnum::ENABLED;
                    if($params['type'] == StatusEnum::DISABLED)  $params['status'] = StatusEnum::DISABLED;
                    if($params['type'] == StatusEnum::DELETE)  $params['status'] = StatusEnum::DELETE;
                    $params['mall_id'] = $this->mall_id;
                    $res = ScoreExpansion::setData($params);
                    if ($res === false) throw new Exception(Redpack::getStaticCodeError()['error']);
                    return $this->success('操作成功');
                }
            }
        } catch (\Exception $e) {
            return $this->error($e->getMessage(), []);
        }
        return $this->render($this->action->id);
    }


    /**
     * 商品红包设置
     * @Author: lun
     * @DateTime: 2022/3/23 0023 14:07
     * @Copyright: copyright (c) 2021 广东七件事集团
     */
    public function actionGoodsSetting()
    {
        $request = Yii::$app->request;
        if ($request->isAjax && $request->isPost) {
            $post = Yii::$app->request->post();
            $res = Yii::$app->services->validate->validate($post, [
                [['goods_id'], 'required'],
            ]);
            if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
//            echo '
';print_r($post);die;
            $where[] = ['=', 'mall_id', $this->mall_id];
            $where[] = ['=', 'goods_id', $post['goods_id']];
            $where[] = ['=', 'status', StatusEnum::ENABLED];
            $select = "goods_id,integral_wallet_type,is_enable,is_percent,give,deduct_type,deduct_money,is_deduct_percent,parent";
            $params = compact('where', 'select');
            $list = ScoreExpansionGoodsSetting::lists($params);
            $data['list'] = $list;
            foreach($list as $item){
                $data['marketing_model'] = $item['is_enable'];
                break;
            }
//            dd($data);
            return $this->success('操作成功', $data);
        }
    }
}