12 |
- import{_ as e,W as a,n as t,r as l,a as n,o as s,c as i,w as r,i as o,aD as d,b as u,d as c,e as p,f as m,g as f,j as h,h as _,k as g,l as y,F as b,m as x,t as C,u as q}from"./index-BAMs4g2N.js";import{_ as k}from"./uni-stat-breadcrumb.BZcF2zJw.js";import{_ as $}from"./download-excel.cahu2xNJ.js";import{_ as T}from"./uni-data-select.UeW2d6Yw.js";import{_ as v}from"./uni-stat-tabs.SY9F3mAw.js";import{_ as w}from"./uni-pagination.7SrZmsZK.js";import{_ as V}from"./unicloud-db.BGC9uZmF.js";import{e as D,f as S}from"./uni-pay-orders.CqmY5J70.js";import{g as j,s as z}from"./util.BXBhmNoy.js";import{t as E}from"./timeUtil.wwvjgelv.js";import"./uni-tooltip.BDlhxQuq.js";const I=a.database(),U={ascending:"asc",descending:"desc"};const F=e({data:()=>({collectionList:"uni-pay-orders",query:{appid:"",platform_id:"",uni_platform:"",version:"",pay_date:[],channel_code:""},where:"",orderby:"total_fee desc",orderByFieldName:"",selectedIndexs:[],options:{pageSize:20,pageCurrent:1,filterData:{},...D},imageStyles:{width:64,height:64},exportExcel:{filename:"价值用户排行.xls",type:"xls",fields:{"用户ID":"user_id","用户昵称":"nickname","支付金额":"total_fee","订单数量":"count"}},exportExcelData:[],dateTabs:{time:[],timeStr:"",index:null,list:[{_id:0,name:"今天"},{_id:1,name:"昨天"},{_id:7,name:"最近七天"},{_id:30,name:"最近30天"},{_id:90,name:"最近90天"}]}}),onLoad(){this._filter={}},onReady(){},methods:{payDatePicker(e){this.query.pay_date=e,this.search()},onqueryload(e){this.exportExcelData=e},getWhere(){let e="status>0",{pay_date:a,appid:t,version:l,uni_platform:n,channel_code:s}=this.query;return a&&2==a.length&&(e+=` && pay_date>=${a[0]} && pay_date<=${a[1]}`),t&&(e+=` && appid=='${t}'`),l&&(e+=` && stat_data.app_version=='${l}'`),n&&(e+=` && stat_data.platform=='${n}'`),s&&(e+=` && stat_data.channel=='${s}'`),e=e.trim(),console.log("where: ",e),e},search(){if(!this.query.appid)return;const e=this.getWhere();this.where=e,this.$nextTick((()=>{this.loadData()}))},loadData(e=!0){this.$refs.udb.loadData({clear:e})},onPageChanged(e){this.selectedIndexs.length=0,this.$refs.table.clearSelection(),this.$refs.udb.loadData({current:e.current})},navigateTo(e,a){t({url:e,events:{refreshData:()=>{this.loadData(a)}}})},selectedItems(){let e=this.$refs.udb.dataList;return this.selectedIndexs.map((a=>e[a]._id))},delTable(){this.$refs.udb.remove(this.selectedItems(),{success:e=>{this.$refs.table.clearSelection()}})},selectionChange(e){this.selectedIndexs=e.detail.index},sortChange(e,a){this.orderByFieldName=a,e.order?this.orderby=a+" "+U[e.order]:this.orderby="",this.$refs.table.clearSelection(),this.$nextTick((()=>{this.$refs.udb.loadData()}))},filterChange(e,a){this._filter[a]={type:e.filterType,value:e.filter};let t=S(this._filter,I.command);Object.keys(t).length?this.where=t:this.where="",this.$nextTick((()=>{this.$refs.udb.loadData()}))},platformChange(e,a,t,l){this.query.version=0,this.query.uni_platform=l.code},nameFormat:e=>e.user_id?e.nickname?`${e.user_id}(${e.nickname})`:e.user_id:"匿名用户",pageToUser(e){let{user_id:a}=e;t({url:`/pages/system/user/list?id=${a}`})},pageToOrder(e){let{user_id:a}=e;t({url:`/pages/uni-stat/pay-order/list/list?user_id=${a}`})},dateTabsChange(e,a){this.dateTabs.index=a;let t=j(e),l=E.getOffsetStartAndEnd("day",0).endTime;1==e&&(l=E.getOffsetStartAndEnd("day",0,t).endTime),this.query.pay_date=[t,l]}},watch:{query:{deep:!0,handler(e){this.search()}}},computed:{versionQuery(){const{appid:e,uni_platform:a}=this.query;return z({appid:e,uni_platform:a})},channelQuery(){const{appid:e,platform_id:a}=this.query;return z({appid:e,platform_id:a})}}},[["render",function(e,a,t,D,S,j){const z=l(n("uni-stat-breadcrumb"),k),E=o,I=x,U=l(n("download-excel"),$),F=l(n("uni-data-select"),T),L=l(n("uni-stat-tabs"),v),O=l(n("uni-datetime-picker"),d),Q=l(n("uni-th"),u),A=l(n("uni-tr"),c),N=l(n("uni-td"),p),P=q,W=l(n("uni-table"),m),B=l(n("uni-pagination"),w),M=l(n("unicloud-db"),V);return s(),i(E,null,{default:r((()=>[f(E,{class:"uni-header"},{default:r((()=>[f(E,{class:"uni-group"},{default:r((()=>[f(z)])),_:1}),f(E,{class:"uni-group"},{default:r((()=>[f(I,{class:"uni-button",type:"default",size:"mini",onClick:j.search},{default:r((()=>[h("搜索")])),_:1},8,["onClick"]),f(U,{class:"hide-on-phone",fields:S.exportExcel.fields,data:S.exportExcelData,type:S.exportExcel.type,name:S.exportExcel.filename},{default:r((()=>[f(I,{class:"uni-button",type:"primary",size:"mini"},{default:r((()=>[h("导出 Excel")])),_:1})])),_:1},8,["fields","data","type","name"])])),_:1})])),_:1}),f(E,{class:"uni-container"},{default:r((()=>[f(E,{class:"uni-stat--x flex p-1015"},{default:r((()=>[f(E,{class:"uni-stat--app-select"},{default:r((()=>[f(F,{collection:"opendb-app-list",field:"appid as value, name as text",orderby:"text asc",defItem:1,label:"应用选择",modelValue:S.query.appid,"onUpdate:modelValue":a[0]||(a[0]=e=>S.query.appid=e),clear:!1},null,8,["modelValue"]),f(F,{collection:"opendb-app-versions",where:j.versionQuery,class:"ml-m",field:"_id as value, version as text, uni_platform as label, create_date as date",format:"{label} - {text}",orderby:"date desc",label:"版本选择",modelValue:S.query.version_id,"onUpdate:modelValue":a[1]||(a[1]=e=>S.query.version_id=e)},null,8,["where","modelValue"])])),_:1})])),_:1}),f(E,{class:"uni-stat--x",style:{"margin-bottom":"0"}},{default:r((()=>[f(L,{label:"平台选择",type:"boldLine",mode:"platform",modelValue:S.query.platform_id,"onUpdate:modelValue":a[2]||(a[2]=e=>S.query.platform_id=e),onChange:j.platformChange},null,8,["modelValue","onChange"]),S.query.platform_id&&-1===S.query.platform_id.indexOf("==")?(s(),i(F,{key:0,ref:"version-select",collection:"uni-stat-app-channels",where:j.channelQuery,class:"p-channel",field:"channel_code as value, channel_name as text",orderby:"text asc",label:"渠道/场景值选择",modelValue:S.query.channel_code,"onUpdate:modelValue":a[3]||(a[3]=e=>S.query.channel_code=e)},null,8,["where","modelValue"])):_("",!0)])),_:1}),f(E,{class:"flex"},{default:r((()=>[f(L,{type:"box",current:S.dateTabs.index,tabs:S.dateTabs.list,onChange:j.dateTabsChange},null,8,["current","tabs","onChange"]),f(O,{type:"datetimerange",modelValue:S.query.pay_date,"onUpdate:modelValue":a[4]||(a[4]=e=>S.query.pay_date=e),end:Date.now(),"return-type":"timestamp","clear-icon":!0,class:"uni-stat-datetime-picker",onChange:a[5]||(a[5]=e=>S.dateTabs.index=null)},null,8,["modelValue","end"])])),_:1}),f(M,{ref:"udb",collection:S.collectionList,field:"user_id,nickname,uni_platform,status,total_fee,refund_fee,appid,pay_date",where:S.where,"page-data":"replace",orderby:S.orderby,getcount:!0,"page-size":S.options.pageSize,"page-current":S.options.pageCurrent,groupby:"user_id","group-field":"sum(total_fee) as total_fee,sum(refund_fee) as refund_fee, sum(subtract(total_fee,refund_fee)) as reality_fee, sum(1) as count,last(nickname) as nickname",options:S.options,loadtime:"manual",onLoad:j.onqueryload},{default:r((({data:e,pagination:t,loading:l,error:n,options:o})=>[f(W,{ref:"table",loading:l,emptyText:n.message||l?"请求中...":"没有更多数据",border:"",stripe:"",type:"",style:{"min-height":"900px"},onSelectionChange:j.selectionChange},{default:r((()=>[f(A,null,{default:r((()=>[f(Q,{align:"center"},{default:r((()=>[h("排名")])),_:1}),f(Q,{align:"center",sortable:"",onSortChange:a[6]||(a[6]=e=>j.sortChange(e,"user_id"))},{default:r((()=>[h("用户")])),_:1}),f(Q,{align:"center",sortable:"",onSortChange:a[7]||(a[7]=e=>j.sortChange(e,"reality_fee"))},{default:r((()=>[h("支付金额(不含退款)")])),_:1}),f(Q,{align:"center",sortable:"",onSortChange:a[8]||(a[8]=e=>j.sortChange(e,"count"))},{default:r((()=>[h("订单数量")])),_:1})])),_:1}),(s(!0),g(b,null,y(e,((e,a)=>(s(),i(A,{key:a},{default:r((()=>[f(N,{align:"center"},{default:r((()=>[h(C(parseInt(a+1+(t.current-1)*t.size)),1)])),_:2},1024),f(N,{align:"center"},{default:r((()=>[f(P,{class:"text-btn",onClick:a=>j.pageToUser(e)},{default:r((()=>[h(C(j.nameFormat(e)),1)])),_:2},1032,["onClick"])])),_:2},1024),f(N,{align:"center"},{default:r((()=>[h(C((e.reality_fee/100).toFixed(2)),1)])),_:2},1024),f(N,{align:"center"},{default:r((()=>[f(P,{class:"text-btn",onClick:a=>j.pageToOrder(e)},{default:r((()=>[h(C(e.count),1)])),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1024)))),128))])),_:2},1032,["loading","emptyText","onSelectionChange"]),f(E,{class:"uni-pagination-box"},{default:r((()=>[f(B,{"show-icon":"","page-size":t.size,modelValue:t.current,"onUpdate:modelValue":e=>t.current=e,total:t.count,onChange:j.onPageChanged},null,8,["page-size","modelValue","onUpdate:modelValue","total","onChange"])])),_:2},1024)])),_:1},8,["collection","where","orderby","page-size","page-current","options","onLoad"])])),_:1})])),_:1})}],["__scopeId","data-v-940eb4a2"]]);export{F as default};
|