webman_admin/src/plugin/admin/public/assets/Modify.5672e800.js
2022-10-27 15:37:27 -04:00

2 lines
11 KiB
JavaScript

var C=(r,A,w)=>new Promise((D,T)=>{var W=m=>{try{p(w.next(m))}catch(B){T(B)}},k=m=>{try{p(w.throw(m))}catch(B){T(B)}},p=m=>m.done?D(m.value):Promise.resolve(m.value).then(W,k);p((w=w.apply(r,A)).next())});import{aJ as re,r as g,a as de,cp as ue,a5 as S,aL as G,o as F,aM as P,p as v,i as a,j as K,b8 as Z,w as H,q as i,v as J,x as fe}from"./index.f8bcf808.js";import{B as pe}from"./BasicForm.82e222ab.js";import{C as me}from"./index.4119ca00.js";import"./index.e344e4ac.js";import"./index.0e7d1863.js";import{B as he,a as be}from"./index.a4e346ff.js";import{defaultTableSchemas as ye,fieldSchemas as V,getDefaultFieldSchemas as ve,defaultKeySchemas as E,controlSelectOptions as $e,typeToControl as _e}from"./tableData.4d15a5f8.js";import{T as Y}from"./table.0ba2e59f.js";import{a as ke,b as x}from"./common.4f9a0f43.js";import"./index.14ba2351.js";import"./_baseIteratee.f49fbaac.js";import"./index.91cad2d2.js";import"./index.d82b2be8.js";import"./index.8cf0b441.js";import"./index.05080ca7.js";import"./index.b5bef3a7.js";import"./index.293b5840.js";import"./index.26a767f7.js";import"./uniqBy.0ae55b98.js";import"./download.b66616ed.js";import"./index.f2e779e6.js";import"./useWindowSizeFn.d2a0a89b.js";import"./FullscreenOutlined.f88b6f65.js";const z=g(null),R=g(null),L=g(null),O=g(null);let ee=g("Create table"),$="",Q=[],I=[],b={};const j=g(3),M=g(0),Ce=de({components:{BasicForm:pe,Button:ue,Card:me,BasicModal:he},emits:["reload","register"],setup(r,{emit:A}){const[w,{closeModal:D}]=be(t=>C(this,null,function*(){$=t?t.table:"",$&&(ee.value="Modify table");const o=$?yield ke(Y.SCHEMA,{table:$}):{table:{}};Q=[];for(let d of ye){let u=S(d);if(u.defaultValue=o.table[u.field]||"",$&&u.field=="name"){let h=S(u);h.field="old_name",h.componentProps={hidden:!0},h.colProps={span:0},h.label="",Q.push(h)}Q.push(u)}const e=z.value;if(e==null||e.resetSchema(Q),I=[],$)for(let d in o.columns){let u=o.columns[d];for(let h in V){let n=S(V[h]),c=n.field;if(n.defaultValue=u[c],c==="field"){let f=S(n);f.field=`old_${c}[${d}]`,f.label="",f.colProps={span:0},f.componentProps={hidden:!0},I.push(f)}n.field=n.slot?`${d}`:`${c}[${d}]`,I.push(n),j.value=Number(d)+1}}else I=ve();const l=R.value;if(l==null||l.resetSchema(I),$)for(let d in o.forms){let u=o.forms[d];b[u.field]=u}const s=O.value;s==null||s.resetSchema([]);const _=[];if($)for(let d in o.keys){let u=o.keys[d];for(let h in E){let n=S(E[h]),c=n.field;if(n.defaultValue=u[c],$&&c==="name"){let f=S(n);f.field=`old_${c}[${d}]`,f.label="",f.colProps={span:0},f.componentProps={hidden:!0},_.push(f)}n.field=n.slot?`${d}`:`${c}[${d}]`,_.push(n),M.value=Number(d)+1}}if(s==null||s.resetSchema(_),s){const d=yield s.validate();Object.keys(d).length||q()}U()})),T=g("fieldTab"),{createMessage:W}=fe(),{success:k}=W,p=[{key:"fieldTab",tab:"Field Properties"},{key:"formTab",tab:"Form Properties"},{key:"keyTab",tab:"index"}];function m(t){return C(this,null,function*(){if(T.value=t,t==="formTab"){U();return}if(t=="keyTab"){const e=O.value;if(!e)return;const l=yield e.validate();Object.keys(l).length||q()}const o=yield N();for(let e of o)b[e.field]=e})}function B(){m("fieldTab")}function y(){return C(this,null,function*(){const t=R.value;if(!t)return[];const o=[];let e=-1;const l=yield t.validate();for(;e<Object.keys(l).length;)e++,l[`field[${e}]`]&&o.push({old_field:l[`old_field[${e}]`],field:l[`field[${e}]`],type:l[`type[${e}]`],comment:l[`comment[${e}]`]||null,length:l[`length[${e}]`]||null,default:l[`default[${e}]`]||null,nullable:l[`nullable[${e}]`]||!1,primary_key:l[`primary_key[${e}]`]||!1,auto_increment:l[`auto_increment[${e}]`]||!1});return o})}function N(){return C(this,null,function*(){const t=L.value;if(!t)return[];const o=[];let e=-1;const l=yield t.validate();for(;e<Object.keys(l).length;)e++,l[`field[${e}]`]&&o.push({field:l[`field[${e}]`],comment:l[`comment[${e}]`]||null,control:l[`control[${e}]`]||null,form_show:!!l[`form_show[${e}]`],list_show:!!l[`list_show[${e}]`],enable_sort:!!l[`enable_sort[${e}]`],readonly:!!l[`readonly[${e}]`],searchable:!!l[`searchable[${e}]`],search_type:l[`search_type[${e}]`]||"normal",control_args:l[`control_args[${e}]`]||null});return o})}function le(){return C(this,null,function*(){const t=O.value;if(!t)return[];const o=[];let e=-1;const l=yield t.validate();for(;e<Object.keys(l).length;)e++,l[`name[${e}]`]&&o.push({old_name:l[`old_name[${e}]`]||null,name:l[`name[${e}]`],columns:l[`columns[${e}]`]||null,type:l[`type[${e}]`]||null});return o})}function U(){var l,s,_,d,u,h;const t=L.value,o=R.value;if(!t||!o)return;const e=o.getFieldsValue();t.resetSchema([]);for(let n in e.field){let c=e.field[n],f=e.comment[n],X=e.type[n],ie=e.primary_key[n],ce=e.length[n];t.appendSchemaByField({field:`old_field[${n}]`,component:"Input",label:" ",colProps:{span:0},defaultValue:c,componentProps:{disabled:!0,hidden:!0}},""),t.appendSchemaByField({field:`field[${n}]`,component:"Input",label:" ",colProps:{span:4},defaultValue:c,componentProps:{disabled:!0}},""),t.appendSchemaByField({field:`comment[${n}]`,component:"Input",label:" ",colProps:{span:4},defaultValue:f,componentProps:{disabled:!0}},""),t.appendSchemaByField({field:`control[${n}]`,component:"Select",label:" ",colProps:{span:4},required:!0,componentProps:{options:$e},defaultValue:((l=b[c])==null?void 0:l.control)||_e(X)},""),t.appendSchemaByField({field:`form_show[${n}]`,component:"Checkbox",label:" ",colProps:{span:1},defaultValue:ie?!1:b[c]?b[c].form_show:!0},""),t.appendSchemaByField({field:`list_show[${n}]`,component:"Checkbox",label:" ",colProps:{span:1},defaultValue:b[c]?b[c].list_show:!0},""),t.appendSchemaByField({field:`enable_sort[${n}]`,component:"Checkbox",label:" ",colProps:{span:1},defaultValue:((s=b[c])==null?void 0:s.enable_sort)||!1},""),t.appendSchemaByField({field:`readonly[${n}]`,component:"Checkbox",label:" ",colProps:{span:1},defaultValue:((_=b[c])==null?void 0:_.readonly)||!1},""),t.appendSchemaByField({field:`searchable[${n}]`,component:"Checkbox",label:" ",colProps:{span:1},defaultValue:((d=b[c])==null?void 0:d.searchable)||!1},""),t.appendSchemaByField({field:`search_type[${n}]`,component:"Select",label:" ",colProps:{span:2},componentProps:{options:[{label:"General query",value:"normal"},{label:"Range Query",value:"between"}]},defaultValue:((u=b[c])==null?void 0:u.search_type)||"General query"},""),t.appendSchemaByField({field:`control_args[${n}]`,component:"Input",label:" ",colProps:{span:4},componentProps:{placeholder:""},defaultValue:((h=b[c])==null?void 0:h.control_args)||te(X,ce)},"")}}const te=(t,o)=>{if(t=="enum"){let e=[];for(let l of o.split(","))e.push(l+":"+l);return"options:"+e.join(",")}return""},ae=()=>C(this,null,function*(){try{const t=z.value,o=L.value;if(!t||!o)return;const e=yield t.validate(),l=yield y(),s=yield N(),_=yield le();$?yield x(Y.MODIFY,{table:e,columns:l,forms:s,keys:_}):yield x(Y.CREATE,{table:e,columns:l,forms:s,keys:_}),D(),k("Successful operation"),A("reload")}catch(t){console.log(t)}});function oe(){const t=R.value;if(!!t){for(let o in V){let e=S(V[o]);e.field=e.field==="0"?String(j.value):`${e.field}[${j.value}]`,t.appendSchemaByField(e,"")}j.value++}}function ne(t){const o=R.value;if(!o)return;const e=[];for(let l in V){let s=V[l];e.push(s.field=="0"?String(t):`${s.field}[${t}]`)}o.removeSchemaByFiled(e),j.value--}function q(){return C(this,null,function*(){const t=O.value;if(!t)return;const o=yield y(),e=[];for(let l of o)e.push({label:l.field,value:l.field});for(let l in E){let s=S(E[l]);s.field==="columns"&&s.componentProps&&(s.componentProps.options=e),s.field=s.field==="0"?String(M.value):`${s.field}[${M.value}]`,t.appendSchemaByField(s,"")}M.value++})}function se(t){const o=O.value;if(!o)return;const e=[];for(let l in E){let s=E[l];e.push(s.field=="0"?String(t):`${s.field}[${t}]`)}o.removeSchemaByFiled(e),M.value--,M.value<0&&q()}return{tableElRef:z,fieldElRef:R,formElRef:L,keyElRef:O,title:ee,handleSubmit:ae,tabListTitle:p,onTabChange:m,onTabClose:B,activeKey:T,del:ne,add:oe,addKey:q,delKey:se,register:w}}}),Se={class:"mt-3"},ge=a("div",{class:"ant-row pb-2 b"},[a("div",{class:"ant-col-4 pl-2 align-center"}," Field"),a("div",{class:"ant-col-4"}," Notes"),a("div",{class:"ant-col-3 pl-2"},"length/value"),a("div",{class:"ant-col-4 pl-2"},"default"),a("div",{class:"ant-col-4 pl-2"}),a("div",{class:"ant-col-1"},"Auto Increment"),a("div",{class:"ant-col-1"},"Allow empty"),a("div",{class:"ant-col-2 pl-2"},"operate")],-1),we=a("div",{class:"ant-row pb-2 b"},[a("div",{class:"ant-col-4 pl-2"},[a("br"),i("Field")]),a("div",{class:"ant-col-4"},[a("br"),i("Remarks")]),a("div",{class:"ant-col-4 pl-2"},[a("br"),i("Control Type")]),a("div",{class:"ant-col-1 pl-2"},[i("Form"),a("br"),i("Display")]),a("div",{class:"ant-col-1 pl-2"},[i("List"),a("br"),i("Display")]),a("div",{class:"ant-col-1"},[i("Support "),a("br"),i("sorting")]),a("div",{class:"ant-col-1"},[i("Whether "),a("br"),i("read-only")]),a("div",{class:"ant-col-1"},[i("Whether "),a("br"),i(" query")]),a("div",{class:"ant-col-2 pl-2"},[a("br"),i("Query Type")]),a("div",{class:"ant-col-4 pl-2"},[a("br"),i("Control Parameters")])],-1),Be=a("div",{class:"ant-row pb-2 b"},[a("div",{class:"ant-col-6 pl-2"},[a("br"),i("Index Name")]),a("div",{class:"ant-col-6"},[a("br"),i("Index Field")]),a("div",{class:"ant-col-6 pl-2"},[a("br"),i("index type")])],-1);function Fe(r,A,w,D,T,W){const k=G("BasicForm"),p=G("Button"),m=G("Card"),B=G("BasicModal");return F(),P(B,Z(r.$attrs,{destroyOnClose:"",onRegister:r.register,title:r.title,onOk:r.handleSubmit,afterClose:r.onTabClose}),{default:v(()=>[a("div",Se,[K(k,{ref:"tableElRef",labelWidth:75,showActionButtonGroup:!1},null,512)]),K(m,Z({"tab-list":r.tabListTitle},r.$attrs,{"active-tab-key":r.activeKey,onTabChange:r.onTabChange}),{default:v(()=>[H(a("div",null,[ge,K(k,{ref:"fieldElRef",labelWidth:10,actionColOptions:{span:24},showResetButton:!1,showSubmitButton:!1},{add:v(({field:y})=>[Number(y)===0?(F(),P(p,{key:0,onClick:r.add},{default:v(()=>[i("+")]),_:1},8,["onClick"])):(F(),P(p,{key:1,onClick:N=>r.del(y)},{default:v(()=>[i("-")]),_:2},1032,["onClick"]))]),_:1},512)],512),[[J,r.activeKey==="fieldTab"]]),H(a("div",null,[we,K(k,{ref:"formElRef",labelWidth:10,actionColOptions:{span:24},showResetButton:!1,showSubmitButton:!1},{add:v(({field:y})=>[Number(y)===0?(F(),P(p,{key:0,onClick:r.add},{default:v(()=>[i("+")]),_:1},8,["onClick"])):(F(),P(p,{key:1,onClick:N=>r.del(y)},{default:v(()=>[i("-")]),_:2},1032,["onClick"]))]),_:1},512)],512),[[J,r.activeKey==="formTab"]]),H(a("div",null,[Be,K(k,{ref:"keyElRef",labelWidth:10,actionColOptions:{span:24},showResetButton:!1,showSubmitButton:!1},{add:v(({field:y})=>[Number(y)===0?(F(),P(p,{key:0,onClick:r.addKey},{default:v(()=>[i("+")]),_:1},8,["onClick"])):(F(),P(p,{key:1,onClick:N=>r.delKey(y)},{default:v(()=>[i("-")]),_:2},1032,["onClick"]))]),_:1},512)],512),[[J,r.activeKey==="keyTab"]])]),_:1},16,["tab-list","active-tab-key","onTabChange"])]),_:1},16,["onRegister","title","onOk","afterClose"])}var Ze=re(Ce,[["render",Fe]]);export{Ze as default};