Browse Source

审核排序

lijianlin/feature-20250623120104-工作台与审核
lijianlin 13 hours ago
parent
commit
2194496b31
  1. 4
      pom.xml
  2. 3
      src/main/java/com/example/demo/domain/vo/AuditRequest.java
  3. 4
      src/main/java/com/example/demo/domain/vo/RechargeAudit.java
  4. 4
      src/main/java/com/example/demo/domain/vo/RefundAudit.java
  5. 6
      src/main/java/com/example/demo/service/WorkbenchService.java
  6. 25
      src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java
  7. 19
      src/main/resources/mapper/AuditMapper.xml

4
pom.xml

@ -175,7 +175,7 @@
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin>
<!-- <plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
@ -186,7 +186,7 @@
</exclude>
</excludes>
</configuration>
</plugin>
</plugin>-->
</plugins>
</build>

3
src/main/java/com/example/demo/domain/vo/AuditRequest.java

@ -13,6 +13,7 @@ public class AuditRequest {
private Integer auditId; //审核人id
private Integer action; //操作
private String rejectReason; //驳回理由
private String sortField; //排序字段
private String sortOrder; //排序顺序
}

4
src/main/java/com/example/demo/domain/vo/RechargeAudit.java

@ -1,6 +1,7 @@
package com.example.demo.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -19,6 +20,7 @@ import java.util.Date;
@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class RechargeAudit {
private static final long serialVersionUID = 1L;
@ -54,4 +56,6 @@ public class RechargeAudit {
private Date endTime; // 结束时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date auditTime; // 审核时间
private String sortField; //排序字段
private String sortOrder; //排序顺序
}

4
src/main/java/com/example/demo/domain/vo/RefundAudit.java

@ -1,6 +1,7 @@
package com.example.demo.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -19,6 +20,7 @@ import java.util.Date;
@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class RefundAudit {
private static final long serialVersionUID = 1L;
private String name; // 客户姓名
@ -51,4 +53,6 @@ public class RefundAudit {
private Date endTime; // 结束时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date auditTime; // 审核时间
private String sortField; //排序字段
private String sortOrder; //排序顺序
}

6
src/main/java/com/example/demo/service/WorkbenchService.java

@ -27,9 +27,11 @@ public interface WorkbenchService {
WorkbenchCard getGraph(String token, Date startDate, Date endDate, List<String> markets);
//根据类型获取年初至今的统计数据
Map<String, Integer> calculateAllSum(String market, Date startDate, Date endDate);
//获取该日期该市场的日
//获取该日期该市场的日
Integer calculateDayOverDay(String market,Date date);
//获取该日期该市场的周环比
//获取总体日环比
//Integer calculateAllDayOverDay(Date date);
//获取该日期该市场的周同比
Integer calculateWeekOverWeek(String market, Date date);
//获取与传入的日期相差XX天的日期
Date addDays(Date date, int days);

25
src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java

@ -233,7 +233,7 @@ public class WorkbenchServiceImpl implements WorkbenchService {
}
/*
获取该日期该市场的日
获取该日期该市场的日
*/
@Override
public Integer calculateDayOverDay(String market, Date date) {
@ -259,6 +259,29 @@ public class WorkbenchServiceImpl implements WorkbenchService {
double rate = ((double) (currentStatistics.getRechargeNum() - yesterdayStatistics.getRechargeNum()) / yesterdayStatistics.getRechargeNum()) * 100;
return (int) Math.round(rate);
}
// 计算所有市场总体日环比
/* @Override
public Integer calculateAllDayOverDay(Date date) {
//获取起止时间为当天零点与最后一秒
LocalDateTime startTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().with(LocalTime.MIN);
LocalDateTime endTime= startTime.plusDays(1).minusSeconds(1);
//int currentTotalRechargeNum = statisticsMapper.countAllMarketRechargeNum(
Date.from(startTime.atZone(ZoneId.systemDefault()).toInstant()),
Date.from(endTime.atZone(ZoneId.systemDefault()).toInstant()));
if (currentTotalRechargeNum == 0) return 0; // 避免除以零的情况
Date yesterday = addDays(date, -1); // 昨天
int yesterdayTotalRechargeNum = statisticsMapper.countAllMarketRechargeNum(
Date.from(yesterday.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().with(LocalTime.MIN).atZone(ZoneId.systemDefault()).toInstant()),
Date.from(yesterday.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().with(LocalTime.MAX).atZone(ZoneId.systemDefault()).toInstant()));
if (yesterdayTotalRechargeNum == 0) return 0; // 避免除以零的情况
double rate = ((double)(currentTotalRechargeNum - yesterdayTotalRechargeNum) / yesterdayTotalRechargeNum) * 100;
return (int)Math.round(rate);
}*/
/*
获取该日期该市场的周环比
*/

19
src/main/resources/mapper/AuditMapper.xml

@ -38,6 +38,7 @@
<!--多条件查询充值审核订单-->
<select id="selectRechargeBy" resultType="com.example.demo.domain.vo.RechargeAudit">
SELECT ugr.*,
(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold,
u.name as name,
u.market as market,
a1.admin_name as adminName,
@ -68,12 +69,20 @@
AND ugr.audit_status = #{rechargeAudit.auditStatus}
</if>
AND ugr.type = 0
</where>
<choose>
<when test="rechargeAudit.sortField != null and rechargeAudit.sortField.length > 0 or rechargeAudit.sortOrder != null and rechargeAudit.sortOrder.length > 0">
ORDER BY #{rechargeAudit.sortField} #{rechargeAudit.sortOrder}
</when>
<otherwise>
ORDER BY create_time DESC
</otherwise>
</choose>
</select>
<!--多条件查询退款审核订单-->
<select id="selectRefundBy" resultType="com.example.demo.domain.vo.RefundAudit">
SELECT ugr.*,
(COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold,
u.name as name,
u.market as market,
a1.admin_name as adminName,
@ -106,5 +115,13 @@
AND ugr.type = 2
</where>
<choose>
<when test="refundAudit.sortField != null and refundAudit.sortField.length > 0 or refundAudit.sortOrder != null and refundAudit.sortOrder.length > 0">
ORDER BY #{refundAudit.sortField} #{refundAudit.sortOrder}
</when>
<otherwise>
ORDER BY create_time DESC
</otherwise>
</choose>
</select>
</mapper>
Loading…
Cancel
Save