2 lines
9.0 KiB
JavaScript
2 lines
9.0 KiB
JavaScript
import{_ as re}from"./welcome-6f9b345d.js";import{aA as de,r as _,l as ce,c as T,m as me,al as y,z as r,A as g,B as s,R as a,J as n,u,O as A,P as m,M,Q as $,a4 as F,D as O,I as S}from"./vue-vendor-164775a6.js";import{E as f,a as G,g as ve,u as D,s as pe,d as z,b as _e,e as ge,h as x}from"./element-plus-4a19e5e8.js";import{g as fe,d as he,a as be}from"./orders-13d1cb00.js";import{_ as ye}from"./index-2fb4354b.js";import"./utils-edfcd65b.js";const Ce={class:"order-management"},Ee={class:"sidebar"},ke={class:"nav-menu"},De={class:"nav-item active"},Pe={class:"sidebar-footer"},Te={class:"online-users"},Oe={class:"highlight"},Ie={class:"system-uptime"},Ne={class:"highlight"},Ae={class:"main-content"},Me={class:"top-header"},Se={class:"search-bar"},xe={class:"header-actions"},Ve={class:"user-avatar"},Le={class:"order-content"},we={class:"order-header"},Re={key:0,class:"selection-info"},Be={class:"filter-bar"},Ue={class:"filter-controls"},$e={class:"action-controls"},Fe={class:"order-table-container"},Ge={class:"order-table"},ze={class:"checkbox-column"},He={class:"checkbox-column"},Ye={class:"order-number"},qe={class:"username"},We={class:"amount"},Je={class:"payment-method"},Qe={class:"status"},je={class:"created-time"},Ke={class:"actions"},Xe=["onClick"],Ze=["onClick"],es={class:"pagination-container"},ss={class:"pagination"},ts=["disabled"],as={class:"page-numbers"},ls=["onClick"],ns={key:0,class:"ellipsis"},os=["disabled"],us={__name:"Orders",setup(is){const h=de(),V=_({onlineUsers:87,systemUptime:"48小时32分"}),C=_([]),L=_(!1),d=ce({orderType:"",status:"",search:""}),c=_(1),w=_(10),R=_(0),i=_([]),E=_(!1),v=T(()=>Math.ceil(R.value/w.value)),H=T(()=>i.value.length>0&&i.value.length<C.value.length),Y=T(()=>{const t=[],e=Math.max(1,c.value-2),o=Math.min(v.value,e+4);for(let k=e;k<=o;k++)t.push(k);return t}),q=T(()=>v.value>5&&c.value<v.value-2),b=async()=>{try{L.value=!0;const t={page:c.value-1,size:w.value,sortBy:"createdAt",sortDir:"desc"};d.orderType&&(t.orderType=d.orderType),d.status&&(t.status=d.status),d.search&&(t.search=d.search);const e=await fe(t);e.success?(C.value=e.data.content||[],R.value=e.data.totalElements||0):f.error(e.message||"加载订单数据失败")}catch(t){console.error("加载订单数据失败:",t),f.error("加载订单数据失败")}finally{L.value=!1}},W=t=>t?parseFloat(t).toFixed(2):"0.00",J=t=>t?new Date(t).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"",Q=t=>({COMPLETED:"已完成",PROCESSING:"处理中",CANCELLED:"已取消",PENDING:"待支付",CONFIRMED:"已确认",PAID:"已支付",SHIPPED:"已发货",DELIVERED:"已送达",REFUNDED:"已退款"})[t]||t,j=t=>({COMPLETED:"status-completed",PROCESSING:"status-processing",CANCELLED:"status-cancelled",PENDING:"status-pending",CONFIRMED:"status-confirmed",PAID:"status-paid",SHIPPED:"status-shipped",DELIVERED:"status-delivered",REFUNDED:"status-refunded"})[t]||"",K=t=>({ALIPAY:"payment-alipay",WECHAT:"payment-wechat",PAYPAL:"payment-paypal"})[t]||"payment-default",X=()=>{E.value?i.value=C.value.map(t=>t.id):i.value=[]},Z=()=>{E.value=i.value.length===C.value.length},ee=t=>{h.push(`/orders/${t.id}`)},se=async t=>{try{await G.confirm(`确定要删除订单 ${t.orderNumber} 吗?`,"确认删除",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const e=await be(t.id);e.success?(f.success("订单删除成功"),b()):f.error(e.message||"删除订单失败")}catch(e){e!=="cancel"&&(console.error("删除订单失败:",e),f.error("删除订单失败"))}},te=async()=>{try{await G.confirm(`确定要删除选中的 ${i.value.length} 个订单吗?`,"确认批量删除",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const t=await he(i.value);t.success?(f.success(`批量删除成功,共删除 ${t.deletedCount} 个订单`),i.value=[],E.value=!1,b()):f.error(t.message||"批量删除失败")}catch(t){t!=="cancel"&&(console.error("批量删除失败:",t),f.error("批量删除失败"))}},P=t=>{t>=1&&t<=v.value&&(c.value=t,b())},ae=()=>{h.push("/home")},le=()=>{h.push("/member-management")},ne=()=>{h.push("/api-management")},oe=()=>{h.push("/generate-task-record")},ue=()=>{h.push("/system-settings")};return me(()=>{b()}),(t,e)=>{const o=y("el-icon"),k=y("ChatDotSquare"),p=y("el-option"),B=y("el-select"),ie=y("el-button"),U=y("el-checkbox");return r(),g("div",Ce,[s("aside",Ee,[e[15]||(e[15]=s("div",{class:"logo"},[s("div",{class:"logo-icon"}),s("span",null,"LOGO")],-1)),s("nav",ke,[s("div",{class:"nav-item",onClick:ae},[a(o,null,{default:n(()=>[a(u(ve))]),_:1}),e[7]||(e[7]=s("span",null,"数据仪表台",-1))]),s("div",{class:"nav-item",onClick:le},[a(o,null,{default:n(()=>[a(u(D))]),_:1}),e[8]||(e[8]=s("span",null,"会员管理",-1))]),s("div",De,[a(o,null,{default:n(()=>[a(u(pe))]),_:1}),e[9]||(e[9]=s("span",null,"订单管理",-1))]),s("div",{class:"nav-item",onClick:ne},[a(o,null,{default:n(()=>[a(u(z))]),_:1}),e[10]||(e[10]=s("span",null,"API管理",-1))]),s("div",{class:"nav-item",onClick:oe},[a(o,null,{default:n(()=>[a(u(z))]),_:1}),e[11]||(e[11]=s("span",null,"生成任务记录",-1))]),s("div",{class:"nav-item",onClick:ue},[a(o,null,{default:n(()=>[a(u(_e))]),_:1}),e[12]||(e[12]=s("span",null,"系统设置",-1))])]),s("div",Pe,[s("div",Te,[e[13]||(e[13]=A(" 当前在线用户: ",-1)),s("span",Oe,m(V.value.onlineUsers)+"/500",1)]),s("div",Ie,[e[14]||(e[14]=A(" 系统运行时间: ",-1)),s("span",Ne,m(V.value.systemUptime),1)])])]),s("main",Ae,[s("header",Me,[s("div",Se,[a(o,{class:"search-icon"},{default:n(()=>[a(u(D))]),_:1}),e[16]||(e[16]=s("input",{type:"text",placeholder:"搜索你的想要的内容",class:"search-input"},null,-1))]),s("div",xe,[a(o,{class:"notification-icon"},{default:n(()=>[a(u(ge))]),_:1}),a(o,{class:"message-icon"},{default:n(()=>[a(k)]),_:1}),s("div",Ve,[e[17]||(e[17]=s("img",{src:re,alt:"用户头像"},null,-1)),a(o,{class:"dropdown-icon"},{default:n(()=>[a(u(D))]),_:1})])])]),s("div",Le,[s("div",we,[e[18]||(e[18]=s("h1",{class:"order-title"},"订单管理",-1)),i.value.length>0?(r(),g("div",Re," 已选择"+m(i.value.length)+"项 ",1)):M("",!0)]),s("div",Be,[s("div",Ue,[a(B,{modelValue:d.orderType,"onUpdate:modelValue":e[0]||(e[0]=l=>d.orderType=l),placeholder:"全部类型",onChange:b},{default:n(()=>[a(p,{label:"全部类型",value:""}),a(p,{label:"会员订阅",value:"SUBSCRIPTION"}),a(p,{label:"视频生成",value:"SERVICE"}),a(p,{label:"产品订单",value:"PRODUCT"})]),_:1},8,["modelValue"]),a(B,{modelValue:d.status,"onUpdate:modelValue":e[1]||(e[1]=l=>d.status=l),placeholder:"全部状态",onChange:b},{default:n(()=>[a(p,{label:"全部状态",value:""}),a(p,{label:"已完成",value:"COMPLETED"}),a(p,{label:"处理中",value:"PROCESSING"}),a(p,{label:"已取消",value:"CANCELLED"}),a(p,{label:"待支付",value:"PENDING"})]),_:1},8,["modelValue"])]),s("div",$e,[a(ie,{type:"danger",disabled:i.value.length===0,onClick:te},{default:n(()=>[...e[19]||(e[19]=[A(" 删除 ",-1)])]),_:1},8,["disabled"])])]),s("div",Fe,[s("table",Ge,[s("thead",null,[s("tr",null,[s("th",ze,[a(U,{modelValue:E.value,"onUpdate:modelValue":e[2]||(e[2]=l=>E.value=l),onChange:X,indeterminate:H.value},null,8,["modelValue","indeterminate"])]),e[20]||(e[20]=s("th",null,"订单编号",-1)),e[21]||(e[21]=s("th",null,"用户名",-1)),e[22]||(e[22]=s("th",null,"金额",-1)),e[23]||(e[23]=s("th",null,"支付方式",-1)),e[24]||(e[24]=s("th",null,"状态",-1)),e[25]||(e[25]=s("th",null,"创建时间",-1)),e[26]||(e[26]=s("th",null,"编辑",-1))])]),s("tbody",null,[(r(!0),g($,null,F(C.value,l=>{var I;return r(),g("tr",{key:l.id,class:"order-row"},[s("td",He,[a(U,{modelValue:i.value,"onUpdate:modelValue":e[3]||(e[3]=N=>i.value=N),value:l.id,onChange:Z},null,8,["modelValue","value"])]),s("td",Ye,m(l.orderNumber),1),s("td",qe,m(((I=l.user)==null?void 0:I.username)||"未知用户"),1),s("td",We,"¥"+m(W(l.totalAmount)),1),s("td",Je,[s("div",{class:O(["payment-icon",K(l.paymentMethod)])},[l.paymentMethod==="ALIPAY"?(r(),S(o,{key:0},{default:n(()=>[a(u(x))]),_:1})):l.paymentMethod==="WECHAT"?(r(),S(o,{key:1},{default:n(()=>[a(u(x))]),_:1})):(r(),S(o,{key:2},{default:n(()=>[a(u(x))]),_:1}))],2)]),s("td",Qe,[s("span",{class:O(["status-tag",j(l.status)])},m(Q(l.status)),3)]),s("td",je,m(J(l.createdAt)),1),s("td",Ke,[s("span",{class:"action-link",onClick:N=>ee(l)},"查看",8,Xe),s("span",{class:"action-link delete",onClick:N=>se(l)},"删除",8,Ze)])])}),128))])])]),s("div",es,[s("div",ss,[s("button",{class:"page-btn",onClick:e[4]||(e[4]=l=>P(c.value-1)),disabled:c.value<=1},[a(o,null,{default:n(()=>[a(u(D))]),_:1})],8,ts),s("div",as,[(r(!0),g($,null,F(Y.value,l=>(r(),g("button",{key:l,class:O(["page-number",{active:l===c.value}]),onClick:I=>P(l)},m(l),11,ls))),128)),q.value?(r(),g("span",ns,"...")):M("",!0),v.value>1?(r(),g("button",{key:1,class:O(["page-number",{active:v.value===c.value}]),onClick:e[5]||(e[5]=l=>P(v.value))},m(v.value),3)):M("",!0)]),s("button",{class:"page-btn",onClick:e[6]||(e[6]=l=>P(c.value+1)),disabled:c.value>=v.value},[a(o,null,{default:n(()=>[a(u(D))]),_:1})],8,os)])])])])])}}},_s=ye(us,[["__scopeId","data-v-35819d0b"]]);export{_s as default};
|