TableDataDisplay.aca6a1e2.js 5.2 KB

1
  1. import{f as it,al as dt,p as T,r,Q as ct,e as ut,w as F,d as P,a7 as C,h as j,i as ft,E as mt,G as p,M as W,K as A,j as G,L as S,B as gt,aa as pt}from"./vue.9083513e.js";import{k as $,w as H,m as R,l as vt,n as ht,o as Dt}from"./columns.a0caa379.js";import{d as v}from"./elementPlus.be4dc479.js";import{_ as _t}from"./_plugin-vue_export-helper.c27b6911.js";import"./index.47aa7700.js";import"./echarts.594b4072.js";const bt={class:"font-semibold"},yt={class:"font-semibold",style:{color:"#0097f8"}},Ct=it({__name:"TableDataDisplay",props:{taskIds:Object},setup(q){const L=dt(),a=T("dateDimension"),Q=T("currentDate"),_=q,w=r(null),Y=r(null),k=r(null),M=r(null),E=r(null),x=r(null),U=[],J=[],K=[],u=r(""),h=r("");r(null),r(null);const I=r(Math.random()),o=ct({border:"inner",height:900,align:null,round:!0,loading:!1,id:"normalCustomStorage",customConfig:{storage:{visible:!0}},columnConfig:{resizable:!0},rowConfig:{isHover:!0},pagerConfig:{enabled:!0,total:20,currentPage:1,pageSize:20,pageSizes:[10,20,30]},sortConfig:{remote:!0},toolbarConfig:{custom:!0,zoom:{iconIn:"vxe-icon-fullscreen",iconOut:"vxe-icon-minimize"},slots:{buttons:"toolbar_buttons"}},day:{columns:$,data:U},week:{columns:H,data:J},month:{columns:R,data:K}}),X=ut(()=>{const t=o[a.value];return{...o,...t}}),Z={pageChange({currentPage:t,pageSize:i}){o.pagerConfig&&(o.pagerConfig.currentPage=t,o.pagerConfig.pageSize=i,b(_.taskIds))}},N=()=>{localStorage.setItem("sortField",u.value),localStorage.setItem("sortOrder",h.value)},z=()=>{u.value=localStorage.getItem("sortField")||"",h.value=localStorage.getItem("sortOrder")||""};F(Q,t=>{a.value==="day"?(w.value=v(t.dailyStartDate).format("YYYY-MM-DD"),Y.value=v(t.dailyTime).format("YYYY-MM-DD")):a.value==="week"?(k.value=v(t.weekStartDate).format("YYYY-MM-DD"),M.value=v(t.weekEndDate).format("YYYY-MM-DD")):a.value==="month"&&(E.value=v(t.startDate).format("YYYY-MM-DD"),x.value=v(t.endDate).format("YYYY-MM-DD")),h.value="",u.value="",b(_.taskIds)});async function y(t,i,c,f,l,s){try{o.loading=!0,z();const m=await i({page:o.pagerConfig.currentPage,limit:o.pagerConfig.pageSize,[`${s}_start_date`]:c.value,[`${s}_end_date`]:f.value,task_ids:t,sort:h.value,order_date:u.value});if(o[a.value].data=m.data,o.pagerConfig.total=m.total,m.data.length>0){const B=new Set,D=[],O=[];l.value=l.value.filter(e=>!/\d{2}-\d{2}/.test(e.field)&&!e.field.includes("余额币种")&&!e.field.includes("退货率")),m.data.forEach(e=>{for(const n in e)(/\d{2}-\d{2}/.test(n)||n.includes("余额币种")||n.includes("退货率"))&&B.add(n)}),B.forEach(e=>{let n=!1;e.includes("的销售额")&&!e.includes("增长率")&&(n=!0);const d={field:e,title:e,minWidth:e.includes("~")?95:/\d{4}-\d{2}-\d{2}的/.test(e)?93:e.includes("截止")?90:79,align:"center",formatter:nt,sortable:n};e.includes("的销售额")&&!e.includes("增长率")?D.push(d):O.push(d)}),a.value=="day"?D.sort((e,n)=>{const d=e.field.match(/\d{4}-\d{2}-\d{2}/)[0],g=n.field.match(/\d{4}-\d{2}-\d{2}/)[0];return new Date(d)-new Date(g)}):a.value=="week"?D.sort((e,n)=>{const d=e.field.match(/\d{4}-\d{2}-\d{2}~\d{4}-\d{2}-\d{2}/)[0].split("~")[0],g=n.field.match(/\d{4}-\d{2}-\d{2}~\d{4}-\d{2}-\d{2}/)[0].split("~")[0];return console.log(d,g),new Date(d)-new Date(g)}):a.value=="month"&&D.sort((e,n)=>{const d=e.field.match(/\d{4}-\d{2}/)[0],g=n.field.match(/\d{4}-\d{2}/)[0];return new Date(d)-new Date(g)});const lt=[...D,...O];a.value===s?l.value=[...l.value,...lt]:(l.value=[],o.pagerConfig.total=0)}N()}catch(m){console.error("Error fetching task data:",m)}finally{o.loading=!1}}async function V(t){await y(t,vt,w,Y,$,"day")}async function tt(t){await y(t,ht,k,M,H,"week")}async function et(t){await y(t,Dt,E,x,R,"month")}function b(t,i=!1){i&&(o.pagerConfig.currentPage=1),a.value==="day"?V(t):a.value==="week"?tt(t):a.value==="month"&&et(t)}function at({field:t,order:i}){h.value=i==="asc"?"smallfirst":"bigfirst";const c=t;if(c){const f=c.match(/(\d{4}-\d{2}-\d{2})的销售额/),l=c.match(/(\d{4}-\d{2}-\d{2})~(\d{4}-\d{2}-\d{2})的销售额/),s=c.match(/(\d{4}-\d{2})的销售额/);l?u.value=l[1]:f?u.value=f[1]:s&&(u.value=`${s[1]}-01`)}N(),b(_.taskIds,!0),I.value=Math.random()}F(()=>_.taskIds,t=>{b(t,!0)}),P(()=>{});const ot=()=>{const t=L.resolve({name:"TableDataEntry",query:{dateType:a.value}}).href;window.open(t,"_blank")};function nt({cellValue:t}){return t==null||t===""?"--":typeof t=="number"?new Intl.NumberFormat("en-US",{minimumFractionDigits:0}).format(t):t}const st=()=>({fontSize:"12px",fontWeight:"600"}),rt=()=>({fontSize:"12px"});return P(()=>{z()}),(t,i)=>{const c=C("el-button"),f=C("el-tag"),l=C("vxe-grid");return j(),ft("div",null,[(j(),mt(l,gt({key:I.value,"cell-style":st,"header-cell-style":rt,"sort-config":t.sortConfig,stripe:""},X.value,pt(Z),{onSortChange:at}),{toolbar_buttons:p(()=>[W(c,{icon:"plus",target:"_blank",type:"primary",onClick:ot},{default:p(()=>[A("数据录入")]),_:1})]),platformNumber_default:p(({row:s})=>[G("div",bt,S(s.platformNumber),1)]),platformName_default:p(({row:s})=>[G("div",yt,S(s.platformName),1)]),brandName_default:p(({row:s})=>[W(f,{effect:"plain",type:"success",round:""},{default:p(()=>[A(S(s.brandName),1)]),_:2},1024)]),_:1},16,["sort-config"]))])}}});const xt=_t(Ct,[["__scopeId","data-v-670b58b3"]]);export{xt as default};