crud.1c7dceee.js 4.7 KB

1
  1. import{r as o,A as _,I as v}from"./index.9b1873ac.js";import"./elementPlus.94498fe7.js";import{t as f}from"./index.d1c00dc1.js";import{d as V,r as x,w as M,ai as q,o as h,c as y,F as C,a8 as R,M as L,O,S as k,T as S,k as w,s as n}from"./vue.86c1cb21.js";import{_ as T}from"./_plugin-vue_export-helper.c27b6911.js";import{a as b}from"./authFunction.58577dbf.js";const s="/api/system/message_center/";function D(t){return o({url:s,method:"get",params:t})}function I(t){return o({url:s+t+"/",method:"get"})}function j(t){return o({url:s+"get_self_receive/",method:"get",params:t})}function B(t){return o({url:s,method:"post",data:t})}function F(t){return o({url:s+t.id+"/",method:"put",data:t})}function G(t){return o({url:s+t+"/",method:"delete",data:{id:t}})}const A=V({__name:"index",props:{modelValue:Array,bindValue:Array,displayLabel:{type:String,default:""}},setup(t){const l=t,d=x();M(()=>l.bindValue,u=>{const{displayLabel:m}=l,i=u?u.map(e=>e[m]):null;d.value=i},{immediate:!0});const c=["success","info","warning","danger"],p=()=>c[Math.floor(Math.random()*c.length)];return(u,m)=>{const i=q("el-tag");return h(),y("div",null,[(h(!0),y(C,null,R(d.value,(e,r)=>(h(),L(i,{class:"many-to-many-tag",type:p,key:r},{default:O(()=>[k(S(e),1)]),_:2},1024))),128))])}}});const g=T(A,[["__scopeId","data-v-4dbdd8c1"]]),{compute:a}=v(),E=function({crudExpose:t,tabActivted:l}){const d=async e=>l.value==="receive"?await j(e):await D(e),c=async({form:e,row:r})=>(e.id=r.id,await F(e)),p=async({row:e})=>await G(e.id),u=async({form:e})=>await B(e),m=async({row:e})=>await I(e.id),i=w(()=>l.value==="receive");return{crudOptions:{request:{pageRequest:d,addRequest:u,editRequest:c,delRequest:p},actionbar:{buttons:{add:{show:w(()=>l.value!=="receive"&&b("messageCenter:Create"))}}},rowHandle:{fixed:"right",width:150,buttons:{edit:{show:!1},view:{text:"查看",type:"text",iconRight:"View",show:b("messageCenter:Search"),click({index:e,row:r}){t.openView({index:e,row:r}),l.value==="receive"&&(m({row:r}),t.doRefresh())}},remove:{iconRight:"Delete",type:"text",show:b("messageCenter:Delete")}}},columns:{id:{title:"id",form:{show:!1}},title:{title:"标题",search:{show:!0},type:["text","colspan"],column:{minWidth:120},form:{rules:[{required:!0,message:"必填项"}],component:{span:24,placeholder:"请输入标题"}}},is_read:{title:"是否已读",type:"dict-select",column:{show:i.value},dict:_({data:[{label:"已读",value:!0,color:"success"},{label:"未读",value:!1,color:"danger"}]}),form:{show:!1}},target_type:{title:"目标类型",type:["dict-radio","colspan"],column:{minWidth:120},dict:_({data:[{value:0,label:"按用户"},{value:1,label:"按角色"},{value:2,label:"按部门"},{value:3,label:"通知公告"}]}),form:{component:{optionName:"el-radio-button"},rules:[{required:!0,message:"必选项",trigger:["blur","change"]}]}},target_user:{title:"目标用户",search:{disabled:!0},form:{component:{name:n(f),vModel:"modelValue",displayLabel:a(({row:e})=>e?e.user_info:null),tableConfig:{url:"/api/system/user/",label:"name",value:"id",isMultiple:!0,columns:[{prop:"name",label:"用户名称",width:120},{prop:"phone",label:"用户电话",width:120}]}},show:a(({form:e})=>e.target_type===0),rules:[{required:!0,message:"必填项"}]},column:{show:!1,component:{name:n(g),vModel:"modelValue",bindValue:a(({row:e})=>e.user_info),displayLabel:"name"}}},target_role:{title:"目标角色",search:{disabled:!0},width:130,form:{component:{name:n(f),vModel:"modelValue",displayLabel:a(({row:e})=>e?e.role_info:null),tableConfig:{url:"/api/system/role/",label:"name",value:"id",isMultiple:!0,columns:[{prop:"name",label:"角色名称"},{prop:"key",label:"权限标识"}]}},show:a(({form:e})=>e.target_type===1),rules:[{required:!0,message:"必填项"}]},column:{show:!1,component:{name:n(g),vModel:"modelValue",bindValue:a(({row:e})=>e.role_info),displayLabel:"name"}}},target_dept:{title:"目标部门",search:{disabled:!0},width:130,type:"table-selector",form:{component:{name:n(f),vModel:"modelValue",displayLabel:a(({form:e})=>e.target_dept_name),tableConfig:{url:"/api/system/dept/all_dept/",label:"name",value:"id",isTree:!0,isMultiple:!0,columns:[{prop:"name",label:"部门名称",width:150},{prop:"status_label",label:"状态"},{prop:"parent_name",label:"父级部门"}]}},show:a(({form:e})=>e.target_type===2),rules:[{required:!0,message:"必填项"}]},column:{show:!1,component:{name:n(g),vModel:"modelValue",bindValue:a(({row:e})=>e.dept_info),displayLabel:"name"}}},content:{title:"内容",column:{width:300,show:!1},type:["editor-wang5","colspan"],form:{rules:[{required:!0,message:"必填项"}],component:{disabled:!0,id:"1",editorConfig:{readOnly:a(e=>{const{mode:r}=e;return r!=="add"})},uploader:{type:"form",buildUrl(e){return e.url}}}}}}}}};export{E as createCrudOptions};