diff --git a/src/plugin/admin/app/common/LayuiForm.php b/src/plugin/admin/app/common/LayuiForm.php index 96e8f06..4a5db9b 100644 --- a/src/plugin/admin/app/common/LayuiForm.php +++ b/src/plugin/admin/app/common/LayuiForm.php @@ -261,6 +261,9 @@ EOF; + @@ -271,6 +274,19 @@ EOF; layui.use(["upload", "layer", "jquery"], function() { let input = layui.jquery("#$id").prev(); input.prev().attr("src", input.val()); + layui.jquery("#attachment-choose-$id").on('click', function() { + parent.layer.open({ + type: 2, + title: "选择附件", + content: "/app/admin/upload/attachment?ext=jpg,jpeg,png,gif,bmp", + area: ["95%", "90%"], + success: function (layero, index) { + parent.layui.$("#layui-layer" + index).data("callback", function (data) { + input.val(data.url).prev().attr("src", data.url); + }); + } + }); + }); layui.upload.render({ elem: "#$id",$options_string done: function (res) { diff --git a/src/plugin/admin/app/controller/UploadController.php b/src/plugin/admin/app/controller/UploadController.php index 7b1936b..98bdfb2 100644 --- a/src/plugin/admin/app/controller/UploadController.php +++ b/src/plugin/admin/app/controller/UploadController.php @@ -44,6 +44,22 @@ class UploadController extends Crud return view("upload/index"); } + /** + * 查询 + * @param Request $request + * @return Response + * @throws BusinessException + */ + public function select(Request $request): Response + { + [$where, $format, $page_size, $field, $order] = $this->selectInput($request); + if (!empty($where['ext']) && is_string($where['ext'])) { + $where['ext'] = ['in', explode(',', $where['ext'])]; + } + $query = $this->doSelect($where, $field, $order); + return $this->doFormat($query, $format, $page_size); + } + /** * 插入 * @param Request $request @@ -105,6 +121,9 @@ class UploadController extends Crud */ public function attachment(Request $request): Response { + if ($request->method() === 'GET') { + return view('upload/attachment'); + } $file = current($request->file()); if (!$file || !$file->isValid()) { return $this->json(1, '未找到文件'); diff --git a/src/plugin/admin/app/view/upload/attachment.html b/src/plugin/admin/app/view/upload/attachment.html new file mode 100644 index 0000000..6ee890e --- /dev/null +++ b/src/plugin/admin/app/view/upload/attachment.html @@ -0,0 +1,420 @@ + + + + + + 浏览页面 + + + + + + +
+
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+
+ + - + +
+
+
+ +
+ +
+
+
+
+ +
+ + + +
+
+ 展开 + 收起 +
+
+
+
+ + +
+
+
+
+
+ + + + + + + + + + diff --git a/src/plugin/admin/app/view/user/insert.html b/src/plugin/admin/app/view/user/insert.html index b188001..ca68ddd 100644 --- a/src/plugin/admin/app/view/user/insert.html +++ b/src/plugin/admin/app/view/user/insert.html @@ -49,6 +49,9 @@ + @@ -166,10 +169,10 @@ el: "#sex", name: "sex", initValue: initValue, - data: e.data, - value: '1', - model: {"icon":"hidden","label":{"type":"text"}}, - clickClose: 'true', + data: e.data, + value: '1', + model: {"icon":"hidden","label":{"type":"text"}}, + clickClose: 'true', radio: 'true', }) } @@ -180,10 +183,23 @@ layui.use(["upload", "layer", "jquery"], function() { let input = layui.jquery("#avatar").prev(); input.prev().attr("src", input.val()); + layui.jquery('#attachment-choose-avatar').on('click', function() { + parent.layer.open({ + type: 2, + title: '选择附件', + content: '/app/admin/upload/attachment', + area: ["95%", "90%"], + success: function (layero, index) { + parent.layui.$("#layui-layer" + index).data("callback", function (data) { + input.val(data.url).prev().attr("src", data.url); + }); + } + }); + }); layui.upload.render({ - elem: "#avatar", - url: '/app/admin/upload/avatar', - acceptMime: 'image/gif,image/jpeg,image/jpg,image/png', + elem: "#avatar", + url: '/app/admin/upload/avatar', + acceptMime: 'image/gif,image/jpeg,image/jpg,image/png', field: '__file__', done: function (res) { if (res.code > 0) return layui.layer.msg(res.msg); @@ -202,7 +218,7 @@ // 字段 登录时间 last_time layui.use(["laydate"], function() { layui.laydate.render({ - elem: "#last_time", + elem: "#last_time", type: 'datetime', }); }) @@ -210,7 +226,7 @@ // 字段 注册时间 join_time layui.use(["laydate"], function() { layui.laydate.render({ - elem: "#join_time", + elem: "#join_time", type: 'datetime', }); })