Blame view

fw-valhalla-service/src/main/java/cn/fw/valhalla/service/data/impl/StammkundePoolServiceImpl.java 5.83 KB
7c9f5c47   张志伟   :art:
1
2
3
4
  package cn.fw.valhalla.service.data.impl;
  
  import cn.fw.valhalla.dao.mapper.StammkundePoolMapper;
  import cn.fw.valhalla.domain.db.pool.StammkundePool;
18a818bd   张志伟   :construction:
5
  import cn.fw.valhalla.domain.dto.StammkundeDto;
39e85d50   张志伟   :art:
6
  import cn.fw.valhalla.domain.dto.StammkundePoolDTO;
bfac3874   xianpengcheng   public_report_dat...
7
8
  import cn.fw.valhalla.domain.dto.StammkundePoolReportDTO;
  import cn.fw.valhalla.domain.dto.StammkundePoolReportQueryDTO;
1b7b7d85   张志伟   ✨ v1.1.1 调整保有客池查...
9
  import cn.fw.valhalla.domain.enums.DefeatReasonEnum;
8587e21d   张志伟   :art:
10
  import cn.fw.valhalla.domain.enums.StammkundeStatusEnum;
39e85d50   张志伟   :art:
11
  import cn.fw.valhalla.domain.query.StammkundePoolQueryVO;
7c9f5c47   张志伟   :art:
12
  import cn.fw.valhalla.service.data.StammkundePoolService;
8587e21d   张志伟   :art:
13
  import com.baomidou.mybatisplus.core.toolkit.Wrappers;
7c9f5c47   张志伟   :art:
14
  import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
fab1c500   张志伟   :ambulance:
15
  import org.springframework.lang.NonNull;
7c9f5c47   张志伟   :art:
16
17
  import org.springframework.stereotype.Service;
  
39e85d50   张志伟   :art:
18
  import java.util.*;
8587e21d   张志伟   :art:
19
  
