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

2 lines
4.3 KiB
JavaScript

import{d as A,m as M,c as z,b as P,e as l,w as n,W as S,s as U,i as s,j as o,X as j,o as k,k as r,f as L,g as T,t as W,I as b,Y as X}from"./index-CzwJBVIC.js";import{a as _,_ as Y}from"./index-8GqMb-ax.js";import{A as q}from"./AdminCoverUpload-BoIYFuAm.js";import{u as F}from"./uploadUrl-CyxyoWKj.js";const G={class:"admin-crud-page"},H={class:"page-header"},J=A({__name:"BannerPage",setup(K){const g=s(!1),V=s(!1),c=s([]),m=s(!1),p=s(null),t=s({});async function y(){g.value=!0;try{const u=await _.getBanners();c.value=u.data??[]}catch{c.value=[]}finally{g.value=!1}}function w(u){u?(p.value=u.bannerId,t.value={...u}):(p.value=null,t.value={sortOrder:0,isPublished:0}),m.value=!0}async function C(){V.value=!0;try{p.value?await _.updateBanner({...t.value,bannerId:p.value}):await _.addBanner(t.value),b.success("保存成功"),m.value=!1,y()}catch{b.error("保存失败")}V.value=!1}async function x(u){await X.confirm("确认删除?","提示",{type:"warning"});try{await _.deleteBanner(u),b.success("删除成功"),y()}catch{b.error("删除失败")}}return M(y),(u,e)=>{const v=o("el-button"),i=o("el-table-column"),B=o("el-image"),E=o("el-tag"),I=o("el-table"),f=o("el-input"),d=o("el-form-item"),h=o("el-input-number"),D=o("el-switch"),Z=o("el-form"),N=o("el-dialog"),O=j("loading");return k(),z("div",G,[P("div",H,[e[12]||(e[12]=P("h2",null,"轮播图管理",-1)),l(v,{type:"primary",onClick:e[0]||(e[0]=a=>w())},{default:n(()=>[...e[11]||(e[11]=[r("新增轮播图",-1)])]),_:1})]),S((k(),U(I,{data:c.value,border:"",stripe:""},{default:n(()=>[l(i,{prop:"bannerId",label:"ID",width:"80"}),l(i,{label:"图片",width:"160"},{default:n(({row:a})=>[a.imagePath?(k(),U(B,{key:0,src:L(F)(a.imagePath),style:{width:"120px",height:"60px"},fit:"cover"},null,8,["src"])):T("",!0)]),_:1}),l(i,{prop:"titleZh",label:"标题(中)"}),l(i,{prop:"titleEn",label:"标题(英)"}),l(i,{prop:"sortOrder",label:"排序",width:"80"}),l(i,{prop:"isPublished",label:"状态",width:"80"},{default:n(({row:a})=>[l(E,{type:a.isPublished?"success":"info"},{default:n(()=>[r(W(a.isPublished?"已发布":"草稿"),1)]),_:2},1032,["type"])]),_:1}),l(i,{label:"操作",width:"160",fixed:"right"},{default:n(({row:a})=>[l(v,{size:"small",onClick:$=>w(a)},{default:n(()=>[...e[13]||(e[13]=[r("编辑",-1)])]),_:1},8,["onClick"]),l(v,{size:"small",type:"danger",onClick:$=>x(a.bannerId)},{default:n(()=>[...e[14]||(e[14]=[r("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[O,g.value]]),l(N,{modelValue:m.value,"onUpdate:modelValue":e[10]||(e[10]=a=>m.value=a),title:p.value?"编辑轮播图":"新增轮播图",width:"700px"},{footer:n(()=>[l(v,{onClick:e[9]||(e[9]=a=>m.value=!1)},{default:n(()=>[...e[15]||(e[15]=[r("取消",-1)])]),_:1}),l(v,{type:"primary",onClick:C,loading:V.value},{default:n(()=>[...e[16]||(e[16]=[r("保存",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(Z,{model:t.value,"label-width":"120px"},{default:n(()=>[l(d,{label:"标题(中)"},{default:n(()=>[l(f,{modelValue:t.value.titleZh,"onUpdate:modelValue":e[1]||(e[1]=a=>t.value.titleZh=a)},null,8,["modelValue"])]),_:1}),l(d,{label:"标题(英)"},{default:n(()=>[l(f,{modelValue:t.value.titleEn,"onUpdate:modelValue":e[2]||(e[2]=a=>t.value.titleEn=a)},null,8,["modelValue"])]),_:1}),l(d,{label:"副标题(中)"},{default:n(()=>[l(f,{modelValue:t.value.subtitleZh,"onUpdate:modelValue":e[3]||(e[3]=a=>t.value.subtitleZh=a)},null,8,["modelValue"])]),_:1}),l(d,{label:"副标题(英)"},{default:n(()=>[l(f,{modelValue:t.value.subtitleEn,"onUpdate:modelValue":e[4]||(e[4]=a=>t.value.subtitleEn=a)},null,8,["modelValue"])]),_:1}),l(d,{label:"图片"},{default:n(()=>[l(q,{modelValue:t.value.imagePath,"onUpdate:modelValue":e[5]||(e[5]=a=>t.value.imagePath=a),"media-category":"banner"},null,8,["modelValue"])]),_:1}),l(d,{label:"链接"},{default:n(()=>[l(f,{modelValue:t.value.linkUrl,"onUpdate:modelValue":e[6]||(e[6]=a=>t.value.linkUrl=a)},null,8,["modelValue"])]),_:1}),l(d,{label:"排序"},{default:n(()=>[l(h,{modelValue:t.value.sortOrder,"onUpdate:modelValue":e[7]||(e[7]=a=>t.value.sortOrder=a),min:0},null,8,["modelValue"])]),_:1}),l(d,{label:"发布状态"},{default:n(()=>[l(D,{modelValue:t.value.isPublished,"onUpdate:modelValue":e[8]||(e[8]=a=>t.value.isPublished=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),ae=Y(J,[["__scopeId","data-v-15305b1b"]]);export{ae as default};