15 Commits

Author SHA1 Message Date
JaguarJack
fc5312692f up to 0.4.2 2025-01-18 09:19:49 +08:00
JaguarJack
86bfcea374 remove 2025-01-16 21:20:07 +08:00
JaguarJack
0218207848 up to 0.4.1 2025-01-16 18:23:06 +08:00
JaguarJack
984c00fe6f feat:自定义响应 2025-01-16 18:19:12 +08:00
JaguarJack
c03213e7c3 feat: 支持已有表生成代码 2024-12-22 07:46:20 +08:00
JaguarJack
3867be14b2 up to 0.4.0 2024-12-20 08:40:46 +08:00
JaguarJack
08c3cc9a78 fix: 添加分页属性 2024-12-19 17:22:38 +08:00
JaguarJack
af7ac14d5d chore:添加软连接配置 2024-10-26 12:37:18 +08:00
JaguarJack
6ff2204368 chore 2024-08-12 12:02:33 +08:00
JaguarJack
a3c3948bc6 添加桌面端 2024-08-12 11:58:29 +08:00
JaguarJack
c1aa54bbce update version 2024-07-16 15:33:26 +08:00
JaguarJack
b53c617984 chore:修改模版 2024-07-06 14:54:32 +08:00
JaguarJack
592cae1e2f Merge branch 'server' of https://github.com/JaguarJack/catch-admin into server 2024-07-06 12:43:36 +08:00
JaguarJack
d24036d9f1 Merge pull request #70 from LTaooo/patch-2
make password hidden
2024-07-05 09:00:14 +08:00
Liu
e18b30e89a make password hidden 2024-07-04 20:53:06 +08:00
10 changed files with 62 additions and 10 deletions

View File

@@ -26,6 +26,11 @@
我深信,付费后台管理系统将为您带来更多的价值和便利,帮助您提升工作效率
## 桌面端(付费)
如果需要桌面端后台,使用 `Electron` 技术栈。可以联系微信咨询
<img src="wechat.png" width="200"/>
## ⚠Thinkphp 用户注意
由于新版本使用 `Laravel` 开发,所以请使用 `thinkphp` 分支或者 tag2.6.2thinkphp 版本已经非常稳定了。
@@ -47,7 +52,7 @@
- 加入 Q 群 `302266230` 暗号 `catchadmin`
- 加微信入群,新建🆕
<img src="wechat.png" width="300"/>
<img src="wechat.png" width="200"/>
## 项目地址
- [github catchadmin](https://github.com/jaguarjack/catch-admin)

View File

@@ -15,9 +15,9 @@
"ext-pdo": "*",
"ext-zip": "*",
"guzzlehttp/guzzle": "^7.8.1",
"laravel/framework": "^11.0",
"laravel/framework": "^v11.36.1",
"laravel/tinker": "^v2.9.0",
"catchadmin/core": "^0.3.7"
"catchadmin/core": "^0.4.2"
},
"require-dev": {
"fakerphp/faker": "^v1.23.1",

View File

@@ -71,6 +71,9 @@ return [
'links' => [
public_path('storage') => storage_path('app/public'),
// 创建 storage 对应的软连接
public_path('uploads') => storage_path('uploads')
],
];

View File

@@ -0,0 +1,28 @@
<?php
namespace Modules\Common\Repository\Options;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Str;
class Schemas implements OptionInterface
{
public function get(): array
{
$options = [];
$tablePrefix = DB::connection()->getTablePrefix();
foreach (Schema::getTables() as $table) {
$tableName = Str::of($table['name'])->remove($tablePrefix);
$options[] = [
'label' => $tableName . "\t\t\t\t" . $table['comment'],
'value' => $tableName,
];
}
return $options;
}
}

View File

@@ -48,6 +48,18 @@ class Schemas extends CatchModel
*/
public function storeBy(array $data): bool
{
// 从已有 schema 中选择
if (isset($data['schema_name'])) {
$columns = SchemaFacade::getColumnListing($data['schema_name']);
return parent::storeBy([
'module' => $data['module'],
'name' => $data['schema_name'],
'columns' => implode(',', $columns),
'is_soft_delete' => isset($columns['deleted_at']) ? Status::Enable : Status::Disable,
]);
}
$schema = $data['schema'];
$structures = $data['structures'];

View File

@@ -8,8 +8,8 @@
</template>
<script lang="ts" setup>
import { useCreate } from '/admin/composables/curd/useCreate'
import { useShow } from '/admin/composables/curd/useShow'
import { useCreate } from '@/composables/curd/useCreate'
import { useShow } from '@/composables/curd/useShow'
import { onMounted } from 'vue'
const props = defineProps({

View File

@@ -28,9 +28,9 @@
<script lang="ts" setup>
import { computed, onMounted } from 'vue'
import Create from './create.vue'
import { useGetList } from '/admin/composables/curd/useGetList'
import { useDestroy } from '/admin/composables/curd/useDestroy'
import { useOpen } from '/admin/composables/curd/useOpen'
import { useGetList } from '@/composables/curd/useGetList'
import { useDestroy } from '@/composables/curd/useDestroy'
import { useOpen } from '@/composables/curd/useOpen'
const api = '{api}'

View File

@@ -6,7 +6,9 @@ namespace Modules\Permissions\Http\Controllers;
use Catch\Base\CatchController as Controller;
use Catch\Exceptions\FailedException;
use Catch\Support\ResponseBuilder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Exceptions\ReportableHandler;
use Illuminate\Http\Request;
use Modules\Permissions\Enums\DataRange;
use Modules\Permissions\Models\Roles;

View File

@@ -6,17 +6,17 @@ use Catch\CatchAdmin;
use Catch\Traits\DB\BaseOperate;
use Catch\Traits\DB\ScopeTrait;
use Catch\Traits\DB\Trans;
use Catch\Traits\DB\WithAttributes;
use Illuminate\Contracts\Http\Kernel;
use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
use Symfony\Component\HttpFoundation\Response;
class LogOperate extends Model
{
use BaseOperate, Trans, ScopeTrait;
use BaseOperate, Trans, ScopeTrait, WithAttributes;
protected $table = 'log_operate';

View File

@@ -32,6 +32,8 @@ class User extends Model implements AuthenticatableContract
'id', 'username', 'email', 'avatar', 'password', 'remember_token', 'creator_id', 'status', 'department_id', 'login_ip', 'login_at', 'created_at', 'updated_at', 'deleted_at'
];
protected array $defaultHidden = ['password', 'remember_token'];
/**
* @var array|string[]
*/