2 lines
1.8 KiB
Java
2 lines
1.8 KiB
Java
import{d as m,h as A,f as r,e as w,ah as y,aC as p,as as b,aG as $}from"./vue-vendor-C7Zq48Yl.js";import{af as _}from"./antd-vue-vendor-BPnV8VqP.js";import{r as d,a as D,p as O,b as k}from"./areaDataUtil-CbYCy3Ig.js";import{p as t,a as P,a0 as V,d as j}from"./index-BI6CMai0.js";import"./vxe-table-vendor-B88kchpX.js";const B=m({name:"JAreaLinkage",components:{Cascader:_},inheritAttrs:!1,props:{value:t.oneOfType([t.object,t.array,t.string]),showArea:t.bool.def(!0),showAll:t.bool.def(!1),saveCode:t.oneOf(["province","city","region","all"]).def("all")},emits:["options-change","change","update:value"],setup(a,{emit:l,refs:v}){const g=r([]),c=P(),o=r([]),i=w(()=>{if(a.showArea&&a.showAll)return D;if(a.showArea&&!a.showAll)return d;if(!a.showArea&&!a.showAll)return O;if(!a.showArea&&a.showAll)return k});A(()=>{a.value?h():o.value=[]});function h(){let e=a.value?a.value:[];if(e&&typeof e=="string"&&e!="null"&&e!="undefined"){const s=e.split(",");o.value=u(s)}else V(e)&&(e.length?o.value=u(e):o.value=[])}function u(e){let s=[];if(a.saveCode==="region"){const n=e[0];s=[`${n.substring(0,2)}0000`,`${n.substring(0,2)}${n.substring(2,4)}00`,n]}else if(a.saveCode==="city"){const n=e[0];s=[`${n.substring(0,2)}0000`,n]}else a.saveCode==="province"?s=[e[0]]:s=e;return s}const f=e=>{let s=e;s&&(a.saveCode==="all"||(s=e.join(","))),l("change",s),l("update:value",s)};function C(e,...s){if(e!=null&&e.length){let n=[];a.saveCode==="region"?n=[e[e.length-1]]:a.saveCode==="city"?n=[e[1]]:a.saveCode==="province"?n=[e[0]]:n=e,f(n)}else f(e)}return{cascaderValue:o,attrs:c,regionData:d,getOptions:i,handleChange:C}}});function T(a,l,v,g,c,o){const i=y("Cascader");return b(),p(i,$(a.attrs,{value:a.cascaderValue,options:a.getOptions,onChange:a.handleChange}),null,16,["value","options","onChange"])}const z=j(B,[["render",T]]);export{z as default};
|