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);
}
}
}