Files
safePower/dist/assets/087AC4D233B64EB0sysDictionary.C4ImlqR9.js
xiaozhiyong 9c5961efe9 更新
2026-04-29 09:15:49 +08:00

5 lines
6.7 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*!
Build based on gin-vue-admin
Time : 1776662816000 */
import{O as e,a,g as l,a8 as t,c as s,o as u,f as r,w as n,b as o,a2 as i,d,i as c,x as p,b7 as v,h as m,z as y,F as f,J as b,n as D,t as x,ay as g,b8 as k,k as w,E as I}from"./087AC4D233B64EB0index.D-00lXMX.js";import{g as h,f as V,d as _,c as C,u as B}from"./087AC4D233B64EB0sysDictionary.D-ywXlKI.js";import{_ as j}from"./087AC4D233B64EB0warningBar.BOeRS2jX.js";import E from"./087AC4D233B64EB0sysDictionaryDetail.BY9gS2IW.js";import"./087AC4D233B64EB0sysDictionaryDetail.CaMj87ch.js";const U={class:"flex-none bg-white text-slate-700 dark:text-slate-400 dark:bg-slate-900 rounded p-4"},z={class:"flex justify-between items-center relative"},A=["onClick"],q={class:"max-w-[160px] truncate"},F={key:0,class:"text-xs text-gray-400 mr-1"},O={class:"mr-auto text-sm"},S={class:"min-w-[40px]"},T={class:"flex-1 bg-white text-slate-700 dark:text-slate-400 dark:bg-slate-900"},J={class:"flex justify-between items-center"},K={class:"text-lg"},L=Object.assign({name:"SysDictionary"},{__name:"sysDictionary",setup(L){const M=e(),$=a(0),G=a({name:null,type:null,status:!0,desc:null,parentID:null}),H=a(""),N=a(!1),P=a({name:[{required:!0,message:"请输入字典名(中)",trigger:"blur"}],type:[{required:!0,message:"请输入字典名(英)",trigger:"blur"}],desc:[{required:!0,message:"请输入描述",trigger:"blur"}]}),Q=a([]),R=a([]),W=async()=>{const e=await h({name:H.value.trim()});0===e.code&&(Q.value=e.data,$.value=e.data[0].ID,X())},X=()=>{"update"===ee.value&&G.value.ID?R.value=Q.value.filter(e=>e.ID!==G.value.ID&&!Y(e.ID,G.value.ID)):R.value=[...Q.value]},Y=(e,a)=>{const l=Q.value.find(a=>a.ID===e);return!(!l||!l.parentID)&&(l.parentID===a||Y(l.parentID,a))};W();const Z=a(!1),ee=a(""),ae=()=>{Z.value=!1,G.value={name:null,type:null,status:!0,desc:null,parentID:null}},le=a(null),te=async()=>{le.value.validate(async e=>{if(!e)return;let a;switch(ee.value){case"create":default:a=await C(G.value);break;case"update":a=await B(G.value)}0===a.code&&(I.success("操作成功"),ae(),W())})},se=()=>{ee.value="create",le.value&&le.value.clearValidate(),Z.value=!0,X()},ue=()=>{N.value&&(H.value="",N.value=!1,W())},re=()=>{N.value&&""==H.value.trim()&&(N.value=!1)},ne=()=>{N.value=!0},oe=e=>{"Enter"===e.key&&""!==H.value.trim()&&W()};return(e,a)=>{const h=l("el-button"),C=l("el-input"),B=l("el-icon"),L=l("Delete"),Y=l("el-scrollbar"),ie=l("el-splitter-panel"),de=l("el-splitter"),ce=l("el-option"),pe=l("el-select"),ve=l("el-form-item"),me=l("el-switch"),ye=l("el-form"),fe=l("el-drawer"),be=t("click-outside");return u(),s("div",null,[r(j,{title:"获取字典且缓存方法已在前端utils/dictionary 已经封装完成 不必自己书写 使用方法查看文件内注释"}),r(de,{class:"h-full"},{default:n(()=>[r(ie,{size:"400px",min:"200px",max:"800px",collapsible:""},{default:n(()=>[o("div",U,[o("div",z,[a[8]||(a[8]=o("span",{class:"text font-bold"},"字典列表",-1)),N.value?i((u(),c(C,{key:0,class:"!absolute top-0 left-0 z-2 ease-in-out animate-slide-left",placeholder:"搜索",modelValue:H.value,"onUpdate:modelValue":a[0]||(a[0]=e=>H.value=e),clearable:"",autofocus:N.value,onClear:ue,"prefix-icon":p(v),onKeydown:oe},{append:n(()=>[r(h,{type:H.value?"primary":"info",onClick:W},{default:n(()=>[...a[7]||(a[7]=[m("搜索",-1)])]),_:1},8,["type"])]),_:1},8,["modelValue","autofocus","prefix-icon"])),[[be,re]]):d("",!0),r(h,{class:"ml-auto",icon:p(v),onClick:ne},null,8,["icon"]),r(h,{type:"primary",onClick:se,icon:p(y)},null,8,["icon"])]),r(Y,{class:"mt-4",style:{height:"calc(100vh - 300px)"}},{default:n(()=>[(u(!0),s(f,null,b(Q.value,e=>(u(),s("div",{key:e.ID,class:D(["rounded flex justify-between items-center px-2 py-4 cursor-pointer mt-2 hover:bg-blue-50 dark:hover:bg-blue-900 bg-gray-50 dark:bg-gray-800 gap-4",[$.value===e.ID?"text-active":"text-slate-700 dark:text-slate-50",e.parentID?"ml-4 border-l-2 border-blue-200":""]]),onClick:a=>{return l=e,void($.value=l.ID);var l}},[o("div",q,[e.parentID?(u(),s("span",F,"└─")):d("",!0),m(" "+x(e.name)+" ",1),o("span",O,""+x(e.type)+"",1)]),o("div",S,[r(B,{class:"text-blue-500",onClick:g(a=>(async e=>{const a=await V({ID:e.ID,status:e.status});ee.value="update",0===a.code&&(G.value=a.data.resysDictionary,Z.value=!0,X())})(e),["stop"])},{default:n(()=>[r(p(k))]),_:1},8,["onClick"]),r(B,{class:"ml-2 text-red-500",onClick:a=>(async e=>{w.confirm("确定要删除吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{0===(await _({ID:e.ID})).code&&(I({type:"success",message:"删除成功"}),W())})})(e)},{default:n(()=>[r(L)]),_:1},8,["onClick"])])],10,A))),128))]),_:1})])]),_:1}),r(ie,{min:200},{default:n(()=>[o("div",T,[r(E,{"sys-dictionary-i-d":$.value},null,8,["sys-dictionary-i-d"])])]),_:1})]),_:1}),r(fe,{modelValue:Z.value,"onUpdate:modelValue":a[6]||(a[6]=e=>Z.value=e),size:p(M).drawerSize,"show-close":!1,"before-close":ae},{header:n(()=>[o("div",J,[o("span",K,x("create"===ee.value?"添加字典":"修改字典"),1),o("div",null,[r(h,{onClick:ae},{default:n(()=>[...a[9]||(a[9]=[m(" 取 消 ",-1)])]),_:1}),r(h,{type:"primary",onClick:te},{default:n(()=>[...a[10]||(a[10]=[m(" 确 定 ",-1)])]),_:1})])])]),default:n(()=>[r(ye,{ref_key:"drawerForm",ref:le,model:G.value,rules:P.value,"label-width":"110px"},{default:n(()=>[r(ve,{label:"父级字典",prop:"parentID"},{default:n(()=>[r(pe,{modelValue:G.value.parentID,"onUpdate:modelValue":a[1]||(a[1]=e=>G.value.parentID=e),placeholder:"请选择父级字典(可选)",clearable:"",filterable:"",style:{width:"100%"}},{default:n(()=>[(u(!0),s(f,null,b(R.value,e=>(u(),c(ce,{key:e.ID,label:"".concat(e.name,"").concat(e.type,""),value:e.ID},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),r(ve,{label:"字典名(中)",prop:"name"},{default:n(()=>[r(C,{modelValue:G.value.name,"onUpdate:modelValue":a[2]||(a[2]=e=>G.value.name=e),placeholder:"请输入字典名(中)",clearable:"",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),r(ve,{label:"字典名(英)",prop:"type"},{default:n(()=>[r(C,{modelValue:G.value.type,"onUpdate:modelValue":a[3]||(a[3]=e=>G.value.type=e),placeholder:"请输入字典名(英)",clearable:"",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),r(ve,{label:"状态",prop:"status",required:""},{default:n(()=>[r(me,{modelValue:G.value.status,"onUpdate:modelValue":a[4]||(a[4]=e=>G.value.status=e),"active-text":"开启","inactive-text":"停用"},null,8,["modelValue"])]),_:1}),r(ve,{label:"描述",prop:"desc"},{default:n(()=>[r(C,{modelValue:G.value.desc,"onUpdate:modelValue":a[5]||(a[5]=e=>G.value.desc=e),placeholder:"请输入描述",clearable:"",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","size"])])}}});export{L as default};