BorrowRankingList.CPSyrARF.js 3.7 KB

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