Files
weiyu/deploy/server/admin/p__Dashboard__Bi__Service__Agent.a5483f2f.async.js
jack ning 4c7623244a update
2025-07-30 11:08:35 +08:00

1 line
13 KiB
JavaScript

"use strict";(self.webpackChunkadmin=self.webpackChunkadmin||[]).push([[23],{71631:function(e,t,a){a.r(t);var n=a(90819),i=a.n(n),s=a(89933),r=a.n(s),o=a(45332),l=a.n(o),d=a(44194),c=a(41123),u=a(34251),g=a(8957),f=a(89176),m=a(71373),v=a(63065),x=a(43413),h=a(10337),p=a(77407),y=a(59946),M=a(3867),j=a(5858),b=a(9248),k=a(14318),Z=a(68525),S=a(35911),T=a(94011),C=a(57039),w=a(60107),Y=a(14546),D=a(18886),R=a(21474),A=a(20621),U=a(7999),F=a(28977),O=a.n(F),I=a(31881),z=a(75699),P=a(25191),B=a(32597),L=a(31549),E=c.default.RangePicker,H=u.Z.Option;t.default=function(){var e=(0,z.useIntl)(),t=(0,d.useState)(!1),a=l()(t,2),n=a[0],s=a[1],o=(0,I.u)((function(e){return e.currentOrg})),c=(0,d.useState)([]),F=l()(c,2),W=F[0],N=F[1],Q=(0,d.useState)({onlineAgents:0,totalSessions:0,avgResponseTime:0,avgSatisfaction:0,onlineAgentCount:0,offlineAgentCount:0,avgFirstResponseTime:0,avgConversationTime:0}),q=l()(Q,2),G=q[0],J=q[1],_=(0,d.useState)(O()().startOf("day")),K=l()(_,2),V=K[0],X=K[1],$=(0,d.useState)(O()().endOf("day")),ee=l()($,2),te=ee[0],ae=ee[1],ne=(0,d.useState)("today"),ie=l()(ne,2),se=ie[0],re=ie[1],oe=(0,d.useState)([O()().startOf("day"),O()().endOf("day")]),le=l()(oe,2),de=le[0],ce=le[1],ue=(0,d.useState)({current:1,pageSize:20,total:0}),ge=l()(ue,2),fe=ge[0],me=ge[1],ve=(0,d.useState)(P.whQ),xe=l()(ve,2),he=xe[0],pe=xe[1],ye=(0,d.useState)(),Me=l()(ye,2),je=Me[0],be=Me[1],ke=(0,d.useState)(),Ze=l()(ke,2),Se=Ze[0],Te=Ze[1],Ce=(0,d.useState)([]),we=l()(Ce,2),Ye=we[0],De=we[1],Re=(0,d.useState)([]),Ae=l()(Re,2),Ue=Ae[0],Fe=Ae[1],Oe=[{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.today"}),value:"today"},{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.yesterday"}),value:"yesterday"},{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.week"}),value:"week"},{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.lastWeek"}),value:"lastWeek"},{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.month"}),value:"month"},{label:(0,L.jsx)(z.FormattedMessage,{id:"ticket.statistic.timeRange.custom"}),value:"custom"}];(0,d.useEffect)((function(){null!=o&&o.uid&&((0,A.LE)({orgUid:o.uid,pageNumber:0,pageSize:100}).then((function(e){var t;200===e.code&&De((null===(t=e.data)||void 0===t?void 0:t.content)||[])})),(0,U._t)({orgUid:o.uid,pageNumber:0,pageSize:100}).then((function(e){var t;200===e.code&&Fe((null===(t=e.data)||void 0===t?void 0:t.content)||[])})))}),[o]);var Ie=function(){var e=r()(i()().mark((function e(){var t,a,n,r,l,d,c=arguments;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=c.length>0&&void 0!==c[0]?c[0]:1,a=c.length>1&&void 0!==c[1]?c[1]:20,s(!0),e.prev=3,n={pageNumber:t-1,pageSize:a,orgUid:null==o?void 0:o.uid,startDate:de[0].format("YYYY-MM-DD"),endDate:de[1].format("YYYY-MM-DD"),type:he,workgroupUid:he===P.v5D?je:void 0,agentUid:he===P.fyH?Se:void 0},e.next=7,(0,R.RU)(n);case 7:r=e.sent,console.log("queryStatisticServiceByDate response:",r.data,n),200===r.code&&r.data&&(l=r.data,me({current:t,pageSize:a,total:1}),d=[{key:l.agentUid||"unknown",agentUid:l.agentUid||"unknown",nickname:l.agentUid||"Unknown Agent",avatar:"",totalSessions:l.acceptedThreadCount||0,avgResponseTime:l.avgFirstResponseTime?Math.round(l.avgFirstResponseTime/60):0,avgSatisfaction:l.satisfactionRate||0,avgConversationTime:l.avgConversationTime?Math.round(l.avgConversationTime/60):0,onlineTime:l.onlineTime?Math.round(l.onlineTime/3600):0,busyTime:l.busyTime?Math.round(l.busyTime/3600):0,agentMessageCount:l.agentMessageCount||0,visitorMessageCount:l.visitorMessageCount||0,avgMessagePerThread:l.avgMessagePerThread||0}],N(d)),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(3),g.ZP.error("获取客服数据失败"),console.error("获取客服数据失败:",e.t0);case 16:return e.prev=16,s(!1),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[3,12,16,19]])})));return function(){return e.apply(this,arguments)}}();(0,d.useEffect)((function(){if("custom"===se)X(V),ae(te);else{var e=O()();"today"===se?(X(e.startOf("day")),ae(e.endOf("day"))):"yesterday"===se?(X(e.subtract(1,"day").startOf("day")),ae(e.subtract(1,"day").endOf("day"))):"week"===se?(X(e.startOf("week")),ae(e.endOf("week"))):"lastWeek"===se?(X(e.subtract(1,"week").startOf("week")),ae(e.subtract(1,"week").endOf("week"))):"month"===se&&(X(e.startOf("month")),ae(e.endOf("month")))}}),[se]),(0,d.useEffect)((function(){ce([V,te])}),[V,te]);var ze=function(){var e=r()(i()().mark((function e(){var t,a,n;return i()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t={orgUid:null==o?void 0:o.uid,startDate:de[0].format("YYYY-MM-DD"),endDate:de[1].format("YYYY-MM-DD"),type:he,workgroupUid:he===P.v5D?je:void 0,agentUid:he===P.fyH?Se:void 0},e.next=4,(0,R.RU)(t);case 4:a=e.sent,console.log("queryStatisticServiceByDate response:",a.data,t),200===a.code&&a.data&&(n=a.data,J({onlineAgents:n.onlineAgentCount||0,totalSessions:n.acceptedThreadCount||0,avgResponseTime:n.avgFirstResponseTime?Math.round(n.avgFirstResponseTime/60):0,avgSatisfaction:n.satisfactionRate||0,onlineAgentCount:n.onlineAgentCount||0,offlineAgentCount:n.offlineAgentCount||0,avgFirstResponseTime:n.avgFirstResponseTime?Math.round(n.avgFirstResponseTime/60):0,avgConversationTime:n.avgConversationTime?Math.round(n.avgConversationTime/60):0})),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(0),console.error("获取统计数据失败:",e.t0);case 12:case"end":return e.stop()}}),e,null,[[0,9]])})));return function(){return e.apply(this,arguments)}}();(0,d.useEffect)((function(){ze(),Ie()}),[de,he,je,Se]);var Pe=[{title:e.formatMessage({id:"bi.agent.table.name"}),dataIndex:"nickname",key:"nickname",render:function(e,t){return(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,L.jsx)(f.Z,{src:t.avatar,style:{marginRight:8}}),e]})}},{title:e.formatMessage({id:"bi.agent.table.totalSessions"}),dataIndex:"totalSessions",key:"totalSessions",sorter:function(e,t){return e.totalSessions-t.totalSessions}},{title:e.formatMessage({id:"bi.agent.table.avgResponseTime"}),dataIndex:"avgResponseTime",key:"avgResponseTime",render:function(t){return"".concat(t).concat(e.formatMessage({id:"bi.time.minute"}))}},{title:e.formatMessage({id:"bi.agent.table.avgConversationTime"}),dataIndex:"avgConversationTime",key:"avgConversationTime",render:function(t){return"".concat(t).concat(e.formatMessage({id:"bi.time.minute"}))}},{title:e.formatMessage({id:"bi.agent.table.onlineTime"}),dataIndex:"onlineTime",key:"onlineTime",render:function(t){return"".concat(t).concat(e.formatMessage({id:"bi.time.hour"}))}},{title:e.formatMessage({id:"bi.agent.table.busyTime"}),dataIndex:"busyTime",key:"busyTime",render:function(t){return"".concat(t).concat(e.formatMessage({id:"bi.time.hour"}))}},{title:e.formatMessage({id:"bi.agent.table.agentMessageCount"}),dataIndex:"agentMessageCount",key:"agentMessageCount"},{title:e.formatMessage({id:"bi.agent.table.visitorMessageCount"}),dataIndex:"visitorMessageCount",key:"visitorMessageCount"},{title:e.formatMessage({id:"bi.agent.table.avgMessagePerThread"}),dataIndex:"avgMessagePerThread",key:"avgMessagePerThread"},{title:e.formatMessage({id:"bi.agent.table.satisfaction"}),dataIndex:"avgSatisfaction",key:"avgSatisfaction",render:function(t){return(0,L.jsxs)("div",{children:[(0,L.jsx)("span",{style:{marginRight:8},children:t>0?"".concat(t,"%"):e.formatMessage({id:"bi.common.noRating"})}),t>0&&(0,L.jsx)(m.Z,{percent:t,size:"small",showInfo:!1})]})}}];return(0,L.jsxs)("div",{style:{padding:"24px"},children:[(0,L.jsxs)("div",{style:{marginBottom:"24px"},children:[(0,L.jsx)("h2",{children:e.formatMessage({id:"bi.agent.title"})}),(0,L.jsxs)("p",{children:[e.formatMessage({id:"bi.agent.description"}),"today"===se&&(0,L.jsxs)("span",{style:{color:"#666",marginLeft:8},children:["(",V.format("YYYY-MM-DD"),")"]}),"yesterday"===se&&(0,L.jsxs)("span",{style:{color:"#666",marginLeft:8},children:["(",V.format("YYYY-MM-DD"),")"]}),("week"===se||"lastWeek"===se||"month"===se||"custom"===se)&&(0,L.jsxs)("span",{style:{color:"#666",marginLeft:8},children:["(",V.format("YYYY-MM-DD")," ~ ",te.format("YYYY-MM-DD"),")"]})]})]}),(0,L.jsx)(v.Z,{style:{marginBottom:"24px"},children:(0,L.jsx)(x.Z,{direction:"vertical",style:{width:"100%"},children:(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,L.jsxs)(x.Z,{wrap:!0,children:[(0,L.jsx)(h.ZP.Group,{value:se,onChange:function(e){return re(e.target.value)},children:Oe.map((function(e){return(0,L.jsx)(h.ZP.Button,{value:e.value,children:e.label},e.value)}))}),"custom"===se&&(0,L.jsx)(E,{value:[V,te],onChange:function(e){X(e[0]),ae(e[1])}})]}),(0,L.jsxs)(x.Z,{wrap:!0,children:[(0,L.jsxs)(u.Z,{value:he,style:{width:120},onChange:function(e){pe(e),be(void 0),Te(void 0)},children:[(0,L.jsx)(H,{value:P.whQ,children:e.formatMessage({id:"bi.statistic.level.organization"})}),(0,L.jsx)(H,{value:P.v5D,children:e.formatMessage({id:"bi.statistic.level.workgroup"})}),(0,L.jsx)(H,{value:P.fyH,children:e.formatMessage({id:"bi.statistic.level.agent"})})]}),he===P.v5D&&(0,L.jsx)(u.Z,{value:je,style:{width:150},onChange:be,placeholder:e.formatMessage({id:"bi.statistic.level.workgroup"}),allowClear:!0,children:Ye.map((function(e){return(0,L.jsx)(H,{value:e.uid,children:e.nickname},e.uid)}))}),he===P.fyH&&(0,L.jsx)(u.Z,{value:Se,style:{width:150},onChange:Te,placeholder:e.formatMessage({id:"bi.statistic.level.agent"}),allowClear:!0,children:Ue.map((function(e){return(0,L.jsx)(H,{value:e.uid,children:e.nickname},e.uid)}))}),(0,L.jsx)(p.ZP,{type:"primary",icon:(0,L.jsx)(S.Z,{}),onClick:function(){return Ie()},loading:n,children:e.formatMessage({id:"bi.common.refresh"})}),(0,L.jsx)(y.Z,{title:e.formatMessage({id:"ticket.statistic.filter.export"}),children:(0,L.jsx)(p.ZP,{icon:(0,L.jsx)(T.Z,{}),onClick:function(){var e=localStorage.getItem(P.LA8);window.open((0,B.kG)()+"/api/v1/service/statistic/export?"+new URLSearchParams({type:he,startDate:de[0].format("YYYY-MM-DD"),endDate:de[1].format("YYYY-MM-DD"),workgroupUid:he===P.v5D?je:"",agentUid:he===P.fyH?Se:"",orgUid:(null==o?void 0:o.uid)||"",accessToken:e||""}).toString())},children:e.formatMessage({id:"ticket.statistic.filter.export"})})})]})]})})}),(0,L.jsxs)(M.Z,{spinning:n,children:[(0,L.jsxs)(j.Z,{gutter:16,style:{marginBottom:"24px"},children:[(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.onlineAgents"}),value:G.onlineAgentCount,prefix:(0,L.jsx)(C.Z,{}),valueStyle:{color:"#3f8600"}})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.offlineAgents"}),value:G.offlineAgentCount,prefix:(0,L.jsx)(C.Z,{}),valueStyle:{color:"#ff4d4f"}})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.totalSessions"}),value:G.totalSessions,prefix:(0,L.jsx)(w.Z,{}),valueStyle:{color:"#1890ff"}})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.avgResponseTime"}),value:G.avgResponseTime,prefix:(0,L.jsx)(Y.Z,{}),valueStyle:{color:"#722ed1"},suffix:e.formatMessage({id:"bi.time.minute"})})})})]}),(0,L.jsxs)(j.Z,{gutter:16,style:{marginBottom:"24px"},children:[(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.avgFirstResponseTime"}),value:G.avgFirstResponseTime,prefix:(0,L.jsx)(Y.Z,{}),valueStyle:{color:"#13c2c2"},suffix:e.formatMessage({id:"bi.time.minute"})})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.avgConversationTime"}),value:G.avgConversationTime,prefix:(0,L.jsx)(Y.Z,{}),valueStyle:{color:"#fa8c16"},suffix:e.formatMessage({id:"bi.time.minute"})})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.avgSatisfaction"}),value:G.avgSatisfaction,prefix:(0,L.jsx)(D.Z,{}),valueStyle:{color:"#eb2f96"},suffix:"%"})})}),(0,L.jsx)(b.Z,{span:6,children:(0,L.jsx)(v.Z,{children:(0,L.jsx)(k.Z,{title:e.formatMessage({id:"bi.agent.card.totalAgents"}),value:G.onlineAgentCount+G.offlineAgentCount,prefix:(0,L.jsx)(C.Z,{}),valueStyle:{color:"#52c41a"}})})})]}),(0,L.jsx)(v.Z,{title:e.formatMessage({id:"bi.agent.ranking"}),style:{marginBottom:"24px"},children:(0,L.jsx)(j.Z,{gutter:16,children:W.sort((function(e,t){return t.totalSessions-e.totalSessions})).slice(0,3).map((function(t,a){return(0,L.jsx)(b.Z,{span:8,children:(0,L.jsxs)(v.Z,{size:"small",style:{textAlign:"center"},children:[(0,L.jsx)(f.Z,{size:64,src:t.avatar}),(0,L.jsxs)("div",{style:{marginTop:8},children:[(0,L.jsx)("div",{style:{fontWeight:"bold"},children:t.nickname}),(0,L.jsxs)("div",{style:{color:"#666"},children:[t.totalSessions,e.formatMessage({id:"bi.time.unit"})]})]})]})},t.key)}))})}),(0,L.jsx)(v.Z,{title:e.formatMessage({id:"bi.agent.detailData"}),children:(0,L.jsx)(Z.Z,{columns:Pe,dataSource:W,pagination:{current:fe.current,pageSize:fe.pageSize,total:fe.total,showSizeChanger:!0,showQuickJumper:!0,showTotal:function(e,t){return"".concat(t[0],"-").concat(t[1]," of ").concat(e," items")}},onChange:function(e){Ie(e.current,e.pageSize)},size:"middle"})})]})]})}}}]);