BreedController.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. package com.huimv.guowei.admin.controller;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.huimv.guowei.admin.common.utils.Result;
  5. import com.huimv.guowei.admin.common.utils.ResultCode;
  6. import com.huimv.guowei.admin.entity.BaseDuckInfo;
  7. import com.huimv.guowei.admin.entity.Breed;
  8. import com.huimv.guowei.admin.entity.Departure;
  9. import com.huimv.guowei.admin.entity.DuckHealthInfo;
  10. import com.huimv.guowei.admin.service.IBaseDuckInfoService;
  11. import com.huimv.guowei.admin.service.IBreedService;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.*;
  14. import org.springframework.web.multipart.MultipartFile;
  15. import javax.servlet.http.HttpServletRequest;
  16. import java.text.ParseException;
  17. import java.text.SimpleDateFormat;
  18. import java.util.Date;
  19. import java.util.HashMap;
  20. import java.util.Map;
  21. /**
  22. * <p>
  23. * 前端控制器
  24. * </p>
  25. *
  26. * @author author
  27. * @since 2023-06-14
  28. */
  29. @RestController
  30. @RequestMapping("/breed")
  31. @CrossOrigin
  32. public class BreedController {
  33. @Autowired
  34. private IBreedService breedService;
  35. @Autowired
  36. private IBaseDuckInfoService duckInfoService;
  37. @RequestMapping("/list")
  38. public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
  39. return breedService.list(httpServletRequest, paramsMap);
  40. }
  41. @RequestMapping("/listByDuckId")
  42. public Result listByDuckId(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
  43. String id = paramsMap.get("id");
  44. return new Result(ResultCode.SUCCESS,breedService.getById(id));
  45. }
  46. @RequestMapping("/listSelect")
  47. public Result listSelect(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
  48. return breedService.listSelect(httpServletRequest, paramsMap);
  49. }
  50. @RequestMapping("/addDuck")
  51. public Result addDuck(HttpServletRequest httpServletRequest, @RequestBody Breed breed) throws ParseException {
  52. Date healthDate = breed.getDate();//发病时间
  53. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  54. Date date = new Date();
  55. String format = sdf.format(date);
  56. Date parse = sdf.parse(format);//今天日期
  57. if (healthDate.getTime() > parse.getTime()) {
  58. return new Result(10001, "配种日期不能晚于今日", false);
  59. }
  60. String maleNum = breed.getMaleNum();//雄鸭
  61. String femaleNum = breed.getFemaleNum();//雌鸭
  62. QueryWrapper<BaseDuckInfo> queryWrapper = new QueryWrapper<>();
  63. queryWrapper.eq("farm_id", breed.getFarmId()).eq("duck_num", maleNum);
  64. BaseDuckInfo duckInfo = duckInfoService.getOne(queryWrapper);//雄鸭
  65. QueryWrapper<BaseDuckInfo> queryWrapper1 = new QueryWrapper<>();
  66. queryWrapper1.eq("farm_id", breed.getFarmId()).eq("duck_num", femaleNum);
  67. BaseDuckInfo duckInfo1 = duckInfoService.getOne(queryWrapper1);//雌鸭
  68. if (ObjectUtil.isNotEmpty(duckInfo)) {
  69. if (duckInfo.getDuckSex() == 0) {
  70. breed.setMaleNum(maleNum);
  71. } else {
  72. return new Result(10001, "雌鸭编号不能填入雄鸭配种中!", false);
  73. }
  74. if (duckInfo.getIsCage() == 1) {
  75. return new Result(10001, "该鸭只已离场", false);
  76. }
  77. if (duckInfo.getDayAge() < 100) {
  78. return new Result(10001, "父亲(或母亲)鸭只日龄小于100天!", false);
  79. }
  80. }else {
  81. return new Result(10001, "无此编号雄鸭!", false);
  82. }
  83. if (ObjectUtil.isNotEmpty(duckInfo1)) {
  84. if (duckInfo1.getDuckSex() == 1) {
  85. breed.setFemaleNum(femaleNum);
  86. } else {
  87. return new Result(10001, "雄鸭编号不能填入雌鸭配种中!", false);
  88. }
  89. if (duckInfo1.getIsCage() == 1) {
  90. return new Result(10001, "该鸭只已离场", false);
  91. }
  92. if (duckInfo1.getDayAge() < 100) {
  93. return new Result(10001, "父亲(或母亲)鸭只日龄小于100天!", false);
  94. }
  95. } else {
  96. return new Result(10001, "无此编号雌鸭!", false);
  97. }
  98. breedService.save(breed);
  99. return new Result(10000, "添加成功!", true);
  100. }
  101. @RequestMapping("/editDuck")
  102. public Result editDuck(HttpServletRequest httpServletRequest, @RequestBody Breed breed) {
  103. breedService.updateById(breed);
  104. return new Result(10000, "修改成功!", true);
  105. }
  106. @RequestMapping("/deleteDuck")
  107. public Result deleteDuck(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
  108. String id = paramsMap.get("id");
  109. breedService.removeById(id);
  110. return new Result(10000, "删除成功!", true);
  111. }
  112. //excel导入
  113. @PostMapping("/importData")
  114. public Result addDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "file") MultipartFile file) throws Exception {
  115. return breedService.importData(httpServletRequest, file);
  116. }
  117. }