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