whycrzg
2021-02-23 351b9a53cb9ecebdf8f79db0117f540d9c42c2a4
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
package com.fgkj.services;
 
import com.fgkj.dto.*;
import com.fgkj.mapper.AlarmDaoFactory;
import com.fgkj.mapper.UinfDaoFactory;
import com.fgkj.mapper.impl.Battalarm_data_historyMapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.stereotype.Service;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.TransactionStatus;
 
import java.util.ArrayList;
import java.util.List;
 
import javax.annotation.Resource;
@Service
public class Battalarm_data_historyService {
 
    @Resource
    private Battalarm_data_historyMapper mapper;;
    @Resource
    private User_logService uservice;
    @Autowired
    DataSourceTransactionManager dataSourceTransactionManager;
    @Autowired
    TransactionDefinition transactionDefinition;
    
    //3.2电池告警查询(删除记录)
    public ServiceModel delete(List<Battalarm_data_history> list) {
        ServiceModel model = new ServiceModel();
        TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
        Boolean bl= true;
        if(list!=null&&list.size()>0) {
            for (int i = 0; i < list.size(); i++) {
                Battalarm_data_history adata_H = list.get(i);
                if (!bl){
                    continue;
                }
                if (!(mapper.delPro(adata_H) > 0)) {
                    bl = false;
                }
                String msg = "删除" + adata_H.getStationname() + "的" + adata_H.getNote() + "告警";
                User_log ulog = UinfDaoFactory.CreateULog(UinfDaoFactory.Delete, msg);
                uservice.add(ulog);//将用户的操作记录下来
            }
        }
        if(bl){
            dataSourceTransactionManager.commit(transactionStatus);
            model.setCode(1);
            model.setMsg("删除成功!");
        }else{
            dataSourceTransactionManager.rollback(transactionStatus);
            model.setCode(0);
            model.setMsg("删除失败!");
        }
        return model;
    }
    //3.2电池告警历史记录查询
    public ServiceModel serchByInfo(Batt_Maint_Dealarm bmd){
        ServiceModel model = new ServiceModel();
        //分页
        PageBean pageBean = bmd.getPageBean();
        PageHelper.startPage(pageBean.getPageNum(),pageBean.getPageSize(),true);
        List<Batt_Maint_Dealarm> list=mapper.serchByInfo(bmd);
        if(list!=null && list.size()>0){
            for (int i = 0; i < list.size(); i++) {
//                System.out.println("getBinf = " + list.get(i).getBinf());
                Battalarm_data_history adata_H = list.get(i).getAdata_H();
                String name="未知";            //存放告警名称
                String type="未知";            //存放告警等级
                //battinf中的StationName8,StationName9存放告警名称和等级
                name= AlarmDaoFactory.getAlarmName(adata_H.getAlm_signal_id());
                type=AlarmDaoFactory.getAlarmType(adata_H.getAlm_level());
                list.get(i).getBinf().setStationName8(name);
                list.get(i).getBinf().setStationName9(type);
//                System.out.println("getBinf after = " + list.get(i).getBinf());
            }
            PageInfo<Batt_Maint_Dealarm> pageInfo = new PageInfo<>(list);
            model.setCode(1);
            model.setData(pageInfo);
        }else{
            model.setCode(0);
            model.setMsg("查询失败!");
 
        }
        return model;
    } 
}