whycrzg
2021-01-29 b421fde8f3499b638c117cc2cb9a49f260fb3481
src/main/java/com/fgkj/services/Battalarm_data_historyService.java
@@ -1,13 +1,16 @@
package com.fgkj.services;
import com.fgkj.dto.Batt_Maint_Dealarm;
import com.fgkj.dto.Battalarm_data_history;
import com.fgkj.dto.ServiceModel;
import com.fgkj.dto.User_log;
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;
@@ -16,47 +19,68 @@
@Service
public class Battalarm_data_historyService {
   ServiceModel model = new ServiceModel();
   @Resource
   private Battalarm_data_historyMapper mapper;;
   @Resource
   private User_logService uservice;
   @Autowired
   DataSourceTransactionManager dataSourceTransactionManager;
   @Autowired
   TransactionDefinition transactionDefinition;
   
   //3.2电池告警查询(删除记录)
   public ServiceModel delete(Object obj) {
      List<Battalarm_data_history> list=(List<Battalarm_data_history>) obj;
      ArrayList<String> str_sql=new ArrayList<String>();
      List<User_log> listU=new ArrayList<User_log>();//存放user_log
       if(list!=null&&list.size()>0){
          for(int i=0;i<list.size();i++){
             Battalarm_data_history adata_H=list.get(i);
            String delSql=mapper.delPro(adata_H);
            str_sql.add(delSql);
             {
               String msg="删除"+adata_H.getStationname()+"的"+adata_H.getNote()+"告警";
               User_log ulog=UinfDaoFactory.CreateULog(UinfDaoFactory.Delete, msg);
               listU.add(ulog);
             }
          }
      }
      //TODO perry待做
   public ServiceModel delete(List<Battalarm_data_history> list) {
      ServiceModel model = new ServiceModel();
      TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
      Boolean bl= true;
      // Boolean bl=DateUtil.makeManualCommit(DBUtil.getConn(), str_sql);
      (new User_logService()).addPro(listU);//将用户的操作记录下来
       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(Object obj){
      List<Batt_Maint_Dealarm> list=mapper.serchByInfo(obj);
   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(list);
         model.setData(pageInfo);
      }else{
         model.setCode(0);
         model.setMsg("查询失败!");