7c9f5c47   张志伟   :art:
20
21
22
23
24
25
26
27
  /**
   * @author : kurisu
   * @className : StammkundePoolServiceImpl
   * @description : 保有客池
   * @date: 2020-11-11 17:25
   */
  @Service
  public class StammkundePoolServiceImpl extends ServiceImpl<StammkundePoolMapper, StammkundePool> implements StammkundePoolService {
8587e21d   张志伟   :art:
28
      @Override
1b7b7d85   张志伟   ✨ v1.1.1 调整保有客池查...
29
      public boolean reject(Long customerId, Long groupId, DefeatReasonEnum reason) {
8587e21d   张志伟   :art:
30
31
32
          return this.update(Wrappers.<StammkundePool>lambdaUpdate()
                  .set(StammkundePool::getAktiv, Boolean.FALSE)
                  .set(StammkundePool::getRejectTime, new Date())
1b7b7d85   张志伟   ✨ v1.1.1 调整保有客池查...
33
                  .set(StammkundePool::getReason, reason)
8587e21d   张志伟   :art:
34
35
36
37
38
                  .eq(StammkundePool::getCustomerId, customerId)
                  .eq(StammkundePool::getGroupId, groupId)
                  .isNull(StammkundePool::getRejectTime)
          );
      }
9b497427   张志伟   :art:
39
40
  
      @Override
18a818bd   张志伟   :construction:
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
      public boolean reject(StammkundeDto dto) {
          return this.update(Wrappers.<StammkundePool>lambdaUpdate()
                  .set(StammkundePool::getAktiv, Boolean.FALSE)
                  .set(StammkundePool::getRejectTime, new Date())
                  .set(StammkundePool::getReason, dto.getReason())
                  .set(StammkundePool::getNewUserId, dto.getNewUserId())
                  .set(StammkundePool::getNewUserName, dto.getNewUserName())
                  .set(StammkundePool::getNewShopId, dto.getNewShopId())
                  .set(StammkundePool::getNewShopName, dto.getNewShopName())
                  .eq(StammkundePool::getCustomerId, dto.getCustomerId())
                  .eq(StammkundePool::getGroupId, dto.getGroupId())
                  .isNull(StammkundePool::getRejectTime)
          );
      }
  
      @Override
      public boolean reject(Long userId, Long shopId, Long groupId, DefeatReasonEnum reason) {
b688a252   张志伟   :art:
58
59
60
          return this.update(Wrappers.<StammkundePool>lambdaUpdate()
                  .set(StammkundePool::getAktiv, Boolean.FALSE)
                  .set(StammkundePool::getRejectTime, new Date())
1b7b7d85   张志伟   ✨ v1.1.1 调整保有客池查...
61
                  .set(StammkundePool::getReason, reason)
b688a252   张志伟   :art:
62
63
64
65
66
67
68
69
                  .eq(StammkundePool::getAdviserId, userId)
                  .eq(StammkundePool::getShopId, shopId)
                  .eq(Objects.nonNull(groupId), StammkundePool::getGroupId, groupId)
                  .isNull(StammkundePool::getRejectTime)
          );
      }
  
      @Override
9b497427   张志伟   :art:
70
71
72
73
74
75
76
77
78
79
80
81
      public void aktiv(Long customerId, Long groupId, Long shopId) {
          this.update(Wrappers.<StammkundePool>lambdaUpdate()
                  .set(StammkundePool::getAktiv, Boolean.TRUE)
                  .set(StammkundePool::getPoolStatus, StammkundeStatusEnum.KUNDE)
                  .set(StammkundePool::getActivationTime, new Date())
                  .eq(StammkundePool::getCustomerId, customerId)
                  .eq(StammkundePool::getGroupId, groupId)
                  .eq(StammkundePool::getShopId, shopId)
                  .eq(StammkundePool::getAktiv, Boolean.FALSE)
                  .isNull(StammkundePool::getRejectTime)
          );
      }
dac2e8b1   张志伟   :art:
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
  
      @Override
      public void aktiv(Long id) {
          this.update(Wrappers.<StammkundePool>lambdaUpdate()
                  .set(StammkundePool::getAktiv, Boolean.TRUE)
                  .set(StammkundePool::getPoolStatus, StammkundeStatusEnum.KUNDE)
                  .set(StammkundePool::getActivationTime, new Date())
                  .eq(StammkundePool::getId, id)
                  .eq(StammkundePool::getAktiv, Boolean.FALSE)
                  .isNull(StammkundePool::getRejectTime)
          );
      }
  
      @Override
      public StammkundePool queryAktivAble(Long customerId, Long groupId, Long shopId) {
          return this.getOne(Wrappers.<StammkundePool>lambdaQuery()
                  .eq(StammkundePool::getCustomerId, customerId)
                  .eq(StammkundePool::getGroupId, groupId)
                  .eq(StammkundePool::getShopId, shopId)
                  .eq(StammkundePool::getAktiv, Boolean.FALSE)
b688a252   张志伟   :art:
102
                  .isNull(StammkundePool::getRejectTime)
10322773   张志伟   :bug:
103
104
                  .orderByDesc(StammkundePool::getId)
                  .last("limit 1")
dac2e8b1   张志伟   :art:
105
106
          );
      }
39e85d50   张志伟   :art:
107
108
109
110
111
112
113
114
  
      @Override
      public List<StammkundePoolDTO> stammkundeList(StammkundePoolQueryVO queryVO) {
          Integer current = queryVO.getCurrent();
          Integer pageSize = queryVO.getPageSize();
          Integer startIndex = (current - 1) * pageSize;
          return Optional.ofNullable(getBaseMapper().stammkundeList(startIndex, pageSize, queryVO)).orElse(new ArrayList<>());
      }
cc14a87c   张志伟   :art:
115
116
117
118
119
  
      @Override
      public long stammkundeListCount(StammkundePoolQueryVO queryVO) {
          return Optional.ofNullable(getBaseMapper().stammkundeListCount(queryVO)).orElse(0L);
      }
fab1c500   张志伟   :ambulance:
120
121
122
123
124
125
126
127
  
      @Override
      public void removeByCustomerId(@NonNull Long customerId, @NonNull Long groupId) {
          this.remove(Wrappers.<StammkundePool>lambdaQuery()
                  .eq(StammkundePool::getCustomerId, customerId)
                  .eq(StammkundePool::getGroupId, groupId)
          );
      }
bfac3874   xianpengcheng   public_report_dat...
128
129
130
131
132
133
134
135
136
  
      /**
       * 查询渠道到店统计
       * @param dto
       * @return
       */
      public List<StammkundePoolReportDTO> countStammkundePoolList(StammkundePoolReportQueryDTO dto){
          return  Optional.ofNullable(getBaseMapper().countStammkundePoolList(dto)).orElse(Collections.emptyList());
      }
7c9f5c47   张志伟   :art:
137
  }