yangkang
2023-09-13 51ebb09a85d622cae75dc169b4c86723977d3756
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
package org.jeecg.modules.eam.service.impl;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.common.util.UUIDGenerator;
import org.jeecg.modules.eam.entity.PredictiveWorkPlan;
import org.jeecg.modules.eam.mapper.PredictiveWorkPlanMapper;
import org.jeecg.modules.eam.service.IPredictiveWorkPlanParameterService;
import org.jeecg.modules.eam.service.IPredictiveWorkPlanService;
import org.jeecg.modules.eam.service.IPredictiveWorkPlanSparePartService;
import org.jeecg.modules.eam.service.IPredictiveWorkPlanWarnService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
 
import java.util.List;
import java.util.Map;
 
@Service
public class PredictiveWorkPlanServiceImpl extends ServiceImpl<PredictiveWorkPlanMapper, PredictiveWorkPlan> implements IPredictiveWorkPlanService {
 
 
    @Autowired
    @Lazy
    private IPredictiveWorkPlanWarnService predictiveWorkPlanWarnService;
 
    @Autowired
    @Lazy
    private IPredictiveWorkPlanSparePartService predictiveWorkPlanSparePartService;
 
    @Autowired
    @Lazy
    private IPredictiveWorkPlanParameterService predictiveWorkPlanParameterService;
 
    @Override
    public IPage<Map<String, Object>> pagePredictiveWorkPlan(Integer pageNo, Integer pageSize, Map<String, Object> params) {
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        return super.baseMapper.pagePredictiveWorkPlan(pageData,params);
    }
 
    @Override
    public List<PredictiveWorkPlan> listWorkPlan(String monitorType) {
        LambdaQueryChainWrapper<PredictiveWorkPlan> lambdaQuery = this.lambdaQuery();
        lambdaQuery.eq(PredictiveWorkPlan::getDelFlag,0);
        lambdaQuery.eq(PredictiveWorkPlan::getMonitorType,monitorType);
        return lambdaQuery.list();
    }
 
    @Override
    public void delete(String id) {
        PredictiveWorkPlan predictiveWorkPlan = this.getById(id);
        if (!"1".equals(predictiveWorkPlan.getStatus())) {
            ExceptionCast.cast("该方案不是未生效状态,不能删除!");
        }
        this.removeById(id);
        predictiveWorkPlanWarnService.removeByWorkPlanId(id);
        predictiveWorkPlanSparePartService.removeByWorkPlanId(id);
        predictiveWorkPlanParameterService.removeByWorkPlanId(id);
    }
 
    @Override
    public void revise(PredictiveWorkPlan predictiveWorkPlan) {
        String oldWorkPlanId = predictiveWorkPlan.getId();
        predictiveWorkPlan.setId(UUIDGenerator.generate());
        this.save(predictiveWorkPlan);
        predictiveWorkPlanWarnService.revise(oldWorkPlanId,predictiveWorkPlan.getId());
        predictiveWorkPlanSparePartService.revise(oldWorkPlanId,predictiveWorkPlan.getId());
        predictiveWorkPlanParameterService.revise(oldWorkPlanId,predictiveWorkPlan.getId());
    }
}