Browse Source

新增API接口:第三方平台通过耳标号和日期区间获取耳标数据

zhuoning 2 years ago
parent
commit
76ce14b9e7

+ 17 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/controller/EartagData2Controller.java

@@ -35,4 +35,21 @@ public class EartagData2Controller {
 
         return eartagDataService.getEnvByTime(map);
     }
+
+    /**
+     * @Method      : getEartagDataByEarmark
+     * @Description : earmark,startDate,endDate
+     * @Params      : [map, request]
+     * @Return      : com.huimv.eartag2.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2022/10/15       
+     * @Time        : 15:55
+     */
+    @PostMapping("/api/getEartagDataByEarmark")
+    public Result getEartagDataByEarmark(@RequestBody Map<String,String> map, HttpServletRequest request){
+        Integer userId = TokenSign.getMemberIdByJwtToken(request);
+        map.put("userId",userId+"");
+        return eartagDataService.getEartagDataByEarmark(map);
+    }
 }

+ 5 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/mapper/EartagData2Mapper.java

@@ -2,6 +2,9 @@ package com.huimv.eartag2.manage2.mapper;
 
 import com.huimv.eartag2.manage2.pojo.EartagData2;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -12,4 +15,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2022-07-29
  */
 public interface EartagData2Mapper extends BaseMapper<EartagData2> {
+    //
+    List<EartagData2> getEartagDataByEarmark(@Param("earmark") String earmark, @Param("recordCount") String recordCount);
 }

+ 5 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/mapper/xml/EartagData2Mapper.xml

@@ -23,5 +23,10 @@
         <result column="farm_id" property="farmId" />
         <result column="ask_date" property="askDate" />
     </resultMap>
+    <select id="getEartagDataByEarmark" resultType="com.huimv.eartag2.manage2.pojo.EartagData2">
+        SELECT * FROM eartag_data2 WHERE earmark=${earmark} ORDER BY add_time DESC LIMIT ${recordCount}
+    </select>
+
+
 
 </mapper>

+ 2 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/service/IEartagData2Service.java

@@ -21,4 +21,6 @@ public interface IEartagData2Service extends IService<EartagData2> {
     List<EartagData2> getEartagData(String earmark) throws ParseException;
 
     Result getEnvByTime(Map<String, String> map);
+
+    Result getEartagDataByEarmark(Map<String, String> map);
 }

+ 35 - 11
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/service/impl/EartagData2ServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUnit;
 import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.huimv.eartag2.common.utils.Const;
 import com.huimv.eartag2.common.utils.Result;
 import com.huimv.eartag2.common.utils.ResultCode;
 import com.huimv.eartag2.manage2.mapper.SysAccountMultilevelMapper;
@@ -22,7 +23,7 @@ import java.util.*;
 
 /**
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  *
  * @author author
@@ -74,15 +75,15 @@ public class EartagData2ServiceImpl extends ServiceImpl<EartagData2Mapper, Earta
         Date now = new Date();
         SysAccountMultilevel user = sysAccountMultilevelMapper.selectById(userId);
 
-        if (StringUtils.isBlank(earmark)){
-            return new Result(10001,"请选择耳标",false);
+        if (StringUtils.isBlank(earmark)) {
+            return new Result(10001, "请选择耳标", false);
         }
         QueryWrapper<EartagData2> wrapper = new QueryWrapper<>();
-        wrapper.eq("earmark",earmark);
-        if (StringUtils.isBlank(startDate)){
+        wrapper.eq("earmark", earmark);
+        if (StringUtils.isBlank(startDate)) {
             wrapper.ge("add_time", DateUtil.beginOfDay(now));
-        }else {
-            wrapper.between("add_time",startDate,endDate);
+        } else {
+            wrapper.between("add_time", startDate, endDate);
         }
 
         wrapper.orderByAsc("add_time");
@@ -90,21 +91,44 @@ public class EartagData2ServiceImpl extends ServiceImpl<EartagData2Mapper, Earta
 
 
         //用户数据
-        if (user.getIsUser() ==0){
+        if (user.getIsUser() == 0) {
             for (EartagData2 eartagData2 : list) {
                 Float earTemp1 = eartagData2.getEarTemp1();
-                if (earTemp1 > 40){
+                if (earTemp1 > 40) {
                     eartagData2.setEarTemp1(40F);
                 }
 
-                if (earTemp1 < 30){
+                if (earTemp1 < 30) {
                     eartagData2.setEarTemp1(30F);
                 }
 
             }
         }
 
+        return new Result(ResultCode.SUCCESS, list);
+    }
 
-        return new Result(ResultCode.SUCCESS,list);
+    @Override
+    public Result getEartagDataByEarmark(Map<String, String> map) {
+        String earmark = map.get("earmark");
+//        String recordCount = map.get("recordCount");
+        String startDate = map.get("startDate");
+        String endDate = map.get("endDate");
+//        List<EartagData2> eartagData2List = eartagData2Mapper.getEartagDataByEarmark(earmark, recordCount);
+        QueryWrapper<EartagData2> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("earmark",earmark);
+        queryWrapper.between("add_time",startDate,endDate);
+        queryWrapper.orderByDesc("add_time");
+        List<EartagData2> eartagData2List = eartagData2Mapper.selectList(queryWrapper);
+
+        if (eartagData2List.size() == 0) {
+            return new Result(Const.ERR_EMPTY_CODE, Const.ERR_EMPTY_INFO, false);
+        } else {
+            List<EartagData2> newList = new ArrayList();
+            for (int a = eartagData2List.size() - 1; a >= 0; a--) {
+                newList.add(eartagData2List.get(a));
+            }
+            return new Result(ResultCode.SUCCESS, newList);
+        }
     }
 }