pages-apply-dynamicModel-form.CrUFnpc2.js 7.2 KB

1
  1. import{g as t,a as i,c as e,K as s,s as o,$ as n,o as a,X as r,p as m,w as d,B as f,q as h,t as l,v as u,x as p,y as c,R as y}from"./index-P0fyQ2Em.js";import{_ as b}from"./index.BEyjEu29.js";import{r as j}from"./uni-app.es.DOtS5Ldl.js";import{_ as g}from"./u-button.Chh1-6a-.js";import{C as x}from"./index.BoqsLhBg.js";import{a as I,b as T,u as C,c as D}from"./visualDev.B0fuvtpd.js";import{_ as w}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.D5H39cMc.js";import"./u-popup.CXrq2y3n.js";import"./u-icon.wXcRZHbn.js";import"./u-divider.BoeCb7vx.js";import"./u-line.D-FzmOwL.js";import"./u-upload.Btn0UtQx.js";import"./uni-icons.RJ8Vh9KU.js";import"./u-input.Cp2bygnN.js";import"./emitter.DrjJCwnj.js";import"./index.C9raOSI0.js";import"./u-search.CSVnMmHg.js";import"./u-checkbox.Cy_cnskM.js";import"./u-checkbox-group.zSC_g3m3.js";import"./u-radio-group.CbnO1TOv.js";import"./index.BuZ8YmVY.js";import"./resources.DEPsJg7u.js";import"./mp-html.DI6DI7Ml.js";import"./u-form.B1LWETT2.js";import"./u-tabs.DEel8MQB.js";import"./u-badge.CWPuZ-w1.js";import"./index.DsvBnwWf.js";import"./base.DOXur1tF.js";import"./index.Du-JSu8j.js";import"./index.PS-rWSqI.js";import"./index.BMdHwtjY.js";import"./u-loading.D5Tc00lz.js";import"./index.CIb_-r5F.js";import"./u-tag.BmeG4z_q.js";import"./ly-tree.DZ8MU_HY.js";import"./index.vGVmWABQ.js";import"./index.BLChm46K.js";import"./lsj-upload.CSOZr0lY.js";import"./index.-5h2Pj7y.js";import"./index.D2KRRdBj.js";import"./u-avatar.q3DpmfEb.js";import"./index.lbbLqjbF.js";import"./index.DgjoBC2V.js";import"./u-action-sheet.C0QG6n24.js";import"./index.D-SsN0gl.js";const _=w({components:{CustomButton:x},data:()=>({webType:"",showPage:!1,btnLoading:!1,loading:!0,isPreview:"0",modelId:"",formConf:{},formData:{},dataForm:{id:"",data:""},btnType:"",formPermissionList:{},formList:[],key:+new Date,config:{},clickType:"submit",prevDis:!1,nextDis:!1,index:0,userInfo:{},isAdd:!1}),computed:{getOkText(){return(this.formConf.confirmButtonTextI18nCode?this.$t(this.formConf.confirmButtonTextI18nCode,this.formConf.confirmButtonText):this.formConf.confirmButtonText)||this.$t("common.okText")},getCancelText(){return(this.formConf.cancelButtonTextI18nCode?this.$t(this.formConf.cancelButtonTextI18nCode,this.formConf.cancelButtonText):this.formConf.cancelButtonText)||this.$t("common.cancelText")}},onLoad(t){this.init(t)},methods:{init(e){const s=(t=>{try{return JSON.parse(this.jnpf.base64.decode(t))||{}}catch(i){return{}}})(e.config),{index:o,currentMenu:n,btnType:a="",modelId:r,isPreview:m="0",id:d=""}=s,f=n?JSON.parse(decodeURIComponent(n)):[];Object.assign(this,{userInfo:t("userInfo")||{},config:s,index:o,formPermissionList:f,formList:(null==f?void 0:f.formList)||[],btnType:a,modelId:r,isPreview:m,dataForm:{id:d}});i({title:(()=>this.dataForm.id?this.$t("common.editText"):this.$t("common.addText"))()}),this.getConfigData()},getConfigData(){I(this.modelId,this.config.menuId).then((t=>{200===t.code&&t.data?(this.formConf=t.data.formData?JSON.parse(t.data.formData):{},this.showPage=!0,this.initData()):e({title:"暂无此页面",icon:"none",complete:()=>{setTimeout((()=>{s()}),1500)}})}))},initData(){this.$nextTick((()=>{if(this.dataForm.id){let t={modelId:this.modelId,id:this.dataForm.id,type:1};o("dynamicModelExtra",t),T(this.modelId,this.dataForm.id,this.config.menuId).then((t=>{this.dataForm=t.data,this.dataForm.data&&(this.formData={...JSON.parse(this.dataForm.data),id:this.dataForm.id},this.fillFormData(this.formConf,this.formData),this.$nextTick((()=>{this.loading=!1})))}))}else this.isAdd=!0,this.formData={},this.loading=!1,this.fillFormData(this.formConf,this.formData);this.key=+new Date}))},fillFormData(t,i){this.key=+new Date;const e=(t,s)=>{var o,n;for(let a=0;a<t.length;a++){let r=t[a],m=r.__vModel__,d=r.__config__;if(m){let t=i.hasOwnProperty(m)?i[m]:d.defaultValue;if(d.isSubTable||(d.defaultValue=t),(this.isAdd||d.isSubTable)&&d.defaultCurrent){if("datePicker"===d.jnpfKey&&!i.hasOwnProperty(m)){let i=this.jnpf.handelFormat(r.format),e=this.jnpf.toDate((new Date).getTime(),i);t=new Date(e+("yyyy"===i?"-01-01 00:00:00":"yyyy-MM"===i?"-01 00:00:00":"yyyy-MM-dd"===i?" 00:00:00":"")).getTime(),d.defaultValue=t}"timePicker"===d.jnpfKey&&(i.hasOwnProperty(m)||(d.defaultValue=this.jnpf.toDate(new Date,r.format))),"organizeSelect"===d.jnpfKey&&(null==(o=this.userInfo.organizeIds)?void 0:o.length)&&(d.defaultValue=r.multiple?this.userInfo.organizeIds:this.userInfo.organizeId),"posSelect"===d.jnpfKey&&(null==(n=this.userInfo.positionIds)?void 0:n.length)&&(d.defaultValue=r.multiple?this.userInfo.positionIds:this.userInfo.positionId);const e=this.userInfo.userId;"userSelect"===d.jnpfKey&&e&&(d.defaultValue=r.multiple?[e]:e),"usersSelect"===d.jnpfKey&&e&&(d.defaultValue=[e+"--user"]),"sign"===d.jnpfKey&&this.userInfo.signImg&&(d.defaultValue=this.userInfo.signImg)}const e=this.$permission.hasBtnP("btn_detail",this.formPermissionList.menuId),a=this.$permission.hasBtnP("btn_edit",this.formPermissionList.menuId);this.dataForm.id&&!a&&e&&(r.disabled=e);let f=!!d.noShow&&d.noShow,h=!1;if((!d.visibility||Array.isArray(d.visibility)&&d.visibility.includes("app"))&&(h=!0),this.$set(d,"isVisibility",h),this.formPermissionList.useFormPermission){let t=d.isSubTable?s.__vModel__+"-"+m:m;f=!0,this.formList&&this.formList.length&&(f=!this.formList.some((i=>i.enCode===t))),f=d.noShow?d.noShow:f,this.$set(d,"noShow",f)}}else{let t=!!d.noShow&&d.noShow,i=!1;(!d.visibility||Array.isArray(d.visibility)&&d.visibility.includes("app"))&&(i=!0),this.$set(d,"isVisibility",i),this.$set(d,"noShow",t)}d&&d.children&&Array.isArray(d.children)&&e(d.children,r)}};e(t.fields),t.formData=i,this.key=+new Date},sumbitForm(t,i){if(!t)return;this.btnLoading=!0;const o={...this.formData,...t};this.dataForm.data=JSON.stringify(o),this.dataForm.menuId=this.config.menuId,i&&"function"==typeof i&&i();(this.dataForm.id?C:D)(this.modelId,this.dataForm).then((t=>{e({title:t.msg,complete:()=>{setTimeout((()=>{"save_add"==this.clickType&&(this.key=+new Date,this.$nextTick((()=>{this.$refs.dynamicForm&&this.$refs.dynamicForm.resetForm()}))),this.btnLoading=!1,this.initData(),"save_proceed"!=this.clickType&&"save_add"!=this.clickType&&(n("refresh"),s())}),1500)}})})).catch((()=>{this.btnLoading=!1}))},commonSubmit(t){this.clickType=t,this.submit(t)},submit(t){if(this.clickType=t,"1"==this.isPreview)return this.$u.toast("功能预览不支持数据保存");this.$refs.dynamicForm&&this.$refs.dynamicForm.submitForm()}}},[["render",function(t,i,e,s,o,n){const x=j(a("JnpfParser"),b),I=r("CustomButton"),T=j(a("u-button"),g),C=h;return o.showPage?(l(),m(C,{key:0,class:"dynamicModel-form-v jnpf-wrap jnpf-wrap-form"},{default:d((()=>[o.loading?f("",!0):(l(),m(x,{formConf:o.formConf,ref:"dynamicForm",onSubmit:n.sumbitForm,key:o.key},null,8,["formConf","onSubmit"])),"btn_edit"===o.btnType||"btn_add"===o.btnType?(l(),m(C,{key:1,class:"buttom-actions"},{default:d((()=>[u(I,{class:"u-flex buttom-btn-left-inner",btnText:n.getCancelText,btnIcon:"icon-ym icon-ym-add-cancel",customIcon:"",btnLoading:o.btnLoading},null,8,["btnText","btnLoading"]),u(T,{class:"buttom-btn",type:"primary",onClick:y(n.submit,["stop"]),loading:o.btnLoading},{default:d((()=>[p(c(n.getOkText),1)])),_:1},8,["onClick","loading"])])),_:1})):f("",!0)])),_:1})):f("",!0)}],["__scopeId","data-v-be5bf4c1"]]);export{_ as default};