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 @@ + + + +
+ +