feat:新增数据字典获取、代码块及类目新增编辑、Token过期时间验证 fix:延长token方法报错修复
This commit is contained in:
parent
ad9d261325
commit
fca56bf280
@ -24,8 +24,8 @@ class CodeModule extends BaseController
|
||||
{
|
||||
$params = $request->param();
|
||||
$con = [];
|
||||
|
||||
$con = Tool::getOptionalQuery(['a.code_module_category_guid', '='], ['code_module_name', 'LIKE'], ['code_module_audit', '='],);
|
||||
|
||||
$con = Tool::getOptionalQuery(['a.code_module_category_guid', '='], ['code_module_name', 'LIKE'], ['code_module_audit', '='], );
|
||||
|
||||
$query = ModelCodeModule::where($con)
|
||||
->alias('a')
|
||||
@ -44,7 +44,7 @@ class CodeModule extends BaseController
|
||||
])
|
||||
->order('code_module_sort', 'asc');
|
||||
|
||||
return $isExport ? $query->select()->toArray() : msg("获取代码块列表成功!", $query);
|
||||
return $isExport ? $query->select()->toArray() : msg("获取代码块列表成功!", $query);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -80,7 +80,7 @@ class CodeModule extends BaseController
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
Tool::unlockTable();
|
||||
throw $th;
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
|
||||
@ -98,10 +98,13 @@ class CodeModule extends BaseController
|
||||
'code_module_name|代码块名称' => 'require',
|
||||
'code_module_html|html内容' => 'require',
|
||||
'code_module_sort|排序' => 'require',
|
||||
'code_module_audit|审核状态' => 'require'
|
||||
'code_module_audit|审核状态' => 'require',
|
||||
'code_module_guid|代码块' => 'require'
|
||||
]);
|
||||
$model = ModelCodeModule::where('code_module_guid', $params['code_module_guid'])->find();
|
||||
if (!$model) throwErrorMsg("该代码块不存在", 1);
|
||||
if (!$model) {
|
||||
throwErrorMsg("该代码块不存在", 1);
|
||||
}
|
||||
$model->allowField([
|
||||
'code_module_category_guid',
|
||||
'code_module_name',
|
||||
@ -118,7 +121,7 @@ class CodeModule extends BaseController
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
Tool::unlockTable();
|
||||
throw $th;
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
|
||||
@ -144,7 +147,7 @@ class CodeModule extends BaseController
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
Tool::unlockTable();
|
||||
throw $th;
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
|
||||
@ -486,4 +489,4 @@ class CodeModule extends BaseController
|
||||
'msg' => $msg
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
@ -68,6 +68,7 @@ class CodeModuleCategory extends BaseController
|
||||
'code_module_category_audit',
|
||||
'code_module_category_guid',
|
||||
'code_module_category_create_user_guid',
|
||||
'code_module_category_ps',
|
||||
'code_module_category_update_user_guid'
|
||||
]);
|
||||
return msg('添加成功!');
|
||||
@ -105,6 +106,7 @@ class CodeModuleCategory extends BaseController
|
||||
'code_module_category_library_type',
|
||||
'customer_guid',
|
||||
'code_module_category_audit',
|
||||
'code_module_category_ps',
|
||||
'code_module_category_update_user_guid'
|
||||
])->save($params);
|
||||
CommonLogicCodeModuleCategory::hanldCommonInfoFieldsDataSync($params['code_module_category_guid']);
|
||||
|
118
app/api/controller/CodeCustomer/CodeModule.php
Normal file
118
app/api/controller/CodeCustomer/CodeModule.php
Normal file
@ -0,0 +1,118 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\controller\CodeCustomer;
|
||||
|
||||
use app\BaseController;
|
||||
use app\common\model\Code\CodeModule as ModelCodeModule;
|
||||
use app\api\logic\Code\CodeModule as LogicCodeModule;
|
||||
use app\common\logic\Code\CodeModuleCategory as CommonLogicCodeModuleCategory;
|
||||
use app\Request;
|
||||
use think\Validate;
|
||||
use think\exception\ValidateException;
|
||||
use think\facade\Filesystem;
|
||||
use app\common\arw\adjfut\src\Excel;
|
||||
use app\common\arw\adjfut\src\UploadFile;
|
||||
use think\facade\Db;
|
||||
use app\common\exception\Tool;
|
||||
use think\facade\Env;
|
||||
use app\BaseModel;
|
||||
|
||||
|
||||
class CodeModule extends BaseController
|
||||
{
|
||||
/**
|
||||
* 添加代码块接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-12
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function addCodeModule(Request $request): array
|
||||
{
|
||||
$params = $request->param();
|
||||
$this->validate($params, [
|
||||
'code_module_category_guid|类目' => 'require',
|
||||
'code_module_name|代码块名称' => 'require',
|
||||
'code_module_html|html内容' => 'require',
|
||||
]);
|
||||
LogicCodeModule::validateAddCodeModule($params);
|
||||
|
||||
Db::startTrans();
|
||||
Tool::adminLockTableWrite(['code_module', 'code_module_category']);
|
||||
try {
|
||||
BaseModel::setUserGuid(false);
|
||||
ModelCodeModule::create($params, [
|
||||
'code_module_category_guid',
|
||||
'code_module_name',
|
||||
'code_module_html',
|
||||
'code_module_style',
|
||||
'code_module_script',
|
||||
'code_module_sort',
|
||||
'code_module_audit',
|
||||
'code_module_guid',
|
||||
'code_module_create_user_guid',
|
||||
'code_module_update_user_guid'
|
||||
]);
|
||||
Db::commit();
|
||||
Tool::unlockTable();
|
||||
return msg('添加代码块成功!');
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
Tool::unlockTable();
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑代码块接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-15
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function editCodeModule(Request $request): array
|
||||
{
|
||||
$params = $request->param();
|
||||
$this->validate($params, [
|
||||
'code_module_category_guid|类目' => 'require',
|
||||
'code_module_name|代码块名称' => 'require',
|
||||
'code_module_html|html内容' => 'require',
|
||||
'code_module_sort|排序' => 'require',
|
||||
'code_module_audit|审核状态' => 'require',
|
||||
'code_module_guid|代码块' => 'require'
|
||||
]);
|
||||
$model = ModelCodeModule::where('code_module_guid', $params['code_module_guid'])->find();
|
||||
if (!$model) {
|
||||
throwErrorMsg("该代码块不存在", 1);
|
||||
}
|
||||
LogicCodeModule::validateEditCodeModule($params['code_module_guid']);
|
||||
|
||||
Db::startTrans();
|
||||
Tool::adminLockTableWrite(['code_module', 'dictionary', 'code_module_category']);
|
||||
try {
|
||||
BaseModel::setUserGuid(false);
|
||||
$model->allowField([
|
||||
'code_module_category_guid',
|
||||
'code_module_name',
|
||||
'code_module_html',
|
||||
'code_module_style',
|
||||
'code_module_script',
|
||||
'code_module_sort',
|
||||
'code_module_audit',
|
||||
'code_module_update_user_guid'
|
||||
])->save($params);
|
||||
Db::commit();
|
||||
Tool::unlockTable();
|
||||
return msg('编辑代码块成功!');
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
Tool::unlockTable();
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
109
app/api/controller/CodeCustomer/CodeModuleCategory.php
Normal file
109
app/api/controller/CodeCustomer/CodeModuleCategory.php
Normal file
@ -0,0 +1,109 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\controller\CodeCustomer;
|
||||
|
||||
use app\BaseController;
|
||||
use app\common\model\Code\CodeModuleCategory as ModelCodeModuleCategory;
|
||||
use app\common\arw\adjfut\src\Traverse;
|
||||
use app\Request;
|
||||
use think\Validate;
|
||||
use think\exception\ValidateException;
|
||||
use think\facade\Filesystem;
|
||||
use app\common\arw\adjfut\src\Excel;
|
||||
use app\common\arw\adjfut\src\UploadFile;
|
||||
use think\facade\Db;
|
||||
use app\common\exception\Tool;
|
||||
use app\common\model\Token as ModelToken;
|
||||
use think\facade\Env;
|
||||
use app\api\logic\Code\CodeModuleCategory as LogicCodeModuleCategory;
|
||||
use app\common\logic\Code\CodeModuleCategory as CommonLogicCodeModuleCategory;
|
||||
use app\BaseModel;
|
||||
|
||||
|
||||
class CodeModuleCategory extends BaseController
|
||||
{
|
||||
/**
|
||||
* 添加类目接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-12
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function addCodeModuleCategory(Request $request): array
|
||||
{
|
||||
$params = $request->param();
|
||||
$this->validate($params, [
|
||||
'code_module_category_parent_guid|上级类目guid' => 'require',
|
||||
'code_module_category_name|类目名' => 'require',
|
||||
'code_module_category_sort|排序' => 'require',
|
||||
'code_module_category_global_mode|全局模式' => 'require',
|
||||
'code_module_category_library_type|库类型' => 'require',
|
||||
]);
|
||||
BaseModel::setUserGuid(false);
|
||||
$params['customer_guid'] = ModelToken::getCurrentCustomer()->customer_guid;
|
||||
LogicCodeModuleCategory::validateAddCodeModuleCategory($params);
|
||||
ModelCodeModuleCategory::create($params, [
|
||||
'code_module_category_name',
|
||||
'code_module_category_parent_guid',
|
||||
'code_module_category_sort',
|
||||
'code_module_category_global_mode',
|
||||
'code_module_category_library_type',
|
||||
'customer_guid',
|
||||
'code_module_category_audit',
|
||||
'code_module_category_ps',
|
||||
'code_module_category_guid',
|
||||
'code_module_category_create_user_guid',
|
||||
'code_module_category_update_user_guid'
|
||||
]);
|
||||
return msg('添加类目成功!');
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑类目接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-12
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function editCodeModuleCategory(Request $request): array
|
||||
{
|
||||
$params = $request->param();
|
||||
$this->validate($params, [
|
||||
'code_module_category_name|类目名' => 'require',
|
||||
'code_module_category_sort|排序' => 'require',
|
||||
'code_module_category_global_mode|全局模式' => 'require',
|
||||
'code_module_category_library_type|库类型' => 'require',
|
||||
]);
|
||||
$model = ModelCodeModuleCategory::where('code_module_category_guid', $params['code_module_category_guid'])->find();
|
||||
if (!$model) {
|
||||
throwErrorMsg("该代码块类目不存在", 1);
|
||||
}
|
||||
LogicCodeModuleCategory::validateEditCodeModuleCategory($params['code_module_category_guid']);
|
||||
|
||||
Db::startTrans();
|
||||
try {
|
||||
BaseModel::setUserGuid(false);
|
||||
$model->allowField([
|
||||
'code_module_category_name',
|
||||
'code_module_category_parent_guid',
|
||||
'code_module_category_sort',
|
||||
'code_module_category_global_mode',
|
||||
'code_module_category_library_type',
|
||||
'customer_guid',
|
||||
'code_module_category_audit',
|
||||
'code_module_category_ps',
|
||||
'code_module_category_update_user_guid'
|
||||
])->save($params);
|
||||
CommonLogicCodeModuleCategory::hanldCommonInfoFieldsDataSync($params['code_module_category_guid']);
|
||||
Db::commit();
|
||||
return msg('编辑类目成功!');
|
||||
} catch (\Throwable $th) {
|
||||
Db::rollback();
|
||||
throw $th;
|
||||
}
|
||||
}
|
||||
}
|
@ -7,6 +7,7 @@ use app\Request;
|
||||
use think\Validate;
|
||||
use think\exception\ValidateException;
|
||||
use think\facade\Filesystem;
|
||||
use app\common\model\Dictionary\Dictionary as ModelDictionary;
|
||||
use app\common\arw\adjfut\src\Excel;
|
||||
use app\common\arw\adjfut\src\UploadFile;
|
||||
use app\common\exception\Tool;
|
||||
@ -18,15 +19,25 @@ use think\helper\Arr;
|
||||
class CommonApi extends BaseController
|
||||
{
|
||||
/**
|
||||
* 获取验证码接口
|
||||
*
|
||||
* @return \think\response\Html
|
||||
* @date 2023-04-26
|
||||
* 获取数据字典接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-14
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getCaptcha(): \think\response\Html
|
||||
public function getDictionaryList(Request $request): array
|
||||
{
|
||||
return Captcha::create('verify');
|
||||
$params = $request->param();
|
||||
$this->validate($params, [
|
||||
'dictionary_value|数据字典值' => 'require|in:library_type',
|
||||
]);
|
||||
$select = ModelDictionary::getDictionaryData($params['dictionary_value']);
|
||||
return [
|
||||
'code' => 0,
|
||||
'msg' => 'ok',
|
||||
'data' => $select
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
@ -99,4 +99,26 @@ class Login extends BaseController
|
||||
{
|
||||
return Captcha::create();
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证token接口
|
||||
*
|
||||
* @param Request $request
|
||||
* @return array
|
||||
* @date 2023-07-15
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function validateToken(Request $request): array
|
||||
{
|
||||
$token = $request->getCurrentToken();
|
||||
|
||||
return [
|
||||
'code' => 0,
|
||||
'data' => [
|
||||
'exp_time' => $token->token_exp_time,
|
||||
],
|
||||
'msg' => 'ok'
|
||||
];
|
||||
}
|
||||
}
|
55
app/api/logic/Code/CodeModule.php
Normal file
55
app/api/logic/Code/CodeModule.php
Normal file
@ -0,0 +1,55 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\logic\Code;
|
||||
|
||||
use app\common\model\Code\CodeModuleCategory as ModelCodeModuleCategory;
|
||||
use app\common\model\Code\CodeModule as ModelCodeModule;
|
||||
use app\common\model\Token as ModelToken;
|
||||
use app\common\exception\Tool;
|
||||
|
||||
|
||||
class CodeModule
|
||||
{
|
||||
/**
|
||||
* 代码块新增验证
|
||||
*
|
||||
* @param array $params 新增代码的参数
|
||||
* @return void
|
||||
* @date 2023-07-12
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public static function validateAddCodeModule(array $params): void
|
||||
{
|
||||
if ($params['code_module_category_guid'] != ModelCodeModuleCategory::MASTER_DEFAULT) {
|
||||
$category = ModelCodeModuleCategory::find($params['code_module_category_guid']);
|
||||
if ($category) {
|
||||
if ($category->customer_guid != ModelToken::getCurrentCustomer()->customer_guid) {
|
||||
throwErrorMsg("所选的上级类目不属于当前客户!");
|
||||
}
|
||||
} else {
|
||||
throwErrorMsg("所选的上级类目不存在!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 代码块编辑验证
|
||||
*
|
||||
* @param string $code_module_guid 代码块guid
|
||||
* @return array
|
||||
* @date 2023-07-14
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public static function validateEditCodeModule(string $code_module_guid): void
|
||||
{
|
||||
$module = ModelCodeModule::find($code_module_guid);
|
||||
if (!$module) {
|
||||
throwErrorMsg("所编辑的代码块不存在!");
|
||||
}
|
||||
if ($module->customer_guid != ModelToken::getCurrentCustomer()->customer_guid) {
|
||||
throwErrorMsg("所编辑的代码块不属于当前客户!");
|
||||
}
|
||||
}
|
||||
}
|
@ -3,9 +3,55 @@
|
||||
namespace app\api\logic\Code;
|
||||
|
||||
use app\common\model\Code\CodeModuleCategory as ModelCodeModuleCategory;
|
||||
use app\common\model\Token as ModelToken;
|
||||
use app\common\exception\Tool;
|
||||
|
||||
|
||||
class CodeModuleCategory
|
||||
{
|
||||
/**
|
||||
* 代码类目新增验证
|
||||
*
|
||||
* @param array $params 新增代码类目的参数
|
||||
* @return array
|
||||
* @date 2023-07-14
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public static function validateAddCodeModuleCategory(array $params): void
|
||||
{
|
||||
if ($params['code_module_category_parent_guid'] != ModelCodeModuleCategory::MASTER_DEFAULT) {
|
||||
$category = ModelCodeModuleCategory::find($params['code_module_category_parent_guid']);
|
||||
if ($category) {
|
||||
if ($category->customer_guid != ModelToken::getCurrentCustomer()->customer_guid) {
|
||||
throwErrorMsg("所选的上级类目不属于当前客户!");
|
||||
}
|
||||
} else {
|
||||
throwErrorMsg("所选的上级类目不存在!");
|
||||
}
|
||||
}
|
||||
if (!in_array($params['code_module_category_library_type'], [ModelCodeModuleCategory::LIBRARY_COMMON, ModelCodeModuleCategory::LIBRARY_PRIVATE])) {
|
||||
throwErrorMsg("新增类目的所属库类型异常!");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 代码类目编辑验证
|
||||
*
|
||||
* @param string $code_module_category_guid 类目guid
|
||||
* @return array
|
||||
* @date 2023-07-14
|
||||
* @author xjh
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public static function validateEditCodeModuleCategory(string $code_module_category_guid): void
|
||||
{
|
||||
$category = ModelCodeModuleCategory::find($code_module_category_guid);
|
||||
if (!$category) {
|
||||
throwErrorMsg("所编辑的类目不存在!");
|
||||
}
|
||||
if ($category->customer_guid != ModelToken::getCurrentCustomer()->customer_guid) {
|
||||
throwErrorMsg("所编辑的类目不属于当前客户!");
|
||||
}
|
||||
}
|
||||
}
|
@ -367,7 +367,7 @@ class Token extends BaseModel
|
||||
$model = self::getCurrent();
|
||||
$token_exp_time = $model->token_exp_timestamp;
|
||||
if (time() >= ($token_exp_time - $delay)) {
|
||||
self::login($model->user_guid);
|
||||
self::login($model->user_guid,$model->token_type);
|
||||
}
|
||||
} catch (LoginTimeOut $th) {
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user