[ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => [], 'allow' => true, 'roles' => ['@'], ], ], ], ]; } /** * 列表 * @return string */ public function actionIndex() { $search =['start'=>'','end'=>'','type_id'=>'','name'=>'']; $search['start'] = Yii::$app->request->get('start'); $search['end'] = Yii::$app->request->get('end'); $search['type_id'] = Yii::$app->request->get('type_id'); $search['name'] = Yii::$app->request->get('name'); $search['member'] = Yii::$app->request->get('member'); $typeList = MaterType::find()->select('id,name')->all(); $models = UserMater::find()->where(['u.role'=>User::USER_ROLE_MATER])->from("{{%user_mater}} um")->leftJoin("{{%user}} u","um.uid = u.id"); //$models = User::find()->where(['role'=>User::USER_ROLE_MATER]); if(!empty($search['start'])) $models->andWhere("um.c_time > :start",[':start'=>strtotime($search['start'])]); if(!empty($search['end'])) $models->andWhere("um.c_time < :end",[':end'=>strtotime($search['end'])+(3600*24-1)]); if(!empty($search['type_id'])) $models->andWhere("um.type_id = :type_id",[':type_id'=>$search['type_id']]); if(!empty($search['name'])) $models->andWhere("u.username like :name OR um.company like :name OR um.name like :name OR um.tel like :name ",[':name'=>"%".$search['name']."%"]); if(is_numeric($search['member'])) $models->andWhere("um.member = :member",[':member'=>$search['member']]); $citys = AuthArea::queryAuth(); if($citys=='all') $models; elseif (!empty($citys)) $models->andWhere("um.city in ({$citys})"); else $models->andWhere("um.city = -1"); $pages = new yii\data\Pagination(["totalCount" => $models->count(), "pageSize" => self::PAGESIZE]); $models = $models->offset($pages->offset)->limit($pages->limit)->orderBy("um.id DESC")->all(); return $this->render('index', ['models' => $models, 'pages' => $pages,'name'=>'建材商管理','search'=>$search,'typeList'=>$typeList]); } /** * 更新状态 * @return string */ public function actionUpdateStatus() { $id = Yii::$app->request->post('id'); $model = User::find()->where(['id'=>$id])->one(); if($model->status==User::STATUS_ACTIVE) $model->status = User::STATUS_DELETED; else $model->status = User::STATUS_ACTIVE; if($model->save()) $result = ['sign'=>1,'msg'=>'修改状态成功']; else $result = ['sign'=>0,'msg'=>'修改状态失败']; return json_encode($result); } /** * 添加 */ public function actionAdd() { $picture_form = new LMUploadFile(); if(Yii::$app->request->isPost){ $username = Yii::$app->request->post('username'); $pwd = Yii::$app->request->post('pwd'); $pwd_again = Yii::$app->request->post('pwd_again'); $pickup_address_coordinate = Yii::$app->request->post('pickup_address_coordinate');//地址坐标 if(empty($pickup_address_coordinate)) { Yii::$app->getSession()->setFlash('error', '获取不到地址坐标'); return $this->redirect(Yii::$app->request->referrer); } if( $pwd != $pwd_again) { Yii::$app->getSession()->setFlash('error', '两次密码不一致'); return $this->redirect(Yii::$app->request->referrer); } if(!empty($username)&&!empty($pwd)){ $model = User::find()->where('username=:username',[':username'=>$username])->one(); if(empty($model)){ $model = new User(); if($pwd==$pwd_again){ $hash_password = Yii::$app->security->generatePasswordHash($pwd); $model->password_hash = $hash_password; $model->generateAuthKey(); $model->username = $username; $model->created_at = time(); $model->updated_at = time(); $model->status = User::STATUS_ACTIVE; $model->state = User::USER_STATE_THROUGH; $model->role = User::USER_ROLE_MATER; if($model->validate() ){ $transaction = Yii::$app->db->beginTransaction(); if($model->save()) { $arr = explode(',',$pickup_address_coordinate); $usermater = new UserMater(); $usermater->latitude = $arr[1]; $usermater->longitude = $arr[0]; $geohash = new ZM_Geohash(); $geohash->init_codingMap(); $usermater->hashcode =$geohash->encode($usermater->latitude,$usermater->longitude); $usermater->load(Yii::$app->request->post()); $usermater->uid = $model->id; if(Yii::$app->request->post('UserMater')['member'] == UserMater::MEMBER_YES) { if(!empty(Yii::$app->request->post('UserMater')['vip_start'])){ $usermater->vip_start = strtotime(Yii::$app->request->post('UserMater')['vip_start']);} if(!empty(Yii::$app->request->post('UserMater')['vip_end'])){ $usermater->vip_end = strtotime(Yii::$app->request->post('UserMater')['vip_end']);} } if ($usermater->validate() && $usermater->save()) { $imgs = Yii::$app->request->post('imgs'); if(!empty($imgs)) { foreach ($imgs as $imgs_val) { $image_model = new ImageSource(); $image_model->pic = $imgs_val; $image_model->type = ImageSource::TYPE_MATER_GOOD; $image_model->topid = $model->id; $image_model->created_at = time(); $image_model->updated_at = time(); $image_model->status = ImageSource::STATUS_YES; $image_model->save(); } } $transaction->commit(); Yii::$app->getSession()->setFlash('success', '添加成功!'); $this->redirect(['mater/index']); }else{ var_dump($usermater->getErrors());exit; $transaction->rollBack(); Yii::$app->getSession()->setFlash('error', '添加失败'); return $this->render('add',["picture_form" => $picture_form]); } }else{ var_dump($model->getErrors());exit; $transaction->rollBack(); Yii::$app->getSession()->setFlash('error', '添加失败'); return $this->render('add',["picture_form" => $picture_form]); } }else{ var_dump($model->getErrors());exit; Yii::$app->getSession()->setFlash('error', '添加失败'); return $this->render('add',["picture_form" => $picture_form]); } }else{ Yii::$app->getSession()->setFlash('error', '确认密码不相同'); return $this->render('add',["picture_form" => $picture_form]); } }else{ Yii::$app->getSession()->setFlash('error', '该号码已经注册!'); return $this->render('add',["picture_form" => $picture_form]); } }else{ Yii::$app->getSession()->setFlash('error', '输入不能空!'); return $this->render('add',["picture_form" => $picture_form]); } } $id = Yii::$app->request->get('id'); $shopimg = ""; $imgcount = 1; if(!empty($id)) { $model= UserMater::find()->where(['id'=>$id])->one(); $shopimg = ImageSource::find()->where(['type'=>ImageSource::TYPE_MATER_GOOD,'topid'=>$model->uid,'status'=>ImageSource::STATUS_YES])->orderBy("id asc")->all(); $imgcount = ImageSource::find()->where(['type'=>ImageSource::TYPE_MATER_GOOD,'topid'=>$model->uid,'status'=>ImageSource::STATUS_YES])->count(); $imgcount++; }else{ $model =""; } $typelist = MaterType::find()->where(['status'=>MaterType::STATUS_YES])->select('id,name')->all(); return $this->render('add',['model'=>$model,"picture_form" => $picture_form,'typelist'=>$typelist,'shopimg'=>$shopimg,'imgcount'=>$imgcount]); } /** * 修改 */ public function actionEdit() { if(Yii::$app->request->isPost){ $pickup_address_coordinate = Yii::$app->request->post('pickup_address_coordinate');//地址坐标 $id = Yii::$app->request->post('id'); if(empty($pickup_address_coordinate)) { Yii::$app->getSession()->setFlash('error', '获取不到地址坐标'); return $this->redirect(Yii::$app->request->referrer); } if(!empty($id)){ $model = UserMater::find()->where('id=:id',[':id'=>$id])->one(); if(empty($model)) { Yii::$app->getSession()->setFlash('error', '找不到记录'); return $this->redirect(Yii::$app->request->referrer); } $arr = explode(',',$pickup_address_coordinate); $model->latitude = $arr[1]; $model->longitude = $arr[0]; $geohash = new ZM_Geohash(); $geohash->init_codingMap(); $model->hashcode =$geohash->encode($model->latitude,$model->longitude); $model->load(Yii::$app->request->post()); if(Yii::$app->request->post('UserMater')['member'] == UserMater::MEMBER_YES) { if(!empty(Yii::$app->request->post('UserMater')['vip_start'])){ $model->vip_start = strtotime(Yii::$app->request->post('UserMater')['vip_start']);} if(!empty(Yii::$app->request->post('UserMater')['vip_end'])){ $model->vip_end = strtotime(Yii::$app->request->post('UserMater')['vip_end']);} }else{ $model->vip_start = 0 ; $model->vip_end = 0 ; } if ($model->validate() && $model->save()) { $imgs = Yii::$app->request->post('imgs'); // $imgstemp = ImageSource::find()->where(['type'=>ImageSource::TYPE_MATER_GOOD,'topid'=>$model->uid])->orderBy("id asc")->all(); if(!empty($imgs) ) { foreach ($imgs as $imgs_val) { $image_model = new ImageSource(); $image_model->pic = $imgs_val; $image_model->type = ImageSource::TYPE_MATER_GOOD; $image_model->topid = $model->uid; $image_model->created_at = time(); $image_model->updated_at = time(); $image_model->status = ImageSource::STATUS_YES; $image_model->save(); } } $imgsdel = Yii::$app->request->post('imgsdel'); if(!empty($imgsdel)) { foreach ($imgsdel as $imgsdel_val) { $image_model = ImageSource::find()->where(['topid'=>$model->uid,'type'=>ImageSource::TYPE_MATER_GOOD,'pic'=>$imgsdel_val])->one(); $image_model->status = ImageSource::STATUS_NO; $image_model->save(); } } Yii::$app->getSession()->setFlash('success', '修改成功'); return $this->redirect(Yii::$app->request->referrer); }else{ Yii::$app->getSession()->setFlash('error', '修改失败'); return $this->redirect(Yii::$app->request->referrer); } }else{ Yii::$app->getSession()->setFlash('error', '缺少id!'); return $this->redirect(Yii::$app->request->referrer); } } } }