formContent.f27fe11d.js 11 KB

1
  1. import{t as ge}from"./index.49826d5f.js";import{s as Ve,D as ee,U as he,G as Ue}from"./api.cfba8ba4.js";import{d as q}from"./dictionary.a8cda1ac.js";import{g as le,S as xe,p as S,s as we}from"./index.59c4c6ab.js";import{r as Ce,m as Oe,o as Se}from"./elementPlus.8e650391.js";import{d as Re,Z as oe,r as b,B as Te,w as ze,ai as p,o as d,c as k,U as a,O as t,S as y,F as j,a8 as N,M as c,T as C,a as v,u as s,D as te,R as Ie,n as je}from"./vue.86c1cb21.js";import{_ as Ne}from"./_plugin-vue_export-helper.c27b6911.js";const De={key:1},Le={slot:"prepend"},Be={style:{padding:"0px 5px"}},We={key:1},$e=["src"],qe=["src"],Ee={style:{"text-align":"right",margin:"0"}},Je=Re({__name:"formContent",props:["options","editableTabsItem"],setup(D){const E=D;let r=oe({}),g=b([]);b([]);let x=b(!1);const ae=oe({title:[{required:!0,message:"必须填写"}],key:[{required:!0,message:"必须填写"}],value:[{required:!0,message:"必须填写"}]}),J=b();let F=b(le()+"api/system/file/"),M=b({Authorization:"JWT "+xe.get("token")}),L=b(""),B=b(!1);b(null);const ne=()=>{Ue({parent:E.options.id,limit:999}).then(n=>{let o=n.data;g.value=o;const u={};for(const _ of o){const i=_.key;_.value?u[i]=_.value:[5,12,14].indexOf(_.form_item_type)!==-1?u[i]=[]:u[i]=_.value,_.form_item_type_label==="array"&&(console.log("test"),je(()=>{const V=b();console.log(V)}))}r=Object.assign(r,u)})},se=n=>{const o=Object.keys(r),u=Object.values(r);for(const _ in g.value){const i=g.value[_];i.form_item_type_label==="array"&&(i.id,""+i.key),o.map((O,w)=>{if(O===i.key&&(i.form_item_type_label!=="array"&&(i.value=u[w]),["img","imgs"].indexOf(i.form_item_type_label)>-1)){for(const T of i.rule)if(T.required&&i.value===null){S(i.title+"不能为空");return}}})}n&&n.validate(_=>{if(_)Ve(g.value).then(i=>{we("保存成功"),R&&R()});else return console.log("error submit!!"),!1})},re=n=>{},de=(n,o,u)=>{console.log(n,o),n.id&&ee(n.id).then(_=>{})},A=n=>{L=n.url,B.value=!0},ie=n=>{if(typeof n!="string")return;const o=n.toLowerCase();return o.endsWith(".png")||o.endsWith(".jpeg")||o.endsWith(".jpg")||o.endsWith(".png")||o.endsWith(".bmp")},G=(n,o,u,_)=>{const{code:i,msg:V}=n;if(i===2e3){const{url:O}=n.data,{name:w}=o;if(!ie(w))S("只允许上传图片");else{const z=r[_];(!z||z==="")&&(r[_]=[]);const W={name:w,url:le()+O};r[_].push(W)}}else S("上传失败,"+JSON.stringify(V))},P=()=>{S("上传失败")},H=()=>{S("超过文件上传数量")},Z=(n,o,u)=>{var _=0;r[u].map((i,V)=>{i.uid===n.uid&&(_=V)}),r[u].splice(_,1)},ue=n=>{ee(n.id).then(o=>{})},pe=n=>{g.value[n].edit=!0,g.value[n].new_key=g.value[n].key},R=Te("refreshView"),_e=n=>{n.key=JSON.parse(JSON.stringify(n.new_key)),he(n).then(o=>{R&&R()})};return ze(E.options,n=>{n&&n.id&&ne()},{immediate:!0}),(n,o)=>{const u=p("el-col"),_=p("el-row"),i=p("el-input"),V=p("el-input-number"),O=p("el-date-picker"),w=p("el-option"),T=p("el-select"),z=p("el-checkbox"),W=p("el-checkbox-group"),fe=p("el-radio"),ce=p("el-radio-group"),Q=p("el-switch"),X=p("el-upload"),Y=p("el-dialog"),me=ge,$=p("vxe-input"),I=p("vxe-column"),h=p("el-button"),ye=p("el-popover"),ke=p("vxe-table"),ve=p("el-popconfirm"),K=p("el-form-item"),be=p("el-form");return d(),k("div",null,[a(_,{gutter:20},{default:t(()=>[a(u,{span:4},{default:t(()=>o[3]||(o[3]=[y("变量标题")])),_:1}),a(u,{span:4},{default:t(()=>o[4]||(o[4]=[y("变量名")])),_:1}),a(u,{span:10},{default:t(()=>o[5]||(o[5]=[y("变量值")])),_:1}),a(u,{span:2,offset:1},{default:t(()=>o[6]||(o[6]=[y("是否前端配置")])),_:1}),a(u,{span:3},{default:t(()=>o[7]||(o[7]=[y("操作")])),_:1})]),_:1}),a(be,{ref_key:"formRef",ref:J,model:s(r),"label-width":"0px","label-position":"left",style:{"margin-top":"20px"}},{default:t(()=>[(d(!0),k(j,null,N(s(g),(e,m)=>(d(),c(K,{prop:["array"].indexOf(e.form_item_type_label)>-1?"":e.key,key:m,rules:e.rule||[]},{default:t(()=>[a(u,{span:4},{default:t(()=>[e.edit?(d(),c(i,{key:0,modelValue:e.title,"onUpdate:modelValue":l=>e.title=l,style:{display:"inline-block",width:"200px"},placeholder:"请输入标题"},null,8,["modelValue","onUpdate:modelValue"])):(d(),k("span",De,C(e.title),1))]),_:2},1024),a(u,{span:4},{default:t(()=>[e.edit?(d(),c(i,{key:0,modelValue:e.new_key,"onUpdate:modelValue":l=>e.new_key=l,style:{width:"200px"},placeholder:"请输入变量key"},{default:t(()=>[v("template",Le,[v("span",Be,C(D.editableTabsItem.key),1)])]),_:2},1032,["modelValue","onUpdate:modelValue"])):(d(),k("span",We,C(D.editableTabsItem.key)+"."+C(e.key),1))]),_:2},1024),a(u,{span:10},{default:t(()=>[["text","textarea"].indexOf(e.form_item_type_label)>-1?(d(),c(i,{key:m,type:e.form_item_type_label,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,placeholder:e.placeholder,clearable:""},null,8,["type","modelValue","onUpdate:modelValue","placeholder"])):e.form_item_type_label==="number"?(d(),c(V,{key:m+1,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,min:0},null,8,["modelValue","onUpdate:modelValue"])):["datetime","date","time"].indexOf(e.form_item_type_label)>-1?(d(),c(O,{modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,key:m+2,type:e.form_item_type_label,placeholder:e.placeholder},null,8,["modelValue","onUpdate:modelValue","type","placeholder"])):e.form_item_type_label==="select"?(d(),c(T,{key:m+3,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,placeholder:e.placeholder,clearable:""},{default:t(()=>[(d(!0),k(j,null,N(s(q)(e.setting)||[],l=>(d(),c(w,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):e.form_item_type_label==="checkbox"?(d(),c(W,{key:m+4,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,placeholder:e.placeholder},{default:t(()=>[(d(!0),k(j,null,N(s(q)(e.setting)||[],l=>(d(),c(z,{key:l.value,label:l.value,value:l.value},{default:t(()=>[y(C(l.label),1)]),_:2},1032,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):e.form_item_type_label==="radio"?(d(),c(ce,{key:m+5,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,placeholder:e.placeholder,clearable:""},{default:t(()=>[(d(!0),k(j,null,N(s(q)(e.setting)||[],l=>(d(),c(fe,{key:l.value,label:l.value,value:l.value},{default:t(()=>[y(C(l.label),1)]),_:2},1032,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):e.form_item_type_label==="switch"?(d(),c(Q,{key:m+6,modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,"inactive-value":!1,"active-color":"#13ce66","inactive-color":"#ff4949"},null,8,["modelValue","onUpdate:modelValue"])):["img","imgs"].indexOf(e.form_item_type_label)>-1?(d(),k("div",{key:m+7},[a(X,{action:s(F),headers:s(M),name:"file",accept:"image/*","on-preview":A,"on-success":(l,f,U)=>{G(l,f,U,e.key)},"on-error":P,"on-exceed":H,"before-remove":(l,f)=>{Z(l,f,e.key)},multiple:e.form_item_type_label!=="img",limit:e.form_item_type_label==="img"?1:5,ref_for:!0,ref:"imgUpload_"+e.key,"data-keyname":e.key,"file-list":e.value?e.value:[],"list-type":"picture-card"},{default:t(()=>o[8]||(o[8]=[v("i",{class:"el-icon-plus"},null,-1),v("div",{slot:"tip",class:"el-upload__tip"},"请选取图片,并且只能上传jpg/png文件",-1)])),_:2},1032,["action","headers","on-success","before-remove","multiple","limit","data-keyname","file-list"]),a(Y,{visible:s(B)},{default:t(()=>[v("img",{width:"100%",src:s(L),alt:""},null,8,$e)]),_:1},8,["visible"])])):["file"].indexOf(e.form_item_type_label)>-1?(d(),k("div",{key:m+8},[a(X,{action:s(F),headers:s(M),name:"file","on-preview":A,"on-success":(l,f,U)=>{G(l,f,U,e.key)},"on-error":P,"on-exceed":H,"before-remove":(l,f)=>{Z(l,f,e.key)},limit:5,ref_for:!0,ref:"fileUpload_"+e.key,"data-keyname":e.key,"file-list":e.value,"list-type":"picture-card"},{default:t(()=>o[9]||(o[9]=[v("i",{class:"el-icon-plus"},null,-1),v("div",{slot:"tip",class:"el-upload__tip"},"请选取图片,并且只能上传jpg/png文件",-1)])),_:2},1032,["action","headers","on-success","before-remove","data-keyname","file-list"]),a(Y,{visible:s(B)},{default:t(()=>[v("img",{width:"100%",src:s(L),alt:""},null,8,qe)]),_:1},8,["visible"])])):["foreignkey","manytomany"].indexOf(e.form_item_type_label)>-1?(d(),k("div",{key:m+9},[a(me,{modelValue:s(r)[e.key],"onUpdate:modelValue":l=>s(r)[e.key]=l,"el-props":{pagination:!0,columns:e.setting.searchField},dict:{url:"/api/system/system_config/get_table_data/"+e.id+"/",value:e.setting.primarykey,label:e.setting.field},pagination:!0,multiple:e.form_item_type_label==="manytomany"},null,8,["modelValue","onUpdate:modelValue","el-props","dict","multiple"])])):e.form_item_type_label==="array"?(d(),k("div",{key:m+10},[a(ke,{border:"",resizable:"","auto-resize":"","show-overflow":"","keep-source":"",ref_for:!0,ref:"xTable_"+e.key,height:"200","edit-rules":ae,"edit-config":{trigger:"click",mode:"row",showStatus:!0}},{default:t(()=>[a(I,{field:"title",title:"标题","edit-render":{autofocus:".vxe-input--inner"}},{edit:t(({row:l})=>[a($,{modelValue:l.title,"onUpdate:modelValue":f=>l.title=f,type:"text"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(I,{field:"key",title:"键名","edit-render":{autofocus:".vxe-input--inner"}},{edit:t(({row:l})=>[a($,{modelValue:l.key,"onUpdate:modelValue":f=>l.key=f,type:"text"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(I,{field:"value",title:"键值","edit-render":{}},{edit:t(({row:l})=>[a($,{modelValue:l.value,"onUpdate:modelValue":f=>l.value=f,type:"text"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),a(I,{title:"操作",width:"100","show-overflow":""},{default:t(({row:l,index:f})=>[a(ye,{placement:"top",width:"160",modelValue:s(x),"onUpdate:modelValue":o[1]||(o[1]=U=>te(x)?x.value=U:x=U)},{default:t(()=>[o[13]||(o[13]=v("p",null,"删除后无法恢复,确定删除吗?",-1)),v("div",Ee,[a(h,{size:"mini",type:"text",onClick:o[0]||(o[0]=U=>te(x)?x.value=!1:x=!1)},{default:t(()=>o[10]||(o[10]=[y("取消")])),_:1}),a(h,{type:"primary",size:"mini",onClick:U=>de(l,f,e.key)},{default:t(()=>o[11]||(o[11]=[y("确定")])),_:2},1032,["onClick"])]),a(h,{type:"text",slot:"reference"},{default:t(()=>o[12]||(o[12]=[y("删除")])),_:1})]),_:2},1032,["modelValue"])]),_:2},1024)]),_:2},1032,["edit-rules"]),v("div",null,[a(h,{size:"mini",onClick:l=>re("xTable_"+e.key)},{default:t(()=>o[14]||(o[14]=[y("追加")])),_:2},1032,["onClick"])])])):Ie("",!0)]),_:2},1024),a(u,{span:2,offset:1},{default:t(()=>[a(Q,{modelValue:e.status,"onUpdate:modelValue":l=>e.status=l,"active-color":"#13ce66","inactive-color":"#ff4949"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),a(u,{span:3},{default:t(()=>[e.edit?(d(),c(h,{key:0,size:"mini",type:"primary",icon:s(Ce),onClick:l=>_e(e)},{default:t(()=>o[15]||(o[15]=[y("保存")])),_:2},1032,["icon","onClick"])):(d(),c(h,{key:1,size:"mini",type:"primary",icon:s(Oe),onClick:l=>pe(m)},null,8,["icon","onClick"])),a(ve,{title:"确定删除该条数据吗?",onConfirm:l=>ue(e)},{reference:t(()=>[a(h,{size:"mini",type:"danger",icon:s(Se)},null,8,["icon"])]),_:2},1032,["onConfirm"])]),_:2},1024)]),_:2},1032,["prop","rules"]))),128)),a(K,null,{default:t(()=>[a(h,{type:"primary",onClick:o[2]||(o[2]=e=>se(J.value))},{default:t(()=>o[16]||(o[16]=[y("确定")])),_:1})]),_:1})]),_:1},8,["model"])])}}});const Qe=Ne(Je,[["__scopeId","data-v-d65a9267"]]);export{Qe as default};