张延森 il y a 3 ans
Parent
révision
733a39a69f

+ 66
- 0
src/main/java/com/njyunzhi/pet_identity/controller/StatisController.java Voir le fichier

@@ -0,0 +1,66 @@
1
+package com.njyunzhi.pet_identity.controller;
2
+
3
+import com.njyunzhi.pet_identity.common.BaseController;
4
+import com.njyunzhi.pet_identity.common.Constants;
5
+import com.njyunzhi.pet_identity.common.DateUtils;
6
+import com.njyunzhi.pet_identity.common.ResponseBean;
7
+import com.njyunzhi.pet_identity.service.ITaApplicationService;
8
+import com.njyunzhi.pet_identity.service.ITaPetIdentityService;
9
+import com.njyunzhi.pet_identity.vo.StatisValue;
10
+import io.swagger.annotations.Api;
11
+import io.swagger.annotations.ApiOperation;
12
+import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.web.bind.annotation.RequestMapping;
14
+import org.springframework.web.bind.annotation.RequestMethod;
15
+import org.springframework.web.bind.annotation.RestController;
16
+
17
+import java.time.LocalDateTime;
18
+import java.util.ArrayList;
19
+import java.util.List;
20
+
21
+@Api(tags = "查询统计")
22
+@RestController
23
+@RequestMapping("/admin/statis")
24
+public class StatisController extends BaseController {
25
+
26
+    @Autowired
27
+    ITaPetIdentityService iTaPetIdentityService;
28
+
29
+    @Autowired
30
+    ITaApplicationService iTaApplicationService;
31
+
32
+    /**
33
+     * 工作台通用统计
34
+     * @return
35
+     */
36
+    @RequestMapping(value="/common",method= RequestMethod.GET)
37
+    @ApiOperation(value="工作台通用统计", notes = "工作台通用统计", httpMethod = "GET", response = ResponseBean.class)
38
+    public ResponseBean getStatisCommon() throws Exception {
39
+        String today = DateUtils.today();
40
+        LocalDateTime todayStart = DateUtils.getDayStart(today);
41
+        LocalDateTime todayEnd = DateUtils.getDayEnd(today);
42
+
43
+        // 把 today 的日期换成 01 就是月初
44
+        String[] parts = today.split("-");
45
+        parts[2] = "01";
46
+        String monthFirstDay = String.join("-", parts);
47
+        LocalDateTime monthStart = DateUtils.getDayStart(monthFirstDay);
48
+
49
+        int personTotal = iTaPersonService.countRegiste();
50
+        int cartTotal = iTaPetIdentityService.countNotDelete();
51
+        int notAuditNum = iTaApplicationService.countBy("status", Constants.WORKFLOW_STATUS_PROCESSING, true);
52
+        int rejectNum = iTaApplicationService.countBy("verify_status", Constants.AUDIT_STATUS_REJECT, true);
53
+        int todayApplyNum = iTaApplicationService.countBetween(todayStart, todayEnd);
54
+        int monthApplyNum = iTaApplicationService.countBetween(monthStart, todayEnd);
55
+
56
+        List<StatisValue> result = new ArrayList<>();
57
+        result.add(new StatisValue().setName("personTotal").setValue(String.valueOf(personTotal)));
58
+        result.add(new StatisValue().setName("cartTotal").setValue(String.valueOf(cartTotal)));
59
+        result.add(new StatisValue().setName("notAuditNum").setValue(String.valueOf(notAuditNum)));
60
+        result.add(new StatisValue().setName("rejectNum").setValue(String.valueOf(rejectNum)));
61
+        result.add(new StatisValue().setName("todayApplyNum").setValue(String.valueOf(todayApplyNum)));
62
+        result.add(new StatisValue().setName("monthApplyNum").setValue(String.valueOf(monthApplyNum)));
63
+
64
+        return ResponseBean.success(result);
65
+    }
66
+}

+ 3
- 0
src/main/java/com/njyunzhi/pet_identity/mapper/TaPersonMapper.java Voir le fichier

@@ -3,6 +3,7 @@ package com.njyunzhi.pet_identity.mapper;
3 3
 import com.njyunzhi.pet_identity.entity.TaPerson;
4 4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Select;
6 7
 
