1 |
- import{B as y}from"./basic-form.8028f82a.js";import{u as v}from"./hooks.5edcbc74.js";import{q as Y,ao as b,B as P,r as S,o as x,n as E,t as h,H as _,p as R,v as g,a9 as w,aX as F,S as B,aW as D}from"./index.ec6726c2.js";function I(r){const c={};for(const s of r){const t=s.type==="checkbox",l=s.type==="date_picker",o=s.type==="range";c[s.field]=t||l||o?[]:""}return c}const M={formConfig:{type:Object,required:!0}},N={class:"bg-white w-99/100 pl-8 pt-4 page-search"},O={style:{width:"100%"},flex:"","gap-2":""},V=B(" \u641C\u7D22 "),j=B(" \u91CD\u7F6E "),T=Y({__name:"page-search",props:M,emits:["searchBtnClick","resetBtnClick"],setup(r,{emit:c}){const s=r,{searchParams:t}=b(),l=I(s.formConfig.formItems),o=P({...t.basic?t.basic:l});function u(){o.value={...l},c("resetBtnClick")}function m(){c("searchBtnClick",o.value)}if(t.basic){const{formConfig:a}=s,{formItems:e}=a;e.forEach(i=>{const{field:f,otherOptions:d={}}=i,{startProp:n,endProp:p}=d;(n||p)&&(o.value[f]=[t.basic[n],t.basic[p]],delete o.value[n],delete o.value[p])})}return(a,e)=>{const i=S("el-button");return x(),E("div",N,[h(g(y),F(a.formConfig,{"form-data":o.value,"onUpdate:form-data":e[0]||(e[0]=f=>o.value=f)}),{action:_(()=>[R("div",O,[h(i,{type:"primary",icon:g(v)("search"),onClick:m},{default:_(()=>[V]),_:1},8,["icon"]),h(i,{icon:g(v)("refresh"),onClick:u},{default:_(()=>[j]),_:1},8,["icon"]),w(a.$slots,"action")])]),_:3},16,["form-data"])])}}});function U(r,c,s){const t=P(null);function l(u){var i;const{result:m,deleteProps:a}=r?r(u):{result:{},deleteProps:[]},e={...u,...m};if(s){const{formItems:f}=s;f.forEach(d=>{const{field:n,otherOptions:p={}}=d,{startProp:C,endProp:k}=p;(C||k)&&(e[C]=e[n][0]?D(e[n][0]).format("YYYY-MM-DD hh:mm:ss"):"",e[k]=e[n][1]?D(e[n][1]).format("YYYY-MM-DD hh:mm:ss"):"",delete e[n])})}a.forEach(f=>delete e[f]),(i=t.value)==null||i.getPageData(e)}function o(u){var a;const{result:m}=r?r(u):{result:{}};(a=t.value)==null||a.getPageData(m),c&&c()}return{pageContentRef:t,handleSearchClick:l,handleResetClick:o}}export{T as _,U as u};
|