import{M as i,$ as t,N as o,c as e,n as s,B as n,by as a,F as r,G as _,v as l,d,w as f,x as m,i as h,o as c,e as p,X as g,f as u,t as j}from"./index-BkoqYvav.js";import{_ as b}from"./u-button.C9qkKdJb.js";import{r as y}from"./uni-app.es.B9V0EIQ7.js";import{b as v}from"./visualDev.GjPkjcSv.js";import{P as w}from"./Parser.B_cp7SiY.js";import{_ as F}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.PsTPfrFp.js";import"./u-loading.DlgFAzxN.js";import"./u-popup.Bt6tIdqq.js";import"./u-icon.BkFPtr9x.js";import"./u-line.rBlnHd5z.js";import"./u-input.-go9Tro6.js";import"./emitter.DrjJCwnj.js";import"./u-upload.VFiWAD2v.js";import"./uni-icons.WRXnLXVn.js";import"./MultSelect.BIIv7ku4.js";import"./u-search.BfKQf8vw.js";import"./u-checkbox-group.DkfL0jvc.js";import"./u-radio-group.DzS4EUFK.js";import"./resources.DipqUmnN.js";import"./mp-html.DTiFN8jQ.js";import"./u-form.iKIkTuOe.js";import"./index.B5uCZ4WL.js";import"./index.BPkiXr58.js";import"./index.D8M8zQqo.js";import"./u-action-sheet.Dgezk4Nt.js";import"./u-tabs.B046zcyW.js";import"./u-badge.B4z6LcA9.js";const S=F({components:{Parser:w},data:()=>({showPage:!1,loading:!0,isPreview:"0",modelId:"",formConf:{},formData:{},dataForm:{id:"",data:""},btnType:"",formPermissionList:{},formList:[],labelS:{}}),onLoad(t){let o=JSON.parse(this.jnpf.base64.decode(t.config));this.formPermissionList=o.currentMenu?JSON.parse(decodeURIComponent(o.currentMenu)):[],this.formList=this.formPermissionList.formList,this.btnType=o.btnType||"",this.labelS=o.labelS||{btn_edit:"编辑"},this.modelId=o.modelId,this.isPreview=o.isPreview||"0",this.dataForm.id=o.id||"",this.setting=o,this.getConfigData(),i("refresh",(()=>{this.getConfigData()}))},onShow(){setTimeout((()=>{t("initCollapse")}),100)},onUnload(){o("refresh")},methods:{getConfigData(){this.loading=!0,v(this.modelId).then((i=>{200===i.code&&i.data?(this.formConf=i.data.formData?JSON.parse(i.data.formData):{},this.beforeInit(this.formConf.fields||[]),this.showPage=!0,this.key=+new Date,this.initData()):e({title:"暂无此页面",icon:"none",complete:()=>{setTimeout((()=>{s()}),1500)}})}))},beforeInit(i){const t=i=>{for(var o=0;o<i.length;o++){const n=i[o].__config__;if(n.children&&n.children.length&&t(n.children),"tableGrid"==n.jnpfKey){let t=[];for(var e=0;e<n.children.length;e++){let i=n.children[e];for(var s=0;s<i.__config__.children.length;s++){let o=i.__config__.children[s];t.push(...o.__config__.children)}}i.splice(o,1,...t)}}};t(i)},initData(){this.$nextTick((()=>{if(this.dataForm.id){let i={modelId:this.modelId,id:this.dataForm.id,type:2};n("dynamicModelExtra",i),a(this.modelId,this.dataForm.id).then((i=>{this.dataForm=i.data,this.loading=!1,this.dataForm.data&&(this.formData={...JSON.parse(this.dataForm.data),id:this.dataForm.id},this.fillFormData(this.formConf,this.formData),this.initRelationForm(this.formConf.fields))}))}else this.loading=!1;this.key=+new Date}))},fillFormData(i,t){const o=(i,e)=>{for(let s=0;s<i.length;s++){let n=i[s];if(n.__vModel__){if("relationForm"===n.__config__.jnpfKey||"popupSelect"===n.__config__.jnpfKey)n.__config__.defaultValue=t[n.__vModel__+"_id"],this.$set(n,"name",t[n.__vModel__]||"");else{let i=t.hasOwnProperty(n.__vModel__)?t[n.__vModel__]:n.__config__.defaultValue;n.__config__.defaultValue=i}if(this.formPermissionList.useFormPermission){let i=n.__config__.isSubTable?e.__vModel__+"-"+n.__vModel__:n.__vModel__,t=!0;this.formList&&this.formList.length&&(t=!this.formList.some((t=>t.enCode===i))),t=n.__config__.noShow?n.__config__.noShow:t,this.$set(n.__config__,"noShow",t)}}else["relationFormAttr","popupAttr"].includes(n.__config__.jnpfKey)&&(n.__config__.defaultValue=t[n.relationField.split("_jnpfTable_")[0]+"_"+n.showField]);n.__config__&&n.__config__.children&&Array.isArray(n.__config__.children)&&o(n.__config__.children,n)}};o(i.fields),this.loading=!1},initRelationForm(i){i.forEach((t=>{const o=t.__config__;if("relationFormAttr"==o.jnpfKey||"popupAttr"==o.jnpfKey){const o=t.relationField.split("_jnpfTable_")[0];i.forEach((i=>{const e=Array.isArray(i.__config__.visibility)&&!i.__config__.visibility.includes("app");o!=i.__vModel__||!e&&!i.__config__.noShow||t.__vModel__||(t.__config__.noShow=!0)}))}t.__config__.children&&t.__config__.children.length&&this.initRelationForm(t.__config__.children)}))},toDetail(i){const t=i.__config__.defaultValue;if(!t)return;let o={modelId:i.modelId,id:t,formTitle:"详情",noShowBtn:1};this.$nextTick((()=>{const i="/pages/apply/dynamicModel/detail?config="+this.jnpf.base64.encode(JSON.stringify(o));r({url:i})}))},handleEdit(){if(this.setting.disableEdit)return;const i=encodeURIComponent(JSON.stringify(this.formPermissionList));let t={modelId:this.modelId,isPreview:this.isPreview,id:this.setting.id,btnType:"btn_edit",currentMenu:i,list:this.setting.list,index:this.setting.index};const o="/pages/apply/dynamicModel/form?config="+this.jnpf.base64.encode(JSON.stringify(t));r({url:o})}}},[["render",function(i,t,o,e,s,n){const a=_("Parser"),r=y(l("u-button"),b),v=h;return s.showPage?(c(),d(v,{key:0,class:"dynamicModel-form-v jnpf-wrap jnpf-wrap-form"},{default:f((()=>[s.loading?m("",!0):(c(),d(a,{formConf:s.formConf,formData:s.formData,ref:"dynamicForm",key:i.key,onToDetail:n.toDetail},null,8,["formConf","formData","onToDetail"])),p(v,{class:"buttom-actions"},{default:f((()=>[p(r,{class:"buttom-btn",onClick:g(i.jnpf.goBack,["stop"])},{default:f((()=>[u("取消")])),_:1},8,["onClick"]),"btn_edit"===s.btnType&&!this.setting.noShowBtn&&this.setting.enableEdit?(c(),d(r,{key:0,class:"buttom-btn",type:"primary",onClick:g(n.handleEdit,["stop"])},{default:f((()=>[u(j(s.labelS.btn_edit),1)])),_:1},8,["onClick"])):m("",!0)])),_:1})])),_:1})):m("",!0)}],["__scopeId","data-v-ace82ff1"]]);export{S as default};