2 lines
5.1 KiB
JavaScript
2 lines
5.1 KiB
JavaScript
import{d as O,m as S,c as z,b as C,e as l,w as o,Q as L,s as E,i as m,j as n,R as j,o as y,k as i,f as Q,g as R,t as N,E as V,S as T}from"./index-DopNG1aC.js";import{a as _,_ as q}from"./index-DGfZijDv.js";import{A as G}from"./AdminCoverUpload-DvubFX2N.js";import{u as H}from"./uploadUrl-CyxyoWKj.js";const J={class:"admin-crud-page"},K={class:"page-header"},W=O({__name:"NewsPage",setup(X){const g=m(!1),b=m(!1),c=m([]),p=m(!1),v=m(null),t=m({});async function w(){g.value=!0;try{const d=await _.getNewsList();c.value=d.data??[]}catch{c.value=[]}finally{g.value=!1}}function x(d){d?(v.value=d.newsId,t.value={...d}):(v.value=null,t.value={sortOrder:0,isPublished:0,isFeatured:0,categoryId:1}),p.value=!0}async function P(){b.value=!0;try{v.value?await _.updateNews({...t.value,newsId:v.value}):await _.addNews(t.value),V.success("保存成功"),p.value=!1,w()}catch{V.error("保存失败")}b.value=!1}async function D(d){await T.confirm("确认删除?","提示",{type:"warning"});try{await _.deleteNews(d),V.success("删除成功"),w()}catch{V.error("删除失败")}}return S(w),(d,e)=>{const f=n("el-button"),s=n("el-table-column"),Z=n("el-image"),I=n("el-tag"),F=n("el-table"),r=n("el-input"),u=n("el-form-item"),U=n("el-input-number"),k=n("el-switch"),B=n("el-form"),$=n("el-dialog"),A=j("loading");return y(),z("div",J,[C("div",K,[e[15]||(e[15]=C("h2",null,"新闻管理",-1)),l(f,{type:"primary",onClick:e[0]||(e[0]=a=>x())},{default:o(()=>[...e[14]||(e[14]=[i("新增新闻",-1)])]),_:1})]),L((y(),E(F,{data:c.value,border:"",stripe:""},{default:o(()=>[l(s,{prop:"newsId",label:"ID",width:"80"}),l(s,{label:"封面",width:"140"},{default:o(({row:a})=>[a.coverImage?(y(),E(Z,{key:0,src:Q(H)(a.coverImage),style:{width:"100px",height:"50px"},fit:"cover"},null,8,["src"])):R("",!0)]),_:1}),l(s,{prop:"titleZh",label:"标题(中)"}),l(s,{prop:"categoryId",label:"分类ID",width:"80"}),l(s,{prop:"isFeatured",label:"推荐",width:"80"},{default:o(({row:a})=>[l(I,{type:a.isFeatured?"warning":"info"},{default:o(()=>[i(N(a.isFeatured?"是":"否"),1)]),_:2},1032,["type"])]),_:1}),l(s,{prop:"isPublished",label:"状态",width:"80"},{default:o(({row:a})=>[l(I,{type:a.isPublished?"success":"info"},{default:o(()=>[i(N(a.isPublished?"已发布":"草稿"),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"操作",width:"160",fixed:"right"},{default:o(({row:a})=>[l(f,{size:"small",onClick:M=>x(a)},{default:o(()=>[...e[16]||(e[16]=[i("编辑",-1)])]),_:1},8,["onClick"]),l(f,{size:"small",type:"danger",onClick:M=>D(a.newsId)},{default:o(()=>[...e[17]||(e[17]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[A,g.value]]),l($,{modelValue:p.value,"onUpdate:modelValue":e[13]||(e[13]=a=>p.value=a),title:v.value?"编辑新闻":"新增新闻",width:"700px"},{footer:o(()=>[l(f,{onClick:e[12]||(e[12]=a=>p.value=!1)},{default:o(()=>[...e[18]||(e[18]=[i("取消",-1)])]),_:1}),l(f,{type:"primary",onClick:P,loading:b.value},{default:o(()=>[...e[19]||(e[19]=[i("保存",-1)])]),_:1},8,["loading"])]),default:o(()=>[l(B,{model:t.value,"label-width":"120px"},{default:o(()=>[l(u,{label:"标题(中)"},{default:o(()=>[l(r,{modelValue:t.value.titleZh,"onUpdate:modelValue":e[1]||(e[1]=a=>t.value.titleZh=a)},null,8,["modelValue"])]),_:1}),l(u,{label:"标题(英)"},{default:o(()=>[l(r,{modelValue:t.value.titleEn,"onUpdate:modelValue":e[2]||(e[2]=a=>t.value.titleEn=a)},null,8,["modelValue"])]),_:1}),l(u,{label:"分类ID"},{default:o(()=>[l(U,{modelValue:t.value.categoryId,"onUpdate:modelValue":e[3]||(e[3]=a=>t.value.categoryId=a),min:1},null,8,["modelValue"])]),_:1}),l(u,{label:"摘要(中)"},{default:o(()=>[l(r,{modelValue:t.value.excerptZh,"onUpdate:modelValue":e[4]||(e[4]=a=>t.value.excerptZh=a),type:"textarea",rows:2},null,8,["modelValue"])]),_:1}),l(u,{label:"摘要(英)"},{default:o(()=>[l(r,{modelValue:t.value.excerptEn,"onUpdate:modelValue":e[5]||(e[5]=a=>t.value.excerptEn=a),type:"textarea",rows:2},null,8,["modelValue"])]),_:1}),l(u,{label:"内容(中)"},{default:o(()=>[l(r,{modelValue:t.value.contentZh,"onUpdate:modelValue":e[6]||(e[6]=a=>t.value.contentZh=a),type:"textarea",rows:6},null,8,["modelValue"])]),_:1}),l(u,{label:"内容(英)"},{default:o(()=>[l(r,{modelValue:t.value.contentEn,"onUpdate:modelValue":e[7]||(e[7]=a=>t.value.contentEn=a),type:"textarea",rows:6},null,8,["modelValue"])]),_:1}),l(u,{label:"封面图"},{default:o(()=>[l(G,{modelValue:t.value.coverImage,"onUpdate:modelValue":e[8]||(e[8]=a=>t.value.coverImage=a),"media-category":"news"},null,8,["modelValue"])]),_:1}),l(u,{label:"排序"},{default:o(()=>[l(U,{modelValue:t.value.sortOrder,"onUpdate:modelValue":e[9]||(e[9]=a=>t.value.sortOrder=a),min:0},null,8,["modelValue"])]),_:1}),l(u,{label:"推荐"},{default:o(()=>[l(k,{modelValue:t.value.isFeatured,"onUpdate:modelValue":e[10]||(e[10]=a=>t.value.isFeatured=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1}),l(u,{label:"发布状态"},{default:o(()=>[l(k,{modelValue:t.value.isPublished,"onUpdate:modelValue":e[11]||(e[11]=a=>t.value.isPublished=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),ae=q(W,[["__scopeId","data-v-301f7842"]]);export{ae as default};
|