TdCCarDaoImpl.java
4.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
package com.zteits.pay.dao.impl;
import java.util.List;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import com.clouds.common.constants.pagequery.PageSizeEnum;
import com.clouds.common.utils.page.PageUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.pay.TdCCarDTO;
import com.zteits.clouds.api.dto.pay.car.param.CustCarInfoQueryReq;
import com.zteits.clouds.api.dto.pay.car.param.UserCarInfoQueryForPageReq;
import com.zteits.clouds.api.dto.pay.param.TdCCarRequest;
import com.zteits.pay.dao.TdCCarDao;
import com.zteits.pay.domain.TdCCar;
import com.zteits.pay.domain.TdCCarExample;
import com.zteits.pay.domain.TdCCarExample.Criteria;
import com.zteits.pay.mapper.TdCCarMapper;
import com.zteits.pay.mapper.smapper.TdCCarSMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class TdCCarDaoImpl implements TdCCarDao {
@Autowired
private TdCCarSMapper TdCCarSMapper;
@Autowired
private TdCCarMapper TdCCarMapper;
@Override
public TdCCar selectCustCarInfoById(Long id) {
return TdCCarMapper.selectByPrimaryKey(id);
}
@Override
public List<TdCCar> selectCustInfoBycustId(TdCCarRequest request) {
return TdCCarSMapper.selectCustInfoBycustId(request);
}
@Override
public List<TdCCar> selectCustInfoBycustIds(List<String> custIds) {
return TdCCarSMapper.selectCustInfoBycustIds(custIds);
}
@Override
public Integer updateCars(TdCCar car) {
return TdCCarMapper.updateByPrimaryKeySelective(car);
}
@Override
public Integer insertCars(TdCCar car) {
return TdCCarMapper.insertSelective(car);
}
@Override
public Integer deleteCars(TdCCar car) {
return TdCCarSMapper.deleteCars(car);
}
@Override
public List<TdCCar> selectCustInfo(TdCCar reqcar) {
return TdCCarSMapper.selectCustInfo(reqcar);
}
@Override
public PageInfo<TdCCar> queryUserCarInfoForPage(UserCarInfoQueryForPageReq req) {
//校验分页数据
PageUtil.pageSizeValidate(PageSizeEnum.PAGE_SIZE_BASE,req.getBaseRequest().getPageSize());
TdCCarExample example = new TdCCarExample();
Criteria sql = example.createCriteria();
sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
if(StringUtils.isNotEmpty(req.getPhoneNum())){
sql.andPhoneNumberEqualTo(req.getPhoneNum());
}
if(StringUtils.isNotEmpty(req.getCarNumber())){
sql.andCarNumberLike('%'+req.getCarNumber()+'%');
}
if(CollectionUtils.isNotEmpty(req.getExamineStates())){
sql.andExamineStateIn(req.getExamineStates());
}
example.setOrderByClause(" modfiy_date desc,create_date desc ");
PageHelper.startPage(req.getBaseRequest().getPageNum(),req.getBaseRequest().getPageSize());
List<TdCCar> tdCCarList = TdCCarMapper.selectByExample(example);
return new PageInfo<>(tdCCarList);
}
@Override
public List<TdCCar> selectCustInfoByCarNumber(CustCarInfoQueryReq req) {
TdCCarExample example = new TdCCarExample();
Criteria sql = example.createCriteria();
if(!req.isQueryUnBindCar()){
sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
}
sql.andCarNumberEqualTo(req.getCarNumber());
/** 需求需要,不能把 data_state desc
* 赤峰需求 518 欠费追缴短信支持配置规则自动下发
* 期望APP解绑了车牌号的用户,在解绑后如果有新号码(联系电话或第三方获取电话),给新号码发短信,如果都没有,则给解绑的电话号发短信
*/
example.setOrderByClause("id desc, data_state desc");
List<TdCCar> tdCCarList = TdCCarMapper.selectByExample(example);
return tdCCarList;
}
@Override
public PageInfo<TdCCarDTO> queryUserCarInfoForPageAndPN(UserCarInfoQueryForPageReq req) {
PageUtil.pageSizeValidate(PageSizeEnum.PAGE_SIZE_BASE,req.getBaseRequest().getPageSize());
PageHelper.startPage(req.getBaseRequest().getPageNum(),req.getBaseRequest().getPageSize());
List<TdCCarDTO> tdCCarList = TdCCarSMapper.queryUserCarInfoForPageAndPN(req);
return new PageInfo<>(tdCCarList);
}
@Override
public List<TdCCarDTO> queryCustCarInfoByPhone(UserCarInfoQueryForPageReq req) {
List<TdCCarDTO> tdCCarList = TdCCarSMapper.queryUserCarInfoForPageAndPN(req);
return tdCCarList;
}
}