BorrowRankingList.CtedfhUw.js 3.6 KB

1
  1. import{a as A}from"./api.BlOrHK_v.js";import{G as S}from"./api.B4f2bqXL.js";import{S as y,L as b}from"./index.DHn9b8nY.js";import{a as $,r as i,q as K,aj as r,c as w,o as v,b as h,J as V,S as o,K as c,R as D,a9 as F}from"./vue.YrNK8sx4.js";import{_ as G}from"./_plugin-vue_export-helper.DlAUqK2U.js";const E={class:"ranking-panel"},U={class:"panel-header"},N={key:1,class:"empty-tip"},k="borrow_ranking_filters",j=$({__name:"BorrowRankingList",setup(q){const d=i("all"),s=i(null),T=i(""),_=i([]),n=i([]),u=async()=>{const a={type:d.value};s.value&&(a.start=s.value[0],a.end=s.value[1]),T.value&&(a.keyword=T.value),n.value.length&&(a.tag_id=n.value);const e=await A(a);e.code===2e3?_.value=e.data.device_rankings.borrow_count_ranking:_.value=[],R()},p=i([]),x=async()=>{const a=await S({page:1,page_size:20});a.code===2e3&&(p.value=a.data,!n.value.length&&Array.isArray(p.value)&&p.value.length&&(n.value=p.value.map(e=>e.id),u()))},R=()=>{try{const a=y.get("userInfo");if(!(a!=null&&a.username))return;const e={borrowType:d.value,dateRange:s.value,deviceTagIds:n.value,timestamp:Date.now(),version:"1.0"},t=`${k}_${a.username}`;b.set(t,e),console.log("筛选条件已保存到本地存储",e)}catch(a){console.error("保存筛选条件失败:",a)}},B=()=>{try{const a=y.get("userInfo");if(!(a!=null&&a.username))return;const e=`${k}_${a.username}`,t=b.get(e);if(!t)return;const g=Date.now(),m=7*24*60*60*1e3;if(t.timestamp&&g-t.timestamp>m){b.remove(e),console.log("筛选条件已过期,已清除本地数据");return}t.borrowType&&(d.value=t.borrowType),t.dateRange&&(s.value=t.dateRange),t.deviceTagIds&&Array.isArray(t.deviceTagIds)&&(n.value=t.deviceTagIds),console.log("筛选条件已从本地存储恢复")}catch(a){console.error("恢复筛选条件失败:",a);const e=y.get("userInfo");if(e!=null&&e.username){const t=`${k}_${e.username}`;b.remove(t)}}};return K(()=>{B(),u(),y.get("userInfo").username!="平台管理员"&&x()}),(a,e)=>{const t=r("el-option"),g=r("el-select"),m=r("el-col"),C=r("el-date-picker"),I=r("el-row"),f=r("el-table-column"),L=r("el-table");return v(),w("div",E,[e[3]||(e[3]=h("div",{class:"panel-title"},[h("div",{class:"title"},"单台设备累计借用次数排名")],-1)),h("div",U,[o(I,{gutter:16},{default:c(()=>[o(m,{span:4},{default:c(()=>[o(g,{modelValue:d.value,"onUpdate:modelValue":e[0]||(e[0]=l=>d.value=l),clearable:"",placeholder:"借用类型",style:{width:"100%"},onChange:u},{default:c(()=>[o(t,{label:"全部",value:"all"}),o(t,{label:"常规借用",value:"regular"}),o(t,{label:"课堂借用",value:"classroom"}),o(t,{label:"特殊借用",value:"special"})]),_:1},8,["modelValue"])]),_:1}),o(m,{span:10},{default:c(()=>[o(C,{modelValue:s.value,"onUpdate:modelValue":e[1]||(e[1]=l=>s.value=l),type:"daterange","start-placeholder":"开始日期","end-placeholder":"结束日期",clearable:"",onChange:u,style:{width:"100%"}},null,8,["modelValue"])]),_:1}),o(m,{span:10},{default:c(()=>[o(g,{multiple:"",modelValue:n.value,"onUpdate:modelValue":e[2]||(e[2]=l=>n.value=l),placeholder:"标签名",style:{width:"270px"},onChange:u,class:"select-tags"},{default:c(()=>[(v(!0),w(D,null,F(p.value,l=>(v(),V(t,{key:l.id,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_.value.length?(v(),V(L,{key:0,data:_.value,style:{width:"100%","margin-top":"20px",height:"350px"},"max-height":"500"},{default:c(()=>[o(f,{type:"index",label:"排名",width:"60"}),o(f,{prop:"device_name",label:"设备名"}),o(f,{prop:"device_code",label:"设备编号"}),o(f,{prop:"borrow_count",label:"借用次数"})]),_:1},8,["data"])):(v(),w("div",N,"暂无数据"))])}}}),H=G(j,[["__scopeId","data-v-f8d931e0"]]);export{H as default};