Forráskód Böngészése

档案管理(打印暂未修改)1

wwh 1 éve
szülő
commit
49149b944e
25 módosított fájl, 362 hozzáadás és 114 törlés
  1. 34 38
      huimv-admin/src/main/java/com/huimv/guowei/admin/controller/BaseDuckInfoController.java
  2. 6 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvMoveCallController.java
  3. 1 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvRegularCallEggController.java
  4. 1 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvRegularCallFeedingController.java
  5. 1 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/BaseDuckInfo.java
  6. 1 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/DuckHealthInfo.java
  7. 1 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/DuckImmunityInfo.java
  8. 4 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvMoveCall.java
  9. 4 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvRegularCallEgg.java
  10. 5 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvRegularCallFeeding.java
  11. 7 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvMoveCallMapper.java
  12. 6 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvRegularCallEggMapper.java
  13. 6 1
      huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvRegularCallFeedingMapper.java
  14. 6 2
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/IBaseDuckInfoService.java
  15. 2 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/IEnvMoveCallService.java
  16. 77 17
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/BaseDuckInfoServiceImpl.java
  17. 8 2
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/DuckHealthInfoServiceImpl.java
  18. 9 2
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/DuckImmunityInfoServiceImpl.java
  19. 35 22
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvMoveCallServiceImpl.java
  20. 14 7
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvRegularCallEggServiceImpl.java
  21. 9 7
      huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvRegularCallFeedingServiceImpl.java
  22. 96 0
      huimv-admin/src/main/java/com/huimv/guowei/admin/utils/Print.java
  23. 7 0
      huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvMoveCallMapper.xml
  24. 7 0
      huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvRegularCallEggMapper.xml
  25. 15 9
      huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvRegularCallFeedingMapper.xml

+ 34 - 38
huimv-admin/src/main/java/com/huimv/guowei/admin/controller/BaseDuckInfoController.java

@@ -30,50 +30,43 @@ public class BaseDuckInfoController {
 
     @Autowired
     private IBaseDuckInfoService duckInfoService;
-    @Autowired
-    private UploadImage uploadImage;
+
 
     @RequestMapping("/listDuck")
     public Result listDuck(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS, duckInfoService.listDuck(httpServletRequest, paramsMap));
+        return duckInfoService.listDuck(httpServletRequest, paramsMap);
     }
 
     @RequestMapping("/deleteDuck")
     public Result deleteDuck(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        String id = paramsMap.get("id");
-        QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("id", id);
-        BaseDuckInfo one = duckInfoService.getOne(queryWrapper);
-        if (one.getIsCage() == 1) {
-            duckInfoService.removeById(paramsMap.get("id"));
-            return new Result(10000, "删除成功!", true);
-        } else {
-            return new Result(10001, "鸭子未出笼,不可删除!", false);
-        }
-
+        duckInfoService.removeById(paramsMap.get("id"));
+        return new Result(10000, "删除成功!", true);
     }
 
     @PostMapping("/addDuck")
-    public void addDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "imgUrl") MultipartFile imgUrl,
-                        @RequestParam(name = "id") String id,
-                        @RequestParam(name = "duckBreed") String duckBreed,
-                        @RequestParam(name = "duckSex") String duckSex,
-                        @RequestParam(name = "duckBirthPlace") String duckBirthPlace,
-                        @RequestParam(name = "duckBirthDay") String  duckBirthDay,
-                        @RequestParam(name = "genotype") String genotype,
-                        @RequestParam(name = "nowWeight") String nowWeight,
-                        @RequestParam(name = "unitId") String unitId,
-                        @RequestParam(name = "breedEnv") String breedEnv,
-                        @RequestParam(name = "hatchRate",required = false) String hatchRate,
-                        @RequestParam(name = "fatherNum") String fatherNum,
-                        @RequestParam(name = "motherNum") String motherNum,
-                        @RequestParam(name = "fatherGenotype") String fatherGenotype,
-                        @RequestParam(name = "motherGenotype") String motherGenotype,
-                        @RequestParam(name = "specialNeeds") String specialNeeds) throws Exception {
+    public Result addDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "imgUrl") MultipartFile imgUrl,
+                          @RequestParam(name = "farmId") String farmId,
+                          @RequestParam(name = "duckCode") String duckCode,
+                          @RequestParam(name = "unitName") String unitName,
+                          @RequestParam(name = "duckBreed") String duckBreed,
+                          @RequestParam(name = "duckSex") String duckSex,
+                          @RequestParam(name = "duckBirthPlace") String duckBirthPlace,
+                          @RequestParam(name = "duckBirthDay") String duckBirthDay,
+                          @RequestParam(name = "genotype") String genotype,
+                          @RequestParam(name = "nowWeight") String nowWeight,
+                          @RequestParam(name = "unitId") String unitId,
+                          @RequestParam(name = "breedEnv") String breedEnv,
+                          @RequestParam(name = "hatchRate", required = false) String hatchRate,
+                          @RequestParam(name = "fatherNum") String fatherNum,
+                          @RequestParam(name = "motherNum") String motherNum,
+                          @RequestParam(name = "fatherGenotype") String fatherGenotype,
+                          @RequestParam(name = "motherGenotype") String motherGenotype,
+                          @RequestParam(name = "specialNeeds") String specialNeeds) throws Exception {
         httpServletRequest.setCharacterEncoding("UTF-8");
-        String content = uploadImage.getImageCom(imgUrl);
         Map<String, String> map = new HashMap<>();
-        map.put("id", id);
+        map.put("unitName", unitName);
+        map.put("farmId", farmId);
+        map.put("duckCode", duckCode);
         map.put("duckBreed", duckBreed);
         map.put("duckSex", duckSex);
         map.put("duckBirthPlace", duckBirthPlace);
@@ -88,21 +81,24 @@ public class BaseDuckInfoController {
         map.put("fatherGenotype", fatherGenotype);
         map.put("motherGenotype", motherGenotype);
         map.put("specialNeeds", specialNeeds);
-        map.put("imgUrl", content);
-        duckInfoService.addDuck(httpServletRequest, map);
+        return duckInfoService.addDuck(httpServletRequest, map, imgUrl);
     }
 
     @RequestMapping("/editDuck")
-    public Result editDuck(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS, duckInfoService.editDuck(httpServletRequest, paramsMap));
+    public Result editDuck(HttpServletRequest httpServletRequest, @RequestBody BaseDuckInfo baseDuckInfo) {
+        return duckInfoService.editDuck(httpServletRequest, baseDuckInfo);
     }
+
     @RequestMapping("/listDuckById")
     public Result listDuckById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS, duckInfoService.listDuckById(httpServletRequest, paramsMap));
