diff --git a/zhyc-module/pom.xml b/zhyc-module/pom.xml
index c44d948..9555124 100644
--- a/zhyc-module/pom.xml
+++ b/zhyc-module/pom.xml
@@ -201,6 +201,10 @@
org.springframework.boot
spring-boot-test
+
+ org.projectlombok
+ lombok
+
\ No newline at end of file
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java
index 0e3275c..0af047c 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java
@@ -44,6 +44,17 @@ public class DaSheepfoldController extends BaseController
List list = daSheepfoldService.selectDaSheepfoldList(daSheepfold);
return getDataTable(list);
}
+
+
+ /**
+ * 主表格:羊舍级别汇总列表
+ */
+ @GetMapping("/summaryList")
+ public TableDataInfo summaryList(DaSheepfold daSheepfold) {
+ startPage();
+ List list = daSheepfoldService.selectDaSheepfoldSummaryList(daSheepfold);
+ return getDataTable(list);
+ }
/*
* 根据羊舍ids查询羊只id
* */
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java
index ab30928..8d48269 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java
@@ -115,5 +115,10 @@ public class DaSheepfold extends BaseEntity
@Excel(name = "备注")
private String comment;
+ // 非数据库字段:单栏位羊数(子表格用)
+ private Integer sheepCount;
+ // 非数据库字段:羊舍总羊数(主表格用)
+ private Integer totalSheepCount;
+
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/ExportConfig.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/ExportConfig.java
new file mode 100644
index 0000000..0b55bc0
--- /dev/null
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/ExportConfig.java
@@ -0,0 +1,28 @@
+// 创建文件:ExportConfig.java
+package com.zhyc.module.base.domain;
+
+import lombok.Data;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 导出配置类
+ */
+@Data
+public class ExportConfig {
+ /**
+ * 要导出的列名列表(前端传递的驼峰命名)
+ */
+ private List columnNames;
+
+ /**
+ * 查询条件
+ */
+ private Map queryParams;
+
+ /**
+ * 自定义筛选条件
+ */
+ private Map customFilterParams;
+}
\ No newline at end of file
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java
index 9b690ce..caa0a2c 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java
@@ -30,6 +30,12 @@ public interface DaSheepfoldMapper
*/
public List selectDaSheepfoldList(DaSheepfold daSheepfold);
+
+ /**
+ * 羊舍级别汇总查询(主表格)
+ */
+ List selectDaSheepfoldSummaryList(DaSheepfold daSheepfold);
+
/**
* 新增羊舍管理
*
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java
index 26bac8f..54a38e5 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java
@@ -29,6 +29,8 @@ public interface IDaSheepfoldService
*/
public List selectDaSheepfoldList(DaSheepfold daSheepfold);
+ public List selectDaSheepfoldSummaryList(DaSheepfold daSheepfold);
+
/**
* 新增羊舍管理
*
diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java
index 4753929..dc303ed 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java
@@ -5,6 +5,8 @@ import com.zhyc.module.base.domain.DaSheepfold;
import com.zhyc.module.base.mapper.BasSheepMapper;
import com.zhyc.module.base.mapper.DaSheepfoldMapper;
import com.zhyc.module.base.service.IDaSheepfoldService;
+import org.slf4j.Logger; // 核心修正:导入SLF4J的Logger
+import org.slf4j.LoggerFactory; // 核心修正:导入SLF4J的LoggerFactory
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -24,6 +26,11 @@ public class DaSheepfoldServiceImpl implements IDaSheepfoldService
@Autowired
private BasSheepMapper basSheepMapper;
+
+ // 新增:创建日志对象
+ private static final Logger log = LoggerFactory.getLogger(DaSheepfoldServiceImpl.class);
+
+
/**
* 查询羊舍管理
*
@@ -45,9 +52,44 @@ public class DaSheepfoldServiceImpl implements IDaSheepfoldService
@Override
public List selectDaSheepfoldList(DaSheepfold daSheepfold)
{
+
+ List sheepfoldList = daSheepfoldMapper.selectDaSheepfoldList(daSheepfold);
+
+ // 新增调试打印:输出每个栏位的羊数
+ log.info("===== 栏位羊数调试 =====");
+ log.info("查询条件:牧场ID={}, 羊舍类型ID={}, 羊舍编号={}",
+ daSheepfold.getRanchId(), daSheepfold.getSheepfoldTypeId(), daSheepfold.getSheepfoldNo());
+ log.info("共查询到{}个栏位", sheepfoldList.size());
+
+ for (DaSheepfold fold : sheepfoldList) {
+ log.info("栏位ID={}, 羊舍编号={}, 排号={}, 栏数={}, 羊数={}",
+ fold.getId(), fold.getSheepfoldNo(), fold.getRowNo(), fold.getColumns(), fold.getSheepCount());
+ }
+ log.info("===== 调试结束 =====\n");
return daSheepfoldMapper.selectDaSheepfoldList(daSheepfold);
}
+
+ /**
+ * 羊舍级别汇总查询(主表格)
+ */
+ public List selectDaSheepfoldSummaryList(DaSheepfold daSheepfold) {
+// List summaryList = daSheepfoldMapper.selectDaSheepfoldSummaryList(daSheepfold);
+//
+// // 新增调试打印:输出羊舍汇总羊数
+// log.info("===== 羊舍汇总羊数调试 =====");
+// log.info("查询条件:牧场ID={}, 羊舍类型ID={}",
+// daSheepfold.getRanchId(), daSheepfold.getSheepfoldTypeId());
+// log.info("共查询到{}个羊舍", summaryList.size());
+//
+// for (DaSheepfold fold : summaryList) {
+// log.info("羊舍编号={}, 羊舍名称={}, 总羊数={}",
+// fold.getSheepfoldNo(), fold.getSheepfoldName(), fold.getTotalSheepCount());
+// }
+// log.info("===== 汇总调试结束 =====\n");
+ return daSheepfoldMapper.selectDaSheepfoldSummaryList(daSheepfold);
+ }
+
/**
* 新增羊舍管理
*
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java
index db39029..b44fb06 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java
@@ -109,6 +109,8 @@ public class SgFeedListController extends BaseController {
@Log(title = "配料清单", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody SgFeedList sgFeedList) {
+ sgFeedList.setDeptId(getDeptId());
+ sgFeedList.setUserId(getUserId());
return toAjax(sgFeedListService.insertSgFeedList(sgFeedList));
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java
index 39bde43..480dadd 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java
@@ -79,6 +79,8 @@ public class SgFeedPlanController extends BaseController {
if (null == sgFeedPlan) {
throw new RuntimeException("数据为空");
}
+ sgFeedPlan.setDeptId(getDeptId());
+ sgFeedPlan.setUserId(getUserId());
sgFeedPlan.setCreateDate(new Date());
// 计算其他字段值
setPlan(sgFeedPlan);
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedStatisticController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedStatisticController.java
index de0334f..1f827c6 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedStatisticController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedStatisticController.java
@@ -84,6 +84,8 @@ public class SgFeedStatisticController extends BaseController {
if (null == sgFeedStatistic.getFormulaId() && null == sgFeedStatistic.getFormulaBatchId()) {
throw new RuntimeException("ERROR: 数据为空");
}
+ sgFeedStatistic.setUserId(getUserId());
+ sgFeedStatistic.setDeptId(getDeptId());
List isExist = sgFeedStatisticService.selectSgFeedStatisticList(sgFeedStatistic);
if (null != isExist && !isExist.isEmpty()) {
throw new RuntimeException("WARNING: 数据重复");
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java
index fb6a83b..61ed922 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java
@@ -79,6 +79,8 @@ public class SgFormulaListController extends BaseController
@PostMapping
public AjaxResult add(@RequestBody SgFormulaList sgFormulaList)
{
+ sgFormulaList.setUserId(getUserId());
+ sgFormulaList.setDeptId(getDeptId());
return toAjax(sgFormulaListService.insertSgFormulaList(sgFormulaList));
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java
index 9284c7a..730e4bb 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java
@@ -95,6 +95,8 @@ public class SgFormulaManagementController extends BaseController {
public AjaxResult add(@RequestBody SgFormulaManagement sgFormulaManagement) {
if (null == sgFormulaManagement)
throw new RuntimeException("ERROR: 数据为空");
+ sgFormulaManagement.setUserId(getUserId());
+ sgFormulaManagement.setDeptId(getDeptId());
if (Objects.equals(sgFormulaManagement.getBatchId(), "0")) {
SgFormulaManagement exist = sgFormulaManagementService.selectSgFormulaManagementByFormulaId(sgFormulaManagement.getFormulaId());
if (exist != null) {
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java
index 69c51ac..04db12a 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java
@@ -2,6 +2,7 @@ package com.zhyc.module.feed.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
+
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -23,14 +24,13 @@ import com.zhyc.common.core.page.TableDataInfo;
/**
* 原料Controller
- *
+ *
* @author HashMap
* @date 2026-01-16
*/
@RestController
@RequestMapping("/feed/material")
-public class SgMaterialController extends BaseController
-{
+public class SgMaterialController extends BaseController {
@Autowired
private ISgMaterialService sgMaterialService;
@@ -39,8 +39,7 @@ public class SgMaterialController extends BaseController
*/
@PreAuthorize("@ss.hasPermi('feed:material:list')")
@GetMapping("/list")
- public TableDataInfo list(SgMaterial sgMaterial)
- {
+ public TableDataInfo list(SgMaterial sgMaterial) {
startPage();
List list = sgMaterialService.selectSgMaterialList(sgMaterial);
return getDataTable(list);
@@ -52,8 +51,7 @@ public class SgMaterialController extends BaseController
@PreAuthorize("@ss.hasPermi('feed:material:export')")
@Log(title = "原料", businessType = BusinessType.EXPORT)
@PostMapping("/export")
- public void export(HttpServletResponse response, SgMaterial sgMaterial)
- {
+ public void export(HttpServletResponse response, SgMaterial sgMaterial) {
List list = sgMaterialService.selectSgMaterialList(sgMaterial);
ExcelUtil util = new ExcelUtil(SgMaterial.class);
util.exportExcel(response, list, "原料数据");
@@ -64,8 +62,7 @@ public class SgMaterialController extends BaseController
*/
@PreAuthorize("@ss.hasPermi('feed:material:query')")
@GetMapping(value = "/{materialId}")
- public AjaxResult getInfo(@PathVariable("materialId") String materialId)
- {
+ public AjaxResult getInfo(@PathVariable("materialId") String materialId) {
return success(sgMaterialService.selectSgMaterialByMaterialId(materialId));
}
@@ -75,8 +72,9 @@ public class SgMaterialController extends BaseController
@PreAuthorize("@ss.hasPermi('feed:material:add')")
@Log(title = "原料", businessType = BusinessType.INSERT)
@PostMapping
- public AjaxResult add(@RequestBody SgMaterial sgMaterial)
- {
+ public AjaxResult add(@RequestBody SgMaterial sgMaterial) {
+ sgMaterial.setUserId(getUserId());
+ sgMaterial.setDeptId(getDeptId());
return toAjax(sgMaterialService.insertSgMaterial(sgMaterial));
}
@@ -86,8 +84,7 @@ public class SgMaterialController extends BaseController
@PreAuthorize("@ss.hasPermi('feed:material:edit')")
@Log(title = "原料", businessType = BusinessType.UPDATE)
@PutMapping
- public AjaxResult edit(@RequestBody SgMaterial sgMaterial)
- {
+ public AjaxResult edit(@RequestBody SgMaterial sgMaterial) {
return toAjax(sgMaterialService.updateSgMaterial(sgMaterial));
}
@@ -96,9 +93,8 @@ public class SgMaterialController extends BaseController
*/
@PreAuthorize("@ss.hasPermi('feed:material:remove')")
@Log(title = "原料", businessType = BusinessType.DELETE)
- @DeleteMapping("/{materialIds}")
- public AjaxResult remove(@PathVariable String[] materialIds)
- {
+ @DeleteMapping("/{materialIds}")
+ public AjaxResult remove(@PathVariable String[] materialIds) {
return toAjax(sgMaterialService.deleteSgMaterialByMaterialIds(materialIds));
}
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedList.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedList.java
index 41ca828..8ff2292 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedList.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedList.java
@@ -19,26 +19,36 @@ import com.zhyc.common.core.domain.BaseEntity;
*/
@Setter
@Getter
-public class SgFeedList extends BaseEntity
-{
+public class SgFeedList extends BaseEntity {
private static final long serialVersionUID = 1L;
-
- /** 序号 */
+ private Long userId;
+ private Long deptId;
+ /**
+ * 序号
+ */
private Long id;
- /** 配方编号 */
+ /**
+ * 配方编号
+ */
@Excel(name = "配方编号")
private String formulaId;
- /** 配方批号 */
+ /**
+ * 配方批号
+ */
@Excel(name = "配方批号")
private String formulaBatchId;
- /** 饲草班人员 */
+ /**
+ * 饲草班人员
+ */
@Excel(name = "饲草班人员")
private String zookeeper;
- /** 配料日期 */
+ /**
+ * 配料日期
+ */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "配料日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date deployDate;
@@ -51,14 +61,14 @@ public class SgFeedList extends BaseEntity
private Double noonTotal;
private Double afternoonTotal;
- private List formulaList;
+ private List formulaList;
private List planList;
@Override
public String toString() {
- return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("formulaId", getFormulaId())
.append("formulaBatchId", getFormulaBatchId())
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java
index 7d537c0..23097f7 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java
@@ -1,6 +1,7 @@
package com.zhyc.module.feed.domain;
import java.util.Date;
+
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;
@@ -11,125 +12,144 @@ import com.zhyc.common.core.domain.BaseEntity;
/**
* 饲喂计划对象 sg_feed_plan
- *
+ *
* @author HashMap
* @date 2025-08-14
*/
@Getter
@Setter
-public class SgFeedPlan extends BaseEntity
-{
+public class SgFeedPlan extends BaseEntity {
private static final long serialVersionUID = 1L;
-
- /** 创建日期 */
+ private Long userId;
+ private Long deptId;
+ /**
+ * 创建日期
+ */
private Date createDate;
- /** 配方编码 */
+ /**
+ * 配方编码
+ */
@Excel(name = "配方编码")
private String formulaId;
- /** 批号 */
+ /**
+ * 批号
+ */
@Excel(name = "批号")
private String batchId;
- /** 羊舍 */
+ /**
+ * 羊舍
+ */
@Excel(name = "羊舍")
private Integer sheepHouseId;
- /** 羊只数量 */
+ /**
+ * 羊只数量
+ */
@Excel(name = "羊只数量")
private Integer sheepCount;
- /** 日均计划量 */
+ /**
+ * 日均计划量
+ */
@Excel(name = "日均计划量")
private Double planDailySize;
- /** 饲喂比例(早) */
+ /**
+ * 饲喂比例(早)
+ */
@Excel(name = "饲喂比例(早)")
private Double ratioMorning;
- /** 饲喂比例(中) */
+ /**
+ * 饲喂比例(中)
+ */
@Excel(name = "饲喂比例(中)")
private Double ratioNoon;
- /** 饲喂比例(下) */
+ /**
+ * 饲喂比例(下)
+ */
@Excel(name = "饲喂比例(下)")
private Double ratioAfternoon;
- /** 计划量(早) */
+ /**
+ * 计划量(早)
+ */
@Excel(name = "计划量(早)")
private Double planMorningSize;
- /** 计划总量(早) */
+ /**
+ * 计划总量(早)
+ */
@Excel(name = "计划总量(早)")
private Double planMorningTotal;
- /** 实际量(早) */
+ /**
+ * 实际量(早)
+ */
@Excel(name = "实际量(早)")
private Double actualMorningSize;
- /** 计划量(中) */
+ /**
+ * 计划量(中)
+ */
@Excel(name = "计划量(中)")
private Double planNoonSize;
- /** 计划总量(中) */
+ /**
+ * 计划总量(中)
+ */
@Excel(name = "计划总量(中)")
private Double planNoonTotal;
- /** 实际量(中) */
+ /**
+ * 实际量(中)
+ */
@Excel(name = "实际量(中)")
private Double actualNoonSize;
- /** 计划量(下) */
+ /**
+ * 计划量(下)
+ */
@Excel(name = "计划量(下)")
private Double planAfternoonSize;
- /** 计划总量(下) */
+ /**
+ * 计划总量(下)
+ */
@Excel(name = "计划总量(下)")
private Double planAfternoonTotal;
- /** 实际量(下) */
+ /**
+ * 实际量(下)
+ */
@Excel(name = "实际量(下)")
private Double actualAfternoonSize;
- /** 计划饲喂总量 */
+ /**
+ * 计划饲喂总量
+ */
@Excel(name = "计划饲喂总量")
private Double planFeedTotal;
- /** 饲草班人员 */
+ /**
+ * 饲草班人员
+ */
@Excel(name = "饲草班人员")
private String zookeeper;
- /** 饲喂计划日期 */
+ /**
+ * 饲喂计划日期
+ */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "饲喂计划日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date planDate;
@Override
public String toString() {
- return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
- .append("createDate", getCreateDate())
- .append("formulaId", getFormulaId())
- .append("batchId", getBatchId())
- .append("sheepHouseId", getSheepHouseId())
- .append("sheepCount", getSheepCount())
- .append("planDailySize", getPlanDailySize())
- .append("ratioMorning", getRatioMorning())
- .append("ratioNoon", getRatioNoon())
- .append("ratioAfternoon", getRatioAfternoon())
- .append("planMorningSize", getPlanMorningSize())
- .append("planMorningTotal", getPlanMorningTotal())
- .append("actualMorningSize", getActualMorningSize())
- .append("planNoonSize", getPlanNoonSize())
- .append("planNoonTotal", getPlanNoonTotal())
- .append("actualNoonSize", getActualNoonSize())
- .append("planAfternoonSize", getPlanAfternoonSize())
- .append("planAfternoonTotal", getPlanAfternoonTotal())
- .append("actualAfternoonSize", getActualAfternoonSize())
- .append("planFeedTotal", getPlanFeedTotal())
- .append("zookeeper", getZookeeper())
- .append("planDate", getPlanDate())
- .append("remark", getRemark())
- .toString();
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("createDate", getCreateDate()).append("formulaId", getFormulaId()).append("batchId", getBatchId()).append("sheepHouseId", getSheepHouseId()).append("sheepCount", getSheepCount()).append("planDailySize", getPlanDailySize()).append("ratioMorning", getRatioMorning()).append("ratioNoon", getRatioNoon()).append("ratioAfternoon", getRatioAfternoon()).append("planMorningSize", getPlanMorningSize()).append("planMorningTotal", getPlanMorningTotal()).append("actualMorningSize", getActualMorningSize()).append("planNoonSize", getPlanNoonSize()).append("planNoonTotal", getPlanNoonTotal()).append("actualNoonSize", getActualNoonSize()).append("planAfternoonSize", getPlanAfternoonSize()).append("planAfternoonTotal", getPlanAfternoonTotal()).append("actualAfternoonSize", getActualAfternoonSize()).append("planFeedTotal", getPlanFeedTotal()).append("zookeeper", getZookeeper()).append("planDate", getPlanDate()).append("remark", getRemark()).toString();
}
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedStatistic.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedStatistic.java
index 2cdc21e..23bc959 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedStatistic.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedStatistic.java
@@ -23,7 +23,8 @@ import java.util.List;
@Getter
public class SgFeedStatistic extends BaseEntity {
private static final long serialVersionUID = 1L;
-
+ private Long userId;
+ private Long deptId;
/**
* UUID
*/
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java
index aac1fc9..55c7572 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java
@@ -9,33 +9,45 @@ import com.zhyc.common.core.domain.BaseEntity;
/**
* 配方列表对象 sg_formula_list
- *
+ *
* @author HashMap
* @date 2025-08-09
*/
@Setter
@Getter
-public class SgFormulaList extends BaseEntity
-{
+public class SgFormulaList extends BaseEntity {
private static final long serialVersionUID = 1L;
-
- /** 序号 */
+ private Long userId;
+ private Long deptId;
+ /**
+ * 序号
+ */
private Long code;
- /** 配方编号 */
+ /**
+ * 配方编号
+ */
private String formulaId;
- /** 配方编号 */
+ /**
+ * 配方编号
+ */
private String batchId;
- /** 原料编号 */
+ /**
+ * 原料编号
+ */
@Excel(name = "原料编号")
private String materialId;
- /** 原料名称 */
+ /**
+ * 原料名称
+ */
@Excel(name = "原料名称")
private String materialName;
- /** 比例 */
+ /**
+ * 比例
+ */
@Excel(name = "比例")
private Long ratio;
@@ -60,14 +72,14 @@ public class SgFormulaList extends BaseEntity
@Override
public String toString() {
- return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
- .append("code", getCode())
- .append("formulaId", getFormulaId())
- .append("materialId", getMaterialId())
- .append("materialName", getMaterialName())
- .append("ratio", getRatio())
- .append("isGranular", getIsGranular())
- .append("isSupplement", getIsSupplement())
- .toString();
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("code", getCode())
+ .append("formulaId", getFormulaId())
+ .append("materialId", getMaterialId())
+ .append("materialName", getMaterialName())
+ .append("ratio", getRatio())
+ .append("isGranular", getIsGranular())
+ .append("isSupplement", getIsSupplement())
+ .toString();
}
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java
index 3fa8563..b3aaf71 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java
@@ -13,67 +13,87 @@ import com.zhyc.common.core.domain.BaseEntity;
/**
* 配方管理对象 sg_formula_management
- *
+ *
* @author HashMap
* @date 2025-08-09
*/
@Setter
@Getter
-public class SgFormulaManagement extends BaseEntity
-{
+public class SgFormulaManagement extends BaseEntity {
private static final long serialVersionUID = 1L;
-
- /** 配方编号 */
+ private Long userId;
+ private Long deptId;
+ /**
+ * 配方编号
+ */
private String formulaId;
- /** 饲养阶段 */
+ /**
+ * 饲养阶段
+ */
@Excel(name = "饲养阶段")
private String feedStage;
- /** 批号 */
+ /**
+ * 批号
+ */
@Excel(name = "批号")
private String batchId;
- /** 开始使用时间 */
+ /**
+ * 开始使用时间
+ */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "开始使用时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date useStartDate;
- /** 结束使用时间 */
+ /**
+ * 结束使用时间
+ */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "结束使用时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date useEndDate;
- /** 使用状态 */
+ /**
+ * 使用状态
+ */
@Excel(name = "使用状态")
private String useState;
- /** 备注 */
+ /**
+ * 备注
+ */
@Excel(name = "备注")
private String remark;
- /** 配方列表 */
- private List sgFormulaList;
+ /**
+ * 配方列表
+ */
+ private List sgFormulaList;
- /** 子配方 */
+ /**
+ * 子配方
+ */
private List subFormulaList;
- /** 查询类型 *
+ /**
+ * 查询类型 *
* Sub : 子配方查询
* query : 类型查询
- * */
+ *
+ */
private String queryType;
@Override
public String toString() {
- return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
- .append("formulaId", getFormulaId())
- .append("feedStage", getFeedStage())
- .append("batchId", getBatchId())
- .append("useStartDate", getUseStartDate())
- .append("useEndDate", getUseEndDate())
- .append("useState", getUseState())
- .append("remark", getRemark())
- .toString();
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("formulaId", getFormulaId())
+ .append("feedStage", getFeedStage())
+ .append("batchId", getBatchId())
+ .append("useStartDate", getUseStartDate())
+ .append("useEndDate", getUseEndDate())
+ .append("useState", getUseState())
+ .append("remark", getRemark())
+ .toString();
}
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java
index 316b999..9289f72 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java
@@ -1,5 +1,6 @@
package com.zhyc.module.feed.domain;
+import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zhyc.common.annotation.Excel;
@@ -7,62 +8,59 @@ import com.zhyc.common.core.domain.BaseEntity;
/**
* 原料对象 sg_material
- *
+ *
* @author HashMap
* @date 2026-01-16
*/
-public class SgMaterial extends BaseEntity
-{
+@Data
+public class SgMaterial extends BaseEntity {
private static final long serialVersionUID = 1L;
-
- /** 原料编码 */
+ private Long userId;
+ private Long deptId;
+ /**
+ * 原料编码
+ */
@Excel(name = "原料编码")
private String materialId;
- /** 原料名称 */
+ /**
+ * 原料名称
+ */
@Excel(name = "原料名称")
private String materialName;
- /** 颗粒料 */
+ /**
+ * 颗粒料
+ */
@Excel(name = "颗粒料")
private Integer isGranular;
- public void setMaterialId(String materialId)
- {
+ public void setMaterialId(String materialId) {
this.materialId = materialId;
}
- public String getMaterialId()
- {
+ public String getMaterialId() {
return materialId;
}
- public void setMaterialName(String materialName)
- {
+ public void setMaterialName(String materialName) {
this.materialName = materialName;
}
- public String getMaterialName()
- {
+ public String getMaterialName() {
return materialName;
}
- public void setIsGranular(Integer isGranular)
- {
+ public void setIsGranular(Integer isGranular) {
this.isGranular = isGranular;
}
- public Integer getIsGranular()
- {
+ public Integer getIsGranular() {
return isGranular;
}
@Override
public String toString() {
- return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
- .append("materialId", getMaterialId())
- .append("materialName", getMaterialName())
- .append("isGranular", getIsGranular())
- .toString();
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("materialId", getMaterialId()).append("materialName", getMaterialName()).append("isGranular", getIsGranular()).toString();
}
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedListServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedListServiceImpl.java
index 894ff47..696288c 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedListServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedListServiceImpl.java
@@ -2,6 +2,7 @@ package com.zhyc.module.feed.service.impl;
import java.util.*;
+import com.zhyc.common.annotation.DataScope;
import com.zhyc.module.feed.domain.SgFeedPlan;
import com.zhyc.module.feed.domain.SgFormulaManagement;
import com.zhyc.module.feed.service.ISgFeedPlanService;
@@ -56,6 +57,7 @@ public class SgFeedListServiceImpl implements ISgFeedListService {
* @return 配料清单
*/
@Override
+ @DataScope(deptAlias = "sg_feed_list_alias", userAlias = "sg_feed_list_alias")
public List selectSgFeedListList(SgFeedList sgFeedList) {
return sgFeedListMapper.selectSgFeedListList(sgFeedList);
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java
index 79bcfcc..63044e3 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java
@@ -3,6 +3,7 @@ package com.zhyc.module.feed.service.impl;
import java.util.Date;
import java.util.List;
+import com.zhyc.common.annotation.DataScope;
import org.springframework.stereotype.Service;
import com.zhyc.module.feed.mapper.SgFeedPlanMapper;
import com.zhyc.module.feed.domain.SgFeedPlan;
@@ -11,14 +12,13 @@ import org.springframework.transaction.annotation.Transactional;
/**
* 饲喂计划Service业务层处理
- *
+ *
* @author HashMap
* @date 2025-08-14
*/
@Service
-@Transactional(rollbackFor=Exception.class)
-public class SgFeedPlanServiceImpl implements ISgFeedPlanService
-{
+@Transactional(rollbackFor = Exception.class)
+public class SgFeedPlanServiceImpl implements ISgFeedPlanService {
private final SgFeedPlanMapper sgFeedPlanMapper;
public SgFeedPlanServiceImpl(SgFeedPlanMapper sgFeedPlanMapper) {
@@ -27,73 +27,68 @@ public class SgFeedPlanServiceImpl implements ISgFeedPlanService
/**
* 查询饲喂计划
- *
+ *
* @param createDate 饲喂计划主键
* @return 饲喂计划
*/
@Override
- public SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate)
- {
+ public SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate) {
return sgFeedPlanMapper.selectSgFeedPlanByCreateDate(createDate);
}
/**
* 查询饲喂计划列表
- *
+ *
* @param sgFeedPlan 饲喂计划
* @return 饲喂计划
*/
@Override
- public List selectSgFeedPlanList(SgFeedPlan sgFeedPlan)
- {
+ @DataScope(deptAlias = "sg_feed_plan_alias", userAlias = "sg_feed_plan_alias")
+ public List selectSgFeedPlanList(SgFeedPlan sgFeedPlan) {
return sgFeedPlanMapper.selectSgFeedPlanList(sgFeedPlan);
}
/**
* 新增饲喂计划
- *
+ *
* @param sgFeedPlan 饲喂计划
* @return 结果
*/
@Override
- public int insertSgFeedPlan(SgFeedPlan sgFeedPlan)
- {
+ public int insertSgFeedPlan(SgFeedPlan sgFeedPlan) {
return sgFeedPlanMapper.insertSgFeedPlan(sgFeedPlan);
}
/**
* 修改饲喂计划
- *
+ *
* @param sgFeedPlan 饲喂计划
* @return 结果
*/
@Override
- public int updateSgFeedPlan(SgFeedPlan sgFeedPlan)
- {
+ public int updateSgFeedPlan(SgFeedPlan sgFeedPlan) {
return sgFeedPlanMapper.updateSgFeedPlan(sgFeedPlan);
}
/**
* 批量删除饲喂计划
- *
+ *
* @param createDates 需要删除的饲喂计划主键
* @return 结果
*/
@Override
- public int deleteSgFeedPlanByCreateDates(Date[] createDates)
- {
+ public int deleteSgFeedPlanByCreateDates(Date[] createDates) {
return sgFeedPlanMapper.deleteSgFeedPlanByCreateDates(createDates);
}
/**
* 删除饲喂计划信息
- *
+ *
* @param createDate 饲喂计划主键
* @return 结果
*/
@Override
- public int deleteSgFeedPlanByCreateDate(Date createDate)
- {
+ public int deleteSgFeedPlanByCreateDate(Date createDate) {
return sgFeedPlanMapper.deleteSgFeedPlanByCreateDate(createDate);
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedStatisticServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedStatisticServiceImpl.java
index 43cdde6..4f674f3 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedStatisticServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedStatisticServiceImpl.java
@@ -3,6 +3,7 @@ package com.zhyc.module.feed.service.impl;
import java.util.List;
import java.util.stream.Collectors;
+import com.zhyc.common.annotation.DataScope;
import com.zhyc.module.base.domain.DaSheepfold;
import com.zhyc.module.feed.domain.SgFeedList;
import com.zhyc.module.feed.domain.SgFeedPlan;
@@ -51,6 +52,7 @@ public class SgFeedStatisticServiceImpl implements ISgFeedStatisticService {
* @return 饲喂量统计
*/
@Override
+ @DataScope(deptAlias = "sg_feed_statistic_alias", userAlias = "sg_feed_statistic_alias")
public List selectSgFeedStatisticList(SgFeedStatistic sgFeedStatistic) {
return sgFeedStatisticMapper.selectSgFeedStatisticList(sgFeedStatistic);
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java
index 320a9d3..424cdc3 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java
@@ -2,6 +2,7 @@ package com.zhyc.module.feed.service.impl;
import java.util.List;
+import com.zhyc.common.annotation.DataScope;
import org.springframework.stereotype.Service;
import com.zhyc.module.feed.mapper.SgFormulaListMapper;
import com.zhyc.module.feed.domain.SgFormulaList;
@@ -41,6 +42,7 @@ public class SgFormulaListServiceImpl implements ISgFormulaListService {
* @return 配方列表
*/
@Override
+ @DataScope(deptAlias = "sg_formula_list_alias", userAlias = "sg_formula_list_alias")
public List selectSgFormulaListList(SgFormulaList sgFormulaList) {
return sgFormulaListMapper.selectSgFormulaListList(sgFormulaList);
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java
index b07028f..e0cce41 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java
@@ -4,6 +4,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Objects;
+import com.zhyc.common.annotation.DataScope;
import com.zhyc.module.feed.domain.SgFormulaList;
import com.zhyc.module.feed.mapper.SgFormulaListMapper;
import org.springframework.stereotype.Service;
@@ -46,6 +47,7 @@ public class SgFormulaManagementServiceImpl implements ISgFormulaManagementServi
* @return 配方管理
*/
@Override
+ @DataScope(deptAlias = "sg_formula_management_alias", userAlias = "sg_formula_management_alias")
public List selectSgFormulaManagementList(SgFormulaManagement sgFormulaManagement) {
List sgFormulaManagements =
sgFormulaManagementMapper.selectSgFormulaManagementList(sgFormulaManagement);
diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java
index 60c787b..33225a5 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java
@@ -2,6 +2,7 @@ package com.zhyc.module.feed.service.impl;
import java.util.List;
+import com.zhyc.common.annotation.DataScope;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zhyc.module.feed.mapper.SgMaterialMapper;
@@ -37,6 +38,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService {
* @return 原料
*/
@Override
+ @DataScope(deptAlias = "sg_material_alias", userAlias = "sg_material_alias")
public List selectSgMaterialList(SgMaterial sgMaterial) {
return sgMaterialMapper.selectSgMaterialList(sgMaterial);
}
diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java
index 24af17c..beaa5c7 100644
--- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java
+++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java
@@ -288,49 +288,6 @@ public class ScBreedRecordServiceImpl implements IScBreedRecordService
return scBreedRecordMapper.selectBreedRecordByMatingTime(sheepId, startDate, endDate);
}
-// /**
-// * 新增配种记录
-// *
-// * @param scBreedRecord 配种记录
-// * @return 结果
-// */
-// @Override
-// public int insertScBreedRecord(ScBreedRecord scBreedRecord)
-// {
-// // 设置创建时间
-// scBreedRecord.setCreateTime(DateUtils.getNowDate());
-//
-// // 插入配种记录
-// int result = scBreedRecordMapper.insertScBreedRecord(scBreedRecord);
-//
-// // 如果插入成功,同步更新羊只的配种日期
-// if (result > 0 && scBreedRecord.getEweId() != null) {
-// try {
-// Long eweId = Long.parseLong(scBreedRecord.getEweId());
-//
-//// // 方案1:只更新配种日期(推荐)
-//// scBreedRecordMapper.updateSheepMatingDate(
-//// eweId,
-//// scBreedRecord.getCreateTime(),
-//// scBreedRecord.getCreateBy()
-//// );
-//
-//// 方案2:同时更新配种日期和配种次数(如果需要的话,取消下面注释)
-// scBreedRecordMapper.incrementSheepMatingCount(
-// eweId,
-// scBreedRecord.getCreateTime(),
-// scBreedRecord.getCreateBy()
-// );
-//
-// log.info("同步更新羊只 {} 的配种日期成功", eweId);
-// } catch (Exception e) {
-// log.error("同步更新羊只配种日期失败", e);
-// // 不影响主流程,只记录日志
-// }
-// }
-//
-// return result;
-// }
/**
* 新增配种记录
*/
diff --git a/zhyc-module/src/main/resources/mapper/base/DaSheepfoldMapper.xml b/zhyc-module/src/main/resources/mapper/base/DaSheepfoldMapper.xml
index 4bf15cc..df7ae76 100644
--- a/zhyc-module/src/main/resources/mapper/base/DaSheepfoldMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/base/DaSheepfoldMapper.xml
@@ -13,33 +13,93 @@
+
+
+
- select id,
- ranch_id,
- sheepfold_name,
- sheepfold_type_id,
- sheepfold_no,
- row_no,
- columns,
- comment
- from da_sheepfold
-
+ SELECT
+ ds.id,
+ ds.ranch_id,
+ ds.sheepfold_name,
+ ds.sheepfold_type_id,
+ ds.sheepfold_no,
+ ds.row_no,
+ ds.columns,
+ ds.comment
+ FROM da_sheepfold ds
-