123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- package com.welampiot.service.impl;
- import com.welampiot.common.BaseResult;
- import com.welampiot.common.InterfaceResultEnum;
- import com.welampiot.dao.ElectricBoxDao;
- import com.welampiot.dto.ElectricBoxDTO;
- import com.welampiot.dto.ElectricModuleDTO;
- import com.welampiot.service.AirSwitchInfoService;
- import com.welampiot.service.ElectricBoxService;
- import com.welampiot.service.ElectricModuleService;
- import com.welampiot.utils.ToolUtils;
- import com.welampiot.vo.ElectricBoxReturnVO;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * ClassName: ElectricBoxServiceImpl
- * Package: com.welampiot.service.impl
- * Description:
- *
- * @Author: zhj_Start
- * @Create: 2023/3/25 - 14:46
- * @Version: v1.0
- */
- @Service
- public class ElectricBoxServiceImpl implements ElectricBoxService {
- @Autowired
- private ElectricBoxDao electricBoxDao;
- @Autowired
- protected ElectricModuleService electricModuleService;
- @Autowired
- private ToolUtils toolUtils;
- @Autowired
- private AirSwitchInfoService airSwitchInfoService;
- @Override
- public ElectricBoxReturnVO getElectricBoxListBySectionId(ElectricBoxDTO dto) {
- ElectricBoxReturnVO electricBoxReturnVO = new ElectricBoxReturnVO();
- electricBoxReturnVO.setTotal(electricBoxDao.getTotalByStatus(dto));
- electricBoxReturnVO.setDevTotal(electricBoxDao.getTotalByStatus(dto));
- electricBoxReturnVO.setOnlineTotal(electricBoxDao.getOnlineTotalByStatus(dto));
- electricBoxReturnVO.setOfflineTotal(electricBoxDao.getOfflineTotalByStatus(dto));
- List<ElectricBoxDTO> electricBoxList = electricBoxDao.getElectricBoxListBySectionId(dto);
- List<ElectricBoxDTO> electricBoxDTOS = new ArrayList<>();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- electricBoxList.forEach(electricBoxDTO ->{
- if (electricBoxDTO.getInstallDate() != null && !electricBoxDTO.getInstallDate().equals("")){
- try {
- electricBoxDTO.setInstallDate(simpleDateFormat.format(simpleDateFormat.parse(electricBoxDTO.getInstallDate())));
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }else {
- electricBoxDTO.setInstallDate("");
- }
- if (electricBoxDTO.getExpirationDate() != null && !electricBoxDTO.getExpirationDate().equals("")){
- try {
- electricBoxDTO.setExpirationDate(simpleDateFormat.format(simpleDateFormat.parse(electricBoxDTO.getExpirationDate())));
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }else {
- electricBoxDTO.setExpirationDate("");
- }
- if (electricBoxDTO.getOnlineCount() != null && electricBoxDTO.getOnlineCount() > 0){
- electricBoxDTO.setOnline(1);
- }else {
- electricBoxDTO.setOnline(0);
- }
- List<ElectricModuleDTO> listByBoxId = electricModuleService.getListByBoxId(electricBoxDTO.getId());
- List<Map> maps = new ArrayList<>();
- for (ElectricModuleDTO e :listByBoxId) {
- Map<Object, Object> objectObjectMap = new HashMap<>();
- objectObjectMap.put("id",e.getId());
- objectObjectMap.put("boxId",e.getBoxId());
- objectObjectMap.put("address",e.getAddress());
- objectObjectMap.put("type",e.getType());
- maps.add(objectObjectMap);
- }
- electricBoxDTO.setModuleList(maps);
- if (electricBoxDTO.getDevType() == null) electricBoxDTO.setDevType(0);
- electricBoxDTOS.add(electricBoxDTO);
- });
- electricBoxReturnVO.setList(electricBoxDTOS);
- return electricBoxReturnVO;
- }
- @Override
- public Integer getTotalByStatus(ElectricBoxDTO dto) {
- return electricBoxDao.getTotalByStatus(dto);
- }
- @Override
- public Integer getOnlineTotalByStatus(ElectricBoxDTO dto) {
- return electricBoxDao.getOnlineTotalByStatus(dto);
- }
- @Override
- public Integer getOfflineTotalByStatus(ElectricBoxDTO dto) {
- return electricBoxDao.getOfflineTotalByStatus(dto);
- }
- @Override
- public BaseResult add(ElectricBoxDTO dto) {
- if (dto.getAreaId() == 0 || dto.getAreaId() == null) return toolUtils.response(InterfaceResultEnum.LACK_AREA_ERROR,dto.getVersion());
- if (dto.getSectionId() == 0 || dto.getSectionId() == null) return toolUtils.response(InterfaceResultEnum.LACK_SECTION_ERROR,dto.getVersion());
- if (dto.getName() == null || dto.getName().length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_BOX_NAME_ERROR,dto.getVersion());
- ElectricBoxDTO electricBoxDTO = new ElectricBoxDTO();
- electricBoxDTO.setSectionId(dto.getSectionId());
- electricBoxDTO.setName(dto.getName());
- if (electricBoxDao.checkData(electricBoxDTO).intValue() > 0) return toolUtils.response(InterfaceResultEnum.ELECTRIC_BOX_NAME_UNIQUE_ERROR,dto.getVersion());
- if (dto.getModuleList() == null || dto.getModuleList().isEmpty()) return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_MODULE_ERROR,dto.getVersion());
- electricBoxDao.add(dto);
- List<Map> moduleList = dto.getModuleList();
- for (Map map:moduleList) {
- ElectricModuleDTO electricModuleDTO = new ElectricModuleDTO();
- if (map.containsKey("id")) electricModuleDTO.setId(Integer.parseInt((String) map.get("id")));
- electricModuleDTO.setBoxId(dto.getId());
- if (map.containsKey("address") && map.get("address").toString().length() > 0) {
- electricModuleDTO.setAddress((String) map.get("address"));
- }else {
- return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_MODULE_ADDRESS_ERROR,dto.getVersion());
- }
- electricModuleDTO.setType(Integer.parseInt((String) map.get("type")));
- if (electricModuleDTO.getId() != null && electricModuleDTO.getId() > 0){
- electricModuleService.add(electricModuleDTO);
- }else {
- electricModuleService.update(electricModuleDTO);
- }
- }
- return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,dto.getVersion());
- }
- @Override
- public BaseResult update(ElectricBoxDTO dto) {
- if (dto.getAreaId() == 0 || dto.getAreaId() == null) return toolUtils.response(InterfaceResultEnum.LACK_AREA_ERROR,dto.getVersion());
- if (dto.getSectionId() == 0 || dto.getSectionId() == null) return toolUtils.response(InterfaceResultEnum.LACK_SECTION_ERROR,dto.getVersion());
- if (dto.getName() == null || dto.getName().length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_BOX_NAME_ERROR,dto.getVersion());
- ElectricBoxDTO electricBoxDTO = new ElectricBoxDTO();
- electricBoxDTO.setSectionId(dto.getSectionId());
- electricBoxDTO.setName(dto.getName());
- electricBoxDTO.setId(dto.getId());
- if (electricBoxDao.checkData(electricBoxDTO).intValue() > 0) return toolUtils.response(InterfaceResultEnum.ELECTRIC_BOX_NAME_UNIQUE_ERROR,dto.getVersion());
- if (dto.getModuleList() == null || dto.getModuleList().isEmpty()) return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_MODULE_ERROR,dto.getVersion());
- electricBoxDao.add(dto);
- List<Map> moduleList = dto.getModuleList();
- for (Map map:moduleList) {
- ElectricModuleDTO electricModuleDTO = new ElectricModuleDTO();
- if (map.containsKey("id")) electricModuleDTO.setId(Integer.parseInt((String) map.get("id")));
- electricModuleDTO.setBoxId(dto.getId());
- if (map.containsKey("address") && map.get("address").toString().length() > 0) {
- electricModuleDTO.setAddress((String) map.get("address"));
- }else {
- return toolUtils.response(InterfaceResultEnum.LACK_ELECTRIC_MODULE_ADDRESS_ERROR,dto.getVersion());
- }
- electricModuleDTO.setType(Integer.parseInt((String) map.get("type")));
- if (electricModuleDTO.getId() != null && electricModuleDTO.getId() > 0){
- electricModuleService.add(electricModuleDTO);
- }else {
- electricModuleService.update(electricModuleDTO);
- }
- }
- electricBoxDao.update(dto);
- return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,dto.getVersion());
- }
- @Override
- public Integer checkData(ElectricBoxDTO dto) {
- return electricBoxDao.checkData(dto);
- }
- @Override
- public Integer delete(ElectricBoxDTO dto) {
- airSwitchInfoService.deleteByBoxId(dto.getId());
- electricModuleService.deleteByBoxId(dto.getId());
- return electricBoxDao.delete(dto);
- }
- @Override
- public ElectricBoxDTO getDetailsById(Integer id) {
- return electricBoxDao.getDetailsById(id);
- }
- @Override
- public void changeElectricBoxLocationById(ElectricBoxDTO dto) {
- electricBoxDao.changeElectricBoxLocationById(dto);
- }
- }
|