From 08042ed3e431da362a1eaaf31a9ce90e382dab21 Mon Sep 17 00:00:00 2001 From: maochaoying <925670706@qq.com> Date: Tue, 21 Mar 2023 15:51:21 +0800 Subject: [PATCH] 123 --- src/controller/coop.controller.js | 8 ++++++++ src/router/coop.route.js | 4 +++- src/service/coop.service.js | 16 ++++++++++++++++ src/service/house.service.js | 9 +++++++++ 4 files changed, 36 insertions(+), 1 deletion(-) diff --git a/src/controller/coop.controller.js b/src/controller/coop.controller.js index 4bb4a6f..5644626 100644 --- a/src/controller/coop.controller.js +++ b/src/controller/coop.controller.js @@ -2,6 +2,7 @@ const { getCoopListById, createCoop, updateCoop, + getCoopById, } = require("../service/coop.service"); const Response = require("../utils/response"); @@ -24,6 +25,13 @@ class CoopController { ctx.body = Response(0, "新增鸡舍成功", res); } + async info(ctx, next) { + const { id } = ctx.request.query; + console.log(id); + const res = await getCoopById(id); + ctx.body = Response(0, "查询单个鸡舍成功", res); + } + async update(ctx, next) { const { coop_name, coop_cage_number, chicken_number, house_id, id } = ctx.request.body; diff --git a/src/router/coop.route.js b/src/router/coop.route.js index 7d67ceb..8cb13c3 100644 --- a/src/router/coop.route.js +++ b/src/router/coop.route.js @@ -4,7 +4,7 @@ const router = new Router({ prefix: "/coop" }); const { auth, hasAdminPermission } = require("../middleware/auth.middleware"); const { verifyCoopExisted } = require("../middleware/coop.middleware"); -const { list, create, update } = require("../controller/coop.controller"); +const { list, create, update, info } = require("../controller/coop.controller"); router.get("/list", auth, list); @@ -12,4 +12,6 @@ router.post("/create", auth, verifyCoopExisted, create); router.post("/update", auth, update); +router.get("/info", auth, info); + module.exports = router; diff --git a/src/service/coop.service.js b/src/service/coop.service.js index bc77bd2..867369e 100644 --- a/src/service/coop.service.js +++ b/src/service/coop.service.js @@ -1,4 +1,5 @@ const Coop = require("../model/coop.model"); +const { getHouseById } = require("./house.service"); class CoopService { async getCoopListById(house_id) { const res = await Coop.findAll({ @@ -31,6 +32,21 @@ class CoopService { return res ? res.dataValues : null; } + async getCoopById(id) { + const whereOpt = {}; + id && Object.assign(whereOpt, { id }); + const res = await Coop.findOne({ + where: whereOpt, + }); + if (res) { + const house_id = res.dataValues.house_id; + const houseInfo = await getHouseById(house_id); + res.dataValues.house_name = houseInfo.house_name; + return res.dataValues; + } + return null; + } + async updateCoop(coop_name, coop_cage_number, chicken_number, house_id, id) { const res = await Coop.update( { diff --git a/src/service/house.service.js b/src/service/house.service.js index 0dd7d18..f7570ac 100644 --- a/src/service/house.service.js +++ b/src/service/house.service.js @@ -30,6 +30,15 @@ class HouseService { return res ? res.dataValues : null; } + async getHouseById(id) { + const whereOpt = {}; + id && Object.assign(whereOpt, { id }); + const res = await House.findOne({ + where: whereOpt, + }); + return res ? res.dataValues : null; + } + async updateHouse(belong, house_name, area, id) { const res = await House.update( {