import{d as Yt,az as Mt,B as q,r as s,Z as Et,k as $t,w as zt,j as It,ai as $,o as Z,c as Nt,U as z,O as p,S as J,u as Ot,M as Bt,R as Tt,a as A,T as Q,K as Wt,am as Pt}from"./vue.adf17aba.js";import{s as Rt,t as jt,u as At,v as Ft,w as Gt,x as Ht,c as Ut,d as Lt,f as qt}from"./api.f24d8f94.js";import{a as X,b as V,c as K}from"./columns.c1b3552e.js";import{d as _,E as Zt}from"./elementPlus.4833989a.js";import{_ as Jt}from"./_plugin-vue_export-helper.c27b6911.js";import"./index.34b03be2.js";import"./echarts.72dc8373.js";const Qt={class:"pr-2.5"},Xt={class:"font-semibold",style:{padding:"0"}},Vt={class:"font-semibold",style:{color:"#164285"}},Kt=Yt({__name:"TableDataDisplay",props:{taskIds:Object},setup(tt){const F=Mt(),o=q("dateDimension"),et=q("currentDate"),I=s(!1),D=tt,y=s(D.taskIds),g=s(null),b=s(null),x=s(null),S=s(null),C=s(null),k=s(null),Y=s(null),at=[],ot=[],nt=[],v=s(""),M=s(""),E=s(null),N=s(null),O=s(!0),G=s(),B=s(null),n=Et({border:"inner",keepSource:!0,height:800,align:null,round:!0,loading:!1,id:"normalCustomStorage",customConfig:{storage:{visible:!0}},columnConfig:{isCurrent:!0,isHover:!0,resizable:!0},rowConfig:{isHover:!0,height:48},pagerConfig:{enabled:!0,total:20,currentPage:1,pageSize:20,pageSizes:[10,20,30]},sortConfig:{remote:!0,defaultSort:{field:N,order:E}},toolbarConfig:{custom:!0,zoom:{iconIn:"vxe-icon-fullscreen",iconOut:"vxe-icon-minimize"},slots:{buttons:"toolbar_buttons",tools:"toolbar_tools"}},day:{columns:X,data:at},week:{columns:V,data:ot},month:{columns:K,data:nt}}),lt=$t(()=>{const t=n[o.value];return{...n,...t}}),st={pageChange({currentPage:t,pageSize:a}){n.pagerConfig&&(n.pagerConfig.currentPage=t,n.pagerConfig.pageSize=a,R(D.taskIds))}},H=()=>{localStorage.setItem("sortField",v.value),localStorage.setItem("sortOrder",M.value),localStorage.setItem("salesOrder",E.value),localStorage.setItem("salesField",N.value)},T=s({});async function W(t,a,r,c,l){try{const i=await a({data_start_date:r.value,data_end_date:c.value,task_ids:t});T.value=i.data[0]||{},T.value.platformNumber="汇总"}catch(i){console.error("Error fetching total data:",i)}}async function rt(t){await W(t,Ut,b,x)}async function it(t){await W(t,Lt,S,C)}async function ct(t){await W(t,qt,k,Y)}async function ut(t){o.value==="day"?await rt(t):o.value==="week"?await it(t):o.value==="month"&&await ct(t)}async function P(t,a,r,c,l,i){try{const d=await a({page:n.pagerConfig.currentPage,limit:n.pagerConfig.pageSize,[`${i}_start_date`]:r.value,[`${i}_end_date`]:c.value,task_ids:t,sort:M.value,order_date:v.value,order_total_sales_current_monthly:g.value});if(n[o.value].data=[T.value,...d.data],n.pagerConfig.total=d.total,O.value&&d.data.length>0){const h=new Set,f=[],L=[];l.value=l.value.filter(e=>!/\d{2}-\d{2}/.test(e.field)&&!e.field.includes("余额币种")&&!e.field.includes("退货率")),d.data.forEach(e=>{for(const u in e)(/\d{2}-\d{2}/.test(u)||u.includes("余额币种")||u.includes("退货率"))&&h.add(u)}),h.forEach(e=>{let u=!1;(e.includes("的销售额")&&!e.includes("增长率")||e.includes("当月累计销售额")&&!e.includes("增长率"))&&(u=!0);const m={field:e,title:e,minWidth:e.includes("~")?95:/\d{4}-\d{2}-\d{2}的/.test(e)?93:e.includes("截止")?90:/\d{4}-\d{2}的销售额/.test(e)?127:79,align:"center",formatter:yt,sortable:u};e.includes("的销售额")&&!e.includes("增长率")?f.push(m):L.push(m)}),o.value=="day"?f.sort((e,u)=>{const m=e.field.match(/\d{4}-\d{2}-\d{2}/)[0],w=u.field.match(/\d{4}-\d{2}-\d{2}/)[0];return new Date(m)-new Date(w)}):o.value=="week"?f.sort((e,u)=>{const m=e.field.match(/\d{4}-\d{2}-\d{2}~\d{4}-\d{2}-\d{2}/)[0].split("~")[0],w=u.field.match(/\d{4}-\d{2}-\d{2}~\d{4}-\d{2}-\d{2}/)[0].split("~")[0];return new Date(m)-new Date(w)}):o.value=="month"&&f.sort((e,u)=>{const m=e.field.match(/\d{4}-\d{2}/)[0],w=u.field.match(/\d{4}-\d{2}/)[0];return new Date(m)-new Date(w)});const kt=[...f,...L];o.value===i?l.value=[...l.value,...kt]:(l.value=[],n.pagerConfig.total=0)}H()}catch(d){console.error("Error fetching task data:",d)}}async function dt(t){await P(t,Ft,b,x,X,"day")}async function ft(t){await P(t,Gt,S,C,V,"week")}async function mt(t){await P(t,Ht,k,Y,K,"month")}async function R(t,a=!1){n.loading=!0,a&&(n.pagerConfig.currentPage=1),await ut(t),o.value==="day"?await dt(t):o.value==="week"?await ft(t):o.value==="month"&&await mt(t),B.value&&await G.value.setCurrentColumn(B.value),n.loading=!1}function vt({field:t,order:a}){if(E.value=a,N.value=t,M.value=a==="asc"?"smallfirst":"bigfirst",t){const r=t.match(/(\d{4}-\d{2}-\d{2})的销售额/),c=t.match(/(\d{4}-\d{2}-\d{2})~(\d{4}-\d{2}-\d{2})的销售额/),l=t.match(/(\d{4}-\d{2})的销售额/),i=t.match(/当月累计销售额/);c?(v.value=c[2],g.value=""):r?(v.value=r[1],g.value=""):l?(v.value=`${l[1]}-01`,g.value=""):i&&(U(),g.value=!0)}H(),n.sortConfig.defaultSort.order=a,n.sortConfig.defaultSort.field=t,O.value=!1,R(D.taskIds,!0)}function U(){v.value="",E.value=null}const ht=()=>{const t=F.resolve({name:"DataEntry",query:{dateType:o.value}}).href;window.open(t,"_blank")},pt=()=>{const t=F.resolve({name:"PlanningSales"}).href;window.open(t,"_blank")};async function j(t,a,r,c,l){try{n.loading=!0;const i=await a({[`${l}_start_date`]:r.value,[`${l}_end_date`]:c.value,task_ids:t,sort:M.value,order_date:v.value,order_total_sales_current_monthly:g.value}),d=window.URL.createObjectURL(new Blob([i.data])),h=document.createElement("a");let f="";l==="day"?f=`${r.value}~${c.value}日数据.xlsx`:l==="week"?f=`${r.value}~${c.value}周数据.xlsx`:l==="month"&&(f=`${r.value}~${c.value}月数据.xlsx`),h.href=d,h.setAttribute("download",f),document.body.appendChild(h),h.click(),n.loading=!1,Zt.success("导出数据成功")}catch(i){console.error("导出数据失败:",i)}}async function gt(){await j(y.value,Rt,b,x,"day")}async function _t(){await j(y.value,jt,S,C,"week")}async function wt(){await j(y.value,At,k,Y,"month")}async function Dt(){o.value==="day"?await gt():o.value==="week"?await _t():o.value==="month"&&await wt()}function yt({cellValue:t}){return t==null||t===""?"--":typeof t=="number"?new Intl.NumberFormat("en-US",{minimumFractionDigits:2}).format(t):t}const bt=t=>t.$rowIndex===0&&t.$columnIndex<5?{position:"sticky",top:0,zIndex:30,fontSize:"12px",fontWeight:"600"}:{fontSize:"12px",fontWeight:"600",padding:0},xt=()=>({fontSize:"12px"}),St=t=>t.$rowIndex===0?{background:"#def6fe",position:"sticky",top:0,zIndex:1}:{padding:0,height:"50px"};zt([()=>D.taskIds,et],async([t,a])=>{O.value=!0,o.value==="day"?(b.value=_(a.dailyStartDate).format("YYYY-MM-DD"),x.value=_(a.dailyTime).format("YYYY-MM-DD")):o.value==="week"?(S.value=_(a.weekStartDate).format("YYYY-MM-DD"),C.value=_(a.weekEndDate).format("YYYY-MM-DD")):o.value==="month"&&(k.value=_(a.startDate).format("YYYY-MM-DD"),Y.value=_(a.endDate).format("YYYY-MM-DD")),U(),t&&(I.value=!0,y.value=t),I.value&&t&&(await R(t,!0),I.value=!1)});function Ct({column:t}){B.value=t.field}return It(()=>{}),(t,a)=>{const r=$("el-button"),c=$("vxe-button"),l=$("el-tooltip"),i=$("vxe-grid");return Z(),Nt("div",null,[z(i,Wt({ref_key:"xGrid",ref:G,"cell-style":bt,"header-cell-style":xt,"row-style":St,stripe:""},lt.value,Pt(st),{onSortChange:vt,onHeaderCellClick:Ct}),{toolbar_buttons:p(()=>[z(r,{icon:"plus",target:"_blank",type:"primary",onClick:ht},{default:p(()=>[J("数据录入")]),_:1}),Ot(o)==="month"?(Z(),Bt(r,{key:0,bg:"",icon:"plus",target:"_blank",text:"",onClick:pt},{default:p(()=>[J(" 计划销售额 ")]),_:1})):Tt("",!0)]),toolbar_tools:p(()=>[A("div",Qt,[z(l,{content:"下载表格",placement:"top"},{default:p(()=>[z(c,{circle:"",icon:"vxe-icon-download",onClick:Dt})]),_:1})])]),platformNumber_default:p(({row:d})=>[A("div",Xt,Q(d.platformNumber),1)]),platformName_default:p(({row:d})=>[A("div",Vt,Q(d.platformName),1)]),_:1},16)])}}});const re=Jt(Kt,[["__scopeId","data-v-f63a1ff1"]]);export{re as default};