2 lines
12 KiB
Java
2 lines
12 KiB
Java
import{d as X,f as Y,ah as g,ar as Z,as as M,F as ee,k as v,aG as te,aF as _,aC as le,ag as ie,G as ae}from"./vue-vendor-C7Zq48Yl.js";import{bC as u,al as C}from"./index-BI6CMai0.js";import{L as oe}from"./useTableSync-BAWujyoc-CpxxVsa6.js";import de from"./LinkTableConfigModal-5WVlPPIx-Bsssux9J.js";import re from"./LinkTableFieldConfigModal-ZG9xTFfN-BG2cNJvD.js";import se from"./FieldExtendJsonModal-C9MvnALf-Cbou3qhk.js";import"./index-Du0A3ksf.js";import{h as ne}from"./main.index-Cs5ETdXF.js";import"./antd-vue-vendor-BPnV8VqP.js";import"./vxe-table-vendor-B88kchpX.js";import"./cgform.data-CviSPXEg-BseaVj6W.js";import"./index-Di-j2gt4.js";import"./BasicForm-BJnSRkIE.js";import"./componentMap-BBZeqR-K.js";import"./useFormItem-BdW6EoZe.js";import"./index-pxs5MULf.js";import"./index-BgYCgfME.js";import"./index-DeEq83Ov.js";import"./index-f8O7TghW.js";import"./useTimeout-DDl4l82I.js";import"./useIntersectionObserver-BMxdTqP3.js";import"./BasicModal-0sAdFEk_.js";import"./ModalHeader-keHdAHWH.js";import"./useWindowSizeFn-PRZSD86C.js";import"./download-UE0L9Rfp.js";import"./base64Conver-24EVOS6V.js";import"./index-CIBZG4nR.js";import"./index-BhQEwnQQ.js";import"./useCountdown-DqnNWBp6.js";import"./useFormItemSingle-BbRhswfn.js";import"./JSelectUser-B71zikzw.js";import"./props-DAezUTeZ.js";import"./JSelectBiz-CnEaVMUF.js";import"./JAddInput-D6qcyZjQ.js";import"./areaDataUtil-CbYCy3Ig.js";import"./index-CNkz_PUv.js";import"./index-CUdllngZ.js";import"./bem-EhXRi4nW.js";import"./props-D4vdsy3J.js";import"./useContextMenu-Cwx1lIOK.js";import"./depart.api-DeMNV8zW.js";import"./TreeIcon-DE4jdeZV.js";import"./JSelectDept-DRDVeruW.js";import"./JPopup-Bva6u6tk.js";import"./usePopBiz-CG0vVpgI.js";import"./useMethods-DVip17X8.js";import"./index-Dg4HCEvo.js";import"./JEllipsis-DqRFTSm0.js";import"./JUpload-Cz9HN61B.js";import"./index-MGIrEF-A.js";import"./index-MREkPhsT.js";import"./useForm-BZtHZyx2.js";import"./JAreaLinkage-BeRUFHSB.js";import"./JCodeEditor-CLVZA7Uj.js";import"./htmlmixed-NhwyF9-q.js";import"./vue-CgbRSACy.js";/* empty css */import"./EasyCronInput-7xfJ3nBh.js";import"./SetSwitchOptions-CVRgZH8g-z6D6JK1w.js";import"./constant-DnbpmwZg-Ddbq-fz2.js";var ue=Object.defineProperty,ce=Object.defineProperties,pe=Object.getOwnPropertyDescriptors,O=Object.getOwnPropertySymbols,me=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,N=(i,n,r)=>n in i?ue(i,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):i[n]=r,be=(i,n)=>{for(var r in n||(n={}))me.call(n,r)&&N(i,r,n[r]);if(O)for(var r of O(n))fe.call(n,r)&&N(i,r,n[r]);return i},ye=(i,n)=>ce(i,pe(n));const K=[{title:"文本框",value:"text"},{title:"密码",value:"password"},{title:"下拉框",value:"list"},{title:"单选框",value:"radio"},{title:"多选框",value:"checkbox"},{title:"开关",value:"switch"},{title:"日期(年月日)",value:"date"},{title:"日期(年月日时分秒)",value:"datetime"},{title:"时间(HH:mm:ss)",value:"time"},{title:"文件",value:"file"},{title:"图片",value:"image"},{title:"多行文本",value:"textarea"},{title:"富文本",value:"umeditor"},{title:"MarkDown",value:"markdown"},{title:"用户选择",value:"sel_user"},{title:"部门选择",value:"sel_depart"},{title:"关联记录",value:"link_table"},{title:"他表字段",value:"link_table_field"},{title:"省市区组件",value:"pca"},{title:"Popup弹框",value:"popup"},{title:"Popup字典",value:"popup_dict"},{title:"下拉多选框",value:"list_multi"},{title:"下拉搜索框",value:"sel_search"},{title:"分类字典树",value:"cat_tree"},{title:"自定义树控件",value:"sel_tree"},{title:"联动组件",value:"link_down"}],ge=[{title:"文本框",value:"text"},{title:"单选框",value:"radio"},{title:"开关",value:"switch"},{title:"日期(yyyy-MM-dd)",value:"date"},{title:"日期(yyyy-MM-dd HH:mm:ss)",value:"datetime"},{title:"时间(HH:mm:ss)",value:"time"},{title:"文件",value:"file"},{title:"图片",value:"image"},{title:"下拉框",value:"list"},{title:"下拉多选框",value:"list_multi"},{title:"下拉搜索框",value:"sel_search"},{title:"popup弹出框",value:"popup"},{title:"部门选择",value:"sel_depart"},{title:"用户选择",value:"sel_user"},{title:"省市区组件",value:"pca"},{title:"多行文本",value:"textarea"}],he=X({name:"PageAttributeTable",components:{LinkTableConfigModal:de,LinkTableFieldConfigModal:re,FieldExtendJsonModal:se},setup(){const i=Y([{title:"字段名称",key:"dbFieldName",width:100},{title:"字段备注",key:"dbFieldTxt",width:150},{title:"表单显示",key:"isShowForm",width:80,type:u.checkbox,align:"center",customValue:["1","0"],defaultChecked:!0},{title:"列表显示",key:"isShowList",width:80,type:u.checkbox,align:"center",customValue:["1","0"],defaultChecked:!0},{title:"是否排序",key:"sortFlag",width:80,type:u.checkbox,align:"center",customValue:["1","0"],defaultChecked:!1,props:{isDisabledCell({row:e,column:t}){let{dbTable:l}=p;const o=l.value.tableRef.getTableData({rowIds:[e.id]})[0];return(o==null?void 0:o.dbIsPersist)=="0"}}},{title:"是否只读",key:"isReadOnly",width:80,type:u.checkbox,align:"center",customValue:["1","0"],defaultChecked:!1},{title:"控件类型",key:"fieldShowType",width:170,type:u.select,options:K,defaultValue:"text",placeholder:"请选择${title}",validateRules:[{required:!0,message:"请选择${title}"},{handler:S}]},{title:"控件长度",key:"fieldLength",width:100,titleHelp:{message:"此长度只对子表列字段宽度有效!"},type:u.inputNumber,defaultValue:120,placeholder:"请输入控件长度"},{title:"是否查询",key:"isQuery",width:80,type:u.checkbox,align:"center",customValue:["1","0"],defaultChecked:!1,props:{isDisabledCell({row:e,column:t}){let{dbTable:l}=p;const o=l.value.tableRef.getTableData({rowIds:[e.id]})[0];return(o==null?void 0:o.dbIsPersist)=="0"}}},{title:"查询类型",key:"queryMode",width:120,type:u.select,options:[{title:"普通查询",value:"single"},{title:"模糊查询",value:"like"},{title:"范围查询",value:"group"}],defaultValue:"single",placeholder:"请选择${title}",validateRules:[{handler:A}],props:{isDisabledCell({row:e,column:t}){}}},{title:"控件默认值",key:"fieldDefaultValue",width:140,type:u.textarea,props:{allowClear:!0},defaultValue:""},{title:"定义转换器",key:"converter",width:150,type:u.input,defaultValue:""},{title:"扩展参数",key:"fieldExtendJson",width:120,type:u.textarea,defaultValue:""},{title:"更多配置",minWidth:100,key:"fieldConfig",type:u.slot,slotName:"fieldConfig"}]),n=oe(i),{tableRef:r,tables:p}=n;function S({cellValue:e,row:t},l){let{dbTable:o}=p,a=o.value.tableRef.getTableData({rowIds:[t.id]})[0].dbType;e==="time"&&a!=="string"?l(!1,"当控件类型为时间时,数据库属性里的字段类型必须是String!"):e==="date"&&a!=="Date"&&a!=="Datetime"?l(!1,"当控件类型为日期时,数据库属性里的字段类型必须是Date或Datetime!"):e==="datetime"&&a!=="Datetime"?l(!1,"当控件类型为datetime时,数据库属性里的字段类型必须是Datetime!"):l(!0)}function V(e){let t="text";e.dbType==="Datetime"?t="datetime":e.dbType==="Date"&&(t="date"),r.value.setValues([{rowKey:e.id,values:{fieldShowType:t}}])}function w(e){e.dbIsPersist==="0"&&r.value.setValues([{rowKey:e.id,values:{isQuery:"0",sortFlag:"0"}}])}function T(e){for(let t of i.value)if(t.key=="fieldShowType"){t.options=e?ge:K;break}}function k(e){r.value.setValues([{rowKey:e,values:{isQuery:"1"}}])}const[x,{openModal:F}]=C(),[h,{openModal:D}]=C(),[J,{openModal:E}]=C();function I(e){return e.row.dbFieldName!="id"}function P(e){e.row.fieldShowType.indexOf("link_table")>=0?R(e):Q(e)}function R(e){let{row:t}=e,{checkTable:l}=p;if(l){let o=l.value.tableRef.getTableData({rowIds:[t.id]})[0];if(e.row.fieldShowType=="link_table"){let a=L(t,o);F(!0,{record:a,fieldName:t.dbFieldName})}else if(e.row.fieldShowType=="link_table_field"){let a=H(t,o);D(!0,a)}}}function H(e,t){let l=r.value.getTableData().filter(d=>d.fieldShowType=="link_table"),o={};if(l&&l.length>0){let d=p.checkTable.value.tableRef.getTableData();for(let y of l){let f=d.filter(b=>b.dbFieldName==y.dbFieldName);if(f&&f.length>0){let b=f[0];o[b.dbFieldName]={title:y.dbFieldTxt,table:b.dictTable,fields:b.dictText}}}}const{dictTable:a,dictText:m}=t,{id:c,dbFieldTxt:s}=e;return{record:{rowKey:c,dbFieldTxt:s,dictText:m,dictTable:a},tableAndFieldsMap:o}}function L(e,t){const{id:l,dbFieldTxt:o,fieldExtendJson:a}=e,{dictTable:m,dictText:c}=t;let s={rowKey:l,dbFieldTxt:o,dictTable:m};if(c){let d=c.split(",");s.titleField=d[0],d.length>1&&(s.otherFields=c.substring(c.indexOf(",")+1))}else s.titleField="",s.otherFields="";if(a)try{let d=JSON.parse(a);d.multiSelect?s.multiSelect=d.multiSelect:s.multiSelect=!1,d.isListReadOnly?s.isListReadOnly=d.isListReadOnly:s.isListReadOnly=!1,d.showType?s.showType=d.showType:s.showType="card",d.imageField?s.imageField=d.imageField:s.imageField=""}catch(d){}return s}function j(e){const{multiSelect:t,showType:l,imageField:o,fieldName:a,isListReadOnly:m}=e;let c={showType:l,multiSelect:t,imageField:o,isListReadOnly:m},s=[{rowKey:e.rowKey,values:{fieldExtendJson:JSON.stringify(c),dbFieldTxt:e.dbFieldTxt}}];r.value.setValues(s);let{checkTable:d,dbTable:y}=p;if(y){let f=[{rowKey:e.rowKey,values:{dbFieldTxt:e.dbFieldTxt}}];y.value.tableRef.setValues(f)}if(d){let f=e.titleField;e.otherFields&&(f+=","+e.otherFields);const{dictTable:b,dictField:z}=e;let W={dictTable:b,dictField:z,dictText:f,dbFieldName:a},U=[{rowKey:e.rowKey,values:W}];d.value.tableRef.setValues(U)}}function B(e){const{dbFieldTxt:t,dictTable:l,dictText:o,rowKey:a}=e;let m=[{rowKey:a,values:{dbFieldTxt:t}}];r.value.setValues(m);let{checkTable:c,dbTable:s}=p;if(s){let d=[{rowKey:a,values:{dbFieldTxt:t,dbIsPersist:"0"}}];s.value.tableRef.setValues(d)}if(c){let d=[{rowKey:a,values:{dictTable:l,dictText:o}}];c.value.tableRef.setValues(d)}}function Q(e){let t=e.row.fieldExtendJson||"",l=e.rowId,o=e.row.fieldShowType||"",a=e.row.sortFlag||"0";const m=e.row.dbType;E(!0,{jsonStr:t,fieldShowType:o,sortFlag:a,id:l,dbType:m})}function q(e,t){let l;e&&Object.keys(e).length>0?l=[{rowKey:t,values:{fieldExtendJson:JSON.stringify(e)}}]:l=[{rowKey:t,values:{fieldExtendJson:""}}],r.value.setValues(l)}const $=e=>{};function A({cellValue:e,row:t},l){let{dbTable:o}=p;const a=o.value.tableRef.getTableData({rowIds:[t.id]})[0].dbType;e==="group"?["double","int","BigDecimal","Date","Datetime"].includes(a)||t.fieldShowType==="time"?l(!0):l(!1,"范围查询,只支持数据库属里的字段类型为:Integer、Double、BigDecimal及Date、Datetime 或 控件类型是时间(HH:mm:ss)"):e==="like"?["string"].includes(a)&&t.fieldShowType==="text"?l(!0):l(!1,"模糊查询,只支持控件类型是文本框且数据库属里的字段类型是String"):l(!0)}const G=({oldValue:e,row:t})=>{t.dbType!="string"&&e=="string"&&r.value.getTableData({rowIds:[t.id]})[0].queryMode=="like"&&r.value.setValues([{rowKey:t.id,values:{queryMode:"single"}}])};return ye(be({},n),{columns:i,enableQuery:k,syncFieldShowType:V,changePageType:T,showConfigButton:I,showFieldConfig:R,registerExtJsonModal:J,handleExtJson:q,openConfig:P,registerModal:x,handleConfigData:j,registerFieldModal:h,handleFieldConfigData:B,syncIsQuery:w,handleValueChange:$,syncQueryMode:G})}});function ve(i,n,r,p,S,V){const w=g("a-button"),T=g("JVxeTable"),k=g("link-table-config-modal"),x=g("link-table-field-config-modal"),F=g("FieldExtendJsonModal");return M(),Z(ee,null,[v(T,te({ref:"tableRef","row-class-name":"online-config-page",rowNumber:"",keyboardEdit:"",maxHeight:i.tableHeight.noToolbar,loading:i.loading,columns:i.columns,dataSource:i.dataSource,disabledRows:{dbFieldName:["id","has_child"]},onValueChange:i.handleValueChange},i.tableProps),{fieldConfig:_(h=>[i.showConfigButton(h)?(M(),le(w,{key:0,type:"primary",size:"small",ghost:"",onClick:D=>i.openConfig(h)},{default:_(()=>[...n[0]||(n[0]=[ae("更多配置",-1)])]),_:1},8,["onClick"])):ie("",!0)]),_:1},16,["maxHeight","loading","columns","dataSource","onValueChange"]),v(k,{onRegister:i.registerModal,onSuccess:i.handleConfigData},null,8,["onRegister","onSuccess"]),v(x,{onRegister:i.registerFieldModal,onSuccess:i.handleFieldConfigData},null,8,["onRegister","onSuccess"]),v(F,{onRegister:i.registerExtJsonModal,onSuccess:i.handleExtJson},null,8,["onRegister","onSuccess"])],64)}const St=ne(he,[["render",ve],["__scopeId","data-v-519eccff"]]);export{St as default};
|