From 5d58fb24e93f450345ffcd7b3afe6b4e46c0f3c7 Mon Sep 17 00:00:00 2001 From: wuhui_zzw <1760308791@qq.com> Date: Fri, 27 Oct 2023 10:26:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=E5=85=B8=E8=97=8F?= =?UTF-8?q?=E5=AE=A4=20-=20=E6=B7=BB=E5=8A=A0=E5=94=AF=E4=B8=80=E7=BC=96?= =?UTF-8?q?=E5=8F=B7=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../collection-room/src/PluginApplication.php | 30 ++++++ .../src/admin/IdentifierController.php | 38 ++++++++ .../src/admin/IndexController.php | 2 +- .../models/CollectionRoomIdentifierModel.php | 93 +++++++++++++++++++ .../views/identifier/index.blade.php | 72 ++++++++++++++ 5 files changed, 234 insertions(+), 1 deletion(-) create mode 100644 plugins/collection-room/src/admin/IdentifierController.php create mode 100644 plugins/collection-room/src/models/CollectionRoomIdentifierModel.php create mode 100644 plugins/collection-room/views/identifier/index.blade.php diff --git a/plugins/collection-room/src/PluginApplication.php b/plugins/collection-room/src/PluginApplication.php index 0876bd80..0795c373 100644 --- a/plugins/collection-room/src/PluginApplication.php +++ b/plugins/collection-room/src/PluginApplication.php @@ -4,6 +4,8 @@ namespace Yunshop\CollectionRoom; +use Yunshop\CollectionRoom\models\CollectionRoomIdentifierModel; + class PluginApplication extends \app\common\services\PluginApplication{ protected function setMenuConfig(){ @@ -54,6 +56,29 @@ class PluginApplication extends \app\common\services\PluginApplication{ ], ] ], + 'plugin_collection_room_identifier' => [ + 'name' => '编号管理', + 'permit' => 1, + 'menu' => 1, + 'icon' => '', + 'url' => 'plugin.collection-room.admin.identifier.index', + 'url_params' => '', + 'item' => 'plugin_collection_room_identifier', + 'parents' => ['collection-room'], + 'child' => [ + // 权限补充 + 'plugin_collection_room_identifier_index' => [ + 'name' => '编号管理', + 'url' => 'plugin.collection-room.admin.index.index', + 'url_params' => '', + 'permit' => 1, + 'menu' => 0, + 'icon' => '', + 'item' => 'plugin_collection_room_identifier_index', + 'parents' => ['collection-room','plugin_collection_room_identifier'] + ] + ] + ], 'plugin_collection_room_set' => [ 'name' => '基本设置', 'permit' => 1, @@ -80,6 +105,11 @@ class PluginApplication extends \app\common\services\PluginApplication{ ]); } + public function register(){ + CollectionRoomIdentifierModel::createDefaultData(); + + } + public function boot(){ $events = app('events'); diff --git a/plugins/collection-room/src/admin/IdentifierController.php b/plugins/collection-room/src/admin/IdentifierController.php new file mode 100644 index 00000000..69f00370 --- /dev/null +++ b/plugins/collection-room/src/admin/IdentifierController.php @@ -0,0 +1,38 @@ +input('search'); + // 获取列表信息 + $result = CollectionRoomIdentifierModel::getList($search); + $data = [ + 'list' => $result['data'], + 'pager' => PaginationHelper::show($result['total'],$result['current_page'],$result['per_page']), + 'search' => $search + ]; + + return view('Yunshop\CollectionRoom::identifier.index',$data)->render(); + } + + + + + + + + +} diff --git a/plugins/collection-room/src/admin/IndexController.php b/plugins/collection-room/src/admin/IndexController.php index 26d9724b..e1975634 100644 --- a/plugins/collection-room/src/admin/IndexController.php +++ b/plugins/collection-room/src/admin/IndexController.php @@ -45,7 +45,7 @@ class IndexController extends BaseController{ $isSubmit = (int)request()->input('is_submit'); // 判断:是否为提交信息 if($isSubmit == 1){ - if($uniqueNumber <= 0 || $uniqueNumber > 5000) return $this->errorJson('编号必须大于0且小于5000!'); + if($uniqueNumber <= 0 || $uniqueNumber >= 5000) return $this->errorJson('编号必须大于0且小于等于5000!'); try{ // 判断:当前编号是否已经存在 $isHas = (int)CollectionRoomModel::uniacid() diff --git a/plugins/collection-room/src/models/CollectionRoomIdentifierModel.php b/plugins/collection-room/src/models/CollectionRoomIdentifierModel.php new file mode 100644 index 00000000..957b0a3a --- /dev/null +++ b/plugins/collection-room/src/models/CollectionRoomIdentifierModel.php @@ -0,0 +1,93 @@ + 0) $where[] = ['yz_collection_room_identifier.unique_number','=',$search['unique_number']]; + if(!empty($search['encryption'])) $where[] = ['yz_collection_room_identifier.encryption','=',strtolower($search['encryption'])]; + // 列表获取 + $field = [ + 'yz_collection_room_identifier.id', + 'yz_collection_room_identifier.unique_number', + 'yz_collection_room_identifier.encryption', + 'yz_collection_room_identifier.encryption_type', + 'yz_collection_room.id as collection_room_id' + ]; + + $list = self::uniacid() + ->leftJoin('yz_collection_room','yz_collection_room.unique_number','yz_collection_room_identifier.unique_number') + ->select($field) + ->where($where) + ->orderBy('yz_collection_room_identifier.unique_number','ASC') + ->paginate(10); + + return $list ? $list->toArray() : []; + } + + /** + * Common: 生成默认数据 + * Author: wu-hui + * Time: 2023/10/27 9:52 + */ + public static function createDefaultData(){ + $count = (int)self::uniacid()->count(); + // 没有数据 生成默认数据 + if($count <= 0){ + $uniacid = \YunShop::app()->uniacid; + $insertData = []; + for($i = 1;$i <= self::$num;$i++){ + $insertData[] = [ + 'uniacid' => $uniacid, + 'unique_number' => $i, + 'encryption' => hash(self::$encryptionType,$i), + 'encryption_type' => self::$encryptionType, + ]; + } + + self::insert($insertData); + } + } + + + + + + + + +} \ No newline at end of file diff --git a/plugins/collection-room/views/identifier/index.blade.php b/plugins/collection-room/views/identifier/index.blade.php new file mode 100644 index 00000000..681bf3c7 --- /dev/null +++ b/plugins/collection-room/views/identifier/index.blade.php @@ -0,0 +1,72 @@ + +@extends('layouts.base') + +@section('content') +
+ {{--顶部搜索--}} +
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ + +
+
+
+
+
+ {{--信息列表--}} +
+
+ + + + + + + + + + + @foreach ($list as $item) + + + + + + + @endforeach + +
唯一编号是否分配加密编号(原始)加密编号(字母大写)
{{ $item['unique_number'] }} + @if((int)$item['collection_room_id'] > 0) + 已分配(画ID:{{(int)$item['collection_room_id']}}) + @else + 未分配 + @endif + {{ $item['encryption'] }}{{ strtoupper($item['encryption']) }}
+ {!! $pager !!} +
+
+
+ +@endsection +