예제 #1
0
 /**
  * 删除用户地址信息
  */
 public function actionDelete($id)
 {
     //判断用户是否登录
     if (!UserBaseInfo::isLogin()) {
         return $this->redirect(Url::toRoute('user/login'));
     }
     $id = intval($id);
     if (!$id) {
         return Util::setAlert('地址id不存在', 'address/index');
     }
     //从session或cookie中获取用户id
     $userId = UserBaseInfo::getUserId();
     $address = new Address();
     $data = $address->getById($id);
     if (!$data) {
         return Util::setAlert('地址信息不存在', 'address/index');
     }
     if ($data['user_id'] != $userId) {
         return Util::setAlert('不能操作其他用户的地址信息', 'address/index');
     }
     $result = $address->del($id);
     $addressLog = new UserOperateLog();
     if ($result) {
         $data = $addressLog->store('用户地址删除', '', '{"id" : ' . $id . '}', $result);
         if (!$data) {
             FileLogger::getInstance(date('Ymd') . '_address_operate_fail.log')->writeOne($id, Logger::LEVEL_ERROR, 'add_log_fail');
         }
         return $this->redirect(Url::toRoute('address/index'));
     } else {
         $data = $addressLog->store('用户地址删除', '', '{"id" : ' . $id . '}', $result);
         if (!$data) {
             FileLogger::getInstance(date('Ymd') . '_address_operate_fail.log')->writeOne($id, Logger::LEVEL_ERROR, 'add_log_fail');
         }
         return Util::setAlert('删除失败', 'address/index');
     }
 }