1 |
- import{f as V,al as tt,p as z,r as i,Q as et,e as at,w as N,a7 as h,h as ot,i as nt,M as y,G as f,K as I,j as O,L as b,B as rt,aa as st}from"./vue.9083513e.js";import{k as T,w as P,m as j,l as lt,n as it,o as ct}from"./columns.2a09c679.js";import{d as m}from"./elementPlus.5243d764.js";import{_ as dt}from"./_plugin-vue_export-helper.c27b6911.js";import"./index.3716cebd.js";import"./echarts.594b4072.js";const ut={class:"font-semibold"},ft={class:"font-semibold",style:{color:"#0097f8"}},mt=V({__name:"TableDataDisplay",props:{taskIds:Object},setup(B){const F=tt(),n=z("dateDimension"),W=z("currentDate"),p=B,C=i(null),Y=i(null),S=i(null),k=i(null),w=i(null),x=i(null),G=[],$=[],H=[],g=i(""),D=i(""),e=et({border:"inner",height:900,align:null,round:!0,loading:!1,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:T,data:G},week:{columns:P,data:$},month:{columns:j,data:H}}),R=at(()=>{const t=e[n.value];return{...e,...t}}),q={pageChange({currentPage:t,pageSize:s}){e.pagerConfig&&(e.pagerConfig.currentPage=t,e.pagerConfig.pageSize=s,v(p.taskIds))}};N(W,t=>{n.value==="day"?(C.value=m(t.dailyStartDate).format("YYYY-MM-DD"),Y.value=m(t.dailyTime).format("YYYY-MM-DD")):n.value==="week"?(S.value=m(t.weekStartDate).format("YYYY-MM-DD"),k.value=m(t.weekEndDate).format("YYYY-MM-DD")):n.value==="month"&&(w.value=m(t.startDate).format("YYYY-MM-DD"),x.value=m(t.endDate).format("YYYY-MM-DD")),D.value="",g.value="",v(p.taskIds)});async function _(t,s,l,d,r,o){try{e.loading=!0;const u=await s({page:e.pagerConfig.currentPage,limit:e.pagerConfig.pageSize,[`${o}_start_date`]:l.value,[`${o}_end_date`]:d.value,task_ids:t,sort:D.value,order_date:g.value});if(e[n.value].data=u.data,e.pagerConfig.total=u.total,u.data.length>0){const M=new Set,E=[];r.value=r.value.filter(a=>!/\d{2}-\d{2}的/.test(a.field)&&!a.field.includes("余额币种")&&!a.field.includes("退货率")),u.data.forEach(a=>{for(const c in a)(/\d{2}-\d{2}的/.test(c)||c.includes("余额币种")||c.includes("退货率"))&&M.add(c)}),M.forEach(a=>{let c=!1;a.includes("销售额")&&!a.includes("广告销售额")&&!a.includes("增长率")&&(c=!0),E.push({field:a,title:a,minWidth:a.includes("~")?95:/\d{4}-\d{2}-\d{2}的/.test(a)?88:82,align:"center",formatter:X,sortable:c})}),n.value===o?r.value=[...r.value,...E]:(r.value=[],e.pagerConfig.total=0)}}catch(u){console.error("Error fetching task data:",u)}finally{e.loading=!1}}async function L(t){await _(t,lt,C,Y,T,"day")}async function Q(t){await _(t,it,S,k,P,"week")}async function U(t){await _(t,ct,w,x,j,"month")}function v(t,s=!1){s&&(e.pagerConfig.currentPage=1),n.value==="day"?L(t):n.value==="week"?Q(t):n.value==="month"&&U(t)}function A({column:t,order:s}){D.value=s==="asc"?"smallfirst":"bigfirst";const l=t.field;if(l){const d=l.match(/(\d{4}-\d{2}-\d{2})的销售额/),r=l.match(/(\d{4}-\d{2}-\d{2})~(\d{4}-\d{2}-\d{2})的销售额/),o=l.match(/(\d{4}-\d{2})的销售额/);r?g.value=r[1]:d?g.value=d[1]:o&&(g.value=`${o[1]}-01`)}v(p.taskIds,!0)}N(()=>p.taskIds,t=>{v(t,!0)});const J=()=>{F.push({name:"TableDataEntry",query:{dateType:n.value}})};function X({cellValue:t}){return t==null||t===""?"--":typeof t=="number"?new Intl.NumberFormat("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}).format(t):t}const Z=()=>({fontSize:"12px",fontWeight:"500"}),K=()=>({fontSize:"12px"});return(t,s)=>{const l=h("vxe-button"),d=h("el-tag"),r=h("vxe-grid");return ot(),nt("div",null,[y(r,rt({"cell-style":Z,"header-cell-style":K,stripe:""},R.value,st(q),{onSortChange:A}),{toolbar_buttons:f(()=>[y(l,{icon:"vxe-icon-add",status:"primary",onClick:J},{default:f(()=>[I("数据录入")]),_:1})]),platformNumber_default:f(({row:o})=>[O("div",ut,b(o.platformNumber),1)]),platformName_default:f(({row:o})=>[O("div",ft,b(o.platformName),1)]),currencyCode_default:f(({row:o})=>[y(d,{color:"#fef9c3",style:{color:"#f59e0b","border-color":"#fbbf24"}},{default:f(()=>[I(b(o.currencyCode),1)]),_:2},1024)]),_:1},16)])}}});const yt=dt(mt,[["__scopeId","data-v-d2d01ae0"]]);export{yt as default};
|