Procházet zdrojové kódy

更新的代码都已经上传

yang před 3 roky
rodič
revize
c204ae6e03
38 změnil soubory, kde provedl 1075 přidání a 142 odebrání
  1. 6 3
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/controller/HeartBeatRecordController.java
  2. 0 1
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/constant/ImportanteConfig.java
  3. 3 5
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/eartagsocket/EartagServer2.java
  4. 1 7
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/eartagsocket/EartagServerHandler2.java
  5. 1 1
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/service/impl/ReceivePackageSerivce.java
  6. 24 0
      cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/service/impl/SendPackageService.java
  7. 0 0
      cloud-platform-base/platform-gen/src/main/java/com/huimv/generate/modular/mapper/mapping/VersionService.xml
  8. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/app/mapper/mapping/VersionService.xml
  9. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/dict/mapper/mapping/VersionService.xml
  10. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/emp/mapper/mapping/VersionService.xml
  11. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/log/mapper/mapping/VersionService.xml
  12. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/menu/mapper/mapping/VersionService.xml
  13. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/org/mapper/mapping/VersionService.xml
  14. 0 0
      cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/sms/mapper/mapping/VersionService.xml
  15. 23 0
      cloud-platform-main/src/main/java/com/huimv/CloudPlatformApplication.java
  16. 38 15
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/controller/CollectorRegisterController.java
  17. 145 0
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/entity/CollectorIndexVo.java
  18. 3 0
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/entity/CollectorRegister.java
  19. 33 0
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/mapper/mapping/CollectorRegisterMapper.xml
  20. 7 0
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/param/CollectorRegisterParam.java
  21. 3 0
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/service/CollectorRegisterService.java
  22. 70 25
      cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/service/impl/CollectorRegisterServiceImpl.java
  23. 20 13
      cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/controller/EartagDataController.java
  24. 9 2
      cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/entity/EartagParamVo.java
  25. 2 0
      cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/entity/vo/EartagDataVo.java
  26. 3 2
      cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/mapper/mapping/EartagDataMapper.xml
  27. 15 4
      cloud-platform-main/src/main/java/com/huimv/modular/eartagregister/controller/EartagRegisterController.java
  28. 0 0
      cloud-platform-main/src/main/java/com/huimv/modular/heartbeatrecord/mapper/mapping/VersionService.xml
  29. 1 0
      cloud-platform-main/src/main/java/com/huimv/modular/rawdata/controller/RawDataController.java
  30. 2 6
      cloud-platform-main/src/main/java/com/huimv/modular/timer/constant/ImportanteConfig.java
  31. 2 1
      cloud-platform-main/src/main/java/com/huimv/modular/timer/tasks/UpdateYesterdayPig.java
  32. 72 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/controller/VersionController.java
  33. 55 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/entity/Version.java
  34. 64 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/enums/BasePigpenExceptionEnum.java
  35. 40 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/mapper/VersionMapper.java
  36. 44 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/service/VersionService.java
  37. 48 0
      cloud-platform-main/src/main/java/com/huimv/modular/version/service/impl/VersionServiceImpl.java
  38. 341 57
      cloud-platform-main/src/test/java/com/huimv/learn/test001.java

+ 6 - 3
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/controller/HeartBeatRecordController.java

@@ -2,7 +2,6 @@
 
 import java.util.Arrays;
 import java.util.Map;
-
 import com.huimv.acquisition.utils.PageUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PathVariable;
@@ -10,10 +9,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
-
 import com.huimv.acquisition.entity.HeartBeatRecordEntity;
 import com.huimv.acquisition.service.HeartBeatRecordService;
-
 import com.huimv.acquisition.result.R;
 
 
