1 |
- import{V as J}from"./index.b098562c.js";import{d as u,o as Ge}from"./elementPlus.4833989a.js";import{i as Pe}from"./isoWeek.836300fa.js";import{d as Ne,aD as je,r as d,k as F,Z as Le,j as Ae,ai as Y,o as f,c as V,a as _,U as n,O as s,u as $,R as b,K as He,am as qe,F as me,S as B,M as G,T as K,aF as Xe,aG as Ze}from"./vue.adf17aba.js";import{y as Je,z as Ke,A as Qe,B as ea,C as aa,D as ta,E as la,F as oa,G as na}from"./api.22744ce0.js";import{S as sa}from"./index.69fb01e4.js";import{_ as da}from"./CreateDialog.vue_vue_type_script_setup_true_lang.32c85f28.js";import{a as Q}from"./tools.7c7e9e81.js";import{_ as ia}from"./TipDialog.vue_vue_type_script_setup_true_lang.f02aab6e.js";import{d as ra,w as ua,m as ca}from"./columns.c1b3552e.js";import{_ as ma}from"./_plugin-vue_export-helper.c27b6911.js";import"./echarts.72dc8373.js";const P=x=>(Xe("data-v-f393a3e4"),x=x(),Ze(),x),_a={class:"flex gap-1.5 justify-between mx-2 items-center"},fa={key:0,class:"demo-date-picker"},pa={class:"block"},va=P(()=>_("span",{class:"demonstration"},"日数据时间:",-1)),ya={key:1,class:"demo-date-picker"},ga={class:"block mt-2"},ka=P(()=>_("span",{class:"demonstration"},"周广告数据时间:",-1)),Da={class:"block"},Va=P(()=>_("span",{class:"demonstration"},"周销售数据时间:",-1)),ha={key:2,class:"demo-date-picker"},Ya={class:"block"},ba=P(()=>_("span",{class:"demonstration"},"月数据时间:",-1)),Ma={style:{position:"relative"}},Sa={key:0},Ua={key:1},Ca=Ne({__name:"index",setup(x){u.extend(Pe);const r=je().query.dateType,ee=d(null),ae=d({}),p=d(u().subtract(1,"day").format("YYYY-MM-DD")),g=d(null),N=d(null);let te=!0;const M=d(""),k=d(""),w=d(""),E=d(""),S=d(null),D=d(null),v=d(null),_e=[{text:"今天",value:new Date},{text:"昨天",value:()=>{const e=new Date;return e.setTime(e.getTime()-3600*1e3*24),e}},{text:"最近七天",value:()=>{const e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),e}}],j=d(null),le=d(null),L=d(null);function fe(e){p.value=u(e).format("YYYY-MM-DD"),j.value=u(p.value).subtract(1,"day").format("YYYY-MM-DD"),h()}const oe=()=>{if(g.value){M.value=u(g.value).locale("en").startOf("week").format("YYYY-MM-DD"),k.value=u(g.value).locale("en").endOf("week").format("YYYY-MM-DD");const e=u(g.value).locale("en").subtract(7,"day");N.value=e.format("YYYY-WW"),w.value=e.startOf("week").format("YYYY-MM-DD"),E.value=e.endOf("week").format("YYYY-MM-DD"),le.value=u(k.value).locale("en").endOf("week").subtract(1,"week").format("YYYY-MM-DD")}te?te=!1:h()},pe=e=>{if(e){const t=new Date(e),o=t.getFullYear(),i=t.getMonth()+1,I=new Date(o,i,0).getDate();D.value=`${o}-${String(i).padStart(2,"0")}-01`,v.value=`${o}-${String(i).padStart(2,"0")}-${I}`,L.value=u(v.value).subtract(1,"month").endOf("month").format("YYYY-MM-DD"),h()}else D.value=null,v.value=null},ve=F(()=>`${M.value} to ${k.value}`),ye=F(()=>`${w.value} to ${E.value}`),ge=F(()=>`${D.value} to ${v.value}`),A=e=>e.getTime()>Date.now();function ke(){switch(r){case"day":p.value=u().subtract(1,"day").format("YYYY-MM-DD"),j.value=u(p.value).subtract(1,"day").format("YYYY-MM-DD");break;case"week":g.value=u().locale("en").subtract(1,"week").startOf("week").format("YYYY-MM-DD"),oe();break;case"month":S.value=u().subtract(1,"month").format("YYYY-MM-DD"),D.value=u(S.value).startOf("month").format("YYYY-MM-DD"),v.value=u(S.value).endOf("month").format("YYYY-MM-DD"),L.value=u(v.value).subtract(1,"month").endOf("month").format("YYYY-MM-DD")}}const ne=d({}),O=d(!1),U=d(!1),H=d(!1),z=d({sales_original:"",total_sales_current_monthly_original:""}),C=d({});let T;const De=[],Ve=[],he=[],y=d(),q=new Map,se=d(0),R=d(null),m=Le({border:"inner",height:750,align:null,round:!0,loading:!1,showHeaderOverflow:!0,columnConfig:{resizable:!0},rowConfig:{isHover:!0},pagerConfig:{enabled:!0,total:20,currentPage:1,pageSize:20,pageSizes:[10,20,30]},editConfig:{trigger:"manual",mode:"row",showStatus:!0,autoClear:!1},day:{columns:ra,data:De},week:{columns:ua,data:Ve},month:{columns:ca,data:he}}),Ye={pageChange({currentPage:e,pageSize:t}){m.pagerConfig&&(m.pagerConfig.currentPage=e,m.pagerConfig.pageSize=t),h()}},de=e=>{const t=y.value;return t?t.isEditByRow(e):!1},be=e=>{R.value=!1;const t=y.value;if(t){const o=q.get(e.id);o&&(Object.assign(e,o),q.delete(e.id)),t.clearEdit()}},Me=e=>{R.value=!0;const t=y.value;if(t){const o=t.$el.querySelector(".vxe-table--body-wrapper");se.value=o.scrollLeft,q.set(e.id,{...e}),t.setEditRow(e),setTimeout(()=>{o.scrollLeft=se.value},0)}};function Se(e){ee.value&&(m.pagerConfig&&(m.pagerConfig.currentPage=1),ae.value=e.value,h())}async function X(e){try{m.loading=!0;const t=await e({page:m.pagerConfig.currentPage,limit:m.pagerConfig.pageSize,task_ids:ae.value,...T});m[r].data=t.data,m.pagerConfig.total=t.total}catch(t){console.error("Error fetching task data:",t)}finally{m.loading=!1}}async function ie(){await X(ea)}async function re(){await X(aa)}async function ue(){await X(ta)}function h(){r==="day"?(T={day_start_date:p.value,day_end_date:p.value},ie()):r==="week"?(T={week_start_date:M.value,week_end_date:k.value},re()):r==="month"&&(T={month_start_date:D.value,month_end_date:v.value},ue()),ne.value={...T,ad_start_time:w.value,ad_end_time:E.value}}const Ue=async e=>{C.value=e,await Oe(),O.value=!0};async function Ce(e){if(y.value){const o={id:e.id,sales_original:e.sales_original,ad_sales_original:e.ad_sales_original,ad_cost_original:e.ad_cost_original,data_datetime:p.value,task:e.task};try{(await Je(o)).code===2e3&&(await ie(),await J.modal.message({content:"更新成功",status:"success"}))}catch(i){console.log("error:",i)}}}async function Te(e){if(y.value){const o={id:e.id,sales_original:e.sales_original,ad_sales_original:e.ad_sales_original,ad_cost_original:e.ad_cost_original,total_sales_current_monthly_original:e.total_sales_current_monthly_original,impression:e.impression,ad_click:e.ad_click,ad_order:e.ad_order,money_by_amazon:e.money_by_amazon,money_by_other:e.money_by_other,session:e.session,order:e.order,availableSalesDay:e.availableSalesDay,intransitInventory:e.intransitInventory,overseasStorage:e.overseasStorage,refundRate:e.refundRate,sales_start_time:M.value,sales_end_time:k.value,ad_start_time:w.value,ad_end_time:E.value,enter_start_datetime:M.value,enter_end_datetime:k.value,task:e.task};try{(await Ke(o)).code===2e3&&(await re(),await J.modal.message({content:"更新成功",status:"success"}))}catch(i){console.log("error:",i)}}}async function Re(e){if(y.value){const o={id:e.id,sales_original:e.sales_original,ad_sales_original:e.ad_sales_original,ad_cost_original:e.ad_cost_original,impression:e.impression,ad_click:e.ad_click,ad_order:e.ad_order,data_start_time:D.value,data_end_time:v.value,enter_start_time:D.value,enter_end_time:v.value,task:e.task};try{(await Qe(o)).code===2e3&&(await ue(),await J.modal.message({content:"更新成功",status:"success"}))}catch(i){console.log("error:",i)}}}const $e=async e=>{if(C.value=e,H.value=Fe(e),H.value){U.value=!0;return}await ce(e)},ce=async e=>{U.value=!1;const t=y.value;if(t){if(r==="day"){if(!Q(e,["sales_original"]))return;await Ce(e)}else if(r==="week"){if(!Q(e,["sales_original","ad_sales_original","ad_cost_original","total_sales_current_monthly_original","impression","ad_click","ad_order","money_by_amazon","money_by_other","session","order","availableSalesDay","intransitInventory","overseasStorage","refundRate"]))return;await Te(e)}else if(r==="month"){if(!Q(e,["sales_original"]))return;await Re(e)}R.value=!1,await t.clearEdit()}};async function Z(e,t){const o={day:j.value,week:le.value,month:L.value},i=await e({task:C.value.task,[`${t}_end_date`]:o[t]});return r==="week"?z.value=i.data:z.value=i.data[0],z.value}async function xe(){await Z(la,"day")}async function we(){await Z(oa,"week")}async function Ee(){await Z(na,"month")}async function Oe(){r==="week"?await we():r==="month"?await Ee():await xe()}const ze=F(()=>{const e=m[r]||m.day;return{...m,...e}}),Ie=()=>({fontSize:"13px",fontWeight:"500"}),We=()=>({fontSize:"13px"}),Fe=e=>{const t=e.ad_sales_original,o=e.ad_cost_original;if(t!=null&&o!=null&&o!==0)return(t-o)/o<0};return Ae(()=>{ke()}),(e,t)=>{const o=Y("el-date-picker"),i=Y("el-config-provider"),I=Y("el-card"),W=Y("el-button"),c=Y("vxe-input"),Be=Y("vxe-grid");return f(),V(me,null,[_("div",null,[n(I,{class:"my-3 mx-8 p-0"},{default:s(()=>[_("div",_a,[n(sa,{ref_key:"selectorRef",ref:ee,"onUpdate:updateData":Se},null,512),$(r)==="day"?(f(),V("div",fa,[_("div",pa,[va,n(o,{modelValue:p.value,"onUpdate:modelValue":t[0]||(t[0]=a=>p.value=a),clearable:!1,"disabled-date":A,shortcuts:_e,style:{width:"170px"},type:"Date",onChange:fe},null,8,["modelValue"])])])):b("",!0),$(r)==="week"?(f(),V("div",ya,[n(i,{locale:$(Ge)},{default:s(()=>[_("div",ga,[ka,n(o,{modelValue:N.value,"onUpdate:modelValue":t[1]||(t[1]=a=>N.value=a),clearable:!1,format:ye.value,disabled:"",placeholder:"选择一周",type:"week"},null,8,["modelValue","format"])]),_("div",Da,[Va,n(o,{modelValue:g.value,"onUpdate:modelValue":t[2]||(t[2]=a=>g.value=a),clearable:!1,"disabled-date":A,format:ve.value,placeholder:"选择一周",type:"week",onChange:oe},null,8,["modelValue","format"])])]),_:1},8,["locale"])])):b("",!0),$(r)==="month"?(f(),V("div",ha,[_("div",Ya,[ba,n(o,{modelValue:S.value,"onUpdate:modelValue":t[3]||(t[3]=a=>S.value=a),clearable:!1,"disabled-date":A,format:ge.value,placeholder:"选择月份",type:"month",onChange:pe},null,8,["modelValue","format"])])])):b("",!0)])]),_:1})]),n(I,{class:"mx-8"},{default:s(()=>[_("div",Ma,[n(Be,He({ref_key:"xGrid",ref:y,"cell-style":Ie,"header-cell-style":We,stripe:""},ze.value,qe(Ye)),{operate:s(({row:a})=>[de(a)?(f(),V(me,{key:0},[n(W,{link:"",size:"small",onClick:l=>be(a)},{default:s(()=>[B("取消")]),_:2},1032,["onClick"]),n(W,{link:"",size:"small",type:"warning",onClick:l=>$e(a)},{default:s(()=>[B("保存")]),_:2},1032,["onClick"])],64)):(f(),G(W,{key:1,disabled:!a.id||R.value,link:"",size:"small",type:"success",onClick:l=>Me(a)},{default:s(()=>[B(" 修改 ")]),_:2},1032,["disabled","onClick"])),de(a)?b("",!0):(f(),G(W,{key:2,disabled:a.id||R.value,link:"",size:"small",type:"primary",onClick:l=>Ue(a)},{default:s(()=>[B("创建 ")]),_:2},1032,["disabled","onClick"]))]),total_header:s(({row:a})=>[_("span",null,"当月截止"+K(k.value)+"销售额",1)]),sales_original_edit:s(({row:a})=>[n(c,{modelValue:a.sales_original,"onUpdate:modelValue":l=>a.sales_original=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_sales_original_edit:s(({row:a})=>[n(c,{modelValue:a.ad_sales_original,"onUpdate:modelValue":l=>a.ad_sales_original=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_cost_original_edit:s(({row:a})=>[n(c,{modelValue:a.ad_cost_original,"onUpdate:modelValue":l=>a.ad_cost_original=l},null,8,["modelValue","onUpdate:modelValue"])]),total_sales_current_monthly_edit:s(({row:a})=>[n(c,{modelValue:a.total_sales_current_monthly_original,"onUpdate:modelValue":l=>a.total_sales_current_monthly_original=l},null,8,["modelValue","onUpdate:modelValue"])]),impression_edit:s(({row:a})=>[n(c,{modelValue:a.impression,"onUpdate:modelValue":l=>a.impression=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_click_edit:s(({row:a})=>[n(c,{modelValue:a.ad_click,"onUpdate:modelValue":l=>a.ad_click=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_order_edit:s(({row:a})=>[n(c,{modelValue:a.ad_order,"onUpdate:modelValue":l=>a.ad_order=l},null,8,["modelValue","onUpdate:modelValue"])]),money_by_amazon_edit:s(({row:a})=>[n(c,{modelValue:a.money_by_amazon,"onUpdate:modelValue":l=>a.money_by_amazon=l},null,8,["modelValue","onUpdate:modelValue"])]),money_by_other_edit:s(({row:a})=>[n(c,{modelValue:a.money_by_other,"onUpdate:modelValue":l=>a.money_by_other=l},null,8,["modelValue","onUpdate:modelValue"])]),session_edit:s(({row:a})=>[n(c,{modelValue:a.session,"onUpdate:modelValue":l=>a.session=l},null,8,["modelValue","onUpdate:modelValue"])]),order_edit:s(({row:a})=>[n(c,{modelValue:a.order,"onUpdate:modelValue":l=>a.order=l},null,8,["modelValue","onUpdate:modelValue"])]),availableSalesDay_edit:s(({row:a})=>[n(c,{modelValue:a.availableSalesDay,"onUpdate:modelValue":l=>a.availableSalesDay=l},null,8,["modelValue","onUpdate:modelValue"])]),intransitInventory_edit:s(({row:a})=>[n(c,{modelValue:a.intransitInventory,"onUpdate:modelValue":l=>a.intransitInventory=l},null,8,["modelValue","onUpdate:modelValue"])]),overseasStorage_edit:s(({row:a})=>[n(c,{modelValue:a.overseasStorage,"onUpdate:modelValue":l=>a.overseasStorage=l},null,8,["modelValue","onUpdate:modelValue"])]),refundRate_edit:s(({row:a})=>[n(c,{modelValue:a.refundRate,"onUpdate:modelValue":l=>a.refundRate=l},null,8,["modelValue","onUpdate:modelValue"])]),refundRate_default:s(({row:a})=>[a.refundRate!==null&&a.refundRate!==void 0?(f(),V("span",Sa,K(a.refundRate)+"% ",1)):(f(),V("span",Ua,K(a.refundRate),1))]),_:1},16)])]),_:1}),O.value?(f(),G(da,{key:0,modelValue:O.value,"onUpdate:modelValue":t[4]||(t[4]=a=>O.value=a),currentDate:ne.value,currentRow:C.value,dateType:$(r),ySalesData:z.value,onRefresh:h},null,8,["modelValue","currentDate","currentRow","dateType","ySalesData"])):b("",!0),U.value?(f(),G(ia,{key:1,modelValue:U.value,"onUpdate:modelValue":t[5]||(t[5]=a=>U.value=a),isROI:H.value,onUpdate:t[6]||(t[6]=a=>ce(C.value))},null,8,["modelValue","isROI"])):b("",!0)],64)}}});const Pa=ma(Ca,[["__scopeId","data-v-f393a3e4"]]);export{Pa as default};
|