Package com.bytedesk.ticket.statistic
Class TicketStatisticService
java.lang.Object
com.bytedesk.ticket.statistic.TicketStatisticService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AgentRepositoryprivate final AuthServiceprivate final DepartmentRepositoryprivate final OrganizationRepositoryprivate final TicketStatisticRepositoryprivate final TicketRepositoryprivate final UidUtils -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncalculateAssigneeStatistics(String assigneeUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算处理人的工单统计private voidcalculateBasicStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算基本统计calculateDepartmentStatistics(String departmentUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算部门的工单统计calculateOrgStatistics(String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算组织的工单统计private voidcalculatePriorityStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算优先级统计private voidcalculateSatisfactionStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算满意度统计private TicketStatisticResponsecalculateStatistics(List<TicketEntity> tickets, String orgUid, String departmentUid, String assigneeUid, ZonedDateTime startTime, ZonedDateTime endTime, String type, boolean shouldSave) 计算统计数据private voidcalculateStatusStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算状态统计private voidcalculateTimeStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算时间统计void计算所有工单统计calculateWorkgroupStatistics(String workgroupUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算工作组的工单统计voidclearUnreadStatistics(String ticketUid, String userUid) 清除未读统计private BooleanisAllStatisticsZero(TicketStatisticEntity statistic) 判断统计指标是否全为0private BooleanisSLACompliant(TicketEntity ticket) 判断工单是否符合SLAqueryAssigneeStatistics(String assigneeUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询处理人统计queryByDate(TicketStatisticRequest request) 查询某时间段统计queryDepartmentStatistics(String departmentUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询部门统计queryOrgStatistics(String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询组织统计queryWorkgroupStatistics(String workgroupUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询工作组统计voidupdateUnreadStatistics(String ticketUid, String userUid) 更新未读统计
-
Field Details
-
ticketRepository
-
statisticRepository
-
organizationRepository
-
departmentRepository
-
agentRepository
-
uidUtils
-
authService
-
-
Constructor Details
-
TicketStatisticService
public TicketStatisticService()
-
-
Method Details
-
queryByDate
查询某时间段统计 -
queryOrgStatistics
public TicketStatisticResponse queryOrgStatistics(String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询组织统计 -
queryWorkgroupStatistics
public TicketStatisticResponse queryWorkgroupStatistics(String workgroupUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询工作组统计 -
queryDepartmentStatistics
public TicketStatisticResponse queryDepartmentStatistics(String departmentUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询部门统计 -
queryAssigneeStatistics
public TicketStatisticResponse queryAssigneeStatistics(String assigneeUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime) 查询处理人统计 -
calculateTodayStatistics
public void calculateTodayStatistics()计算所有工单统计 -
calculateOrgStatistics
@Transactional public TicketStatisticResponse calculateOrgStatistics(String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算组织的工单统计 -
calculateWorkgroupStatistics
@Transactional public TicketStatisticResponse calculateWorkgroupStatistics(String workgroupUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算工作组的工单统计 -
calculateDepartmentStatistics
@Transactional public TicketStatisticResponse calculateDepartmentStatistics(String departmentUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算部门的工单统计 -
calculateAssigneeStatistics
@Transactional public TicketStatisticResponse calculateAssigneeStatistics(String assigneeUid, String orgUid, ZonedDateTime startTime, ZonedDateTime endTime, boolean shouldSave) 计算处理人的工单统计 -
calculateStatistics
private TicketStatisticResponse calculateStatistics(List<TicketEntity> tickets, String orgUid, String departmentUid, String assigneeUid, ZonedDateTime startTime, ZonedDateTime endTime, String type, boolean shouldSave) 计算统计数据 -
calculateBasicStatistics
计算基本统计 -
calculateStatusStatistics
计算状态统计 -
calculatePriorityStatistics
private void calculatePriorityStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算优先级统计 -
calculateTimeStatistics
计算时间统计 -
calculateSatisfactionStatistics
private void calculateSatisfactionStatistics(TicketStatisticEntity statistic, List<TicketEntity> tickets) 计算满意度统计 -
isSLACompliant
判断工单是否符合SLA -
updateUnreadStatistics
更新未读统计 -
clearUnreadStatistics
清除未读统计 -
isAllStatisticsZero
判断统计指标是否全为0
-