浏览代码

精准饲喂大修改

Newspaper 1 年之前
父节点
当前提交
be2c408f65

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/feed/feedingenv/service/impl/FeedingEnvServiceImpl.java

@@ -167,7 +167,7 @@ public class FeedingEnvServiceImpl extends ServiceImpl<FeedingEnvMapper, Feeding
     @Override
     public List<BaseConfig> deviceTypeSelector(FeedingEnvPageParam envDeviceOrgIdParam) {
         String orgId = envDeviceOrgIdParam.getOrgId();
-        String parentId = baseConfigMapper.selectOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, 0).eq(BaseConfig::getConfigName, "环控设备类型")).getId();
+        String parentId = baseConfigMapper.selectOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, 0).eq(BaseConfig::getConfigName, "精准饲喂设备类型")).getId();
         List<BaseConfig> baseConfigs = baseConfigMapper.selectList(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, parentId).eq(BaseConfig::getOrgId, orgId));
         return baseConfigs;
     }

+ 3 - 3
snowy-web-app/src/main/java/vip/xiaonuo/modular/feed/feedingfat/mapper/FeedingFatMapper.java

@@ -17,7 +17,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.springframework.data.repository.query.Param;
+import org.apache.ibatis.annotations.Param;
 import vip.xiaonuo.modular.feed.feedingfat.entity.FeedingFat;
 import vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo;
 import vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo2;
