Files
wuhan-saga/client/dist/assets/ProductsPage-CvOzhZHZ.js
王文昊 cec461f229 feat(portal): 案例数据 SQL 与成功案例展示优化
- 新增/更新案例相关 SQL(初始化或补丁脚本)
- 首页精选案例:多卡轮播、非精选补足列表、工业风卡片
- 案例列表:无封面时深蓝工业风占位(客户水印与缩写铭牌)
2026-05-06 22:03:17 +08:00

2 lines
4.6 KiB
JavaScript

import{d as D,u as T,m as B,G as F,c,b as t,t as n,f as r,n as m,F as h,r as k,s as _,g as u,i as y,h as M,j as w,o as a,w as Z,q as N}from"./index-CzwJBVIC.js";import{p as f,_ as V}from"./index-8GqMb-ax.js";import{u as j}from"./uploadUrl-CyxyoWKj.js";const A={class:"products-page"},G={class:"page-banner"},R={class:"container page-banner-content"},U={class:"section"},H={class:"container"},J={class:"products-layout"},K={class:"products-sidebar"},O=["onClick"],Q={class:"products-main"},W={class:"product-tabs"},X={key:0,class:"product-list"},Y={class:"product-info"},ee={key:0,class:"product-category-tag"},te={key:1,class:"product-list"},se={class:"product-info"},oe={key:0,class:"product-category-tag"},ae={key:2,class:"product-list"},ne={class:"product-info"},re={key:0,class:"product-category-tag"},ce={key:1,class:"spare-model"},le=D({__name:"ProductsPage",setup(ue){const{t:d,locale:i}=T(),x={line:"product_line",equipment:"equipment",spare:"spare_part"},$=y([]),b=y([]),C=y([]),I=y([]),p=y(null),l=y("line"),S=M(()=>{const s=x[l.value];return $.value.find(v=>v.moduleType===s)?.children||[]});function E(s){return s?{backgroundImage:`url(${j(s)})`,backgroundSize:"cover",backgroundPosition:"center"}:{backgroundColor:"#e5e7eb"}}function q(s){const o=i.value==="zh",v=o?s.excerptZh:s.excerptEn,g=o?s.descriptionZh:s.descriptionEn;return(typeof v=="string"?v:"")||(typeof g=="string"?g:"")||""}function P(s){l.value=s,p.value=null,z()}async function z(){try{const s={};if(p.value&&(s.categoryId=p.value),l.value==="line"){const o=await f.getProductLines(s);b.value=o.data||[]}else if(l.value==="equipment"){const o=await f.getEquipments(s);C.value=o.data||[]}else{const o=await f.getSpareParts(s);I.value=o.data||[]}}catch(s){console.error("产品列表加载失败",s)}}return B(async()=>{try{const s=await f.getProductCategories();$.value=s.data||[]}catch{}z()}),F(p,z),(s,o)=>{const v=w("router-link"),g=w("el-empty");return a(),c("div",A,[t("section",G,[o[4]||(o[4]=t("div",{class:"page-banner-overlay"},null,-1)),t("div",R,[t("h1",null,n(r(d)("products.title")),1)])]),t("section",U,[t("div",H,[t("div",J,[t("aside",K,[t("h3",null,n(r(d)("products.allCategories")),1),t("ul",null,[t("li",{class:m({active:!p.value}),onClick:o[0]||(o[0]=e=>p.value=null)},n(r(d)("products.allCategories")),3),(a(!0),c(h,null,k(S.value,e=>(a(),c("li",{key:e.productCategoryId,class:m({active:p.value===e.productCategoryId}),onClick:L=>p.value=e.productCategoryId},n(r(i)==="zh"?e.nameZh:e.nameEn),11,O))),128))])]),t("div",Q,[t("div",W,[t("button",{class:m({active:l.value==="line"}),onClick:o[1]||(o[1]=e=>P("line"))},n(r(d)("products.integratedLinesTab")),3),t("button",{class:m({active:l.value==="equipment"}),onClick:o[2]||(o[2]=e=>P("equipment"))},n(r(d)("products.singleEquipment")),3),t("button",{class:m({active:l.value==="spare"}),onClick:o[3]||(o[3]=e=>P("spare"))},n(r(d)("products.spareParts")),3)]),l.value==="line"?(a(),c("div",X,[(a(!0),c(h,null,k(b.value,e=>(a(),_(v,{key:e.productLineId,to:`/products/line/${e.productLineId}`,class:"product-item card"},{default:Z(()=>[t("div",{class:"product-img",style:N(E(e.coverImage))},null,4),t("div",Y,[t("h3",null,n(r(i)==="zh"?e.nameZh:e.nameEn),1),e.categoryNameZh?(a(),c("p",ee,n(r(i)==="zh"?e.categoryNameZh:e.categoryNameEn),1)):u("",!0),t("p",null,n(q(e)),1)])]),_:2},1032,["to"]))),128)),b.value.length?u("",!0):(a(),_(g,{key:0,description:r(d)("common.noData")},null,8,["description"]))])):u("",!0),l.value==="equipment"?(a(),c("div",te,[(a(!0),c(h,null,k(C.value,e=>(a(),_(v,{key:e.singleEquipmentId,to:`/products/equipment/${e.singleEquipmentId}`,class:"product-item card"},{default:Z(()=>[t("div",{class:"product-img",style:N(E(e.coverImage))},null,4),t("div",se,[t("h3",null,n(r(i)==="zh"?e.nameZh:e.nameEn),1),e.categoryNameZh?(a(),c("p",oe,n(r(i)==="zh"?e.categoryNameZh:e.categoryNameEn),1)):u("",!0),t("p",null,n(q(e)),1)])]),_:2},1032,["to"]))),128)),C.value.length?u("",!0):(a(),_(g,{key:0,description:r(d)("common.noData")},null,8,["description"]))])):u("",!0),l.value==="spare"?(a(),c("div",ae,[(a(!0),c(h,null,k(I.value,e=>(a(),_(v,{key:e.sparePartId,to:`/products/spare/${e.sparePartId}`,class:"product-item card"},{default:Z(()=>[t("div",{class:"product-img",style:N(E(e.coverImage))},null,4),t("div",ne,[t("h3",null,n(r(i)==="zh"?e.nameZh:e.nameEn),1),e.categoryNameZh?(a(),c("p",re,n(r(i)==="zh"?e.categoryNameZh:e.categoryNameEn),1)):u("",!0),e.modelSpec?(a(),c("p",ce,n(e.modelSpec),1)):u("",!0),t("p",null,n(q(e)),1)])]),_:2},1032,["to"]))),128)),I.value.length?u("",!0):(a(),_(g,{key:0,description:r(d)("common.noData")},null,8,["description"]))])):u("",!0)])])])])])}}}),ve=V(le,[["__scopeId","data-v-995424cb"]]);export{ve as default};