@@ -30,6 +27,8 @@ public class HeartBeatRecordController {
     @Autowired
     private HeartBeatRecordService heartBeatRecordService;
 
+
+
     /**
      * 列表
      */
@@ -41,6 +40,8 @@ public class HeartBeatRecordController {
     }
 
 
+
+
     /**
      * 信息
      */
@@ -51,6 +52,8 @@ public class HeartBeatRecordController {
         return R.ok().put("heartBeatRecord", heartBeatRecord);
     }
 
+
+
     /**
      * 保存
      */

+ 0 - 1
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/constant/ImportanteConfig.java

@@ -12,7 +12,6 @@ public class ImportanteConfig {
     //上传的网关心跳时检测,超过一定时间没有心跳包上来就报错-----用来检查网关的上线和下线
     public static final int CHECK_DEVICE_UNABLE_GAP_TIME = 1000*60*2;    //目前设置为20分钟上传一次
 
-
     //耳表数据上传时间的间隔计算需要用到牧场耳标数据上传时间
     public static final int EARTAG_SEND_GAP_TIME = 1000*10;  //目前设置10秒上传一次
 

+ 3 - 5
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/eartagsocket/EartagServer2.java

@@ -28,7 +28,7 @@ public class EartagServer2 {
     //外面的版本    金华的端口     10024    10025  部署在31 服务器上面好了    10023是test1平台的
     //创建构造方法  瑞安 10024
 
-    private int port = 10024;
+    private int port = 10026;
     public EartagServer2(){
     }
 
@@ -77,11 +77,9 @@ public class EartagServer2 {
     }
 
 
-
-
     public static void main(String[] args) throws IOException {
         //建立socket向服务器发送连接请求
-        Socket socket = new Socket("47.98.40.154", 10024);
+        Socket socket = new Socket("127.0.0.1", 10026);
         InputStream inputStream;
         inputStream = socket.getInputStream();
         OutputStream outputStream = socket.getOutputStream();
@@ -90,7 +88,7 @@ public class EartagServer2 {
         //printWriter.println("zj+202007239999893+133070303805451+86+0+2031+0+93+20211111153254+1.0#1.0#11600+0+end");    //没有注册
         //printWriter.println("hm+869401040126203+0+7+end");//没有注册
         //printWriter.println("zj+202007239999892+133070300000099+77+0+0+0+96+2021109916" + i +"33+1.0#1.0#9383+0+end");
-        printWriter.println("zj+470217947374111+133083123619514+96+0+2318+0+74+20220315134339+1.0#1.1#11017+0+end");
+        printWriter.println("hm+100670571384011+2+0+end");
         printWriter.flush();
         //读取数据
         BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));

+ 1 - 7
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/eartagsocket/EartagServerHandler2.java

@@ -23,14 +23,10 @@ import org.springframework.stereotype.Component;
 @Component
 @Slf4j
 public class EartagServerHandler2 extends ChannelInboundHandlerAdapter {
-    
-    /*@Autowired
-    private IEartagDataService eartagDataService;*/
+
     @Autowired
     private IClientDataPacketService iClientDataPacketService;
 
-
-
 //    @Override
 //    public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
 //        ByteBuf data = (ByteBuf) msg;
@@ -46,8 +42,6 @@ public class EartagServerHandler2 extends ChannelInboundHandlerAdapter {
     public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
         ByteBuf data = (ByteBuf) msg;
         String clientAsk = data.toString(CharsetUtil.UTF_8);
-
-
         /* 处理客户端请求数据 */
         String answer = iClientDataPacketService.handleClientSendPacket(clientAsk);
         if (answer != null) {

+ 1 - 1
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/service/impl/ReceivePackageSerivce.java

@@ -148,7 +148,7 @@ public class ReceivePackageSerivce {
 
        Double a =    Double.parseDouble(env_temp)/100-Double.parseDouble(df.format(ln(Integer.parseInt(split[2]))));
         System.out.println("温度差A="+a);
-        if(Math.abs(a)>10){
+        if(Math.abs(a)>20){
             findeartagRegisterEntity.setEarTempStatus(0);
             eartagRegisterService.updateById(findeartagRegisterEntity);
         }else {

+ 24 - 0
cloud-platform-acquisition/src/main/java/com/huimv/acquisition/socket/eartagrecive/service/impl/SendPackageService.java

@@ -97,9 +97,33 @@ public class SendPackageService {
         //hm+202007239999856+2+0+end
         String device_code = clientMessageArray[1];
         System.out.println("基站编码编码为====>"+device_code);
+        //100670571384011
+        //1006705701384011
+        //1006334419877138
+        //100081866546038
+
+        //1006334419877138
+
+        //1000818606546038
+
+        //100 081 866 546 038
+
+        //100 081 860 654 6038
+
+
+
+        //收到编码hm+100081866546038+2+0+end
+
+
+
         LambdaQueryWrapper<CollectorRegisterEntity> wrapper1 = Wrappers.lambdaQuery();
         wrapper1.eq(CollectorRegisterEntity::getDeviceCode, device_code );
         CollectorRegisterEntity collectorRegisterEntity = collectorRegisterDao.selectOne(wrapper1);
+
+        System.out.println(collectorRegisterEntity);
+
+
+
         HeartBeatRecordEntity heartBeatRecordEntity = new HeartBeatRecordEntity();
         heartBeatRecordEntity.setCheckNo("0");
         heartBeatRecordEntity.setCmd(3);

cloud-platform-base/platform-gen/src/main/java/com/huimv/generate/modular/mapper/mapping/CodeGenerateMapper.xml → cloud-platform-base/platform-gen/src/main/java/com/huimv/generate/modular/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/app/mapper/mapping/SysAppMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/app/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/dict/mapper/mapping/SysDictDataMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/dict/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/emp/mapper/mapping/SysEmpExtOrgPosMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/emp/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/log/mapper/mapping/SysOpLogMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/log/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/menu/mapper/mapping/SysMenuMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/menu/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/org/mapper/mapping/SysOrgMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/org/mapper/mapping/VersionService.xml


cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/sms/mapper/mapping/SysSmsMapper.xml → cloud-platform-base/platform-system/src/main/java/com/huimv/sys/modular/sms/mapper/mapping/VersionService.xml


+ 23 - 0
cloud-platform-main/src/main/java/com/huimv/CloudPlatformApplication.java

@@ -30,3 +30,26 @@ public class CloudPlatformApplication {
 }
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+ 38 - 15
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/controller/CollectorRegisterController.java

@@ -35,6 +35,8 @@ import com.huimv.core.enums.LogAnnotionOpTypeEnum;
 import com.huimv.core.pojo.response.ErrorResponseData;
 import com.huimv.core.pojo.response.ResponseData;
 import com.huimv.core.pojo.response.SuccessResponseData;
+import com.huimv.modular.basefarminfo.entity.BaseFarmInfoEntity;
+import com.huimv.modular.basefarminfo.mapper.BaseFarmInfoMapper;
 import com.huimv.modular.basepigpen.entity.BasePigpen;
 import com.huimv.modular.basepigpen.mapper.BasePigpenMapper;
 import com.huimv.modular.basepigpen.service.BasePigpenService;
@@ -85,6 +87,10 @@ public class CollectorRegisterController {
     @Autowired
     private BasePigpenMapper basePigpenMapper;
 
+    @Autowired
+    private BaseFarmInfoMapper baseFarmInfoMapper;
+
+
     //批量添加采集器----客户接口--针对瑞安项目 还没有更新添加基站进去
     @PostMapping("/collectorRegister/addPro")
     public ResponseData addPro(@RequestBody Map<String, Object> params) {
@@ -97,15 +103,13 @@ public class CollectorRegisterController {
         String farmName = (String) params.get("farmName");//牧场名称
         String farmId = (String) params.get("farmId");   //根据账户提交进来的牧场ID来进行操作   传
 
-
-
         if (stage==null){
             stage=5;
         }
-        //基站的编码应该在这儿提前确定
-        //上传的IP怎么处理--初始ooo 登录后台进行设置?
 
 
+        //基站的编码应该在这儿提前确定
+        //上传的IP怎么处理--初始ooo 登录后台进行设置?
         //主从关系直接在这里创建   存到云服务器的只有设备编号  不存在其他的东西  转发IP   我们给他写死就可以了
          //传的注册码不能重复
         LambdaQueryWrapper<CollectorRegister> wrapper13 = Wrappers.lambdaQuery();
@@ -128,7 +132,7 @@ public class CollectorRegisterController {
 
         for (int i = 0; i <as.length ; i++) {
             //添加随机数做基站编码
-            deviceCode.add("100"+String.valueOf( Math.random()).substring(2,15));
+            deviceCode.add("10"+String.valueOf( Math.random()).substring(2,15));
         }
         //发送list
         //关于设备得机器编码重复的问题  每个牧场分配不同的号段  这里就不做校验了
@@ -164,6 +168,10 @@ public class CollectorRegisterController {
             ErrorResponseData errorResponseData = new ErrorResponseData("添加失败,注册中心已经存在此机器编码请联系管理员");
             return errorResponseData;
         }
+        //找farm信息
+        LambdaQueryWrapper<BaseFarmInfoEntity> wrapper11 = Wrappers.lambdaQuery();
+        wrapper11.in(BaseFarmInfoEntity::getId, farmId);
+        BaseFarmInfoEntity baseFarmInfoEntity = baseFarmInfoMapper.selectOne(wrapper11);
 
 
         //一进来先添加栋  拿到  id  再添加舍----所有的校验通过之后再存储栋舍信息  开始添加
@@ -193,16 +201,13 @@ public class CollectorRegisterController {
         wrapper1.orderByDesc(BasePigpen::getId).last("limit 1");
         BasePigpen pigpenUnite = basePigpenMapper.selectOne(wrapper1);
 
-
-
-
         //前面校验都通过.这儿添加发送的端口,进行数据添加
         for (int i = 0; i < as.length; i++) {
 
             CollectorRegister collectorRegister = new CollectorRegister();
             collectorRegister.setRegisteCode(as[i]);//拿基站编码
             collectorRegister.setDeviceCode(deviceCode.get(i));//拿基站编码
-            collectorRegister.setFarmCode(farmId);
+            collectorRegister.setFarmCode(baseFarmInfoEntity.getFarmCode());
             collectorRegister.setFarmName(farmName);
             collectorRegister.setRegisterTime(new Date());
             collectorRegister.setOrgId(123456L);
@@ -213,9 +218,9 @@ public class CollectorRegisterController {
             collectorRegister.setPort(ConstnatValue.Port);//
             collectorRegister.setServerIp(ConstnatValue.IP_VALUE);
             collectorRegister.setOrgName(farmName);
+            collectorRegister.setStage(4);
             collectorRegister.setServerIp(ConstnatValue.IP_VALUE);
 
-
             collectorRegisterService.save(collectorRegister);
 
         }
@@ -229,8 +234,18 @@ public class CollectorRegisterController {
     }
 
 
+     //就是直接查比价好  放缓存其实问题不大的
+    //新接口  直接列出  每一个牧场  好设备   坏设备  总设备
+    //不需要参数
+    @PostMapping("/collectorRegister/listCollectorDeatils")
+    public ResponseData listCollectorDeatils(@RequestBody Map<String, Object> params) {
+         //找出所有牧场
+        List<BaseFarmInfoEntity> baseFarmInfoEntities = baseFarmInfoMapper.selectList(null);
+        //找出所有基站
 
+        return   null;
 
+    }
 
 
 
@@ -247,11 +262,15 @@ public class CollectorRegisterController {
 
     @GetMapping("/collectorRegister/page")
     public ResponseData page(CollectorRegisterParam collectorRegisterParam) {
-
         return new SuccessResponseData(collectorRegisterService.page(collectorRegisterParam));
     }
 
 
+
+
+
+
+
     /**
      * 添加设备管理
      * 添加就是这个接口   最终就是这样  带上  token就行
@@ -349,11 +368,8 @@ public class CollectorRegisterController {
 
 
 
-
-
-
     /**
-     * 采集器总数
+     * 采集器总数--之前的接口--暂时不能动   我们自己的新写一个
      *
      * @author yinhao
      * @date 2021-08-19 09:43:52
@@ -363,4 +379,11 @@ public class CollectorRegisterController {
         return collectorRegisterService.selectPcEveryStatusCollectors(orgId);
     }
 
+
+
+
+
+
+
+
 }

+ 145 - 0
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/entity/CollectorIndexVo.java

@@ -0,0 +1,145 @@
+package com.huimv.modular.collectorregister.entity;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * TODO
+ *
+ * @author CodeYang.
+ * @date 2022/5/6 11:08
+ */
+
+@Data
+public class CollectorIndexVo {
+
+
+    /**
+     * 记录id(主键)
+     */
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 组织id
+     */
+    @Excel(name = "组织id")
+    private Long orgId;
+
+    /**
+     * 组织名称
+     */
+    @Excel(name = "组织名称")
+    private String orgName;
+
+    /**
+     * 设备编码
+     */
+    @Excel(name = "设备编码")
+    private String deviceCode;
+
+    /**
+     * 盒子的芯片编码
+     */
+    @Excel(name = "盒子的芯片编码")
+    private String registeCode;
+
+    /**
+     * 牧场编码
+     */
+    @Excel(name = "牧场编码")
+    private String farmCode;
+
+    /**
+     * 牧场名称
+     */
+    @Excel(name = "牧场名称")
+    private String farmName;
+
+    /**
+     * 动物种类
+     */
+    @Excel(name = "动物种类")
+    private Integer typeF;
+
+    /**
+     * 阶段
+     */
+    @Excel(name = "阶段")
+    private Integer stage;
+
+    /**
+     * 猪舍id
+     */
+    @Excel(name = "猪舍id")
+    private Integer pigpenId;
+
+
+    /**
+     *   平均温度  2.23添加的这个参数
+     */
+    @Excel(name = "近期平均温度")
+    private double envTemp;
+
+    /**
+     * 栋舍名称
+     */
+    @Excel(name = "栋舍名称")
+    private String penName;
+
+    /**
+     * 单元id
+     */
+    @Excel(name = "单元id")
+    private Integer unitId;
+
+    /**
+     * 单元名称
+     */
+    @Excel(name = "单元名称")
+    private String unitName;
+
+    /**
+     * 上传服务器地址
+     */
+    @Excel(name = "上传服务器地址")
+    private String serverIp;
+
+    /**
+     * 端口
+     */
+    @Excel(name = "端口")
+    private Integer port;
+
+    /**
+     * 注册时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private Date registerTime;
+
+    /**
+     * 最后上传时间
+     */
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date lastTime;
+    /**
+     * 0:正常,1:网络异常,2:采集异常,3:注销
+     */
+    @Excel(name = "状态")
+    private Integer canStatus;
+
+
+    /**
+     * 耳标总数
+     */
+    private Integer totalEartag;
+
+
+
+}

+ 3 - 0
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/entity/CollectorRegister.java

@@ -162,4 +162,7 @@ public class CollectorRegister  {
     private Integer canStatus;
 
 
+
+
+
 }

+ 33 - 0
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/mapper/mapping/CollectorRegisterMapper.xml

@@ -2,4 +2,37 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.huimv.modular.collectorregister.mapper.CollectorRegisterMapper">
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 </mapper>

+ 7 - 0
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/param/CollectorRegisterParam.java

@@ -149,4 +149,11 @@ public class CollectorRegisterParam extends BaseParam {
      */
     private Integer canStatus;
 
+
+
+
+    /**
+     * 耳标总数
+     */
+    private Integer totalEartag;
 }

+ 3 - 0
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/service/CollectorRegisterService.java

@@ -29,6 +29,7 @@ import com.huimv.core.pojo.page.PageResult;
 import com.huimv.core.pojo.response.ResponseData;
 import com.huimv.modular.collectorregister.entity.CollectorRegister;
 import com.huimv.modular.collectorregister.param.CollectorRegisterParam;
+
 import java.util.List;
 
 /**
@@ -89,4 +90,6 @@ public interface CollectorRegisterService extends IService<CollectorRegister> {
 
 
     ResponseData selectPcEveryStatusCollectors(Long orgId);
+
+
 }

+ 70 - 25
cloud-platform-main/src/main/java/com/huimv/modular/collectorregister/service/impl/CollectorRegisterServiceImpl.java

@@ -28,36 +28,31 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.huimv.core.consts.CommonConstant;
 import com.huimv.core.context.login.LoginContextHolder;
-import com.huimv.core.enums.CommonStatusEnum;
 import com.huimv.core.exception.ServiceException;
 import com.huimv.core.factory.PageFactory;
-import com.huimv.core.pojo.login.SysLoginUser;
 import com.huimv.core.pojo.page.PageResult;
 import com.huimv.core.pojo.response.ResponseData;
 import com.huimv.core.pojo.response.SuccessResponseData;
-import com.huimv.core.util.PoiUtil;
 import com.huimv.modular.collectorregister.entity.CollectorRegister;
 import com.huimv.modular.collectorregister.enums.CollectorRegisterExceptionEnum;
 import com.huimv.modular.collectorregister.mapper.CollectorRegisterMapper;
 import com.huimv.modular.collectorregister.param.CollectorRegisterParam;
 import com.huimv.modular.collectorregister.service.CollectorRegisterService;
+import com.huimv.modular.eartagregister.entity.EartagRegister;
+import com.huimv.modular.eartagregister.mapper.EartagRegisterMapper;
 import com.huimv.sys.modular.org.entity.SysOrg;
 import com.huimv.sys.modular.org.mapper.SysOrgMapper;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import javax.annotation.Resource;
-import java.sql.Timestamp;
-import java.util.Date;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
+
+import java.util.*;
 
 /**
  * 设备管理service接口实现类
@@ -68,15 +63,22 @@ import java.util.Map;
 @Service
 public class CollectorRegisterServiceImpl extends ServiceImpl<CollectorRegisterMapper, CollectorRegister> implements CollectorRegisterService {
 
+    @Autowired
+    private SysOrgMapper sysOrgMapper;
+    @Autowired
+    EartagRegisterMapper eartagRegisterMapper;
+
 
-    //这儿直接全部查出来算了
+
+    //这儿直接全部查出来算了-- 添加字段
+    //2022.5.6--添加下属耳标个数--最近上传次数
     @Override
     public PageResult<CollectorRegister> page(CollectorRegisterParam collectorRegisterParam) {
         QueryWrapper<CollectorRegister> queryWrapper = new QueryWrapper<>();
         if (ObjectUtil.isNotNull(collectorRegisterParam)) {
             Long orgId = LoginContextHolder.me().getSysLoginUserOrgId();
             // 根据组织id 查询
-               // queryWrapper.lambda().eq(CollectorRegister::getOrgId, orgId);
+            // queryWrapper.lambda().eq(CollectorRegister::getOrgId, orgId);
             if (ObjectUtil.isNotEmpty(collectorRegisterParam.getRegisterTime())) {
                 Date registerTime = collectorRegisterParam.getRegisterTime();
                 DateTime startTime = DateUtil.beginOfDay(registerTime);
@@ -84,7 +86,6 @@ public class CollectorRegisterServiceImpl extends ServiceImpl<CollectorRegisterM
                 queryWrapper.lambda().ge(CollectorRegister::getRegisterTime,startTime);
                 queryWrapper.lambda().le(CollectorRegister::getRegisterTime,endTime);
             }
-
             // 根据设备编码查询
             if (ObjectUtil.isNotEmpty(collectorRegisterParam.getPigpenId())) {
                 queryWrapper.lambda().like(CollectorRegister::getPigpenId, collectorRegisterParam.getPigpenId());
@@ -105,32 +106,61 @@ public class CollectorRegisterServiceImpl extends ServiceImpl<CollectorRegisterM
             //按照最后上传时间倒序
             queryWrapper.lambda().orderByDesc(CollectorRegister::getLastTime);
         }
-        return new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
+
+        //添加字段
+
+        PageResult<CollectorRegister> collectorRegisterPageResult = new PageResult<>(this.page(PageFactory.defaultPage(), queryWrapper));
+
+        List<CollectorRegisterParam> rows01 =   new ArrayList<>();
+
+
+
+        List<CollectorRegister> rows = collectorRegisterPageResult.getRows();
+
+
+
+
+        for (CollectorRegister row : rows) {
+
+            LambdaQueryWrapper<EartagRegister> lambdaQuery = Wrappers.lambdaQuery();
+            lambdaQuery.eq(EartagRegister::getDeviceCode, row.getDeviceCode());
+
+            CollectorRegisterParam collectorRegisterParam1 = new CollectorRegisterParam();
+            BeanUtils.copyProperties(row,collectorRegisterParam1);
+            collectorRegisterParam1.setTotalEartag(eartagRegisterMapper.selectCount(lambdaQuery)  );
+            rows01.add(collectorRegisterParam1);
+
+
+        }
+
+        //返回行的   目前只能逐个赋值
+
+        return   collectorRegisterPageResult;
+
+
     }
 
-    
+
+
+
+
     @Override
     public List<CollectorRegister> list(CollectorRegisterParam collectorRegisterParam) {
         return this.list();
     }
 
-    @Resource
-    private SysOrgMapper sysOrgMapper;
 
     @Override
     public void add(CollectorRegisterParam collectorRegisterParam) {
         CollectorRegister collectorRegister = new CollectorRegister();
-        //之前是拿组织ID  之后添加---现在应该改变这里
         BeanUtil.copyProperties(collectorRegisterParam, collectorRegister);
         Long sysLoginUserOrgId = LoginContextHolder.me().getSysLoginUserOrgId();
         SysOrg sysOrg = sysOrgMapper.selectById(sysLoginUserOrgId);
-
-        collectorRegister.setOrgId(sysLoginUserOrgId);//非省平台不需要这个
-        collectorRegister.setOrgName(sysOrg.getName());//非省平台不需要这个
+        collectorRegister.setOrgId(sysLoginUserOrgId);
+        collectorRegister.setOrgName(sysOrg.getName());
         this.save(collectorRegister);
     }
 
-
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void delete(List<Integer> ids) {
@@ -169,10 +199,10 @@ public class CollectorRegisterServiceImpl extends ServiceImpl<CollectorRegisterM
         if (ObjectUtil.isEmpty(orgId)){
              orgId = LoginContextHolder.me().getSysLoginUserOrgId();
         }
-
+        List<Long> orgIds = getOrgid(orgId);
 
         LambdaQueryWrapper<CollectorRegister> lambdaQuery = Wrappers.lambdaQuery();
-        lambdaQuery.eq(CollectorRegister::getOrgId, orgId);
+        lambdaQuery.in(CollectorRegister::getOrgId, orgIds);
 
         Map<String, Integer> map = new LinkedHashMap<>();
         map.put("total", count(lambdaQuery));
@@ -192,4 +222,19 @@ public class CollectorRegisterServiceImpl extends ServiceImpl<CollectorRegisterM
 
         return  new SuccessResponseData(map);
     }
+
+    public List<Long> getOrgid(Long orgId){
+          QueryWrapper<SysOrg> sysOrgQueryWrapper = new QueryWrapper<>();
+            sysOrgQueryWrapper.select("id");
+            sysOrgQueryWrapper.like("pids",orgId);
+            List<SysOrg> sysOrgs = sysOrgMapper.selectList(sysOrgQueryWrapper);
+            List<Long> orgIds = new ArrayList<>();
+            orgIds.add(orgId);
+            for (SysOrg sysOrg : sysOrgs) {
+                orgIds.add(sysOrg.getId());
+            }
+           return orgIds;
+    }
+
+
 }

+ 20 - 13
cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/controller/EartagDataController.java

@@ -24,12 +24,16 @@ Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意
  */
 package com.huimv.modular.eartagdata.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.huimv.core.annotion.Permission;
 import com.huimv.core.pojo.page.PageResult;
 import com.huimv.core.pojo.response.ResponseData;
 import com.huimv.core.pojo.response.SuccessResponseData;
+import com.huimv.modular.basefarminfo.entity.BaseFarmInfoEntity;
+import com.huimv.modular.basefarminfo.mapper.BaseFarmInfoMapper;
 import com.huimv.modular.collectorregister.entity.CollectorRegister;
 import com.huimv.modular.eartagdata.entity.EartagData;
 import com.huimv.modular.eartagdata.entity.EartagParamVo;
@@ -63,6 +67,13 @@ public class EartagDataController {
     @Resource
     private EartagDataMapper   eartagDataMapper;
 
+
+    @Resource
+    private BaseFarmInfoMapper baseFarmInfoMapper;
+
+
+
+
     //增加处理耳标数据接口
 
     //根据耳标电量查询
@@ -105,7 +116,14 @@ public class EartagDataController {
         Integer farmId = (Integer)  params.get("farmId");
         EartagParamVo  eartagParamVo = new EartagParamVo();
 
-        eartagParamVo.setFarmId(farmId);
+
+        if(farmId!=null) {
+            LambdaQueryWrapper<BaseFarmInfoEntity> wrapper1 = Wrappers.lambdaQuery();
+            wrapper1.eq(BaseFarmInfoEntity::getId, farmId);
+            BaseFarmInfoEntity baseFarmInfoEntity = baseFarmInfoMapper.selectOne(wrapper1);
+            eartagParamVo.setFarmId(baseFarmInfoEntity.getFarmCode());
+        }
+
         eartagParamVo.setLimit(String.valueOf(pageSize));
         eartagParamVo.setPage(String.valueOf(pageNo));
         eartagParamVo.setEarTempStatus(EarTempStatus);
@@ -115,27 +133,21 @@ public class EartagDataController {
         if (StringUtilsWork.isNotBlank(eartagNo)) {
             eartagParamVo.setEartagNo(eartagNo);
 
-
             PageResult<EartagDataVo> eartagDataVolist = eartagDataService.queryPageEartag(eartagParamVo);
             System.out.println(eartagParamVo.toString());
             return     new SuccessResponseData(eartagDataVolist);
-
             //    PageResult<EartagDataVo> eartagDataVolist = eartagDataService.queryPageEartag(eartagParamVo);
         }
-
         //单元号
         if (StringUtilsWork.isNotBlank(unitNo)) {
             eartagParamVo.setEartagNo(unitNo);
         }
 
-
-
         //采集器标号
         if (StringUtilsWork.isNotBlank(deviceCode)) {
             eartagParamVo.setDeviceCode(deviceCode);
         }
 
-
         PageResult<EartagDataVo> eartagDataVolist = eartagDataService.queryPageIndex(eartagParamVo);
         System.out.println(eartagParamVo.toString());
         return     new SuccessResponseData(eartagDataVolist);
@@ -174,8 +186,6 @@ public class EartagDataController {
 
 
 
-
-
     /**
      * 查询耳标数据详情
      *
@@ -189,9 +199,9 @@ public class EartagDataController {
         return   new SuccessResponseData(byConditions);
     }
 
+
     /**
      * 添加耳标数据详情
-     *
      * @author Yangdi
      * @date 2021-08-19 13:18:22
      */
@@ -203,7 +213,6 @@ public class EartagDataController {
 
     /**
      * 删除耳标数据详情,可批量删除
-     *
      * @author Yangdi
      * @date 2021-08-19 13:18:22
      */
@@ -258,8 +267,6 @@ public class EartagDataController {
         eartagDataService.export(eartagDataParam);
     }
 
-
-
     /**
      * 查询每小时的上传量
      */

+ 9 - 2
cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/entity/EartagParamVo.java

@@ -125,14 +125,21 @@ public class EartagParamVo {
     /**
      * 牧场编号
      */
-    private Integer farmId;
+    private String farmId;
+
 
 
     /**
-     * 耳标的温度异常情况 为  0   的时候就是异常
+     * 牧场编号
      */
+    private String farmName;
+
 
 
+    /**
+     * 耳标的温度异常情况 为  0   的时候就是异常
+     */
+
     private Integer earTempStatus;
 
 

+ 2 - 0
cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/entity/vo/EartagDataVo.java

@@ -66,6 +66,8 @@ public class EartagDataVo {
 
     private String unitName;
 
+    private String farmName;
+
 
     //阶段
     private Integer stage;

+ 3 - 2
cloud-platform-main/src/main/java/com/huimv/modular/eartagdata/mapper/mapping/EartagDataMapper.xml

@@ -42,6 +42,7 @@
         <result property="exercise" column="exercise"/>
         <result property="countTimes" column="count_times"/>
         <result property="earTempStatus" column="ear_temp_status"/>
+        <result property="farmName" column="farm_name"/>
     </resultMap>
 
 
@@ -52,9 +53,9 @@
             parameterType="com.huimv.modular.eartagdata.entity.vo.EartagDataVo" >
         SELECT   ed1.id ,  ed1.eartag_no  ,ed1.device_code ,ed1.time, ed1.ear_temp   ,ed1.bat  ,ed1.exercise ,
 
-        ed1.env_temp   ,ed1.rssi  ,co.pen_name  ,co.unit_name   ,co.stage   ,co.registe_code ,ear.count_times,ear.ear_temp_status
+        ed1.env_temp   ,ed1.rssi  ,co.pen_name  ,co.unit_name   ,co.stage   ,co.registe_code   , co.farm_name   ,ear.count_times,ear.ear_temp_status
 
-        FROM   eartag_data ed1    JOIN (
+        FROM   eartag_data   ed1     JOIN (
 
         SELECT MAX(id) id  FROM   eartag_data ed2
         WHERE

+ 15 - 4
cloud-platform-main/src/main/java/com/huimv/modular/eartagregister/controller/EartagRegisterController.java

@@ -39,6 +39,8 @@ import com.huimv.core.pojo.page.PageResult;
 import com.huimv.core.pojo.response.ErrorResponseData;
 import com.huimv.core.pojo.response.ResponseData;
 import com.huimv.core.pojo.response.SuccessResponseData;
+import com.huimv.modular.basefarminfo.entity.BaseFarmInfoEntity;
+import com.huimv.modular.basefarminfo.mapper.BaseFarmInfoMapper;
 import com.huimv.modular.collectorregister.entity.CollectorRegister;
 import com.huimv.modular.collectorregister.mapper.CollectorRegisterMapper;
 import com.huimv.modular.collectorregister.param.CollectorRegisterParam;
@@ -99,7 +101,8 @@ public class EartagRegisterController{
     private CollectorRegisterMapper collectorRegisterMapper ;
 
 
-
+    @Autowired
+    private BaseFarmInfoMapper baseFarmInfoMapper ;
 
     //增加增删改查的功能  删除的时候删除所有的耳标:
     //手动添加的只有三个参数  耳标号   坐标  然后没有了    在上传的时候补齐其余信息  (默认上传次数为1)
@@ -111,7 +114,7 @@ public class EartagRegisterController{
         String deviceCode = (String) params.get("deviceCode");  //坐标
         //禁止重复添加耳标号
         LambdaQueryWrapper<CollectorRegister> wrapper = Wrappers.lambdaQuery();
-        wrapper.eq(CollectorRegister::getDeviceCode, deviceCode);
+        wrapper.eq(CollectorRegister::getRegisteCode, deviceCode);
         CollectorRegister collectorRegister = collectorRegisterMapper.selectOne(wrapper);
 
         if (collectorRegister == null) {
@@ -155,6 +158,8 @@ public class EartagRegisterController{
         return successResponseData;
     }
 
+
+
     /**
      * 最近添加的十个耳标
      * @param params
@@ -165,10 +170,15 @@ public class EartagRegisterController{
     @PostMapping ("/EratagRegister/listlast10Add")
     public ResponseData listlast10Add(@RequestBody Map<String, Object> params) throws ClientException, ParseException {
         //入参的统一校验就应该通过 param的统一校验来做  不然重复代码过多啊
-        String farmId = (String) params.get("farmId");  //耳标号
+        String farmId = (String) params.get("farmId");
+
+        LambdaQueryWrapper<BaseFarmInfoEntity> wrapper1 = Wrappers.lambdaQuery();
+        wrapper1.eq(BaseFarmInfoEntity::getId, farmId);
+        BaseFarmInfoEntity baseFarmInfoEntity = baseFarmInfoMapper.selectOne(wrapper1);
+
         //禁止重复添加耳标号
         LambdaQueryWrapper<EartagRegister> wrapper = Wrappers.lambdaQuery();
-        wrapper.eq(EartagRegister::getFarmCode, farmId);
+        wrapper.eq(EartagRegister::getFarmCode, baseFarmInfoEntity.getFarmCode());
         wrapper.orderByDesc(EartagRegister::getId);
         wrapper.last("limit 10");
         List<EartagRegister> eartagRegisters = eartagRegisterMapper.selectList(wrapper);
@@ -179,6 +189,7 @@ public class EartagRegisterController{
     }
 
 
+
     @RequestMapping("/EratagRegister/list")
     public  SuccessResponseData listEratagRegister(@RequestBody Map<String, Object> params) throws ClientException, ParseException {
         //入参的统一校验就应该通过 param的统一校验来做  不然重复代码过多啊

cloud-platform-main/src/main/java/com/huimv/modular/heartbeatrecord/mapper/mapping/HeartBeatRecordMapper.xml → cloud-platform-main/src/main/java/com/huimv/modular/heartbeatrecord/mapper/mapping/VersionService.xml


+ 1 - 0
cloud-platform-main/src/main/java/com/huimv/modular/rawdata/controller/RawDataController.java

@@ -139,6 +139,7 @@ public class RawDataController {
     @BusinessLog(title = "原始数据存储_增加", opType = LogAnnotionOpTypeEnum.ADD)
     public ResponseData add(@RequestBody @Validated(RawDataParam.add.class) RawDataParam rawDataParam) {
             rawDataService.add(rawDataParam);
+
         return new SuccessResponseData();
     }
 

+ 2 - 6
cloud-platform-main/src/main/java/com/huimv/modular/timer/constant/ImportanteConfig.java

@@ -9,15 +9,11 @@ package com.huimv.modular.timer.constant;
  */
 public class ImportanteConfig {
 
-    //上传的网关心跳时检测,超过一定时间没有心跳包上来就报错-----用来检查网关的上线和下线
-    public static final int CHECK_DEVICE_UNABLE_GAP_TIME = 1000*60*5;    //目前设置为20分钟上传一次
 
+    //上传的网关心跳时检测,超过一定时间没有心跳包上来就报错-----用来检查网关的上线和下线
+    public static final int CHECK_DEVICE_UNABLE_GAP_TIME = 1000*60*20;    //目前设置为20分钟上传一次
     //耳表数据上传时间的间隔计算需要用到牧场耳标数据上传时间
     public static final int EARTAG_SEND_GAP_TIME = 1000*10;  //目前设置10秒上传一次
 
 
-
-
-
-
 }

+ 2 - 1
cloud-platform-main/src/main/java/com/huimv/modular/timer/tasks/UpdateYesterdayPig.java

@@ -3,7 +3,6 @@ package com.huimv.modular.timer.tasks;
 import com.huimv.core.timer.TimerTaskRunner;
 import com.huimv.modular.eartagregister.service.EartagRegisterService;
 import org.springframework.stereotype.Component;
-
 import javax.annotation.Resource;
 
 /**
@@ -22,4 +21,6 @@ public class UpdateYesterdayPig implements TimerTaskRunner {
     public void action() {
         eartagRegisterService.updateYestdayPig();
     }
+
+
 }

+ 72 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/controller/VersionController.java

@@ -0,0 +1,72 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.core.annotion.BusinessLog;
+import com.huimv.core.annotion.DataScope;
+import com.huimv.core.annotion.Permission;
+import com.huimv.core.context.login.LoginContextHolder;
+import com.huimv.core.enums.LogAnnotionOpTypeEnum;
+import com.huimv.core.pojo.response.ResponseData;
+import com.huimv.core.pojo.response.SuccessResponseData;
+import com.huimv.modular.basepigpen.entity.BasePigpen;
+import com.huimv.modular.basepigpen.param.BasePigpenParam;
+import com.huimv.modular.basepigpen.service.BasePigpenService;
+import com.huimv.modular.collectorregister.param.CollectorRegisterParam;
+import com.huimv.modular.rawdata.param.RawDataParam;
+import com.huimv.modular.version.entity.Version;
+import com.huimv.modular.version.mapper.VersionMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * 栋舍表控制器
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+@RestController
+public class VersionController {
+
+@Autowired
+    VersionMapper   versionMapper;
+
+    @PostMapping("/version/find")
+    public ResponseData add(          ) {
+        Version version = versionMapper.selectById(1);
+        System.out.println(version);
+        return new SuccessResponseData(version);
+
+    }
+
+
+}

+ 55 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/entity/Version.java

@@ -0,0 +1,55 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.sql.Date;
+
+/**
+ * 栋舍表
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+@Data
+@TableName("version")
+public class Version {
+
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 栋舍名称
+     */
+    private String value;
+
+
+}

+ 64 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/enums/BasePigpenExceptionEnum.java

@@ -0,0 +1,64 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.enums;
+
+import com.huimv.core.annotion.ExpEnumType;
+import com.huimv.core.exception.enums.abs.AbstractBaseExceptionEnum;
+import com.huimv.core.factory.ExpEnumCodeFactory;
+import com.huimv.sys.core.consts.SysExpEnumConstant;
+
+/**
+ * 栋舍表
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+@ExpEnumType(module = SysExpEnumConstant.SNOWY_SYS_MODULE_EXP_CODE)
+public enum BasePigpenExceptionEnum implements AbstractBaseExceptionEnum {
+
+    /**
+     * 数据不存在
+     */
+    NOT_EXIST(1, "此数据不存在");
+
+    private final Integer code;
+
+    private final String message;
+        BasePigpenExceptionEnum(Integer code, String message) {
+        this.code = code;
+        this.message = message;
+    }
+
+    @Override
+    public Integer getCode() {
+        return ExpEnumCodeFactory.getExpEnumCode(this.getClass(), code);
+    }
+
+    @Override
+    public String getMessage() {
+        return message;
+    }
+
+}

+ 40 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/mapper/VersionMapper.java

@@ -0,0 +1,40 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.modular.basepigpen.entity.BasePigpen;
+import com.huimv.modular.version.entity.Version;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 栋舍表
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+@Repository
+public interface VersionMapper extends BaseMapper<Version> {
+}

+ 44 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/service/VersionService.java

@@ -0,0 +1,44 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.core.pojo.page.PageResult;
+import com.huimv.core.pojo.response.ResponseData;
+import com.huimv.modular.basepigpen.entity.BasePigpen;
+import com.huimv.modular.basepigpen.param.BasePigpenParam;
+import com.huimv.modular.version.entity.Version;
+
+import java.util.List;
+
+/**
+ * 栋舍表service接口
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+public interface VersionService extends IService<Version> {
+
+}

+ 48 - 0
cloud-platform-main/src/main/java/com/huimv/modular/version/service/impl/VersionServiceImpl.java

@@ -0,0 +1,48 @@
+/*
+Copyright [2020] [https://www.xiaonuo.vip]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+
+1.请不要删除和修改根目录下的LICENSE文件。
+2.请不要删除和修改Snowy源码头部的版权声明。
+3.请保留源码和相关描述文件的项目出处,作者声明等。
+4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
+6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package com.huimv.modular.version.service.impl;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import com.huimv.modular.version.entity.Version;
+import com.huimv.modular.version.mapper.VersionMapper;
+import com.huimv.modular.version.service.VersionService;
+import net.bytebuddy.implementation.bytecode.Throw;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * 栋舍表service接口实现类
+ *
+ * @author yinhao
+ * @date 2021-08-17 14:00:42
+ */
+@Service
+public class VersionServiceImpl extends ServiceImpl<VersionMapper, Version> implements VersionService {
+
+
+}

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 341 - 57
cloud-platform-main/src/test/java/com/huimv/learn/test001.java