package com.moral.service.impl; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.moral.mapper.DeviceMapper; import com.moral.service.AccountService; import com.moral.service.DeviceService; @Service public class DeviceServiceImpl implements DeviceService { @Autowired private DeviceMapper deviceMapper; @Autowired private AccountService accountService; @Override public Map getDeviceStatesByAccount(Map parameters) { Map result = new HashMap(); accountService.setOrgIdsByAccount(parameters); List> list = deviceMapper.getDeviceStatesByAccount(parameters); Long all = 0L, normal = 0L, abnormal = 0L, stop = 0L; for (Map map : list) { Long count = (Long) map.get("count"); all += count; switch (Integer.valueOf((String) map.get("state"))) { case 0: normal = count; break; case 4: stop = count; break; default: abnormal += count; } } result.put("all", all); result.put("normal", normal); result.put("abnormal", abnormal); result.put("stop", stop); return result; } @Override public List> getSensorsByDevice(String mac) { return deviceMapper.getSensorsByDevice(mac); } }