1 |
- import{d as p,a as i,L as y,j as o,q as C,ab as b,ac as v,z as c,x as _,an as L,B as f,S,k as A,l as u,u as h,G as x,H as T,P as w}from"./vendor.ad13860b.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{T as j}from"./index.3b7d9b0c.js";import{C as F,i as k}from"./index.7b92201f.js";import{r as g}from"./index.d925b97f.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.ab23e248.js";/* empty css *//* empty css *//* empty css */const V="_active_1vale_13",B="_filterBtn_1vale_17",P="_filterTagWrap_1vale_20",$="_filterTag_1vale_20",I="_filterSort_1vale_66",G="_iconSort_1vale_76";var r={"filter-top":"_filter-top_1vale_1",active:V,filterBtn:B,filterTagWrap:P,filterTag:$,"filter-productCategory":"_filter-productCategory_1vale_36","filter-tag":"_filter-tag_1vale_52","filter-tag-checked":"_filter-tag-checked_1vale_62",filterSort:I,"icon-active":"_icon-active_1vale_73",iconSort:G};const q="_loading_1wy15_1",N="_titlePopup_1wy15_7",z="_title_1wy15_7",E="_radio_1wy15_21",W="_filterAction_1wy15_57";var s={loading:q,titlePopup:N,title:z,"radio-group":"_radio-group_1wy15_21",radio:E,filterAction:W};function R(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!_(t)}const m=()=>({productCategorySmallVoList:null,productAttributeCategoryList:null,brandList:null});var O=p({name:"goods-filter-list",props:{setFilter:{type:Function,default:t=>{}},cateGoryId:{type:Number,default:0}},data(){return{dataShow:!0,loading:!1,brandList:[],productAttributeCategoryList:[],productCategorySmallVoList:[],params:m()}},mounted(){this.getFilterList()},methods:{async getFilterList(){this.loading=!0;try{const t=await g.get("/api-mall-portal/product/search/condition");this.dataShow=t.code===200;const{brandList:e=[],productAttributeCategoryList:a=[],productCategorySmallVoList:l=[]}=t.data||{};if(this.brandList=e,this.productAttributeCategoryList=a,this.productCategorySmallVoList=l,this.cateGoryId){let d=l.findIndex(n=>n.id==this.cateGoryId);this.params.productCategorySmallVoList=d>-1?d:null}}catch{this.dataShow=!1}this.loading=!1},onFilterClick(){this.setFilter({productCategory:this.productCategorySmallVoList[this.params.productCategorySmallVoList],productAttributeCategory:this.productAttributeCategoryList[this.params.productAttributeCategoryList],brand:this.brandList[this.params.brandList]})},setParams(t){this.params[t]=null}},render(){return i("div",null,[this.loading&&i("div",{class:s.loading},[i(y,{color:"var(--van-primary)"},null)]),i("div",{class:s.filterWrap},[i("div",{class:s.titlePopup},[o("\u7B5B\u9009")]),Object.keys(this.params).map(t=>i(C,{border:!1},{title:()=>i("div",null,[t==="productCategorySmallVoList"?"\u5546\u54C1\u5206\u7C7B":t==="productAttributeCategoryList"?"\u5546\u54C1\u7C7B\u578B":"\u54C1\u724C"]),label:()=>{let e;return i(b,{class:s["radio-group"],modelValue:this.params[t],"onUpdate:modelValue":a=>this.params[t]=a},R(e=this[t].map((a,l)=>{const n=l===this.params[t]?"primary":"default";return i(v,{class:s.radio,name:l,onClick:()=>{}},{default:()=>[i(c,{size:"large",type:n},{default:()=>[a.name]})]})}))?e:{default:()=>[e]})}})),i(L,{style:{margin:"0"}},null),i("div",{class:s.filterAction},[i(f,{round:!0,style:{marginRight:"8px"},onClick:()=>this.params=m()},{default:()=>[o("\u91CD\u7F6E")]}),i(f,{round:!0,type:"primary",style:{marginLeft:"8px"},onClick:()=>this.onFilterClick()},{default:()=>[o("\u786E\u8BA4")]})])])])}}),dt=p({name:"goods-list",data(){const t=this.$route.query;return{tabListShow:!t.id,typeId:0,filterActive:0,filterListShow:!1,productCategory:{active:0,name:t.tag||"",id:Number(t.id)||0,children:[]},productAttributeCategory:{children:[],name:"",id:0},brand:{name:"",id:0},keyword:"",autofocus:!1}},computed:{getProductAttributeCategory(){if(this.productCategory.id){if(this.productCategory.children)return(this.productCategory.children[this.productCategory.active]||{}).id||"";this.productCategory.id}return 0}},async mounted(){if(this.$nextTick(()=>{this.$route.query.input==="focus"&&document.querySelector(".van-field__control").focus()}),this.productCategory.id)try{const t=await g.get("/api-mall-portal/product/search/condition");t.code===200&&this.setFilter({productCategory:t.data.productCategorySmallVoList.find(e=>e.id===this.productCategory.id),productAttributeCategory:void 0,brand:void 0})}catch{}this.tabListShow=!0},methods:{onFilter(t){this.filterActive===3&&t===3&&(t=4),this.filterActive===4&&t===3&&(t=3),this.filterActive!==t&&(this.filterActive=t,this.$nextTick(()=>{this.onSearch()}))},setFilter({productCategory:t,productAttributeCategory:e,brand:a}){t&&t.active===void 0&&(t.active=0),this.productCategory=t||{id:0,name:""},this.productAttributeCategory=e||{id:0,name:""},this.brand=a||{id:0,name:""},this.$nextTick(()=>{this.onSearch(),this.filterListShow=!1})},onToggleTag(){this.$refs.tabList.loading||this.$nextTick(()=>{this.onSearch()})},onClearTag(t){this[t]={id:0,name:""};let e=this.$refs.goodsFilter;e&&(t==="productCategory"?e.setParams("productCategorySmallVoList"):t==="productAttributeCategory"?e.setParams("productAttributeCategoryList"):e.setParams("brandList")),this.$nextTick(()=>{this.onSearch()})},onSearch(){this.$refs.tabList.onSearch()},searchBtn(t){this.keyword=t,this.$nextTick(()=>{this.onSearch()})}},render(){return i("div",null,[i(S,null,{default:()=>[i(F,{modelValue:this.keyword,onSearch:this.searchBtn},null),i(A,{class:r["filter-top"],align:"center"},{default:()=>[i(u,{span:6,class:this.filterActive===0?r.active:"",onClick:()=>this.onFilter(0)},{default:()=>[o("\u7EFC\u5408\u6392\u5E8F")]}),i(u,{span:6,class:this.filterActive===3||this.filterActive===4?r.active:"",onClick:()=>this.onFilter(3)},{default:()=>[o("\u4EF7\u683C"),i("div",{class:r.filterSort},[i(h,{class:this.filterActive===3?r["icon-active"]:"",style:{transform:"rotate(-90deg)"},name:"play",size:12},null),i(h,{class:[r.iconSort,this.filterActive===4?[r["icon-active"]]:""],style:{transform:"rotate(90deg)"},name:"play",size:12},null)])]}),i(u,{style:{marginLeft:"auto"},span:6,class:r.filterBtn,onClick:()=>this.filterListShow=!0},{default:()=>[o("\u7B5B\u9009"),i(h,{name:k,size:18},null)]})]}),this.productCategory.id?i(x,{class:r["filter-productCategory"],shrink:!0,ellipsis:!1,active:this.productCategory.active,"onUpdate:active":t=>this.productCategory.active=t,onChange:()=>this.onToggleTag()},{default:()=>[this.productCategory&&this.productCategory.children.map((t,e)=>i(T,{name:e,title:t.name},{title:()=>i("div",{class:[r["filter-tag"],this.productCategory.active===e?r["filter-tag-checked"]:""]},[t.name])}))]}):null]}),i("div",{class:r.filterTagWrap},[this.productAttributeCategory.id?i(c,{class:r.filterTag,closeable:!0,onClose:()=>this.onClearTag("productAttributeCategory")},{default:()=>[this.productAttributeCategory.name]}):"",this.brand.id?i(c,{class:r.filterTag,closeable:!0,onClose:()=>this.onClearTag("brand")},{default:()=>[this.brand.name]}):""]),this.tabListShow?i(j,{ref:"tabList",typeId:Number(this.getProductAttributeCategory),productAttributeCategoryId:this.productAttributeCategory.id,brandId:this.brand.id,sort:this.filterActive,keyword:this.keyword},null):null,i(w,{show:this.filterListShow,closeable:!0,position:"bottom",round:!0,onClose:()=>{this.filterListShow=!1}},{default:()=>[i(O,{cateGoryId:this.productCategory.id,ref:"goodsFilter",setFilter:this.setFilter},null)]})])}});export{dt as default};
|