|
@@ -1,34 +1,44 @@
|
|
|
package com.huimv.management.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
-import com.huimv.management.dao.PastureDao;
|
|
|
+import com.huimv.management.dao.FarmDao;
|
|
|
import com.huimv.management.dao.PigstyDao;
|
|
|
+import com.huimv.management.entity.FarmEntity;
|
|
|
import com.huimv.management.entity.IndoorEnvironmentEntity;
|
|
|
-import com.huimv.management.entity.PastureEntity;
|
|
|
+import com.huimv.management.entity.vo.IndoorEnvironmentVo;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
-import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.huimv.common.utils.PageUtils;
|
|
|
import com.huimv.common.utils.Query;
|
|
|
|
|
|
import com.huimv.management.dao.IndoorEnvironmentDao;
|
|
|
-import com.huimv.management.entity.IndoorEnvironmentEntity;
|
|
|
import com.huimv.management.service.IndoorEnvironmentService;
|
|
|
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 室内环境ServiceImpl
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author yinhao
|
|
|
+ * @version 1.0
|
|
|
+ * @date 2021/6/11 17:52
|
|
|
+ */
|
|
|
@Service("indoorEnvironmentService")
|
|
|
public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentDao, IndoorEnvironmentEntity> implements IndoorEnvironmentService {
|
|
|
|
|
|
@Autowired
|
|
|
- private PastureDao pastureDao;
|
|
|
+ private FarmDao farmDao;
|
|
|
|
|
|
@Autowired
|
|
|
private PigstyDao pigstyDao;
|
|
@@ -36,65 +46,54 @@ public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentD
|
|
|
@Override
|
|
|
public PageUtils queryPage(Map<String, Object> params) {
|
|
|
|
|
|
- LambdaQueryWrapper<IndoorEnvironmentEntity> lambdaQuery = Wrappers.lambdaQuery();
|
|
|
-
|
|
|
+ //构建条件wrapper
|
|
|
+ QueryWrapper<IndoorEnvironmentVo> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
|
- Boolean abnormalStatus = (Boolean) params.get("abnormalStatus");
|
|
|
- if (abnormalStatus != null) {
|
|
|
- lambdaQuery.eq(IndoorEnvironmentEntity::getAbnormalStatus, abnormalStatus);
|
|
|
+ //异常状态
|
|
|
+ String abnormalStatus = (String) params.get("abnormalStatus");
|
|
|
+ if (StringUtils.isNotEmpty(abnormalStatus)) {
|
|
|
+ queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
|
|
|
}
|
|
|
|
|
|
- String pastureName = String.valueOf(params.get("pastureName"));
|
|
|
- if (StringUtils.isNotEmpty(pastureName)) {
|
|
|
- LambdaQueryWrapper<PastureEntity> query = Wrappers.<PastureEntity>lambdaQuery().like(PastureEntity::getName, pastureName);
|
|
|
- List<Integer> idList = pastureDao.selectIdList(query);
|
|
|
- lambdaQuery.in(IndoorEnvironmentEntity::getPastureId, idList);
|
|
|
+ //牧场名称
|
|
|
+ String farmName = (String) params.get("farmName");
|
|
|
+ if (farmName != null) {
|
|
|
+ LambdaQueryWrapper<FarmEntity> query = Wrappers.<FarmEntity>lambdaQuery().like(FarmEntity::getName, farmName);
|
|
|
+ List<Integer> idList = farmDao.selectIdList(query);
|
|
|
+ if (CollUtil.isNotEmpty(idList)) {
|
|
|
+ queryWrapper.in("env.farm_id", idList);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- String pigstyName = String.valueOf(params.get("pigstyName"));
|
|
|
+ //猪舍名称
|
|
|
+ String pigstyName = (String) params.get("pigstyName");
|
|
|
if (StringUtils.isNotEmpty(pigstyName)) {
|
|
|
- lambdaQuery.in(IndoorEnvironmentEntity::getPigstyId, pigstyDao.selectIdListByPigstyName(pigstyName));
|
|
|
+ List<Integer> idList = pigstyDao.selectIdListByPigstyName(pigstyName);
|
|
|
+ if (CollUtil.isNotEmpty(idList)) {
|
|
|
+ queryWrapper.in("env.pigsty_id", idList);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- String startTime = String.valueOf(params.get("startTime"));
|
|
|
+ //时间区间(前)
|
|
|
+ String startTime = (String) params.get("startTime");
|
|
|
if (StringUtils.isNotEmpty(startTime)) {
|
|
|
- lambdaQuery.ge(IndoorEnvironmentEntity::getCollectTime, startTime);
|
|
|
+ queryWrapper.ge("env.collect_time", startTime);
|
|
|
}
|
|
|
|
|
|
- String endTime = String.valueOf(params.get("endTime"));
|
|
|
+ //时间区间(后)
|
|
|
+ String endTime = (String) params.get("endTime");
|
|
|
if (StringUtils.isNotEmpty(endTime)) {
|
|
|
- lambdaQuery.le(IndoorEnvironmentEntity::getCollectTime, endTime);
|
|
|
+ queryWrapper.le("env.collect_time", startTime);
|
|
|
}
|
|
|
|
|
|
- IPage<IndoorEnvironmentEntity> page = this.page(new Query<IndoorEnvironmentEntity>().getPage(params),lambdaQuery);
|
|
|
- return new PageUtils(page);
|
|
|
-// String keywords = (String) params.get("keywords");
|
|
|
-// //没有参数
|
|
|
-// if (keywords == null || keywords.equals("")) {
|
|
|
-// IPage<IndoorEnvironmentEntity> page = this.page(
|
|
|
-// new Query<IndoorEnvironmentEntity>().getPage(params),
|
|
|
-// new QueryWrapper<IndoorEnvironmentEntity>()
|
|
|
-// );
|
|
|
-// return new PageUtils(page);
|
|
|
-// }
|
|
|
-//
|
|
|
-// lambdaQuery.like(IndoorEnvironmentEntity::getPigstyId, keywords);
|
|
|
-// IPage<IndoorEnvironmentEntity> page = page(this.page(
|
|
|
-// new Query<IndoorEnvironmentEntity>().getPage(params)
|
|
|
-// ), lambdaQuery);
|
|
|
-//
|
|
|
-//
|
|
|
-// return new PageUtils(page);
|
|
|
- }
|
|
|
-
|
|
|
- /*@Override
|
|
|
- public PageUtils queryPage(Map<String, Object> params) {
|
|
|
- IPage<IndoorEnvironmentEntity> page = this.page(
|
|
|
- new Query<IndoorEnvironmentEntity>().getPage(params),
|
|
|
- new QueryWrapper<IndoorEnvironmentEntity>()
|
|
|
- );
|
|
|
+ //排除逻辑删除
|
|
|
+ queryWrapper.apply(" env.deleted = 0 AND farm.deleted = 0 AND pigsty.deleted = 0");
|
|
|
+ //根据采集时间倒序查询
|
|
|
+ queryWrapper.orderByDesc("env.collect_time");
|
|
|
|
|
|
+ //mapper文件sql编写并返回分页结果
|
|
|
+ IPage<IndoorEnvironmentVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
|
|
|
return new PageUtils(page);
|
|
|
- }*/
|
|
|
+ }
|
|
|
|
|
|
}
|