From cbd295f5295b1d9fc3a64caed3989da241571854 Mon Sep 17 00:00:00 2001 From: maochaoying <925670706@qq.com> Date: Sat, 15 Apr 2023 11:54:38 +0800 Subject: [PATCH] 123 --- src/controller/feedConversion.controller.js | 18 +++++++++++++++-- src/router/feedConversion.route.js | 6 ++++-- src/service/coop.service.js | 14 +++++++++++++ src/service/feedConversion.service.js | 31 ++++++++++++++++++++++++++++- 4 files changed, 64 insertions(+), 5 deletions(-) diff --git a/src/controller/feedConversion.controller.js b/src/controller/feedConversion.controller.js index eeb7a0a..2be369c 100644 --- a/src/controller/feedConversion.controller.js +++ b/src/controller/feedConversion.controller.js @@ -1,6 +1,20 @@ -const {} = require("../service/feedConversion.service"); +const { createFeed } = require("../service/feedConversion.service"); const Response = require("../utils/response"); -class FeedConversionController {} +class FeedConversionController { + async add(ctx, next) { + const { batch_id, coop_id, fodder_total, weight_increment } = + ctx.request.body; + const { id: log_user_id } = ctx.state.user; + const res = await createFeed( + batch_id, + coop_id, + fodder_total, + weight_increment, + log_user_id + ); + ctx.body = Response(0, "新增料肉比记录成功", res); + } +} module.exports = new FeedConversionController(); diff --git a/src/router/feedConversion.route.js b/src/router/feedConversion.route.js index a03d5b7..864c5ca 100644 --- a/src/router/feedConversion.route.js +++ b/src/router/feedConversion.route.js @@ -2,7 +2,9 @@ const Router = require("koa-router"); const router = new Router({ prefix: "/ratio" }); -const { auth, hasAdminPermission } = require("../middleware/auth.middleware"); -const {} = require("../controller/feedConversion.controller"); +const { auth } = require("../middleware/auth.middleware"); +const { add } = require("../controller/feedConversion.controller"); + +router.post("/add", auth, add); module.exports = router; diff --git a/src/service/coop.service.js b/src/service/coop.service.js index fa75dbd..c6726ed 100644 --- a/src/service/coop.service.js +++ b/src/service/coop.service.js @@ -61,6 +61,20 @@ class CoopService { return arr; } + async updateRatioById(coop_id, ratio) { + const res = await Coop.update( + { + feed_conversion: ratio, + }, + { + where: { + id: coop_id, + }, + } + ); + return res; + } + async batchUpdateCoopStatusByIds(ids, status) { const res = await Coop.update( { diff --git a/src/service/feedConversion.service.js b/src/service/feedConversion.service.js index e4b2c77..96eebf5 100644 --- a/src/service/feedConversion.service.js +++ b/src/service/feedConversion.service.js @@ -1,4 +1,33 @@ const FeedConversion = require("../model/feedConversion.model"); -class FeedConversionService {} +const { updateRatioById } = require("./coop.service"); +class FeedConversionService { + async createFeed( + batch_id, + coop_id, + fodder_total, + weight_increment, + log_user_id + ) { + // 插入料肉比记录 + const res = await FeedConversion.create({ + batch_id, + coop_id, + fodder_total, + weight_increment, + log_user_id, + }); + // 像对应的coop中插入料肉比 + // 计算料肉比 + if (weight_increment != 0 && fodder_total != 0) { + try { + const ratio = fodder_total / weight_increment; + const coopRes = await updateRatioById(coop_id, ratio); + } catch (err) { + console.log(err); + } + } + return res; + } +} module.exports = new FeedConversionService();