use-page-search.a21c9b72.js 2.0 KB

1
  1. import{B as y}from"./basic-form.88ff3b16.js";import{u as D}from"./hooks.5d69b21b.js";import{e as Y,a7 as b,q as v,r as x,o as E,c as I,h,A as _,a as R,j as g,a1 as S,aJ as w,L as B,aI as P}from"./index.c7104591.js";function F(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}},j={class:"bg-white w-99/100 pl-8 pt-4 page-search"},N={style:{width:"100%"},flex:"","gap-2":""},O=B(" \u641C\u7D22 "),V=B(" \u91CD\u7F6E "),J=Y({__name:"page-search",props:M,emits:["searchBtnClick","resetBtnClick"],setup(r,{emit:c}){const s=r,{searchParams:t}=b(),l=F(s.formConfig.formItems),o=v({...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=x("el-button");return E(),I("div",j,[h(g(y),w(a.formConfig,{"form-data":o.value,"onUpdate:form-data":e[0]||(e[0]=f=>o.value=f)}),{action:_(()=>[R("div",N,[h(i,{type:"primary",icon:g(D)("search"),onClick:m},{default:_(()=>[O]),_:1},8,["icon"]),h(i,{icon:g(D)("refresh"),onClick:u},{default:_(()=>[V]),_:1},8,["icon"]),S(a.$slots,"action")])]),_:3},16,["form-data"])])}}});function L(r,c,s){const t=v(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]?P(e[n][0]).format("YYYY-MM-DD hh:mm:ss"):"",e[k]=e[n][1]?P(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{J as _,L as u};