提交 | 用户 | 时间
|
af72d8
|
1 |
package com.iailab.module.model.mpk.service.impl; |
J |
2 |
|
|
3 |
import com.alibaba.nacos.common.utils.CollectionUtils; |
|
4 |
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
5 |
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
6 |
import com.iailab.framework.common.page.PageData; |
|
7 |
import com.iailab.framework.common.service.impl.BaseServiceImpl; |
|
8 |
import com.iailab.framework.common.util.date.DateUtils; |
|
9 |
import com.iailab.framework.common.util.object.ConvertUtils; |
|
10 |
import com.iailab.module.model.api.mcs.dto.ElectricityPriceSegmentedDTO; |
|
11 |
import com.iailab.module.model.mpk.dao.ElectricityPriceSegmentedDao; |
|
12 |
import com.iailab.module.model.mpk.entity.ElectricityPriceSegmentedEntity; |
|
13 |
import com.iailab.module.model.mpk.service.ElectricityPriceSegmentedService; |
|
14 |
import lombok.extern.slf4j.Slf4j; |
|
15 |
import org.apache.commons.lang3.StringUtils; |
|
16 |
import org.springframework.stereotype.Service; |
|
17 |
|
|
18 |
import java.util.*; |
|
19 |
|
|
20 |
/** |
|
21 |
* @description: |
|
22 |
* @author: dzd |
|
23 |
* @date: 2024/11/5 11:21 |
|
24 |
**/ |
|
25 |
@Slf4j |
|
26 |
@Service |
|
27 |
public class ElectricityPriceSegmentedServiceImpl extends BaseServiceImpl<ElectricityPriceSegmentedDao, ElectricityPriceSegmentedEntity> implements ElectricityPriceSegmentedService { |
|
28 |
|
|
29 |
@Override |
|
30 |
public PageData<ElectricityPriceSegmentedDTO> page(Map<String, Object> params) { |
|
31 |
IPage<ElectricityPriceSegmentedEntity> page = baseDao.selectPage( |
|
32 |
getPage(params, "create_time", false), |
|
33 |
getWrapper(params) |
|
34 |
); |
|
35 |
|
|
36 |
return getPageData(page, ElectricityPriceSegmentedDTO.class); |
|
37 |
} |
|
38 |
|
|
39 |
@Override |
|
40 |
public void create(ElectricityPriceSegmentedDTO dto) { |
e63c53
|
41 |
ElectricityPriceSegmentedEntity entity = ConvertUtils.sourceToTarget(dto, ElectricityPriceSegmentedEntity.class); |
J |
42 |
entity.setId(UUID.randomUUID().toString()); |
|
43 |
entity.setCreateTime(new Date()); |
|
44 |
baseDao.insert(entity); |
af72d8
|
45 |
} |
J |
46 |
|
|
47 |
@Override |
|
48 |
public void update(ElectricityPriceSegmentedEntity dto) { |
|
49 |
ElectricityPriceSegmentedEntity entity = ConvertUtils.sourceToTarget(dto, ElectricityPriceSegmentedEntity.class); |
|
50 |
entity.setUpdateTime(new Date()); |
|
51 |
baseDao.updateById(entity); |
|
52 |
} |
|
53 |
|
|
54 |
@Override |
|
55 |
public ElectricityPriceSegmentedEntity get(String id) { |
|
56 |
return baseDao.selectById(id); |
|
57 |
} |
|
58 |
|
|
59 |
|
|
60 |
@Override |
|
61 |
public void delete(String id) { |
|
62 |
baseDao.deleteById(id); |
|
63 |
} |
|
64 |
|
|
65 |
@Override |
e63c53
|
66 |
public void deleteByITimeId(String iTimeId) { |
af9c8a
|
67 |
QueryWrapper<ElectricityPriceSegmentedEntity> wrapper = new QueryWrapper<>(); |
e63c53
|
68 |
wrapper.eq(StringUtils.isNotBlank(iTimeId), "i_time_id", iTimeId); |
J |
69 |
baseDao.delete(wrapper); |
|
70 |
} |
|
71 |
|
|
72 |
@Override |
|
73 |
public List<ElectricityPriceSegmentedDTO> getElectricityPriceList(String year) { |
|
74 |
List<ElectricityPriceSegmentedDTO> result = new ArrayList<>(); |
|
75 |
QueryWrapper<ElectricityPriceSegmentedEntity> wrapper = new QueryWrapper<>(); |
|
76 |
wrapper.eq(StringUtils.isNotBlank(year), "year", year) |
|
77 |
.orderByDesc( "create_time"); |
|
78 |
List<ElectricityPriceSegmentedEntity> list = baseDao.selectList(wrapper); |
|
79 |
if(CollectionUtils.isNotEmpty(list)){ |
|
80 |
String itimeId = list.get(0).getITimeId(); |
|
81 |
QueryWrapper<ElectricityPriceSegmentedEntity> wrapper1 = new QueryWrapper<>(); |
|
82 |
wrapper.eq(StringUtils.isNotBlank(itimeId), "i_time_id", itimeId) |
|
83 |
.orderByDesc( "create_time"); |
|
84 |
result = ConvertUtils.sourceToTarget(baseDao.selectList(wrapper1), ElectricityPriceSegmentedDTO.class); |
|
85 |
} |
|
86 |
return result; |
af72d8
|
87 |
} |
J |
88 |
|
|
89 |
@Override |
|
90 |
public List<ElectricityPriceSegmentedDTO> getElectricityPriceListByTime(ElectricityPriceSegmentedDTO dto) { |
|
91 |
String startTime = DateUtils.format(dto.getStartTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND); |
|
92 |
String endTime = DateUtils.format(dto.getEndTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND); |
|
93 |
Map<String, Object> params = new HashMap<>(); |
|
94 |
params.put("startTime", startTime); |
|
95 |
params.put("endTime", endTime); |
|
96 |
List<ElectricityPriceSegmentedEntity> list = baseDao.selectList(getWrapper(params)); |
|
97 |
return ConvertUtils.sourceToTarget(list, ElectricityPriceSegmentedDTO.class); |
|
98 |
} |
|
99 |
|
|
100 |
private QueryWrapper<ElectricityPriceSegmentedEntity> getWrapper(Map<String, Object> params) { |
|
101 |
String startTime = (String) params.get("startTime"); |
|
102 |
String endTime = (String) params.get("endTime"); |
|
103 |
|
|
104 |
QueryWrapper<ElectricityPriceSegmentedEntity> wrapper = new QueryWrapper<>(); |
|
105 |
wrapper.eq(StringUtils.isNotBlank(startTime), "start_time", startTime) |
|
106 |
.eq(StringUtils.isNotBlank(endTime), "end_time", endTime); |
|
107 |
return wrapper; |
|
108 |
} |
|
109 |
} |