1 |
- import{V as f}from"./index.ad090ffd.js";import{d as h,j as Je,h as A}from"./elementPlus.59866ea5.js";import{i as Ke}from"./isoWeek.d7723cf7.js";import{d as Le,an as Qe,r as d,w as Xe,k as S,Q as oe,j as Ze,a8 as b,o as m,c as y,a as p,M as o,G as n,u as T,J as R,B as ea,ab as aa,F as O,K as I,E as J,$ as ne,ap as ta,aq as la}from"./vue.95e072e2.js";import{p as sa,n as oa,o as na,q as ia,r as ra,s as da,t as ua,u as _a,v as ca}from"./api.3736ee48.js";import{a as ue,b as _e,c as ce}from"./columns.b2763aff.js";import{S as ma}from"./index.d0f14c27.js";import{_ as ga}from"./_plugin-vue_export-helper.c27b6911.js";import"./echarts.2703a7ac.js";const K=N=>(ta("data-v-8369f4c7"),N=N(),la(),N),fa={class:"custom-card-style flex gap-1.5 justify-between my-1.5 mx-2"},pa={key:0,class:"demo-date-picker"},ya={class:"block"},va=K(()=>p("span",{class:"demonstration"},"日数据时间:",-1)),ka={key:1,class:"demo-date-picker"},ha={class:"block"},ba=K(()=>p("span",{class:"demonstration"},"周广告数据时间:",-1)),Va={class:"block"},Da=K(()=>p("span",{class:"demonstration"},"周销售数据时间:",-1)),Ca={key:2,class:"demo-date-picker"},Ua={class:"block"},Ya=K(()=>p("span",{class:"demonstration"},"月数据时间:",-1)),Sa={style:{position:"relative"}},Ta={key:0},Ma={key:1,style:{display:"grid","grid-template-columns":"repeat(2, 1fr)",gap:"5px"}},wa={key:2},$a={class:"dialog-footer"},xa=Le({__name:"TableDataEntry",setup(N){h.extend(Ke);const u=Qe().query.dateType,ie=d(null),re=d({}),V=d(h().subtract(1,"day").format("YYYY-MM-DD")),D=d(null),L=d(null),M=d(""),w=d(""),W=d(""),j=d(""),F=d(null),C=d(null),U=d(null),me=[{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}}];function ge(e){V.value=h(e).format("YYYY-MM-DD"),x()}const Q=()=>{if(D.value){M.value=h(D.value).locale("en").startOf("week").format("YYYY-MM-DD"),w.value=h(D.value).locale("en").endOf("week").format("YYYY-MM-DD");const e=h(D.value).locale("en").subtract(7,"day");L.value=e.format("YYYY-WW"),W.value=e.startOf("week").format("YYYY-MM-DD"),j.value=e.endOf("week").format("YYYY-MM-DD")}};Xe(()=>D.value,()=>{Q(),x()});const fe=e=>{if(e){const t=new Date(e),i=t.getFullYear(),r=t.getMonth()+1,k=new Date(i,r,0).getDate();C.value=`${i}-${String(r).padStart(2,"0")}-01`,U.value=`${i}-${String(r).padStart(2,"0")}-${k}`,x()}else C.value=null,U.value=null},pe=S(()=>`${M.value} to ${w.value}`),ye=S(()=>`${W.value} to ${j.value}`),ve=S(()=>`${C.value} to ${U.value}`),X=e=>e.getTime()>Date.now();function ke(){switch(u){case"day":V.value=h().subtract(1,"day").format("YYYY-MM-DD");break;case"week":D.value=h().locale("en").subtract(1,"week").startOf("week").format("YYYY-MM-DD"),Q();break;case"month":F.value=new Date,C.value=h(F.value).startOf("month").format("YYYY-MM-DD"),U.value=h(F.value).endOf("month").format("YYYY-MM-DD")}}const he=d("default"),v=d(!1),$=d(),s=oe({sales_original:null,ad_sales_original:null,ad_cost_original:null,total_sales_current_monthly_original:null,impression:null,ad_click:null,ad_order:null,session:null,order:null,availableSalesDay:null,intransitInventory:null,overseasStorage:null,refundRate:null,money_by_amazon:null,money_by_other:null}),be=e=>{e&&e.resetFields()},Ve=oe({sales_original:[{required:!0,message:"请输入销售额",trigger:"blur"}],ad_sales_original:[{required:!0,message:"请输入广告销售额",trigger:"blur"}],ad_cost_original:[{required:!0,message:"请输入广告花费",trigger:"blur"}],total_sales_current_monthly_original:[{required:!0,message:"请输入当月销售额",trigger:"blur"}],impression:[{required:!0,message:"请输入广告展示量",trigger:"blur"}],ad_click:[{required:!0,message:"请输入广告点击量",trigger:"blur"}],ad_order:[{required:!0,message:"请输入广告订单量",trigger:"blur"}],money_by_amazon:[{required:!0,message:"请输入亚马逊佣金",trigger:"blur"}],money_by_other:[{required:!0,message:"请输入其他佣金",trigger:"blur"}],session:[{required:!0,message:"请输入会话数",trigger:"blur"}],order:[{required:!0,message:"请输入订单",trigger:"blur"}],availableSalesDay:[{required:!0,message:"请输入可用销量天数",trigger:"blur"}],intransitInventory:[{required:!0,message:"请输入在途库存",trigger:"blur"}],overseasStorage:[{required:!0,message:"请输入海外仓库存",trigger:"blur"}],refundRate:[{required:!0,message:"请输入最近90天平台退货率",trigger:"blur"}]}),De=d(H(ue.value)),de=d(H(_e.value)),Ce=d(H(ce.value));let B=0,G=0;const Ue=[],Ye=[],Se=[],Y=d(),Z=new Map,g=oe({border:"inner",height:800,align:null,round:!0,loading:!1,showHeaderOverflow:!0,showOverflow:!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},day:{columns:ue,data:Ue},week:{columns:_e,data:Ye},month:{columns:ce,data:Se}}),Te={pageChange({currentPage:e,pageSize:t}){g.pagerConfig&&(g.pagerConfig.currentPage=e,g.pagerConfig.pageSize=t),x()}},Me=e=>{const t=Y.value;return t?t.isEditByRow(e):!1},we=e=>{const t=Y.value;if(t){const i=Z.get(e.id);i&&(Object.assign(e,i),Z.delete(e.id)),t.clearEdit()}},$e=e=>{const t=Y.value;t&&(Z.set(e.id,{...e}),t.setEditRow(e))};function xe(e){ie.value&&(re.value=e.value,x())}let P;async function ee(e){try{g.loading=!0;const t=await e({page:g.pagerConfig.currentPage,limit:g.pagerConfig.pageSize,task_ids:re.value,...P});g[u].data=t.data,g.pagerConfig.total=t.total}catch(t){console.error("Error fetching task data:",t)}finally{g.loading=!1}}async function ae(){await ee(ua)}async function te(){await ee(_a)}async function le(){await ee(ca)}function x(){u==="day"?(P={day_start_date:V.value,day_end_date:V.value},ae()):u==="week"?(P={week_start_date:M.value,week_end_date:w.value},te()):u==="month"&&(P={month_start_date:C.value,month_end_date:U.value},le())}const ze=async e=>{B=e.task,G=e.id,Object.assign(s,e),v.value=!0},z=(e,t)=>{const i=["sales_original","total_sales_current_monthly_original","ad_sales_original","ad_cost_original","money_by_amazon","money_by_other","refundRate"],r=["impression","ad_click","ad_order","session","order","availableSalesDay","intransitInventory","overseasStorage"];for(const k of t){const c=e[k],_=de.value.find(q=>q.field===k),E=_?_.title:k;if(i.includes(k)){if(c==null||c==="")return A.warning(`${E} 不能为空`),!1;if(isNaN(Number(c)))return A.warning(`${E} 必须为数字`),!1}else if(r.includes(k)){if(c==null||c==="")return A.warning(`${E} 不能为空`),!1;if(!Number.isInteger(Number(c))||isNaN(Number(c)))return A.warning(`${E} 必须为整数`),!1}}return!0};async function Ee(){const e={sales_original:s.sales_original,ad_sales_original:s.ad_sales_original,ad_cost_original:s.ad_cost_original,data_datetime:V.value,task:B};if(G)v.value=!1,await f.modal.message({content:"此日期对应数据已存在",status:"error"});else try{(await sa(e)).code===2e3&&(v.value=!1,await ae(),await f.modal.message({content:"创建成功",status:"success"}),$.value.resetFields())}catch{await f.modal.message({content:"创建失败",status:"error"})}}async function Re(){const e={sales_original:s.sales_original,ad_sales_original:s.ad_sales_original,ad_cost_original:s.ad_cost_original,total_sales_current_monthly_original:s.total_sales_current_monthly_original,impression:s.impression,ad_click:s.ad_click,ad_order:s.ad_order,money_by_amazon:s.money_by_amazon,money_by_other:s.money_by_other,session:s.session,order:s.order,availableSalesDay:s.availableSalesDay,intransitInventory:s.intransitInventory,overseasStorage:s.overseasStorage,refundRate:s.refundRate,sales_start_time:M.value,sales_end_time:w.value,ad_start_time:W.value,ad_end_time:j.value,task:B};if(G)v.value=!1,await f.modal.message({content:"此日期对应数据已存在",status:"error"});else try{(await oa(e)).code===2e3&&(v.value=!1,await te(),await f.modal.message({content:"创建成功",status:"success"}),$.value.resetFields())}catch{await f.modal.message({content:"创建失败",status:"error"})}}async function Ie(){const e={sales_original:s.sales_original,ad_sales_original:s.ad_sales_original,ad_cost_original:s.ad_cost_original,impression:s.impression,ad_click:s.ad_click,ad_order:s.ad_order,data_start_time:C.value,data_end_time:U.value,task:B};if(G)v.value=!1,await f.modal.message({content:"此日期对应数据已存在",status:"error"});else try{(await na(e)).code===2e3&&(v.value=!1,await le(),await f.modal.message({content:"创建成功",status:"success"}),$.value.resetFields())}catch{await f.modal.message({content:"创建失败",status:"error"})}}const Fe=async e=>{e&&await e.validate(async(t,i)=>{if(t){if(u==="day"){if(!z(s,["sales_original","ad_sales_original","ad_cost_original"]))return;await Ee()}if(u==="week"){if(!z(s,["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 Re()}if(u==="month"){if(!z(s,["sales_original","ad_sales_original","ad_cost_original","impression","ad_click","ad_order"]))return;await Ie()}}})};async function qe(e){if(Y.value){const i={id:e.id,sales_original:e.sales_original,ad_sales_original:e.ad_sales_original,ad_cost_original:e.ad_cost_original,data_datetime:V.value,task:e.task};try{(await ia(i)).code===2e3&&(await ae(),await f.modal.message({content:"更新成功",status:"success"}))}catch(r){console.log("error:",r)}}}async function Oe(e){if(Y.value){const i={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:w.value,ad_start_time:W.value,ad_end_time:j.value,enter_start_datetime:M.value,enter_end_datetime:w.value,task:e.task};try{(await ra(i)).code===2e3&&(await te(),await f.modal.message({content:"更新成功",status:"success"}))}catch(r){console.log("error:",r)}}}async function Ne(e){if(Y.value){const i={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:C.value,data_end_time:U.value,enter_start_time:C.value,enter_end_time:U.value,task:e.task};try{(await da(i)).code===2e3&&(await le(),await f.modal.message({content:"更新成功",status:"success"}))}catch(r){console.log("error:",r)}}}const We=async e=>{const t=Y.value;if(t){if(u==="day"){if(!z(e,["sales_original","ad_sales_original","ad_cost_original"]))return;await qe(e)}else if(u==="week"){if(!z(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 Oe(e)}else if(u==="month"){if(!z(e,["sales_original","ad_sales_original","ad_cost_original","impression","ad_click","ad_order"]))return;await Ne(e)}await t.clearEdit()}},je=S(()=>{const e=g[u]||g.day;return{...g,...e}});function H(e){let t=[];return e.forEach(i=>{i.children&&i.children.length>0?t=t.concat(H(i.children)):t.push(i)}),t}const Be=S(()=>De.value.filter(t=>!["平台编号","平台名称","国家","品牌","操作","运营","销售额","广告销售额","广告花费","回款币种"].includes(t.title))),Ge=S(()=>de.value.filter(t=>!["平台编号","平台名称","国家","品牌","操作","运营","销售额","广告销售额","广告花费","当月累计销售额","回款币种","回款/余额币种"].includes(t.title))),Pe=S(()=>Ce.value.filter(t=>!["平台编号","平台名称","国家","品牌","操作","运营","销售额","广告销售额","广告花费","回款币种"].includes(t.title)));return Ze(()=>{ke(),x()}),(e,t)=>{const i=b("el-date-picker"),r=b("el-config-provider"),k=b("el-card"),c=b("el-button"),_=b("vxe-input"),E=b("vxe-grid"),q=b("el-input"),se=b("el-form-item"),He=b("el-form"),Ae=b("el-dialog");return m(),y(O,null,[p("div",null,[o(k,{class:"my-3 mx-8"},{default:n(()=>[p("div",fa,[o(ma,{ref_key:"selectorRef",ref:ie,"onUpdate:updateData":xe},null,512),T(u)==="day"?(m(),y("div",pa,[p("div",ya,[va,o(i,{modelValue:V.value,"onUpdate:modelValue":t[0]||(t[0]=a=>V.value=a),clearable:!1,"disabled-date":X,shortcuts:me,type:"Date",onChange:ge},null,8,["modelValue"])])])):R("",!0),T(u)==="week"?(m(),y("div",ka,[o(r,{locale:T(Je)},{default:n(()=>[p("div",ha,[ba,o(i,{modelValue:L.value,"onUpdate:modelValue":t[1]||(t[1]=a=>L.value=a),clearable:!1,format:ye.value,disabled:"",placeholder:"选择一周",type:"week"},null,8,["modelValue","format"])]),p("div",Va,[Da,o(i,{modelValue:D.value,"onUpdate:modelValue":t[2]||(t[2]=a=>D.value=a),clearable:!1,"disabled-date":X,format:pe.value,placeholder:"选择一周",type:"week",onChange:Q},null,8,["modelValue","format"])])]),_:1},8,["locale"])])):R("",!0),T(u)==="month"?(m(),y("div",Ca,[p("div",Ua,[Ya,o(i,{modelValue:F.value,"onUpdate:modelValue":t[3]||(t[3]=a=>F.value=a),clearable:!1,"disabled-date":X,format:ve.value,placeholder:"选择月份",type:"month",onChange:fe},null,8,["modelValue","format"])])])):R("",!0)])]),_:1})]),o(k,{class:"mx-8"},{default:n(()=>[p("div",Sa,[o(E,ea({ref_key:"xGrid",ref:Y},je.value,aa(Te),{stripe:""}),{operate:n(({row:a})=>[Me(a)?(m(),y(O,{key:0},[o(c,{link:"",size:"small",onClick:l=>we(a)},{default:n(()=>[I("取消")]),_:2},1032,["onClick"]),o(c,{link:"",size:"small",type:"warning",onClick:l=>We(a)},{default:n(()=>[I("保存")]),_:2},1032,["onClick"])],64)):(m(),J(c,{key:1,disabled:!a.id,link:"",size:"small",type:"success",onClick:l=>$e(a)},{default:n(()=>[I("修改")]),_:2},1032,["disabled","onClick"])),o(c,{disabled:a.id,link:"",size:"small",type:"primary",onClick:l=>ze(a)},{default:n(()=>[I("创建")]),_:2},1032,["disabled","onClick"])]),sales_original_edit:n(({row:a})=>[o(_,{modelValue:a.sales_original,"onUpdate:modelValue":l=>a.sales_original=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_sales_original_edit:n(({row:a})=>[o(_,{modelValue:a.ad_sales_original,"onUpdate:modelValue":l=>a.ad_sales_original=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_cost_original_edit:n(({row:a})=>[o(_,{modelValue:a.ad_cost_original,"onUpdate:modelValue":l=>a.ad_cost_original=l},null,8,["modelValue","onUpdate:modelValue"])]),total_sales_current_monthly_edit:n(({row:a})=>[o(_,{modelValue:a.total_sales_current_monthly_original,"onUpdate:modelValue":l=>a.total_sales_current_monthly_original=l},null,8,["modelValue","onUpdate:modelValue"])]),impression_edit:n(({row:a})=>[o(_,{modelValue:a.impression,"onUpdate:modelValue":l=>a.impression=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_click_edit:n(({row:a})=>[o(_,{modelValue:a.ad_click,"onUpdate:modelValue":l=>a.ad_click=l},null,8,["modelValue","onUpdate:modelValue"])]),ad_order_edit:n(({row:a})=>[o(_,{modelValue:a.ad_order,"onUpdate:modelValue":l=>a.ad_order=l},null,8,["modelValue","onUpdate:modelValue"])]),money_by_amazon_edit:n(({row:a})=>[o(_,{modelValue:a.money_by_amazon,"onUpdate:modelValue":l=>a.money_by_amazon=l},null,8,["modelValue","onUpdate:modelValue"])]),money_by_other_edit:n(({row:a})=>[o(_,{modelValue:a.money_by_other,"onUpdate:modelValue":l=>a.money_by_other=l},null,8,["modelValue","onUpdate:modelValue"])]),session_edit:n(({row:a})=>[o(_,{modelValue:a.session,"onUpdate:modelValue":l=>a.session=l},null,8,["modelValue","onUpdate:modelValue"])]),order_edit:n(({row:a})=>[o(_,{modelValue:a.order,"onUpdate:modelValue":l=>a.order=l},null,8,["modelValue","onUpdate:modelValue"])]),availableSalesDay_edit:n(({row:a})=>[o(_,{modelValue:a.availableSalesDay,"onUpdate:modelValue":l=>a.availableSalesDay=l},null,8,["modelValue","onUpdate:modelValue"])]),intransitInventory_edit:n(({row:a})=>[o(_,{modelValue:a.intransitInventory,"onUpdate:modelValue":l=>a.intransitInventory=l},null,8,["modelValue","onUpdate:modelValue"])]),overseasStorage_edit:n(({row:a})=>[o(_,{modelValue:a.overseasStorage,"onUpdate:modelValue":l=>a.overseasStorage=l},null,8,["modelValue","onUpdate:modelValue"])]),refundRate_edit:n(({row:a})=>[o(_,{modelValue:a.refundRate,"onUpdate:modelValue":l=>a.refundRate=l},null,8,["modelValue","onUpdate:modelValue"])]),_:1},16)])]),_:1}),o(Ae,{modelValue:v.value,"onUpdate:modelValue":t[6]||(t[6]=a=>v.value=a),title:"创建任务",width:"600"},{footer:n(()=>[p("div",$a,[o(c,{onClick:t[4]||(t[4]=a=>{v.value=!1,be($.value)})},{default:n(()=>[I("取消")]),_:1}),o(c,{type:"primary",onClick:t[5]||(t[5]=a=>Fe($.value))},{default:n(()=>[I(" 确认")]),_:1})])]),default:n(()=>[o(He,{ref_key:"taskDataFormRef",ref:$,model:s,rules:Ve,size:he.value,"label-position":"top","label-width":"auto","status-icon":"",style:{"max-width":"600px","border-radius":"10px"}},{default:n(()=>[T(u)==="day"?(m(),y("div",Ta,[(m(!0),y(O,null,ne(Be.value,a=>(m(),J(se,{key:a.field,label:a.title,prop:a.field},{default:n(()=>[o(q,{modelValue:s[a.field],"onUpdate:modelValue":l=>s[a.field]=l,placeholder:`请输入${a.title}`},null,8,["modelValue","onUpdate:modelValue","placeholder"])]),_:2},1032,["label","prop"]))),128))])):R("",!0),T(u)==="week"?(m(),y("div",Ma,[(m(!0),y(O,null,ne(Ge.value,a=>(m(),J(se,{key:a.field,label:a.title,prop:a.field},{default:n(()=>[o(q,{modelValue:s[a.field],"onUpdate:modelValue":l=>s[a.field]=l,style:{width:"100%"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label","prop"]))),128))])):R("",!0),T(u)==="month"?(m(),y("div",wa,[(m(!0),y(O,null,ne(Pe.value,a=>(m(),J(se,{key:a.field,label:a.title,prop:a.field},{default:n(()=>[o(q,{modelValue:s[a.field],"onUpdate:modelValue":l=>s[a.field]=l,placeholder:`请输入${a.title}`},null,8,["modelValue","onUpdate:modelValue","placeholder"])]),_:2},1032,["label","prop"]))),128))])):R("",!0)]),_:1},8,["model","rules","size"])]),_:1},8,["modelValue"])],64)}}});const Ba=ga(xa,[["__scopeId","data-v-8369f4c7"]]);export{Ba as default};
|