package com.huimv.guowei.admin.controller; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.huimv.guowei.admin.common.utils.Result; import com.huimv.guowei.admin.common.utils.ResultCode; import com.huimv.guowei.admin.entity.BaseDuckInfo; import com.huimv.guowei.admin.entity.Breed; import com.huimv.guowei.admin.entity.Departure; import com.huimv.guowei.admin.entity.DuckHealthInfo; import com.huimv.guowei.admin.service.IBaseDuckInfoService; import com.huimv.guowei.admin.service.IBreedService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; /** *

* 前端控制器 *

* * @author author * @since 2023-06-14 */ @RestController @RequestMapping("/breed") @CrossOrigin public class BreedController { @Autowired private IBreedService breedService; @Autowired private IBaseDuckInfoService duckInfoService; @RequestMapping("/list") public Result listById(HttpServletRequest httpServletRequest, @RequestBody Map paramsMap) { return breedService.list(httpServletRequest, paramsMap); } @RequestMapping("/listByDuckId") public Result listByDuckId(HttpServletRequest httpServletRequest, @RequestBody Map paramsMap) { String id = paramsMap.get("id"); return new Result(ResultCode.SUCCESS,breedService.getById(id)); } @RequestMapping("/listSelect") public Result listSelect(HttpServletRequest httpServletRequest, @RequestBody Map paramsMap) { return breedService.listSelect(httpServletRequest, paramsMap); } @RequestMapping("/listByChiNum") public Result listByChiNum(HttpServletRequest httpServletRequest, @RequestBody Map paramsMap) { return breedService.listByChiNum(httpServletRequest, paramsMap); } @RequestMapping("/addDuck") public Result addDuck(HttpServletRequest httpServletRequest, @RequestBody Breed breed) throws ParseException { Date healthDate = breed.getDate();//发病时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date = new Date(); String format = sdf.format(date); Date parse = sdf.parse(format);//今天日期 if (healthDate.getTime() > parse.getTime()) { return new Result(10001, "配种日期不能晚于今日", false); } String maleNum = breed.getMaleNum();//雄鸭 String femaleNum = breed.getFemaleNum();//雌鸭 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("farm_id", breed.getFarmId()).eq("duck_num", maleNum); BaseDuckInfo duckInfo = duckInfoService.getOne(queryWrapper);//雄鸭 QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("farm_id", breed.getFarmId()).eq("duck_num", femaleNum); BaseDuckInfo duckInfo1 = duckInfoService.getOne(queryWrapper1);//雌鸭 if (ObjectUtil.isNotEmpty(duckInfo)) { if (duckInfo.getDuckSex() == 0) { breed.setMaleNum(maleNum); breed.setMaleChiNum(duckInfo.getChiNum()); breed.setMaleJiaoNum(duckInfo.getJiaoNum()); } else { return new Result(10001, "雌鸭编号不能填入雄鸭配种中!", false); } if (duckInfo.getIsCage() == 1) { return new Result(10001, "该鸭只已离场", false); } if (duckInfo.getDayAge() < 100) { return new Result(10001, "父亲(或母亲)鸭只日龄小于100天!", false); } }else { return new Result(10001, "无此编号雄鸭!", false); } if (ObjectUtil.isNotEmpty(duckInfo1)) { if (duckInfo1.getDuckSex() == 1) { breed.setFemaleNum(femaleNum); breed.setFemaleChiNum(duckInfo1.getChiNum()); breed.setFemaleJiaoNum(duckInfo1.getJiaoNum()); } else { return new Result(10001, "雄鸭编号不能填入雌鸭配种中!", false); } if (duckInfo1.getIsCage() == 1) { return new Result(10001, "该鸭只已离场", false); } if (duckInfo1.getDayAge() < 100) { return new Result(10001, "父亲(或母亲)鸭只日龄小于100天!", false); } } else { return new Result(10001, "无此编号雌鸭!", false); } breedService.save(breed); return new Result(10000, "添加成功!", true); } @RequestMapping("/editDuck") public Result editDuck(HttpServletRequest httpServletRequest, @RequestBody Breed breed) { breedService.updateById(breed); return new Result(10000, "修改成功!", true); } @RequestMapping("/deleteDuck") public Result deleteDuck(HttpServletRequest httpServletRequest, @RequestBody Map paramsMap) { String id = paramsMap.get("id"); breedService.removeById(id); return new Result(10000, "删除成功!", true); } //excel导入 @PostMapping("/importData") public Result addDuck(HttpServletRequest httpServletRequest, @RequestParam(name = "file") MultipartFile file) throws Exception { return breedService.importData(httpServletRequest, file); } }