package api.service;
|
|
import api.bean.PoleSensorV2SoilVOEntity;
|
import api.bean.PoleSensorV2VOEntity;
|
import api.bean.ReqParams;
|
import api.bean.WeatherEntity;
|
import api.dao.WeatherDao;
|
import api.dao.WeatherV2Dao;
|
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageInfo;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.List;
|
|
/**
|
* 耕农 北理工
|
**/
|
@Service
|
public class WeatherV2Service {
|
@Autowired
|
private AccessService accessService;
|
@Autowired
|
private WeatherV2Dao weatherV2Dao;
|
public PageInfo<PoleSensorV2VOEntity> list(Long userId, ReqParams reqParams) {
|
Long roleId = accessService.getRoleId(userId);
|
|
if (roleId == null || roleId == 0) {
|
return null;
|
}
|
|
List<PoleSensorV2VOEntity> list = null;
|
|
Long poleId = reqParams.getLightId();
|
|
if(null == poleId || poleId.equals("")){
|
|
if (roleId.longValue() == 1) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectAll();
|
} else if (roleId.longValue() == 2) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectByCompany(userId);
|
} else if (roleId.longValue() == 3) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectByUserId(userId);
|
}
|
|
|
|
}else {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
|
list = weatherV2Dao.getSensorByPoleId(poleId);
|
}
|
|
|
PageInfo<PoleSensorV2VOEntity> page = new PageInfo<>(list);
|
return page;
|
|
}
|
|
|
public PageInfo<PoleSensorV2SoilVOEntity> soilList(Long userId, ReqParams reqParams) {
|
Long roleId = accessService.getRoleId(userId);
|
|
if (roleId == null || roleId == 0) {
|
return null;
|
}
|
|
List<PoleSensorV2SoilVOEntity> list = null;
|
|
String mac = reqParams.getMac();
|
|
if(null == mac || mac.equals("")){
|
|
if (roleId.longValue() == 1) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectAllForSoil();
|
} else if (roleId.longValue() == 2) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectByCompanyForSoil(userId);
|
} else if (roleId.longValue() == 3) {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
list = weatherV2Dao.selectByUserIdForSoil(userId);
|
}
|
|
|
|
}else {
|
PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
|
|
list = weatherV2Dao.getSensorByMac(mac);
|
}
|
|
|
PageInfo<PoleSensorV2SoilVOEntity> page = new PageInfo<>(list);
|
return page;
|
|
}
|
}
|