Files
qhmes/web-dist/js/OnlineTabForm-Cqb4m321.js
2026-06-16 18:19:57 +08:00

2 lines
16 KiB
Java

var Bt=Object.defineProperty,Vt=Object.defineProperties;var xt=Object.getOwnPropertyDescriptors;var ve=Object.getOwnPropertySymbols;var Dt=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable;var Se=(i,c,r)=>c in i?Bt(i,c,{enumerable:!0,configurable:!0,writable:!0,value:r}):i[c]=r,A=(i,c)=>{for(var r in c||(c={}))Dt.call(c,r)&&Se(i,r,c[r]);if(ve)for(var r of ve(c))Mt.call(c,r)&&Se(i,r,c[r]);return i},Ce=(i,c)=>Vt(i,xt(c));var F=(i,c,r)=>new Promise((n,P)=>{var S=g=>{try{y(r.next(g))}catch(m){P(m)}},w=g=>{try{y(r.throw(g))}catch(m){P(m)}},y=g=>g.done?n(g.value):Promise.resolve(g.value).then(S,w);y((r=r.apply(i,c)).next())});import{au as Et,b6 as It,aU as jt,s as Nt,b2 as Te,ai as Lt,b7 as Jt,d as ee,at as Ut,b9 as qt,aX as Kt}from"./index-X7Y8jykP.js";import{B as Ht}from"./BasicForm-ClUSoD_-.js";import"./helper-DcLcf4v6.js";import{u as Wt}from"./useForm-D61zovon.js";import{O as _e,V as I,S as Gt,a as zt}from"./useExtendComponent-DsD-dPUC.js";import{u as Qt,a as Yt,l as J,g as Xt}from"./useAutoForm-Dtkm06h9.js";import{u as Zt}from"./useEnhance-DSMGDhnx.js";import $t from"./OnlineSubForm-Dzb1OYao.js";import eo from"./OnlinePopModal-PPYKdfpV.js";import"./index-BDvqZ5j4.js";import{u as to,G as oo}from"./useCustomHook-DGM29EbD.js";import{useAppInject as ao}from"./useAppInject-DPZGPcR3.js";import{P as lo}from"./PrinterOutlined-C4QwxYYW.js";import{u as no}from"./useModal-DaJ3Bflg.js";import{C as U,z as _,f as B,L as ro,A as V,K as x,J as io,r as p,h as so,b as uo,t as D,n as we,u as ke,c as co,y as q,H as te,F as fo,D as mo,T as po,Q as Oe,G as Ae}from"./vue-vendor-DNhG1Cve.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./index-BzChaRPg.js";import"./BasicForm.vue_vue_type_style_index_0_lang-B29PWQy0.js";import"./index-DO7ZhK45.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./useTimeout-D5AmIBZw.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./index-saD4h7VJ.js";import"./useBreakpoint-DXhPW7nV.js";import"./useEventListener-BRXjwk7A.js";import"./breakpointEnum-BhAg6bcX.js";import"./uniqBy--vsL0WVB.js";import"./BasicModal-xH56XuRZ.js";import"./ModalHeader-Sr8KwhJJ.js";import"./useWindowSizeFn-C-0M9_Ul.js";import"./index-CuWaQdlK.js";import"./constant-DfcHKztj.js";import"./JUpload.vue_vue_type_style_index_0_lang-B_SS088g.js";import"./JUploadModal.vue_vue_type_script_setup_true_lang-CSwYeVkH.js";import"./LinkTableSelect-Bxfjs2Wv.js";import"./useLinkTable-DuzCQq29.js";import"./JDictSelectUtil-DwVTEDM5.js";import"./index-Cq6YxX27.js";import"./placeholderImage-CRpUMlaT.js";import"./EditOutlined-drlR34lz.js";import"./LinkTableCard-BUdn9nTb.js";import"./MinusCircleFilled-BLRBKPEV.js";import"./OnlineSelectCascade-BuXb37Ka.js";import"./user.api-M95RuX7p.js";import"./customExpression-DKKqya45.js";import"./quarterOfYear-BU2sPnff.js";/* empty css */import"./OnlinePopForm-DsBK5td-.js";import"./FormOutlined-Y84itqS0.js";/* empty css */import"./useAutoModal-C9ZiBxOc.js";import"./JModalTip-BKHwxwTZ.js";/* empty css */const oe={optPre:"/online/cgform/api/form/",urlButtonAction:"/online/cgform/api/doButton"},go={name:"OnlineTabForm",components:{BasicForm:Ht,Loading:It,OnlineSubForm:$t,PrinterOutlined:lo,OnlinePopModal:eo},props:{id:{type:String,default:""},formTemplate:{type:Number,default:1},disabled:{type:Boolean,default:!1},isTree:{type:Boolean,default:!1},pidField:{type:String,default:""},submitTip:{type:Boolean,default:!0},modalClass:{type:String,default:""},themeTemplate:{type:String,default:""},tabIndex:{type:String,default:""},cgBIBtnMap:Object,buttonSwitch:Object},emits:["success","rendered","toggleTab"],setup(i,{emit:c}){const{createMessage:r}=Nt(),n=p(null),P=p(!0),S=p(!1),w=p(1),y=p(""),g=p(!1),m=p(!1),{getIsMobile:K}=ao(),H=p(!K.value),k=uo({reportPrintShow:0,reportPrintUrl:"",joinQuery:0,modelFullscreen:0,modalMinWidth:"",commentStatus:0}),{onlineFormContext:f,resetContext:u,getSubAddBtnCfg:W,getSubRemoveBtnCfg:b,getSubOpenAddBtnCfg:Pe,getSubOpenEditBtnCfg:Re}=Qt(i),{formSchemas:G,defaultValueFields:j,changeDataIfArray2String:ae,tableName:O,dbData:C,checkOnlyFieldValue:Be,hasSubTable:Ve,subTabInfo:M,refMap:z,subDataSource:N,baseColProps:xe,createFormSchemas:De,fieldDisplayStatus:E,labelCol:Me,wrapperCol:Ee,labelWidth:Ie}=Yt(i,n);let{EnhanceJS:s,initCgEnhanceJs:je}=Zt(f,!1);const{executeJsEnhanced:Ne}=to({},f),[Le,{setProps:Je,validate:le,resetFields:ne,clearValidate:Ue,setFieldsValue:T,updateSchema:Q,getFieldsValue:Y,scrollToField:re}]=Wt({schemas:G,showActionButtonGroup:!1,baseColProps:xe,labelWidth:Ie,labelCol:Me,wrapperCol:Ee}),ie=p(!1);function qe(){let e=i.disabled;ie.value=e,Je({disabled:e})}function Ke(e,t,o){return F(this,null,function*(){yield He(),y.value="",yield ne(),setTimeout(()=>{Ue()},0),C.value="";let a=ke(e);m.value=a,a?yield ue(t):ce(),we(()=>{!a&&o&&T(o),We(),X("js","loaded"),qe()})})}function He(){return F(this,null,function*(){if(i.isTree===!0){let e=i.pidField,t=G.value;t&&t.length>0&&t.filter(a=>a.field===e).length>0&&(yield Q({field:e,componentProps:{reload:new Date().getTime(),hiddenNodeKey:""}}))}})}function We(){if(ke(m)===!1){let e=D(j[O.value]);J(e,t=>{T(t)})}}function se(e,t){let o=D(j[e.key]);J(o,a=>{const{row:l,target:d}=t;let v=[{rowKey:l.id,values:A({},a)}];d.setValues(v)})}function ue(e){return F(this,null,function*(){let t=yield ze(e.id);C.value=Object.assign({},e,t);let o=Ge.value,a=Ut(t,...o);i.disabled&&Object.keys(a).map(l=>{!a[l]&&a[l]!==0&&a[l]!=="0"&&delete a[l]}),yield T(a),ce(t)})}function ce(e){e||(e={});let t=Object.keys(N.value);if(t&&t.length>0){let o={};for(let a of t)o[a]=e[a]||[];N.value=o}}let Ge=co(()=>{let e=G.value,t=[];for(let o of e)t.push(o.field);return t});function ze(e){let t=`${oe.optPre}${i.id}/${e}`;return new Promise((o,a)=>{ee.get({url:t},{isTransformResponse:!1}).then(l=>{l.success?o(l.result):(a(),r.warning(l.message))}).catch(()=>{a()})})}function Qe(e){return F(this,null,function*(){w.value=e.head.tableType,O.value=e.head.tableName,P.value=e.head.tableType==1,Ze(e.head.extConfigJson),De(e.schema.properties,e.schema.required,Be,k),s=je(e.enhanceJs),c("rendered",k);let t=yield Xt(n);t.$formValueChange=(o,a,l)=>{gt(o,a),l&&T(l),Ye(o,a,l)},s&&s.setup&&ge(s.setup)})}function Ye(e,t,o){f.changEvent(e,t,o)}function Xe(e){f.addObject2Context("changEvent",e)}function Ze(e){let t={reportPrintShow:0,reportPrintUrl:"",joinQuery:0,modelFullscreen:0,modalMinWidth:"",commentStatus:0,formLabelLength:null};e&&(t=JSON.parse(e)),Object.keys(t).map(o=>{k[o]=t[o]})}function $e(){g.value=!0,fe()}function fe(){P.value===!0?lt():et()}function et(){tt().then(e=>{de(e)})}function tt(){let e={};return new Promise((t,o)=>{le().then(a=>t(a),({errorFields:a})=>{o({code:I,key:O.value,scrollToField:()=>a[0]&&re(a[0].name,{behavior:"smooth",block:"center"})})})}).then(t=>(Object.assign(e,ae(t)),at())).then(t=>(Object.assign(e,t),Promise.resolve(e))).catch(t=>((t===I||(t==null?void 0:t.code)===I)&&(r.warning("校验未通过"),t.key&&(ot(t.key),t.scrollToField&&setTimeout(()=>t.scrollToField(),150))),Promise.reject(null)))}function ot(e){if(e===O.value){c("toggleTab","-1");return}let t=M.value;for(let o=0;o<t.length;o++)if(e==t[o].key){let a=o+"";if(L.value===a)break;if(c("toggleTab",a),t[o].relationType===0){let l=h(e);qt(300,()=>l==null?void 0:l.validateTable())}break}}function at(){return new Promise((e,t)=>F(null,null,function*(){let o={};try{let a=M.value;for(let l=0;l<a.length;l++){let d=a[l].key,v=h(d);if(a[l].relationType==1)try{let R=yield v.getAll();o[d]=[],o[d].push(R)}catch(R){return t(A({code:I,key:d},R))}else{if(yield v.fullValidateTable())return t({code:I,key:d});o[d]=v.getTableData()}}}catch(a){t(a)}e(o)}))}function lt(){return F(this,null,function*(){try{let e=yield le();e=Object.assign({},C.value,e),e=ae(e),S.value=!0,de(e)}catch(e){Array.isArray(e==null?void 0:e.errorFields)&&e.errorFields[0]&&re(e.errorFields[0].name,{behavior:"smooth",block:"center"})}finally{S.value=!1}})}function de(e){yt(Fe,e).then(()=>{nt(e)}).catch(t=>{r.warning(t)})}function nt(e){Object.keys(e).map(l=>{Array.isArray(e[l])&&e[l].length==0&&(e[l]="")});let t=y.value,o=`${oe.optPre}${i.id}?tabletype=${w.value}`;t&&(o=`${t}?tabletype=${w.value}`),g.value===!0&&(e[Gt]=1);let a=m.value===!0?"put":"post";ee.request({url:o,method:a,params:e},{isTransformResponse:!1}).then(l=>{l.success?(l.result&&(e[zt]=l.result),c("success",e),i.submitTip===!0&&r.success(l.message)):r.warning(l.message)}).finally(()=>{S.value=!1})}function rt(e,t,o){t&&o?o.vxeProps?o.setValues([{rowKey:t,values:e}]):o.setValues(e):T(e)}function it(e,t){let o={};o[e]=t,T(o)}const L=p("0"),me=p("auto"),pe=p(340);function st(e){if(m.value===!0){let t=C.value;return ut(t,e)}return""}so(()=>i.tabIndex,e=>{L.value=e},{immediate:!0});function ut(e,t){if(e){let o=e[t];return!o&&o!==0&&(o=e[t.toLowerCase()],!o&&o!==0&&(o=e[t.toUpperCase()])),o}return""}function ct(e,t){if(s&&s[t+"_onlChange"]){let o=s[t+"_onlChange"](),a=Object.keys(e)[0];if(o[a]){let d=h(t).getFormEvent(),v=A({column:{key:a},value:e[a]},d);o[a].call(f,f,v)}}}function ft(e,t){if(s&&s[t+"_onlChange"]){let o=s[t+"_onlChange"](f);if(e.column==="all"){let a=Object.keys(o);if(a.length>0)for(let l of a)o[l].call(f,f,e)}else{let a=e.column.key||e.col.key;o[a]&&e.row&&e.row.id&&o[a].call(f,f,e)}}}function dt(e,t){var o;if(s&&s[t+"_onlChange"]){let a=s[t+"_onlChange"](f),l=Object.keys(a);if(l.length>0)for(let d of l)(o=a[d])==null||o.call(f,f,Ce(A({},e),{row:e.deleteRows}))}}function mt(e,t){t.isModalData||se(e,t)}function pt(e){return"online_"+e+":"}function gt(e,t){return F(this,null,function*(){if(!s||!s.onlChange||!e)return!1;let o=s.onlChange();o[e]&&setTimeout(()=>F(null,null,function*(){let l={row:yield Y(),column:{key:e},value:t};o[e].call(f,f,l)}),0)})}function ge(e){let o=e.toLocaleString().match(oo);if(o.length>1){let a=o[1];Ne(a)}}function X(e,t){if(e=="js"){let o=t+"_hook";s&&s[t]?s[t].call(f,f):s&&s[o]&&ge(s[o])}else if(e=="action"){let o=C.value,a={formId:i.id,buttonCode:t,dataId:o.id,uiFormData:Object.assign({},o)};ee.post({url:`${oe.urlButtonAction}`,params:a},{isTransformResponse:!1}).then(l=>{l.success?r.success("处理完成!"):r.warning("处理失败!")})}}function be(e){let t=h(e),o=[...t.getNewDataWithId(),...N.value[e]];if(!o||o.length==0)return!1;let a=[];for(let l of o)a.push(l.id);t.removeRowsById(a)}function he(e,t){if(!t)return!1;let o=h(e);typeof t=="object"?o.addRows(t,!0):this.$message.error("添加子表数据,参数不识别!")}function bt(e,t){be(e),he(e,t)}function ht(e,t){!t&&t.length<=0&&(t=[]),t.map(o=>{o.hasOwnProperty("label")||(o.label=o.text)}),Q({field:e,componentProps:{options:t}})}function yt(e,t){return s&&s.beforeSubmit?s.beforeSubmit(e,t):Promise.resolve()}function Ft(e,t){let o=D(E);e&&e.length>0?Object.keys(o).map(a=>{!a.endsWith("_load")&&e.indexOf(a)<0&&(E[a]=!1)}):t&&t.length>0&&Object.keys(o).map(a=>{t.indexOf(a)>=0&&(E[a]=!1)})}function vt(e,t){return F(this,null,function*(){y.value=t,yield ne(),C.value="",m.value=!0,yield ue(e),yield we(()=>{X("js","loaded")})})}function h(e){let t=z[e].value;if(t instanceof Array&&(t=t[0]),!t){r.warning("子表ref找不到:"+e);return}return t}function St(){let e=k.reportPrintUrl,t=C.value.id,o=Lt();Jt(e,t,o)}const[Ct,{openModal:ye}]=no(),Z=p(""),$=p(!0);function Tt(e){Z.value=e.id,$.value=!1,ye(!0,{isUpdate:!1,tableType:"3"})}function _t(e){let o=h(e.key).getSelectedData();if(o.length!=1){r.warning("请选择一条数据");return}Z.value=e.id,$.value=!1,ye(!0,{isUpdate:!0,record:o[0]})}function wt(e){const t=e[_e];let o=Te(e,[_e]);if(o.id){let a=Te(A({},o),"id"),l=[{rowKey:o.id,values:a}];h(t).setValues(l)}else h(t).addRows(o,{isOnlineJS:!1,setActive:!1,emitChange:!0,isModalData:!0})}function kt(){let e=M.value;if(e&&e.length>0){for(let t of e)if(t.relationType!=1){let o=h(t.key);o&&o.clearSelection()}}}function Ot(){let e=Y(),t=D(j[O.value]);J(t,o=>{T(o)},e)}function At(e,t){let o=M.value;if(o&&o.length>0){let a=o.filter(l=>l.key===e);if(a.length==0)return;if(a[0].relationType==1)h(e).executeFillRule();else{let l=D(j[e]),d=D(t.row);J(l,v=>{const{row:R,target:Pt}=t;let Rt=[{rowKey:R.id,values:A({},v)}];Pt.setValues(Rt)},d)}}}let Fe={tableName:O,loading:S,subActiveKey:L,onlineFormRef:n,getFieldsValue:Y,setFieldsValue:T,submitFlowFlag:g,subFormHeight:me,subTableHeight:pe,refMap:z,triggleChangeValues:rt,triggleChangeValue:it,sh:E,clearSubRows:be,addSubRows:he,clearThenAddRows:bt,changeOptions:ht,isUpdate:m,getSubTableInstance:h,updateSchema:Q,executeMainFillRule:Ot,executeSubFillRule:At,changEvent:()=>{},onlineFormValueChange:Xe,submitFormAndFlow:$e};return u(Fe),{tableName:O,onlineFormRef:n,registerForm:Le,loading:S,subActiveKey:L,hasSubTable:Ve,subTabInfo:M,refMap:z,subFormHeight:me,getSubTableForeignKeyValue:st,isUpdate:m,handleSubFormChange:ct,subTableHeight:pe,onlineFormDisabled:ie,subDataSource:N,getSubTableAuthPre:pt,handleAdded:mt,handleSubTableDefaultValue:se,handleValueChange:ft,openSubFormModalForAdd:Tt,openSubFormModalForEdit:_t,handleRemoved:dt,show:Ke,createRootProperties:Qe,handleSubmit:fe,sh:E,handleCgButtonClick:X,handleCustomFormSh:Ft,handleCustomFormEdit:vt,dbData:C,onOpenReportPrint:St,onlineExtConfigJson:k,registerPopModal:Ct,popTableName:Z,getPopFormData:wt,popModalRequest:$,onCloseModal:kt,rowNumber:H,getSubAddBtnCfg:W,getSubRemoveBtnCfg:b,getSubOpenAddBtnCfg:Pe,getSubOpenEditBtnCfg:Re}}},bo=["id"],ho={key:1};function yo(i,c,r,n,P,S){const w=x("BasicForm"),y=Kt,g=x("online-sub-form"),m=x("a-button"),K=x("JVxeTable"),H=jt,k=x("Loading"),f=x("online-pop-modal");return _(),U("div",{id:n.tableName+"_form",class:io(["onlineFormWrap",[`formTemplate_${r.formTemplate}`]])},[B(H,{class:"tabTheme",activeKey:n.subActiveKey,"onUpdate:activeKey":c[0]||(c[0]=u=>n.subActiveKey=u)},{default:V(()=>[(_(),q(y,{tab:"主表",key:"-1"},{default:V(()=>[B(w,{ref:"onlineFormRef",onRegister:n.registerForm},null,8,["onRegister"])]),_:1})),n.hasSubTable?(_(!0),U(fo,{key:0},mo(n.subTabInfo,(u,W)=>(_(),q(y,{tab:u.describe,key:W+"",forceRender:!0},{default:V(()=>[u.relationType==1?(_(),U("div",{key:0,style:po({"overflow-y":"auto","overflow-x":"hidden","max-height":n.subFormHeight+"px"})},[B(g,{ref_for:!0,ref:n.refMap[u.key],table:u.key,id:u.id,disabled:n.onlineFormDisabled,"form-template":r.formTemplate,"main-id":n.getSubTableForeignKeyValue(u.foreignKey),properties:u.properties,"required-fields":u.requiredFields,"is-update":n.isUpdate,onFormChange:b=>n.handleSubFormChange(b,u.key)},null,8,["table","id","disabled","form-template","main-id","properties","required-fields","is-update","onFormChange"])],4)):(_(),U("div",ho,[B(K,{ref_for:!0,ref:n.refMap[u.key],toolbar:"","keep-source":"","row-number":n.rowNumber,"row-selection":"",height:n.subTableHeight,disabled:n.onlineFormDisabled,columns:u.columns,dataSource:n.subDataSource[u.key],addBtnCfg:n.getSubAddBtnCfg,removeBtnCfg:n.getSubRemoveBtnCfg,onValueChange:b=>n.handleValueChange(b,u.key),onRemoved:b=>n.handleRemoved(b,u.key),authPre:n.getSubTableAuthPre(u.key),onAdded:b=>n.handleAdded(u,b),onExecuteFillRule:b=>n.handleSubTableDefaultValue(u,b)},{toolbarSuffix:V(()=>[!n.onlineFormDisabled&&n.getSubOpenAddBtnCfg.enabled?(_(),q(m,{key:0,type:"primary",preIcon:n.getSubOpenAddBtnCfg.buttonIcon,onClick:b=>n.openSubFormModalForAdd(u)},{default:V(()=>[Oe("span",null,Ae(n.getSubOpenAddBtnCfg.buttonName),1)]),_:1},8,["preIcon","onClick"])):te("",!0),!n.onlineFormDisabled&&n.getSubOpenEditBtnCfg.enabled?(_(),q(m,{key:1,type:"primary",preIcon:n.getSubOpenEditBtnCfg.buttonIcon,onClick:b=>n.openSubFormModalForEdit(u)},{default:V(()=>[Oe("span",null,Ae(n.getSubOpenEditBtnCfg.buttonName),1)]),_:1},8,["preIcon","onClick"])):te("",!0)]),_:2},1032,["row-number","height","disabled","columns","dataSource","addBtnCfg","removeBtnCfg","onValueChange","onRemoved","authPre","onAdded","onExecuteFillRule"])]))]),_:2},1032,["tab"]))),128)):te("",!0)]),_:1},8,["activeKey"]),B(k,{loading:n.loading,absolute:!1},null,8,["loading"]),ro(i.$slots,"bottom",{},void 0,!0),B(f,{formTableType:"3",request:n.popModalRequest,id:n.popTableName,onRegister:n.registerPopModal,onSuccess:n.getPopFormData,topTip:"",isVxeTableData:""},null,8,["request","id","onRegister","onSuccess"])],10,bo)}const _a=Et(go,[["render",yo],["__scopeId","data-v-8ee26737"]]);export{_a as default};