7 8
 /**
8 9
  * <p>
@@ -15,4 +16,6 @@ import org.apache.ibatis.annotations.Mapper;
15 16
 @Mapper
16 17
 public interface TaPersonMapper extends BaseMapper<TaPerson> {
17 18
 
19
+    @Select("SELECT COUNT(*) FROM ta_person WHERE phone is not null")
20
+    int countRegiste();
18 21
 }

+ 3
- 0
src/main/java/com/njyunzhi/pet_identity/mapper/TaPetIdentityMapper.java Voir le fichier

@@ -3,6 +3,7 @@ package com.njyunzhi.pet_identity.mapper;
3 3
 import com.njyunzhi.pet_identity.entity.TaPetIdentity;
4 4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Select;
6 7
 
7 8
 /**
8 9
  * <p>
@@ -15,4 +16,6 @@ import org.apache.ibatis.annotations.Mapper;
15 16
 @Mapper
16 17
 public interface TaPetIdentityMapper extends BaseMapper<TaPetIdentity> {
17 18
 
19
+    @Select("SELECT COUNT(*) FROM ta_pet_identity WHERE status > -1")
20
+    int countNotDelete();
18 21
 }

+ 3
- 0
src/main/java/com/njyunzhi/pet_identity/service/ITaApplicationService.java Voir le fichier

@@ -3,6 +3,8 @@ package com.njyunzhi.pet_identity.service;
3 3
 import com.njyunzhi.pet_identity.entity.TaApplication;
4 4
 import com.baomidou.mybatisplus.extension.service.IService;
5 5
 
6
+import java.time.LocalDateTime;
7
+
6 8
 /**
7 9
  * <p>
8 10
  * 我的申请 服务类
@@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
13 15
  */
14 16
 public interface ITaApplicationService extends IBaseService<TaApplication> {
15 17
 
18
+    int countBetween(LocalDateTime dayStart, LocalDateTime dayEnd);
16 19
 }

+ 1
- 0
src/main/java/com/njyunzhi/pet_identity/service/ITaPersonService.java Voir le fichier

@@ -13,4 +13,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
13 13
  */
14 14
 public interface ITaPersonService extends IBaseService<TaPerson> {
15 15
 
16
+    int countRegiste();
16 17
 }

+ 2
- 0
src/main/java/com/njyunzhi/pet_identity/service/ITaPetIdentityService.java Voir le fichier

@@ -19,4 +19,6 @@ public interface ITaPetIdentityService extends IBaseService<TaPetIdentity> {
19 19
     boolean extendDate(TaPetIdentity taPetIdentity) throws Exception;
20 20
 
21 21
     TaPetIdentity getByPet(String petId, String personId);
22
+
23
+    int countNotDelete();
22 24
 }

+ 13
- 0
src/main/java/com/njyunzhi/pet_identity/service/impl/TaApplicationServiceImpl.java Voir le fichier

@@ -1,11 +1,15 @@
1 1
 package com.njyunzhi.pet_identity.service.impl;
2 2
 
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.njyunzhi.pet_identity.common.Constants;
3 5
 import com.njyunzhi.pet_identity.entity.TaApplication;
4 6
 import com.njyunzhi.pet_identity.mapper.TaApplicationMapper;
5 7
 import com.njyunzhi.pet_identity.service.ITaApplicationService;
6 8
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 9
 import org.springframework.stereotype.Service;
8 10
 
11
+import java.time.LocalDateTime;
12
+
9 13
 /**
10 14
  * <p>
11 15
  * 我的申请 服务实现类
@@ -17,4 +21,13 @@ import org.springframework.stereotype.Service;
17 21
 @Service
18 22
 public class TaApplicationServiceImpl extends BaseServiceImpl<TaApplicationMapper, TaApplication> implements ITaApplicationService {
19 23
 
24
+    @Override
25
+    public int countBetween(LocalDateTime dayStart, LocalDateTime dayEnd) {
26
+        QueryWrapper<TaApplication> queryWrapper = new QueryWrapper<>();
27
+        queryWrapper.ge("create_date", dayStart);
28
+        queryWrapper.le("create_date", dayEnd);
29
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
30
+
31
+        return count(queryWrapper);
32
+    }
20 33
 }

+ 4
- 0
src/main/java/com/njyunzhi/pet_identity/service/impl/TaPersonServiceImpl.java Voir le fichier

@@ -17,4 +17,8 @@ import org.springframework.stereotype.Service;
17 17
 @Service
18 18
 public class TaPersonServiceImpl extends BaseServiceImpl<TaPersonMapper, TaPerson> implements ITaPersonService {
19 19
 
20
+    @Override
21
+    public int countRegiste() {
22
+        return baseMapper.countRegiste();
23
+    }
20 24
 }

+ 5
- 0
src/main/java/com/njyunzhi/pet_identity/service/impl/TaPetIdentityServiceImpl.java Voir le fichier

@@ -89,4 +89,9 @@ public class TaPetIdentityServiceImpl extends BaseServiceImpl<TaPetIdentityMappe
89 89
 
90 90
         return getOne(queryWrapper);
91 91
     }
92
+
93
+    @Override
94
+    public int countNotDelete() {
95
+        return baseMapper.countNotDelete();
96
+    }
92 97
 }

+ 2
- 0
src/main/java/com/njyunzhi/pet_identity/vo/StatisValue.java Voir le fichier

@@ -4,9 +4,11 @@ package com.njyunzhi.pet_identity.vo;
4 4
 import io.swagger.annotations.ApiModel;
5 5
 import io.swagger.annotations.ApiModelProperty;
6 6
 import lombok.Data;
7
+import lombok.experimental.Accessors;
7 8
 
8 9
 @ApiModel(description = "统计值")
9 10
 @Data
11
+@Accessors(chain = true)
10 12
 public class StatisValue {
11 13
 
12 14
     @ApiModelProperty("指标名称")