package com.whyc.service;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageInfo;
|
import com.whyc.dto.Response;
|
import com.whyc.mapper.BattalarmParamMapper;
|
import com.whyc.pojo.db_param.BattalarmParam;
|
import com.whyc.util.ActionUtil;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import javax.annotation.Resource;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
@Service
|
public class BattalarmParamService {
|
@Resource
|
private BattalarmParamMapper mapper;
|
|
//电池告警参数设置--列表查询
|
public Response serchBattParamByCondition(List AlarmIds, int pageNum, int pageSize) {
|
PageHelper.startPage(pageNum,pageSize);
|
List list = mapper.serchByCondition(AlarmIds);
|
PageInfo pageInfo = new PageInfo(list);
|
return new Response().set(1, pageInfo);
|
}
|
|
//查询电池优劣好坏的标准
|
public Response serchQuality() {
|
//0.查询劣化(告警)和损坏(更换)的阈值
|
QueryWrapper<BattalarmParam> alarmWrapper = new QueryWrapper();
|
alarmWrapper.and(wrapper -> {
|
return wrapper.eq("alm_name", "Batt_Alarm_Type_CapAlarm").or().eq("alm_name", "Batt_Alarm_Type_CapChange");
|
});
|
alarmWrapper.orderByAsc("alm_id");
|
List<BattalarmParam> paramList = mapper.selectList(alarmWrapper);
|
float capAlarm = 0f;
|
float capChange = 0f;
|
if (paramList != null && paramList.size() > 0) {
|
capAlarm = paramList.get(0).getAlmLowCoe();//劣化参数0.8
|
capChange = paramList.get(1).getAlmLowCoe();//损坏参数0.6
|
} else {
|
capAlarm = 0.8f;
|
capChange = 0.6f;
|
}
|
Map<String, Float> map = new HashMap<>();
|
map.put("capAlarm", capAlarm);
|
map.put("capChange", capChange);
|
return new Response<>().setII(1, true, map, "查询电池优劣好坏的标准");
|
}
|
|
//告警参数设置
|
@Transactional
|
public Response setBattParam(List<BattalarmParam> list) {
|
if (list != null && list.size() > 0) {
|
for (BattalarmParam p : list) {
|
UpdateWrapper wrapper = new UpdateWrapper();
|
wrapper.set("alm_low_coe", p.getAlmLowCoe());
|
wrapper.eq("alm_id", p.getAlmId());
|
mapper.update((BattalarmParam) ActionUtil.objeNull, wrapper);
|
}
|
}
|
return new Response().set(1, true);
|
}
|
}
|