net
2025-02-14 06d3d15a5a08637041cc601101c063b11b07a346
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
package com.zhitan.saving.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhitan.common.constant.CommonConst;
import com.zhitan.common.core.domain.AjaxResult;
import com.zhitan.common.exception.ServiceException;
import com.zhitan.common.utils.DateUtils;
import com.zhitan.common.utils.PageUtils;
import com.zhitan.common.utils.bean.BeanUtils;
import com.zhitan.saving.domain.dto.EnergySavingProgramDTO;
import com.zhitan.saving.domain.entity.EnergySavingProgram;
import com.zhitan.saving.domain.vo.EnergySavingProgramVO;
import com.zhitan.saving.mapper.EnergySavingProgramMapper;
import com.zhitan.saving.service.IEnergySavingProgramService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import javax.annotation.Resource;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;
 
/**
 * 节能项目管理
 * Service业务层处理
 *
 * @author ZhiTan
 * @date 2024-12-26
 */
@Service
public class EnergySavingProgramServiceImpl extends ServiceImpl<EnergySavingProgramMapper, EnergySavingProgram> implements IEnergySavingProgramService {
    @Resource
    private EnergySavingProgramMapper energySavingProgramMapper;
 
    /**
     * 查询
     * 节能项目管理
     *
     * @param id 节能项目管理
     *           主键
     * @return 节能项目管理
     */
    @Override
    public   EnergySavingProgram selectEnergySavingProgramById(Long id) {
        return energySavingProgramMapper.selectEnergySavingProgramById(id);
    }
 
    /**
     * 查询
     * 节能项目管理
     * 列表
     *
     * @param energySavingProgram 节能项目管理
     * @return 节能项目管理
     */
    @Override
    public Page<EnergySavingProgramVO> selectEnergySavingProgramList(  EnergySavingProgram energySavingProgram) {
 
        Page<  EnergySavingProgram> pageInfo = PageUtils.getPageInfo(  EnergySavingProgram.class);
 
 
        Page<  EnergySavingProgram> energySavingProgramPage = this.baseMapper.selectPage(pageInfo,
                new LambdaQueryWrapper<  EnergySavingProgram>().eq(EnergySavingProgram::getDel, CommonConst.DEL_FLAG_0)
//                        .eq(ObjectUtils.isNotEmpty(energySavingProgram.getEndTime()), EnergySavingProgram::getEndTime, energySavingProgram.getEndTime())
                        .orderByDesc(EnergySavingProgram::getCreateTime)
        );
 
        List<  EnergySavingProgram> energySavingProgramList = energySavingProgramPage.getRecords();
 
        List<EnergySavingProgramVO> voList = new ArrayList<>();
        energySavingProgramList.stream().forEach(indexInfo -> {
            EnergySavingProgramVO infoVO = new EnergySavingProgramVO();
            BeanUtils.copyProperties(indexInfo, infoVO);
            voList.add(infoVO);
        });
 
        Page<EnergySavingProgramVO> responsePage = PageUtils.getPageInfo(EnergySavingProgramVO.class);
        responsePage.setTotal(energySavingProgramPage.getTotal());
        responsePage.setRecords(voList);
        return responsePage;
    }
 
    /**
     * 新增
     * 节能项目管理
     *
     * @param dto
     * @return 结果
     * @throws ParseException
     */
    @Override
    @Transactional
    public AjaxResult insertEnergySavingProgram(EnergySavingProgramDTO dto) {
              EnergySavingProgram energySavingProgram = new   EnergySavingProgram();
            BeanUtils.copyProperties(dto, energySavingProgram);
            energySavingProgram.setCreateTime(DateUtils.getNowDate());
            energySavingProgram.setDel(0L);
            return AjaxResult.success(energySavingProgramMapper.insert(energySavingProgram));
 
    }
 
 
    /**
     * 修改
     * 节能项目管理
     *
     * @param dto
     * @return 结果
     */
    @Override
    @Transactional
    public AjaxResult updateEnergySavingProgram(EnergySavingProgramDTO dto) {
          EnergySavingProgram vo = this.baseMapper.selectEnergySavingProgramById(dto.getId());
        if (vo == null) {
            throw new ServiceException("未找到对应实体");
        } else {
            BeanUtils.copyProperties(dto, vo);
            vo.setDel(CommonConst.DEL_FLAG_0.longValue());
            int i = energySavingProgramMapper.updateById(vo);
            return AjaxResult.success(i);
        }
 
 
    }
 
    /**
     * 删除
     * 节能项目管理
     * 信息
     *
     * @param id 节能项目管理
     *           主键
     * @return 结果
     */
    @Override
    @Transactional
    public AjaxResult deleteEnergySavingProgramById(Long id) {
 
          EnergySavingProgram vo = this.baseMapper.selectEnergySavingProgramById(id);
        if (vo == null) {
            throw new ServiceException("未找到对应实体");
        } else {
            vo.setUpdateTime(DateUtils.getNowDate());
            vo.setDel(CommonConst.DEL_FLAG_1.longValue());
            int i = energySavingProgramMapper.updateById(vo);
            return AjaxResult.success(i);
        }
 
    }
 
}