+        return duckInfoService.listDuckById(httpServletRequest, paramsMap);
     }
 
     @GetMapping("/printDuck")
-    public void printDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "duckCode") String duckCode) {
+    public void printDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "duckCode") String duckCode) throws Exception {
+        Map<String, String> map = new HashMap<>();
+        map.put("duckCode", duckCode);
+        duckInfoService.printDuck(httpServletRequest, map);
 
     }
 }

+ 6 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvMoveCallController.java

@@ -32,6 +32,11 @@ public class EnvMoveCallController {
 
     @RequestMapping("/listById")
     public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS,moveCallService.listById(httpServletRequest, paramsMap));
+        return moveCallService.listById(httpServletRequest, paramsMap);
+    }
+
+    @RequestMapping("/listWeight")
+    public Result listWeight(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
+        return moveCallService.listWeight(httpServletRequest, paramsMap);
     }
 }

+ 1 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvRegularCallEggController.java

@@ -34,7 +34,7 @@ public class EnvRegularCallEggController {
 
     @RequestMapping("/listById")
     public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS, eggService.listById(httpServletRequest, paramsMap));
+        return eggService.listById(httpServletRequest, paramsMap);
     }
 
     @RequestMapping("/addEgg")

+ 1 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/controller/EnvRegularCallFeedingController.java

@@ -32,6 +32,6 @@ public class EnvRegularCallFeedingController {
 
     @RequestMapping("/listById")
     public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
-        return new Result(ResultCode.SUCCESS,feedingService.listById(httpServletRequest, paramsMap));
+        return feedingService.listById(httpServletRequest, paramsMap);
     }
 }

+ 1 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/BaseDuckInfo.java

@@ -52,7 +52,7 @@ public class BaseDuckInfo implements Serializable {
     /**
      * 出生日期
      */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date duckBirthday;
 
     /**

+ 1 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/DuckHealthInfo.java

@@ -46,6 +46,7 @@ public class DuckHealthInfo implements Serializable {
     private String duckNum;
 
     private Integer farmId;
+    private Integer duckId;
 
 
 }

+ 1 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/DuckImmunityInfo.java

@@ -41,6 +41,7 @@ public class DuckImmunityInfo implements Serializable {
     private String duckNum;
 
     private Integer farmId;
+    private Integer duckId;
 
 
 }

+ 4 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvMoveCall.java

@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import  java.util.Date;
 import java.io.Serializable;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -52,6 +54,7 @@ public class EnvMoveCall implements Serializable {
     /**
      * 称重日期
      */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date callDate;
 
     /**
@@ -60,6 +63,6 @@ public class EnvMoveCall implements Serializable {
     private Integer dayage;
 
     private Integer farmId;
-
+    private Integer duckId;
 
 }

+ 4 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvRegularCallEgg.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import  java.util.Date;
 import java.io.Serializable;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -61,9 +63,11 @@ public class EnvRegularCallEgg implements Serializable {
     /**
      * 称重日期
      */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date callDate;
 
     private Integer farmId;
+    private Integer duckId;
 
 
 }

+ 5 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/entity/EnvRegularCallFeeding.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import  java.util.Date;
 import java.io.Serializable;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -56,9 +58,12 @@ public class EnvRegularCallFeeding implements Serializable {
     /**
      * 称重日期
      */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date callDate;
 
     private Integer farmId;
 
+    private Integer duckId;
+
 
 }

+ 7 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvMoveCallMapper.java

@@ -1,7 +1,13 @@
 package com.huimv.guowei.admin.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.huimv.guowei.admin.entity.EnvMoveCall;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.guowei.admin.entity.EnvRegularCallEgg;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -12,5 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2023-06-01
  */
 public interface EnvMoveCallMapper extends BaseMapper<EnvMoveCall> {
-
+    List<EnvMoveCall> listDay(@Param(Constants.WRAPPER) QueryWrapper<EnvMoveCall> queryWrapper);
 }

