Example #1
0
 /**
  * (false|int) actionDelete : 根据unitcode删除单位或部门
  * @return false|int
  * @throws NotFoundHttpException
  * @throws \Exception
  */
 public function actionDelete()
 {
     try {
         $user_id = Yii::$app->user->identity->id;
         $unitcode = Yii::$app->request->post('unitcode');
         $unit = $this->findModel($unitcode);
         if (MapUnit::getUserPower($user_id, $unitcode) != MapUnit::USER_POWER_ALLOW) {
             return '权限不足';
         }
         return $unit->delete();
     } catch (\Exception $e) {
         return 'StaleObject';
     }
 }
Example #2
0
 /**
  * (void) validateAttribute : 校验当前用户是否取得单位编码的完全访问权限
  * @param \yii\base\Model $model
  * @param string $attribute
  */
 public function validateAttribute($model, $attribute)
 {
     /** @var integer $user_id 当前用户ID */
     $user_id = Yii::$app->user->identity->id;
     /** @var string $unitcode 校验单位编码 */
     $unitcode = $model->{$attribute};
     switch ($attribute) {
         case 'unitcode':
             //修改
             if (Unit::findOne(['unitcode' => $unitcode]) && MapUnit::getUserPower($user_id, $unitcode) != MapUnit::USER_POWER_ALLOW) {
                 $this->addError($model, $attribute, '你没有单位(部门)『' . $unitcode . '』的『完全访问』权限.');
             }
             break;
         case 'upunitcode':
             //新增
             if (!Unit::findOne(['upunitcode' => $unitcode]) && MapUnit::getUserPower($user_id, $unitcode) < MapUnit::USER_POWER_VIEW_DEPT) {
                 $this->addError($model, $attribute, '你没有单位(部门)『' . $unitcode . '』的『完全访问』权限.');
             }
             break;
     }
 }
Example #3
0
 /**
  * (string) actionCheckUnitAccessible : 客户端ajax校验当前用户是否取得单位编码的完全访问权限
  * 见common\components\validators\UnitAccessible
  * @return string
  */
 public function actionCheckUnitAccessible()
 {
     /** @var string $attribute 字段:unitcode、upunitcode或unit */
     $attribute = Yii::$app->request->post('attribute');
     /** @var string $value 字段对应的值 */
     $value = Yii::$app->request->post('value');
     /** @var integer $user_id 当前用户ID */
     $user_id = Yii::$app->user->identity->id;
     $errMsg = '';
     switch ($attribute) {
         case 'unitcode':
             //修改
             if (Unit::findOne(['unitcode' => $value]) && MapUnit::getUserPower($user_id, $value) != MapUnit::USER_POWER_ALLOW) {
                 $errMsg = '你没有单位(部门)『' . $value . '』的『完全访问』权限.';
             }
             break;
         case 'upunitcode':
             //新增
             if (!Unit::findOne(['upunitcode' => $value]) && MapUnit::getUserPower($user_id, $value) < MapUnit::USER_POWER_VIEW_DEPT) {
                 $errMsg = '你没有单位(部门)『' . $value . '』的『完全访问』权限.';
             }
             break;
     }
     return $errMsg;
 }