Example #1
0
 /**
  * load数据并进行读取权限判断
  */
 protected static function loadList($p_where = null, $p_order = null, $p_pageIndex = null, $p_pageSize = null, &$p_countThis = null, $isDetail = false)
 {
     $tmpResult = parent::loadList($p_where, $p_order, $p_pageIndex, $p_pageSize, $p_countThis, $isDetail);
     if (is_array($tmpResult) && array_key_exists('errorCode', $tmpResult)) {
         return $tmpResult;
     }
     switch ($auth = static::getAuthIfUserCanDoIt(Utility::getCurrentUserID(), $isDetail ? 'detail' : 'list', $tmpResult)) {
         case 'admin':
             //有管理权限
         //有管理权限
         case 'self':
             //作者
             break;
             //仅管理员和自己可见
         //仅管理员和自己可见
         case 'normal':
             //正常用户
         //正常用户
         case 'draft':
             //未激活
         //未激活
         case 'pending':
             //待审禁言
         //待审禁言
         case 'disabled':
             //封号
         //封号
         case 'visitor':
             //游客
             return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作');
             //其他用户不可见
             break;
         case 'empty':
             //空
             return Utility::getArrayForResults(RUNTIME_CODE_ERROR_DATA_EMPTY, '不存在对应数据');
             break;
         default:
             return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作');
             break;
     }
     MissionModel::$authViewDisabled = static::$authViewDisabledList[$auth];
     return $tmpResult;
 }
Example #2
0
 /**
  * 根据订单状态,获得用户对应的可操作状态
  * @param  int $p_userID       用户ID
  * @param  [type] $p_itemModel [description]
  * @return [type]              [description]
  */
 public static function getNextAction($p_userID, MissionModel $p_targetModel)
 {
     $actionNext = array();
     if ($p_targetModel->getBossID() == $p_userID) {
         switch ($p_targetModel->getMissionStatus()) {
             case static::NEWAPPLY:
                 $actionNext = array(static::OFFER, static::REJECT);
                 break;
             case static::OFFERED:
                 $actionNext = array(static::ADVANCED);
                 break;
             case static::ADVANCED:
                 $actionNext = array(static::COMPLETED);
                 break;
             case static::COMPLETED:
                 $actionNext = array(static::PAYED);
                 break;
             case static::PAYED:
                 $actionNext = array(static::COMMENTED);
                 break;
             case static::DISABLED:
             case static::COMMENTED:
             default:
                 $actionNext = array();
                 break;
         }
     }
     return $actionNext;
 }