+ 6 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvRegularCallEggMapper.java

@@ -1,8 +1,13 @@
 package com.huimv.guowei.admin.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.huimv.guowei.admin.entity.EnvRegularCallEgg;
 import com.huimv.guowei.admin.entity.EnvRegularCallFeeding;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,5 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2023-06-01
  */
 public interface EnvRegularCallEggMapper extends BaseMapper<EnvRegularCallEgg> {
-
+    List<EnvRegularCallEgg> listDay(@Param(Constants.WRAPPER) QueryWrapper<EnvRegularCallEgg> queryWrapper);
 }

+ 6 - 1
huimv-admin/src/main/java/com/huimv/guowei/admin/mapper/EnvRegularCallFeedingMapper.java

@@ -1,8 +1,13 @@
 package com.huimv.guowei.admin.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.huimv.guowei.admin.entity.EnvRegularCallEgg;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.huimv.guowei.admin.entity.EnvRegularCallFeeding;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,5 +18,5 @@ import com.huimv.guowei.admin.entity.EnvRegularCallFeeding;
  * @since 2023-06-01
  */
 public interface EnvRegularCallFeedingMapper extends BaseMapper<EnvRegularCallFeeding> {
-
+    List<EnvRegularCallFeeding> listDay(@Param(Constants.WRAPPER) QueryWrapper<EnvRegularCallFeeding> queryWrapper);
 }

+ 6 - 2
huimv-admin/src/main/java/com/huimv/guowei/admin/service/IBaseDuckInfoService.java

@@ -3,8 +3,10 @@ package com.huimv.guowei.admin.service;
 import com.huimv.guowei.admin.common.utils.Result;
 import com.huimv.guowei.admin.entity.BaseDuckInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.text.ParseException;
 import java.util.Map;
 
