Files
qhmes/deploy-qhmes/frontend/js/BindingParamsEditor-DRk19pZS.js

2 lines
6.1 KiB
Java
Raw Normal View History

2026-05-15 11:34:12 +08:00
var X=Object.defineProperty,Z=Object.defineProperties;var ee=Object.getOwnPropertyDescriptors;var A=Object.getOwnPropertySymbols;var ae=Object.prototype.hasOwnProperty,te=Object.prototype.propertyIsEnumerable;var V=(r,o,l)=>o in r?X(r,o,{enumerable:!0,configurable:!0,writable:!0,value:l}):r[o]=l,P=(r,o)=>{for(var l in o||(o={}))ae.call(o,l)&&V(r,l,o[l]);if(A)for(var l of A(o))te.call(o,l)&&V(r,l,o[l]);return r},R=(r,o)=>Z(r,ee(o));import{d as ne,o as le,b as oe,w as se,f as g,ah as b,ar as I,as as h,au as v,k as u,aF as f,G as _,e as ie,aC as F,ag as re,F as ue,aD as de}from"./vue-vendor-C7Zq48Yl.js";import{u as ce,d as me}from"./index-BI6CMai0.js";import"./antd-vue-vendor-BPnV8VqP.js";import"./vxe-table-vendor-B88kchpX.js";const pe={class:"binding-params-editor"},ve={class:"binding-actions-row"},fe={class:"modal-section"},ke={class:"modal-section"},ye=ne({__name:"BindingParamsEditor",props:{params:{}},emits:["update:params"],setup(r,{emit:o}){const l=r,x=o,{createMessage:M}=ce(),E=g(typeof window!="undefined"?window.innerHeight:800);function N(){E.value=window.innerHeight}le(()=>window.addEventListener("resize",N)),oe(()=>window.removeEventListener("resize",N));const H=ie(()=>{const a=E.value;return Math.round(Math.min(520,Math.max(260,a-360)))}),L=[{title:"参数键",dataIndex:"key",ellipsis:!0},{title:"显示名",dataIndex:"label",ellipsis:!0}],d=g([]),C=g(!1),B=g(1),c=g([{key:"",label:""}]);se(()=>l.params,()=>{const a=new Set(l.params.map(e=>e.key));d.value=d.value.filter(e=>a.has(e))});function T(a){d.value=a}function z(){B.value=1,c.value=[{key:"",label:""}]}function D(){z(),C.value=!0}function G(){const a=new Set(l.params.map(e=>e.key.trim()).filter(Boolean));return c.value.forEach(e=>{const t=e.key.trim();t&&a.add(t)}),a}function O(a){let e=0;for(const t of a){const n=String(t).match(/^Parameter(\d+)$/i);n&&(e=Math.max(e,Number(n[1])))}return e}function Y(){const a=Math.max(1,Math.min(200,Math.floor(Number(B.value)||1))),e=G();let t=Math.max(1,O(e)+1);for(let n=0;n<a;n++){for(;e.has(`Parameter${t}`);)t+=1;const s=`Parameter${t}`;e.add(s),c.value.push({key:s,label:`参数${t}`}),t+=1}M.success(`已新增 ${a} 行到下方列表,可修改后点「确定添加」。`)}function j(){c.value.push({key:"",label:""})}function J(a){c.value.length<=1||c.value.splice(a,1)}function Q(){const a=new Set(l.params.map(n=>n.key.trim()).filter(Boolean)),e=[],t=new Set(a);for(const n of c.value){const s=n.key.trim();if(!s||t.has(s))continue;t.add(s);const m=n.label.trim();e.push({key:s,label:m||void 0})}e.length&&x("update:params",[...l.params,...e]),C.value=!1,z()}function W(){if(!d.value.length)return;const a=new Set(d.value);x("update:params",l.params.filter(e=>!a.has(e.key))),d.value=[]}function $(a,e){return typeof e=="number"&&e>=0?e:l.params.findIndex(t=>t.key===a.key)}function K(a,e,t){const n=[...l.params];if(a<0||a>=n.length)return;const s=n[a];if(e==="label"){const p=t.trim();n[a]=R(P({},s),{label:p||void 0}),x("update:params",n);return}const m=t.trim();if(!m){M.warning("参数键不能为空");return}if(m!==s.key&&n.some((p,S)=>S!==a&&p.key===m)){M.warning("参数键已存在");return}const U=s.key;n[a]=R(P({},s),{key:m}),x("update:params",n),d.value=d.value.map(p=>p===U?m:p)}return(a,e)=>{const t=b("a-button"),n=b("a-input"),s=b("a-table"),m=b("a-input-number"),U=b("a-space"),p=b("a-divider"),S=b("a-modal");return h(),I("div",pe,[v("div",ve,[u(t,{type:"primary",size:"small",onClick:D},{default:f(()=>[...e[2]||(e[2]=[_("批量新增",-1)])]),_:1}),u(t,{size:"small",danger:d.value.length>0,disabled:!d.value.length,onClick:W},{default:f(()=>[...e[3]||(e[3]=[_(" 批量删除 ",-1)])]),_:1},8,["danger","disabled"])]),u(s,{size:"small",columns:L,"data-source":r.params,"row-key":i=>i.key,pagination:!1,scroll:{y:H.value},"row-selection":{selectedRowKeys:d.value,onChange:T}},{bodyCell:f(({column:i,record:k,index:y})=>{var q;return[i.dataIndex==="key"?(h(),F(n,{key:0,value:k.key,size:"small",placeholder:"参数键","onUpdate:value":w=>K($(k,y),"key",String(w!=null?w:""))},null,8,["value","onUpdate:value"])):i.dataIndex==="la