From 8baa49666d8e5215efc237ca3902a9f15cc7cb0c Mon Sep 17 00:00:00 2001 From: maochaoying <925670706@qq.com> Date: Thu, 13 Apr 2023 20:00:23 +0800 Subject: [PATCH] 123 --- src/controller/coop.controller.js | 7 +++++++ src/router/coop.route.js | 3 +++ src/service/chicken.service.js | 19 +++++++++++-------- src/service/coop.service.js | 12 +++++++++++- src/service/die.service.js | 9 +++++++-- 5 files changed, 39 insertions(+), 11 deletions(-) diff --git a/src/controller/coop.controller.js b/src/controller/coop.controller.js index 7c825dc..2b09a3b 100644 --- a/src/controller/coop.controller.js +++ b/src/controller/coop.controller.js @@ -3,6 +3,7 @@ const { createCoop, updateCoop, getCoopById, + getNoEmptyCoopList, deleteCoop, getEmptyCoopList, } = require("../service/coop.service"); @@ -62,6 +63,12 @@ class CoopController { ctx.body = Response(500, "该鸡舍已有进鸡记录,不可删除"); } } + + async noEmptyCoop(ctx, next) { + const { house_id } = ctx.request.query; + const res = await getNoEmptyCoopList(house_id); + ctx.body = Response(0, "查询非空闲鸡舍列表成功", res); + } } module.exports = new CoopController(); diff --git a/src/router/coop.route.js b/src/router/coop.route.js index c580be1..c1591b5 100644 --- a/src/router/coop.route.js +++ b/src/router/coop.route.js @@ -11,6 +11,7 @@ const { info, deleteById, emptyCoop, + noEmptyCoop, } = require("../controller/coop.controller"); router.get("/list", auth, list); @@ -25,4 +26,6 @@ router.post("/delete", auth, deleteById); router.get("/empty", auth, emptyCoop); +router.get("/noemp", auth, noEmptyCoop); + module.exports = router; diff --git a/src/service/chicken.service.js b/src/service/chicken.service.js index f47af0c..41c48f3 100644 --- a/src/service/chicken.service.js +++ b/src/service/chicken.service.js @@ -80,15 +80,18 @@ class ChickenService { } async getChickenByCoopIdAndHouseId(coop_id, house_id) { - const whereOpt = { - is_marketed: 0, - }; - coop_id && Object.assign(whereOpt, { coop_id }); - house_id && Object.assign(whereOpt, { house_id }); - const res = await Chicken.findOne({ - where: whereOpt, + const res = await Chicken.findAll({ + where: { + house_id, + is_marketed: 0, + }, }); - return res ? res.dataValues : null; + const arr = res.map((item) => item.dataValues); + const searchVal = arr.filter((item) => { + const coopArr = item.coop_id.split(","); + return coopArr.includes(coop_id + ""); + }); + return searchVal && searchVal[0]; } async getChickenInfoById(id, log_name) { diff --git a/src/service/coop.service.js b/src/service/coop.service.js index 03bd3c3..a957386 100644 --- a/src/service/coop.service.js +++ b/src/service/coop.service.js @@ -125,7 +125,17 @@ class CoopService { }, }); const arr = res.map((item) => item.dataValues); - // realRes 即为空闲 鸡舍 + return arr; + } + + async getNoEmptyCoopList(house_id) { + const res = await Coop.findAll({ + where: { + house_id, + is_empty: 0, + }, + }); + const arr = res.map((item) => item.dataValues); return arr; } diff --git a/src/service/die.service.js b/src/service/die.service.js index b7c0cea..e554b22 100644 --- a/src/service/die.service.js +++ b/src/service/die.service.js @@ -66,16 +66,19 @@ class DieService { } }); const p = temp.map(async (item) => { + console.log(item.coop_id); const chickenInfo = await getChickenByCoopIdAndHouseId( item.coop_id, item.house_id ); + console.log(chickenInfo); const coopInfo = await getCoopById(item.coop_id); item.batch_number = chickenInfo?.batch_number; item.coop_name = coopInfo?.coop_name; return item; }); const hasBatch = await Promise.all(p); + // console.log(hasBatch); // 根据批次号进行筛选 const result = hasBatch.filter((item) => { if (batch_number == "") { @@ -151,8 +154,10 @@ class DieService { if (res) { // 死淘数量不大于进鸡数量-之前录入的该舍死淘数量 const dieInfos = await Die.findAll({ - coop_id, - house_id, + where: { + coop_id, + house_id, + }, }); const dieArr = dieInfos.map((item) => item.dataValues); let dieTotal = 0;