Bläddra i källkod

【feat】添加耳标查询接口

523096025 2 år sedan
förälder
incheckning
989d393618

+ 1 - 0
huimv-eartag2-platform/huimv-eartag2-admin/src/main/java/com/huimv/eartag2/admin/entity/SysAccountMultilevel.java

@@ -34,6 +34,7 @@ public class SysAccountMultilevel extends Model {
     private Long orgId;
 
     private String pids;
+    private Integer pid;
 
     private Integer accountStatus;
 

+ 4 - 3
huimv-eartag2-platform/huimv-eartag2-admin/src/main/java/com/huimv/eartag2/admin/service/impl/SysAccountMultilevelServiceImpl.java

@@ -59,21 +59,22 @@ public class SysAccountMultilevelServiceImpl extends ServiceImpl<SysAccountMulti
     public Result add(SysAccountMultilevel sysAccountMultilevel, Integer userId) {
 
         int account = this.count(new QueryWrapper<SysAccountMultilevel>().eq("account", sysAccountMultilevel.getAccount()));
-        SysOrg sysOrg = sysOrgMapper.selectById(sysAccountMultilevel.getOrgId());
+//        SysOrg sysOrg = sysOrgMapper.selectById(sysAccountMultilevel.getOrgId());
 
         if (account > 0 ){
             return new Result(10001,"该账号已经存在,请重新创建",false);
 
 
         }
-        sysAccountMultilevel.setPids(sysOrg.getPids());
+//        sysAccountMultilevel.setPids(sysOrg.getPids());
 
         SysAccountMultilevel byId = this.getById(userId);
         sysAccountMultilevel.setType(byId.getType()+1);
 
 
 //        sysAccountMultilevel.setOrgId(userId);
-//        sysAccountMultilevel.setPids(byId.getPids()+","+userId);
+        sysAccountMultilevel.setPids(userId+","+byId.getPids());
+        sysAccountMultilevel.setPid(+userId);
         sysAccountMultilevel.setType(byId.getType());
         accountMultilevelMapper.insert(sysAccountMultilevel);
         return  new Result( 10000,"添加成功",true);

+ 1 - 1
huimv-eartag2-platform/huimv-eartag2-admin/src/main/resources/com/huimv/eartag2/admin/mapper/MenuMapper.xml

@@ -18,7 +18,7 @@
         WHERE id IN
         (SELECT DISTINCT(menu_id) FROM sys_group_menu WHERE group_id IN
         (SELECT group_id FROM sys_account_group WHERE
-        account_id=#{userId})) and weight =1
+        account_id=#{userId})) and weight =2
         ORDER BY sort ASC
     </select>
 </mapper>

+ 15 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/controller/EartagRegisterController.java

@@ -1,8 +1,15 @@
 package com.huimv.eartag2.manage2.controller;
 
+import com.huimv.eartag2.common.utils.Result;
+import com.huimv.eartag2.manage2.service.IEartagEartagRegisterService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Map;
+
 /**
  * @Project : huimv.shiwan
  * @Package : com.huimv.biosafety.uface.controller
@@ -12,6 +19,14 @@ import org.springframework.web.bind.annotation.RestController;
  * @Create : 2020-12-25
  **/
 @RestController
+@RequestMapping("/eartagRegister")
 public class EartagRegisterController {
+    @Autowired
+    private IEartagEartagRegisterService eartagRegisterService;
+
+    @RequestMapping("/listFarmUnitEartagData")
+    public Result listFarmUnitEartagData(@RequestBody Map<String, String> params){
+        return eartagRegisterService.listFarmUnitEartagData(params);
+    }
 
 }

+ 15 - 3
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/pojo/EartagEartagRegister.java

@@ -8,6 +8,7 @@ import java.time.LocalDateTime;
 import java.io.Serializable;
 import java.util.Date;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -33,9 +34,11 @@ public class EartagEartagRegister implements Serializable {
 
     private String earmark;
 
-    private LocalDateTime firstTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date firstTime;
 
-    private LocalDateTime lastTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date lastTime;
 
     private String firstDevice;
 
@@ -43,6 +46,7 @@ public class EartagEartagRegister implements Serializable {
 
     private String lastDevice;
 
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
     private Date registerTime;
 
     private Integer registerType;
@@ -53,13 +57,21 @@ public class EartagEartagRegister implements Serializable {
 
     private Integer activeStatus;
 
-    private LocalDateTime activeTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date activeTime;
 
     private Integer liveStatus;
 
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
     private Date createDate;
 
     private Integer bat;
+    private Integer unitId;
+    private String unitName;
+
+    private Integer pigpenId;
+
+    private String pigpenName;
 
 
 }

+ 64 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/pojo/pojovo/EartagEartagRegisterVo.java

@@ -0,0 +1,64 @@
+package com.huimv.eartag2.manage2.pojo.pojovo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class EartagEartagRegisterVo {
+
+    private Integer id;
+
+    private String earmark;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date firstTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date lastTime;
+
+    private String firstDevice;
+
+    private String belongDevice;
+
+    private String lastDevice;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date registerTime;
+
+    private Integer registerType;
+
+    private String remark;
+
+    private String farmId;
+
+    private Integer activeStatus;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date activeTime;
+
+    private Integer liveStatus;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date createDate;
+
+    private Integer bat;
+
+    private String unitName;
+
+    private String pigpenName;
+
+    private Float envTemp;
+
+    private Float earTemp;
+    //运动量
+    private Integer act;
+    //信号强度
+    private Integer signal;
+
+
+
+
+
+}

+ 4 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/service/IEartagEartagRegisterService.java

@@ -1,8 +1,11 @@
 package com.huimv.eartag2.manage2.service;
 
+import com.huimv.eartag2.common.utils.Result;
 import com.huimv.eartag2.manage2.pojo.EartagEartagRegister;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.Map;
+
 /**
  * <p>
  *  服务类
@@ -13,4 +16,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IEartagEartagRegisterService extends IService<EartagEartagRegister> {
 
+    Result listFarmUnitEartagData(Map<String, String> params);
 }

+ 85 - 0
huimv-eartag2-platform/huimv-eartag2-manage2/src/main/java/com/huimv/eartag2/manage2/service/impl/EartagEartagRegisterServiceImpl.java

@@ -1,11 +1,31 @@
 package com.huimv.eartag2.manage2.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huimv.eartag2.common.utils.Result;
+import com.huimv.eartag2.common.utils.ResultCode;
+import com.huimv.eartag2.manage2.mapper.EartagDataMapper;
+import com.huimv.eartag2.manage2.mapper.EartagDeviceRegisterMapper;
+import com.huimv.eartag2.manage2.pojo.EartagData;
+import com.huimv.eartag2.manage2.pojo.EartagDeviceRegister;
 import com.huimv.eartag2.manage2.pojo.EartagEartagRegister;
 import com.huimv.eartag2.manage2.mapper.EartagEartagRegisterMapper;
+import com.huimv.eartag2.manage2.pojo.pojovo.EartagEartagRegisterVo;
 import com.huimv.eartag2.manage2.service.IEartagEartagRegisterService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.eartag2.manage2.vo.EartagDeviceRegisterVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  *  服务实现类
@@ -17,4 +37,69 @@ import org.springframework.stereotype.Service;
 @Service
 public class EartagEartagRegisterServiceImpl extends ServiceImpl<EartagEartagRegisterMapper, EartagEartagRegister> implements IEartagEartagRegisterService {
 
+    @Autowired
+    private EartagDeviceRegisterMapper eartagDeviceRegisterMapper;
+
+    @Autowired
+    private EartagDataMapper eartagDataMapper;
+
+
+    @Override
+    public Result listFarmUnitEartagData(Map<String, String> params) {
+        String pageSize = params.get("pageSize");
+        String pageNo = params.get("pageNo");
+        String unitId = params.get("unitId");
+        String deviceCode = params.get("deviceCode");
+        String farmId = params.get("farmId");
+        if (StringUtils.isBlank(pageNo)){
+            pageNo="1";
+        }
+        if (StringUtils.isBlank(pageSize)){
+            pageSize="20";
+        }
+        QueryWrapper<EartagEartagRegister> wrapper = new QueryWrapper<>();
+        //设备
+        wrapper.like(StringUtils.isNotBlank(deviceCode),"belong_device",deviceCode);
+        wrapper.eq("farm_id",farmId);
+        wrapper.eq(StringUtils.isNotBlank(unitId),"unit_id",unitId);
+        Page<EartagEartagRegister> page = this.page(new Page<>(Long.parseLong(pageNo), Long.parseLong(pageSize)), wrapper);
+
+
+        Page<EartagEartagRegisterVo> eartagDeviceRegisterVoPage = new Page<>();
+        List<EartagEartagRegisterVo> listVo = new ArrayList();
+        BeanUtil.copyProperties(page,eartagDeviceRegisterVoPage);
+
+        Float maxEarTemp = 0F;
+        Float minEarTemp = 0F;
+        for (EartagEartagRegister record : page.getRecords()) {
+            EartagEartagRegisterVo eartagDeviceRegisterVo = new EartagEartagRegisterVo();
+            BeanUtil.copyProperties(record,eartagDeviceRegisterVo);
+
+            EartagData eartagData = eartagDataMapper.selectOne(new QueryWrapper<EartagData>().eq("earmark", record.getEarmark()).orderByDesc("id").last("limit 1"));
+            eartagDeviceRegisterVo.setAct(eartagData.getAct1());
+            Float earTemp1 = eartagData.getEarTemp1();
+            eartagDeviceRegisterVo.setEarTemp(earTemp1);
+            eartagDeviceRegisterVo.setEnvTemp(eartagData.getEnvTemp1());
+            eartagDeviceRegisterVo.setSignal(eartagData.getSignal1());
+
+            maxEarTemp = Math.max(earTemp1,maxEarTemp);
+            minEarTemp = Math.min(earTemp1,minEarTemp);
+            listVo.add(eartagDeviceRegisterVo);
+        }
+        Map map = new HashMap();
+        long allCount = this.count(wrapper);
+        //在线
+        wrapper.eq("active_status", 1);
+        long onCount = this.count(wrapper);
+
+        map.put("countOff",allCount-onCount);
+
+        map.put("countOn",onCount);
+        map.put("countAll",allCount);
+        map.put("maxEarTemp",maxEarTemp);
+        map.put("minEarTemp",minEarTemp);
+        map.put("page",page);
+
+        return new Result(ResultCode.SUCCESS,map);
+    }
 }