| | |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.whyc.constant.BattCapperformanceEnum; |
| | | import com.whyc.constant.PwrCapperformanceEnum; |
| | | import com.whyc.dto.Param.ParamAlmDto; |
| | | import com.whyc.dto.PowerDto; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.dto.Statistic.Pwr7Stic; |
| | | import com.whyc.dto.Statistic.StationStic; |
| | | import com.whyc.mapper.BaojigroupPowerMapper; |
| | | import com.whyc.mapper.BaojigroupUsrMapper; |
| | | import com.whyc.mapper.PowerInfMapper; |
| | | import com.whyc.mapper.StationInfMapper; |
| | | import com.whyc.pojo.db_station.BattInf; |
| | | import com.whyc.pojo.db_station.PowerInf; |
| | | import com.whyc.pojo.db_station.PowerInfChange; |
| | | import com.whyc.pojo.db_station.StationInf; |
| | | import com.whyc.pojo.db_user.BaojigroupPower; |
| | | import com.whyc.pojo.db_user.BaojigroupUsr; |
| | | import com.whyc.pojo.db_user.User; |
| | | import com.whyc.util.ActionUtil; |
| | | import org.apache.commons.math3.analysis.function.Power; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | @Service |
| | | public class PowerInfService { |
| | |
| | | private StationInfMapper sinfMapper; |
| | | |
| | | @Autowired(required = false) |
| | | private BaojigroupService bjService; |
| | | private BaojigroupUsrMapper bjUserMapper; |
| | | |
| | | @Autowired(required = false) |
| | | private BattInfService binfService; |
| | | private BaojigroupPowerMapper bjPowerMapper; |
| | | |
| | | @Autowired(required = false) |
| | | private InfoChangeService changeService; |
| | | |
| | | @Autowired |
| | | private PowerheartParamService heartService; |
| | | |
| | | /*添加电源 |
| | | 1.判断当前用户是否是包组用户 |
| | |
| | | powerId += 1; |
| | | } |
| | | addpinf.setPowerId(powerId); |
| | | mapper.insert(addpinf); |
| | | int flag=mapper.insert(addpinf); |
| | | if(flag>0){ |
| | | //当前人所在的包机组添加电源机房 |
| | | insertInbaoji(stationId,powerId); |
| | | } |
| | | //添加完电源需要插入默认实时页面电源的心跳数据 |
| | | heartService.insertHeartData(powerId); |
| | | } |
| | | //删除电源(删除包机组下记录,删除电源下的电池组设备) |
| | | @Transactional |
| | | public Response delPower(Integer pid) { |
| | | //删除所有包机组下的电源 |
| | | bjService.delPowerInBaoji(pid); |
| | | //删除电源下的电池组 |
| | | binfService.delBattInPower(pid); |
| | | //删除电源 |
| | | UpdateWrapper wrapper=new UpdateWrapper(); |
| | | wrapper.eq("power_id",pid); |
| | | mapper.delete(wrapper); |
| | | return new Response().set(1,true); |
| | | } |
| | | //修改电源 |
| | | public Response updatePower(PowerInf pinf) { |
| | | UpdateWrapper wrapper=new UpdateWrapper(); |
| | | wrapper.eq("power_id",pinf.getPowerId()); |
| | | if(pinf.getPowerName()!=null){ |
| | | //检测该机房下要修改的电源名是否粗在 |
| | | QueryWrapper queryWrapper=new QueryWrapper(); |
| | | queryWrapper.eq("power_name",pinf.getPowerName()); |
| | | queryWrapper.eq("station_id",pinf.getStationId()); |
| | | queryWrapper.last("limit 1"); |
| | | PowerInf juegep=mapper.selectOne(queryWrapper); |
| | | if(juegep!=null){ |
| | | return new Response().set(1,false,"该机房下已存在"+pinf.getPowerName()+"的电源"); |
| | | //当前人所在的包机组添加电源机房 |
| | | public void insertInbaoji(Integer stationId,Integer powerId){ |
| | | //重启线程并将锁加到当前人的包机组 |
| | | User uinf= ActionUtil.getUser(); |
| | | QueryWrapper wrapper1=new QueryWrapper(); |
| | | wrapper1.eq("uid",uinf.getId()); |
| | | List<BaojigroupUsr> groupIdList=bjUserMapper.selectList(wrapper1); |
| | | List<BaojigroupPower> baojigroupList=new ArrayList(); |
| | | if(groupIdList!=null&&groupIdList.size()>0){ |
| | | for (BaojigroupUsr bjUser:groupIdList) { |
| | | BaojigroupPower bjPower=new BaojigroupPower(); |
| | | bjPower.setStationId(stationId); |
| | | bjPower.setPowerId(powerId); |
| | | bjPower.setBaojiGroupId(bjUser.getBaojiGroupId()); |
| | | baojigroupList.add(bjPower); |
| | | } |
| | | wrapper.set("power_name",pinf.getPowerName()); |
| | | } |
| | | if(pinf.getCompany()!=null){ |
| | | wrapper.set("company",pinf.getCompany()); |
| | | } |
| | | if(pinf.getPowerModel()!=null){ |
| | | wrapper.set("power_model",pinf.getPowerModel()); |
| | | } |
| | | if(pinf.getProtocol()!=null){ |
| | | wrapper.set("protocol",pinf.getProtocol()); |
| | | } |
| | | if(pinf.getPowerIp()!=null){ |
| | | wrapper.set("power_ip",pinf.getPowerIp()); |
| | | } |
| | | mapper.update((PowerInf) ActionUtil.objeNull,wrapper); |
| | | return new Response().set(1,true); |
| | | } |
| | | //查询电源 |
| | | public Response getPower(PowerDto dto) { |
| | | User user= ActionUtil.getUser(); |
| | | dto.setUid(user.getId()); |
| | | PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); |
| | | List<PowerInf> list=mapper.getPower(dto); |
| | | PageInfo pageInfo=new PageInfo(list); |
| | | return new Response().setII(1,list!=null,pageInfo,"查询电源"); |
| | | bjPowerMapper.insertBatchSomeColumn(baojigroupList); |
| | | //processSurveyService.setUpThreadRestart(); |
| | | } |
| | | //获取电源品牌(下拉) |
| | | public Response getCompanyByUid(Integer uid) { |
| | | List<String> list=mapper.getCompanyByUid(uid); |
| | | return new Response().setII(1,list.size()>0,list,"获取电源品牌(下拉)"); |
| | | } |
| | | //获取电源型号(下拉) |
| | | public Response getPowerModelByUid(Integer uid) { |
| | | List<String> list=mapper.getPowerModelByUid(uid); |
| | | return new Response().setII(1,list.size()>0,list,"获取电源型号(下拉)"); |
| | | } |
| | | //获取电源协议(下拉) |
| | | public Response getProtocolByUid(Integer uid) { |
| | | List<String> list=mapper.getProtocolByUid(uid); |
| | | return new Response().setII(1,list.size()>0,list,"获取电源协议(下拉)"); |
| | | } |
| | | //获取电源信息 |
| | | public PowerInf getPowerInfById(Integer powerId) { |
| | | QueryWrapper wrapper=new QueryWrapper(); |
| | | wrapper.eq("power_id",powerId); |
| | | wrapper.last("limit 1"); |
| | | PowerInf pinf=mapper.selectOne(wrapper); |
| | | List<PowerInfChange> pinfChangeList=changeService.getPinfChange(powerId); |
| | | pinf.setPinfChangeList(pinfChangeList); |
| | | return pinf; |
| | | } |
| | | //电源信息统计 |
| | | public Response getPowerStatistic(StationStic stic) { |
| | | PageHelper.startPage(stic.getPageNum(),stic.getPageSize()); |
| | | List<PowerInf> list=mapper.getPowerStatistic(stic); |
| | | PageInfo<PowerInf> pageInfo=new PageInfo<>(list); |
| | | return new Response().setII(1,list.size()>0,pageInfo,"电源信息统计"); |
| | | } |
| | | //优良电源数量统计(1.2.7) |
| | | public List<PowerInf> getPwr7Statistic(Pwr7Stic stic) { |
| | | return mapper.getPwr7Statistic(stic); |
| | | } |
| | | |
| | | public List<PowerInf> getListByUserId(Integer userId) { |
| | | return mapper.getListByUserId(userId); |
| | | } |
| | | //根据查询条件获取电源集合 |
| | | public PowerInf getPowerIdList(Integer powerId) { |
| | | return mapper.getPowerIdList(powerId); |
| | | } |
| | | //获取电源性能(下拉) |
| | | public Response getPwrCapperformance() { |
| | | Map<Integer,String> map= PwrCapperformanceEnum.getOpInfo(); |
| | | return new Response().setII(1,true,map,"获取电源性能(下拉)"); |
| | | } |
| | | } |