@@ -19,9 +21,11 @@ import java.util.Map;
 public interface IBaseDuckInfoService extends IService<BaseDuckInfo> {
     Result listDuck(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
 
-    Result addDuck(HttpServletRequest httpServletRequest, Map<String,String> paramsMap) throws ParseException;
+    Result addDuck(HttpServletRequest httpServletRequest, Map<String,String> paramsMap, MultipartFile imgUrl) throws ParseException, IOException;
 
-    Result editDuck(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
+    Result editDuck(HttpServletRequest httpServletRequest,BaseDuckInfo baseDuckInfo);
 
     Result listDuckById(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
+
+    void printDuck(HttpServletRequest httpServletRequest, Map<String,String> paramsMap) throws Exception;
 }

+ 2 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/service/IEnvMoveCallService.java

@@ -17,4 +17,6 @@ import java.util.Map;
  */
 public interface IEnvMoveCallService extends IService<EnvMoveCall> {
     Result listById(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
+
+    Result listWeight(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
 }

+ 77 - 17
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/BaseDuckInfoServiceImpl.java

@@ -1,29 +1,36 @@
 package com.huimv.guowei.admin.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONObject;
 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.guowei.admin.common.utils.Result;
 import com.huimv.guowei.admin.common.utils.ResultCode;
+import com.huimv.guowei.admin.common.utils.UploadImage;
 import com.huimv.guowei.admin.entity.*;
 import com.huimv.guowei.admin.mapper.*;
 import com.huimv.guowei.admin.service.IBaseDuckInfoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.guowei.admin.utils.Print;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
 import java.math.BigDecimal;
 import java.text.DecimalFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.time.temporal.ChronoUnit;
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 /**
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  *
  * @author author
@@ -44,10 +51,14 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
     private DuckHealthInfoMapper healthInfoMapper;
     @Autowired
     private DuckImmunityInfoMapper infoMapper;
+    @Autowired
+    private UploadImage uploadImage;
+
     @Override
     public Result listDuck(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
-        String code = paramsMap.get("code");//前端传来的是编号
+        String code = paramsMap.get("duckCode");//前端传来的是编号
         String location = paramsMap.get("location");//前端传来的是位置名字
+        String farmId = paramsMap.get("farmId");//场的编码
         String pageNum = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
         if (pageNum == null || "".equals(pageNum)) {
@@ -57,21 +68,32 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
             pageSize = "10";
         }
         QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.like(StringUtils.isNotBlank(code), "id", code).eq(StringUtils.isNotBlank(location), "unit_name", location);
+        queryWrapper.like(StringUtils.isNotBlank(code), "duck_num", code)
+                .eq(StringUtils.isNotBlank(location), "unit_name", location).eq("farm_id", farmId);
         Page<BaseDuckInfo> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
         return new Result(ResultCode.SUCCESS, duckInfoMapper.selectPage(page, queryWrapper));
     }
 
     @Override
-    public Result addDuck(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws ParseException {
+    public Result addDuck(HttpServletRequest httpServletRequest, Map<String, String> paramsMap, MultipartFile imgUrl) throws ParseException, IOException {
         BaseDuckInfo baseDuckInfo = new BaseDuckInfo();
-        baseDuckInfo.setId(Integer.parseInt(paramsMap.get("id")));
+        baseDuckInfo.setDuckNum(paramsMap.get("duckCode"));
+
+        baseDuckInfo.setUnitName(paramsMap.get("unitName"));
+        baseDuckInfo.setFarmId(Integer.parseInt(paramsMap.get("farmId")));
         baseDuckInfo.setDuckBreed(Integer.parseInt(paramsMap.get("duckBreed")));
         baseDuckInfo.setDuckSex(Integer.parseInt(paramsMap.get("duckSex")));
         baseDuckInfo.setDuckBirthplace(paramsMap.get("duckBirthPlace"));
         String date = paramsMap.get("duckBirthDay");
+        date = date + " 00:00:00";
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");
         baseDuckInfo.setDuckBirthday(sdf.parse(date));
+
+        Date date1 = sdf.parse(date);
+        Date date2 = new Date();
+        // 计算两个日期之间的天数
+        int between = daysBetween(date1, date2);
+        baseDuckInfo.setDayAge(between);
         baseDuckInfo.setGenotype(paramsMap.get("genotype"));
         BigDecimal big = new BigDecimal(paramsMap.get("nowWeight"));
         baseDuckInfo.setNowWeight(big);
@@ -88,25 +110,47 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
         baseDuckInfo.setSpecialNeeds(paramsMap.get("specialNeeds"));
         baseDuckInfo.setIsCage(0);
         QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("id", paramsMap.get("id")).or().eq("unit_id", paramsMap.get("unitId"));
+        queryWrapper.eq("duck_num", paramsMap.get("duckCode")).or().eq("unit_id", paramsMap.get("unitId"));
         Integer integer = duckInfoMapper.selectCount(queryWrapper);
-        baseDuckInfo.setDuckImgUrl(paramsMap.get("imgUrl"));
         if (integer == 0) {
+            String content = uploadImage.getImageCom(imgUrl);
+            baseDuckInfo.setDuckImgUrl(content);
             duckInfoMapper.insert(baseDuckInfo);
-            return new Result(ResultCode.SUCCESS);
+            return new Result(10000, "添加成功!", true);
         } else {
-            return new Result(10001, "编码已存在或该笼位已使用", false);
+            return new Result(10001, "鸭只编码已存在或该笼位已使用", false);
         }
     }
-
+    /**
+     * 获取两个日期间的天数,精确到年月日
+     * @param start
+     * @param end
+     * @return
+     */
+    public static int daysBetween(Date start, Date end) {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        try {
+            start = sdf.parse(sdf.format(start));
+            end = sdf.parse(sdf.format(end));
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        long startTime = start.getTime();
+        long endTime = end.getTime();
+        long betweenDays = (endTime - startTime) / (1000 * 3600 * 24);
+        return Integer.parseInt(String.valueOf(betweenDays));
+    }
     @Override
-    public Result editDuck(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
-        String id = paramsMap.get("id");
-        String isCage = paramsMap.get("isCage");
-        BaseDuckInfo baseDuckInfo = duckInfoMapper.selectById(id);
-        baseDuckInfo.setIsCage(Integer.parseInt(isCage));
-        duckInfoMapper.updateById(baseDuckInfo);
-        return new Result(ResultCode.SUCCESS);
+    public Result editDuck(HttpServletRequest httpServletRequest, BaseDuckInfo baseDuckInfo) {
+        QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
+        queryWrapper.ne("id", baseDuckInfo.getId()).and(i -> i.eq("duck_num", baseDuckInfo.getDuckNum()).or().eq("unit_id", baseDuckInfo.getUnitId()));
+        BaseDuckInfo baseDuckInfo1 = duckInfoMapper.selectOne(queryWrapper);
+        if (ObjectUtil.isEmpty(baseDuckInfo1)) {
+            duckInfoMapper.updateById(baseDuckInfo);
+            return new Result(10000, "修改成功!", true);
+        } else {
+            return new Result(10001, "鸭只编号已存在或者鸭笼已被占用", false);
+        }
     }
 
     @Override
@@ -118,4 +162,20 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
         return new Result(ResultCode.SUCCESS, baseDuckInfo);
     }
 
+    @Override
+    public void printDuck(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws Exception {
+        String duckCode = paramsMap.get("duckCode");
+        QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("duck_num", duckCode);
+        BaseDuckInfo baseDuckInfo = duckInfoMapper.selectOne(queryWrapper);//鸭只档案
+        QueryWrapper<EnvMoveCall> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("duck_code", duckCode);
+        List<EnvMoveCall> envMoveCalls = moveCallMapper.selectList(queryWrapper1);//日龄体重
+        QueryWrapper<DuckHealthInfo> healthInfoQueryWrapper = new QueryWrapper<>();
+        List<DuckHealthInfo> duckHealthInfos = healthInfoMapper.selectList(healthInfoQueryWrapper);//健康状况
+        QueryWrapper<DuckImmunityInfo> queryWrapper2 = new QueryWrapper<>();
+        List<DuckImmunityInfo> duckImmunityInfos = infoMapper.selectList(queryWrapper2);//免疫记录
+        Print.printDuck(baseDuckInfo, duckHealthInfos, duckImmunityInfos, envMoveCalls);
+    }
+
 }

+ 8 - 2
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/DuckHealthInfoServiceImpl.java

@@ -34,7 +34,8 @@ public class DuckHealthInfoServiceImpl extends ServiceImpl<DuckHealthInfoMapper,
 
     @Override
     public Result listById(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
-        String duckNum = paramsMap.get("duckCode");
+        String duckNum = paramsMap.get("id");
+        String farmId = paramsMap.get("farmId");
         String startDate = paramsMap.get("startDate");
         String endDate = paramsMap.get("endDate");
         String pageNum = paramsMap.get("pageNum");
@@ -61,7 +62,7 @@ public class DuckHealthInfoServiceImpl extends ServiceImpl<DuckHealthInfoMapper,
         }
 
         QueryWrapper<DuckHealthInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("duck_num", duckNum).between( "health_date", startDate, endDate).orderByAsc("health_date");
+        queryWrapper.eq("duck_id", duckNum).eq("farm_id", farmId).between("health_date", startDate, endDate).orderByAsc("health_date");
         Page<DuckHealthInfo> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
         return new Result(ResultCode.SUCCESS, healthInfoMapper.selectPage(page, queryWrapper));
     }
@@ -69,14 +70,19 @@ public class DuckHealthInfoServiceImpl extends ServiceImpl<DuckHealthInfoMapper,
     @Override
     public Result addHealth(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws ParseException {
         String duckNum = paramsMap.get("duckCode");
+        String farmId = paramsMap.get("farmId");
+        String duckId = paramsMap.get("id");
         String date = paramsMap.get("date");
+        date = date + " 00:00:00";
         String healthResult = paramsMap.get("healthResult");
         String treatmentMeasure = paramsMap.get("treatmentMeasure");
         DuckHealthInfo healthInfo = new DuckHealthInfo();
         healthInfo.setDuckNum(duckNum);
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        healthInfo.setFarmId(Integer.parseInt(farmId));
         healthInfo.setHealthDate(sdf.parse(date));
         healthInfo.setHealthResult(healthResult);
+        healthInfo.setDuckId(Integer.parseInt(duckId));
         healthInfo.setTreatmentMeasure(treatmentMeasure);
         healthInfoMapper.insert(healthInfo);
         return new Result(ResultCode.SUCCESS);

+ 9 - 2
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/DuckImmunityInfoServiceImpl.java

@@ -33,7 +33,8 @@ public class DuckImmunityInfoServiceImpl extends ServiceImpl<DuckImmunityInfoMap
     private DuckImmunityInfoMapper infoMapper;
     @Override
     public Result listById(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
-        String duckNum = paramsMap.get("duckCode");
+        String duckNum = paramsMap.get("id");
+        String farmId = paramsMap.get("farmId");
         String startDate = paramsMap.get("startDate");
         String endDate = paramsMap.get("endDate");
         String pageNum = paramsMap.get("pageNum");
@@ -59,7 +60,8 @@ public class DuckImmunityInfoServiceImpl extends ServiceImpl<DuckImmunityInfoMap
             pageSize = "10";
         }
         QueryWrapper<DuckImmunityInfo> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("duck_num", duckNum).between("health_date", startDate, endDate).orderByAsc("health_date");
+        queryWrapper.eq("duck_id", duckNum).eq("farm_id", farmId)
+                .between("health_date", startDate, endDate).orderByAsc("health_date");
         Page<DuckImmunityInfo> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
         return new Result(ResultCode.SUCCESS, infoMapper.selectPage(page, queryWrapper));
     }
@@ -68,11 +70,16 @@ public class DuckImmunityInfoServiceImpl extends ServiceImpl<DuckImmunityInfoMap
     public Result addImmunity(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws ParseException {
         String duckNum = paramsMap.get("duckCode");
         String date = paramsMap.get("date");
+        date = date + " 00:00:00";
+        String farmId = paramsMap.get("farmId");
+        String duckId = paramsMap.get("id");
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         Date date1 = sdf.parse(date);
         String vaccination = paramsMap.get("vaccination");//接种疫苗
         DuckImmunityInfo immunityInfo = new DuckImmunityInfo();
+        immunityInfo.setDuckId(Integer.parseInt(duckId));
         immunityInfo.setDuckNum(duckNum);
+        immunityInfo.setFarmId(Integer.parseInt(farmId));
         immunityInfo.setHealthDate(date1);
         immunityInfo.setVaccination(vaccination);
         infoMapper.insert(immunityInfo);

+ 35 - 22
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvMoveCallServiceImpl.java

@@ -1,6 +1,7 @@
 package com.huimv.guowei.admin.service.impl;
 
 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.guowei.admin.common.utils.DataUill;
 import com.huimv.guowei.admin.common.utils.Result;
@@ -35,7 +36,8 @@ public class EnvMoveCallServiceImpl extends ServiceImpl<EnvMoveCallMapper, EnvMo
     @Override
     public Result listById(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String type = paramsMap.get("type");//显示类型
-        String duckCode = paramsMap.get("duckCode");
+        String duckCode = paramsMap.get("id");
+        String farmId = paramsMap.get("farmId");
         String pageNum = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
         if (pageNum == null || "".equals(pageNum)) {
@@ -46,33 +48,44 @@ public class EnvMoveCallServiceImpl extends ServiceImpl<EnvMoveCallMapper, EnvMo
         }
         if ("1".equals(type)) {
             QueryWrapper<EnvMoveCall> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("duck_code", duckCode).orderByAsc("dayage");
+            queryWrapper.eq("duck_id", duckCode).orderByAsc("dayage").eq("farm_id", farmId);
             Page<EnvMoveCall> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
             return new Result(ResultCode.SUCCESS, moveCallMapper.selectPage(page, queryWrapper));
         } else {
-            String dateType = paramsMap.get("dateType");
             QueryWrapper<EnvMoveCall> queryWrapper = new QueryWrapper<>();
-            if ("1".equals(dateType)) {
-                Date timesmorning = DataUill.getTimesmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesmorning).orderByAsc("call_date");
-
-            } else if ("2".equals(dateType)) {
-                Calendar calendar = Calendar.getInstance();
-                calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", calendar.getTime()).orderByAsc("call_date");
+            queryWrapper.eq("farm_id", farmId);
+            String startDate = paramsMap.get("startDate");
+            String endDate = paramsMap.get("endDate");
+            startDate = startDate + " 00:00:00";
+            endDate = endDate + " 23:59:59";
+            queryWrapper.eq("duck_id", duckCode).between("call_date", startDate, endDate);
+            return new Result(ResultCode.SUCCESS, moveCallMapper.listDay(queryWrapper));
+        }
 
-            } else if ("3".equals(dateType)) {
-                Date timesMonthmorning = DataUill.getTimesMonthmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesMonthmorning).orderByAsc("call_date");
+    }
 
-            } else {
-                String startDate = paramsMap.get("startDate");
-                String endDate = paramsMap.get("endDate");
-                startDate = startDate + " 00:00:00";
-                endDate = endDate + " 23:59:59";
-                queryWrapper.eq("duck_code", duckCode).between("call_date", startDate, endDate).orderByAsc("call_date");
-            }
-            return new Result(ResultCode.SUCCESS, moveCallMapper.selectList(queryWrapper));
+    @Override
+    public Result listWeight(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
+        String farmId = paramsMap.get("farmId");
+        String pageNum = paramsMap.get("pageNum");
+        String pageSize = paramsMap.get("pageSize");
+        String startDate = paramsMap.get("startDate");
+        String endDate = paramsMap.get("endDate");
+        if (pageNum == null || "".equals(pageNum)) {
+            pageNum = "1";
+        }
+        if (pageSize == null || "".equals(pageSize)) {
+            pageSize = "10";
+        }
+        QueryWrapper<EnvMoveCall> queryWrapper = new QueryWrapper<>();
+        if (startDate == null || "".equals(startDate)) {
+            queryWrapper.eq("farm_id", farmId).orderByAsc("call_date");
+        } else {
+            startDate = startDate + " 00:00:00";
+            endDate = endDate + " 23:59:59";
+            queryWrapper.eq("farm_id", farmId).between("call_date", startDate, endDate).orderByAsc("call_date");
         }
+        Page<EnvMoveCall> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
+        return new Result(ResultCode.SUCCESS, moveCallMapper.selectPage(page, queryWrapper));
     }
 }

+ 14 - 7
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvRegularCallEggServiceImpl.java

@@ -37,7 +37,8 @@ public class EnvRegularCallEggServiceImpl extends ServiceImpl<EnvRegularCallEggM
     @Override
     public Result listById(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String type = paramsMap.get("type");//显示类型
-        String duckCode = paramsMap.get("duckCode");
+        String duckCode = paramsMap.get("id");
+        String farmId = paramsMap.get("farmId");
         String pageNum = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
         if (pageNum == null || "".equals(pageNum)) {
@@ -48,48 +49,54 @@ public class EnvRegularCallEggServiceImpl extends ServiceImpl<EnvRegularCallEggM
         }
         if ("1".equals(type)) {
             QueryWrapper<EnvRegularCallEgg> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("duck_code", duckCode).orderByAsc("dayage");
+            queryWrapper.eq("duck_id", duckCode).eq("farm_id", farmId).orderByAsc("call_date");
             Page<EnvRegularCallEgg> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
             return new Result(ResultCode.SUCCESS, eggMapper.selectPage(page, queryWrapper));
         } else {
             String dateType = paramsMap.get("dateType");
             QueryWrapper<EnvRegularCallEgg> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("farm_id", farmId).eq("duck_id", duckCode);
             if ("1".equals(dateType)) {
                 Date timesmorning = DataUill.getTimesmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesmorning).orderByAsc("call_date");
+                queryWrapper.ge("call_date", timesmorning);
 
             } else if ("2".equals(dateType)) {
                 Calendar calendar = Calendar.getInstance();
                 calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", calendar.getTime()).orderByAsc("call_date");
+                queryWrapper.ge("call_date", calendar.getTime());
 
             } else if ("3".equals(dateType)) {
                 Date timesMonthmorning = DataUill.getTimesMonthmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesMonthmorning).orderByAsc("call_date");
+                queryWrapper.ge("call_date", timesMonthmorning);
 
             } else {
                 String startDate = paramsMap.get("startDate");
                 String endDate = paramsMap.get("endDate");
                 startDate = startDate + " 00:00:00";
                 endDate = endDate + " 23:59:59";
-                queryWrapper.eq("duck_code", duckCode).between("call_date", startDate, endDate).orderByAsc("call_date");
+                queryWrapper.between("call_date", startDate, endDate);
             }
-            return new Result(ResultCode.SUCCESS, eggMapper.selectList(queryWrapper));
+            return new Result(ResultCode.SUCCESS, eggMapper.listDay(queryWrapper));
         }
     }
 
     @Override
     public Result addEgg(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) throws ParseException {
         String duckCode = paramsMap.get("duckCode");
+        String farmId = paramsMap.get("farmId");
+        String duckId = paramsMap.get("id");
         String date = paramsMap.get("date");
+        date = date + " 00:00:00";
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         String eggNum = paramsMap.get("eggNum");
         String eggWeight = paramsMap.get("eggWeight");
         EnvRegularCallEgg egg = new EnvRegularCallEgg();
         egg.setDuckCode(duckCode);
+        egg.setFarmId(Integer.parseInt(farmId));
         egg.setDuckWeight(Integer.parseInt(eggWeight));
         egg.setEggNum(Integer.parseInt(eggNum));
         egg.setCallDate(sdf.parse(date));
+        egg.setDuckId(Integer.parseInt(duckId));
         eggMapper.insert(egg);
         return new Result(10000,"添加成功!",true);
     }

+ 9 - 7
huimv-admin/src/main/java/com/huimv/guowei/admin/service/impl/EnvRegularCallFeedingServiceImpl.java

@@ -37,7 +37,8 @@ public class EnvRegularCallFeedingServiceImpl extends ServiceImpl<EnvRegularCall
     @Override
     public Result listById(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String type = paramsMap.get("type");//显示类型
-        String duckCode = paramsMap.get("duckCode");
+        String duckCode = paramsMap.get("id");
+        String farmId = paramsMap.get("farmId");
         String pageNum = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
         if (pageNum == null || "".equals(pageNum)) {
@@ -48,33 +49,34 @@ public class EnvRegularCallFeedingServiceImpl extends ServiceImpl<EnvRegularCall
         }
         if ("1".equals(type)) {
             QueryWrapper<EnvRegularCallFeeding> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("duck_code", duckCode).orderByAsc("dayage");
+            queryWrapper.eq("duck_id", duckCode).eq("farm_id", farmId).orderByAsc("call_date");
             Page<EnvRegularCallFeeding> page = new Page<>(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
             return new Result(ResultCode.SUCCESS, feedingMapper.selectPage(page, queryWrapper));
         } else {
             String dateType = paramsMap.get("dateType");
             QueryWrapper<EnvRegularCallFeeding> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("farm_id", farmId).eq("duck_id", duckCode);
             if ("1".equals(dateType)) {
                 Date timesmorning = DataUill.getTimesmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesmorning).orderByAsc("call_date");
+                queryWrapper.ge("call_date", timesmorning);
 
             } else if ("2".equals(dateType)) {
                 Calendar calendar = Calendar.getInstance();
                 calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 7);
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", calendar.getTime()).orderByAsc("call_date");
+                queryWrapper.ge("call_date", calendar.getTime());
 
             } else if ("3".equals(dateType)) {
                 Date timesMonthmorning = DataUill.getTimesMonthmorning();
-                queryWrapper.eq("duck_code", duckCode).ge("call_date", timesMonthmorning).orderByAsc("call_date");
+                queryWrapper.ge("call_date", timesMonthmorning);
 
             } else {
                 String startDate = paramsMap.get("startDate");
                 String endDate = paramsMap.get("endDate");
                 startDate = startDate + " 00:00:00";
                 endDate = endDate + " 23:59:59";
-                queryWrapper.eq("duck_code", duckCode).between("call_date", startDate, endDate).orderByAsc("call_date");
+                queryWrapper.between("call_date", startDate, endDate);
             }
-            return new Result(ResultCode.SUCCESS, feedingMapper.selectList(queryWrapper));
+            return new Result(ResultCode.SUCCESS,feedingMapper.listDay(queryWrapper));
         }
 
     }

+ 96 - 0
huimv-admin/src/main/java/com/huimv/guowei/admin/utils/Print.java

@@ -0,0 +1,96 @@
+package com.huimv.guowei.admin.utils;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.huimv.guowei.admin.entity.BaseDuckInfo;
+import com.huimv.guowei.admin.entity.DuckHealthInfo;
+import com.huimv.guowei.admin.entity.DuckImmunityInfo;
+import com.huimv.guowei.admin.entity.EnvMoveCall;
+import org.jxls.common.Context;
+import org.jxls.util.JxlsHelper;
+
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class Print {
+    /**
+     * 打印方法  不插入图片
+     *
+     * @return
+     * @throws Exception
+     */
+    public static void printDuck(BaseDuckInfo duckInfo, List<DuckHealthInfo> healthInfos,
+                                 List<DuckImmunityInfo> immunityInfos, List<EnvMoveCall> envMoveCalls) throws Exception {
+        //准备数据
+        String path = "G://duck.xls";
+        //获取模板文件,你自己当前模板的位置  我这里为当前项目下
+        InputStream is = new FileInputStream("G://duck.xlsx");
+        //根据模板生成的文件保存路径  我这里保存在本地D盘
+        OutputStream os = new FileOutputStream(path);
+        //绑定数据
+        Context context = new Context();
+        context.putVar("duckCode", duckInfo.getDuckNum());
+        context.putVar("duckType", duckInfo.getDuckBreed());
+        context.putVar("duckSex", duckInfo.getDuckSex());
+        context.putVar("duckDate", duckInfo.getDuckBirthday());
+        context.putVar("address", duckInfo.getDuckBirthplace());
+        context.putVar("father", duckInfo.getFatherNum());
+        context.putVar("father2", duckInfo.getFatherGenotype());
+        context.putVar("mother", duckInfo.getMotherNum());
+        context.putVar("mother2", duckInfo.getMotherGenotype());
+        String s = "";
+        String s1 = "";
+        String s2 = "";
+        //健康状况
+        for (DuckHealthInfo healthInfo : healthInfos) {
+            s1 = healthInfo.getHealthDate() + healthInfo.getHealthResult() + ";" + "\n" + s1;
+        }
+        //日龄体重
+        for (EnvMoveCall envMoveCall : envMoveCalls) {
+            s = envMoveCall.getDayage() + "日龄 体重" + ":" + envMoveCall.getDuckWeight() + "KG;" + "\n" + s;
+        }
+        //免疫记录
+        for (DuckImmunityInfo immunityInfo : immunityInfos) {
+            s2 = immunityInfo.getHealthDate() + immunityInfo.getVaccination() + ";" + "\n" + s2;
+        }
+        context.putVar("weight", s);
+        context.putVar("need", duckInfo.getSpecialNeeds());
+        context.putVar("env", duckInfo.getBreedingEnv());
+        context.putVar("record", s1);
+        context.putVar("record2", s2);
+        //生成
+        JxlsHelper.getInstance().processTemplate(is, os, context);
+    }
+
+    public static void printEgg() throws Exception {
+        //准备数据
+        String path = "G://egg.xls";
+        //获取模板文件,你自己当前模板的位置  我这里为当前项目下
+        InputStream is = new FileInputStream("G://egg.xlsx");
+        //根据模板生成的文件保存路径  我这里保存在本地D盘
+        OutputStream os = new FileOutputStream(path);
+        //绑定数据
+        Context context = new Context();
+/*        List<Abc> list = new ArrayList<>();
+        for (int i = 0; i < 3; i++) {
+            Abc abc = new Abc();
+            abc.setDuckCode(String.valueOf(i));
+            abc.setDate(String.valueOf(i + 1));
+            abc.setFeed(String.valueOf(i + 2));
+            abc.setEggNum(String.valueOf(i + 3));
+            abc.setWeight(String.valueOf(i + 5));
+            list.add(abc);
+        }
+        context.putVar("list", list);*/
+        //生成
+        JxlsHelper.getInstance().processTemplate(is, os, context);
+    }
+
+}

+ 7 - 0
huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvMoveCallMapper.xml

@@ -12,6 +12,13 @@
         <result column="call_date" property="callDate" />
         <result column="dayage" property="dayage" />
         <result column="farm_id" property="farmId" />
+        <result column="duck_id" property="duckId"/>
     </resultMap>
 
+    <select id="listDay" resultType="com.huimv.guowei.admin.entity.EnvMoveCall">
+        SELECT (IFNUll(sum(duck_weight),'0')) 'duckWeight',dayage 'dayAge' FROM `env_move_call`
+         ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(dayage,'%Y-%m-%d')
+        ORDER BY dayage ASC
+    </select>
 </mapper>

+ 7 - 0
huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvRegularCallEggMapper.xml

@@ -12,6 +12,13 @@
         <result column="duck_feeding_original" property="duckFeedingOriginal" />
         <result column="call_date" property="callDate" />
         <result column="farm_id" property="farmId" />
+        <result column="duck_id" property="duckId"/>
     </resultMap>
 
+    <select id="listDay" resultType="com.huimv.guowei.admin.entity.EnvRegularCallEgg">
+        SELECT (IFNUll(sum(egg_num),'0')) 'eggNum',call_date 'callDate' FROM `env_regular_call_egg`
+         ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(call_date,'%Y-%m-%d')
+        ORDER BY call_date ASC
+    </select>
 </mapper>

+ 15 - 9
huimv-admin/src/main/resources/com/huimv/guowei/admin/mapper/EnvRegularCallFeedingMapper.xml

@@ -4,14 +4,20 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.huimv.guowei.admin.entity.EnvRegularCallFeeding">
-        <id column="id" property="id" />
-        <result column="call_name" property="callName" />
-        <result column="call_code" property="callCode" />
-        <result column="duck_code" property="duckCode" />
-        <result column="duck_weight" property="duckWeight" />
-        <result column="duck_feeding_original" property="duckFeedingOriginal" />
-        <result column="call_date" property="callDate" />
-        <result column="farm_id" property="farmId" />
+        <id column="id" property="id"/>
+        <result column="call_name" property="callName"/>
+        <result column="call_code" property="callCode"/>
+        <result column="duck_code" property="duckCode"/>
+        <result column="duck_weight" property="duckWeight"/>
+        <result column="duck_feeding_original" property="duckFeedingOriginal"/>
+        <result column="call_date" property="callDate"/>
+        <result column="farm_id" property="farmId"/>
+        <result column="duck_id" property="duckId"/>
     </resultMap>
-
+    <select id="listDay" resultType="com.huimv.guowei.admin.entity.EnvRegularCallFeeding">
+        SELECT (IFNUll(sum(duck_weight),'0')) 'duckWeight',call_date 'callDate' FROM `env_regular_call_feeding`
+         ${ew.customSqlSegment}
+        GROUP BY DATE_FORMAT(call_date,'%Y-%m-%d')
+        ORDER BY call_date ASC
+    </select>
 </mapper>