@@ -32,9 +32,9 @@ import java.util.List;
  **/
 public interface FeedingFatMapper extends BaseMapper<FeedingFat> {
 
-    FeedingFatVo getFeed(@Param("unitId") List<String> unitId, @Param("orgId") String orgId);
+    FeedingFatVo getFeed(@Param("unitId") String unitId, @Param("orgId") String orgId);
 
-    IPage<FeedingFatVo> listPage(Page<FeedingFat> page, @Param(Constants.WRAPPER) QueryWrapper<FeedingFat> queryWrapper);
+    IPage<FeedingFatVo> listFeedPage(Page<FeedingFat> page,@Param("ew") QueryWrapper<FeedingFat> queryWrapper);
 
     List<FeedingFatVo2> listFeedDetail(@Param(Constants.WRAPPER) QueryWrapper<FeedingFat> queryWrapper);
     List<FeedingFatVo2> listTempDetail(@Param(Constants.WRAPPER) QueryWrapper<FeedingFat> queryWrapper);

+ 10 - 10
snowy-web-app/src/main/java/vip/xiaonuo/modular/feed/feedingfat/mapper/mapping/FeedingFatMapper.xml

@@ -4,18 +4,18 @@
 
 <select id="getFeed" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo">
     select
-    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_date) =CURRENT_DATE THEN feed_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayFeed,
-    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_date) =CURRENT_DATE THEN water_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayWater,
-    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_date) =CURRENT_DATE THEN weigth_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS dayWeight,
+    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN feed_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayFeed,
+    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN water_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayWater,
+    CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN weigth_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS dayWeight,
  -- 昨日用量
     CONVERT(IFNULL(SUM(CASE WHEN create_time=DATE_SUB(CURDATE(),INTERVAL 1 DAY) THEN water_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS yesterdayWater,
     CONVERT(IFNULL(SUM(CASE WHEN create_time=DATE_SUB(CURDATE(),INTERVAL 1 DAY) THEN feed_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS yesterdayFeed
-    FROM `feeding_fat` WHERE unit_id in ${unitId} AND org_id =${orgId}
+    FROM `feeding_fat` WHERE unit_id=${unitId} AND org_id =${orgId}
 </select>
 
-    <select id="listPage" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo">
+    <select id="listFeedPage" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo">
     select
-    create_time createDate,eartag_num eartagNum,device_code deviceCode,day_num dayNum,unit_name unitName
+    create_time createDate,eartag_num eartagNum,device_code deviceCode,
     CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN feed_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayFeed,
     CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN water_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS todayWater,
     CONVERT(IFNULL(SUM(CASE WHEN  DATE(create_time) =CURRENT_DATE THEN weigth_value ELSE 0 END), '0'), DECIMAL(10, 2)) AS dayWeight,
@@ -28,7 +28,7 @@
     </select>
 
     <select id="listFeedDetail" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo2">
-        select create_time 'createTime',
+        select create_time 'createDate',
         CONVERT(IFNULL(SUM(feed_value), '0'), DECIMAL(10, 2)) 'value'
         FROM feeding_fat
         ${ew.customSqlSegment}
@@ -36,7 +36,7 @@
         ORDER BY create_time ASC
     </select>
     <select id="listTempDetail" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo2">
-        select create_time 'createTime',
+        select create_time 'createDate',
         CONVERT(IFNULL(SUM(temp), '0'), DECIMAL(10, 2)) 'value'
         FROM feeding_fat
         ${ew.customSqlSegment}
@@ -44,7 +44,7 @@
         ORDER BY create_time ASC
     </select>
     <select id="listActDetail" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo2">
-        select create_time 'createTime',
+        select create_time 'createDate',
         CONVERT(IFNULL(SUM(feed_act), '0'), DECIMAL(10, 2)) 'value'
         FROM feeding_fat
         ${ew.customSqlSegment}
@@ -52,7 +52,7 @@
         ORDER BY create_time ASC
     </select>
     <select id="listWeightDetail" resultType="vip.xiaonuo.modular.feed.feedingfat.vo.FeedingFatVo2">
-        select create_time 'createTime',
+        select create_time 'createDate',
         CONVERT(IFNULL(SUM(weigth_value), '0'), DECIMAL(10, 2)) 'value'
         FROM feeding_fat
         ${ew.customSqlSegment}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/feed/feedingfat/param/FeedingFatEditParam.java

@@ -54,7 +54,7 @@ public class FeedingFatEditParam {
      * 上传时间
      */
     @ApiModelProperty(value = "自定义结束时间,不带时分秒", required = false)
-    private Date endTime;
+    private String endTime;
 
 
     /** 组织id */

+ 18 - 13
snowy-web-app/src/main/java/vip/xiaonuo/modular/feed/feedingfat/service/impl/FeedingFatServiceImpl.java

@@ -75,25 +75,30 @@ public class FeedingFatServiceImpl extends ServiceImpl<FeedingFatMapper, Feeding
         String orgId = feedingFatAddParam.getOrgId();
         String unitId = feedingFatAddParam.getUnitId();
         QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("org_id", orgId).like("pids", unitId).ne("id", unitId);
+        queryWrapper.eq("org_id", orgId).eq("id", unitId);
         List<BasePigpen> basePigpens = pigpenMapper.selectList(queryWrapper);
         List<String> idList = new ArrayList<>();
-        basePigpens.forEach(item->{
-            idList.add(item.getId());
-        });
+        if (basePigpens.size() != 0) {
+            basePigpens.forEach(item->{
+                idList.add(item.getId());
+            });
+        }
         QueryWrapper<FeedingEnv> queryWrapper1 = new QueryWrapper<>();
-        queryWrapper1.eq("org_id", orgId).in("unit_id", idList);
-        List<FeedingEnv> envs = envMapper.selectList(queryWrapper1);//饲养头数
-        List<String> unitList = new ArrayList<>();
-        envs.forEach(i->{
-            unitList.add(i.getDeviceCode());
-        });
-        FeedingFatVo feed = fatMapper.getFeed(unitList, orgId);
+        queryWrapper1.eq("org_id", orgId);
+        if (idList.size() != 0) {
+            queryWrapper1.in("unit_id", idList);
+        }
+        FeedingEnv feedingEnv = envMapper.selectOne(queryWrapper1);//饲养头数
+//        List<String> unitList = new ArrayList<>();
+//        envs.forEach(i->{
+//            unitList.add(i.getDeviceCode());
+//        });
+        FeedingFatVo feed = fatMapper.getFeed(feedingEnv.getDeviceCode(), orgId);
         double aDouble = Double.parseDouble(feed.getTodayFeed());
         double aDouble1 = Double.parseDouble(feed.getDayWeight());
         double rank = aDouble / aDouble1;
         DecimalFormat def = new DecimalFormat("0.00");
-        feed.setFatCount(envs.size());
+        feed.setFatCount(1);
         feed.setRank(def.format(rank));
         return feed;
     }
@@ -107,7 +112,7 @@ public class FeedingFatServiceImpl extends ServiceImpl<FeedingFatMapper, Feeding
         QueryWrapper<FeedingFat> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("org_id", orgId).eq(StringUtils.isNotBlank(eartagNum), "eartag_num", eartagNum);
         Page<FeedingFat> page = new Page<>(pageNum,pageSize);
-        IPage<FeedingFatVo> fatVoIPage = fatMapper.listPage(page, queryWrapper);
+        IPage<FeedingFatVo> fatVoIPage = fatMapper.listFeedPage(page, queryWrapper);
         return fatVoIPage;
     }