fix some
This commit is contained in:
parent
24d4c928c8
commit
f1f38dae33
@ -32,8 +32,7 @@
|
||||
"openspout/openspout": "3.7.4",
|
||||
"ext-zip": "*",
|
||||
"phpoffice/phpspreadsheet": "^1.25",
|
||||
"gregwar/captcha": "^1.1",
|
||||
"umono/yii2-multiple": "^0.1.0"
|
||||
"gregwar/captcha": "^1.1"
|
||||
},
|
||||
"provide": {
|
||||
"bower-asset/jquery": "*",
|
||||
|
||||
@ -4,12 +4,13 @@
|
||||
|
||||
use app\modules\backend\api\Controller;
|
||||
use app\modules\backend\api\helpers\DeleteHelper;
|
||||
use app\modules\backend\api\helpers\ExportDeleteHelper;
|
||||
|
||||
class DeleteController extends Controller
|
||||
{
|
||||
public function actionSelect()
|
||||
{
|
||||
DeleteHelper::go($this->param);
|
||||
ExportDeleteHelper::can(ExportDeleteHelper::DELETE,$this->param);
|
||||
return $this->success(SUCCESS);
|
||||
}
|
||||
}
|
||||
@ -3,6 +3,7 @@
|
||||
namespace app\modules\backend\api\controllers;
|
||||
|
||||
use app\modules\backend\api\Controller;
|
||||
use app\modules\backend\api\helpers\ExportDeleteHelper;
|
||||
use umono\multiple\helpers\ExportHelper;
|
||||
|
||||
class ExportController extends Controller
|
||||
@ -12,11 +13,11 @@
|
||||
*/
|
||||
public function actionSelect()
|
||||
{
|
||||
return ExportHelper::exportSelect($this->param);
|
||||
return ExportDeleteHelper::can(ExportDeleteHelper::EXPORT_SELECT, $this->param);
|
||||
}
|
||||
|
||||
public function actionAll()
|
||||
{
|
||||
return ExportHelper::exportAll($this->param);
|
||||
return ExportDeleteHelper::can(ExportDeleteHelper::EXPORT_ALL, $this->param);
|
||||
}
|
||||
}
|
||||
47
src/modules/backend/api/helpers/ExportDeleteHelper.php
Normal file
47
src/modules/backend/api/helpers/ExportDeleteHelper.php
Normal file
@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
namespace app\modules\backend\api\helpers;
|
||||
|
||||
use app\common\models\admin\AdminGroup;
|
||||
use app\modules\backend\api\helpers\DeleteHelper;
|
||||
use app\modules\backend\api\models\other\User;
|
||||
use umono\multiple\helpers\ExportHelper;
|
||||
use umono\multiple\interfacing\ExportDelete;
|
||||
use yii\helpers\Inflector;
|
||||
use yii\web\ForbiddenHttpException;
|
||||
|
||||
class ExportDeleteHelper
|
||||
{
|
||||
const DELETE = 'delete';
|
||||
const EXPORT_SELECT = 'export-select';
|
||||
const EXPORT_ALL = 'export-all';
|
||||
|
||||
public static function can($action, $param)
|
||||
{
|
||||
$model = ExportDelete::getModelClass($param['uid']);
|
||||
|
||||
$name = $model::camel2id();
|
||||
|
||||
$url = $name . '/' . $action;
|
||||
|
||||
if (\Yii::$app->user->id !== 1) {
|
||||
$adminGroupId = \Yii::$app->user->getIdentity()->adminGroupId;
|
||||
|
||||
$permissions = AdminGroup::getPermissionsById($adminGroupId);
|
||||
|
||||
if (!AdminGroup::checkUrlInPermissions($url, $permissions)) {
|
||||
throw new ForbiddenHttpException('您没有权限进行此操作');
|
||||
}
|
||||
}
|
||||
|
||||
switch ($action) {
|
||||
case self::DELETE:
|
||||
DeleteHelper::go($param);
|
||||
break;
|
||||
case self::EXPORT_SELECT:
|
||||
return ExportHelper::exportSelect($param);
|
||||
case self::EXPORT_ALL:
|
||||
return ExportHelper::exportAll($param);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -105,6 +105,7 @@ export default defineComponent({
|
||||
const reload: any = inject("reload")
|
||||
const store = useStore();
|
||||
|
||||
let loading: any = ref(false)
|
||||
let toUrl: any = ref('');
|
||||
let toModel: any = ref({});
|
||||
let showModal: any = ref(false);
|
||||
@ -118,6 +119,7 @@ export default defineComponent({
|
||||
|
||||
watch(() => props.showModal, (val: boolean) => {
|
||||
showModal.value = val;
|
||||
loading.value = false;
|
||||
});
|
||||
|
||||
watch(() => props.selectRowArr, (arr: any) => {
|
||||
@ -190,11 +192,11 @@ export default defineComponent({
|
||||
})
|
||||
});
|
||||
return {
|
||||
loading,
|
||||
name,
|
||||
toUrl,
|
||||
toModel,
|
||||
showModal,
|
||||
loading: ref(false),
|
||||
dragOptions,
|
||||
dragData,
|
||||
selectColumnArr,
|
||||
|
||||
@ -51,6 +51,7 @@
|
||||
<p>⛏️ <n-button strong tertiary type="success" size="small" @click="item.child.push({})">
|
||||
添加权限</n-button>
|
||||
</p>
|
||||
<p class="text-gray-400">每个实例模型对应都会有:***/delete、***/export-select、***/export-all 方法,分别为删除、导出所选、导出全部,有需要管理则可以添加。</p>
|
||||
<n-table :single-line="false">
|
||||
<thead>
|
||||
<tr class="text-stone-400">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user