2 lines
16 KiB
JavaScript
2 lines
16 KiB
JavaScript
import{S as e,r as l,T as a,l as t,a as o,o as u,c as d,u as n,B as s,F as r,U as i,w as p,b as c,V as m,W as v,v as y,C as h,d as f,X as k,z as _,Y as b,p as g,t as V,Z as w,_ as C,$ as U,a0 as x,E as z,a1 as D,a2 as Y,a3 as E,a4 as S,a5 as j,D as P,f as A,a6 as I,I as H}from"./vendor-CF1QNs3T.js";import{r as M,a as R,b as B,c as $}from"./resource-BPIqni0r.js";import{_ as F,L as N,g as T}from"./index-C3w7fvZ6.js";import{e as q}from"./empty-B2cpdqv8.js";function J(e){let l=[],a=0;return e.forEach((e=>{a++;let t={id:a,label:e.project_name,key:"project",children:[]};e.resource_total_list.forEach((l=>{a++;let o={id:a,label:l.desc,key:"resource",children:[]};for(let t=0;t<l.show_methods.length;t++){a++;const u=l.show_methods[t],d=l.methods_permission[t];let n="";"get"===u?n="查看":"post"===u?n="添加":"put"===u?n="编辑":"delete"===u&&(n="删除");const s={id:d,label:n,key:e.project_id+"_"+l.resource+"_"+u,permissionStr:d};o.children.push(s)}t.children.push(o)})),l.push(t)})),l}const L={class:"app-content"},O={class:"table-content"},W={class:"table"},X={class:"pagination-container"},Z=F({__name:"tableUser",props:{rowClickDialogBtns:Array},setup(F){const Z=N.getCache("resource"),G=F;let K=[];G.rowClickDialogBtns&&(K=G.rowClickDialogBtns);const Q=e(K.map((()=>!1))),ee=l(null),le=l({fields_desc:[],rows:[]}),ae=l(!1),te=Z,oe=void 0!==te.meta.methods.get&&!0===te.meta.methods.get,ue=Z.meta.resource_url,de=l([]),ne=l([]),se=l([]),re=l({}),ie=l(1),pe=l(10),ce=[10,20,50,100],me=l(0),ve=l({id:0,number:1}),ye=T(),he={children:"children",label:"label"},fe=l([]),ke=l([]),_e=async()=>{try{let l={page_no:ie.value,page_len:pe.value,where_conditions:""},a={conditions:[]};ne.value.forEach((e=>{(e.value1||e.value2)&&a.conditions.push({key:e.key,op:e.where,value1:e.value1,value2:e.value2})})),l.where_conditions=JSON.stringify(a);const t=await M(ue,l);if(le.value=t,200!==le.value.code)throw new Error("请求失败,错误码:",le.code);de.value=le.value.data.fields_desc,me.value=le.value.data.total_count,se.value=le.value.data.rows;for(let o=0;o<de.value.length;o++){var e=de.value[o];if(Ce.value[e.key]="",1==e.required&&(re.value[e.key]=[{required:!0,message:e.name+"不能为空",trigger:"blur"}]),"items"==e.type){Ce.value[e.key]=[];for(let l=0;l<se.value.length;l++)se.value[l].jsonValue=JSON.stringify(se.value[l][e.key])}else if("Permissions"==e.key){const e=J(ye);fe.value.push(...e)}else if("UserPass"==e.key)for(let e=0;e<se.value.length;e++)se.value[e].jsonValue="***"}ae.value=!0}catch(l){console.log(l)}};a((()=>{oe&&_e()}));const be=l(!1),ge=l(!1),Ve=l(null),we=l(null),Ce=l({ServerIDs:[],Attach:[],Permissions:[]}),Ue=l({});function xe(e){if(null==ve.value.id||""==ve.value.id||ve.value.id<0)return void H("请选择道具!");if(null==ve.value.num||""==ve.value.num||ve.value.num<=0)return void H("请输入有效道具数量!");let l={id:ve.value.id,num:Number(ve.value.num)};for(let a=0;a<e.choices.length;a++){const t=e.choices[a];if(t.value===ve.value.id){l.item_type=t.type;break}}console.log("add item:",l),"string"==typeof Ce.value.Attach&&(Ce.value.Attach=[]),Ce.value.Attach.push(l)}function ze(e){let l=form.value.Attach.findIndex((l=>l===e));Ce.value.Attach.splice(l,1)}const De=(e,l,a)=>{l?"project"==e.key?e.children.forEach((e=>{e.children.forEach((e=>{ke.value.push(e.permissionStr)}))})):"resource"==e.key?e.children.forEach((e=>{ke.value.push(e.permissionStr)})):ke.value.push(e.permissionStr):"project"==e.key?e.children.forEach((e=>{e.children.forEach((e=>{ke.value=ke.value.filter((l=>l!==e.permissionStr))}))})):"resource"==e.key?e.children.forEach((e=>{ke.value=ke.value.filter((l=>l!==e.permissionStr))})):ke.value=ke.value.filter((l=>l!==e.permissionStr)),console.log("权限被点击了:",e,l,a),console.log("权限点击后:",ke.value)},Ye=()=>{console.log("关闭添加/编辑弹窗"),be.value=!1,ge.value=!1,Ce.value={Attach:[],Permissions:[]},Ue.value={},ke.value=[]},Ee=e=>{me.value<=0||pe.value*ie.value>me.value&&se.value.length>=me.value||_e()},Se=e=>{_e()};return(e,l)=>{const a=v,H=m,M=b,F=t("Edit"),N=g,T=t("Delete"),J=k,Z=w,G=Y,le=D,ne=z,ye=x,_e=E,je=U,Pe=S,Ae=j,Ie=C,He=h,Me=P;return u(),o("div",L,[n(oe)?(u(),o(r,{key:1},[ae.value?(u(),d(Me,{key:0},{default:p((()=>[c(H,null,{default:p((()=>[!0===n(te).meta.methods.post?(u(),d(a,{key:0,onClick:l[0]||(l[0]=e=>be.value=!0),size:"large",type:"primary"},{default:p((()=>l[11]||(l[11]=[y(" 添加 ")]))),_:1})):i("",!0)])),_:1}),c(He,null,{default:p((()=>[f("div",O,[f("div",W,[c(J,{data:se.value,style:{width:"100%"},"table-layout":"auto",stripe:""},{default:p((()=>[(u(!0),o(r,null,_(de.value,(e=>(u(),o(r,null,["items"===e.type?(u(),d(M,{key:0,prop:"jsonValue",label:e.name},null,8,["label"])):"UserPass"===e.key?(u(),d(M,{key:1,prop:"jsonValue",label:e.name},null,8,["label"])):"Permissions"===e.key?(u(),d(M,{key:2,prop:e.key,label:e.name,"show-overflow-tooltip":""},null,8,["prop","label"])):(u(),d(M,{key:3,prop:e.key,label:e.name},null,8,["prop","label"]))],64)))),256)),c(M,{prop:"func",label:"功 能"},{default:p((t=>[!0===n(te).meta.methods.put?(u(),d(a,{key:0,size:"default",type:"success",onClick:e=>{return l=t.$index,a=t.row,Ue.value.oldData=a,Ue.value.oldIndex=l,Ue.value=a,console.log("edit data:",a),ge.value=!0,void(0!=fe.value.length&&(ke.value=function(e,l){let a=[];return e.forEach((e=>{e.children.forEach((e=>{e.children.forEach((e=>{for(let t=0;t<l.length;t++)if(l[t]===e.permissionStr){a.push(e.id);break}}))}))})),a}(fe.value,a.Permissions)));var l,a}},{default:p((()=>[c(N,{style:{"vertical-align":"middle"}},{default:p((()=>[c(F)])),_:1}),l[12]||(l[12]=f("span",null,"编辑",-1))])),_:2},1032,["onClick"])):i("",!0),(u(!0),o(r,null,_(n(K),((l,n)=>(u(),o(r,null,[0===l.btn_type?(u(),d(a,{key:0,size:"default",type:l.btn_color_type,onClick:a=>e.tableSelectRows2(l,t.$index,t.row)},{default:p((()=>[y(V(l.name),1)])),_:2},1032,["type","onClick"])):1===l.btn_type?(u(),d(a,{key:1,size:"default",type:l.btn_color_type,onClick:e=>{return l=n,a=t.row,ee.value=a,Q[l]=!0,void console.log("点击按钮:",ee);var l,a}},{default:p((()=>[y(V(l.name),1)])),_:2},1032,["type","onClick"])):2===l.btn_type?(u(),d(a,{key:2,size:"default",type:l.btn_color_type,onClick:a=>e.tableSelectRow4(l,t.row)},{default:p((()=>[y(V(l.name),1)])),_:2},1032,["type","onClick"])):i("",!0)],64)))),256)),!0===n(te).meta.methods.delete?(u(),d(a,{key:1,size:"default",type:"danger",onClick:e=>{return l=t.$index,a=t.row,void A.confirm("确定要删除吗?").then((()=>{R(ue,{id:a.ID}).then((e=>{I({title:"删除结果通知",message:"删除数据["+a.ID+"]成功!如果页面没有变化,刷新一下!",type:"success",duration:4e3,"show-close":!0}),se.value.splice(l,1)}),(e=>{console.log("delet error:",e)}))})).catch((()=>{}));var l,a}},{default:p((()=>[c(N,{style:{"vertical-align":"middle"}},{default:p((()=>[c(T)])),_:1}),l[13]||(l[13]=f("span",null,"删除",-1))])),_:2},1032,["onClick"])):i("",!0)])),_:1})])),_:1},8,["data"])]),f("div",X,[c(Z,{"current-page":ie.value,"onUpdate:currentPage":l[1]||(l[1]=e=>ie.value=e),"page-size":pe.value,"onUpdate:pageSize":l[2]||(l[2]=e=>pe.value=e),"page-sizes":ce,layout:"total, sizes, prev, pager, next, jumper",total:me.value,onSizeChange:Ee,onCurrentChange:Se},null,8,["current-page","page-size","total"])])]),c(Ie,{modelValue:be.value,"onUpdate:modelValue":l[6]||(l[6]=e=>be.value=e),mask:!0,title:"添加",modal:!0,"before-close":Ye,"destroy-on-close":""},{default:p((()=>[c(je,{ref_key:"dialogAddFormRef",ref:Ve,model:Ce.value,rules:re.value,"label-position":"right","label-width":"130px"},{default:p((()=>[(u(!0),o(r,null,_(de.value,(e=>(u(),o(r,null,["items"===e.type?(u(),o(r,{key:0},[c(je,{inline:!0,model:ve.value,"label-position":"right"},{default:p((()=>[c(ye,{label:e.name,prop:e.key,"label-width":"130px"},{default:p((()=>[c(ne,{effect:"light",content:e.help_text,placement:"bottom-start"},{default:p((()=>[c(le,{placeholder:"--选择道具后填数量点击添加--",modelValue:ve.value.id,"onUpdate:modelValue":l[3]||(l[3]=e=>ve.value.id=e),style:{width:"150px"},filterable:""},{default:p((()=>[(u(!0),o(r,null,_(e.choices,(e=>(u(),d(G,{key:e.desc,label:e.desc,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["modelValue"])])),_:2},1032,["content"])])),_:2},1032,["label","prop"]),c(ye,{label:"数量",prop:"num"},{default:p((()=>[c(_e,{type:"number",modelValue:ve.value.num,"onUpdate:modelValue":l[4]||(l[4]=e=>ve.value.num=e),placeholder:"请输入数量",style:{width:"150px"}},null,8,["modelValue"])])),_:1}),c(ye,null,{default:p((()=>[c(a,{type:"primary",onClick:l=>xe(e)},{default:p((()=>l[14]||(l[14]=[y("添加")]))),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1032,["model"]),c(ye,{label:"奖励列表",prop:"Attach"},{default:p((()=>[c(J,{data:Ce.value.Attach,border:""},{default:p((()=>[c(M,{label:"道具id",prop:"id"}),c(M,{label:"数量",prop:"num"}),c(M,{label:"操作"},{default:p((e=>[c(a,{type:"danger",size:"small",onClick:l=>ze(e.row)},{default:p((()=>l[15]||(l[15]=[y("删除")]))),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])])),_:1})],64)):!0!==e.readonly?(u(),o(r,{key:1},[void 0!==e.choices&&e.choices.length>0?(u(),d(ye,{key:0,label:e.name,prop:e.key},{default:p((()=>[c(ne,{effect:"light",content:e.help_text,placement:"bottom-start"},{default:p((()=>[c(le,{placeholder:!0===e.multi_choice?"--多选--":"--单选--",modelValue:Ce.value[e.key],"onUpdate:modelValue":l=>Ce.value[e.key]=l,style:{width:"150px"},multiple:!0===e.multi_choice},{default:p((()=>[(u(!0),o(r,null,_(e.choices,(e=>(u(),d(G,{key:e.desc,label:e.desc,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["placeholder","modelValue","onUpdate:modelValue","multiple"])])),_:2},1032,["content"])])),_:2},1032,["label","prop"])):"Time"===e.type?(u(),d(ye,{key:1,label:e.name,prop:e.key},{default:p((()=>[c(Pe,{modelValue:Ce.value[e.key],"onUpdate:modelValue":l=>Ce.value[e.key]=l,type:"datetime",placeholder:"选个时间",format:"YYYY/MM/DD HH:mm:ss","value-format":"YYYY/MM/DD HH:mm:ss"},null,8,["modelValue","onUpdate:modelValue"])])),_:2},1032,["label","prop"])):"Permissions"===e.key?(u(),d(ye,{key:2,label:e.name,prop:e.key},{default:p((()=>[c(Ae,{ref_for:!0,ref:"treeRef",data:fe.value,"show-checkbox":"","node-key":"id",props:he,onCheckChange:De},null,8,["data"])])),_:2},1032,["label","prop"])):(u(),d(ye,{key:3,label:e.name,prop:e.key},{default:p((()=>["UserPass"===e.key?(u(),d(_e,{key:0,modelValue:Ce.value[e.key],"onUpdate:modelValue":l=>Ce.value[e.key]=l,placeholder:e.help_text,"show-password":""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):(u(),d(_e,{key:1,modelValue:Ce.value[e.key],"onUpdate:modelValue":l=>Ce.value[e.key]=l,placeholder:e.help_text},null,8,["modelValue","onUpdate:modelValue","placeholder"]))])),_:2},1032,["label","prop"]))],64)):i("",!0)],64)))),256)),c(ye,null,{default:p((()=>[c(a,{onClick:l[5]||(l[5]=e=>(async()=>{try{await Ve.value.validate((e=>{e&&(Ce.value.Permissions=ke.value,console.log("commit add form:",Ce.value),B(ue,Ce.value).then((e=>{I({title:"添加结果通知",message:"添加成功!如果页面没有变化,刷新一下!",type:"success",duration:4e3,"show-close":!0}),se.value.push(e.data.dto),be.value=!1,Ye()}),(e=>{console.log("添加报错:",e)})),console.log("提交数据:",Ce.value))}))}catch(e){console.log("校验失败:",e)}})(Ve.value)),size:"large",type:"primary"},{default:p((()=>l[16]||(l[16]=[y("提交")]))),_:1})])),_:1})])),_:1},8,["model","rules"])])),_:1},8,["modelValue"]),c(Ie,{modelValue:ge.value,"onUpdate:modelValue":l[10]||(l[10]=e=>ge.value=e),mask:!0,title:"编辑",modal:!0,"before-close":Ye,"destroy-on-close":""},{default:p((()=>[c(je,{ref_key:"dialogEditFormRef",ref:we,model:Ue.value,rules:re.value,class:"operation_form","label-width":"130px"},{default:p((()=>[(u(!0),o(r,null,_(de.value,(e=>(u(),o(r,null,["items"===e.type?(u(),o(r,{key:0},[c(je,{inline:!0,model:ve.value,"label-position":"right","label-width":"130px"},{default:p((()=>[c(ye,{label:e.name,prop:e.key},{default:p((()=>[c(ne,{effect:"light",content:e.help_text,placement:"bottom-start"},{default:p((()=>[c(le,{placeholder:"--选择道具后填数量点击添加--",modelValue:ve.value.id,"onUpdate:modelValue":l[7]||(l[7]=e=>ve.value.id=e),style:{width:"150px"},filterable:""},{default:p((()=>[(u(!0),o(r,null,_(e.choices,(e=>(u(),d(G,{key:e.desc,label:e.desc,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["modelValue"])])),_:2},1032,["content"])])),_:2},1032,["label","prop"]),c(ye,{label:"数量",prop:"number"},{default:p((()=>[c(_e,{type:"number",modelValue:ve.value.num,"onUpdate:modelValue":l[8]||(l[8]=e=>ve.value.num=e),placeholder:"请输入数量",style:{width:"150px"}},null,8,["modelValue"])])),_:1}),c(ye,null,{default:p((()=>[c(a,{type:"primary",onClick:l=>xe(e)},{default:p((()=>l[17]||(l[17]=[y("添加")]))),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1032,["model"]),c(ye,{label:"奖励列表",prop:"attachmentsList"},{default:p((()=>[c(J,{data:Ue.value.Attach,border:""},{default:p((()=>[c(M,{label:"道具id",prop:"id"}),c(M,{label:"数量",prop:"num"}),c(M,{label:"操作"},{default:p((e=>[c(a,{type:"danger",size:"small",onClick:l=>ze(e.row)},{default:p((()=>l[18]||(l[18]=[y("删除")]))),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"])])),_:1})],64)):!0!==e.readonly?(u(),o(r,{key:1},[!0!==e.uneditable?(u(),o(r,{key:0},[void 0!==e.choices&&e.choices.length>0?(u(),d(ye,{key:0,label:e.name,prop:e.key},{default:p((()=>[c(ne,{effect:"light",content:e.help_text,placement:"bottom-start"},{default:p((()=>[c(le,{placeholder:!0===e.multi_choice?"--多选--":"--单选--",modelValue:Ue.value[e.key],"onUpdate:modelValue":l=>Ue.value[e.key]=l,style:{width:"150px"},multiple:!0===e.multi_choice},{default:p((()=>[(u(!0),o(r,null,_(e.choices,(e=>(u(),d(G,{key:e.desc,label:e.desc,value:e.value},null,8,["label","value"])))),128))])),_:2},1032,["placeholder","modelValue","onUpdate:modelValue","multiple"])])),_:2},1032,["content"])])),_:2},1032,["label","prop"])):"Time"===e.type?(u(),d(ye,{key:1,label:e.name,prop:e.key},{default:p((()=>[c(Pe,{modelValue:Ue.value[e.key],"onUpdate:modelValue":l=>Ue.value[e.key]=l,type:"datetime",placeholder:"选个时间",format:"YYYY/MM/DD HH:mm:ss","value-format":"YYYY/MM/DD HH:mm:ss"},null,8,["modelValue","onUpdate:modelValue"])])),_:2},1032,["label","prop"])):"Permissions"===e.key?(u(),d(ye,{key:2,label:e.name,prop:e.key},{default:p((()=>[c(Ae,{ref_for:!0,ref:"treeRef",data:fe.value,"show-checkbox":"","node-key":"id","default-checked-keys":ke.value,props:he,onCheckChange:De},null,8,["data","default-checked-keys"])])),_:2},1032,["label","prop"])):(u(),d(ye,{key:3,label:e.name,prop:e.key},{default:p((()=>["UserPass"===e.key?(u(),d(_e,{key:0,modelValue:Ue.value[e.key],"onUpdate:modelValue":l=>Ue.value[e.key]=l,placeholder:e.help_text,"show-password":""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):(u(),d(_e,{key:1,modelValue:Ue.value[e.key],"onUpdate:modelValue":l=>Ue.value[e.key]=l,placeholder:e.help_text},null,8,["modelValue","onUpdate:modelValue","placeholder"]))])),_:2},1032,["label","prop"]))],64)):(u(),d(ye,{key:1,label:e.name,prop:e.key},{default:p((()=>[c(_e,{modelValue:Ue.value[e.key],"onUpdate:modelValue":l=>Ue.value[e.key]=l,placeholder:e.help_text,disabled:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1032,["label","prop"]))],64)):i("",!0)],64)))),256)),c(ye,null,{default:p((()=>[c(a,{onClick:l[9]||(l[9]=e=>(async()=>{try{await we.value.validate((e=>{e&&(Ue.value.Permissions=ke.value,$(ue,Ue.value).then((e=>{I({title:"编辑结果通知",message:"编辑成功!如果页面没有变化,刷新一下!",type:"success",duration:4e3,"show-close":!0}),ge.value=!1,se.value[Ue.value.oldIndex]=e.data.dto,Ye()}),(e=>{console.log("添加报错:",e)})),console.log("提交数据:",Ue.value))}))}catch(e){console.log("校验失败:",e)}})(we.value)),size:"large",type:"primary"},{default:p((()=>l[19]||(l[19]=[y("提交")]))),_:1})])),_:1})])),_:1},8,["model","rules"])])),_:1},8,["modelValue"]),(u(!0),o(r,null,_(n(K),((e,l)=>(u(),d(Ie,{modelValue:n(Q)[l],"onUpdate:modelValue":e=>n(Q)[l]=e,title:e.name,onClose:e=>n(Q)[l]=!1,"destroy-on-close":""},{default:p((()=>[f("div",null,[(u(),d(s(e.btn_callback_component),{rowInfo:ee.value},null,8,["rowInfo"]))])])),_:2},1032,["modelValue","onUpdate:modelValue","title","onClose"])))),256))])),_:1})])),_:1})):i("",!0)],64)):(u(),d(s(q),{key:0}))])}}},[["__scopeId","data-v-01390b3f"]]);export{Z as t};
|