初始化本地仓库

This commit is contained in:
2026-08-31 11:33:59 +08:00
commit 663f74b633
2390 changed files with 402918 additions and 0 deletions
@@ -0,0 +1,88 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use app\model\system\Admin;
use core\base\BaseValidate;
use Illuminate\Validation\Rule;
class AdminValidate extends BaseValidate
{
/**
* 定义验证规则
*/
public function rules(): array
{
$id = request()->route->param('id');
return [
'user_name' => ['required', 'max:50', Rule::unique(Admin::class, 'user_name')->ignore($id, 'id')],
'real_name' => 'required',
'password' => 'required|min:5|max:18',
'dept_id' => 'required',
'mobile_phone' => 'required|mobile',
'old_password' => 'required',
'new_password' => 'required|min:5|max:18',
'id' => 'required',
];
}
/**
* 定义错误信息
*/
protected array $message = [
'id.required' => '缺少参数id',
'user_name.required' => '用户名必须填写',
'user_name.max' => '用户名最多不能超过18个字符',
'user_name.unique' => '用户名已被占用',
'real_name.required' => '姓名必须填写',
'password.required' => '密码必须填写',
'password.min' => '密码最少为5位',
'password.max' => '密码长度不能超过18位',
'old_password.required' => '旧密码不能为空',
'new_password.required' => '密码必须填写',
'new_password.min' => '密码最少为5位',
'new_password.max' => '密码长度不能超过18位',
'dept_id' => '部门必须填写',
'mobile_phone.required' => '手机号码必须填写',
'mobile_phone.mobile' => '无效手机号码',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'user_name',
'password',
'mobile_phone',
],
'update' => [
'user_name',
'mobile_phone',
],
'update-info' => [
'real_name',
'mobile_phone',
'sex',
],
'update-pwd' => [
'new_password',
'old_password',
],
'update-preferences' => [
'id',
],
];
}
@@ -0,0 +1,43 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class AuthValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
];
/**
* 定义错误信息
*/
protected array $message = [
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
],
'update' => [
],
];
}
@@ -0,0 +1,56 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class DeptValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'code' => 'require|alphaDash',
'name' => 'require|max:16',
'enabled' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'code.require' => '部门标识必须填写',
'code.alphaDash' => '部门标识只能由英文字母组成',
'name.require' => '部门名称必须填写',
'name.max' => '部门名称最多不能超过16个字符',
'enabled' => '状态必须填写',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'code',
'name',
'enabled',
],
'update' => [
'code',
'name',
'enabled',
],
];
}
@@ -0,0 +1,62 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class DictItemValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'label' => 'require',
'value' => 'require',
'enabled' => 'require',
'dict_id' => 'require',
'code' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'label' => '字典名称必须填写',
'value' => '字典标识必须填写',
'enabled' => '状态必须填写',
'dict_id' => '字典类型必须填写',
'code' => '字典标识必须填写',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'label',
'value',
'enabled',
'dict_id',
'code',
],
'update' => [
'label',
'value',
'enabled',
'dict_id',
'code',
],
];
}
@@ -0,0 +1,64 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class DictValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'name' => 'require|max:16',
'code' => 'require|alphaDash',
'enabled' => 'require',
'data_type' => 'require',
'sort' => 'number',
];
/**
* 定义错误信息
*/
protected array $message = [
'name.require' => '字典名称必须填写',
'name.max' => '字典名称最多不能超过16个字符',
'code.require' => '字典标识必须填写',
'code.alphaDash' => '字典标识只能由英文字母组成',
'data_type.require' => '字典数据类型必须填写',
'enabled' => '状态必须填写',
'sort.number' => '排序只能是数字',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'name',
'code',
'enabled',
'data_type',
'sort',
],
'update' => [
'name',
'code',
'data_type',
'enabled',
'sort',
],
];
}
@@ -0,0 +1,38 @@
<?php
declare(strict_types=1);
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class FeedbackValidate extends BaseValidate
{
protected array $rule = [
'id' => 'require',
'type' => 'require|in:bug,suggestion,correction',
'content' => 'require|max:2000',
'contact' => 'max:100',
'images' => 'array',
'source' => 'require|in:app,web',
'reply_content' => 'max:2000',
];
protected array $message = [
'type.require' => '请选择反馈类型',
'type.in' => '反馈类型不正确',
'content.require' => '请填写问题描述',
'content.max' => '问题描述不能超过2000个字符',
'contact.max' => '联系方式不能超过100个字符',
'images.array' => '截图附件格式不正确',
'source.require' => '请选择反馈来源',
'source.in' => '反馈来源不正确',
'reply_content.max' => '回复内容不能超过2000个字符',
];
protected array $scene = [
'store' => ['type', 'content', 'contact', 'images', 'source'],
'update' => ['id', 'type', 'content', 'contact', 'images', 'source'],
'reply' => ['id', 'reply_content'],
];
}
@@ -0,0 +1,71 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
/**
* 菜单验证器
*/
class MenuValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'pid' => 'require',
'code' => 'require',
'title' => 'require|max:16',
'type' => 'number',
'sort' => 'number',
'enabled' => 'number',
];
/**
* 定义错误信息
*/
protected array $message = [
'pid.require' => '菜单上级必须填写',
'code.require' => '菜单标识必须填写',
'title.require' => '菜单名称必须填写',
'title.max' => '菜单名称最多不能超过16个字符',
'enabled' => '状态必须填写',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'code',
'title',
'type',
'sort',
'enabled',
],
'update' => [
'code',
'title',
'type',
'sort',
'enabled',
],
'batch-store' => [
'title',
'type',
'sort',
],
];
}
@@ -0,0 +1,61 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class MessageValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'id' => 'require',
'title' => 'require',
'content' => 'require',
'status' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'id.require' => '参数错误缺少id',
'title.require' => '公告名称必须填写',
'content.require' => '公共内容不能为空',
'status' => '状态必须填写',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'title',
'type',
'content',
],
'update' => [
'id',
'title',
'type',
'content',
],
'update-read'=>[
'id',
'status'
]
];
}
@@ -0,0 +1,59 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class NoticeValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'id' => 'require',
'message_id' => 'require',
'title' => 'require',
'content' => 'require',
'enabled' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'id.require' => '参数错误缺少id',
'message_id.require' => '参数错误缺少message_id',
'title.require' => '公告名称必须填写',
'content.require' => '公共内容不能为空',
'enabled' => '状态必须填写',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'title',
'type',
'content',
],
'update' => [
'id',
'title',
'type',
'content',
],
];
}
@@ -0,0 +1,85 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use app\model\org\Post;
use core\base\BaseValidate;
/**
* 用户角色验证器
*/
class PostValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'dept_id' => 'require',
'code' => 'require|alphaNum|unique',
'name' => 'require|max:16',
'sort' => 'number',
'enabled' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'code.require' => '职位标识必须填写',
'code.alphaNum' => '职位标识只能由英文字或者数字母组成',
'code.unique' => '职位代码已被占用',
'name.require' => '职位名称必须填写',
'name.max' => '职位名称最多不能超过16个字符',
'enabled' => '状态必须填写',
];
/**
* 重复验证
*
* @param $value
* @param $rule
* @param array $data
*
* @return bool
*/
protected function unique($value, $rule, array $data = []): bool
{
$query = Post::where('code', $value);
// 如果是更新操作,可以排除当前记录
if (isset($data['id'])) {
$query->where('id', '<>', $data['id']);
}
return $query->count() === 0;
}
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'code',
'name',
'sort',
'enabled',
],
'update' => [
'code',
'name',
'sort',
'enabled',
],
];
}
@@ -0,0 +1,60 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\adminapi\validate\system;
use core\base\BaseValidate;
class RoleValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected array $rule = [
'id' => 'require',
'code' => 'require|alpha',
'name' => 'require|max:16',
'data_scope' => 'require',
];
/**
* 定义错误信息
*/
protected array $message = [
'id.require' => '参数id不能为空',
'code.require' => '角色标识必须填写',
'code.alpha' => '角色标识只能由英文字母组成',
'name.require' => '角色名称必须填写',
'name.max' => '角色名称最多不能超过16个字符',
'data_scope.require' => '数据权限不能为空',
];
/**
* 定义场景
*/
protected array $scene = [
'store' => [
'code',
'name',
],
'update' => [
'id',
'code',
'name',
],
'data-scope' => [
'id',
'data_scope',
],
];
}