Compare commits
5 Commits
7e5a83a81f
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 2849ed83db | |||
| fe8c5646d2 | |||
| 1b8a0f2d0b | |||
| 1890c5882b | |||
| 6a9f16e2da |
@@ -30,6 +30,7 @@ return new class extends Migration
|
||||
$table->increments('id');
|
||||
$table->integer('category_id')->default(0)->comment('所属分类ID');
|
||||
$table->string('title', 100)->comment('导航标题');
|
||||
$table->json('tag')->comment('导航标签');
|
||||
$table->integer('image_id')->comment('导航图标信息');
|
||||
$table->string('link', 500)->nullable()->default('')->comment('跳转链接');
|
||||
$table->unsignedTinyInteger('status')->default(0)->comment('状态:0=启用,1=禁用');
|
||||
|
||||
@@ -18,6 +18,7 @@ class SysCategoryItemFormRequest extends BaseFormRequest
|
||||
'title' => 'required|string|max:100',
|
||||
'image_id' => ['required', 'integer', new Exists(SysFileModel::class, 'id')],
|
||||
'link' => 'nullable|string|max:500',
|
||||
'tag' => 'nullable|array',
|
||||
'status' => 'nullable|integer|in:0,1',
|
||||
'sort' => 'nullable|integer',
|
||||
];
|
||||
|
||||
@@ -18,6 +18,7 @@ class SysCategoryItemModel extends Model
|
||||
'status' => 'int',
|
||||
'sort' => 'int',
|
||||
'image_id' => 'int',
|
||||
'tag' => 'array',
|
||||
];
|
||||
|
||||
protected $fillable = [
|
||||
@@ -25,6 +26,7 @@ class SysCategoryItemModel extends Model
|
||||
'title',
|
||||
'image_id',
|
||||
'link',
|
||||
'tag',
|
||||
'status',
|
||||
'sort',
|
||||
];
|
||||
|
||||
@@ -84,11 +84,12 @@ class IndexController extends BaseController
|
||||
$menus = SysRuleModel::query()
|
||||
->where('status', 1)
|
||||
->whereIn('type', ['menu','route'])
|
||||
->orderBy('order')
|
||||
->get()
|
||||
->toArray();
|
||||
} else {
|
||||
$roles = SysUserModel::with(['roles.rules' => function ($query) {
|
||||
$query->where('status', 1)->whereIn('type', ['menu','route']);
|
||||
$query->where('status', 1)->whereIn('type', ['menu','route'])->orderBy('order');
|
||||
}])->find($id)->roles->toArray();
|
||||
|
||||
$menus = collect($roles)
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{Dr as t,t as n}from"./jsx-runtime-ADHq9IcL.js";import{t as r}from"./typography-C2UybztD.js";import{t as i}from"./badge-Cim9D6DD.js";import{n as a}from"./LockOutlined-rb6chlKx.js";import{o}from"./XinForm-CH1TH01p.js";import{t as s}from"./image-CBJbXNqF.js";import{t as c}from"./tag-BMkLMUVK.js";import{t as l}from"./useTranslation-DIuTqE8W.js";import{t as u}from"./XinTable-DP0Q6sQS.js";var d=e(t(),1),f=e(a(),1),p=n(),{Title:m,Text:h}=r;function g(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function _(){let{t:e}=l(),[t,n]=(0,d.useState)([]);(0,d.useEffect)(()=>{o(`/system/category`,{pageSize:1e3}).then(e=>{let t=e.data?.data?.data??[];n(t.map(e=>({label:e.name,value:e.id})))}).catch(()=>{})},[]);let r=[{title:e(`system.activity.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.activity.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.activity.title.required`)}]},{title:e(`system.activity.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.activity.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=g(t.image);return n?(0,p.jsx)(s,{src:n,width:120,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.activity.description`),dataIndex:`description`,valueType:`textarea`,colProps:{span:24},hideInSearch:!0,fieldProps:{rows:3,placeholder:e(`system.activity.description.placeholder`)},render:e=>e||`-`},{title:e(`system.activity.linkType`),dataIndex:`link_type`,valueType:`select`,colProps:{span:12},initialValue:0,rules:[{required:!0,message:e(`system.activity.linkType.required`)}],fieldProps:{options:[{label:e(`system.activity.linkType.link`),value:0},{label:e(`system.activity.linkType.category`),value:1}]},render:t=>t===1?(0,p.jsx)(c,{color:`blue`,children:e(`system.activity.linkType.category`)}):(0,p.jsx)(c,{children:e(`system.activity.linkType.link`)})},{title:e(`system.activity.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.activity.link.placeholder`)},render:(e,t)=>{if(t.link_type===1){let e=t.category?.name;return e?(0,p.jsx)(c,{children:e}):`-`}return t.link||`-`},dependency:{dependencies:[`link_type`],visible:e=>e.link_type!==1}},{title:e(`system.activity.category`),dataIndex:`category_id`,valueType:`select`,colProps:{span:12},hideInSearch:!0,hideInTable:!0,fieldProps:{options:t,showSearch:!0,optionFilterProp:`label`,placeholder:e(`system.activity.category.placeholder`)},dependency:{dependencies:[`link_type`],visible:e=>e.link_type===1}},{title:e(`system.activity.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.activity.status.normal`),value:0},{text:e(`system.activity.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.activity.status.required`)}],fieldProps:{options:[{label:e(`system.activity.status.normal`),value:0},{label:e(`system.activity.status.disabled`),value:1}]},render:t=>t===0?(0,p.jsx)(i,{status:`success`,text:e(`system.activity.status.normal`)}):(0,p.jsx)(i,{status:`error`,text:e(`system.activity.status.disabled`)})},{title:e(`system.activity.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.activity.createdAt`),dataIndex:`created_at`,render:e=>e?(0,f.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`mb-5`,children:[(0,p.jsx)(m,{level:3,children:e(`system.activity.page.title`)}),(0,p.jsx)(h,{type:`secondary`,children:e(`system.activity.page.description`)})]}),(0,p.jsx)(u,{api:`/system/activity`,columns:r,rowKey:`id`,accessName:`system.activity`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:800},searchProps:!1,scroll:{x:1e3}})]})}export{_ as default};
|
||||
@@ -0,0 +1 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{Dr as t,t as n}from"./jsx-runtime-ADHq9IcL.js";import{t as r}from"./typography-C2UybztD.js";import{t as i}from"./badge-Cim9D6DD.js";import{n as a}from"./LockOutlined-rb6chlKx.js";import{o}from"./XinForm-CH1TH01p.js";import{t as s}from"./image-CBJbXNqF.js";import{t as c}from"./tag-BMkLMUVK.js";import{t as l}from"./useTranslation-DIuTqE8W.js";import{t as u}from"./XinTable-DP0Q6sQS.js";var d=e(t(),1),f=e(a(),1),p=n(),{Title:m,Text:h}=r;function g(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function _(){let{t:e}=l(),[t,n]=(0,d.useState)([]);(0,d.useEffect)(()=>{o(`/system/category`,{pageSize:1e3}).then(e=>{let t=e.data?.data?.data??[];n(t.map(e=>({label:e.name,value:e.id})))}).catch(()=>{})},[]);let r=[{title:e(`system.carousel.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.carousel.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.carousel.title.required`)}]},{title:e(`system.carousel.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.carousel.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=g(t.image);return n?(0,p.jsx)(s,{src:n,width:120,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.carousel.linkType`),dataIndex:`link_type`,valueType:`select`,colProps:{span:12},initialValue:0,rules:[{required:!0,message:e(`system.carousel.linkType.required`)}],fieldProps:{options:[{label:e(`system.carousel.linkType.link`),value:0},{label:e(`system.carousel.linkType.category`),value:1}]},render:t=>t===1?(0,p.jsx)(c,{color:`blue`,children:e(`system.carousel.linkType.category`)}):(0,p.jsx)(c,{children:e(`system.carousel.linkType.link`)})},{title:e(`system.carousel.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.carousel.link.placeholder`)},render:(e,t)=>{if(t.link_type===1){let e=t.category?.name;return e?(0,p.jsx)(c,{children:e}):`-`}return t.link||`-`},dependency:{dependencies:[`link_type`],visible:e=>e.link_type!==1}},{title:e(`system.carousel.category`),dataIndex:`category_id`,valueType:`select`,colProps:{span:12},hideInSearch:!0,hideInTable:!0,fieldProps:{options:t,showSearch:!0,optionFilterProp:`label`,placeholder:e(`system.carousel.category.placeholder`)},dependency:{dependencies:[`link_type`],visible:e=>e.link_type===1}},{title:e(`system.carousel.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.carousel.status.normal`),value:0},{text:e(`system.carousel.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.carousel.status.required`)}],fieldProps:{options:[{label:e(`system.carousel.status.normal`),value:0},{label:e(`system.carousel.status.disabled`),value:1}]},render:t=>t===0?(0,p.jsx)(i,{status:`success`,text:e(`system.carousel.status.normal`)}):(0,p.jsx)(i,{status:`error`,text:e(`system.carousel.status.disabled`)})},{title:e(`system.carousel.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.carousel.createdAt`),dataIndex:`created_at`,render:e=>e?(0,f.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`mb-5`,children:[(0,p.jsx)(m,{level:3,children:e(`system.carousel.page.title`)}),(0,p.jsx)(h,{type:`secondary`,children:e(`system.carousel.page.description`)})]}),(0,p.jsx)(u,{api:`/system/carousel`,columns:r,rowKey:`id`,accessName:`system.carousel`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:800},searchProps:!1,scroll:{x:1e3}})]})}export{_ as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{t}from"./jsx-runtime-ADHq9IcL.js";import{t as n}from"./typography-C2UybztD.js";import{t as r}from"./badge-Cim9D6DD.js";import{n as i}from"./LockOutlined-rb6chlKx.js";import{t as a}from"./image-CBJbXNqF.js";import{t as o}from"./useTranslation-DIuTqE8W.js";import{t as s}from"./XinTable-DP0Q6sQS.js";var c=e(i(),1),l=t(),{Title:u,Text:d}=n;function f(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function p(){let{t:e}=o(),t=[{title:e(`system.carousel.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.carousel.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.carousel.title.required`)}]},{title:e(`system.carousel.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.carousel.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=f(t.image);return n?(0,l.jsx)(a,{src:n,width:120,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.carousel.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.carousel.link.placeholder`)}},{title:e(`system.carousel.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.carousel.status.normal`),value:0},{text:e(`system.carousel.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.carousel.status.required`)}],fieldProps:{options:[{label:e(`system.carousel.status.normal`),value:0},{label:e(`system.carousel.status.disabled`),value:1}]},render:t=>t===0?(0,l.jsx)(r,{status:`success`,text:e(`system.carousel.status.normal`)}):(0,l.jsx)(r,{status:`error`,text:e(`system.carousel.status.disabled`)})},{title:e(`system.carousel.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.carousel.createdAt`),dataIndex:`created_at`,render:e=>e?(0,c.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`mb-5`,children:[(0,l.jsx)(u,{level:3,children:e(`system.carousel.page.title`)}),(0,l.jsx)(d,{type:`secondary`,children:e(`system.carousel.page.description`)})]}),(0,l.jsx)(s,{api:`/system/carousel`,columns:t,rowKey:`id`,accessName:`system.carousel`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:800},searchProps:!1,scroll:{x:1e3}})]})}export{p as default};
|
||||
@@ -0,0 +1 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{t}from"./jsx-runtime-ADHq9IcL.js";import{o as n}from"./chunk-KS7C4IRE-CN93VkYO.js";import{t as r}from"./typography-C2UybztD.js";import{a as i}from"./lodash-D-pgfsxw.js";import{t as a}from"./tooltip-CRuv8UNz.js";import{t as o}from"./button-CcpWP-mq.js";import{t as s}from"./badge-Cim9D6DD.js";import{n as c}from"./LockOutlined-rb6chlKx.js";import{t as l}from"./useTranslation-DIuTqE8W.js";import{t as u}from"./XinTable-DP0Q6sQS.js";var d=e(c(),1),f=t(),{Title:p,Text:m}=r;function h(){let{t:e}=l(),t=n(),r=[{title:e(`system.category.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.category.name`),dataIndex:`name`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.category.name.required`)}]},{title:e(`system.category.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.category.status.normal`),value:0},{text:e(`system.category.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.category.status.required`)}],fieldProps:{options:[{label:e(`system.category.status.normal`),value:0},{label:e(`system.category.status.disabled`),value:1}]},render:t=>t===0?(0,f.jsx)(s,{status:`success`,text:e(`system.category.status.normal`)}):(0,f.jsx)(s,{status:`error`,text:e(`system.category.status.disabled`)})},{title:e(`system.category.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.category.createdAt`),dataIndex:`created_at`,render:e=>e?(0,d.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}],c=e=>{t(`/system/category/item?categoryId=${e.id}&categoryName=${encodeURIComponent(e.name||``)}`)};return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)(`div`,{className:`mb-5`,children:[(0,f.jsx)(p,{level:3,children:e(`system.category.page.title`)}),(0,f.jsx)(m,{type:`secondary`,children:e(`system.category.page.description`)})]}),(0,f.jsx)(u,{api:`/system/category`,columns:r,rowKey:`id`,accessName:`system.category`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:600},searchProps:!1,operateProps:{fixed:`right`,width:180},scroll:{x:1e3},operateRender:(t,n)=>[(0,f.jsx)(a,{title:e(`system.category.manageItems`),children:(0,f.jsx)(o,{type:`default`,icon:(0,f.jsx)(i,{}),size:`small`,onClick:()=>c(t)})},`items`),n.edit,n.del]})]})}export{h as default};
|
||||
@@ -0,0 +1 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{Dr as t,t as n}from"./jsx-runtime-ADHq9IcL.js";import{t as r}from"./typography-C2UybztD.js";import{t as i}from"./badge-Cim9D6DD.js";import{n as a}from"./LockOutlined-rb6chlKx.js";import{o}from"./XinForm-CH1TH01p.js";import{t as s}from"./image-CBJbXNqF.js";import{t as c}from"./tag-BMkLMUVK.js";import{t as l}from"./useTranslation-DIuTqE8W.js";import{t as u}from"./XinTable-DP0Q6sQS.js";var d=e(t(),1),f=e(a(),1),p=n(),{Title:m,Text:h}=r;function g(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function _(){let{t:e}=l(),[t,n]=(0,d.useState)([]);(0,d.useEffect)(()=>{o(`/system/category`,{pageSize:1e3}).then(e=>{let t=e.data?.data?.data??[];n(t.map(e=>({label:e.name,value:e.id})))}).catch(()=>{})},[]);let r=[{title:e(`system.gridNav.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.gridNav.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.gridNav.title.required`)}]},{title:e(`system.gridNav.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.gridNav.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=g(t.image);return n?(0,p.jsx)(s,{src:n,width:60,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.gridNav.linkType`),dataIndex:`link_type`,valueType:`select`,colProps:{span:12},initialValue:0,rules:[{required:!0,message:e(`system.gridNav.linkType.required`)}],fieldProps:{options:[{label:e(`system.gridNav.linkType.link`),value:0},{label:e(`system.gridNav.linkType.category`),value:1}]},render:t=>t===1?(0,p.jsx)(c,{color:`blue`,children:e(`system.gridNav.linkType.category`)}):(0,p.jsx)(c,{children:e(`system.gridNav.linkType.link`)})},{title:e(`system.gridNav.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.gridNav.link.placeholder`)},render:(e,t)=>{if(t.link_type===1){let e=t.category?.name;return e?(0,p.jsx)(c,{children:e}):`-`}return t.link||`-`},dependency:{dependencies:[`link_type`],visible:e=>e.link_type!==1}},{title:e(`system.carousel.category`),dataIndex:`category_id`,valueType:`select`,colProps:{span:12},hideInSearch:!0,hideInTable:!0,fieldProps:{options:t,showSearch:!0,optionFilterProp:`label`,placeholder:e(`system.carousel.category.placeholder`)},dependency:{dependencies:[`link_type`],visible:e=>e.link_type===1}},{title:e(`system.gridNav.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.gridNav.status.normal`),value:0},{text:e(`system.gridNav.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.gridNav.status.required`)}],fieldProps:{options:[{label:e(`system.gridNav.status.normal`),value:0},{label:e(`system.gridNav.status.disabled`),value:1}]},render:t=>t===0?(0,p.jsx)(i,{status:`success`,text:e(`system.gridNav.status.normal`)}):(0,p.jsx)(i,{status:`error`,text:e(`system.gridNav.status.disabled`)})},{title:e(`system.gridNav.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.gridNav.createdAt`),dataIndex:`created_at`,render:e=>e?(0,f.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`mb-5`,children:[(0,p.jsx)(m,{level:3,children:e(`system.gridNav.page.title`)}),(0,p.jsx)(h,{type:`secondary`,children:e(`system.gridNav.page.description`)})]}),(0,p.jsx)(u,{api:`/system/grid-nav`,columns:r,rowKey:`id`,accessName:`system.grid-nav`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:800},searchProps:!1,scroll:{x:1e3}})]})}export{_ as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{t}from"./jsx-runtime-ADHq9IcL.js";import{t as n}from"./typography-C2UybztD.js";import{t as r}from"./badge-Cim9D6DD.js";import{n as i}from"./LockOutlined-rb6chlKx.js";import{t as a}from"./image-CBJbXNqF.js";import{t as o}from"./useTranslation-DIuTqE8W.js";import{t as s}from"./XinTable-DP0Q6sQS.js";var c=e(i(),1),l=t(),{Title:u,Text:d}=n;function f(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function p(){let{t:e}=o(),t=[{title:e(`system.gridNav.id`),dataIndex:`id`,hideInForm:!0,width:80,sorter:!0,align:`center`},{title:e(`system.gridNav.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.gridNav.title.required`)}]},{title:e(`system.gridNav.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.gridNav.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=f(t.image);return n?(0,l.jsx)(a,{src:n,width:60,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.gridNav.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.gridNav.link.placeholder`)}},{title:e(`system.gridNav.status`),dataIndex:`status`,valueType:`select`,filters:[{text:e(`system.gridNav.status.normal`),value:0},{text:e(`system.gridNav.status.disabled`),value:1}],colProps:{span:12},rules:[{required:!0,message:e(`system.gridNav.status.required`)}],fieldProps:{options:[{label:e(`system.gridNav.status.normal`),value:0},{label:e(`system.gridNav.status.disabled`),value:1}]},render:t=>t===0?(0,l.jsx)(r,{status:`success`,text:e(`system.gridNav.status.normal`)}):(0,l.jsx)(r,{status:`error`,text:e(`system.gridNav.status.disabled`)})},{title:e(`system.gridNav.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.gridNav.createdAt`),dataIndex:`created_at`,render:e=>e?(0,c.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`mb-5`,children:[(0,l.jsx)(u,{level:3,children:e(`system.gridNav.page.title`)}),(0,l.jsx)(d,{type:`secondary`,children:e(`system.gridNav.page.description`)})]}),(0,l.jsx)(s,{api:`/system/grid-nav`,columns:t,rowKey:`id`,accessName:`system.grid-nav`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:800},searchProps:!1,scroll:{x:1e3}})]})}export{p as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
import{i as e}from"./rolldown-runtime-BgaNhQyE.js";import{Dr as t,t as n}from"./jsx-runtime-ADHq9IcL.js";import{o as r,s as i}from"./chunk-KS7C4IRE-CN93VkYO.js";import{t as a}from"./typography-C2UybztD.js";import{t as o}from"./space-BqavXZJj.js";import{t as s}from"./button-CcpWP-mq.js";import{t as c}from"./LeftOutlined-DolIAuof.js";import{t as l}from"./badge-Cim9D6DD.js";import{n as u}from"./LockOutlined-rb6chlKx.js";import{i as d,s as f}from"./XinForm-CH1TH01p.js";import{t as p}from"./image-CBJbXNqF.js";import{t as m}from"./tag-BMkLMUVK.js";import{t as h}from"./useTranslation-DIuTqE8W.js";import{t as g}from"./XinTable-DP0Q6sQS.js";var _=e(t(),1),v=e(u(),1),y=n(),{Title:b}=a;function x(e){return e?typeof e==`string`?e:e.preview_url||e.file_url||``:``}function S(){let{t:e}=h(),t=r(),[n]=i(),a=n.get(`categoryId`),u=n.get(`categoryName`)||``,[S,C]=(0,_.useState)({id:a?parseInt(a):0,name:decodeURIComponent(u)});(0,_.useEffect)(()=>{a&&C({id:parseInt(a),name:decodeURIComponent(u)})},[a,u]);let w=[{title:e(`system.category.item.id`),dataIndex:`id`,hideInForm:!0,width:80,align:`center`},{title:e(`system.category.item.title`),dataIndex:`title`,valueType:`text`,colProps:{span:12},rules:[{required:!0,message:e(`system.category.item.title.required`)}]},{title:e(`system.category.item.image`),dataIndex:`image_id`,valueType:`image`,colProps:{span:24},rules:[{required:!0,message:e(`system.category.item.image.required`)}],hideInSearch:!0,fieldProps:{action:`/system/file/list/upload`,mode:`single`,maxCount:1,changeType:`id`},render:(e,t)=>{let n=x(t.image);return n?(0,y.jsx)(p,{src:n,width:60,height:60,style:{objectFit:`cover`,borderRadius:4}}):`-`}},{title:e(`system.category.item.link`),dataIndex:`link`,valueType:`text`,colProps:{span:12},hideInSearch:!0,fieldProps:{placeholder:e(`system.category.item.link.placeholder`)}},{title:e(`system.category.item.tag`),dataIndex:`tag`,valueType:`select`,colProps:{span:24},hideInSearch:!0,fieldProps:{mode:`tags`,placeholder:e(`system.category.item.tag.placeholder`)},render:e=>{if(!e)return`-`;let t=Array.isArray(e)?e:[e];return t.length===0?`-`:(0,y.jsx)(o,{size:[4,4],wrap:!0,children:t.map(e=>(0,y.jsx)(m,{color:`blue`,children:e},e))})}},{title:e(`system.category.item.status`),dataIndex:`status`,valueType:`select`,colProps:{span:12},initialValue:0,rules:[{required:!0,message:e(`system.category.item.status.required`)}],fieldProps:{options:[{label:e(`system.category.item.status.normal`),value:0},{label:e(`system.category.item.status.disabled`),value:1}]},render:t=>t===0?(0,y.jsx)(l,{status:`success`,text:e(`system.category.item.status.normal`)}):(0,y.jsx)(l,{status:`error`,text:e(`system.category.item.status.disabled`)})},{title:e(`system.category.item.sort`),dataIndex:`sort`,valueType:`digit`,colProps:{span:12},hideInSearch:!0,initialValue:0,fieldProps:{min:0,style:{width:`100%`}}},{title:e(`system.category.item.createdAt`),dataIndex:`created_at`,render:e=>e?(0,v.default)(e).format(`YYYY-MM-DD HH:mm`):`-`,hideInForm:!0,hideInSearch:!0,width:160}];return S.id?(0,y.jsxs)(o,{orientation:`vertical`,style:{width:`100%`},children:[(0,y.jsxs)(`div`,{children:[(0,y.jsx)(s,{type:`link`,onClick:()=>{t(`/system/category`)},icon:(0,y.jsx)(c,{}),classNames:{root:`p-0 mb-2`},children:e(`system.category.backToList`)}),(0,y.jsx)(b,{level:3,children:(0,y.jsxs)(`span`,{className:`mr-2`,children:[e(`system.category.itemManagement`),` - `,S.name]})})]}),(0,y.jsx)(g,{api:`/system/category/item`,columns:w,rowKey:`id`,accessName:`system.category.item`,formProps:{grid:!0,colProps:{span:12},rowProps:{gutter:[30,0]},layout:`vertical`},modalProps:{width:600},requestParams:e=>({...e,category_id:S.id}),searchShow:!1,handleFinish:async(t,n,r,i)=>(n===`create`?(await d(`/system/category/item`,{...t,tag:t.tag??[],category_id:S.id}),window.$message?.success(e(`system.category.item.createSuccess`))):(await f(`/system/category/item/`+i?.id,{...t,tag:t.tag??[],category_id:S.id}),window.$message?.success(e(`system.category.item.updateSuccess`))),!0)})]}):(0,y.jsx)(`div`,{style:{padding:50,textAlign:`center`},children:(0,y.jsx)(`div`,{style:{marginTop:50,color:`#999`},children:e(`system.category.selectCategoryFirst`)})})}export{S as default};
|
||||
+1
-1
@@ -5,7 +5,7 @@
|
||||
<link rel="icon" type="image/svg+xml" href="/favicons.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>XinAdmin</title>
|
||||
<script type="module" crossorigin src="/assets/index-BNgk58PL.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-COxzduNb.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-BgaNhQyE.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/jsx-runtime-ADHq9IcL.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/chunk-KS7C4IRE-CN93VkYO.js">
|
||||
|
||||
@@ -11,6 +11,8 @@ export interface ICategoryItem {
|
||||
image: ISysFileInfo | string;
|
||||
/** 跳转链接 */
|
||||
link?: string;
|
||||
/** 导航标签(字符串数组) */
|
||||
tag?: string[];
|
||||
/** 状态:0=启用,1=禁用 */
|
||||
status: number;
|
||||
/** 排序 */
|
||||
|
||||
@@ -28,6 +28,8 @@ export default {
|
||||
"system.category.item.image.required": "Item icon is required",
|
||||
"system.category.item.link": "Redirect Link",
|
||||
"system.category.item.link.placeholder": "Enter redirect link",
|
||||
"system.category.item.tag": "Tags",
|
||||
"system.category.item.tag.placeholder": "Type and press Enter to add a tag",
|
||||
"system.category.item.status": "Status",
|
||||
"system.category.item.status.required": "Status is required",
|
||||
"system.category.item.status.normal": "Active",
|
||||
|
||||
@@ -28,6 +28,8 @@ export default {
|
||||
"system.category.item.image.required": "导航图标不能为空",
|
||||
"system.category.item.link": "跳转链接",
|
||||
"system.category.item.link.placeholder": "请输入跳转链接",
|
||||
"system.category.item.tag": "标签",
|
||||
"system.category.item.tag.placeholder": "输入后按回车添加标签",
|
||||
"system.category.item.status": "状态",
|
||||
"system.category.item.status.required": "状态不能为空",
|
||||
"system.category.item.status.normal": "启用",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import XinTable from '@/components/XinTable';
|
||||
import { Badge, Button, Image, Space, Typography } from 'antd';
|
||||
import { Badge, Button, Image, Space, Tag, Typography } from 'antd';
|
||||
import { LeftOutlined } from '@ant-design/icons';
|
||||
import type { ICategoryItem } from '@/domain/iCategoryItem';
|
||||
import type { XinTableColumn } from '@/components/XinTable/typings';
|
||||
@@ -98,6 +98,29 @@ export default function CategoryItemPage() {
|
||||
placeholder: t('system.category.item.link.placeholder'),
|
||||
},
|
||||
},
|
||||
{
|
||||
title: t('system.category.item.tag'),
|
||||
dataIndex: 'tag',
|
||||
valueType: 'select',
|
||||
colProps: { span: 24 },
|
||||
hideInSearch: true,
|
||||
fieldProps: {
|
||||
mode: 'tags',
|
||||
placeholder: t('system.category.item.tag.placeholder'),
|
||||
},
|
||||
render: (value: string[] | string | null) => {
|
||||
if (!value) return '-';
|
||||
const tags = Array.isArray(value) ? value : [value];
|
||||
if (tags.length === 0) return '-';
|
||||
return (
|
||||
<Space size={[4, 4]} wrap>
|
||||
{tags.map((tag) => (
|
||||
<Tag key={tag} color="blue">{tag}</Tag>
|
||||
))}
|
||||
</Space>
|
||||
);
|
||||
},
|
||||
},
|
||||
{
|
||||
title: t('system.category.item.status'),
|
||||
dataIndex: 'status',
|
||||
@@ -188,12 +211,14 @@ export default function CategoryItemPage() {
|
||||
if (mode === 'create') {
|
||||
await Create('/system/category/item', {
|
||||
...values,
|
||||
tag: values.tag ?? [],
|
||||
category_id: currentCategory.id,
|
||||
});
|
||||
window.$message?.success(t('system.category.item.createSuccess'));
|
||||
} else {
|
||||
await Update('/system/category/item/' + defaultValue?.id, {
|
||||
...values,
|
||||
tag: values.tag ?? [],
|
||||
category_id: currentCategory.id,
|
||||
});
|
||||
window.$message?.success(t('system.category.item.updateSuccess'));
|
||||
|
||||
@@ -68,7 +68,7 @@ export default function createRouter() {
|
||||
},
|
||||
{
|
||||
path: '/',
|
||||
element: <Navigate to="/dashboard/analysis"/>
|
||||
element: <Navigate to="/system/category"/>
|
||||
},
|
||||
{
|
||||
path: "login",
|
||||
|
||||
Reference in New Issue
Block a user