wwh 1 年之前
父节点
当前提交
e21a0c3506

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

@@ -92,7 +92,7 @@ public class BaseDuckInfoController {
         map.put("nowWeight", nowWeight);
         map.put("unitId", unitId);
         map.put("breedEnv", breedEnv);
-        map.put("hatchRate", hatchRate);
+//        map.put("hatchRate", hatchRate);
         map.put("fatherNum", fatherNum);
         map.put("motherNum", motherNum);
         map.put("fatherGenotype", fatherGenotype);

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

@@ -127,10 +127,7 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
         baseDuckInfo.setNowWeight(big);
         baseDuckInfo.setUnitId(Integer.parseInt(paramsMap.get("unitId")));
         baseDuckInfo.setBreedingEnv(paramsMap.get("breedEnv"));
-        if (Integer.parseInt(paramsMap.get("duckSex")) == 1) {
-            BigDecimal rate = new BigDecimal(paramsMap.get("hatchRate"));
-            baseDuckInfo.setHatchRate(rate);
-        }
+
         String fatherNum = paramsMap.get("fatherNum");
         String motherNum = paramsMap.get("motherNum");
         String duckCode = paramsMap.get("duckCode");
@@ -302,14 +299,25 @@ public class BaseDuckInfoServiceImpl extends ServiceImpl<BaseDuckInfoMapper, Bas
 
 
         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)) {
+        queryWrapper.ne("id", baseDuckInfo.getId()).
+                and(i -> i.eq("duck_num", baseDuckInfo.getDuckNum()).or().eq("unit_id", baseDuckInfo.getUnitId()));
+        List<BaseDuckInfo> baseDuckInfos = duckInfoMapper.selectList(queryWrapper);
+        if (baseDuckInfos.size() == 0) {
+            duckInfoMapper.updateById(baseDuckInfo);
+            return new Result(10000, "修改成功!", true);
+        } else  {
+            for (BaseDuckInfo duckInfo : baseDuckInfos) {
+                if (duckInfo.getIsCage() == 0) {
+                    return new Result(10001, "鸭只编号已存在或者鸭笼已被占用", false);
+                }
+                if (duckInfo.getDuckNum() == baseDuckInfo.getDuckNum()) {
+                    return new Result(10001, "鸭只编号已存在或者鸭笼已被占用", false);
+                }
+            }
             duckInfoMapper.updateById(baseDuckInfo);
             return new Result(10000, "修改成功!", true);
-        } else {
-            return new Result(10001, "鸭只编号已存在或者鸭笼已被占用", false);
         }
+
     }
 
     @Override