diff --git a/zhyc-admin/src/main/java/com/zhyc/SheepApplication.java b/zhyc-admin/src/main/java/com/zhyc/SheepApplication.java index 1867b29..ec34567 100644 --- a/zhyc-admin/src/main/java/com/zhyc/SheepApplication.java +++ b/zhyc-admin/src/main/java/com/zhyc/SheepApplication.java @@ -3,7 +3,6 @@ package com.zhyc; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; -import org.springframework.context.annotation.ComponentScan; /** * 启动程序 diff --git a/zhyc-common/src/main/java/com/zhyc/common/utils/SecurityUtils.java b/zhyc-common/src/main/java/com/zhyc/common/utils/SecurityUtils.java index 92b34e4..43e330c 100644 --- a/zhyc-common/src/main/java/com/zhyc/common/utils/SecurityUtils.java +++ b/zhyc-common/src/main/java/com/zhyc/common/utils/SecurityUtils.java @@ -66,6 +66,21 @@ public class SecurityUtils } } + /** + * 用户昵称 + **/ + public static String getNickName() + { + try + { + return getLoginUser().getUser().getNickName(); + } + catch (Exception e) + { + throw new ServiceException("获取用户昵称异常", HttpStatus.UNAUTHORIZED); + } + } + /** * 获取用户 **/ diff --git a/zhyc-framework/src/main/java/com/zhyc/framework/aspectj/RateLimiterAspect.java b/zhyc-framework/src/main/java/com/zhyc/framework/aspectj/RateLimiterAspect.java index 0cc658e..a0b6d0d 100644 --- a/zhyc-framework/src/main/java/com/zhyc/framework/aspectj/RateLimiterAspect.java +++ b/zhyc-framework/src/main/java/com/zhyc/framework/aspectj/RateLimiterAspect.java @@ -4,7 +4,6 @@ import java.lang.reflect.Method; import java.util.Collections; import java.util.List; import org.aspectj.lang.JoinPoint; -import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.reflect.MethodSignature; import org.slf4j.Logger; @@ -12,7 +11,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.script.RedisScript; -import org.springframework.stereotype.Component; import com.zhyc.common.annotation.RateLimiter; import com.zhyc.common.enums.LimitType; import com.zhyc.common.exception.ServiceException; diff --git a/zhyc-framework/src/main/java/com/zhyc/framework/config/RedisConfig.java b/zhyc-framework/src/main/java/com/zhyc/framework/config/RedisConfig.java index 00a1ff4..9c43b1b 100644 --- a/zhyc-framework/src/main/java/com/zhyc/framework/config/RedisConfig.java +++ b/zhyc-framework/src/main/java/com/zhyc/framework/config/RedisConfig.java @@ -1,9 +1,6 @@ package com.zhyc.framework.config; import org.springframework.cache.annotation.CachingConfigurerSupport; -import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.script.DefaultRedisScript; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java index fede094..007a1dc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java @@ -8,7 +8,6 @@ import javax.servlet.http.HttpServletResponse; import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.domain.BasSheepVariety; -import com.zhyc.module.base.mapper.BasSheepMapper; import com.zhyc.module.base.service.IBasSheepService; import com.zhyc.module.base.service.IBasSheepVarietyService; import org.springframework.security.access.prepost.PreAuthorize; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java index f847204..1667a96 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java @@ -1,12 +1,8 @@ package com.zhyc.module.base.controller; -import java.util.HashMap; import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; -import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.service.IBasSheepService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java index 5046e7c..6302bb3 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java @@ -6,7 +6,6 @@ import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.core.page.TableDataInfo; import com.zhyc.common.enums.BusinessType; import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.service.ISheepFileService; import org.springframework.beans.factory.annotation.Autowired; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java index 047d376..db9c9bc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java index e0d1adb..51a1b67 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java @@ -5,8 +5,6 @@ import com.zhyc.common.core.domain.TreeEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; /** * 分组管理对象 bas_sheep_group diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java index eed7c36..f17d010 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java @@ -3,8 +3,6 @@ package com.zhyc.module.base.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java index edf709e..ca7cbe4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java @@ -3,9 +3,6 @@ package com.zhyc.module.base.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; /** diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java index 56e8a36..ed3ef4e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java @@ -3,8 +3,6 @@ package com.zhyc.module.base.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java index ef3c938..22388e2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java @@ -3,9 +3,6 @@ package com.zhyc.module.base.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; /** 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 0216feb..2e6a8cf 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 @@ -5,8 +5,6 @@ import com.zhyc.common.core.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; /** * 羊舍管理对象 da_sheepfold diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java index acefce9..460ab2d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java @@ -6,8 +6,6 @@ import com.zhyc.common.core.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import java.util.Date; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java index 5f9721d..efba4f1 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java @@ -2,7 +2,6 @@ package com.zhyc.module.base.service; import java.util.List; -import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.domain.BasSheepType; /** diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java index 4c1a362..1f1c3ba 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java @@ -2,7 +2,6 @@ package com.zhyc.module.base.service.impl; import java.util.List; -import com.zhyc.module.base.domain.BasSheep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zhyc.module.base.mapper.BasSheepTypeMapper; diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java index 351a4ad..929321c 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java @@ -1,6 +1,5 @@ package com.zhyc.module.base.service.impl; -import com.zhyc.common.utils.DateUtils; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.mapper.SheepFileMapper; import com.zhyc.module.base.service.ISheepFileService; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java index 5795ca8..c1798ca 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java @@ -3,6 +3,7 @@ package com.zhyc.module.biosafety.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.zhyc.common.utils.SecurityUtils; import com.zhyc.module.biosafety.service.IHealthService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; @@ -97,7 +98,7 @@ public class HealthController extends BaseController */ @PreAuthorize("@ss.hasPermi('biosafety:health:remove')") @Log(title = "保健", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") + @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(healthService.deleteHealthByIds(ids)); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java index c3b60c5..f8b1f81 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java @@ -7,8 +7,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java index 05fe6ad..6876dda 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java index 773ec33..44cc620 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java @@ -7,8 +7,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; @@ -37,8 +35,8 @@ public class Disinfect extends BaseEntity private Integer[] sheepfoldIds; /** 消毒日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm") private Date datetime; /** 技术员 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java index 1a77298..be3a25c 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java @@ -7,8 +7,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java index 807962a..3b9fc71 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java index 0fa8f88..d20a3d4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; import org.apache.ibatis.type.Alias; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java index e128a0e..53e5129 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java index 65ab2c1..0f716be 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.TreeEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java index 247ef20..0325467 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java index 95a6aea..442d76e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java @@ -5,8 +5,6 @@ import java.util.List; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java index 86eb829..34e0423 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java index ae22e43..4832ff4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java @@ -49,90 +49,4 @@ public class SwPrescription extends BaseEntity /** 处方详情信息 */ private List swPresDetailList; - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setNo(String no) - { - this.no = no; - } - - public String getNo() - { - return no; - } - - public void setName(String name) - { - this.name = name; - } - - public String getName() - { - return name; - } - - public void setPersType(Integer persType) - { - this.persType = persType; - } - - public Integer getPersType() - { - return persType; - } - - public void setComment(String comment) - { - this.comment = comment; - } - - public String getComment() - { - return comment; - } - - public void setStatus(Integer status) - { - this.status = status; - } - - public Integer getStatus() - { - return status; - } - - public List getSwPresDetailList() - { - return swPresDetailList; - } - - public void setSwPresDetailList(List swPresDetailList) - { - this.swPresDetailList = swPresDetailList; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("no", getNo()) - .append("name", getName()) - .append("persType", getPersType()) - .append("comment", getComment()) - .append("status", getStatus()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("swPresDetailList", getSwPresDetailList()) - .toString(); - } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java index 9820928..aeecc86 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java index 450c220..5a3ebbc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java @@ -3,8 +3,6 @@ package com.zhyc.module.biosafety.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java index e4217fc..ae2d1a0 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java @@ -1,6 +1,5 @@ package com.zhyc.module.biosafety.domain; -import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -8,8 +7,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java index ed72447..558ccc4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java @@ -3,7 +3,6 @@ package com.zhyc.module.biosafety.service; import java.util.List; import com.zhyc.module.biosafety.domain.Treatment; -import org.springframework.transaction.annotation.Transactional; /** * 治疗记录Service接口 diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java index c6f850c..8972fb3 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java @@ -10,7 +10,6 @@ import com.zhyc.module.base.mapper.SheepFileMapper; import com.zhyc.module.biosafety.domain.Deworm; import com.zhyc.module.biosafety.domain.SwMedicineUsage; import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; -import com.zhyc.module.biosafety.domain.Treatment; import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -73,7 +72,7 @@ public class DewormServiceImpl implements IDewormService @Transactional public int insertDeworm(Deworm deworm) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); // 使用记录的文件 SwMedicineUsage medicineUsage = new SwMedicineUsage(); medicineUsage.setSwMedicineUsageDetailsList(deworm.getUsageDetails()); @@ -116,7 +115,7 @@ public class DewormServiceImpl implements IDewormService @Transactional public int updateDeworm(Deworm deworm) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); for (SwMedicineUsageDetails usageDetail : deworm.getUsageDetails()) { usageDetail.setMediUsage(deworm.getUsageId()); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java index c17e8ec..c37895a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java @@ -72,7 +72,7 @@ public class DiagnosisServiceImpl implements IDiagnosisService diagnosis.setGender(String.valueOf(sheepFile.getGender())); diagnosis.setMonthAge(sheepFile.getMonthAge()); - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); diagnosis.setCreateBy(username); diagnosis.setCreateTime(DateUtils.getNowDate()); if (!Objects.equals(sheepFile.getSheepfoldId(), diagnosis.getSheepfoldId())){ @@ -98,7 +98,7 @@ public class DiagnosisServiceImpl implements IDiagnosisService BasSheep basSheep = new BasSheep(); basSheep.setId(diagnosis.getSheepId()); basSheep.setSheepfoldId(diagnosis.getSheepfoldId()); - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); basSheep.setUpdateBy(username); basSheep.setUpdateTime(DateUtils.getNowDate()); diagnosis.setUpdateBy(username); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java index 24918ef..9b5286b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java @@ -5,9 +5,7 @@ import java.util.List; import com.zhyc.common.utils.DateUtils; import com.zhyc.common.utils.SecurityUtils; import com.zhyc.common.utils.bean.BeanUtils; -import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.mapper.SheepFileMapper; -import com.zhyc.module.biosafety.domain.Deworm; import com.zhyc.module.biosafety.domain.SwMedicineUsage; import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; @@ -75,7 +73,7 @@ public class DisinfectServiceImpl implements IDisinfectService @Override public int insertDisinfect(Disinfect disinfect) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); // 使用记录的文件 SwMedicineUsage medicineUsage = new SwMedicineUsage(); medicineUsage.setSwMedicineUsageDetailsList(disinfect.getUsageDetails()); @@ -116,7 +114,7 @@ public class DisinfectServiceImpl implements IDisinfectService } medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(disinfect.getUsageId()); medicineUsageMapper.batchSwMedicineUsageDetails(disinfect.getUsageDetails()); - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); disinfect.setUpdateBy(username); disinfect.setUpdateTime(DateUtils.getNowDate()); return disinfectMapper.updateDisinfect(disinfect); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java index bef0199..9c7cc72 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java @@ -7,7 +7,6 @@ import com.zhyc.common.utils.SecurityUtils; import com.zhyc.common.utils.bean.BeanUtils; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.mapper.SheepFileMapper; -import com.zhyc.module.biosafety.domain.Health; import com.zhyc.module.biosafety.domain.SwMedicineUsage; import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; @@ -74,7 +73,7 @@ public class HealthServiceImpl implements IHealthService @Override public int insertHealth(Health health) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); // 使用记录的文件 SwMedicineUsage medicineUsage = new SwMedicineUsage(); @@ -120,7 +119,7 @@ public class HealthServiceImpl implements IHealthService } medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(health.getUsageId()); medicineUsageMapper.batchSwMedicineUsageDetails(health.getUsageDetails()); - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); health.setUpdateBy(username); health.setUpdateTime(DateUtils.getNowDate()); return healthMapper.updateHealth(health); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java index 6556faf..613de0a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java @@ -7,7 +7,6 @@ import com.zhyc.common.utils.SecurityUtils; import com.zhyc.common.utils.bean.BeanUtils; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.mapper.SheepFileMapper; -import com.zhyc.module.biosafety.domain.Deworm; import com.zhyc.module.biosafety.domain.SwMedicineUsage; import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; @@ -76,7 +75,7 @@ public class ImmunityServiceImpl implements IImmunityService @Override public int insertImmunity(Immunity immunity) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); // 使用记录的文件 SwMedicineUsage medicineUsage = new SwMedicineUsage(); @@ -129,6 +128,8 @@ public class ImmunityServiceImpl implements IImmunityService } medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(immunity.getUsageId()); medicineUsageMapper.batchSwMedicineUsageDetails(immunity.getUsageDetails()); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); + immunity.setUpdateBy(username); immunity.setUpdateTime(DateUtils.getNowDate()); return immunityMapper.updateImmunity(immunity); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java index 4c55e78..8fde76f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import com.zhyc.common.utils.DateUtils; import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.common.utils.StringUtils; import com.zhyc.common.utils.bean.BeanUtils; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.service.impl.SheepFileServiceImpl; @@ -61,7 +60,7 @@ public class QuarantineReportServiceImpl implements IQuarantineReportService @Override public int insertQuarantineReport(QuarantineReport quarantineReport) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); quarantineReport.setCreateBy(username); quarantineReport.setCreateTime(DateUtils.getNowDate()); if (quarantineReport.getResult()==null){ @@ -97,7 +96,7 @@ public class QuarantineReportServiceImpl implements IQuarantineReportService @Override public int updateQuarantineReport(QuarantineReport quarantineReport) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); quarantineReport.setUpdateBy(username); quarantineReport.setUpdateTime(DateUtils.getNowDate()); return quarantineReportMapper.updateQuarantineReport(quarantineReport); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java index d5d06f9..31d13a6 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java @@ -59,7 +59,7 @@ public class SwMedicineUsageServiceImpl implements ISwMedicineUsageService @Override public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); swMedicineUsage.setCreateBy(username); swMedicineUsage.setCreateTime(DateUtils.getNowDate()); int rows = swMedicineUsageMapper.insertSwMedicineUsage(swMedicineUsage); @@ -77,7 +77,7 @@ public class SwMedicineUsageServiceImpl implements ISwMedicineUsageService @Override public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); swMedicineUsage.setUpdateBy(username); swMedicineUsage.setUpdateTime(DateUtils.getNowDate()); swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(swMedicineUsage.getId()); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java index 59841b8..1a3c909 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java @@ -59,7 +59,8 @@ public class SwPrescriptionServiceImpl implements ISwPrescriptionService @Override public int insertSwPrescription(SwPrescription swPrescription) { - String username = SecurityUtils.getUsername(); +// 获取创建人的用户名称 + String username = SecurityUtils.getLoginUser().getUser().getNickName(); swPrescription.setCreateBy(username); swPrescription.setCreateTime(DateUtils.getNowDate()); int rows = swPrescriptionMapper.insertSwPrescription(swPrescription); @@ -77,7 +78,7 @@ public class SwPrescriptionServiceImpl implements ISwPrescriptionService @Override public int updateSwPrescription(SwPrescription swPrescription) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); swPrescription.setUpdateBy(username); swPrescription.setUpdateTime(DateUtils.getNowDate()); swPrescriptionMapper.deleteSwPresDetailByPersId(swPrescription.getId()); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java index 7ecd944..1cc3711 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java @@ -7,7 +7,6 @@ import com.zhyc.common.utils.SecurityUtils; import com.zhyc.common.utils.bean.BeanUtils; import com.zhyc.module.base.domain.SheepFile; import com.zhyc.module.base.mapper.SheepFileMapper; -import com.zhyc.module.base.service.impl.SheepFileServiceImpl; import com.zhyc.module.biosafety.domain.SwMedicineUsage; import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; @@ -74,7 +73,7 @@ public class TreatmentServiceImpl implements ITreatmentService @Transactional public int insertTreatment(Treatment treatment) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); // 使用记录的文件 SwMedicineUsage medicineUsage = new SwMedicineUsage(); medicineUsage.setSwMedicineUsageDetailsList(treatment.getUsageDetails()); @@ -135,7 +134,7 @@ public class TreatmentServiceImpl implements ITreatmentService @Transactional public int updateTreatment(Treatment treatment) { - String username = SecurityUtils.getUsername(); + String username = SecurityUtils.getLoginUser().getUser().getNickName(); for (SwMedicineUsageDetails usageDetail : treatment.getUsageDetails()) { usageDetail.setMediUsage(treatment.getUsageId()); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserController.java b/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserController.java new file mode 100644 index 0000000..988f4a5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserController.java @@ -0,0 +1,27 @@ +package com.zhyc.module.common.controller; + +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.module.common.domain.UserPost; + +import com.zhyc.module.common.service.UserPostService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +//人员用户 +@RestController +@RequestMapping("/user") +public class UserController { + @Autowired + UserPostService userPostService; + + @GetMapping() + public AjaxResult getUserPost(String postCode){ + List list = userPostService.getUserPostListByCode(postCode); + return AjaxResult.success(list); + } + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/domain/UserPost.java b/zhyc-module/src/main/java/com/zhyc/module/common/domain/UserPost.java new file mode 100644 index 0000000..9160779 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/common/domain/UserPost.java @@ -0,0 +1,14 @@ +package com.zhyc.module.common.domain; + +import lombok.Data; + +@Data +public class UserPost { +// 用户名 + private String nickName; +// 用户 + private String postName; +// 岗位编码 + private String postCode; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/mapper/UserPostMapper.java b/zhyc-module/src/main/java/com/zhyc/module/common/mapper/UserPostMapper.java new file mode 100644 index 0000000..69c9b9d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/common/mapper/UserPostMapper.java @@ -0,0 +1,12 @@ +package com.zhyc.module.common.mapper; + +import com.zhyc.module.common.domain.UserPost; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface UserPostMapper { + + List getUserPostListByCode(String postCode); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/service/UserPostService.java b/zhyc-module/src/main/java/com/zhyc/module/common/service/UserPostService.java new file mode 100644 index 0000000..0f0204c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/common/service/UserPostService.java @@ -0,0 +1,9 @@ +package com.zhyc.module.common.service; + +import com.zhyc.module.common.domain.UserPost; + +import java.util.List; + +public interface UserPostService { + List getUserPostListByCode(String postCode); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/service/impl/UserPostServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/common/service/impl/UserPostServiceImpl.java new file mode 100644 index 0000000..31dc447 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/common/service/impl/UserPostServiceImpl.java @@ -0,0 +1,19 @@ +package com.zhyc.module.common.service.impl; + +import com.zhyc.module.common.domain.UserPost; +import com.zhyc.module.common.mapper.UserPostMapper; +import com.zhyc.module.common.service.UserPostService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class UserPostServiceImpl implements UserPostService { + @Autowired + UserPostMapper userPostMapper; + @Override + public List getUserPostListByCode(String postCode) { + return userPostMapper.getUserPostListByCode(postCode); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java index 44cbccb..1d7f8e5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java @@ -4,7 +4,6 @@ import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; import com.zhyc.module.dairyProducts.service.INpMilkInOutStoreService; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.common.core.page.TableDataInfo; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java index 9447a07..f0cc313 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java @@ -2,13 +2,10 @@ package com.zhyc.module.dairyProducts.controller; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.module.dairyProducts.domain.Ranch; import com.zhyc.module.dairyProducts.service.IRanchService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.List; - @RestController @RequestMapping("/dairyProducts/ranch") public class RanchController extends BaseController { diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java index ee52381..b0563fe 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java @@ -19,7 +19,6 @@ import com.zhyc.common.enums.BusinessType; import com.zhyc.module.dairyProducts.domain.XzParityCorrection; import com.zhyc.module.dairyProducts.service.IXzParityCorrectionService; import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; /** * 胎次校正Controller diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java index 64e71f6..d8631f1 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java index 0c71d35..23131dc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java @@ -347,8 +347,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java index e284508..c7ddfc8 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java index a211abb..ca33e13 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java index d1a93e6..d877065 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java @@ -3,8 +3,6 @@ package com.zhyc.module.dairyProducts.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java index 6bba703..3453e3f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java index 992573a..5bd59d5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java @@ -1,6 +1,5 @@ package com.zhyc.module.dairyProducts.service; -import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; import org.springframework.web.multipart.MultipartFile; import java.util.Date; diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java deleted file mode 100644 index 9ef4f87..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java +++ /dev/null @@ -1,104 +0,0 @@ -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; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.feed.domain.SgFeedDetails; -import com.zhyc.module.feed.service.ISgFeedDetailsService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 饲喂记录详情Controller - * - * @author ruoyi - * @date 2025-08-01 - */ -@RestController -@RequestMapping("/feed/details") -public class SgFeedDetailsController extends BaseController -{ - @Autowired - private ISgFeedDetailsService sgFeedDetailsService; - - /** - * 查询饲喂记录详情列表 - */ - @PreAuthorize("@ss.hasPermi('feed:details:list')") - @GetMapping("/list") - public TableDataInfo list(SgFeedDetails sgFeedDetails) - { - startPage(); - List list = sgFeedDetailsService.selectSgFeedDetailsList(sgFeedDetails); - return getDataTable(list); - } - - /** - * 导出饲喂记录详情列表 - */ - @PreAuthorize("@ss.hasPermi('feed:details:export')") - @Log(title = "饲喂记录详情", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SgFeedDetails sgFeedDetails) - { - List list = sgFeedDetailsService.selectSgFeedDetailsList(sgFeedDetails); - ExcelUtil util = new ExcelUtil(SgFeedDetails.class); - util.exportExcel(response, list, "饲喂记录详情数据"); - } - - /** - * 获取饲喂记录详情详细信息 - */ - @PreAuthorize("@ss.hasPermi('feed:details:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(sgFeedDetailsService.selectSgFeedDetailsById(id)); - } - - /** - * 新增饲喂记录详情 - */ - @PreAuthorize("@ss.hasPermi('feed:details:add')") - @Log(title = "饲喂记录详情", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SgFeedDetails sgFeedDetails) - { - return toAjax(sgFeedDetailsService.insertSgFeedDetails(sgFeedDetails)); - } - - /** - * 修改饲喂记录详情 - */ - @PreAuthorize("@ss.hasPermi('feed:details:edit')") - @Log(title = "饲喂记录详情", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SgFeedDetails sgFeedDetails) - { - return toAjax(sgFeedDetailsService.updateSgFeedDetails(sgFeedDetails)); - } - - /** - * 删除饲喂记录详情 - */ - @PreAuthorize("@ss.hasPermi('feed:details:remove')") - @Log(title = "饲喂记录详情", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(sgFeedDetailsService.deleteSgFeedDetailsByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java deleted file mode 100644 index 8673f0c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java +++ /dev/null @@ -1,104 +0,0 @@ -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; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.feed.domain.SgFeedInfo; -import com.zhyc.module.feed.service.ISgFeedInfoService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 饲喂记录Controller - * - * @author ruoyi - * @date 2025-08-01 - */ -@RestController -@RequestMapping("/feed/info") -public class SgFeedInfoController extends BaseController -{ - @Autowired - private ISgFeedInfoService sgFeedInfoService; - - /** - * 查询饲喂记录列表 - */ - @PreAuthorize("@ss.hasPermi('feed:info:list')") - @GetMapping("/list") - public TableDataInfo list(SgFeedInfo sgFeedInfo) - { - startPage(); - List list = sgFeedInfoService.selectSgFeedInfoList(sgFeedInfo); - return getDataTable(list); - } - - /** - * 导出饲喂记录列表 - */ - @PreAuthorize("@ss.hasPermi('feed:info:export')") - @Log(title = "饲喂记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SgFeedInfo sgFeedInfo) - { - List list = sgFeedInfoService.selectSgFeedInfoList(sgFeedInfo); - ExcelUtil util = new ExcelUtil(SgFeedInfo.class); - util.exportExcel(response, list, "饲喂记录数据"); - } - - /** - * 获取饲喂记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('feed:info:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(sgFeedInfoService.selectSgFeedInfoById(id)); - } - - /** - * 新增饲喂记录 - */ - @PreAuthorize("@ss.hasPermi('feed:info:add')") - @Log(title = "饲喂记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SgFeedInfo sgFeedInfo) - { - return toAjax(sgFeedInfoService.insertSgFeedInfo(sgFeedInfo)); - } - - /** - * 修改饲喂记录 - */ - @PreAuthorize("@ss.hasPermi('feed:info:edit')") - @Log(title = "饲喂记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SgFeedInfo sgFeedInfo) - { - return toAjax(sgFeedInfoService.updateSgFeedInfo(sgFeedInfo)); - } - - /** - * 删除饲喂记录 - */ - @PreAuthorize("@ss.hasPermi('feed:info:remove')") - @Log(title = "饲喂记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(sgFeedInfoService.deleteSgFeedInfoByIds(ids)); - } -} 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 ad2a6a2..4661361 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 @@ -3,6 +3,8 @@ package com.zhyc.module.feed.controller; import java.util.Date; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.feed.domain.SgFeedPlan; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -16,21 +18,19 @@ import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.feed.domain.SgFeedPlan; import com.zhyc.module.feed.service.ISgFeedPlanService; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.common.core.page.TableDataInfo; /** * 饲喂计划Controller - * + * * @author HashMap - * @date 2025-08-08 + * @date 2025-08-14 */ @RestController @RequestMapping("/feed/FeedPlan") -public class SgFeedPlanController extends BaseController -{ +public class SgFeedPlanController extends BaseController { private final ISgFeedPlanService sgFeedPlanService; public SgFeedPlanController(ISgFeedPlanService sgFeedPlanService) { @@ -42,8 +42,7 @@ public class SgFeedPlanController extends BaseController */ @PreAuthorize("@ss.hasPermi('feed:FeedPlan:list')") @GetMapping("/list") - public TableDataInfo list(SgFeedPlan sgFeedPlan) - { + public TableDataInfo list(SgFeedPlan sgFeedPlan) { startPage(); List list = sgFeedPlanService.selectSgFeedPlanList(sgFeedPlan); return getDataTable(list); @@ -55,8 +54,7 @@ public class SgFeedPlanController extends BaseController @PreAuthorize("@ss.hasPermi('feed:FeedPlan:export')") @Log(title = "饲喂计划", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, SgFeedPlan sgFeedPlan) - { + public void export(HttpServletResponse response, SgFeedPlan sgFeedPlan) { List list = sgFeedPlanService.selectSgFeedPlanList(sgFeedPlan); ExcelUtil util = new ExcelUtil<>(SgFeedPlan.class); util.exportExcel(response, list, "饲喂计划数据"); @@ -67,8 +65,7 @@ public class SgFeedPlanController extends BaseController */ @PreAuthorize("@ss.hasPermi('feed:FeedPlan:query')") @GetMapping(value = "/{createDate}") - public AjaxResult getInfo(@PathVariable("createDate") Date createDate) - { + public AjaxResult getInfo(@PathVariable("createDate") Date createDate) { return success(sgFeedPlanService.selectSgFeedPlanByCreateDate(createDate)); } @@ -78,8 +75,13 @@ public class SgFeedPlanController extends BaseController @PreAuthorize("@ss.hasPermi('feed:FeedPlan:add')") @Log(title = "饲喂计划", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody SgFeedPlan sgFeedPlan) - { + public AjaxResult add(@RequestBody SgFeedPlan sgFeedPlan) { + if (null == sgFeedPlan) { + throw new RuntimeException("数据为空"); + } + sgFeedPlan.setCreateDate(new Date()); + // 计算其他字段值 + setPlan(sgFeedPlan); return toAjax(sgFeedPlanService.insertSgFeedPlan(sgFeedPlan)); } @@ -89,8 +91,9 @@ public class SgFeedPlanController extends BaseController @PreAuthorize("@ss.hasPermi('feed:FeedPlan:edit')") @Log(title = "饲喂计划", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@RequestBody SgFeedPlan sgFeedPlan) - { + public AjaxResult edit(@RequestBody SgFeedPlan sgFeedPlan) { + // 根据修改后的值重新计算 + setPlan(sgFeedPlan); return toAjax(sgFeedPlanService.updateSgFeedPlan(sgFeedPlan)); } @@ -99,9 +102,25 @@ public class SgFeedPlanController extends BaseController */ @PreAuthorize("@ss.hasPermi('feed:FeedPlan:remove')") @Log(title = "饲喂计划", businessType = BusinessType.DELETE) - @DeleteMapping("/{createDates}") - public AjaxResult remove(@PathVariable Date[] createDates) - { + @DeleteMapping("/{createDates}") + public AjaxResult remove(@PathVariable Date[] createDates) { return toAjax(sgFeedPlanService.deleteSgFeedPlanByCreateDates(createDates)); } + + /** + * 设定计划值 + * 用于添加和修改 + */ + private SgFeedPlan setPlan(SgFeedPlan sgFeedPlan) { + // 根据羊舍ID获取羊只数量 + int countByFoldId = sgFeedPlanService.getSheepCountByFoldId(sgFeedPlan.getSheepHouseId()); + sgFeedPlan.setSheepCount(countByFoldId); + // 计算总计划量 + sgFeedPlan.setPlanFeedTotal(countByFoldId * sgFeedPlan.getPlanDailySize()); + // 计算早中晚计划量 + sgFeedPlan.setPlanMorningSize(sgFeedPlan.getPlanFeedTotal() * (sgFeedPlan.getRatioMorning() / 100)); + sgFeedPlan.setPlanNoonSize(sgFeedPlan.getPlanFeedTotal() * (sgFeedPlan.getRatioNoon() / 100)); + sgFeedPlan.setPlanAfternoonSize(sgFeedPlan.getPlanFeedTotal() * (sgFeedPlan.getRatioAfternoon() / 100)); + return sgFeedPlan; + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java deleted file mode 100644 index 81ddd36..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java +++ /dev/null @@ -1,104 +0,0 @@ -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; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.feed.domain.SgFeedRatio; -import com.zhyc.module.feed.service.ISgFeedRatioService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 饲喂比例Controller - * - * @author ruoyi - * @date 2025-08-01 - */ -@RestController -@RequestMapping("/feed/ratio") -public class SgFeedRatioController extends BaseController -{ - @Autowired - private ISgFeedRatioService sgFeedRatioService; - - /** - * 查询饲喂比例列表 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:list')") - @GetMapping("/list") - public TableDataInfo list(SgFeedRatio sgFeedRatio) - { - startPage(); - List list = sgFeedRatioService.selectSgFeedRatioList(sgFeedRatio); - return getDataTable(list); - } - - /** - * 导出饲喂比例列表 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:export')") - @Log(title = "饲喂比例", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SgFeedRatio sgFeedRatio) - { - List list = sgFeedRatioService.selectSgFeedRatioList(sgFeedRatio); - ExcelUtil util = new ExcelUtil(SgFeedRatio.class); - util.exportExcel(response, list, "饲喂比例数据"); - } - - /** - * 获取饲喂比例详细信息 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(sgFeedRatioService.selectSgFeedRatioById(id)); - } - - /** - * 新增饲喂比例 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:add')") - @Log(title = "饲喂比例", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SgFeedRatio sgFeedRatio) - { - return toAjax(sgFeedRatioService.insertSgFeedRatio(sgFeedRatio)); - } - - /** - * 修改饲喂比例 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:edit')") - @Log(title = "饲喂比例", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SgFeedRatio sgFeedRatio) - { - return toAjax(sgFeedRatioService.updateSgFeedRatio(sgFeedRatio)); - } - - /** - * 删除饲喂比例 - */ - @PreAuthorize("@ss.hasPermi('feed:ratio:remove')") - @Log(title = "饲喂比例", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(sgFeedRatioService.deleteSgFeedRatioByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java deleted file mode 100644 index 94b2161..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java +++ /dev/null @@ -1,104 +0,0 @@ -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; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.enums.BusinessType; -import com.zhyc.module.feed.domain.SgFodder; -import com.zhyc.module.feed.service.ISgFodderService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 原料Controller - * - * @author ruoyi - * @date 2025-08-01 - */ -@RestController -@RequestMapping("/feed/fodder") -public class SgFodderController extends BaseController -{ - @Autowired - private ISgFodderService sgFodderService; - - /** - * 查询原料列表 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:list')") - @GetMapping("/list") - public TableDataInfo list(SgFodder sgFodder) - { - startPage(); - List list = sgFodderService.selectSgFodderList(sgFodder); - return getDataTable(list); - } - - /** - * 导出原料列表 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:export')") - @Log(title = "原料", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SgFodder sgFodder) - { - List list = sgFodderService.selectSgFodderList(sgFodder); - ExcelUtil util = new ExcelUtil(SgFodder.class); - util.exportExcel(response, list, "原料数据"); - } - - /** - * 获取原料详细信息 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(sgFodderService.selectSgFodderById(id)); - } - - /** - * 新增原料 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:add')") - @Log(title = "原料", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SgFodder sgFodder) - { - return toAjax(sgFodderService.insertSgFodder(sgFodder)); - } - - /** - * 修改原料 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:edit')") - @Log(title = "原料", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SgFodder sgFodder) - { - return toAjax(sgFodderService.updateSgFodder(sgFodder)); - } - - /** - * 删除原料 - */ - @PreAuthorize("@ss.hasPermi('feed:fodder:remove')") - @Log(title = "原料", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(sgFodderService.deleteSgFodderByIds(ids)); - } -} 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 8f4c789..b3e5ab0 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 @@ -3,7 +3,6 @@ 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; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java deleted file mode 100644 index a1404e2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.zhyc.module.feed.domain; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -/** - * 饲喂记录详情对象 sg_feed_details - * - * @author ruoyi - * @date 2025-08-01 - */ -public class SgFeedDetails extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 原料id */ - @Excel(name = "原料id") - private String fodder; - - /** 数量 */ - @Excel(name = "数量") - private Long number; - - /** 单位 */ - @Excel(name = "单位") - private String nuit; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setFodder(String fodder) - { - this.fodder = fodder; - } - - public String getFodder() - { - return fodder; - } - - public void setNumber(Long number) - { - this.number = number; - } - - public Long getNumber() - { - return number; - } - - public void setNuit(String nuit) - { - this.nuit = nuit; - } - - public String getNuit() - { - return nuit; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("fodder", getFodder()) - .append("number", getNumber()) - .append("nuit", getNuit()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java deleted file mode 100644 index 37ed315..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java +++ /dev/null @@ -1,252 +0,0 @@ -package com.zhyc.module.feed.domain; - -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -/** - * 饲喂记录对象 sg_feed_info - * - * @author ruoyi - * @date 2025-08-01 - */ -public class SgFeedInfo extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 配方编码 */ - @Excel(name = "配方编码") - private Long formulaId; - - /** 羊舍 */ - @Excel(name = "羊舍") - private String sheepfoldId; - - /** 日均计划量 */ - @Excel(name = "日均计划量") - private Long average; - - /** 早上计划量(通过饲喂比例算出来) */ - @Excel(name = "早上计划量(通过饲喂比例算出来)") - private Long planMonring; - - /** 实际添加(早) */ - @Excel(name = "实际添加", readConverterExp = "早=") - private Long actualMonring; - - /** 中午计划量 */ - @Excel(name = "中午计划量") - private Long planNoon; - - /** 实际添加(中) */ - @Excel(name = "实际添加", readConverterExp = "中=") - private Long actualNoon; - - /** 下午计划量 */ - @Excel(name = "下午计划量") - private Long planEvenig; - - /** 实际添加(下) */ - @Excel(name = "实际添加", readConverterExp = "下=") - private Long actualEvening; - - /** 颗粒原料 */ - @Excel(name = "颗粒原料") - private Long particle; - - /** 其他原料 */ - @Excel(name = "其他原料") - private Long other; - - /** 补饲饲料 */ - @Excel(name = "补饲饲料") - private Long replenish; - - /** 饲喂日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "饲喂日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date planDate; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setFormulaId(Long formulaId) - { - this.formulaId = formulaId; - } - - public Long getFormulaId() - { - return formulaId; - } - - public void setSheepfoldId(String sheepfoldId) - { - this.sheepfoldId = sheepfoldId; - } - - public String getSheepfoldId() - { - return sheepfoldId; - } - - public void setAverage(Long average) - { - this.average = average; - } - - public Long getAverage() - { - return average; - } - - public void setPlanMonring(Long planMonring) - { - this.planMonring = planMonring; - } - - public Long getPlanMonring() - { - return planMonring; - } - - public void setActualMonring(Long actualMonring) - { - this.actualMonring = actualMonring; - } - - public Long getActualMonring() - { - return actualMonring; - } - - public void setPlanNoon(Long planNoon) - { - this.planNoon = planNoon; - } - - public Long getPlanNoon() - { - return planNoon; - } - - public void setActualNoon(Long actualNoon) - { - this.actualNoon = actualNoon; - } - - public Long getActualNoon() - { - return actualNoon; - } - - public void setPlanEvenig(Long planEvenig) - { - this.planEvenig = planEvenig; - } - - public Long getPlanEvenig() - { - return planEvenig; - } - - public void setActualEvening(Long actualEvening) - { - this.actualEvening = actualEvening; - } - - public Long getActualEvening() - { - return actualEvening; - } - - public void setParticle(Long particle) - { - this.particle = particle; - } - - public Long getParticle() - { - return particle; - } - - public void setOther(Long other) - { - this.other = other; - } - - public Long getOther() - { - return other; - } - - public void setReplenish(Long replenish) - { - this.replenish = replenish; - } - - public Long getReplenish() - { - return replenish; - } - - public void setPlanDate(Date planDate) - { - this.planDate = planDate; - } - - public Date getPlanDate() - { - return planDate; - } - - public void setComment(String comment) - { - this.comment = comment; - } - - public String getComment() - { - return comment; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("formulaId", getFormulaId()) - .append("sheepfoldId", getSheepfoldId()) - .append("average", getAverage()) - .append("planMonring", getPlanMonring()) - .append("actualMonring", getActualMonring()) - .append("planNoon", getPlanNoon()) - .append("actualNoon", getActualNoon()) - .append("planEvenig", getPlanEvenig()) - .append("actualEvening", getActualEvening()) - .append("particle", getParticle()) - .append("other", getOther()) - .append("replenish", getReplenish()) - .append("planDate", getPlanDate()) - .append("comment", getComment()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .toString(); - } -} 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 596eac2..7d537c0 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 @@ -13,86 +13,88 @@ import com.zhyc.common.core.domain.BaseEntity; * 饲喂计划对象 sg_feed_plan * * @author HashMap - * @date 2025-08-08 + * @date 2025-08-14 */ -@Setter @Getter +@Setter public class SgFeedPlan extends BaseEntity { private static final long serialVersionUID = 1L; /** 创建日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") private Date createDate; /** 配方编码 */ @Excel(name = "配方编码") private String formulaId; + /** 批号 */ + @Excel(name = "批号") + private String batchId; + /** 羊舍 */ @Excel(name = "羊舍") - private Long sheepHouseId; + private Integer sheepHouseId; /** 羊只数量 */ @Excel(name = "羊只数量") - private Long sheepCount; + private Integer sheepCount; /** 日均计划量 */ @Excel(name = "日均计划量") - private Long planDailySize; - - /** 计划量(早) */ - @Excel(name = "计划量(早)") - private Long planMorningSize; - - /** 计划总量(早) */ - @Excel(name = "计划总量(早)") - private Long planMorningTotal; + private Double planDailySize; /** 饲喂比例(早) */ @Excel(name = "饲喂比例(早)") - private Long ratioMorning; - - /** 实际量(早) */ - @Excel(name = "实际量(早)") - private Long actualMorningSize; - - /** 计划量(中) */ - @Excel(name = "计划量(中)") - private Long planNoonSize; - - /** 计划总量(中) */ - @Excel(name = "计划总量(中)") - private Long planNoonTotal; - - /** 实际量(中) */ - @Excel(name = "实际量(中)") - private Long actualNoonSize; + private Double ratioMorning; /** 饲喂比例(中) */ @Excel(name = "饲喂比例(中)") - private Long ratioNoon; - - /** 计划量(下) */ - @Excel(name = "计划量(下)") - private Long planAfternoonSize; - - /** 计划总量(下) */ - @Excel(name = "计划总量(下)") - private Long planAfternoonTotal; - - /** 实际量(下) */ - @Excel(name = "实际量(下)") - private Long actualAfternoonSize; + private Double ratioNoon; /** 饲喂比例(下) */ @Excel(name = "饲喂比例(下)") - private Long ratioAfternoon; + 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 Long planFeedTotal; + private Double planFeedTotal; /** 饲草班人员 */ @Excel(name = "饲草班人员") @@ -108,21 +110,22 @@ public class SgFeedPlan extends BaseEntity 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("ratioMorning", getRatioMorning()) .append("actualMorningSize", getActualMorningSize()) .append("planNoonSize", getPlanNoonSize()) .append("planNoonTotal", getPlanNoonTotal()) .append("actualNoonSize", getActualNoonSize()) - .append("ratioNoon", getRatioNoon()) .append("planAfternoonSize", getPlanAfternoonSize()) .append("planAfternoonTotal", getPlanAfternoonTotal()) .append("actualAfternoonSize", getActualAfternoonSize()) - .append("ratioAfternoon", getRatioAfternoon()) .append("planFeedTotal", getPlanFeedTotal()) .append("zookeeper", getZookeeper()) .append("planDate", getPlanDate()) diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java deleted file mode 100644 index 5e3834e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.zhyc.module.feed.domain; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -/** - * 饲喂比例对象 sg_feed_ratio - * - * @author ruoyi - * @date 2025-08-01 - */ -public class SgFeedRatio extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 早晨计划比列 */ - @Excel(name = "早晨计划比列") - private String morning; - - /** 中午计划比例 */ - @Excel(name = "中午计划比例") - private String noon; - - /** 下午计划比例 */ - @Excel(name = "下午计划比例") - private String evening; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setMorning(String morning) - { - this.morning = morning; - } - - public String getMorning() - { - return morning; - } - - public void setNoon(String noon) - { - this.noon = noon; - } - - public String getNoon() - { - return noon; - } - - public void setEvening(String evening) - { - this.evening = evening; - } - - public String getEvening() - { - return evening; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("morning", getMorning()) - .append("noon", getNoon()) - .append("evening", getEvening()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java deleted file mode 100644 index 3b00b2d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.feed.domain; - -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -/** - * 原料对象 sg_fodder - * - * @author ruoyi - * @date 2025-08-01 - */ -public class SgFodder extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 名称 */ - @Excel(name = "名称") - private String name; - - /** 0补饲饲料1配方原料2颗粒原料 */ - @Excel(name = "0补饲饲料1配方原料2颗粒原料") - private Long fodderType; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setName(String name) - { - this.name = name; - } - - public String getName() - { - return name; - } - - public void setFodderType(Long fodderType) - { - this.fodderType = fodderType; - } - - public Long getFodderType() - { - return fodderType; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("name", getName()) - .append("fodderType", getFodderType()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java deleted file mode 100644 index 2817118..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.mapper; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedDetails; - -/** - * 饲喂记录详情Mapper接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface SgFeedDetailsMapper -{ - /** - * 查询饲喂记录详情 - * - * @param id 饲喂记录详情主键 - * @return 饲喂记录详情 - */ - public SgFeedDetails selectSgFeedDetailsById(Long id); - - /** - * 查询饲喂记录详情列表 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 饲喂记录详情集合 - */ - public List selectSgFeedDetailsList(SgFeedDetails sgFeedDetails); - - /** - * 新增饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - public int insertSgFeedDetails(SgFeedDetails sgFeedDetails); - - /** - * 修改饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - public int updateSgFeedDetails(SgFeedDetails sgFeedDetails); - - /** - * 删除饲喂记录详情 - * - * @param id 饲喂记录详情主键 - * @return 结果 - */ - public int deleteSgFeedDetailsById(Long id); - - /** - * 批量删除饲喂记录详情 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSgFeedDetailsByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java deleted file mode 100644 index 11ea688..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.mapper; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedInfo; - -/** - * 饲喂记录Mapper接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface SgFeedInfoMapper -{ - /** - * 查询饲喂记录 - * - * @param id 饲喂记录主键 - * @return 饲喂记录 - */ - public SgFeedInfo selectSgFeedInfoById(Long id); - - /** - * 查询饲喂记录列表 - * - * @param sgFeedInfo 饲喂记录 - * @return 饲喂记录集合 - */ - public List selectSgFeedInfoList(SgFeedInfo sgFeedInfo); - - /** - * 新增饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - public int insertSgFeedInfo(SgFeedInfo sgFeedInfo); - - /** - * 修改饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - public int updateSgFeedInfo(SgFeedInfo sgFeedInfo); - - /** - * 删除饲喂记录 - * - * @param id 饲喂记录主键 - * @return 结果 - */ - public int deleteSgFeedInfoById(Long id); - - /** - * 批量删除饲喂记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSgFeedInfoByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java index 7ea4493..f475ae5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java @@ -9,7 +9,7 @@ import org.apache.ibatis.annotations.Mapper; * 饲喂计划Mapper接口 * * @author HashMap - * @date 2025-08-08 + * @date 2025-08-14 */ @Mapper public interface SgFeedPlanMapper @@ -20,7 +20,7 @@ public interface SgFeedPlanMapper * @param createDate 饲喂计划主键 * @return 饲喂计划 */ - SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); + public SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); /** * 查询饲喂计划列表 @@ -28,7 +28,7 @@ public interface SgFeedPlanMapper * @param sgFeedPlan 饲喂计划 * @return 饲喂计划集合 */ - List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); + public List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); /** * 新增饲喂计划 @@ -36,7 +36,7 @@ public interface SgFeedPlanMapper * @param sgFeedPlan 饲喂计划 * @return 结果 */ - int insertSgFeedPlan(SgFeedPlan sgFeedPlan); + public int insertSgFeedPlan(SgFeedPlan sgFeedPlan); /** * 修改饲喂计划 @@ -44,7 +44,7 @@ public interface SgFeedPlanMapper * @param sgFeedPlan 饲喂计划 * @return 结果 */ - int updateSgFeedPlan(SgFeedPlan sgFeedPlan); + public int updateSgFeedPlan(SgFeedPlan sgFeedPlan); /** * 删除饲喂计划 @@ -52,7 +52,7 @@ public interface SgFeedPlanMapper * @param createDate 饲喂计划主键 * @return 结果 */ - int deleteSgFeedPlanByCreateDate(Date createDate); + public int deleteSgFeedPlanByCreateDate(Date createDate); /** * 批量删除饲喂计划 @@ -60,5 +60,7 @@ public interface SgFeedPlanMapper * @param createDates 需要删除的数据主键集合 * @return 结果 */ - int deleteSgFeedPlanByCreateDates(Date[] createDates); + public int deleteSgFeedPlanByCreateDates(Date[] createDates); + + int selectSheepCountByFoldId(Integer foldId); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java deleted file mode 100644 index 5dbd1ce..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.mapper; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedRatio; - -/** - * 饲喂比例Mapper接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface SgFeedRatioMapper -{ - /** - * 查询饲喂比例 - * - * @param id 饲喂比例主键 - * @return 饲喂比例 - */ - public SgFeedRatio selectSgFeedRatioById(Long id); - - /** - * 查询饲喂比例列表 - * - * @param sgFeedRatio 饲喂比例 - * @return 饲喂比例集合 - */ - public List selectSgFeedRatioList(SgFeedRatio sgFeedRatio); - - /** - * 新增饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - public int insertSgFeedRatio(SgFeedRatio sgFeedRatio); - - /** - * 修改饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - public int updateSgFeedRatio(SgFeedRatio sgFeedRatio); - - /** - * 删除饲喂比例 - * - * @param id 饲喂比例主键 - * @return 结果 - */ - public int deleteSgFeedRatioById(Long id); - - /** - * 批量删除饲喂比例 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSgFeedRatioByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java deleted file mode 100644 index c916e24..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.mapper; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFodder; - -/** - * 原料Mapper接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface SgFodderMapper -{ - /** - * 查询原料 - * - * @param id 原料主键 - * @return 原料 - */ - public SgFodder selectSgFodderById(Long id); - - /** - * 查询原料列表 - * - * @param sgFodder 原料 - * @return 原料集合 - */ - public List selectSgFodderList(SgFodder sgFodder); - - /** - * 新增原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - public int insertSgFodder(SgFodder sgFodder); - - /** - * 修改原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - public int updateSgFodder(SgFodder sgFodder); - - /** - * 删除原料 - * - * @param id 原料主键 - * @return 结果 - */ - public int deleteSgFodderById(Long id); - - /** - * 批量删除原料 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSgFodderByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java deleted file mode 100644 index ac695f8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.service; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedDetails; - -/** - * 饲喂记录详情Service接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface ISgFeedDetailsService -{ - /** - * 查询饲喂记录详情 - * - * @param id 饲喂记录详情主键 - * @return 饲喂记录详情 - */ - public SgFeedDetails selectSgFeedDetailsById(Long id); - - /** - * 查询饲喂记录详情列表 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 饲喂记录详情集合 - */ - public List selectSgFeedDetailsList(SgFeedDetails sgFeedDetails); - - /** - * 新增饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - public int insertSgFeedDetails(SgFeedDetails sgFeedDetails); - - /** - * 修改饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - public int updateSgFeedDetails(SgFeedDetails sgFeedDetails); - - /** - * 批量删除饲喂记录详情 - * - * @param ids 需要删除的饲喂记录详情主键集合 - * @return 结果 - */ - public int deleteSgFeedDetailsByIds(Long[] ids); - - /** - * 删除饲喂记录详情信息 - * - * @param id 饲喂记录详情主键 - * @return 结果 - */ - public int deleteSgFeedDetailsById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java deleted file mode 100644 index 8d412b8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.service; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedInfo; - -/** - * 饲喂记录Service接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface ISgFeedInfoService -{ - /** - * 查询饲喂记录 - * - * @param id 饲喂记录主键 - * @return 饲喂记录 - */ - public SgFeedInfo selectSgFeedInfoById(Long id); - - /** - * 查询饲喂记录列表 - * - * @param sgFeedInfo 饲喂记录 - * @return 饲喂记录集合 - */ - public List selectSgFeedInfoList(SgFeedInfo sgFeedInfo); - - /** - * 新增饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - public int insertSgFeedInfo(SgFeedInfo sgFeedInfo); - - /** - * 修改饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - public int updateSgFeedInfo(SgFeedInfo sgFeedInfo); - - /** - * 批量删除饲喂记录 - * - * @param ids 需要删除的饲喂记录主键集合 - * @return 结果 - */ - public int deleteSgFeedInfoByIds(Long[] ids); - - /** - * 删除饲喂记录信息 - * - * @param id 饲喂记录主键 - * @return 结果 - */ - public int deleteSgFeedInfoById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java index 3b172e0..6ab5cf3 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java @@ -8,7 +8,7 @@ import com.zhyc.module.feed.domain.SgFeedPlan; * 饲喂计划Service接口 * * @author HashMap - * @date 2025-08-08 + * @date 2025-08-14 */ public interface ISgFeedPlanService { @@ -18,7 +18,7 @@ public interface ISgFeedPlanService * @param createDate 饲喂计划主键 * @return 饲喂计划 */ - SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); + public SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); /** * 查询饲喂计划列表 @@ -26,7 +26,7 @@ public interface ISgFeedPlanService * @param sgFeedPlan 饲喂计划 * @return 饲喂计划集合 */ - List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); + public List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); /** * 新增饲喂计划 @@ -34,7 +34,7 @@ public interface ISgFeedPlanService * @param sgFeedPlan 饲喂计划 * @return 结果 */ - int insertSgFeedPlan(SgFeedPlan sgFeedPlan); + public int insertSgFeedPlan(SgFeedPlan sgFeedPlan); /** * 修改饲喂计划 @@ -42,7 +42,7 @@ public interface ISgFeedPlanService * @param sgFeedPlan 饲喂计划 * @return 结果 */ - int updateSgFeedPlan(SgFeedPlan sgFeedPlan); + public int updateSgFeedPlan(SgFeedPlan sgFeedPlan); /** * 批量删除饲喂计划 @@ -50,7 +50,7 @@ public interface ISgFeedPlanService * @param createDates 需要删除的饲喂计划主键集合 * @return 结果 */ - int deleteSgFeedPlanByCreateDates(Date[] createDates); + public int deleteSgFeedPlanByCreateDates(Date[] createDates); /** * 删除饲喂计划信息 @@ -58,5 +58,7 @@ public interface ISgFeedPlanService * @param createDate 饲喂计划主键 * @return 结果 */ - int deleteSgFeedPlanByCreateDate(Date createDate); + public int deleteSgFeedPlanByCreateDate(Date createDate); + + int getSheepCountByFoldId(Integer foldId); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java deleted file mode 100644 index 804130f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.service; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFeedRatio; - -/** - * 饲喂比例Service接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface ISgFeedRatioService -{ - /** - * 查询饲喂比例 - * - * @param id 饲喂比例主键 - * @return 饲喂比例 - */ - public SgFeedRatio selectSgFeedRatioById(Long id); - - /** - * 查询饲喂比例列表 - * - * @param sgFeedRatio 饲喂比例 - * @return 饲喂比例集合 - */ - public List selectSgFeedRatioList(SgFeedRatio sgFeedRatio); - - /** - * 新增饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - public int insertSgFeedRatio(SgFeedRatio sgFeedRatio); - - /** - * 修改饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - public int updateSgFeedRatio(SgFeedRatio sgFeedRatio); - - /** - * 批量删除饲喂比例 - * - * @param ids 需要删除的饲喂比例主键集合 - * @return 结果 - */ - public int deleteSgFeedRatioByIds(Long[] ids); - - /** - * 删除饲喂比例信息 - * - * @param id 饲喂比例主键 - * @return 结果 - */ - public int deleteSgFeedRatioById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java deleted file mode 100644 index 3ddac8f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.feed.service; - -import java.util.List; -import com.zhyc.module.feed.domain.SgFodder; - -/** - * 原料Service接口 - * - * @author ruoyi - * @date 2025-08-01 - */ -public interface ISgFodderService -{ - /** - * 查询原料 - * - * @param id 原料主键 - * @return 原料 - */ - public SgFodder selectSgFodderById(Long id); - - /** - * 查询原料列表 - * - * @param sgFodder 原料 - * @return 原料集合 - */ - public List selectSgFodderList(SgFodder sgFodder); - - /** - * 新增原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - public int insertSgFodder(SgFodder sgFodder); - - /** - * 修改原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - public int updateSgFodder(SgFodder sgFodder); - - /** - * 批量删除原料 - * - * @param ids 需要删除的原料主键集合 - * @return 结果 - */ - public int deleteSgFodderByIds(Long[] ids); - - /** - * 删除原料信息 - * - * @param id 原料主键 - * @return 结果 - */ - public int deleteSgFodderById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java deleted file mode 100644 index 2f58d33..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.feed.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.feed.mapper.SgFeedDetailsMapper; -import com.zhyc.module.feed.domain.SgFeedDetails; -import com.zhyc.module.feed.service.ISgFeedDetailsService; - -/** - * 饲喂记录详情Service业务层处理 - * - * @author ruoyi - * @date 2025-08-01 - */ -@Service -public class SgFeedDetailsServiceImpl implements ISgFeedDetailsService -{ - @Autowired - private SgFeedDetailsMapper sgFeedDetailsMapper; - - /** - * 查询饲喂记录详情 - * - * @param id 饲喂记录详情主键 - * @return 饲喂记录详情 - */ - @Override - public SgFeedDetails selectSgFeedDetailsById(Long id) - { - return sgFeedDetailsMapper.selectSgFeedDetailsById(id); - } - - /** - * 查询饲喂记录详情列表 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 饲喂记录详情 - */ - @Override - public List selectSgFeedDetailsList(SgFeedDetails sgFeedDetails) - { - return sgFeedDetailsMapper.selectSgFeedDetailsList(sgFeedDetails); - } - - /** - * 新增饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - @Override - public int insertSgFeedDetails(SgFeedDetails sgFeedDetails) - { - return sgFeedDetailsMapper.insertSgFeedDetails(sgFeedDetails); - } - - /** - * 修改饲喂记录详情 - * - * @param sgFeedDetails 饲喂记录详情 - * @return 结果 - */ - @Override - public int updateSgFeedDetails(SgFeedDetails sgFeedDetails) - { - return sgFeedDetailsMapper.updateSgFeedDetails(sgFeedDetails); - } - - /** - * 批量删除饲喂记录详情 - * - * @param ids 需要删除的饲喂记录详情主键 - * @return 结果 - */ - @Override - public int deleteSgFeedDetailsByIds(Long[] ids) - { - return sgFeedDetailsMapper.deleteSgFeedDetailsByIds(ids); - } - - /** - * 删除饲喂记录详情信息 - * - * @param id 饲喂记录详情主键 - * @return 结果 - */ - @Override - public int deleteSgFeedDetailsById(Long id) - { - return sgFeedDetailsMapper.deleteSgFeedDetailsById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java deleted file mode 100644 index ea2f711..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.feed.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.feed.mapper.SgFeedInfoMapper; -import com.zhyc.module.feed.domain.SgFeedInfo; -import com.zhyc.module.feed.service.ISgFeedInfoService; - -/** - * 饲喂记录Service业务层处理 - * - * @author ruoyi - * @date 2025-08-01 - */ -@Service -public class SgFeedInfoServiceImpl implements ISgFeedInfoService -{ - @Autowired - private SgFeedInfoMapper sgFeedInfoMapper; - - /** - * 查询饲喂记录 - * - * @param id 饲喂记录主键 - * @return 饲喂记录 - */ - @Override - public SgFeedInfo selectSgFeedInfoById(Long id) - { - return sgFeedInfoMapper.selectSgFeedInfoById(id); - } - - /** - * 查询饲喂记录列表 - * - * @param sgFeedInfo 饲喂记录 - * @return 饲喂记录 - */ - @Override - public List selectSgFeedInfoList(SgFeedInfo sgFeedInfo) - { - return sgFeedInfoMapper.selectSgFeedInfoList(sgFeedInfo); - } - - /** - * 新增饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - @Override - public int insertSgFeedInfo(SgFeedInfo sgFeedInfo) - { - sgFeedInfo.setCreateTime(DateUtils.getNowDate()); - return sgFeedInfoMapper.insertSgFeedInfo(sgFeedInfo); - } - - /** - * 修改饲喂记录 - * - * @param sgFeedInfo 饲喂记录 - * @return 结果 - */ - @Override - public int updateSgFeedInfo(SgFeedInfo sgFeedInfo) - { - return sgFeedInfoMapper.updateSgFeedInfo(sgFeedInfo); - } - - /** - * 批量删除饲喂记录 - * - * @param ids 需要删除的饲喂记录主键 - * @return 结果 - */ - @Override - public int deleteSgFeedInfoByIds(Long[] ids) - { - return sgFeedInfoMapper.deleteSgFeedInfoByIds(ids); - } - - /** - * 删除饲喂记录信息 - * - * @param id 饲喂记录主键 - * @return 结果 - */ - @Override - public int deleteSgFeedInfoById(Long id) - { - return sgFeedInfoMapper.deleteSgFeedInfoById(id); - } -} 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 937cd32..79bcfcc 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 @@ -13,7 +13,7 @@ import org.springframework.transaction.annotation.Transactional; * 饲喂计划Service业务层处理 * * @author HashMap - * @date 2025-08-08 + * @date 2025-08-14 */ @Service @Transactional(rollbackFor=Exception.class) @@ -96,4 +96,9 @@ public class SgFeedPlanServiceImpl implements ISgFeedPlanService { return sgFeedPlanMapper.deleteSgFeedPlanByCreateDate(createDate); } + + @Override + public int getSheepCountByFoldId(Integer foldId) { + return sgFeedPlanMapper.selectSheepCountByFoldId(foldId); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java deleted file mode 100644 index ee15ab0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.feed.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.feed.mapper.SgFeedRatioMapper; -import com.zhyc.module.feed.domain.SgFeedRatio; -import com.zhyc.module.feed.service.ISgFeedRatioService; - -/** - * 饲喂比例Service业务层处理 - * - * @author ruoyi - * @date 2025-08-01 - */ -@Service -public class SgFeedRatioServiceImpl implements ISgFeedRatioService -{ - @Autowired - private SgFeedRatioMapper sgFeedRatioMapper; - - /** - * 查询饲喂比例 - * - * @param id 饲喂比例主键 - * @return 饲喂比例 - */ - @Override - public SgFeedRatio selectSgFeedRatioById(Long id) - { - return sgFeedRatioMapper.selectSgFeedRatioById(id); - } - - /** - * 查询饲喂比例列表 - * - * @param sgFeedRatio 饲喂比例 - * @return 饲喂比例 - */ - @Override - public List selectSgFeedRatioList(SgFeedRatio sgFeedRatio) - { - return sgFeedRatioMapper.selectSgFeedRatioList(sgFeedRatio); - } - - /** - * 新增饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - @Override - public int insertSgFeedRatio(SgFeedRatio sgFeedRatio) - { - return sgFeedRatioMapper.insertSgFeedRatio(sgFeedRatio); - } - - /** - * 修改饲喂比例 - * - * @param sgFeedRatio 饲喂比例 - * @return 结果 - */ - @Override - public int updateSgFeedRatio(SgFeedRatio sgFeedRatio) - { - return sgFeedRatioMapper.updateSgFeedRatio(sgFeedRatio); - } - - /** - * 批量删除饲喂比例 - * - * @param ids 需要删除的饲喂比例主键 - * @return 结果 - */ - @Override - public int deleteSgFeedRatioByIds(Long[] ids) - { - return sgFeedRatioMapper.deleteSgFeedRatioByIds(ids); - } - - /** - * 删除饲喂比例信息 - * - * @param id 饲喂比例主键 - * @return 结果 - */ - @Override - public int deleteSgFeedRatioById(Long id) - { - return sgFeedRatioMapper.deleteSgFeedRatioById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java deleted file mode 100644 index 523fc3d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.feed.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.feed.mapper.SgFodderMapper; -import com.zhyc.module.feed.domain.SgFodder; -import com.zhyc.module.feed.service.ISgFodderService; - -/** - * 原料Service业务层处理 - * - * @author ruoyi - * @date 2025-08-01 - */ -@Service -public class SgFodderServiceImpl implements ISgFodderService -{ - @Autowired - private SgFodderMapper sgFodderMapper; - - /** - * 查询原料 - * - * @param id 原料主键 - * @return 原料 - */ - @Override - public SgFodder selectSgFodderById(Long id) - { - return sgFodderMapper.selectSgFodderById(id); - } - - /** - * 查询原料列表 - * - * @param sgFodder 原料 - * @return 原料 - */ - @Override - public List selectSgFodderList(SgFodder sgFodder) - { - return sgFodderMapper.selectSgFodderList(sgFodder); - } - - /** - * 新增原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - @Override - public int insertSgFodder(SgFodder sgFodder) - { - return sgFodderMapper.insertSgFodder(sgFodder); - } - - /** - * 修改原料 - * - * @param sgFodder 原料 - * @return 结果 - */ - @Override - public int updateSgFodder(SgFodder sgFodder) - { - return sgFodderMapper.updateSgFodder(sgFodder); - } - - /** - * 批量删除原料 - * - * @param ids 需要删除的原料主键 - * @return 结果 - */ - @Override - public int deleteSgFodderByIds(Long[] ids) - { - return sgFodderMapper.deleteSgFodderByIds(ids); - } - - /** - * 删除原料信息 - * - * @param id 原料主键 - * @return 结果 - */ - @Override - public int deleteSgFodderById(Long id) - { - return sgFodderMapper.deleteSgFodderById(id); - } -} 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 f26eb3a..320a9d3 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 @@ -1,7 +1,6 @@ package com.zhyc.module.feed.service.impl; import java.util.List; -import java.util.Objects; import org.springframework.stereotype.Service; import com.zhyc.module.feed.mapper.SgFormulaListMapper; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java index 23ac1e1..b94a01b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java @@ -3,7 +3,6 @@ package com.zhyc.module.produce.bodyManage.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; -import com.zhyc.common.utils.SecurityUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java index cf9e617..3e73035 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java @@ -3,11 +3,8 @@ package com.zhyc.module.produce.bodyManage.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; -import org.springframework.data.annotation.AccessType; import java.math.BigDecimal; import java.time.LocalDate; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java index 005eb4b..83ded3e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java @@ -6,8 +6,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java index 3699f57..872bf26 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java @@ -4,8 +4,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java index c872868..80861f8 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java @@ -3,6 +3,7 @@ package com.zhyc.module.produce.breed.controller; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import javax.servlet.http.HttpServletResponse; import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; import com.zhyc.module.produce.breed.service.IScBreedPlanGenerateService; @@ -21,6 +22,7 @@ import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.enums.BusinessType; import com.zhyc.common.core.page.TableDataInfo; +import com.zhyc.common.utils.poi.ExcelUtil; /** * 配种计划生成Controller @@ -78,6 +80,12 @@ public class ScBreedPlanGenerateController extends BaseController public AjaxResult autoGenerateBreedPlan(@RequestBody Map params) { try { + // 获取计划类型 + Integer planType = params.get("planType") != null ? (Integer) params.get("planType") : 1; + + // 计划名称由系统自动生成,不再从前端传入 + String planName = null; + // 安全的类型转换 List eweIdsRaw = (List) params.get("eweIds"); List ramIdsRaw = (List) params.get("ramIds"); @@ -110,7 +118,7 @@ public class ScBreedPlanGenerateController extends BaseController }) .collect(Collectors.toList()); - ScBreedPlanGenerate planGenerate = scBreedPlanGenerateService.autoGenerateBreedPlan(eweIds, ramIds); + ScBreedPlanGenerate planGenerate = scBreedPlanGenerateService.autoGenerateBreedPlan(planType, planName, eweIds, ramIds); return success(planGenerate); } catch (Exception e) { logger.error("自动生成配种计划失败", e); @@ -151,14 +159,38 @@ public class ScBreedPlanGenerateController extends BaseController } /** - * 审批配种计划 + * 获取审批配种计划详情 */ @PreAuthorize("@ss.hasPermi('mating_plan:generate:approve')") - @Log(title = "审批配种计划", businessType = BusinessType.UPDATE) - @PutMapping("/approve/{id}") - public AjaxResult approve(@PathVariable Long id) + @GetMapping("/approve/{id}") + public AjaxResult getApproveInfo(@PathVariable Long id) { - return toAjax(scBreedPlanGenerateService.approveBreedPlan(id)); + Map approveDetails = scBreedPlanGenerateService.getApproveBreedPlanDetails(id); + return success(approveDetails); + } + + /** + * 确认审批配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:approve')") + @Log(title = "确认审批配种计划", businessType = BusinessType.UPDATE) + @PutMapping("/approve/confirm") + public AjaxResult confirmApprove(@RequestBody Map params) + { + try { + Long planId = Long.valueOf(params.get("planId").toString()); + Integer status = Integer.valueOf(params.get("status").toString()); + String approveRemark = params.get("approveRemark") != null ? params.get("approveRemark").toString() : ""; + + @SuppressWarnings("unchecked") + List> planDetails = (List>) params.get("planDetails"); + + int result = scBreedPlanGenerateService.confirmApproveBreedPlan(planId, planDetails, status, approveRemark); + return toAjax(result); + } catch (Exception e) { + logger.error("确认审批配种计划失败", e); + return error("确认审批配种计划失败:" + e.getMessage()); + } } /** @@ -172,6 +204,41 @@ public class ScBreedPlanGenerateController extends BaseController return success(planDetails); } + /** + * 导出配种计划列表 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:export')") + @Log(title = "导出配种计划列表", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBreedPlanGenerate scBreedPlanGenerate) + { + List list = scBreedPlanGenerateService.selectScBreedPlanGenerateList(scBreedPlanGenerate); + ExcelUtil util = new ExcelUtil(ScBreedPlanGenerate.class); + util.exportExcel(response, list, "配种计划生成数据"); + } + + /** + * 导出配种计划详情 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:export')") + @Log(title = "导出配种计划详情", businessType = BusinessType.EXPORT) + @PostMapping("/export/{id}") + public void exportBreedPlanDetails(HttpServletResponse response, @PathVariable Long id) + { + try { + scBreedPlanGenerateService.exportBreedPlanDetails(response, id); + } catch (Exception e) { + logger.error("导出配种计划详情失败", e); + // 在出错时返回错误信息给前端 + try { + response.setContentType("application/json;charset=utf-8"); + response.getWriter().write("{\"code\":500,\"msg\":\"导出失败:" + e.getMessage() + "\"}"); + } catch (Exception ex) { + logger.error("返回错误信息失败", ex); + } + } + } + /** * 删除配种计划生成 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java index c80c7ae..50c37c2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java @@ -1,6 +1,7 @@ package com.zhyc.module.produce.breed.controller; import java.util.List; +import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; @@ -76,7 +77,11 @@ public class ScBreedRecordController extends BaseController @GetMapping(value = "/getSheepByTags/{manageTags}") public AjaxResult getSheepInfoByTags(@PathVariable("manageTags") String manageTags) { - return success(scBreedRecordService.getSheepInfoByTags(manageTags)); + Map sheepInfo = scBreedRecordService.getSheepInfoByTags(manageTags); + if (sheepInfo == null || sheepInfo.isEmpty()) { + return error("未找到耳号为 " + manageTags + " 的羊只信息"); + } + return success(sheepInfo); } /** @@ -86,7 +91,25 @@ public class ScBreedRecordController extends BaseController @GetMapping(value = "/getBreedPlan/{manageTags}") public AjaxResult getBreedPlanByEweTags(@PathVariable("manageTags") String manageTags) { - return success(scBreedRecordService.getBreedPlanByEweTags(manageTags)); + Map breedPlan = scBreedRecordService.getBreedPlanByEweTags(manageTags); + if (breedPlan == null || breedPlan.isEmpty()) { + return error("未找到耳号为 " + manageTags + " 的母羊配种计划"); + } + return success(breedPlan); + } + + /** + * 根据母羊耳号获取最新配种计划信息(优先从配种计划生成表获取) + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") + @GetMapping(value = "/getLatestBreedPlan/{manageTags}") + public AjaxResult getLatestBreedPlanByEweTags(@PathVariable("manageTags") String manageTags) + { + Map breedPlan = scBreedRecordService.getLatestBreedPlanByEweTags(manageTags); + if (breedPlan == null || breedPlan.isEmpty()) { + return error("未找到耳号为 " + manageTags + " 的母羊配种计划"); + } + return success(breedPlan); } /** @@ -97,24 +120,43 @@ public class ScBreedRecordController extends BaseController @PostMapping public AjaxResult add(@RequestBody ScBreedRecord scBreedRecord) { - // 如果传入的是耳号,需要转换为羊只ID + // 处理母羊耳号转换 if (scBreedRecord.getEweManageTags() != null && !scBreedRecord.getEweManageTags().isEmpty()) { Long eweId = scBreedRecordService.getSheepIdByTags(scBreedRecord.getEweManageTags()); if (eweId == null) { - return error("未找到母羊耳号对应的羊只信息"); + return error("未找到母羊耳号 " + scBreedRecord.getEweManageTags() + " 对应的羊只信息"); } scBreedRecord.setEweId(eweId.toString()); + scBreedRecord.setSheepId(eweId); // 设置羊只ID为母羊ID } + // 处理公羊耳号转换 if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); if (ramId == null) { - return error("未找到公羊耳号对应的羊只信息"); + return error("未找到公羊耳号 " + scBreedRecord.getRamManageTags() + " 对应的羊只信息"); } scBreedRecord.setRamId(ramId.toString()); } - return toAjax(scBreedRecordService.insertScBreedRecord(scBreedRecord)); + // 验证配种方式 + if (scBreedRecord.getBreedType() == null) { + return error("配种方式不能为空"); + } + if (scBreedRecord.getBreedType() != 1 && scBreedRecord.getBreedType() != 2) { + return error("配种方式只能是:1-同期发情 或 2-本交"); + } + + // 验证技术员 + if (scBreedRecord.getTechnician() == null || scBreedRecord.getTechnician().trim().isEmpty()) { + return error("技术员不能为空"); + } + + int result = scBreedRecordService.insertScBreedRecord(scBreedRecord); + if (result > 0) { + return success("配种记录新增成功"); + } + return error("配种记录新增失败"); } /** @@ -125,23 +167,32 @@ public class ScBreedRecordController extends BaseController @PutMapping public AjaxResult edit(@RequestBody ScBreedRecord scBreedRecord) { - // 如果传入的是耳号,需要转换为羊只ID + // 处理母羊耳号转换 if (scBreedRecord.getEweManageTags() != null && !scBreedRecord.getEweManageTags().isEmpty()) { Long eweId = scBreedRecordService.getSheepIdByTags(scBreedRecord.getEweManageTags()); if (eweId == null) { - return error("未找到母羊耳号对应的羊只信息"); + return error("未找到母羊耳号 " + scBreedRecord.getEweManageTags() + " 对应的羊只信息"); } scBreedRecord.setEweId(eweId.toString()); + scBreedRecord.setSheepId(eweId); // 设置羊只ID为母羊ID } + // 处理公羊耳号转换 if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); if (ramId == null) { - return error("未找到公羊耳号对应的羊只信息"); + return error("未找到公羊耳号 " + scBreedRecord.getRamManageTags() + " 对应的羊只信息"); } scBreedRecord.setRamId(ramId.toString()); } + // 验证配种方式 + if (scBreedRecord.getBreedType() != null) { + if (scBreedRecord.getBreedType() != 1 && scBreedRecord.getBreedType() != 2) { + return error("配种方式只能是:1-同期发情 或 2-本交"); + } + } + return toAjax(scBreedRecordService.updateScBreedRecord(scBreedRecord)); } @@ -155,4 +206,37 @@ public class ScBreedRecordController extends BaseController { return toAjax(scBreedRecordService.deleteScBreedRecordByIds(ids)); } + + /** + * 同步孕检结果到配种记录 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:edit')") + @Log(title = "同步孕检结果", businessType = BusinessType.UPDATE) + @PostMapping("/syncPregnancyResult") + public AjaxResult syncPregnancyResult(@RequestBody Map params) + { + Long pregnancyRecordId = Long.valueOf(params.get("pregnancyRecordId").toString()); + Long sheepId = Long.valueOf(params.get("sheepId").toString()); + String pregnancyCheckDate = params.get("pregnancyCheckDate").toString(); + + int result = scBreedRecordService.syncPregnancyResult(pregnancyRecordId, sheepId, pregnancyCheckDate); + if (result > 0) { + return success("孕检结果同步成功"); + } else { + return error("孕检结果同步失败,可能未找到对应的配种记录"); + } + } + + /** + * 根据羊只ID和时间范围查询配种记录 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") + @GetMapping("/getByTimeRange/{sheepId}/{startDate}/{endDate}") + public AjaxResult getBreedRecordsByTimeRange(@PathVariable("sheepId") Long sheepId, + @PathVariable("startDate") String startDate, + @PathVariable("endDate") String endDate) + { + List records = scBreedRecordService.getBreedRecordsByTimeRange(sheepId, startDate, endDate); + return success(records); + } } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java index 04bce38..e2b6dee 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java @@ -1,6 +1,7 @@ package com.zhyc.module.produce.breed.controller; import java.util.List; +import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; @@ -43,6 +44,25 @@ public class ScLambingRecordController extends BaseController { return getDataTable(list); } + /** + * 根据母羊耳号查询最新配种记录 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:query')") + @GetMapping("/breeding_info/{earNumber}") + public AjaxResult getBreedingInfo(@PathVariable("earNumber") String earNumber) { + try { + Map breedingInfo = scLambingRecordService.getLatestBreedingByEarNumber(earNumber); + if (breedingInfo != null && !breedingInfo.isEmpty()) { + return success(breedingInfo); + } else { + return error("未找到该母羊的配种记录,请检查耳号是否正确"); + } + } catch (Exception e) { + logger.error("查询配种信息异常", e); + return error("查询配种信息失败:" + e.getMessage()); + } + } + /** * 导出产羔记录列表 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java index 2f1c625..187d22e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java index 1989341..b0991c9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.breed.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java index db6f059..2658186 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java index 4380caf..f96ecee 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.breed.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java index c5f548d..72565f2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java @@ -1,15 +1,11 @@ package com.zhyc.module.produce.breed.domain; -import java.math.BigDecimal; -import java.util.Date; - import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.util.Date; /** * 配种记录对象 sc_breed_record @@ -47,6 +43,10 @@ public class ScBreedRecord extends BaseEntity @Excel(name = "耗精量") private String breedDrugs; + /** 配种方式 1-同期发情 2-本交 */ + @Excel(name = "配种方式", readConverterExp = "1=同期发情,2=本交") + private Integer breedType; + // ============ 显示字段 ============ /** 母羊耳号 */ @@ -93,7 +93,7 @@ public class ScBreedRecord extends BaseEntity @Excel(name = "所在牧场") private String ranchName; - /** 配种方式 */ + /** 配种方式显示 */ @Excel(name = "配种方式") private String matingType; @@ -112,5 +112,43 @@ public class ScBreedRecord extends BaseEntity /** 牧场ID */ private Long ranchId; + /** 配种计划ID */ + private Long planId; + // ============ 新增孕检相关字段 ============ + + /** 孕检日期 */ + @Excel(name = "孕检日期") + private Date pregnancyCheckDate; + + /** 孕检结果 */ + @Excel(name = "孕检结果") + private String pregnancyResult; + + /** 孕检方式 */ + @Excel(name = "孕检方式") + private String pregnancyWay; + + /** 胎数 */ + @Excel(name = "胎数") + private Integer fetusCount; + + /** 孕检技术员 */ + @Excel(name = "孕检技术员") + private String pregnancyTechnician; + + /** 孕检备注 */ + @Excel(name = "孕检备注") + private String pregnancyRemark; + + /** 孕检记录ID */ + private Long pregnancyRecordId; + + /** 配种到孕检间隔天数 */ + @Excel(name = "配种到孕检间隔(天)") + private Integer daysToPregnancyCheck; + + /** 是否已孕检 */ + @Excel(name = "是否已孕检", readConverterExp = "0=否,1=是") + private Integer isPregnancyChecked; } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java index 07f0fb8..07ffe30 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java index 69044e4..4c71d76 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java @@ -8,8 +8,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java index f02d38f..41bcb5c 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java @@ -1,13 +1,10 @@ package com.zhyc.module.produce.breed.domain; -import java.math.BigDecimal; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java index 79c70ce..b0e4dcb 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java @@ -8,8 +8,6 @@ import com.zhyc.common.core.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; /** * 断奶记录对象 sc_wean_record diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java index 00eaf16..0f744e6 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java @@ -89,6 +89,22 @@ public interface ScBreedPlanGenerateMapper */ public List> selectBreedPlanDetails(Long planGenerateId); + /** + * 获取审批配种计划详情 + * + * @param planGenerateId 配种计划生成ID + * @return 审批配种计划详情列表 + */ + public List> selectApproveBreedPlanDetails(Long planGenerateId); + + /** + * 更新临时配种计划 + * + * @param params 更新参数 + * @return 结果 + */ + public int updateTempBreedPlan(Map params); + /** * 删除配种计划生成 * @@ -104,4 +120,12 @@ public interface ScBreedPlanGenerateMapper * @return 结果 */ public int deleteScBreedPlanGenerateByIds(Long[] ids); + + /** + * 删除临时配种计划 + * + * @param planGenerateId 配种计划生成ID + * @return 结果 + */ + public int deleteTempBreedPlanByPlanId(Long planGenerateId); } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java index ee67b34..8d8eb58 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java @@ -3,6 +3,8 @@ package com.zhyc.module.produce.breed.mapper; import java.util.List; import java.util.Map; import com.zhyc.module.produce.breed.domain.ScBreedRecord; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 配种记录Mapper接口 @@ -10,6 +12,7 @@ import com.zhyc.module.produce.breed.domain.ScBreedRecord; * @author ruoyi * @date 2025-07-23 */ +@Mapper public interface ScBreedRecordMapper { /** @@ -61,7 +64,7 @@ public interface ScBreedRecordMapper public int deleteScBreedRecordByIds(Long[] ids); /** - * 根据耳号查询羊只ID + * 根据管理耳号查询羊只ID * * @param manageTags 管理耳号 * @return 羊只ID @@ -69,7 +72,7 @@ public interface ScBreedRecordMapper public Long getSheepIdByManageTags(String manageTags); /** - * 根据公羊耳号查询羊只ID + * 根据公羊管理耳号查询羊只ID * * @param manageTags 管理耳号 * @return 羊只ID @@ -91,4 +94,34 @@ public interface ScBreedRecordMapper * @return 配种计划信息 */ public Map getBreedPlanByEweTags(String manageTags); + + /** + * 根据母羊耳号获取最新的配种计划信息(从配种计划生成表) + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + public Map getLatestBreedPlanByEweTags(String manageTags); + + /** + * 根据配种记录ID更新孕检信息 + * + * @param breedRecordId 配种记录ID + * @param pregnancyRecordId 孕检记录ID + * @return 结果 + */ + public int updatePregnancyInfo(@Param("breedRecordId") Long breedRecordId, + @Param("pregnancyRecordId") Long pregnancyRecordId); + + /** + * 根据羊只ID和配种时间查询配种记录 + * + * @param sheepId 羊只ID + * @param matingDateStart 配种开始时间 + * @param matingDateEnd 配种结束时间 + * @return 配种记录集合 + */ + public List selectBreedRecordByMatingTime(@Param("sheepId") Long sheepId, + @Param("matingDateStart") String matingDateStart, + @Param("matingDateEnd") String matingDateEnd); } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java index 85edef3..244a3f9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java @@ -1,9 +1,10 @@ package com.zhyc.module.produce.breed.mapper; import java.util.List; +import java.util.Map; import com.zhyc.module.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 产羔记录Mapper接口 @@ -38,6 +39,14 @@ public interface ScLambingRecordMapper */ public ScLambingRecord selectScLambingRecordDetailById(Long id); + /** + * 根据母羊耳号查询最新配种记录 + * + * @param earNumber 母羊耳号 + * @return 配种记录信息 + */ + public Map getLatestBreedingByEarNumber(@Param("earNumber") String earNumber); + /** * 新增产羔记录 * diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java index 4580492..499438d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.breed.service; import java.util.List; import java.util.Map; +import javax.servlet.http.HttpServletResponse; import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; /** @@ -45,11 +46,13 @@ public interface IScBreedPlanGenerateService /** * 自动生成配种计划 * + * @param planType 计划类型 + * @param planName 计划名称 * @param eweIds 母羊ID列表 * @param ramIds 公羊ID列表 * @return 生成的配种计划 */ - public ScBreedPlanGenerate autoGenerateBreedPlan(List eweIds, List ramIds); + public ScBreedPlanGenerate autoGenerateBreedPlan(Integer planType, String planName, List eweIds, List ramIds); /** * 新增配种计划生成 @@ -68,12 +71,23 @@ public interface IScBreedPlanGenerateService public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); /** - * 审批配种计划 + * 获取审批配种计划详情 * * @param id 配种计划ID + * @return 审批配种计划详情 + */ + public Map getApproveBreedPlanDetails(Long id); + + /** + * 确认审批配种计划 + * + * @param planId 配种计划ID + * @param planDetails 配种计划详情 + * @param status 审批状态 + * @param approveRemark 审批意见 * @return 结果 */ - public int approveBreedPlan(Long id); + public int confirmApproveBreedPlan(Long planId, List> planDetails, Integer status, String approveRemark); /** * 获取配种计划详情 @@ -91,6 +105,14 @@ public interface IScBreedPlanGenerateService */ public int deleteScBreedPlanGenerateByIds(Long[] ids); + /** + * 导出配种计划详情 + * + * @param response HTTP响应 + * @param id 配种计划ID + */ + public void exportBreedPlanDetails(HttpServletResponse response, Long id); + /** * 删除配种计划生成信息 * diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java index 7f71704..293d63e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java @@ -91,4 +91,32 @@ public interface IScBreedRecordService * @return 配种计划信息 */ public Map getBreedPlanByEweTags(String manageTags); + + /** + * 根据母羊耳号获取最新的配种计划信息(优先从配种计划生成表获取) + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + public Map getLatestBreedPlanByEweTags(String manageTags); + + /** + * 同步孕检结果到配种记录 + * + * @param pregnancyRecordId 孕检记录ID + * @param sheepId 羊只ID + * @param pregnancyCheckDate 孕检日期 + * @return 结果 + */ + public int syncPregnancyResult(Long pregnancyRecordId, Long sheepId, String pregnancyCheckDate); + + /** + * 根据羊只ID和时间范围查询配种记录 + * + * @param sheepId 羊只ID + * @param startDate 开始时间 + * @param endDate 结束时间 + * @return 配种记录集合 + */ + public List getBreedRecordsByTimeRange(Long sheepId, String startDate, String endDate); } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java index 83a6497..a230bb4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java @@ -1,6 +1,7 @@ package com.zhyc.module.produce.breed.service; import java.util.List; +import java.util.Map; import com.zhyc.module.produce.breed.domain.ScLambingRecord; import com.zhyc.module.produce.breed.domain.ScLambDetail; @@ -14,6 +15,14 @@ public interface IScLambingRecordService { */ public List selectScLambingRecordList(ScLambingRecord scLambingRecord); + /** + * 根据母羊耳号查询最新配种记录 + * + * @param earNumber 母羊耳号 + * @return 配种记录信息 + */ + public Map getLatestBreedingByEarNumber(String earNumber); + /** * 新增产羔记录(包含羔羊详情) */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java index 3e88f7c..f2073ce 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java @@ -5,6 +5,8 @@ import java.util.Map; import java.util.HashMap; import java.util.Date; import java.text.SimpleDateFormat; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; import com.zhyc.module.produce.breed.domain.ScBreedPlan; import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; @@ -15,6 +17,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.zhyc.common.utils.SecurityUtils; +import org.springframework.util.StringUtils; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.ss.util.CellRangeAddress; /** * 配种计划生成Service业务层处理 @@ -80,20 +86,27 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi /** * 自动生成配种计划 * + * @param planType 计划类型 + * @param planName 计划名称 * @param eweIds 母羊ID列表 * @param ramIds 公羊ID列表 * @return 生成的配种计划 */ @Override @Transactional - public ScBreedPlanGenerate autoGenerateBreedPlan(List eweIds, List ramIds) + public ScBreedPlanGenerate autoGenerateBreedPlan(Integer planType, String planName, List eweIds, List ramIds) { // 创建配种计划生成记录 ScBreedPlanGenerate planGenerate = new ScBreedPlanGenerate(); + + // 自动生成计划名称:日期+计划类型 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String dateStr = sdf.format(new Date()); - planGenerate.setPlanName(dateStr + "同期发情配种计划"); - planGenerate.setPlanType(1); + String planTypeName = (planType == 1) ? "同期发情配种计划" : "本交配种计划"; + planName = dateStr + planTypeName; + + planGenerate.setPlanName(planName); + planGenerate.setPlanType(planType); planGenerate.setPlanDate(new Date()); planGenerate.setTotalEweCount(eweIds.size()); planGenerate.setTotalRamCount(ramIds.size()); @@ -109,7 +122,7 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi scBreedPlanGenerateMapper.insertScBreedPlanGenerate(planGenerate); // 生成具体的配种计划 - generateBreedPlanDetails(planGenerate.getId(), eweIds, ramIds); + generateBreedPlanDetails(planGenerate.getId(), eweIds, ramIds, planType); return planGenerate; } @@ -117,16 +130,23 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi /** * 生成具体的配种计划详情 */ - private void generateBreedPlanDetails(Long planGenerateId, List eweIds, List ramIds) + private void generateBreedPlanDetails(Long planGenerateId, List eweIds, List ramIds, Integer planType) { int ramIndex = 0; int ewesPerRam = (int) Math.ceil((double) eweIds.size() / ramIds.size()); for (int i = 0; i < eweIds.size(); i++) { ScBreedPlan breedPlan = new ScBreedPlan(); + // 存储公羊ID而不是字符串 breedPlan.setRamId(ramIds.get(ramIndex).toString()); breedPlan.setEweId(eweIds.get(i).toString()); - breedPlan.setBreedType(1L); // 默认配种类型 + + // 根据计划类型设置配种类型:同期发情配种计划->同期发情,本交配种计划->本交 + if (planType == 1) { + breedPlan.setBreedType(1L); // 同期发情 + } else { + breedPlan.setBreedType(2L); // 本交 + } // 插入临时配种计划,关联到生成记录 scBreedPlanGenerateMapper.insertTempBreedPlan(planGenerateId, breedPlan); @@ -165,28 +185,75 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi } /** - * 审批配种计划 + * 获取审批配种计划详情 * * @param id 配种计划ID + * @return 审批配种计划详情 + */ + @Override + public Map getApproveBreedPlanDetails(Long id) + { + Map result = new HashMap<>(); + + // 获取配种计划基本信息 + ScBreedPlanGenerate planGenerate = scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); + result.put("planInfo", planGenerate); + + // 获取详细的配种计划信息 + List> planDetails = scBreedPlanGenerateMapper.selectApproveBreedPlanDetails(id); + result.put("planDetails", planDetails); + + // 获取可选择的公羊列表 + List> availableRams = scBreedPlanGenerateMapper.selectEligibleRam(); + result.put("availableRams", availableRams); + + return result; + } + + /** + * 确认审批配种计划 + * + * @param planId 配种计划ID + * @param planDetails 配种计划详情 + * @param status 审批状态 + * @param approveRemark 审批意见 * @return 结果 */ @Override @Transactional - public int approveBreedPlan(Long id) + public int confirmApproveBreedPlan(Long planId, List> planDetails, Integer status, String approveRemark) { // 更新审批状态 ScBreedPlanGenerate planGenerate = new ScBreedPlanGenerate(); - planGenerate.setId(id); - planGenerate.setStatus(1); // 已审批 + planGenerate.setId(planId); + planGenerate.setStatus(status); planGenerate.setApprover(SecurityUtils.getUsername()); planGenerate.setApproveTime(new Date()); + planGenerate.setApproveRemark(approveRemark); planGenerate.setUpdateTime(new Date()); int result = scBreedPlanGenerateMapper.updateScBreedPlanGenerate(planGenerate); - // 将临时配种计划转为正式配种计划 - if (result > 0) { - scBreedPlanGenerateMapper.transferTempToFormal(id); + // 如果审批通过,更新临时配种计划并转为正式计划 + if (result > 0 && status == 1) { + // 更新临时配种计划中的公羊分配 + if (planDetails != null && !planDetails.isEmpty()) { + for (Map detail : planDetails) { + Long tempId = Long.valueOf(detail.get("id").toString()); + Long ramId = Long.valueOf(detail.get("ram_id").toString()); + Long breedType = Long.valueOf(detail.get("breed_type").toString()); + + // 更新临时配种计划 + Map updateParams = new HashMap<>(); + updateParams.put("id", tempId); + updateParams.put("ramId", ramId); + updateParams.put("breedType", breedType); + scBreedPlanGenerateMapper.updateTempBreedPlan(updateParams); + } + } + + // 将临时配种计划转为正式配种计划 + scBreedPlanGenerateMapper.transferTempToFormal(planId); } return result; @@ -214,6 +281,231 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi return result; } + /** + * 导出配种计划详情 + * + * @param response HTTP响应 + * @param id 配种计划ID + */ + @Override + public void exportBreedPlanDetails(HttpServletResponse response, Long id) + { + try { + // 获取配种计划基本信息 + ScBreedPlanGenerate planGenerate = scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); + if (planGenerate == null) { + throw new RuntimeException("配种计划不存在"); + } + + // 检查是否已审批 + if (planGenerate.getStatus() != 1) { + throw new RuntimeException("只有已审批的配种计划才能导出"); + } + + // 获取配种计划详情 + List> planDetails = scBreedPlanGenerateMapper.selectBreedPlanDetails(id); + + // 创建工作簿 + Workbook workbook = new XSSFWorkbook(); + Sheet sheet = workbook.createSheet("配种计划详情"); + + // 创建样式 + CellStyle titleStyle = workbook.createCellStyle(); + Font titleFont = workbook.createFont(); + titleFont.setBold(true); + titleFont.setFontHeightInPoints((short) 16); + titleStyle.setFont(titleFont); + titleStyle.setAlignment(HorizontalAlignment.CENTER); + + CellStyle headerStyle = workbook.createCellStyle(); + Font headerFont = workbook.createFont(); + headerFont.setBold(true); + headerStyle.setFont(headerFont); + headerStyle.setAlignment(HorizontalAlignment.CENTER); + headerStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); + headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); + + CellStyle dataStyle = workbook.createCellStyle(); + dataStyle.setAlignment(HorizontalAlignment.CENTER); + + CellStyle eweHeaderStyle = workbook.createCellStyle(); + Font eweHeaderFont = workbook.createFont(); + eweHeaderFont.setBold(true); + eweHeaderStyle.setFont(eweHeaderFont); + eweHeaderStyle.setAlignment(HorizontalAlignment.CENTER); + eweHeaderStyle.setFillForegroundColor(IndexedColors.ROSE.getIndex()); + eweHeaderStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); + + CellStyle ramHeaderStyle = workbook.createCellStyle(); + Font ramHeaderFont = workbook.createFont(); + ramHeaderFont.setBold(true); + ramHeaderStyle.setFont(ramHeaderFont); + ramHeaderStyle.setAlignment(HorizontalAlignment.CENTER); + ramHeaderStyle.setFillForegroundColor(IndexedColors.LIGHT_BLUE.getIndex()); + ramHeaderStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); + + int rowNum = 0; + + // 标题 + Row titleRow = sheet.createRow(rowNum++); + Cell titleCell = titleRow.createCell(0); + titleCell.setCellValue(planGenerate.getPlanName() + " - 配种计划详情"); + titleCell.setCellStyle(titleStyle); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 19)); + + // 空行 + rowNum++; + + // 基本信息 + Row infoRow1 = sheet.createRow(rowNum++); + infoRow1.createCell(0).setCellValue("计划类型:"); + infoRow1.createCell(1).setCellValue(planGenerate.getPlanType() == 1 ? "同期发情配种计划" : "本交配种计划"); + infoRow1.createCell(3).setCellValue("计划日期:"); + infoRow1.createCell(4).setCellValue(new SimpleDateFormat("yyyy-MM-dd").format(planGenerate.getPlanDate())); + + Row infoRow2 = sheet.createRow(rowNum++); + infoRow2.createCell(0).setCellValue("母羊数量:"); + infoRow2.createCell(1).setCellValue(planGenerate.getTotalEweCount()); + infoRow2.createCell(3).setCellValue("公羊数量:"); + infoRow2.createCell(4).setCellValue(planGenerate.getTotalRamCount()); + + Row infoRow3 = sheet.createRow(rowNum++); + infoRow3.createCell(0).setCellValue("配种比例:"); + infoRow3.createCell(1).setCellValue(planGenerate.getBreedRatio()); + infoRow3.createCell(3).setCellValue("创建人:"); + infoRow3.createCell(4).setCellValue(planGenerate.getCreateBy()); + + // 空行 + rowNum++; + + // 分组表头 + Row groupHeaderRow = sheet.createRow(rowNum++); + Cell groupHeaderCell1 = groupHeaderRow.createCell(1); + groupHeaderCell1.setCellValue("母羊信息"); + groupHeaderCell1.setCellStyle(eweHeaderStyle); + sheet.addMergedRegion(new CellRangeAddress(rowNum-1, rowNum-1, 1, 12)); + + Cell groupHeaderCell2 = groupHeaderRow.createCell(13); + groupHeaderCell2.setCellValue("公羊信息"); + groupHeaderCell2.setCellStyle(ramHeaderStyle); + sheet.addMergedRegion(new CellRangeAddress(rowNum-1, rowNum-1, 13, 19)); + + // 详细表头 + Row headerRow = sheet.createRow(rowNum++); + String[] headers = { + "序号", + // 母羊信息 + "母羊耳号", "母羊品种", "母羊家系", "母羊类别", "繁育状态", "胎次", "月龄", "体重", "核心羊群", "是否种用", "羊舍", "备注", + // 公羊信息 + "公羊耳号", "公羊品种", "公羊家系", "公羊类别", "生日", "月龄", "体重", + // 配种信息 + "配种类型" + }; + + for (int i = 0; i < headers.length; i++) { + Cell cell = headerRow.createCell(i); + cell.setCellValue(headers[i]); + if (i == 0 || i == headers.length - 1) { + cell.setCellStyle(headerStyle); + } else if (i <= 12) { + cell.setCellStyle(eweHeaderStyle); + } else { + cell.setCellStyle(ramHeaderStyle); + } + } + + // 数据行 + for (int i = 0; i < planDetails.size(); i++) { + Map detail = planDetails.get(i); + Row dataRow = sheet.createRow(rowNum++); + int colNum = 0; + + // 序号 + dataRow.createCell(colNum++).setCellValue(i + 1); + + // 母羊信息 + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_manage_tags")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_variety")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_family")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_sheep_type")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_breed_status")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_parity")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_month_age")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_current_weight")); + dataRow.createCell(colNum++).setCellValue(getBooleanValue(detail, "ewe_is_core") ? "是" : "否"); + dataRow.createCell(colNum++).setCellValue(getBooleanValue(detail, "ewe_is_breeding") ? "是" : "否"); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_sheepfold_name")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ewe_comment")); + + // 公羊信息 + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_manage_tags")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_variety")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_family")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_sheep_type")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_birthday")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_month_age")); + dataRow.createCell(colNum++).setCellValue(getStringValue(detail, "ram_current_weight")); + + // 配种类型 + Object breedType = detail.get("breed_type"); + String breedTypeName = "未知类型"; + if (breedType != null) { + int typeValue = Integer.parseInt(breedType.toString()); + breedTypeName = typeValue == 1 ? "同期发情" : (typeValue == 2 ? "本交" : "未知类型"); + } + dataRow.createCell(colNum++).setCellValue(breedTypeName); + + // 应用数据样式 + for (int j = 0; j < headers.length; j++) { + if (dataRow.getCell(j) != null) { + dataRow.getCell(j).setCellStyle(dataStyle); + } + } + } + + // 自动调整列宽 + for (int i = 0; i < headers.length; i++) { + sheet.autoSizeColumn(i); + // 设置最小宽度 + if (sheet.getColumnWidth(i) < 2000) { + sheet.setColumnWidth(i, 2000); + } + } + + // 设置响应头 + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + String fileName = java.net.URLEncoder.encode(planGenerate.getPlanName() + "_配种计划详情", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + + // 输出到响应流 + workbook.write(response.getOutputStream()); + workbook.close(); + + } catch (IOException e) { + throw new RuntimeException("导出Excel失败", e); + } + } + + /** + * 安全获取字符串值 + */ + private String getStringValue(Map map, String key) { + Object value = map.get(key); + return value != null ? value.toString() : ""; + } + + /** + * 安全获取布尔值 + */ + private boolean getBooleanValue(Map map, String key) { + Object value = map.get(key); + if (value == null) return false; + if (value instanceof Boolean) return (Boolean) value; + if (value instanceof Number) return ((Number) value).intValue() == 1; + return "1".equals(value.toString()) || "true".equalsIgnoreCase(value.toString()); + } + /** * 批量删除配种计划生成 * @@ -221,8 +513,13 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi * @return 结果 */ @Override + @Transactional public int deleteScBreedPlanGenerateByIds(Long[] ids) { + // 删除相关的临时配种计划 + for (Long id : ids) { + scBreedPlanGenerateMapper.deleteTempBreedPlanByPlanId(id); + } return scBreedPlanGenerateMapper.deleteScBreedPlanGenerateByIds(ids); } @@ -233,8 +530,11 @@ public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateServi * @return 结果 */ @Override + @Transactional public int deleteScBreedPlanGenerateById(Long id) { + // 先删除相关的临时配种计划 + scBreedPlanGenerateMapper.deleteTempBreedPlanByPlanId(id); return scBreedPlanGenerateMapper.deleteScBreedPlanGenerateById(id); } } \ No newline at end of file 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 61ab012..aaad5b1 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 @@ -4,6 +4,8 @@ import java.util.List; import java.util.Map; import com.zhyc.common.utils.DateUtils; import com.zhyc.common.utils.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zhyc.module.produce.breed.mapper.ScBreedRecordMapper; @@ -19,6 +21,8 @@ import com.zhyc.module.produce.breed.service.IScBreedRecordService; @Service public class ScBreedRecordServiceImpl implements IScBreedRecordService { + private static final Logger log = LoggerFactory.getLogger(ScBreedRecordServiceImpl.class); + @Autowired private ScBreedRecordMapper scBreedRecordMapper; @@ -161,4 +165,84 @@ public class ScBreedRecordServiceImpl implements IScBreedRecordService { return scBreedRecordMapper.getBreedPlanByEweTags(manageTags); } + + /** + * 根据母羊耳号获取最新的配种计划信息(优先从配种计划生成表获取) + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + @Override + public Map getLatestBreedPlanByEweTags(String manageTags) + { + try { + // 优先从配种计划生成表获取最新计划 + Map latestPlan = scBreedRecordMapper.getLatestBreedPlanByEweTags(manageTags); + + if (latestPlan != null && !latestPlan.isEmpty()) { + log.info("从配种计划生成表获取到配种计划: {}", latestPlan); + return latestPlan; + } + + // 如果生成表中没有,则从普通配种计划表获取 + Map normalPlan = scBreedRecordMapper.getBreedPlanByEweTags(manageTags); + if (normalPlan != null && !normalPlan.isEmpty()) { + log.info("从配种计划表获取到配种计划: {}", normalPlan); + return normalPlan; + } + + log.warn("未找到母羊耳号 {} 的配种计划信息", manageTags); + return null; + + } catch (Exception e) { + log.error("获取配种计划信息时发生异常,母羊耳号: {}", manageTags, e); + return null; + } + } + + /** + * 同步孕检结果到配种记录 + * + * @param pregnancyRecordId 孕检记录ID + * @param sheepId 羊只ID + * @param pregnancyCheckDate 孕检日期 + * @return 结果 + */ + @Override + public int syncPregnancyResult(Long pregnancyRecordId, Long sheepId, String pregnancyCheckDate) + { + try { + // 查找孕检日期前最近的配种记录 + List breedRecords = scBreedRecordMapper.selectBreedRecordByMatingTime( + sheepId, null, pregnancyCheckDate); + + if (breedRecords != null && !breedRecords.isEmpty()) { + // 取最近的一次配种记录 + ScBreedRecord latestBreedRecord = breedRecords.get(0); + + // 更新配种记录中的孕检信息 + return scBreedRecordMapper.updatePregnancyInfo(latestBreedRecord.getId(), pregnancyRecordId); + } else { + log.warn("未找到羊只ID {} 在孕检日期 {} 前的配种记录", sheepId, pregnancyCheckDate); + return 0; + } + } catch (Exception e) { + log.error("同步孕检结果到配种记录时发生异常", e); + return 0; + } + } + + /** + * 根据羊只ID和时间范围查询配种记录 + * + * @param sheepId 羊只ID + * @param startDate 开始时间 + * @param endDate 结束时间 + * @return 配种记录集合 + */ + @Override + public List getBreedRecordsByTimeRange(Long sheepId, String startDate, String endDate) + { + return scBreedRecordMapper.selectBreedRecordByMatingTime(sheepId, startDate, endDate); + } } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java index 74b6715..2360839 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.breed.service.impl; import java.math.BigDecimal; import java.util.List; +import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -31,6 +32,14 @@ public class ScLambingRecordServiceImpl implements IScLambingRecordService { return scLambingRecordMapper.selectScLambingRecordList(scLambingRecord); } + /** + * 根据母羊耳号查询最新配种记录 + */ + @Override + public Map getLatestBreedingByEarNumber(String earNumber) { + return scLambingRecordMapper.getLatestBreedingByEarNumber(earNumber); + } + /** * 新增产羔记录(包含羔羊详情) */ @@ -70,11 +79,6 @@ public class ScLambingRecordServiceImpl implements IScLambingRecordService { } } - - - /** - * 验证和转换羔羊详情 - */ /** * 验证和转换羔羊详情 */ @@ -84,7 +88,7 @@ public class ScLambingRecordServiceImpl implements IScLambingRecordService { throw new RuntimeException("羔羊耳号不能为空"); } - if (lambDetail.getGender() == null) { // 改为检查Integer类型 + if (lambDetail.getGender() == null) { throw new RuntimeException("羔羊性别不能为空"); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java index dde2c3d..5c329c6 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java @@ -3,7 +3,6 @@ package com.zhyc.module.produce.breed.service.impl; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Date; import java.util.Calendar; import com.zhyc.common.utils.DateUtils; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java index 2a513be..8e1b0cb 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.manage_sheep.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java index 47eec0a..e7e9411 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.manage_sheep.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java index ce4f52a..3c8953c 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java index 8568e8a..f45435e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java @@ -3,11 +3,8 @@ package com.zhyc.module.produce.manage_sheep.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; -import org.springframework.beans.factory.annotation.Autowired; /** * 转群记录对象 sc_trans_group diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java index eaeec95..8176046 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.manage_sheep.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java index f45aa59..3f0f4dd 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java @@ -2,7 +2,7 @@ package com.zhyc.module.produce.manage_sheep.service.impl; import java.util.Date; import java.util.List; -import com.zhyc.common.utils.DateUtils; + import com.zhyc.common.utils.SecurityUtils; import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.service.IBasSheepService; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java index d5df328..8e619e5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java @@ -8,7 +8,6 @@ import com.zhyc.common.utils.StringUtils; import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.domain.DaRanch; import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.mapper.DaRanchMapper; import com.zhyc.module.base.service.IBasSheepService; import com.zhyc.module.base.service.IDaRanchService; import com.zhyc.module.produce.manage_sheep.mapper.ScTransitionInfoMapper; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java index be6afda..aae148e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.other.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java index 9adbc9c..88833e5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java @@ -3,8 +3,6 @@ package com.zhyc.module.produce.other.domain; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java index fde7034..298d6c5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java @@ -14,7 +14,6 @@ import com.zhyc.module.produce.other.mapper.ScFixHoofMapper; import com.zhyc.module.produce.other.service.IScFixHoofService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; /** * 修蹄Service业务层处理 diff --git a/zhyc-module/src/main/resources/mapper/common/UserPostMapper.xml b/zhyc-module/src/main/resources/mapper/common/UserPostMapper.xml new file mode 100644 index 0000000..cec16d8 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/common/UserPostMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml deleted file mode 100644 index 0966729..0000000 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - select id, fodder, number, nuit from sg_feed_details - - - - - - - - insert into sg_feed_details - - fodder, - number, - nuit, - - - #{fodder}, - #{number}, - #{nuit}, - - - - - update sg_feed_details - - fodder = #{fodder}, - number = #{number}, - nuit = #{nuit}, - - where id = #{id} - - - - delete from sg_feed_details where id = #{id} - - - - delete from sg_feed_details where id in - - #{id} - - - \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml deleted file mode 100644 index 536e136..0000000 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - select id, formula_id, sheepfold_id, average, plan_monring, actual_monring, plan_noon, actual_noon, plan_evenig, actual_evening, particle, other, replenish, plan_date, comment, create_by, create_time from sg_feed_info - - - - - - - - insert into sg_feed_info - - formula_id, - sheepfold_id, - average, - plan_monring, - actual_monring, - plan_noon, - actual_noon, - plan_evenig, - actual_evening, - particle, - other, - replenish, - plan_date, - comment, - create_by, - create_time, - - - #{formulaId}, - #{sheepfoldId}, - #{average}, - #{planMonring}, - #{actualMonring}, - #{planNoon}, - #{actualNoon}, - #{planEvenig}, - #{actualEvening}, - #{particle}, - #{other}, - #{replenish}, - #{planDate}, - #{comment}, - #{createBy}, - #{createTime}, - - - - - update sg_feed_info - - formula_id = #{formulaId}, - sheepfold_id = #{sheepfoldId}, - average = #{average}, - plan_monring = #{planMonring}, - actual_monring = #{actualMonring}, - plan_noon = #{planNoon}, - actual_noon = #{actualNoon}, - plan_evenig = #{planEvenig}, - actual_evening = #{actualEvening}, - particle = #{particle}, - other = #{other}, - replenish = #{replenish}, - plan_date = #{planDate}, - comment = #{comment}, - create_by = #{createBy}, - create_time = #{createTime}, - - where id = #{id} - - - - delete from sg_feed_info where id = #{id} - - - - delete from sg_feed_info where id in - - #{id} - - - \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml index fe2b6e3..b67f3df 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml @@ -7,21 +7,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + - - - @@ -29,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select create_date, formula_id, sheep_house_id, sheep_count, plan_daily_size, plan_morning_size, plan_morning_total, ratio_morning, actual_morning_size, plan_noon_size, plan_noon_total, actual_noon_size, ratio_noon, plan_afternoon_size, plan_afternoon_total, actual_afternoon_size, ratio_afternoon, plan_feed_total, zookeeper, plan_date, remark from sg_feed_plan + select create_date, formula_id, batch_id, sheep_house_id, sheep_count, plan_daily_size, ratio_morning, ratio_noon, ratio_afternoon, plan_morning_size, plan_morning_total, actual_morning_size, plan_noon_size, plan_noon_total, actual_noon_size, plan_afternoon_size, plan_afternoon_total, actual_afternoon_size, plan_feed_total, zookeeper, plan_date, remark from sg_feed_plan + SELECT COUNT(*) + FROM bas_sheep + WHERE sheepfold_id = #{foldId} + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml deleted file mode 100644 index 2ebb1fd..0000000 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - select id, morning, noon, evening from sg_feed_ratio - - - - - - - - insert into sg_feed_ratio - - morning, - noon, - evening, - - - #{morning}, - #{noon}, - #{evening}, - - - - - update sg_feed_ratio - - morning = #{morning}, - noon = #{noon}, - evening = #{evening}, - - where id = #{id} - - - - delete from sg_feed_ratio where id = #{id} - - - - delete from sg_feed_ratio where id in - - #{id} - - - \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml deleted file mode 100644 index 8f4638b..0000000 --- a/zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - select id, name, fodder_type from sg_fodder - - - - - - - - insert into sg_fodder - - name, - fodder_type, - - - #{name}, - #{fodderType}, - - - - - update sg_fodder - - name = #{name}, - fodder_type = #{fodderType}, - - where id = #{id} - - - - delete from sg_fodder where id = #{id} - - - - delete from sg_fodder where id in - - #{id} - - - \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/Sperm/RawSpermRecordMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/RawSpermRecordMapper.xml similarity index 100% rename from zhyc-module/src/main/resources/mapper/Sperm/RawSpermRecordMapper.xml rename to zhyc-module/src/main/resources/mapper/produce/breed/RawSpermRecordMapper.xml diff --git a/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedPlanGenerateMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedPlanGenerateMapper.xml index 7d08f16..44d083f 100644 --- a/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedPlanGenerateMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedPlanGenerateMapper.xml @@ -34,8 +34,14 @@ and plan_name like concat('%', #{planName}, '%') and plan_type = #{planType} - and plan_date = #{planDate} + and DATE(plan_date) = DATE(#{planDate}) and status = #{status} + + and DATE(plan_date) >= DATE(#{params.beginTime}) + + + and DATE(plan_date) <= DATE(#{params.endTime}) + order by create_time desc @@ -48,63 +54,72 @@ @@ -176,25 +191,110 @@ where plan_generate_id = #{planGenerateId} - + + + + + + + update sc_breed_plan_temp + + + ram_id = #{ramId}, + + + ram_id = null, + + + breed_type = #{breedType}, + + + breed_type = null, + + + where id = #{id} + + delete from sc_breed_plan_generate where id = #{id} @@ -205,4 +305,9 @@ #{id} + + + + delete from sc_breed_plan_temp where plan_generate_id = #{planGenerateId} + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/Breeding_records/ScBreedRecordMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml similarity index 65% rename from zhyc-module/src/main/resources/mapper/Breeding_records/ScBreedRecordMapper.xml rename to zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml index 4128a7a..c03c285 100644 --- a/zhyc-module/src/main/resources/mapper/Breeding_records/ScBreedRecordMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml @@ -11,9 +11,10 @@ + - + @@ -29,6 +30,16 @@ + + + + + + + + + + @@ -39,6 +50,7 @@ br.ewe_id, br.technician, br.breed_drugs, + br.breed_type, br.create_by, br.create_time, -- 母羊信息(从视图获取) @@ -56,13 +68,45 @@ -- 公羊信息(从视图获取) ram_view.bs_manage_tags as ram_manage_tags, ram_view.variety as ram_variety, - -- 配种方式(如果视图中没有,设为空或从其他地方获取) - '' as mating_type, + -- 配种方式显示 + CASE br.breed_type + WHEN 1 THEN '同期发情' + WHEN 2 THEN '本交' + ELSE '未知' + END as mating_type, -- 发情后配种时间(小时数) - TIMESTAMPDIFF(HOUR, br.create_time, NOW()) as time_since_planning + TIMESTAMPDIFF(HOUR, br.create_time, NOW()) as time_since_planning, + -- 孕检相关信息 + pr.datetime as pregnancy_check_date, + pr.result as pregnancy_result, + pr.way as pregnancy_way, + pr.fetus_count, + pr.technician as pregnancy_technician, + pr.remark as pregnancy_remark, + pr.id as pregnancy_record_id, + -- 配种到孕检间隔天数 + CASE + WHEN pr.datetime IS NOT NULL THEN DATEDIFF(pr.datetime, br.create_time) + ELSE NULL + END as days_to_pregnancy_check, + -- 是否已孕检 + CASE + WHEN pr.id IS NOT NULL THEN 1 + ELSE 0 + END as is_pregnancy_checked from sc_breed_record br left join sheep_file ewe_view on br.ewe_id = ewe_view.id left join sheep_file ram_view on br.ram_id = ram_view.id + left join sc_pregnancy_record pr on pr.sheep_id = br.ewe_id + and pr.is_delete = 0 + and pr.datetime >= br.create_time + and pr.datetime = ( + select min(pr2.datetime) + from sc_pregnancy_record pr2 + where pr2.sheep_id = br.ewe_id + and pr2.is_delete = 0 + and pr2.datetime >= br.create_time + ) @@ -170,19 +221,43 @@ ewe_view.bs_manage_tags as ewe_manage_tags, bp.ram_id, ram_view.bs_manage_tags as ram_manage_tags, - bp.plan_date, bp.breed_type, - bp.technician, - bp.status, - bp.create_time as plan_create_time, - TIMESTAMPDIFF(HOUR, bp.create_time, NOW()) as hours_since_plan + CASE bp.breed_type + WHEN 1 THEN '同期发情' + WHEN 2 THEN '本交' + ELSE '未知' + END as breed_type_name, + TIMESTAMPDIFF(HOUR, NOW(), NOW()) as hours_since_plan from sc_breed_plan bp left join sheep_file ewe_view on bp.ewe_id = ewe_view.id left join sheep_file ram_view on bp.ram_id = ram_view.id where ewe_view.bs_manage_tags = #{manageTags} - and bp.status = '待配种' - and bp.is_delete = 0 - order by bp.create_time desc + order by bp.id desc + limit 1 + + + + @@ -194,6 +269,7 @@ ewe_id, technician, breed_drugs, + breed_type, create_by, create_time, @@ -203,6 +279,7 @@ #{eweId}, #{technician}, #{breedDrugs}, + #{breedType}, #{createBy}, #{createTime}, @@ -216,6 +293,7 @@ ewe_id = #{eweId}, technician = #{technician}, breed_drugs = #{breedDrugs}, + breed_type = #{breedType}, create_by = #{createBy}, create_time = #{createTime}, @@ -232,4 +310,26 @@ #{id} + + + + + + + update sc_breed_record + set pregnancy_record_id = #{pregnancyRecordId} + where id = #{breedRecordId} + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/breed/ScLambingRecordMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScLambingRecordMapper.xml index 937834b..7ed7e3b 100644 --- a/zhyc-module/src/main/resources/mapper/produce/breed/ScLambingRecordMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/breed/ScLambingRecordMapper.xml @@ -15,6 +15,7 @@ + @@ -66,42 +67,47 @@ lr.id, lr.sheep_id, lr.parity, lr.lambs_born, lr.survival, lr.technician, lr.score, lr.comment, lr.create_by, lr.create_tme, - -- 从bas_sheep表获取母羊信息 - mother.manage_tags as female_ear_number, - mother.variety_id as female_breed, - TIMESTAMPDIFF(MONTH, mother.birthday, NOW()) as month_age, - mother.sheepfold_id as current_shed, - mother.ranch_id as farm, + -- 从sheep_file视图获取母羊信息 + mother.bs_manage_tags as female_ear_number, + mother.variety as female_breed, + mother.month_age as month_age, + mother.sheepfold_name as current_shed, + mother.dr_ranch as farm, -- 从sc_breed_record表获取配种信息 br.create_time as breeding_date, - DATEDIFF(lr.create_tme, br.create_time) as pregnancy_days, + DATEDIFF(CURDATE(), br.create_time) as pregnancy_days, - -- 从bas_sheep表获取公羊信息 - father.manage_tags as male_ear_number, - father.variety_id as male_breed, + -- 从sheep_file视图获取公羊信息 + father.bs_manage_tags as male_ear_number, + father.variety as male_breed, - -- 统计羔羊信息(从bas_sheep表统计,根据母羊ID) - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 1 AND lamb.is_delete = 0) as male_count, - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 0 AND lamb.is_delete = 0) as female_count, - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 1 AND lamb.status_id = 1 AND lamb.is_delete = 0) as retained_male_count, - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 0 AND lamb.status_id = 1 AND lamb.is_delete = 0) as retained_female_count, - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 1 AND lamb.status_id != 1 AND lamb.is_delete = 0) as unretained_male_count, - (SELECT COUNT(*) FROM bas_sheep lamb WHERE lamb.mother_id = lr.sheep_id AND lamb.gender = 0 AND lamb.status_id != 1 AND lamb.is_delete = 0) as unretained_female_count + -- 统计羔羊信息(从sc_lamb_detail表统计) + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 1) as male_count, + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 0) as female_count, + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 1 AND sld.is_retained = 1) as retained_male_count, + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 0 AND sld.is_retained = 1) as retained_female_count, + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 1 AND sld.is_retained = 0) as unretained_male_count, + (SELECT COUNT(*) FROM sc_lamb_detail sld WHERE sld.lambing_record_id = lr.id AND sld.gender = 0 AND sld.is_retained = 0) as unretained_female_count FROM sc_lambing_record lr - LEFT JOIN bas_sheep mother ON lr.sheep_id = mother.id - LEFT JOIN sc_breed_record br ON lr.sheep_id = br.ewe_id AND lr.parity = mother.parity - LEFT JOIN bas_sheep father ON br.ram_id = father.id + LEFT JOIN sheep_file mother ON lr.sheep_id = mother.id + LEFT JOIN sc_breed_record br ON lr.sheep_id = br.ewe_id AND br.create_time = ( + SELECT MAX(br2.create_time) + FROM sc_breed_record br2 + WHERE br2.ewe_id = lr.sheep_id + AND br2.create_time <= lr.create_tme + ) + LEFT JOIN sheep_file father ON br.ram_id = father.id - - SELECT - id, - lambing_record_id as lambingRecordId, - lamb_ear_number as lambEarNumber, - lamb_breed as lambBreed, - gender, - birth_weight as birthWeight, - is_retained as isRetained, - lineage, - birthday, - create_by as createBy, - create_time as createTime - FROM sc_lamb_detail - WHERE lambing_record_id = #{lambingRecordId} - ORDER BY create_time ASC + sf.id as sheep_id, + sf.bs_manage_tags as female_ear_number, + sf.variety as female_breed, + sf.parity as parity, + br.ram_id as ram_id, + ram.bs_manage_tags as male_ear_number, + ram.variety as male_breed, + br.create_time as breeding_date, + DATEDIFF(CURDATE(), br.create_time) as pregnancy_days, + br.technician as technician + FROM sheep_file sf + LEFT JOIN sc_breed_record br ON sf.id = br.ewe_id + LEFT JOIN sheep_file ram ON br.ram_id = ram.id + WHERE sf.bs_manage_tags = #{earNumber} + AND sf.is_delete = 0 + AND br.create_time = ( + SELECT MAX(br2.create_time) + FROM sc_breed_record br2 + WHERE br2.ewe_id = sf.id + ) @@ -191,8 +203,8 @@ technician = #{technician}, score = #{score}, comment = #{comment}, - create_by = #{createBy}, - create_tme = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, where id = #{id} diff --git a/zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml similarity index 100% rename from zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml rename to zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml