From cc629818138159a16343e40932d1c9efcdc2c142 Mon Sep 17 00:00:00 2001 From: zyk Date: Fri, 1 Aug 2025 08:59:10 +0800 Subject: [PATCH 01/23] =?UTF-8?q?=E7=A7=8D=E5=85=AC=E7=BE=8A=E6=A1=A3?= =?UTF-8?q?=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BreedRamFileController.java | 104 ++ .../zhyc/module/base/domain/BreedRamFile.java | 890 ++++++++++++++++++ .../base/mapper/BreedRamFileMapper.java | 109 +++ .../base/service/IBreedRamFileService.java | 61 ++ .../service/impl/BreedRamFileServiceImpl.java | 96 ++ .../mapper/base/BreedRamFileMapper.xml | 417 ++++++++ 6 files changed, 1677 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/base/BreedRamFileMapper.xml diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java new file mode 100644 index 0000000..7274064 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.base.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.enums.BusinessType; +import com.zhyc.module.base.domain.BreedRamFile; +import com.zhyc.module.base.service.IBreedRamFileService; +import com.zhyc.common.core.controller.BaseController; +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 种公羊档案Controller + * + * @author zhyc + * @date 2025-07-29 + */ +@RestController +@RequestMapping("/ram_file/bas_ram_file") +public class BreedRamFileController extends BaseController +{ + @Autowired + private IBreedRamFileService breedRamFileService; + + /** + * 查询种公羊档案列表 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:list')") + @GetMapping("/list") + public TableDataInfo list(BreedRamFile breedRamFile) + { + startPage(); + List list = breedRamFileService.selectBreedRamFileList(breedRamFile); + return getDataTable(list); + } + + /** + * 导出种公羊档案列表 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:export')") + @Log(title = "种公羊档案", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BreedRamFile breedRamFile) + { + List list = breedRamFileService.selectBreedRamFileList(breedRamFile); + ExcelUtil util = new ExcelUtil(BreedRamFile.class); + util.exportExcel(response, list, "种公羊档案数据"); + } + + /** + * 获取种公羊档案详细信息 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(breedRamFileService.selectBreedRamFileById(id)); + } + + /** + * 新增种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:add')") + @Log(title = "种公羊档案", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BreedRamFile breedRamFile) + { + return toAjax(breedRamFileService.insertBreedRamFile(breedRamFile)); + } + + /** + * 修改种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:edit')") + @Log(title = "种公羊档案", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BreedRamFile breedRamFile) + { + return toAjax(breedRamFileService.updateBreedRamFile(breedRamFile)); + } + + /** + * 删除种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:remove')") + @Log(title = "种公羊档案", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(breedRamFileService.deleteBreedRamFileByIds(ids)); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java new file mode 100644 index 0000000..463308d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java @@ -0,0 +1,890 @@ +package com.zhyc.module.base.domain; + +import java.math.BigDecimal; +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; + +/** + * 种公羊档案对象 breed_ram_file + * + * @author zhyc + * @date 2025-07-29 + */ +public class BreedRamFile extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 种公羊id */ + private Long id; + + /** 普通耳号 */ + @Excel(name = "普通耳号") + private String ordinaryEarNumber; + + /** 牧场id */ + @Excel(name = "牧场id") + private Long ranchId; + + /** 牧场名称 */ + @Excel(name = "牧场名称") + private String ranchName; + + /** 羊舍id */ + @Excel(name = "羊舍id") + private Long sheepfoldId; + + /** 羊舍名称 */ + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + /** 品种id */ + @Excel(name = "品种id") + private Long varietyId; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 羊只类别 */ + @Excel(name = "羊只类别") + private String sheepCategory; + + /** 当前状态 */ + @Excel(name = "当前状态") + private String currentStatus; + + /** 生日 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 动态 */ + @Excel(name = "动态") + private String dynamicInfo; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 出生体重 */ + @Excel(name = "出生体重") + private BigDecimal birthWeight; + + /** 断奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date weaningDate; + + /** 断奶日龄 */ + @Excel(name = "断奶日龄") + private Long weaningDayAge; + + /** 断奶体重 */ + @Excel(name = "断奶体重") + private BigDecimal weaningWeight; + + /** 断奶日增重 */ + @Excel(name = "断奶日增重") + private BigDecimal weaningDailyGain; + + /** 断奶后日增重 */ + @Excel(name = "断奶后日增重") + private BigDecimal postWeaningDailyGain; + + /** 当前体重 */ + @Excel(name = "当前体重") + private BigDecimal currentWeight; + + /** 当前体重称重日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "当前体重称重日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date currentWeightDate; + + /** 活动量 */ + @Excel(name = "活动量") + private String activityLevel; + + /** 性欲情况 */ + @Excel(name = "性欲情况") + private String sexualStatus; + + /** 阴囊周长 */ + @Excel(name = "阴囊周长") + private BigDecimal scrotumCircumference; + + /** 采精时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "采精时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date spermCollectionTime; + + /** 精液量 */ + @Excel(name = "精液量") + private BigDecimal spermVolume; + + /** 精液活力 */ + @Excel(name = "精液活力") + private String spermVitality; + + /** 精液密度 */ + @Excel(name = "精液密度") + private String spermDensity; + + /** 精液品质 */ + @Excel(name = "精液品质") + private String spermQuality; + + /** 配种状态 */ + @Excel(name = "配种状态") + private Long breedingStatus; + + /** 上次计划时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "上次计划时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date lastPlanTime; + + /** 本次计划时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "本次计划时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date currentPlanTime; + + /** 蛋白率%EBV */ + @Excel(name = "蛋白率%EBV") + private BigDecimal proteinRateEbv; + + /** 乳脂率%EBV */ + @Excel(name = "乳脂率%EBV") + private BigDecimal milkFatRateEbv; + + /** 乳体细胞(SCS)EBV */ + @Excel(name = "乳体细胞", readConverterExp = "S=CS") + private BigDecimal scsEbv; + + /** 生长性能EBV */ + @Excel(name = "生长性能EBV") + private BigDecimal growthPerformanceEbv; + + /** 抗逆性EBV */ + @Excel(name = "抗逆性EBV") + private BigDecimal resistanceEbv; + + /** 繁殖性能EBV */ + @Excel(name = "繁殖性能EBV") + private BigDecimal reproductionPerformanceEbv; + + /** 体型性状EBV */ + @Excel(name = "体型性状EBV") + private BigDecimal bodyTypeEbv; + + /** 综合育种值 */ + @Excel(name = "综合育种值") + private BigDecimal comprehensiveBreedingValue; + + /** 父号 */ + @Excel(name = "父号") + private String fatherNumber; + + /** 母号 */ + @Excel(name = "母号") + private String motherNumber; + + /** 祖父 */ + @Excel(name = "祖父") + private String grandfatherNumber; + + /** 祖母 */ + @Excel(name = "祖母") + private String grandmotherNumber; + + /** 外祖父 */ + @Excel(name = "外祖父") + private String maternalGrandfatherNumber; + + /** 外祖母 */ + @Excel(name = "外祖母") + private String maternalGrandmotherNumber; + + /** 是否核心羊群(0否1是) */ + @Excel(name = "是否核心羊群", readConverterExp = "0=否,1=是") + private Long isCoreFlock; + + /** 是否种用(0否1是) */ + @Excel(name = "是否种用", readConverterExp = "0=否,1=是") + private Long isBreedingUse; + + /** 孕检 */ + @Excel(name = "孕检") + private String pregnancyCheck; + + /** 总配母羊数 */ + @Excel(name = "总配母羊数") + private Long totalMatedEwes; + + /** 本交孕检母羊数 */ + @Excel(name = "本交孕检母羊数") + private Long naturalPregnancyCheckEwes; + + /** 本交受孕率% */ + @Excel(name = "本交受孕率%") + private BigDecimal naturalConceptionRate; + + /** 人工孕检母羊数 */ + @Excel(name = "人工孕检母羊数") + private Long artificialPregnancyCheckEwes; + + /** 人工受孕率% */ + @Excel(name = "人工受孕率%") + private BigDecimal artificialConceptionRate; + + /** 公羊母亲奶量 */ + @Excel(name = "公羊母亲奶量") + private BigDecimal ramMotherMilkVolume; + + /** 产奶量估计育种值(Kg) */ + @Excel(name = "产奶量估计育种值", readConverterExp = "K=g") + private BigDecimal milkProductionEbv; + + /** 准确性 */ + @Excel(name = "准确性") + private BigDecimal accuracy; + + /** 信息数 */ + @Excel(name = "信息数") + private Long informationCount; + + /** 是否亲子鉴定(0否1是) */ + @Excel(name = "是否亲子鉴定", readConverterExp = "0=否,1=是") + private Long isPaternityTested; + + /** 是否删除(0否1是) */ + private Long isDelete; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setOrdinaryEarNumber(String ordinaryEarNumber) + { + this.ordinaryEarNumber = ordinaryEarNumber; + } + + public String getOrdinaryEarNumber() + { + return ordinaryEarNumber; + } + public void setRanchId(Long ranchId) + { + this.ranchId = ranchId; + } + + public Long getRanchId() + { + return ranchId; + } + public void setRanchName(String ranchName) + { + this.ranchName = ranchName; + } + + public String getRanchName() + { + return ranchName; + } + public void setSheepfoldId(Long sheepfoldId) + { + this.sheepfoldId = sheepfoldId; + } + + public Long getSheepfoldId() + { + return sheepfoldId; + } + public void setSheepfoldName(String sheepfoldName) + { + this.sheepfoldName = sheepfoldName; + } + + public String getSheepfoldName() + { + return sheepfoldName; + } + public void setElectronicTags(String electronicTags) + { + this.electronicTags = electronicTags; + } + + public String getElectronicTags() + { + return electronicTags; + } + public void setVarietyId(Long varietyId) + { + this.varietyId = varietyId; + } + + public Long getVarietyId() + { + return varietyId; + } + public void setVariety(String variety) + { + this.variety = variety; + } + + public String getVariety() + { + return variety; + } + public void setSheepCategory(String sheepCategory) + { + this.sheepCategory = sheepCategory; + } + + public String getSheepCategory() + { + return sheepCategory; + } + public void setCurrentStatus(String currentStatus) + { + this.currentStatus = currentStatus; + } + + public String getCurrentStatus() + { + return currentStatus; + } + public void setBirthday(Date birthday) + { + this.birthday = birthday; + } + + public Date getBirthday() + { + return birthday; + } + public void setDynamicInfo(String dynamicInfo) + { + this.dynamicInfo = dynamicInfo; + } + + public String getDynamicInfo() + { + return dynamicInfo; + } + public void setMonthAge(Long monthAge) + { + this.monthAge = monthAge; + } + + public Long getMonthAge() + { + return monthAge; + } + public void setBirthWeight(BigDecimal birthWeight) + { + this.birthWeight = birthWeight; + } + + public BigDecimal getBirthWeight() + { + return birthWeight; + } + public void setWeaningDate(Date weaningDate) + { + this.weaningDate = weaningDate; + } + + public Date getWeaningDate() + { + return weaningDate; + } + public void setWeaningDayAge(Long weaningDayAge) + { + this.weaningDayAge = weaningDayAge; + } + + public Long getWeaningDayAge() + { + return weaningDayAge; + } + public void setWeaningWeight(BigDecimal weaningWeight) + { + this.weaningWeight = weaningWeight; + } + + public BigDecimal getWeaningWeight() + { + return weaningWeight; + } + public void setWeaningDailyGain(BigDecimal weaningDailyGain) + { + this.weaningDailyGain = weaningDailyGain; + } + + public BigDecimal getWeaningDailyGain() + { + return weaningDailyGain; + } + public void setPostWeaningDailyGain(BigDecimal postWeaningDailyGain) + { + this.postWeaningDailyGain = postWeaningDailyGain; + } + + public BigDecimal getPostWeaningDailyGain() + { + return postWeaningDailyGain; + } + public void setCurrentWeight(BigDecimal currentWeight) + { + this.currentWeight = currentWeight; + } + + public BigDecimal getCurrentWeight() + { + return currentWeight; + } + public void setCurrentWeightDate(Date currentWeightDate) + { + this.currentWeightDate = currentWeightDate; + } + + public Date getCurrentWeightDate() + { + return currentWeightDate; + } + public void setActivityLevel(String activityLevel) + { + this.activityLevel = activityLevel; + } + + public String getActivityLevel() + { + return activityLevel; + } + public void setSexualStatus(String sexualStatus) + { + this.sexualStatus = sexualStatus; + } + + public String getSexualStatus() + { + return sexualStatus; + } + public void setScrotumCircumference(BigDecimal scrotumCircumference) + { + this.scrotumCircumference = scrotumCircumference; + } + + public BigDecimal getScrotumCircumference() + { + return scrotumCircumference; + } + public void setSpermCollectionTime(Date spermCollectionTime) + { + this.spermCollectionTime = spermCollectionTime; + } + + public Date getSpermCollectionTime() + { + return spermCollectionTime; + } + public void setSpermVolume(BigDecimal spermVolume) + { + this.spermVolume = spermVolume; + } + + public BigDecimal getSpermVolume() + { + return spermVolume; + } + public void setSpermVitality(String spermVitality) + { + this.spermVitality = spermVitality; + } + + public String getSpermVitality() + { + return spermVitality; + } + public void setSpermDensity(String spermDensity) + { + this.spermDensity = spermDensity; + } + + public String getSpermDensity() + { + return spermDensity; + } + public void setSpermQuality(String spermQuality) + { + this.spermQuality = spermQuality; + } + + public String getSpermQuality() + { + return spermQuality; + } + public void setBreedingStatus(Long breedingStatus) + { + this.breedingStatus = breedingStatus; + } + + public Long getBreedingStatus() + { + return breedingStatus; + } + public void setLastPlanTime(Date lastPlanTime) + { + this.lastPlanTime = lastPlanTime; + } + + public Date getLastPlanTime() + { + return lastPlanTime; + } + public void setCurrentPlanTime(Date currentPlanTime) + { + this.currentPlanTime = currentPlanTime; + } + + public Date getCurrentPlanTime() + { + return currentPlanTime; + } + public void setProteinRateEbv(BigDecimal proteinRateEbv) + { + this.proteinRateEbv = proteinRateEbv; + } + + public BigDecimal getProteinRateEbv() + { + return proteinRateEbv; + } + public void setMilkFatRateEbv(BigDecimal milkFatRateEbv) + { + this.milkFatRateEbv = milkFatRateEbv; + } + + public BigDecimal getMilkFatRateEbv() + { + return milkFatRateEbv; + } + public void setScsEbv(BigDecimal scsEbv) + { + this.scsEbv = scsEbv; + } + + public BigDecimal getScsEbv() + { + return scsEbv; + } + public void setGrowthPerformanceEbv(BigDecimal growthPerformanceEbv) + { + this.growthPerformanceEbv = growthPerformanceEbv; + } + + public BigDecimal getGrowthPerformanceEbv() + { + return growthPerformanceEbv; + } + public void setResistanceEbv(BigDecimal resistanceEbv) + { + this.resistanceEbv = resistanceEbv; + } + + public BigDecimal getResistanceEbv() + { + return resistanceEbv; + } + public void setReproductionPerformanceEbv(BigDecimal reproductionPerformanceEbv) + { + this.reproductionPerformanceEbv = reproductionPerformanceEbv; + } + + public BigDecimal getReproductionPerformanceEbv() + { + return reproductionPerformanceEbv; + } + public void setBodyTypeEbv(BigDecimal bodyTypeEbv) + { + this.bodyTypeEbv = bodyTypeEbv; + } + + public BigDecimal getBodyTypeEbv() + { + return bodyTypeEbv; + } + public void setComprehensiveBreedingValue(BigDecimal comprehensiveBreedingValue) + { + this.comprehensiveBreedingValue = comprehensiveBreedingValue; + } + + public BigDecimal getComprehensiveBreedingValue() + { + return comprehensiveBreedingValue; + } + public void setFatherNumber(String fatherNumber) + { + this.fatherNumber = fatherNumber; + } + + public String getFatherNumber() + { + return fatherNumber; + } + public void setMotherNumber(String motherNumber) + { + this.motherNumber = motherNumber; + } + + public String getMotherNumber() + { + return motherNumber; + } + public void setGrandfatherNumber(String grandfatherNumber) + { + this.grandfatherNumber = grandfatherNumber; + } + + public String getGrandfatherNumber() + { + return grandfatherNumber; + } + public void setGrandmotherNumber(String grandmotherNumber) + { + this.grandmotherNumber = grandmotherNumber; + } + + public String getGrandmotherNumber() + { + return grandmotherNumber; + } + public void setMaternalGrandfatherNumber(String maternalGrandfatherNumber) + { + this.maternalGrandfatherNumber = maternalGrandfatherNumber; + } + + public String getMaternalGrandfatherNumber() + { + return maternalGrandfatherNumber; + } + public void setMaternalGrandmotherNumber(String maternalGrandmotherNumber) + { + this.maternalGrandmotherNumber = maternalGrandmotherNumber; + } + + public String getMaternalGrandmotherNumber() + { + return maternalGrandmotherNumber; + } + public void setIsCoreFlock(Long isCoreFlock) + { + this.isCoreFlock = isCoreFlock; + } + + public Long getIsCoreFlock() + { + return isCoreFlock; + } + public void setIsBreedingUse(Long isBreedingUse) + { + this.isBreedingUse = isBreedingUse; + } + + public Long getIsBreedingUse() + { + return isBreedingUse; + } + public void setPregnancyCheck(String pregnancyCheck) + { + this.pregnancyCheck = pregnancyCheck; + } + + public String getPregnancyCheck() + { + return pregnancyCheck; + } + public void setTotalMatedEwes(Long totalMatedEwes) + { + this.totalMatedEwes = totalMatedEwes; + } + + public Long getTotalMatedEwes() + { + return totalMatedEwes; + } + public void setNaturalPregnancyCheckEwes(Long naturalPregnancyCheckEwes) + { + this.naturalPregnancyCheckEwes = naturalPregnancyCheckEwes; + } + + public Long getNaturalPregnancyCheckEwes() + { + return naturalPregnancyCheckEwes; + } + public void setNaturalConceptionRate(BigDecimal naturalConceptionRate) + { + this.naturalConceptionRate = naturalConceptionRate; + } + + public BigDecimal getNaturalConceptionRate() + { + return naturalConceptionRate; + } + public void setArtificialPregnancyCheckEwes(Long artificialPregnancyCheckEwes) + { + this.artificialPregnancyCheckEwes = artificialPregnancyCheckEwes; + } + + public Long getArtificialPregnancyCheckEwes() + { + return artificialPregnancyCheckEwes; + } + public void setArtificialConceptionRate(BigDecimal artificialConceptionRate) + { + this.artificialConceptionRate = artificialConceptionRate; + } + + public BigDecimal getArtificialConceptionRate() + { + return artificialConceptionRate; + } + public void setRamMotherMilkVolume(BigDecimal ramMotherMilkVolume) + { + this.ramMotherMilkVolume = ramMotherMilkVolume; + } + + public BigDecimal getRamMotherMilkVolume() + { + return ramMotherMilkVolume; + } + public void setMilkProductionEbv(BigDecimal milkProductionEbv) + { + this.milkProductionEbv = milkProductionEbv; + } + + public BigDecimal getMilkProductionEbv() + { + return milkProductionEbv; + } + public void setAccuracy(BigDecimal accuracy) + { + this.accuracy = accuracy; + } + + public BigDecimal getAccuracy() + { + return accuracy; + } + public void setInformationCount(Long informationCount) + { + this.informationCount = informationCount; + } + + public Long getInformationCount() + { + return informationCount; + } + public void setIsPaternityTested(Long isPaternityTested) + { + this.isPaternityTested = isPaternityTested; + } + + public Long getIsPaternityTested() + { + return isPaternityTested; + } + public void setIsDelete(Long isDelete) + { + this.isDelete = isDelete; + } + + public Long getIsDelete() + { + return isDelete; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("ordinaryEarNumber", getOrdinaryEarNumber()) + .append("ranchId", getRanchId()) + .append("ranchName", getRanchName()) + .append("sheepfoldId", getSheepfoldId()) + .append("sheepfoldName", getSheepfoldName()) + .append("electronicTags", getElectronicTags()) + .append("varietyId", getVarietyId()) + .append("variety", getVariety()) + .append("sheepCategory", getSheepCategory()) + .append("currentStatus", getCurrentStatus()) + .append("birthday", getBirthday()) + .append("dynamicInfo", getDynamicInfo()) + .append("monthAge", getMonthAge()) + .append("birthWeight", getBirthWeight()) + .append("weaningDate", getWeaningDate()) + .append("weaningDayAge", getWeaningDayAge()) + .append("weaningWeight", getWeaningWeight()) + .append("weaningDailyGain", getWeaningDailyGain()) + .append("postWeaningDailyGain", getPostWeaningDailyGain()) + .append("currentWeight", getCurrentWeight()) + .append("currentWeightDate", getCurrentWeightDate()) + .append("activityLevel", getActivityLevel()) + .append("sexualStatus", getSexualStatus()) + .append("scrotumCircumference", getScrotumCircumference()) + .append("spermCollectionTime", getSpermCollectionTime()) + .append("spermVolume", getSpermVolume()) + .append("spermVitality", getSpermVitality()) + .append("spermDensity", getSpermDensity()) + .append("spermQuality", getSpermQuality()) + .append("breedingStatus", getBreedingStatus()) + .append("lastPlanTime", getLastPlanTime()) + .append("currentPlanTime", getCurrentPlanTime()) + .append("remark", getRemark()) + .append("proteinRateEbv", getProteinRateEbv()) + .append("milkFatRateEbv", getMilkFatRateEbv()) + .append("scsEbv", getScsEbv()) + .append("growthPerformanceEbv", getGrowthPerformanceEbv()) + .append("resistanceEbv", getResistanceEbv()) + .append("reproductionPerformanceEbv", getReproductionPerformanceEbv()) + .append("bodyTypeEbv", getBodyTypeEbv()) + .append("comprehensiveBreedingValue", getComprehensiveBreedingValue()) + .append("fatherNumber", getFatherNumber()) + .append("motherNumber", getMotherNumber()) + .append("grandfatherNumber", getGrandfatherNumber()) + .append("grandmotherNumber", getGrandmotherNumber()) + .append("maternalGrandfatherNumber", getMaternalGrandfatherNumber()) + .append("maternalGrandmotherNumber", getMaternalGrandmotherNumber()) + .append("isCoreFlock", getIsCoreFlock()) + .append("isBreedingUse", getIsBreedingUse()) + .append("pregnancyCheck", getPregnancyCheck()) + .append("totalMatedEwes", getTotalMatedEwes()) + .append("naturalPregnancyCheckEwes", getNaturalPregnancyCheckEwes()) + .append("naturalConceptionRate", getNaturalConceptionRate()) + .append("artificialPregnancyCheckEwes", getArtificialPregnancyCheckEwes()) + .append("artificialConceptionRate", getArtificialConceptionRate()) + .append("ramMotherMilkVolume", getRamMotherMilkVolume()) + .append("milkProductionEbv", getMilkProductionEbv()) + .append("accuracy", getAccuracy()) + .append("informationCount", getInformationCount()) + .append("isPaternityTested", getIsPaternityTested()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("isDelete", getIsDelete()) + .toString(); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java new file mode 100644 index 0000000..bb6eaa2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java @@ -0,0 +1,109 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; +import com.zhyc.module.base.domain.BreedRamFile; + +/** + * 种公羊档案Mapper接口 + * + * @author zhyc + * @date 2025-07-29 + */ +public interface BreedRamFileMapper +{ + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileById(Long id); + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int insertBreedRamFile(BreedRamFile breedRamFile); + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int updateBreedRamFile(BreedRamFile breedRamFile); + + /** + * 删除种公羊档案 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + public int deleteBreedRamFileById(Long id); + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBreedRamFileByIds(Long[] ids); + + /** + * 根据普通耳号查询种公羊档案 + * + * @param ordinaryEarNumber 普通耳号 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileByOrdinaryEarNumber(String ordinaryEarNumber); + + /** + * 根据电子耳号查询种公羊档案 + * + * @param electronicTags 电子耳号 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileByElectronicTags(String electronicTags); + + /** + * 根据牧场ID查询种公羊档案列表 + * + * @param ranchId 牧场ID + * @return 种公羊档案集合 + */ + public List selectBreedRamFileListByRanchId(Long ranchId); + + /** + * 根据羊舍ID查询种公羊档案列表 + * + * @param sheepfoldId 羊舍ID + * @return 种公羊档案集合 + */ + public List selectBreedRamFileListBySheepfoldId(Long sheepfoldId); + + /** + * 查询核心羊群种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectCoreFlockBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 查询种用种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedingUseBreedRamFileList(BreedRamFile breedRamFile); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java new file mode 100644 index 0000000..847f3b0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.base.service; + +import java.util.List; +import com.zhyc.module.base.domain.BreedRamFile; + +/** + * 种公羊档案Service接口 + * + * @author zhyc + * @date 2025-07-29 + */ +public interface IBreedRamFileService +{ + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileById(Long id); + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int insertBreedRamFile(BreedRamFile breedRamFile); + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int updateBreedRamFile(BreedRamFile breedRamFile); + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的种公羊档案主键集合 + * @return 结果 + */ + public int deleteBreedRamFileByIds(Long[] ids); + + /** + * 删除种公羊档案信息 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + public int deleteBreedRamFileById(Long id); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java new file mode 100644 index 0000000..7e7d8fe --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java @@ -0,0 +1,96 @@ +package com.zhyc.module.base.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.base.mapper.BreedRamFileMapper; +import com.zhyc.module.base.domain.BreedRamFile; +import com.zhyc.module.base.service.IBreedRamFileService; + +/** + * 种公羊档案Service业务层处理 + * + * @author zhyc + * @date 2025-07-29 + */ +@Service +public class BreedRamFileServiceImpl implements IBreedRamFileService +{ + @Autowired + private BreedRamFileMapper breedRamFileMapper; + + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + @Override + public BreedRamFile selectBreedRamFileById(Long id) + { + return breedRamFileMapper.selectBreedRamFileById(id); + } + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案 + */ + @Override + public List selectBreedRamFileList(BreedRamFile breedRamFile) + { + return breedRamFileMapper.selectBreedRamFileList(breedRamFile); + } + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + @Override + public int insertBreedRamFile(BreedRamFile breedRamFile) + { + breedRamFile.setCreateTime(DateUtils.getNowDate()); + return breedRamFileMapper.insertBreedRamFile(breedRamFile); + } + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + @Override + public int updateBreedRamFile(BreedRamFile breedRamFile) + { + breedRamFile.setUpdateTime(DateUtils.getNowDate()); + return breedRamFileMapper.updateBreedRamFile(breedRamFile); + } + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的种公羊档案主键 + * @return 结果 + */ + @Override + public int deleteBreedRamFileByIds(Long[] ids) + { + return breedRamFileMapper.deleteBreedRamFileByIds(ids); + } + + /** + * 删除种公羊档案信息 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + @Override + public int deleteBreedRamFileById(Long id) + { + return breedRamFileMapper.deleteBreedRamFileById(id); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/base/BreedRamFileMapper.xml b/zhyc-module/src/main/resources/mapper/base/BreedRamFileMapper.xml new file mode 100644 index 0000000..6f666ee --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/base/BreedRamFileMapper.xml @@ -0,0 +1,417 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, ordinary_ear_number, ranch_id, ranch_name, sheepfold_id, sheepfold_name, electronic_tags, variety_id, variety, sheep_category, current_status, birthday, dynamic_info, month_age, birth_weight, weaning_date, weaning_day_age, weaning_weight, weaning_daily_gain, post_weaning_daily_gain, current_weight, current_weight_date, activity_level, sexual_status, scrotum_circumference, sperm_collection_time, sperm_volume, sperm_vitality, sperm_density, sperm_quality, breeding_status, last_plan_time, current_plan_time, comment, protein_rate_ebv, milk_fat_rate_ebv, scs_ebv, growth_performance_ebv, resistance_ebv, reproduction_performance_ebv, body_type_ebv, comprehensive_breeding_value, father_number, mother_number, grandfather_number, grandmother_number, maternal_grandfather_number, maternal_grandmother_number, is_core_flock, is_breeding_use, pregnancy_check, total_mated_ewes, natural_pregnancy_check_ewes, natural_conception_rate, artificial_pregnancy_check_ewes, artificial_conception_rate, ram_mother_milk_volume, milk_production_ebv, accuracy, information_count, is_paternity_tested, create_by, create_time, update_by, update_time, is_delete from breed_ram_file + + + + + + + + + + + + + + + + + + + + insert into breed_ram_file + + ordinary_ear_number, + ranch_id, + ranch_name, + sheepfold_id, + sheepfold_name, + electronic_tags, + variety_id, + variety, + sheep_category, + current_status, + birthday, + dynamic_info, + month_age, + birth_weight, + weaning_date, + weaning_day_age, + weaning_weight, + weaning_daily_gain, + post_weaning_daily_gain, + current_weight, + current_weight_date, + activity_level, + sexual_status, + scrotum_circumference, + sperm_collection_time, + sperm_volume, + sperm_vitality, + sperm_density, + sperm_quality, + breeding_status, + last_plan_time, + current_plan_time, + comment, + protein_rate_ebv, + milk_fat_rate_ebv, + scs_ebv, + growth_performance_ebv, + resistance_ebv, + reproduction_performance_ebv, + body_type_ebv, + comprehensive_breeding_value, + father_number, + mother_number, + grandfather_number, + grandmother_number, + maternal_grandfather_number, + maternal_grandmother_number, + is_core_flock, + is_breeding_use, + pregnancy_check, + total_mated_ewes, + natural_pregnancy_check_ewes, + natural_conception_rate, + artificial_pregnancy_check_ewes, + artificial_conception_rate, + ram_mother_milk_volume, + milk_production_ebv, + accuracy, + information_count, + is_paternity_tested, + create_by, + create_time, + update_by, + update_time, + is_delete, + + + #{ordinaryEarNumber}, + #{ranchId}, + #{ranchName}, + #{sheepfoldId}, + #{sheepfoldName}, + #{electronicTags}, + #{varietyId}, + #{variety}, + #{sheepCategory}, + #{currentStatus}, + #{birthday}, + #{dynamicInfo}, + #{monthAge}, + #{birthWeight}, + #{weaningDate}, + #{weaningDayAge}, + #{weaningWeight}, + #{weaningDailyGain}, + #{postWeaningDailyGain}, + #{currentWeight}, + #{currentWeightDate}, + #{activityLevel}, + #{sexualStatus}, + #{scrotumCircumference}, + #{spermCollectionTime}, + #{spermVolume}, + #{spermVitality}, + #{spermDensity}, + #{spermQuality}, + #{breedingStatus}, + #{lastPlanTime}, + #{currentPlanTime}, + #{remark}, + #{proteinRateEbv}, + #{milkFatRateEbv}, + #{scsEbv}, + #{growthPerformanceEbv}, + #{resistanceEbv}, + #{reproductionPerformanceEbv}, + #{bodyTypeEbv}, + #{comprehensiveBreedingValue}, + #{fatherNumber}, + #{motherNumber}, + #{grandfatherNumber}, + #{grandmotherNumber}, + #{maternalGrandfatherNumber}, + #{maternalGrandmotherNumber}, + #{isCoreFlock}, + #{isBreedingUse}, + #{pregnancyCheck}, + #{totalMatedEwes}, + #{naturalPregnancyCheckEwes}, + #{naturalConceptionRate}, + #{artificialPregnancyCheckEwes}, + #{artificialConceptionRate}, + #{ramMotherMilkVolume}, + #{milkProductionEbv}, + #{accuracy}, + #{informationCount}, + #{isPaternityTested}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{isDelete}, + + + + + update breed_ram_file + + ordinary_ear_number = #{ordinaryEarNumber}, + ranch_id = #{ranchId}, + ranch_name = #{ranchName}, + sheepfold_id = #{sheepfoldId}, + sheepfold_name = #{sheepfoldName}, + electronic_tags = #{electronicTags}, + variety_id = #{varietyId}, + variety = #{variety}, + sheep_category = #{sheepCategory}, + current_status = #{currentStatus}, + birthday = #{birthday}, + dynamic_info = #{dynamicInfo}, + month_age = #{monthAge}, + birth_weight = #{birthWeight}, + weaning_date = #{weaningDate}, + weaning_day_age = #{weaningDayAge}, + weaning_weight = #{weaningWeight}, + weaning_daily_gain = #{weaningDailyGain}, + post_weaning_daily_gain = #{postWeaningDailyGain}, + current_weight = #{currentWeight}, + current_weight_date = #{currentWeightDate}, + activity_level = #{activityLevel}, + sexual_status = #{sexualStatus}, + scrotum_circumference = #{scrotumCircumference}, + sperm_collection_time = #{spermCollectionTime}, + sperm_volume = #{spermVolume}, + sperm_vitality = #{spermVitality}, + sperm_density = #{spermDensity}, + sperm_quality = #{spermQuality}, + breeding_status = #{breedingStatus}, + last_plan_time = #{lastPlanTime}, + current_plan_time = #{currentPlanTime}, + comment = #{remark}, + protein_rate_ebv = #{proteinRateEbv}, + milk_fat_rate_ebv = #{milkFatRateEbv}, + scs_ebv = #{scsEbv}, + growth_performance_ebv = #{growthPerformanceEbv}, + resistance_ebv = #{resistanceEbv}, + reproduction_performance_ebv = #{reproductionPerformanceEbv}, + body_type_ebv = #{bodyTypeEbv}, + comprehensive_breeding_value = #{comprehensiveBreedingValue}, + father_number = #{fatherNumber}, + mother_number = #{motherNumber}, + grandfather_number = #{grandfatherNumber}, + grandmother_number = #{grandmotherNumber}, + maternal_grandfather_number = #{maternalGrandfatherNumber}, + maternal_grandmother_number = #{maternalGrandmotherNumber}, + is_core_flock = #{isCoreFlock}, + is_breeding_use = #{isBreedingUse}, + pregnancy_check = #{pregnancyCheck}, + total_mated_ewes = #{totalMatedEwes}, + natural_pregnancy_check_ewes = #{naturalPregnancyCheckEwes}, + natural_conception_rate = #{naturalConceptionRate}, + artificial_pregnancy_check_ewes = #{artificialPregnancyCheckEwes}, + artificial_conception_rate = #{artificialConceptionRate}, + ram_mother_milk_volume = #{ramMotherMilkVolume}, + milk_production_ebv = #{milkProductionEbv}, + accuracy = #{accuracy}, + information_count = #{informationCount}, + is_paternity_tested = #{isPaternityTested}, + update_by = #{updateBy}, + update_time = #{updateTime}, + is_delete = #{isDelete}, + + where id = #{id} + + + + delete from breed_ram_file where id = #{id} + + + + delete from breed_ram_file where id in + + #{id} + + + + \ No newline at end of file From 1898417264982e1d09a7837254101199d09869ef Mon Sep 17 00:00:00 2001 From: HashMap Date: Sat, 2 Aug 2025 00:14:48 +0800 Subject: [PATCH 02/23] =?UTF-8?q?feat(module=20mapper):=20=E6=B3=A8?= =?UTF-8?q?=E5=86=8C"=E9=A5=B2=E5=96=82=E7=AE=A1=E7=90=86"=E7=BB=84?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 注册饲喂管理组件源码及其Mapper --- .../controller/SgFeedDetailsController.java | 104 ++++++++ .../feed/controller/SgFeedInfoController.java | 104 ++++++++ .../controller/SgFeedRatioController.java | 104 ++++++++ .../feed/controller/SgFodderController.java | 104 ++++++++ .../module/feed/domain/SgFeedDetails.java | 82 ++++++ .../zhyc/module/feed/domain/SgFeedInfo.java | 252 ++++++++++++++++++ .../zhyc/module/feed/domain/SgFeedRatio.java | 82 ++++++ .../com/zhyc/module/feed/domain/SgFodder.java | 67 +++++ .../feed/mapper/SgFeedDetailsMapper.java | 61 +++++ .../module/feed/mapper/SgFeedInfoMapper.java | 61 +++++ .../module/feed/mapper/SgFeedRatioMapper.java | 61 +++++ .../module/feed/mapper/SgFodderMapper.java | 61 +++++ .../feed/service/ISgFeedDetailsService.java | 61 +++++ .../feed/service/ISgFeedInfoService.java | 61 +++++ .../feed/service/ISgFeedRatioService.java | 61 +++++ .../module/feed/service/ISgFodderService.java | 61 +++++ .../impl/SgFeedDetailsServiceImpl.java | 93 +++++++ .../service/impl/SgFeedInfoServiceImpl.java | 95 +++++++ .../service/impl/SgFeedRatioServiceImpl.java | 93 +++++++ .../service/impl/SgFodderServiceImpl.java | 93 +++++++ .../mapper/feed/SgFeedDetailsMapper.xml | 66 +++++ .../mapper/feed/SgFeedInfoMapper.xml | 129 +++++++++ .../mapper/feed/SgFeedRatioMapper.xml | 66 +++++ .../resources/mapper/feed/SgFodderMapper.xml | 61 +++++ 24 files changed, 2083 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml 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 new file mode 100644 index 0000000..9ef4f87 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java @@ -0,0 +1,104 @@ +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 new file mode 100644 index 0000000..8673f0c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java @@ -0,0 +1,104 @@ +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/SgFeedRatioController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java new file mode 100644 index 0000000..81ddd36 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java @@ -0,0 +1,104 @@ +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 new file mode 100644 index 0000000..94b2161 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java @@ -0,0 +1,104 @@ +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/domain/SgFeedDetails.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java new file mode 100644 index 0000000..a1404e2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java @@ -0,0 +1,82 @@ +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 new file mode 100644 index 0000000..37ed315 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java @@ -0,0 +1,252 @@ +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/SgFeedRatio.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java new file mode 100644 index 0000000..5e3834e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java @@ -0,0 +1,82 @@ +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 new file mode 100644 index 0000000..3b00b2d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java @@ -0,0 +1,67 @@ +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 new file mode 100644 index 0000000..2817118 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..11ea688 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java @@ -0,0 +1,61 @@ +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/SgFeedRatioMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java new file mode 100644 index 0000000..5dbd1ce --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..c916e24 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..ac695f8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..8d412b8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java @@ -0,0 +1,61 @@ +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/ISgFeedRatioService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java new file mode 100644 index 0000000..804130f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..3ddac8f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java @@ -0,0 +1,61 @@ +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 new file mode 100644 index 0000000..2f58d33 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java @@ -0,0 +1,93 @@ +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 new file mode 100644 index 0000000..ea2f711 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java @@ -0,0 +1,95 @@ +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/SgFeedRatioServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java new file mode 100644 index 0000000..ee15ab0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java @@ -0,0 +1,93 @@ +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 new file mode 100644 index 0000000..523fc3d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java @@ -0,0 +1,93 @@ +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/resources/mapper/feed/SgFeedDetailsMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml new file mode 100644 index 0000000..0966729 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + 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 new file mode 100644 index 0000000..536e136 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + 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/SgFeedRatioMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml new file mode 100644 index 0000000..2ebb1fd --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + 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 new file mode 100644 index 0000000..8f4638b --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + 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 From 4f48b75b433e46735656f5afc788fdd97495db1e Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Mon, 4 Aug 2025 09:17:14 +0800 Subject: [PATCH 03/23] =?UTF-8?q?=E5=88=A4=E6=96=AD=E7=BE=8A=E5=8F=AA?= =?UTF-8?q?=E7=9A=84=E5=88=A0=E9=99=A4/=E6=9C=AA=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/base/mapper/BasSheepMapper.java | 2 ++ .../service/impl/ScAddSheepServiceImpl.java | 17 ++++++++----- .../resources/mapper/base/BasSheepMapper.xml | 25 +++++++++++++------ 3 files changed, 31 insertions(+), 13 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java index 1b16800..4baaf89 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java @@ -78,4 +78,6 @@ public interface BasSheepMapper //用于校验改耳号部分新管理/电子耳号 int existsByManageTag(@Param("tag") String tag); int existsByElectronicTag(@Param("tag") String tag); + + } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java index 278490e..b6ed6b4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java @@ -36,9 +36,9 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { @Override @Transactional(rollbackFor = Exception.class) public boolean insertScAddSheep(ScAddSheep scAddSheep) { - ScAddSheep exist = scAddSheepMapper.selectByEarNumber(scAddSheep.getEarNumber()); - if (exist != null) { - throw new ServiceException("添加失败,耳号重复"); + BasSheep existSheep =basSheepService.selectBasSheepByManageTags(scAddSheep.getEarNumber().trim()); + if (existSheep != null) { + throw new ServiceException("添加失败,耳号已存在"); } boolean ok = scAddSheepMapper.insert(scAddSheep) > 0; @@ -101,6 +101,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { for (int i = 0; i < list.size(); i++) { ScAddSheep sheep = list.get(i); try { + // 处理品种名称转换为品种ID if (StringUtils.isNotBlank(sheep.getVarietyName())) { Long varietyId = basSheepVarietyMapper.selectIdByName(sheep.getVarietyName()); if (varietyId == null) { @@ -121,6 +122,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { continue; } + // 处理羊舍名称转换为羊舍ID if (StringUtils.isNotBlank(sheep.getSheepfoldNameExcel())) { DaSheepfold param = new DaSheepfold(); param.setSheepfoldName(sheep.getSheepfoldNameExcel()); @@ -137,6 +139,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { sheep.setSheepfold(foldList.get(0).getId().intValue()); } + // 校验耳号是否为空 if (StringUtils.isBlank(sheep.getEarNumber())) { failure++; failureMsg.append("
第") @@ -145,17 +148,19 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { continue; } - ScAddSheep exist = scAddSheepMapper.selectByEarNumber(sheep.getEarNumber()); - if (exist != null) { + // 核心校验:判断羊只基本信息表中是否存在未删除的同名耳号 + BasSheep existSheep = basSheepService.selectBasSheepByManageTags(sheep.getEarNumber().trim()); + if (existSheep != null) { failure++; failureMsg.append("
第") .append(i + 1) - .append("行:耳号已存在【") + .append("行:耳号已存在且未删除【") .append(sheep.getEarNumber()) .append("】"); continue; } + // 执行导入(新增或更新) if (updateSupport && sheep.getId() != null) { sheep.setUpdateBy(operName); updateScAddSheep(sheep); diff --git a/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml b/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml index c39e3a5..f42546a 100644 --- a/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml +++ b/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml @@ -128,7 +128,8 @@ and source_date = #{sourceDate} and source_ranch_id = #{sourceRanchId} and comment = #{comment} - and is_delete = #{isDelete} + and is_delete = 0 + and is_delete = #{isDelete} @@ -151,20 +152,24 @@ bv.variety AS varietyName FROM bas_sheep s LEFT JOIN bas_sheep_variety bv ON s.variety_id = bv.id - WHERE s.manage_tags = #{manageTags} LIMIT 1 + WHERE s.manage_tags = #{manageTags} + AND s.is_delete = 0 LIMIT 1 - SELECT COUNT(*) FROM bas_sheep WHERE manage_tags = #{tag} AND is_delete = 0 + SELECT COUNT(*) + FROM bas_sheep + WHERE manage_tags = #{tag} + AND s.is_delete = 0 \ No newline at end of file From 9f9eef5f9866cd35c5d9f40f3a6ac79cd5a3ebb9 Mon Sep 17 00:00:00 2001 From: zyk Date: Wed, 6 Aug 2025 15:37:17 +0800 Subject: [PATCH 04/23] =?UTF-8?q?=E6=AD=BB=E4=BA=A1=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScSheepDeathController.java | 120 ++++++ .../produce/breed/domain/ScSheepDeath.java | 356 ++++++++++++++++++ .../breed/mapper/ScSheepDeathMapper.java | 70 ++++ .../breed/service/IScSheepDeathService.java | 70 ++++ .../service/impl/ScSheepDeathServiceImpl.java | 166 ++++++++ .../mapper/sheep_death/ScSheepDeathMapper.xml | 134 +++++++ 6 files changed, 916 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java new file mode 100644 index 0000000..cbd1964 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java @@ -0,0 +1,120 @@ +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; +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.produce.breed.domain.ScSheepDeath; +import com.zhyc.module.produce.breed.service.IScSheepDeathService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 羊只死淘记录Controller + * + * @author ruoyi + * @date 2025-08-06 + */ +@RestController +@RequestMapping("/sheep_death/death") +public class ScSheepDeathController extends BaseController +{ + @Autowired + private IScSheepDeathService scSheepDeathService; + + /** + * 查询羊只死淘记录列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:list')") + @GetMapping("/list") + public TableDataInfo list(ScSheepDeath scSheepDeath) + { + startPage(); + List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); + return getDataTable(list); + } + + /** + * 根据管理耳号查询羊只信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") + @GetMapping("/sheepInfo/{manageTags}") + public AjaxResult getSheepInfo(@PathVariable("manageTags") String manageTags) + { + Map sheepInfo = scSheepDeathService.selectSheepFileByManageTags(manageTags); + if (sheepInfo != null) { + return success(sheepInfo); + } else { + return error("未找到该耳号对应的羊只信息"); + } + } + + /** + * 导出羊只死淘记录列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:export')") + @Log(title = "羊只死淘记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScSheepDeath scSheepDeath) + { + List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); + ExcelUtil util = new ExcelUtil(ScSheepDeath.class); + util.exportExcel(response, list, "羊只死淘记录数据"); + } + + /** + * 获取羊只死淘记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scSheepDeathService.selectScSheepDeathById(id)); + } + + /** + * 新增羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:add')") + @Log(title = "羊只死淘记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScSheepDeath scSheepDeath) + { + return toAjax(scSheepDeathService.insertScSheepDeath(scSheepDeath)); + } + + /** + * 修改羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:edit')") + @Log(title = "羊只死淘记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScSheepDeath scSheepDeath) + { + return toAjax(scSheepDeathService.updateScSheepDeath(scSheepDeath)); + } + + /** + * 删除羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:remove')") + @Log(title = "羊只死淘记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scSheepDeathService.deleteScSheepDeathByIds(ids)); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java new file mode 100644 index 0000000..52f04dd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java @@ -0,0 +1,356 @@ +package com.zhyc.module.produce.breed.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; + +/** + * 羊只死淘记录对象 sc_sheep_death + * + * @author ruoyi + * @date 2025-08-06 + */ +public class ScSheepDeath extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 管理耳号 */ + @Excel(name = "管理耳号") + private String manageTags; + + /** 事件类型 */ + @Excel(name = "事件类型") + private String eventType; + + /** 死亡日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "死亡日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date deathDate; + + /** 疾病类型ID */ + @Excel(name = "疾病类型ID") + private Long diseaseTypeId; + + /** 疾病子类型ID */ + @Excel(name = "疾病子类型ID") + private Long diseaseSubtypeId; + + /** 死淘去向 */ + @Excel(name = "死淘去向") + private String disposalDirection; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 处理人 */ + @Excel(name = "处理人") + private String handler; + + /** 班组 */ + @Excel(name = "班组") + private String workGroup; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 是否删除(0:未删除 1:已删除) */ + @Excel(name = "是否删除(0:未删除 1:已删除)") + private Long isDelete; + + // 以下字段仅用于前端显示,不存储到数据库 + /** 品种 */ + private String variety; + + /** 死亡时羊只类别 */ + private String sheepType; + + /** 性别 */ + private Integer gender; + + /** 日龄 */ + private Long dayAge; + + /** 胎次 */ + private Integer parity; + + /** 羊舍 */ + private String sheepfoldName; + + /** 繁育状态 */ + private String breedStatus; + + /** 死亡时产后天数 */ + private Integer postLambingDay; + + /** 死亡时泌乳天数 */ + private Integer lactationDay; + + /** 死亡时怀孕天数 */ + private Integer gestationDay; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setSheepId(Long sheepId) + { + this.sheepId = sheepId; + } + + public Long getSheepId() + { + return sheepId; + } + + public void setManageTags(String manageTags) + { + this.manageTags = manageTags; + } + + public String getManageTags() + { + return manageTags; + } + + public void setEventType(String eventType) + { + this.eventType = eventType; + } + + public String getEventType() + { + return eventType; + } + + public void setDeathDate(Date deathDate) + { + this.deathDate = deathDate; + } + + public Date getDeathDate() + { + return deathDate; + } + + public void setDiseaseTypeId(Long diseaseTypeId) + { + this.diseaseTypeId = diseaseTypeId; + } + + public Long getDiseaseTypeId() + { + return diseaseTypeId; + } + + public void setDiseaseSubtypeId(Long diseaseSubtypeId) + { + this.diseaseSubtypeId = diseaseSubtypeId; + } + + public Long getDiseaseSubtypeId() + { + return diseaseSubtypeId; + } + + public void setDisposalDirection(String disposalDirection) + { + this.disposalDirection = disposalDirection; + } + + public String getDisposalDirection() + { + return disposalDirection; + } + + public void setTechnician(String technician) + { + this.technician = technician; + } + + public String getTechnician() + { + return technician; + } + + public void setHandler(String handler) + { + this.handler = handler; + } + + public String getHandler() + { + return handler; + } + + public void setWorkGroup(String workGroup) + { + this.workGroup = workGroup; + } + + public String getWorkGroup() + { + return workGroup; + } + + public void setComment(String comment) + { + this.comment = comment; + } + + public String getComment() + { + return comment; + } + + public void setIsDelete(Long isDelete) + { + this.isDelete = isDelete; + } + + public Long getIsDelete() + { + return isDelete; + } + + // 以下为仅用于显示的字段的getter/setter + public void setVariety(String variety) + { + this.variety = variety; + } + + public String getVariety() + { + return variety; + } + + public void setSheepType(String sheepType) + { + this.sheepType = sheepType; + } + + public String getSheepType() + { + return sheepType; + } + + public void setGender(Integer gender) + { + this.gender = gender; + } + + public Integer getGender() + { + return gender; + } + + public void setDayAge(Long dayAge) + { + this.dayAge = dayAge; + } + + public Long getDayAge() + { + return dayAge; + } + + public void setParity(Integer parity) + { + this.parity = parity; + } + + public Integer getParity() + { + return parity; + } + + public void setSheepfoldName(String sheepfoldName) + { + this.sheepfoldName = sheepfoldName; + } + + public String getSheepfoldName() + { + return sheepfoldName; + } + + public void setBreedStatus(String breedStatus) + { + this.breedStatus = breedStatus; + } + + public String getBreedStatus() + { + return breedStatus; + } + + public void setPostLambingDay(Integer postLambingDay) + { + this.postLambingDay = postLambingDay; + } + + public Integer getPostLambingDay() + { + return postLambingDay; + } + + public void setLactationDay(Integer lactationDay) + { + this.lactationDay = lactationDay; + } + + public Integer getLactationDay() + { + return lactationDay; + } + + public void setGestationDay(Integer gestationDay) + { + this.gestationDay = gestationDay; + } + + public Integer getGestationDay() + { + return gestationDay; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("sheepId", getSheepId()) + .append("manageTags", getManageTags()) + .append("eventType", getEventType()) + .append("deathDate", getDeathDate()) + .append("diseaseTypeId", getDiseaseTypeId()) + .append("diseaseSubtypeId", getDiseaseSubtypeId()) + .append("disposalDirection", getDisposalDirection()) + .append("technician", getTechnician()) + .append("handler", getHandler()) + .append("workGroup", getWorkGroup()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("comment", getComment()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("isDelete", getIsDelete()) + .toString(); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java new file mode 100644 index 0000000..980d20d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; + +/** + * 羊只死淘记录Mapper接口 + * + * @author ruoyi + * @date 2025-08-06 + */ +public interface ScSheepDeathMapper +{ + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + public ScSheepDeath selectScSheepDeathById(Long id); + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录集合 + */ + public List selectScSheepDeathList(ScSheepDeath scSheepDeath); + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map selectSheepFileByManageTags(String manageTags); + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int insertScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int updateScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 删除羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + public int deleteScSheepDeathById(Long id); + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScSheepDeathByIds(Long[] ids); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java new file mode 100644 index 0000000..e1100d5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; + +/** + * 羊只死淘记录Service接口 + * + * @author ruoyi + * @date 2025-08-06 + */ +public interface IScSheepDeathService +{ + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + public ScSheepDeath selectScSheepDeathById(Long id); + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录集合 + */ + public List selectScSheepDeathList(ScSheepDeath scSheepDeath); + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map selectSheepFileByManageTags(String manageTags); + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int insertScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int updateScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的羊只死淘记录主键集合 + * @return 结果 + */ + public int deleteScSheepDeathByIds(Long[] ids); + + /** + * 删除羊只死淘记录信息 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + public int deleteScSheepDeathById(Long id); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java new file mode 100644 index 0000000..12e7afd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java @@ -0,0 +1,166 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import java.util.Map; +import com.zhyc.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.mapper.ScSheepDeathMapper; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; +import com.zhyc.module.produce.breed.service.IScSheepDeathService; + +/** + * 羊只死淘记录Service业务层处理 + * + * @author ruoyi + * @date 2025-08-06 + */ +@Service +public class ScSheepDeathServiceImpl implements IScSheepDeathService +{ + @Autowired + private ScSheepDeathMapper scSheepDeathMapper; + + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + @Override + public ScSheepDeath selectScSheepDeathById(Long id) + { + ScSheepDeath scSheepDeath = scSheepDeathMapper.selectScSheepDeathById(id); + // 查询时也需要填充显示字段 + if (scSheepDeath != null && scSheepDeath.getManageTags() != null) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); + scSheepDeath.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); + scSheepDeath.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); + scSheepDeath.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); + scSheepDeath.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); + scSheepDeath.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); + scSheepDeath.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); + scSheepDeath.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); + scSheepDeath.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); + scSheepDeath.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); + } + } + return scSheepDeath; + } + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录 + */ + @Override + public List selectScSheepDeathList(ScSheepDeath scSheepDeath) + { + List list = scSheepDeathMapper.selectScSheepDeathList(scSheepDeath); + // 为列表中的每条记录填充显示字段 + for (ScSheepDeath death : list) { + if (death.getManageTags() != null) { + Map sheepInfo = selectSheepFileByManageTags(death.getManageTags()); + if (sheepInfo != null) { + death.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); + death.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); + death.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); + death.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); + death.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); + death.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); + death.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); + death.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); + death.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); + death.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); + } + } + } + return list; + } + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + @Override + public Map selectSheepFileByManageTags(String manageTags) + { + return scSheepDeathMapper.selectSheepFileByManageTags(manageTags); + } + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + @Override + public int insertScSheepDeath(ScSheepDeath scSheepDeath) + { + // 设置事件类型默认为"死亡" + if (scSheepDeath.getEventType() == null || scSheepDeath.getEventType().isEmpty()) { + scSheepDeath.setEventType("死亡"); + } + + // 如果有管理耳号,查询并设置羊只ID + if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); + } + } + + scSheepDeath.setCreateTime(DateUtils.getNowDate()); + return scSheepDeathMapper.insertScSheepDeath(scSheepDeath); + } + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + @Override + public int updateScSheepDeath(ScSheepDeath scSheepDeath) + { + // 如果管理耳号发生变化,重新查询并设置羊只ID + if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); + } + } + + scSheepDeath.setUpdateTime(DateUtils.getNowDate()); + return scSheepDeathMapper.updateScSheepDeath(scSheepDeath); + } + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的羊只死淘记录主键 + * @return 结果 + */ + @Override + public int deleteScSheepDeathByIds(Long[] ids) + { + return scSheepDeathMapper.deleteScSheepDeathByIds(ids); + } + + /** + * 删除羊只死淘记录信息 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + @Override + public int deleteScSheepDeathById(Long id) + { + return scSheepDeathMapper.deleteScSheepDeathById(id); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml b/zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml new file mode 100644 index 0000000..baedeeb --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/sheep_death/ScSheepDeathMapper.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select id, sheep_id, manage_tags, event_type, death_date, disease_type_id, disease_subtype_id, disposal_direction, technician, handler, work_group, create_by, create_time, comment, update_by, update_time, is_delete from sc_sheep_death + + + + + + + + + + + insert into sc_sheep_death + + sheep_id, + manage_tags, + event_type, + death_date, + disease_type_id, + disease_subtype_id, + disposal_direction, + technician, + handler, + work_group, + create_by, + create_time, + comment, + update_by, + update_time, + is_delete, + + + #{sheepId}, + #{manageTags}, + #{eventType}, + #{deathDate}, + #{diseaseTypeId}, + #{diseaseSubtypeId}, + #{disposalDirection}, + #{technician}, + #{handler}, + #{workGroup}, + #{createBy}, + #{createTime}, + #{comment}, + #{updateBy}, + #{updateTime}, + #{isDelete}, + + + + + update sc_sheep_death + + sheep_id = #{sheepId}, + manage_tags = #{manageTags}, + event_type = #{eventType}, + death_date = #{deathDate}, + disease_type_id = #{diseaseTypeId}, + disease_subtype_id = #{diseaseSubtypeId}, + disposal_direction = #{disposalDirection}, + technician = #{technician}, + handler = #{handler}, + work_group = #{workGroup}, + create_by = #{createBy}, + create_time = #{createTime}, + comment = #{comment}, + update_by = #{updateBy}, + update_time = #{updateTime}, + is_delete = #{isDelete}, + + where id = #{id} + + + + delete from sc_sheep_death where id = #{id} + + + + delete from sc_sheep_death where id in + + #{id} + + + \ No newline at end of file From 6fb4762af9e4bda9ccebf9cc7d0482d4cd18c992 Mon Sep 17 00:00:00 2001 From: HashMap Date: Wed, 6 Aug 2025 17:06:48 +0800 Subject: [PATCH 05/23] =?UTF-8?q?feat(module):=20=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加入库管理模块,实现批量导入功能 --- .../WzMaterialsManagementController.java | 106 +++++++++++ .../stock/controller/WzStockInController.java | 124 ++++++++++++ .../controller/WzStockOutController.java | 106 +++++++++++ .../stock/domain/WzMaterialsManagement.java | 87 +++++++++ .../zhyc/module/stock/domain/WzStockIn.java | 142 ++++++++++++++ .../zhyc/module/stock/domain/WzStockOut.java | 179 ++++++++++++++++++ .../mapper/WzMaterialsManagementMapper.java | 63 ++++++ .../module/stock/mapper/WzStockInMapper.java | 70 +++++++ .../module/stock/mapper/WzStockOutMapper.java | 63 ++++++ .../IWzMaterialsManagementService.java | 61 ++++++ .../stock/service/IWzStockInService.java | 73 +++++++ .../stock/service/IWzStockOutService.java | 61 ++++++ .../WzMaterialsManagementServiceImpl.java | 96 ++++++++++ .../service/impl/WzStockInServiceImpl.java | 137 ++++++++++++++ .../service/impl/WzStockOutServiceImpl.java | 96 ++++++++++ .../stock/WzMaterialsManagementMapper.xml | 93 +++++++++ .../mapper/stock/WzStockInMapper.xml | 147 ++++++++++++++ .../mapper/stock/WzStockOutMapper.xml | 168 ++++++++++++++++ 18 files changed, 1872 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/stock/WzStockInMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java new file mode 100644 index 0000000..db687da --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java @@ -0,0 +1,106 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzMaterialsManagement; +import com.zhyc.module.stock.service.IWzMaterialsManagementService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 物资管理Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/management") +public class WzMaterialsManagementController extends BaseController +{ + private final IWzMaterialsManagementService wzMaterialsManagementService; + + public WzMaterialsManagementController(IWzMaterialsManagementService wzMaterialsManagementService) { + this.wzMaterialsManagementService = wzMaterialsManagementService; + } + + /** + * 查询物资管理列表 + */ + @PreAuthorize("@ss.hasPermi('stock:management:list')") + @GetMapping("/list") + public TableDataInfo list(WzMaterialsManagement wzMaterialsManagement) + { + startPage(); + List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); + return getDataTable(list); + } + + /** + * 导出物资管理列表 + */ + @PreAuthorize("@ss.hasPermi('stock:management:export')") + @Log(title = "物资管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzMaterialsManagement wzMaterialsManagement) + { + List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); + ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); + util.exportExcel(response, list, "物资管理数据"); + } + + /** + * 获取物资管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:management:query')") + @GetMapping(value = "/{materialManagementCode}") + public AjaxResult getInfo(@PathVariable("materialManagementCode") Long materialManagementCode) + { + return success(wzMaterialsManagementService.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode)); + } + + /** + * 新增物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:add')") + @Log(title = "物资管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzMaterialsManagement wzMaterialsManagement) + { + return toAjax(wzMaterialsManagementService.insertWzMaterialsManagement(wzMaterialsManagement)); + } + + /** + * 修改物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:edit')") + @Log(title = "物资管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzMaterialsManagement wzMaterialsManagement) + { + return toAjax(wzMaterialsManagementService.updateWzMaterialsManagement(wzMaterialsManagement)); + } + + /** + * 删除物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:remove')") + @Log(title = "物资管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{materialManagementCodes}") + public AjaxResult remove(@PathVariable Long[] materialManagementCodes) + { + return toAjax(wzMaterialsManagementService.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java new file mode 100644 index 0000000..b14aa86 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java @@ -0,0 +1,124 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.common.core.domain.entity.SysUser; +import com.zhyc.module.stock.service.impl.WzStockInServiceImpl; +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzStockIn; +import com.zhyc.module.stock.service.IWzStockInService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; + +/** + * 入库记录Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/in") +public class WzStockInController extends BaseController +{ + private final IWzStockInService wzStockInService; + + public WzStockInController(IWzStockInService wzStockInService) { + this.wzStockInService = wzStockInService; + } + + /** + * 查询入库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:in:list')") + @GetMapping("/list") + public TableDataInfo list(WzStockIn wzStockIn) + { + startPage(); + List list = wzStockInService.selectWzStockInList(wzStockIn); + return getDataTable(list); + } + + /** + * 导出入库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:in:export')") + @Log(title = "入库记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzStockIn wzStockIn) + { + List list = wzStockInService.selectWzStockInList(wzStockIn); + ExcelUtil util = new ExcelUtil<>(WzStockIn.class); + util.exportExcel(response, list, "入库记录数据"); + } + + /** + * 获取入库记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:in:query')") + @GetMapping(value = "/{stockInCode}") + public AjaxResult getInfo(@PathVariable("stockInCode") Long stockInCode) + { + return success(wzStockInService.selectWzStockInByStockInCode(stockInCode)); + } + + /** + * 新增入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:add')") + @Log(title = "入库记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzStockIn wzStockIn) + { + return toAjax(wzStockInService.insertWzStockIn(wzStockIn)); + } + + /** + * 修改入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:edit')") + @Log(title = "入库记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzStockIn wzStockIn) + { + return toAjax(wzStockInService.updateWzStockIn(wzStockIn)); + } + + /** + * 删除入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:remove')") + @Log(title = "入库记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{stockInCodes}") + public AjaxResult remove(@PathVariable Long[] stockInCodes) + { + return toAjax(wzStockInService.deleteWzStockInByStockInCodes(stockInCodes)); + } + + @Log(title = "用户管理", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:in:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception + { + ExcelUtil util = new ExcelUtil(WzStockIn.class); + List stockInList = util.importExcel(file.getInputStream()); + stockInList.removeIf(wzStockIn -> wzStockIn.getDocDate() == null); + String operName = getUsername(); + String message = wzStockInService.importUser(stockInList, updateSupport, operName); +// String message = "OK We are testing"; + return success(message); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java new file mode 100644 index 0000000..f4b051d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java @@ -0,0 +1,106 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzStockOut; +import com.zhyc.module.stock.service.IWzStockOutService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 出库记录Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/out") +public class WzStockOutController extends BaseController +{ + private final IWzStockOutService wzStockOutService; + + public WzStockOutController(IWzStockOutService wzStockOutService) { + this.wzStockOutService = wzStockOutService; + } + + /** + * 查询出库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:out:list')") + @GetMapping("/list") + public TableDataInfo list(WzStockOut wzStockOut) + { + startPage(); + List list = wzStockOutService.selectWzStockOutList(wzStockOut); + return getDataTable(list); + } + + /** + * 导出出库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:out:export')") + @Log(title = "出库记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzStockOut wzStockOut) + { + List list = wzStockOutService.selectWzStockOutList(wzStockOut); + ExcelUtil util = new ExcelUtil<>(WzStockOut.class); + util.exportExcel(response, list, "出库记录数据"); + } + + /** + * 获取出库记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:out:query')") + @GetMapping(value = "/{stockOutCode}") + public AjaxResult getInfo(@PathVariable("stockOutCode") Long stockOutCode) + { + return success(wzStockOutService.selectWzStockOutByStockOutCode(stockOutCode)); + } + + /** + * 新增出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:add')") + @Log(title = "出库记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzStockOut wzStockOut) + { + return toAjax(wzStockOutService.insertWzStockOut(wzStockOut)); + } + + /** + * 修改出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:edit')") + @Log(title = "出库记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzStockOut wzStockOut) + { + return toAjax(wzStockOutService.updateWzStockOut(wzStockOut)); + } + + /** + * 删除出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:remove')") + @Log(title = "出库记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{stockOutCodes}") + public AjaxResult remove(@PathVariable Long[] stockOutCodes) + { + return toAjax(wzStockOutService.deleteWzStockOutByStockOutCodes(stockOutCodes)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java new file mode 100644 index 0000000..88d3a53 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java @@ -0,0 +1,87 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 物资管理对象 wz_materials_management + * + * @author HashMap + * @date 2025-08-05 + */ +@Setter +@Getter +public class WzMaterialsManagement extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + @Excel(name = "序号") + private Long materialManagementCode; + + /** 存货编码 */ + @Excel(name = "存货编码") + private String materialId; + + /** 存货 */ + @Excel(name = "存货") + private String materialName; + + /** 批号 */ + @Excel(name = "批号") + private String batchId; + + /** 规格型号 */ + @Excel(name = "规格型号") + private String materialSpecification; + + /** 主计量 */ + @Excel(name = "主计量") + private String materialUnit; + + /** 现存量(主) */ + @Excel(name = "现存量(主)") + private BigDecimal currentStock; + + /** 库存预警 */ + @Excel(name = "库存预警") + private String stockAlarm; + + /** 生产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date productionDate; + + /** 失效日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expirationDate; + + /** 失效预警 */ + @Excel(name = "失效预警") + private String expirationAlarm; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("materialManagementCode", getMaterialManagementCode()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("batchId", getBatchId()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("currentStock", getCurrentStock()) + .append("stockAlarm", getStockAlarm()) + .append("productionDate", getProductionDate()) + .append("expirationDate", getExpirationDate()) + .append("expirationAlarm", getExpirationAlarm()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java new file mode 100644 index 0000000..cda8b08 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java @@ -0,0 +1,142 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 入库记录对象 wz_stock_in + * + * @author HashMap + * @date 2025-08-05 + */ +@Setter +@Getter +public class WzStockIn extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + private Long stockInCode; + + /** 单据日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date docDate; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date createDate; + + /** 单据编号 */ + @Excel(name = "单据编号") + private String docId; + + /** 业务类型 */ + @Excel(name = "业务类型") + private String businessType; + + /** 仓库编码 */ + @Excel(name = "仓库编码") + private String repositoryId; + + /** 仓库 */ + @Excel(name = "仓库") + private String repositoryName; + + /** 入库类别 */ + @Excel(name = "入库类别") + private String stockInType; + + /** 供应商编码 */ + @Excel(name = "供应商编码") + private String supplierId; + + /** 供应商 */ + @Excel(name = "供应商") + private String supplierName; + + /** 部门编码 */ + @Excel(name = "部门编码") + private String departmentId; + + /** 部门 */ + @Excel(name = "部门") + private String departmentName; + + /** 经手人编码 */ + @Excel(name = "经手人编码") + private String operatorId; + + /** 经手人 */ + @Excel(name = "经手人") + private String operatorName; + + /** 制单人 */ + @Excel(name = "制单人") + private String single; + + /** 审核人 */ + @Excel(name = "审核人") + private String reviewer; + + /** 存货编码 */ + @Excel(name = "存货编码") + private String materialId; + + /** 存货 */ + @Excel(name = "存货") + private String materialName; + + /** 规格型号 */ + @Excel(name = "规格型号") + private String materialSpecification; + + /** 计量单位 */ + @Excel(name = "计量单位") + private String materialUnit; + + /** 实收数量 */ + @Excel(name = "实收数量") + private BigDecimal count; + + /** 入库调整 */ + @Excel(name = "入库调整") + private String stockInAdjustRemark; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("stockInCode", getStockInCode()) + .append("docDate", getDocDate()) + .append("createDate", getCreateDate()) + .append("docId", getDocId()) + .append("businessType", getBusinessType()) + .append("repositoryId", getRepositoryId()) + .append("repositoryName", getRepositoryName()) + .append("stockInType", getStockInType()) + .append("supplierId", getSupplierId()) + .append("supplierName", getSupplierName()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("operatorId", getOperatorId()) + .append("operatorName", getOperatorName()) + .append("remark", getRemark()) + .append("single", getSingle()) + .append("reviewer", getReviewer()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("count", getCount()) + .append("stockInAdjustRemark", getStockInAdjustRemark()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java new file mode 100644 index 0000000..24e5038 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java @@ -0,0 +1,179 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 出库记录对象 wz_stock_out + * + * @author HashMap + * @date 2025-08-05 + */ +@Getter +@Setter +public class WzStockOut extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + private Long stockOutCode; + + /** 单据日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date docDate; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date createDate; + + /** 单据编号 */ + @Excel(name = "单据编号") + private String docId; + + /** 业务类型 */ + @Excel(name = "业务类型") + private String businessType; + + /** 仓库编码 */ + @Excel(name = "仓库编码") + private String repositoryId; + + /** 仓库名称 */ + @Excel(name = "仓库名称") + private String repositoryName; + + /** 项目分类 */ + @Excel(name = "项目分类") + private String projectClassification; + + /** 项目编码 */ + @Excel(name = "项目编码") + private String projectId; + + /** 项目 */ + @Excel(name = "项目") + private String projectName; + + /** 生产车间编码 */ + @Excel(name = "生产车间编码") + private String departmentId; + + /** 生产车间 */ + @Excel(name = "生产车间") + private String departmentName; + + /** 领用人 */ + @Excel(name = "领用人") + private String receiver; + + /** 制单人 */ + @Excel(name = "制单人") + private String single; + + /** 审核人 */ + @Excel(name = "审核人") + private String reviewer; + + /** 审核时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date reviewDate; + + /** 修改人 */ + @Excel(name = "修改人") + private String modifier; + + /** 材料分类编码 */ + @Excel(name = "材料分类编码") + private String materialClassId; + + /** 材料分类 */ + @Excel(name = "材料分类") + private String materialClassName; + + /** 材料名称 */ + @Excel(name = "材料名称") + private String materialName; + + /** 材料规格 */ + @Excel(name = "材料规格") + private String materialSpecification; + + /** 计量单位 */ + @Excel(name = "计量单位") + private String materialUnit; + + /** 数量 */ + @Excel(name = "数量") + private BigDecimal count; + + /** 批号 */ + @Excel(name = "批号") + private Long batchId; + + /** 生产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date productionDate; + + /** 保质期 */ + @Excel(name = "保质期") + private Long shelfLife; + + /** 保质期单位 */ + @Excel(name = "保质期单位") + private String shelfLifeUnit; + + /** 失效日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expirationDate; + + /** 代理人 */ + @Excel(name = "代理人") + private String agent; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("stockOutCode", getStockOutCode()) + .append("docDate", getDocDate()) + .append("createDate", getCreateDate()) + .append("docId", getDocId()) + .append("businessType", getBusinessType()) + .append("repositoryId", getRepositoryId()) + .append("repositoryName", getRepositoryName()) + .append("projectClassification", getProjectClassification()) + .append("projectId", getProjectId()) + .append("projectName", getProjectName()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("receiver", getReceiver()) + .append("single", getSingle()) + .append("reviewer", getReviewer()) + .append("reviewDate", getReviewDate()) + .append("modifier", getModifier()) + .append("materialClassId", getMaterialClassId()) + .append("materialClassName", getMaterialClassName()) + .append("materialName", getMaterialName()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("count", getCount()) + .append("batchId", getBatchId()) + .append("productionDate", getProductionDate()) + .append("shelfLife", getShelfLife()) + .append("shelfLifeUnit", getShelfLifeUnit()) + .append("expirationDate", getExpirationDate()) + .append("agent", getAgent()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java new file mode 100644 index 0000000..26bc020 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzMaterialsManagement; +import org.apache.ibatis.annotations.Mapper; + +/** + * 物资管理Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzMaterialsManagementMapper +{ + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理集合 + */ + List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 删除物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java new file mode 100644 index 0000000..ed2fda8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java @@ -0,0 +1,70 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzStockIn; +import org.apache.ibatis.annotations.Mapper; + +/** + * 入库记录Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzStockInMapper +{ + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + WzStockIn selectWzStockInByStockInCode(Long stockInCode); + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录集合 + */ + List selectWzStockInList(WzStockIn wzStockIn); + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int insertWzStockIn(WzStockIn wzStockIn); + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int updateWzStockIn(WzStockIn wzStockIn); + + /** + * 删除入库记录 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + int deleteWzStockInByStockInCode(Long stockInCode); + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzStockInByStockInCodes(Long[] stockInCodes); + + /** + * 查询最近的入库记录 + * + * @return 数据库中最近的入库记录 + */ + WzStockIn getEarliestStockIn(); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java new file mode 100644 index 0000000..791793a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzStockOut; +import org.apache.ibatis.annotations.Mapper; + +/** + * 出库记录Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzStockOutMapper +{ + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录集合 + */ + List selectWzStockOutList(WzStockOut wzStockOut); + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int insertWzStockOut(WzStockOut wzStockOut); + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int updateWzStockOut(WzStockOut wzStockOut); + + /** + * 删除出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + int deleteWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java new file mode 100644 index 0000000..c41114f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.stock.service; + +import java.util.List; +import com.zhyc.module.stock.domain.WzMaterialsManagement; + +/** + * 物资管理Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzMaterialsManagementService +{ + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理集合 + */ + List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的物资管理主键集合 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); + + /** + * 删除物资管理信息 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java new file mode 100644 index 0000000..1db71f9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java @@ -0,0 +1,73 @@ +package com.zhyc.module.stock.service; + +import java.util.List; + +import com.zhyc.common.core.domain.entity.SysUser; +import com.zhyc.module.stock.domain.WzStockIn; + +/** + * 入库记录Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzStockInService +{ + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + WzStockIn selectWzStockInByStockInCode(Long stockInCode); + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录集合 + */ + List selectWzStockInList(WzStockIn wzStockIn); + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int insertWzStockIn(WzStockIn wzStockIn); + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int updateWzStockIn(WzStockIn wzStockIn); + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的入库记录主键集合 + * @return 结果 + */ + int deleteWzStockInByStockInCodes(Long[] stockInCodes); + + /** + * 删除入库记录信息 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + int deleteWzStockInByStockInCode(Long stockInCode); + + /** + * 导入入库数据 + * + * @param StockInList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + public String importUser(List StockInList, Boolean isUpdateSupport, String operName); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java new file mode 100644 index 0000000..4dc8c35 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.stock.service; + +import java.util.List; +import com.zhyc.module.stock.domain.WzStockOut; + +/** + * 出库记录Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzStockOutService +{ + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录集合 + */ + List selectWzStockOutList(WzStockOut wzStockOut); + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int insertWzStockOut(WzStockOut wzStockOut); + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int updateWzStockOut(WzStockOut wzStockOut); + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的出库记录主键集合 + * @return 结果 + */ + int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); + + /** + * 删除出库记录信息 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + int deleteWzStockOutByStockOutCode(Long stockOutCode); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java new file mode 100644 index 0000000..e04415f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java @@ -0,0 +1,96 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.List; + +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzMaterialsManagementMapper; +import com.zhyc.module.stock.domain.WzMaterialsManagement; +import com.zhyc.module.stock.service.IWzMaterialsManagementService; + +/** + * 物资管理Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementService +{ + private final WzMaterialsManagementMapper wzMaterialsManagementMapper; + + public WzMaterialsManagementServiceImpl(WzMaterialsManagementMapper wzMaterialsManagementMapper) { + this.wzMaterialsManagementMapper = wzMaterialsManagementMapper; + } + + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + @Override + public WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) + { + return wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode); + } + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理 + */ + @Override + public List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement) + { + return wzMaterialsManagementMapper.selectWzMaterialsManagementList(wzMaterialsManagement); + } + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + @Override + public int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) + { + return wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); + } + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + @Override + public int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) + { + return wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); + } + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的物资管理主键 + * @return 结果 + */ + @Override + public int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes) + { + return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes); + } + + /** + * 删除物资管理信息 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + @Override + public int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) + { + return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCode(materialManagementCode); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java new file mode 100644 index 0000000..7632654 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java @@ -0,0 +1,137 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.List; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzStockInMapper; +import com.zhyc.module.stock.domain.WzStockIn; +import com.zhyc.module.stock.service.IWzStockInService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 入库记录Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzStockInServiceImpl implements IWzStockInService { + private final WzStockInMapper wzStockInMapper; + + public WzStockInServiceImpl(WzStockInMapper wzStockInMapper) { + this.wzStockInMapper = wzStockInMapper; + } + + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + @Override + public WzStockIn selectWzStockInByStockInCode(Long stockInCode) { + return wzStockInMapper.selectWzStockInByStockInCode(stockInCode); + } + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录 + */ + @Override + public List selectWzStockInList(WzStockIn wzStockIn) { + return wzStockInMapper.selectWzStockInList(wzStockIn); + } + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + @Override + public int insertWzStockIn(WzStockIn wzStockIn) { + return wzStockInMapper.insertWzStockIn(wzStockIn); + } + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + @Override + public int updateWzStockIn(WzStockIn wzStockIn) { + return wzStockInMapper.updateWzStockIn(wzStockIn); + } + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的入库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockInByStockInCodes(Long[] stockInCodes) { + return wzStockInMapper.deleteWzStockInByStockInCodes(stockInCodes); + } + + /** + * 删除入库记录信息 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockInByStockInCode(Long stockInCode) { + return wzStockInMapper.deleteWzStockInByStockInCode(stockInCode); + } + + /** + * 导入用户数据 + * + * @param StockInList 用户数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List StockInList, Boolean isUpdateSupport, String operName) { + if (StringUtils.isNull(StockInList) || StockInList.isEmpty()) { + throw new ServiceException("导入用户数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + try { + WzStockIn earliestStockIn = wzStockInMapper.getEarliestStockIn(); + System.out.println(earliestStockIn); + for (WzStockIn wzStockIn : StockInList) { + if (earliestStockIn.getDocDate().getTime() >= wzStockIn.getDocDate().getTime()) { + sameNum++; + continue; + } + int result = wzStockInMapper.insertWzStockIn(wzStockIn); + if (result == 0) { + failureNum++; + failureMsg.append("失败的项:").append(wzStockIn.getDocId()).append("\n"); + } + else successNum++; + } + + } catch (Exception e) { + failureNum++; + } + if (failureNum > 0) { + return failureMsg.toString(); + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); + return successMsg.toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java new file mode 100644 index 0000000..d023e10 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java @@ -0,0 +1,96 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.List; + +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzStockOutMapper; +import com.zhyc.module.stock.domain.WzStockOut; +import com.zhyc.module.stock.service.IWzStockOutService; + +/** + * 出库记录Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzStockOutServiceImpl implements IWzStockOutService +{ + private final WzStockOutMapper wzStockOutMapper; + + public WzStockOutServiceImpl(WzStockOutMapper wzStockOutMapper) { + this.wzStockOutMapper = wzStockOutMapper; + } + + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + @Override + public WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode) + { + return wzStockOutMapper.selectWzStockOutByStockOutCode(stockOutCode); + } + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录 + */ + @Override + public List selectWzStockOutList(WzStockOut wzStockOut) + { + return wzStockOutMapper.selectWzStockOutList(wzStockOut); + } + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + @Override + public int insertWzStockOut(WzStockOut wzStockOut) + { + return wzStockOutMapper.insertWzStockOut(wzStockOut); + } + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + @Override + public int updateWzStockOut(WzStockOut wzStockOut) + { + return wzStockOutMapper.updateWzStockOut(wzStockOut); + } + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的出库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes) + { + return wzStockOutMapper.deleteWzStockOutByStockOutCodes(stockOutCodes); + } + + /** + * 删除出库记录信息 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockOutByStockOutCode(Long stockOutCode) + { + return wzStockOutMapper.deleteWzStockOutByStockOutCode(stockOutCode); + } +} diff --git a/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml b/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml new file mode 100644 index 0000000..f555332 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + select material_management_code, material_id, material_name, batch_id, material_specification, material_unit, current_stock, stock_alarm, production_date, expiration_date, expiration_alarm from wz_materials_management + + + + + + + + insert into wz_materials_management + + material_id, + material_name, + batch_id, + material_specification, + material_unit, + current_stock, + stock_alarm, + production_date, + expiration_date, + expiration_alarm, + + + #{materialId}, + #{materialName}, + #{batchId}, + #{materialSpecification}, + #{materialUnit}, + #{currentStock}, + #{stockAlarm}, + #{productionDate}, + #{expirationDate}, + #{expirationAlarm}, + + + + + update wz_materials_management + + material_id = #{materialId}, + material_name = #{materialName}, + batch_id = #{batchId}, + material_specification = #{materialSpecification}, + material_unit = #{materialUnit}, + current_stock = #{currentStock}, + stock_alarm = #{stockAlarm}, + production_date = #{productionDate}, + expiration_date = #{expirationDate}, + expiration_alarm = #{expirationAlarm}, + + where material_management_code = #{materialManagementCode} + + + + delete from wz_materials_management where material_management_code = #{materialManagementCode} + + + + delete from wz_materials_management where material_management_code in + + #{materialManagementCode} + + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/stock/WzStockInMapper.xml b/zhyc-module/src/main/resources/mapper/stock/WzStockInMapper.xml new file mode 100644 index 0000000..55c5c1e --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/stock/WzStockInMapper.xml @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select stock_in_code, doc_date, create_date, doc_id, business_type, repository_id, repository_name, stock_in_type, supplier_id, supplier_name, department_id, department_name, operator_id, operator_name, remark, single, reviewer, material_id, material_name, material_specification, material_unit, count, stock_in_adjust_remark from wz_stock_in + + + + + + + + insert into wz_stock_in + + doc_date, + create_date, + doc_id, + business_type, + repository_id, + repository_name, + stock_in_type, + supplier_id, + supplier_name, + department_id, + department_name, + operator_id, + operator_name, + remark, + single, + reviewer, + material_id, + material_name, + material_specification, + material_unit, + count, + stock_in_adjust_remark, + + + #{docDate}, + #{createDate}, + #{docId}, + #{businessType}, + #{repositoryId}, + #{repositoryName}, + #{stockInType}, + #{supplierId}, + #{supplierName}, + #{departmentId}, + #{departmentName}, + #{operatorId}, + #{operatorName}, + #{remark}, + #{single}, + #{reviewer}, + #{materialId}, + #{materialName}, + #{materialSpecification}, + #{materialUnit}, + #{count}, + #{stockInAdjustRemark}, + + + + + update wz_stock_in + + doc_date = #{docDate}, + create_date = #{createDate}, + doc_id = #{docId}, + business_type = #{businessType}, + repository_id = #{repositoryId}, + repository_name = #{repositoryName}, + stock_in_type = #{stockInType}, + supplier_id = #{supplierId}, + supplier_name = #{supplierName}, + department_id = #{departmentId}, + department_name = #{departmentName}, + operator_id = #{operatorId}, + operator_name = #{operatorName}, + remark = #{remark}, + single = #{single}, + reviewer = #{reviewer}, + material_id = #{materialId}, + material_name = #{materialName}, + material_specification = #{materialSpecification}, + material_unit = #{materialUnit}, + count = #{count}, + stock_in_adjust_remark = #{stockInAdjustRemark}, + + where stock_in_code = #{stockInCode} + + + + delete from wz_stock_in where stock_in_code = #{stockInCode} + + + + delete from wz_stock_in where stock_in_code in + + #{stockInCode} + + + + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml b/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml new file mode 100644 index 0000000..216dc4c --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml @@ -0,0 +1,168 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select stock_out_code, doc_date, create_date, doc_id, business_type, repository_id, repository_name, project_classification, project_id, project_name, department_id, department_name, receiver, single, reviewer, review_date, modifier, material_class_id, material_class_name, material_name, material_specification, material_unit, count, batch_id, production_date, shelf_life, shelf_life_unit, expiration_date, agent from wz_stock_out + + + + + + + + insert into wz_stock_out + + doc_date, + create_date, + doc_id, + business_type, + repository_id, + repository_name, + project_classification, + project_id, + project_name, + department_id, + department_name, + receiver, + single, + reviewer, + review_date, + modifier, + material_class_id, + material_class_name, + material_name, + material_specification, + material_unit, + count, + batch_id, + production_date, + shelf_life, + shelf_life_unit, + expiration_date, + agent, + + + #{docDate}, + #{createDate}, + #{docId}, + #{businessType}, + #{repositoryId}, + #{repositoryName}, + #{projectClassification}, + #{projectId}, + #{projectName}, + #{departmentId}, + #{departmentName}, + #{receiver}, + #{single}, + #{reviewer}, + #{reviewDate}, + #{modifier}, + #{materialClassId}, + #{materialClassName}, + #{materialName}, + #{materialSpecification}, + #{materialUnit}, + #{count}, + #{batchId}, + #{productionDate}, + #{shelfLife}, + #{shelfLifeUnit}, + #{expirationDate}, + #{agent}, + + + + + update wz_stock_out + + doc_date = #{docDate}, + create_date = #{createDate}, + doc_id = #{docId}, + business_type = #{businessType}, + repository_id = #{repositoryId}, + repository_name = #{repositoryName}, + project_classification = #{projectClassification}, + project_id = #{projectId}, + project_name = #{projectName}, + department_id = #{departmentId}, + department_name = #{departmentName}, + receiver = #{receiver}, + single = #{single}, + reviewer = #{reviewer}, + review_date = #{reviewDate}, + modifier = #{modifier}, + material_class_id = #{materialClassId}, + material_class_name = #{materialClassName}, + material_name = #{materialName}, + material_specification = #{materialSpecification}, + material_unit = #{materialUnit}, + count = #{count}, + batch_id = #{batchId}, + production_date = #{productionDate}, + shelf_life = #{shelfLife}, + shelf_life_unit = #{shelfLifeUnit}, + expiration_date = #{expirationDate}, + agent = #{agent}, + + where stock_out_code = #{stockOutCode} + + + + delete from wz_stock_out where stock_out_code = #{stockOutCode} + + + + delete from wz_stock_out where stock_out_code in + + #{stockOutCode} + + + \ No newline at end of file From a473018c48d2a72af9c9b216baff7a4d386f72cf Mon Sep 17 00:00:00 2001 From: HashMap Date: Wed, 6 Aug 2025 18:11:35 +0800 Subject: [PATCH 06/23] =?UTF-8?q?feat(module):=20=E7=89=A9=E8=B5=84?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加物资管理 实现Excel批量导入 --- .../WzMaterialsManagementController.java | 42 ++++++---- .../stock/controller/WzStockInController.java | 4 +- .../mapper/WzMaterialsManagementMapper.java | 8 ++ .../IWzMaterialsManagementService.java | 10 +++ .../stock/service/IWzStockInService.java | 3 +- .../WzMaterialsManagementServiceImpl.java | 78 ++++++++++++++----- .../stock/WzMaterialsManagementMapper.xml | 6 +- 7 files changed, 108 insertions(+), 43 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java index db687da..e1b567e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java @@ -2,6 +2,7 @@ package com.zhyc.module.stock.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; + import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -19,17 +20,17 @@ import com.zhyc.module.stock.domain.WzMaterialsManagement; import com.zhyc.module.stock.service.IWzMaterialsManagementService; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; /** * 物资管理Controller - * + * * @author HashMap * @date 2025-08-05 */ @RestController @RequestMapping("/stock/management") -public class WzMaterialsManagementController extends BaseController -{ +public class WzMaterialsManagementController extends BaseController { private final IWzMaterialsManagementService wzMaterialsManagementService; public WzMaterialsManagementController(IWzMaterialsManagementService wzMaterialsManagementService) { @@ -41,8 +42,7 @@ public class WzMaterialsManagementController extends BaseController */ @PreAuthorize("@ss.hasPermi('stock:management:list')") @GetMapping("/list") - public TableDataInfo list(WzMaterialsManagement wzMaterialsManagement) - { + public TableDataInfo list(WzMaterialsManagement wzMaterialsManagement) { startPage(); List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); return getDataTable(list); @@ -54,8 +54,7 @@ public class WzMaterialsManagementController extends BaseController @PreAuthorize("@ss.hasPermi('stock:management:export')") @Log(title = "物资管理", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, WzMaterialsManagement wzMaterialsManagement) - { + public void export(HttpServletResponse response, WzMaterialsManagement wzMaterialsManagement) { List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); util.exportExcel(response, list, "物资管理数据"); @@ -66,8 +65,7 @@ public class WzMaterialsManagementController extends BaseController */ @PreAuthorize("@ss.hasPermi('stock:management:query')") @GetMapping(value = "/{materialManagementCode}") - public AjaxResult getInfo(@PathVariable("materialManagementCode") Long materialManagementCode) - { + public AjaxResult getInfo(@PathVariable("materialManagementCode") Long materialManagementCode) { return success(wzMaterialsManagementService.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode)); } @@ -77,8 +75,7 @@ public class WzMaterialsManagementController extends BaseController @PreAuthorize("@ss.hasPermi('stock:management:add')") @Log(title = "物资管理", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody WzMaterialsManagement wzMaterialsManagement) - { + public AjaxResult add(@RequestBody WzMaterialsManagement wzMaterialsManagement) { return toAjax(wzMaterialsManagementService.insertWzMaterialsManagement(wzMaterialsManagement)); } @@ -88,8 +85,7 @@ public class WzMaterialsManagementController extends BaseController @PreAuthorize("@ss.hasPermi('stock:management:edit')") @Log(title = "物资管理", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@RequestBody WzMaterialsManagement wzMaterialsManagement) - { + public AjaxResult edit(@RequestBody WzMaterialsManagement wzMaterialsManagement) { return toAjax(wzMaterialsManagementService.updateWzMaterialsManagement(wzMaterialsManagement)); } @@ -98,9 +94,23 @@ public class WzMaterialsManagementController extends BaseController */ @PreAuthorize("@ss.hasPermi('stock:management:remove')") @Log(title = "物资管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{materialManagementCodes}") - public AjaxResult remove(@PathVariable Long[] materialManagementCodes) - { + @DeleteMapping("/{materialManagementCodes}") + public AjaxResult remove(@PathVariable Long[] materialManagementCodes) { return toAjax(wzMaterialsManagementService.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes)); } + + @Log(title = "物资管理", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:management:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); + List stockInList = util.importExcel(file.getInputStream()); + for (WzMaterialsManagement wzMaterialsManagement : stockInList) { + System.out.println(wzMaterialsManagement); + } + String operName = getUsername(); + String message = wzMaterialsManagementService.importUser(stockInList, updateSupport, operName); + // String message = "OK We are testing"; + return success(message); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java index b14aa86..6705202 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java @@ -3,8 +3,6 @@ package com.zhyc.module.stock.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; -import com.zhyc.common.core.domain.entity.SysUser; -import com.zhyc.module.stock.service.impl.WzStockInServiceImpl; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -113,7 +111,7 @@ public class WzStockInController extends BaseController @PostMapping("/importData") public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { - ExcelUtil util = new ExcelUtil(WzStockIn.class); + ExcelUtil util = new ExcelUtil<>(WzStockIn.class); List stockInList = util.importExcel(file.getInputStream()); stockInList.removeIf(wzStockIn -> wzStockIn.getDocDate() == null); String operName = getUsername(); diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java index 26bc020..a1c75a9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java @@ -60,4 +60,12 @@ public interface WzMaterialsManagementMapper * @return 结果 */ int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); + + /** + * 以物资编码获取记录 + * + * @param materialID 物资编码 + * @return 结果 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialID(String materialID); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java index c41114f..46e71dc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java @@ -58,4 +58,14 @@ public interface IWzMaterialsManagementService * @return 结果 */ int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 导入入库数据 + * + * @param MaterialsManagementList 物资数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java index 1db71f9..8d986a0 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java @@ -2,7 +2,6 @@ package com.zhyc.module.stock.service; import java.util.List; -import com.zhyc.common.core.domain.entity.SysUser; import com.zhyc.module.stock.domain.WzStockIn; /** @@ -69,5 +68,5 @@ public interface IWzStockInService * @param operName 操作用户 * @return 结果 */ - public String importUser(List StockInList, Boolean isUpdateSupport, String operName); + String importUser(List StockInList, Boolean isUpdateSupport, String operName); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java index e04415f..ab6d272 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java @@ -2,20 +2,22 @@ package com.zhyc.module.stock.service.impl; import java.util.List; +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; import org.springframework.stereotype.Service; import com.zhyc.module.stock.mapper.WzMaterialsManagementMapper; import com.zhyc.module.stock.domain.WzMaterialsManagement; import com.zhyc.module.stock.service.IWzMaterialsManagementService; +import org.springframework.transaction.annotation.Transactional; /** * 物资管理Service业务层处理 - * + * * @author HashMap * @date 2025-08-05 */ @Service -public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementService -{ +public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementService { private final WzMaterialsManagementMapper wzMaterialsManagementMapper; public WzMaterialsManagementServiceImpl(WzMaterialsManagementMapper wzMaterialsManagementMapper) { @@ -24,73 +26,107 @@ public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementS /** * 查询物资管理 - * + * * @param materialManagementCode 物资管理主键 * @return 物资管理 */ @Override - public WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) - { + public WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { return wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode); } /** * 查询物资管理列表 - * + * * @param wzMaterialsManagement 物资管理 * @return 物资管理 */ @Override - public List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement) - { + public List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement) { return wzMaterialsManagementMapper.selectWzMaterialsManagementList(wzMaterialsManagement); } /** * 新增物资管理 - * + * * @param wzMaterialsManagement 物资管理 * @return 结果 */ @Override - public int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) - { + public int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { return wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); } /** * 修改物资管理 - * + * * @param wzMaterialsManagement 物资管理 * @return 结果 */ @Override - public int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) - { + public int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { return wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); } /** * 批量删除物资管理 - * + * * @param materialManagementCodes 需要删除的物资管理主键 * @return 结果 */ @Override - public int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes) - { + public int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes) { return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes); } /** * 删除物资管理信息 - * + * * @param materialManagementCode 物资管理主键 * @return 结果 */ @Override - public int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) - { + public int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCode(materialManagementCode); } + + /** + * 导入用户数据 + * + * @param MaterialsManagementList 物资数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName) { + if (StringUtils.isNull(MaterialsManagementList) || MaterialsManagementList.isEmpty()) { + throw new ServiceException("导入用户数据不能为空!"); + } + int successNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + try { + for (WzMaterialsManagement wzMaterialsManagement : MaterialsManagementList) { + if (wzMaterialsManagement.getMaterialId() != null) { + WzMaterialsManagement isExist = wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialID(wzMaterialsManagement.getMaterialId()); + // 存在则更新 + if (isExist != null) { + sameNum++; + wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); + continue; + } + } + int result = wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); + if (result > 0) successNum++; + } + } catch (Exception e) { + return failureMsg.append("导入出错:").append(e.getMessage()).toString(); + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n更新 ").append(sameNum).append(" 条(已存在记录)"); + return successMsg.toString(); + } + } diff --git a/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml b/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml index f555332..d2347c4 100644 --- a/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml +++ b/zhyc-module/src/main/resources/mapper/stock/WzMaterialsManagementMapper.xml @@ -77,7 +77,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" expiration_date = #{expirationDate}, expiration_alarm = #{expirationAlarm}, - where material_management_code = #{materialManagementCode} + where material_id = #{materialId} @@ -90,4 +90,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{materialManagementCode} + + \ No newline at end of file From 64c2de5d21903a6d97760a701f6396bd32bab105 Mon Sep 17 00:00:00 2001 From: HashMap Date: Wed, 6 Aug 2025 21:10:06 +0800 Subject: [PATCH 07/23] =?UTF-8?q?feat(module):=20=E5=87=BA=E5=BA=93?= =?UTF-8?q?=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 出库记录 & 批量导入 --- .../controller/WzStockOutController.java | 24 +++ .../zhyc/module/stock/domain/WzStockOut.java | 200 ++++++++++++------ .../module/stock/mapper/WzStockOutMapper.java | 7 + .../stock/service/IWzStockOutService.java | 11 + .../service/impl/WzStockOutServiceImpl.java | 82 +++++-- .../mapper/stock/WzStockOutMapper.xml | 14 +- 6 files changed, 252 insertions(+), 86 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java index f4b051d..cb80a44 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java @@ -19,6 +19,7 @@ import com.zhyc.module.stock.domain.WzStockOut; import com.zhyc.module.stock.service.IWzStockOutService; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; /** * 出库记录Controller @@ -103,4 +104,27 @@ public class WzStockOutController extends BaseController { return toAjax(wzStockOutService.deleteWzStockOutByStockOutCodes(stockOutCodes)); } + + /** + * 导入出库记录 + */ + @Log(title = "出库记录", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:out:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception + { + ExcelUtil util = new ExcelUtil<>(WzStockOut.class); + List WzStockOutList = util.importExcel(file.getInputStream()); + WzStockOutList.removeIf(wzStockOut -> wzStockOut.getDocId() == null); + String operName = getUsername(); + String message; + try { + message = wzStockOutService.importUser(WzStockOutList, updateSupport, operName); + }catch (Exception e) { + message = e.getMessage(); + logger.error(e.getMessage()); + } + // String message = "OK We are testing"; + return success(message); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java index 24e5038..c0a84a9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java @@ -2,6 +2,7 @@ package com.zhyc.module.stock.domain; import java.math.BigDecimal; import java.util.Date; + import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; import lombok.Setter; @@ -12,168 +13,239 @@ import com.zhyc.common.core.domain.BaseEntity; /** * 出库记录对象 wz_stock_out - * + * * @author HashMap * @date 2025-08-05 */ @Getter @Setter -public class WzStockOut extends BaseEntity -{ +public class WzStockOut extends BaseEntity { private static final long serialVersionUID = 1L; - /** 序号 */ + /** + * 序号 + */ private Long stockOutCode; - /** 单据日期 */ + /** + * 单据日期 + */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") private Date docDate; - /** 创建时间 */ + /** + * 创建时间 + */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") private Date createDate; - /** 单据编号 */ + /** + * 单据编号 + */ @Excel(name = "单据编号") private String docId; - /** 业务类型 */ + /** + * 业务类型 + */ @Excel(name = "业务类型") private String businessType; - /** 仓库编码 */ + /** + * 仓库编码 + */ @Excel(name = "仓库编码") private String repositoryId; - /** 仓库名称 */ - @Excel(name = "仓库名称") + /** + * 仓库名称 + */ + @Excel(name = "仓库") private String repositoryName; - /** 项目分类 */ + /** + * 项目分类 + */ @Excel(name = "项目分类") private String projectClassification; - /** 项目编码 */ + /** + * 项目编码 + */ @Excel(name = "项目编码") private String projectId; - /** 项目 */ + /** + * 项目 + */ @Excel(name = "项目") private String projectName; - /** 生产车间编码 */ + /** + * 生产车间编码 + */ @Excel(name = "生产车间编码") private String departmentId; - /** 生产车间 */ + /** + * 生产车间 + */ @Excel(name = "生产车间") private String departmentName; - /** 领用人 */ + /** + * 领用人编码 + */ + @Excel(name = "领用人编码") + private String receiverId; + + /** + * 领用人 + */ @Excel(name = "领用人") private String receiver; - /** 制单人 */ + /** + * 制单人 + */ @Excel(name = "制单人") private String single; - /** 审核人 */ + /** + * 审核人 + */ @Excel(name = "审核人") private String reviewer; - /** 审核时间 */ + /** + * 审核时间 + */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd") private Date reviewDate; - /** 修改人 */ + /** + * 修改人 + */ @Excel(name = "修改人") private String modifier; - /** 材料分类编码 */ + /** + * 材料分类编码 + */ @Excel(name = "材料分类编码") private String materialClassId; - /** 材料分类 */ + /** + * 材料分类 + */ @Excel(name = "材料分类") private String materialClassName; - /** 材料名称 */ + /** + * 材料编码 + */ + @Excel(name = "材料编码") + private String materialId; + + /** + * 材料名称 + */ @Excel(name = "材料名称") private String materialName; - /** 材料规格 */ + /** + * 材料规格 + */ @Excel(name = "材料规格") private String materialSpecification; - /** 计量单位 */ + /** + * 计量单位 + */ @Excel(name = "计量单位") private String materialUnit; - /** 数量 */ + /** + * 数量 + */ @Excel(name = "数量") private BigDecimal count; - /** 批号 */ + /** + * 批号 + */ @Excel(name = "批号") private Long batchId; - /** 生产日期 */ + /** + * 生产日期 + */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") private Date productionDate; - /** 保质期 */ + /** + * 保质期 + */ @Excel(name = "保质期") private Long shelfLife; - /** 保质期单位 */ + /** + * 保质期单位 + */ @Excel(name = "保质期单位") private String shelfLifeUnit; - /** 失效日期 */ + /** + * 失效日期 + */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") private Date expirationDate; - /** 代理人 */ + /** + * 代理人 + */ @Excel(name = "代理人") private String agent; @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("stockOutCode", getStockOutCode()) - .append("docDate", getDocDate()) - .append("createDate", getCreateDate()) - .append("docId", getDocId()) - .append("businessType", getBusinessType()) - .append("repositoryId", getRepositoryId()) - .append("repositoryName", getRepositoryName()) - .append("projectClassification", getProjectClassification()) - .append("projectId", getProjectId()) - .append("projectName", getProjectName()) - .append("departmentId", getDepartmentId()) - .append("departmentName", getDepartmentName()) - .append("receiver", getReceiver()) - .append("single", getSingle()) - .append("reviewer", getReviewer()) - .append("reviewDate", getReviewDate()) - .append("modifier", getModifier()) - .append("materialClassId", getMaterialClassId()) - .append("materialClassName", getMaterialClassName()) - .append("materialName", getMaterialName()) - .append("materialSpecification", getMaterialSpecification()) - .append("materialUnit", getMaterialUnit()) - .append("count", getCount()) - .append("batchId", getBatchId()) - .append("productionDate", getProductionDate()) - .append("shelfLife", getShelfLife()) - .append("shelfLifeUnit", getShelfLifeUnit()) - .append("expirationDate", getExpirationDate()) - .append("agent", getAgent()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("stockOutCode", getStockOutCode()) + .append("docDate", getDocDate()) + .append("createDate", getCreateDate()) + .append("docId", getDocId()) + .append("businessType", getBusinessType()) + .append("repositoryId", getRepositoryId()) + .append("repositoryName", getRepositoryName()) + .append("projectClassification", getProjectClassification()) + .append("projectId", getProjectId()) + .append("projectName", getProjectName()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("receiverId", getReceiverId()) + .append("receiver", getReceiver()) + .append("single", getSingle()) + .append("reviewer", getReviewer()) + .append("reviewDate", getReviewDate()) + .append("modifier", getModifier()) + .append("materialClassId", getMaterialClassId()) + .append("materialClassName", getMaterialClassName()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("count", getCount()) + .append("batchId", getBatchId()) + .append("productionDate", getProductionDate()) + .append("shelfLife", getShelfLife()) + .append("shelfLifeUnit", getShelfLifeUnit()) + .append("expirationDate", getExpirationDate()) + .append("agent", getAgent()) + .toString(); } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java index 791793a..a9ae9ce 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java @@ -60,4 +60,11 @@ public interface WzStockOutMapper * @return 结果 */ int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); + + /** + * 查询最近的记录 + * + * @return 结果 + */ + WzStockOut getEarliestStockOut(); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java index 4dc8c35..6e4c75b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java @@ -1,6 +1,7 @@ package com.zhyc.module.stock.service; import java.util.List; + import com.zhyc.module.stock.domain.WzStockOut; /** @@ -58,4 +59,14 @@ public interface IWzStockOutService * @return 结果 */ int deleteWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 导入入库数据 + * + * @param WzStockOutList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java index d023e10..5fb6c36 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java @@ -1,21 +1,24 @@ package com.zhyc.module.stock.service.impl; +import java.util.Date; import java.util.List; +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; import org.springframework.stereotype.Service; import com.zhyc.module.stock.mapper.WzStockOutMapper; import com.zhyc.module.stock.domain.WzStockOut; import com.zhyc.module.stock.service.IWzStockOutService; +import org.springframework.transaction.annotation.Transactional; /** * 出库记录Service业务层处理 - * + * * @author HashMap * @date 2025-08-05 */ @Service -public class WzStockOutServiceImpl implements IWzStockOutService -{ +public class WzStockOutServiceImpl implements IWzStockOutService { private final WzStockOutMapper wzStockOutMapper; public WzStockOutServiceImpl(WzStockOutMapper wzStockOutMapper) { @@ -24,73 +27,110 @@ public class WzStockOutServiceImpl implements IWzStockOutService /** * 查询出库记录 - * + * * @param stockOutCode 出库记录主键 * @return 出库记录 */ @Override - public WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode) - { + public WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode) { return wzStockOutMapper.selectWzStockOutByStockOutCode(stockOutCode); } /** * 查询出库记录列表 - * + * * @param wzStockOut 出库记录 * @return 出库记录 */ @Override - public List selectWzStockOutList(WzStockOut wzStockOut) - { + public List selectWzStockOutList(WzStockOut wzStockOut) { return wzStockOutMapper.selectWzStockOutList(wzStockOut); } /** * 新增出库记录 - * + * * @param wzStockOut 出库记录 * @return 结果 */ @Override - public int insertWzStockOut(WzStockOut wzStockOut) - { + public int insertWzStockOut(WzStockOut wzStockOut) { return wzStockOutMapper.insertWzStockOut(wzStockOut); } /** * 修改出库记录 - * + * * @param wzStockOut 出库记录 * @return 结果 */ @Override - public int updateWzStockOut(WzStockOut wzStockOut) - { + public int updateWzStockOut(WzStockOut wzStockOut) { return wzStockOutMapper.updateWzStockOut(wzStockOut); } /** * 批量删除出库记录 - * + * * @param stockOutCodes 需要删除的出库记录主键 * @return 结果 */ @Override - public int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes) - { + public int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes) { return wzStockOutMapper.deleteWzStockOutByStockOutCodes(stockOutCodes); } /** * 删除出库记录信息 - * + * * @param stockOutCode 出库记录主键 * @return 结果 */ @Override - public int deleteWzStockOutByStockOutCode(Long stockOutCode) - { + public int deleteWzStockOutByStockOutCode(Long stockOutCode) { return wzStockOutMapper.deleteWzStockOutByStockOutCode(stockOutCode); } + + /** + * 导入用户数据 + * + * @param WzStockOutList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception { + if (StringUtils.isNull(WzStockOutList) || WzStockOutList.isEmpty()) { + throw new ServiceException("导入入库数据不能为空!"); + } + int successNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + WzStockOut earliestStockOut = wzStockOutMapper.getEarliestStockOut(); + // 确保最近记录有值 + if (null == earliestStockOut || earliestStockOut.getCreateDate() == null) { + if (earliestStockOut != null) { + earliestStockOut.setCreateDate(new Date(0)); + } else { + earliestStockOut = new WzStockOut(); + earliestStockOut.setCreateDate(new Date(0)); + } + } + for (WzStockOut wzStockOut : WzStockOutList) { + if (null != wzStockOut && null != wzStockOut.getCreateDate()) { + if (earliestStockOut.getCreateDate().getTime() >= wzStockOut.getCreateDate().getTime()) { + sameNum++; + continue; + } + } else { + continue; + } + int result = wzStockOutMapper.insertWzStockOut(wzStockOut); + if (result > 0) successNum++; + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); + return successMsg.toString(); + } } diff --git a/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml b/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml index 216dc4c..5df3b87 100644 --- a/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml +++ b/zhyc-module/src/main/resources/mapper/stock/WzStockOutMapper.xml @@ -17,6 +17,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -24,6 +25,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -37,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select stock_out_code, doc_date, create_date, doc_id, business_type, repository_id, repository_name, project_classification, project_id, project_name, department_id, department_name, receiver, single, reviewer, review_date, modifier, material_class_id, material_class_name, material_name, material_specification, material_unit, count, batch_id, production_date, shelf_life, shelf_life_unit, expiration_date, agent from wz_stock_out + select stock_out_code, doc_date, create_date, doc_id, business_type, repository_id, repository_name, project_classification, project_id, project_name, department_id, department_name,receiver_id, receiver, single, reviewer, review_date, modifier, material_class_id, material_class_name, material_id,material_name, material_specification, material_unit, count, batch_id, production_date, shelf_life, shelf_life_unit, expiration_date, agent from wz_stock_out + SELECT * FROM wz_stock_out ORDER BY create_date DESC LIMIT 1 + \ No newline at end of file From e965c9c35cdc43e7f7cd0776d870645adfd7d1c8 Mon Sep 17 00:00:00 2001 From: HashMap Date: Tue, 12 Aug 2025 15:55:22 +0800 Subject: [PATCH 08/23] =?UTF-8?q?feat(module):=20=E9=A5=B2=E5=96=82?= =?UTF-8?q?=E7=AE=A1=E7=90=86=20-=20=E9=85=8D=E6=96=B9=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 完成饲喂管理模块中的配方管理部分 --- .../feed/controller/SgFeedPlanController.java | 107 +++++++++++ .../controller/SgFormulaListController.java | 106 +++++++++++ .../SgFormulaManagementController.java | 172 ++++++++++++++++++ .../feed/controller/SgMaterialController.java | 107 +++++++++++ .../zhyc/module/feed/domain/SgFeedPlan.java | 132 ++++++++++++++ .../module/feed/domain/SgFormulaList.java | 62 +++++++ .../feed/domain/SgFormulaManagement.java | 79 ++++++++ .../zhyc/module/feed/domain/SgMaterial.java | 15 ++ .../module/feed/mapper/SgFeedPlanMapper.java | 64 +++++++ .../feed/mapper/SgFormulaListMapper.java | 71 ++++++++ .../mapper/SgFormulaManagementMapper.java | 65 +++++++ .../module/feed/mapper/SgMaterialMapper.java | 63 +++++++ .../feed/service/ISgFeedPlanService.java | 62 +++++++ .../feed/service/ISgFormulaListService.java | 63 +++++++ .../service/ISgFormulaManagementService.java | 66 +++++++ .../feed/service/ISgMaterialService.java | 61 +++++++ .../service/impl/SgFeedPlanServiceImpl.java | 99 ++++++++++ .../impl/SgFormulaListServiceImpl.java | 97 ++++++++++ .../impl/SgFormulaManagementServiceImpl.java | 135 ++++++++++++++ .../service/impl/SgMaterialServiceImpl.java | 96 ++++++++++ .../service/impl/WzStockInServiceImpl.java | 4 +- .../mapper/feed/SgFeedPlanMapper.xml | 137 ++++++++++++++ .../mapper/feed/SgFormulaListMapper.xml | 87 +++++++++ .../mapper/feed/SgFormulaManagementMapper.xml | 82 +++++++++ .../mapper/feed/SgMaterialMapper.xml | 64 +++++++ 25 files changed, 2095 insertions(+), 1 deletion(-) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaListMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaManagementMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaListService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaManagementService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml create mode 100644 zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml 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 new file mode 100644 index 0000000..ad2a6a2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedPlanController.java @@ -0,0 +1,107 @@ +package com.zhyc.module.feed.controller; + +import java.util.Date; +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +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.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 + */ +@RestController +@RequestMapping("/feed/FeedPlan") +public class SgFeedPlanController extends BaseController +{ + private final ISgFeedPlanService sgFeedPlanService; + + public SgFeedPlanController(ISgFeedPlanService sgFeedPlanService) { + this.sgFeedPlanService = sgFeedPlanService; + } + + /** + * 查询饲喂计划列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:list')") + @GetMapping("/list") + public TableDataInfo list(SgFeedPlan sgFeedPlan) + { + startPage(); + List list = sgFeedPlanService.selectSgFeedPlanList(sgFeedPlan); + return getDataTable(list); + } + + /** + * 导出饲喂计划列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:export')") + @Log(title = "饲喂计划", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SgFeedPlan sgFeedPlan) + { + List list = sgFeedPlanService.selectSgFeedPlanList(sgFeedPlan); + ExcelUtil util = new ExcelUtil<>(SgFeedPlan.class); + util.exportExcel(response, list, "饲喂计划数据"); + } + + /** + * 获取饲喂计划详细信息 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:query')") + @GetMapping(value = "/{createDate}") + public AjaxResult getInfo(@PathVariable("createDate") Date createDate) + { + return success(sgFeedPlanService.selectSgFeedPlanByCreateDate(createDate)); + } + + /** + * 新增饲喂计划 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:add')") + @Log(title = "饲喂计划", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SgFeedPlan sgFeedPlan) + { + return toAjax(sgFeedPlanService.insertSgFeedPlan(sgFeedPlan)); + } + + /** + * 修改饲喂计划 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:edit')") + @Log(title = "饲喂计划", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SgFeedPlan sgFeedPlan) + { + return toAjax(sgFeedPlanService.updateSgFeedPlan(sgFeedPlan)); + } + + /** + * 删除饲喂计划 + */ + @PreAuthorize("@ss.hasPermi('feed:FeedPlan:remove')") + @Log(title = "饲喂计划", businessType = BusinessType.DELETE) + @DeleteMapping("/{createDates}") + public AjaxResult remove(@PathVariable Date[] createDates) + { + return toAjax(sgFeedPlanService.deleteSgFeedPlanByCreateDates(createDates)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java new file mode 100644 index 0000000..fb6a83b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaListController.java @@ -0,0 +1,106 @@ +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.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.SgFormulaList; +import com.zhyc.module.feed.service.ISgFormulaListService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 配方列表Controller + * + * @author HashMap + * @date 2025-08-09 + */ +@RestController +@RequestMapping("/feed/FormulaList") +public class SgFormulaListController extends BaseController +{ + private final ISgFormulaListService sgFormulaListService; + + public SgFormulaListController(ISgFormulaListService sgFormulaListService) { + this.sgFormulaListService = sgFormulaListService; + } + + /** + * 查询配方列表列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:list')") + @GetMapping("/list") + public TableDataInfo list(SgFormulaList sgFormulaList) + { + startPage(); + List list = sgFormulaListService.selectSgFormulaListList(sgFormulaList); + return getDataTable(list); + } + + /** + * 导出配方列表列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:export')") + @Log(title = "配方列表", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SgFormulaList sgFormulaList) + { + List list = sgFormulaListService.selectSgFormulaListList(sgFormulaList); + ExcelUtil util = new ExcelUtil<>(SgFormulaList.class); + util.exportExcel(response, list, "配方列表数据"); + } + + /** + * 获取配方列表详细信息 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:query')") + @GetMapping(value = "/{code}") + public AjaxResult getInfo(@PathVariable("code") Long code) + { + return success(sgFormulaListService.selectSgFormulaListByCode(code)); + } + + /** + * 新增配方列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:add')") + @Log(title = "配方列表", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SgFormulaList sgFormulaList) + { + return toAjax(sgFormulaListService.insertSgFormulaList(sgFormulaList)); + } + + /** + * 修改配方列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:edit')") + @Log(title = "配方列表", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SgFormulaList sgFormulaList) + { + return toAjax(sgFormulaListService.updateSgFormulaList(sgFormulaList)); + } + + /** + * 删除配方列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaList:remove')") + @Log(title = "配方列表", businessType = BusinessType.DELETE) + @DeleteMapping("/{codes}") + public AjaxResult remove(@PathVariable Long[] codes) + { + return toAjax(sgFormulaListService.deleteSgFormulaListByCodes(codes)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java new file mode 100644 index 0000000..3f33ae2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java @@ -0,0 +1,172 @@ +package com.zhyc.module.feed.controller; + +import java.util.List; +import java.util.Objects; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.feed.domain.SgFormulaList; +import com.zhyc.module.feed.service.ISgFormulaListService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; +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.SgFormulaManagement; +import com.zhyc.module.feed.service.ISgFormulaManagementService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 配方管理Controller + * + * @author HashMap + * @date 2025-08-09 + */ +@RestController +@RequestMapping("/feed/FormulaManagement") +public class SgFormulaManagementController extends BaseController { + private final ISgFormulaManagementService sgFormulaManagementService; + private final ISgFormulaListService sgFormulaListService; + + public SgFormulaManagementController(ISgFormulaManagementService sgFormulaManagementService, ISgFormulaListService sgFormulaListService) { + this.sgFormulaManagementService = sgFormulaManagementService; + this.sgFormulaListService = sgFormulaListService; + } + + /** + * 查询配方管理列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:list')") + @GetMapping("/list") + public TableDataInfo list(SgFormulaManagement sgFormulaManagement) { + startPage(); + // 非查询详情时设定BatchId为0查询配方模板 + if (null != sgFormulaManagement && !Objects.equals(sgFormulaManagement.getQueryType(), "query")) { + sgFormulaManagement.setBatchId("0"); + } + List FormulaManagement = sgFormulaManagementService.selectSgFormulaManagementList(sgFormulaManagement); + for (SgFormulaManagement sgFormulaManagementItem : FormulaManagement) { + SgFormulaManagement query = new SgFormulaManagement(); + query.setFormulaId(sgFormulaManagementItem.getFormulaId()); + query.setQueryType("Sub"); + List subFormula = sgFormulaManagementService.selectSgFormulaManagementList(query); + sgFormulaManagementItem.setSubFormulaList(subFormula); + } + return getDataTable(FormulaManagement); + } + + /** + * 导出配方管理列表 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:export')") + @Log(title = "配方管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SgFormulaManagement sgFormulaManagement) { + List list = sgFormulaManagementService.selectSgFormulaManagementList(sgFormulaManagement); + ExcelUtil util = new ExcelUtil<>(SgFormulaManagement.class); + util.exportExcel(response, list, "配方管理数据"); + } + + /** + * 获取配方管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:query')") + @GetMapping(value = "/{formulaId}") + public AjaxResult getInfo(@PathVariable("formulaId") String formulaId) { + return success(sgFormulaManagementService.selectSgFormulaManagementByFormulaId(formulaId)); + } + + /** + * 新增配方管理 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:add')") + @Log(title = "配方管理", businessType = BusinessType.INSERT) + @PostMapping + @Transactional(rollbackFor = Exception.class) + public AjaxResult add(@RequestBody SgFormulaManagement sgFormulaManagement) { + if (null == sgFormulaManagement) + throw new RuntimeException("ERROR: 数据为空"); + if (Objects.equals(sgFormulaManagement.getBatchId(), "0")) { + SgFormulaManagement exist = sgFormulaManagementService.selectSgFormulaManagementByFormulaId(sgFormulaManagement.getFormulaId()); + if (exist != null) { + throw new RuntimeException("WARNING: 配方编码重复,录入失败"); + } + } else { + SgFormulaManagement exist = new SgFormulaManagement(); + exist.setFormulaId(sgFormulaManagement.getFormulaId()); + exist.setBatchId(sgFormulaManagement.getBatchId()); + if (!sgFormulaManagementService.selectSgFormulaManagementList(exist).isEmpty()) { + throw new RuntimeException("WARNING: 批号重复,录入失败"); + } + } + List sgFormulaList = sgFormulaManagement.getSgFormulaList(); + for (SgFormulaList sgFormulaListItem : sgFormulaList) { + // 前端引用模板数据时会引用主键Code,在插入前置为空 + sgFormulaListItem.setCode(null); + sgFormulaListItem.setFormulaId(sgFormulaManagement.getFormulaId()); + sgFormulaListItem.setBatchId(sgFormulaManagement.getBatchId()); + sgFormulaListService.insertSgFormulaList(sgFormulaListItem); + } + return toAjax(sgFormulaManagementService.insertSgFormulaManagement(sgFormulaManagement)); + } + + /** + * 修改配方管理 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:edit')") + @Log(title = "配方管理", businessType = BusinessType.UPDATE) + @PutMapping + @Transactional(rollbackFor = Exception.class) + public AjaxResult edit(@RequestBody SgFormulaManagement sgFormulaManagement) { + List sgFormulaList = sgFormulaManagement.getSgFormulaList(); + if (null != sgFormulaManagement.getFormulaId() && null != sgFormulaManagement.getBatchId()) { + SgFormulaList delete = new SgFormulaList(); + delete.setFormulaId(sgFormulaManagement.getFormulaId()); + delete.setBatchId(sgFormulaManagement.getBatchId()); + sgFormulaListService.deleteSgFormulaListByFormulaIdAndBatchId(delete); + } else { + throw new RuntimeException("FormulaID & BatchID不能为空"); + } + + // 配方表同步更新 + for (SgFormulaList sgFormulaListItem : sgFormulaList) { + sgFormulaListItem.setBatchId(sgFormulaManagement.getBatchId()); + sgFormulaListItem.setFormulaId(sgFormulaManagement.getFormulaId()); + sgFormulaListService.insertSgFormulaList(sgFormulaListItem); + } + return toAjax(sgFormulaManagementService.updateSgFormulaManagement(sgFormulaManagement)); + } + + /** + * 删除配方管理 + */ + @PreAuthorize("@ss.hasPermi('feed:FormulaManagement:remove')") + @Log(title = "配方管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{formulaId}/{batchId}") + @Transactional(rollbackFor = Exception.class) + public AjaxResult remove(@PathVariable String formulaId, @PathVariable String batchId) { + SgFormulaManagement sgFormulaManagement = new SgFormulaManagement(); + sgFormulaManagement.setFormulaId(formulaId); + sgFormulaManagement.setBatchId(batchId); + if (sgFormulaManagement.getBatchId().equals("0")) { + sgFormulaManagement.setBatchId(null); + List list = sgFormulaManagementService.selectSgFormulaManagementList(sgFormulaManagement); + if (list.size() > 1) { + throw new RuntimeException("WARNING 该配方正被使用,无法删除"); + } + sgFormulaManagement.setBatchId(batchId); + } + // 前置检查完毕 执行删除 + sgFormulaManagement.setBatchId(batchId); + return toAjax(sgFormulaManagementService.deleteSgFormulaManagement(sgFormulaManagement)); + } +} 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 new file mode 100644 index 0000000..8f4c789 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java @@ -0,0 +1,107 @@ +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.SgMaterial; +import com.zhyc.module.feed.service.ISgMaterialService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 原料Controller + * + * @author HashMap + * @date 2025-08-11 + */ +@RestController +@RequestMapping("/feed/material") +public class SgMaterialController extends BaseController +{ + private final ISgMaterialService sgMaterialService; + + public SgMaterialController(ISgMaterialService sgMaterialService) { + this.sgMaterialService = sgMaterialService; + } + + /** + * 查询原料列表 + */ + @PreAuthorize("@ss.hasPermi('feed:material:list')") + @GetMapping("/list") + public TableDataInfo list(SgMaterial sgMaterial) + { + startPage(); + List list = sgMaterialService.selectSgMaterialList(sgMaterial); + return getDataTable(list); + } + + /** + * 导出原料列表 + */ + @PreAuthorize("@ss.hasPermi('feed:material:export')") + @Log(title = "原料", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SgMaterial sgMaterial) + { + List list = sgMaterialService.selectSgMaterialList(sgMaterial); + ExcelUtil util = new ExcelUtil<>(SgMaterial.class); + util.exportExcel(response, list, "原料数据"); + } + + /** + * 获取原料详细信息 + */ + @PreAuthorize("@ss.hasPermi('feed:material:query')") + @GetMapping(value = "/{materialId}") + public AjaxResult getInfo(@PathVariable("materialId") String materialId) + { + return success(sgMaterialService.selectSgMaterialByMaterialId(materialId)); + } + + /** + * 新增原料 + */ + @PreAuthorize("@ss.hasPermi('feed:material:add')") + @Log(title = "原料", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SgMaterial sgMaterial) + { + return toAjax(sgMaterialService.insertSgMaterial(sgMaterial)); + } + + /** + * 修改原料 + */ + @PreAuthorize("@ss.hasPermi('feed:material:edit')") + @Log(title = "原料", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SgMaterial sgMaterial) + { + return toAjax(sgMaterialService.updateSgMaterial(sgMaterial)); + } + + /** + * 删除原料 + */ + @PreAuthorize("@ss.hasPermi('feed:material:remove')") + @Log(title = "原料", businessType = BusinessType.DELETE) + @DeleteMapping("/{materialIds}") + public AjaxResult remove(@PathVariable String[] materialIds) + { + return toAjax(sgMaterialService.deleteSgMaterialByMaterialIds(materialIds)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java new file mode 100644 index 0000000..596eac2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedPlan.java @@ -0,0 +1,132 @@ +package com.zhyc.module.feed.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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_plan + * + * @author HashMap + * @date 2025-08-08 + */ +@Setter +@Getter +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 Long sheepHouseId; + + /** 羊只数量 */ + @Excel(name = "羊只数量") + private Long sheepCount; + + /** 日均计划量 */ + @Excel(name = "日均计划量") + private Long planDailySize; + + /** 计划量(早) */ + @Excel(name = "计划量(早)") + private Long planMorningSize; + + /** 计划总量(早) */ + @Excel(name = "计划总量(早)") + private Long planMorningTotal; + + /** 饲喂比例(早) */ + @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; + + /** 饲喂比例(中) */ + @Excel(name = "饲喂比例(中)") + private Long ratioNoon; + + /** 计划量(下) */ + @Excel(name = "计划量(下)") + private Long planAfternoonSize; + + /** 计划总量(下) */ + @Excel(name = "计划总量(下)") + private Long planAfternoonTotal; + + /** 实际量(下) */ + @Excel(name = "实际量(下)") + private Long actualAfternoonSize; + + /** 饲喂比例(下) */ + @Excel(name = "饲喂比例(下)") + private Long ratioAfternoon; + + /** 计划饲喂总量 */ + @Excel(name = "计划饲喂总量") + private Long planFeedTotal; + + /** 饲草班人员 */ + @Excel(name = "饲草班人员") + private String zookeeper; + + /** 饲喂计划日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "饲喂计划日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date planDate; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("createDate", getCreateDate()) + .append("formulaId", getFormulaId()) + .append("sheepHouseId", getSheepHouseId()) + .append("sheepCount", getSheepCount()) + .append("planDailySize", getPlanDailySize()) + .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()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java new file mode 100644 index 0000000..03ab542 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaList.java @@ -0,0 +1,62 @@ +package com.zhyc.module.feed.domain; + +import lombok.Getter; +import lombok.Setter; +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_formula_list + * + * @author HashMap + * @date 2025-08-09 + */ +@Setter +@Getter +public class SgFormulaList extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + private Long code; + + /** 配方编号 */ + private String formulaId; + + /** 配方编号 */ + private String batchId; + /** 原料编号 */ + @Excel(name = "原料编号") + private String materialId; + + /** 原料名称 */ + @Excel(name = "原料名称") + private String materialName; + + /** 比例 */ + @Excel(name = "比例") + private Long ratio; + + /** 颗粒原料 */ + @Excel(name = "颗粒原料") + private String isGranular; + + /** 补饲 */ + @Excel(name = "补饲") + private String isSupplement; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("code", getCode()) + .append("formulaId", getFormulaId()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("ratio", getRatio()) + .append("isGranular", getIsGranular()) + .append("isSupplement", getIsSupplement()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java new file mode 100644 index 0000000..3fa8563 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFormulaManagement.java @@ -0,0 +1,79 @@ +package com.zhyc.module.feed.domain; + +import java.util.Date; +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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_formula_management + * + * @author HashMap + * @date 2025-08-09 + */ +@Setter +@Getter +public class SgFormulaManagement extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 配方编号 */ + private String formulaId; + + /** 饲养阶段 */ + @Excel(name = "饲养阶段") + private String feedStage; + + /** 批号 */ + @Excel(name = "批号") + private String batchId; + + /** 开始使用时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "开始使用时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date useStartDate; + + /** 结束使用时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "结束使用时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date useEndDate; + + /** 使用状态 */ + @Excel(name = "使用状态") + private String useState; + + /** 备注 */ + @Excel(name = "备注") + private String remark; + + /** 配方列表 */ + private List sgFormulaList; + + /** 子配方 */ + private List subFormulaList; + + /** 查询类型 * + * Sub : 子配方查询 + * query : 类型查询 + * */ + private String queryType; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("formulaId", getFormulaId()) + .append("feedStage", getFeedStage()) + .append("batchId", getBatchId()) + .append("useStartDate", getUseStartDate()) + .append("useEndDate", getUseEndDate()) + .append("useState", getUseState()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java new file mode 100644 index 0000000..a9634be --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java @@ -0,0 +1,15 @@ +package com.zhyc.module.feed.domain; + +import com.zhyc.common.core.domain.BaseEntity; +import lombok.Getter; +import lombok.Setter; + +@Setter +@Getter +public class SgMaterial extends BaseEntity { + private static final long serialVersionUID = 1L; + + private String materialId; + private String materialName; + private String isGranular; +} 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 new file mode 100644 index 0000000..7ea4493 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedPlanMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.feed.mapper; + +import java.util.Date; +import java.util.List; +import com.zhyc.module.feed.domain.SgFeedPlan; +import org.apache.ibatis.annotations.Mapper; + +/** + * 饲喂计划Mapper接口 + * + * @author HashMap + * @date 2025-08-08 + */ +@Mapper +public interface SgFeedPlanMapper +{ + /** + * 查询饲喂计划 + * + * @param createDate 饲喂计划主键 + * @return 饲喂计划 + */ + SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); + + /** + * 查询饲喂计划列表 + * + * @param sgFeedPlan 饲喂计划 + * @return 饲喂计划集合 + */ + List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); + + /** + * 新增饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + int insertSgFeedPlan(SgFeedPlan sgFeedPlan); + + /** + * 修改饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + int updateSgFeedPlan(SgFeedPlan sgFeedPlan); + + /** + * 删除饲喂计划 + * + * @param createDate 饲喂计划主键 + * @return 结果 + */ + int deleteSgFeedPlanByCreateDate(Date createDate); + + /** + * 批量删除饲喂计划 + * + * @param createDates 需要删除的数据主键集合 + * @return 结果 + */ + int deleteSgFeedPlanByCreateDates(Date[] createDates); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaListMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaListMapper.java new file mode 100644 index 0000000..4d13b9e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaListMapper.java @@ -0,0 +1,71 @@ +package com.zhyc.module.feed.mapper; + +import java.util.List; +import com.zhyc.module.feed.domain.SgFormulaList; +import org.apache.ibatis.annotations.Mapper; + +/** + * 配方列表Mapper接口 + * + * @author HashMap + * @date 2025-08-09 + */ +@Mapper +public interface SgFormulaListMapper +{ + /** + * 查询配方列表 + * + * @param code 配方列表主键 + * @return 配方列表 + */ + SgFormulaList selectSgFormulaListByCode(Long code); + + /** + * 查询配方列表列表 + * + * @param sgFormulaList 配方列表 + * @return 配方列表集合 + */ + List selectSgFormulaListList(SgFormulaList sgFormulaList); + + /** + * 新增配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + int insertSgFormulaList(SgFormulaList sgFormulaList); + + /** + * 修改配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + int updateSgFormulaList(SgFormulaList sgFormulaList); + + /** + * 删除配方列表 + * + * @param code 配方列表主键 + * @return 结果 + */ + int deleteSgFormulaListByCode(Long code); + + /** + * 批量删除配方列表 + * + * @param codes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteSgFormulaListByCodes(Long[] codes); + + /** + * 批量删除配方列表 + * + * @param sgFormulaList 参数实体 + * @return 结果 + */ + int deleteSgFormulaListByFormulaIdAndBatchId(SgFormulaList sgFormulaList); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaManagementMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaManagementMapper.java new file mode 100644 index 0000000..ff782e9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFormulaManagementMapper.java @@ -0,0 +1,65 @@ +package com.zhyc.module.feed.mapper; + +import java.util.List; +import com.zhyc.module.feed.domain.SgFormulaManagement; +import org.apache.ibatis.annotations.Mapper; + +/** + * 配方管理Mapper接口 + * + * @author HashMap + * @date 2025-08-09 + */ +@Mapper +public interface SgFormulaManagementMapper +{ + /** + * 查询配方管理 + * + * @param formulaId 配方管理主键 + * @return 配方管理 + */ + SgFormulaManagement selectSgFormulaManagementByFormulaId(String formulaId); + + /** + * 查询配方管理列表 + * + * @param sgFormulaManagement 配方管理 + * @return 配方管理集合 + */ + List selectSgFormulaManagementList(SgFormulaManagement sgFormulaManagement); + + /** + * 新增配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + int insertSgFormulaManagement(SgFormulaManagement sgFormulaManagement); + + /** + * 修改配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + int updateSgFormulaManagement(SgFormulaManagement sgFormulaManagement); + + /** + * 删除配方管理 + * + * @param formulaId 配方管理主键 + * @return 结果 + */ + int deleteSgFormulaManagementByFormulaId(String formulaId); + + /** + * 批量删除配方管理 + * + * @param formulaIds 需要删除的数据主键集合 + * @return 结果 + */ + int deleteSgFormulaManagementByFormulaIds(String[] formulaIds); + + int deleteSgFormulaManagement(SgFormulaManagement sgFormulaManagement); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java new file mode 100644 index 0000000..a7a3d70 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.feed.mapper; + +import java.util.List; +import com.zhyc.module.feed.domain.SgMaterial; +import org.apache.ibatis.annotations.Mapper; + +/** + * 原料Mapper接口 + * + * @author HashMap + * @date 2025-08-11 + */ +@Mapper +public interface SgMaterialMapper +{ + /** + * 查询原料 + * + * @param materialId 原料主键 + * @return 原料 + */ + public SgMaterial selectSgMaterialByMaterialId(String materialId); + + /** + * 查询原料列表 + * + * @param sgMaterial 原料 + * @return 原料集合 + */ + public List selectSgMaterialList(SgMaterial sgMaterial); + + /** + * 新增原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + public int insertSgMaterial(SgMaterial sgMaterial); + + /** + * 修改原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + public int updateSgMaterial(SgMaterial sgMaterial); + + /** + * 删除原料 + * + * @param materialId 原料主键 + * @return 结果 + */ + public int deleteSgMaterialByMaterialId(String materialId); + + /** + * 批量删除原料 + * + * @param materialIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSgMaterialByMaterialIds(String[] materialIds); +} 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 new file mode 100644 index 0000000..3b172e0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedPlanService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.feed.service; + +import java.util.Date; +import java.util.List; +import com.zhyc.module.feed.domain.SgFeedPlan; + +/** + * 饲喂计划Service接口 + * + * @author HashMap + * @date 2025-08-08 + */ +public interface ISgFeedPlanService +{ + /** + * 查询饲喂计划 + * + * @param createDate 饲喂计划主键 + * @return 饲喂计划 + */ + SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate); + + /** + * 查询饲喂计划列表 + * + * @param sgFeedPlan 饲喂计划 + * @return 饲喂计划集合 + */ + List selectSgFeedPlanList(SgFeedPlan sgFeedPlan); + + /** + * 新增饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + int insertSgFeedPlan(SgFeedPlan sgFeedPlan); + + /** + * 修改饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + int updateSgFeedPlan(SgFeedPlan sgFeedPlan); + + /** + * 批量删除饲喂计划 + * + * @param createDates 需要删除的饲喂计划主键集合 + * @return 结果 + */ + int deleteSgFeedPlanByCreateDates(Date[] createDates); + + /** + * 删除饲喂计划信息 + * + * @param createDate 饲喂计划主键 + * @return 结果 + */ + int deleteSgFeedPlanByCreateDate(Date createDate); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaListService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaListService.java new file mode 100644 index 0000000..288308d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaListService.java @@ -0,0 +1,63 @@ +package com.zhyc.module.feed.service; + +import java.util.List; +import com.zhyc.module.feed.domain.SgFormulaList; + +/** + * 配方列表Service接口 + * + * @author HashMap + * @date 2025-08-09 + */ +public interface ISgFormulaListService +{ + /** + * 查询配方列表 + * + * @param code 配方列表主键 + * @return 配方列表 + */ + SgFormulaList selectSgFormulaListByCode(Long code); + + /** + * 查询配方列表列表 + * + * @param sgFormulaList 配方列表 + * @return 配方列表集合 + */ + List selectSgFormulaListList(SgFormulaList sgFormulaList); + + /** + * 新增配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + int insertSgFormulaList(SgFormulaList sgFormulaList); + + /** + * 修改配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + int updateSgFormulaList(SgFormulaList sgFormulaList); + + /** + * 批量删除配方列表 + * + * @param codes 需要删除的配方列表主键集合 + * @return 结果 + */ + int deleteSgFormulaListByCodes(Long[] codes); + + /** + * 删除配方列表信息 + * + * @param code 配方列表主键 + * @return 结果 + */ + int deleteSgFormulaListByCode(Long code); + + int deleteSgFormulaListByFormulaIdAndBatchId(SgFormulaList sgFormulaList); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaManagementService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaManagementService.java new file mode 100644 index 0000000..55d0156 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFormulaManagementService.java @@ -0,0 +1,66 @@ +package com.zhyc.module.feed.service; + +import java.util.List; +import com.zhyc.module.feed.domain.SgFormulaManagement; + +/** + * 配方管理Service接口 + * + * @author HashMap + * @date 2025-08-09 + */ +public interface ISgFormulaManagementService +{ + /** + * 查询配方管理 + * + * @param formulaId 配方管理主键 + * @return 配方管理 + */ + SgFormulaManagement selectSgFormulaManagementByFormulaId(String formulaId); + + /** + * 查询配方管理列表 + * + * @param sgFormulaManagement 配方管理 + * @return 配方管理集合 + */ + List selectSgFormulaManagementList(SgFormulaManagement sgFormulaManagement); + + /** + * 新增配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + int insertSgFormulaManagement(SgFormulaManagement sgFormulaManagement); + + /** + * 修改配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + int updateSgFormulaManagement(SgFormulaManagement sgFormulaManagement); + + /** + * 批量删除配方管理 + * + * @param formulaIds 需要删除的配方管理主键集合 + * @return 结果 + */ + int deleteSgFormulaManagementByFormulaIds(String[] formulaIds); + + /** + * 删除配方管理信息 + * + * @param formulaId 配方管理主键 + * @return 结果 + */ + int deleteSgFormulaManagementByFormulaId(String formulaId); + + /*** + * 删除配方管理信息 + */ + int deleteSgFormulaManagement(SgFormulaManagement sgFormulaManagement); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java new file mode 100644 index 0000000..ba1e6ac --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.feed.service; + +import java.util.List; +import com.zhyc.module.feed.domain.SgMaterial; + +/** + * 原料Service接口 + * + * @author HashMap + * @date 2025-08-11 + */ +public interface ISgMaterialService +{ + /** + * 查询原料 + * + * @param materialId 原料主键 + * @return 原料 + */ + SgMaterial selectSgMaterialByMaterialId(String materialId); + + /** + * 查询原料列表 + * + * @param sgMaterial 原料 + * @return 原料集合 + */ + List selectSgMaterialList(SgMaterial sgMaterial); + + /** + * 新增原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + int insertSgMaterial(SgMaterial sgMaterial); + + /** + * 修改原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + int updateSgMaterial(SgMaterial sgMaterial); + + /** + * 批量删除原料 + * + * @param materialIds 需要删除的原料主键集合 + * @return 结果 + */ + int deleteSgMaterialByMaterialIds(String[] materialIds); + + /** + * 删除原料信息 + * + * @param materialId 原料主键 + * @return 结果 + */ + int deleteSgMaterialByMaterialId(String materialId); +} 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 new file mode 100644 index 0000000..937cd32 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedPlanServiceImpl.java @@ -0,0 +1,99 @@ +package com.zhyc.module.feed.service.impl; + +import java.util.Date; +import java.util.List; + +import org.springframework.stereotype.Service; +import com.zhyc.module.feed.mapper.SgFeedPlanMapper; +import com.zhyc.module.feed.domain.SgFeedPlan; +import com.zhyc.module.feed.service.ISgFeedPlanService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 饲喂计划Service业务层处理 + * + * @author HashMap + * @date 2025-08-08 + */ +@Service +@Transactional(rollbackFor=Exception.class) +public class SgFeedPlanServiceImpl implements ISgFeedPlanService +{ + private final SgFeedPlanMapper sgFeedPlanMapper; + + public SgFeedPlanServiceImpl(SgFeedPlanMapper sgFeedPlanMapper) { + this.sgFeedPlanMapper = sgFeedPlanMapper; + } + + /** + * 查询饲喂计划 + * + * @param createDate 饲喂计划主键 + * @return 饲喂计划 + */ + @Override + public SgFeedPlan selectSgFeedPlanByCreateDate(Date createDate) + { + return sgFeedPlanMapper.selectSgFeedPlanByCreateDate(createDate); + } + + /** + * 查询饲喂计划列表 + * + * @param sgFeedPlan 饲喂计划 + * @return 饲喂计划 + */ + @Override + public List selectSgFeedPlanList(SgFeedPlan sgFeedPlan) + { + return sgFeedPlanMapper.selectSgFeedPlanList(sgFeedPlan); + } + + /** + * 新增饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + @Override + public int insertSgFeedPlan(SgFeedPlan sgFeedPlan) + { + return sgFeedPlanMapper.insertSgFeedPlan(sgFeedPlan); + } + + /** + * 修改饲喂计划 + * + * @param sgFeedPlan 饲喂计划 + * @return 结果 + */ + @Override + public int updateSgFeedPlan(SgFeedPlan sgFeedPlan) + { + return sgFeedPlanMapper.updateSgFeedPlan(sgFeedPlan); + } + + /** + * 批量删除饲喂计划 + * + * @param createDates 需要删除的饲喂计划主键 + * @return 结果 + */ + @Override + public int deleteSgFeedPlanByCreateDates(Date[] createDates) + { + return sgFeedPlanMapper.deleteSgFeedPlanByCreateDates(createDates); + } + + /** + * 删除饲喂计划信息 + * + * @param createDate 饲喂计划主键 + * @return 结果 + */ + @Override + public int deleteSgFeedPlanByCreateDate(Date createDate) + { + return sgFeedPlanMapper.deleteSgFeedPlanByCreateDate(createDate); + } +} 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 new file mode 100644 index 0000000..f26eb3a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaListServiceImpl.java @@ -0,0 +1,97 @@ +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; +import com.zhyc.module.feed.domain.SgFormulaList; +import com.zhyc.module.feed.service.ISgFormulaListService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 配方列表Service业务层处理 + * + * @author HashMap + * @date 2025-08-09 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class SgFormulaListServiceImpl implements ISgFormulaListService { + private final SgFormulaListMapper sgFormulaListMapper; + + public SgFormulaListServiceImpl(SgFormulaListMapper sgFormulaListMapper) { + this.sgFormulaListMapper = sgFormulaListMapper; + } + + /** + * 查询配方列表 + * + * @param code 配方列表主键 + * @return 配方列表 + */ + @Override + public SgFormulaList selectSgFormulaListByCode(Long code) { + return sgFormulaListMapper.selectSgFormulaListByCode(code); + } + + /** + * 查询配方列表列表 + * + * @param sgFormulaList 配方列表 + * @return 配方列表 + */ + @Override + public List selectSgFormulaListList(SgFormulaList sgFormulaList) { + return sgFormulaListMapper.selectSgFormulaListList(sgFormulaList); + } + + /** + * 新增配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + @Override + public int insertSgFormulaList(SgFormulaList sgFormulaList) { + return sgFormulaListMapper.insertSgFormulaList(sgFormulaList); + } + + /** + * 修改配方列表 + * + * @param sgFormulaList 配方列表 + * @return 结果 + */ + @Override + public int updateSgFormulaList(SgFormulaList sgFormulaList) { + return sgFormulaListMapper.updateSgFormulaList(sgFormulaList); + } + + /** + * 批量删除配方列表 + * + * @param codes 需要删除的配方列表主键 + * @return 结果 + */ + @Override + public int deleteSgFormulaListByCodes(Long[] codes) { + return sgFormulaListMapper.deleteSgFormulaListByCodes(codes); + } + + /** + * 删除配方列表信息 + * + * @param code 配方列表主键 + * @return 结果 + */ + @Override + public int deleteSgFormulaListByCode(Long code) { + return sgFormulaListMapper.deleteSgFormulaListByCode(code); + } + + @Override + public int deleteSgFormulaListByFormulaIdAndBatchId(SgFormulaList sgFormulaList) { + return sgFormulaListMapper.deleteSgFormulaListByFormulaIdAndBatchId(sgFormulaList); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java new file mode 100644 index 0000000..b07028f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFormulaManagementServiceImpl.java @@ -0,0 +1,135 @@ +package com.zhyc.module.feed.service.impl; + +import java.util.Iterator; +import java.util.List; +import java.util.Objects; + +import com.zhyc.module.feed.domain.SgFormulaList; +import com.zhyc.module.feed.mapper.SgFormulaListMapper; +import org.springframework.stereotype.Service; +import com.zhyc.module.feed.mapper.SgFormulaManagementMapper; +import com.zhyc.module.feed.domain.SgFormulaManagement; +import com.zhyc.module.feed.service.ISgFormulaManagementService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 配方管理Service业务层处理 + * + * @author HashMap + * @date 2025-08-09 + */ +@Service +public class SgFormulaManagementServiceImpl implements ISgFormulaManagementService { + private final SgFormulaManagementMapper sgFormulaManagementMapper; + private final SgFormulaListMapper sgFormulaListMapper; + + public SgFormulaManagementServiceImpl(SgFormulaManagementMapper sgFormulaManagementMapper, SgFormulaListMapper sgFormulaListMapper) { + this.sgFormulaManagementMapper = sgFormulaManagementMapper; + this.sgFormulaListMapper = sgFormulaListMapper; + } + + /** + * 查询配方管理 + * + * @param formulaId 配方管理主键 + * @return 配方管理 + */ + @Override + public SgFormulaManagement selectSgFormulaManagementByFormulaId(String formulaId) { + return sgFormulaManagementMapper.selectSgFormulaManagementByFormulaId(formulaId); + } + + /** + * 查询配方管理列表 + * + * @param sgFormulaManagement 配方管理 + * @return 配方管理 + */ + @Override + public List selectSgFormulaManagementList(SgFormulaManagement sgFormulaManagement) { + List sgFormulaManagements = + sgFormulaManagementMapper.selectSgFormulaManagementList(sgFormulaManagement); + + Iterator iterator = sgFormulaManagements.iterator(); + while (iterator.hasNext()) { + SgFormulaManagement formulaManagement = iterator.next(); + // 子查询中去除重复的父项 + if (formulaManagement != null + && sgFormulaManagement.getQueryType() != null + && sgFormulaManagement.getQueryType().equals("Sub") + && Objects.equals(formulaManagement.getBatchId(), "0")) { + iterator.remove(); // 安全删除 + continue; // 删除后跳过本次循环 + } + // 绑定配方列表 + if (formulaManagement != null + && formulaManagement.getFormulaId() != null + && formulaManagement.getBatchId() != null) { + SgFormulaList sgFormulaList = new SgFormulaList(); + sgFormulaList.setFormulaId(formulaManagement.getFormulaId()); + sgFormulaList.setBatchId(formulaManagement.getBatchId()); + List formulaLists = + sgFormulaListMapper.selectSgFormulaListList(sgFormulaList); + formulaManagement.setSgFormulaList(formulaLists); + } + } + + return sgFormulaManagements; + } + + + /** + * 新增配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + @Override + public int insertSgFormulaManagement(SgFormulaManagement sgFormulaManagement) { + return sgFormulaManagementMapper.insertSgFormulaManagement(sgFormulaManagement); + } + + /** + * 修改配方管理 + * + * @param sgFormulaManagement 配方管理 + * @return 结果 + */ + @Override + public int updateSgFormulaManagement(SgFormulaManagement sgFormulaManagement) { + return sgFormulaManagementMapper.updateSgFormulaManagement(sgFormulaManagement); + } + + /** + * 批量删除配方管理 + * + * @param formulaIds 需要删除的配方管理主键 + * @return 结果 + */ + @Override + public int deleteSgFormulaManagementByFormulaIds(String[] formulaIds) { + return sgFormulaManagementMapper.deleteSgFormulaManagementByFormulaIds(formulaIds); + } + + /** + * 删除配方管理信息 + * + * @param formulaId 配方管理主键 + * @return 结果 + */ + @Override + public int deleteSgFormulaManagementByFormulaId(String formulaId) { + return sgFormulaManagementMapper.deleteSgFormulaManagementByFormulaId(formulaId); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public int deleteSgFormulaManagement(SgFormulaManagement sgFormulaManagement) { + // 删除关联配方表 + SgFormulaList sgFormulaList = new SgFormulaList(); + sgFormulaList.setFormulaId(sgFormulaManagement.getFormulaId()); + sgFormulaList.setBatchId(sgFormulaManagement.getBatchId()); + sgFormulaListMapper.deleteSgFormulaListByFormulaIdAndBatchId(sgFormulaList); + return sgFormulaManagementMapper.deleteSgFormulaManagement(sgFormulaManagement); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java new file mode 100644 index 0000000..b858ae3 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java @@ -0,0 +1,96 @@ +package com.zhyc.module.feed.service.impl; + +import java.util.List; + +import org.springframework.stereotype.Service; +import com.zhyc.module.feed.mapper.SgMaterialMapper; +import com.zhyc.module.feed.domain.SgMaterial; +import com.zhyc.module.feed.service.ISgMaterialService; + +/** + * 原料Service业务层处理 + * + * @author HashMap + * @date 2025-08-11 + */ +@Service +public class SgMaterialServiceImpl implements ISgMaterialService +{ + private final SgMaterialMapper sgMaterialMapper; + + public SgMaterialServiceImpl(SgMaterialMapper sgMaterialMapper) { + this.sgMaterialMapper = sgMaterialMapper; + } + + /** + * 查询原料 + * + * @param materialId 原料主键 + * @return 原料 + */ + @Override + public SgMaterial selectSgMaterialByMaterialId(String materialId) + { + return sgMaterialMapper.selectSgMaterialByMaterialId(materialId); + } + + /** + * 查询原料列表 + * + * @param sgMaterial 原料 + * @return 原料 + */ + @Override + public List selectSgMaterialList(SgMaterial sgMaterial) + { + return sgMaterialMapper.selectSgMaterialList(sgMaterial); + } + + /** + * 新增原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + @Override + public int insertSgMaterial(SgMaterial sgMaterial) + { + return sgMaterialMapper.insertSgMaterial(sgMaterial); + } + + /** + * 修改原料 + * + * @param sgMaterial 原料 + * @return 结果 + */ + @Override + public int updateSgMaterial(SgMaterial sgMaterial) + { + return sgMaterialMapper.updateSgMaterial(sgMaterial); + } + + /** + * 批量删除原料 + * + * @param materialIds 需要删除的原料主键 + * @return 结果 + */ + @Override + public int deleteSgMaterialByMaterialIds(String[] materialIds) + { + return sgMaterialMapper.deleteSgMaterialByMaterialIds(materialIds); + } + + /** + * 删除原料信息 + * + * @param materialId 原料主键 + * @return 结果 + */ + @Override + public int deleteSgMaterialByMaterialId(String materialId) + { + return sgMaterialMapper.deleteSgMaterialByMaterialId(materialId); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java index 7632654..7af887f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java @@ -107,13 +107,15 @@ public class WzStockInServiceImpl implements IWzStockInService { int successNum = 0; int failureNum = 0; int sameNum = 0; + boolean emptyTable = true; StringBuilder successMsg = new StringBuilder(); StringBuilder failureMsg = new StringBuilder(); try { WzStockIn earliestStockIn = wzStockInMapper.getEarliestStockIn(); + if (null != earliestStockIn) emptyTable = false; System.out.println(earliestStockIn); for (WzStockIn wzStockIn : StockInList) { - if (earliestStockIn.getDocDate().getTime() >= wzStockIn.getDocDate().getTime()) { + if (!emptyTable && earliestStockIn.getDocDate().getTime() >= wzStockIn.getDocDate().getTime()) { sameNum++; continue; } diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml new file mode 100644 index 0000000..fe2b6e3 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + + + + + insert into sg_feed_plan + + 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, + + + #{createDate}, + #{formulaId}, + #{sheepHouseId}, + #{sheepCount}, + #{planDailySize}, + #{planMorningSize}, + #{planMorningTotal}, + #{ratioMorning}, + #{actualMorningSize}, + #{planNoonSize}, + #{planNoonTotal}, + #{actualNoonSize}, + #{ratioNoon}, + #{planAfternoonSize}, + #{planAfternoonTotal}, + #{actualAfternoonSize}, + #{ratioAfternoon}, + #{planFeedTotal}, + #{zookeeper}, + #{planDate}, + #{remark}, + + + + + update sg_feed_plan + + formula_id = #{formulaId}, + sheep_house_id = #{sheepHouseId}, + sheep_count = #{sheepCount}, + plan_daily_size = #{planDailySize}, + plan_morning_size = #{planMorningSize}, + plan_morning_total = #{planMorningTotal}, + ratio_morning = #{ratioMorning}, + actual_morning_size = #{actualMorningSize}, + plan_noon_size = #{planNoonSize}, + plan_noon_total = #{planNoonTotal}, + actual_noon_size = #{actualNoonSize}, + ratio_noon = #{ratioNoon}, + plan_afternoon_size = #{planAfternoonSize}, + plan_afternoon_total = #{planAfternoonTotal}, + actual_afternoon_size = #{actualAfternoonSize}, + ratio_afternoon = #{ratioAfternoon}, + plan_feed_total = #{planFeedTotal}, + zookeeper = #{zookeeper}, + plan_date = #{planDate}, + remark = #{remark}, + + where create_date = #{createDate} + + + + delete from sg_feed_plan where create_date = #{createDate} + + + + delete from sg_feed_plan where create_date in + + #{createDate} + + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml new file mode 100644 index 0000000..f422ccb --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + select code, formula_id, material_id, material_name, ratio, is_granular, is_supplement from sg_formula_list + + + + + + + + insert into sg_formula_list + + code, + formula_id, + batch_id, + material_id, + material_name, + ratio, + is_granular, + is_supplement, + + + #{code}, + #{formulaId}, + #{batchId}, + #{materialId}, + #{materialName}, + #{ratio}, + #{isGranular}, + #{isSupplement}, + + + + + update sg_formula_list + + formula_id = #{formulaId}, + material_id = #{materialId}, + material_name = #{materialName}, + ratio = #{ratio}, + is_granular = #{isGranular}, + is_supplement = #{isSupplement}, + + where code = #{code} + + + + delete from sg_formula_list where code = #{code} + + + + delete from sg_formula_list where code in + + #{code} + + + + + DELETE FROM sg_formula_list WHERE formula_id = #{formulaId} AND batch_id = #{batchId} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml new file mode 100644 index 0000000..17602f1 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + select formula_id, feed_stage, batch_id, use_start_date, use_end_date, use_state, remark from sg_formula_management + + + + + + + + insert into sg_formula_management + + formula_id, + feed_stage, + batch_id, + use_start_date, + use_end_date, + use_state, + remark, + + + #{formulaId}, + #{feedStage}, + #{batchId}, + #{useStartDate}, + #{useEndDate}, + #{useState}, + #{remark}, + + + + + update sg_formula_management + + feed_stage = #{feedStage}, + use_start_date = #{useStartDate}, + use_end_date = #{useEndDate}, + use_state = #{useState}, + remark = #{remark}, + + where formula_id = #{formulaId} AND batch_id = #{batchId} + + + + delete from sg_formula_management where formula_id = #{formulaId} + + + + delete from sg_formula_management where formula_id in + + #{formulaId} + + + + delete from sg_formula_management where formula_id = #{formulaId} and batch_id = #{batchId} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml new file mode 100644 index 0000000..f4960c9 --- /dev/null +++ b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + select material_id, material_name, is_granular from sg_material + + + + + + + + insert into sg_material + + material_id, + material_name, + is_granular, + + + #{materialId}, + #{materialName}, + #{isGranular}, + + + + + update sg_material + + material_name = #{materialName}, + is_granular = #{isGranular}, + + where material_id = #{materialId} + + + + delete from sg_material where material_id = #{materialId} + + + + delete from sg_material where material_id in + + #{materialId} + + + \ No newline at end of file From aefd95400370a8ed4670b81ba97fe8d51da7ce07 Mon Sep 17 00:00:00 2001 From: HashMap Date: Tue, 12 Aug 2025 15:58:51 +0800 Subject: [PATCH 09/23] =?UTF-8?q?perf(module=20-=20feed):=20=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E4=BA=86=E4=B8=80=E9=83=A8=E5=88=86=E5=86=97=E4=BD=99?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E4=BB=A3=E7=A0=81=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SgFeedDetailsController.java | 104 -------- .../feed/controller/SgFeedInfoController.java | 104 -------- .../controller/SgFeedRatioController.java | 104 -------- .../feed/controller/SgFodderController.java | 104 -------- .../module/feed/domain/SgFeedDetails.java | 82 ------ .../zhyc/module/feed/domain/SgFeedInfo.java | 252 ------------------ .../zhyc/module/feed/domain/SgFeedRatio.java | 82 ------ .../com/zhyc/module/feed/domain/SgFodder.java | 67 ----- .../feed/mapper/SgFeedDetailsMapper.java | 61 ----- .../module/feed/mapper/SgFeedInfoMapper.java | 61 ----- .../module/feed/mapper/SgFeedRatioMapper.java | 61 ----- .../module/feed/mapper/SgFodderMapper.java | 61 ----- .../feed/service/ISgFeedDetailsService.java | 61 ----- .../feed/service/ISgFeedInfoService.java | 61 ----- .../feed/service/ISgFeedRatioService.java | 61 ----- .../module/feed/service/ISgFodderService.java | 61 ----- .../impl/SgFeedDetailsServiceImpl.java | 93 ------- .../service/impl/SgFeedInfoServiceImpl.java | 95 ------- .../service/impl/SgFeedRatioServiceImpl.java | 93 ------- .../service/impl/SgFodderServiceImpl.java | 93 ------- .../mapper/feed/SgFeedDetailsMapper.xml | 66 ----- .../mapper/feed/SgFeedInfoMapper.xml | 129 --------- .../mapper/feed/SgFeedRatioMapper.xml | 66 ----- .../resources/mapper/feed/SgFodderMapper.xml | 61 ----- 24 files changed, 2083 deletions(-) delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedDetailsController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedInfoController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedRatioController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFodderController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedDetails.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedInfo.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFeedRatio.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgFodder.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedDetailsMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedInfoMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFeedRatioMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgFodderMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedDetailsService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedInfoService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFeedRatioService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgFodderService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedDetailsServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedInfoServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFeedRatioServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgFodderServiceImpl.java delete mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedDetailsMapper.xml delete mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedInfoMapper.xml delete mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFeedRatioMapper.xml delete mode 100644 zhyc-module/src/main/resources/mapper/feed/SgFodderMapper.xml 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/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/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/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/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/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/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/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/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 From c9f05d722f649726e5661e90e129757f55eb4c68 Mon Sep 17 00:00:00 2001 From: ll <1079863556@qq.com> Date: Wed, 13 Aug 2025 18:55:55 +0800 Subject: [PATCH 10/23] =?UTF-8?q?=E5=A5=B6=E4=BA=A7=E9=87=8F=E5=88=86?= =?UTF-8?q?=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../NpSheepMilkAnalysisController.java | 51 +--- .../domain/NpSheepMilkAnalysis.java | 42 ++- .../mapper/NpSheepMilkAnalysisMapper.java | 29 +- .../service/INpSheepMilkAnalysisService.java | 10 +- .../impl/NpSheepMilkAnalysisServiceImpl.java | 277 ++++++++++++++++-- .../NpSheepMilkAnalysisMapper.xml | 180 +++--------- 6 files changed, 380 insertions(+), 209 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java index 0c2955d..3e4f07a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java @@ -8,12 +8,14 @@ import com.zhyc.common.enums.BusinessType; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; +/** + * 只保留:分页列表(只读) + 单条查询 + 导出 + */ @RestController @RequestMapping("/dairyProducts/sheepMilkAnalysis") public class NpSheepMilkAnalysisController extends BaseController { @@ -22,58 +24,33 @@ public class NpSheepMilkAnalysisController extends BaseController { private INpSheepMilkAnalysisService npSheepMilkAnalysisService; /** - * 查询奶产量分析列表 + * 查询奶产量分析列表(只读,分页) + * 支持参数 manageEarTag(耳号模糊) 和 screenDays(筛选天数) */ @GetMapping("/list") public TableDataInfo list(NpSheepMilkAnalysis analysis) { - startPage(); + startPage(); // 使用 PageHelper 分页(注意 service 中第一个 DB 调用是 distinct sheep id) List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); return getDataTable(list); } /** - * 获取单个分析记录详细信息 + * 获取单个分析记录详细信息(按 sheepId) */ - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return AjaxResult.success(npSheepMilkAnalysisService.selectNpSheepMilkAnalysisById(id)); - } - /** - * 新增奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody NpSheepMilkAnalysis analysis) { - return toAjax(npSheepMilkAnalysisService.insertNpSheepMilkAnalysis(analysis)); + @GetMapping(value = "/{sheepId}") + public AjaxResult getInfo(@PathVariable("sheepId") String sheepId) { + return AjaxResult.success(npSheepMilkAnalysisService.selectNpSheepMilkAnalysisBySheepId(sheepId)); } /** - * 修改奶产量分析记录 + * 导出奶产量分析记录(Excel) + * 支持 manageEarTag 与 screenDays 两个查询条件 */ - @Log(title = "奶产量分析", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody NpSheepMilkAnalysis analysis) { - return toAjax(npSheepMilkAnalysisService.updateNpSheepMilkAnalysis(analysis)); - } - - /** - * 删除奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(npSheepMilkAnalysisService.deleteNpSheepMilkAnalysisByIds(ids)); - } - - /** - * 导出奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.EXPORT) + @Log(title = "奶产量分析 导出", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult export(NpSheepMilkAnalysis analysis) { List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); ExcelUtil util = new ExcelUtil<>(NpSheepMilkAnalysis.class); - return util.exportExcel(list, "奶产量分析数据"); + return util.exportExcel(list, "羊奶产量分析数据"); } } - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java index 05972f6..0573a0d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java @@ -1,34 +1,64 @@ package com.zhyc.module.dairyProducts.domain; import java.util.Date; + public class NpSheepMilkAnalysis { + // 唯一键(可用于前端 row-key) private String sheepId; + + // 耳号(从 sheep_file.bs_manage_tags) private String manageEarTag; + private String variety; + + // 最高校正胎次的挤奶开始时间 & 干奶时间 private Date milkingStartTime; private Date dryEndTime; + + // 挤奶天数(该胎次) private Integer milkingDays; + + // 前端传入的筛选天数(screenDays) + private Integer screenDays; + + // 分析天数(若你有不同命名,可忽略) private Integer analysisDays; + + // 校正后最大胎次(即校正奶量之和最大的胎次) private Integer maxParity; + + // 最高校正胎次区间内的系统奶量与校正奶量(按筛选窗口) private Double sumSystemMilk; private Double sumCorrectedMilk; + + // 校正日平均奶量(按 min(挤奶天数, 筛选天数)) private Double avgCorrectedDaily; + + // 各胎次总奶量(校正) private Double sumParity1Milk; private Double sumParity2Milk; private Double sumParity3Milk; private Double sumParity4Milk; + + // 各胎次日平均(按规则) private Double avgParity1Daily; private Double avgParity2Daily; private Double avgParity3Daily; private Double avgParity4Daily; + + // 泌乳天数(sheep_file.lactation_day) private Integer lactationDays; + + // 过去 7 / 14 / 30 日平均(系统奶量) private Double avgLast7Milk; - private Double avgLast7Corrected; + private Double avgLast7Corrected; // = avgLast7Milk * weightCoefficient (默认 1.0) private Double avgLast14Milk; private Double avgLast30Milk; + + // 羊只基础信息(来自 sheep_file) private String sheepCategory; private Date birthday; - private Integer parity; + private Integer parity; // 当前胎次 private Integer monthAge; private Double currentWeight; private String breedStatus; @@ -36,12 +66,16 @@ public class NpSheepMilkAnalysis { private String motherManageTags; private String ranchName; private String family; + + // 母亲相关字段(由已计算的母亲分析结果中取值) private Integer motherMilkingDays; private Double motherSumCorrected; private Integer motherMaxParity; private Double motherAvgCorrectedDaily; + private Date lastUpdate; + // getters and setters public String getSheepId() { return sheepId; } public void setSheepId(String sheepId) { this.sheepId = sheepId; } @@ -60,6 +94,9 @@ public class NpSheepMilkAnalysis { public Integer getMilkingDays() { return milkingDays; } public void setMilkingDays(Integer milkingDays) { this.milkingDays = milkingDays; } + public Integer getScreenDays() { return screenDays; } + public void setScreenDays(Integer screenDays) { this.screenDays = screenDays; } + public Integer getAnalysisDays() { return analysisDays; } public void setAnalysisDays(Integer analysisDays) { this.analysisDays = analysisDays; } @@ -159,4 +196,3 @@ public class NpSheepMilkAnalysis { public Date getLastUpdate() { return lastUpdate; } public void setLastUpdate(Date lastUpdate) { this.lastUpdate = lastUpdate; } } - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java index f330707..002e009 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java @@ -1,19 +1,36 @@ package com.zhyc.module.dairyProducts.mapper; import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; +import org.apache.ibatis.annotations.Param; + import java.util.List; +import java.util.Map; public interface NpSheepMilkAnalysisMapper { - NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); + /** + * 按筛选天数 screenDays 统计并返回所有羊只的奶产量分析 + */ + List selectAnalysisForExport(@Param("screenDays") Integer screenDays); - List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); + /** + * 根据羊只ID查询羊只奶产量分析信息,返回Map结构 + */ + Map selectNpSheepMilkAnalysisBySheepId(@Param("sheepId") String sheepId); - int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + /** + * 根据管理耳标筛选,返回distinct的sheepId列表 + */ + List selectDistinctSheepIds(@Param("manageEarTag") String manageEarTag); - int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + /** + * 根据羊只ID查询羊只档案信息,返回Map结构 + */ + Map selectSheepFileBySheepId(@Param("sheepId") String sheepId); - int deleteNpSheepMilkAnalysisById(Long id); + /** + * 根据羊只ID查询挤奶班次数据,返回List + */ + List> selectMilkRecordsBySheepId(@Param("sheepId") String sheepId); - int deleteNpSheepMilkAnalysisByIds(Long[] ids); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java index 7750a5f..8760789 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java @@ -5,16 +5,8 @@ import java.util.List; public interface INpSheepMilkAnalysisService { - NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); + NpSheepMilkAnalysis selectNpSheepMilkAnalysisBySheepId(String sheepId); List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); - int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int deleteNpSheepMilkAnalysisById(Long id); - - int deleteNpSheepMilkAnalysisByIds(Long[] ids); } - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java index c2476ee..161a381 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java @@ -1,12 +1,17 @@ package com.zhyc.module.dairyProducts.service.impl; -import java.util.List; - -import com.zhyc.module.dairyProducts.mapper.NpSheepMilkAnalysisMapper; import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; +import com.zhyc.module.dairyProducts.mapper.NpSheepMilkAnalysisMapper; import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.time.LocalDate; +import java.time.ZoneId; +import java.time.temporal.ChronoUnit; +import java.util.*; +import java.util.stream.Collectors; @Service public class NpSheepMilkAnalysisServiceImpl implements INpSheepMilkAnalysisService { @@ -14,34 +19,268 @@ public class NpSheepMilkAnalysisServiceImpl implements INpSheepMilkAnalysisServi @Autowired private NpSheepMilkAnalysisMapper npSheepMilkAnalysisMapper; + // 将 Rec 定义为静态内部类 + private static class Rec { + LocalDate date; + double systemMilk; + double correctedMilk; + int parity; + } + + // 将 ParityStat 定义为静态内部类 + private static class ParityStat { + int parity; + double sumCorrected; + double sumSystem; + LocalDate first; + LocalDate last; + long days; + } + @Override - public NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id) { - return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisById(id); + public NpSheepMilkAnalysis selectNpSheepMilkAnalysisBySheepId(String sheepId) { + Map map = npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisBySheepId(sheepId); + if (map == null) return null; + NpSheepMilkAnalysis ana = new NpSheepMilkAnalysis(); + ana.setSheepId(sheepId); + ana.setManageEarTag((String) map.get("manageEarTag")); + return ana; } @Override public List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisList(analysis); + int screenDays = (analysis != null && analysis.getScreenDays() != null) ? analysis.getScreenDays() : 100; + String manageEarTagFilter = (analysis != null) ? analysis.getManageEarTag() : null; + + List sheepIds = npSheepMilkAnalysisMapper.selectDistinctSheepIds(manageEarTagFilter); + if (CollectionUtils.isEmpty(sheepIds)) return Collections.emptyList(); + + List resultList = new ArrayList<>(); + Map mapByManageTag = new HashMap<>(); + + for (String sheepId : sheepIds) { + Map sf = npSheepMilkAnalysisMapper.selectSheepFileBySheepId(sheepId); + List> records = npSheepMilkAnalysisMapper.selectMilkRecordsBySheepId(sheepId); + + if (records == null || records.isEmpty()) { + NpSheepMilkAnalysis emptyAna = new NpSheepMilkAnalysis(); + emptyAna.setSheepId(sheepId); + if (sf != null) { + emptyAna.setManageEarTag((String) sf.get("manageEarTag")); + emptyAna.setVariety((String) sf.get("variety")); + emptyAna.setLactationDays(toInteger(sf.get("lactationDay"))); + emptyAna.setSheepCategory((String) sf.get("sheepType")); + emptyAna.setBirthday(convertToDate(sf.get("birthday"))); + emptyAna.setParity(toInteger(sf.get("currentParity"))); + emptyAna.setMonthAge(toInteger(sf.get("monthAge"))); + emptyAna.setCurrentWeight(toDouble(sf.get("currentWeight"))); + emptyAna.setBreedStatus((String) sf.get("breedStatus")); + emptyAna.setFatherManageTags((String) sf.get("fatherManageTags")); + emptyAna.setMotherManageTags((String) sf.get("motherManageTags")); + emptyAna.setRanchName((String) sf.get("ranchName")); + emptyAna.setFamily((String) sf.get("family")); + } + resultList.add(emptyAna); + mapByManageTag.put(emptyAna.getManageEarTag(), emptyAna); + continue; + } + + // 使用静态内部类 Rec + List recs = new ArrayList<>(); + for (Map r : records) { + Rec rr = new Rec(); + rr.date = toLocalDate(r.get("classDate")); + rr.systemMilk = toDouble(r.get("systemMilk")); + rr.correctedMilk = toDouble(r.get("correctedMilk")); + rr.parity = (r.get("parity") == null) ? 0 : Integer.parseInt(String.valueOf(r.get("parity"))); + recs.add(rr); + } + + Map> byParity = recs.stream().collect(Collectors.groupingBy(r -> r.parity)); + + // 使用静态内部类 ParityStat + List parityStats = new ArrayList<>(); + for (Map.Entry> e : byParity.entrySet()) { + List list = e.getValue(); + double sumCorr = list.stream().mapToDouble(x -> x.correctedMilk).sum(); + double sumSys = list.stream().mapToDouble(x -> x.systemMilk).sum(); + LocalDate first = list.stream().map(x -> x.date).min(LocalDate::compareTo).get(); + LocalDate last = list.stream().map(x -> x.date).max(LocalDate::compareTo).get(); + long days = ChronoUnit.DAYS.between(first, last) + 1; + ParityStat ps = new ParityStat(); + ps.parity = e.getKey(); + ps.sumCorrected = sumCorr; + ps.sumSystem = sumSys; + ps.first = first; + ps.last = last; + ps.days = Math.max(days, 1); + parityStats.add(ps); + } + + parityStats.sort(Comparator.comparingDouble((ParityStat p) -> p.sumCorrected).reversed() + .thenComparingInt(p -> p.parity)); + ParityStat maxParityStat = parityStats.get(0); + + LocalDate windowStart = maxParityStat.first; + LocalDate windowEndByDays = windowStart.plusDays(screenDays - 1); + LocalDate actualWindowEnd = (maxParityStat.last.isBefore(windowEndByDays)) ? maxParityStat.last : windowEndByDays; + + double sumSystemWindow = recs.stream() + .filter(r -> r.parity == maxParityStat.parity && !r.date.isBefore(windowStart) && !r.date.isAfter(actualWindowEnd)) + .mapToDouble(r -> r.systemMilk).sum(); + + double sumCorrectedWindow = recs.stream() + .filter(r -> r.parity == maxParityStat.parity && !r.date.isBefore(windowStart) && !r.date.isAfter(actualWindowEnd)) + .mapToDouble(r -> r.correctedMilk).sum(); + + long milkingDays = maxParityStat.days; + long denominator = Math.min(milkingDays, screenDays); + double avgCorrectedDaily = (denominator > 0) ? (sumCorrectedWindow / (double) denominator) : 0.0; + + double sumParity1 = parityStats.stream().filter(p -> p.parity == 1).mapToDouble(p -> p.sumCorrected).sum(); + double sumParity2 = parityStats.stream().filter(p -> p.parity == 2).mapToDouble(p -> p.sumCorrected).sum(); + double sumParity3 = parityStats.stream().filter(p -> p.parity == 3).mapToDouble(p -> p.sumCorrected).sum(); + double sumParity4 = parityStats.stream().filter(p -> p.parity == 4).mapToDouble(p -> p.sumCorrected).sum(); + + // 你之前的 computeParityAvg 方法里没实现,保留调用0 + double avgP1 = computeParityAvg(parityStats, 1, screenDays); + double avgP2 = computeParityAvg(parityStats, 2, screenDays); + double avgP3 = computeParityAvg(parityStats, 3, screenDays); + double avgP4 = computeParityAvg(parityStats, 4, screenDays); + + LocalDate lastDate = recs.stream().map(r -> r.date).max(LocalDate::compareTo).get(); + double avgLast7 = computeLastNDaysAvg(recs, lastDate, 7); + double avgLast14 = computeLastNDaysAvg(recs, lastDate, 14); + double avgLast30 = computeLastNDaysAvg(recs, lastDate, 30); + + double weightCoefficient = 1.0; + if (sf != null && sf.get("weighCoefficient") != null) { + weightCoefficient = toDouble(sf.get("weighCoefficient")); + } + double avgLast7Corrected = avgLast7 * weightCoefficient; + + NpSheepMilkAnalysis ana = new NpSheepMilkAnalysis(); + ana.setSheepId(sheepId); + ana.setManageEarTag(sf == null ? null : (String) sf.get("manageEarTag")); + ana.setVariety(sf == null ? null : (String) sf.get("variety")); + ana.setMilkingStartTime(toDate(windowStart)); + ana.setDryEndTime(toDate(maxParityStat.last)); + ana.setMilkingDays((int) milkingDays); + ana.setScreenDays(screenDays); + ana.setMaxParity(maxParityStat.parity); + ana.setSumSystemMilk(sumSystemWindow); + ana.setSumCorrectedMilk(sumCorrectedWindow); + ana.setAvgCorrectedDaily(avgCorrectedDaily); + ana.setSumParity1Milk(sumParity1); + ana.setSumParity2Milk(sumParity2); + ana.setSumParity3Milk(sumParity3); + ana.setSumParity4Milk(sumParity4); + ana.setAvgParity1Daily(avgP1); + ana.setAvgParity2Daily(avgP2); + ana.setAvgParity3Daily(avgP3); + ana.setAvgParity4Daily(avgP4); + ana.setLactationDays(toInteger(sf == null ? null : sf.get("lactationDay"))); + ana.setAvgLast7Milk(avgLast7); + ana.setAvgLast7Corrected(avgLast7Corrected); + ana.setAvgLast14Milk(avgLast14); + ana.setAvgLast30Milk(avgLast30); + + if (sf != null) { + ana.setSheepCategory((String) sf.get("sheepType")); + ana.setBirthday(convertToDate(sf.get("birthday"))); + ana.setParity(toInteger(sf.get("currentParity"))); + ana.setMonthAge(toInteger(sf.get("monthAge"))); + ana.setCurrentWeight(toDouble(sf.get("currentWeight"))); + ana.setBreedStatus((String) sf.get("breedStatus")); + ana.setFatherManageTags((String) sf.get("fatherManageTags")); + ana.setMotherManageTags((String) sf.get("motherManageTags")); + ana.setRanchName((String) sf.get("ranchName")); + ana.setFamily((String) sf.get("family")); + } + + ana.setLastUpdate(toDate(lastDate)); + + resultList.add(ana); + mapByManageTag.put(ana.getManageEarTag(), ana); + } + + // 填充母亲相关字段 + for (NpSheepMilkAnalysis a : resultList) { + String motherTag = a.getMotherManageTags(); + if (motherTag != null && mapByManageTag.containsKey(motherTag)) { + NpSheepMilkAnalysis mom = mapByManageTag.get(motherTag); + a.setMotherMilkingDays(mom.getMilkingDays()); + a.setMotherSumCorrected(mom.getSumCorrectedMilk()); + a.setMotherMaxParity(mom.getMaxParity()); + a.setMotherAvgCorrectedDaily(mom.getAvgCorrectedDaily()); + } + } + + return resultList; } - @Override - public int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.insertNpSheepMilkAnalysis(analysis); + private static Date convertToDate(Object obj) { + if (obj == null) return null; + if (obj instanceof Date) { + return (Date) obj; + } + if (obj instanceof java.sql.Date) { + return new Date(((java.sql.Date) obj).getTime()); + } + return null; } - @Override - public int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.updateNpSheepMilkAnalysis(analysis); + private static LocalDate toLocalDate(Object obj) { + if (obj == null) return null; + if (obj instanceof java.sql.Date) { + return ((java.sql.Date) obj).toLocalDate(); + } + if (obj instanceof Date) { + return ((Date) obj).toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); + } + return null; } - @Override - public int deleteNpSheepMilkAnalysisById(Long id) { - return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisById(id); + private static Date toDate(LocalDate ld) { + if (ld == null) return null; + return Date.from(ld.atStartOfDay(ZoneId.systemDefault()).toInstant()); } - @Override - public int deleteNpSheepMilkAnalysisByIds(Long[] ids) { - return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisByIds(ids); + private static Integer toInteger(Object obj) { + if (obj == null) return null; + if (obj instanceof Number) return ((Number) obj).intValue(); + try { + return Integer.parseInt(obj.toString()); + } catch (Exception e) { + return null; + } + } + + private static Double toDouble(Object obj) { + if (obj == null) return 0.0; + if (obj instanceof Number) return ((Number) obj).doubleValue(); + try { + return Double.parseDouble(obj.toString()); + } catch (Exception e) { + return 0.0; + } + } + + private double computeParityAvg(List stats, int parity, int screenDays) { + // 这里你之前实现是直接返回0,可按需完善 + return 0.0; + } + + private double computeLastNDaysAvg(List recs, LocalDate lastDate, int days) { + LocalDate startDate = lastDate.minusDays(days - 1); + double sum = 0; + int count = 0; + for (Rec r : recs) { + if (r.date != null && !r.date.isBefore(startDate) && !r.date.isAfter(lastDate)) { + sum += r.correctedMilk; + count++; + } + } + return (count > 0) ? (sum / count) : 0.0; } } - diff --git a/zhyc-module/src/main/resources/mapper/dairyProducts/NpSheepMilkAnalysisMapper.xml b/zhyc-module/src/main/resources/mapper/dairyProducts/NpSheepMilkAnalysisMapper.xml index 34e4ba2..8069e16 100644 --- a/zhyc-module/src/main/resources/mapper/dairyProducts/NpSheepMilkAnalysisMapper.xml +++ b/zhyc-module/src/main/resources/mapper/dairyProducts/NpSheepMilkAnalysisMapper.xml @@ -2,151 +2,61 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - id, manage_ear_tag, variety, milking_date, dry_date, milking_days, - screen_days, max_parity, total_milk, total_corrected_milk, - avg_daily_corrected_milk, parity1_total_milk, parity2_total_milk, - parity3_total_milk, parity4_total_milk, parity1_avg_milk, - parity2_avg_milk, parity3_avg_milk, parity4_avg_milk, - lactation_days, last_7_avg_milk, last_7_corrected_milk, - last_14_avg_milk, last_30_avg_milk, sheep_type, birthday, - current_parity, month_age, current_weight, breed_status, - father_tag, mother_tag, ranch, family, mother_milking_days, - mother_total_corrected_milk, mother_max_parity, - mother_avg_corrected - - - - - + SELECT DISTINCT a.sheep_id + FROM np_milk_prod_classes a + LEFT JOIN sheep_file sf ON a.sheep_id = sf.id - AND manage_ear_tag LIKE CONCAT('%', #{manageEarTag}, '%') + AND sf.bs_manage_tags LIKE CONCAT('%', #{manageEarTag}, '%') - - ORDER BY milking_date DESC + ORDER BY a.sheep_id - - INSERT INTO np_sheep_milk_analysis ( - - ) VALUES ( - #{id}, #{manageEarTag}, #{variety}, #{milkingDate}, #{dryDate}, - #{milkingDays}, #{screenDays}, #{maxParity}, #{totalMilk}, - #{totalCorrectedMilk}, #{avgDailyCorrectedMilk}, #{parity1TotalMilk}, - #{parity2TotalMilk}, #{parity3TotalMilk}, #{parity4TotalMilk}, - #{parity1AvgMilk}, #{parity2AvgMilk}, #{parity3AvgMilk}, - #{parity4AvgMilk}, #{lactationDays}, #{last7AvgMilk}, - #{last7CorrectedMilk}, #{last14AvgMilk}, #{last30AvgMilk}, - #{sheepType}, #{birthday}, #{currentParity}, #{monthAge}, - #{currentWeight}, #{breedStatus}, #{fatherTag}, #{motherTag}, - #{ranch}, #{family}, #{motherMilkingDays}, - #{motherTotalCorrectedMilk}, #{motherMaxParity}, - #{motherAvgCorrected} - ) - + + + - - UPDATE np_sheep_milk_analysis - SET manage_ear_tag = #{manageEarTag}, - variety = #{variety}, - milking_date = #{milkingDate}, - dry_date = #{dryDate}, - milking_days = #{milkingDays}, - screen_days = #{screenDays}, - max_parity = #{maxParity}, - total_milk = #{totalMilk}, - total_corrected_milk = #{totalCorrectedMilk}, - avg_daily_corrected_milk = #{avgDailyCorrectedMilk}, - parity1_total_milk = #{parity1TotalMilk}, - parity2_total_milk = #{parity2TotalMilk}, - parity3_total_milk = #{parity3TotalMilk}, - parity4_total_milk = #{parity4TotalMilk}, - parity1_avg_milk = #{parity1AvgMilk}, - parity2_avg_milk = #{parity2AvgMilk}, - parity3_avg_milk = #{parity3AvgMilk}, - parity4_avg_milk = #{parity4AvgMilk}, - lactation_days = #{lactationDays}, - last_7_avg_milk = #{last7AvgMilk}, - last_7_corrected_milk = #{last7CorrectedMilk}, - last_14_avg_milk = #{last14AvgMilk}, - last_30_avg_milk = #{last30AvgMilk}, - sheep_type = #{sheepType}, - birthday = #{birthday}, - current_parity = #{currentParity}, - month_age = #{monthAge}, - current_weight = #{currentWeight}, - breed_status = #{breedStatus}, - father_tag = #{fatherTag}, - mother_tag = #{motherTag}, - ranch = #{ranch}, - family = #{family}, - mother_milking_days = #{motherMilkingDays}, - mother_total_corrected_milk = #{motherTotalCorrectedMilk}, - mother_max_parity = #{motherMaxParity}, - mother_avg_corrected = #{motherAvgCorrected} - WHERE id = #{id} - - - DELETE FROM np_sheep_milk_analysis WHERE id = #{id} - + + + - - DELETE FROM np_sheep_milk_analysis WHERE id IN - - #{id} - - + + From dc34bfcbd4fdbd36a4aa9b035774a87d03784ba7 Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Thu, 14 Aug 2025 15:54:50 +0800 Subject: [PATCH 11/23] =?UTF-8?q?=E4=BD=93=E5=B0=BA=E6=B5=8B=E9=87=8F?= =?UTF-8?q?=EF=BC=8C=E4=BD=93=E5=86=B5=E8=AF=84=E5=88=86=EF=BC=8C=E4=B9=B3?= =?UTF-8?q?=E6=88=BF=E8=AF=84=E5=88=86=E7=BC=BA=E5=A4=B1=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E7=9A=84=E6=B7=BB=E5=8A=A0=EF=BC=8C=E6=94=B9=E5=93=81=E7=A7=8D?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=B1=95=E7=A4=BA=E5=8E=9F=E5=93=81=E7=A7=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/BasSheepController.java | 204 ---- .../controller/BasSheepGroupController.java | 104 -- .../BasSheepGroupMappingController.java | 148 --- .../controller/BasSheepTypeController.java | 114 --- .../controller/BasSheepVarietyController.java | 105 --- .../controller/BreedRamFileController.java | 104 -- .../base/controller/DaRanchController.java | 119 --- .../controller/DaSheepfoldController.java | 122 --- .../base/controller/SheepFileController.java | 103 -- .../com/zhyc/module/base/domain/BasSheep.java | 182 ---- .../module/base/domain/BasSheepGroup.java | 47 - .../base/domain/BasSheepGroupMapping.java | 36 - .../zhyc/module/base/domain/BasSheepType.java | 31 - .../module/base/domain/BasSheepVariety.java | 31 - .../zhyc/module/base/domain/BreedRamFile.java | 890 ------------------ .../com/zhyc/module/base/domain/DaRanch.java | 31 - .../zhyc/module/base/domain/DaSheepfold.java | 57 -- .../zhyc/module/base/domain/SheepFile.java | 273 ------ .../base/mapper/BasSheepGroupMapper.java | 67 -- .../mapper/BasSheepGroupMappingMapper.java | 88 -- .../module/base/mapper/BasSheepMapper.java | 83 -- .../base/mapper/BasSheepTypeMapper.java | 61 -- .../base/mapper/BasSheepVarietyMapper.java | 75 -- .../base/mapper/BreedRamFileMapper.java | 109 --- .../module/base/mapper/DaRanchMapper.java | 61 -- .../module/base/mapper/DaSheepfoldMapper.java | 67 -- .../module/base/mapper/SheepFileMapper.java | 63 -- .../service/IBasSheepGroupMappingService.java | 73 -- .../base/service/IBasSheepGroupService.java | 64 -- .../module/base/service/IBasSheepService.java | 77 -- .../base/service/IBasSheepTypeService.java | 65 -- .../base/service/IBasSheepVarietyService.java | 67 -- .../base/service/IBreedRamFileService.java | 61 -- .../module/base/service/IDaRanchService.java | 61 -- .../base/service/IDaSheepfoldService.java | 76 -- .../base/service/ISheepFileService.java | 41 - .../impl/BasSheepGroupMappingServiceImpl.java | 189 ---- .../impl/BasSheepGroupServiceImpl.java | 123 --- .../service/impl/BasSheepServiceImpl.java | 125 --- .../service/impl/BasSheepTypeServiceImpl.java | 89 -- .../impl/BasSheepVarietyServiceImpl.java | 99 -- .../service/impl/BreedRamFileServiceImpl.java | 96 -- .../base/service/impl/DaRanchServiceImpl.java | 93 -- .../service/impl/DaSheepfoldServiceImpl.java | 114 --- .../service/impl/SheepFileServiceImpl.java | 74 -- .../controller/DewormController.java | 106 --- .../controller/DiagnosisController.java | 104 -- .../controller/DisinfectController.java | 105 --- .../controller/HealthController.java | 105 --- .../controller/ImmunityController.java | 105 --- .../controller/QuarantineItemsController.java | 105 --- .../QuarantineReportController.java | 105 --- .../QuarantineSampleController.java | 105 --- .../controller/SwDiseaseController.java | 103 -- .../controller/SwMedicTypeController.java | 105 --- .../controller/SwMedicineController.java | 105 --- .../controller/SwMedicineUsageController.java | 105 --- .../controller/SwPrescriptionController.java | 105 --- .../controller/SwUnitController.java | 105 --- .../controller/SwUsageController.java | 105 --- .../controller/TreatmentController.java | 105 --- .../zhyc/module/biosafety/domain/Deworm.java | 75 -- .../module/biosafety/domain/Diagnosis.java | 97 -- .../module/biosafety/domain/Disinfect.java | 67 -- .../zhyc/module/biosafety/domain/Health.java | 68 -- .../module/biosafety/domain/Immunity.java | 79 -- .../biosafety/domain/QuarantineItems.java | 31 - .../biosafety/domain/QuarantineReport.java | 95 -- .../biosafety/domain/QuarantineSample.java | 31 - .../module/biosafety/domain/SwDisease.java | 40 - .../module/biosafety/domain/SwMedicType.java | 58 -- .../module/biosafety/domain/SwMedicine.java | 49 - .../biosafety/domain/SwMedicineUsage.java | 41 - .../domain/SwMedicineUsageDetails.java | 59 -- .../module/biosafety/domain/SwPresDetail.java | 114 --- .../biosafety/domain/SwPrescription.java | 138 --- .../zhyc/module/biosafety/domain/SwUnit.java | 33 - .../zhyc/module/biosafety/domain/SwUsage.java | 32 - .../module/biosafety/domain/Treatment.java | 107 --- .../module/biosafety/mapper/DewormMapper.java | 64 -- .../biosafety/mapper/DiagnosisMapper.java | 63 -- .../biosafety/mapper/DisinfectMapper.java | 63 -- .../module/biosafety/mapper/HealthMapper.java | 63 -- .../biosafety/mapper/ImmunityMapper.java | 63 -- .../mapper/QuarantineItemsMapper.java | 64 -- .../mapper/QuarantineReportMapper.java | 64 -- .../mapper/QuarantineSampleMapper.java | 64 -- .../biosafety/mapper/SwDiseaseMapper.java | 63 -- .../biosafety/mapper/SwMedicTypeMapper.java | 64 -- .../biosafety/mapper/SwMedicineMapper.java | 63 -- .../mapper/SwMedicineUsageMapper.java | 90 -- .../mapper/SwPrescriptionMapper.java | 89 -- .../module/biosafety/mapper/SwUnitMapper.java | 64 -- .../biosafety/mapper/SwUsageMapper.java | 63 -- .../biosafety/mapper/TreatmentMapper.java | 66 -- .../biosafety/service/IDewormService.java | 62 -- .../biosafety/service/IDiagnosisService.java | 62 -- .../biosafety/service/IDisinfectService.java | 61 -- .../biosafety/service/IHealthService.java | 61 -- .../biosafety/service/IImmunityService.java | 61 -- .../service/IQuarantineItemsService.java | 62 -- .../service/IQuarantineReportService.java | 62 -- .../service/IQuarantineSampleService.java | 62 -- .../biosafety/service/ISwDiseaseService.java | 61 -- .../service/ISwMedicTypeService.java | 62 -- .../biosafety/service/ISwMedicineService.java | 62 -- .../service/ISwMedicineUsageService.java | 61 -- .../service/ISwPrescriptionService.java | 61 -- .../biosafety/service/ISwUnitService.java | 62 -- .../biosafety/service/ISwUsageService.java | 61 -- .../biosafety/service/ITreatmentService.java | 64 -- .../service/impl/DewormServiceImpl.java | 160 ---- .../service/impl/DiagnosisServiceImpl.java | 133 --- .../service/impl/DisinfectServiceImpl.java | 148 --- .../service/impl/HealthServiceImpl.java | 152 --- .../service/impl/ImmunityServiceImpl.java | 159 ---- .../impl/QuarantineItemsServiceImpl.java | 94 -- .../impl/QuarantineReportServiceImpl.java | 129 --- .../impl/QuarantineSampleServiceImpl.java | 93 -- .../service/impl/SwDiseaseServiceImpl.java | 94 -- .../service/impl/SwMedicTypeServiceImpl.java | 94 -- .../service/impl/SwMedicineServiceImpl.java | 94 -- .../impl/SwMedicineUsageServiceImpl.java | 139 --- .../impl/SwPrescriptionServiceImpl.java | 139 --- .../service/impl/SwUnitServiceImpl.java | 95 -- .../service/impl/SwUsageServiceImpl.java | 94 -- .../service/impl/TreatmentServiceImpl.java | 176 ---- .../controller/NpFreshMilkInspController.java | 104 -- .../NpMilkInOutStoreController.java | 70 -- .../NpMilkProdClassesController.java | 69 -- .../controller/NpRawMilkInspeController.java | 105 --- .../NpSheepMilkAnalysisController.java | 79 -- .../controller/NpYogurtInspController.java | 105 --- .../controller/RanchController.java | 23 - .../XzDryMatterCorrectionController.java | 104 -- .../XzParityCorrectionController.java | 112 --- .../XzWegihCorrectionController.java | 105 --- .../dairyProducts/domain/NpFreshMilkInsp.java | 90 -- .../domain/NpMilkInOutStore.java | 128 --- .../domain/NpMilkProdClasses.java | 80 -- .../dairyProducts/domain/NpRawMilkInspe.java | 456 --------- .../domain/NpSheepMilkAnalysis.java | 162 ---- .../dairyProducts/domain/NpYogurtInsp.java | 91 -- .../module/dairyProducts/domain/Ranch.java | 12 - .../domain/XzDryMatterCorrection.java | 37 - .../domain/XzParityCorrection.java | 35 - .../domain/XzWegihCorrection.java | 51 - .../mapper/NpFreshMilkInspMapper.java | 63 -- .../mapper/NpMilkInOutStoreMapper.java | 23 - .../mapper/NpMilkProdClassesMapper.java | 25 - .../mapper/NpRawMilkInspeMapper.java | 63 -- .../mapper/NpSheepMilkAnalysisMapper.java | 19 - .../mapper/NpYogurtInspMapper.java | 64 -- .../dairyProducts/mapper/RanchMapper.java | 10 - .../mapper/XzDryMatterCorrectionMapper.java | 63 -- .../mapper/XzParityCorrectionMapper.java | 63 -- .../mapper/XzWegihCorrectionMapper.java | 63 -- .../service/INpFreshMilkInspService.java | 61 -- .../service/INpMilkInOutStoreService.java | 16 - .../service/INpMilkProdClassesService.java | 16 - .../service/INpRawMilkInspeService.java | 61 -- .../service/INpSheepMilkAnalysisService.java | 20 - .../service/INpYogurtInspService.java | 62 -- .../dairyProducts/service/IRanchService.java | 8 - .../IXzDryMatterCorrectionService.java | 61 -- .../service/IXzParityCorrectionService.java | 62 -- .../service/IXzWegihCorrectionService.java | 61 -- .../impl/NpFreshMilkInspServiceImpl.java | 95 -- .../impl/NpMilkInOutStoreServiceImpl.java | 82 -- .../impl/NpMilkProdClassesServiceImpl.java | 62 -- .../impl/NpRawMilkInspeServiceImpl.java | 95 -- .../impl/NpSheepMilkAnalysisServiceImpl.java | 47 - .../service/impl/NpYogurtInspServiceImpl.java | 95 -- .../service/impl/RanchServiceImpl.java | 19 - .../XzDryMatterCorrectionServiceImpl.java | 93 -- .../impl/XzParityCorrectionServiceImpl.java | 94 -- .../impl/XzWegihCorrectionServiceImpl.java | 94 -- .../controller/ScBodyMeasureController.java | 107 --- .../controller/ScBodyScoreController.java | 104 -- .../controller/ScBreastRatingController.java | 104 -- .../bodyManage/domain/ScBodyMeasure.java | 81 -- .../bodyManage/domain/ScBodyScore.java | 68 -- .../bodyManage/domain/ScBreastRating.java | 84 -- .../mapper/ScBodyMeasureMapper.java | 61 -- .../bodyManage/mapper/ScBodyScoreMapper.java | 61 -- .../mapper/ScBreastRatingMapper.java | 61 -- .../service/IScBodyMeasureService.java | 61 -- .../service/IScBodyScoreService.java | 61 -- .../service/IScBreastRatingService.java | 61 -- .../impl/ScBodyMeasureServiceImpl.java | 117 --- .../service/impl/ScBodyScoreServiceImpl.java | 127 --- .../impl/ScBreastRatingServiceImpl.java | 131 --- .../controller/RawSpermRecordController.java | 137 --- .../controller/ScBreedPlanController.java | 105 --- .../ScBreedPlanGenerateController.java | 185 ---- .../controller/ScBreedRecordController.java | 158 ---- .../breed/controller/ScDryMilkController.java | 115 --- .../controller/ScLambingRecordController.java | 146 --- .../ScPregnancyRecordController.java | 116 --- .../controller/ScSheepDeathController.java | 120 --- .../controller/ScWeanRecordController.java | 162 ---- .../produce/breed/domain/RawSpermRecord.java | 83 -- .../produce/breed/domain/ScBreedPlan.java | 39 - .../breed/domain/ScBreedPlanGenerate.java | 70 -- .../produce/breed/domain/ScBreedPlanTemp.java | 73 -- .../produce/breed/domain/ScBreedRecord.java | 116 --- .../produce/breed/domain/ScDryMilk.java | 73 -- .../produce/breed/domain/ScLambDetail.java | 94 -- .../produce/breed/domain/ScLambingRecord.java | 387 -------- .../breed/domain/ScPregnancyRecord.java | 122 --- .../produce/breed/domain/ScSheepDeath.java | 356 ------- .../produce/breed/domain/ScWeanRecord.java | 100 -- .../produce/breed/domain/SheepLambInfo.java | 25 - .../breed/mapper/RawSpermRecordMapper.java | 69 -- .../mapper/ScBreedPlanGenerateMapper.java | 107 --- .../breed/mapper/ScBreedPlanMapper.java | 63 -- .../breed/mapper/ScBreedRecordMapper.java | 94 -- .../produce/breed/mapper/ScDryMilkMapper.java | 71 -- .../breed/mapper/ScLambDetailMapper.java | 63 -- .../breed/mapper/ScLambingRecordMapper.java | 72 -- .../breed/mapper/ScPregnancyRecordMapper.java | 78 -- .../breed/mapper/ScSheepDeathMapper.java | 70 -- .../breed/mapper/ScWeanRecordMapper.java | 78 -- .../breed/service/IRawSpermRecordService.java | 69 -- .../service/IScBreedPlanGenerateService.java | 101 -- .../breed/service/IScBreedPlanService.java | 62 -- .../breed/service/IScBreedRecordService.java | 94 -- .../breed/service/IScDryMilkService.java | 63 -- .../service/IScLambingRecordService.java | 46 - .../service/IScPregnancyRecordService.java | 70 -- .../breed/service/IScSheepDeathService.java | 70 -- .../breed/service/IScWeanRecordService.java | 69 -- .../impl/RawSpermRecordServiceImpl.java | 120 --- .../impl/ScBreedPlanGenerateServiceImpl.java | 240 ----- .../service/impl/ScBreedPlanServiceImpl.java | 94 -- .../impl/ScBreedRecordServiceImpl.java | 164 ---- .../service/impl/ScDryMilkServiceImpl.java | 127 --- .../impl/ScLambingRecordServiceImpl.java | 192 ---- .../impl/ScPregnancyRecordServiceImpl.java | 179 ---- .../service/impl/ScSheepDeathServiceImpl.java | 166 ---- .../service/impl/ScWeanRecordServiceImpl.java | 134 --- .../controller/ScAddSheepController.java | 118 --- .../controller/ScChangeCommentController.java | 104 -- .../controller/ScChangeEarController.java | 119 --- .../controller/ScChangeVarietyController.java | 104 -- .../controller/ScTransGroupController.java | 108 --- .../ScTransitionInfoController.java | 116 --- .../manage_sheep/domain/ScAddSheep.java | 90 -- .../manage_sheep/domain/ScChangeComment.java | 47 - .../manage_sheep/domain/ScChangeEar.java | 50 - .../manage_sheep/domain/ScChangeVariety.java | 52 - .../manage_sheep/domain/ScTransGroup.java | 107 --- .../manage_sheep/domain/ScTransitionInfo.java | 88 -- .../manage_sheep/mapper/ScAddSheepMapper.java | 25 - .../mapper/ScChangeCommentMapper.java | 61 -- .../mapper/ScChangeEarMapper.java | 61 -- .../mapper/ScChangeVarietyMapper.java | 61 -- .../mapper/ScTransGroupMapper.java | 63 -- .../mapper/ScTransitionInfoMapper.java | 66 -- .../service/IScAddSheepService.java | 27 - .../service/IScChangeCommentService.java | 61 -- .../service/IScChangeEarService.java | 61 -- .../service/IScChangeVarietyService.java | 61 -- .../service/IScTransGroupService.java | 67 -- .../service/IScTransitionInfoService.java | 73 -- .../service/impl/ScAddSheepServiceImpl.java | 189 ---- .../impl/ScChangeCommentServiceImpl.java | 120 --- .../service/impl/ScChangeEarServiceImpl.java | 156 --- .../impl/ScChangeVarietyServiceImpl.java | 127 --- .../service/impl/ScTransGroupServiceImpl.java | 180 ---- .../impl/ScTransitionInfoServiceImpl.java | 201 ---- .../controller/ScCastrateController.java | 105 --- .../other/controller/ScFixHoofController.java | 113 --- .../produce/other/domain/ScCastrate.java | 66 -- .../produce/other/domain/ScFixHoof.java | 55 -- .../other/mapper/ScCastrateMapper.java | 64 -- .../produce/other/mapper/ScFixHoofMapper.java | 65 -- .../other/service/IScCastrateService.java | 63 -- .../other/service/IScFixHoofService.java | 71 -- .../service/impl/ScCastrateServiceImpl.java | 108 --- .../service/impl/ScFixHoofServiceImpl.java | 123 --- .../WzMaterialsManagementController.java | 116 --- .../stock/controller/WzStockInController.java | 122 --- .../controller/WzStockOutController.java | 130 --- .../stock/domain/WzMaterialsManagement.java | 87 -- .../zhyc/module/stock/domain/WzStockIn.java | 142 --- .../zhyc/module/stock/domain/WzStockOut.java | 251 ----- .../mapper/WzMaterialsManagementMapper.java | 71 -- .../module/stock/mapper/WzStockInMapper.java | 70 -- .../module/stock/mapper/WzStockOutMapper.java | 70 -- .../IWzMaterialsManagementService.java | 71 -- .../stock/service/IWzStockInService.java | 72 -- .../stock/service/IWzStockOutService.java | 72 -- .../WzMaterialsManagementServiceImpl.java | 132 --- .../service/impl/WzStockInServiceImpl.java | 137 --- .../service/impl/WzStockOutServiceImpl.java | 136 --- .../bodyManage/ScBodyMeasureMapper.xml | 50 +- .../produce/bodyManage/ScBodyScoreMapper.xml | 14 +- .../bodyManage/ScBreastRatingMapper.xml | 24 +- .../manage_sheep/ScTransitionInfoMapper.xml | 4 +- .../mapper/produce/other/ScCastrateMapper.xml | 16 +- .../mapper/produce/other/ScFixHoofMapper.xml | 20 +- 302 files changed, 102 insertions(+), 27779 deletions(-) delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java delete mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java 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 deleted file mode 100644 index fede094..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java +++ /dev/null @@ -1,204 +0,0 @@ -package com.zhyc.module.base.controller; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 羊只基本信息Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/sheep/sheep") -public class BasSheepController extends BaseController { - @Autowired - private IBasSheepService basSheepService; - - @Autowired - private IBasSheepVarietyService basSheepVarietyService; - - /** - * 查询羊只基本信息列表 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:list')") - @GetMapping("/list") - public TableDataInfo list(BasSheep basSheep) { - startPage(); - List list = basSheepService.selectBasSheepList(basSheep); - return getDataTable(list); - } - - /** - * 导出羊只基本信息列表 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:export')") - @Log(title = "羊只基本信息", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BasSheep basSheep) { - List list = basSheepService.selectBasSheepList(basSheep); - ExcelUtil util = new ExcelUtil(BasSheep.class); - util.exportExcel(response, list, "羊只基本信息数据"); - } - - /** - * 获取羊只基本信息详细信息 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return success(basSheepService.selectBasSheepById(id)); - } - - /** - * 新增羊只基本信息 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:add')") - @Log(title = "羊只基本信息", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BasSheep basSheep) { - return toAjax(basSheepService.insertBasSheep(basSheep)); - } - - /** - * 修改羊只基本信息 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:edit')") - @Log(title = "羊只基本信息", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BasSheep basSheep) { - return toAjax(basSheepService.updateBasSheep(basSheep)); - } - - /** - * 删除羊只基本信息 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:remove')") - @Log(title = "羊只基本信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(basSheepService.deleteBasSheepByIds(ids)); - } - - /** - * 根据耳号查询 - */ - @GetMapping("/byManageTags/{manageTags}") - public AjaxResult byManageTags(@PathVariable String manageTags) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags.trim()); - if (sheep == null) { - return error("未找到对应的羊只"); - } - - // 补品种名称 - BasSheepVariety variety = basSheepVarietyService.selectBasSheepVarietyById(sheep.getVarietyId()); - sheep.setVarietyName(variety == null ? "" : variety.getVariety()); - - return success(sheep); - } - - /** - * 根据羊只类型ID查询羊只列表 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") - @GetMapping("/listByTypeId") - public TableDataInfo listByTypeId(Integer typeId) { - if (typeId == null) { - return getDataTable(new ArrayList<>()); - } - BasSheep query = new BasSheep(); - query.setTypeId(typeId.longValue()); - startPage(); - List list = basSheepService.selectBasSheepList(query); - return getDataTable(list); - } - - /** - * 根据羊舍ID和羊只类型ID组合查询羊只列表 - */ - @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") - @GetMapping("/listBySheepfoldAndType") - public TableDataInfo listBySheepfoldAndType(Integer sheepfoldId, Integer typeId) { - if (sheepfoldId == null || typeId == null) { - return getDataTable(new ArrayList<>()); - } - BasSheep query = new BasSheep(); - query.setSheepfoldId(sheepfoldId.longValue()); - query.setTypeId(typeId.longValue()); - startPage(); - List list = basSheepService.selectBasSheepList(query); - return getDataTable(list); - } - - - /** - * 根据耳号(管理耳号或电子耳号)+ 耳号类型 查询羊只信息 - * earType:0-电子耳号,1-管理耳号 - */ - @GetMapping("/byEarNumber") - public AjaxResult byEarNumber(@RequestParam String earNumber, @RequestParam Integer earType) { - BasSheep query = new BasSheep(); - query.setManageTags(earNumber); - List list = basSheepService.selectBasSheepList(query); - - if (list.isEmpty()) { - query.setManageTags(null); - query.setElectronicTags(earNumber); - list = basSheepService.selectBasSheepList(query); - } - - if (list.isEmpty()) { - return error("未找到对应的羊只"); - } - - BasSheep sheep = list.get(0); - - String oldTag = earType == 0 ? sheep.getElectronicTags() : sheep.getManageTags(); - - Map result = new HashMap<>(); - result.put("sheep", sheep); - result.put("oldTag", oldTag); - - return success(result); - } - - - /** - * 判断耳号是否存在(用于新增羊只时校验) - */ - @GetMapping("/existsByManageTags/{manageTags}") - public AjaxResult existsByManageTags(@PathVariable String manageTags) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags.trim()); - if (sheep != null) { - return success(true); - } - return success(false); - } - - - @GetMapping("/existsByTag") - public AjaxResult existsByTag(@RequestParam String tag, @RequestParam Integer earType) { - boolean exists = basSheepService.existsByTag(tag, earType); - Map result = new HashMap<>(); - result.put("exists", exists); - return success(result); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java deleted file mode 100644 index f681ab3..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.base.controller; - -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.common.utils.poi.ExcelUtil; -import com.zhyc.module.base.domain.BasSheepGroup; -import com.zhyc.module.base.service.IBasSheepGroupService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * 分组管理Controller - * - * @author wyt - * @date 2025-07-14 - */ -@RestController -@RequestMapping("/group_management/group_management") -public class BasSheepGroupController extends BaseController -{ - @Autowired - private IBasSheepGroupService basSheepGroupService; - - /** - * 查询分组管理列表 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:list')") - @GetMapping("/list") - public AjaxResult list(BasSheepGroup basSheepGroup) - { - List list = basSheepGroupService.selectBasSheepGroupList(basSheepGroup); - return success(list); - } - - /** - * 导出分组管理列表 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:export')") - @Log(title = "分组管理", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BasSheepGroup basSheepGroup) - { - List list = basSheepGroupService.selectBasSheepGroupList(basSheepGroup); - ExcelUtil util = new ExcelUtil(BasSheepGroup.class); - util.exportExcel(response, list, "分组管理数据"); - } - - /** - * 获取分组管理详细信息 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:query')") - @GetMapping(value = "/{groupId}") - public AjaxResult getInfo(@PathVariable("groupId") Long groupId) - { - return success(basSheepGroupService.selectBasSheepGroupByGroupId(groupId)); - } - - /** - * 新增分组管理 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:add')") - @Log(title = "分组管理", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BasSheepGroup basSheepGroup) - { - return toAjax(basSheepGroupService.insertBasSheepGroup(basSheepGroup)); - } - - /** - * 修改分组管理 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:edit')") - @Log(title = "分组管理", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BasSheepGroup basSheepGroup) - { - return toAjax(basSheepGroupService.updateBasSheepGroup(basSheepGroup)); - } - - /** - * 删除分组管理 - */ - @PreAuthorize("@ss.hasPermi('group_management:group_management:remove')") - @Log(title = "分组管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{groupIds}") - public AjaxResult remove(@PathVariable Long[] groupIds) - { - return toAjax(basSheepGroupService.deleteBasSheepGroupByGroupIds(groupIds)); - } - - @PreAuthorize("@ss.hasPermi('group_management:group_management:list')") - @GetMapping("/leaf") - public AjaxResult selectLeafNodes() { - List leafNodes = basSheepGroupService.selectLeafNodes(); - return success(leafNodes); - } - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java deleted file mode 100644 index 31196e4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.zhyc.module.base.controller; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.common.utils.StringUtils; -import com.zhyc.module.base.domain.BasSheepGroupMapping; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -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.base.service.IBasSheepGroupMappingService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -// 1. 导入 -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - - -/** - * 羊只分组关联Controller - * - * @author wyt - * @date 2025-07-16 - */ -@RestController -@RequestMapping("/sheep_grouping/sheep_grouping") -public class BasSheepGroupMappingController extends BaseController -{ - @Autowired - private IBasSheepGroupMappingService basSheepGroupMappingService; - - /** - * 查询羊只分组关联列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:list')") - @GetMapping("/list") - public TableDataInfo list(BasSheepGroupMapping basSheepGroupMapping) - { - startPage(); - List list = basSheepGroupMappingService.selectBasSheepGroupMappingList(basSheepGroupMapping); - return getDataTable(list); - } - - // 2. 声明(放在类内部、方法外部) - private static final Logger log = LoggerFactory.getLogger(BasSheepGroupMappingController.class); - - - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:list')") - @GetMapping("/listJoin") - public TableDataInfo list( - @RequestParam(required = false) Long sheepId, - @RequestParam(required = false) Long groupId, - @RequestParam(required = false) String bsManageTags) { - - List earList = null; - if (StringUtils.hasText(bsManageTags)) { - earList = Arrays.asList(bsManageTags.split("[,,\\s]+")); - } - startPage(); - List> list = basSheepGroupMappingService - .selectBasSheepGroupMappingList(sheepId, groupId, earList); - return getDataTable(list); - } - - - /** - * 导出羊只分组关联列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:export')") - @Log(title = "羊只分组关联", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BasSheepGroupMapping basSheepGroupMapping) - { - List list = basSheepGroupMappingService.selectBasSheepGroupMappingList(basSheepGroupMapping); - ExcelUtil util = new ExcelUtil(BasSheepGroupMapping.class); - util.exportExcel(response, list, "羊只分组关联数据"); - } - - /** - * 获取羊只分组关联详细信息 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(basSheepGroupMappingService.selectBasSheepGroupMappingById(id)); - } - - /** - * 新增羊只分组关联 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:add')") - @Log(title = "羊只分组关联", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BasSheepGroupMapping basSheepGroupMapping) - { - return toAjax(basSheepGroupMappingService.insertBasSheepGroupMapping(basSheepGroupMapping)); - } - - /** - * 修改羊只分组关联 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:edit')") - @Log(title = "羊只分组关联", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BasSheepGroupMapping basSheepGroupMapping) - { - try { - return toAjax(basSheepGroupMappingService.updateBasSheepGroupMapping(basSheepGroupMapping)); - } catch (RuntimeException e) { - return error(e.getMessage()); - } - } - - /** - * 删除羊只分组关联 - */ - @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:remove')") - @Log(title = "羊只分组关联", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(basSheepGroupMappingService.deleteBasSheepGroupMappingByIds(ids)); - } - - - @PostMapping("/addByEarTags") - public AjaxResult addByEarTags(@RequestBody Map params) { - List earTags = (List) params.get("earTags"); - Long groupId = Long.valueOf(params.get("groupId").toString()); - - if (earTags == null || earTags.isEmpty()) { - return error("耳号列表不能为空"); - } - - return basSheepGroupMappingService.addByEarTags(earTags, groupId); - } - - - -} 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 deleted file mode 100644 index f847204..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java +++ /dev/null @@ -1,114 +0,0 @@ -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; -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.base.domain.BasSheepType; -import com.zhyc.module.base.service.IBasSheepTypeService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 羊只类型Controller - * - * @author ruoyi - * @date 2025-07-22 - */ -@RestController -@RequestMapping("/base/base") -public class BasSheepTypeController extends BaseController -{ - @Autowired - private IBasSheepTypeService basSheepTypeService; - - @Autowired - private IBasSheepService basSheepService; - /** - * 查询羊只类型列表 - */ - @PreAuthorize("@ss.hasPermi('base:base:list')") - @GetMapping("/list") - public TableDataInfo list(BasSheepType basSheepType) - { - startPage(); - List list = basSheepTypeService.selectBasSheepTypeList(basSheepType); - return getDataTable(list); - } - - /** - * 导出羊只类型列表 - */ - @PreAuthorize("@ss.hasPermi('base:base:export')") - @Log(title = "羊只类型", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BasSheepType basSheepType) - { - List list = basSheepTypeService.selectBasSheepTypeList(basSheepType); - ExcelUtil util = new ExcelUtil(BasSheepType.class); - util.exportExcel(response, list, "羊只类型数据"); - } - - /** - * 获取羊只类型详细信息 - */ - @PreAuthorize("@ss.hasPermi('base:base:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) - { - return success(basSheepTypeService.selectBasSheepTypeById(id)); - } - - /** - * 新增羊只类型 - */ - @PreAuthorize("@ss.hasPermi('base:base:add')") - @Log(title = "羊只类型", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BasSheepType basSheepType) - { - return toAjax(basSheepTypeService.insertBasSheepType(basSheepType)); - } - - /** - * 修改羊只类型 - */ - @PreAuthorize("@ss.hasPermi('base:base:edit')") - @Log(title = "羊只类型", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BasSheepType basSheepType) - { - return toAjax(basSheepTypeService.updateBasSheepType(basSheepType)); - } - - /** - * 删除羊只类型 - */ - @PreAuthorize("@ss.hasPermi('base:base:remove')") - @Log(title = "羊只类型", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) - { - return toAjax(basSheepTypeService.deleteBasSheepTypeByIds(ids)); - } - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java deleted file mode 100644 index 0954dc3..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.base.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.base.domain.BasSheepVariety; -import com.zhyc.module.base.service.IBasSheepVarietyService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 羊只品种Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/base/variety") -public class BasSheepVarietyController extends BaseController -{ - @Autowired - private IBasSheepVarietyService basSheepVarietyService; - - /** - * 查询羊只品种列表 - */ - @PreAuthorize("@ss.hasPermi('base:variety:list')") - @GetMapping("/list") - public TableDataInfo list(BasSheepVariety basSheepVariety) - { - startPage(); - List list = basSheepVarietyService.selectBasSheepVarietyList(basSheepVariety); - return getDataTable(list); - } - - /** - * 导出羊只品种列表 - */ - @PreAuthorize("@ss.hasPermi('base:variety:export')") - @Log(title = "羊只品种", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BasSheepVariety basSheepVariety) - { - List list = basSheepVarietyService.selectBasSheepVarietyList(basSheepVariety); - ExcelUtil util = new ExcelUtil(BasSheepVariety.class); - util.exportExcel(response, list, "羊只品种数据"); - } - - /** - * 获取羊只品种详细信息 - */ - @PreAuthorize("@ss.hasPermi('base:variety:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(basSheepVarietyService.selectBasSheepVarietyById(id)); - } - - /** - * 新增羊只品种 - */ - @PreAuthorize("@ss.hasPermi('base:variety:add')") - @Log(title = "羊只品种", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BasSheepVariety basSheepVariety) - { - return toAjax(basSheepVarietyService.insertBasSheepVariety(basSheepVariety)); - } - - /** - * 修改羊只品种 - */ - @PreAuthorize("@ss.hasPermi('base:variety:edit')") - @Log(title = "羊只品种", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BasSheepVariety basSheepVariety) - { - return toAjax(basSheepVarietyService.updateBasSheepVariety(basSheepVariety)); - } - - /** - * 删除羊只品种 - */ - @PreAuthorize("@ss.hasPermi('base:variety:remove')") - @Log(title = "羊只品种", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(basSheepVarietyService.deleteBasSheepVarietyByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java deleted file mode 100644 index 7274064..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.base.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.enums.BusinessType; -import com.zhyc.module.base.domain.BreedRamFile; -import com.zhyc.module.base.service.IBreedRamFileService; -import com.zhyc.common.core.controller.BaseController; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 种公羊档案Controller - * - * @author zhyc - * @date 2025-07-29 - */ -@RestController -@RequestMapping("/ram_file/bas_ram_file") -public class BreedRamFileController extends BaseController -{ - @Autowired - private IBreedRamFileService breedRamFileService; - - /** - * 查询种公羊档案列表 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:list')") - @GetMapping("/list") - public TableDataInfo list(BreedRamFile breedRamFile) - { - startPage(); - List list = breedRamFileService.selectBreedRamFileList(breedRamFile); - return getDataTable(list); - } - - /** - * 导出种公羊档案列表 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:export')") - @Log(title = "种公羊档案", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, BreedRamFile breedRamFile) - { - List list = breedRamFileService.selectBreedRamFileList(breedRamFile); - ExcelUtil util = new ExcelUtil(BreedRamFile.class); - util.exportExcel(response, list, "种公羊档案数据"); - } - - /** - * 获取种公羊档案详细信息 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(breedRamFileService.selectBreedRamFileById(id)); - } - - /** - * 新增种公羊档案 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:add')") - @Log(title = "种公羊档案", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody BreedRamFile breedRamFile) - { - return toAjax(breedRamFileService.insertBreedRamFile(breedRamFile)); - } - - /** - * 修改种公羊档案 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:edit')") - @Log(title = "种公羊档案", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody BreedRamFile breedRamFile) - { - return toAjax(breedRamFileService.updateBreedRamFile(breedRamFile)); - } - - /** - * 删除种公羊档案 - */ - @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:remove')") - @Log(title = "种公羊档案", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(breedRamFileService.deleteBreedRamFileByIds(ids)); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java deleted file mode 100644 index a519335..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.zhyc.module.base.controller; - -import java.util.List; -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; -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.base.domain.DaRanch; -import com.zhyc.module.base.service.IDaRanchService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 牧场管理Controller - * - * @author ruoyi - * @date 2025-07-22 - */ -@RestController -@RequestMapping("/ranch/ranch") -public class DaRanchController extends BaseController -{ - @Autowired - private IDaRanchService daRanchService; - - @Autowired - private IBasSheepService basSheepService; - /** - * 查询牧场管理列表 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:list')") - @GetMapping("/list") - public TableDataInfo list(DaRanch daRanch) - { - startPage(); - List list = daRanchService.selectDaRanchList(daRanch); - return getDataTable(list); - } - - /** - * 导出牧场管理列表 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:export')") - @Log(title = "牧场管理", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, DaRanch daRanch) - { - List list = daRanchService.selectDaRanchList(daRanch); - ExcelUtil util = new ExcelUtil(DaRanch.class); - util.exportExcel(response, list, "牧场管理数据"); - } - - /** - * 获取牧场管理详细信息 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(daRanchService.selectDaRanchById(id)); - } - - /** - * 获取指定牧场下的所有羊只耳号 - */ - @GetMapping("/getSheepByRanchId/{ranchId}") - public AjaxResult getSheepByRanchId(@PathVariable Long ranchId) { - List sheepList = basSheepService.getSheepByRanchId(ranchId); - return AjaxResult.success(sheepList); - } - - - /** - * 新增牧场管理 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:add')") - @Log(title = "牧场管理", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody DaRanch daRanch) - { - return toAjax(daRanchService.insertDaRanch(daRanch)); - } - - /** - * 修改牧场管理 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:edit')") - @Log(title = "牧场管理", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody DaRanch daRanch) - { - return toAjax(daRanchService.updateDaRanch(daRanch)); - } - - /** - * 删除牧场管理 - */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:remove')") - @Log(title = "牧场管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(daRanchService.deleteDaRanchByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java deleted file mode 100644 index 7b72788..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.zhyc.module.base.controller; - -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -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.DaSheepfold; -import com.zhyc.module.base.service.IDaSheepfoldService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * 羊舍管理Controller - * - * @author wyt - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/sheepfold_management/sheepfold_management") -public class DaSheepfoldController extends BaseController -{ - @Autowired - private IDaSheepfoldService daSheepfoldService; - - /** - * 查询羊舍管理列表 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:list')") - @GetMapping("/list") - public TableDataInfo list(DaSheepfold daSheepfold) - { - startPage(); - List list = daSheepfoldService.selectDaSheepfoldList(daSheepfold); - return getDataTable(list); - } - /* - * 根据羊舍ids查询羊只id - * */ - - @GetMapping("/getSheepById") - public AjaxResult getSheepfold(@RequestParam String id) { - List list = daSheepfoldService.sheepListById(id); - return AjaxResult.success(list); - } - - - - /** - * 导出羊舍管理列表 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:export')") - @Log(title = "羊舍管理", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, DaSheepfold daSheepfold) - { - List list = daSheepfoldService.selectDaSheepfoldList(daSheepfold); - ExcelUtil util = new ExcelUtil(DaSheepfold.class); - util.exportExcel(response, list, "羊舍管理数据"); - } - - /** - * 获取羊舍管理详细信息 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(daSheepfoldService.selectDaSheepfoldById(id)); - } - - /** - * 新增羊舍管理 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:add')") - @Log(title = "羊舍管理", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody DaSheepfold daSheepfold) - { - return toAjax(daSheepfoldService.insertDaSheepfold(daSheepfold)); - } - - /** - * 修改羊舍管理 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:edit')") - @Log(title = "羊舍管理", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody DaSheepfold daSheepfold) - { - return toAjax(daSheepfoldService.updateDaSheepfold(daSheepfold)); - } - - /** - * 删除羊舍管理 - */ - @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:remove')") - @Log(title = "羊舍管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(daSheepfoldService.deleteDaSheepfoldByIds(ids)); - } - /** - * 检查羊舍编号是否已存在 - */ - @GetMapping("/checkSheepfoldNoExist") - public AjaxResult checkSheepfoldNoExist( - @RequestParam Long ranchId, - @RequestParam Long sheepfoldTypeId, - @RequestParam String sheepfoldNo - ) { - boolean exist = daSheepfoldService.checkSheepfoldNoExist(ranchId, sheepfoldTypeId, sheepfoldNo); - return AjaxResult.success(exist); - } -} 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 deleted file mode 100644 index 5046e7c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.zhyc.module.base.controller; - -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -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; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * 羊只档案Controller - * - * @author wyt - * @date 2025-07-13 - */ -@RestController -@RequestMapping("/sheep_file/sheep_file") -public class SheepFileController extends BaseController -{ - @Autowired - private ISheepFileService sheepFileService; - - /** - * 查询羊只档案列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:list')") - @GetMapping("/list") - public TableDataInfo list(SheepFile sheepFile) - { - startPage(); - List list = sheepFileService.selectSheepFileList(sheepFile); - return getDataTable(list); - } - - /** - * 导出羊只档案列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:export')") - @Log(title = "羊只档案", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SheepFile sheepFile) - { - List list = sheepFileService.selectSheepFileList(sheepFile); - ExcelUtil util = new ExcelUtil(SheepFile.class); - util.exportExcel(response, list, "羊只档案数据"); - } - - /** - * 获取羊只档案详细信息 - */ - @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(sheepFileService.selectSheepFileById(id)); - } - - /* - * 根据耳号查询是否存在羊舍 - * */ - @GetMapping("/byNo/{manageTags}") - public AjaxResult byManageTags(@PathVariable String manageTags){ - SheepFile sheep=sheepFileService.selectBasSheepByManageTags(manageTags.trim()); - return success(sheep); - } - - - @GetMapping("/stat/sheepType") - public AjaxResult statSheepType() { - return success(sheepFileService.countBySheepType()); - } - - @GetMapping("/stat/breedStatus") - public AjaxResult statBreedStatus() { - return success(sheepFileService.countByBreedStatus()); - } - - @GetMapping("/stat/variety") - public AjaxResult statVariety() { - return success(sheepFileService.countByVariety()); - } - - @GetMapping("/stat/lactationParity") - public AjaxResult statLactationParity() { - return success(sheepFileService.countParityOfLactation()); - } - - // 在群总数 - @GetMapping("/stat/inGroupCount") - public AjaxResult inGroupCount() { - return success(sheepFileService.countInGroup()); - } - -} 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 deleted file mode 100644 index 047d376..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java +++ /dev/null @@ -1,182 +0,0 @@ -package com.zhyc.module.base.domain; - -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; - -/** - * 羊只基本信息对象 bas_sheep - * - * @author ruoyi - * @date 2025-07-15 - */ - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class BasSheep extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 管理耳号 */ - @Excel(name = "管理耳号") - private String manageTags; - - /** 牧场id */ - @Excel(name = "牧场id") - private Long ranchId; - - /** 羊舍id */ - @Excel(name = "羊舍id") - private Long sheepfoldId; - private String sheepfoldName; - - /** 电子耳号 */ - @Excel(name = "电子耳号") - private String electronicTags; - - /** 品种id */ - @Excel(name = "品种id") - private Long varietyId; - - //仅用于改品种页面的回显 - private String varietyName; - - /** 家系 */ - @Excel(name = "家系") - private String family; - - /** 羊只类别 */ - @Excel(name = "羊只类别") - private Long typeId; - - /** 性别 */ - @Excel(name = "性别") - private Long gender; - - /** 出生日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date birthday; - - /** 出生体重 */ - @Excel(name = "出生体重") - private Long birthWeight; - - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 羊只状态 */ - @Excel(name = "羊只状态") - private Long statusId; - - /** 断奶日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date weaningDate; - - /** 断奶体重 */ - @Excel(name = "断奶体重") - private Long weaningWeight; - - /** 繁育状态id */ - @Excel(name = "繁育状态id") - private Long breedStatusId; - - /** 父号id */ - @Excel(name = "父号id") - private Long fatherId; - - /** 母号id */ - @Excel(name = "母号id") - private Long motherId; - - /** 受体id */ - @Excel(name = "受体id") - private Long receptorId; - - /** 配种日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date matingDate; - - /** 配种类型 */ - @Excel(name = "配种类型") - private Long matingTypeId; - - /** 孕检日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date pregDate; - - /** 产羔日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "产羔日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date lambingDate; - - /** 产羔时怀孕天数 */ - @Excel(name = "产羔时怀孕天数") - private Long lambingDay; - - /** 预产日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date expectedDate; - - /** 是否性控 */ - @Excel(name = "是否性控") - private Long controlled; - - /** 配种次数 */ - @Excel(name = "配种次数") - private Long matingCounts; - - /** $column.columnComment */ - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") - private Long matingTotal; - - /** 累计流产次数 */ - @Excel(name = "累计流产次数") - private Long miscarriageCounts; - - /** 体况评分 */ - @Excel(name = "体况评分") - private Long body; - - /** 乳房评分 */ - @Excel(name = "乳房评分") - private Long breast; - - /** 入群来源 */ - @Excel(name = "入群来源") - private String source; - - /** 入群日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "入群日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date sourceDate; - - /** 来源牧场id */ - @Excel(name = "来源牧场id") - private Long sourceRanchId; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 是否删除 */ - @Excel(name = "是否删除") - private Long isDelete; - - -} 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 deleted file mode 100644 index e0d1adb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.zhyc.module.base.domain; - -import com.zhyc.common.annotation.Excel; -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 - * - * @author wyt - * @date 2025-07-14 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class BasSheepGroup extends TreeEntity -{ - private static final long serialVersionUID = 1L; - - /** 分组ID */ - @Excel(name = "分组ID") - private Long groupId; - - /** 分组名称 */ - @Excel(name = "分组名称") - private String groupName; - - /** 状态(0正常 1停用) */ - @Excel(name = "状态", readConverterExp = "0=正常,1=停用") - private String status; - - /** 状态(0正常 1停用) */ - @Excel(name = "祖级列表") - private String ancestors; - - /** 祖级列表名称 */ - @Excel(name = "祖级列表名称") - private String ancestorNames; - - - private Integer isLeaf; - -} 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 deleted file mode 100644 index eed7c36..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java +++ /dev/null @@ -1,36 +0,0 @@ -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; - -/** - * 羊只分组关联对象 bas_sheep_group_mapping - * - * @author wyt - * @date 2025-07-16 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class BasSheepGroupMapping extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - @Excel(name = "主键ID") - private Long id; - - /** 羊只ID */ - @Excel(name = "羊只ID") - private Long sheepId; - - /** 分组ID */ - @Excel(name = "分组ID") - private Long groupId; - -} 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 deleted file mode 100644 index edf709e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java +++ /dev/null @@ -1,31 +0,0 @@ -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; - -/** - * 羊只类型对象 bas_sheep_type - * - * @author ruoyi - * @date 2025-07-22 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class BasSheepType extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Integer id; - - /** 羊只类型 */ - private String name; - - -} 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 deleted file mode 100644 index 56e8a36..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java +++ /dev/null @@ -1,31 +0,0 @@ -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; - -/** - * 羊只品种对象 bas_sheep_variety - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class BasSheepVariety extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 品种 */ - @Excel(name = "品种") - private String variety; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java deleted file mode 100644 index 463308d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java +++ /dev/null @@ -1,890 +0,0 @@ -package com.zhyc.module.base.domain; - -import java.math.BigDecimal; -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; - -/** - * 种公羊档案对象 breed_ram_file - * - * @author zhyc - * @date 2025-07-29 - */ -public class BreedRamFile extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 种公羊id */ - private Long id; - - /** 普通耳号 */ - @Excel(name = "普通耳号") - private String ordinaryEarNumber; - - /** 牧场id */ - @Excel(name = "牧场id") - private Long ranchId; - - /** 牧场名称 */ - @Excel(name = "牧场名称") - private String ranchName; - - /** 羊舍id */ - @Excel(name = "羊舍id") - private Long sheepfoldId; - - /** 羊舍名称 */ - @Excel(name = "羊舍名称") - private String sheepfoldName; - - /** 电子耳号 */ - @Excel(name = "电子耳号") - private String electronicTags; - - /** 品种id */ - @Excel(name = "品种id") - private Long varietyId; - - /** 品种 */ - @Excel(name = "品种") - private String variety; - - /** 羊只类别 */ - @Excel(name = "羊只类别") - private String sheepCategory; - - /** 当前状态 */ - @Excel(name = "当前状态") - private String currentStatus; - - /** 生日 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") - private Date birthday; - - /** 动态 */ - @Excel(name = "动态") - private String dynamicInfo; - - /** 月龄 */ - @Excel(name = "月龄") - private Long monthAge; - - /** 出生体重 */ - @Excel(name = "出生体重") - private BigDecimal birthWeight; - - /** 断奶日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date weaningDate; - - /** 断奶日龄 */ - @Excel(name = "断奶日龄") - private Long weaningDayAge; - - /** 断奶体重 */ - @Excel(name = "断奶体重") - private BigDecimal weaningWeight; - - /** 断奶日增重 */ - @Excel(name = "断奶日增重") - private BigDecimal weaningDailyGain; - - /** 断奶后日增重 */ - @Excel(name = "断奶后日增重") - private BigDecimal postWeaningDailyGain; - - /** 当前体重 */ - @Excel(name = "当前体重") - private BigDecimal currentWeight; - - /** 当前体重称重日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "当前体重称重日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date currentWeightDate; - - /** 活动量 */ - @Excel(name = "活动量") - private String activityLevel; - - /** 性欲情况 */ - @Excel(name = "性欲情况") - private String sexualStatus; - - /** 阴囊周长 */ - @Excel(name = "阴囊周长") - private BigDecimal scrotumCircumference; - - /** 采精时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "采精时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date spermCollectionTime; - - /** 精液量 */ - @Excel(name = "精液量") - private BigDecimal spermVolume; - - /** 精液活力 */ - @Excel(name = "精液活力") - private String spermVitality; - - /** 精液密度 */ - @Excel(name = "精液密度") - private String spermDensity; - - /** 精液品质 */ - @Excel(name = "精液品质") - private String spermQuality; - - /** 配种状态 */ - @Excel(name = "配种状态") - private Long breedingStatus; - - /** 上次计划时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "上次计划时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date lastPlanTime; - - /** 本次计划时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "本次计划时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date currentPlanTime; - - /** 蛋白率%EBV */ - @Excel(name = "蛋白率%EBV") - private BigDecimal proteinRateEbv; - - /** 乳脂率%EBV */ - @Excel(name = "乳脂率%EBV") - private BigDecimal milkFatRateEbv; - - /** 乳体细胞(SCS)EBV */ - @Excel(name = "乳体细胞", readConverterExp = "S=CS") - private BigDecimal scsEbv; - - /** 生长性能EBV */ - @Excel(name = "生长性能EBV") - private BigDecimal growthPerformanceEbv; - - /** 抗逆性EBV */ - @Excel(name = "抗逆性EBV") - private BigDecimal resistanceEbv; - - /** 繁殖性能EBV */ - @Excel(name = "繁殖性能EBV") - private BigDecimal reproductionPerformanceEbv; - - /** 体型性状EBV */ - @Excel(name = "体型性状EBV") - private BigDecimal bodyTypeEbv; - - /** 综合育种值 */ - @Excel(name = "综合育种值") - private BigDecimal comprehensiveBreedingValue; - - /** 父号 */ - @Excel(name = "父号") - private String fatherNumber; - - /** 母号 */ - @Excel(name = "母号") - private String motherNumber; - - /** 祖父 */ - @Excel(name = "祖父") - private String grandfatherNumber; - - /** 祖母 */ - @Excel(name = "祖母") - private String grandmotherNumber; - - /** 外祖父 */ - @Excel(name = "外祖父") - private String maternalGrandfatherNumber; - - /** 外祖母 */ - @Excel(name = "外祖母") - private String maternalGrandmotherNumber; - - /** 是否核心羊群(0否1是) */ - @Excel(name = "是否核心羊群", readConverterExp = "0=否,1=是") - private Long isCoreFlock; - - /** 是否种用(0否1是) */ - @Excel(name = "是否种用", readConverterExp = "0=否,1=是") - private Long isBreedingUse; - - /** 孕检 */ - @Excel(name = "孕检") - private String pregnancyCheck; - - /** 总配母羊数 */ - @Excel(name = "总配母羊数") - private Long totalMatedEwes; - - /** 本交孕检母羊数 */ - @Excel(name = "本交孕检母羊数") - private Long naturalPregnancyCheckEwes; - - /** 本交受孕率% */ - @Excel(name = "本交受孕率%") - private BigDecimal naturalConceptionRate; - - /** 人工孕检母羊数 */ - @Excel(name = "人工孕检母羊数") - private Long artificialPregnancyCheckEwes; - - /** 人工受孕率% */ - @Excel(name = "人工受孕率%") - private BigDecimal artificialConceptionRate; - - /** 公羊母亲奶量 */ - @Excel(name = "公羊母亲奶量") - private BigDecimal ramMotherMilkVolume; - - /** 产奶量估计育种值(Kg) */ - @Excel(name = "产奶量估计育种值", readConverterExp = "K=g") - private BigDecimal milkProductionEbv; - - /** 准确性 */ - @Excel(name = "准确性") - private BigDecimal accuracy; - - /** 信息数 */ - @Excel(name = "信息数") - private Long informationCount; - - /** 是否亲子鉴定(0否1是) */ - @Excel(name = "是否亲子鉴定", readConverterExp = "0=否,1=是") - private Long isPaternityTested; - - /** 是否删除(0否1是) */ - private Long isDelete; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - public void setOrdinaryEarNumber(String ordinaryEarNumber) - { - this.ordinaryEarNumber = ordinaryEarNumber; - } - - public String getOrdinaryEarNumber() - { - return ordinaryEarNumber; - } - public void setRanchId(Long ranchId) - { - this.ranchId = ranchId; - } - - public Long getRanchId() - { - return ranchId; - } - public void setRanchName(String ranchName) - { - this.ranchName = ranchName; - } - - public String getRanchName() - { - return ranchName; - } - public void setSheepfoldId(Long sheepfoldId) - { - this.sheepfoldId = sheepfoldId; - } - - public Long getSheepfoldId() - { - return sheepfoldId; - } - public void setSheepfoldName(String sheepfoldName) - { - this.sheepfoldName = sheepfoldName; - } - - public String getSheepfoldName() - { - return sheepfoldName; - } - public void setElectronicTags(String electronicTags) - { - this.electronicTags = electronicTags; - } - - public String getElectronicTags() - { - return electronicTags; - } - public void setVarietyId(Long varietyId) - { - this.varietyId = varietyId; - } - - public Long getVarietyId() - { - return varietyId; - } - public void setVariety(String variety) - { - this.variety = variety; - } - - public String getVariety() - { - return variety; - } - public void setSheepCategory(String sheepCategory) - { - this.sheepCategory = sheepCategory; - } - - public String getSheepCategory() - { - return sheepCategory; - } - public void setCurrentStatus(String currentStatus) - { - this.currentStatus = currentStatus; - } - - public String getCurrentStatus() - { - return currentStatus; - } - public void setBirthday(Date birthday) - { - this.birthday = birthday; - } - - public Date getBirthday() - { - return birthday; - } - public void setDynamicInfo(String dynamicInfo) - { - this.dynamicInfo = dynamicInfo; - } - - public String getDynamicInfo() - { - return dynamicInfo; - } - public void setMonthAge(Long monthAge) - { - this.monthAge = monthAge; - } - - public Long getMonthAge() - { - return monthAge; - } - public void setBirthWeight(BigDecimal birthWeight) - { - this.birthWeight = birthWeight; - } - - public BigDecimal getBirthWeight() - { - return birthWeight; - } - public void setWeaningDate(Date weaningDate) - { - this.weaningDate = weaningDate; - } - - public Date getWeaningDate() - { - return weaningDate; - } - public void setWeaningDayAge(Long weaningDayAge) - { - this.weaningDayAge = weaningDayAge; - } - - public Long getWeaningDayAge() - { - return weaningDayAge; - } - public void setWeaningWeight(BigDecimal weaningWeight) - { - this.weaningWeight = weaningWeight; - } - - public BigDecimal getWeaningWeight() - { - return weaningWeight; - } - public void setWeaningDailyGain(BigDecimal weaningDailyGain) - { - this.weaningDailyGain = weaningDailyGain; - } - - public BigDecimal getWeaningDailyGain() - { - return weaningDailyGain; - } - public void setPostWeaningDailyGain(BigDecimal postWeaningDailyGain) - { - this.postWeaningDailyGain = postWeaningDailyGain; - } - - public BigDecimal getPostWeaningDailyGain() - { - return postWeaningDailyGain; - } - public void setCurrentWeight(BigDecimal currentWeight) - { - this.currentWeight = currentWeight; - } - - public BigDecimal getCurrentWeight() - { - return currentWeight; - } - public void setCurrentWeightDate(Date currentWeightDate) - { - this.currentWeightDate = currentWeightDate; - } - - public Date getCurrentWeightDate() - { - return currentWeightDate; - } - public void setActivityLevel(String activityLevel) - { - this.activityLevel = activityLevel; - } - - public String getActivityLevel() - { - return activityLevel; - } - public void setSexualStatus(String sexualStatus) - { - this.sexualStatus = sexualStatus; - } - - public String getSexualStatus() - { - return sexualStatus; - } - public void setScrotumCircumference(BigDecimal scrotumCircumference) - { - this.scrotumCircumference = scrotumCircumference; - } - - public BigDecimal getScrotumCircumference() - { - return scrotumCircumference; - } - public void setSpermCollectionTime(Date spermCollectionTime) - { - this.spermCollectionTime = spermCollectionTime; - } - - public Date getSpermCollectionTime() - { - return spermCollectionTime; - } - public void setSpermVolume(BigDecimal spermVolume) - { - this.spermVolume = spermVolume; - } - - public BigDecimal getSpermVolume() - { - return spermVolume; - } - public void setSpermVitality(String spermVitality) - { - this.spermVitality = spermVitality; - } - - public String getSpermVitality() - { - return spermVitality; - } - public void setSpermDensity(String spermDensity) - { - this.spermDensity = spermDensity; - } - - public String getSpermDensity() - { - return spermDensity; - } - public void setSpermQuality(String spermQuality) - { - this.spermQuality = spermQuality; - } - - public String getSpermQuality() - { - return spermQuality; - } - public void setBreedingStatus(Long breedingStatus) - { - this.breedingStatus = breedingStatus; - } - - public Long getBreedingStatus() - { - return breedingStatus; - } - public void setLastPlanTime(Date lastPlanTime) - { - this.lastPlanTime = lastPlanTime; - } - - public Date getLastPlanTime() - { - return lastPlanTime; - } - public void setCurrentPlanTime(Date currentPlanTime) - { - this.currentPlanTime = currentPlanTime; - } - - public Date getCurrentPlanTime() - { - return currentPlanTime; - } - public void setProteinRateEbv(BigDecimal proteinRateEbv) - { - this.proteinRateEbv = proteinRateEbv; - } - - public BigDecimal getProteinRateEbv() - { - return proteinRateEbv; - } - public void setMilkFatRateEbv(BigDecimal milkFatRateEbv) - { - this.milkFatRateEbv = milkFatRateEbv; - } - - public BigDecimal getMilkFatRateEbv() - { - return milkFatRateEbv; - } - public void setScsEbv(BigDecimal scsEbv) - { - this.scsEbv = scsEbv; - } - - public BigDecimal getScsEbv() - { - return scsEbv; - } - public void setGrowthPerformanceEbv(BigDecimal growthPerformanceEbv) - { - this.growthPerformanceEbv = growthPerformanceEbv; - } - - public BigDecimal getGrowthPerformanceEbv() - { - return growthPerformanceEbv; - } - public void setResistanceEbv(BigDecimal resistanceEbv) - { - this.resistanceEbv = resistanceEbv; - } - - public BigDecimal getResistanceEbv() - { - return resistanceEbv; - } - public void setReproductionPerformanceEbv(BigDecimal reproductionPerformanceEbv) - { - this.reproductionPerformanceEbv = reproductionPerformanceEbv; - } - - public BigDecimal getReproductionPerformanceEbv() - { - return reproductionPerformanceEbv; - } - public void setBodyTypeEbv(BigDecimal bodyTypeEbv) - { - this.bodyTypeEbv = bodyTypeEbv; - } - - public BigDecimal getBodyTypeEbv() - { - return bodyTypeEbv; - } - public void setComprehensiveBreedingValue(BigDecimal comprehensiveBreedingValue) - { - this.comprehensiveBreedingValue = comprehensiveBreedingValue; - } - - public BigDecimal getComprehensiveBreedingValue() - { - return comprehensiveBreedingValue; - } - public void setFatherNumber(String fatherNumber) - { - this.fatherNumber = fatherNumber; - } - - public String getFatherNumber() - { - return fatherNumber; - } - public void setMotherNumber(String motherNumber) - { - this.motherNumber = motherNumber; - } - - public String getMotherNumber() - { - return motherNumber; - } - public void setGrandfatherNumber(String grandfatherNumber) - { - this.grandfatherNumber = grandfatherNumber; - } - - public String getGrandfatherNumber() - { - return grandfatherNumber; - } - public void setGrandmotherNumber(String grandmotherNumber) - { - this.grandmotherNumber = grandmotherNumber; - } - - public String getGrandmotherNumber() - { - return grandmotherNumber; - } - public void setMaternalGrandfatherNumber(String maternalGrandfatherNumber) - { - this.maternalGrandfatherNumber = maternalGrandfatherNumber; - } - - public String getMaternalGrandfatherNumber() - { - return maternalGrandfatherNumber; - } - public void setMaternalGrandmotherNumber(String maternalGrandmotherNumber) - { - this.maternalGrandmotherNumber = maternalGrandmotherNumber; - } - - public String getMaternalGrandmotherNumber() - { - return maternalGrandmotherNumber; - } - public void setIsCoreFlock(Long isCoreFlock) - { - this.isCoreFlock = isCoreFlock; - } - - public Long getIsCoreFlock() - { - return isCoreFlock; - } - public void setIsBreedingUse(Long isBreedingUse) - { - this.isBreedingUse = isBreedingUse; - } - - public Long getIsBreedingUse() - { - return isBreedingUse; - } - public void setPregnancyCheck(String pregnancyCheck) - { - this.pregnancyCheck = pregnancyCheck; - } - - public String getPregnancyCheck() - { - return pregnancyCheck; - } - public void setTotalMatedEwes(Long totalMatedEwes) - { - this.totalMatedEwes = totalMatedEwes; - } - - public Long getTotalMatedEwes() - { - return totalMatedEwes; - } - public void setNaturalPregnancyCheckEwes(Long naturalPregnancyCheckEwes) - { - this.naturalPregnancyCheckEwes = naturalPregnancyCheckEwes; - } - - public Long getNaturalPregnancyCheckEwes() - { - return naturalPregnancyCheckEwes; - } - public void setNaturalConceptionRate(BigDecimal naturalConceptionRate) - { - this.naturalConceptionRate = naturalConceptionRate; - } - - public BigDecimal getNaturalConceptionRate() - { - return naturalConceptionRate; - } - public void setArtificialPregnancyCheckEwes(Long artificialPregnancyCheckEwes) - { - this.artificialPregnancyCheckEwes = artificialPregnancyCheckEwes; - } - - public Long getArtificialPregnancyCheckEwes() - { - return artificialPregnancyCheckEwes; - } - public void setArtificialConceptionRate(BigDecimal artificialConceptionRate) - { - this.artificialConceptionRate = artificialConceptionRate; - } - - public BigDecimal getArtificialConceptionRate() - { - return artificialConceptionRate; - } - public void setRamMotherMilkVolume(BigDecimal ramMotherMilkVolume) - { - this.ramMotherMilkVolume = ramMotherMilkVolume; - } - - public BigDecimal getRamMotherMilkVolume() - { - return ramMotherMilkVolume; - } - public void setMilkProductionEbv(BigDecimal milkProductionEbv) - { - this.milkProductionEbv = milkProductionEbv; - } - - public BigDecimal getMilkProductionEbv() - { - return milkProductionEbv; - } - public void setAccuracy(BigDecimal accuracy) - { - this.accuracy = accuracy; - } - - public BigDecimal getAccuracy() - { - return accuracy; - } - public void setInformationCount(Long informationCount) - { - this.informationCount = informationCount; - } - - public Long getInformationCount() - { - return informationCount; - } - public void setIsPaternityTested(Long isPaternityTested) - { - this.isPaternityTested = isPaternityTested; - } - - public Long getIsPaternityTested() - { - return isPaternityTested; - } - public void setIsDelete(Long isDelete) - { - this.isDelete = isDelete; - } - - public Long getIsDelete() - { - return isDelete; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("ordinaryEarNumber", getOrdinaryEarNumber()) - .append("ranchId", getRanchId()) - .append("ranchName", getRanchName()) - .append("sheepfoldId", getSheepfoldId()) - .append("sheepfoldName", getSheepfoldName()) - .append("electronicTags", getElectronicTags()) - .append("varietyId", getVarietyId()) - .append("variety", getVariety()) - .append("sheepCategory", getSheepCategory()) - .append("currentStatus", getCurrentStatus()) - .append("birthday", getBirthday()) - .append("dynamicInfo", getDynamicInfo()) - .append("monthAge", getMonthAge()) - .append("birthWeight", getBirthWeight()) - .append("weaningDate", getWeaningDate()) - .append("weaningDayAge", getWeaningDayAge()) - .append("weaningWeight", getWeaningWeight()) - .append("weaningDailyGain", getWeaningDailyGain()) - .append("postWeaningDailyGain", getPostWeaningDailyGain()) - .append("currentWeight", getCurrentWeight()) - .append("currentWeightDate", getCurrentWeightDate()) - .append("activityLevel", getActivityLevel()) - .append("sexualStatus", getSexualStatus()) - .append("scrotumCircumference", getScrotumCircumference()) - .append("spermCollectionTime", getSpermCollectionTime()) - .append("spermVolume", getSpermVolume()) - .append("spermVitality", getSpermVitality()) - .append("spermDensity", getSpermDensity()) - .append("spermQuality", getSpermQuality()) - .append("breedingStatus", getBreedingStatus()) - .append("lastPlanTime", getLastPlanTime()) - .append("currentPlanTime", getCurrentPlanTime()) - .append("remark", getRemark()) - .append("proteinRateEbv", getProteinRateEbv()) - .append("milkFatRateEbv", getMilkFatRateEbv()) - .append("scsEbv", getScsEbv()) - .append("growthPerformanceEbv", getGrowthPerformanceEbv()) - .append("resistanceEbv", getResistanceEbv()) - .append("reproductionPerformanceEbv", getReproductionPerformanceEbv()) - .append("bodyTypeEbv", getBodyTypeEbv()) - .append("comprehensiveBreedingValue", getComprehensiveBreedingValue()) - .append("fatherNumber", getFatherNumber()) - .append("motherNumber", getMotherNumber()) - .append("grandfatherNumber", getGrandfatherNumber()) - .append("grandmotherNumber", getGrandmotherNumber()) - .append("maternalGrandfatherNumber", getMaternalGrandfatherNumber()) - .append("maternalGrandmotherNumber", getMaternalGrandmotherNumber()) - .append("isCoreFlock", getIsCoreFlock()) - .append("isBreedingUse", getIsBreedingUse()) - .append("pregnancyCheck", getPregnancyCheck()) - .append("totalMatedEwes", getTotalMatedEwes()) - .append("naturalPregnancyCheckEwes", getNaturalPregnancyCheckEwes()) - .append("naturalConceptionRate", getNaturalConceptionRate()) - .append("artificialPregnancyCheckEwes", getArtificialPregnancyCheckEwes()) - .append("artificialConceptionRate", getArtificialConceptionRate()) - .append("ramMotherMilkVolume", getRamMotherMilkVolume()) - .append("milkProductionEbv", getMilkProductionEbv()) - .append("accuracy", getAccuracy()) - .append("informationCount", getInformationCount()) - .append("isPaternityTested", getIsPaternityTested()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("isDelete", getIsDelete()) - .toString(); - } -} \ No newline at end of file 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 deleted file mode 100644 index ef3c938..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java +++ /dev/null @@ -1,31 +0,0 @@ -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; - -/** - * 牧场管理对象 da_ranch - * - * @author ruoyi - * @date 2025-07-22 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class DaRanch extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 牧场名称 */ - private String ranch; - - -} 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 deleted file mode 100644 index 0216feb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.zhyc.module.base.domain; - -import com.zhyc.common.annotation.Excel; -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 - * - * @author wyt - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class DaSheepfold extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 羊舍id */ - @Excel(name = "羊舍id") - private Long id; - - /** 牧场 */ - @Excel(name = "牧场") - private Long ranchId; - - /** 羊舍名称 */ - @Excel(name = "羊舍名称") - private String sheepfoldName; - - /** 羊舍类型id */ - @Excel(name = "羊舍类型id") - private Long sheepfoldTypeId; - - /** 羊舍编号 */ - @Excel(name = "羊舍编号") - private String sheepfoldNo; - - /** 排号 */ - @Excel(name = "排号") - private String rowNo; - - /** 栏数 */ - @Excel(name = "栏数") - private String columns; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - -} 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 deleted file mode 100644 index acefce9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java +++ /dev/null @@ -1,273 +0,0 @@ -package com.zhyc.module.base.domain; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.zhyc.common.annotation.Excel; -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; - -/** - * 羊只档案对象 sheep_file - * - * @author wyt - * @date 2025-07-13 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SheepFile extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 羊只id */ - private Long id; - - /** 管理耳号 */ - @Excel(name = "管理耳号") - private String bsManageTags; - - /** 牧场id */ - @Excel(name = "牧场id") - private Long ranchId; - - /** 牧场名称 */ - @Excel(name = "牧场名称") - private String drRanch; - - /** 羊舍id */ - @Excel(name = "羊舍id") - private Long sheepfoldId; - - /** 羊舍名称 */ - @Excel(name = "羊舍名称") - private String sheepfoldName; - - /** 电子耳号 */ - @Excel(name = "电子耳号") - private String electronicTags; - - /** 品种id */ - @Excel(name = "品种id") - private Long varietyId; - - /** 品种 */ - @Excel(name = "品种") - private String variety; - - /** 家系 */ - @Excel(name = "家系") - private String family; - - /** 羊只类型 */ - @Excel(name = "羊只类型") - private String name; - - /** 性别 */ - @Excel(name = "性别") - private Long gender; - - /** 出生日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date birthday; - - /** 日龄 */ - @Excel(name = "日龄") - private Long dayAge; - - /** 月龄 */ - @Excel(name = "月龄") - private Long monthAge; - - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 出生体重 */ - @Excel(name = "出生体重") - private Long birthWeight; - - /** 断奶日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date weaningDate; - - /** 羊只状态 */ - @Excel(name = "羊只状态") - private Long statusId; - - /** 断奶体重 */ - @Excel(name = "断奶体重") - private Long weaningWeight; - - /** 当前体重 */ - @Excel(name = "当前体重") - private Long currentWeight; - - /** 繁育状态id */ - @Excel(name = "繁育状态id") - private Long breedStatusId; - - /** 繁殖状态 */ - @Excel(name = "繁殖状态") - private String breed; - - /** 父号id */ - @Excel(name = "父号id") - private Long bsFatherId; - - /** 父亲管理耳号 */ - @Excel(name = "父亲管理耳号") - private String fatherManageTags; - - /** 母号id */ - @Excel(name = "母号id") - private Long bsMotherId; - - /** 母亲管理耳号 */ - @Excel(name = "母亲管理耳号") - private String motherManageTags; - - /** 受体id */ - @Excel(name = "受体id") - private Long receptorId; - - /** 受体管理耳号 */ - @Excel(name = "受体管理耳号") - private String receptorManageTags; - - /** 祖父号id */ - @Excel(name = "祖父号id") - private Long fatherFatherId; - - /** 祖父管理耳号 */ - @Excel(name = "祖父管理耳号") - private String grandfatherManageTags; - - /** 祖母号id */ - @Excel(name = "祖母号id") - private Long fatherMotherId; - - /** 祖母管理耳号 */ - @Excel(name = "祖母管理耳号") - private String grandmotherManageTags; - - /** 外祖父号id */ - @Excel(name = "外祖父号id") - private Long fatherId; - - /** 外祖父管理耳号 */ - @Excel(name = "外祖父管理耳号") - private String maternalGrandfatherManageTags; - - /** 外祖母号id */ - @Excel(name = "外祖母号id") - private Long motherId; - - /** 外祖母管理耳号 */ - @Excel(name = "外祖母管理耳号") - private String maternalGrandmotherManageTags; - - /** 配种日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date matingDate; - - /** 配种类型 */ - @Excel(name = "配种类型") - private Long matingTypeId; - - /** 孕检日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date pregDate; - - /** 产羔日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "产羔日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date lambingDate; - - /** 产羔时怀孕天数 */ - @Excel(name = "产羔时怀孕天数") - private Long lambingDay; - - /** 配后天数 */ - @Excel(name = "配后天数") - private Long matingDay; - - /** 怀孕天数 */ - @Excel(name = "怀孕天数") - private Long gestationDay; - - /** 预产日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date expectedDate; - - /** 产后天数 */ - @Excel(name = "产后天数") - private Long postLambingDay; - - /** 泌乳天数 */ - @Excel(name = "泌乳天数") - private Long lactationDay; - - /** 空怀天数 */ - @Excel(name = "空怀天数") - private Long anestrousDay; - - /** 配种次数 */ - @Excel(name = "配种次数") - private Long matingCounts; - - /** 累计配种次数 */ - @Excel(name = "累计配种次数") - private Long matingTotal; - - /** 累计流产次数 */ - @Excel(name = "累计流产次数") - private Long miscarriageCounts; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 是否性控 */ - @Excel(name = "是否性控") - private Long controlled; - - /** 体况评分 */ - @Excel(name = "体况评分") - private Long body; - - /** 乳房评分 */ - @Excel(name = "乳房评分") - private Long breast; - - /** 入群来源 */ - @Excel(name = "入群来源") - private String source; - - /** 入群日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "入群日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date sourceDate; - - /** 来源牧场id */ - @Excel(name = "来源牧场id") - private Long sourceRanchId; - - /** 来源牧场 */ - @Excel(name = "来源牧场") - private String sourceRanch; - - /** 是否删除 */ - private Long isDelete; - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java deleted file mode 100644 index 52abe57..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.base.mapper; - -import com.zhyc.module.base.domain.BasSheepGroup; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; - -/** - * 分组管理Mapper接口 - * - * @author wyt - * @date 2025-07-14 - */ -@Mapper -public interface BasSheepGroupMapper -{ - /** - * 查询分组管理 - * - * @param groupId 分组管理主键 - * @return 分组管理 - */ - public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId); - - /** - * 查询分组管理列表 - * - * @param basSheepGroup 分组管理 - * @return 分组管理集合 - */ - public List selectBasSheepGroupList(BasSheepGroup basSheepGroup); - - /** - * 新增分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - public int insertBasSheepGroup(BasSheepGroup basSheepGroup); - - /** - * 修改分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - public int updateBasSheepGroup(BasSheepGroup basSheepGroup); - - /** - * 删除分组管理 - * - * @param groupId 分组管理主键 - * @return 结果 - */ - public int deleteBasSheepGroupByGroupId(Long groupId); - - /** - * 批量删除分组管理 - * - * @param groupIds 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasSheepGroupByGroupIds(Long[] groupIds); - - List selectLeafNodes(); - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java deleted file mode 100644 index 2e4f1cc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; -import java.util.Map; - -import com.zhyc.module.base.domain.BasSheepGroupMapping; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -/** - * 羊只分组关联Mapper接口 - * - * @author wyt - * @date 2025-07-16 - */ -@Mapper -public interface BasSheepGroupMappingMapper -{ - /** - * 查询羊只分组关联 - * - * @param id 羊只分组关联主键 - * @return 羊只分组关联 - */ - public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id); - - /** - * 查询羊只分组关联列表 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 羊只分组关联集合 - */ - public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping); - - - /** - * 联表查询羊只分组关联列表(支持耳号列表) - */ - List> selectBasSheepGroupMappingList( - @Param("sheepId") Long sheepId, - @Param("groupId") Long groupId, - @Param("bsManageTags") List bsManageTags - ); - - - - - - /** - * 新增羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ - public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); - - /** - * 修改羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ - public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); - - /** - * 删除羊只分组关联 - * - * @param id 羊只分组关联主键 - * @return 结果 - */ - public int deleteBasSheepGroupMappingById(Long id); - - /** - * 批量删除羊只分组关联 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasSheepGroupMappingByIds(Long[] ids); - - - List> selectSheepIdsByEarTags(@Param("earTags") List earTags); - - int batchInsert(@Param("list") List list); - - - List selectListByGroupId(@Param("groupId") Long groupId); - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java deleted file mode 100644 index 4baaf89..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheep; -import org.apache.ibatis.annotations.Param; - -/** - * 羊只基本信息Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface BasSheepMapper -{ - /** - * 查询羊只基本信息 - * - * @param id 羊只基本信息主键 - * @return 羊只基本信息 - */ - public BasSheep selectBasSheepById(Long id); - - /** - * 查询羊只基本信息列表 - * - * @param basSheep 羊只基本信息 - * @return 羊只基本信息集合 - */ - public List selectBasSheepList(BasSheep basSheep); - - /** - * 新增羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - public int insertBasSheep(BasSheep basSheep); - - /** - * 修改羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - public int updateBasSheep(BasSheep basSheep); - - /** - * 删除羊只基本信息 - * - * @param id 羊只基本信息主键 - * @return 结果 - */ - public int deleteBasSheepById(Long id); - - /** - * 批量删除羊只基本信息 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasSheepByIds(Long[] ids); - - - /** - * 根据管理耳号查询 - */ - BasSheep selectBasSheepByManageTags(String manageTags); - - - List selectBasSheepBySheepfold(String id); - -// 根据牧场ID获取羊只列表 - List getSheepByRanchId(Long ranchId); - - List selectBasSheepListByIds(List ids); - - //用于校验改耳号部分新管理/电子耳号 - int existsByManageTag(@Param("tag") String tag); - int existsByElectronicTag(@Param("tag") String tag); - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java deleted file mode 100644 index 4afe2e9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; -import com.zhyc.module.base.domain.BasSheepType; - -/** - * 羊只类型Mapper接口 - * - * @author ruoyi - * @date 2025-07-22 - */ -public interface BasSheepTypeMapper -{ - /** - * 查询羊只类型 - * - * @param id 羊只类型主键 - * @return 羊只类型 - */ - public BasSheepType selectBasSheepTypeById(Integer id); - - /** - * 查询羊只类型列表 - * - * @param basSheepType 羊只类型 - * @return 羊只类型集合 - */ - public List selectBasSheepTypeList(BasSheepType basSheepType); - - /** - * 新增羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - public int insertBasSheepType(BasSheepType basSheepType); - - /** - * 修改羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - public int updateBasSheepType(BasSheepType basSheepType); - - /** - * 删除羊只类型 - * - * @param id 羊只类型主键 - * @return 结果 - */ - public int deleteBasSheepTypeById(Integer id); - - /** - * 批量删除羊只类型 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasSheepTypeByIds(Integer[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java deleted file mode 100644 index 0802830..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheepVariety; -import org.apache.ibatis.annotations.Mapper; - -/** - * 羊只品种Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface BasSheepVarietyMapper -{ - /** - * 查询羊只品种 - * - * @param id 羊只品种主键 - * @return 羊只品种 - */ - public BasSheepVariety selectBasSheepVarietyById(Long id); - - /** - * 查询羊只品种列表 - * - * @param basSheepVariety 羊只品种 - * @return 羊只品种集合 - */ - public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety); - - /** - * 新增羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - public int insertBasSheepVariety(BasSheepVariety basSheepVariety); - - /** - * 修改羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - public int updateBasSheepVariety(BasSheepVariety basSheepVariety); - - /** - * 删除羊只品种 - * - * @param id 羊只品种主键 - * @return 结果 - */ - public int deleteBasSheepVarietyById(Long id); - - /** - * 批量删除羊只品种 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasSheepVarietyByIds(Long[] ids); - - - /** - * 根据品种名称查询品种 ID 用于导入羊只 - * - * @param varietyName 品种名称 - * @return 品种 ID - */ - Long selectIdByName(String varietyName); - - BasSheepVariety selectByVarietyName(String varietyName); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java deleted file mode 100644 index bb6eaa2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; -import com.zhyc.module.base.domain.BreedRamFile; - -/** - * 种公羊档案Mapper接口 - * - * @author zhyc - * @date 2025-07-29 - */ -public interface BreedRamFileMapper -{ - /** - * 查询种公羊档案 - * - * @param id 种公羊档案主键 - * @return 种公羊档案 - */ - public BreedRamFile selectBreedRamFileById(Long id); - - /** - * 查询种公羊档案列表 - * - * @param breedRamFile 种公羊档案 - * @return 种公羊档案集合 - */ - public List selectBreedRamFileList(BreedRamFile breedRamFile); - - /** - * 新增种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - public int insertBreedRamFile(BreedRamFile breedRamFile); - - /** - * 修改种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - public int updateBreedRamFile(BreedRamFile breedRamFile); - - /** - * 删除种公羊档案 - * - * @param id 种公羊档案主键 - * @return 结果 - */ - public int deleteBreedRamFileById(Long id); - - /** - * 批量删除种公羊档案 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBreedRamFileByIds(Long[] ids); - - /** - * 根据普通耳号查询种公羊档案 - * - * @param ordinaryEarNumber 普通耳号 - * @return 种公羊档案 - */ - public BreedRamFile selectBreedRamFileByOrdinaryEarNumber(String ordinaryEarNumber); - - /** - * 根据电子耳号查询种公羊档案 - * - * @param electronicTags 电子耳号 - * @return 种公羊档案 - */ - public BreedRamFile selectBreedRamFileByElectronicTags(String electronicTags); - - /** - * 根据牧场ID查询种公羊档案列表 - * - * @param ranchId 牧场ID - * @return 种公羊档案集合 - */ - public List selectBreedRamFileListByRanchId(Long ranchId); - - /** - * 根据羊舍ID查询种公羊档案列表 - * - * @param sheepfoldId 羊舍ID - * @return 种公羊档案集合 - */ - public List selectBreedRamFileListBySheepfoldId(Long sheepfoldId); - - /** - * 查询核心羊群种公羊档案列表 - * - * @param breedRamFile 种公羊档案 - * @return 种公羊档案集合 - */ - public List selectCoreFlockBreedRamFileList(BreedRamFile breedRamFile); - - /** - * 查询种用种公羊档案列表 - * - * @param breedRamFile 种公羊档案 - * @return 种公羊档案集合 - */ - public List selectBreedingUseBreedRamFileList(BreedRamFile breedRamFile); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java deleted file mode 100644 index 5e3c949..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.base.mapper; - -import java.util.List; -import com.zhyc.module.base.domain.DaRanch; - -/** - * 牧场管理Mapper接口 - * - * @author ruoyi - * @date 2025-07-22 - */ -public interface DaRanchMapper -{ - /** - * 查询牧场管理 - * - * @param id 牧场管理主键 - * @return 牧场管理 - */ - public DaRanch selectDaRanchById(Long id); - - /** - * 查询牧场管理列表 - * - * @param daRanch 牧场管理 - * @return 牧场管理集合 - */ - public List selectDaRanchList(DaRanch daRanch); - - /** - * 新增牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - public int insertDaRanch(DaRanch daRanch); - - /** - * 修改牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - public int updateDaRanch(DaRanch daRanch); - - /** - * 删除牧场管理 - * - * @param id 牧场管理主键 - * @return 结果 - */ - public int deleteDaRanchById(Long id); - - /** - * 批量删除牧场管理 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteDaRanchByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java deleted file mode 100644 index 9b690ce..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.base.mapper; - -import com.zhyc.module.base.domain.DaSheepfold; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; - -/** - * 羊舍管理Mapper接口 - * - * @author wyt - * @date 2025-07-11 - */ -@Mapper -public interface DaSheepfoldMapper -{ - /** - * 查询羊舍管理 - * - * @param id 羊舍管理主键 - * @return 羊舍管理 - */ - public DaSheepfold selectDaSheepfoldById(Long id); - - /** - * 查询羊舍管理列表 - * - * @param daSheepfold 羊舍管理 - * @return 羊舍管理集合 - */ - public List selectDaSheepfoldList(DaSheepfold daSheepfold); - - /** - * 新增羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - public int insertDaSheepfold(DaSheepfold daSheepfold); - - /** - * 修改羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - public int updateDaSheepfold(DaSheepfold daSheepfold); - - /** - * 删除羊舍管理 - * - * @param id 羊舍管理主键 - * @return 结果 - */ - public int deleteDaSheepfoldById(Long id); - - /** - * 批量删除羊舍管理 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteDaSheepfoldByIds(Long[] ids); - - public int selectCount(DaSheepfold daSheepfold); - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java deleted file mode 100644 index 9d4fc5a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.base.mapper; - -import com.zhyc.module.base.domain.SheepFile; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; -import java.util.Map; - -/** - * 羊只档案Mapper接口 - * - * @author wyt - * @date 2025-07-13 - */ -@Mapper -public interface SheepFileMapper -{ - /** - * 查询羊只档案 - * - * @param id 羊只档案主键 - * @return 羊只档案 - */ - public SheepFile selectSheepFileById(Long id); - - /** - * 查询羊只档案列表 - * - * @param sheepFile 羊只档案 - * @return 羊只档案集合 - */ - public List selectSheepFileList(SheepFile sheepFile); - - - /** - * 根据管理耳号查询 - * - * @param tags 管理耳号 - * @return 结果 - */ - SheepFile selectSheepByManageTags(String tags); - - - // 在群羊只总数 - Long countInGroup(); - - - // 羊只类别分布(按 name 分组) - List> countBySheepType(); - - // 繁育状态分布(按 breed 分组) - List> countByBreedStatus(); - - // 品种分布(按 variety 分组) - List> countByVariety(); - - // 泌乳羊胎次分布(name = '泌乳羊' 时按 parity 分组) - List> countParityOfLactation(); - - - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java deleted file mode 100644 index d6b5c7a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; -import java.util.Map; - -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.module.base.domain.BasSheepGroupMapping; - -/** - * 羊只分组关联Service接口 - * - * @author wyt - * @date 2025-07-16 - */ -public interface IBasSheepGroupMappingService -{ - /** - * 查询羊只分组关联 - * - * @param id 羊只分组关联主键 - * @return 羊只分组关联 - */ - public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id); - - /** - * 查询羊只分组关联列表 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 羊只分组关联集合 - */ - public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping); - - - /** - * 联表查询羊只分组关联列表(支持耳号列表) - */ - List> selectBasSheepGroupMappingList(Long sheepId, Long groupId, List bsManageTags); - - - /** - * 新增羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ - public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); - - /** - * 修改羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ - public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); - - /** - * 批量删除羊只分组关联 - * - * @param ids 需要删除的羊只分组关联主键集合 - * @return 结果 - */ - public int deleteBasSheepGroupMappingByIds(Long[] ids); - - /** - * 删除羊只分组关联信息 - * - * @param id 羊只分组关联主键 - * @return 结果 - */ - public int deleteBasSheepGroupMappingById(Long id); - - public AjaxResult addByEarTags(List earTags, Long groupId); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java deleted file mode 100644 index 330d5fc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.base.service; - -import com.zhyc.module.base.domain.BasSheepGroup; - -import java.util.List; - -/** - * 分组管理Service接口 - * - * @author wyt - * @date 2025-07-14 - */ -public interface IBasSheepGroupService -{ - /** - * 查询分组管理 - * - * @param groupId 分组管理主键 - * @return 分组管理 - */ - public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId); - - /** - * 查询分组管理列表 - * - * @param basSheepGroup 分组管理 - * @return 分组管理集合 - */ - public List selectBasSheepGroupList(BasSheepGroup basSheepGroup); - - /** - * 新增分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - public int insertBasSheepGroup(BasSheepGroup basSheepGroup); - - /** - * 修改分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - public int updateBasSheepGroup(BasSheepGroup basSheepGroup); - - /** - * 批量删除分组管理 - * - * @param groupIds 需要删除的分组管理主键集合 - * @return 结果 - */ - public int deleteBasSheepGroupByGroupIds(Long[] groupIds); - - /** - * 删除分组管理信息 - * - * @param groupId 分组管理主键 - * @return 结果 - */ - public int deleteBasSheepGroupByGroupId(Long groupId); - - List selectLeafNodes(); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java deleted file mode 100644 index 18c7351..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheep; - -/** - * 羊只基本信息Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IBasSheepService -{ - /** - * 查询羊只基本信息 - * - * @param id 羊只基本信息主键 - * @return 羊只基本信息 - */ - public BasSheep selectBasSheepById(Long id); - - /** - * 查询羊只基本信息列表 - * - * @param basSheep 羊只基本信息 - * @return 羊只基本信息集合 - */ - public List selectBasSheepList(BasSheep basSheep); - - /** - * 新增羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - public int insertBasSheep(BasSheep basSheep); - - /** - * 修改羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - public int updateBasSheep(BasSheep basSheep); - - /** - * 批量删除羊只基本信息 - * - * @param ids 需要删除的羊只基本信息主键集合 - * @return 结果 - */ - public int deleteBasSheepByIds(Long[] ids); - - /** - * 删除羊只基本信息信息 - * - * @param id 羊只基本信息主键 - * @return 结果 - */ - public int deleteBasSheepById(Long id); - - /** - * 根据羊只耳号获取羊只 - */ - BasSheep selectBasSheepByManageTags(String trim); - - /** - * 根据牧场ID获取羊只列表 - */ - List getSheepByRanchId(Long ranchId); - - List selectBasSheepListByIds(List ids); - - //校验新管理/电子耳号 - boolean existsByTag(String tag, Integer earType); -} 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 deleted file mode 100644 index 5f9721d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.domain.BasSheepType; - -/** - * 羊只类型Service接口 - * - * @author ruoyi - * @date 2025-07-22 - */ -public interface IBasSheepTypeService -{ - /** - * 查询羊只类型 - * - * @param id 羊只类型主键 - * @return 羊只类型 - */ - public BasSheepType selectBasSheepTypeById(Integer id); - - /** - * 查询羊只类型列表 - * - * @param basSheepType 羊只类型 - * @return 羊只类型集合 - */ - public List selectBasSheepTypeList(BasSheepType basSheepType); - - /** - * 新增羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - public int insertBasSheepType(BasSheepType basSheepType); - - /** - * 修改羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - public int updateBasSheepType(BasSheepType basSheepType); - - /** - * 批量删除羊只类型 - * - * @param ids 需要删除的羊只类型主键集合 - * @return 结果 - */ - public int deleteBasSheepTypeByIds(Integer[] ids); - - /** - * 删除羊只类型信息 - * - * @param id 羊只类型主键 - * @return 结果 - */ - public int deleteBasSheepTypeById(Integer id); - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java deleted file mode 100644 index 04369a6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheepVariety; - -/** - * 羊只品种Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IBasSheepVarietyService -{ - /** - * 查询羊只品种 - * - * @param id 羊只品种主键 - * @return 羊只品种 - */ - public BasSheepVariety selectBasSheepVarietyById(Long id); - - /** - * 查询羊只品种列表 - * - * @param basSheepVariety 羊只品种 - * @return 羊只品种集合 - */ - public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety); - - /** - * 新增羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - public int insertBasSheepVariety(BasSheepVariety basSheepVariety); - - /** - * 修改羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - public int updateBasSheepVariety(BasSheepVariety basSheepVariety); - - /** - * 批量删除羊只品种 - * - * @param ids 需要删除的羊只品种主键集合 - * @return 结果 - */ - public int deleteBasSheepVarietyByIds(Long[] ids); - - /** - * 删除羊只品种信息 - * - * @param id 羊只品种主键 - * @return 结果 - */ - public int deleteBasSheepVarietyById(Long id); - - - // 根据品种名称查询品种 - public BasSheepVariety selectByVarietyName(String varietyName); - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java deleted file mode 100644 index 847f3b0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; -import com.zhyc.module.base.domain.BreedRamFile; - -/** - * 种公羊档案Service接口 - * - * @author zhyc - * @date 2025-07-29 - */ -public interface IBreedRamFileService -{ - /** - * 查询种公羊档案 - * - * @param id 种公羊档案主键 - * @return 种公羊档案 - */ - public BreedRamFile selectBreedRamFileById(Long id); - - /** - * 查询种公羊档案列表 - * - * @param breedRamFile 种公羊档案 - * @return 种公羊档案集合 - */ - public List selectBreedRamFileList(BreedRamFile breedRamFile); - - /** - * 新增种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - public int insertBreedRamFile(BreedRamFile breedRamFile); - - /** - * 修改种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - public int updateBreedRamFile(BreedRamFile breedRamFile); - - /** - * 批量删除种公羊档案 - * - * @param ids 需要删除的种公羊档案主键集合 - * @return 结果 - */ - public int deleteBreedRamFileByIds(Long[] ids); - - /** - * 删除种公羊档案信息 - * - * @param id 种公羊档案主键 - * @return 结果 - */ - public int deleteBreedRamFileById(Long id); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java deleted file mode 100644 index 5428460..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.base.service; - -import java.util.List; -import com.zhyc.module.base.domain.DaRanch; - -/** - * 牧场管理Service接口 - * - * @author ruoyi - * @date 2025-07-22 - */ -public interface IDaRanchService -{ - /** - * 查询牧场管理 - * - * @param id 牧场管理主键 - * @return 牧场管理 - */ - public DaRanch selectDaRanchById(Long id); - - /** - * 查询牧场管理列表 - * - * @param daRanch 牧场管理 - * @return 牧场管理集合 - */ - public List selectDaRanchList(DaRanch daRanch); - - /** - * 新增牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - public int insertDaRanch(DaRanch daRanch); - - /** - * 修改牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - public int updateDaRanch(DaRanch daRanch); - - /** - * 批量删除牧场管理 - * - * @param ids 需要删除的牧场管理主键集合 - * @return 结果 - */ - public int deleteDaRanchByIds(Long[] ids); - - /** - * 删除牧场管理信息 - * - * @param id 牧场管理主键 - * @return 结果 - */ - public int deleteDaRanchById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java deleted file mode 100644 index 26bac8f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.zhyc.module.base.service; - -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.domain.DaSheepfold; - -import java.util.List; - -/** - * 羊舍管理Service接口 - * - * @author wyt - * @date 2025-07-11 - */ -public interface IDaSheepfoldService -{ - /** - * 查询羊舍管理 - * - * @param id 羊舍管理主键 - * @return 羊舍管理 - */ - public DaSheepfold selectDaSheepfoldById(Long id); - - /** - * 查询羊舍管理列表 - * - * @param daSheepfold 羊舍管理 - * @return 羊舍管理集合 - */ - public List selectDaSheepfoldList(DaSheepfold daSheepfold); - - /** - * 新增羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - public int insertDaSheepfold(DaSheepfold daSheepfold); - - /** - * 修改羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - public int updateDaSheepfold(DaSheepfold daSheepfold); - - /** - * 批量删除羊舍管理 - * - * @param ids 需要删除的羊舍管理主键集合 - * @return 结果 - */ - public int deleteDaSheepfoldByIds(Long[] ids); - - /** - * 删除羊舍管理信息 - * - * @param id 羊舍管理主键 - * @return 结果 - */ - public int deleteDaSheepfoldById(Long id); - - /** - * 检查羊舍编号是否已存在 - * - * @param ranchId 羊舍所属牧场ID - * @param sheepfoldTypeId 羊舍类型ID - * @param sheepfoldNo 羊舍编号 - * @return 是否已存在 - */ - boolean checkSheepfoldNoExist(Long ranchId, Long sheepfoldTypeId, String sheepfoldNo); - -// 根据羊舍id获取该羊舍的羊 - List sheepListById(String id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java deleted file mode 100644 index 8280603..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zhyc.module.base.service; - -import com.zhyc.module.base.domain.SheepFile; - -import java.util.List; -import java.util.Map; - -/** - * 羊只档案Service接口 - * - * @author wyt - * @date 2025-07-13 - */ -public interface ISheepFileService -{ - /** - * 查询羊只档案 - * - * @param id 羊只档案主键 - * @return 羊只档案 - */ - public SheepFile selectSheepFileById(Long id); - - /** - * 查询羊只档案列表 - * - * @param sheepFile 羊只档案 - * @return 羊只档案集合 - */ - public List selectSheepFileList(SheepFile sheepFile); - - - SheepFile selectBasSheepByManageTags(String trim); - - Long countInGroup(); - - List> countBySheepType(); - List> countByBreedStatus(); - List> countByVariety(); - List> countParityOfLactation(); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java deleted file mode 100644 index 74418da..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java +++ /dev/null @@ -1,189 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import java.util.*; -import java.util.stream.Collectors; - -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.module.base.domain.BasSheepGroupMapping; -import com.zhyc.module.base.mapper.BasSheepGroupMappingMapper; -import com.zhyc.module.base.service.IBasSheepGroupMappingService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 羊只分组关联Service业务层处理 - * - * @author wyt - * @date 2025-07-16 - */ -@Service -public class BasSheepGroupMappingServiceImpl implements IBasSheepGroupMappingService -{ - @Autowired - private BasSheepGroupMappingMapper basSheepGroupMappingMapper; - - /** - * 查询羊只分组关联 - * - * @param id 羊只分组关联主键 - * @return 羊只分组关联 - */ - @Override - public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id) - { - return basSheepGroupMappingMapper.selectBasSheepGroupMappingById(id); - } - - /** - * 查询羊只分组关联列表 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 羊只分组关联 - */ - @Override - public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping) - { - return basSheepGroupMappingMapper.selectBasSheepGroupMappingList(basSheepGroupMapping); - } - - - @Override - public List> selectBasSheepGroupMappingList( - Long sheepId, Long groupId, List bsManageTags) { - return basSheepGroupMappingMapper.selectBasSheepGroupMappingList(sheepId, groupId, bsManageTags); - } - - /** - * 新增羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ - @Override - public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) - { - return basSheepGroupMappingMapper.insertBasSheepGroupMapping(basSheepGroupMapping); - } - - /** - * 修改羊只分组关联 - * - * @param basSheepGroupMapping 羊只分组关联 - * @return 结果 - */ -// @Override -// public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) -// { -// return basSheepGroupMappingMapper.updateBasSheepGroupMapping(basSheepGroupMapping); -// } - @Override - public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) { - - Long SheepId = basSheepGroupMapping.getSheepId(); - Long GroupId = basSheepGroupMapping.getGroupId(); - existsInGroup(SheepId,GroupId); - - if (existsInGroup(basSheepGroupMapping.getSheepId(), basSheepGroupMapping.getGroupId())) { - throw new RuntimeException("该羊已在此分组,无需修改"); - } - return basSheepGroupMappingMapper.updateBasSheepGroupMapping(basSheepGroupMapping); - } - - /** - * 批量删除羊只分组关联 - * - * @param ids 需要删除的羊只分组关联主键 - * @return 结果 - */ - @Override - public int deleteBasSheepGroupMappingByIds(Long[] ids) - { - return basSheepGroupMappingMapper.deleteBasSheepGroupMappingByIds(ids); - } - - /** - * 删除羊只分组关联信息 - * - * @param id 羊只分组关联主键 - * @return 结果 - */ - @Override - public int deleteBasSheepGroupMappingById(Long id) - { - return basSheepGroupMappingMapper.deleteBasSheepGroupMappingById(id); - } - - - - @Override - public AjaxResult addByEarTags(List earTags, Long groupId) { - // 1. 参数判空 - if (earTags == null || earTags.isEmpty()) { - return AjaxResult.error("耳号列表不能为空"); - } - - // 2. 根据耳号查询羊只(manage_tags -> id) - List> sheepList = basSheepGroupMappingMapper.selectSheepIdsByEarTags(earTags); - Map tagToId = new HashMap<>(); - for (Map s : sheepList) { - tagToId.put((String) s.get("manage_tags"), ((Number) s.get("id")).longValue()); - } - - // 3. 不存在的耳号 - List missing = new ArrayList<>(); - for (String tag : earTags) { - if (!tagToId.containsKey(tag)) { - missing.add(tag); - } - } - if (!missing.isEmpty()) { - Map res = new HashMap<>(); - res.put("success", false); - res.put("missing", missing); - return AjaxResult.success(res); - } - - // 4. 查询该分组下已存在的羊只ID - List existingRows = basSheepGroupMappingMapper.selectListByGroupId(groupId); - System.out.println("🔍 existingRows 类型 = " + existingRows.getClass()); - - Set existingIds = existingRows.stream() - .map(BasSheepGroupMapping::getSheepId) - .collect(Collectors.toSet()); - - System.out.println("🔍 existingIds = " + existingIds); - - // 5. 过滤出未在该分组的羊只 - List toInsert = new ArrayList<>(); - for (Map.Entry e : tagToId.entrySet()) { - Long sheepId = e.getValue(); - if (!existingIds.contains(sheepId)) { - BasSheepGroupMapping m = new BasSheepGroupMapping(); - m.setSheepId(sheepId); - m.setGroupId(groupId); - toInsert.add(m); - } - } - - if (toInsert.isEmpty()) { - return AjaxResult.success("所选羊只已全部在该分组中"); - } - - // 6. 批量插入 - int rows = basSheepGroupMappingMapper.batchInsert(toInsert); - Map res = new HashMap<>(); - res.put("success", true); - res.put("inserted", rows); - return AjaxResult.success(res); - } - - private boolean existsInGroup(Long sheepId, Long groupId) { - BasSheepGroupMapping param = new BasSheepGroupMapping(); - List> list = basSheepGroupMappingMapper - .selectBasSheepGroupMappingList(sheepId, groupId, null); - return !list.isEmpty(); - } - - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java deleted file mode 100644 index 3d375b3..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import com.zhyc.common.utils.DateUtils; -import com.zhyc.module.base.domain.BasSheepGroup; -import com.zhyc.module.base.mapper.BasSheepGroupMapper; -import com.zhyc.module.base.service.IBasSheepGroupService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 分组管理Service业务层处理 - * - * @author wyt - * @date 2025-07-14 - */ -@Service -public class BasSheepGroupServiceImpl implements IBasSheepGroupService -{ - @Autowired - private BasSheepGroupMapper basSheepGroupMapper; - - /** - * 查询分组管理 - * - * @param groupId 分组管理主键 - * @return 分组管理 - */ - @Override - public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId) - { - return basSheepGroupMapper.selectBasSheepGroupByGroupId(groupId); - } - - /** - * 查询分组管理列表 - * - * @param basSheepGroup 分组管理 - * @return 分组管理 - */ -// @Override -// public List selectBasSheepGroupList(BasSheepGroup basSheepGroup) -// { -// return basSheepGroupMapper.selectBasSheepGroupList(basSheepGroup); -// } - @Override - public List selectBasSheepGroupList(BasSheepGroup basSheepGroup) { - List groups = basSheepGroupMapper.selectBasSheepGroupList(basSheepGroup); - - // 处理祖先名称显示格式 - groups.forEach(group -> { - if (group.getAncestorNames() != null) { - String formattedNames = group.getAncestorNames().replace(",", " / "); - group.setAncestorNames(formattedNames); - } - }); - - return groups; - } - - /** - * 新增分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - @Override - public int insertBasSheepGroup(BasSheepGroup basSheepGroup) - { - basSheepGroup.setCreateTime(DateUtils.getNowDate()); - return basSheepGroupMapper.insertBasSheepGroup(basSheepGroup); - } - - /** - * 修改分组管理 - * - * @param basSheepGroup 分组管理 - * @return 结果 - */ - @Override - public int updateBasSheepGroup(BasSheepGroup basSheepGroup) - { - basSheepGroup.setUpdateTime(DateUtils.getNowDate()); - return basSheepGroupMapper.updateBasSheepGroup(basSheepGroup); - } - - /** - * 批量删除分组管理 - * - * @param groupIds 需要删除的分组管理主键 - * @return 结果 - */ - @Override - public int deleteBasSheepGroupByGroupIds(Long[] groupIds) - { - return basSheepGroupMapper.deleteBasSheepGroupByGroupIds(groupIds); - } - - /** - * 删除分组管理信息 - * - * @param groupId 分组管理主键 - * @return 结果 - */ - @Override - public int deleteBasSheepGroupByGroupId(Long groupId) - { - return basSheepGroupMapper.deleteBasSheepGroupByGroupId(groupId); - } - - @Override - public List selectLeafNodes() { - List leafNodes = basSheepGroupMapper.selectLeafNodes(); - // 如果 ancestorNames 需要格式化,可以复用已有的逻辑 - leafNodes.forEach(group -> { - if (group.getAncestorNames() != null) { - group.setAncestorNames(group.getAncestorNames().replace(",", " / ")); - } - }); - return leafNodes; - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java deleted file mode 100644 index 7135f73..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.mapper.BasSheepMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.base.service.IBasSheepService; - -/** - * 羊只基本信息Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class BasSheepServiceImpl implements IBasSheepService -{ - @Autowired - private BasSheepMapper basSheepMapper; - - /** - * 查询羊只基本信息 - * - * @param id 羊只基本信息主键 - * @return 羊只基本信息 - */ - @Override - public BasSheep selectBasSheepById(Long id) - { - return basSheepMapper.selectBasSheepById(id); - } - - /** - * 查询羊只基本信息列表 - * - * @param basSheep 羊只基本信息 - * @return 羊只基本信息 - */ - @Override - public List selectBasSheepList(BasSheep basSheep) - { - return basSheepMapper.selectBasSheepList(basSheep); - } - - /** - * 新增羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - @Override - public int insertBasSheep(BasSheep basSheep) - { - basSheep.setCreateTime(DateUtils.getNowDate()); - return basSheepMapper.insertBasSheep(basSheep); - } - - /** - * 修改羊只基本信息 - * - * @param basSheep 羊只基本信息 - * @return 结果 - */ - @Override - public int updateBasSheep(BasSheep basSheep) - { - basSheep.setUpdateTime(DateUtils.getNowDate()); - return basSheepMapper.updateBasSheep(basSheep); - } - - /** - * 批量删除羊只基本信息 - * - * @param ids 需要删除的羊只基本信息主键 - * @return 结果 - */ - @Override - public int deleteBasSheepByIds(Long[] ids) - { - return basSheepMapper.deleteBasSheepByIds(ids); - } - - /** - * 删除羊只基本信息信息 - * - * @param id 羊只基本信息主键 - * @return 结果 - */ - @Override - public int deleteBasSheepById(Long id) - { - return basSheepMapper.deleteBasSheepById(id); - } - - - @Override - public BasSheep selectBasSheepByManageTags(String manageTags){ - return basSheepMapper.selectBasSheepByManageTags(manageTags); - } - - @Override - public List getSheepByRanchId(Long ranchId) { - return basSheepMapper.getSheepByRanchId(ranchId); - } - - @Override - public List selectBasSheepListByIds(List ids) { - return basSheepMapper.selectBasSheepListByIds(ids); - } - - //校验新管理/电子耳号 - @Override - public boolean existsByTag(String tag, Integer earType) { - if (earType == 0) { - return basSheepMapper.existsByElectronicTag(tag) > 0; - } else if (earType == 1) { - return basSheepMapper.existsByManageTag(tag) > 0; - } - return false; - } - - -} 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 deleted file mode 100644 index 4c1a362..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java +++ /dev/null @@ -1,89 +0,0 @@ -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; -import com.zhyc.module.base.domain.BasSheepType; -import com.zhyc.module.base.service.IBasSheepTypeService; - -/** - * 羊只类型Service业务层处理 - * - * @author ruoyi - * @date 2025-07-22 - */ -@Service -public class BasSheepTypeServiceImpl implements IBasSheepTypeService { - @Autowired - private BasSheepTypeMapper basSheepTypeMapper; - - /** - * 查询羊只类型 - * - * @param id 羊只类型主键 - * @return 羊只类型 - */ - @Override - public BasSheepType selectBasSheepTypeById(Integer id) { - return basSheepTypeMapper.selectBasSheepTypeById(id); - } - - /** - * 查询羊只类型列表 - * - * @param basSheepType 羊只类型 - * @return 羊只类型 - */ - @Override - public List selectBasSheepTypeList(BasSheepType basSheepType) { - return basSheepTypeMapper.selectBasSheepTypeList(basSheepType); - } - - /** - * 新增羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - @Override - public int insertBasSheepType(BasSheepType basSheepType) { - return basSheepTypeMapper.insertBasSheepType(basSheepType); - } - - /** - * 修改羊只类型 - * - * @param basSheepType 羊只类型 - * @return 结果 - */ - @Override - public int updateBasSheepType(BasSheepType basSheepType) { - return basSheepTypeMapper.updateBasSheepType(basSheepType); - } - - /** - * 批量删除羊只类型 - * - * @param ids 需要删除的羊只类型主键 - * @return 结果 - */ - @Override - public int deleteBasSheepTypeByIds(Integer[] ids) { - return basSheepTypeMapper.deleteBasSheepTypeByIds(ids); - } - - /** - * 删除羊只类型信息 - * - * @param id 羊只类型主键 - * @return 结果 - */ - @Override - public int deleteBasSheepTypeById(Integer id) { - return basSheepTypeMapper.deleteBasSheepTypeById(id); - } - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java deleted file mode 100644 index 7a1285f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import java.util.List; - -import com.zhyc.module.base.domain.BasSheepVariety; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.base.mapper.BasSheepVarietyMapper; -import com.zhyc.module.base.service.IBasSheepVarietyService; - -/** - * 羊只品种Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class BasSheepVarietyServiceImpl implements IBasSheepVarietyService -{ - @Autowired - private BasSheepVarietyMapper basSheepVarietyMapper; - - /** - * 查询羊只品种 - * - * @param id 羊只品种主键 - * @return 羊只品种 - */ - @Override - public BasSheepVariety selectBasSheepVarietyById(Long id) - { - return basSheepVarietyMapper.selectBasSheepVarietyById(id); - } - - /** - * 查询羊只品种列表 - * - * @param basSheepVariety 羊只品种 - * @return 羊只品种 - */ - @Override - public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety) - { - return basSheepVarietyMapper.selectBasSheepVarietyList(basSheepVariety); - } - - /** - * 新增羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - @Override - public int insertBasSheepVariety(BasSheepVariety basSheepVariety) - { - return basSheepVarietyMapper.insertBasSheepVariety(basSheepVariety); - } - - /** - * 修改羊只品种 - * - * @param basSheepVariety 羊只品种 - * @return 结果 - */ - @Override - public int updateBasSheepVariety(BasSheepVariety basSheepVariety) - { - return basSheepVarietyMapper.updateBasSheepVariety(basSheepVariety); - } - - /** - * 批量删除羊只品种 - * - * @param ids 需要删除的羊只品种主键 - * @return 结果 - */ - @Override - public int deleteBasSheepVarietyByIds(Long[] ids) - { - return basSheepVarietyMapper.deleteBasSheepVarietyByIds(ids); - } - - /** - * 删除羊只品种信息 - * - * @param id 羊只品种主键 - * @return 结果 - */ - @Override - public int deleteBasSheepVarietyById(Long id) - { - return basSheepVarietyMapper.deleteBasSheepVarietyById(id); - } - - @Override - public BasSheepVariety selectByVarietyName(String varietyName) { - return basSheepVarietyMapper.selectByVarietyName(varietyName); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java deleted file mode 100644 index 7e7d8fe..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.zhyc.module.base.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.base.mapper.BreedRamFileMapper; -import com.zhyc.module.base.domain.BreedRamFile; -import com.zhyc.module.base.service.IBreedRamFileService; - -/** - * 种公羊档案Service业务层处理 - * - * @author zhyc - * @date 2025-07-29 - */ -@Service -public class BreedRamFileServiceImpl implements IBreedRamFileService -{ - @Autowired - private BreedRamFileMapper breedRamFileMapper; - - /** - * 查询种公羊档案 - * - * @param id 种公羊档案主键 - * @return 种公羊档案 - */ - @Override - public BreedRamFile selectBreedRamFileById(Long id) - { - return breedRamFileMapper.selectBreedRamFileById(id); - } - - /** - * 查询种公羊档案列表 - * - * @param breedRamFile 种公羊档案 - * @return 种公羊档案 - */ - @Override - public List selectBreedRamFileList(BreedRamFile breedRamFile) - { - return breedRamFileMapper.selectBreedRamFileList(breedRamFile); - } - - /** - * 新增种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - @Override - public int insertBreedRamFile(BreedRamFile breedRamFile) - { - breedRamFile.setCreateTime(DateUtils.getNowDate()); - return breedRamFileMapper.insertBreedRamFile(breedRamFile); - } - - /** - * 修改种公羊档案 - * - * @param breedRamFile 种公羊档案 - * @return 结果 - */ - @Override - public int updateBreedRamFile(BreedRamFile breedRamFile) - { - breedRamFile.setUpdateTime(DateUtils.getNowDate()); - return breedRamFileMapper.updateBreedRamFile(breedRamFile); - } - - /** - * 批量删除种公羊档案 - * - * @param ids 需要删除的种公羊档案主键 - * @return 结果 - */ - @Override - public int deleteBreedRamFileByIds(Long[] ids) - { - return breedRamFileMapper.deleteBreedRamFileByIds(ids); - } - - /** - * 删除种公羊档案信息 - * - * @param id 种公羊档案主键 - * @return 结果 - */ - @Override - public int deleteBreedRamFileById(Long id) - { - return breedRamFileMapper.deleteBreedRamFileById(id); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java deleted file mode 100644 index fbdf04c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.base.mapper.DaRanchMapper; -import com.zhyc.module.base.domain.DaRanch; -import com.zhyc.module.base.service.IDaRanchService; - -/** - * 牧场管理Service业务层处理 - * - * @author ruoyi - * @date 2025-07-22 - */ -@Service -public class DaRanchServiceImpl implements IDaRanchService -{ - @Autowired - private DaRanchMapper daRanchMapper; - - /** - * 查询牧场管理 - * - * @param id 牧场管理主键 - * @return 牧场管理 - */ - @Override - public DaRanch selectDaRanchById(Long id) - { - return daRanchMapper.selectDaRanchById(id); - } - - /** - * 查询牧场管理列表 - * - * @param daRanch 牧场管理 - * @return 牧场管理 - */ - @Override - public List selectDaRanchList(DaRanch daRanch) - { - return daRanchMapper.selectDaRanchList(daRanch); - } - - /** - * 新增牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - @Override - public int insertDaRanch(DaRanch daRanch) - { - return daRanchMapper.insertDaRanch(daRanch); - } - - /** - * 修改牧场管理 - * - * @param daRanch 牧场管理 - * @return 结果 - */ - @Override - public int updateDaRanch(DaRanch daRanch) - { - return daRanchMapper.updateDaRanch(daRanch); - } - - /** - * 批量删除牧场管理 - * - * @param ids 需要删除的牧场管理主键 - * @return 结果 - */ - @Override - public int deleteDaRanchByIds(Long[] ids) - { - return daRanchMapper.deleteDaRanchByIds(ids); - } - - /** - * 删除牧场管理信息 - * - * @param id 牧场管理主键 - * @return 结果 - */ - @Override - public int deleteDaRanchById(Long id) - { - return daRanchMapper.deleteDaRanchById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java deleted file mode 100644 index 4753929..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.zhyc.module.base.service.impl; - -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.domain.DaSheepfold; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.mapper.DaSheepfoldMapper; -import com.zhyc.module.base.service.IDaSheepfoldService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 羊舍管理Service业务层处理 - * - * @author wyt - * @date 2025-07-11 - */ -@Service -public class DaSheepfoldServiceImpl implements IDaSheepfoldService -{ - @Autowired - private DaSheepfoldMapper daSheepfoldMapper; - @Autowired - private BasSheepMapper basSheepMapper; - - /** - * 查询羊舍管理 - * - * @param id 羊舍管理主键 - * @return 羊舍管理 - */ - @Override - public DaSheepfold selectDaSheepfoldById(Long id) - { - return daSheepfoldMapper.selectDaSheepfoldById(id); - } - - /** - * 查询羊舍管理列表 - * - * @param daSheepfold 羊舍管理 - * @return 羊舍管理 - */ - @Override - public List selectDaSheepfoldList(DaSheepfold daSheepfold) - { - return daSheepfoldMapper.selectDaSheepfoldList(daSheepfold); - } - - /** - * 新增羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - @Override - public int insertDaSheepfold(DaSheepfold daSheepfold) - { - return daSheepfoldMapper.insertDaSheepfold(daSheepfold); - } - - /** - * 修改羊舍管理 - * - * @param daSheepfold 羊舍管理 - * @return 结果 - */ - @Override - public int updateDaSheepfold(DaSheepfold daSheepfold) - { - return daSheepfoldMapper.updateDaSheepfold(daSheepfold); - } - - /** - * 批量删除羊舍管理 - * - * @param ids 需要删除的羊舍管理主键 - * @return 结果 - */ - @Override - public int deleteDaSheepfoldByIds(Long[] ids) - { - return daSheepfoldMapper.deleteDaSheepfoldByIds(ids); - } - - /** - * 删除羊舍管理信息 - * - * @param id 羊舍管理主键 - * @return 结果 - */ - @Override - public int deleteDaSheepfoldById(Long id) - { - return daSheepfoldMapper.deleteDaSheepfoldById(id); - } - - - @Override - public boolean checkSheepfoldNoExist(Long ranchId, Long sheepfoldTypeId, String sheepfoldNo) { - DaSheepfold query = new DaSheepfold(); - query.setRanchId(ranchId); - query.setSheepfoldTypeId(sheepfoldTypeId); - query.setSheepfoldNo(sheepfoldNo); - return daSheepfoldMapper.selectCount(query) > 0; - } - - @Override - public List sheepListById(String id) { - List basSheep = basSheepMapper.selectBasSheepBySheepfold(id); - return basSheep; - } -} 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 deleted file mode 100644 index 351a4ad..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java +++ /dev/null @@ -1,74 +0,0 @@ -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List;import java.util.Map; - -/** - * 羊只档案Service业务层处理 - * - * @author wyt - * @date 2025-07-13 - */ -@Service -public class SheepFileServiceImpl implements ISheepFileService { - @Autowired - private SheepFileMapper sheepFileMapper; - - /** - * 查询羊只档案 - * - * @param id 羊只档案主键 - * @return 羊只档案 - */ - @Override - public SheepFile selectSheepFileById(Long id) { - return sheepFileMapper.selectSheepFileById(id); - } - - /** - * 查询羊只档案列表 - * - * @param sheepFile 羊只档案 - * @return 羊只档案 - */ - @Override - public List selectSheepFileList(SheepFile sheepFile) { - return sheepFileMapper.selectSheepFileList(sheepFile); - } - - @Override - public SheepFile selectBasSheepByManageTags(String tags) { - return sheepFileMapper.selectSheepByManageTags(tags); - } - - - @Override - public List> countBySheepType() { - return sheepFileMapper.countBySheepType(); - } - - @Override - public List> countByBreedStatus() { - return sheepFileMapper.countByBreedStatus(); - } - - @Override - public List> countByVariety() { - return sheepFileMapper.countByVariety(); - } - - @Override - public List> countParityOfLactation() { - return sheepFileMapper.countParityOfLactation(); - } - @Override - public Long countInGroup() { return sheepFileMapper.countInGroup(); } - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java deleted file mode 100644 index 6fb5fba..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.Deworm; -import com.zhyc.module.biosafety.service.IDewormService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 驱虫Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/biosafety/deworm") -public class DewormController extends BaseController -{ - @Autowired - private IDewormService dewormService; - - /** - * 查询驱虫列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:list')") - @GetMapping("/list") - public TableDataInfo list(Deworm deworm) - { - startPage(); - List list = dewormService.selectDewormList(deworm); - return getDataTable(list); - } - - /** - * 导出驱虫列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:export')") - @Log(title = "驱虫", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Deworm deworm) - { - List list = dewormService.selectDewormList(deworm); - ExcelUtil util = new ExcelUtil(Deworm.class); - util.exportExcel(response, list, "驱虫数据"); - } - - /** - * 获取驱虫详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(dewormService.selectDewormById(id)); - } - - /** - * 新增驱虫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:add')") - @Log(title = "驱虫", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Deworm deworm) - { - System.out.println(deworm); - return toAjax(dewormService.insertDeworm(deworm)); - } - - /** - * 修改驱虫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:edit')") - @Log(title = "驱虫", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Deworm deworm) - { - return toAjax(dewormService.updateDeworm(deworm)); - } - - /** - * 删除驱虫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:deworm:remove')") - @Log(title = "驱虫", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(dewormService.deleteDewormByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java deleted file mode 100644 index 39149cc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.biosafety.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.biosafety.domain.Diagnosis; -import com.zhyc.module.biosafety.service.IDiagnosisService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 诊疗结果Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/diagnosis/diagnosis") -public class DiagnosisController extends BaseController -{ - @Autowired - private IDiagnosisService diagnosisService; - - /** - * 查询诊疗结果列表 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:list')") - @GetMapping("/list") - public TableDataInfo list(Diagnosis diagnosis) - { - startPage(); - List list = diagnosisService.selectDiagnosisList(diagnosis); - return getDataTable(list); - } - - /** - * 导出诊疗结果列表 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:export')") - @Log(title = "诊疗结果", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Diagnosis diagnosis) - { - List list = diagnosisService.selectDiagnosisList(diagnosis); - ExcelUtil util = new ExcelUtil(Diagnosis.class); - util.exportExcel(response, list, "诊疗结果数据"); - } - - /** - * 获取诊疗结果详细信息 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(diagnosisService.selectDiagnosisById(id)); - } - - /** - * 新增诊疗结果 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:add')") - @Log(title = "诊疗结果", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Diagnosis diagnosis) - { - return toAjax(diagnosisService.insertDiagnosis(diagnosis)); - } - - /** - * 修改诊疗结果 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:edit')") - @Log(title = "诊疗结果", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Diagnosis diagnosis) - { - return toAjax(diagnosisService.updateDiagnosis(diagnosis)); - } - - /** - * 删除诊疗结果 - */ - @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:remove')") - @Log(title = "诊疗结果", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(diagnosisService.deleteDiagnosisByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java deleted file mode 100644 index 7e2f934..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.service.IDisinfectService; -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.biosafety.domain.Disinfect; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 消毒记录Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/biosafety/disinfect") -public class DisinfectController extends BaseController -{ - @Autowired - private IDisinfectService disinfectService; - - /** - * 查询消毒记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:list')") - @GetMapping("/list") - public TableDataInfo list(Disinfect disinfect) - { - startPage(); - List list = disinfectService.selectDisinfectList(disinfect); - return getDataTable(list); - } - - /** - * 导出消毒记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:export')") - @Log(title = "消毒记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Disinfect disinfect) - { - List list = disinfectService.selectDisinfectList(disinfect); - ExcelUtil util = new ExcelUtil(Disinfect.class); - util.exportExcel(response, list, "消毒记录数据"); - } - - /** - * 获取消毒记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(disinfectService.selectDisinfectById(id)); - } - - /** - * 新增消毒记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:add')") - @Log(title = "消毒记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Disinfect disinfect) - { - return toAjax(disinfectService.insertDisinfect(disinfect)); - } - - /** - * 修改消毒记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:edit')") - @Log(title = "消毒记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Disinfect disinfect) - { - return toAjax(disinfectService.updateDisinfect(disinfect)); - } - - /** - * 删除消毒记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:disinfect:remove')") - @Log(title = "消毒记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(disinfectService.deleteDisinfectByIds(ids)); - } -} 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 deleted file mode 100644 index 5795ca8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.service.IHealthService; -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.biosafety.domain.Health; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 保健Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/biosafety/health") -public class HealthController extends BaseController -{ - @Autowired - private IHealthService healthService; - - /** - * 查询保健列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:list')") - @GetMapping("/list") - public TableDataInfo list(Health health) - { - startPage(); - List list = healthService.selectHealthList(health); - return getDataTable(list); - } - - /** - * 导出保健列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:export')") - @Log(title = "保健", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Health health) - { - List list = healthService.selectHealthList(health); - ExcelUtil util = new ExcelUtil(Health.class); - util.exportExcel(response, list, "保健数据"); - } - - /** - * 获取保健详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(healthService.selectHealthById(id)); - } - - /** - * 新增保健 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:add')") - @Log(title = "保健", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Health health) - { - return toAjax(healthService.insertHealth(health)); - } - - /** - * 修改保健 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:edit')") - @Log(title = "保健", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Health health) - { - return toAjax(healthService.updateHealth(health)); - } - - /** - * 删除保健 - */ - @PreAuthorize("@ss.hasPermi('biosafety:health:remove')") - @Log(title = "保健", businessType = BusinessType.DELETE) - @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/controller/ImmunityController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java deleted file mode 100644 index f49376c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.service.IImmunityService; -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.biosafety.domain.Immunity; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 免疫Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/biosafety/immunity") -public class ImmunityController extends BaseController -{ - @Autowired - private IImmunityService immunityService; - - /** - * 查询免疫列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:list')") - @GetMapping("/list") - public TableDataInfo list(Immunity immunity) - { - startPage(); - List list = immunityService.selectImmunityList(immunity); - return getDataTable(list); - } - - /** - * 导出免疫列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:export')") - @Log(title = "免疫", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Immunity immunity) - { - List list = immunityService.selectImmunityList(immunity); - ExcelUtil util = new ExcelUtil(Immunity.class); - util.exportExcel(response, list, "免疫数据"); - } - - /** - * 获取免疫详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(immunityService.selectImmunityById(id)); - } - - /** - * 新增免疫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:add')") - @Log(title = "免疫", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Immunity immunity) - { - return toAjax(immunityService.insertImmunity(immunity)); - } - - /** - * 修改免疫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:edit')") - @Log(title = "免疫", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Immunity immunity) - { - return toAjax(immunityService.updateImmunity(immunity)); - } - - /** - * 删除免疫 - */ - @PreAuthorize("@ss.hasPermi('biosafety:immunity:remove')") - @Log(title = "免疫", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(immunityService.deleteImmunityByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java deleted file mode 100644 index 3c1694a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.QuarantineItems; -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.biosafety.service.IQuarantineItemsService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 检疫项目Controller - * - * @author ruoyi - * @date 2025-07-14 - */ -@RestController -@RequestMapping("/biosafety/items") -public class QuarantineItemsController extends BaseController -{ - @Autowired - private IQuarantineItemsService quarantineItemsService; - - /** - * 查询检疫项目列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:list')") - @GetMapping("/list") - public TableDataInfo list(QuarantineItems quarantineItems) - { - startPage(); - List list = quarantineItemsService.selectQuarantineItemsList(quarantineItems); - return getDataTable(list); - } - - /** - * 导出检疫项目列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:export')") - @Log(title = "检疫项目", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, QuarantineItems quarantineItems) - { - List list = quarantineItemsService.selectQuarantineItemsList(quarantineItems); - ExcelUtil util = new ExcelUtil(QuarantineItems.class); - util.exportExcel(response, list, "检疫项目数据"); - } - - /** - * 获取检疫项目详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(quarantineItemsService.selectQuarantineItemsById(id)); - } - - /** - * 新增检疫项目 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:add')") - @Log(title = "检疫项目", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody QuarantineItems quarantineItems) - { - return toAjax(quarantineItemsService.insertQuarantineItems(quarantineItems)); - } - - /** - * 修改检疫项目 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:edit')") - @Log(title = "检疫项目", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody QuarantineItems quarantineItems) - { - return toAjax(quarantineItemsService.updateQuarantineItems(quarantineItems)); - } - - /** - * 删除检疫项目 - */ - @PreAuthorize("@ss.hasPermi('biosafety:items:remove')") - @Log(title = "检疫项目", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(quarantineItemsService.deleteQuarantineItemsByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java deleted file mode 100644 index 1c06745..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.QuarantineReport; -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.biosafety.service.IQuarantineReportService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 检疫记录Controller - * - * @author ruoyi - * @date 2025-07-14 - */ -@RestController -@RequestMapping("/biosafety/quarantine") -public class QuarantineReportController extends BaseController -{ - @Autowired - private IQuarantineReportService quarantineReportService; - - /** - * 查询检疫记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:quarantine:list')") - @GetMapping("/list") - public TableDataInfo list(QuarantineReport quarantineReport) - { - startPage(); - List list = quarantineReportService.selectQuarantineReportList(quarantineReport); - return getDataTable(list); - } - - /** - * 导出检疫记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:quarantine:export')") - @Log(title = "检疫记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, QuarantineReport quarantineReport) - { - List list = quarantineReportService.selectQuarantineReportList(quarantineReport); - ExcelUtil util = new ExcelUtil(QuarantineReport.class); - util.exportExcel(response, list, "检疫记录数据"); - } - - /** - * 获取检疫记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('bisosafety:quarantine:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(quarantineReportService.selectQuarantineReportById(id)); - } - - /** - * 新增检疫记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:quarantine:add')") - @Log(title = "检疫记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody QuarantineReport quarantineReport) - { - return toAjax(quarantineReportService.insertQuarantineReport(quarantineReport)); - } - - /** - * 修改检疫记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:quarantine:edit')") - @Log(title = "检疫记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody QuarantineReport quarantineReport) - { - return toAjax(quarantineReportService.updateQuarantineReport(quarantineReport)); - } - - /** - * 删除检疫记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:quarantine:remove')") - @Log(title = "检疫记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(quarantineReportService.deleteQuarantineReportByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java deleted file mode 100644 index 439d3fb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.QuarantineSample; -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.biosafety.service.IQuarantineSampleService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 样品类型Controller - * - * @author ruoyi - * @date 2025-07-14 - */ -@RestController -@RequestMapping("/biosafety/sample") -public class QuarantineSampleController extends BaseController -{ - @Autowired - private IQuarantineSampleService quarantineSampleService; - - /** - * 查询样品类型列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:list')") - @GetMapping("/list") - public TableDataInfo list(QuarantineSample quarantineSample) - { - startPage(); - List list = quarantineSampleService.selectQuarantineSampleList(quarantineSample); - return getDataTable(list); - } - - /** - * 导出样品类型列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:export')") - @Log(title = "样品类型", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, QuarantineSample quarantineSample) - { - List list = quarantineSampleService.selectQuarantineSampleList(quarantineSample); - ExcelUtil util = new ExcelUtil(QuarantineSample.class); - util.exportExcel(response, list, "样品类型数据"); - } - - /** - * 获取样品类型详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(quarantineSampleService.selectQuarantineSampleById(id)); - } - - /** - * 新增样品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:add')") - @Log(title = "样品类型", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody QuarantineSample quarantineSample) - { - return toAjax(quarantineSampleService.insertQuarantineSample(quarantineSample)); - } - - /** - * 修改样品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:edit')") - @Log(title = "样品类型", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody QuarantineSample quarantineSample) - { - return toAjax(quarantineSampleService.updateQuarantineSample(quarantineSample)); - } - - /** - * 删除样品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:sample:remove')") - @Log(title = "样品类型", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(quarantineSampleService.deleteQuarantineSampleByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java deleted file mode 100644 index d049ae6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwDisease; -import com.zhyc.module.biosafety.service.ISwDiseaseService; -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.common.utils.poi.ExcelUtil; - -/** - * 疾病Controller - * - * @author ruoyi - * @date 2025-07-09 - */ -@RestController -@RequestMapping("/biosafety/disease") -public class SwDiseaseController extends BaseController -{ - @Autowired - private ISwDiseaseService swDiseaseService; - - /** - * 查询疾病列表 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:list')") - @GetMapping("/list") - public AjaxResult list(SwDisease swDisease) - { - List list = swDiseaseService.selectSwDiseaseList(swDisease); - return success(list); - } - - /** - * 导出疾病列表 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:export')") - @Log(title = "疾病", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwDisease swDisease) - { - List list = swDiseaseService.selectSwDiseaseList(swDisease); - ExcelUtil util = new ExcelUtil(SwDisease.class); - util.exportExcel(response, list, "疾病数据"); - } - - /** - * 获取疾病详细信息 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swDiseaseService.selectSwDiseaseById(id)); - } - - /** - * 新增疾病 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:add')") - @Log(title = "疾病", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwDisease swDisease) - { - return toAjax(swDiseaseService.insertSwDisease(swDisease)); - } - - /** - * 修改疾病 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:edit')") - @Log(title = "疾病", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwDisease swDisease) - { - return toAjax(swDiseaseService.updateSwDisease(swDisease)); - } - - /** - * 删除疾病 - */ - @PreAuthorize("@ss.hasPermi('disease:disease:remove')") - @Log(title = "疾病", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swDiseaseService.deleteSwDiseaseByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java deleted file mode 100644 index 0a4f67b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwMedicType; -import com.zhyc.module.biosafety.service.ISwMedicTypeService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 药品类型Controller - * - * @author ruoyi - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/biosafety/type") -public class SwMedicTypeController extends BaseController -{ - @Autowired - private ISwMedicTypeService swMedicTypeService; - - /** - * 查询药品类型列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:list')") - @GetMapping("/list") - public TableDataInfo list(SwMedicType swMedicType) - { - startPage(); - List list = swMedicTypeService.selectSwMedicTypeList(swMedicType); - return getDataTable(list); - } - - /** - * 导出药品类型列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:export')") - @Log(title = "药品类型", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwMedicType swMedicType) - { - List list = swMedicTypeService.selectSwMedicTypeList(swMedicType); - ExcelUtil util = new ExcelUtil(SwMedicType.class); - util.exportExcel(response, list, "药品类型数据"); - } - - /** - * 获取药品类型详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swMedicTypeService.selectSwMedicTypeById(id)); - } - - /** - * 新增药品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:add')") - @Log(title = "药品类型", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwMedicType swMedicType) - { - return toAjax(swMedicTypeService.insertSwMedicType(swMedicType)); - } - - /** - * 修改药品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:edit')") - @Log(title = "药品类型", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwMedicType swMedicType) - { - return toAjax(swMedicTypeService.updateSwMedicType(swMedicType)); - } - - /** - * 删除药品类型 - */ - @PreAuthorize("@ss.hasPermi('biosafety:type:remove')") - @Log(title = "药品类型", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swMedicTypeService.deleteSwMedicTypeByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java deleted file mode 100644 index c6cbc0f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwMedicine; -import com.zhyc.module.biosafety.service.ISwMedicineService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 药品Controller - * - * @author ruoyi - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/system/medicine") -public class SwMedicineController extends BaseController -{ - @Autowired - private ISwMedicineService swMedicineService; - - /** - * 查询药品列表 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:list')") - @GetMapping("/list") - public TableDataInfo list(SwMedicine swMedicine) - { - startPage(); - List list = swMedicineService.selectSwMedicineList(swMedicine); - return getDataTable(list); - } - - /** - * 导出药品列表 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:export')") - @Log(title = "药品", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwMedicine swMedicine) - { - List list = swMedicineService.selectSwMedicineList(swMedicine); - ExcelUtil util = new ExcelUtil(SwMedicine.class); - util.exportExcel(response, list, "药品数据"); - } - - /** - * 获取药品详细信息 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swMedicineService.selectSwMedicineById(id)); - } - - /** - * 新增药品 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:add')") - @Log(title = "药品", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwMedicine swMedicine) - { - return toAjax(swMedicineService.insertSwMedicine(swMedicine)); - } - - /** - * 修改药品 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:edit')") - @Log(title = "药品", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwMedicine swMedicine) - { - return toAjax(swMedicineService.updateSwMedicine(swMedicine)); - } - - /** - * 删除药品 - */ - @PreAuthorize("@ss.hasPermi('system:medicine:remove')") - @Log(title = "药品", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swMedicineService.deleteSwMedicineByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java deleted file mode 100644 index c3661aa..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwMedicineUsage; -import com.zhyc.module.biosafety.service.ISwMedicineUsageService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 药品使用记录Controller - * - * @author ruoyi - * @date 2025-07-12 - */ -@RestController -@RequestMapping("/biosafety/usageInfo") -public class SwMedicineUsageController extends BaseController -{ - @Autowired - private ISwMedicineUsageService swMedicineUsageService; - - /** - * 查询药品使用记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:list')") - @GetMapping("/list") - public TableDataInfo list(SwMedicineUsage swMedicineUsage) - { - startPage(); - List list = swMedicineUsageService.selectSwMedicineUsageList(swMedicineUsage); - return getDataTable(list); - } - - /** - * 导出药品使用记录列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:export')") - @Log(title = "药品使用记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwMedicineUsage swMedicineUsage) - { - List list = swMedicineUsageService.selectSwMedicineUsageList(swMedicineUsage); - ExcelUtil util = new ExcelUtil(SwMedicineUsage.class); - util.exportExcel(response, list, "药品使用记录数据"); - } - - /** - * 获取药品使用记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) - { - return success(swMedicineUsageService.selectSwMedicineUsageById(id)); - } - - /** - * 新增药品使用记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:add')") - @Log(title = "药品使用记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwMedicineUsage swMedicineUsage) - { - return toAjax(swMedicineUsageService.insertSwMedicineUsage(swMedicineUsage)); - } - - /** - * 修改药品使用记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:edit')") - @Log(title = "药品使用记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwMedicineUsage swMedicineUsage) - { - return toAjax(swMedicineUsageService.updateSwMedicineUsage(swMedicineUsage)); - } - - /** - * 删除药品使用记录 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:remove')") - @Log(title = "药品使用记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swMedicineUsageService.deleteSwMedicineUsageByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java deleted file mode 100644 index 44eed9b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.service.ISwPrescriptionService; -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.biosafety.domain.SwPrescription; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 处方Controller - * - * @author ruoyi - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/biosafety/prescription") -public class SwPrescriptionController extends BaseController -{ - @Autowired - private ISwPrescriptionService swPrescriptionService; - - /** - * 查询处方列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:list')") - @GetMapping("/list") - public TableDataInfo list(SwPrescription swPrescription) - { - startPage(); - List list = swPrescriptionService.selectSwPrescriptionList(swPrescription); - return getDataTable(list); - } - - /** - * 导出处方列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:export')") - @Log(title = "处方", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwPrescription swPrescription) - { - List list = swPrescriptionService.selectSwPrescriptionList(swPrescription); - ExcelUtil util = new ExcelUtil(SwPrescription.class); - util.exportExcel(response, list, "处方数据"); - } - - /** - * 获取处方详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swPrescriptionService.selectSwPrescriptionById(id)); - } - - /** - * 新增处方 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:add')") - @Log(title = "处方", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwPrescription swPrescription) - { - return toAjax(swPrescriptionService.insertSwPrescription(swPrescription)); - } - - /** - * 修改处方 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:edit')") - @Log(title = "处方", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwPrescription swPrescription) - { - return toAjax(swPrescriptionService.updateSwPrescription(swPrescription)); - } - - /** - * 删除处方 - */ - @PreAuthorize("@ss.hasPermi('biosafety:prescription:remove')") - @Log(title = "处方", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swPrescriptionService.deleteSwPrescriptionByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java deleted file mode 100644 index db8dfe5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwUnit; -import com.zhyc.module.biosafety.service.ISwUnitService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 药品单位Controller - * - * @author ruoyi - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/biosafety/unit") -public class SwUnitController extends BaseController -{ - @Autowired - private ISwUnitService swUnitService; - - /** - * 查询药品单位列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:list')") - @GetMapping("/list") - public TableDataInfo list(SwUnit swUnit) - { - startPage(); - List list = swUnitService.selectSwUnitList(swUnit); - return getDataTable(list); - } - - /** - * 导出药品单位列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:export')") - @Log(title = "药品单位", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwUnit swUnit) - { - List list = swUnitService.selectSwUnitList(swUnit); - ExcelUtil util = new ExcelUtil(SwUnit.class); - util.exportExcel(response, list, "药品单位数据"); - } - - /** - * 获取药品单位详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swUnitService.selectSwUnitById(id)); - } - - /** - * 新增药品单位 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:add')") - @Log(title = "药品单位", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwUnit swUnit) - { - return toAjax(swUnitService.insertSwUnit(swUnit)); - } - - /** - * 修改药品单位 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:edit')") - @Log(title = "药品单位", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwUnit swUnit) - { - return toAjax(swUnitService.updateSwUnit(swUnit)); - } - - /** - * 删除药品单位 - */ - @PreAuthorize("@ss.hasPermi('biosafety:unit:remove')") - @Log(title = "药品单位", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swUnitService.deleteSwUnitByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java deleted file mode 100644 index ea0c207..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.SwUsage; -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.biosafety.service.ISwUsageService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 药品使用方法Controller - * - * @author ruoyi - * @date 2025-07-11 - */ -@RestController -@RequestMapping("/biosafety/usage") -public class SwUsageController extends BaseController -{ - @Autowired - private ISwUsageService swUsageService; - - /** - * 查询药品使用方法列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:list')") - @GetMapping("/list") - public TableDataInfo list(SwUsage swUsage) - { - startPage(); - List list = swUsageService.selectSwUsageList(swUsage); - return getDataTable(list); - } - - /** - * 导出药品使用方法列表 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:export')") - @Log(title = "药品使用方法", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SwUsage swUsage) - { - List list = swUsageService.selectSwUsageList(swUsage); - ExcelUtil util = new ExcelUtil(SwUsage.class); - util.exportExcel(response, list, "药品使用方法数据"); - } - - /** - * 获取药品使用方法详细信息 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(swUsageService.selectSwUsageById(id)); - } - - /** - * 新增药品使用方法 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:add')") - @Log(title = "药品使用方法", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SwUsage swUsage) - { - return toAjax(swUsageService.insertSwUsage(swUsage)); - } - - /** - * 修改药品使用方法 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:edit')") - @Log(title = "药品使用方法", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SwUsage swUsage) - { - return toAjax(swUsageService.updateSwUsage(swUsage)); - } - - /** - * 删除药品使用方法 - */ - @PreAuthorize("@ss.hasPermi('biosafety:usage:remove')") - @Log(title = "药品使用方法", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(swUsageService.deleteSwUsageByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java deleted file mode 100644 index 85d5591..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.biosafety.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.biosafety.domain.Treatment; -import com.zhyc.module.biosafety.service.ITreatmentService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 治疗记录Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/treatment/treatment") -public class TreatmentController extends BaseController -{ - @Autowired - private ITreatmentService treatmentService; - - /** - * 查询治疗记录列表 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:list')") - @GetMapping("/list") - public TableDataInfo list(Treatment treatment) - { - startPage(); - List list = treatmentService.selectTreatmentList(treatment); - return getDataTable(list); - } - - /** - * 导出治疗记录列表 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:export')") - @Log(title = "治疗记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, Treatment treatment) - { - List list = treatmentService.selectTreatmentList(treatment); - ExcelUtil util = new ExcelUtil(Treatment.class); - util.exportExcel(response, list, "治疗记录数据"); - } - - /** - * 获取治疗记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(treatmentService.selectTreatmentById(id)); - } - - /** - * 新增治疗记录 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:add')") - @Log(title = "治疗记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody Treatment treatment) - { - return toAjax(treatmentService.insertTreatment(treatment)); - } - - /** - * 修改治疗记录 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:edit')") - @Log(title = "治疗记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody Treatment treatment) - { - return toAjax(treatmentService.updateTreatment(treatment)); - } - - /** - * 删除治疗记录 - */ - @PreAuthorize("@ss.hasPermi('treatment:treatment:remove')") - @Log(title = "治疗记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(treatmentService.deleteTreatmentByIds(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 deleted file mode 100644 index c3b60c5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.util.Date; -import java.util.List; - -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; - -/** - * 驱虫对象 sw_deworm - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Deworm extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - private Long sheepId; - - private Integer[] sheepIds; - - /** 羊只id */ - @Excel(name = "羊只耳号") - private String sheepNo; - @Excel(name = "品种") - private String variety; - @Excel(name = "羊只类别") - private String sheepType; - @Excel(name = "羊只性别") - private String gender; - @Excel(name = "月龄") - private Long monthAge; - @Excel(name = "繁殖状态") - private String breed; - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - - - /** 药品使用记录 */ - @Excel(name = "药品使用记录") - private Integer usageId; - - - // 药品使用 - private List usageDetails; - - /** 驱虫日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "驱虫日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 技术员 */ - @Excel(name = "技术员") - private String technical; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - -} 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 deleted file mode 100644 index 05fe6ad..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -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; - -/** - * 诊疗结果对象 sw_diagnosis - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Diagnosis extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 治疗记录id */ - @Excel(name = "治疗记录") - private Long treatId; - - /** 羊只id */ - @Excel(name = "羊只耳号") - private String sheepNo; - - private Long sheepId; - - /** 时间日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "时间日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 羊只类别 */ - @Excel(name = "羊只类别") - private String sheepType; - - /** 性别 */ - @Excel(name = "性别") - private String gender; - - /** 性别 */ - @Excel(name = "月龄") - private Long monthAge; - - - /** 胎次 */ - @Excel(name = "胎次") - private String parity; - - /** 疾病类型 */ - @Excel(name = "疾病类型") - private String diseasePName; - - private Long diseasePid; - - /** 子疾病 */ - @Excel(name = "子疾病") - private String diseaseName; - - private Long diseaseId; - - /** 诊疗结果 */ - @Excel(name = "诊疗结果") - private String result; - - /** 开始时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date begindate; - - /** 结束时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date enddate; - - /** 治疗天数 */ - @Excel(name = "治疗天数") - private Long treatDay; - - /** 羊舍id */ - @Excel(name = "羊舍") - private String sheepfold; - - private Long sheepfoldId; - -} 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 deleted file mode 100644 index 773ec33..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.util.Date; -import java.util.List; - -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; - -/** - * 消毒记录对象 sw_disinfect - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Disinfect extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 羊舍id */ - @Excel(name = "羊舍") - private String sheepfoldName; - - private Integer sheepfoldId; - - private Integer[] sheepfoldIds; - - /** 消毒日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 消毒方式 */ - @Excel(name = "消毒方式") - private String way; - - /** 药品使用记录id */ - @Excel(name = "药品使用记录id") - private Integer usageId; - - /** 比例 */ - @Excel(name = "比例") - private String ratio; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - // 药品使用 - private List usageDetails; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java deleted file mode 100644 index 05e591a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.util.Date; -import java.util.List; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -/** - * 保健对象 sw_health - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -public class Health extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 保健日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "保健日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 羊只id */ - @Excel(name = "羊只id") - private Long sheepId; - - private Integer[] sheepIds; - - /** 羊只id */ - @Excel(name = "羊只耳号") - private String sheepNo; - @Excel(name = "品种") - private String variety; - @Excel(name = "羊只类别") - private String sheepType; - @Excel(name = "羊只性别") - private String gender; - @Excel(name = "月龄") - private Long monthAge; - @Excel(name = "繁殖状态") - private String breed; - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 用药记录 */ - @Excel(name = "用药记录") - private Integer usageId; - - - /** 技术员 */ - @Excel(name = "技术员") - private String technical; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - // 药品使用 - private List usageDetails; -} 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 deleted file mode 100644 index 1a77298..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.util.Date; -import java.util.List; - -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; - -/** - * 免疫对象 sw_immunity - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Immunity extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 羊只id */ - @Excel(name = "羊只id") - private Long sheepId; - - private Integer[] sheepIds; - - /** 羊只id */ - @Excel(name = "羊只耳号") - private String sheepNo; - @Excel(name = "品种") - - private String variety; - @Excel(name = "羊只类别") - private String sheepType; - - @Excel(name = "羊只性别") - private String gender; - - @Excel(name = "月龄") - private Long monthAge; - - @Excel(name = "繁殖状态") - private String breed; - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 使用记录 */ - @Excel(name = "使用记录") - private Integer usageId; - - - /** 免疫日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "免疫日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 技术员 */ - @Excel(name = "技术员") - private String technical; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - // 药品使用 - private List usageDetails; - -} 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 deleted file mode 100644 index 807962a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java +++ /dev/null @@ -1,31 +0,0 @@ -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; - -/** - * 检疫项目对象 sw_quarantine_items - * - * @author ruoyi - * @date 2025-07-14 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class QuarantineItems extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 名称 */ - @Excel(name = "名称") - private String name; - -} 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 deleted file mode 100644 index 0fa8f88..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -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; -import org.apache.ibatis.type.Alias; - -/** - * 检疫记录对象 sw_quarantine_report - * - * @author ruoyi - * @date 2025-07-14 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -@Alias("QuarantineReport") -public class QuarantineReport extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - -// 羊只耳号 - private String[] ids; - - /** 羊只 */ - private Long sheepId; - - @Excel(name = "羊只耳号") - private String sheepNo; - @Excel(name = "羊只类别") - private String sheepType; - @Excel(name = "羊只性别") - private String gender; - @Excel(name = "月龄") - private Long monthAge; - @Excel(name = "胎次") - private Long parity; - @Excel(name = "繁育状态") - private String breed; - - - /** 检疫日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "检疫日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 检疫项目 */ - - private Long quarItem; - - /** 检疫项目 */ - @Excel(name = "检疫项目") - private String itemName; - - - /** 样品类型 */ - private Long sampleType; - - /** 样品 */ - @Excel(name = "样品类型") - private String sample; - - - /** 采样员 */ - @Excel(name = "采样员") - private String sampler; - - /** 检疫员 */ - @Excel(name = "检疫员") - private String quarOfficer; - - /** 检疫结果 */ - @Excel(name = "检疫结果") - private String result; - - /** 状态 */ - @Excel(name = "状态") - private Integer status; - - /** 备注*/ - @Excel(name = "备注") - private String comment; - - -} 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 deleted file mode 100644 index e128a0e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java +++ /dev/null @@ -1,31 +0,0 @@ -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; - -/** - * 样品类型对象 sw_quarantine_sample - * - * @author ruoyi - * @date 2025-07-14 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class QuarantineSample extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 样品类型 */ - @Excel(name = "样品类型") - private String name; - -} 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 deleted file mode 100644 index 65ab2c1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java +++ /dev/null @@ -1,40 +0,0 @@ -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; - -/** - * 疾病对象 sw_disease - * - * @author ruoyi - * @date 2025-07-09 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwDisease extends TreeEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 名称 */ - @Excel(name = "名称") - private String name; - - /** 描述 */ - @Excel(name = "描述") - private String comment; - - /** */ - @Excel(name = "") - private Long pid; - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java deleted file mode 100644 index 46893c5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java +++ /dev/null @@ -1,58 +0,0 @@ -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; - -/** - * 药品类型对象 sw_medic_type - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwMedicType extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 编号 */ - private Long id; - - /** 药品类型 */ - @Excel(name = "药品类型") - private String name; - - 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; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("name", getName()) - .toString(); - } -} 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 deleted file mode 100644 index 247ef20..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java +++ /dev/null @@ -1,49 +0,0 @@ -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; - -/** - * 药品对象 sw_medicine - * - * @author ruoyi - * @date 2025-07-11 - */ - -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwMedicine extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** */ - private Long id; - - /** 药品编号 */ - @Excel(name = "药品编号") - private String medica; - - /** 药品名称 */ - @Excel(name = "药品名称") - private String name; - - /** 药品类型 */ - @Excel(name = "药品类型") - private Long medicType; - - /** 使用方法 */ - @Excel(name = "使用方法") - private Long usageId; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - -} 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 deleted file mode 100644 index 95a6aea..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -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; - -/** - * 药品使用记录对象 sw_medicine_usage - * - * @author ruoyi - * @date 2025-07-12 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwMedicineUsage extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Integer id; - - /** 使用名称 */ - @Excel(name = "使用名称") - private String name; - - /** 使用类型 */ - @Excel(name = "使用类型") - private String useType; - - /** 药品使用记录详情信息 */ - private List swMedicineUsageDetailsList; - - -} 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 deleted file mode 100644 index 86eb829..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java +++ /dev/null @@ -1,59 +0,0 @@ -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; - -/** - * 药品使用记录详情对象 sw_medicine_usage_details - * - * @author ruoyi - * @date 2025-07-12 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwMedicineUsageDetails extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 药品使用记录id */ - @Excel(name = "药品使用记录id") - private Integer mediUsage; - - /** 药品id */ - @Excel(name = "药品id") - private Long mediId; - -/** 药品名称*/ - @Excel(name = "药品名称") - private String mediName; - - /** 用量 */ - @Excel(name = "用量") - private String dosage; - - /** 单位 */ - @Excel(name = "单位") - private String unit; - - /** 使用方法 */ - @Excel(name = "使用方法") - private String usageId; - - /** 生产厂家 */ - @Excel(name = "生产厂家") - private String manufacturer; - - /** 生产批号 */ - @Excel(name = "生产批号") - private String batchNumber; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java deleted file mode 100644 index e03540b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.math.BigDecimal; - -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; - -/** - * 处方详情对象 sw_pres_detail - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwPresDetail extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 处方id */ - private Long persId; - - /** 药品id */ - @Excel(name = "药品id") - private Integer mediId; - - /** 用量 */ - @Excel(name = "用量") - private BigDecimal dosage; - - /** 单位 */ - @Excel(name = "单位") - private Integer unitId; - - /** 使用方法 */ - @Excel(name = "使用方法") - private Integer usageId; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - public void setPersId(Long persId) - { - this.persId = persId; - } - - public Long getPersId() - { - return persId; - } - public void setMediId(Integer mediId) - { - this.mediId = mediId; - } - - public Integer getMediId() - { - return mediId; - } - public void setDosage(BigDecimal dosage) - { - this.dosage = dosage; - } - - public BigDecimal getDosage() - { - return dosage; - } - public void setUnitId(Integer unitId) - { - this.unitId = unitId; - } - - public Integer getUnitId() - { - return unitId; - } - public void setUsageId(Integer usageId) - { - this.usageId = usageId; - } - - public Integer getUsageId() - { - return usageId; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("persId", getPersId()) - .append("mediId", getMediId()) - .append("dosage", getDosage()) - .append("unitId", getUnitId()) - .append("usageId", getUsageId()) - .toString(); - } -} 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 deleted file mode 100644 index ae22e43..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -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; - -/** - * 处方对象 sw_prescription - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwPrescription extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Long id; - - /** 处方编号 */ - @Excel(name = "处方编号") - private String no; - - /** 处方名称 */ - @Excel(name = "处方名称") - private String name; - - /** 类型(免疫/保健/驱虫/消毒/疾病治疗) */ - @Excel(name = "类型", readConverterExp = "免疫/保健/驱虫/消毒/疾病治疗") - private Integer persType; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 状态(0禁用1启用) */ - @Excel(name = "状态(0禁用1启用)") - private Integer status; - - /** 处方详情信息 */ - 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 deleted file mode 100644 index 9820928..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java +++ /dev/null @@ -1,33 +0,0 @@ -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; - -/** - * 药品单位对象 sw_unit - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwUnit extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 编号 */ - private Integer id; - - /** 单位 */ - @Excel(name = "单位") - private String name; - -/* 国际单位*/ - private String unit; -} 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 deleted file mode 100644 index 450c220..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java +++ /dev/null @@ -1,32 +0,0 @@ -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; - -/** - * 药品使用方法对象 sw_usage - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class SwUsage extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 编号 */ - private Integer id; - - /** 使用方法 */ - @Excel(name = "使用方法") - private String name; - - -} 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 deleted file mode 100644 index e4217fc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.zhyc.module.biosafety.domain; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -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; - -/** - * 治疗记录对象 sw_treatment - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Treatment extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - private Long id; - - /** 诊疗记录id */ - private Long diagId; - - /** 羊只耳号 */ - @Excel(name = "羊只耳号") - private String sheepNo; - - private Long sheepId; -// 用于批量新增 - private List sheepIds; - - /** 品种 */ - @Excel(name = "品种") - private String variety; - - /** 羊只类别 */ - @Excel(name = "羊只类别") - private String sheepType; - - /** 月龄 */ - @Excel(name = "月龄") - private Long monthAge; - - /** 性别 */ - @Excel(name = "性别") - private String gender; - - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 繁殖状态 */ - @Excel(name = "繁殖状态") - private String breed; - - /** 泌乳天数 */ - @Excel(name = "泌乳天数") - private Long lactDay; - - /** 怀孕天数 */ - @Excel(name = "怀孕天数") - private Long gestDay; - - /** 治疗日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "治疗日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 疾病类型 */ - @Excel(name = "疾病类型") - private String diseaseName; - - private Long diseaseId; - - - /** 父疾病 */ - @Excel(name = "父疾病") - private String diseasePName; - - private Long diseasePid; - - /** 兽医 */ - @Excel(name = "兽医") - private String veterinary; - - /** 药品使用记录id */ - @Excel(name = "药品使用记录id") - private Integer usageId; - -// 药品使用 - private List usageDetails; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java deleted file mode 100644 index 8ce542c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.Deworm; -import org.apache.ibatis.annotations.Mapper; - -/** - * 驱虫Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface DewormMapper -{ - /** - * 查询驱虫 - * - * @param id 驱虫主键 - * @return 驱虫 - */ - public Deworm selectDewormById(Long id); - - /** - * 查询驱虫列表 - * - * @param deworm 驱虫 - * @return 驱虫集合 - */ - public List selectDewormList(Deworm deworm); - - /** - * 新增驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - public int insertDeworm(List deworm); - - /** - * 修改驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - public int updateDeworm(Deworm deworm); - - /** - * 删除驱虫 - * - * @param id 驱虫主键 - * @return 结果 - */ - public int deleteDewormById(Long id); - - /** - * 批量删除驱虫 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteDewormByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java deleted file mode 100644 index f9f8076..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Diagnosis; -import org.apache.ibatis.annotations.Mapper; - -/** - * 诊疗结果Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface DiagnosisMapper -{ - /** - * 查询诊疗结果 - * - * @param id 诊疗结果主键 - * @return 诊疗结果 - */ - public Diagnosis selectDiagnosisById(Long id); - - /** - * 查询诊疗结果列表 - * - * @param diagnosis 诊疗结果 - * @return 诊疗结果集合 - */ - public List selectDiagnosisList(Diagnosis diagnosis); - - /** - * 新增诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - public int insertDiagnosis(Diagnosis diagnosis); - - /** - * 修改诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - public int updateDiagnosis(Diagnosis diagnosis); - - /** - * 删除诊疗结果 - * - * @param id 诊疗结果主键 - * @return 结果 - */ - public int deleteDiagnosisById(Long id); - - /** - * 批量删除诊疗结果 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteDiagnosisByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java deleted file mode 100644 index 885bf2e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Disinfect; -import org.apache.ibatis.annotations.Mapper; - -/** - * 消毒记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface DisinfectMapper -{ - /** - * 查询消毒记录 - * - * @param id 消毒记录主键 - * @return 消毒记录 - */ - public Disinfect selectDisinfectById(Long id); - - /** - * 查询消毒记录列表 - * - * @param disinfect 消毒记录 - * @return 消毒记录集合 - */ - public List selectDisinfectList(Disinfect disinfect); - - /** - * 新增消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - public int insertDisinfect(List disinfect); - - /** - * 修改消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - public int updateDisinfect(Disinfect disinfect); - - /** - * 删除消毒记录 - * - * @param id 消毒记录主键 - * @return 结果 - */ - public int deleteDisinfectById(Long id); - - /** - * 批量删除消毒记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteDisinfectByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java deleted file mode 100644 index bcdc175..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Health; -import org.apache.ibatis.annotations.Mapper; - -/** - * 保健Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface HealthMapper -{ - /** - * 查询保健 - * - * @param id 保健主键 - * @return 保健 - */ - public Health selectHealthById(Long id); - - /** - * 查询保健列表 - * - * @param health 保健 - * @return 保健集合 - */ - public List selectHealthList(Health health); - - /** - * 新增保健 - * - * @param health 保健 - * @return 结果 - */ - public int insertHealth(List health); - - /** - * 修改保健 - * - * @param health 保健 - * @return 结果 - */ - public int updateHealth(Health health); - - /** - * 删除保健 - * - * @param id 保健主键 - * @return 结果 - */ - public int deleteHealthById(Long id); - - /** - * 批量删除保健 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteHealthByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java deleted file mode 100644 index a500a9e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Immunity; -import org.apache.ibatis.annotations.Mapper; - -/** - * 免疫Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface ImmunityMapper -{ - /** - * 查询免疫 - * - * @param id 免疫主键 - * @return 免疫 - */ - public Immunity selectImmunityById(Long id); - - /** - * 查询免疫列表 - * - * @param immunity 免疫 - * @return 免疫集合 - */ - public List selectImmunityList(Immunity immunity); - - /** - * 新增免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - public int insertImmunity(List immunity); - - /** - * 修改免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - public int updateImmunity(Immunity immunity); - - /** - * 删除免疫 - * - * @param id 免疫主键 - * @return 结果 - */ - public int deleteImmunityById(Long id); - - /** - * 批量删除免疫 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteImmunityByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java deleted file mode 100644 index 30b19d7..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineItems; -import org.apache.ibatis.annotations.Mapper; - -/** - * 检疫项目Mapper接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Mapper -public interface QuarantineItemsMapper -{ - /** - * 查询检疫项目 - * - * @param id 检疫项目主键 - * @return 检疫项目 - */ - public QuarantineItems selectQuarantineItemsById(Long id); - - /** - * 查询检疫项目列表 - * - * @param quarantineItems 检疫项目 - * @return 检疫项目集合 - */ - public List selectQuarantineItemsList(QuarantineItems quarantineItems); - - /** - * 新增检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - public int insertQuarantineItems(QuarantineItems quarantineItems); - - /** - * 修改检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - public int updateQuarantineItems(QuarantineItems quarantineItems); - - /** - * 删除检疫项目 - * - * @param id 检疫项目主键 - * @return 结果 - */ - public int deleteQuarantineItemsById(Long id); - - /** - * 批量删除检疫项目 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteQuarantineItemsByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java deleted file mode 100644 index bc4c181..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineReport; -import org.apache.ibatis.annotations.Mapper; - -/** - * 检疫记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Mapper -public interface QuarantineReportMapper -{ - /** - * 查询检疫记录 - * - * @param id 检疫记录主键 - * @return 检疫记录 - */ - public QuarantineReport selectQuarantineReportById(Long id); - - /** - * 查询检疫记录列表 - * - * @param quarantineReport 检疫记录 - * @return 检疫记录集合 - */ - public List selectQuarantineReportList(QuarantineReport quarantineReport); - - /** - * 新增检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - public int insertQuarantineReport(List quarantineReport); - - /** - * 修改检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - public int updateQuarantineReport(QuarantineReport quarantineReport); - - /** - * 删除检疫记录 - * - * @param id 检疫记录主键 - * @return 结果 - */ - public int deleteQuarantineReportById(Long id); - - /** - * 批量删除检疫记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteQuarantineReportByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java deleted file mode 100644 index 5df4a8a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineSample; -import org.apache.ibatis.annotations.Mapper; - -/** - * 样品类型Mapper接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Mapper -public interface QuarantineSampleMapper -{ - /** - * 查询样品类型 - * - * @param id 样品类型主键 - * @return 样品类型 - */ - public QuarantineSample selectQuarantineSampleById(Long id); - - /** - * 查询样品类型列表 - * - * @param quarantineSample 样品类型 - * @return 样品类型集合 - */ - public List selectQuarantineSampleList(QuarantineSample quarantineSample); - - /** - * 新增样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - public int insertQuarantineSample(QuarantineSample quarantineSample); - - /** - * 修改样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - public int updateQuarantineSample(QuarantineSample quarantineSample); - - /** - * 删除样品类型 - * - * @param id 样品类型主键 - * @return 结果 - */ - public int deleteQuarantineSampleById(Long id); - - /** - * 批量删除样品类型 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteQuarantineSampleByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java deleted file mode 100644 index ed5de79..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwDisease; -import org.apache.ibatis.annotations.Mapper; - -/** - * 疾病Mapper接口 - * - * @author ruoyi - * @date 2025-07-09 - */ -@Mapper -public interface SwDiseaseMapper -{ - /** - * 查询疾病 - * - * @param id 疾病主键 - * @return 疾病 - */ - public SwDisease selectSwDiseaseById(Long id); - - /** - * 查询疾病列表 - * - * @param swDisease 疾病 - * @return 疾病集合 - */ - public List selectSwDiseaseList(SwDisease swDisease); - - /** - * 新增疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - public int insertSwDisease(SwDisease swDisease); - - /** - * 修改疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - public int updateSwDisease(SwDisease swDisease); - - /** - * 删除疾病 - * - * @param id 疾病主键 - * @return 结果 - */ - public int deleteSwDiseaseById(Long id); - - /** - * 批量删除疾病 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwDiseaseByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java deleted file mode 100644 index 19e73c4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicType; -import org.apache.ibatis.annotations.Mapper; - -/** - * 药品类型Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface SwMedicTypeMapper -{ - /** - * 查询药品类型 - * - * @param id 药品类型主键 - * @return 药品类型 - */ - public SwMedicType selectSwMedicTypeById(Long id); - - /** - * 查询药品类型列表 - * - * @param swMedicType 药品类型 - * @return 药品类型集合 - */ - public List selectSwMedicTypeList(SwMedicType swMedicType); - - /** - * 新增药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - public int insertSwMedicType(SwMedicType swMedicType); - - /** - * 修改药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - public int updateSwMedicType(SwMedicType swMedicType); - - /** - * 删除药品类型 - * - * @param id 药品类型主键 - * @return 结果 - */ - public int deleteSwMedicTypeById(Long id); - - /** - * 批量删除药品类型 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwMedicTypeByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java deleted file mode 100644 index dd1ed67..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwMedicine; -import org.apache.ibatis.annotations.Mapper; - -/** - * 药品Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface SwMedicineMapper -{ - /** - * 查询药品 - * - * @param id 药品主键 - * @return 药品 - */ - public SwMedicine selectSwMedicineById(Long id); - - /** - * 查询药品列表 - * - * @param swMedicine 药品 - * @return 药品集合 - */ - public List selectSwMedicineList(SwMedicine swMedicine); - - /** - * 新增药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - public int insertSwMedicine(SwMedicine swMedicine); - - /** - * 修改药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - public int updateSwMedicine(SwMedicine swMedicine); - - /** - * 删除药品 - * - * @param id 药品主键 - * @return 结果 - */ - public int deleteSwMedicineById(Long id); - - /** - * 批量删除药品 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwMedicineByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java deleted file mode 100644 index 3d60eb0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicineUsage; -import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; -import org.apache.ibatis.annotations.Mapper; - -/** - * 药品使用记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Mapper -public interface SwMedicineUsageMapper -{ - /** - * 查询药品使用记录 - * - * @param id 药品使用记录主键 - * @return 药品使用记录 - */ - public SwMedicineUsage selectSwMedicineUsageById(Integer id); - - /** - * 查询药品使用记录列表 - * - * @param swMedicineUsage 药品使用记录 - * @return 药品使用记录集合 - */ - public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage); - - /** - * 新增药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage); - - /** - * 修改药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage); - - /** - * 删除药品使用记录 - * - * @param id 药品使用记录主键 - * @return 结果 - */ - public int deleteSwMedicineUsageById(Integer id); - - /** - * 批量删除药品使用记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwMedicineUsageByIds(Long[] ids); - - /** - * 批量删除药品使用记录详情 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwMedicineUsageDetailsByMediUsages(Long[] ids); - - /** - * 批量新增药品使用记录详情 - * - * @param swMedicineUsageDetailsList 药品使用记录详情列表 - * @return 结果 - */ - public int batchSwMedicineUsageDetails(List swMedicineUsageDetailsList); - - - /** - * 通过药品使用记录主键删除药品使用记录详情信息 - * - * @param id 药品使用记录ID - * @return 结果 - */ - public int deleteSwMedicineUsageDetailsByMediUsage(Integer id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java deleted file mode 100644 index 35796dc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwPrescription; -import com.zhyc.module.biosafety.domain.SwPresDetail; -import org.apache.ibatis.annotations.Mapper; - -/** - * 处方Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface SwPrescriptionMapper -{ - /** - * 查询处方 - * - * @param id 处方主键 - * @return 处方 - */ - public SwPrescription selectSwPrescriptionById(Long id); - - /** - * 查询处方列表 - * - * @param swPrescription 处方 - * @return 处方集合 - */ - public List selectSwPrescriptionList(SwPrescription swPrescription); - - /** - * 新增处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - public int insertSwPrescription(SwPrescription swPrescription); - - /** - * 修改处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - public int updateSwPrescription(SwPrescription swPrescription); - - /** - * 删除处方 - * - * @param id 处方主键 - * @return 结果 - */ - public int deleteSwPrescriptionById(Long id); - - /** - * 批量删除处方 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwPrescriptionByIds(Long[] ids); - - /** - * 批量删除处方详情 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwPresDetailByPersIds(Long[] ids); - - /** - * 批量新增处方详情 - * - * @param swPresDetailList 处方详情列表 - * @return 结果 - */ - public int batchSwPresDetail(List swPresDetailList); - - - /** - * 通过处方主键删除处方详情信息 - * - * @param id 处方ID - * @return 结果 - */ - public int deleteSwPresDetailByPersId(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java deleted file mode 100644 index 417b3aa..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import com.zhyc.module.biosafety.domain.SwUnit; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; - -/** - * 药品单位Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface SwUnitMapper -{ - /** - * 查询药品单位 - * - * @param id 药品单位主键 - * @return 药品单位 - */ - public SwUnit selectSwUnitById(Long id); - - /** - * 查询药品单位列表 - * - * @param swUnit 药品单位 - * @return 药品单位集合 - */ - public List selectSwUnitList(SwUnit swUnit); - - /** - * 新增药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - public int insertSwUnit(SwUnit swUnit); - - /** - * 修改药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - public int updateSwUnit(SwUnit swUnit); - - /** - * 删除药品单位 - * - * @param id 药品单位主键 - * @return 结果 - */ - public int deleteSwUnitById(Long id); - - /** - * 批量删除药品单位 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwUnitByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java deleted file mode 100644 index a2b591b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwUsage; -import org.apache.ibatis.annotations.Mapper; - -/** - * 药品使用方法Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface SwUsageMapper -{ - /** - * 查询药品使用方法 - * - * @param id 药品使用方法主键 - * @return 药品使用方法 - */ - public SwUsage selectSwUsageById(Long id); - - /** - * 查询药品使用方法列表 - * - * @param swUsage 药品使用方法 - * @return 药品使用方法集合 - */ - public List selectSwUsageList(SwUsage swUsage); - - /** - * 新增药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - public int insertSwUsage(SwUsage swUsage); - - /** - * 修改药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - public int updateSwUsage(SwUsage swUsage); - - /** - * 删除药品使用方法 - * - * @param id 药品使用方法主键 - * @return 结果 - */ - public int deleteSwUsageById(Long id); - - /** - * 批量删除药品使用方法 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteSwUsageByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java deleted file mode 100644 index 643d9a0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.zhyc.module.biosafety.mapper; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.Treatment; -import org.apache.ibatis.annotations.Mapper; - -/** - * 治疗记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface TreatmentMapper -{ - /** - * 查询治疗记录 - * - * @param id 治疗记录主键 - * @return 治疗记录 - */ - public Treatment selectTreatmentById(Long id); - - /** - * 查询治疗记录列表 - * - * @param treatment 治疗记录 - * @return 治疗记录集合 - */ - public List selectTreatmentList(Treatment treatment); - - /** - * 新增治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - public int insertTreatment(Treatment treatment); - - /** - * 修改治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - public int updateTreatment(Treatment treatment); - - /** - * 删除治疗记录 - * - * @param id 治疗记录主键 - * @return 结果 - */ - public int deleteTreatmentById(Long id); - - /** - * 批量删除治疗记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteTreatmentByIds(Long[] ids); - - int insertTreatmentList(List treatments); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java deleted file mode 100644 index f897fa4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.Deworm; - -/** - * 驱虫Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IDewormService -{ - /** - * 查询驱虫 - * - * @param id 驱虫主键 - * @return 驱虫 - */ - public Deworm selectDewormById(Long id); - - /** - * 查询驱虫列表 - * - * @param deworm 驱虫 - * @return 驱虫集合 - */ - public List selectDewormList(Deworm deworm); - - /** - * 新增驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - public int insertDeworm(Deworm deworm); - - /** - * 修改驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - public int updateDeworm(Deworm deworm); - - /** - * 批量删除驱虫 - * - * @param ids 需要删除的驱虫主键集合 - * @return 结果 - */ - public int deleteDewormByIds(Long[] ids); - - /** - * 删除驱虫信息 - * - * @param id 驱虫主键 - * @return 结果 - */ - public int deleteDewormById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java deleted file mode 100644 index d88f954..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.Diagnosis; - -/** - * 诊疗结果Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IDiagnosisService -{ - /** - * 查询诊疗结果 - * - * @param id 诊疗结果主键 - * @return 诊疗结果 - */ - public Diagnosis selectDiagnosisById(Long id); - - /** - * 查询诊疗结果列表 - * - * @param diagnosis 诊疗结果 - * @return 诊疗结果集合 - */ - public List selectDiagnosisList(Diagnosis diagnosis); - - /** - * 新增诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - public int insertDiagnosis(Diagnosis diagnosis); - - /** - * 修改诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - public int updateDiagnosis(Diagnosis diagnosis); - - /** - * 批量删除诊疗结果 - * - * @param ids 需要删除的诊疗结果主键集合 - * @return 结果 - */ - public int deleteDiagnosisByIds(Long[] ids); - - /** - * 删除诊疗结果信息 - * - * @param id 诊疗结果主键 - * @return 结果 - */ - public int deleteDiagnosisById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java deleted file mode 100644 index d6d20f2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Disinfect; - -/** - * 消毒记录Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IDisinfectService -{ - /** - * 查询消毒记录 - * - * @param id 消毒记录主键 - * @return 消毒记录 - */ - public Disinfect selectDisinfectById(Long id); - - /** - * 查询消毒记录列表 - * - * @param disinfect 消毒记录 - * @return 消毒记录集合 - */ - public List selectDisinfectList(Disinfect disinfect); - - /** - * 新增消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - public int insertDisinfect(Disinfect disinfect); - - /** - * 修改消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - public int updateDisinfect(Disinfect disinfect); - - /** - * 批量删除消毒记录 - * - * @param ids 需要删除的消毒记录主键集合 - * @return 结果 - */ - public int deleteDisinfectByIds(Long[] ids); - - /** - * 删除消毒记录信息 - * - * @param id 消毒记录主键 - * @return 结果 - */ - public int deleteDisinfectById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java deleted file mode 100644 index b9d8e8e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Health; - -/** - * 保健Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IHealthService -{ - /** - * 查询保健 - * - * @param id 保健主键 - * @return 保健 - */ - public Health selectHealthById(Long id); - - /** - * 查询保健列表 - * - * @param health 保健 - * @return 保健集合 - */ - public List selectHealthList(Health health); - - /** - * 新增保健 - * - * @param health 保健 - * @return 结果 - */ - public int insertHealth(Health health); - - /** - * 修改保健 - * - * @param health 保健 - * @return 结果 - */ - public int updateHealth(Health health); - - /** - * 批量删除保健 - * - * @param ids 需要删除的保健主键集合 - * @return 结果 - */ - public int deleteHealthByIds(Long[] ids); - - /** - * 删除保健信息 - * - * @param id 保健主键 - * @return 结果 - */ - public int deleteHealthById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java deleted file mode 100644 index 1f75b9b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.Immunity; - -/** - * 免疫Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IImmunityService -{ - /** - * 查询免疫 - * - * @param id 免疫主键 - * @return 免疫 - */ - public Immunity selectImmunityById(Long id); - - /** - * 查询免疫列表 - * - * @param immunity 免疫 - * @return 免疫集合 - */ - public List selectImmunityList(Immunity immunity); - - /** - * 新增免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - public int insertImmunity(Immunity immunity); - - /** - * 修改免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - public int updateImmunity(Immunity immunity); - - /** - * 批量删除免疫 - * - * @param ids 需要删除的免疫主键集合 - * @return 结果 - */ - public int deleteImmunityByIds(Long[] ids); - - /** - * 删除免疫信息 - * - * @param id 免疫主键 - * @return 结果 - */ - public int deleteImmunityById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java deleted file mode 100644 index 59bbad1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineItems; - -/** - * 检疫项目Service接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -public interface IQuarantineItemsService -{ - /** - * 查询检疫项目 - * - * @param id 检疫项目主键 - * @return 检疫项目 - */ - public QuarantineItems selectQuarantineItemsById(Long id); - - /** - * 查询检疫项目列表 - * - * @param quarantineItems 检疫项目 - * @return 检疫项目集合 - */ - public List selectQuarantineItemsList(QuarantineItems quarantineItems); - - /** - * 新增检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - public int insertQuarantineItems(QuarantineItems quarantineItems); - - /** - * 修改检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - public int updateQuarantineItems(QuarantineItems quarantineItems); - - /** - * 批量删除检疫项目 - * - * @param ids 需要删除的检疫项目主键集合 - * @return 结果 - */ - public int deleteQuarantineItemsByIds(Long[] ids); - - /** - * 删除检疫项目信息 - * - * @param id 检疫项目主键 - * @return 结果 - */ - public int deleteQuarantineItemsById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java deleted file mode 100644 index 2aaeb26..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineReport; - -/** - * 检疫记录Service接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -public interface IQuarantineReportService -{ - /** - * 查询检疫记录 - * - * @param id 检疫记录主键 - * @return 检疫记录 - */ - public QuarantineReport selectQuarantineReportById(Long id); - - /** - * 查询检疫记录列表 - * - * @param quarantineReport 检疫记录 - * @return 检疫记录集合 - */ - public List selectQuarantineReportList(QuarantineReport quarantineReport); - - /** - * 新增检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - public int insertQuarantineReport(QuarantineReport quarantineReport); - - /** - * 修改检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - public int updateQuarantineReport(QuarantineReport quarantineReport); - - /** - * 批量删除检疫记录 - * - * @param ids 需要删除的检疫记录主键集合 - * @return 结果 - */ - public int deleteQuarantineReportByIds(Long[] ids); - - /** - * 删除检疫记录信息 - * - * @param id 检疫记录主键 - * @return 结果 - */ - public int deleteQuarantineReportById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java deleted file mode 100644 index 5741045..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineSample; - -/** - * 样品类型Service接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -public interface IQuarantineSampleService -{ - /** - * 查询样品类型 - * - * @param id 样品类型主键 - * @return 样品类型 - */ - public QuarantineSample selectQuarantineSampleById(Long id); - - /** - * 查询样品类型列表 - * - * @param quarantineSample 样品类型 - * @return 样品类型集合 - */ - public List selectQuarantineSampleList(QuarantineSample quarantineSample); - - /** - * 新增样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - public int insertQuarantineSample(QuarantineSample quarantineSample); - - /** - * 修改样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - public int updateQuarantineSample(QuarantineSample quarantineSample); - - /** - * 批量删除样品类型 - * - * @param ids 需要删除的样品类型主键集合 - * @return 结果 - */ - public int deleteQuarantineSampleByIds(Long[] ids); - - /** - * 删除样品类型信息 - * - * @param id 样品类型主键 - * @return 结果 - */ - public int deleteQuarantineSampleById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java deleted file mode 100644 index 94dcb7b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwDisease; - -/** - * 疾病Service接口 - * - * @author ruoyi - * @date 2025-07-09 - */ -public interface ISwDiseaseService -{ - /** - * 查询疾病 - * - * @param id 疾病主键 - * @return 疾病 - */ - public SwDisease selectSwDiseaseById(Long id); - - /** - * 查询疾病列表 - * - * @param swDisease 疾病 - * @return 疾病集合 - */ - public List selectSwDiseaseList(SwDisease swDisease); - - /** - * 新增疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - public int insertSwDisease(SwDisease swDisease); - - /** - * 修改疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - public int updateSwDisease(SwDisease swDisease); - - /** - * 批量删除疾病 - * - * @param ids 需要删除的疾病主键集合 - * @return 结果 - */ - public int deleteSwDiseaseByIds(Long[] ids); - - /** - * 删除疾病信息 - * - * @param id 疾病主键 - * @return 结果 - */ - public int deleteSwDiseaseById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java deleted file mode 100644 index 186af6c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicType; - -/** - * 药品类型Service接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -public interface ISwMedicTypeService -{ - /** - * 查询药品类型 - * - * @param id 药品类型主键 - * @return 药品类型 - */ - public SwMedicType selectSwMedicTypeById(Long id); - - /** - * 查询药品类型列表 - * - * @param swMedicType 药品类型 - * @return 药品类型集合 - */ - public List selectSwMedicTypeList(SwMedicType swMedicType); - - /** - * 新增药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - public int insertSwMedicType(SwMedicType swMedicType); - - /** - * 修改药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - public int updateSwMedicType(SwMedicType swMedicType); - - /** - * 批量删除药品类型 - * - * @param ids 需要删除的药品类型主键集合 - * @return 结果 - */ - public int deleteSwMedicTypeByIds(Long[] ids); - - /** - * 删除药品类型信息 - * - * @param id 药品类型主键 - * @return 结果 - */ - public int deleteSwMedicTypeById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java deleted file mode 100644 index abc52b5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicine; - -/** - * 药品Service接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -public interface ISwMedicineService -{ - /** - * 查询药品 - * - * @param id 药品主键 - * @return 药品 - */ - public SwMedicine selectSwMedicineById(Long id); - - /** - * 查询药品列表 - * - * @param swMedicine 药品 - * @return 药品集合 - */ - public List selectSwMedicineList(SwMedicine swMedicine); - - /** - * 新增药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - public int insertSwMedicine(SwMedicine swMedicine); - - /** - * 修改药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - public int updateSwMedicine(SwMedicine swMedicine); - - /** - * 批量删除药品 - * - * @param ids 需要删除的药品主键集合 - * @return 结果 - */ - public int deleteSwMedicineByIds(Long[] ids); - - /** - * 删除药品信息 - * - * @param id 药品主键 - * @return 结果 - */ - public int deleteSwMedicineById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java deleted file mode 100644 index 70e3dd8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwMedicineUsage; - -/** - * 药品使用记录Service接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -public interface ISwMedicineUsageService -{ - /** - * 查询药品使用记录 - * - * @param id 药品使用记录主键 - * @return 药品使用记录 - */ - public SwMedicineUsage selectSwMedicineUsageById(Integer id); - - /** - * 查询药品使用记录列表 - * - * @param swMedicineUsage 药品使用记录 - * @return 药品使用记录集合 - */ - public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage); - - /** - * 新增药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage); - - /** - * 修改药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage); - - /** - * 批量删除药品使用记录 - * - * @param ids 需要删除的药品使用记录主键集合 - * @return 结果 - */ - public int deleteSwMedicineUsageByIds(Long[] ids); - - /** - * 删除药品使用记录信息 - * - * @param id 药品使用记录主键 - * @return 结果 - */ - public int deleteSwMedicineUsageById(Integer id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java deleted file mode 100644 index 97c79fc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwPrescription; - -/** - * 处方Service接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -public interface ISwPrescriptionService -{ - /** - * 查询处方 - * - * @param id 处方主键 - * @return 处方 - */ - public SwPrescription selectSwPrescriptionById(Long id); - - /** - * 查询处方列表 - * - * @param swPrescription 处方 - * @return 处方集合 - */ - public List selectSwPrescriptionList(SwPrescription swPrescription); - - /** - * 新增处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - public int insertSwPrescription(SwPrescription swPrescription); - - /** - * 修改处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - public int updateSwPrescription(SwPrescription swPrescription); - - /** - * 批量删除处方 - * - * @param ids 需要删除的处方主键集合 - * @return 结果 - */ - public int deleteSwPrescriptionByIds(Long[] ids); - - /** - * 删除处方信息 - * - * @param id 处方主键 - * @return 结果 - */ - public int deleteSwPrescriptionById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java deleted file mode 100644 index 13ee078..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwUnit; - -/** - * 药品单位Service接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -public interface ISwUnitService -{ - /** - * 查询药品单位 - * - * @param id 药品单位主键 - * @return 药品单位 - */ - public SwUnit selectSwUnitById(Long id); - - /** - * 查询药品单位列表 - * - * @param swUnit 药品单位 - * @return 药品单位集合 - */ - public List selectSwUnitList(SwUnit swUnit); - - /** - * 新增药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - public int insertSwUnit(SwUnit swUnit); - - /** - * 修改药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - public int updateSwUnit(SwUnit swUnit); - - /** - * 批量删除药品单位 - * - * @param ids 需要删除的药品单位主键集合 - * @return 结果 - */ - public int deleteSwUnitByIds(Long[] ids); - - /** - * 删除药品单位信息 - * - * @param id 药品单位主键 - * @return 结果 - */ - public int deleteSwUnitById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java deleted file mode 100644 index e6d3152..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; -import com.zhyc.module.biosafety.domain.SwUsage; - -/** - * 药品使用方法Service接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -public interface ISwUsageService -{ - /** - * 查询药品使用方法 - * - * @param id 药品使用方法主键 - * @return 药品使用方法 - */ - public SwUsage selectSwUsageById(Long id); - - /** - * 查询药品使用方法列表 - * - * @param swUsage 药品使用方法 - * @return 药品使用方法集合 - */ - public List selectSwUsageList(SwUsage swUsage); - - /** - * 新增药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - public int insertSwUsage(SwUsage swUsage); - - /** - * 修改药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - public int updateSwUsage(SwUsage swUsage); - - /** - * 批量删除药品使用方法 - * - * @param ids 需要删除的药品使用方法主键集合 - * @return 结果 - */ - public int deleteSwUsageByIds(Long[] ids); - - /** - * 删除药品使用方法信息 - * - * @param id 药品使用方法主键 - * @return 结果 - */ - public int deleteSwUsageById(Long id); -} 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 deleted file mode 100644 index ed72447..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.biosafety.service; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.Treatment; -import org.springframework.transaction.annotation.Transactional; - -/** - * 治疗记录Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface ITreatmentService -{ - /** - * 查询治疗记录 - * - * @param id 治疗记录主键 - * @return 治疗记录 - */ - public Treatment selectTreatmentById(Long id); - - /** - * 查询治疗记录列表 - * - * @param treatment 治疗记录 - * @return 治疗记录集合 - */ - public List selectTreatmentList(Treatment treatment); - - /** - * 新增治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - public int insertTreatment(Treatment treatment); - - - /** - * 修改治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - public int updateTreatment(Treatment treatment); - - /** - * 批量删除治疗记录 - * - * @param ids 需要删除的治疗记录主键集合 - * @return 结果 - */ - public int deleteTreatmentByIds(Long[] ids); - - /** - * 删除治疗记录信息 - * - * @param id 治疗记录主键 - * @return 结果 - */ - public int deleteTreatmentById(Long id); -} 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 deleted file mode 100644 index c6f850c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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.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.domain.Treatment; -import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.DewormMapper; -import com.zhyc.module.biosafety.service.IDewormService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 驱虫Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class DewormServiceImpl implements IDewormService -{ - @Autowired - private DewormMapper dewormMapper; - @Autowired - private SwMedicineUsageServiceImpl medicineUsageService; - @Autowired - private SwMedicineUsageMapper medicineUsageMapper; - @Autowired - private SheepFileMapper sheepFileMapper; - - /** - * 查询驱虫 - * - * @param id 驱虫主键 - * @return 驱虫 - */ - @Override - public Deworm selectDewormById(Long id) - { - Deworm deworm = dewormMapper.selectDewormById(id); - SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(deworm.getUsageId()); - deworm.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); - return deworm; - } - - /** - * 查询驱虫列表 - * - * @param deworm 驱虫 - * @return 驱虫 - */ - @Override - public List selectDewormList(Deworm deworm) - { - return dewormMapper.selectDewormList(deworm); - } - - /** - * 新增驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - @Override - @Transactional - public int insertDeworm(Deworm deworm) - { - String username = SecurityUtils.getUsername(); - // 使用记录的文件 - SwMedicineUsage medicineUsage = new SwMedicineUsage(); - medicineUsage.setSwMedicineUsageDetailsList(deworm.getUsageDetails()); - medicineUsage.setName("羊只驱虫"); - medicineUsage.setUseType("1"); - - List deworms = new ArrayList<>(); - - deworm.setCreateBy(username); - deworm.setCreateTime(DateUtils.getNowDate()); - for (Integer sheepId : deworm.getSheepIds()) { - SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); - - Deworm dew = new Deworm(); - BeanUtils.copyProperties(deworm, dew); - dew.setSheepId(Long.valueOf(sheepId)); - dew.setVariety(sheepFile.getVariety()); - dew.setSheepType(sheepFile.getName()); - dew.setMonthAge(sheepFile.getMonthAge()); - dew.setGender(String.valueOf(sheepFile.getGender())); - dew.setBreed(sheepFile.getBreed()); - dew.setParity(sheepFile.getParity()); -// 获取药品使用记录的id - Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); - dew.setUsageId(usageId); - deworms.add(dew); - } - - - return dewormMapper.insertDeworm(deworms); - } - - /** - * 修改驱虫 - * - * @param deworm 驱虫 - * @return 结果 - */ - @Override - @Transactional - public int updateDeworm(Deworm deworm) - { - String username = SecurityUtils.getUsername(); - for (SwMedicineUsageDetails usageDetail : deworm.getUsageDetails()) { - usageDetail.setMediUsage(deworm.getUsageId()); - } - medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(deworm.getUsageId()); - SwMedicineUsage swMedicineUsage = new SwMedicineUsage(); - - swMedicineUsage.setId(deworm.getUsageId()); - swMedicineUsage.setUpdateBy(username); - swMedicineUsage.setUpdateTime(DateUtils.getNowDate()); - medicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); - - medicineUsageMapper.batchSwMedicineUsageDetails(deworm.getUsageDetails()); - deworm.setUpdateBy(username); - deworm.setUpdateTime(DateUtils.getNowDate()); - return dewormMapper.updateDeworm(deworm); - } - - /** - * 批量删除驱虫 - * - * @param ids 需要删除的驱虫主键 - * @return 结果 - */ - @Override - public int deleteDewormByIds(Long[] ids) - { - return dewormMapper.deleteDewormByIds(ids); - } - - /** - * 删除驱虫信息 - * - * @param id 驱虫主键 - * @return 结果 - */ - @Override - public int deleteDewormById(Long id) - { - return dewormMapper.deleteDewormById(id); - } -} 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 deleted file mode 100644 index c17e8ec..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; -import java.util.Objects; - -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.domain.SheepFile; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.mapper.SheepFileMapper; -import com.zhyc.module.biosafety.mapper.DiagnosisMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.domain.Diagnosis; -import com.zhyc.module.biosafety.service.IDiagnosisService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 诊疗结果Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class DiagnosisServiceImpl implements IDiagnosisService -{ - @Autowired - private DiagnosisMapper diagnosisMapper; - @Autowired - private SheepFileMapper sheepFileMapper; - @Autowired - private BasSheepMapper sheepMapper; - - /** - * 查询诊疗结果 - * - * @param id 诊疗结果主键 - * @return 诊疗结果 - */ - @Override - public Diagnosis selectDiagnosisById(Long id) - { - return diagnosisMapper.selectDiagnosisById(id); - } - - /** - * 查询诊疗结果列表 - * - * @param diagnosis 诊疗结果 - * @return 诊疗结果 - */ - @Override - public List selectDiagnosisList(Diagnosis diagnosis) - { - return diagnosisMapper.selectDiagnosisList(diagnosis); - } - - /** - * 新增诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - @Override - @Transactional - public int insertDiagnosis(Diagnosis diagnosis) - { - SheepFile sheepFile = sheepFileMapper.selectSheepFileById(diagnosis.getSheepId()); - diagnosis.setSheepType(sheepFile.getName()); - diagnosis.setParity(String.valueOf(sheepFile.getParity())); - diagnosis.setGender(String.valueOf(sheepFile.getGender())); - diagnosis.setMonthAge(sheepFile.getMonthAge()); - - String username = SecurityUtils.getUsername(); - diagnosis.setCreateBy(username); - diagnosis.setCreateTime(DateUtils.getNowDate()); - if (!Objects.equals(sheepFile.getSheepfoldId(), diagnosis.getSheepfoldId())){ - BasSheep basSheep = new BasSheep(); - basSheep.setId(diagnosis.getSheepId()); - basSheep.setSheepfoldId(diagnosis.getSheepfoldId()); - sheepMapper.updateBasSheep(basSheep); - } -// 转入其他羊舍 - return diagnosisMapper.insertDiagnosis(diagnosis); - } - - /** - * 修改诊疗结果 - * - * @param diagnosis 诊疗结果 - * @return 结果 - */ - @Override - @Transactional - public int updateDiagnosis(Diagnosis diagnosis) - { - BasSheep basSheep = new BasSheep(); - basSheep.setId(diagnosis.getSheepId()); - basSheep.setSheepfoldId(diagnosis.getSheepfoldId()); - String username = SecurityUtils.getUsername(); - basSheep.setUpdateBy(username); - basSheep.setUpdateTime(DateUtils.getNowDate()); - diagnosis.setUpdateBy(username); - diagnosis.setUpdateTime(DateUtils.getNowDate()); - sheepMapper.updateBasSheep(basSheep); - return diagnosisMapper.updateDiagnosis(diagnosis); - } - - /** - * 批量删除诊疗结果 - * - * @param ids 需要删除的诊疗结果主键 - * @return 结果 - */ - @Override - public int deleteDiagnosisByIds(Long[] ids) - { - return diagnosisMapper.deleteDiagnosisByIds(ids); - } - - /** - * 删除诊疗结果信息 - * - * @param id 诊疗结果主键 - * @return 结果 - */ - @Override - public int deleteDiagnosisById(Long id) - { - return diagnosisMapper.deleteDiagnosisById(id); - } -} 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 deleted file mode 100644 index 24918ef..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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.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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.DisinfectMapper; -import com.zhyc.module.biosafety.domain.Disinfect; -import com.zhyc.module.biosafety.service.IDisinfectService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 消毒记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class DisinfectServiceImpl implements IDisinfectService -{ - @Autowired - private DisinfectMapper disinfectMapper; - - @Autowired - private SwMedicineUsageServiceImpl medicineUsageService; - - @Autowired - private SwMedicineUsageMapper medicineUsageMapper; - - @Autowired - private SheepFileMapper sheepFileMapper; - - /** - * 查询消毒记录 - * - * @param id 消毒记录主键 - * @return 消毒记录 - */ - @Override - public Disinfect selectDisinfectById(Long id) - { - Disinfect disinfect = disinfectMapper.selectDisinfectById(id); - SwMedicineUsage swMedicineUsage = medicineUsageService.selectSwMedicineUsageById(disinfect.getUsageId()); - disinfect.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); - return disinfect; - } - - /** - * 查询消毒记录列表 - * - * @param disinfect 消毒记录 - * @return 消毒记录 - */ - @Override - public List selectDisinfectList(Disinfect disinfect) - { - return disinfectMapper.selectDisinfectList(disinfect); - } - - /** - * 新增消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - @Override - public int insertDisinfect(Disinfect disinfect) - { - String username = SecurityUtils.getUsername(); - // 使用记录的文件 - SwMedicineUsage medicineUsage = new SwMedicineUsage(); - medicineUsage.setSwMedicineUsageDetailsList(disinfect.getUsageDetails()); - medicineUsage.setName("羊舍消毒"); - medicineUsage.setUseType("3"); - - - List disinfects = new ArrayList<>(); - - disinfect.setCreateBy(username); - disinfect.setCreateTime(DateUtils.getNowDate()); - - for (Integer sheepfold : disinfect.getSheepfoldIds()) { - Disinfect dis = new Disinfect(); - BeanUtils.copyProperties(disinfect,dis); - dis.setSheepfoldId(sheepfold); -// 获取药品使用记录的id - Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); - dis.setUsageId(usageId); - disinfects.add(dis); - } - - return disinfectMapper.insertDisinfect(disinfects); - } - - /** - * 修改消毒记录 - * - * @param disinfect 消毒记录 - * @return 结果 - */ - @Override - @Transactional - public int updateDisinfect(Disinfect disinfect) - { - for (SwMedicineUsageDetails usageDetail : disinfect.getUsageDetails()) { - usageDetail.setMediUsage(disinfect.getUsageId()); - } - medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(disinfect.getUsageId()); - medicineUsageMapper.batchSwMedicineUsageDetails(disinfect.getUsageDetails()); - String username = SecurityUtils.getUsername(); - disinfect.setUpdateBy(username); - disinfect.setUpdateTime(DateUtils.getNowDate()); - return disinfectMapper.updateDisinfect(disinfect); - } - - /** - * 批量删除消毒记录 - * - * @param ids 需要删除的消毒记录主键 - * @return 结果 - */ - @Override - public int deleteDisinfectByIds(Long[] ids) - { - return disinfectMapper.deleteDisinfectByIds(ids); - } - - /** - * 删除消毒记录信息 - * - * @param id 消毒记录主键 - * @return 结果 - */ - @Override - public int deleteDisinfectById(Long id) - { - return disinfectMapper.deleteDisinfectById(id); - } -} 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 deleted file mode 100644 index bef0199..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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.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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.HealthMapper; -import com.zhyc.module.biosafety.domain.Health; -import com.zhyc.module.biosafety.service.IHealthService; - -/** - * 保健Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class HealthServiceImpl implements IHealthService -{ - @Autowired - private HealthMapper healthMapper; - - @Autowired - private SwMedicineUsageServiceImpl medicineUsageService; - - @Autowired - private SwMedicineUsageMapper medicineUsageMapper; - - @Autowired - private SheepFileMapper sheepFileMapper; - - /** - * 查询保健 - * - * @param id 保健主键 - * @return 保健 - */ - @Override - public Health selectHealthById(Long id) - { - Health health = healthMapper.selectHealthById(id); - SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(health.getUsageId()); - health.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); - return health; - } - - /** - * 查询保健列表 - * - * @param health 保健 - * @return 保健 - */ - @Override - public List selectHealthList(Health health) - { - return healthMapper.selectHealthList(health); - } - - /** - * 新增保健 - * - * @param health 保健 - * @return 结果 - */ - @Override - public int insertHealth(Health health) - { - String username = SecurityUtils.getUsername(); - - // 使用记录的文件 - SwMedicineUsage medicineUsage = new SwMedicineUsage(); - medicineUsage.setSwMedicineUsageDetailsList(health.getUsageDetails()); - medicineUsage.setName("羊只保健"); - medicineUsage.setUseType("2"); - - List healths = new ArrayList<>(); - health.setCreateBy(username); - health.setCreateTime(DateUtils.getNowDate()); - for (Integer sheepId : health.getSheepIds()) { - SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); - Health heal = new Health(); - BeanUtils.copyProperties(health, heal); - heal.setSheepId(Long.valueOf(sheepId)); - heal.setVariety(sheepFile.getVariety()); - heal.setSheepType(sheepFile.getName()); - heal.setMonthAge(sheepFile.getMonthAge()); - heal.setGender(String.valueOf(sheepFile.getGender())); - heal.setBreed(sheepFile.getBreed()); - heal.setParity(sheepFile.getParity()); - -// 获取药品使用记录的id - Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); - - heal.setUsageId(usageId); - healths.add(heal); - } - return healthMapper.insertHealth(healths); - } - - /** - * 修改保健 - * - * @param health 保健 - * @return 结果 - */ - @Override - public int updateHealth(Health health) - { - for (SwMedicineUsageDetails usageDetail : health.getUsageDetails()) { - usageDetail.setMediUsage(health.getUsageId()); - } - medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(health.getUsageId()); - medicineUsageMapper.batchSwMedicineUsageDetails(health.getUsageDetails()); - String username = SecurityUtils.getUsername(); - health.setUpdateBy(username); - health.setUpdateTime(DateUtils.getNowDate()); - return healthMapper.updateHealth(health); - } - - /** - * 批量删除保健 - * - * @param ids 需要删除的保健主键 - * @return 结果 - */ - @Override - public int deleteHealthByIds(Long[] ids) - { - return healthMapper.deleteHealthByIds(ids); - } - - /** - * 删除保健信息 - * - * @param id 保健主键 - * @return 结果 - */ - @Override - public int deleteHealthById(Long id) - { - return healthMapper.deleteHealthById(id); - } -} 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 deleted file mode 100644 index 6556faf..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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.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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.ImmunityMapper; -import com.zhyc.module.biosafety.domain.Immunity; -import com.zhyc.module.biosafety.service.IImmunityService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 免疫Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class ImmunityServiceImpl implements IImmunityService -{ - @Autowired - private ImmunityMapper immunityMapper; - - @Autowired - private SwMedicineUsageServiceImpl medicineUsageService; - - @Autowired - private SwMedicineUsageMapper medicineUsageMapper; - - @Autowired - private SheepFileMapper sheepFileMapper; - - - /** - * 查询免疫 - * - * @param id 免疫主键 - * @return 免疫 - */ - @Override - public Immunity selectImmunityById(Long id) - { - Immunity immunity = immunityMapper.selectImmunityById(id); - SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(immunity.getUsageId()); - immunity.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); - return immunity; - } - - /** - * 查询免疫列表 - * - * @param immunity 免疫 - * @return 免疫 - */ - @Override - public List selectImmunityList(Immunity immunity) - { - return immunityMapper.selectImmunityList(immunity); - } - - /** - * 新增免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - @Override - public int insertImmunity(Immunity immunity) - { - String username = SecurityUtils.getUsername(); - - // 使用记录的文件 - SwMedicineUsage medicineUsage = new SwMedicineUsage(); - medicineUsage.setSwMedicineUsageDetailsList(immunity.getUsageDetails()); - medicineUsage.setName("羊只免疫"); - medicineUsage.setUseType("0"); - medicineUsage.setCreateBy(username); - - List immunities = new ArrayList<>(); - - immunity.setUpdateBy(username); - immunity.setCreateTime(DateUtils.getNowDate()); - - for (Integer sheepId : immunity.getSheepIds()) { - SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); - - Immunity imm = new Immunity(); - BeanUtils.copyProperties(immunity, imm); - imm.setSheepId(Long.valueOf(sheepId)); - imm.setVariety(sheepFile.getVariety()); - imm.setSheepType(sheepFile.getName()); - imm.setMonthAge(sheepFile.getMonthAge()); - imm.setGender(String.valueOf(sheepFile.getGender())); - imm.setBreed(sheepFile.getBreed()); - imm.setParity(sheepFile.getParity()); -// 获取药品使用记录的id - Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); - - imm.setUsageId(usageId); - immunities.add(imm); - } - - - immunity.setCreateTime(DateUtils.getNowDate()); - return immunityMapper.insertImmunity(immunities); - } - - /** - * 修改免疫 - * - * @param immunity 免疫 - * @return 结果 - */ - @Override - @Transactional - public int updateImmunity(Immunity immunity) - { - for (SwMedicineUsageDetails usageDetail : immunity.getUsageDetails()) { - usageDetail.setMediUsage(immunity.getUsageId()); - } - medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(immunity.getUsageId()); - medicineUsageMapper.batchSwMedicineUsageDetails(immunity.getUsageDetails()); - immunity.setUpdateTime(DateUtils.getNowDate()); - return immunityMapper.updateImmunity(immunity); - } - - /** - * 批量删除免疫 - * - * @param ids 需要删除的免疫主键 - * @return 结果 - */ - @Override - public int deleteImmunityByIds(Long[] ids) - { - return immunityMapper.deleteImmunityByIds(ids); - } - - /** - * 删除免疫信息 - * - * @param id 免疫主键 - * @return 结果 - */ - @Override - public int deleteImmunityById(Long id) - { - return immunityMapper.deleteImmunityById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java deleted file mode 100644 index 541a759..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.QuarantineItems; -import com.zhyc.module.biosafety.mapper.QuarantineItemsMapper; -import com.zhyc.module.biosafety.service.IQuarantineItemsService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 检疫项目Service业务层处理 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Service -public class QuarantineItemsServiceImpl implements IQuarantineItemsService -{ - @Autowired - private QuarantineItemsMapper quarantineItemsMapper; - - /** - * 查询检疫项目 - * - * @param id 检疫项目主键 - * @return 检疫项目 - */ - @Override - public QuarantineItems selectQuarantineItemsById(Long id) - { - return quarantineItemsMapper.selectQuarantineItemsById(id); - } - - /** - * 查询检疫项目列表 - * - * @param quarantineItems 检疫项目 - * @return 检疫项目 - */ - @Override - public List selectQuarantineItemsList(QuarantineItems quarantineItems) - { - return quarantineItemsMapper.selectQuarantineItemsList(quarantineItems); - } - - /** - * 新增检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - @Override - public int insertQuarantineItems(QuarantineItems quarantineItems) - { - return quarantineItemsMapper.insertQuarantineItems(quarantineItems); - } - - /** - * 修改检疫项目 - * - * @param quarantineItems 检疫项目 - * @return 结果 - */ - @Override - public int updateQuarantineItems(QuarantineItems quarantineItems) - { - return quarantineItemsMapper.updateQuarantineItems(quarantineItems); - } - - /** - * 批量删除检疫项目 - * - * @param ids 需要删除的检疫项目主键 - * @return 结果 - */ - @Override - public int deleteQuarantineItemsByIds(Long[] ids) - { - return quarantineItemsMapper.deleteQuarantineItemsByIds(ids); - } - - /** - * 删除检疫项目信息 - * - * @param id 检疫项目主键 - * @return 结果 - */ - @Override - public int deleteQuarantineItemsById(Long id) - { - return quarantineItemsMapper.deleteQuarantineItemsById(id); - } -} 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 deleted file mode 100644 index 4c55e78..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.QuarantineReportMapper; -import com.zhyc.module.biosafety.domain.QuarantineReport; -import com.zhyc.module.biosafety.service.IQuarantineReportService; - -/** - * 检疫记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Service -public class QuarantineReportServiceImpl implements IQuarantineReportService -{ - @Autowired - private QuarantineReportMapper quarantineReportMapper; - @Autowired - private SheepFileServiceImpl sheepFileService; - - /** - * 查询检疫记录 - * - * @param id 检疫记录主键 - * @return 检疫记录 - */ - @Override - public QuarantineReport selectQuarantineReportById(Long id) - { - return quarantineReportMapper.selectQuarantineReportById(id); - } - - /** - * 查询检疫记录列表 - * - * @param quarantineReport 检疫记录 - * @return 检疫记录 - */ - @Override - public List selectQuarantineReportList(QuarantineReport quarantineReport) - { - return quarantineReportMapper.selectQuarantineReportList(quarantineReport); - } - - /** - * 新增检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - @Override - public int insertQuarantineReport(QuarantineReport quarantineReport) - { - String username = SecurityUtils.getUsername(); - quarantineReport.setCreateBy(username); - quarantineReport.setCreateTime(DateUtils.getNowDate()); - if (quarantineReport.getResult()==null){ - quarantineReport.setStatus(0); - }else { - quarantineReport.setStatus(1); - } - List list = new ArrayList(); - for (String sheepId : quarantineReport.getIds()) { - SheepFile sheepFile = sheepFileService.selectSheepFileById(Long.parseLong(sheepId)); - QuarantineReport quarantine= new QuarantineReport(); - BeanUtils.copyProperties(quarantineReport, quarantine); - quarantine.setSheepId(sheepFile.getId()); - quarantine.setSheepNo(sheepFile.getElectronicTags()); - quarantine.setSheepType(sheepFile.getName()); - -// 性别前端处理 - quarantine.setGender(String.valueOf(sheepFile.getGender())); - quarantine.setMonthAge(sheepFile.getMonthAge()); - quarantine.setParity(sheepFile.getParity()); - quarantine.setBreed(sheepFile.getBreed()); - list.add(quarantine); - } - return quarantineReportMapper.insertQuarantineReport(list); - } - - /** - * 修改检疫记录 - * - * @param quarantineReport 检疫记录 - * @return 结果 - */ - @Override - public int updateQuarantineReport(QuarantineReport quarantineReport) - { - String username = SecurityUtils.getUsername(); - quarantineReport.setUpdateBy(username); - quarantineReport.setUpdateTime(DateUtils.getNowDate()); - return quarantineReportMapper.updateQuarantineReport(quarantineReport); - } - - /** - * 批量删除检疫记录 - * - * @param ids 需要删除的检疫记录主键 - * @return 结果 - */ - @Override - public int deleteQuarantineReportByIds(Long[] ids) - { - return quarantineReportMapper.deleteQuarantineReportByIds(ids); - } - - /** - * 删除检疫记录信息 - * - * @param id 检疫记录主键 - * @return 结果 - */ - @Override - public int deleteQuarantineReportById(Long id) - { - return quarantineReportMapper.deleteQuarantineReportById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java deleted file mode 100644 index 6ac853d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.QuarantineSampleMapper; -import com.zhyc.module.biosafety.domain.QuarantineSample; -import com.zhyc.module.biosafety.service.IQuarantineSampleService; - -/** - * 样品类型Service业务层处理 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Service -public class QuarantineSampleServiceImpl implements IQuarantineSampleService -{ - @Autowired - private QuarantineSampleMapper quarantineSampleMapper; - - /** - * 查询样品类型 - * - * @param id 样品类型主键 - * @return 样品类型 - */ - @Override - public QuarantineSample selectQuarantineSampleById(Long id) - { - return quarantineSampleMapper.selectQuarantineSampleById(id); - } - - /** - * 查询样品类型列表 - * - * @param quarantineSample 样品类型 - * @return 样品类型 - */ - @Override - public List selectQuarantineSampleList(QuarantineSample quarantineSample) - { - return quarantineSampleMapper.selectQuarantineSampleList(quarantineSample); - } - - /** - * 新增样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - @Override - public int insertQuarantineSample(QuarantineSample quarantineSample) - { - return quarantineSampleMapper.insertQuarantineSample(quarantineSample); - } - - /** - * 修改样品类型 - * - * @param quarantineSample 样品类型 - * @return 结果 - */ - @Override - public int updateQuarantineSample(QuarantineSample quarantineSample) - { - return quarantineSampleMapper.updateQuarantineSample(quarantineSample); - } - - /** - * 批量删除样品类型 - * - * @param ids 需要删除的样品类型主键 - * @return 结果 - */ - @Override - public int deleteQuarantineSampleByIds(Long[] ids) - { - return quarantineSampleMapper.deleteQuarantineSampleByIds(ids); - } - - /** - * 删除样品类型信息 - * - * @param id 样品类型主键 - * @return 结果 - */ - @Override - public int deleteQuarantineSampleById(Long id) - { - return quarantineSampleMapper.deleteQuarantineSampleById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java deleted file mode 100644 index 8945257..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwDisease; -import com.zhyc.module.biosafety.mapper.SwDiseaseMapper; -import com.zhyc.module.biosafety.service.ISwDiseaseService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 疾病Service业务层处理 - * - * @author ruoyi - * @date 2025-07-09 - */ -@Service -public class SwDiseaseServiceImpl implements ISwDiseaseService -{ - @Autowired - private SwDiseaseMapper swDiseaseMapper; - - /** - * 查询疾病 - * - * @param id 疾病主键 - * @return 疾病 - */ - @Override - public SwDisease selectSwDiseaseById(Long id) - { - return swDiseaseMapper.selectSwDiseaseById(id); - } - - /** - * 查询疾病列表 - * - * @param swDisease 疾病 - * @return 疾病 - */ - @Override - public List selectSwDiseaseList(SwDisease swDisease) - { - return swDiseaseMapper.selectSwDiseaseList(swDisease); - } - - /** - * 新增疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - @Override - public int insertSwDisease(SwDisease swDisease) - { - return swDiseaseMapper.insertSwDisease(swDisease); - } - - /** - * 修改疾病 - * - * @param swDisease 疾病 - * @return 结果 - */ - @Override - public int updateSwDisease(SwDisease swDisease) - { - return swDiseaseMapper.updateSwDisease(swDisease); - } - - /** - * 批量删除疾病 - * - * @param ids 需要删除的疾病主键 - * @return 结果 - */ - @Override - public int deleteSwDiseaseByIds(Long[] ids) - { - return swDiseaseMapper.deleteSwDiseaseByIds(ids); - } - - /** - * 删除疾病信息 - * - * @param id 疾病主键 - * @return 结果 - */ - @Override - public int deleteSwDiseaseById(Long id) - { - return swDiseaseMapper.deleteSwDiseaseById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java deleted file mode 100644 index 2e1b20a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicType; -import com.zhyc.module.biosafety.mapper.SwMedicTypeMapper; -import com.zhyc.module.biosafety.service.ISwMedicTypeService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 药品类型Service业务层处理 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Service -public class SwMedicTypeServiceImpl implements ISwMedicTypeService -{ - @Autowired - private SwMedicTypeMapper swMedicTypeMapper; - - /** - * 查询药品类型 - * - * @param id 药品类型主键 - * @return 药品类型 - */ - @Override - public SwMedicType selectSwMedicTypeById(Long id) - { - return swMedicTypeMapper.selectSwMedicTypeById(id); - } - - /** - * 查询药品类型列表 - * - * @param swMedicType 药品类型 - * @return 药品类型 - */ - @Override - public List selectSwMedicTypeList(SwMedicType swMedicType) - { - return swMedicTypeMapper.selectSwMedicTypeList(swMedicType); - } - - /** - * 新增药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - @Override - public int insertSwMedicType(SwMedicType swMedicType) - { - return swMedicTypeMapper.insertSwMedicType(swMedicType); - } - - /** - * 修改药品类型 - * - * @param swMedicType 药品类型 - * @return 结果 - */ - @Override - public int updateSwMedicType(SwMedicType swMedicType) - { - return swMedicTypeMapper.updateSwMedicType(swMedicType); - } - - /** - * 批量删除药品类型 - * - * @param ids 需要删除的药品类型主键 - * @return 结果 - */ - @Override - public int deleteSwMedicTypeByIds(Long[] ids) - { - return swMedicTypeMapper.deleteSwMedicTypeByIds(ids); - } - - /** - * 删除药品类型信息 - * - * @param id 药品类型主键 - * @return 结果 - */ - @Override - public int deleteSwMedicTypeById(Long id) - { - return swMedicTypeMapper.deleteSwMedicTypeById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java deleted file mode 100644 index 78d9ba5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwMedicine; -import com.zhyc.module.biosafety.mapper.SwMedicineMapper; -import com.zhyc.module.biosafety.service.ISwMedicineService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 药品Service业务层处理 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Service -public class SwMedicineServiceImpl implements ISwMedicineService -{ - @Autowired - private SwMedicineMapper swMedicineMapper; - - /** - * 查询药品 - * - * @param id 药品主键 - * @return 药品 - */ - @Override - public SwMedicine selectSwMedicineById(Long id) - { - return swMedicineMapper.selectSwMedicineById(id); - } - - /** - * 查询药品列表 - * - * @param swMedicine 药品 - * @return 药品 - */ - @Override - public List selectSwMedicineList(SwMedicine swMedicine) - { - return swMedicineMapper.selectSwMedicineList(swMedicine); - } - - /** - * 新增药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - @Override - public int insertSwMedicine(SwMedicine swMedicine) - { - return swMedicineMapper.insertSwMedicine(swMedicine); - } - - /** - * 修改药品 - * - * @param swMedicine 药品 - * @return 结果 - */ - @Override - public int updateSwMedicine(SwMedicine swMedicine) - { - return swMedicineMapper.updateSwMedicine(swMedicine); - } - - /** - * 批量删除药品 - * - * @param ids 需要删除的药品主键 - * @return 结果 - */ - @Override - public int deleteSwMedicineByIds(Long[] ids) - { - return swMedicineMapper.deleteSwMedicineByIds(ids); - } - - /** - * 删除药品信息 - * - * @param id 药品主键 - * @return 结果 - */ - @Override - public int deleteSwMedicineById(Long id) - { - return swMedicineMapper.deleteSwMedicineById(id); - } -} 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 deleted file mode 100644 index d5d06f9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.module.biosafety.service.ISwMedicineUsageService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import java.util.ArrayList; -import com.zhyc.common.utils.StringUtils; -import org.springframework.transaction.annotation.Transactional; -import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; -import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; -import com.zhyc.module.biosafety.domain.SwMedicineUsage; - -/** - * 药品使用记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Service -public class SwMedicineUsageServiceImpl implements ISwMedicineUsageService -{ - @Autowired - private SwMedicineUsageMapper swMedicineUsageMapper; - - /** - * 查询药品使用记录 - * - * @param id 药品使用记录主键 - * @return 药品使用记录 - */ - @Override - public SwMedicineUsage selectSwMedicineUsageById(Integer id) - { - return swMedicineUsageMapper.selectSwMedicineUsageById(id); - } - - /** - * 查询药品使用记录列表 - * - * @param swMedicineUsage 药品使用记录 - * @return 药品使用记录 - */ - @Override - public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage) - { - return swMedicineUsageMapper.selectSwMedicineUsageList(swMedicineUsage); - } - - /** - * 新增药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - @Transactional - @Override - public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage) - { - String username = SecurityUtils.getUsername(); - swMedicineUsage.setCreateBy(username); - swMedicineUsage.setCreateTime(DateUtils.getNowDate()); - int rows = swMedicineUsageMapper.insertSwMedicineUsage(swMedicineUsage); - insertSwMedicineUsageDetails(swMedicineUsage); - return swMedicineUsage.getId(); - } - - /** - * 修改药品使用记录 - * - * @param swMedicineUsage 药品使用记录 - * @return 结果 - */ - @Transactional - @Override - public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage) - { - String username = SecurityUtils.getUsername(); - swMedicineUsage.setUpdateBy(username); - swMedicineUsage.setUpdateTime(DateUtils.getNowDate()); - swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(swMedicineUsage.getId()); - insertSwMedicineUsageDetails(swMedicineUsage); - return swMedicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); - } - - /** - * 批量删除药品使用记录 - * - * @param ids 需要删除的药品使用记录主键 - * @return 结果 - */ - @Transactional - @Override - public int deleteSwMedicineUsageByIds(Long[] ids) - { - swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsages(ids); - return swMedicineUsageMapper.deleteSwMedicineUsageByIds(ids); - } - - /** - * 删除药品使用记录信息 - * - * @param id 药品使用记录主键 - * @return 结果 - */ - @Transactional - @Override - public int deleteSwMedicineUsageById(Integer id) - { - swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(id); - return swMedicineUsageMapper.deleteSwMedicineUsageById(id); - } - - /** - * 新增药品使用记录详情信息 - * - * @param swMedicineUsage 药品使用记录对象 - */ - public void insertSwMedicineUsageDetails(SwMedicineUsage swMedicineUsage) - { - List swMedicineUsageDetailsList = swMedicineUsage.getSwMedicineUsageDetailsList(); - Integer id = swMedicineUsage.getId(); - if (StringUtils.isNotNull(swMedicineUsageDetailsList)) - { - List list = new ArrayList(); - for (SwMedicineUsageDetails swMedicineUsageDetails : swMedicineUsageDetailsList) - { - swMedicineUsageDetails.setMediUsage(id); - list.add(swMedicineUsageDetails); - } - if (list.size() > 0) - { - swMedicineUsageMapper.batchSwMedicineUsageDetails(list); - } - } - } -} 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 deleted file mode 100644 index 59841b8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.module.biosafety.domain.SwPresDetail; -import com.zhyc.module.biosafety.domain.SwPrescription; -import com.zhyc.module.biosafety.mapper.SwPrescriptionMapper; -import com.zhyc.module.biosafety.service.ISwPrescriptionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import java.util.ArrayList; -import com.zhyc.common.utils.StringUtils; -import org.springframework.transaction.annotation.Transactional; - -/** - * 处方Service业务层处理 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Service -public class SwPrescriptionServiceImpl implements ISwPrescriptionService -{ - @Autowired - private SwPrescriptionMapper swPrescriptionMapper; - - /** - * 查询处方 - * - * @param id 处方主键 - * @return 处方 - */ - @Override - public SwPrescription selectSwPrescriptionById(Long id) - { - return swPrescriptionMapper.selectSwPrescriptionById(id); - } - - /** - * 查询处方列表 - * - * @param swPrescription 处方 - * @return 处方 - */ - @Override - public List selectSwPrescriptionList(SwPrescription swPrescription) - { - return swPrescriptionMapper.selectSwPrescriptionList(swPrescription); - } - - /** - * 新增处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - @Transactional - @Override - public int insertSwPrescription(SwPrescription swPrescription) - { - String username = SecurityUtils.getUsername(); - swPrescription.setCreateBy(username); - swPrescription.setCreateTime(DateUtils.getNowDate()); - int rows = swPrescriptionMapper.insertSwPrescription(swPrescription); - insertSwPresDetail(swPrescription); - return rows; - } - - /** - * 修改处方 - * - * @param swPrescription 处方 - * @return 结果 - */ - @Transactional - @Override - public int updateSwPrescription(SwPrescription swPrescription) - { - String username = SecurityUtils.getUsername(); - swPrescription.setUpdateBy(username); - swPrescription.setUpdateTime(DateUtils.getNowDate()); - swPrescriptionMapper.deleteSwPresDetailByPersId(swPrescription.getId()); - insertSwPresDetail(swPrescription); - return swPrescriptionMapper.updateSwPrescription(swPrescription); - } - - /** - * 批量删除处方 - * - * @param ids 需要删除的处方主键 - * @return 结果 - */ - @Transactional - @Override - public int deleteSwPrescriptionByIds(Long[] ids) - { - swPrescriptionMapper.deleteSwPresDetailByPersIds(ids); - return swPrescriptionMapper.deleteSwPrescriptionByIds(ids); - } - - /** - * 删除处方信息 - * - * @param id 处方主键 - * @return 结果 - */ - @Transactional - @Override - public int deleteSwPrescriptionById(Long id) - { - swPrescriptionMapper.deleteSwPresDetailByPersId(id); - return swPrescriptionMapper.deleteSwPrescriptionById(id); - } - - /** - * 新增处方详情信息 - * - * @param swPrescription 处方对象 - */ - public void insertSwPresDetail(SwPrescription swPrescription) - { - List swPresDetailList = swPrescription.getSwPresDetailList(); - Long id = swPrescription.getId(); - if (StringUtils.isNotNull(swPresDetailList)) - { - List list = new ArrayList(); - for (SwPresDetail swPresDetail : swPresDetailList) - { - swPresDetail.setPersId(id); - list.add(swPresDetail); - } - if (list.size() > 0) - { - swPrescriptionMapper.batchSwPresDetail(list); - } - } - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java deleted file mode 100644 index 513c76d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwUnit; -import com.zhyc.module.biosafety.mapper.SwUnitMapper; -import com.zhyc.module.biosafety.service.ISwUnitService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - - -/** - * 药品单位Service业务层处理 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Service -public class SwUnitServiceImpl implements ISwUnitService -{ - @Autowired - private SwUnitMapper swUnitMapper; - - /** - * 查询药品单位 - * - * @param id 药品单位主键 - * @return 药品单位 - */ - @Override - public SwUnit selectSwUnitById(Long id) - { - return swUnitMapper.selectSwUnitById(id); - } - - /** - * 查询药品单位列表 - * - * @param swUnit 药品单位 - * @return 药品单位 - */ - @Override - public List selectSwUnitList(SwUnit swUnit) - { - return swUnitMapper.selectSwUnitList(swUnit); - } - - /** - * 新增药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - @Override - public int insertSwUnit(SwUnit swUnit) - { - return swUnitMapper.insertSwUnit(swUnit); - } - - /** - * 修改药品单位 - * - * @param swUnit 药品单位 - * @return 结果 - */ - @Override - public int updateSwUnit(SwUnit swUnit) - { - return swUnitMapper.updateSwUnit(swUnit); - } - - /** - * 批量删除药品单位 - * - * @param ids 需要删除的药品单位主键 - * @return 结果 - */ - @Override - public int deleteSwUnitByIds(Long[] ids) - { - return swUnitMapper.deleteSwUnitByIds(ids); - } - - /** - * 删除药品单位信息 - * - * @param id 药品单位主键 - * @return 结果 - */ - @Override - public int deleteSwUnitById(Long id) - { - return swUnitMapper.deleteSwUnitById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java deleted file mode 100644 index 203445b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -import java.util.List; - -import com.zhyc.module.biosafety.domain.SwUsage; -import com.zhyc.module.biosafety.mapper.SwUsageMapper; -import com.zhyc.module.biosafety.service.ISwUsageService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 药品使用方法Service业务层处理 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Service -public class SwUsageServiceImpl implements ISwUsageService -{ - @Autowired - private SwUsageMapper swUsageMapper; - - /** - * 查询药品使用方法 - * - * @param id 药品使用方法主键 - * @return 药品使用方法 - */ - @Override - public SwUsage selectSwUsageById(Long id) - { - return swUsageMapper.selectSwUsageById(id); - } - - /** - * 查询药品使用方法列表 - * - * @param swUsage 药品使用方法 - * @return 药品使用方法 - */ - @Override - public List selectSwUsageList(SwUsage swUsage) - { - return swUsageMapper.selectSwUsageList(swUsage); - } - - /** - * 新增药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - @Override - public int insertSwUsage(SwUsage swUsage) - { - return swUsageMapper.insertSwUsage(swUsage); - } - - /** - * 修改药品使用方法 - * - * @param swUsage 药品使用方法 - * @return 结果 - */ - @Override - public int updateSwUsage(SwUsage swUsage) - { - return swUsageMapper.updateSwUsage(swUsage); - } - - /** - * 批量删除药品使用方法 - * - * @param ids 需要删除的药品使用方法主键 - * @return 结果 - */ - @Override - public int deleteSwUsageByIds(Long[] ids) - { - return swUsageMapper.deleteSwUsageByIds(ids); - } - - /** - * 删除药品使用方法信息 - * - * @param id 药品使用方法主键 - * @return 结果 - */ - @Override - public int deleteSwUsageById(Long id) - { - return swUsageMapper.deleteSwUsageById(id); - } -} 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 deleted file mode 100644 index 7ecd944..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java +++ /dev/null @@ -1,176 +0,0 @@ -package com.zhyc.module.biosafety.service.impl; - -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.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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.biosafety.mapper.TreatmentMapper; -import com.zhyc.module.biosafety.domain.Treatment; -import com.zhyc.module.biosafety.service.ITreatmentService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 治疗记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class TreatmentServiceImpl implements ITreatmentService -{ - @Autowired - private TreatmentMapper treatmentMapper; - @Autowired - private SwMedicineUsageServiceImpl medicineUsageService; - @Autowired - private SwMedicineUsageMapper medicineUsageMapper; - @Autowired - private SheepFileMapper sheepFileMapper; - - /** - * 查询治疗记录 - * - * @param id 治疗记录主键 - * @return 治疗记录 - */ - @Override - public Treatment selectTreatmentById(Long id) - { - Treatment treatment = treatmentMapper.selectTreatmentById(id); -// 获取药品使用记录 - SwMedicineUsage swMedicineUsage = medicineUsageService.selectSwMedicineUsageById(treatment.getUsageId()); - treatment.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); - return treatment; - } - - /** - * 查询治疗记录列表 - * - * @param treatment 治疗记录 - * @return 治疗记录 - */ - @Override - public List selectTreatmentList(Treatment treatment) - { - return treatmentMapper.selectTreatmentList(treatment); - } - - /** - * 新增治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - @Override - @Transactional - public int insertTreatment(Treatment treatment) - { - String username = SecurityUtils.getUsername(); -// 使用记录的文件 - SwMedicineUsage medicineUsage = new SwMedicineUsage(); - medicineUsage.setSwMedicineUsageDetailsList(treatment.getUsageDetails()); - medicineUsage.setName("羊只治疗"); - medicineUsage.setUseType("4"); - medicineUsage.setCreateBy(username); - medicineUsage.setCreateTime(DateUtils.getNowDate()); -// 新增单挑数据 - if (treatment.getSheepId()!=null){ -// 药品使用记录 - Integer id=medicineUsageService.insertSwMedicineUsage(medicineUsage); -// 药品使用记录id - treatment.setUsageId(id); - treatment.setCreateTime(DateUtils.getNowDate()); - return treatmentMapper.insertTreatment(treatment); - -// 批量新增 - }else { - - List treatments = new ArrayList<>(); - treatment.setCreateTime(DateUtils.getNowDate()); - for (String sheepId : treatment.getSheepIds()) { - SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); - Treatment treat = new Treatment(); - BeanUtils.copyProperties(treatment, treat); - treat.setSheepId(Long.valueOf(sheepId)); - treat.setVariety(sheepFile.getVariety()); - treat.setSheepType(sheepFile.getName()); - treat.setMonthAge(sheepFile.getMonthAge()); - treat.setGender(String.valueOf(sheepFile.getGender())); - treat.setBreed(sheepFile.getBreed()); - treat.setParity(sheepFile.getParity()); - treat.setLactDay(sheepFile.getLactationDay()); - treat.setGestDay(sheepFile.getGestationDay()); -// 获取药品使用记录的id - Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); - System.out.println(medicineUsage); - System.out.println(usageId); - treat.setUsageId(usageId); - treatments.add(treat); - } -// 药品使用记录 - medicineUsage.setSwMedicineUsageDetailsList(treatment.getUsageDetails()); - - - return treatmentMapper.insertTreatmentList(treatments); - } - - } - - /** - * 修改治疗记录 - * - * @param treatment 治疗记录 - * @return 结果 - */ - @Override - @Transactional - public int updateTreatment(Treatment treatment) - { - String username = SecurityUtils.getUsername(); - for (SwMedicineUsageDetails usageDetail : treatment.getUsageDetails()) { - usageDetail.setMediUsage(treatment.getUsageId()); - } - medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(treatment.getUsageId()); - SwMedicineUsage swMedicineUsage = new SwMedicineUsage(); - swMedicineUsage.setId(treatment.getUsageId()); - swMedicineUsage.setUpdateBy(username); - medicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); - medicineUsageMapper.batchSwMedicineUsageDetails(treatment.getUsageDetails()); - treatment.setUpdateBy(username); - treatment.setUpdateTime(DateUtils.getNowDate()); - return treatmentMapper.updateTreatment(treatment); - } - - /** - * 批量删除治疗记录 - * - * @param ids 需要删除的治疗记录主键 - * @return 结果 - */ - @Override - public int deleteTreatmentByIds(Long[] ids) - { - return treatmentMapper.deleteTreatmentByIds(ids); - } - - /** - * 删除治疗记录信息 - * - * @param id 治疗记录主键 - * @return 结果 - */ - @Override - public int deleteTreatmentById(Long id) - { - return treatmentMapper.deleteTreatmentById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java deleted file mode 100644 index 4c1aa3f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.dairyProducts.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.dairyProducts.domain.NpFreshMilkInsp; -import com.zhyc.module.dairyProducts.service.INpFreshMilkInspService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 鲜奶生产,成品检验记录Controller - * - * @author ruoyi - * @date 2025-07-18 - */ -@RestController -@RequestMapping("/freshMilkTest/freshMilkTest") -public class NpFreshMilkInspController extends BaseController -{ - @Autowired - private INpFreshMilkInspService npFreshMilkInspService; - - /** - * 查询鲜奶生产,成品检验记录列表 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:list')") - @GetMapping("/list") - public TableDataInfo list(NpFreshMilkInsp npFreshMilkInsp) - { - startPage(); - List list = npFreshMilkInspService.selectNpFreshMilkInspList(npFreshMilkInsp); - return getDataTable(list); - } - - /** - * 导出鲜奶生产,成品检验记录列表 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:export')") - @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, NpFreshMilkInsp npFreshMilkInsp) - { - List list = npFreshMilkInspService.selectNpFreshMilkInspList(npFreshMilkInsp); - ExcelUtil util = new ExcelUtil(NpFreshMilkInsp.class); - util.exportExcel(response, list, "鲜奶生产,成品检验记录数据"); - } - - /** - * 获取鲜奶生产,成品检验记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(npFreshMilkInspService.selectNpFreshMilkInspById(id)); - } - - /** - * 新增鲜奶生产,成品检验记录 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:add')") - @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody NpFreshMilkInsp npFreshMilkInsp) - { - return toAjax(npFreshMilkInspService.insertNpFreshMilkInsp(npFreshMilkInsp)); - } - - /** - * 修改鲜奶生产,成品检验记录 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:edit')") - @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody NpFreshMilkInsp npFreshMilkInsp) - { - return toAjax(npFreshMilkInspService.updateNpFreshMilkInsp(npFreshMilkInsp)); - } - - /** - * 删除鲜奶生产,成品检验记录 - */ - @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:remove')") - @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(npFreshMilkInspService.deleteNpFreshMilkInspByIds(ids)); - } -} 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 deleted file mode 100644 index 44cbccb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletResponse; -import java.util.Date; -import java.util.List; -import java.util.Map; - -@RestController -@RequestMapping("/milkInOutStore") -public class NpMilkInOutStoreController extends BaseController { - - @Autowired - private INpMilkInOutStoreService service; - - /** 查询(日期区间)+ 动态列 */ - @PreAuthorize("@ss.hasPermi('milkInOutStore:list')") - @GetMapping("/list") - public TableDataInfo list( - @RequestParam(required=false) Date datetimeStart, - @RequestParam(required=false) Date datetimeEnd - ) { - startPage(); - List> rows = service.selectWithDynamicColumns(datetimeStart, datetimeEnd); - return getDataTable(rows); - } - - /** 导入 Excel */ - @Log(title="导入羊奶出入库", businessType=BusinessType.IMPORT) - @PreAuthorize("@ss.hasPermi('milkInOutStore:import')") - @PostMapping("/import") - public AjaxResult importExcel(@RequestParam("file") MultipartFile file) throws Exception { - List> list = service.parseImportExcel(file); - service.batchInsertFromRows(list); - return AjaxResult.success("导入成功"); - } - /** 导出 Excel */ - @PreAuthorize("@ss.hasPermi('milkInOutStore:export')") - @Log(title="导出羊奶出入库", businessType=BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, - @RequestParam(required=false) Date datetimeStart, - @RequestParam(required=false) Date datetimeEnd - ) { - List> rows = service.selectWithDynamicColumns(datetimeStart, datetimeEnd); - // 解决方案:强制转换并压制警告 - @SuppressWarnings("unchecked") - ExcelUtil> util = new ExcelUtil<>((Class>) (Class) Map.class); - } - - /** 获取可选列定义(饲喂来源 + 销售去向) */ - @PreAuthorize("@ss.hasPermi('milkInOutStore:cols')") - @GetMapping("/columns") - public AjaxResult getColumns(){ - return AjaxResult.success(service.getAllColumnOptions()); - } -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java deleted file mode 100644 index 32e7db8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -import java.util.Date; -import java.util.List; -import javax.servlet.http.HttpServletResponse; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -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.common.core.page.TableDataInfo; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; -import com.zhyc.module.dairyProducts.service.INpMilkProdClassesService; - -@RestController -@RequestMapping("/milkProdclasses/milkProdclasses") -public class NpMilkProdClassesController extends BaseController { - - @Autowired - private INpMilkProdClassesService npMilkProdClassesService; - - @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:list')") - @GetMapping("/list") - public TableDataInfo list( - @RequestParam(required = false) Date datetimeStart, - @RequestParam(required = false) Date datetimeEnd, - @RequestParam(required = false) String manageEarNo, // 改为单个字符串,模糊 - @RequestParam(required = false) String factory, - @RequestParam(required = false) Integer classes) { - startPage(); - List list = npMilkProdClassesService - .selectNpMilkProdClassesList(datetimeStart, datetimeEnd, - manageEarNo, factory, classes); - return getDataTable(list); - } - - @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:import')") - @Log(title = "班次产奶", businessType = BusinessType.IMPORT) - @PostMapping("/import") - public AjaxResult importData(MultipartFile file) { - try { - ExcelUtil util = new ExcelUtil<>(NpMilkProdClasses.class); - List list = util.importExcel(file.getInputStream()); - int rows = npMilkProdClassesService.importMilkProdClasses(list); - return success("成功导入 " + rows + " 行数据"); - } catch (Exception e) { - return error("导入失败:" + e.getMessage()); - } - } - - @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:export')") - @Log(title = "班次产奶", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, - @RequestParam(required = false) Date datetimeStart, - @RequestParam(required = false) Date datetimeEnd, - @RequestParam(required = false) String manageEarNos, - @RequestParam(required = false) String factory, - @RequestParam(required = false) Integer classes) { - List list = npMilkProdClassesService.selectNpMilkProdClassesList(datetimeStart, datetimeEnd, manageEarNos, factory, classes); - ExcelUtil util = new ExcelUtil<>(NpMilkProdClasses.class); - util.exportExcel(response, list, "班次产奶数据"); - } -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java deleted file mode 100644 index bf88fcd..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.dairyProducts.service.INpRawMilkInspeService; -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.dairyProducts.domain.NpRawMilkInspe; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 生乳检验记录Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/rawMilkTest/rawMilkTest") -public class NpRawMilkInspeController extends BaseController -{ - @Autowired - private INpRawMilkInspeService npRawMilkInspeService; - - /** - * 查询生乳检验记录列表 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:list')") - @GetMapping("/list") - public TableDataInfo list(NpRawMilkInspe npRawMilkInspe) - { - startPage(); - List list = npRawMilkInspeService.selectNpRawMilkInspeList(npRawMilkInspe); - return getDataTable(list); - } - - /** - * 导出生乳检验记录列表 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:export')") - @Log(title = "生乳检验记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, NpRawMilkInspe npRawMilkInspe) - { - List list = npRawMilkInspeService.selectNpRawMilkInspeList(npRawMilkInspe); - ExcelUtil util = new ExcelUtil(NpRawMilkInspe.class); - util.exportExcel(response, list, "生乳检验记录数据"); - } - - /** - * 获取生乳检验记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(npRawMilkInspeService.selectNpRawMilkInspeById(id)); - } - - /** - * 新增生乳检验记录 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:add')") - @Log(title = "生乳检验记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody NpRawMilkInspe npRawMilkInspe) - { - return toAjax(npRawMilkInspeService.insertNpRawMilkInspe(npRawMilkInspe)); - } - - /** - * 修改生乳检验记录 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:edit')") - @Log(title = "生乳检验记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody NpRawMilkInspe npRawMilkInspe) - { - return toAjax(npRawMilkInspeService.updateNpRawMilkInspe(npRawMilkInspe)); - } - - /** - * 删除生乳检验记录 - */ - @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:remove')") - @Log(title = "生乳检验记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(npRawMilkInspeService.deleteNpRawMilkInspeByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java deleted file mode 100644 index 0c2955d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.controller.BaseController; -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.dairyProducts.domain.NpSheepMilkAnalysis; -import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -@RestController -@RequestMapping("/dairyProducts/sheepMilkAnalysis") -public class NpSheepMilkAnalysisController extends BaseController { - - @Autowired - private INpSheepMilkAnalysisService npSheepMilkAnalysisService; - - /** - * 查询奶产量分析列表 - */ - @GetMapping("/list") - public TableDataInfo list(NpSheepMilkAnalysis analysis) { - startPage(); - List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); - return getDataTable(list); - } - - /** - * 获取单个分析记录详细信息 - */ - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return AjaxResult.success(npSheepMilkAnalysisService.selectNpSheepMilkAnalysisById(id)); - } - /** - * 新增奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody NpSheepMilkAnalysis analysis) { - return toAjax(npSheepMilkAnalysisService.insertNpSheepMilkAnalysis(analysis)); - } - - /** - * 修改奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody NpSheepMilkAnalysis analysis) { - return toAjax(npSheepMilkAnalysisService.updateNpSheepMilkAnalysis(analysis)); - } - - /** - * 删除奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(npSheepMilkAnalysisService.deleteNpSheepMilkAnalysisByIds(ids)); - } - - /** - * 导出奶产量分析记录 - */ - @Log(title = "奶产量分析", businessType = BusinessType.EXPORT) - @GetMapping("/export") - public AjaxResult export(NpSheepMilkAnalysis analysis) { - List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); - ExcelUtil util = new ExcelUtil<>(NpSheepMilkAnalysis.class); - return util.exportExcel(list, "奶产量分析数据"); - } -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java deleted file mode 100644 index fc7fda2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; -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.dairyProducts.service.INpYogurtInspService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 酸奶生产,成品检疫记录Controller - * - * @author ruoyi - * @date 2025-07-17 - */ -@RestController -@RequestMapping("/yogurtTest/yogurtTest") -public class NpYogurtInspController extends BaseController -{ - @Autowired - private INpYogurtInspService npYogurtInspService; - - /** - * 查询酸奶生产,成品检疫记录列表 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:list')") - @GetMapping("/list") - public TableDataInfo list(NpYogurtInsp npYogurtInsp) - { - startPage(); - List list = npYogurtInspService.selectNpYogurtInspList(npYogurtInsp); - return getDataTable(list); - } - - /** - * 导出酸奶生产,成品检疫记录列表 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:export')") - @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, NpYogurtInsp npYogurtInsp) - { - List list = npYogurtInspService.selectNpYogurtInspList(npYogurtInsp); - ExcelUtil util = new ExcelUtil(NpYogurtInsp.class); - util.exportExcel(response, list, "酸奶生产,成品检疫记录数据"); - } - - /** - * 获取酸奶生产,成品检疫记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(npYogurtInspService.selectNpYogurtInspById(id)); - } - - /** - * 新增酸奶生产,成品检疫记录 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:add')") - @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody NpYogurtInsp npYogurtInsp) - { - return toAjax(npYogurtInspService.insertNpYogurtInsp(npYogurtInsp)); - } - - /** - * 修改酸奶生产,成品检疫记录 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:edit')") - @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody NpYogurtInsp npYogurtInsp) - { - return toAjax(npYogurtInspService.updateNpYogurtInsp(npYogurtInsp)); - } - - /** - * 删除酸奶生产,成品检疫记录 - */ - @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:remove')") - @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(npYogurtInspService.deleteNpYogurtInspByIds(ids)); - } -} 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 deleted file mode 100644 index 9447a07..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java +++ /dev/null @@ -1,23 +0,0 @@ -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 { - - @Autowired - private IRanchService ranchService; - - @GetMapping("/list") - public AjaxResult list() { - return success(ranchService.selectAllRanch()); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java deleted file mode 100644 index bca0801..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.dairyProducts.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.dairyProducts.domain.XzDryMatterCorrection; -import com.zhyc.module.dairyProducts.service.IXzDryMatterCorrectionService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 干物质校正Controller - * - * @author ruoyi - * @date 2025-07-12 - */ -@RestController -@RequestMapping("/dryMatterCorrection/dryMatterCorrection") -public class XzDryMatterCorrectionController extends BaseController -{ - @Autowired - private IXzDryMatterCorrectionService xzDryMatterCorrectionService; - - /** - * 查询干物质校正列表 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:list')") - @GetMapping("/list") - public TableDataInfo list(XzDryMatterCorrection xzDryMatterCorrection) - { - startPage(); - List list = xzDryMatterCorrectionService.selectXzDryMatterCorrectionList(xzDryMatterCorrection); - return getDataTable(list); - } - - /** - * 导出干物质校正列表 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:export')") - @Log(title = "干物质校正", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, XzDryMatterCorrection xzDryMatterCorrection) - { - List list = xzDryMatterCorrectionService.selectXzDryMatterCorrectionList(xzDryMatterCorrection); - ExcelUtil util = new ExcelUtil(XzDryMatterCorrection.class); - util.exportExcel(response, list, "干物质校正数据"); - } - - /** - * 获取干物质校正详细信息 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(xzDryMatterCorrectionService.selectXzDryMatterCorrectionById(id)); - } - - /** - * 新增干物质校正 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:add')") - @Log(title = "干物质校正", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody XzDryMatterCorrection xzDryMatterCorrection) - { - return toAjax(xzDryMatterCorrectionService.insertXzDryMatterCorrection(xzDryMatterCorrection)); - } - - /** - * 修改干物质校正 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:edit')") - @Log(title = "干物质校正", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody XzDryMatterCorrection xzDryMatterCorrection) - { - return toAjax(xzDryMatterCorrectionService.updateXzDryMatterCorrection(xzDryMatterCorrection)); - } - - /** - * 删除干物质校正 - */ - @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:remove')") - @Log(title = "干物质校正", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(xzDryMatterCorrectionService.deleteXzDryMatterCorrectionByIds(ids)); - } -} 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 deleted file mode 100644 index ee52381..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.zhyc.module.dairyProducts.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.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 - * - * @author ruoyi - * @date 2025-07-14 - */ -@RestController -@RequestMapping("/parityCorrection/parityCorrection") -public class XzParityCorrectionController extends BaseController -{ - @Autowired - private IXzParityCorrectionService xzParityCorrectionService; - - /** - * 查询胎次校正列表 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:list')") -// @GetMapping("/list") -// public TableDataInfo list(XzParityCorrection xzParityCorrection) -// { -// startPage(); -// List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); -// return getDataTable(list); -// } - /** - * 获取全部胎次校正(无需分页,供下拉/列表直接显示) - */ - @GetMapping("/listAll") - public AjaxResult listAll(XzParityCorrection xzParityCorrection){ - List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); - return success(list); // 直接返回数组 - } - - /** - * 导出胎次校正列表 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:export')") - @Log(title = "胎次校正", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, XzParityCorrection xzParityCorrection) - { - List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); - ExcelUtil util = new ExcelUtil(XzParityCorrection.class); - util.exportExcel(response, list, "胎次校正数据"); - } - - /** - * 获取胎次校正详细信息 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(xzParityCorrectionService.selectXzParityCorrectionById(id)); - } - - /** - * 新增胎次校正 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:add')") - @Log(title = "胎次校正", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody XzParityCorrection xzParityCorrection) - { - return toAjax(xzParityCorrectionService.insertXzParityCorrection(xzParityCorrection)); - } - - /** - * 修改胎次校正 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:edit')") - @Log(title = "胎次校正", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody XzParityCorrection xzParityCorrection) - { - return toAjax(xzParityCorrectionService.updateXzParityCorrection(xzParityCorrection)); - } - - /** - * 删除胎次校正 - */ - @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:remove')") - @Log(title = "胎次校正", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(xzParityCorrectionService.deleteXzParityCorrectionByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java deleted file mode 100644 index ace94f9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.dairyProducts.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; -import com.zhyc.module.dairyProducts.service.IXzWegihCorrectionService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 称重校正Controller - * - * @author ruoyi - * @date 2025-07-12 - */ -@RestController -@RequestMapping("/weightCorrection/weightCorrection") -public class XzWegihCorrectionController extends BaseController -{ - @Autowired - private IXzWegihCorrectionService xzWegihCorrectionService; - - /** - * 查询称重校正列表 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:list')") - @GetMapping("/list") - public TableDataInfo list(XzWegihCorrection xzWegihCorrection) - { - startPage(); - List list = xzWegihCorrectionService.selectXzWegihCorrectionList(xzWegihCorrection); - return getDataTable(list); - } - - /** - * 导出称重校正列表 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:export')") - @Log(title = "称重校正", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, XzWegihCorrection xzWegihCorrection) - { - List list = xzWegihCorrectionService.selectXzWegihCorrectionList(xzWegihCorrection); - ExcelUtil util = new ExcelUtil(XzWegihCorrection.class); - util.exportExcel(response, list, "称重校正数据"); - } - - /** - * 获取称重校正详细信息 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(xzWegihCorrectionService.selectXzWegihCorrectionById(id)); - } - - /** - * 新增称重校正 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:add')") - @Log(title = "称重校正", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody XzWegihCorrection xzWegihCorrection) - { - return toAjax(xzWegihCorrectionService.insertXzWegihCorrection(xzWegihCorrection)); - } - - /** - * 修改称重校正 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:edit')") - @Log(title = "称重校正", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody XzWegihCorrection xzWegihCorrection) - { - return toAjax(xzWegihCorrectionService.updateXzWegihCorrection(xzWegihCorrection)); - } - - /** - * 删除称重校正 - */ - @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:remove')") - @Log(title = "称重校正", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(xzWegihCorrectionService.deleteXzWegihCorrectionByIds(ids)); - } -} 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 deleted file mode 100644 index 64e71f6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -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; - -/** - * 鲜奶生产,成品检验记录对象 np_fresh_milk_insp - * - * @author ruoyi - * @date 2025-07-18 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class NpFreshMilkInsp extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 来源 */ - @Excel(name = "来源") - private String source; - - /** 检测日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 脂肪g/100g */ - @Excel(name = "脂肪g/100g") - private Double fat; - - /** 蛋白质g/100g */ - @Excel(name = "蛋白质g/100g") - private Double protein; - - /** 非脂g/100g */ - @Excel(name = "非脂g/100g") - private Double nonFat; - - /** 酸度oT */ - @Excel(name = "酸度oT") - private Double acidity; - - /** 菌落总数CFU/ml_1 */ - @Excel(name = "菌落总数CFU/ml_1") - private Double bacterialColony1; - - /** 菌落总数CFU/ml_2 */ - @Excel(name = "菌落总数CFU/ml_2") - private Double bacterialColony2; - - /** 菌落总数CFU/ml_3 */ - @Excel(name = "菌落总数CFU/ml_3") - private Double bacterialColony3; - - /** 菌落总数CFU/ml_4 */ - @Excel(name = "菌落总数CFU/ml_4") - private Double bacterialColony4; - - /** 菌落总数CFU/ml_5 */ - @Excel(name = "菌落总数CFU/ml_5") - private Double bacterialColony5; - - /** 大肠菌群CFU/ml */ - @Excel(name = "大肠菌群CFU/ml") - private Double coli; - - /** 乳铁蛋白(mg/L) */ - @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") - private Double lactoferrin; - - /** 免疫球蛋白(mg/l) */ - @Excel(name = "免疫球蛋白", readConverterExp = "m=g/l") - private Double ig; - - /** 备注 */ - @Excel(name = "备注") - private String commnet; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java deleted file mode 100644 index 770ace1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java +++ /dev/null @@ -1,128 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -import java.math.BigDecimal; -import java.util.Date; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; - -public class NpMilkInOutStore extends BaseEntity { - private Integer id; - - @Excel(name = "日期") - private Date datetime; - - @Excel(name = "羊数") - private Integer num; - - @Excel(name = "初乳羊") - private Integer colostSheep; - - @Excel(name = "商乳入库") - private BigDecimal commercialIntake; - - @Excel(name = "抗乳入库") - private BigDecimal antiIntake; - - @Excel(name = "初乳入库") - private BigDecimal colostIntake; - - @Excel(name = "入库小计") - private BigDecimal intakeTotal; - - @Excel(name = "商乳实验用奶") - private BigDecimal commercialTest; - - @Excel(name = "初乳实验用奶") - private BigDecimal colostTest; - - @Excel(name = "商乳调拨出库") - private BigDecimal transferCommercial; - - @Excel(name = "抗乳调拨出库") - private BigDecimal transferAnti; - - @Excel(name = "初乳调拨出库") - private BigDecimal transferColost; - - @Excel(name = "调拨小计") - private BigDecimal transferTotal; - - @Excel(name = "损耗") - private BigDecimal loss; - - @Excel(name = "商乳库存") - private BigDecimal stockCommercial; - - @Excel(name = "抗乳库存") - private BigDecimal stockAnti; - - @Excel(name = "初乳库存") - private BigDecimal colost; - - @Excel(name = "爱特退回鲜奶") - private BigDecimal returnFresh; - - @Excel(name = "爱特退回酸奶") - private BigDecimal returnYogurt; - - // --- getters and setters --- - public Integer getId() { return id; } - public void setId(Integer id) { this.id = id; } - - public Date getDatetime() { return datetime; } - public void setDatetime(Date datetime) { this.datetime = datetime; } - - public Integer getNum() { return num; } - public void setNum(Integer num) { this.num = num; } - - public Integer getColostSheep() { return colostSheep; } - public void setColostSheep(Integer colostSheep) { this.colostSheep = colostSheep; } - - public BigDecimal getCommercialIntake() { return commercialIntake; } - public void setCommercialIntake(BigDecimal commercialIntake) { this.commercialIntake = commercialIntake; } - - public BigDecimal getAntiIntake() { return antiIntake; } - public void setAntiIntake(BigDecimal antiIntake) { this.antiIntake = antiIntake; } - - public BigDecimal getColostIntake() { return colostIntake; } - public void setColostIntake(BigDecimal colostIntake) { this.colostIntake = colostIntake; } - - public BigDecimal getIntakeTotal() { return intakeTotal; } - public void setIntakeTotal(BigDecimal intakeTotal) { this.intakeTotal = intakeTotal; } - - public BigDecimal getCommercialTest() { return commercialTest; } - public void setCommercialTest(BigDecimal commercialTest) { this.commercialTest = commercialTest; } - - public BigDecimal getColostTest() { return colostTest; } - public void setColostTest(BigDecimal colostTest) { this.colostTest = colostTest; } - - public BigDecimal getTransferCommercial() { return transferCommercial; } - public void setTransferCommercial(BigDecimal transferCommercial) { this.transferCommercial = transferCommercial; } - - public BigDecimal getTransferAnti() { return transferAnti; } - public void setTransferAnti(BigDecimal transferAnti) { this.transferAnti = transferAnti; } - - public BigDecimal getTransferColost() { return transferColost; } - public void setTransferColost(BigDecimal transferColost) { this.transferColost = transferColost; } - - public BigDecimal getTransferTotal() { return transferTotal; } - public void setTransferTotal(BigDecimal transferTotal) { this.transferTotal = transferTotal; } - - public BigDecimal getLoss() { return loss; } - public void setLoss(BigDecimal loss) { this.loss = loss; } - - public BigDecimal getStockCommercial() { return stockCommercial; } - public void setStockCommercial(BigDecimal stockCommercial) { this.stockCommercial = stockCommercial; } - - public BigDecimal getStockAnti() { return stockAnti; } - public void setStockAnti(BigDecimal stockAnti) { this.stockAnti = stockAnti; } - - public BigDecimal getColost() { return colost; } - public void setColost(BigDecimal colost) { this.colost = colost; } - - public BigDecimal getReturnFresh() { return returnFresh; } - public void setReturnFresh(BigDecimal returnFresh) { this.returnFresh = returnFresh; } - - public BigDecimal getReturnYogurt() { return returnYogurt; } - public void setReturnYogurt(BigDecimal returnYogurt) { this.returnYogurt = returnYogurt; } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java deleted file mode 100644 index 19e2ce9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -import java.io.Serializable; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.zhyc.common.annotation.Excel; - - - -public class NpMilkProdClasses implements Serializable { - private static final long serialVersionUID = 1L; - - private Long id; // 主键ID - private Date createTime; // 创建时间 - private Date updateTime; // 更新时间 - - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "日期") - private Date datetime; - - @Excel(name = "管理耳号") - private String manageEarNo; - - @Excel(name = "电子耳号") - private String electronicEarNo; - - @Excel(name = "胎次") - private Integer parity; - - @Excel(name = "厂区") - private String factory; - - @Excel(name = "班次") - private Integer classes; - - @Excel(name = "班次产奶量") - private Double milk; - - @Excel(name = "班次校正奶量") - private Double correctedMilk; - - private String sheepId; - - // Getters and Setters - public Long getId() { return id; } - public void setId(Long id) { this.id = id; } - - public Date getCreateTime() { return createTime; } - public void setCreateTime(Date createTime) { this.createTime = createTime; } - - public Date getUpdateTime() { return updateTime; } - public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } - - public Date getDatetime() { return datetime; } - public void setDatetime(Date datetime) { this.datetime = datetime; } - - public String getManageEarNo() { return manageEarNo; } - public void setManageEarNo(String manageEarNo) { this.manageEarNo = manageEarNo; } - - public String getElectronicEarNo() { return electronicEarNo; } - public void setElectronicEarNo(String electronicEarNo) { this.electronicEarNo = electronicEarNo; } - - public Integer getParity() { return parity; } - public void setParity(Integer parity) { this.parity = parity; } - - public String getFactory() { return factory; } - public void setFactory(String factory) { this.factory = factory; } - - public Integer getClasses() { return classes; } - public void setClasses(Integer classes) { this.classes = classes; } - - public Double getMilk() { return milk; } - public void setMilk(Double milk) { this.milk = milk; } - - public Double getCorrectedMilk() { return correctedMilk; } - public void setCorrectedMilk(Double correctedMilk) { this.correctedMilk = correctedMilk; } - - public String getSheepId() { return sheepId; } - public void setSheepId(String sheepId) { this.sheepId = sheepId; } -} \ No newline at end of file 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 deleted file mode 100644 index 0c71d35..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java +++ /dev/null @@ -1,456 +0,0 @@ -//package com.zhyc.module.dairyProducts.rawMilkTest.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; -// -///** -// * 生乳检验记录对象 np_raw_milk_inspe -// * -// * @author ruoyi -// * @date 2025-07-15 -// */ -//public class NpRawMilkInspe extends BaseEntity -//{ -// private static final long serialVersionUID = 1L; -// -// /** $column.columnComment */ -// private Long id; -// -// /** 检测日期 */ -// @JsonFormat(pattern = "yyyy-MM-dd") -// @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") -// private Date datetime; -// -// /** 来源 */ -// @Excel(name = "来源") -// private String source; -// -// /** 冰点(摄氏度) */ -// @Excel(name = "冰点", readConverterExp = "摄=氏度") -// private Double freeze; -// -// /** 相对密度(20摄氏度/40摄氏度) */ -// @Excel(name = "相对密度", readConverterExp = "2=0摄氏度/40摄氏度") -// private Double density; -// -// /** 脂肪g/100g */ -// @Excel(name = "脂肪g/100g") -// private Double fat; -// -// /** 蛋白质g/100g */ -// @Excel(name = "蛋白质g/100g") -// private Double protein; -// -// /** 非脂g/100g */ -// @Excel(name = "非脂g/100g") -// private Double nonFat; -// -// /** 干物质mg/100g */ -// @Excel(name = "干物质mg/100g") -// private Double dryMatter; -// -// /** 杂物质mg/100g */ -// @Excel(name = "杂物质mg/100g") -// private Double impurity; -// -// /** 乳糖g/100g */ -// @Excel(name = "乳糖g/100g") -// private Double lactose; -// -// /** 灰度g/100g */ -// @Excel(name = "灰度g/100g") -// private Double ashContent; -// -// /** 酸度 */ -// @Excel(name = "酸度") -// private Double acidity; -// -// /** ph */ -// @Excel(name = "ph") -// private Double ph; -// -// /** 菌落总数(CFU/g) */ -// @Excel(name = "菌落总数", readConverterExp = "C=FU/g") -// private Double bacterialColony; -// -// /** 乳铁蛋白(mg/L) */ -// @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") -// private Double lactoferrin; -// -// /** 免疫球蛋白(mg/L) */ -// @Excel(name = "免疫球蛋白", readConverterExp = "m=g/L") -// private Double ig; -// -// /** 体细胞(scc/ml) */ -// @Excel(name = "体细胞", readConverterExp = "s=cc/ml") -// private Double somaticCell; -// -// /** 尿素氮 */ -// @Excel(name = "尿素氮") -// private Double usea; -// -// /** 脂蛋比 */ -// @Excel(name = "脂蛋比") -// private Double fatRatio; -// -// /** 备注 */ -// @Excel(name = "备注") -// private String comment; -// -// public void setId(Long id) -// { -// this.id = id; -// } -// -// public Long getId() -// { -// return id; -// } -// -// public void setDatetime(Date datetime) -// { -// this.datetime = datetime; -// } -// -// public Date getDatetime() -// { -// return datetime; -// } -// -// public void setSource(String source) -// { -// this.source = source; -// } -// -// public String getSource() -// { -// return source; -// } -// -// public void setFreeze(Double freeze) -// { -// this.freeze = freeze; -// } -// -// public Double getFreeze() -// { -// return freeze; -// } -// -// public void setDensity(Double density) -// { -// this.density = density; -// } -// -// public Double getDensity() -// { -// return density; -// } -// -// public void setFat(Double fat) -// { -// this.fat = fat; -// } -// -// public Double getFat() -// { -// return fat; -// } -// -// public void setProtein(Double protein) -// { -// this.protein = protein; -// } -// -// public Double getProtein() -// { -// return protein; -// } -// -// public void setNonFat(Double nonFat) -// { -// this.nonFat = nonFat; -// } -// -// public Double getNonFat() -// { -// return nonFat; -// } -// -// public void setDryMatter(Double dryMatter) -// { -// this.dryMatter = dryMatter; -// } -// -// public Double getDryMatter() -// { -// return dryMatter; -// } -// -// public void setImpurity(Double impurity) -// { -// this.impurity = impurity; -// } -// -// public Double getImpurity() -// { -// return impurity; -// } -// -// public void setLactose(Double lactose) -// { -// this.lactose = lactose; -// } -// -// public Double getLactose() -// { -// return lactose; -// } -// -// public void setAshContent(Double ashContent) -// { -// this.ashContent = ashContent; -// } -// -// public Double getAshContent() -// { -// return ashContent; -// } -// -// public void setAcidity(Double acidity) -// { -// this.acidity = acidity; -// } -// -// public Double getAcidity() -// { -// return acidity; -// } -// -// public void setPh(Double ph) -// { -// this.ph = ph; -// } -// -// public Double getPh() -// { -// return ph; -// } -// -// public void setBacterialColony(Double bacterialColony) -// { -// this.bacterialColony = bacterialColony; -// } -// -// public Double getBacterialColony() -// { -// return bacterialColony; -// } -// -// public void setLactoferrin(Double lactoferrin) -// { -// this.lactoferrin = lactoferrin; -// } -// -// public Double getLactoferrin() -// { -// return lactoferrin; -// } -// -// public void setIg(Double ig) -// { -// this.ig = ig; -// } -// -// public Double getIg() -// { -// return ig; -// } -// -// public void setSomaticCell(Double somaticCell) -// { -// this.somaticCell = somaticCell; -// } -// -// public Double getSomaticCell() -// { -// return somaticCell; -// } -// -// public void setUsea(Double usea) -// { -// this.usea = usea; -// } -// -// public Double getUsea() -// { -// return usea; -// } -// -// public void setFatRatio(Double fatRatio) -// { -// this.fatRatio = fatRatio; -// } -// -// public Double getFatRatio() -// { -// return fatRatio; -// } -// -// 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("datetime", getDatetime()) -// .append("source", getSource()) -// .append("freeze", getFreeze()) -// .append("density", getDensity()) -// .append("fat", getFat()) -// .append("protein", getProtein()) -// .append("nonFat", getNonFat()) -// .append("dryMatter", getDryMatter()) -// .append("impurity", getImpurity()) -// .append("lactose", getLactose()) -// .append("ashContent", getAshContent()) -// .append("acidity", getAcidity()) -// .append("ph", getPh()) -// .append("bacterialColony", getBacterialColony()) -// .append("lactoferrin", getLactoferrin()) -// .append("ig", getIg()) -// .append("somaticCell", getSomaticCell()) -// .append("usea", getUsea()) -// .append("fatRatio", getFatRatio()) -// .append("comment", getComment()) -// .append("createBy", getCreateBy()) -// .append("createTime", getCreateTime()) -// .toString(); -// } -//} -package com.zhyc.module.dairyProducts.domain; - -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; - -/** - * 生乳检验记录对象 np_raw_milk_inspe - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class NpRawMilkInspe extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 检测日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 来源 */ - @Excel(name = "来源") - private String source; - - /** 冰点(摄氏度) */ - @Excel(name = "冰点", readConverterExp = "摄=氏度") - private Double freeze; - - /** 相对密度(20摄氏度/40摄氏度) */ - @Excel(name = "相对密度", readConverterExp = "2=0摄氏度/40摄氏度") - private Double density; - - /** 脂肪g/100g */ - @Excel(name = "脂肪g/100g") - private Double fat; - - /** 蛋白质g/100g */ - @Excel(name = "蛋白质g/100g") - private Double protein; - - /** 非脂g/100g */ - @Excel(name = "非脂g/100g") - private Double nonFat; - - /** 干物质mg/100g */ - @Excel(name = "干物质mg/100g") - private Double dryMatter; - - /** 杂质度mg/100g */ - @Excel(name = "杂质度mg/100g") - private Double impurityDegree; - - /** 乳糖g/100g */ - @Excel(name = "乳糖g/100g") - private Double lactose; - - /** 灰度g/100g */ - @Excel(name = "灰度g/100g") - private Double ashContent; - - /** 酸度 */ - @Excel(name = "酸度") - private Double acidity; - - /** ph */ - @Excel(name = "ph") - private Double ph; - - /** 菌落总数(CFU/g) */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialColony; - - /** 乳铁蛋白(mg/L) */ - @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") - private Double lactoferrin; - - /** 免疫球蛋白(mg/L) */ - @Excel(name = "免疫球蛋白", readConverterExp = "m=g/L") - private Double ig; - - /** 体细胞(scc/ml) */ - @Excel(name = "体细胞", readConverterExp = "s=cc/ml") - private Double somaticCell; - - /** 尿素氮 */ - @Excel(name = "尿素氮") - private Double usea; - - /** 脂蛋比 */ - @Excel(name = "脂蛋比") - private Double fatRatio; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 创建时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date createTime; - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java deleted file mode 100644 index 05972f6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -import java.util.Date; -public class NpSheepMilkAnalysis { - private String sheepId; - private String manageEarTag; - private String variety; - private Date milkingStartTime; - private Date dryEndTime; - private Integer milkingDays; - private Integer analysisDays; - private Integer maxParity; - private Double sumSystemMilk; - private Double sumCorrectedMilk; - private Double avgCorrectedDaily; - private Double sumParity1Milk; - private Double sumParity2Milk; - private Double sumParity3Milk; - private Double sumParity4Milk; - private Double avgParity1Daily; - private Double avgParity2Daily; - private Double avgParity3Daily; - private Double avgParity4Daily; - private Integer lactationDays; - private Double avgLast7Milk; - private Double avgLast7Corrected; - private Double avgLast14Milk; - private Double avgLast30Milk; - private String sheepCategory; - private Date birthday; - private Integer parity; - private Integer monthAge; - private Double currentWeight; - private String breedStatus; - private String fatherManageTags; - private String motherManageTags; - private String ranchName; - private String family; - private Integer motherMilkingDays; - private Double motherSumCorrected; - private Integer motherMaxParity; - private Double motherAvgCorrectedDaily; - private Date lastUpdate; - - public String getSheepId() { return sheepId; } - public void setSheepId(String sheepId) { this.sheepId = sheepId; } - - public String getManageEarTag() { return manageEarTag; } - public void setManageEarTag(String manageEarTag) { this.manageEarTag = manageEarTag; } - - public String getVariety() { return variety; } - public void setVariety(String variety) { this.variety = variety; } - - public Date getMilkingStartTime() { return milkingStartTime; } - public void setMilkingStartTime(Date milkingStartTime) { this.milkingStartTime = milkingStartTime; } - - public Date getDryEndTime() { return dryEndTime; } - public void setDryEndTime(Date dryEndTime) { this.dryEndTime = dryEndTime; } - - public Integer getMilkingDays() { return milkingDays; } - public void setMilkingDays(Integer milkingDays) { this.milkingDays = milkingDays; } - - public Integer getAnalysisDays() { return analysisDays; } - public void setAnalysisDays(Integer analysisDays) { this.analysisDays = analysisDays; } - - public Integer getMaxParity() { return maxParity; } - public void setMaxParity(Integer maxParity) { this.maxParity = maxParity; } - - public Double getSumSystemMilk() { return sumSystemMilk; } - public void setSumSystemMilk(Double sumSystemMilk) { this.sumSystemMilk = sumSystemMilk; } - - public Double getSumCorrectedMilk() { return sumCorrectedMilk; } - public void setSumCorrectedMilk(Double sumCorrectedMilk) { this.sumCorrectedMilk = sumCorrectedMilk; } - - public Double getAvgCorrectedDaily() { return avgCorrectedDaily; } - public void setAvgCorrectedDaily(Double avgCorrectedDaily) { this.avgCorrectedDaily = avgCorrectedDaily; } - - public Double getSumParity1Milk() { return sumParity1Milk; } - public void setSumParity1Milk(Double sumParity1Milk) { this.sumParity1Milk = sumParity1Milk; } - - public Double getSumParity2Milk() { return sumParity2Milk; } - public void setSumParity2Milk(Double sumParity2Milk) { this.sumParity2Milk = sumParity2Milk; } - - public Double getSumParity3Milk() { return sumParity3Milk; } - public void setSumParity3Milk(Double sumParity3Milk) { this.sumParity3Milk = sumParity3Milk; } - - public Double getSumParity4Milk() { return sumParity4Milk; } - public void setSumParity4Milk(Double sumParity4Milk) { this.sumParity4Milk = sumParity4Milk; } - - public Double getAvgParity1Daily() { return avgParity1Daily; } - public void setAvgParity1Daily(Double avgParity1Daily) { this.avgParity1Daily = avgParity1Daily; } - - public Double getAvgParity2Daily() { return avgParity2Daily; } - public void setAvgParity2Daily(Double avgParity2Daily) { this.avgParity2Daily = avgParity2Daily; } - - public Double getAvgParity3Daily() { return avgParity3Daily; } - public void setAvgParity3Daily(Double avgParity3Daily) { this.avgParity3Daily = avgParity3Daily; } - - public Double getAvgParity4Daily() { return avgParity4Daily; } - public void setAvgParity4Daily(Double avgParity4Daily) { this.avgParity4Daily = avgParity4Daily; } - - public Integer getLactationDays() { return lactationDays; } - public void setLactationDays(Integer lactationDays) { this.lactationDays = lactationDays; } - - public Double getAvgLast7Milk() { return avgLast7Milk; } - public void setAvgLast7Milk(Double avgLast7Milk) { this.avgLast7Milk = avgLast7Milk; } - - public Double getAvgLast7Corrected() { return avgLast7Corrected; } - public void setAvgLast7Corrected(Double avgLast7Corrected) { this.avgLast7Corrected = avgLast7Corrected; } - - public Double getAvgLast14Milk() { return avgLast14Milk; } - public void setAvgLast14Milk(Double avgLast14Milk) { this.avgLast14Milk = avgLast14Milk; } - - public Double getAvgLast30Milk() { return avgLast30Milk; } - public void setAvgLast30Milk(Double avgLast30Milk) { this.avgLast30Milk = avgLast30Milk; } - - public String getSheepCategory() { return sheepCategory; } - public void setSheepCategory(String sheepCategory) { this.sheepCategory = sheepCategory; } - - public Date getBirthday() { return birthday; } - public void setBirthday(Date birthday) { this.birthday = birthday; } - - public Integer getParity() { return parity; } - public void setParity(Integer parity) { this.parity = parity; } - - public Integer getMonthAge() { return monthAge; } - public void setMonthAge(Integer monthAge) { this.monthAge = monthAge; } - - public Double getCurrentWeight() { return currentWeight; } - public void setCurrentWeight(Double currentWeight) { this.currentWeight = currentWeight; } - - public String getBreedStatus() { return breedStatus; } - public void setBreedStatus(String breedStatus) { this.breedStatus = breedStatus; } - - public String getFatherManageTags() { return fatherManageTags; } - public void setFatherManageTags(String fatherManageTags) { this.fatherManageTags = fatherManageTags; } - - public String getMotherManageTags() { return motherManageTags; } - public void setMotherManageTags(String motherManageTags) { this.motherManageTags = motherManageTags; } - - public String getRanchName() { return ranchName; } - public void setRanchName(String ranchName) { this.ranchName = ranchName; } - - public String getFamily() { return family; } - public void setFamily(String family) { this.family = family; } - - public Integer getMotherMilkingDays() { return motherMilkingDays; } - public void setMotherMilkingDays(Integer motherMilkingDays) { this.motherMilkingDays = motherMilkingDays; } - - public Double getMotherSumCorrected() { return motherSumCorrected; } - public void setMotherSumCorrected(Double motherSumCorrected) { this.motherSumCorrected = motherSumCorrected; } - - public Integer getMotherMaxParity() { return motherMaxParity; } - public void setMotherMaxParity(Integer motherMaxParity) { this.motherMaxParity = motherMaxParity; } - - public Double getMotherAvgCorrectedDaily() { return motherAvgCorrectedDaily; } - public void setMotherAvgCorrectedDaily(Double motherAvgCorrectedDaily) { this.motherAvgCorrectedDaily = motherAvgCorrectedDaily; } - - public Date getLastUpdate() { return lastUpdate; } - public void setLastUpdate(Date lastUpdate) { this.lastUpdate = lastUpdate; } -} - 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 deleted file mode 100644 index e284508..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -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; - -/** - * 酸奶生产,成品检疫记录对象 np_yogurt_insp - * - * @author ruoyi - * @date 2025-07-17 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class NpYogurtInsp extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 来源 */ - @Excel(name = "来源") - private String source; - - /** 检测日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 脂肪g/100g */ - @Excel(name = "脂肪g/100g") - private Double fat; - - /** 蛋白质g/100g */ - @Excel(name = "蛋白质g/100g") - private Double protein; - - /** 非脂g/100g - */ - @Excel(name = "非脂g/100g") - private Double nonFat; - - /** 酸度oT */ - @Excel(name = "酸度oT") - private Double acidity; - - /** 菌落总数(CFU/g)_1 */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialColony1; - - /** 菌落总数(CFU/g)_2 */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialClony2; - - /** 菌落总数(CFU/g)_3 */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialClony3; - - /** 菌落总数(CFU/g)_4 */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialClony4; - - /** 菌落总数(CFU/g)_5 */ - @Excel(name = "菌落总数", readConverterExp = "C=FU/g") - private Double bacterialClony5; - - /** 酵母菌(CFU/g) */ - @Excel(name = "酵母菌(CFU/g)") - private Double yeast; - - /** 霉菌(CFU/g) */ - @Excel(name = "霉菌", readConverterExp = "C=FU/g") - private Double mould; - - /** 乳酸菌数(CFU/g) */ - @Excel(name = "乳酸菌数", readConverterExp = "C=FU/g") - private Double lacto; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java deleted file mode 100644 index 7486310..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -public class Ranch { - private String ranchCode; - private String ranchName; - - public String getRanchCode() { return ranchCode; } - public void setRanchCode(String ranchCode) { this.ranchCode = ranchCode; } - - public String getRanchName() { return ranchName; } - public void setRanchName(String ranchName) { this.ranchName = ranchName; } -} \ No newline at end of file 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 deleted file mode 100644 index a211abb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -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; - -@Data -@NoArgsConstructor -@AllArgsConstructor -public class XzDryMatterCorrection extends BaseEntity { - private static final long serialVersionUID = 1L; - - private Long id; - - @JsonFormat(pattern = "yyyy-MM") - @Excel(name = "年月", width = 30, dateFormat = "yyyy-MM") - private Date datetime; - - @Excel(name = "厂区") - private String factory; - - @Excel(name = "干物质含量") - private Double content; - - @Excel(name = "干物质标准") - private Double standard; - - @Excel(name = "干物质系数") - private Double coefficient; - -} \ No newline at end of file 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 deleted file mode 100644 index d1a93e6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java +++ /dev/null @@ -1,35 +0,0 @@ -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; - -/** - * 胎次校正对象 xz_parity_correction - * - * @author ruoyi - * @date 2025-07-14 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class XzParityCorrection extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 胎次 */ - @Excel(name = "胎次") - private Integer parity; - - /** 系数 */ - @Excel(name = "系数") - private Double coef; - -} 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 deleted file mode 100644 index 6bba703..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.zhyc.module.dairyProducts.domain; - -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; - -/** - * 称重校正对象 xz_wegih_correction - * - * @author ruoyi - * @date 2025-07-12 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class XzWegihCorrection extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 厂区 */ - @Excel(name = "厂区") - private String factory; - - /** 实际奶量 */ - @Excel(name = "实际奶量") - private Double actual; - - /** 系统奶量 */ - @Excel(name = "系统奶量") - private Double systemMilk; // 修改字段名 - - /** 称重系数(计算字段) */ - @Excel(name = "称重系数") - private Double coefficient; - - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java deleted file mode 100644 index bb5ca20..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; -import org.apache.ibatis.annotations.Mapper; - -/** - * 鲜奶生产,成品检验记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-18 - */ -@Mapper -public interface NpFreshMilkInspMapper -{ - /** - * 查询鲜奶生产,成品检验记录 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 鲜奶生产,成品检验记录 - */ - public NpFreshMilkInsp selectNpFreshMilkInspById(Long id); - - /** - * 查询鲜奶生产,成品检验记录列表 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 鲜奶生产,成品检验记录集合 - */ - public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 新增鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 修改鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 删除鲜奶生产,成品检验记录 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 结果 - */ - public int deleteNpFreshMilkInspById(Long id); - - /** - * 批量删除鲜奶生产,成品检验记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteNpFreshMilkInspByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java deleted file mode 100644 index aa4ed29..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; -import java.util.Map; - -public interface NpMilkInOutStoreMapper { - List> selectWithColumns( - @Param("start") Date start, @Param("end") Date end, - @Param("feedSources") List feedSources, - @Param("saleDestinations") List saleDestinations - ); - int insertStore(NpMilkInOutStore store); - void insertFeedRecord(@Param("storeId") Integer storeId, @Param("source") String source, @Param("amount") java.math.BigDecimal amount); - void insertSaleRecord(@Param("storeId") Integer storeId, @Param("destination") String dest, @Param("amount") java.math.BigDecimal amount); - - List selectFeedSources(); - List selectSaleDestinations(); -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java deleted file mode 100644 index 82a3238..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import org.apache.ibatis.annotations.Param; -import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; -import java.util.Date; -import java.util.List; - -public interface NpMilkProdClassesMapper { - List selectNpMilkProdClassesList( - @Param("datetimeStart") Date datetimeStart, - @Param("datetimeEnd") Date datetimeEnd, - @Param("manageEarNo") String manageEarNo, - @Param("factory") String factory, - @Param("classes") Integer classes); - - int insertNpMilkProdClasses(NpMilkProdClasses row); - - String selectSheepIdByManageEarNo(@Param("manageEarNo") String manageEarNo); - - Double getWeightCorrection(@Param("date") Date date, @Param("factory") String factory); - - Double getParityCorrection(@Param("parity") Integer parity); - - Double getDryMatterCorrection(@Param("date") Date date, @Param("factory") String factory); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java deleted file mode 100644 index 8b455ba..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; -import org.apache.ibatis.annotations.Mapper; - -/** - * 生乳检验记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface NpRawMilkInspeMapper -{ - /** - * 查询生乳检验记录 - * - * @param id 生乳检验记录主键 - * @return 生乳检验记录 - */ - public NpRawMilkInspe selectNpRawMilkInspeById(Long id); - - /** - * 查询生乳检验记录列表 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 生乳检验记录集合 - */ - public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe); - - /** - * 新增生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); - - /** - * 修改生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); - - /** - * 删除生乳检验记录 - * - * @param id 生乳检验记录主键 - * @return 结果 - */ - public int deleteNpRawMilkInspeById(Long id); - - /** - * 批量删除生乳检验记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteNpRawMilkInspeByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java deleted file mode 100644 index f330707..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; -import java.util.List; - -public interface NpSheepMilkAnalysisMapper { - - NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); - - List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); - - int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int deleteNpSheepMilkAnalysisById(Long id); - - int deleteNpSheepMilkAnalysisByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java deleted file mode 100644 index 5a736d7..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; - -import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; -import org.apache.ibatis.annotations.Mapper; - -/** - * 酸奶生产,成品检疫记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-17 - */ -@Mapper -public interface NpYogurtInspMapper -{ - /** - * 查询酸奶生产,成品检疫记录 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 酸奶生产,成品检疫记录 - */ - public NpYogurtInsp selectNpYogurtInspById(Long id); - - /** - * 查询酸奶生产,成品检疫记录列表 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 酸奶生产,成品检疫记录集合 - */ - public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp); - - /** - * 新增酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp); - - /** - * 修改酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp); - - /** - * 删除酸奶生产,成品检疫记录 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 结果 - */ - public int deleteNpYogurtInspById(Long id); - - /** - * 批量删除酸奶生产,成品检疫记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteNpYogurtInspByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java deleted file mode 100644 index a234521..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import com.zhyc.module.dairyProducts.domain.Ranch; -import org.apache.ibatis.annotations.Select; -import java.util.List; - -public interface RanchMapper { - @Select("SELECT ranch AS ranchName, ranch AS ranchCode FROM da_ranch") - List selectAllRanch(); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java deleted file mode 100644 index b84955b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; -import org.apache.ibatis.annotations.Mapper; - -/** - * 干物质校正Mapper接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Mapper -public interface XzDryMatterCorrectionMapper -{ - /** - * 查询干物质校正 - * - * @param id 干物质校正主键 - * @return 干物质校正 - */ - public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id); - - /** - * 查询干物质校正列表 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 干物质校正集合 - */ - public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 新增干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 修改干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 删除干物质校正 - * - * @param id 干物质校正主键 - * @return 结果 - */ - public int deleteXzDryMatterCorrectionById(Long id); - - /** - * 批量删除干物质校正 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteXzDryMatterCorrectionByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java deleted file mode 100644 index d2f4654..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.XzParityCorrection; -import org.apache.ibatis.annotations.Mapper; - -/** - * 胎次校正Mapper接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Mapper -public interface XzParityCorrectionMapper -{ - /** - * 查询胎次校正 - * - * @param id 胎次校正主键 - * @return 胎次校正 - */ - public XzParityCorrection selectXzParityCorrectionById(Long id); - - /** - * 查询胎次校正列表 - * - * @param xzParityCorrection 胎次校正 - * @return 胎次校正集合 - */ - public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection); - - /** - * 新增胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - public int insertXzParityCorrection(XzParityCorrection xzParityCorrection); - - /** - * 修改胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - public int updateXzParityCorrection(XzParityCorrection xzParityCorrection); - - /** - * 删除胎次校正 - * - * @param id 胎次校正主键 - * @return 结果 - */ - public int deleteXzParityCorrectionById(Long id); - - /** - * 批量删除胎次校正 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteXzParityCorrectionByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java deleted file mode 100644 index b6313bd..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.dairyProducts.mapper; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; -import org.apache.ibatis.annotations.Mapper; - -/** - * 称重校正Mapper接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Mapper -public interface XzWegihCorrectionMapper -{ - /** - * 查询称重校正 - * - * @param id 称重校正主键 - * @return 称重校正 - */ - public XzWegihCorrection selectXzWegihCorrectionById(Long id); - - /** - * 查询称重校正列表 - * - * @param xzWegihCorrection 称重校正 - * @return 称重校正集合 - */ - public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection); - - /** - * 新增称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection); - - /** - * 修改称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection); - - /** - * 删除称重校正 - * - * @param id 称重校正主键 - * @return 结果 - */ - public int deleteXzWegihCorrectionById(Long id); - - /** - * 批量删除称重校正 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteXzWegihCorrectionByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java deleted file mode 100644 index 3f7c523..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; - -/** - * 鲜奶生产,成品检验记录Service接口 - * - * @author ruoyi - * @date 2025-07-18 - */ -public interface INpFreshMilkInspService -{ - /** - * 查询鲜奶生产,成品检验记录 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 鲜奶生产,成品检验记录 - */ - public NpFreshMilkInsp selectNpFreshMilkInspById(Long id); - - /** - * 查询鲜奶生产,成品检验记录列表 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 鲜奶生产,成品检验记录集合 - */ - public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 新增鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 修改鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); - - /** - * 批量删除鲜奶生产,成品检验记录 - * - * @param ids 需要删除的鲜奶生产,成品检验记录主键集合 - * @return 结果 - */ - public int deleteNpFreshMilkInspByIds(Long[] ids); - - /** - * 删除鲜奶生产,成品检验记录信息 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 结果 - */ - public int deleteNpFreshMilkInspById(Long id); -} 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 deleted file mode 100644 index 992573a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; -import org.springframework.web.multipart.MultipartFile; - -import java.util.Date; -import java.util.List; -import java.util.Map; - -public interface INpMilkInOutStoreService { - List> selectWithDynamicColumns(Date start, Date end); - List> getAllColumnOptions(); - List> parseImportExcel(MultipartFile file) throws Exception; - void batchInsertFromRows(List> rows) throws Exception; -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java deleted file mode 100644 index b582994..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.Date; -import java.util.List; -import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; - -public interface INpMilkProdClassesService { - List selectNpMilkProdClassesList( - Date datetimeStart, - Date datetimeEnd, - String manageEarNo, // 改为单个 String - String factory, - Integer classes); - - int importMilkProdClasses(List list); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java deleted file mode 100644 index dd12502..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; - -/** - * 生乳检验记录Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface INpRawMilkInspeService -{ - /** - * 查询生乳检验记录 - * - * @param id 生乳检验记录主键 - * @return 生乳检验记录 - */ - public NpRawMilkInspe selectNpRawMilkInspeById(Long id); - - /** - * 查询生乳检验记录列表 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 生乳检验记录集合 - */ - public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe); - - /** - * 新增生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); - - /** - * 修改生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); - - /** - * 批量删除生乳检验记录 - * - * @param ids 需要删除的生乳检验记录主键集合 - * @return 结果 - */ - public int deleteNpRawMilkInspeByIds(Long[] ids); - - /** - * 删除生乳检验记录信息 - * - * @param id 生乳检验记录主键 - * @return 结果 - */ - public int deleteNpRawMilkInspeById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java deleted file mode 100644 index 7750a5f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; -import java.util.List; - -public interface INpSheepMilkAnalysisService { - - NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); - - List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); - - int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); - - int deleteNpSheepMilkAnalysisById(Long id); - - int deleteNpSheepMilkAnalysisByIds(Long[] ids); -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java deleted file mode 100644 index 01582c4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; - -import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; - -/** - * 酸奶生产,成品检疫记录Service接口 - * - * @author ruoyi - * @date 2025-07-17 - */ -public interface INpYogurtInspService -{ - /** - * 查询酸奶生产,成品检疫记录 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 酸奶生产,成品检疫记录 - */ - public NpYogurtInsp selectNpYogurtInspById(Long id); - - /** - * 查询酸奶生产,成品检疫记录列表 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 酸奶生产,成品检疫记录集合 - */ - public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp); - - /** - * 新增酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp); - - /** - * 修改酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp); - - /** - * 批量删除酸奶生产,成品检疫记录 - * - * @param ids 需要删除的酸奶生产,成品检疫记录主键集合 - * @return 结果 - */ - public int deleteNpYogurtInspByIds(Long[] ids); - - /** - * 删除酸奶生产,成品检疫记录信息 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 结果 - */ - public int deleteNpYogurtInspById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java deleted file mode 100644 index 15d3e1d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import com.zhyc.module.dairyProducts.domain.Ranch; -import java.util.List; - -public interface IRanchService { - List selectAllRanch(); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java deleted file mode 100644 index 522d857..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; - -/** - * 干物质校正Service接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -public interface IXzDryMatterCorrectionService -{ - /** - * 查询干物质校正 - * - * @param id 干物质校正主键 - * @return 干物质校正 - */ - public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id); - - /** - * 查询干物质校正列表 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 干物质校正集合 - */ - public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 新增干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 修改干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); - - /** - * 批量删除干物质校正 - * - * @param ids 需要删除的干物质校正主键集合 - * @return 结果 - */ - public int deleteXzDryMatterCorrectionByIds(Long[] ids); - - /** - * 删除干物质校正信息 - * - * @param id 干物质校正主键 - * @return 结果 - */ - public int deleteXzDryMatterCorrectionById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java deleted file mode 100644 index d5c9ce2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; - -import com.zhyc.module.dairyProducts.domain.XzParityCorrection; - -/** - * 胎次校正Service接口 - * - * @author ruoyi - * @date 2025-07-14 - */ -public interface IXzParityCorrectionService -{ - /** - * 查询胎次校正 - * - * @param id 胎次校正主键 - * @return 胎次校正 - */ - public XzParityCorrection selectXzParityCorrectionById(Long id); - - /** - * 查询胎次校正列表 - * - * @param xzParityCorrection 胎次校正 - * @return 胎次校正集合 - */ - public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection); - - /** - * 新增胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - public int insertXzParityCorrection(XzParityCorrection xzParityCorrection); - - /** - * 修改胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - public int updateXzParityCorrection(XzParityCorrection xzParityCorrection); - - /** - * 批量删除胎次校正 - * - * @param ids 需要删除的胎次校正主键集合 - * @return 结果 - */ - public int deleteXzParityCorrectionByIds(Long[] ids); - - /** - * 删除胎次校正信息 - * - * @param id 胎次校正主键 - * @return 结果 - */ - public int deleteXzParityCorrectionById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java deleted file mode 100644 index d24ed2b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.dairyProducts.service; - -import java.util.List; -import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; - -/** - * 称重校正Service接口 - * - * @author ruoyi - * @date 2025-07-12 - */ -public interface IXzWegihCorrectionService -{ - /** - * 查询称重校正 - * - * @param id 称重校正主键 - * @return 称重校正 - */ - public XzWegihCorrection selectXzWegihCorrectionById(Long id); - - /** - * 查询称重校正列表 - * - * @param xzWegihCorrection 称重校正 - * @return 称重校正集合 - */ - public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection); - - /** - * 新增称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection); - - /** - * 修改称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection); - - /** - * 批量删除称重校正 - * - * @param ids 需要删除的称重校正主键集合 - * @return 结果 - */ - public int deleteXzWegihCorrectionByIds(Long[] ids); - - /** - * 删除称重校正信息 - * - * @param id 称重校正主键 - * @return 结果 - */ - public int deleteXzWegihCorrectionById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java deleted file mode 100644 index cd59779..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.dairyProducts.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.dairyProducts.mapper.NpFreshMilkInspMapper; -import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; -import com.zhyc.module.dairyProducts.service.INpFreshMilkInspService; - -/** - * 鲜奶生产,成品检验记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-18 - */ -@Service -public class NpFreshMilkInspServiceImpl implements INpFreshMilkInspService -{ - @Autowired - private NpFreshMilkInspMapper npFreshMilkInspMapper; - - /** - * 查询鲜奶生产,成品检验记录 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 鲜奶生产,成品检验记录 - */ - @Override - public NpFreshMilkInsp selectNpFreshMilkInspById(Long id) - { - return npFreshMilkInspMapper.selectNpFreshMilkInspById(id); - } - - /** - * 查询鲜奶生产,成品检验记录列表 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 鲜奶生产,成品检验记录 - */ - @Override - public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp) - { - return npFreshMilkInspMapper.selectNpFreshMilkInspList(npFreshMilkInsp); - } - - /** - * 新增鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - @Override - public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp) - { - npFreshMilkInsp.setCreateTime(DateUtils.getNowDate()); - return npFreshMilkInspMapper.insertNpFreshMilkInsp(npFreshMilkInsp); - } - - /** - * 修改鲜奶生产,成品检验记录 - * - * @param npFreshMilkInsp 鲜奶生产,成品检验记录 - * @return 结果 - */ - @Override - public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp) - { - return npFreshMilkInspMapper.updateNpFreshMilkInsp(npFreshMilkInsp); - } - - /** - * 批量删除鲜奶生产,成品检验记录 - * - * @param ids 需要删除的鲜奶生产,成品检验记录主键 - * @return 结果 - */ - @Override - public int deleteNpFreshMilkInspByIds(Long[] ids) - { - return npFreshMilkInspMapper.deleteNpFreshMilkInspByIds(ids); - } - - /** - * 删除鲜奶生产,成品检验记录信息 - * - * @param id 鲜奶生产,成品检验记录主键 - * @return 结果 - */ - @Override - public int deleteNpFreshMilkInspById(Long id) - { - return npFreshMilkInspMapper.deleteNpFreshMilkInspById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java deleted file mode 100644 index fc99d05..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; -import com.zhyc.module.dairyProducts.mapper.NpMilkInOutStoreMapper; -import com.zhyc.module.dairyProducts.service.INpMilkInOutStoreService; -import org.apache.poi.ss.usermodel.*; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; - -import java.io.InputStream; -import java.math.BigDecimal; -import java.util.*; - -@Service -public class NpMilkInOutStoreServiceImpl implements INpMilkInOutStoreService { - - @Autowired - private NpMilkInOutStoreMapper mapper; - - @Override - public List> selectWithDynamicColumns(Date start, Date end) { - List feed = mapper.selectFeedSources(); - List sale = mapper.selectSaleDestinations(); - return mapper.selectWithColumns(start, end, feed, sale); - } - - @Override - public List> getAllColumnOptions() { - Map m = new HashMap<>(); - m.put("feed", mapper.selectFeedSources()); - m.put("sale", mapper.selectSaleDestinations()); - return Collections.singletonList(m); - } - @Override - public List> parseImportExcel(MultipartFile file) throws Exception { - // 用 Apache POI 解析 Excel 第一行标题,动态映射列名跟 unit cells - InputStream in = file.getInputStream(); - Workbook wb = WorkbookFactory.create(in); - Sheet sheet = wb.getSheetAt(0); - Row header = sheet.getRow(0); - int cols = header.getLastCellNum(); - List titles = new ArrayList<>(); - for (int i = 0; i < cols; i++) titles.add(header.getCell(i).getStringCellValue()); - List> rows = new ArrayList<>(); - for (int r = 1; r <= sheet.getLastRowNum(); r++) { - Row row = sheet.getRow(r); - if (row == null) continue; - Map map = new LinkedHashMap<>(); - for (int c = 0; c < cols; c++) { - Cell cell = row.getCell(c); - map.put(titles.get(c), cell == null ? null : cell.toString()); - } - rows.add(map); - } - return rows; - } - - @Override - public void batchInsertFromRows(List> rows) throws Exception { - for (Map row : rows) { - // 提取主表字段 - NpMilkInOutStore store = new NpMilkInOutStore(); - store.setDatetime(java.sql.Date.valueOf(row.get("日期").toString())); - store.setNum(Integer.valueOf(row.get("羊数").toString())); - // ... 设置其它固定字段 ... - mapper.insertStore(store); - Integer sid = store.getId(); - // 其余列为动态饲喂或销售,根据字典决定分类: - for (Map.Entry ent: row.entrySet()) { - String col = ent.getKey(); - BigDecimal amt = new BigDecimal(ent.getValue().toString()); - if (mapper.selectFeedSources().contains(col)) { - mapper.insertFeedRecord(sid, col, amt); - } else if (mapper.selectSaleDestinations().contains(col)) { - mapper.insertSaleRecord(sid, col, amt); - } - } - } - } -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java deleted file mode 100644 index 1c26057..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; -import com.zhyc.module.dairyProducts.mapper.NpMilkProdClassesMapper; -import com.zhyc.module.dairyProducts.service.INpMilkProdClassesService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -@Service -public class NpMilkProdClassesServiceImpl implements INpMilkProdClassesService { - - @Autowired - private NpMilkProdClassesMapper mapper; - - @Override - public List selectNpMilkProdClassesList(Date datetimeStart, Date datetimeEnd, - String manageEarNo, String factory, Integer classes) { - return mapper.selectNpMilkProdClassesList(datetimeStart, datetimeEnd, manageEarNo, factory, classes); - } - - @Override - public int importMilkProdClasses(List list) { - int count = 0; - for (NpMilkProdClasses item : list) { - // 根据管理耳号查 sheep_id - String sheepId = mapper.selectSheepIdByManageEarNo(item.getManageEarNo()); - if (sheepId == null) continue; - - item.setSheepId(sheepId); - - // 计算校正奶量 - Double correctedMilk = calculateCorrectedMilk(item); - item.setCorrectedMilk(correctedMilk); - - // 插入数据 - count += mapper.insertNpMilkProdClasses(item); - } - return count; - } - - private Double calculateCorrectedMilk(NpMilkProdClasses item) { - Double milk = item.getMilk(); - if (milk == null) return null; - - // 1. 称重矫正系数 - Double weightCorrection = mapper.getWeightCorrection(item.getDatetime(), item.getFactory()); - if (weightCorrection == null) weightCorrection = 1.0; - - // 2. 胎次矫正系数 - Double parityCorrection = mapper.getParityCorrection(item.getParity()); - if (parityCorrection == null) parityCorrection = 1.0; - - // 3. 干物质矫正系数 - Double dryMatterCorrection = mapper.getDryMatterCorrection(item.getDatetime(), item.getFactory()); - if (dryMatterCorrection == null) dryMatterCorrection = 1.0; - - return milk * weightCorrection * parityCorrection * dryMatterCorrection; - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java deleted file mode 100644 index 3422dff..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.dairyProducts.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.dairyProducts.mapper.NpRawMilkInspeMapper; -import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; -import com.zhyc.module.dairyProducts.service.INpRawMilkInspeService; - -/** - * 生乳检验记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class NpRawMilkInspeServiceImpl implements INpRawMilkInspeService -{ - @Autowired - private NpRawMilkInspeMapper npRawMilkInspeMapper; - - /** - * 查询生乳检验记录 - * - * @param id 生乳检验记录主键 - * @return 生乳检验记录 - */ - @Override - public NpRawMilkInspe selectNpRawMilkInspeById(Long id) - { - return npRawMilkInspeMapper.selectNpRawMilkInspeById(id); - } - - /** - * 查询生乳检验记录列表 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 生乳检验记录 - */ - @Override - public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe) - { - return npRawMilkInspeMapper.selectNpRawMilkInspeList(npRawMilkInspe); - } - - /** - * 新增生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - @Override - public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe) - { - npRawMilkInspe.setCreateTime(DateUtils.getNowDate()); - return npRawMilkInspeMapper.insertNpRawMilkInspe(npRawMilkInspe); - } - - /** - * 修改生乳检验记录 - * - * @param npRawMilkInspe 生乳检验记录 - * @return 结果 - */ - @Override - public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe) - { - return npRawMilkInspeMapper.updateNpRawMilkInspe(npRawMilkInspe); - } - - /** - * 批量删除生乳检验记录 - * - * @param ids 需要删除的生乳检验记录主键 - * @return 结果 - */ - @Override - public int deleteNpRawMilkInspeByIds(Long[] ids) - { - return npRawMilkInspeMapper.deleteNpRawMilkInspeByIds(ids); - } - - /** - * 删除生乳检验记录信息 - * - * @param id 生乳检验记录主键 - * @return 结果 - */ - @Override - public int deleteNpRawMilkInspeById(Long id) - { - return npRawMilkInspeMapper.deleteNpRawMilkInspeById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java deleted file mode 100644 index c2476ee..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import java.util.List; - -import com.zhyc.module.dairyProducts.mapper.NpSheepMilkAnalysisMapper; -import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; -import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -@Service -public class NpSheepMilkAnalysisServiceImpl implements INpSheepMilkAnalysisService { - - @Autowired - private NpSheepMilkAnalysisMapper npSheepMilkAnalysisMapper; - - @Override - public NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id) { - return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisById(id); - } - - @Override - public List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisList(analysis); - } - - @Override - public int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.insertNpSheepMilkAnalysis(analysis); - } - - @Override - public int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { - return npSheepMilkAnalysisMapper.updateNpSheepMilkAnalysis(analysis); - } - - @Override - public int deleteNpSheepMilkAnalysisById(Long id) { - return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisById(id); - } - - @Override - public int deleteNpSheepMilkAnalysisByIds(Long[] ids) { - return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisByIds(ids); - } -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java deleted file mode 100644 index f80e745..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; -import com.zhyc.module.dairyProducts.mapper.NpYogurtInspMapper; -import com.zhyc.module.dairyProducts.service.INpYogurtInspService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 酸奶生产,成品检疫记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-17 - */ -@Service -public class NpYogurtInspServiceImpl implements INpYogurtInspService -{ - @Autowired - private NpYogurtInspMapper npYogurtInspMapper; - - /** - * 查询酸奶生产,成品检疫记录 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 酸奶生产,成品检疫记录 - */ - @Override - public NpYogurtInsp selectNpYogurtInspById(Long id) - { - return npYogurtInspMapper.selectNpYogurtInspById(id); - } - - /** - * 查询酸奶生产,成品检疫记录列表 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 酸奶生产,成品检疫记录 - */ - @Override - public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp) - { - return npYogurtInspMapper.selectNpYogurtInspList(npYogurtInsp); - } - - /** - * 新增酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - @Override - public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp) - { - npYogurtInsp.setCreateTime(DateUtils.getNowDate()); - return npYogurtInspMapper.insertNpYogurtInsp(npYogurtInsp); - } - - /** - * 修改酸奶生产,成品检疫记录 - * - * @param npYogurtInsp 酸奶生产,成品检疫记录 - * @return 结果 - */ - @Override - public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp) - { - return npYogurtInspMapper.updateNpYogurtInsp(npYogurtInsp); - } - - /** - * 批量删除酸奶生产,成品检疫记录 - * - * @param ids 需要删除的酸奶生产,成品检疫记录主键 - * @return 结果 - */ - @Override - public int deleteNpYogurtInspByIds(Long[] ids) - { - return npYogurtInspMapper.deleteNpYogurtInspByIds(ids); - } - - /** - * 删除酸奶生产,成品检疫记录信息 - * - * @param id 酸奶生产,成品检疫记录主键 - * @return 结果 - */ - @Override - public int deleteNpYogurtInspById(Long id) - { - return npYogurtInspMapper.deleteNpYogurtInspById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java deleted file mode 100644 index 281d32e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import com.zhyc.module.dairyProducts.domain.Ranch; -import com.zhyc.module.dairyProducts.mapper.RanchMapper; -import com.zhyc.module.dairyProducts.service.IRanchService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import java.util.List; - -@Service -public class RanchServiceImpl implements IRanchService { - @Autowired - private RanchMapper ranchMapper; - - @Override - public List selectAllRanch() { - return ranchMapper.selectAllRanch(); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java deleted file mode 100644 index 4bf9fb2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.dairyProducts.mapper.XzDryMatterCorrectionMapper; -import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; -import com.zhyc.module.dairyProducts.service.IXzDryMatterCorrectionService; - -/** - * 干物质校正Service业务层处理 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Service -public class XzDryMatterCorrectionServiceImpl implements IXzDryMatterCorrectionService -{ - @Autowired - private XzDryMatterCorrectionMapper xzDryMatterCorrectionMapper; - - /** - * 查询干物质校正 - * - * @param id 干物质校正主键 - * @return 干物质校正 - */ - @Override - public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id) - { - return xzDryMatterCorrectionMapper.selectXzDryMatterCorrectionById(id); - } - - /** - * 查询干物质校正列表 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 干物质校正 - */ - @Override - public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection) - { - return xzDryMatterCorrectionMapper.selectXzDryMatterCorrectionList(xzDryMatterCorrection); - } - - /** - * 新增干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - @Override - public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection) - { - return xzDryMatterCorrectionMapper.insertXzDryMatterCorrection(xzDryMatterCorrection); - } - - /** - * 修改干物质校正 - * - * @param xzDryMatterCorrection 干物质校正 - * @return 结果 - */ - @Override - public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection) - { - return xzDryMatterCorrectionMapper.updateXzDryMatterCorrection(xzDryMatterCorrection); - } - - /** - * 批量删除干物质校正 - * - * @param ids 需要删除的干物质校正主键 - * @return 结果 - */ - @Override - public int deleteXzDryMatterCorrectionByIds(Long[] ids) - { - return xzDryMatterCorrectionMapper.deleteXzDryMatterCorrectionByIds(ids); - } - - /** - * 删除干物质校正信息 - * - * @param id 干物质校正主键 - * @return 结果 - */ - @Override - public int deleteXzDryMatterCorrectionById(Long id) - { - return xzDryMatterCorrectionMapper.deleteXzDryMatterCorrectionById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java deleted file mode 100644 index 49f5731..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import java.util.List; - -import com.zhyc.module.dairyProducts.mapper.XzParityCorrectionMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.dairyProducts.domain.XzParityCorrection; -import com.zhyc.module.dairyProducts.service.IXzParityCorrectionService; - -/** - * 胎次校正Service业务层处理 - * - * @author ruoyi - * @date 2025-07-14 - */ -@Service -public class XzParityCorrectionServiceImpl implements IXzParityCorrectionService -{ - @Autowired - private XzParityCorrectionMapper xzParityCorrectionMapper; - - /** - * 查询胎次校正 - * - * @param id 胎次校正主键 - * @return 胎次校正 - */ - @Override - public XzParityCorrection selectXzParityCorrectionById(Long id) - { - return xzParityCorrectionMapper.selectXzParityCorrectionById(id); - } - - /** - * 查询胎次校正列表 - * - * @param xzParityCorrection 胎次校正 - * @return 胎次校正 - */ - @Override - public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection) - { - return xzParityCorrectionMapper.selectXzParityCorrectionList(xzParityCorrection); - } - - /** - * 新增胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - @Override - public int insertXzParityCorrection(XzParityCorrection xzParityCorrection) - { - return xzParityCorrectionMapper.insertXzParityCorrection(xzParityCorrection); - } - - /** - * 修改胎次校正 - * - * @param xzParityCorrection 胎次校正 - * @return 结果 - */ - @Override - public int updateXzParityCorrection(XzParityCorrection xzParityCorrection) - { - return xzParityCorrectionMapper.updateXzParityCorrection(xzParityCorrection); - } - - /** - * 批量删除胎次校正 - * - * @param ids 需要删除的胎次校正主键 - * @return 结果 - */ - @Override - public int deleteXzParityCorrectionByIds(Long[] ids) - { - return xzParityCorrectionMapper.deleteXzParityCorrectionByIds(ids); - } - - /** - * 删除胎次校正信息 - * - * @param id 胎次校正主键 - * @return 结果 - */ - @Override - public int deleteXzParityCorrectionById(Long id) - { - return xzParityCorrectionMapper.deleteXzParityCorrectionById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java deleted file mode 100644 index 7869c42..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.dairyProducts.service.impl; - -import java.util.List; - -import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; -import com.zhyc.module.dairyProducts.mapper.XzWegihCorrectionMapper; -import com.zhyc.module.dairyProducts.service.IXzWegihCorrectionService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 称重校正Service业务层处理 - * - * @author ruoyi - * @date 2025-07-12 - */ -@Service -public class XzWegihCorrectionServiceImpl implements IXzWegihCorrectionService -{ - @Autowired - private XzWegihCorrectionMapper xzWegihCorrectionMapper; - - /** - * 查询称重校正 - * - * @param id 称重校正主键 - * @return 称重校正 - */ - @Override - public XzWegihCorrection selectXzWegihCorrectionById(Long id) - { - return xzWegihCorrectionMapper.selectXzWegihCorrectionById(id); - } - - /** - * 查询称重校正列表 - * - * @param xzWegihCorrection 称重校正 - * @return 称重校正 - */ - @Override - public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection) - { - return xzWegihCorrectionMapper.selectXzWegihCorrectionList(xzWegihCorrection); - } - - /** - * 新增称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - @Override - public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection) - { - return xzWegihCorrectionMapper.insertXzWegihCorrection(xzWegihCorrection); - } - - /** - * 修改称重校正 - * - * @param xzWegihCorrection 称重校正 - * @return 结果 - */ - @Override - public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection) - { - return xzWegihCorrectionMapper.updateXzWegihCorrection(xzWegihCorrection); - } - - /** - * 批量删除称重校正 - * - * @param ids 需要删除的称重校正主键 - * @return 结果 - */ - @Override - public int deleteXzWegihCorrectionByIds(Long[] ids) - { - return xzWegihCorrectionMapper.deleteXzWegihCorrectionByIds(ids); - } - - /** - * 删除称重校正信息 - * - * @param id 称重校正主键 - * @return 结果 - */ - @Override - public int deleteXzWegihCorrectionById(Long id) - { - return xzWegihCorrectionMapper.deleteXzWegihCorrectionById(id); - } -} 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 deleted file mode 100644 index 23ac1e1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java +++ /dev/null @@ -1,107 +0,0 @@ -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; -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.produce.bodyManage.domain.ScBodyMeasure; -import com.zhyc.module.produce.bodyManage.service.IScBodyMeasureService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 体尺测量Controller - * - * @author ruoyi - * @date 2025-07-27 - */ -@RestController -@RequestMapping("/body_measure/body_measure") -public class ScBodyMeasureController extends BaseController -{ - @Autowired - private IScBodyMeasureService scBodyMeasureService; - - - /** - * 查询体尺测量列表 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:list')") - @GetMapping("/list") - public TableDataInfo list(ScBodyMeasure scBodyMeasure) - { - startPage(); - List list = scBodyMeasureService.selectScBodyMeasureList(scBodyMeasure); - return getDataTable(list); - } - - /** - * 导出体尺测量列表 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:export')") - @Log(title = "体尺测量", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScBodyMeasure scBodyMeasure) - { - List list = scBodyMeasureService.selectScBodyMeasureList(scBodyMeasure); - ExcelUtil util = new ExcelUtil(ScBodyMeasure.class); - util.exportExcel(response, list, "体尺测量数据"); - } - - /** - * 获取体尺测量详细信息 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBodyMeasureService.selectScBodyMeasureById(id)); - } - - /** - * 新增体尺测量 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:add')") - @Log(title = "体尺测量", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScBodyMeasure scBodyMeasure) - { - return toAjax(scBodyMeasureService.insertScBodyMeasure(scBodyMeasure)); - } - - /** - * 修改体尺测量 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:edit')") - @Log(title = "体尺测量", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScBodyMeasure scBodyMeasure) - { - return toAjax(scBodyMeasureService.updateScBodyMeasure(scBodyMeasure)); - } - - /** - * 删除体尺测量 - */ - @PreAuthorize("@ss.hasPermi('body_measure:body_measure:remove')") - @Log(title = "体尺测量", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBodyMeasureService.deleteScBodyMeasureByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java deleted file mode 100644 index d2438a7..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.produce.bodyManage.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.produce.bodyManage.domain.ScBodyScore; -import com.zhyc.module.produce.bodyManage.service.IScBodyScoreService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 体况评分Controller - * - * @author ruoyi - * @date 2025-07-27 - */ -@RestController -@RequestMapping("/body_score/body_score") -public class ScBodyScoreController extends BaseController -{ - @Autowired - private IScBodyScoreService scBodyScoreService; - - /** - * 查询体况评分列表 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:list')") - @GetMapping("/list") - public TableDataInfo list(ScBodyScore scBodyScore) - { - startPage(); - List list = scBodyScoreService.selectScBodyScoreList(scBodyScore); - return getDataTable(list); - } - - /** - * 导出体况评分列表 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:export')") - @Log(title = "体况评分", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScBodyScore scBodyScore) - { - List list = scBodyScoreService.selectScBodyScoreList(scBodyScore); - ExcelUtil util = new ExcelUtil(ScBodyScore.class); - util.exportExcel(response, list, "体况评分数据"); - } - - /** - * 获取体况评分详细信息 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBodyScoreService.selectScBodyScoreById(id)); - } - - /** - * 新增体况评分 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:add')") - @Log(title = "体况评分", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScBodyScore scBodyScore) - { - return toAjax(scBodyScoreService.insertScBodyScore(scBodyScore)); - } - - /** - * 修改体况评分 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:edit')") - @Log(title = "体况评分", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScBodyScore scBodyScore) - { - return toAjax(scBodyScoreService.updateScBodyScore(scBodyScore)); - } - - /** - * 删除体况评分 - */ - @PreAuthorize("@ss.hasPermi('body_score:body_score:remove')") - @Log(title = "体况评分", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBodyScoreService.deleteScBodyScoreByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java deleted file mode 100644 index e6a9cad..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.produce.bodyManage.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.produce.bodyManage.domain.ScBreastRating; -import com.zhyc.module.produce.bodyManage.service.IScBreastRatingService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 乳房评分Controller - * - * @author ruoyi - * @date 2025-07-27 - */ -@RestController -@RequestMapping("/breast_rating/breast_rating") -public class ScBreastRatingController extends BaseController -{ - @Autowired - private IScBreastRatingService scBreastRatingService; - - /** - * 查询乳房评分列表 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:list')") - @GetMapping("/list") - public TableDataInfo list(ScBreastRating scBreastRating) - { - startPage(); - List list = scBreastRatingService.selectScBreastRatingList(scBreastRating); - return getDataTable(list); - } - - /** - * 导出乳房评分列表 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:export')") - @Log(title = "乳房评分", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScBreastRating scBreastRating) - { - List list = scBreastRatingService.selectScBreastRatingList(scBreastRating); - ExcelUtil util = new ExcelUtil(ScBreastRating.class); - util.exportExcel(response, list, "乳房评分数据"); - } - - /** - * 获取乳房评分详细信息 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBreastRatingService.selectScBreastRatingById(id)); - } - - /** - * 新增乳房评分 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:add')") - @Log(title = "乳房评分", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScBreastRating scBreastRating) - { - return toAjax(scBreastRatingService.insertScBreastRating(scBreastRating)); - } - - /** - * 修改乳房评分 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:edit')") - @Log(title = "乳房评分", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScBreastRating scBreastRating) - { - return toAjax(scBreastRatingService.updateScBreastRating(scBreastRating)); - } - - /** - * 删除乳房评分 - */ - @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:remove')") - @Log(title = "乳房评分", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBreastRatingService.deleteScBreastRatingByIds(ids)); - } -} 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 deleted file mode 100644 index a8efd25..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java +++ /dev/null @@ -1,81 +0,0 @@ -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; - -/** - * 体尺测量对象 sc_body_measure - * - * @author ruoyi - * @date 2025-07-27 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScBodyMeasure extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 耳号 */ - private Long sheepId; - @Excel(name = "耳号") - private String manageTags; - - /** 体高 */ - @Excel(name = "体高") - private Long height; - - /** 胸围 */ - @Excel(name = "胸围") - private Long bust; - - /** 体斜长 */ - @Excel(name = "体斜长") - private Long bodyLength; - - /** 管围 */ - @Excel(name = "管围") - private Long pipeLength; - - /** 胸深 */ - @Excel(name = "胸深") - private Long chestDepth; - - /** 臀高 */ - @Excel(name = "臀高") - private Long hipHeight; - - /** 尻宽 */ - @Excel(name = "尻宽") - private Long rumpWidth; - - /** 尻高 */ - @Excel(name = "尻高") - private Long rumpHeignt; - - /** 腰角宽 */ - @Excel(name = "腰角宽") - private Long hipWidth; - - /** 十字部高 */ - @Excel(name = "十字部高") - private Long hipCrossHeight; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - -} 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 deleted file mode 100644 index 5e5c1bf..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.zhyc.module.produce.bodyManage.domain; - -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; - -/** - * 体况评分对象 sc_body_score - * - * @author ruoyi - * @date 2025-07-27 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScBodyScore extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * $column.columnComment - */ - private Long id; - - /** - * 羊只id - */ - private String sheepId; - @Excel(name = "管理耳号") - private String manageTags; - /** - * 事件日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "事件日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** - * 体况评分 - */ - @Excel(name = "体况评分") - private Long score; - - /** - * 羊舍id - */ - private Long sheepfold; - @Excel(name = "羊舍名称") - private String sheepfoldName; - /** - * 备注 - */ - @Excel(name = "备注") - private String comment; - - /** - * 技术员 - */ - @Excel(name = "技术员") - private String technician; - -} 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 deleted file mode 100644 index 325a020..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java +++ /dev/null @@ -1,84 +0,0 @@ -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; - -/** - * 乳房评分对象 sc_breast_rating - * - * @author ruoyi - * @date 2025-07-27 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScBreastRating extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * $column.columnComment - */ - private Long id; - - /** - * 羊只id - */ - - private String sheepId; - @Excel(name = "羊只id") - private String manageTags; - /** - * 乳房深度 - */ - @Excel(name = "乳房深度") - private Long depth; - - /** - * 乳房长度 - */ - @Excel(name = "乳房长度") - private Long length; - - /** - * 乳房位置 - */ - @Excel(name = "乳房位置") - private String position; - - /** - * 乳房附着 - */ - @Excel(name = "乳房附着") - private String adbere; - - /** - * 乳房间隔度 - */ - @Excel(name = "乳房间隔度") - private String spacing; - - /** - * 乳房评分 - */ - @Excel(name = "乳房评分") - private Long score; - - /** - * 备注 - */ - @Excel(name = "备注") - private String comment; - - /** - * 技术员 - */ - @Excel(name = "技术员") - private String technician; - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java deleted file mode 100644 index 7566ff1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.mapper; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; - -/** - * 体尺测量Mapper接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface ScBodyMeasureMapper -{ - /** - * 查询体尺测量 - * - * @param id 体尺测量主键 - * @return 体尺测量 - */ - public ScBodyMeasure selectScBodyMeasureById(Long id); - - /** - * 查询体尺测量列表 - * - * @param scBodyMeasure 体尺测量 - * @return 体尺测量集合 - */ - public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure); - - /** - * 新增体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure); - - /** - * 修改体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure); - - /** - * 删除体尺测量 - * - * @param id 体尺测量主键 - * @return 结果 - */ - public int deleteScBodyMeasureById(Long id); - - /** - * 批量删除体尺测量 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBodyMeasureByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java deleted file mode 100644 index 1e7a4e6..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.mapper; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; - -/** - * 体况评分Mapper接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface ScBodyScoreMapper -{ - /** - * 查询体况评分 - * - * @param id 体况评分主键 - * @return 体况评分 - */ - public ScBodyScore selectScBodyScoreById(Long id); - - /** - * 查询体况评分列表 - * - * @param scBodyScore 体况评分 - * @return 体况评分集合 - */ - public List selectScBodyScoreList(ScBodyScore scBodyScore); - - /** - * 新增体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - public int insertScBodyScore(ScBodyScore scBodyScore); - - /** - * 修改体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - public int updateScBodyScore(ScBodyScore scBodyScore); - - /** - * 删除体况评分 - * - * @param id 体况评分主键 - * @return 结果 - */ - public int deleteScBodyScoreById(Long id); - - /** - * 批量删除体况评分 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBodyScoreByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java deleted file mode 100644 index 485043a..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.mapper; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; - -/** - * 乳房评分Mapper接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface ScBreastRatingMapper -{ - /** - * 查询乳房评分 - * - * @param id 乳房评分主键 - * @return 乳房评分 - */ - public ScBreastRating selectScBreastRatingById(Long id); - - /** - * 查询乳房评分列表 - * - * @param scBreastRating 乳房评分 - * @return 乳房评分集合 - */ - public List selectScBreastRatingList(ScBreastRating scBreastRating); - - /** - * 新增乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - public int insertScBreastRating(ScBreastRating scBreastRating); - - /** - * 修改乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - public int updateScBreastRating(ScBreastRating scBreastRating); - - /** - * 删除乳房评分 - * - * @param id 乳房评分主键 - * @return 结果 - */ - public int deleteScBreastRatingById(Long id); - - /** - * 批量删除乳房评分 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBreastRatingByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java deleted file mode 100644 index f86848f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; - -/** - * 体尺测量Service接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface IScBodyMeasureService -{ - /** - * 查询体尺测量 - * - * @param id 体尺测量主键 - * @return 体尺测量 - */ - public ScBodyMeasure selectScBodyMeasureById(Long id); - - /** - * 查询体尺测量列表 - * - * @param scBodyMeasure 体尺测量 - * @return 体尺测量集合 - */ - public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure); - - /** - * 新增体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure); - - /** - * 修改体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure); - - /** - * 批量删除体尺测量 - * - * @param ids 需要删除的体尺测量主键集合 - * @return 结果 - */ - public int deleteScBodyMeasureByIds(Long[] ids); - - /** - * 删除体尺测量信息 - * - * @param id 体尺测量主键 - * @return 结果 - */ - public int deleteScBodyMeasureById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java deleted file mode 100644 index 78ac57d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; - -/** - * 体况评分Service接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface IScBodyScoreService -{ - /** - * 查询体况评分 - * - * @param id 体况评分主键 - * @return 体况评分 - */ - public ScBodyScore selectScBodyScoreById(Long id); - - /** - * 查询体况评分列表 - * - * @param scBodyScore 体况评分 - * @return 体况评分集合 - */ - public List selectScBodyScoreList(ScBodyScore scBodyScore); - - /** - * 新增体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - public int insertScBodyScore(ScBodyScore scBodyScore); - - /** - * 修改体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - public int updateScBodyScore(ScBodyScore scBodyScore); - - /** - * 批量删除体况评分 - * - * @param ids 需要删除的体况评分主键集合 - * @return 结果 - */ - public int deleteScBodyScoreByIds(Long[] ids); - - /** - * 删除体况评分信息 - * - * @param id 体况评分主键 - * @return 结果 - */ - public int deleteScBodyScoreById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java deleted file mode 100644 index 81b408f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service; - -import java.util.List; -import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; - -/** - * 乳房评分Service接口 - * - * @author ruoyi - * @date 2025-07-27 - */ -public interface IScBreastRatingService -{ - /** - * 查询乳房评分 - * - * @param id 乳房评分主键 - * @return 乳房评分 - */ - public ScBreastRating selectScBreastRatingById(Long id); - - /** - * 查询乳房评分列表 - * - * @param scBreastRating 乳房评分 - * @return 乳房评分集合 - */ - public List selectScBreastRatingList(ScBreastRating scBreastRating); - - /** - * 新增乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - public int insertScBreastRating(ScBreastRating scBreastRating); - - /** - * 修改乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - public int updateScBreastRating(ScBreastRating scBreastRating); - - /** - * 批量删除乳房评分 - * - * @param ids 需要删除的乳房评分主键集合 - * @return 结果 - */ - public int deleteScBreastRatingByIds(Long[] ids); - - /** - * 删除乳房评分信息 - * - * @param id 乳房评分主键 - * @return 结果 - */ - public int deleteScBreastRatingById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java deleted file mode 100644 index 985960e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service.impl; - -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.module.base.domain.BasSheep; -import com.zhyc.module.base.service.IBasSheepService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.bodyManage.mapper.ScBodyMeasureMapper; -import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; -import com.zhyc.module.produce.bodyManage.service.IScBodyMeasureService; - -/** - * 体尺测量Service业务层处理 - * - * @author ruoyi - * @date 2025-07-27 - */ -@Service -public class ScBodyMeasureServiceImpl implements IScBodyMeasureService -{ - @Autowired - private ScBodyMeasureMapper scBodyMeasureMapper; - @Autowired - private IBasSheepService basSheepService; - /** - * 查询体尺测量 - * - * @param id 体尺测量主键 - * @return 体尺测量 - */ - @Override - public ScBodyMeasure selectScBodyMeasureById(Long id) - { - return scBodyMeasureMapper.selectScBodyMeasureById(id); - } - - /** - * 查询体尺测量列表 - * - * @param scBodyMeasure 体尺测量 - * @return 体尺测量 - */ - @Override - public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure) - { - return scBodyMeasureMapper.selectScBodyMeasureList(scBodyMeasure); - } - - /** - * 新增体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - @Override - public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure) - { - String manageTags = scBodyMeasure.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBodyMeasure.setSheepId(sheep.getId()); - } - scBodyMeasure.setCreateTime(DateUtils.getNowDate()); - scBodyMeasure.setCreateBy(SecurityUtils.getUsername()); - return scBodyMeasureMapper.insertScBodyMeasure(scBodyMeasure); - } - - /** - * 修改体尺测量 - * - * @param scBodyMeasure 体尺测量 - * @return 结果 - */ - @Override - public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure) - { - String manageTags = scBodyMeasure.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBodyMeasure.setSheepId(sheep.getId()); - } - return scBodyMeasureMapper.updateScBodyMeasure(scBodyMeasure); - } - - /** - * 批量删除体尺测量 - * - * @param ids 需要删除的体尺测量主键 - * @return 结果 - */ - @Override - public int deleteScBodyMeasureByIds(Long[] ids) - { - return scBodyMeasureMapper.deleteScBodyMeasureByIds(ids); - } - - /** - * 删除体尺测量信息 - * - * @param id 体尺测量主键 - * @return 结果 - */ - @Override - public int deleteScBodyMeasureById(Long id) - { - return scBodyMeasureMapper.deleteScBodyMeasureById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java deleted file mode 100644 index 1a55d69..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service.impl; - -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.module.base.domain.BasSheep; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.service.IBasSheepService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.bodyManage.mapper.ScBodyScoreMapper; -import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; -import com.zhyc.module.produce.bodyManage.service.IScBodyScoreService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 体况评分Service业务层处理 - * - * @author ruoyi - * @date 2025-07-27 - */ -@Service -public class ScBodyScoreServiceImpl implements IScBodyScoreService { - @Autowired - private ScBodyScoreMapper scBodyScoreMapper; - @Autowired - private IBasSheepService basSheepService; - @Autowired - private BasSheepMapper basSheepMapper; - - /** - * 查询体况评分 - * - * @param id 体况评分主键 - * @return 体况评分 - */ - @Override - public ScBodyScore selectScBodyScoreById(Long id) { - return scBodyScoreMapper.selectScBodyScoreById(id); - } - - /** - * 查询体况评分列表 - * - * @param scBodyScore 体况评分 - * @return 体况评分 - */ - @Override - public List selectScBodyScoreList(ScBodyScore scBodyScore) { - return scBodyScoreMapper.selectScBodyScoreList(scBodyScore); - } - - /** - * 新增体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertScBodyScore(ScBodyScore scBodyScore) { - String manageTags = scBodyScore.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBodyScore.setSheepId(sheep.getId().toString()); - } - scBodyScore.setCreateTime(DateUtils.getNowDate()); - scBodyScore.setCreateBy(SecurityUtils.getUsername()); - - int insertResult = scBodyScoreMapper.insertScBodyScore(scBodyScore); - - if (insertResult > 0 && scBodyScore.getSheepId() != null) { - BasSheep updateSheep = new BasSheep(); - updateSheep.setId(Long.parseLong(scBodyScore.getSheepId())); - updateSheep.setBody(scBodyScore.getScore()); - basSheepMapper.updateBasSheep(updateSheep); - } - - return insertResult; - } - - /** - * 修改体况评分 - * - * @param scBodyScore 体况评分 - * @return 结果 - */ - @Override - public int updateScBodyScore(ScBodyScore scBodyScore) { - String manageTags = scBodyScore.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBodyScore.setSheepId(sheep.getId().toString()); - } - return scBodyScoreMapper.updateScBodyScore(scBodyScore); - } - - /** - * 批量删除体况评分 - * - * @param ids 需要删除的体况评分主键 - * @return 结果 - */ - @Override - public int deleteScBodyScoreByIds(Long[] ids) { - return scBodyScoreMapper.deleteScBodyScoreByIds(ids); - } - - /** - * 删除体况评分信息 - * - * @param id 体况评分主键 - * @return 结果 - */ - @Override - public int deleteScBodyScoreById(Long id) { - return scBodyScoreMapper.deleteScBodyScoreById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java deleted file mode 100644 index e813d43..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.zhyc.module.produce.bodyManage.service.impl; - -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.module.base.domain.BasSheep; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.service.IBasSheepService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.bodyManage.mapper.ScBreastRatingMapper; -import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; -import com.zhyc.module.produce.bodyManage.service.IScBreastRatingService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 乳房评分Service业务层处理 - * - * @author ruoyi - * @date 2025-07-27 - */ -@Service -public class ScBreastRatingServiceImpl implements IScBreastRatingService { - @Autowired - private ScBreastRatingMapper scBreastRatingMapper; - - @Autowired - private IBasSheepService basSheepService; - - @Autowired - private BasSheepMapper basSheepMapper; - - /** - * 查询乳房评分 - * - * @param id 乳房评分主键 - * @return 乳房评分 - */ - @Override - public ScBreastRating selectScBreastRatingById(Long id) { - return scBreastRatingMapper.selectScBreastRatingById(id); - } - - /** - * 查询乳房评分列表 - * - * @param scBreastRating 乳房评分 - * @return 乳房评分 - */ - @Override - public List selectScBreastRatingList(ScBreastRating scBreastRating) { - return scBreastRatingMapper.selectScBreastRatingList(scBreastRating); - } - - /** - * 新增乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertScBreastRating(ScBreastRating scBreastRating) { - String manageTags = scBreastRating.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBreastRating.setSheepId(sheep.getId().toString()); - } - scBreastRating.setCreateTime(DateUtils.getNowDate()); - scBreastRating.setCreateBy(SecurityUtils.getUsername()); - int rows = scBreastRatingMapper.insertScBreastRating(scBreastRating); - - if (rows > 0 && scBreastRating.getSheepId() != null) { - Long sheepId = Long.parseLong(scBreastRating.getSheepId()); - Long score = scBreastRating.getScore().longValue(); - - BasSheep updateSheep = new BasSheep(); - updateSheep.setId(sheepId); - updateSheep.setBreast(score); - - basSheepMapper.updateBasSheep(updateSheep); - } - return rows; - } - - /** - * 修改乳房评分 - * - * @param scBreastRating 乳房评分 - * @return 结果 - */ - @Override - public int updateScBreastRating(ScBreastRating scBreastRating) { - String manageTags = scBreastRating.getManageTags(); - if (StringUtils.isNotBlank(manageTags)) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("耳号不存在,请检查输入"); - } - scBreastRating.setSheepId(sheep.getId().toString()); - } - return scBreastRatingMapper.updateScBreastRating(scBreastRating); - } - - /** - * 批量删除乳房评分 - * - * @param ids 需要删除的乳房评分主键 - * @return 结果 - */ - @Override - public int deleteScBreastRatingByIds(Long[] ids) { - return scBreastRatingMapper.deleteScBreastRatingByIds(ids); - } - - /** - * 删除乳房评分信息 - * - * @param id 乳房评分主键 - * @return 结果 - */ - @Override - public int deleteScBreastRatingById(Long id) { - return scBreastRatingMapper.deleteScBreastRatingById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java deleted file mode 100644 index 17e4ee4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.zhyc.module.produce.breed.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.common.utils.StringUtils; -import com.zhyc.module.produce.breed.domain.RawSpermRecord; -import com.zhyc.module.produce.breed.service.IRawSpermRecordService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 采精记录Controller - * - * @author ruoyi - * @date 2025-07-23 - */ -@RestController -@RequestMapping("/Sperm/Sperm") -public class RawSpermRecordController extends BaseController -{ - @Autowired - private IRawSpermRecordService rawSpermRecordService; - - /** - * 查询采精记录列表 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:list')") - @GetMapping("/list") - public TableDataInfo list(RawSpermRecord rawSpermRecord) - { - startPage(); - List list = rawSpermRecordService.selectRawSpermRecordList(rawSpermRecord); - return getDataTable(list); - } - - /** - * 导出采精记录列表 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:export')") - @Log(title = "采精记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, RawSpermRecord rawSpermRecord) - { - List list = rawSpermRecordService.selectRawSpermRecordList(rawSpermRecord); - ExcelUtil util = new ExcelUtil(RawSpermRecord.class); - util.exportExcel(response, list, "采精记录数据"); - } - - /** - * 获取采精记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(rawSpermRecordService.selectRawSpermRecordById(id)); - } - - /** - * 新增采精记录 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:add')") - @Log(title = "采精记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody RawSpermRecord rawSpermRecord) - { - // 如果传入的是耳号,需要先根据耳号查询羊只ID - if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { - Long sheepId = rawSpermRecordService.getSheepIdByManageTags(rawSpermRecord.getManageTags()); - if (sheepId == null) { - return error("未找到对应耳号的羊只信息"); - } - rawSpermRecord.setSheepId(sheepId); - } - - return toAjax(rawSpermRecordService.insertRawSpermRecord(rawSpermRecord)); - } - - /** - * 修改采精记录 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:edit')") - @Log(title = "采精记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody RawSpermRecord rawSpermRecord) - { - // 如果传入的是耳号,需要先根据耳号查询羊只ID - if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { - Long sheepId = rawSpermRecordService.getSheepIdByManageTags(rawSpermRecord.getManageTags()); - if (sheepId == null) { - return error("未找到对应耳号的羊只信息"); - } - rawSpermRecord.setSheepId(sheepId); - } - - return toAjax(rawSpermRecordService.updateRawSpermRecord(rawSpermRecord)); - } - - /** - * 删除采精记录 - */ - @PreAuthorize("@ss.hasPermi('Sperm:Sperm:remove')") - @Log(title = "采精记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(rawSpermRecordService.deleteRawSpermRecordByIds(ids)); - } - - /** - * 根据耳号查询羊只信息 - */ - @GetMapping("/getSheepByManageTags/{manageTags}") - public AjaxResult getSheepByManageTags(@PathVariable("manageTags") String manageTags) - { - Long sheepId = rawSpermRecordService.getSheepIdByManageTags(manageTags); - if (sheepId != null) { - return success(sheepId); - } else { - return error("未找到对应耳号的羊只信息"); - } - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java deleted file mode 100644 index 7b6b947..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.produce.breed.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.produce.breed.domain.ScBreedPlan; -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.produce.breed.service.IScBreedPlanService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 配种计划Controller - * - * @author ruoyi - * @date 2025-07-16 - */ -@RestController -@RequestMapping("/mating_plan/mating_plan") -public class ScBreedPlanController extends BaseController -{ - @Autowired - private IScBreedPlanService scBreedPlanService; - - /** - * 查询配种计划列表 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:list')") - @GetMapping("/list") - public TableDataInfo list(ScBreedPlan scBreedPlan) - { - startPage(); - List list = scBreedPlanService.selectScBreedPlanList(scBreedPlan); - return getDataTable(list); - } - - /** - * 导出配种计划列表 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:export')") - @Log(title = "配种计划", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScBreedPlan scBreedPlan) - { - List list = scBreedPlanService.selectScBreedPlanList(scBreedPlan); - ExcelUtil util = new ExcelUtil(ScBreedPlan.class); - util.exportExcel(response, list, "配种计划数据"); - } - - /** - * 获取配种计划详细信息 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBreedPlanService.selectScBreedPlanById(id)); - } - - /** - * 新增配种计划 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:add')") - @Log(title = "配种计划", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScBreedPlan scBreedPlan) - { - return toAjax(scBreedPlanService.insertScBreedPlan(scBreedPlan)); - } - - /** - * 修改配种计划 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:edit')") - @Log(title = "配种计划", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScBreedPlan scBreedPlan) - { - return toAjax(scBreedPlanService.updateScBreedPlan(scBreedPlan)); - } - - /** - * 删除配种计划 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:remove')") - @Log(title = "配种计划", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBreedPlanService.deleteScBreedPlanByIds(ids)); - } -} 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 deleted file mode 100644 index c872868..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java +++ /dev/null @@ -1,185 +0,0 @@ -package com.zhyc.module.produce.breed.controller; - -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; -import com.zhyc.module.produce.breed.service.IScBreedPlanGenerateService; -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.common.core.page.TableDataInfo; - -/** - * 配种计划生成Controller - * - * @author ruoyi - * @date 2025-07-16 - */ -@RestController -@RequestMapping("/mating_plan/generate") -public class ScBreedPlanGenerateController extends BaseController -{ - @Autowired - private IScBreedPlanGenerateService scBreedPlanGenerateService; - - /** - * 查询配种计划生成列表 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:list')") - @GetMapping("/list") - public TableDataInfo list(ScBreedPlanGenerate scBreedPlanGenerate) - { - startPage(); - List list = scBreedPlanGenerateService.selectScBreedPlanGenerateList(scBreedPlanGenerate); - return getDataTable(list); - } - - /** - * 筛选符合条件的母羊 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:selectEwe')") - @GetMapping("/selectEwe") - public AjaxResult selectEligibleEwe() - { - List> eligibleEwe = scBreedPlanGenerateService.selectEligibleEwe(); - return success(eligibleEwe); - } - - /** - * 筛选符合条件的公羊 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:selectRam')") - @GetMapping("/selectRam") - public AjaxResult selectEligibleRam() - { - List> eligibleRam = scBreedPlanGenerateService.selectEligibleRam(); - return success(eligibleRam); - } - - /** - * 自动生成配种计划 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:auto')") - @PostMapping("/auto") - @Log(title = "自动生成配种计划", businessType = BusinessType.INSERT) - public AjaxResult autoGenerateBreedPlan(@RequestBody Map params) - { - try { - // 安全的类型转换 - List eweIdsRaw = (List) params.get("eweIds"); - List ramIdsRaw = (List) params.get("ramIds"); - - if (eweIdsRaw == null || ramIdsRaw == null) { - return error("参数不能为空"); - } - - List eweIds = eweIdsRaw.stream() - .map(obj -> { - if (obj instanceof Integer) { - return ((Integer) obj).longValue(); - } else if (obj instanceof Long) { - return (Long) obj; - } else { - return Long.valueOf(obj.toString()); - } - }) - .collect(Collectors.toList()); - - List ramIds = ramIdsRaw.stream() - .map(obj -> { - if (obj instanceof Integer) { - return ((Integer) obj).longValue(); - } else if (obj instanceof Long) { - return (Long) obj; - } else { - return Long.valueOf(obj.toString()); - } - }) - .collect(Collectors.toList()); - - ScBreedPlanGenerate planGenerate = scBreedPlanGenerateService.autoGenerateBreedPlan(eweIds, ramIds); - return success(planGenerate); - } catch (Exception e) { - logger.error("自动生成配种计划失败", e); - return error("自动生成配种计划失败:" + e.getMessage()); - } - } - - /** - * 获取配种计划生成详细信息 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBreedPlanGenerateService.selectScBreedPlanGenerateById(id)); - } - - /** - * 保存配种计划生成 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:add')") - @Log(title = "配种计划生成", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScBreedPlanGenerate scBreedPlanGenerate) - { - return toAjax(scBreedPlanGenerateService.insertScBreedPlanGenerate(scBreedPlanGenerate)); - } - - /** - * 修改配种计划生成 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:edit')") - @Log(title = "配种计划生成", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScBreedPlanGenerate scBreedPlanGenerate) - { - return toAjax(scBreedPlanGenerateService.updateScBreedPlanGenerate(scBreedPlanGenerate)); - } - - /** - * 审批配种计划 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:approve')") - @Log(title = "审批配种计划", businessType = BusinessType.UPDATE) - @PutMapping("/approve/{id}") - public AjaxResult approve(@PathVariable Long id) - { - return toAjax(scBreedPlanGenerateService.approveBreedPlan(id)); - } - - /** - * 获取配种计划详情 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:view')") - @GetMapping("/view/{id}") - public AjaxResult viewBreedPlan(@PathVariable Long id) - { - Map planDetails = scBreedPlanGenerateService.getBreedPlanDetails(id); - return success(planDetails); - } - - /** - * 删除配种计划生成 - */ - @PreAuthorize("@ss.hasPermi('mating_plan:generate:remove')") - @Log(title = "配种计划生成", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBreedPlanGenerateService.deleteScBreedPlanGenerateByIds(ids)); - } -} \ No newline at end of file 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 deleted file mode 100644 index c80c7ae..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java +++ /dev/null @@ -1,158 +0,0 @@ -package com.zhyc.module.produce.breed.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.produce.breed.domain.ScBreedRecord; -import com.zhyc.module.produce.breed.service.IScBreedRecordService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 配种记录Controller - * - * @author ruoyi - * @date 2025-07-23 - */ -@RestController -@RequestMapping("/Breeding_records/Breeding_records") -public class ScBreedRecordController extends BaseController -{ - @Autowired - private IScBreedRecordService scBreedRecordService; - - /** - * 查询配种记录列表 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:list')") - @GetMapping("/list") - public TableDataInfo list(ScBreedRecord scBreedRecord) - { - startPage(); - List list = scBreedRecordService.selectScBreedRecordList(scBreedRecord); - return getDataTable(list); - } - - /** - * 导出配种记录列表 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:export')") - @Log(title = "配种记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScBreedRecord scBreedRecord) - { - List list = scBreedRecordService.selectScBreedRecordList(scBreedRecord); - ExcelUtil util = new ExcelUtil(ScBreedRecord.class); - util.exportExcel(response, list, "配种记录数据"); - } - - /** - * 获取配种记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scBreedRecordService.selectScBreedRecordById(id)); - } - - /** - * 根据耳号查询羊只信息 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") - @GetMapping(value = "/getSheepByTags/{manageTags}") - public AjaxResult getSheepInfoByTags(@PathVariable("manageTags") String manageTags) - { - return success(scBreedRecordService.getSheepInfoByTags(manageTags)); - } - - /** - * 根据母羊耳号获取配种计划信息 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") - @GetMapping(value = "/getBreedPlan/{manageTags}") - public AjaxResult getBreedPlanByEweTags(@PathVariable("manageTags") String manageTags) - { - return success(scBreedRecordService.getBreedPlanByEweTags(manageTags)); - } - - /** - * 新增配种记录 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:add')") - @Log(title = "配种记录", businessType = BusinessType.INSERT) - @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("未找到母羊耳号对应的羊只信息"); - } - scBreedRecord.setEweId(eweId.toString()); - } - - if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { - Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); - if (ramId == null) { - return error("未找到公羊耳号对应的羊只信息"); - } - scBreedRecord.setRamId(ramId.toString()); - } - - return toAjax(scBreedRecordService.insertScBreedRecord(scBreedRecord)); - } - - /** - * 修改配种记录 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:edit')") - @Log(title = "配种记录", businessType = BusinessType.UPDATE) - @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("未找到母羊耳号对应的羊只信息"); - } - scBreedRecord.setEweId(eweId.toString()); - } - - if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { - Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); - if (ramId == null) { - return error("未找到公羊耳号对应的羊只信息"); - } - scBreedRecord.setRamId(ramId.toString()); - } - - return toAjax(scBreedRecordService.updateScBreedRecord(scBreedRecord)); - } - - /** - * 删除配种记录 - */ - @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:remove')") - @Log(title = "配种记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scBreedRecordService.deleteScBreedRecordByIds(ids)); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java deleted file mode 100644 index 4013c1d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.zhyc.module.produce.breed.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.produce.breed.domain.ScDryMilk; -import com.zhyc.module.produce.breed.service.IScDryMilkService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 干奶记录Controller - * - * @author ruoyi - * @date 2025-07-15 - */ -@RestController -@RequestMapping("/drymilk/drymilk") -public class ScDryMilkController extends BaseController -{ - @Autowired - private IScDryMilkService scDryMilkService; - - /** - * 查询干奶记录列表 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:list')") - @GetMapping("/list") - public TableDataInfo list(ScDryMilk scDryMilk) - { - startPage(); - List list = scDryMilkService.selectScDryMilkList(scDryMilk); - return getDataTable(list); - } - - /** - * 导出干奶记录列表 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:export')") - @Log(title = "干奶记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScDryMilk scDryMilk) - { - List list = scDryMilkService.selectScDryMilkList(scDryMilk); - ExcelUtil util = new ExcelUtil(ScDryMilk.class); - util.exportExcel(response, list, "干奶记录数据"); - } - - /** - * 获取干奶记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scDryMilkService.selectScDryMilkById(id)); - } - - /** - * 根据耳号查询羊只ID - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:query')") - @GetMapping(value = "/sheep/{manageTags}") - public AjaxResult getSheepIdByManageTags(@PathVariable("manageTags") String manageTags) - { - Long sheepId = scDryMilkService.selectSheepIdByManageTags(manageTags); - return success(sheepId); - } - - /** - * 新增干奶记录 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:add')") - @Log(title = "干奶记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScDryMilk scDryMilk) - { - return toAjax(scDryMilkService.insertScDryMilk(scDryMilk)); - } - - /** - * 修改干奶记录 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:edit')") - @Log(title = "干奶记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScDryMilk scDryMilk) - { - return toAjax(scDryMilkService.updateScDryMilk(scDryMilk)); - } - - /** - * 删除干奶记录 - */ - @PreAuthorize("@ss.hasPermi('drymilk:drymilk:remove')") - @Log(title = "干奶记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scDryMilkService.deleteScDryMilkByIds(ids)); - } -} \ 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 deleted file mode 100644 index 04bce38..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java +++ /dev/null @@ -1,146 +0,0 @@ -package com.zhyc.module.produce.breed.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.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; -import com.zhyc.module.produce.breed.service.IScLambingRecordService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 产羔记录Controller - */ -@RestController -@RequestMapping("/breed/lambing_records") -public class ScLambingRecordController extends BaseController { - - @Autowired - private IScLambingRecordService scLambingRecordService; - - /** - * 查询产羔记录列表 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:list')") - @GetMapping("/list") - public TableDataInfo list(ScLambingRecord scLambingRecord) { - startPage(); - List list = scLambingRecordService.selectScLambingRecordList(scLambingRecord); - return getDataTable(list); - } - - /** - * 导出产羔记录列表 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:export')") - @Log(title = "产羔记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScLambingRecord scLambingRecord) { - List list = scLambingRecordService.selectScLambingRecordList(scLambingRecord); - ExcelUtil util = new ExcelUtil(ScLambingRecord.class); - util.exportExcel(response, list, "产羔记录数据"); - } - - /** - * 获取产羔记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return success(scLambingRecordService.selectScLambingRecordById(id)); - } - - /** - * 新增产羔记录(包含羔羊详情) - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:add')") - @Log(title = "产羔记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScLambingRecord scLambingRecord) { - try { - // 设置创建人 - scLambingRecord.setCreateBy(getUsername()); - - // 如果没有设置创建时间,使用当前时间 - if (scLambingRecord.getCreateTime() == null) { - scLambingRecord.setCreateTime(new java.util.Date()); - } - - int result = scLambingRecordService.insertScLambingRecord(scLambingRecord); - - if (result > 0) { - String message = "新增产羔记录成功"; - if (scLambingRecord.getLambDetails() != null && !scLambingRecord.getLambDetails().isEmpty()) { - message += ",同时录入了 " + scLambingRecord.getLambDetails().size() + " 只羔羊详情"; - } - return success(message); - } else { - return error("新增产羔记录失败"); - } - } catch (Exception e) { - logger.error("新增产羔记录异常", e); - return error("新增产羔记录失败:" + e.getMessage()); - } - } - - /** - * 修改产羔记录 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:edit')") - @Log(title = "产羔记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScLambingRecord scLambingRecord) { - try { - scLambingRecord.setUpdateBy(getUsername()); - scLambingRecord.setUpdateTime(new java.util.Date()); - return toAjax(scLambingRecordService.updateScLambingRecord(scLambingRecord)); - } catch (Exception e) { - logger.error("修改产羔记录异常", e); - return error("修改产羔记录失败:" + e.getMessage()); - } - } - - /** - * 删除产羔记录 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:remove')") - @Log(title = "产羔记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - try { - return toAjax(scLambingRecordService.deleteScLambingRecordByIds(ids)); - } catch (Exception e) { - logger.error("删除产羔记录异常", e); - return error("删除产羔记录失败:" + e.getMessage()); - } - } - - /** - * 查询羔羊详情 - */ - @PreAuthorize("@ss.hasPermi('breed:lambing_records:query')") - @GetMapping("/lamb_detail/{lambingRecordId}") - public AjaxResult getLambDetail(@PathVariable("lambingRecordId") Long lambingRecordId) { - try { - List lambDetails = scLambingRecordService.selectLambDetailByLambingRecordId(lambingRecordId); - return success(lambDetails); - } catch (Exception e) { - logger.error("查询羔羊详情异常", e); - return error("查询羔羊详情失败:" + e.getMessage()); - } - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java deleted file mode 100644 index 08d5cc1..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java +++ /dev/null @@ -1,116 +0,0 @@ -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; -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.RequestParam; -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.produce.breed.domain.ScPregnancyRecord; -import com.zhyc.module.produce.breed.service.IScPregnancyRecordService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 孕检记录Controller - * - * @author zhyc - * @date 2025-01-21 - */ -@RestController -@RequestMapping("/Pregnancy_Test/Pregnancy_Test") -public class ScPregnancyRecordController extends BaseController -{ - @Autowired - private IScPregnancyRecordService scPregnancyRecordService; - - /** - * 查询孕检记录列表 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:list')") - @GetMapping("/list") - public TableDataInfo list(ScPregnancyRecord scPregnancyRecord) - { - startPage(); - List list = scPregnancyRecordService.selectScPregnancyRecordList(scPregnancyRecord); - return getDataTable(list); - } - - /** - * 导出孕检记录列表 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:export')") - @Log(title = "孕检记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScPregnancyRecord scPregnancyRecord) - { - List list = scPregnancyRecordService.selectScPregnancyRecordList(scPregnancyRecord); - ExcelUtil util = new ExcelUtil(ScPregnancyRecord.class); - util.exportExcel(response, list, "孕检记录数据"); - } - - /** - * 获取孕检记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scPregnancyRecordService.selectScPregnancyRecordById(id)); - } - - /** - * 新增孕检记录 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:add')") - @Log(title = "孕检记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScPregnancyRecord scPregnancyRecord) - { - return toAjax(scPregnancyRecordService.insertScPregnancyRecord(scPregnancyRecord)); - } - - /** - * 修改孕检记录 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:edit')") - @Log(title = "孕检记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScPregnancyRecord scPregnancyRecord) - { - return toAjax(scPregnancyRecordService.updateScPregnancyRecord(scPregnancyRecord)); - } - - /** - * 删除孕检记录 - */ - @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:remove')") - @Log(title = "孕检记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scPregnancyRecordService.deleteScPregnancyRecordByIds(ids)); - } - - /** - * 根据耳号获取羊只信息 - */ - @GetMapping("/getSheepByManageTags") - public AjaxResult getSheepByManageTags(@RequestParam("manageTags") String manageTags) - { - Map sheepInfo = scPregnancyRecordService.getSheepByManageTags(manageTags); - return success(sheepInfo); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java deleted file mode 100644 index cbd1964..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java +++ /dev/null @@ -1,120 +0,0 @@ -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; -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.produce.breed.domain.ScSheepDeath; -import com.zhyc.module.produce.breed.service.IScSheepDeathService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 羊只死淘记录Controller - * - * @author ruoyi - * @date 2025-08-06 - */ -@RestController -@RequestMapping("/sheep_death/death") -public class ScSheepDeathController extends BaseController -{ - @Autowired - private IScSheepDeathService scSheepDeathService; - - /** - * 查询羊只死淘记录列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:list')") - @GetMapping("/list") - public TableDataInfo list(ScSheepDeath scSheepDeath) - { - startPage(); - List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); - return getDataTable(list); - } - - /** - * 根据管理耳号查询羊只信息 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") - @GetMapping("/sheepInfo/{manageTags}") - public AjaxResult getSheepInfo(@PathVariable("manageTags") String manageTags) - { - Map sheepInfo = scSheepDeathService.selectSheepFileByManageTags(manageTags); - if (sheepInfo != null) { - return success(sheepInfo); - } else { - return error("未找到该耳号对应的羊只信息"); - } - } - - /** - * 导出羊只死淘记录列表 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:export')") - @Log(title = "羊只死淘记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScSheepDeath scSheepDeath) - { - List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); - ExcelUtil util = new ExcelUtil(ScSheepDeath.class); - util.exportExcel(response, list, "羊只死淘记录数据"); - } - - /** - * 获取羊只死淘记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scSheepDeathService.selectScSheepDeathById(id)); - } - - /** - * 新增羊只死淘记录 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:add')") - @Log(title = "羊只死淘记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScSheepDeath scSheepDeath) - { - return toAjax(scSheepDeathService.insertScSheepDeath(scSheepDeath)); - } - - /** - * 修改羊只死淘记录 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:edit')") - @Log(title = "羊只死淘记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScSheepDeath scSheepDeath) - { - return toAjax(scSheepDeathService.updateScSheepDeath(scSheepDeath)); - } - - /** - * 删除羊只死淘记录 - */ - @PreAuthorize("@ss.hasPermi('sheep_death:death:remove')") - @Log(title = "羊只死淘记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scSheepDeathService.deleteScSheepDeathByIds(ids)); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java deleted file mode 100644 index d454abf..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.zhyc.module.produce.breed.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.produce.breed.domain.ScWeanRecord; -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.produce.breed.service.IScWeanRecordService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 断奶记录Controller - * - * @author zhyc - * @date 2024-01-01 - */ -@RestController -@RequestMapping("/Weaning/weaning_record") -public class ScWeanRecordController extends BaseController { - @Autowired - private IScWeanRecordService scWeanRecordService; - - /** - * 查询断奶记录列表 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:list')") - @GetMapping("/list") - public TableDataInfo list(ScWeanRecord scWeanRecord) { - startPage(); - List list = scWeanRecordService.selectScWeanRecordList(scWeanRecord); - return getDataTable(list); - } - - /** - * 导出断奶记录列表 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:export')") - @Log(title = "断奶记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScWeanRecord scWeanRecord) { - List list = scWeanRecordService.selectScWeanRecordList(scWeanRecord); - ExcelUtil util = new ExcelUtil(ScWeanRecord.class); - util.exportExcel(response, list, "断奶记录数据"); - } - - /** - * 获取断奶记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) { - return success(scWeanRecordService.selectScWeanRecordById(id)); - } - - /** - * 根据耳号查询羊只ID - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:query')") - @GetMapping(value = "/sheepId/{earNumber}") - public AjaxResult getSheepIdByEarNumber(@PathVariable("earNumber") String earNumber) { - Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(earNumber); - if (sheepId != null) { - return success(sheepId); - } else { - return error("未找到对应的羊只信息"); - } - } - - /** - * 新增断奶记录 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:add')") - @Log(title = "断奶记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScWeanRecord scWeanRecord) { - // 验证耳号是否存在 - if (scWeanRecord.getEarNumber() != null) { - Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); - if (sheepId == null) { - return error("耳号不存在,请检查后重新输入"); - } - scWeanRecord.setSheepId(sheepId); - } - - // 验证必要字段 - if (scWeanRecord.getSheepId() == null) { - return error("羊只信息不能为空"); - } - if (scWeanRecord.getDatetime() == null) { - return error("断奶日期不能为空"); - } - if (scWeanRecord.getWeight() == null) { - return error("断奶重量不能为空"); - } - if (scWeanRecord.getStatus() == null) { - return error("是否留养不能为空"); - } - - scWeanRecord.setCreateBy(getUsername()); - return toAjax(scWeanRecordService.insertScWeanRecord(scWeanRecord)); - } - - /** - * 修改断奶记录 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:edit')") - @Log(title = "断奶记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScWeanRecord scWeanRecord) { - // 验证耳号是否存在 - if (scWeanRecord.getEarNumber() != null) { - Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); - if (sheepId == null) { - return error("耳号不存在,请检查后重新输入"); - } - scWeanRecord.setSheepId(sheepId); - } - - // 验证必要字段 - if (scWeanRecord.getId() == null) { - return error("记录ID不能为空"); - } - if (scWeanRecord.getSheepId() == null) { - return error("羊只信息不能为空"); - } - if (scWeanRecord.getDatetime() == null) { - return error("断奶日期不能为空"); - } - if (scWeanRecord.getWeight() == null) { - return error("断奶重量不能为空"); - } - if (scWeanRecord.getStatus() == null) { - return error("是否留养不能为空"); - } - - return toAjax(scWeanRecordService.updateScWeanRecord(scWeanRecord)); - } - - /** - * 删除断奶记录 - */ - @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:remove')") - @Log(title = "断奶记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(scWeanRecordService.deleteScWeanRecordByIds(ids)); - } -} \ No newline at end of file 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 deleted file mode 100644 index 2f1c625..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -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; - -/** - * 采精记录对象 raw_sperm_record - * - * @author ruoyi - * @date 2025-07-23 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class RawSpermRecord extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只ID */ - @Excel(name = "羊只ID") - private Long sheepId; - - /** 耳号 */ - @Excel(name = "耳号") - private String manageTags; - - /** 电子耳号 */ - @Excel(name = "电子耳号") - private String electronicTags; - - /** 月龄 */ - @Excel(name = "月龄") - private Long monthAge; - - /** 采精日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "采精日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date pickDate; - - /** 采精量 */ - @Excel(name = "采精量") - private Long amount; - - /** 精液密度 */ - @Excel(name = "精液密度") - private String density; - - /** 精液活力 */ - @Excel(name = "精液活力") - private String vitallity; - - /** 是否性控(0否1是) */ - @Excel(name = "是否性控", readConverterExp = "0=否,1=是") - private Long controlled; - - /** 性欲情况 */ - @Excel(name = "性欲情况") - private String sexualStatus; - - /** 诊疗信息 */ - @Excel(name = "诊疗信息") - private String info; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 采集备注 */ - @Excel(name = "采集备注") - private String comment; - - -} \ No newline at end of file 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 deleted file mode 100644 index 1989341..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java +++ /dev/null @@ -1,39 +0,0 @@ -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; - -/** - * 配种计划对象 sc_breed_plan - * - * @author ruoyi - * @date 2025-07-16 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScBreedPlan extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 公羊id */ - @Excel(name = "公羊id") - private String ramId; - - /** 母羊id */ - @Excel(name = "母羊id") - private String eweId; - - /** 配种类型 */ - @Excel(name = "配种类型") - private Long breedType; - -} 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 deleted file mode 100644 index db6f059..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -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; - -/** - * 配种计划生成对象 sc_breed_plan_generate - * - * @author ruoyi - * @date 2025-07-16 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScBreedPlanGenerate extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 计划名称 */ - @Excel(name = "计划名称") - private String planName; - - /** 计划类型:1-同期发情配种计划 */ - @Excel(name = "计划类型") - private Integer planType; - - /** 计划日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "计划日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date planDate; - - /** 总母羊数 */ - @Excel(name = "总母羊数") - private Integer totalEweCount; - - /** 总公羊数 */ - @Excel(name = "总公羊数") - private Integer totalRamCount; - - /** 配种比例 */ - @Excel(name = "配种比例") - private String breedRatio; - - /** 状态:0-待审批,1-已审批,2-已拒绝 */ - @Excel(name = "状态") - private Integer status; - - /** 审批人 */ - @Excel(name = "审批人") - private String approver; - - /** 审批时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "审批时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private Date approveTime; - - /** 审批意见 */ - private String approveRemark; - -} \ No newline at end of file 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 deleted file mode 100644 index 4380caf..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java +++ /dev/null @@ -1,73 +0,0 @@ -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; - -/** - * 配种计划详情对象 sc_breed_plan_temp - * - * @author ruoyi - * @date 2025-07-16 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScBreedPlanTemp extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 配种计划生成ID */ - private Long planGenerateId; - - /** 公羊ID */ - @Excel(name = "公羊ID") - private String ramId; - - /** 母羊ID */ - @Excel(name = "母羊ID") - private String eweId; - - /** 配种类型 */ - @Excel(name = "配种类型") - private Long breedType; - - /** 公羊管理耳号 */ - @Excel(name = "公羊管理耳号") - private String ramManageTags; - - /** 公羊品种 */ - @Excel(name = "公羊品种") - private String ramVariety; - - /** 母羊管理耳号 */ - @Excel(name = "母羊管理耳号") - private String eweManageTags; - - /** 母羊品种 */ - @Excel(name = "母羊品种") - private String eweVariety; - - /** 母羊体重 */ - @Excel(name = "母羊体重") - private Double eweWeight; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - -} \ No newline at end of file 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 deleted file mode 100644 index c5f548d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java +++ /dev/null @@ -1,116 +0,0 @@ -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; - -/** - * 配种记录对象 sc_breed_record - * - * @author ruoyi - * @date 2025-07-23 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScBreedRecord extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只id */ - @Excel(name = "羊只id") - private Long sheepId; - - /** 配种公羊id */ - @Excel(name = "配种公羊id") - private String ramId; - - /** 配种母羊id */ - @Excel(name = "配种母羊id") - private String eweId; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 繁殖用药/耗精量 */ - @Excel(name = "耗精量") - private String breedDrugs; - - // ============ 显示字段 ============ - - /** 母羊耳号 */ - @Excel(name = "耳号") - private String eweManageTags; - - /** 母羊品种 */ - @Excel(name = "品种") - private String eweVariety; - - /** 公羊耳号 */ - @Excel(name = "配种公羊") - private String ramManageTags; - - /** 公羊品种 */ - @Excel(name = "配种公羊品种") - private String ramVariety; - - /** 胎次 */ - @Excel(name = "胎次") - private Integer eweParity; - - /** 月龄 */ - @Excel(name = "月龄") - private Integer eweMonthAge; - - /** 羊舍名称 */ - @Excel(name = "当前羊舍") - private String eweSheepfoldName; - - /** 繁育状态 */ - @Excel(name = "繁育状态") - private String eweBreedStatus; - - /** 是否性控 */ - @Excel(name = "是否性控", readConverterExp = "0=否,1=是") - private Integer eweControlled; - - /** 羊只备注 */ - @Excel(name = "羊只备注") - private String eweComment; - - /** 牧场名称 */ - @Excel(name = "所在牧场") - private String ranchName; - - /** 配种方式 */ - @Excel(name = "配种方式") - private String matingType; - - /** 羊只类别 */ - @Excel(name = "配种时羊只类别") - private String sheepType; - - /** 配次 */ - @Excel(name = "配次") - private Integer matingCount; - - /** 发情后配种时间 */ - @Excel(name = "发情后配种时间(小时)") - private Long timeSincePlanning; - - /** 牧场ID */ - private Long ranchId; - - -} \ 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 deleted file mode 100644 index 07f0fb8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -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; - -/** - * 干奶记录对象 sc_dry_milk - * - * @author ruoyi - * @date 2025-07-15 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScDryMilk extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键id */ - private Long id; - - /** 羊只id */ - @Excel(name = "羊只id") - private String sheepId; - - /** 干奶日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "干奶日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 是否使用乳头封闭剂 */ - @Excel(name = "是否使用乳头封闭剂") - private Long status; - - /** 转入羊舍id */ - @Excel(name = "转入羊舍id") - private Long sheepfold; - - /** 技术员 */ - @Excel(name = "技术员") - private String tecahnician; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - // 以下为联表查询字段,不存储在sc_dry_milk表中 - - /** 管理耳号 */ - @Excel(name = "耳号") - private String manageTags; - - /** 品种 */ - @Excel(name = "品种") - private String variety; - - /** 羊舍名称 */ - @Excel(name = "转入羊舍") - private String sheepfoldName; - - /** 事件类型 */ - @Excel(name = "事件类型") - private String eventType; - - -} \ No newline at end of file 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 deleted file mode 100644 index 69044e4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -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; - -/** - * 羔羊详情对象 sc_lamb_detail - * - * @author ruoyi - * @date 2025-07-11 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScLambDetail extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 产羔记录ID */ - @Excel(name = "产羔记录ID") - private Long lambingRecordId; - - /** 羔羊耳号 */ - @Excel(name = "羔羊耳号") - private String lambEarNumber; - - /** 羔羊品种ID */ - @Excel(name = "羔羊品种ID") - private Integer lambBreed; // 改为Integer类型,存储品种ID - - /** 性别 */ - @Excel(name = "性别") - private Integer gender; - - /** 出生重量 */ - @Excel(name = "出生重量") - private BigDecimal birthWeight; - - /** 是否留养 */ - @Excel(name = "是否留养") - private Boolean isRetained; - - /** 家系 */ - @Excel(name = "家系") - private String lineage; - - /** 生日 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") - private Date birthday; - - private List lambDetails; - - /** 母羊ID */ - private Long motherId; - - /** 父羊ID */ - private Long fatherId; - - /** 牧场ID */ - private Integer ranchId; - - /** 羊舍ID */ - private Integer sheepfoldId; - - /** 胎次 */ - private Integer parity; - - // getter和setter方法 - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java deleted file mode 100644 index bfb27a0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java +++ /dev/null @@ -1,387 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -import java.util.Date; -import java.util.List; -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; - -/** - * 产羔记录对象 sc_lambing_record - * - * @author ruoyi - * @date 2025-07-11 - */ -public class ScLambingRecord extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只id */ - @Excel(name = "羊只id") - private String sheepId; - - /** 胎次 */ - @Excel(name = "胎次") - private Long parity; - - /** 产羔数量 */ - @Excel(name = "产羔数量") - private Long lambsBorn; - - /** 活羔数量 */ - @Excel(name = "活羔数量") - private Long survival; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 产羔评分 */ - @Excel(name = "产羔评分") - private Long score; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 创建日期 */ - @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") - @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTime; // 改为 createTime - - // ========== 关联查询字段(简化版) ========== - - /** 母羊耳号 */ - @Excel(name = "母羊耳号") - private String femaleEarNumber; - - /** 母羊品种 */ - @Excel(name = "母羊品种") - private String femaleBreed; - - /** 月龄 */ - @Excel(name = "月龄") - private Integer monthAge; - - /** 当前羊舍 */ - @Excel(name = "当前羊舍") - private String currentShed; - - /** 所在牧场 */ - @Excel(name = "所在牧场") - private String farm; - - /** 配种日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date breedingDate; - - /** 公羊耳号 */ - @Excel(name = "公羊耳号") - private String maleEarNumber; - - /** 公羊品种 */ - @Excel(name = "公羊品种") - private String maleBreed; - - /** 产羔时怀孕天数 */ - @Excel(name = "产羔时怀孕天数") - private Integer pregnancyDays; - - /** 折损数(计算字段) */ - @Excel(name = "折损数") - private Integer loss; - - /** 公羔数量(从羊只信息表统计) */ - @Excel(name = "公羔数量") - private Integer maleCount; - - /** 母羔数量(从羊只信息表统计) */ - @Excel(name = "母羔数量") - private Integer femaleCount; - - /** 留养公羔数量 */ - @Excel(name = "留养公羔数量") - private Integer retainedMaleCount; - - /** 留养母羔数量 */ - @Excel(name = "留养母羔数量") - private Integer retainedFemaleCount; - - /** 未留养公羔数量 */ - @Excel(name = "未留养公羔数量") - private Integer unretainedMaleCount; - - /** 未留养母羔数量 */ - @Excel(name = "未留养母羔数量") - private Integer unretainedFemaleCount; - - /** 羔羊信息列表(从羊只信息表查询) */ - private List lambInfoList; - - private List lambDetails; - - // ========== 原有getter和setter方法 ========== - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setSheepId(String sheepId) - { - this.sheepId = sheepId; - } - - public String getSheepId() - { - return sheepId; - } - - public void setParity(Long parity) - { - this.parity = parity; - } - - public Long getParity() - { - return parity; - } - - public void setLambsBorn(Long lambsBorn) - { - this.lambsBorn = lambsBorn; - } - - public Long getLambsBorn() - { - return lambsBorn; - } - - public void setSurvival(Long survival) - { - this.survival = survival; - } - - public Long getSurvival() - { - return survival; - } - - public void setTechnician(String technician) - { - this.technician = technician; - } - - public String getTechnician() - { - return technician; - } - - public void setScore(Long score) - { - this.score = score; - } - - public Long getScore() - { - return score; - } - - public void setComment(String comment) - { - this.comment = comment; - } - - public String getComment() - { - return comment; - } - - public void setCreateTime(Date createTime) - { - this.createTime = createTime; - } - - public Date getCreateTime() - { - return createTime; - } - - // ========== 简化版关联字段的getter和setter方法 ========== - - public String getFemaleEarNumber() { - return femaleEarNumber; - } - - public void setFemaleEarNumber(String femaleEarNumber) { - this.femaleEarNumber = femaleEarNumber; - } - - public String getFemaleBreed() { - return femaleBreed; - } - - public void setFemaleBreed(String femaleBreed) { - this.femaleBreed = femaleBreed; - } - - public Integer getMonthAge() { - return monthAge; - } - - public void setMonthAge(Integer monthAge) { - this.monthAge = monthAge; - } - - public String getCurrentShed() { - return currentShed; - } - - public void setCurrentShed(String currentShed) { - this.currentShed = currentShed; - } - - public String getFarm() { - return farm; - } - - public void setFarm(String farm) { - this.farm = farm; - } - - public Date getBreedingDate() { - return breedingDate; - } - - public void setBreedingDate(Date breedingDate) { - this.breedingDate = breedingDate; - } - - public String getMaleEarNumber() { - return maleEarNumber; - } - - public void setMaleEarNumber(String maleEarNumber) { - this.maleEarNumber = maleEarNumber; - } - - public String getMaleBreed() { - return maleBreed; - } - - public void setMaleBreed(String maleBreed) { - this.maleBreed = maleBreed; - } - - - public Integer getPregnancyDays() { - return pregnancyDays; - } - - public void setPregnancyDays(Integer pregnancyDays) { - this.pregnancyDays = pregnancyDays; - } - - public Integer getLoss() { - return loss; - } - - public void setLoss(Integer loss) { - this.loss = loss; - } - - public Integer getMaleCount() { - return maleCount; - } - - public void setMaleCount(Integer maleCount) { - this.maleCount = maleCount; - } - - public Integer getFemaleCount() { - return femaleCount; - } - - public void setFemaleCount(Integer femaleCount) { - this.femaleCount = femaleCount; - } - - public Integer getRetainedMaleCount() { - return retainedMaleCount; - } - - public void setRetainedMaleCount(Integer retainedMaleCount) { - this.retainedMaleCount = retainedMaleCount; - } - - public Integer getRetainedFemaleCount() { - return retainedFemaleCount; - } - - public void setRetainedFemaleCount(Integer retainedFemaleCount) { - this.retainedFemaleCount = retainedFemaleCount; - } - - public Integer getUnretainedMaleCount() { - return unretainedMaleCount; - } - - public void setUnretainedMaleCount(Integer unretainedMaleCount) { - this.unretainedMaleCount = unretainedMaleCount; - } - - public Integer getUnretainedFemaleCount() { - return unretainedFemaleCount; - } - - public void setUnretainedFemaleCount(Integer unretainedFemaleCount) { - this.unretainedFemaleCount = unretainedFemaleCount; - } - - public List getLambInfoList() { - return lambInfoList; - } - - public void setLambInfoList(List lambInfoList) { - this.lambInfoList = lambInfoList; - } - - public List getLambDetails() { - return lambDetails; - } - - public void setLambDetails(List lambDetails) { - this.lambDetails = lambDetails; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("sheepId", getSheepId()) - .append("parity", getParity()) - .append("lambsBorn", getLambsBorn()) - .append("survival", getSurvival()) - .append("technician", getTechnician()) - .append("score", getScore()) - .append("comment", getComment()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) // 改为 createTime - .append("femaleEarNumber", getFemaleEarNumber()) - .append("femaleBreed", getFemaleBreed()) - .append("farm", getFarm()) - .toString(); - } -} - 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 deleted file mode 100644 index f02d38f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java +++ /dev/null @@ -1,122 +0,0 @@ -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; - -/** - * 孕检记录对象 sc_pregnancy_record - * - * @author zhyc - * @date 2025-01-21 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScPregnancyRecord extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只ID */ - @Excel(name = "羊只ID") - private Long sheepId; - - /** 耳号 */ - @Excel(name = "耳号") - private String manageTags; - - /** 孕检日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 孕检结果 */ - @Excel(name = "孕检结果") - private String result; - - /** 胎儿数量 */ - @Excel(name = "胎儿数量") - private Integer fetusCount; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 孕检方式 */ - @Excel(name = "孕检方式") - private String way; - - /** 备注 */ - @Excel(name = "备注") - private String remark; - - /** 是否删除 */ - private Integer isDelete; - - // 关联查询字段 - /** 品种 */ - @Excel(name = "品种") - private String variety; - - /** 月龄 */ - @Excel(name = "月龄") - private Long monthAge; - - /** 胎次 */ - @Excel(name = "胎次") - private Integer parity; - - /** 配次 */ - @Excel(name = "配次") - private Integer matingCounts; - - /** 当前羊舍 */ - @Excel(name = "当前羊舍") - private String sheepfoldName; - - /** 繁育状态 */ - @Excel(name = "繁育状态") - private String breedStatus; - - /** 配种公羊耳号 */ - @Excel(name = "配种公羊") - private String fatherManageTags; - - /** 配种公羊品种 */ - @Excel(name = "配种公羊品种") - private String fatherVariety; - - /** 配种类型 */ - @Excel(name = "配种类型") - private String matingTypeName; - - /** 配种日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date matingDate; - - /** 预产日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date expectedDate; - - /** 上次事件日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "上次事件日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date lastEventDate; - - /** 所在牧场 */ - @Excel(name = "所在牧场") - private String ranchName; - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java deleted file mode 100644 index 52f04dd..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java +++ /dev/null @@ -1,356 +0,0 @@ -package com.zhyc.module.produce.breed.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; - -/** - * 羊只死淘记录对象 sc_sheep_death - * - * @author ruoyi - * @date 2025-08-06 - */ -public class ScSheepDeath extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只ID */ - @Excel(name = "羊只ID") - private Long sheepId; - - /** 管理耳号 */ - @Excel(name = "管理耳号") - private String manageTags; - - /** 事件类型 */ - @Excel(name = "事件类型") - private String eventType; - - /** 死亡日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "死亡日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date deathDate; - - /** 疾病类型ID */ - @Excel(name = "疾病类型ID") - private Long diseaseTypeId; - - /** 疾病子类型ID */ - @Excel(name = "疾病子类型ID") - private Long diseaseSubtypeId; - - /** 死淘去向 */ - @Excel(name = "死淘去向") - private String disposalDirection; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 处理人 */ - @Excel(name = "处理人") - private String handler; - - /** 班组 */ - @Excel(name = "班组") - private String workGroup; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 是否删除(0:未删除 1:已删除) */ - @Excel(name = "是否删除(0:未删除 1:已删除)") - private Long isDelete; - - // 以下字段仅用于前端显示,不存储到数据库 - /** 品种 */ - private String variety; - - /** 死亡时羊只类别 */ - private String sheepType; - - /** 性别 */ - private Integer gender; - - /** 日龄 */ - private Long dayAge; - - /** 胎次 */ - private Integer parity; - - /** 羊舍 */ - private String sheepfoldName; - - /** 繁育状态 */ - private String breedStatus; - - /** 死亡时产后天数 */ - private Integer postLambingDay; - - /** 死亡时泌乳天数 */ - private Integer lactationDay; - - /** 死亡时怀孕天数 */ - private Integer gestationDay; - - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - - public void setSheepId(Long sheepId) - { - this.sheepId = sheepId; - } - - public Long getSheepId() - { - return sheepId; - } - - public void setManageTags(String manageTags) - { - this.manageTags = manageTags; - } - - public String getManageTags() - { - return manageTags; - } - - public void setEventType(String eventType) - { - this.eventType = eventType; - } - - public String getEventType() - { - return eventType; - } - - public void setDeathDate(Date deathDate) - { - this.deathDate = deathDate; - } - - public Date getDeathDate() - { - return deathDate; - } - - public void setDiseaseTypeId(Long diseaseTypeId) - { - this.diseaseTypeId = diseaseTypeId; - } - - public Long getDiseaseTypeId() - { - return diseaseTypeId; - } - - public void setDiseaseSubtypeId(Long diseaseSubtypeId) - { - this.diseaseSubtypeId = diseaseSubtypeId; - } - - public Long getDiseaseSubtypeId() - { - return diseaseSubtypeId; - } - - public void setDisposalDirection(String disposalDirection) - { - this.disposalDirection = disposalDirection; - } - - public String getDisposalDirection() - { - return disposalDirection; - } - - public void setTechnician(String technician) - { - this.technician = technician; - } - - public String getTechnician() - { - return technician; - } - - public void setHandler(String handler) - { - this.handler = handler; - } - - public String getHandler() - { - return handler; - } - - public void setWorkGroup(String workGroup) - { - this.workGroup = workGroup; - } - - public String getWorkGroup() - { - return workGroup; - } - - public void setComment(String comment) - { - this.comment = comment; - } - - public String getComment() - { - return comment; - } - - public void setIsDelete(Long isDelete) - { - this.isDelete = isDelete; - } - - public Long getIsDelete() - { - return isDelete; - } - - // 以下为仅用于显示的字段的getter/setter - public void setVariety(String variety) - { - this.variety = variety; - } - - public String getVariety() - { - return variety; - } - - public void setSheepType(String sheepType) - { - this.sheepType = sheepType; - } - - public String getSheepType() - { - return sheepType; - } - - public void setGender(Integer gender) - { - this.gender = gender; - } - - public Integer getGender() - { - return gender; - } - - public void setDayAge(Long dayAge) - { - this.dayAge = dayAge; - } - - public Long getDayAge() - { - return dayAge; - } - - public void setParity(Integer parity) - { - this.parity = parity; - } - - public Integer getParity() - { - return parity; - } - - public void setSheepfoldName(String sheepfoldName) - { - this.sheepfoldName = sheepfoldName; - } - - public String getSheepfoldName() - { - return sheepfoldName; - } - - public void setBreedStatus(String breedStatus) - { - this.breedStatus = breedStatus; - } - - public String getBreedStatus() - { - return breedStatus; - } - - public void setPostLambingDay(Integer postLambingDay) - { - this.postLambingDay = postLambingDay; - } - - public Integer getPostLambingDay() - { - return postLambingDay; - } - - public void setLactationDay(Integer lactationDay) - { - this.lactationDay = lactationDay; - } - - public Integer getLactationDay() - { - return lactationDay; - } - - public void setGestationDay(Integer gestationDay) - { - this.gestationDay = gestationDay; - } - - public Integer getGestationDay() - { - return gestationDay; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("sheepId", getSheepId()) - .append("manageTags", getManageTags()) - .append("eventType", getEventType()) - .append("deathDate", getDeathDate()) - .append("diseaseTypeId", getDiseaseTypeId()) - .append("diseaseSubtypeId", getDiseaseSubtypeId()) - .append("disposalDirection", getDisposalDirection()) - .append("technician", getTechnician()) - .append("handler", getHandler()) - .append("workGroup", getWorkGroup()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("comment", getComment()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("isDelete", getIsDelete()) - .toString(); - } -} \ No newline at end of file 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 deleted file mode 100644 index 79c70ce..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -import java.math.BigDecimal; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.zhyc.common.annotation.Excel; -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 - * - * @author zhyc - * @date 2024-01-01 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -public class ScWeanRecord extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** 主键ID */ - private Long id; - - /** 羊只ID */ - @Excel(name = "羊只ID") - private Long sheepId; - - /** 断奶日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date datetime; - - /** 断奶重量 */ - @Excel(name = "断奶重量") - private BigDecimal weight; - - /** 是否留养 */ - @Excel(name = "是否留养") - private String status; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 电子耳号 */ - @Excel(name = "电子耳号") - private String electronicTags; - - // 关联查询字段 - /** 耳号 */ - @Excel(name = "耳号") - private String earNumber; - - /** 品种 */ - @Excel(name = "品种") - private String breed; - - /** 事件类型 */ - @Excel(name = "事件类型") - private String eventType; - - /** 性别 */ - @Excel(name = "性别") - private String gender; - - /** 父号 */ - @Excel(name = "父号") - private String fatherNumber; - - /** 母号 */ - @Excel(name = "母号") - private String motherNumber; - - /** 月龄 */ - @Excel(name = "月龄") - private Integer monthAge; - - /** 出生重量 */ - @Excel(name = "出生重量") - private BigDecimal birthWeight; - - /** 羊舍 */ - @Excel(name = "羊舍") - private String sheepPen; - - /** 繁育状态 */ - @Excel(name = "繁育状态") - private String breedingStatus; - - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java deleted file mode 100644 index e8b79f7..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zhyc.module.produce.breed.domain; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.Date; - -/** - * 羊只羔羊信息对象(用于产羔详情显示) - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -class SheepLambInfo { - private String lambEarNumber; // 羔羊耳号 - private String lambBreed; // 羔羊品种 - private Integer gender; // 性别 - private Double birthWeight; // 出生重量 - private Boolean isRetained; // 是否留养 - private String lineage; // 家系 - private Date birthday; // 生日 - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java deleted file mode 100644 index a3b9ef8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.RawSpermRecord; - -/** - * 采精记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-23 - */ -public interface RawSpermRecordMapper -{ - /** - * 查询采精记录 - * - * @param id 采精记录主键 - * @return 采精记录 - */ - public RawSpermRecord selectRawSpermRecordById(Long id); - - /** - * 查询采精记录列表 - * - * @param rawSpermRecord 采精记录 - * @return 采精记录集合 - */ - public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord); - - /** - * 新增采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - public int insertRawSpermRecord(RawSpermRecord rawSpermRecord); - - /** - * 修改采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - public int updateRawSpermRecord(RawSpermRecord rawSpermRecord); - - /** - * 删除采精记录 - * - * @param id 采精记录主键 - * @return 结果 - */ - public int deleteRawSpermRecordById(Long id); - - /** - * 批量删除采精记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteRawSpermRecordByIds(Long[] ids); - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 耳号 - * @return 羊只ID - */ - public Long selectSheepIdByManageTags(String manageTags); -} \ No newline at end of file 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 deleted file mode 100644 index 00eaf16..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import java.util.Map; - -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; -import com.zhyc.module.produce.breed.domain.ScBreedPlan; - -/** - * 配种计划生成Mapper接口 - * - * @author ruoyi - * @date 2025-07-16 - */ -@Mapper -public interface ScBreedPlanGenerateMapper -{ - /** - * 查询配种计划生成 - * - * @param id 配种计划生成主键 - * @return 配种计划生成 - */ - public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id); - - /** - * 查询配种计划生成列表 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 配种计划生成集合 - */ - public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 筛选符合条件的母羊 - * - * @return 符合条件的母羊列表 - */ - public List> selectEligibleEwe(); - - /** - * 筛选符合条件的公羊 - * - * @return 符合条件的公羊列表 - */ - public List> selectEligibleRam(); - - /** - * 新增配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 插入临时配种计划 - * - * @param planGenerateId 配种计划生成ID - * @param breedPlan 配种计划 - * @return 结果 - */ - public int insertTempBreedPlan(@Param("planGenerateId") Long planGenerateId, - @Param("breedPlan") ScBreedPlan breedPlan); - - /** - * 修改配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 将临时配种计划转为正式配种计划 - * - * @param planGenerateId 配种计划生成ID - * @return 结果 - */ - public int transferTempToFormal(Long planGenerateId); - - /** - * 获取配种计划详情 - * - * @param planGenerateId 配种计划生成ID - * @return 配种计划详情列表 - */ - public List> selectBreedPlanDetails(Long planGenerateId); - - /** - * 删除配种计划生成 - * - * @param id 配种计划生成主键 - * @return 结果 - */ - public int deleteScBreedPlanGenerateById(Long id); - - /** - * 批量删除配种计划生成 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBreedPlanGenerateByIds(Long[] ids); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java deleted file mode 100644 index 9699efb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScBreedPlan; -import org.apache.ibatis.annotations.Mapper; - -/** - * 配种计划Mapper接口 - * - * @author ruoyi - * @date 2025-07-16 - */ -@Mapper -public interface ScBreedPlanMapper -{ - /** - * 查询配种计划 - * - * @param id 配种计划主键 - * @return 配种计划 - */ - public ScBreedPlan selectScBreedPlanById(Long id); - - /** - * 查询配种计划列表 - * - * @param scBreedPlan 配种计划 - * @return 配种计划集合 - */ - public List selectScBreedPlanList(ScBreedPlan scBreedPlan); - - /** - * 新增配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - public int insertScBreedPlan(ScBreedPlan scBreedPlan); - - /** - * 修改配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - public int updateScBreedPlan(ScBreedPlan scBreedPlan); - - /** - * 删除配种计划 - * - * @param id 配种计划主键 - * @return 结果 - */ - public int deleteScBreedPlanById(Long id); - - /** - * 批量删除配种计划 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBreedPlanByIds(Long[] ids); -} 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 deleted file mode 100644 index ee67b34..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScBreedRecord; - -/** - * 配种记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-23 - */ -public interface ScBreedRecordMapper -{ - /** - * 查询配种记录 - * - * @param id 配种记录主键 - * @return 配种记录 - */ - public ScBreedRecord selectScBreedRecordById(Long id); - - /** - * 查询配种记录列表 - * - * @param scBreedRecord 配种记录 - * @return 配种记录集合 - */ - public List selectScBreedRecordList(ScBreedRecord scBreedRecord); - - /** - * 新增配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - public int insertScBreedRecord(ScBreedRecord scBreedRecord); - - /** - * 修改配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - public int updateScBreedRecord(ScBreedRecord scBreedRecord); - - /** - * 删除配种记录 - * - * @param id 配种记录主键 - * @return 结果 - */ - public int deleteScBreedRecordById(Long id); - - /** - * 批量删除配种记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScBreedRecordByIds(Long[] ids); - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - public Long getSheepIdByManageTags(String manageTags); - - /** - * 根据公羊耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - public Long getRamIdByManageTags(String manageTags); - - /** - * 根据耳号查询羊只详细信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - public Map getSheepInfoByTags(String manageTags); - - /** - * 根据母羊耳号获取配种计划信息 - * - * @param manageTags 母羊管理耳号 - * @return 配种计划信息 - */ - public Map getBreedPlanByEweTags(String manageTags); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java deleted file mode 100644 index 742dbe7..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScDryMilk; -import org.apache.ibatis.annotations.Mapper; - -/** - * 干奶记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Mapper -public interface ScDryMilkMapper -{ - /** - * 查询干奶记录 - * - * @param id 干奶记录主键 - * @return 干奶记录 - */ - public ScDryMilk selectScDryMilkById(Long id); - - /** - * 查询干奶记录列表 - * - * @param scDryMilk 干奶记录 - * @return 干奶记录集合 - */ - public List selectScDryMilkList(ScDryMilk scDryMilk); - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - public Long selectSheepIdByManageTags(String manageTags); - - /** - * 新增干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - public int insertScDryMilk(ScDryMilk scDryMilk); - - /** - * 修改干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - public int updateScDryMilk(ScDryMilk scDryMilk); - - /** - * 删除干奶记录 - * - * @param id 干奶记录主键 - * @return 结果 - */ - public int deleteScDryMilkById(Long id); - - /** - * 批量删除干奶记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScDryMilkByIds(Long[] ids); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java deleted file mode 100644 index 2ba02de..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScLambDetail; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; - -/** - * 羔羊详情Mapper接口 - */ -@Mapper -public interface ScLambDetailMapper { - - /** - * 查询羔羊详情列表 - */ - public List selectScLambDetailList(ScLambDetail scLambDetail); - - /** - * 新增羔羊详情 - */ - public int insertScLambDetail(ScLambDetail scLambDetail); - public int insertBasSheep(ScLambDetail scLambDetail); - /** - * 批量新增羔羊详情 - */ - public int insertScLambDetailBatch(@Param("list") List scLambDetailList); - public int insertBasSheepBatch(@Param("list") List scLambDetailList); - /** - * 修改羔羊详情 - */ - public int updateScLambDetail(ScLambDetail scLambDetail); - - /** - * 删除羔羊详情 - */ - public int deleteScLambDetailById(Long id); - - /** - * 批量删除羔羊详情 - */ - public int deleteScLambDetailByIds(Long[] ids); - - /** - * 根据产羔记录ID删除羔羊详情 - */ - public int deleteScLambDetailByLambingRecordId(Long lambingRecordId); - - /** - * 查询羔羊详情 - */ - public ScLambDetail selectScLambDetailById(Long id); - - /** - * 根据产羔记录ID查询羔羊详情列表 - */ - public List selectScLambDetailByLambingRecordId(Long lambingRecordId); - - /** - * 检查羔羊耳号是否已存在 - */ - public int checkLambEarNumberExists(@Param("lambEarNumber") String lambEarNumber, @Param("excludeId") Long excludeId); -} \ 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 deleted file mode 100644 index 85edef3..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; -import org.apache.ibatis.annotations.Mapper; - -/** - * 产羔记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-11 - */ -@Mapper -public interface ScLambingRecordMapper -{ - /** - * 查询产羔记录 - * - * @param id 产羔记录主键 - * @return 产羔记录 - */ - public ScLambingRecord selectScLambingRecordById(Long id); - - /** - * 查询产羔记录列表(包含关联信息) - * - * @param scLambingRecord 产羔记录 - * @return 产羔记录集合 - */ - public List selectScLambingRecordList(ScLambingRecord scLambingRecord); - - /** - * 查询产羔记录详细信息(包含关联信息) - * - * @param id 产羔记录主键 - * @return 产羔记录 - */ - public ScLambingRecord selectScLambingRecordDetailById(Long id); - - /** - * 新增产羔记录 - * - * @param scLambingRecord 产羔记录 - * @return 结果 - */ - public int insertScLambingRecord(ScLambingRecord scLambingRecord); - - /** - * 修改产羔记录 - * - * @param scLambingRecord 产羔记录 - * @return 结果 - */ - public int updateScLambingRecord(ScLambingRecord scLambingRecord); - - /** - * 删除产羔记录 - * - * @param id 产羔记录主键 - * @return 结果 - */ - public int deleteScLambingRecordById(Long id); - - /** - * 批量删除产羔记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScLambingRecordByIds(Long[] ids); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java deleted file mode 100644 index 4962992..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; - -/** - * 孕检记录Mapper接口 - * - * @author zhyc - * @date 2025-01-21 - */ -public interface ScPregnancyRecordMapper -{ - /** - * 查询孕检记录 - * - * @param id 孕检记录主键 - * @return 孕检记录 - */ - public ScPregnancyRecord selectScPregnancyRecordById(Long id); - - /** - * 查询孕检记录列表 - * - * @param scPregnancyRecord 孕检记录 - * @return 孕检记录集合 - */ - public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord); - - /** - * 新增孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); - - /** - * 修改孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); - - /** - * 删除孕检记录 - * - * @param id 孕检记录主键 - * @return 结果 - */ - public int deleteScPregnancyRecordById(Long id); - - /** - * 批量删除孕检记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScPregnancyRecordByIds(Long[] ids); - - /** - * 根据耳号查询羊只信息 - * - * @param manageTags 耳号 - * @return 羊只信息 - */ - public Map selectSheepByManageTags(String manageTags); - - /** - * 更新羊只基础表中的孕检相关字段 - * - * @param params 更新参数 - * @return 结果 - */ - public int updateSheepPregnancyInfo(Map params); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java deleted file mode 100644 index 980d20d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScSheepDeath; - -/** - * 羊只死淘记录Mapper接口 - * - * @author ruoyi - * @date 2025-08-06 - */ -public interface ScSheepDeathMapper -{ - /** - * 查询羊只死淘记录 - * - * @param id 羊只死淘记录主键 - * @return 羊只死淘记录 - */ - public ScSheepDeath selectScSheepDeathById(Long id); - - /** - * 查询羊只死淘记录列表 - * - * @param scSheepDeath 羊只死淘记录 - * @return 羊只死淘记录集合 - */ - public List selectScSheepDeathList(ScSheepDeath scSheepDeath); - - /** - * 根据管理耳号查询sheep_file视图信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - public Map selectSheepFileByManageTags(String manageTags); - - /** - * 新增羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - public int insertScSheepDeath(ScSheepDeath scSheepDeath); - - /** - * 修改羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - public int updateScSheepDeath(ScSheepDeath scSheepDeath); - - /** - * 删除羊只死淘记录 - * - * @param id 羊只死淘记录主键 - * @return 结果 - */ - public int deleteScSheepDeathById(Long id); - - /** - * 批量删除羊只死淘记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScSheepDeathByIds(Long[] ids); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java deleted file mode 100644 index cb74588..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.zhyc.module.produce.breed.mapper; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScWeanRecord; -import org.apache.ibatis.annotations.Mapper; - -/** - * 断奶记录Mapper接口 - * - * @author zhyc - * @date 2024-01-01 - */ -@Mapper -public interface ScWeanRecordMapper { - /** - * 查询断奶记录 - * - * @param id 断奶记录主键 - * @return 断奶记录 - */ - public ScWeanRecord selectScWeanRecordById(Long id); - - /** - * 查询断奶记录列表 - * - * @param scWeanRecord 断奶记录 - * @return 断奶记录集合 - */ - public List selectScWeanRecordList(ScWeanRecord scWeanRecord); - - /** - * 新增断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - public int insertScWeanRecord(ScWeanRecord scWeanRecord); - - /** - * 修改断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - public int updateScWeanRecord(ScWeanRecord scWeanRecord); - - /** - * 删除断奶记录 - * - * @param id 断奶记录主键 - * @return 结果 - */ - public int deleteScWeanRecordById(Long id); - - /** - * 批量删除断奶记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScWeanRecordByIds(Long[] ids); - - /** - * 根据耳号查询羊只ID - * - * @param earNumber 耳号 - * @return 羊只ID - */ - public Long selectSheepIdByEarNumber(String earNumber); - - /** - * 根据耳号更新bas_sheep表中的断奶信息 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - public int updateBasSheepWeaningInfo(ScWeanRecord scWeanRecord); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java deleted file mode 100644 index a9b29f2..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.RawSpermRecord; - -/** - * 采精记录Service接口 - * - * @author ruoyi - * @date 2025-07-23 - */ -public interface IRawSpermRecordService -{ - /** - * 查询采精记录 - * - * @param id 采精记录主键 - * @return 采精记录 - */ - public RawSpermRecord selectRawSpermRecordById(Long id); - - /** - * 查询采精记录列表 - * - * @param rawSpermRecord 采精记录 - * @return 采精记录集合 - */ - public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord); - - /** - * 新增采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - public int insertRawSpermRecord(RawSpermRecord rawSpermRecord); - - /** - * 修改采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - public int updateRawSpermRecord(RawSpermRecord rawSpermRecord); - - /** - * 批量删除采精记录 - * - * @param ids 需要删除的采精记录主键集合 - * @return 结果 - */ - public int deleteRawSpermRecordByIds(Long[] ids); - - /** - * 删除采精记录信息 - * - * @param id 采精记录主键 - * @return 结果 - */ - public int deleteRawSpermRecordById(Long id); - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 耳号 - * @return 羊只ID - */ - public Long getSheepIdByManageTags(String manageTags); -} \ No newline at end of file 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 deleted file mode 100644 index 4580492..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; - -/** - * 配种计划生成Service接口 - * - * @author ruoyi - * @date 2025-07-16 - */ -public interface IScBreedPlanGenerateService -{ - /** - * 查询配种计划生成 - * - * @param id 配种计划生成主键 - * @return 配种计划生成 - */ - public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id); - - /** - * 查询配种计划生成列表 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 配种计划生成集合 - */ - public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 筛选符合条件的母羊 - * - * @return 符合条件的母羊列表 - */ - public List> selectEligibleEwe(); - - /** - * 筛选符合条件的公羊 - * - * @return 符合条件的公羊列表 - */ - public List> selectEligibleRam(); - - /** - * 自动生成配种计划 - * - * @param eweIds 母羊ID列表 - * @param ramIds 公羊ID列表 - * @return 生成的配种计划 - */ - public ScBreedPlanGenerate autoGenerateBreedPlan(List eweIds, List ramIds); - - /** - * 新增配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 修改配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); - - /** - * 审批配种计划 - * - * @param id 配种计划ID - * @return 结果 - */ - public int approveBreedPlan(Long id); - - /** - * 获取配种计划详情 - * - * @param id 配种计划ID - * @return 配种计划详情 - */ - public Map getBreedPlanDetails(Long id); - - /** - * 批量删除配种计划生成 - * - * @param ids 需要删除的配种计划生成主键集合 - * @return 结果 - */ - public int deleteScBreedPlanGenerateByIds(Long[] ids); - - /** - * 删除配种计划生成信息 - * - * @param id 配种计划生成主键 - * @return 结果 - */ - public int deleteScBreedPlanGenerateById(Long id); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java deleted file mode 100644 index 256778e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; - -import com.zhyc.module.produce.breed.domain.ScBreedPlan; - -/** - * 配种计划Service接口 - * - * @author ruoyi - * @date 2025-07-16 - */ -public interface IScBreedPlanService -{ - /** - * 查询配种计划 - * - * @param id 配种计划主键 - * @return 配种计划 - */ - public ScBreedPlan selectScBreedPlanById(Long id); - - /** - * 查询配种计划列表 - * - * @param scBreedPlan 配种计划 - * @return 配种计划集合 - */ - public List selectScBreedPlanList(ScBreedPlan scBreedPlan); - - /** - * 新增配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - public int insertScBreedPlan(ScBreedPlan scBreedPlan); - - /** - * 修改配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - public int updateScBreedPlan(ScBreedPlan scBreedPlan); - - /** - * 批量删除配种计划 - * - * @param ids 需要删除的配种计划主键集合 - * @return 结果 - */ - public int deleteScBreedPlanByIds(Long[] ids); - - /** - * 删除配种计划信息 - * - * @param id 配种计划主键 - * @return 结果 - */ - public int deleteScBreedPlanById(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 deleted file mode 100644 index 7f71704..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScBreedRecord; - -/** - * 配种记录Service接口 - * - * @author ruoyi - * @date 2025-07-23 - */ -public interface IScBreedRecordService -{ - /** - * 查询配种记录 - * - * @param id 配种记录主键 - * @return 配种记录 - */ - public ScBreedRecord selectScBreedRecordById(Long id); - - /** - * 查询配种记录列表 - * - * @param scBreedRecord 配种记录 - * @return 配种记录集合 - */ - public List selectScBreedRecordList(ScBreedRecord scBreedRecord); - - /** - * 新增配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - public int insertScBreedRecord(ScBreedRecord scBreedRecord); - - /** - * 修改配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - public int updateScBreedRecord(ScBreedRecord scBreedRecord); - - /** - * 批量删除配种记录 - * - * @param ids 需要删除的配种记录主键集合 - * @return 结果 - */ - public int deleteScBreedRecordByIds(Long[] ids); - - /** - * 删除配种记录信息 - * - * @param id 配种记录主键 - * @return 结果 - */ - public int deleteScBreedRecordById(Long id); - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - public Long getSheepIdByTags(String manageTags); - - /** - * 根据公羊耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - public Long getRamIdByTags(String manageTags); - - /** - * 根据耳号查询羊只详细信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - public Map getSheepInfoByTags(String manageTags); - - /** - * 根据母羊耳号获取配种计划信息 - * - * @param manageTags 母羊管理耳号 - * @return 配种计划信息 - */ - public Map getBreedPlanByEweTags(String manageTags); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java deleted file mode 100644 index ad90b57..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScDryMilk; - -/** - * 干奶记录Service接口 - * - * @author ruoyi - * @date 2025-07-15 - */ -public interface IScDryMilkService -{ - /** - * 查询干奶记录 - * - * @param id 干奶记录主键 - * @return 干奶记录 - */ - public ScDryMilk selectScDryMilkById(Long id); - - /** - * 查询干奶记录列表 - * - * @param scDryMilk 干奶记录 - * @return 干奶记录集合 - */ - public List selectScDryMilkList(ScDryMilk scDryMilk); - - Long selectSheepIdByManageTags(String manageTags); - - /** - * 新增干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - public int insertScDryMilk(ScDryMilk scDryMilk); - - /** - * 修改干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - public int updateScDryMilk(ScDryMilk scDryMilk); - - /** - * 批量删除干奶记录 - * - * @param ids 需要删除的干奶记录主键集合 - * @return 结果 - */ - public int deleteScDryMilkByIds(Long[] ids); - - /** - * 删除干奶记录信息 - * - * @param id 干奶记录主键 - * @return 结果 - */ - public int deleteScDryMilkById(Long id); -} 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 deleted file mode 100644 index 83a6497..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import com.zhyc.module.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; - -/** - * 产羔记录Service接口 - */ -public interface IScLambingRecordService { - - /** - * 查询产羔记录列表 - */ - public List selectScLambingRecordList(ScLambingRecord scLambingRecord); - - /** - * 新增产羔记录(包含羔羊详情) - */ - public int insertScLambingRecord(ScLambingRecord scLambingRecord); - - /** - * 修改产羔记录 - */ - public int updateScLambingRecord(ScLambingRecord scLambingRecord); - - /** - * 批量删除产羔记录 - */ - public int deleteScLambingRecordByIds(Long[] ids); - - /** - * 删除产羔记录信息 - */ - public int deleteScLambingRecordById(Long id); - - /** - * 查询产羔记录 - */ - public ScLambingRecord selectScLambingRecordById(Long id); - - /** - * 查询羔羊详情 - */ - public List selectLambDetailByLambingRecordId(Long lambingRecordId); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java deleted file mode 100644 index bc0d2e4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; - -/** - * 孕检记录Service接口 - * - * @author zhyc - * @date 2025-01-21 - */ -public interface IScPregnancyRecordService -{ - /** - * 查询孕检记录 - * - * @param id 孕检记录主键 - * @return 孕检记录 - */ - public ScPregnancyRecord selectScPregnancyRecordById(Long id); - - /** - * 查询孕检记录列表 - * - * @param scPregnancyRecord 孕检记录 - * @return 孕检记录集合 - */ - public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord); - - /** - * 新增孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); - - /** - * 修改孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); - - /** - * 批量删除孕检记录 - * - * @param ids 需要删除的孕检记录主键集合 - * @return 结果 - */ - public int deleteScPregnancyRecordByIds(Long[] ids); - - /** - * 删除孕检记录信息 - * - * @param id 孕检记录主键 - * @return 结果 - */ - public int deleteScPregnancyRecordById(Long id); - - /** - * 根据耳号查询羊只信息 - * - * @param manageTags 耳号 - * @return 羊只信息 - */ - public Map getSheepByManageTags(String manageTags); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java deleted file mode 100644 index e1100d5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; -import java.util.Map; -import com.zhyc.module.produce.breed.domain.ScSheepDeath; - -/** - * 羊只死淘记录Service接口 - * - * @author ruoyi - * @date 2025-08-06 - */ -public interface IScSheepDeathService -{ - /** - * 查询羊只死淘记录 - * - * @param id 羊只死淘记录主键 - * @return 羊只死淘记录 - */ - public ScSheepDeath selectScSheepDeathById(Long id); - - /** - * 查询羊只死淘记录列表 - * - * @param scSheepDeath 羊只死淘记录 - * @return 羊只死淘记录集合 - */ - public List selectScSheepDeathList(ScSheepDeath scSheepDeath); - - /** - * 根据管理耳号查询sheep_file视图信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - public Map selectSheepFileByManageTags(String manageTags); - - /** - * 新增羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - public int insertScSheepDeath(ScSheepDeath scSheepDeath); - - /** - * 修改羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - public int updateScSheepDeath(ScSheepDeath scSheepDeath); - - /** - * 批量删除羊只死淘记录 - * - * @param ids 需要删除的羊只死淘记录主键集合 - * @return 结果 - */ - public int deleteScSheepDeathByIds(Long[] ids); - - /** - * 删除羊只死淘记录信息 - * - * @param id 羊只死淘记录主键 - * @return 结果 - */ - public int deleteScSheepDeathById(Long id); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java deleted file mode 100644 index 9f49b44..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.zhyc.module.produce.breed.service; - -import java.util.List; - -import com.zhyc.module.produce.breed.domain.ScWeanRecord; - -/** - * 断奶记录Service接口 - * - * @author ruoyi - * @date 2025-07-13 - */ -public interface IScWeanRecordService { - /** - * 查询断奶记录 - * - * @param id 断奶记录主键 - * @return 断奶记录 - */ - public ScWeanRecord selectScWeanRecordById(Long id); - - /** - * 查询断奶记录列表 - * - * @param scWeanRecord 断奶记录 - * @return 断奶记录集合 - */ - public List selectScWeanRecordList(ScWeanRecord scWeanRecord); - - /** - * 新增断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - public int insertScWeanRecord(ScWeanRecord scWeanRecord); - - /** - * 修改断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - public int updateScWeanRecord(ScWeanRecord scWeanRecord); - - /** - * 批量删除断奶记录 - * - * @param ids 需要删除的断奶记录主键集合 - * @return 结果 - */ - public int deleteScWeanRecordByIds(Long[] ids); - - /** - * 删除断奶记录信息 - * - * @param id 断奶记录主键 - * @return 结果 - */ - public int deleteScWeanRecordById(Long id); - - /** - * 根据耳号查询羊只ID - * - * @param earNumber 耳号 - * @return 羊只ID - */ - public Long selectSheepIdByEarNumber(String earNumber); -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java deleted file mode 100644 index f925b77..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.breed.mapper.RawSpermRecordMapper; -import com.zhyc.module.produce.breed.domain.RawSpermRecord; -import com.zhyc.module.produce.breed.service.IRawSpermRecordService; - -/** - * 采精记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-23 - */ -@Service -public class RawSpermRecordServiceImpl implements IRawSpermRecordService -{ - @Autowired - private RawSpermRecordMapper rawSpermRecordMapper; - - /** - * 查询采精记录 - * - * @param id 采精记录主键 - * @return 采精记录 - */ - @Override - public RawSpermRecord selectRawSpermRecordById(Long id) - { - return rawSpermRecordMapper.selectRawSpermRecordById(id); - } - - /** - * 查询采精记录列表 - * - * @param rawSpermRecord 采精记录 - * @return 采精记录 - */ - @Override - public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord) - { - return rawSpermRecordMapper.selectRawSpermRecordList(rawSpermRecord); - } - - /** - * 新增采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - @Override - public int insertRawSpermRecord(RawSpermRecord rawSpermRecord) - { - // 如果传入的是耳号,需要先根据耳号查询羊只ID - if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { - Long sheepId = getSheepIdByManageTags(rawSpermRecord.getManageTags()); - rawSpermRecord.setSheepId(sheepId); - } - - rawSpermRecord.setCreateTime(DateUtils.getNowDate()); - return rawSpermRecordMapper.insertRawSpermRecord(rawSpermRecord); - } - - /** - * 修改采精记录 - * - * @param rawSpermRecord 采精记录 - * @return 结果 - */ - @Override - public int updateRawSpermRecord(RawSpermRecord rawSpermRecord) - { - // 如果传入的是耳号,需要先根据耳号查询羊只ID - if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { - Long sheepId = getSheepIdByManageTags(rawSpermRecord.getManageTags()); - rawSpermRecord.setSheepId(sheepId); - } - - return rawSpermRecordMapper.updateRawSpermRecord(rawSpermRecord); - } - - /** - * 批量删除采精记录 - * - * @param ids 需要删除的采精记录主键 - * @return 结果 - */ - @Override - public int deleteRawSpermRecordByIds(Long[] ids) - { - return rawSpermRecordMapper.deleteRawSpermRecordByIds(ids); - } - - /** - * 删除采精记录信息 - * - * @param id 采精记录主键 - * @return 结果 - */ - @Override - public int deleteRawSpermRecordById(Long id) - { - return rawSpermRecordMapper.deleteRawSpermRecordById(id); - } - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 耳号 - * @return 羊只ID - */ - @Override - public Long getSheepIdByManageTags(String manageTags) - { - return rawSpermRecordMapper.selectSheepIdByManageTags(manageTags); - } -} \ No newline at end of file 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 deleted file mode 100644 index 3e88f7c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java +++ /dev/null @@ -1,240 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import java.util.Map; -import java.util.HashMap; -import java.util.Date; -import java.text.SimpleDateFormat; - -import com.zhyc.module.produce.breed.domain.ScBreedPlan; -import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; -import com.zhyc.module.produce.breed.mapper.ScBreedPlanGenerateMapper; -import com.zhyc.module.produce.breed.mapper.ScBreedPlanMapper; -import com.zhyc.module.produce.breed.service.IScBreedPlanGenerateService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import com.zhyc.common.utils.SecurityUtils; - -/** - * 配种计划生成Service业务层处理 - * - * @author ruoyi - * @date 2025-07-16 - */ -@Service -public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateService -{ - @Autowired - private ScBreedPlanGenerateMapper scBreedPlanGenerateMapper; - - @Autowired - private ScBreedPlanMapper scBreedPlanMapper; - - /** - * 查询配种计划生成 - * - * @param id 配种计划生成主键 - * @return 配种计划生成 - */ - @Override - public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id) - { - return scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); - } - - /** - * 查询配种计划生成列表 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 配种计划生成 - */ - @Override - public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate) - { - return scBreedPlanGenerateMapper.selectScBreedPlanGenerateList(scBreedPlanGenerate); - } - - /** - * 筛选符合条件的母羊 - * - * @return 符合条件的母羊列表 - */ - @Override - public List> selectEligibleEwe() - { - return scBreedPlanGenerateMapper.selectEligibleEwe(); - } - - /** - * 筛选符合条件的公羊 - * - * @return 符合条件的公羊列表 - */ - @Override - public List> selectEligibleRam() - { - return scBreedPlanGenerateMapper.selectEligibleRam(); - } - - /** - * 自动生成配种计划 - * - * @param eweIds 母羊ID列表 - * @param ramIds 公羊ID列表 - * @return 生成的配种计划 - */ - @Override - @Transactional - public ScBreedPlanGenerate autoGenerateBreedPlan(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); - planGenerate.setPlanDate(new Date()); - planGenerate.setTotalEweCount(eweIds.size()); - planGenerate.setTotalRamCount(ramIds.size()); - - // 计算配种比例 - double ratio = (double) eweIds.size() / ramIds.size(); - planGenerate.setBreedRatio(String.format("%.1f:1", ratio)); - planGenerate.setStatus(0); // 待审批 - planGenerate.setCreateBy(SecurityUtils.getUsername()); - planGenerate.setCreateTime(new Date()); - - // 保存配种计划生成记录 - scBreedPlanGenerateMapper.insertScBreedPlanGenerate(planGenerate); - - // 生成具体的配种计划 - generateBreedPlanDetails(planGenerate.getId(), eweIds, ramIds); - - return planGenerate; - } - - /** - * 生成具体的配种计划详情 - */ - private void generateBreedPlanDetails(Long planGenerateId, List eweIds, List ramIds) - { - 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(); - breedPlan.setRamId(ramIds.get(ramIndex).toString()); - breedPlan.setEweId(eweIds.get(i).toString()); - breedPlan.setBreedType(1L); // 默认配种类型 - - // 插入临时配种计划,关联到生成记录 - scBreedPlanGenerateMapper.insertTempBreedPlan(planGenerateId, breedPlan); - - // 每个公羊配种指定数量的母羊后,切换到下一个公羊 - if ((i + 1) % ewesPerRam == 0 && ramIndex < ramIds.size() - 1) { - ramIndex++; - } - } - } - - /** - * 新增配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - @Override - public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate) - { - scBreedPlanGenerate.setCreateTime(new Date()); - return scBreedPlanGenerateMapper.insertScBreedPlanGenerate(scBreedPlanGenerate); - } - - /** - * 修改配种计划生成 - * - * @param scBreedPlanGenerate 配种计划生成 - * @return 结果 - */ - @Override - public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate) - { - scBreedPlanGenerate.setUpdateTime(new Date()); - return scBreedPlanGenerateMapper.updateScBreedPlanGenerate(scBreedPlanGenerate); - } - - /** - * 审批配种计划 - * - * @param id 配种计划ID - * @return 结果 - */ - @Override - @Transactional - public int approveBreedPlan(Long id) - { - // 更新审批状态 - ScBreedPlanGenerate planGenerate = new ScBreedPlanGenerate(); - planGenerate.setId(id); - planGenerate.setStatus(1); // 已审批 - planGenerate.setApprover(SecurityUtils.getUsername()); - planGenerate.setApproveTime(new Date()); - planGenerate.setUpdateTime(new Date()); - - int result = scBreedPlanGenerateMapper.updateScBreedPlanGenerate(planGenerate); - - // 将临时配种计划转为正式配种计划 - if (result > 0) { - scBreedPlanGenerateMapper.transferTempToFormal(id); - } - - return result; - } - - /** - * 获取配种计划详情 - * - * @param id 配种计划ID - * @return 配种计划详情 - */ - @Override - public Map getBreedPlanDetails(Long id) - { - Map result = new HashMap<>(); - - // 获取配种计划基本信息 - ScBreedPlanGenerate planGenerate = scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); - result.put("planInfo", planGenerate); - - // 获取配种计划详情列表 - List> planDetails = scBreedPlanGenerateMapper.selectBreedPlanDetails(id); - result.put("planDetails", planDetails); - - return result; - } - - /** - * 批量删除配种计划生成 - * - * @param ids 需要删除的配种计划生成主键 - * @return 结果 - */ - @Override - public int deleteScBreedPlanGenerateByIds(Long[] ids) - { - return scBreedPlanGenerateMapper.deleteScBreedPlanGenerateByIds(ids); - } - - /** - * 删除配种计划生成信息 - * - * @param id 配种计划生成主键 - * @return 结果 - */ - @Override - public int deleteScBreedPlanGenerateById(Long 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/ScBreedPlanServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java deleted file mode 100644 index f6ae9b0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; - -import com.zhyc.module.produce.breed.domain.ScBreedPlan; -import com.zhyc.module.produce.breed.mapper.ScBreedPlanMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.breed.service.IScBreedPlanService; - -/** - * 配种计划Service业务层处理 - * - * @author ruoyi - * @date 2025-07-16 - */ -@Service -public class ScBreedPlanServiceImpl implements IScBreedPlanService -{ - @Autowired - private ScBreedPlanMapper scBreedPlanMapper; - - /** - * 查询配种计划 - * - * @param id 配种计划主键 - * @return 配种计划 - */ - @Override - public ScBreedPlan selectScBreedPlanById(Long id) - { - return scBreedPlanMapper.selectScBreedPlanById(id); - } - - /** - * 查询配种计划列表 - * - * @param scBreedPlan 配种计划 - * @return 配种计划 - */ - @Override - public List selectScBreedPlanList(ScBreedPlan scBreedPlan) - { - return scBreedPlanMapper.selectScBreedPlanList(scBreedPlan); - } - - /** - * 新增配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - @Override - public int insertScBreedPlan(ScBreedPlan scBreedPlan) - { - return scBreedPlanMapper.insertScBreedPlan(scBreedPlan); - } - - /** - * 修改配种计划 - * - * @param scBreedPlan 配种计划 - * @return 结果 - */ - @Override - public int updateScBreedPlan(ScBreedPlan scBreedPlan) - { - return scBreedPlanMapper.updateScBreedPlan(scBreedPlan); - } - - /** - * 批量删除配种计划 - * - * @param ids 需要删除的配种计划主键 - * @return 结果 - */ - @Override - public int deleteScBreedPlanByIds(Long[] ids) - { - return scBreedPlanMapper.deleteScBreedPlanByIds(ids); - } - - /** - * 删除配种计划信息 - * - * @param id 配种计划主键 - * @return 结果 - */ - @Override - public int deleteScBreedPlanById(Long id) - { - return scBreedPlanMapper.deleteScBreedPlanById(id); - } -} 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 deleted file mode 100644 index 61ab012..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import java.util.Map; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.breed.mapper.ScBreedRecordMapper; -import com.zhyc.module.produce.breed.domain.ScBreedRecord; -import com.zhyc.module.produce.breed.service.IScBreedRecordService; - -/** - * 配种记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-23 - */ -@Service -public class ScBreedRecordServiceImpl implements IScBreedRecordService -{ - @Autowired - private ScBreedRecordMapper scBreedRecordMapper; - - /** - * 查询配种记录 - * - * @param id 配种记录主键 - * @return 配种记录 - */ - @Override - public ScBreedRecord selectScBreedRecordById(Long id) - { - return scBreedRecordMapper.selectScBreedRecordById(id); - } - - /** - * 查询配种记录列表 - * - * @param scBreedRecord 配种记录 - * @return 配种记录 - */ - @Override - public List selectScBreedRecordList(ScBreedRecord scBreedRecord) - { - // 如果查询条件中有耳号,需要先转换为ID - if (StringUtils.isNotEmpty(scBreedRecord.getEweManageTags())) - { - Long eweId = scBreedRecordMapper.getSheepIdByManageTags(scBreedRecord.getEweManageTags()); - if (eweId != null) - { - scBreedRecord.setEweId(eweId.toString()); - } - } - - if (StringUtils.isNotEmpty(scBreedRecord.getRamManageTags())) - { - Long ramId = scBreedRecordMapper.getRamIdByManageTags(scBreedRecord.getRamManageTags()); - if (ramId != null) - { - scBreedRecord.setRamId(ramId.toString()); - } - } - - return scBreedRecordMapper.selectScBreedRecordList(scBreedRecord); - } - - /** - * 新增配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - @Override - public int insertScBreedRecord(ScBreedRecord scBreedRecord) - { - scBreedRecord.setCreateTime(DateUtils.getNowDate()); - return scBreedRecordMapper.insertScBreedRecord(scBreedRecord); - } - - /** - * 修改配种记录 - * - * @param scBreedRecord 配种记录 - * @return 结果 - */ - @Override - public int updateScBreedRecord(ScBreedRecord scBreedRecord) - { - return scBreedRecordMapper.updateScBreedRecord(scBreedRecord); - } - - /** - * 批量删除配种记录 - * - * @param ids 需要删除的配种记录主键 - * @return 结果 - */ - @Override - public int deleteScBreedRecordByIds(Long[] ids) - { - return scBreedRecordMapper.deleteScBreedRecordByIds(ids); - } - - /** - * 删除配种记录信息 - * - * @param id 配种记录主键 - * @return 结果 - */ - @Override - public int deleteScBreedRecordById(Long id) - { - return scBreedRecordMapper.deleteScBreedRecordById(id); - } - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - @Override - public Long getSheepIdByTags(String manageTags) - { - return scBreedRecordMapper.getSheepIdByManageTags(manageTags); - } - - /** - * 根据公羊耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - @Override - public Long getRamIdByTags(String manageTags) - { - return scBreedRecordMapper.getRamIdByManageTags(manageTags); - } - - /** - * 根据耳号查询羊只详细信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - @Override - public Map getSheepInfoByTags(String manageTags) - { - return scBreedRecordMapper.getSheepInfoByTags(manageTags); - } - - /** - * 根据母羊耳号获取配种计划信息 - * - * @param manageTags 母羊管理耳号 - * @return 配种计划信息 - */ - @Override - public Map getBreedPlanByEweTags(String manageTags) - { - return scBreedRecordMapper.getBreedPlanByEweTags(manageTags); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java deleted file mode 100644 index dd87f80..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.breed.mapper.ScDryMilkMapper; -import com.zhyc.module.produce.breed.domain.ScDryMilk; -import com.zhyc.module.produce.breed.service.IScDryMilkService; -import com.zhyc.common.utils.StringUtils; -import com.zhyc.common.exception.ServiceException; - -/** - * 干奶记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-15 - */ -@Service -public class ScDryMilkServiceImpl implements IScDryMilkService -{ - @Autowired - private ScDryMilkMapper scDryMilkMapper; - - /** - * 查询干奶记录 - * - * @param id 干奶记录主键 - * @return 干奶记录 - */ - @Override - public ScDryMilk selectScDryMilkById(Long id) - { - return scDryMilkMapper.selectScDryMilkById(id); - } - - /** - * 查询干奶记录列表 - * - * @param scDryMilk 干奶记录 - * @return 干奶记录 - */ - @Override - public List selectScDryMilkList(ScDryMilk scDryMilk) - { - return scDryMilkMapper.selectScDryMilkList(scDryMilk); - } - - /** - * 根据耳号查询羊只ID - * - * @param manageTags 管理耳号 - * @return 羊只ID - */ - @Override - public Long selectSheepIdByManageTags(String manageTags) - { - return scDryMilkMapper.selectSheepIdByManageTags(manageTags); - } - - /** - * 新增干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - @Override - public int insertScDryMilk(ScDryMilk scDryMilk) - { - // 如果传入的是耳号,需要转换为羊只ID - if (StringUtils.isNotEmpty(scDryMilk.getManageTags()) && StringUtils.isEmpty(scDryMilk.getSheepId())) - { - Long sheepId = scDryMilkMapper.selectSheepIdByManageTags(scDryMilk.getManageTags()); - if (sheepId == null) - { - throw new ServiceException("未找到对应耳号的羊只信息"); - } - scDryMilk.setSheepId(String.valueOf(sheepId)); - } - return scDryMilkMapper.insertScDryMilk(scDryMilk); - } - - /** - * 修改干奶记录 - * - * @param scDryMilk 干奶记录 - * @return 结果 - */ - @Override - public int updateScDryMilk(ScDryMilk scDryMilk) - { - // 如果传入的是耳号,需要转换为羊只ID - if (StringUtils.isNotEmpty(scDryMilk.getManageTags()) && StringUtils.isEmpty(scDryMilk.getSheepId())) - { - Long sheepId = scDryMilkMapper.selectSheepIdByManageTags(scDryMilk.getManageTags()); - if (sheepId == null) - { - throw new ServiceException("未找到对应耳号的羊只信息"); - } - scDryMilk.setSheepId(String.valueOf(sheepId)); - } - return scDryMilkMapper.updateScDryMilk(scDryMilk); - } - - /** - * 批量删除干奶记录 - * - * @param ids 需要删除的干奶记录主键 - * @return 结果 - */ - @Override - public int deleteScDryMilkByIds(Long[] ids) - { - return scDryMilkMapper.deleteScDryMilkByIds(ids); - } - - /** - * 删除干奶记录信息 - * - * @param id 干奶记录主键 - * @return 结果 - */ - @Override - public int deleteScDryMilkById(Long id) - { - return scDryMilkMapper.deleteScDryMilkById(id); - } -} \ 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 deleted file mode 100644 index 74b6715..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java +++ /dev/null @@ -1,192 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.math.BigDecimal; -import java.util.List; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import com.zhyc.module.produce.breed.mapper.ScLambingRecordMapper; -import com.zhyc.module.produce.breed.mapper.ScLambDetailMapper; -import com.zhyc.module.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; -import com.zhyc.module.produce.breed.service.IScLambingRecordService; - -/** - * 产羔记录Service业务层处理 - */ -@Service -public class ScLambingRecordServiceImpl implements IScLambingRecordService { - - @Autowired - private ScLambingRecordMapper scLambingRecordMapper; - - @Autowired - private ScLambDetailMapper scLambDetailMapper; - - /** - * 查询产羔记录列表 - */ - @Override - public List selectScLambingRecordList(ScLambingRecord scLambingRecord) { - return scLambingRecordMapper.selectScLambingRecordList(scLambingRecord); - } - - /** - * 新增产羔记录(包含羔羊详情) - */ - @Override - @Transactional - public int insertScLambingRecord(ScLambingRecord scLambingRecord) { - // 1. 插入产羔记录 - int result = scLambingRecordMapper.insertScLambingRecord(scLambingRecord); - - // 2. 如果有羔羊详情,则批量插入羔羊详情 - if (scLambingRecord.getLambDetails() != null && !scLambingRecord.getLambDetails().isEmpty()) { - insertLambDetails(scLambingRecord); - } - - return result; - } - - /** - * 批量插入羔羊详情 - */ - private void insertLambDetails(ScLambingRecord scLambingRecord) { - // 遍历羔羊详情列表,逐个插入 - for (ScLambDetail lambDetail : scLambingRecord.getLambDetails()) { - // 设置产羔记录ID - lambDetail.setLambingRecordId(scLambingRecord.getId()); - - // 设置创建信息 - lambDetail.setCreateBy(scLambingRecord.getCreateBy()); - lambDetail.setCreateTime(scLambingRecord.getCreateTime()); - - // 数据验证和转换 - validateAndConvertLambDetail(lambDetail); - - // 插入羔羊详情 - scLambDetailMapper.insertScLambDetail(lambDetail); - scLambDetailMapper.insertBasSheep(lambDetail); - } - } - - - - /** - * 验证和转换羔羊详情 - */ - /** - * 验证和转换羔羊详情 - */ - private void validateAndConvertLambDetail(ScLambDetail lambDetail) { - // 验证必填字段 - if (lambDetail.getLambEarNumber() == null || lambDetail.getLambEarNumber().trim().isEmpty()) { - throw new RuntimeException("羔羊耳号不能为空"); - } - - if (lambDetail.getGender() == null) { // 改为检查Integer类型 - throw new RuntimeException("羔羊性别不能为空"); - } - - // 验证性别值的有效性(假设0=母羊,1=公羊) - if (lambDetail.getGender() < 0 || lambDetail.getGender() > 1) { - throw new RuntimeException("羔羊性别值无效,请使用0(母羊)或1(公羊)"); - } - - // 检查耳号是否已存在 - int count = scLambDetailMapper.checkLambEarNumberExists(lambDetail.getLambEarNumber().trim(), null); - if (count > 0) { - throw new RuntimeException("羔羊耳号 [" + lambDetail.getLambEarNumber() + "] 已存在,请使用其他耳号"); - } - - // 设置默认值 - if (lambDetail.getIsRetained() == null) { - lambDetail.setIsRetained(false); - } - - if (lambDetail.getBirthday() == null) { - lambDetail.setBirthday(new java.util.Date()); - } - - // 处理体重(前端可能传来的是number类型) - if (lambDetail.getBirthWeight() == null) { - lambDetail.setBirthWeight(BigDecimal.ZERO); - } - - // 验证品种ID - if (lambDetail.getLambBreed() == null) { - throw new RuntimeException("羔羊品种不能为空"); - } - - // 去除空格 - lambDetail.setLambEarNumber(lambDetail.getLambEarNumber().trim()); - if (lambDetail.getLineage() != null) { - lambDetail.setLineage(lambDetail.getLineage().trim()); - } - } - - /** - * 修改产羔记录 - */ - @Override - @Transactional - public int updateScLambingRecord(ScLambingRecord scLambingRecord) { - // 更新产羔记录 - int result = scLambingRecordMapper.updateScLambingRecord(scLambingRecord); - - // 如果包含羔羊详情,先删除原有的,再插入新的 - if (scLambingRecord.getLambDetails() != null) { - // 删除原有羔羊详情 - scLambDetailMapper.deleteScLambDetailByLambingRecordId(scLambingRecord.getId()); - - // 插入新的羔羊详情 - if (!scLambingRecord.getLambDetails().isEmpty()) { - insertLambDetails(scLambingRecord); - } - } - - return result; - } - - /** - * 批量删除产羔记录 - */ - @Override - @Transactional - public int deleteScLambingRecordByIds(Long[] ids) { - // 先删除关联的羔羊详情 - for (Long id : ids) { - scLambDetailMapper.deleteScLambDetailByLambingRecordId(id); - } - // 再删除产羔记录 - return scLambingRecordMapper.deleteScLambingRecordByIds(ids); - } - - /** - * 删除产羔记录信息 - */ - @Override - @Transactional - public int deleteScLambingRecordById(Long id) { - // 先删除关联的羔羊详情 - scLambDetailMapper.deleteScLambDetailByLambingRecordId(id); - // 再删除产羔记录 - return scLambingRecordMapper.deleteScLambingRecordById(id); - } - - /** - * 查询产羔记录 - */ - @Override - public ScLambingRecord selectScLambingRecordById(Long id) { - return scLambingRecordMapper.selectScLambingRecordById(id); - } - - /** - * 查询羔羊详情 - */ - @Override - public List selectLambDetailByLambingRecordId(Long lambingRecordId) { - return scLambDetailMapper.selectScLambDetailByLambingRecordId(lambingRecordId); - } -} \ No newline at end of file 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 deleted file mode 100644 index dde2c3d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java +++ /dev/null @@ -1,179 +0,0 @@ -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import com.zhyc.module.produce.breed.mapper.ScPregnancyRecordMapper; -import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; -import com.zhyc.module.produce.breed.service.IScPregnancyRecordService; - -/** - * 孕检记录Service业务层处理 - * - * @author zhyc - * @date 2025-01-21 - */ -@Service -public class ScPregnancyRecordServiceImpl implements IScPregnancyRecordService -{ - @Autowired - private ScPregnancyRecordMapper scPregnancyRecordMapper; - - /** - * 查询孕检记录 - * - * @param id 孕检记录主键 - * @return 孕检记录 - */ - @Override - public ScPregnancyRecord selectScPregnancyRecordById(Long id) - { - return scPregnancyRecordMapper.selectScPregnancyRecordById(id); - } - - /** - * 查询孕检记录列表 - * - * @param scPregnancyRecord 孕检记录 - * @return 孕检记录 - */ - @Override - public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord) - { - return scPregnancyRecordMapper.selectScPregnancyRecordList(scPregnancyRecord); - } - - /** - * 新增孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - @Override - @Transactional - public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord) - { - scPregnancyRecord.setCreateTime(DateUtils.getNowDate()); - scPregnancyRecord.setIsDelete(0); - - // 根据耳号获取羊只ID - if (scPregnancyRecord.getManageTags() != null) { - Map sheepInfo = scPregnancyRecordMapper.selectSheepByManageTags(scPregnancyRecord.getManageTags()); - if (sheepInfo != null && sheepInfo.get("id") != null) { - scPregnancyRecord.setSheepId(Long.valueOf(sheepInfo.get("id").toString())); - } - } - - int result = scPregnancyRecordMapper.insertScPregnancyRecord(scPregnancyRecord); - - // 如果孕检结果为怀孕,更新羊只基础表相关字段 - if ("怀孕".equals(scPregnancyRecord.getResult()) && scPregnancyRecord.getSheepId() != null) { - updateSheepPregnancyStatus(scPregnancyRecord); - } - - return result; - } - - /** - * 修改孕检记录 - * - * @param scPregnancyRecord 孕检记录 - * @return 结果 - */ - @Override - @Transactional - public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord) - { - scPregnancyRecord.setUpdateTime(DateUtils.getNowDate()); - - // 根据耳号获取羊只ID - if (scPregnancyRecord.getManageTags() != null) { - Map sheepInfo = scPregnancyRecordMapper.selectSheepByManageTags(scPregnancyRecord.getManageTags()); - if (sheepInfo != null && sheepInfo.get("id") != null) { - scPregnancyRecord.setSheepId(Long.valueOf(sheepInfo.get("id").toString())); - } - } - - int result = scPregnancyRecordMapper.updateScPregnancyRecord(scPregnancyRecord); - - // 如果孕检结果为怀孕,更新羊只基础表相关字段 - if ("怀孕".equals(scPregnancyRecord.getResult()) && scPregnancyRecord.getSheepId() != null) { - updateSheepPregnancyStatus(scPregnancyRecord); - } - - return result; - } - - /** - * 批量删除孕检记录 - * - * @param ids 需要删除的孕检记录主键 - * @return 结果 - */ - @Override - public int deleteScPregnancyRecordByIds(Long[] ids) - { - return scPregnancyRecordMapper.deleteScPregnancyRecordByIds(ids); - } - - /** - * 删除孕检记录信息 - * - * @param id 孕检记录主键 - * @return 结果 - */ - @Override - public int deleteScPregnancyRecordById(Long id) - { - return scPregnancyRecordMapper.deleteScPregnancyRecordById(id); - } - - /** - * 根据耳号查询羊只信息 - * - * @param manageTags 耳号 - * @return 羊只信息 - */ - @Override - public Map getSheepByManageTags(String manageTags) - { - return scPregnancyRecordMapper.selectSheepByManageTags(manageTags); - } - - /** - * 更新羊只怀孕状态 - * - * @param scPregnancyRecord 孕检记录 - */ - private void updateSheepPregnancyStatus(ScPregnancyRecord scPregnancyRecord) { - Map params = new HashMap<>(); - params.put("sheepId", scPregnancyRecord.getSheepId()); - params.put("pregDate", scPregnancyRecord.getDatetime()); - - // 设置繁育状态为怀孕状态(假设怀孕状态ID为2) - params.put("breedStatusId", 2); - - // 计算预产日期(羊的妊娠期大约150天) - if (scPregnancyRecord.getDatetime() != null) { - Calendar cal = Calendar.getInstance(); - cal.setTime(scPregnancyRecord.getDatetime()); - cal.add(Calendar.DAY_OF_YEAR, 150); - params.put("expectedDate", cal.getTime()); - } - - // 计算怀孕天数 - if (scPregnancyRecord.getDatetime() != null) { - long days = (System.currentTimeMillis() - scPregnancyRecord.getDatetime().getTime()) / (1000 * 60 * 60 * 24); - params.put("gestationDay", (int) days); - } - - scPregnancyRecordMapper.updateSheepPregnancyInfo(params); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java deleted file mode 100644 index 12e7afd..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import java.util.Map; -import com.zhyc.common.utils.DateUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.breed.mapper.ScSheepDeathMapper; -import com.zhyc.module.produce.breed.domain.ScSheepDeath; -import com.zhyc.module.produce.breed.service.IScSheepDeathService; - -/** - * 羊只死淘记录Service业务层处理 - * - * @author ruoyi - * @date 2025-08-06 - */ -@Service -public class ScSheepDeathServiceImpl implements IScSheepDeathService -{ - @Autowired - private ScSheepDeathMapper scSheepDeathMapper; - - /** - * 查询羊只死淘记录 - * - * @param id 羊只死淘记录主键 - * @return 羊只死淘记录 - */ - @Override - public ScSheepDeath selectScSheepDeathById(Long id) - { - ScSheepDeath scSheepDeath = scSheepDeathMapper.selectScSheepDeathById(id); - // 查询时也需要填充显示字段 - if (scSheepDeath != null && scSheepDeath.getManageTags() != null) { - Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); - if (sheepInfo != null) { - scSheepDeath.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); - scSheepDeath.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); - scSheepDeath.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); - scSheepDeath.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); - scSheepDeath.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); - scSheepDeath.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); - scSheepDeath.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); - scSheepDeath.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); - scSheepDeath.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); - scSheepDeath.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); - } - } - return scSheepDeath; - } - - /** - * 查询羊只死淘记录列表 - * - * @param scSheepDeath 羊只死淘记录 - * @return 羊只死淘记录 - */ - @Override - public List selectScSheepDeathList(ScSheepDeath scSheepDeath) - { - List list = scSheepDeathMapper.selectScSheepDeathList(scSheepDeath); - // 为列表中的每条记录填充显示字段 - for (ScSheepDeath death : list) { - if (death.getManageTags() != null) { - Map sheepInfo = selectSheepFileByManageTags(death.getManageTags()); - if (sheepInfo != null) { - death.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); - death.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); - death.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); - death.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); - death.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); - death.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); - death.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); - death.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); - death.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); - death.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); - } - } - } - return list; - } - - /** - * 根据管理耳号查询sheep_file视图信息 - * - * @param manageTags 管理耳号 - * @return 羊只信息 - */ - @Override - public Map selectSheepFileByManageTags(String manageTags) - { - return scSheepDeathMapper.selectSheepFileByManageTags(manageTags); - } - - /** - * 新增羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - @Override - public int insertScSheepDeath(ScSheepDeath scSheepDeath) - { - // 设置事件类型默认为"死亡" - if (scSheepDeath.getEventType() == null || scSheepDeath.getEventType().isEmpty()) { - scSheepDeath.setEventType("死亡"); - } - - // 如果有管理耳号,查询并设置羊只ID - if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { - Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); - if (sheepInfo != null) { - scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); - } - } - - scSheepDeath.setCreateTime(DateUtils.getNowDate()); - return scSheepDeathMapper.insertScSheepDeath(scSheepDeath); - } - - /** - * 修改羊只死淘记录 - * - * @param scSheepDeath 羊只死淘记录 - * @return 结果 - */ - @Override - public int updateScSheepDeath(ScSheepDeath scSheepDeath) - { - // 如果管理耳号发生变化,重新查询并设置羊只ID - if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { - Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); - if (sheepInfo != null) { - scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); - } - } - - scSheepDeath.setUpdateTime(DateUtils.getNowDate()); - return scSheepDeathMapper.updateScSheepDeath(scSheepDeath); - } - - /** - * 批量删除羊只死淘记录 - * - * @param ids 需要删除的羊只死淘记录主键 - * @return 结果 - */ - @Override - public int deleteScSheepDeathByIds(Long[] ids) - { - return scSheepDeathMapper.deleteScSheepDeathByIds(ids); - } - - /** - * 删除羊只死淘记录信息 - * - * @param id 羊只死淘记录主键 - * @return 结果 - */ - @Override - public int deleteScSheepDeathById(Long id) - { - return scSheepDeathMapper.deleteScSheepDeathById(id); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java deleted file mode 100644 index 9efcaff..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.zhyc.module.produce.breed.service.impl; - -import java.util.List; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.module.produce.breed.domain.ScWeanRecord; -import com.zhyc.module.produce.breed.mapper.ScWeanRecordMapper; -import com.zhyc.module.produce.breed.service.IScWeanRecordService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -/** - * 断奶记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-13 - */ -@Service -public class ScWeanRecordServiceImpl implements IScWeanRecordService { - @Autowired - private ScWeanRecordMapper scWeanRecordMapper; - - /** - * 查询断奶记录 - * - * @param id 断奶记录主键 - * @return 断奶记录 - */ - @Override - public ScWeanRecord selectScWeanRecordById(Long id) { - return scWeanRecordMapper.selectScWeanRecordById(id); - } - - /** - * 查询断奶记录列表 - * - * @param scWeanRecord 断奶记录 - * @return 断奶记录 - */ - @Override - public List selectScWeanRecordList(ScWeanRecord scWeanRecord) { - return scWeanRecordMapper.selectScWeanRecordList(scWeanRecord); - } - - /** - * 新增断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - @Override - @Transactional - public int insertScWeanRecord(ScWeanRecord scWeanRecord) { - // 如果前端传递的是耳号,需要先获取羊只ID - if (scWeanRecord.getEarNumber() != null && scWeanRecord.getSheepId() == null) { - Long sheepId = scWeanRecordMapper.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); - if (sheepId != null) { - scWeanRecord.setSheepId(sheepId); - } - } - scWeanRecord.setCreateTime(DateUtils.getNowDate()); - - // 插入断奶记录 - int result = scWeanRecordMapper.insertScWeanRecord(scWeanRecord); - - // 同步更新bas_sheep表中的断奶信息 - if (result > 0 && scWeanRecord.getEarNumber() != null) { - scWeanRecordMapper.updateBasSheepWeaningInfo(scWeanRecord); - } - - return result; - } - - /** - * 修改断奶记录 - * - * @param scWeanRecord 断奶记录 - * @return 结果 - */ - @Override - @Transactional - public int updateScWeanRecord(ScWeanRecord scWeanRecord) { - // 如果前端传递的是耳号,需要先获取羊只ID - if (scWeanRecord.getEarNumber() != null && scWeanRecord.getSheepId() == null) { - Long sheepId = scWeanRecordMapper.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); - if (sheepId != null) { - scWeanRecord.setSheepId(sheepId); - } - } - - // 更新断奶记录 - int result = scWeanRecordMapper.updateScWeanRecord(scWeanRecord); - - // 同步更新bas_sheep表中的断奶信息 - if (result > 0 && scWeanRecord.getEarNumber() != null) { - scWeanRecordMapper.updateBasSheepWeaningInfo(scWeanRecord); - } - - return result; - } - - /** - * 批量删除断奶记录 - * - * @param ids 需要删除的断奶记录主键 - * @return 结果 - */ - @Override - public int deleteScWeanRecordByIds(Long[] ids) { - return scWeanRecordMapper.deleteScWeanRecordByIds(ids); - } - - /** - * 删除断奶记录信息 - * - * @param id 断奶记录主键 - * @return 结果 - */ - @Override - public int deleteScWeanRecordById(Long id) { - return scWeanRecordMapper.deleteScWeanRecordById(id); - } - - /** - * 根据耳号查询羊只ID - * - * @param earNumber 耳号 - * @return 羊只ID - */ - @Override - public Long selectSheepIdByEarNumber(String earNumber) { - return scWeanRecordMapper.selectSheepIdByEarNumber(earNumber); - } -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java deleted file mode 100644 index 6d2f7f9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.controller; - -import com.zhyc.common.annotation.Log; -import com.zhyc.common.core.domain.AjaxResult; -import com.zhyc.common.enums.BusinessType; -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.module.base.domain.BasSheepVariety; -import com.zhyc.module.base.service.IBasSheepVarietyService; -import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; -import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; -import com.zhyc.module.base.domain.DaSheepfold; -import com.zhyc.module.base.service.IDaSheepfoldService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import static com.zhyc.common.core.domain.AjaxResult.success; -import static com.zhyc.common.utils.SecurityUtils.getUsername; - -@RestController -@RequestMapping("produce/manage_sheep/add_sheep") -public class ScAddSheepController { - @Autowired - private IScAddSheepService scAddSheepService; - @Autowired - private IDaSheepfoldService daSheepfoldMapper; - @Autowired - private IBasSheepVarietyService basSheepVarietyMapper; - //新增羊只验证 - @PreAuthorize("@ss.hasPermi('produce:add_sheep:add')") - @Log(title = "新增", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult addSheep(@RequestBody ScAddSheep scAddSheep) { - if (scAddSheep.getEarNumber() == null || scAddSheep.getEarNumber().isEmpty()) { - return AjaxResult.error("耳号不能为空"); - } - if (scAddSheep.getSheepfold() == null || scAddSheep.getSheepfold() == 0) { - return AjaxResult.error("羊舍不能为空"); - } - if (scAddSheep.getBornWeight() == null) { - return AjaxResult.error("出生体重不能为空"); - } - if (scAddSheep.getBirthday() == null) { - return AjaxResult.error("出生日期不能为空"); - } - if (scAddSheep.getGender() == null) { - return AjaxResult.error("性别不能为空"); - } - if (scAddSheep.getVarietyId() == null) { - return AjaxResult.error("品种不能为空"); - } - - try { - boolean success = scAddSheepService.insertScAddSheep(scAddSheep); - if (success) { - return success("新增成功"); - } else { - return AjaxResult.error("新增失败"); - } - } catch (ServiceException e) { - return AjaxResult.error(e.getMessage()); - } - } - - - //导出 - @Log(title = "羊只信息", businessType = BusinessType.EXPORT) - @PostMapping("/exportForm") - public void exportForm(HttpServletResponse response, @RequestBody ScAddSheep scAddSheep) throws IOException { - ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); - List list = new ArrayList<>(); - - // 处理羊舍名称(原有逻辑) - if (scAddSheep.getSheepfold() != null) { - DaSheepfold fold = daSheepfoldMapper.selectDaSheepfoldById(scAddSheep.getSheepfold().longValue()); - if (fold != null) { - scAddSheep.setSheepfoldNameExcel(fold.getSheepfoldName()); - } - } - - if (scAddSheep.getVarietyId() != null) { - BasSheepVariety variety = basSheepVarietyMapper.selectBasSheepVarietyById(scAddSheep.getVarietyId().longValue()); - if (variety != null) { - scAddSheep.setVarietyName(variety.getVariety()); - } - } - - list.add(scAddSheep); - util.exportExcel(response, list, "羊只信息"); - } - //导入 - @PostMapping("/importData") - @PreAuthorize("@ss.hasPermi('produce:add_sheep:import')") - @Log(title = "羊只信息", businessType = BusinessType.IMPORT) - public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { - ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); - List list = util.importExcel(file.getInputStream()); - String message = scAddSheepService.importSheep(list, updateSupport, getUsername()); - return success(message); - } - - @PostMapping("/importTemplate") - @PreAuthorize("@ss.hasPermi('produce:add_sheep:import')") - public void importTemplate(HttpServletResponse response) { - ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); - util.importTemplateExcel(response, "羊只信息模板"); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java deleted file mode 100644 index 756e4a5..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScChangeComment; -import com.zhyc.module.produce.manage_sheep.service.IScChangeCommentService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 改备注Controller - * - * @author ruoyi - * @date 2025-07-24 - */ -@RestController -@RequestMapping("/changeComment/changeComment") -public class ScChangeCommentController extends BaseController -{ - @Autowired - private IScChangeCommentService scChangeCommentService; - - /** - * 查询改备注列表 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:list')") - @GetMapping("/list") - public TableDataInfo list(ScChangeComment scChangeComment) - { - startPage(); - List list = scChangeCommentService.selectScChangeCommentList(scChangeComment); - return getDataTable(list); - } - - /** - * 导出改备注列表 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:export')") - @Log(title = "改备注", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScChangeComment scChangeComment) - { - List list = scChangeCommentService.selectScChangeCommentList(scChangeComment); - ExcelUtil util = new ExcelUtil(ScChangeComment.class); - util.exportExcel(response, list, "改备注数据"); - } - - /** - * 获取改备注详细信息 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scChangeCommentService.selectScChangeCommentById(id)); - } - - /** - * 新增改备注 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:add')") - @Log(title = "改备注", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScChangeComment scChangeComment) - { - return toAjax(scChangeCommentService.insertScChangeComment(scChangeComment)); - } - - /** - * 修改改备注 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:edit')") - @Log(title = "改备注", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScChangeComment scChangeComment) - { - return toAjax(scChangeCommentService.updateScChangeComment(scChangeComment)); - } - - /** - * 删除改备注 - */ - @PreAuthorize("@ss.hasPermi('changeComment:changeComment:remove')") - @Log(title = "改备注", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scChangeCommentService.deleteScChangeCommentByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java deleted file mode 100644 index cd6b28b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.controller; - -import java.util.List; -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; -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.produce.manage_sheep.domain.ScChangeEar; -import com.zhyc.module.produce.manage_sheep.service.IScChangeEarService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 修改电子耳号记录Controller - * - * @author ruoyi - * @date 2025-07-24 - */ -@RestController -@RequestMapping("/changeEar/changeEar") -public class ScChangeEarController extends BaseController -{ - @Autowired - private IScChangeEarService scChangeEarService; - - @Autowired - private IBasSheepService basSheepService; - /** - * 查询修改电子耳号记录列表 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:list')") - @GetMapping("/list") - public TableDataInfo list(ScChangeEar scChangeEar) - { - startPage(); - List list = scChangeEarService.selectScChangeEarList(scChangeEar); - return getDataTable(list); - } - - /** - * 导出修改电子耳号记录列表 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:export')") - @Log(title = "修改电子耳号记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScChangeEar scChangeEar) - { - List list = scChangeEarService.selectScChangeEarList(scChangeEar); - ExcelUtil util = new ExcelUtil(ScChangeEar.class); - util.exportExcel(response, list, "修改电子耳号记录数据"); - } - - /** - * 获取修改电子耳号记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:query')") - @GetMapping("/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) { - ScChangeEar changeEar = scChangeEarService.selectScChangeEarById(id); - // 关联查询羊只表,获取旧耳号 - BasSheep sheep = basSheepService.selectBasSheepById(changeEar.getSheepId()); - if (sheep != null) { - // 根据耳号类型,设置旧耳号 - if (changeEar.getEarType() == 0) { - changeEar.setOldTag(sheep.getElectronicTags()); - } else { - changeEar.setOldTag(sheep.getManageTags()); - } - } - return success(changeEar); - } - - /** - * 新增修改电子耳号记录 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:add')") - @Log(title = "修改电子耳号记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScChangeEar scChangeEar) - { - return toAjax(scChangeEarService.insertScChangeEar(scChangeEar)); - } - - /** - * 修改修改电子耳号记录 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:edit')") - @Log(title = "修改电子耳号记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScChangeEar scChangeEar) - { - return toAjax(scChangeEarService.updateScChangeEar(scChangeEar)); - } - - /** - * 删除修改电子耳号记录 - */ - @PreAuthorize("@ss.hasPermi('changeEar:changeEar:remove')") - @Log(title = "修改电子耳号记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) - { - return toAjax(scChangeEarService.deleteScChangeEarByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java deleted file mode 100644 index fd5b092..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScChangeVariety; -import com.zhyc.module.produce.manage_sheep.service.IScChangeVarietyService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 改品种记录Controller - * - * @author ruoyi - * @date 2025-07-24 - */ -@RestController -@RequestMapping("/changeVariety/changeVariety") -public class ScChangeVarietyController extends BaseController -{ - @Autowired - private IScChangeVarietyService scChangeVarietyService; - - /** - * 查询改品种记录列表 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:list')") - @GetMapping("/list") - public TableDataInfo list(ScChangeVariety scChangeVariety) - { - startPage(); - List list = scChangeVarietyService.selectScChangeVarietyList(scChangeVariety); - return getDataTable(list); - } - - /** - * 导出改品种记录列表 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:export')") - @Log(title = "改品种记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScChangeVariety scChangeVariety) - { - List list = scChangeVarietyService.selectScChangeVarietyList(scChangeVariety); - ExcelUtil util = new ExcelUtil(ScChangeVariety.class); - util.exportExcel(response, list, "改品种记录数据"); - } - - /** - * 获取改品种记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) - { - return success(scChangeVarietyService.selectScChangeVarietyById(id)); - } - - /** - * 新增改品种记录 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:add')") - @Log(title = "改品种记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScChangeVariety scChangeVariety) - { - return toAjax(scChangeVarietyService.insertScChangeVariety(scChangeVariety)); - } - - /** - * 修改改品种记录 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:edit')") - @Log(title = "改品种记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScChangeVariety scChangeVariety) - { - return toAjax(scChangeVarietyService.updateScChangeVariety(scChangeVariety)); - } - - /** - * 删除改品种记录 - */ - @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:remove')") - @Log(title = "改品种记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) - { - return toAjax(scChangeVarietyService.deleteScChangeVarietyByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java deleted file mode 100644 index 9fe5a2f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.controller; - -import java.io.IOException; -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; -import com.zhyc.module.produce.manage_sheep.service.IScTransGroupService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 转群记录Controller - * - * @author ruoyi - * @date 2025-07-10 - */ -@RestController -@RequestMapping("produce/manage_sheep/trans_group") -public class ScTransGroupController extends BaseController { - @Autowired - private IScTransGroupService scTransGroupService; - - /** - * 查询转群记录列表 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:list')") - @GetMapping("/list") - public TableDataInfo list(ScTransGroup scTransGroup) { - startPage(); - List list = scTransGroupService.selectScTransGroupList(scTransGroup); - return getDataTable(list); - } - - /** - * 导出转群记录列表 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:export')") - @Log(title = "转群记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScTransGroup scTransGroup) throws IOException { - List list = scTransGroupService.selectScTransGroupList(scTransGroup); - ExcelUtil util = new ExcelUtil<>(ScTransGroup.class); - util.exportExcel(response, list, "转群记录数据"); - } - - /** - * 获取转群记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) { - return success(scTransGroupService.selectScTransGroupById(id)); - } - - /** - * 新增转群记录 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:add')") - @Log(title = "转群记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScTransGroup scTransGroup) { - return toAjax(scTransGroupService.insertScTransGroup(scTransGroup)); - } - - /** - * 修改转群记录 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:edit')") - @Log(title = "转群记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScTransGroup scTransGroup) { - return toAjax(scTransGroupService.updateScTransGroup(scTransGroup)); - } - - /** - * 删除转群记录 - */ - @PreAuthorize("@ss.hasPermi('produce:trans_group:remove')") - @Log(title = "转群记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) { - return toAjax(scTransGroupService.deleteScTransGroupByIds(ids)); - } - - - /** - * 审批转群记录 - */ - @PutMapping("/approve") - public AjaxResult approve(@RequestBody ScTransGroup scTransGroup) { - return toAjax(scTransGroupService.approveScTransGroup(scTransGroup)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java deleted file mode 100644 index f41c044..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScTransitionInfo; -import com.zhyc.module.produce.manage_sheep.service.IScTransitionInfoService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 转场Controller - * - * @author ruoyi - * @date 2025-07-10 - */ -@RestController -@RequestMapping("produce/manage_sheep/transition_info") -public class ScTransitionInfoController extends BaseController { - @Autowired - private IScTransitionInfoService scTransitionInfoService; - - /** - * 查询转场列表 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:list')") - @GetMapping("/list") - public TableDataInfo list(ScTransitionInfo scTransitionInfo) { - startPage(); - List list = scTransitionInfoService.selectScTransitionInfoList(scTransitionInfo); - return getDataTable(list); - } - - /** - * 导出转场列表 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:export')") - @Log(title = "转场", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScTransitionInfo scTransitionInfo) { - List list = scTransitionInfoService.selectScTransitionInfoList(scTransitionInfo); - for (ScTransitionInfo item : list) { - item.setStatusText(scTransitionInfoService.convertStatus(item.getStatus())); - item.setTransTypeText(scTransitionInfoService.convertTransType(item.getTransType())); - } - ExcelUtil util = new ExcelUtil<>(ScTransitionInfo.class); - util.exportExcel(response, list, "转场数据"); - } - - /** - * 获取转场详细信息 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) { - ScTransitionInfo transitionInfo = scTransitionInfoService.selectScTransitionInfoById(id); - transitionInfo.setTransTypeText(scTransitionInfoService.convertTransType(transitionInfo.getTransType())); - return success(transitionInfo); - } - - /** - * 新增转场 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:add')") - @Log(title = "转场", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScTransitionInfo scTransitionInfo) { - return toAjax(scTransitionInfoService.insertScTransitionInfo(scTransitionInfo)); - } - - //批量添加 - @PostMapping("/batch") - public AjaxResult addBatch(@RequestBody List transitionInfoList) { - return toAjax(scTransitionInfoService.insertScTransitionInfoBatch(transitionInfoList)); - } - - /** - * 修改转场 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:edit')") - @Log(title = "转场", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScTransitionInfo scTransitionInfo) { - return toAjax(scTransitionInfoService.updateScTransitionInfo(scTransitionInfo)); - } - - /** - * 删除转场 - */ - @PreAuthorize("@ss.hasPermi('produce:transition_info:remove')") - @Log(title = "转场", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) { - return toAjax(scTransitionInfoService.deleteScTransitionInfoByIds(ids)); - } - - @PutMapping("/approve") - public AjaxResult approveScTransitionInfo(@RequestBody ScTransitionInfo scTransitionInfo) { - int rows = scTransitionInfoService.approveScTransitionInfo(scTransitionInfo); - return toAjax(rows); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java deleted file mode 100644 index 7bdf7ad..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.domain; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.zhyc.common.annotation.Excel; -import com.zhyc.common.core.domain.BaseEntity; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; -import java.util.Date; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScAddSheep extends BaseEntity { - /** - * 羊只 - * - * @author ruoyi - * @date 2025-07-10 - */ - private static final long serialVersionUID = 1L; - @Excel(name = "主键") - private Integer id; - /** 羊只耳号 */ - @Excel(name = "耳号") - private String earNumber; - - /** 羊舍编号 */ - private Integer sheepfold; - - private String sheepfoldName; - - // 导出时生成“羊舍名称”列 ,仅 Excel 用,不映射到数据库 - @Excel(name = "羊舍名称") - private String sheepfoldNameExcel; - - /** 父号 */ - @Excel(name = "父号") - private String father; - - /** 母号 */ - @Excel(name = "母号") - private String mother; - - /** 出生体重 */ - @Excel(name = "出生体重") - private BigDecimal bornWeight; - - /** 出生日期 */ - @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") - @Excel(name = "出生日期", dateFormat = "yyyy-MM-dd") - private Date birthday; - - /** 性别 1母 2公 3阉羊 */ - @Excel(name = "性别", readConverterExp = "1=母,2=公,3=阉羊") - private Integer gender; - - /** 胎次 */ - @Excel(name = "胎次") - private Integer parity; - - /** 品种id */ - private Integer varietyId; - - /** 品种名称(联表查询返回,非数据库字段) */ - @Excel(name = "品种") - private String varietyName; - - /** 入群日期 */ - @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") - @Excel(name = "入群日期", dateFormat = "yyyy-MM-dd") - private Date joinDate; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - - - private String createBy; - private Date createTime; - - -} - 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 deleted file mode 100644 index 2243411..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java +++ /dev/null @@ -1,47 +0,0 @@ -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; - -/** - * 改备注对象 sc_change_comment - * - * @author ruoyi - * @date 2025-07-24 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScChangeComment extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * $column.columnComment - */ - private Long id; - - /** - * 羊只id - */ - private String sheepId; - @Excel(name = "管理耳号") - private String manageTags; - /** - * 新备注 - */ - @Excel(name = "新备注") - private String newComment; - - /** - * 原备注 - */ - @Excel(name = "原备注") - private String oldComment; - - -} 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 deleted file mode 100644 index f2ef13f..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java +++ /dev/null @@ -1,50 +0,0 @@ -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; - -/** - * 修改电子耳号记录对象 sc_change_ear - * - * @author ruoyi - * @date 2025-07-24 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScChangeEar extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** id */ - private Integer id; - - /** 羊只id */ - private Long sheepId; - - @Excel(name = "管理耳号") - private String manageTags; - - /** 选择更改耳号类型(0电子耳号1管理耳号) */ - @Excel(name = "耳号类型", readConverterExp = "0=电子耳号,1=管理耳号") - private Integer earType; - - /** 新耳号/电子耳号 */ - @Excel(name = "新耳号/电子耳号") - private String newTag; - - /** 旧耳号/电子耳号 */ - @Excel(name = "旧耳号/电子耳号") - private String oldTag; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - -} 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 deleted file mode 100644 index 5f5e8ee..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.domain; - -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; - -/** - * 改品种记录对象 sc_change_variety - * - * @author ruoyi - * @date 2025-07-24 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScChangeVariety extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Integer id; - - /** 羊只id */ - private Integer sheepId; - @Excel(name = "耳号") - private String manageTags; - - /** 原品种 */ - @Excel(name = "原品种") - private String varietyOld; - - /** 新品种 */ - @Excel(name = "新品种") - private String varietyNew; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 创建日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTime; - - -} 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 deleted file mode 100644 index ba62557..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java +++ /dev/null @@ -1,107 +0,0 @@ -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 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScTransGroup extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * $column.columnComment - */ - private Integer id; - - /** - * 羊只id - */ - private Integer sheepId; - - @Excel(name = "耳号") - private String manageTags; - /** - * 转入羊舍 - */ - private String foldTo; - - /** - * 转出羊舍 - */ - private String foldFrom; - - /** - * 转出羊舍名称 - */ - @Excel(name = "转出羊舍") - private String foldFromName; - - /** - * 羊只类型ID - */ - private Integer sheepTypeId; - // 羊只类型名称 - private String sheepTypeName; - /** - * 转入羊舍名称 - */ - @Excel(name = "转入羊舍") - private String foldToName; - - /** - * 品种id - */ - private Long varietyId; - - /** - * 品种名称(联表查询返回,非数据库字段) - */ - @Excel(name = "品种") - private String varietyName; - - - private Integer reason; - /** - * 转群原因描述 用于导出 - */ - @Excel(name = "转群原因") - private String reasonText; - - /** - * 技术员 - */ - @Excel(name = "技术员") - private String technician; - - /** - * 状态 - */ - - private Integer status; - /** - * 状态描述 用于导出 - */ - @Excel(name = "状态") - private String statusText; - - /** - * 备注 - */ - @Excel(name = "备注") - private String comment; - - -} 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 deleted file mode 100644 index 554bf4d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java +++ /dev/null @@ -1,88 +0,0 @@ -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; - -/** - * 转场对象 sc_transition_info - * - * @author ruoyi - * @date 2025-07-10 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScTransitionInfo extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - *主键 - */ - private Integer id; - - /** - * 羊只id - */ - private Integer sheepId; - - @Excel(name = "耳号") - private String manageTags; - /** - * 品种id - */ - private Long varietyId; - - /** - * 品种名称(联表返回,非数据库字段) - */ - @Excel(name = "品种") - private String varietyName; - - /** - * 转入牧场 - */ - @Excel(name = "转入牧场") - private String transTo; - - /** - * 当前牧场 - */ - @Excel(name = "当前牧场") - private String transFrom; - - /** - * 转场类型 - */ - private Integer transType; - - /** - * 转场类型名称 只用于导出 - */ - @Excel(name = "转场类型") - private String transTypeText; - - /** - * 技术员 - */ - @Excel(name = "技术员") - private String technician; - - /** - * 状态 - */ - private Integer status; - @Excel(name = "状态") - private String statusText; - /** - * 备注 - */ - @Excel(name = "备注") - private String comment; - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java deleted file mode 100644 index 8231d04..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; - -@Mapper -public interface ScAddSheepMapper { - //新增羊只 - int insert(ScAddSheep scAddSheep); - - //查询新增羊只列表 - List selectScAddSheepList(ScAddSheep scAddSheep); - - //修改羊只 - int updateScAddSheep(ScAddSheep scAddSheep); - - //删除羊只(支持批量) - int deleteScAddSheepByIds(Integer[] ids); - - //根据耳号查询羊只 - ScAddSheep selectByEarNumber(String earNumber); -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java deleted file mode 100644 index cd71536..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; - -/** - * 改备注Mapper接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface ScChangeCommentMapper -{ - /** - * 查询改备注 - * - * @param id 改备注主键 - * @return 改备注 - */ - public ScChangeComment selectScChangeCommentById(Long id); - - /** - * 查询改备注列表 - * - * @param scChangeComment 改备注 - * @return 改备注集合 - */ - public List selectScChangeCommentList(ScChangeComment scChangeComment); - - /** - * 新增改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - public int insertScChangeComment(ScChangeComment scChangeComment); - - /** - * 修改改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - public int updateScChangeComment(ScChangeComment scChangeComment); - - /** - * 删除改备注 - * - * @param id 改备注主键 - * @return 结果 - */ - public int deleteScChangeCommentById(Long id); - - /** - * 批量删除改备注 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScChangeCommentByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java deleted file mode 100644 index 5699a46..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; - -/** - * 修改电子耳号记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface ScChangeEarMapper -{ - /** - * 查询修改电子耳号记录 - * - * @param id 修改电子耳号记录主键 - * @return 修改电子耳号记录 - */ - public ScChangeEar selectScChangeEarById(Integer id); - - /** - * 查询修改电子耳号记录列表 - * - * @param scChangeEar 修改电子耳号记录 - * @return 修改电子耳号记录集合 - */ - public List selectScChangeEarList(ScChangeEar scChangeEar); - - /** - * 新增修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - public int insertScChangeEar(ScChangeEar scChangeEar); - - /** - * 修改修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - public int updateScChangeEar(ScChangeEar scChangeEar); - - /** - * 删除修改电子耳号记录 - * - * @param id 修改电子耳号记录主键 - * @return 结果 - */ - public int deleteScChangeEarById(Integer id); - - /** - * 批量删除修改电子耳号记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScChangeEarByIds(Integer[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java deleted file mode 100644 index 12d9075..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; - -/** - * 改品种记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface ScChangeVarietyMapper -{ - /** - * 查询改品种记录 - * - * @param id 改品种记录主键 - * @return 改品种记录 - */ - public ScChangeVariety selectScChangeVarietyById(Integer id); - - /** - * 查询改品种记录列表 - * - * @param scChangeVariety 改品种记录 - * @return 改品种记录集合 - */ - public List selectScChangeVarietyList(ScChangeVariety scChangeVariety); - - /** - * 新增改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - public int insertScChangeVariety(ScChangeVariety scChangeVariety); - - /** - * 修改改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - public int updateScChangeVariety(ScChangeVariety scChangeVariety); - - /** - * 删除改品种记录 - * - * @param id 改品种记录主键 - * @return 结果 - */ - public int deleteScChangeVarietyById(Integer id); - - /** - * 批量删除改品种记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScChangeVarietyByIds(Integer[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java deleted file mode 100644 index 5746adc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import java.util.List; - -import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; -import org.apache.ibatis.annotations.Mapper; - -/** - * 转群记录Mapper接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Mapper -public interface ScTransGroupMapper { - /** - * 查询转群记录 - * - * @param id 转群记录主键 - * @return 转群记录 - */ - public ScTransGroup selectScTransGroupById(Integer id); - - /** - * 查询转群记录列表 - * - * @param scTransGroup 转群记录 - * @return 转群记录集合 - */ - public List selectScTransGroupList(ScTransGroup scTransGroup); - - /** - * 新增转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - public int insertScTransGroup(ScTransGroup scTransGroup); - - /** - * 修改转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - public int updateScTransGroup(ScTransGroup scTransGroup); - - /** - * 删除转群记录 - * - * @param id 转群记录主键 - * @return 结果 - */ - public int deleteScTransGroupById(Integer id); - - /** - * 批量删除转群记录 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScTransGroupByIds(Integer[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java deleted file mode 100644 index a095246..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.mapper; - -import java.util.List; - -import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; -import org.apache.ibatis.annotations.Param; - -/** - * 转场Mapper接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -public interface ScTransitionInfoMapper -{ - /** - * 查询转场 - * - * @param id 转场主键 - * @return 转场 - */ - public ScTransitionInfo selectScTransitionInfoById(Integer id); - - /** - * 查询转场列表 - * - * @param scTransitionInfo 转场 - * @return 转场集合 - */ - public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo); - - /** - * 新增转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo); - - /** - * 修改转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo); - - /** - * 删除转场 - * - * @param id 转场主键 - * @return 结果 - */ - public int deleteScTransitionInfoById(Integer id); - - /** - * 批量删除转场 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScTransitionInfoByIds(Integer[] ids); - - //批量转场 - int insertScTransitionInfoBatch(@Param("list") List transitionInfoList); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java deleted file mode 100644 index e39b7c9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; - -import java.util.List; - - -public interface IScAddSheepService { - - //新增 - boolean insertScAddSheep(ScAddSheep scAddSheep); - - //查询 - List selectScAddSheepList(ScAddSheep scAddSheep); - - //修改 - boolean updateScAddSheep(ScAddSheep scAddSheep); - - //删除 - boolean deleteScAddSheepByIds(Integer[] ids); - - //导入 - String importSheep(List list, boolean updateSupport, String operName); - - -} - diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java deleted file mode 100644 index cd11f0c..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; - -/** - * 改备注Service接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface IScChangeCommentService -{ - /** - * 查询改备注 - * - * @param id 改备注主键 - * @return 改备注 - */ - public ScChangeComment selectScChangeCommentById(Long id); - - /** - * 查询改备注列表 - * - * @param scChangeComment 改备注 - * @return 改备注集合 - */ - public List selectScChangeCommentList(ScChangeComment scChangeComment); - - /** - * 新增改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - public int insertScChangeComment(ScChangeComment scChangeComment); - - /** - * 修改改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - public int updateScChangeComment(ScChangeComment scChangeComment); - - /** - * 批量删除改备注 - * - * @param ids 需要删除的改备注主键集合 - * @return 结果 - */ - public int deleteScChangeCommentByIds(Long[] ids); - - /** - * 删除改备注信息 - * - * @param id 改备注主键 - * @return 结果 - */ - public int deleteScChangeCommentById(Long id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java deleted file mode 100644 index 93133ea..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; - -/** - * 修改电子耳号记录Service接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface IScChangeEarService -{ - /** - * 查询修改电子耳号记录 - * - * @param id 修改电子耳号记录主键 - * @return 修改电子耳号记录 - */ - public ScChangeEar selectScChangeEarById(Integer id); - - /** - * 查询修改电子耳号记录列表 - * - * @param scChangeEar 修改电子耳号记录 - * @return 修改电子耳号记录集合 - */ - public List selectScChangeEarList(ScChangeEar scChangeEar); - - /** - * 新增修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - public int insertScChangeEar(ScChangeEar scChangeEar); - - /** - * 修改修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - public int updateScChangeEar(ScChangeEar scChangeEar); - - /** - * 批量删除修改电子耳号记录 - * - * @param ids 需要删除的修改电子耳号记录主键集合 - * @return 结果 - */ - public int deleteScChangeEarByIds(Integer[] ids); - - /** - * 删除修改电子耳号记录信息 - * - * @param id 修改电子耳号记录主键 - * @return 结果 - */ - public int deleteScChangeEarById(Integer id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java deleted file mode 100644 index 7de8f59..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import java.util.List; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; - -/** - * 改品种记录Service接口 - * - * @author ruoyi - * @date 2025-07-24 - */ -public interface IScChangeVarietyService -{ - /** - * 查询改品种记录 - * - * @param id 改品种记录主键 - * @return 改品种记录 - */ - public ScChangeVariety selectScChangeVarietyById(Integer id); - - /** - * 查询改品种记录列表 - * - * @param scChangeVariety 改品种记录 - * @return 改品种记录集合 - */ - public List selectScChangeVarietyList(ScChangeVariety scChangeVariety); - - /** - * 新增改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - public int insertScChangeVariety(ScChangeVariety scChangeVariety); - - /** - * 修改改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - public int updateScChangeVariety(ScChangeVariety scChangeVariety); - - /** - * 批量删除改品种记录 - * - * @param ids 需要删除的改品种记录主键集合 - * @return 结果 - */ - public int deleteScChangeVarietyByIds(Integer[] ids); - - /** - * 删除改品种记录信息 - * - * @param id 改品种记录主键 - * @return 结果 - */ - public int deleteScChangeVarietyById(Integer id); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java deleted file mode 100644 index 6430d38..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import java.util.List; - -import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; - -/** - * 转群记录Service接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -public interface IScTransGroupService { - /** - * 查询转群记录 - * - * @param id 转群记录主键 - * @return 转群记录 - */ - public ScTransGroup selectScTransGroupById(Integer id); - - /** - * 查询转群记录列表 - * - * @param scTransGroup 转群记录 - * @return 转群记录集合 - */ - public List selectScTransGroupList(ScTransGroup scTransGroup); - - /** - * 新增转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - public int insertScTransGroup(ScTransGroup scTransGroup); - - /** - * 修改转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - public int updateScTransGroup(ScTransGroup scTransGroup); - - /** - * 批量删除转群记录 - * - * @param ids 需要删除的转群记录主键集合 - * @return 结果 - */ - public int deleteScTransGroupByIds(Integer[] ids); - - /** - * 删除转群记录信息 - * - * @param id 转群记录主键 - * @return 结果 - */ - public int deleteScTransGroupById(Integer id); - - - /** - * 审批转群记录 - */ - int approveScTransGroup(ScTransGroup scTransGroup); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java deleted file mode 100644 index b578491..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service; - -import java.util.List; - -import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; - -/** - * 转场Service接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -public interface IScTransitionInfoService { - /** - * 查询转场 - * - * @param id 转场主键 - * @return 转场 - */ - public ScTransitionInfo selectScTransitionInfoById(Integer id); - - /** - * 查询转场列表 - * - * @param scTransitionInfo 转场 - * @return 转场集合 - */ - public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo); - - /** - * 新增转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo); - - /** - * 修改转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo); - - /** - * 批量删除转场 - * - * @param ids 需要删除的转场主键集合 - * @return 结果 - */ - public int deleteScTransitionInfoByIds(Integer[] ids); - - /** - * 删除转场信息 - * - * @param id 转场主键 - * @return 结果 - */ - public int deleteScTransitionInfoById(Integer id); - - //批量转场 - public int insertScTransitionInfoBatch(List transitionInfoList); - - //状态 - public String convertStatus(Integer status); - - //转场类型 - public String convertTransType(Integer transType); - - //审批转场 - public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java deleted file mode 100644 index b6ed6b4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java +++ /dev/null @@ -1,189 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service.impl; - -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.StringUtils; -import com.zhyc.module.base.mapper.BasSheepVarietyMapper; -import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; -import com.zhyc.module.produce.manage_sheep.mapper.ScAddSheepMapper; -import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.service.IBasSheepService; -import com.zhyc.module.base.domain.DaSheepfold; -import com.zhyc.module.base.mapper.DaSheepfoldMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; - -@Service -public class ScAddSheepServiceImpl implements IScAddSheepService { - - @Autowired - private ScAddSheepMapper scAddSheepMapper; - - @Autowired - private DaSheepfoldMapper daSheepfoldMapper; - - @Autowired - private IBasSheepService basSheepService; - - @Autowired - private BasSheepVarietyMapper basSheepVarietyMapper; - - //新增 - @Override - @Transactional(rollbackFor = Exception.class) - public boolean insertScAddSheep(ScAddSheep scAddSheep) { - BasSheep existSheep =basSheepService.selectBasSheepByManageTags(scAddSheep.getEarNumber().trim()); - if (existSheep != null) { - throw new ServiceException("添加失败,耳号已存在"); - } - - boolean ok = scAddSheepMapper.insert(scAddSheep) > 0; - if (!ok) return false; - - BasSheep bs = new BasSheep(); - bs.setManageTags(scAddSheep.getEarNumber()); -// bs.setElectronicTags(scAddSheep.getEarNumber()); - bs.setSheepfoldId(scAddSheep.getSheepfold().longValue()); - bs.setFatherId(null); - bs.setMotherId(null); - bs.setBirthWeight(scAddSheep.getBornWeight().longValue()); - bs.setSource(String.valueOf(2)); - bs.setBirthday(scAddSheep.getBirthday()); - bs.setGender(scAddSheep.getGender().longValue()); - if (scAddSheep.getParity() != null) { - bs.setParity(scAddSheep.getParity().longValue()); - } else { - bs.setParity(null); - } - bs.setVarietyId(scAddSheep.getVarietyId().longValue()); - bs.setSourceDate(scAddSheep.getJoinDate()); - bs.setComment(scAddSheep.getComment()); - bs.setCreateBy(scAddSheep.getCreateBy()); - bs.setCreateTime(new Date()); - - basSheepService.insertBasSheep(bs); - return true; - } - - //查询 - @Override - public List selectScAddSheepList(ScAddSheep scAddSheep) { - return scAddSheepMapper.selectScAddSheepList(scAddSheep); - } - - //修改 - @Override - public boolean updateScAddSheep(ScAddSheep scAddSheep) { - return scAddSheepMapper.updateScAddSheep(scAddSheep) > 0; - } - - //删除 - @Override - public boolean deleteScAddSheepByIds(Integer[] ids) { - return scAddSheepMapper.deleteScAddSheepByIds(ids) > 0; - } - - //导入羊只 - @Override - @Transactional(rollbackFor = Exception.class) - public String importSheep(List list, boolean updateSupport, String operName) { - if (list == null || list.isEmpty()) { - throw new ServiceException("导入数据不能为空!"); - } - - int success = 0, failure = 0; - StringBuilder failureMsg = new StringBuilder(); - - for (int i = 0; i < list.size(); i++) { - ScAddSheep sheep = list.get(i); - try { - // 处理品种名称转换为品种ID - if (StringUtils.isNotBlank(sheep.getVarietyName())) { - Long varietyId = basSheepVarietyMapper.selectIdByName(sheep.getVarietyName()); - if (varietyId == null) { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:品种名称不存在【") - .append(sheep.getVarietyName()) - .append("】"); - continue; - } - sheep.setVarietyId(varietyId.intValue()); - } else { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:品种不能为空"); - continue; - } - - // 处理羊舍名称转换为羊舍ID - if (StringUtils.isNotBlank(sheep.getSheepfoldNameExcel())) { - DaSheepfold param = new DaSheepfold(); - param.setSheepfoldName(sheep.getSheepfoldNameExcel()); - List foldList = daSheepfoldMapper.selectDaSheepfoldList(param); - if (foldList == null || foldList.isEmpty()) { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:羊舍名称不存在【") - .append(sheep.getSheepfoldNameExcel()) - .append("】"); - continue; - } - sheep.setSheepfold(foldList.get(0).getId().intValue()); - } - - // 校验耳号是否为空 - if (StringUtils.isBlank(sheep.getEarNumber())) { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:耳号不能为空"); - continue; - } - - // 核心校验:判断羊只基本信息表中是否存在未删除的同名耳号 - BasSheep existSheep = basSheepService.selectBasSheepByManageTags(sheep.getEarNumber().trim()); - if (existSheep != null) { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:耳号已存在且未删除【") - .append(sheep.getEarNumber()) - .append("】"); - continue; - } - - // 执行导入(新增或更新) - if (updateSupport && sheep.getId() != null) { - sheep.setUpdateBy(operName); - updateScAddSheep(sheep); - } else { - sheep.setCreateBy(operName); - insertScAddSheep(sheep); - } - success++; - - } catch (Exception e) { - failure++; - failureMsg.append("
第") - .append(i + 1) - .append("行:") - .append(e.getMessage()); - } - } - - if (failure > 0) { - throw new ServiceException("导入失败!共 " + failure + " 条:" + failureMsg); - } - return "导入成功!共 " + success + " 条"; - } - - -} \ No newline at end of file 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 deleted file mode 100644 index f45aa59..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.manage_sheep.mapper.ScChangeCommentMapper; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; -import com.zhyc.module.produce.manage_sheep.service.IScChangeCommentService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 改备注Service业务层处理 - * - * @author ruoyi - * @date 2025-07-24 - */ -@Service -public class ScChangeCommentServiceImpl implements IScChangeCommentService -{ - @Autowired - private ScChangeCommentMapper scChangeCommentMapper; - - @Autowired - private IBasSheepService basSheepService; - /** - * 查询改备注 - * - * @param id 改备注主键 - * @return 改备注 - */ - @Override - public ScChangeComment selectScChangeCommentById(Long id) - { - return scChangeCommentMapper.selectScChangeCommentById(id); - } - - /** - * 查询改备注列表 - * - * @param scChangeComment 改备注 - * @return 改备注 - */ - @Override - public List selectScChangeCommentList(ScChangeComment scChangeComment) - { - return scChangeCommentMapper.selectScChangeCommentList(scChangeComment); - } - - /** - * 新增改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertScChangeComment(ScChangeComment scChangeComment) - { - scChangeComment.setCreateTime(new Date()); - scChangeComment.setCreateBy(SecurityUtils.getUsername()); - int rows = scChangeCommentMapper.insertScChangeComment(scChangeComment); - if (rows <= 0) { - return rows; - } - - String manageTags = scChangeComment.getManageTags(); - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("未找到耳号为【" + manageTags + "】的羊只,无法更新备注"); - } - - sheep.setComment(scChangeComment.getNewComment()); - basSheepService.updateBasSheep(sheep); - - return rows; - } - - /** - * 修改改备注 - * - * @param scChangeComment 改备注 - * @return 结果 - */ - @Override - public int updateScChangeComment(ScChangeComment scChangeComment) - { - return scChangeCommentMapper.updateScChangeComment(scChangeComment); - } - - /** - * 批量删除改备注 - * - * @param ids 需要删除的改备注主键 - * @return 结果 - */ - @Override - public int deleteScChangeCommentByIds(Long[] ids) - { - return scChangeCommentMapper.deleteScChangeCommentByIds(ids); - } - - /** - * 删除改备注信息 - * - * @param id 改备注主键 - * @return 结果 - */ - @Override - public int deleteScChangeCommentById(Long id) - { - return scChangeCommentMapper.deleteScChangeCommentById(id); - } - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java deleted file mode 100644 index 8f78e50..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java +++ /dev/null @@ -1,156 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service.impl; - -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; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.manage_sheep.mapper.ScChangeEarMapper; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; -import com.zhyc.module.produce.manage_sheep.service.IScChangeEarService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 修改电子耳号记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-24 - */ -@Service -public class ScChangeEarServiceImpl implements IScChangeEarService -{ - @Autowired - private ScChangeEarMapper scChangeEarMapper; - - @Autowired - private IBasSheepService basSheepService; - /** - * 查询修改电子耳号记录 - * - * @param id 修改电子耳号记录主键 - * @return 修改电子耳号记录 - */ - @Override - public ScChangeEar selectScChangeEarById(Integer id) { - ScChangeEar changeEar = scChangeEarMapper.selectScChangeEarById(id); - if (changeEar != null && changeEar.getSheepId() != null) { - System.out.println("当前要查询羊只信息的sheepId: " + changeEar.getSheepId()); - BasSheep sheep = basSheepService.selectBasSheepById(changeEar.getSheepId()); - System.out.println("查询到的羊只信息: " + sheep); - if (sheep != null) { - if (changeEar.getEarType() != null) { - if (changeEar.getEarType() == 0) { - changeEar.setOldTag(sheep.getElectronicTags()); - } else { - changeEar.setOldTag(sheep.getManageTags()); - } - } - changeEar.setManageTags(sheep.getManageTags()); - } else { - System.out.println("根据sheepId: " + changeEar.getSheepId() + " 未查询到对应的羊只信息"); - } - } else { - System.out.println("changeEar为null或者sheepId为null"); - } - System.out.println("设置旧耳号: " + changeEar.getOldTag()); - return changeEar; - } - - /** - * 查询修改电子耳号记录列表 - * - * @param scChangeEar 修改电子耳号记录 - * @return 修改电子耳号记录 - */ - @Override - public List selectScChangeEarList(ScChangeEar scChangeEar) { - List list = scChangeEarMapper.selectScChangeEarList(scChangeEar); - return list; - } - - /** - * 新增修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertScChangeEar(ScChangeEar scChangeEar) { - scChangeEar.setCreateTime(DateUtils.getNowDate()); - scChangeEar.setCreateBy(SecurityUtils.getUsername()); - - // 在新增时,确保旧耳号被正确设置为原始耳号的值 - if (scChangeEar.getSheepId() == null) { - throw new RuntimeException("未找到对应的羊只ID"); - } - - BasSheep sheep = basSheepService.selectBasSheepById(scChangeEar.getSheepId()); - if (sheep == null) { - throw new RuntimeException("未找到ID为【" + scChangeEar.getSheepId() + "】的羊只"); - } - - // 设置旧耳号为原始耳号的值 - if (scChangeEar.getEarType() == 0) { - scChangeEar.setOldTag(sheep.getElectronicTags()); - } else if (scChangeEar.getEarType() == 1) { - scChangeEar.setOldTag(sheep.getManageTags()); - } else { - throw new RuntimeException("无效的耳号类型:" + scChangeEar.getEarType()); - } - - int rows = scChangeEarMapper.insertScChangeEar(scChangeEar); - System.out.println(scChangeEar); - if (rows <= 0) { - return rows; - } - - // 更新羊只基本信息表中的管理耳号或电子耳号 - if (scChangeEar.getEarType() == 0) { - sheep.setElectronicTags(scChangeEar.getNewTag()); - } else if (scChangeEar.getEarType() == 1) { - sheep.setManageTags(scChangeEar.getNewTag()); - } - basSheepService.updateBasSheep(sheep); - - return rows; - } - - /** - * 修改修改电子耳号记录 - * - * @param scChangeEar 修改电子耳号记录 - * @return 结果 - */ - @Override - public int updateScChangeEar(ScChangeEar scChangeEar) - { - return scChangeEarMapper.updateScChangeEar(scChangeEar); - } - - /** - * 批量删除修改电子耳号记录 - * - * @param ids 需要删除的修改电子耳号记录主键 - * @return 结果 - */ - @Override - public int deleteScChangeEarByIds(Integer[] ids) - { - return scChangeEarMapper.deleteScChangeEarByIds(ids); - } - - /** - * 删除修改电子耳号记录信息 - * - * @param id 修改电子耳号记录主键 - * @return 结果 - */ - @Override - public int deleteScChangeEarById(Integer id) - { - return scChangeEarMapper.deleteScChangeEarById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java deleted file mode 100644 index 9551a56..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service.impl; - -import java.util.Date; -import java.util.List; - -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.domain.BasSheepVariety; -import com.zhyc.module.base.service.IBasSheepService; -import com.zhyc.module.base.service.IBasSheepVarietyService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.manage_sheep.mapper.ScChangeVarietyMapper; -import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; -import com.zhyc.module.produce.manage_sheep.service.IScChangeVarietyService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 改品种记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-24 - */ -@Service -public class ScChangeVarietyServiceImpl implements IScChangeVarietyService -{ - @Autowired - private ScChangeVarietyMapper scChangeVarietyMapper; - @Autowired - private IBasSheepService basSheepService; - @Autowired - private IBasSheepVarietyService varietyService; - /** - * 查询改品种记录 - * - * @param id 改品种记录主键 - * @return 改品种记录 - */ - @Override - public ScChangeVariety selectScChangeVarietyById(Integer id) - { - return scChangeVarietyMapper.selectScChangeVarietyById(id); - } - - /** - * 查询改品种记录列表 - * - * @param scChangeVariety 改品种记录 - * @return 改品种记录 - */ - @Override - public List selectScChangeVarietyList(ScChangeVariety scChangeVariety) - { - return scChangeVarietyMapper.selectScChangeVarietyList(scChangeVariety); - } - - /** - * 新增改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertScChangeVariety(ScChangeVariety scChangeVariety) - { - scChangeVariety.setCreateTime(new Date()); - scChangeVariety.setCreateBy(SecurityUtils.getUsername()); - int rows = scChangeVarietyMapper.insertScChangeVariety(scChangeVariety); - if (rows <= 0) { - return rows; - } - - String manageTags = scChangeVariety.getManageTags(); - BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); - if (sheep == null) { - throw new RuntimeException("未找到耳号为【" + manageTags + "】的羊只,无法更新品种"); - } - - String newVarietyName = scChangeVariety.getVarietyNew(); - BasSheepVariety newVariety = varietyService.selectByVarietyName(newVarietyName); - if (newVariety == null) { - throw new RuntimeException("未找到品种【" + newVarietyName + "】的信息,请检查品种名称"); - } - - sheep.setVarietyId(newVariety.getId()); - basSheepService.updateBasSheep(sheep); - - return rows; - } - - /** - * 修改改品种记录 - * - * @param scChangeVariety 改品种记录 - * @return 结果 - */ - @Override - public int updateScChangeVariety(ScChangeVariety scChangeVariety) - { - return scChangeVarietyMapper.updateScChangeVariety(scChangeVariety); - } - - /** - * 批量删除改品种记录 - * - * @param ids 需要删除的改品种记录主键 - * @return 结果 - */ - @Override - public int deleteScChangeVarietyByIds(Integer[] ids) - { - return scChangeVarietyMapper.deleteScChangeVarietyByIds(ids); - } - - /** - * 删除改品种记录信息 - * - * @param id 改品种记录主键 - * @return 结果 - */ - @Override - public int deleteScChangeVarietyById(Integer id) - { - return scChangeVarietyMapper.deleteScChangeVarietyById(id); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java deleted file mode 100644 index 3604f92..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java +++ /dev/null @@ -1,180 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service.impl; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.service.IBasSheepService; -import com.zhyc.module.produce.manage_sheep.mapper.ScTransGroupMapper; -import com.zhyc.module.produce.manage_sheep.service.IScTransGroupService; -import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -/** - * 转群记录Service业务层处理 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Service -public class ScTransGroupServiceImpl implements IScTransGroupService { - @Autowired - private ScTransGroupMapper scTransGroupMapper; - @Autowired - private BasSheepMapper basSheepMapper; - @Autowired - private IBasSheepService basSheepService; - /** - * 查询转群记录 - * - * @param id 转群记录主键 - * @return 转群记录 - */ - @Override - public ScTransGroup selectScTransGroupById(Integer id) { - ScTransGroup group = scTransGroupMapper.selectScTransGroupById(id); - group.setReasonText(convertReason(group.getReason())); - group.setStatusText(convertStatus(group.getStatus())); - return group; - } - - - /** - * 查询转群记录列表 - * - * @param scTransGroup 转群记录 - * @return 转群记录 - */ - @Override - public List selectScTransGroupList(ScTransGroup scTransGroup) { - List list = scTransGroupMapper.selectScTransGroupList(scTransGroup); - list.forEach(group -> { - group.setReasonText(convertReason(group.getReason())); - group.setStatusText(convertStatus(group.getStatus())); - }); - return list; - } - - /** - * 新增转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - - @Override - public int insertScTransGroup(ScTransGroup scTransGroup) { - scTransGroup.setStatus(0); - scTransGroup.setCreateTime(DateUtils.getNowDate()); - scTransGroup.setCreateBy(SecurityUtils.getUsername()); - return scTransGroupMapper.insertScTransGroup(scTransGroup); - } - - /** - * 修改转群记录 - * - * @param scTransGroup 转群记录 - * @return 结果 - */ - @Override - public int updateScTransGroup(ScTransGroup scTransGroup) { - return scTransGroupMapper.updateScTransGroup(scTransGroup); - } - - /** - * 批量删除转群记录 - * - * @param ids 需要删除的转群记录主键 - * @return 结果 - */ - @Override - public int deleteScTransGroupByIds(Integer[] ids) { - return scTransGroupMapper.deleteScTransGroupByIds(ids); - } - - /** - * 删除转群记录信息 - * - * @param id 转群记录主键 - * @return 结果 - */ - @Override - public int deleteScTransGroupById(Integer id) { - return scTransGroupMapper.deleteScTransGroupById(id); - } - - - /** - * 审批转群记录 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int approveScTransGroup(ScTransGroup scTransGroup) { - int rows = scTransGroupMapper.updateScTransGroup(scTransGroup); - - if (rows > 0 && scTransGroup.getStatus() == 1) { - updateSheepFold(scTransGroup); - } - - return rows; - } - - /** - * 更新羊只所在羊舍 - */ - private void updateSheepFold(ScTransGroup transGroup) { - Long foldTo = Long.valueOf(transGroup.getFoldTo()); - if (foldTo == null) { - throw new RuntimeException("转入羊舍不能为空"); - } - - String manageTags = transGroup.getManageTags(); - if (manageTags == null || manageTags.isEmpty()) { - throw new RuntimeException("耳号不能为空"); - } - - List tagList = Arrays.asList(manageTags.split(",")); - - for (String tag : tagList) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(tag.trim()); - if (sheep != null) { - BasSheep updateSheep = new BasSheep(); - updateSheep.setId(sheep.getId()); - updateSheep.setSheepfoldId(foldTo); - basSheepMapper.updateBasSheep(updateSheep); - } else { - throw new RuntimeException("耳号 [" + tag + "] 不存在"); - } - } - } - - /** - * 转换转群原因 - */ - private String convertReason(Integer reasonCode) { - Map reasonMap = new HashMap<>(); - reasonMap.put(0, "新产羊过抗转群"); - reasonMap.put(1, "治愈转群"); - reasonMap.put(2, "病羊过抗转群"); - return reasonMap.getOrDefault(reasonCode, "未知原因"); - } - - /** - * 转换状态 - */ - private String convertStatus(Integer statusCode) { - Map statusMap = new HashMap<>(); - statusMap.put(0, "待批准"); - statusMap.put(1, "通过"); - statusMap.put(2, "驳回"); - return statusMap.getOrDefault(statusCode, "未知状态"); - } - -} 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 deleted file mode 100644 index cd8a96b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java +++ /dev/null @@ -1,201 +0,0 @@ -package com.zhyc.module.produce.manage_sheep.service.impl; - -import java.util.*; - -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -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; -import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import com.zhyc.module.produce.manage_sheep.service.IScTransitionInfoService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 转场Service业务层处理 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Service -public class ScTransitionInfoServiceImpl implements IScTransitionInfoService -{ - @Autowired - private ScTransitionInfoMapper scTransitionInfoMapper; - @Autowired - private BasSheepMapper basSheepMapper; - @Autowired - private IDaRanchService daRanchService; - @Autowired - private IBasSheepService basSheepService; - /** - * 查询转场 - * - * @param id 转场主键 - * @return 转场 - */ - @Override - public ScTransitionInfo selectScTransitionInfoById(Integer id) - { - return scTransitionInfoMapper.selectScTransitionInfoById(id); - } - - /** - * 查询转场列表 - * - * @param scTransitionInfo 转场 - * @return 转场 - */ - @Override - public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo) - { - return scTransitionInfoMapper.selectScTransitionInfoList(scTransitionInfo); - } - - /** - * 新增转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - @Override - public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo) - { - scTransitionInfo.setStatus(0); - scTransitionInfo.setCreateTime(DateUtils.getNowDate()); - return scTransitionInfoMapper.insertScTransitionInfo(scTransitionInfo); - } - - /** - * 修改转场 - * - * @param scTransitionInfo 转场 - * @return 结果 - */ - @Override - public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo) - { - return scTransitionInfoMapper.updateScTransitionInfo(scTransitionInfo); - } - - /** - * 批量删除转场 - * - * @param ids 需要删除的转场主键 - * @return 结果 - */ - @Override - public int deleteScTransitionInfoByIds(Integer[] ids) - { - return scTransitionInfoMapper.deleteScTransitionInfoByIds(ids); - } - - /** - * 删除转场信息 - * - * @param id 转场主键 - * @return 结果 - */ - @Override - public int deleteScTransitionInfoById(Integer id) - { - return scTransitionInfoMapper.deleteScTransitionInfoById(id); - } - - @Override - public int insertScTransitionInfoBatch(List transitionInfoList) { - String username = SecurityUtils.getUsername(); - Date now = DateUtils.getNowDate(); - - for (ScTransitionInfo info : transitionInfoList) { - info.setCreateBy(username); // 设置创建人 - info.setCreateTime(now); // 设置创建时间 - info.setStatus(0); // 设置默认状态 - } - return scTransitionInfoMapper.insertScTransitionInfoBatch(transitionInfoList); - } - - /** - * 审批转场记录(通过时更新羊只所在牧场) - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo) { - int rows = scTransitionInfoMapper.updateScTransitionInfo(scTransitionInfo); - - if (rows > 0 && scTransitionInfo.getStatus() == 1) { - updateSheepRanch(scTransitionInfo); - } - return rows; - } - - /** - * 更新羊只的所在牧场(基于现有牧场列表接口) - */ - private void updateSheepRanch(ScTransitionInfo transitionInfo) { - String transTo = transitionInfo.getTransTo(); - if (StringUtils.isBlank(transTo)) { - throw new RuntimeException("转入牧场不能为空"); - } - - DaRanch query = new DaRanch(); - query.setRanch(transTo); - List ranchList = daRanchService.selectDaRanchList(query); - - Optional matchedRanch = ranchList.stream() - .filter(ranch -> transTo.equals(ranch.getRanch())) - .findFirst(); - - if (!matchedRanch.isPresent()) { - throw new RuntimeException("转入牧场 [" + transTo + "] 不存在"); - } - Long targetRanchId = matchedRanch.get().getId(); - - String manageTags = transitionInfo.getManageTags(); - if (StringUtils.isBlank(manageTags)) { - throw new RuntimeException("耳号不能为空"); - } - List tagList = Arrays.asList(manageTags.split(",")); - - for (String tag : tagList) { - BasSheep sheep = basSheepService.selectBasSheepByManageTags(tag.trim()); - if (sheep == null) { - throw new RuntimeException("耳号 [" + tag + "] 不存在"); - } - - BasSheep updateSheep = new BasSheep(); - updateSheep.setId(sheep.getId()); - updateSheep.setRanchId(targetRanchId); - basSheepMapper.updateBasSheep(updateSheep); - } - } - - /** - * 状态 - */ - public String convertStatus(Integer statusCode) { - Map statusMap = new HashMap<>(); - statusMap.put(0, "待批准"); - statusMap.put(1, "通过"); - statusMap.put(2, "驳回"); - return statusMap.getOrDefault(statusCode, "未知状态"); - } - - /** - * 转场类型 - */ - public String convertTransType(Integer transTypeCode) { - Map transTypeMap = new HashMap<>(); - transTypeMap.put(0, "内部调拨"); - transTypeMap.put(1, "内部销售"); - transTypeMap.put(2, "育肥调拨"); - return transTypeMap.getOrDefault(transTypeCode, "未知类型"); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java deleted file mode 100644 index 914a781..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.zhyc.module.produce.other.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.module.produce.other.domain.ScCastrate; -import com.zhyc.module.produce.other.service.IScCastrateService; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 去势Controller - * - * @author ruoyi - * @date 2025-07-09 - */ -@RestController -@RequestMapping("/produce/other/castrate") -public class ScCastrateController extends BaseController -{ - @Autowired - private IScCastrateService scCastrateService; - - /** - * 查询去势列表 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:list')") - @GetMapping("/list") - public TableDataInfo list(ScCastrate scCastrate) - { - startPage(); - List list = scCastrateService.selectScCastrateList(scCastrate); - return getDataTable(list); - } - - /** - * 导出去势列表 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:export')") - @Log(title = "去势", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScCastrate scCastrate) - { - List list = scCastrateService.selectScCastrateList(scCastrate); - ExcelUtil util = new ExcelUtil(ScCastrate.class); - util.exportExcel(response, list, "去势数据"); - } - - /** - * 获取去势详细信息 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(scCastrateService.selectScCastrateById(id)); - } - - /** - * 新增去势 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:add')") - @Log(title = "去势", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ScCastrate scCastrate) - { - return toAjax(scCastrateService.insertScCastrate(scCastrate)); - } - - /** - * 修改去势 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:edit')") - @Log(title = "去势", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScCastrate scCastrate) - { - return toAjax(scCastrateService.updateScCastrate(scCastrate)); - } - - /** - * 删除去势 - */ - @PreAuthorize("@ss.hasPermi('produce:castrate:remove')") - @Log(title = "去势", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(scCastrateService.deleteScCastrateByIds(ids)); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java deleted file mode 100644 index 9f97e71..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.zhyc.module.produce.other.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import com.zhyc.common.utils.StringUtils; -import com.zhyc.module.produce.other.domain.ScFixHoof; -import com.zhyc.module.produce.other.service.IScFixHoofService; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -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.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; - -/** - * 修蹄Controller - * - * @author ruoyi - * @date 2025-07-10 - */ -@RestController -@RequestMapping("/produce/other/fixHoof") -public class ScFixHoofController extends BaseController -{ - @Autowired - private IScFixHoofService scFixHoofService; - - /** - * 查询修蹄列表 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:list')") - @GetMapping("/list") - public TableDataInfo list(ScFixHoof scFixHoof) - { - startPage(); - List list = scFixHoofService.selectScFixHoofList(scFixHoof); - return getDataTable(list); - - } - - /** - * 导出修蹄列表 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:export')") - @Log(title = "修蹄", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ScFixHoof scFixHoof) - { - List list = scFixHoofService.selectScFixHoofList(scFixHoof); - ExcelUtil util = new ExcelUtil(ScFixHoof.class); - util.exportExcel(response, list, "修蹄数据"); - } - - /** - * 获取修蹄详细信息 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Integer id) - { - return success(scFixHoofService.selectScFixHoofById(id)); - } - - /** - * 新增修蹄记录(支持批量) - * @return 结果 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:add')") - @Log(title = "修蹄", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody List dtos) { - for (ScFixHoof dto : dtos) { - if (dto.getSheepId() == null && StringUtils.isNotBlank(dto.getManageTags())) { - Long sheepId = scFixHoofService.findIdByManageTags(dto.getManageTags()); - dto.setSheepId(sheepId.intValue()); - } - - // 保存修蹄记录 - scFixHoofService.insertScFixHoof(dto); - } - return toAjax(dtos.size()); - } - - /** - * 修改修蹄 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:edit')") - @Log(title = "修蹄", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ScFixHoof dto){ - dto.setSheepId(scFixHoofService.findIdByManageTags(dto.getManageTags()).intValue()); - return toAjax(scFixHoofService.updateScFixHoof(dto)); - } - - /** - * 删除修蹄 - */ - @PreAuthorize("@ss.hasPermi('produce:fixHoof:remove')") - @Log(title = "修蹄", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) - { - return toAjax(scFixHoofService.deleteScFixHoofByIds(ids)); - } - - - -} - 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 deleted file mode 100644 index 1ebab6d..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java +++ /dev/null @@ -1,66 +0,0 @@ -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; - -/** - * 去势对象 sc_castrate - * - * @author ruoyi - * @date 2025-07-09 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScCastrate extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * $column.columnComment - */ - private Long id; - - /** - * 羊只id - */ - private String sheepId; - - @Excel(name = "耳号") - private String manageTags; - - /** - * 羊舍id - */ - private Long sheepfold; - - @Excel(name = "羊舍名称") - private String sheepfoldName; - - /** 品种id */ - private Long varietyId; - - /** 品种名称(联表查询返回,非数据库字段) */ - @Excel(name = "品种") - private String varietyName; - - /** - * 备注 - */ - @Excel(name = "备注") - private String comment; - - /** - * 技术员 - */ - @Excel(name = "技术员") - private String technician; - - - - -} 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 deleted file mode 100644 index 60a92a8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java +++ /dev/null @@ -1,55 +0,0 @@ -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; - -/** - * 修蹄对象 sc_fix_hoof - * - * @author ruoyi - * @date 2025-07-10 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class ScFixHoof extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Integer id; - - /** 羊只id */ - private Integer sheepId; - /** 管理耳号(仅用于接收参数/返回视图) */ - @Excel(name = "管理耳号") - private String manageTags; - - /** 羊舍id */ - private Integer sheepfold; - - /** 羊舍名称 */ - @Excel(name = "羊舍名称") - private String sheepfoldName; - - /** 品种id */ - private Long varietyId; - - /** 品种名称(联表查询返回,非数据库字段) */ - @Excel(name = "品种") - private String varietyName; - - /** 备注 */ - @Excel(name = "备注") - private String comment; - - /** 技术员 */ - @Excel(name = "技术员") - private String technician; - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java deleted file mode 100644 index 8b09e94..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.zhyc.module.produce.other.mapper; - -import java.util.List; - -import com.zhyc.module.produce.other.domain.ScCastrate; -import org.apache.ibatis.annotations.Mapper; - -/** - * 去势Mapper接口 - * - * @author ruoyi - * @date 2025-07-09 - */ -@Mapper -public interface ScCastrateMapper -{ - /** - * 查询去势 - * - * @param id 去势主键 - * @return 去势 - */ - public ScCastrate selectScCastrateById(Long id); - - /** - * 查询去势列表 - * - * @param scCastrate 去势 - * @return 去势集合 - */ - public List selectScCastrateList(ScCastrate scCastrate); - - /** - * 新增去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - public int insertScCastrate(ScCastrate scCastrate); - - /** - * 修改去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - public int updateScCastrate(ScCastrate scCastrate); - - /** - * 删除去势 - * - * @param id 去势主键 - * @return 结果 - */ - public int deleteScCastrateById(Long id); - - /** - * 批量删除去势 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScCastrateByIds(Long[] ids); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java deleted file mode 100644 index 490ddc4..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.zhyc.module.produce.other.mapper; - -import java.util.List; - -import com.zhyc.module.produce.other.domain.ScFixHoof; -import org.apache.ibatis.annotations.Mapper; - -/** - * 修蹄Mapper接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Mapper -public interface ScFixHoofMapper { - /** - * 查询修蹄 - * - * @param id 修蹄主键 - * @return 修蹄 - */ - public ScFixHoof selectScFixHoofById(Integer id); - - /** - * 查询修蹄列表 - * - * @param scFixHoof 修蹄 - * @return 修蹄集合 - */ - public List selectScFixHoofList(ScFixHoof scFixHoof); - - /** - * 新增修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - public int insertScFixHoof(ScFixHoof scFixHoof); - - /** - * 修改修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - public int updateScFixHoof(ScFixHoof scFixHoof); - - /** - * 删除修蹄 - * - * @param id 修蹄主键 - * @return 结果 - */ - public int deleteScFixHoofById(Integer id); - - /** - * 批量删除修蹄 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteScFixHoofByIds(Integer[] ids); - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java deleted file mode 100644 index 293a6bf..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.zhyc.module.produce.other.service; - -import java.util.List; - -import com.zhyc.module.produce.other.domain.ScCastrate; - -/** - * 去势Service接口 - * - * @author ruoyi - * @date 2025-07-09 - */ -public interface IScCastrateService { - /** - * 查询去势 - * - * @param id 去势主键 - * @return 去势 - */ - public ScCastrate selectScCastrateById(Long id); - - /** - * 查询去势列表 - * - * @param scCastrate 去势 - * @return 去势集合 - */ - public List selectScCastrateList(ScCastrate scCastrate); - - /** - * 新增去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - public int insertScCastrate(ScCastrate scCastrate); - - /** - * 修改去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - public int updateScCastrate(ScCastrate scCastrate); - - /** - * 批量删除去势 - * - * @param ids 需要删除的去势主键集合 - * @return 结果 - */ - public int deleteScCastrateByIds(Long[] ids); - - /** - * 删除去势信息 - * - * @param id 去势主键 - * @return 结果 - */ - public int deleteScCastrateById(Long id); - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java deleted file mode 100644 index 32d9263..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zhyc.module.produce.other.service; - -import java.util.List; - -import com.zhyc.module.produce.other.domain.ScFixHoof; - -/** - * 修蹄Service接口 - * - * @author ruoyi - * @date 2025-07-10 - */ -public interface IScFixHoofService { - /** - * 查询修蹄 - * - * @param id 修蹄主键 - * @return 修蹄 - */ - public ScFixHoof selectScFixHoofById(Integer id); - - /** - * 查询修蹄列表 - * - * @param scFixHoof 修蹄 - * @return 修蹄集合 - */ - public List selectScFixHoofList(ScFixHoof scFixHoof); - - /** - * 新增修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - public int insertScFixHoof(ScFixHoof scFixHoof); - - /** - * 修改修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - public int updateScFixHoof(ScFixHoof scFixHoof); - - /** - * 批量删除修蹄 - * - * @param ids 需要删除的修蹄主键集合 - * @return 结果 - */ - public int deleteScFixHoofByIds(Integer[] ids); - - /** - * 删除修蹄信息 - * - * @param id 修蹄主键 - * @return 结果 - */ - public int deleteScFixHoofById(Integer id); - - /** - * 根据管理耳号查询 - * - * @param manageTags - * @return - */ - Long findIdByManageTags(String manageTags); - - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java deleted file mode 100644 index 74f80eb..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.zhyc.module.produce.other.service.impl; - -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; -import com.zhyc.module.produce.other.domain.ScCastrate; -import com.zhyc.module.produce.other.mapper.ScCastrateMapper; -import com.zhyc.module.produce.other.service.IScCastrateService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 去势Service业务层处理 - * - * @author ruoyi - * @date 2025-07-09 - */ -@Service -public class ScCastrateServiceImpl implements IScCastrateService { - @Autowired - private ScCastrateMapper scCastrateMapper; - @Autowired - private IBasSheepService basSheepService; - - /** - * 查询去势 - * - * @param id 去势主键 - * @return 去势 - */ - @Override - public ScCastrate selectScCastrateById(Long id) { - return scCastrateMapper.selectScCastrateById(id); - } - - /** - * 查询去势列表 - * - * @param scCastrate 去势 - * @return 去势 - */ - @Override - public List selectScCastrateList(ScCastrate scCastrate) { - return scCastrateMapper.selectScCastrateList(scCastrate); - } - - /** - * 新增去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - @Override - public int insertScCastrate(ScCastrate scCastrate) { - scCastrate.setCreateTime(DateUtils.getNowDate()); - scCastrate.setCreateBy(SecurityUtils.getUsername()); - int result = scCastrateMapper.insertScCastrate(scCastrate); - - if (result > 0 && scCastrate.getSheepId() != null) { - try { - BasSheep sheep = new BasSheep(); - sheep.setId(Long.parseLong(scCastrate.getSheepId())); - sheep.setGender(3L); - basSheepService.updateBasSheep(sheep); - } catch (Exception e) { - throw new RuntimeException("去势成功,但更新羊只性别失败,请重试"); - } - } - - return result; - } - - /** - * 修改去势 - * - * @param scCastrate 去势 - * @return 结果 - */ - @Override - public int updateScCastrate(ScCastrate scCastrate) { - return scCastrateMapper.updateScCastrate(scCastrate); - } - - /** - * 批量删除去势 - * - * @param ids 需要删除的去势主键 - * @return 结果 - */ - @Override - public int deleteScCastrateByIds(Long[] ids) { - return scCastrateMapper.deleteScCastrateByIds(ids); - } - - /** - * 删除去势信息 - * - * @param id 去势主键 - * @return 结果 - */ - @Override - public int deleteScCastrateById(Long id) { - return scCastrateMapper.deleteScCastrateById(id); - } -} 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 deleted file mode 100644 index fde7034..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java +++ /dev/null @@ -1,123 +0,0 @@ -package com.zhyc.module.produce.other.service.impl; - -import java.util.List; - -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.DateUtils; -import com.zhyc.common.utils.SecurityUtils; -import com.zhyc.common.utils.StringUtils; -import com.zhyc.module.base.domain.BasSheep; -import com.zhyc.module.base.mapper.BasSheepMapper; -import com.zhyc.module.base.service.IDaSheepfoldService; -import com.zhyc.module.produce.other.domain.ScFixHoof; -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业务层处理 - * - * @author ruoyi - * @date 2025-07-10 - */ -@Service -public class ScFixHoofServiceImpl implements IScFixHoofService { - @Autowired - private ScFixHoofMapper scFixHoofMapper; - - @Autowired - private BasSheepMapper basSheepMapper; - - @Autowired - private IDaSheepfoldService daSheepfoldService; - - /** - * 查询修蹄 - * - * @param id 修蹄主键 - * @return 修蹄 - */ - @Override - public ScFixHoof selectScFixHoofById(Integer id) { - return scFixHoofMapper.selectScFixHoofById(id); - } - - /** - * 查询修蹄列表 - * - * @param scFixHoof 修蹄 - * @return 修蹄 - */ - @Override - public List selectScFixHoofList(ScFixHoof scFixHoof) { - return scFixHoofMapper.selectScFixHoofList(scFixHoof); - } - - /** - * 新增修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - @Override - public int insertScFixHoof(ScFixHoof scFixHoof) { - BasSheep sheep = basSheepMapper.selectBasSheepById(scFixHoof.getSheepId().longValue()); - if (sheep == null) { - throw new ServiceException("该羊只ID不存在,请检查后再添加"); - } - scFixHoof.setCreateTime(DateUtils.getNowDate()); - scFixHoof.setCreateBy(SecurityUtils.getUsername()); - return scFixHoofMapper.insertScFixHoof(scFixHoof); - } - - /** - * 修改修蹄 - * - * @param scFixHoof 修蹄 - * @return 结果 - */ - @Override - public int updateScFixHoof(ScFixHoof scFixHoof) { - return scFixHoofMapper.updateScFixHoof(scFixHoof); - } - - /** - * 批量删除修蹄 - * - * @param ids 需要删除的修蹄主键 - * @return 结果 - */ - @Override - public int deleteScFixHoofByIds(Integer[] ids) { - return scFixHoofMapper.deleteScFixHoofByIds(ids); - } - - /** - * 删除修蹄信息 - * - * @param id 修蹄主键 - * @return 结果 - */ - @Override - public int deleteScFixHoofById(Integer id) { - return scFixHoofMapper.deleteScFixHoofById(id); - } - - - /** - * 根据管理耳号查询 - */ - @Override - public Long findIdByManageTags(String manageTags) { - if (StringUtils.isBlank(manageTags)) - throw new ServiceException("管理耳号不能为空"); - BasSheep sheep = basSheepMapper.selectBasSheepByManageTags(manageTags.trim()); - if (sheep == null) - throw new ServiceException("管理耳号不存在:" + manageTags); - return sheep.getId(); - } - - -} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java deleted file mode 100644 index e1b567e..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.zhyc.module.stock.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.access.prepost.PreAuthorize; -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.stock.domain.WzMaterialsManagement; -import com.zhyc.module.stock.service.IWzMaterialsManagementService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; -import org.springframework.web.multipart.MultipartFile; - -/** - * 物资管理Controller - * - * @author HashMap - * @date 2025-08-05 - */ -@RestController -@RequestMapping("/stock/management") -public class WzMaterialsManagementController extends BaseController { - private final IWzMaterialsManagementService wzMaterialsManagementService; - - public WzMaterialsManagementController(IWzMaterialsManagementService wzMaterialsManagementService) { - this.wzMaterialsManagementService = wzMaterialsManagementService; - } - - /** - * 查询物资管理列表 - */ - @PreAuthorize("@ss.hasPermi('stock:management:list')") - @GetMapping("/list") - public TableDataInfo list(WzMaterialsManagement wzMaterialsManagement) { - startPage(); - List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); - return getDataTable(list); - } - - /** - * 导出物资管理列表 - */ - @PreAuthorize("@ss.hasPermi('stock:management:export')") - @Log(title = "物资管理", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, WzMaterialsManagement wzMaterialsManagement) { - List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); - ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); - util.exportExcel(response, list, "物资管理数据"); - } - - /** - * 获取物资管理详细信息 - */ - @PreAuthorize("@ss.hasPermi('stock:management:query')") - @GetMapping(value = "/{materialManagementCode}") - public AjaxResult getInfo(@PathVariable("materialManagementCode") Long materialManagementCode) { - return success(wzMaterialsManagementService.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode)); - } - - /** - * 新增物资管理 - */ - @PreAuthorize("@ss.hasPermi('stock:management:add')") - @Log(title = "物资管理", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody WzMaterialsManagement wzMaterialsManagement) { - return toAjax(wzMaterialsManagementService.insertWzMaterialsManagement(wzMaterialsManagement)); - } - - /** - * 修改物资管理 - */ - @PreAuthorize("@ss.hasPermi('stock:management:edit')") - @Log(title = "物资管理", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody WzMaterialsManagement wzMaterialsManagement) { - return toAjax(wzMaterialsManagementService.updateWzMaterialsManagement(wzMaterialsManagement)); - } - - /** - * 删除物资管理 - */ - @PreAuthorize("@ss.hasPermi('stock:management:remove')") - @Log(title = "物资管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{materialManagementCodes}") - public AjaxResult remove(@PathVariable Long[] materialManagementCodes) { - return toAjax(wzMaterialsManagementService.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes)); - } - - @Log(title = "物资管理", businessType = BusinessType.IMPORT) - @PreAuthorize("@ss.hasPermi('stock:management:import')") - @PostMapping("/importData") - public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { - ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); - List stockInList = util.importExcel(file.getInputStream()); - for (WzMaterialsManagement wzMaterialsManagement : stockInList) { - System.out.println(wzMaterialsManagement); - } - String operName = getUsername(); - String message = wzMaterialsManagementService.importUser(stockInList, updateSupport, operName); - // String message = "OK We are testing"; - return success(message); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java deleted file mode 100644 index 6705202..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.zhyc.module.stock.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.access.prepost.PreAuthorize; -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.stock.domain.WzStockIn; -import com.zhyc.module.stock.service.IWzStockInService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; -import org.springframework.web.multipart.MultipartFile; - -/** - * 入库记录Controller - * - * @author HashMap - * @date 2025-08-05 - */ -@RestController -@RequestMapping("/stock/in") -public class WzStockInController extends BaseController -{ - private final IWzStockInService wzStockInService; - - public WzStockInController(IWzStockInService wzStockInService) { - this.wzStockInService = wzStockInService; - } - - /** - * 查询入库记录列表 - */ - @PreAuthorize("@ss.hasPermi('stock:in:list')") - @GetMapping("/list") - public TableDataInfo list(WzStockIn wzStockIn) - { - startPage(); - List list = wzStockInService.selectWzStockInList(wzStockIn); - return getDataTable(list); - } - - /** - * 导出入库记录列表 - */ - @PreAuthorize("@ss.hasPermi('stock:in:export')") - @Log(title = "入库记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, WzStockIn wzStockIn) - { - List list = wzStockInService.selectWzStockInList(wzStockIn); - ExcelUtil util = new ExcelUtil<>(WzStockIn.class); - util.exportExcel(response, list, "入库记录数据"); - } - - /** - * 获取入库记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('stock:in:query')") - @GetMapping(value = "/{stockInCode}") - public AjaxResult getInfo(@PathVariable("stockInCode") Long stockInCode) - { - return success(wzStockInService.selectWzStockInByStockInCode(stockInCode)); - } - - /** - * 新增入库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:in:add')") - @Log(title = "入库记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody WzStockIn wzStockIn) - { - return toAjax(wzStockInService.insertWzStockIn(wzStockIn)); - } - - /** - * 修改入库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:in:edit')") - @Log(title = "入库记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody WzStockIn wzStockIn) - { - return toAjax(wzStockInService.updateWzStockIn(wzStockIn)); - } - - /** - * 删除入库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:in:remove')") - @Log(title = "入库记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{stockInCodes}") - public AjaxResult remove(@PathVariable Long[] stockInCodes) - { - return toAjax(wzStockInService.deleteWzStockInByStockInCodes(stockInCodes)); - } - - @Log(title = "用户管理", businessType = BusinessType.IMPORT) - @PreAuthorize("@ss.hasPermi('stock:in:import')") - @PostMapping("/importData") - public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception - { - ExcelUtil util = new ExcelUtil<>(WzStockIn.class); - List stockInList = util.importExcel(file.getInputStream()); - stockInList.removeIf(wzStockIn -> wzStockIn.getDocDate() == null); - String operName = getUsername(); - String message = wzStockInService.importUser(stockInList, updateSupport, operName); -// String message = "OK We are testing"; - return success(message); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java deleted file mode 100644 index cb80a44..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.zhyc.module.stock.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; -import org.springframework.security.access.prepost.PreAuthorize; -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.stock.domain.WzStockOut; -import com.zhyc.module.stock.service.IWzStockOutService; -import com.zhyc.common.utils.poi.ExcelUtil; -import com.zhyc.common.core.page.TableDataInfo; -import org.springframework.web.multipart.MultipartFile; - -/** - * 出库记录Controller - * - * @author HashMap - * @date 2025-08-05 - */ -@RestController -@RequestMapping("/stock/out") -public class WzStockOutController extends BaseController -{ - private final IWzStockOutService wzStockOutService; - - public WzStockOutController(IWzStockOutService wzStockOutService) { - this.wzStockOutService = wzStockOutService; - } - - /** - * 查询出库记录列表 - */ - @PreAuthorize("@ss.hasPermi('stock:out:list')") - @GetMapping("/list") - public TableDataInfo list(WzStockOut wzStockOut) - { - startPage(); - List list = wzStockOutService.selectWzStockOutList(wzStockOut); - return getDataTable(list); - } - - /** - * 导出出库记录列表 - */ - @PreAuthorize("@ss.hasPermi('stock:out:export')") - @Log(title = "出库记录", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, WzStockOut wzStockOut) - { - List list = wzStockOutService.selectWzStockOutList(wzStockOut); - ExcelUtil util = new ExcelUtil<>(WzStockOut.class); - util.exportExcel(response, list, "出库记录数据"); - } - - /** - * 获取出库记录详细信息 - */ - @PreAuthorize("@ss.hasPermi('stock:out:query')") - @GetMapping(value = "/{stockOutCode}") - public AjaxResult getInfo(@PathVariable("stockOutCode") Long stockOutCode) - { - return success(wzStockOutService.selectWzStockOutByStockOutCode(stockOutCode)); - } - - /** - * 新增出库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:out:add')") - @Log(title = "出库记录", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody WzStockOut wzStockOut) - { - return toAjax(wzStockOutService.insertWzStockOut(wzStockOut)); - } - - /** - * 修改出库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:out:edit')") - @Log(title = "出库记录", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody WzStockOut wzStockOut) - { - return toAjax(wzStockOutService.updateWzStockOut(wzStockOut)); - } - - /** - * 删除出库记录 - */ - @PreAuthorize("@ss.hasPermi('stock:out:remove')") - @Log(title = "出库记录", businessType = BusinessType.DELETE) - @DeleteMapping("/{stockOutCodes}") - public AjaxResult remove(@PathVariable Long[] stockOutCodes) - { - return toAjax(wzStockOutService.deleteWzStockOutByStockOutCodes(stockOutCodes)); - } - - /** - * 导入出库记录 - */ - @Log(title = "出库记录", businessType = BusinessType.IMPORT) - @PreAuthorize("@ss.hasPermi('stock:out:import')") - @PostMapping("/importData") - public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception - { - ExcelUtil util = new ExcelUtil<>(WzStockOut.class); - List WzStockOutList = util.importExcel(file.getInputStream()); - WzStockOutList.removeIf(wzStockOut -> wzStockOut.getDocId() == null); - String operName = getUsername(); - String message; - try { - message = wzStockOutService.importUser(WzStockOutList, updateSupport, operName); - }catch (Exception e) { - message = e.getMessage(); - logger.error(e.getMessage()); - } - // String message = "OK We are testing"; - return success(message); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java deleted file mode 100644 index 88d3a53..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.zhyc.module.stock.domain; - -import java.math.BigDecimal; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Getter; -import lombok.Setter; -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; - -/** - * 物资管理对象 wz_materials_management - * - * @author HashMap - * @date 2025-08-05 - */ -@Setter -@Getter -public class WzMaterialsManagement extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 序号 */ - @Excel(name = "序号") - private Long materialManagementCode; - - /** 存货编码 */ - @Excel(name = "存货编码") - private String materialId; - - /** 存货 */ - @Excel(name = "存货") - private String materialName; - - /** 批号 */ - @Excel(name = "批号") - private String batchId; - - /** 规格型号 */ - @Excel(name = "规格型号") - private String materialSpecification; - - /** 主计量 */ - @Excel(name = "主计量") - private String materialUnit; - - /** 现存量(主) */ - @Excel(name = "现存量(主)") - private BigDecimal currentStock; - - /** 库存预警 */ - @Excel(name = "库存预警") - private String stockAlarm; - - /** 生产日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date productionDate; - - /** 失效日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date expirationDate; - - /** 失效预警 */ - @Excel(name = "失效预警") - private String expirationAlarm; - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("materialManagementCode", getMaterialManagementCode()) - .append("materialId", getMaterialId()) - .append("materialName", getMaterialName()) - .append("batchId", getBatchId()) - .append("materialSpecification", getMaterialSpecification()) - .append("materialUnit", getMaterialUnit()) - .append("currentStock", getCurrentStock()) - .append("stockAlarm", getStockAlarm()) - .append("productionDate", getProductionDate()) - .append("expirationDate", getExpirationDate()) - .append("expirationAlarm", getExpirationAlarm()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java deleted file mode 100644 index cda8b08..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.zhyc.module.stock.domain; - -import java.math.BigDecimal; -import java.util.Date; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Getter; -import lombok.Setter; -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; - -/** - * 入库记录对象 wz_stock_in - * - * @author HashMap - * @date 2025-08-05 - */ -@Setter -@Getter -public class WzStockIn extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 序号 */ - private Long stockInCode; - - /** 单据日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date docDate; - - /** 创建时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date createDate; - - /** 单据编号 */ - @Excel(name = "单据编号") - private String docId; - - /** 业务类型 */ - @Excel(name = "业务类型") - private String businessType; - - /** 仓库编码 */ - @Excel(name = "仓库编码") - private String repositoryId; - - /** 仓库 */ - @Excel(name = "仓库") - private String repositoryName; - - /** 入库类别 */ - @Excel(name = "入库类别") - private String stockInType; - - /** 供应商编码 */ - @Excel(name = "供应商编码") - private String supplierId; - - /** 供应商 */ - @Excel(name = "供应商") - private String supplierName; - - /** 部门编码 */ - @Excel(name = "部门编码") - private String departmentId; - - /** 部门 */ - @Excel(name = "部门") - private String departmentName; - - /** 经手人编码 */ - @Excel(name = "经手人编码") - private String operatorId; - - /** 经手人 */ - @Excel(name = "经手人") - private String operatorName; - - /** 制单人 */ - @Excel(name = "制单人") - private String single; - - /** 审核人 */ - @Excel(name = "审核人") - private String reviewer; - - /** 存货编码 */ - @Excel(name = "存货编码") - private String materialId; - - /** 存货 */ - @Excel(name = "存货") - private String materialName; - - /** 规格型号 */ - @Excel(name = "规格型号") - private String materialSpecification; - - /** 计量单位 */ - @Excel(name = "计量单位") - private String materialUnit; - - /** 实收数量 */ - @Excel(name = "实收数量") - private BigDecimal count; - - /** 入库调整 */ - @Excel(name = "入库调整") - private String stockInAdjustRemark; - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("stockInCode", getStockInCode()) - .append("docDate", getDocDate()) - .append("createDate", getCreateDate()) - .append("docId", getDocId()) - .append("businessType", getBusinessType()) - .append("repositoryId", getRepositoryId()) - .append("repositoryName", getRepositoryName()) - .append("stockInType", getStockInType()) - .append("supplierId", getSupplierId()) - .append("supplierName", getSupplierName()) - .append("departmentId", getDepartmentId()) - .append("departmentName", getDepartmentName()) - .append("operatorId", getOperatorId()) - .append("operatorName", getOperatorName()) - .append("remark", getRemark()) - .append("single", getSingle()) - .append("reviewer", getReviewer()) - .append("materialId", getMaterialId()) - .append("materialName", getMaterialName()) - .append("materialSpecification", getMaterialSpecification()) - .append("materialUnit", getMaterialUnit()) - .append("count", getCount()) - .append("stockInAdjustRemark", getStockInAdjustRemark()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java deleted file mode 100644 index c0a84a9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java +++ /dev/null @@ -1,251 +0,0 @@ -package com.zhyc.module.stock.domain; - -import java.math.BigDecimal; -import java.util.Date; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Getter; -import lombok.Setter; -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; - -/** - * 出库记录对象 wz_stock_out - * - * @author HashMap - * @date 2025-08-05 - */ -@Getter -@Setter -public class WzStockOut extends BaseEntity { - private static final long serialVersionUID = 1L; - - /** - * 序号 - */ - private Long stockOutCode; - - /** - * 单据日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date docDate; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date createDate; - - /** - * 单据编号 - */ - @Excel(name = "单据编号") - private String docId; - - /** - * 业务类型 - */ - @Excel(name = "业务类型") - private String businessType; - - /** - * 仓库编码 - */ - @Excel(name = "仓库编码") - private String repositoryId; - - /** - * 仓库名称 - */ - @Excel(name = "仓库") - private String repositoryName; - - /** - * 项目分类 - */ - @Excel(name = "项目分类") - private String projectClassification; - - /** - * 项目编码 - */ - @Excel(name = "项目编码") - private String projectId; - - /** - * 项目 - */ - @Excel(name = "项目") - private String projectName; - - /** - * 生产车间编码 - */ - @Excel(name = "生产车间编码") - private String departmentId; - - /** - * 生产车间 - */ - @Excel(name = "生产车间") - private String departmentName; - - /** - * 领用人编码 - */ - @Excel(name = "领用人编码") - private String receiverId; - - /** - * 领用人 - */ - @Excel(name = "领用人") - private String receiver; - - /** - * 制单人 - */ - @Excel(name = "制单人") - private String single; - - /** - * 审核人 - */ - @Excel(name = "审核人") - private String reviewer; - - /** - * 审核时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd") - private Date reviewDate; - - /** - * 修改人 - */ - @Excel(name = "修改人") - private String modifier; - - /** - * 材料分类编码 - */ - @Excel(name = "材料分类编码") - private String materialClassId; - - /** - * 材料分类 - */ - @Excel(name = "材料分类") - private String materialClassName; - - /** - * 材料编码 - */ - @Excel(name = "材料编码") - private String materialId; - - /** - * 材料名称 - */ - @Excel(name = "材料名称") - private String materialName; - - /** - * 材料规格 - */ - @Excel(name = "材料规格") - private String materialSpecification; - - /** - * 计量单位 - */ - @Excel(name = "计量单位") - private String materialUnit; - - /** - * 数量 - */ - @Excel(name = "数量") - private BigDecimal count; - - /** - * 批号 - */ - @Excel(name = "批号") - private Long batchId; - - /** - * 生产日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date productionDate; - - /** - * 保质期 - */ - @Excel(name = "保质期") - private Long shelfLife; - - /** - * 保质期单位 - */ - @Excel(name = "保质期单位") - private String shelfLifeUnit; - - /** - * 失效日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date expirationDate; - - /** - * 代理人 - */ - @Excel(name = "代理人") - private String agent; - - @Override - public String toString() { - return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) - .append("stockOutCode", getStockOutCode()) - .append("docDate", getDocDate()) - .append("createDate", getCreateDate()) - .append("docId", getDocId()) - .append("businessType", getBusinessType()) - .append("repositoryId", getRepositoryId()) - .append("repositoryName", getRepositoryName()) - .append("projectClassification", getProjectClassification()) - .append("projectId", getProjectId()) - .append("projectName", getProjectName()) - .append("departmentId", getDepartmentId()) - .append("departmentName", getDepartmentName()) - .append("receiverId", getReceiverId()) - .append("receiver", getReceiver()) - .append("single", getSingle()) - .append("reviewer", getReviewer()) - .append("reviewDate", getReviewDate()) - .append("modifier", getModifier()) - .append("materialClassId", getMaterialClassId()) - .append("materialClassName", getMaterialClassName()) - .append("materialId", getMaterialId()) - .append("materialName", getMaterialName()) - .append("materialSpecification", getMaterialSpecification()) - .append("materialUnit", getMaterialUnit()) - .append("count", getCount()) - .append("batchId", getBatchId()) - .append("productionDate", getProductionDate()) - .append("shelfLife", getShelfLife()) - .append("shelfLifeUnit", getShelfLifeUnit()) - .append("expirationDate", getExpirationDate()) - .append("agent", getAgent()) - .toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java deleted file mode 100644 index a1c75a9..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zhyc.module.stock.mapper; - -import java.util.List; -import com.zhyc.module.stock.domain.WzMaterialsManagement; -import org.apache.ibatis.annotations.Mapper; - -/** - * 物资管理Mapper接口 - * - * @author HashMap - * @date 2025-08-05 - */ -@Mapper -public interface WzMaterialsManagementMapper -{ - /** - * 查询物资管理 - * - * @param materialManagementCode 物资管理主键 - * @return 物资管理 - */ - WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); - - /** - * 查询物资管理列表 - * - * @param wzMaterialsManagement 物资管理 - * @return 物资管理集合 - */ - List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); - - /** - * 新增物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); - - /** - * 修改物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); - - /** - * 删除物资管理 - * - * @param materialManagementCode 物资管理主键 - * @return 结果 - */ - int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); - - /** - * 批量删除物资管理 - * - * @param materialManagementCodes 需要删除的数据主键集合 - * @return 结果 - */ - int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); - - /** - * 以物资编码获取记录 - * - * @param materialID 物资编码 - * @return 结果 - */ - WzMaterialsManagement selectWzMaterialsManagementByMaterialID(String materialID); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java deleted file mode 100644 index ed2fda8..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.stock.mapper; - -import java.util.List; -import com.zhyc.module.stock.domain.WzStockIn; -import org.apache.ibatis.annotations.Mapper; - -/** - * 入库记录Mapper接口 - * - * @author HashMap - * @date 2025-08-05 - */ -@Mapper -public interface WzStockInMapper -{ - /** - * 查询入库记录 - * - * @param stockInCode 入库记录主键 - * @return 入库记录 - */ - WzStockIn selectWzStockInByStockInCode(Long stockInCode); - - /** - * 查询入库记录列表 - * - * @param wzStockIn 入库记录 - * @return 入库记录集合 - */ - List selectWzStockInList(WzStockIn wzStockIn); - - /** - * 新增入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - int insertWzStockIn(WzStockIn wzStockIn); - - /** - * 修改入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - int updateWzStockIn(WzStockIn wzStockIn); - - /** - * 删除入库记录 - * - * @param stockInCode 入库记录主键 - * @return 结果 - */ - int deleteWzStockInByStockInCode(Long stockInCode); - - /** - * 批量删除入库记录 - * - * @param stockInCodes 需要删除的数据主键集合 - * @return 结果 - */ - int deleteWzStockInByStockInCodes(Long[] stockInCodes); - - /** - * 查询最近的入库记录 - * - * @return 数据库中最近的入库记录 - */ - WzStockIn getEarliestStockIn(); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java deleted file mode 100644 index a9ae9ce..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.zhyc.module.stock.mapper; - -import java.util.List; -import com.zhyc.module.stock.domain.WzStockOut; -import org.apache.ibatis.annotations.Mapper; - -/** - * 出库记录Mapper接口 - * - * @author HashMap - * @date 2025-08-05 - */ -@Mapper -public interface WzStockOutMapper -{ - /** - * 查询出库记录 - * - * @param stockOutCode 出库记录主键 - * @return 出库记录 - */ - WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); - - /** - * 查询出库记录列表 - * - * @param wzStockOut 出库记录 - * @return 出库记录集合 - */ - List selectWzStockOutList(WzStockOut wzStockOut); - - /** - * 新增出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - int insertWzStockOut(WzStockOut wzStockOut); - - /** - * 修改出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - int updateWzStockOut(WzStockOut wzStockOut); - - /** - * 删除出库记录 - * - * @param stockOutCode 出库记录主键 - * @return 结果 - */ - int deleteWzStockOutByStockOutCode(Long stockOutCode); - - /** - * 批量删除出库记录 - * - * @param stockOutCodes 需要删除的数据主键集合 - * @return 结果 - */ - int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); - - /** - * 查询最近的记录 - * - * @return 结果 - */ - WzStockOut getEarliestStockOut(); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java deleted file mode 100644 index 46e71dc..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.zhyc.module.stock.service; - -import java.util.List; -import com.zhyc.module.stock.domain.WzMaterialsManagement; - -/** - * 物资管理Service接口 - * - * @author HashMap - * @date 2025-08-05 - */ -public interface IWzMaterialsManagementService -{ - /** - * 查询物资管理 - * - * @param materialManagementCode 物资管理主键 - * @return 物资管理 - */ - WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); - - /** - * 查询物资管理列表 - * - * @param wzMaterialsManagement 物资管理 - * @return 物资管理集合 - */ - List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); - - /** - * 新增物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); - - /** - * 修改物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); - - /** - * 批量删除物资管理 - * - * @param materialManagementCodes 需要删除的物资管理主键集合 - * @return 结果 - */ - int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); - - /** - * 删除物资管理信息 - * - * @param materialManagementCode 物资管理主键 - * @return 结果 - */ - int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); - - /** - * 导入入库数据 - * - * @param MaterialsManagementList 物资数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java deleted file mode 100644 index 8d986a0..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.zhyc.module.stock.service; - -import java.util.List; - -import com.zhyc.module.stock.domain.WzStockIn; - -/** - * 入库记录Service接口 - * - * @author HashMap - * @date 2025-08-05 - */ -public interface IWzStockInService -{ - /** - * 查询入库记录 - * - * @param stockInCode 入库记录主键 - * @return 入库记录 - */ - WzStockIn selectWzStockInByStockInCode(Long stockInCode); - - /** - * 查询入库记录列表 - * - * @param wzStockIn 入库记录 - * @return 入库记录集合 - */ - List selectWzStockInList(WzStockIn wzStockIn); - - /** - * 新增入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - int insertWzStockIn(WzStockIn wzStockIn); - - /** - * 修改入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - int updateWzStockIn(WzStockIn wzStockIn); - - /** - * 批量删除入库记录 - * - * @param stockInCodes 需要删除的入库记录主键集合 - * @return 结果 - */ - int deleteWzStockInByStockInCodes(Long[] stockInCodes); - - /** - * 删除入库记录信息 - * - * @param stockInCode 入库记录主键 - * @return 结果 - */ - int deleteWzStockInByStockInCode(Long stockInCode); - - /** - * 导入入库数据 - * - * @param StockInList 入库数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - String importUser(List StockInList, Boolean isUpdateSupport, String operName); -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java deleted file mode 100644 index 6e4c75b..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.zhyc.module.stock.service; - -import java.util.List; - -import com.zhyc.module.stock.domain.WzStockOut; - -/** - * 出库记录Service接口 - * - * @author HashMap - * @date 2025-08-05 - */ -public interface IWzStockOutService -{ - /** - * 查询出库记录 - * - * @param stockOutCode 出库记录主键 - * @return 出库记录 - */ - WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); - - /** - * 查询出库记录列表 - * - * @param wzStockOut 出库记录 - * @return 出库记录集合 - */ - List selectWzStockOutList(WzStockOut wzStockOut); - - /** - * 新增出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - int insertWzStockOut(WzStockOut wzStockOut); - - /** - * 修改出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - int updateWzStockOut(WzStockOut wzStockOut); - - /** - * 批量删除出库记录 - * - * @param stockOutCodes 需要删除的出库记录主键集合 - * @return 结果 - */ - int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); - - /** - * 删除出库记录信息 - * - * @param stockOutCode 出库记录主键 - * @return 结果 - */ - int deleteWzStockOutByStockOutCode(Long stockOutCode); - - /** - * 导入入库数据 - * - * @param WzStockOutList 入库数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception; -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java deleted file mode 100644 index ab6d272..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.zhyc.module.stock.service.impl; - -import java.util.List; - -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.StringUtils; -import org.springframework.stereotype.Service; -import com.zhyc.module.stock.mapper.WzMaterialsManagementMapper; -import com.zhyc.module.stock.domain.WzMaterialsManagement; -import com.zhyc.module.stock.service.IWzMaterialsManagementService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 物资管理Service业务层处理 - * - * @author HashMap - * @date 2025-08-05 - */ -@Service -public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementService { - private final WzMaterialsManagementMapper wzMaterialsManagementMapper; - - public WzMaterialsManagementServiceImpl(WzMaterialsManagementMapper wzMaterialsManagementMapper) { - this.wzMaterialsManagementMapper = wzMaterialsManagementMapper; - } - - /** - * 查询物资管理 - * - * @param materialManagementCode 物资管理主键 - * @return 物资管理 - */ - @Override - public WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { - return wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode); - } - - /** - * 查询物资管理列表 - * - * @param wzMaterialsManagement 物资管理 - * @return 物资管理 - */ - @Override - public List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement) { - return wzMaterialsManagementMapper.selectWzMaterialsManagementList(wzMaterialsManagement); - } - - /** - * 新增物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - @Override - public int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { - return wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); - } - - /** - * 修改物资管理 - * - * @param wzMaterialsManagement 物资管理 - * @return 结果 - */ - @Override - public int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { - return wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); - } - - /** - * 批量删除物资管理 - * - * @param materialManagementCodes 需要删除的物资管理主键 - * @return 结果 - */ - @Override - public int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes) { - return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes); - } - - /** - * 删除物资管理信息 - * - * @param materialManagementCode 物资管理主键 - * @return 结果 - */ - @Override - public int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { - return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCode(materialManagementCode); - } - - /** - * 导入用户数据 - * - * @param MaterialsManagementList 物资数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName) { - if (StringUtils.isNull(MaterialsManagementList) || MaterialsManagementList.isEmpty()) { - throw new ServiceException("导入用户数据不能为空!"); - } - int successNum = 0; - int sameNum = 0; - StringBuilder successMsg = new StringBuilder(); - StringBuilder failureMsg = new StringBuilder(); - try { - for (WzMaterialsManagement wzMaterialsManagement : MaterialsManagementList) { - if (wzMaterialsManagement.getMaterialId() != null) { - WzMaterialsManagement isExist = wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialID(wzMaterialsManagement.getMaterialId()); - // 存在则更新 - if (isExist != null) { - sameNum++; - wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); - continue; - } - } - int result = wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); - if (result > 0) successNum++; - } - } catch (Exception e) { - return failureMsg.append("导入出错:").append(e.getMessage()).toString(); - } - successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n更新 ").append(sameNum).append(" 条(已存在记录)"); - return successMsg.toString(); - } - -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java deleted file mode 100644 index 7632654..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.zhyc.module.stock.service.impl; - -import java.util.List; - -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.StringUtils; -import org.springframework.stereotype.Service; -import com.zhyc.module.stock.mapper.WzStockInMapper; -import com.zhyc.module.stock.domain.WzStockIn; -import com.zhyc.module.stock.service.IWzStockInService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 入库记录Service业务层处理 - * - * @author HashMap - * @date 2025-08-05 - */ -@Service -public class WzStockInServiceImpl implements IWzStockInService { - private final WzStockInMapper wzStockInMapper; - - public WzStockInServiceImpl(WzStockInMapper wzStockInMapper) { - this.wzStockInMapper = wzStockInMapper; - } - - /** - * 查询入库记录 - * - * @param stockInCode 入库记录主键 - * @return 入库记录 - */ - @Override - public WzStockIn selectWzStockInByStockInCode(Long stockInCode) { - return wzStockInMapper.selectWzStockInByStockInCode(stockInCode); - } - - /** - * 查询入库记录列表 - * - * @param wzStockIn 入库记录 - * @return 入库记录 - */ - @Override - public List selectWzStockInList(WzStockIn wzStockIn) { - return wzStockInMapper.selectWzStockInList(wzStockIn); - } - - /** - * 新增入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - @Override - public int insertWzStockIn(WzStockIn wzStockIn) { - return wzStockInMapper.insertWzStockIn(wzStockIn); - } - - /** - * 修改入库记录 - * - * @param wzStockIn 入库记录 - * @return 结果 - */ - @Override - public int updateWzStockIn(WzStockIn wzStockIn) { - return wzStockInMapper.updateWzStockIn(wzStockIn); - } - - /** - * 批量删除入库记录 - * - * @param stockInCodes 需要删除的入库记录主键 - * @return 结果 - */ - @Override - public int deleteWzStockInByStockInCodes(Long[] stockInCodes) { - return wzStockInMapper.deleteWzStockInByStockInCodes(stockInCodes); - } - - /** - * 删除入库记录信息 - * - * @param stockInCode 入库记录主键 - * @return 结果 - */ - @Override - public int deleteWzStockInByStockInCode(Long stockInCode) { - return wzStockInMapper.deleteWzStockInByStockInCode(stockInCode); - } - - /** - * 导入用户数据 - * - * @param StockInList 用户数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public String importUser(List StockInList, Boolean isUpdateSupport, String operName) { - if (StringUtils.isNull(StockInList) || StockInList.isEmpty()) { - throw new ServiceException("导入用户数据不能为空!"); - } - int successNum = 0; - int failureNum = 0; - int sameNum = 0; - StringBuilder successMsg = new StringBuilder(); - StringBuilder failureMsg = new StringBuilder(); - try { - WzStockIn earliestStockIn = wzStockInMapper.getEarliestStockIn(); - System.out.println(earliestStockIn); - for (WzStockIn wzStockIn : StockInList) { - if (earliestStockIn.getDocDate().getTime() >= wzStockIn.getDocDate().getTime()) { - sameNum++; - continue; - } - int result = wzStockInMapper.insertWzStockIn(wzStockIn); - if (result == 0) { - failureNum++; - failureMsg.append("失败的项:").append(wzStockIn.getDocId()).append("\n"); - } - else successNum++; - } - - } catch (Exception e) { - failureNum++; - } - if (failureNum > 0) { - return failureMsg.toString(); - } - successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); - return successMsg.toString(); - } -} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java deleted file mode 100644 index 5fb6c36..0000000 --- a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.zhyc.module.stock.service.impl; - -import java.util.Date; -import java.util.List; - -import com.zhyc.common.exception.ServiceException; -import com.zhyc.common.utils.StringUtils; -import org.springframework.stereotype.Service; -import com.zhyc.module.stock.mapper.WzStockOutMapper; -import com.zhyc.module.stock.domain.WzStockOut; -import com.zhyc.module.stock.service.IWzStockOutService; -import org.springframework.transaction.annotation.Transactional; - -/** - * 出库记录Service业务层处理 - * - * @author HashMap - * @date 2025-08-05 - */ -@Service -public class WzStockOutServiceImpl implements IWzStockOutService { - private final WzStockOutMapper wzStockOutMapper; - - public WzStockOutServiceImpl(WzStockOutMapper wzStockOutMapper) { - this.wzStockOutMapper = wzStockOutMapper; - } - - /** - * 查询出库记录 - * - * @param stockOutCode 出库记录主键 - * @return 出库记录 - */ - @Override - public WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode) { - return wzStockOutMapper.selectWzStockOutByStockOutCode(stockOutCode); - } - - /** - * 查询出库记录列表 - * - * @param wzStockOut 出库记录 - * @return 出库记录 - */ - @Override - public List selectWzStockOutList(WzStockOut wzStockOut) { - return wzStockOutMapper.selectWzStockOutList(wzStockOut); - } - - /** - * 新增出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - @Override - public int insertWzStockOut(WzStockOut wzStockOut) { - return wzStockOutMapper.insertWzStockOut(wzStockOut); - } - - /** - * 修改出库记录 - * - * @param wzStockOut 出库记录 - * @return 结果 - */ - @Override - public int updateWzStockOut(WzStockOut wzStockOut) { - return wzStockOutMapper.updateWzStockOut(wzStockOut); - } - - /** - * 批量删除出库记录 - * - * @param stockOutCodes 需要删除的出库记录主键 - * @return 结果 - */ - @Override - public int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes) { - return wzStockOutMapper.deleteWzStockOutByStockOutCodes(stockOutCodes); - } - - /** - * 删除出库记录信息 - * - * @param stockOutCode 出库记录主键 - * @return 结果 - */ - @Override - public int deleteWzStockOutByStockOutCode(Long stockOutCode) { - return wzStockOutMapper.deleteWzStockOutByStockOutCode(stockOutCode); - } - - /** - * 导入用户数据 - * - * @param WzStockOutList 入库数据列表 - * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 - * @param operName 操作用户 - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception { - if (StringUtils.isNull(WzStockOutList) || WzStockOutList.isEmpty()) { - throw new ServiceException("导入入库数据不能为空!"); - } - int successNum = 0; - int sameNum = 0; - StringBuilder successMsg = new StringBuilder(); - WzStockOut earliestStockOut = wzStockOutMapper.getEarliestStockOut(); - // 确保最近记录有值 - if (null == earliestStockOut || earliestStockOut.getCreateDate() == null) { - if (earliestStockOut != null) { - earliestStockOut.setCreateDate(new Date(0)); - } else { - earliestStockOut = new WzStockOut(); - earliestStockOut.setCreateDate(new Date(0)); - } - } - for (WzStockOut wzStockOut : WzStockOutList) { - if (null != wzStockOut && null != wzStockOut.getCreateDate()) { - if (earliestStockOut.getCreateDate().getTime() >= wzStockOut.getCreateDate().getTime()) { - sameNum++; - continue; - } - } else { - continue; - } - int result = wzStockOutMapper.insertWzStockOut(wzStockOut); - if (result > 0) successNum++; - } - successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); - return successMsg.toString(); - } -} diff --git a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml index e5a2d5e..5265e5f 100644 --- a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml @@ -8,6 +8,18 @@ + + + + + + + + + + + + @@ -18,6 +30,10 @@ + + + + @@ -28,6 +44,18 @@ select sm.id, sm.sheep_id, bs.manage_tags, + ds.id as sheepfold_id, + ds.sheepfold_name, + bsv.id as variety_id, + bsv.variety as variety_name, + '体尺测量' as event_type, + bst.name as sheep_type_name, + sm.measure_date, + bs.gender, + bs.parity, + bs.birth_weight as birth_weight, + bs.weaning_weight as weaning_weight, + bs.current_weight as current_weight, sm.height, sm.bust, sm.body_length, @@ -38,21 +66,38 @@ sm.rump_heignt, sm.hip_width, sm.hip_cross_height, + bbs.breed as breed_status_name, + bs.lactation_day as lactation_day, + bs.gestation_day as gestation_day, + case when bs.mating_date is not null + then DATEDIFF(NOW(), bs.mating_date) + else null + end as post_mating_day, sm.comment, sm.technician, sm.create_by, sm.create_time from sc_body_measure sm - left join bas_sheep bs on sm.sheep_id = bs.id + LEFT JOIN bas_sheep bs ON sm.sheep_id = bs.id + LEFT JOIN bas_breed_status bbs ON bs.breed_status_id = bbs.id + LEFT JOIN da_sheepfold ds ON bs.sheepfold_id = ds.id + LEFT JOIN bas_sheep_type bst ON bs.type_id = bst.id + LEFT JOIN bas_sheep_variety bsv ON bs.variety_id = bsv.id and sbs.sheep_id = #{sheepId} + and bsv.id = #{varietyId} + and bs.sheepfold_id = #{sheepfold} and sbs.datetime between #{params.beginDatetime} and #{params.endDatetime} and score = #{score} - and sheepfold = #{sheepfold} and sbs.create_time between #{params.beginCreateTime} and #{params.endCreateTime} diff --git a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml index f1b6f53..2fc7e25 100644 --- a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml @@ -8,6 +8,12 @@ + + + + + + @@ -22,9 +28,17 @@ select sbr.*, - bs.manage_tags as manageTags + bs.manage_tags as manageTags, + bsv.id as varietyId, + bsv.variety as varietyName, + '乳房评分' as event_type, + sf.id as sheepfoldId, + sf.sheepfold_name as sheepfoldName, + sbr.event_date from sc_breast_rating sbr left join bas_sheep bs on sbr.sheep_id = bs.id + left join bas_sheep_variety bsv on bs.variety_id = bsv.id + left join da_sheepfold sf on bs.sheepfold_id = sf.id @@ -47,7 +47,7 @@ and bs.manage_tags LIKE CONCAT('%', #{manageTags}, '%') - and t.variety_id = #{varietyId} + and bs.variety_id = #{varietyId} and trans_to = #{transTo} and trans_from = #{transFrom} and status = #{status} diff --git a/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml b/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml index d52dd84..90b390f 100644 --- a/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml @@ -21,19 +21,19 @@ select sc.id, sc.sheep_id, - bs.manage_tags as manageTags, - sc.sheepfold, + bs.manage_tags as manageTags, + bs.sheepfold_id as sheepfold, sf.sheepfold_name as sheepfoldName, - sc.variety_id, - bv.variety as varietyName, + bs.variety_id as varietyId, + bv.variety as varietyName, sc.comment, sc.technician, sc.create_by, sc.create_time from sc_castrate sc left join bas_sheep bs on sc.sheep_id = bs.id - left join da_sheepfold sf on sc.sheepfold = sf.id - left join bas_sheep_variety bv on sc.variety_id = bv.id + left join da_sheepfold sf on bs.sheepfold_id = sf.id + left join bas_sheep_variety bv on bs.variety_id = bv.id and sheep_id = #{sheepId} - and sheepfold = #{sheepfold} - - and fh.variety_id = #{varietyId} - + and bs.sheepfold_id = #{sheepfold} + and bs.variety_id = #{varietyId} and fh.create_time between #{params.beginCreateTime} and #{params.endCreateTime} From 4c273f402eeb1fa65721bc956a8f0718f2c0a023 Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Thu, 14 Aug 2025 15:58:28 +0800 Subject: [PATCH 12/23] =?UTF-8?q?=E4=BD=93=E5=B0=BA=E6=B5=8B=E9=87=8F?= =?UTF-8?q?=EF=BC=8C=E4=BD=93=E5=86=B5=E8=AF=84=E5=88=86=EF=BC=8C=E4=B9=B3?= =?UTF-8?q?=E6=88=BF=E8=AF=84=E5=88=86=E7=BC=BA=E5=A4=B1=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E7=9A=84=E6=B7=BB=E5=8A=A0=EF=BC=8C=E6=94=B9=E5=93=81=E7=A7=8D?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=B1=95=E7=A4=BA=E5=8E=9F=E5=93=81=E7=A7=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/BasSheepController.java | 204 ++++ .../controller/BasSheepGroupController.java | 104 ++ .../BasSheepGroupMappingController.java | 148 +++ .../controller/BasSheepTypeController.java | 114 +++ .../controller/BasSheepVarietyController.java | 105 +++ .../controller/BreedRamFileController.java | 104 ++ .../base/controller/DaRanchController.java | 119 +++ .../controller/DaSheepfoldController.java | 122 +++ .../base/controller/SheepFileController.java | 103 ++ .../com/zhyc/module/base/domain/BasSheep.java | 182 ++++ .../module/base/domain/BasSheepGroup.java | 47 + .../base/domain/BasSheepGroupMapping.java | 36 + .../zhyc/module/base/domain/BasSheepType.java | 31 + .../module/base/domain/BasSheepVariety.java | 31 + .../zhyc/module/base/domain/BreedRamFile.java | 890 ++++++++++++++++++ .../com/zhyc/module/base/domain/DaRanch.java | 31 + .../zhyc/module/base/domain/DaSheepfold.java | 57 ++ .../zhyc/module/base/domain/SheepFile.java | 273 ++++++ .../base/mapper/BasSheepGroupMapper.java | 67 ++ .../mapper/BasSheepGroupMappingMapper.java | 88 ++ .../module/base/mapper/BasSheepMapper.java | 83 ++ .../base/mapper/BasSheepTypeMapper.java | 61 ++ .../base/mapper/BasSheepVarietyMapper.java | 75 ++ .../base/mapper/BreedRamFileMapper.java | 109 +++ .../module/base/mapper/DaRanchMapper.java | 61 ++ .../module/base/mapper/DaSheepfoldMapper.java | 67 ++ .../module/base/mapper/SheepFileMapper.java | 63 ++ .../service/IBasSheepGroupMappingService.java | 73 ++ .../base/service/IBasSheepGroupService.java | 64 ++ .../module/base/service/IBasSheepService.java | 77 ++ .../base/service/IBasSheepTypeService.java | 65 ++ .../base/service/IBasSheepVarietyService.java | 67 ++ .../base/service/IBreedRamFileService.java | 61 ++ .../module/base/service/IDaRanchService.java | 61 ++ .../base/service/IDaSheepfoldService.java | 76 ++ .../base/service/ISheepFileService.java | 41 + .../impl/BasSheepGroupMappingServiceImpl.java | 189 ++++ .../impl/BasSheepGroupServiceImpl.java | 123 +++ .../service/impl/BasSheepServiceImpl.java | 125 +++ .../service/impl/BasSheepTypeServiceImpl.java | 89 ++ .../impl/BasSheepVarietyServiceImpl.java | 99 ++ .../service/impl/BreedRamFileServiceImpl.java | 96 ++ .../base/service/impl/DaRanchServiceImpl.java | 93 ++ .../service/impl/DaSheepfoldServiceImpl.java | 114 +++ .../service/impl/SheepFileServiceImpl.java | 74 ++ .../controller/DewormController.java | 106 +++ .../controller/DiagnosisController.java | 104 ++ .../controller/DisinfectController.java | 105 +++ .../controller/HealthController.java | 105 +++ .../controller/ImmunityController.java | 105 +++ .../controller/QuarantineItemsController.java | 105 +++ .../QuarantineReportController.java | 105 +++ .../QuarantineSampleController.java | 105 +++ .../controller/SwDiseaseController.java | 103 ++ .../controller/SwMedicTypeController.java | 105 +++ .../controller/SwMedicineController.java | 105 +++ .../controller/SwMedicineUsageController.java | 105 +++ .../controller/SwPrescriptionController.java | 105 +++ .../controller/SwUnitController.java | 105 +++ .../controller/SwUsageController.java | 105 +++ .../controller/TreatmentController.java | 105 +++ .../zhyc/module/biosafety/domain/Deworm.java | 75 ++ .../module/biosafety/domain/Diagnosis.java | 97 ++ .../module/biosafety/domain/Disinfect.java | 67 ++ .../zhyc/module/biosafety/domain/Health.java | 68 ++ .../module/biosafety/domain/Immunity.java | 79 ++ .../biosafety/domain/QuarantineItems.java | 31 + .../biosafety/domain/QuarantineReport.java | 95 ++ .../biosafety/domain/QuarantineSample.java | 31 + .../module/biosafety/domain/SwDisease.java | 40 + .../module/biosafety/domain/SwMedicType.java | 58 ++ .../module/biosafety/domain/SwMedicine.java | 49 + .../biosafety/domain/SwMedicineUsage.java | 41 + .../domain/SwMedicineUsageDetails.java | 59 ++ .../module/biosafety/domain/SwPresDetail.java | 114 +++ .../biosafety/domain/SwPrescription.java | 138 +++ .../zhyc/module/biosafety/domain/SwUnit.java | 33 + .../zhyc/module/biosafety/domain/SwUsage.java | 32 + .../module/biosafety/domain/Treatment.java | 107 +++ .../module/biosafety/mapper/DewormMapper.java | 64 ++ .../biosafety/mapper/DiagnosisMapper.java | 63 ++ .../biosafety/mapper/DisinfectMapper.java | 63 ++ .../module/biosafety/mapper/HealthMapper.java | 63 ++ .../biosafety/mapper/ImmunityMapper.java | 63 ++ .../mapper/QuarantineItemsMapper.java | 64 ++ .../mapper/QuarantineReportMapper.java | 64 ++ .../mapper/QuarantineSampleMapper.java | 64 ++ .../biosafety/mapper/SwDiseaseMapper.java | 63 ++ .../biosafety/mapper/SwMedicTypeMapper.java | 64 ++ .../biosafety/mapper/SwMedicineMapper.java | 63 ++ .../mapper/SwMedicineUsageMapper.java | 90 ++ .../mapper/SwPrescriptionMapper.java | 89 ++ .../module/biosafety/mapper/SwUnitMapper.java | 64 ++ .../biosafety/mapper/SwUsageMapper.java | 63 ++ .../biosafety/mapper/TreatmentMapper.java | 66 ++ .../biosafety/service/IDewormService.java | 62 ++ .../biosafety/service/IDiagnosisService.java | 62 ++ .../biosafety/service/IDisinfectService.java | 61 ++ .../biosafety/service/IHealthService.java | 61 ++ .../biosafety/service/IImmunityService.java | 61 ++ .../service/IQuarantineItemsService.java | 62 ++ .../service/IQuarantineReportService.java | 62 ++ .../service/IQuarantineSampleService.java | 62 ++ .../biosafety/service/ISwDiseaseService.java | 61 ++ .../service/ISwMedicTypeService.java | 62 ++ .../biosafety/service/ISwMedicineService.java | 62 ++ .../service/ISwMedicineUsageService.java | 61 ++ .../service/ISwPrescriptionService.java | 61 ++ .../biosafety/service/ISwUnitService.java | 62 ++ .../biosafety/service/ISwUsageService.java | 61 ++ .../biosafety/service/ITreatmentService.java | 64 ++ .../service/impl/DewormServiceImpl.java | 160 ++++ .../service/impl/DiagnosisServiceImpl.java | 133 +++ .../service/impl/DisinfectServiceImpl.java | 148 +++ .../service/impl/HealthServiceImpl.java | 152 +++ .../service/impl/ImmunityServiceImpl.java | 159 ++++ .../impl/QuarantineItemsServiceImpl.java | 94 ++ .../impl/QuarantineReportServiceImpl.java | 129 +++ .../impl/QuarantineSampleServiceImpl.java | 93 ++ .../service/impl/SwDiseaseServiceImpl.java | 94 ++ .../service/impl/SwMedicTypeServiceImpl.java | 94 ++ .../service/impl/SwMedicineServiceImpl.java | 94 ++ .../impl/SwMedicineUsageServiceImpl.java | 139 +++ .../impl/SwPrescriptionServiceImpl.java | 139 +++ .../service/impl/SwUnitServiceImpl.java | 95 ++ .../service/impl/SwUsageServiceImpl.java | 94 ++ .../service/impl/TreatmentServiceImpl.java | 176 ++++ .../controller/NpFreshMilkInspController.java | 104 ++ .../NpMilkInOutStoreController.java | 70 ++ .../NpMilkProdClassesController.java | 69 ++ .../controller/NpRawMilkInspeController.java | 105 +++ .../NpSheepMilkAnalysisController.java | 79 ++ .../controller/NpYogurtInspController.java | 105 +++ .../controller/RanchController.java | 23 + .../XzDryMatterCorrectionController.java | 104 ++ .../XzParityCorrectionController.java | 112 +++ .../XzWegihCorrectionController.java | 105 +++ .../dairyProducts/domain/NpFreshMilkInsp.java | 90 ++ .../domain/NpMilkInOutStore.java | 128 +++ .../domain/NpMilkProdClasses.java | 80 ++ .../dairyProducts/domain/NpRawMilkInspe.java | 456 +++++++++ .../domain/NpSheepMilkAnalysis.java | 162 ++++ .../dairyProducts/domain/NpYogurtInsp.java | 91 ++ .../module/dairyProducts/domain/Ranch.java | 12 + .../domain/XzDryMatterCorrection.java | 37 + .../domain/XzParityCorrection.java | 35 + .../domain/XzWegihCorrection.java | 51 + .../mapper/NpFreshMilkInspMapper.java | 63 ++ .../mapper/NpMilkInOutStoreMapper.java | 23 + .../mapper/NpMilkProdClassesMapper.java | 25 + .../mapper/NpRawMilkInspeMapper.java | 63 ++ .../mapper/NpSheepMilkAnalysisMapper.java | 19 + .../mapper/NpYogurtInspMapper.java | 64 ++ .../dairyProducts/mapper/RanchMapper.java | 10 + .../mapper/XzDryMatterCorrectionMapper.java | 63 ++ .../mapper/XzParityCorrectionMapper.java | 63 ++ .../mapper/XzWegihCorrectionMapper.java | 63 ++ .../service/INpFreshMilkInspService.java | 61 ++ .../service/INpMilkInOutStoreService.java | 16 + .../service/INpMilkProdClassesService.java | 16 + .../service/INpRawMilkInspeService.java | 61 ++ .../service/INpSheepMilkAnalysisService.java | 20 + .../service/INpYogurtInspService.java | 62 ++ .../dairyProducts/service/IRanchService.java | 8 + .../IXzDryMatterCorrectionService.java | 61 ++ .../service/IXzParityCorrectionService.java | 62 ++ .../service/IXzWegihCorrectionService.java | 61 ++ .../impl/NpFreshMilkInspServiceImpl.java | 95 ++ .../impl/NpMilkInOutStoreServiceImpl.java | 82 ++ .../impl/NpMilkProdClassesServiceImpl.java | 62 ++ .../impl/NpRawMilkInspeServiceImpl.java | 95 ++ .../impl/NpSheepMilkAnalysisServiceImpl.java | 47 + .../service/impl/NpYogurtInspServiceImpl.java | 95 ++ .../service/impl/RanchServiceImpl.java | 19 + .../XzDryMatterCorrectionServiceImpl.java | 93 ++ .../impl/XzParityCorrectionServiceImpl.java | 94 ++ .../impl/XzWegihCorrectionServiceImpl.java | 94 ++ .../controller/ScBodyMeasureController.java | 107 +++ .../controller/ScBodyScoreController.java | 104 ++ .../controller/ScBreastRatingController.java | 104 ++ .../bodyManage/domain/ScBodyMeasure.java | 189 ++++ .../bodyManage/domain/ScBodyScore.java | 82 ++ .../bodyManage/domain/ScBreastRating.java | 116 +++ .../mapper/ScBodyMeasureMapper.java | 61 ++ .../bodyManage/mapper/ScBodyScoreMapper.java | 61 ++ .../mapper/ScBreastRatingMapper.java | 61 ++ .../service/IScBodyMeasureService.java | 61 ++ .../service/IScBodyScoreService.java | 61 ++ .../service/IScBreastRatingService.java | 61 ++ .../impl/ScBodyMeasureServiceImpl.java | 117 +++ .../service/impl/ScBodyScoreServiceImpl.java | 127 +++ .../impl/ScBreastRatingServiceImpl.java | 131 +++ .../controller/RawSpermRecordController.java | 137 +++ .../controller/ScBreedPlanController.java | 105 +++ .../ScBreedPlanGenerateController.java | 185 ++++ .../controller/ScBreedRecordController.java | 158 ++++ .../breed/controller/ScDryMilkController.java | 115 +++ .../controller/ScLambingRecordController.java | 146 +++ .../ScPregnancyRecordController.java | 116 +++ .../controller/ScSheepDeathController.java | 120 +++ .../controller/ScWeanRecordController.java | 162 ++++ .../produce/breed/domain/RawSpermRecord.java | 83 ++ .../produce/breed/domain/ScBreedPlan.java | 39 + .../breed/domain/ScBreedPlanGenerate.java | 70 ++ .../produce/breed/domain/ScBreedPlanTemp.java | 73 ++ .../produce/breed/domain/ScBreedRecord.java | 116 +++ .../produce/breed/domain/ScDryMilk.java | 73 ++ .../produce/breed/domain/ScLambDetail.java | 94 ++ .../produce/breed/domain/ScLambingRecord.java | 387 ++++++++ .../breed/domain/ScPregnancyRecord.java | 122 +++ .../produce/breed/domain/ScSheepDeath.java | 356 +++++++ .../produce/breed/domain/ScWeanRecord.java | 100 ++ .../produce/breed/domain/SheepLambInfo.java | 25 + .../breed/mapper/RawSpermRecordMapper.java | 69 ++ .../mapper/ScBreedPlanGenerateMapper.java | 107 +++ .../breed/mapper/ScBreedPlanMapper.java | 63 ++ .../breed/mapper/ScBreedRecordMapper.java | 94 ++ .../produce/breed/mapper/ScDryMilkMapper.java | 71 ++ .../breed/mapper/ScLambDetailMapper.java | 63 ++ .../breed/mapper/ScLambingRecordMapper.java | 72 ++ .../breed/mapper/ScPregnancyRecordMapper.java | 78 ++ .../breed/mapper/ScSheepDeathMapper.java | 70 ++ .../breed/mapper/ScWeanRecordMapper.java | 78 ++ .../breed/service/IRawSpermRecordService.java | 69 ++ .../service/IScBreedPlanGenerateService.java | 101 ++ .../breed/service/IScBreedPlanService.java | 62 ++ .../breed/service/IScBreedRecordService.java | 94 ++ .../breed/service/IScDryMilkService.java | 63 ++ .../service/IScLambingRecordService.java | 46 + .../service/IScPregnancyRecordService.java | 70 ++ .../breed/service/IScSheepDeathService.java | 70 ++ .../breed/service/IScWeanRecordService.java | 69 ++ .../impl/RawSpermRecordServiceImpl.java | 120 +++ .../impl/ScBreedPlanGenerateServiceImpl.java | 240 +++++ .../service/impl/ScBreedPlanServiceImpl.java | 94 ++ .../impl/ScBreedRecordServiceImpl.java | 164 ++++ .../service/impl/ScDryMilkServiceImpl.java | 127 +++ .../impl/ScLambingRecordServiceImpl.java | 192 ++++ .../impl/ScPregnancyRecordServiceImpl.java | 179 ++++ .../service/impl/ScSheepDeathServiceImpl.java | 166 ++++ .../service/impl/ScWeanRecordServiceImpl.java | 134 +++ .../controller/ScAddSheepController.java | 118 +++ .../controller/ScChangeCommentController.java | 104 ++ .../controller/ScChangeEarController.java | 119 +++ .../controller/ScChangeVarietyController.java | 104 ++ .../controller/ScTransGroupController.java | 108 +++ .../ScTransitionInfoController.java | 116 +++ .../manage_sheep/domain/ScAddSheep.java | 90 ++ .../manage_sheep/domain/ScChangeComment.java | 47 + .../manage_sheep/domain/ScChangeEar.java | 50 + .../manage_sheep/domain/ScChangeVariety.java | 52 + .../manage_sheep/domain/ScTransGroup.java | 107 +++ .../manage_sheep/domain/ScTransitionInfo.java | 88 ++ .../manage_sheep/mapper/ScAddSheepMapper.java | 25 + .../mapper/ScChangeCommentMapper.java | 61 ++ .../mapper/ScChangeEarMapper.java | 61 ++ .../mapper/ScChangeVarietyMapper.java | 61 ++ .../mapper/ScTransGroupMapper.java | 63 ++ .../mapper/ScTransitionInfoMapper.java | 66 ++ .../service/IScAddSheepService.java | 27 + .../service/IScChangeCommentService.java | 61 ++ .../service/IScChangeEarService.java | 61 ++ .../service/IScChangeVarietyService.java | 61 ++ .../service/IScTransGroupService.java | 67 ++ .../service/IScTransitionInfoService.java | 73 ++ .../service/impl/ScAddSheepServiceImpl.java | 189 ++++ .../impl/ScChangeCommentServiceImpl.java | 120 +++ .../service/impl/ScChangeEarServiceImpl.java | 156 +++ .../impl/ScChangeVarietyServiceImpl.java | 127 +++ .../service/impl/ScTransGroupServiceImpl.java | 180 ++++ .../impl/ScTransitionInfoServiceImpl.java | 201 ++++ .../controller/ScCastrateController.java | 105 +++ .../other/controller/ScFixHoofController.java | 113 +++ .../produce/other/domain/ScCastrate.java | 66 ++ .../produce/other/domain/ScFixHoof.java | 55 ++ .../other/mapper/ScCastrateMapper.java | 64 ++ .../produce/other/mapper/ScFixHoofMapper.java | 65 ++ .../other/service/IScCastrateService.java | 63 ++ .../other/service/IScFixHoofService.java | 71 ++ .../service/impl/ScCastrateServiceImpl.java | 108 +++ .../service/impl/ScFixHoofServiceImpl.java | 123 +++ .../WzMaterialsManagementController.java | 116 +++ .../stock/controller/WzStockInController.java | 122 +++ .../controller/WzStockOutController.java | 130 +++ .../stock/domain/WzMaterialsManagement.java | 87 ++ .../zhyc/module/stock/domain/WzStockIn.java | 142 +++ .../zhyc/module/stock/domain/WzStockOut.java | 251 +++++ .../mapper/WzMaterialsManagementMapper.java | 71 ++ .../module/stock/mapper/WzStockInMapper.java | 70 ++ .../module/stock/mapper/WzStockOutMapper.java | 70 ++ .../IWzMaterialsManagementService.java | 71 ++ .../stock/service/IWzStockInService.java | 72 ++ .../stock/service/IWzStockOutService.java | 72 ++ .../WzMaterialsManagementServiceImpl.java | 132 +++ .../service/impl/WzStockInServiceImpl.java | 137 +++ .../service/impl/WzStockOutServiceImpl.java | 136 +++ 296 files changed, 27907 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java 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 new file mode 100644 index 0000000..fede094 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepController.java @@ -0,0 +1,204 @@ +package com.zhyc.module.base.controller; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 羊只基本信息Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/sheep/sheep") +public class BasSheepController extends BaseController { + @Autowired + private IBasSheepService basSheepService; + + @Autowired + private IBasSheepVarietyService basSheepVarietyService; + + /** + * 查询羊只基本信息列表 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:list')") + @GetMapping("/list") + public TableDataInfo list(BasSheep basSheep) { + startPage(); + List list = basSheepService.selectBasSheepList(basSheep); + return getDataTable(list); + } + + /** + * 导出羊只基本信息列表 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:export')") + @Log(title = "羊只基本信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BasSheep basSheep) { + List list = basSheepService.selectBasSheepList(basSheep); + ExcelUtil util = new ExcelUtil(BasSheep.class); + util.exportExcel(response, list, "羊只基本信息数据"); + } + + /** + * 获取羊只基本信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(basSheepService.selectBasSheepById(id)); + } + + /** + * 新增羊只基本信息 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:add')") + @Log(title = "羊只基本信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BasSheep basSheep) { + return toAjax(basSheepService.insertBasSheep(basSheep)); + } + + /** + * 修改羊只基本信息 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:edit')") + @Log(title = "羊只基本信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BasSheep basSheep) { + return toAjax(basSheepService.updateBasSheep(basSheep)); + } + + /** + * 删除羊只基本信息 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:remove')") + @Log(title = "羊只基本信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(basSheepService.deleteBasSheepByIds(ids)); + } + + /** + * 根据耳号查询 + */ + @GetMapping("/byManageTags/{manageTags}") + public AjaxResult byManageTags(@PathVariable String manageTags) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags.trim()); + if (sheep == null) { + return error("未找到对应的羊只"); + } + + // 补品种名称 + BasSheepVariety variety = basSheepVarietyService.selectBasSheepVarietyById(sheep.getVarietyId()); + sheep.setVarietyName(variety == null ? "" : variety.getVariety()); + + return success(sheep); + } + + /** + * 根据羊只类型ID查询羊只列表 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") + @GetMapping("/listByTypeId") + public TableDataInfo listByTypeId(Integer typeId) { + if (typeId == null) { + return getDataTable(new ArrayList<>()); + } + BasSheep query = new BasSheep(); + query.setTypeId(typeId.longValue()); + startPage(); + List list = basSheepService.selectBasSheepList(query); + return getDataTable(list); + } + + /** + * 根据羊舍ID和羊只类型ID组合查询羊只列表 + */ + @PreAuthorize("@ss.hasPermi('sheep:sheep:query')") + @GetMapping("/listBySheepfoldAndType") + public TableDataInfo listBySheepfoldAndType(Integer sheepfoldId, Integer typeId) { + if (sheepfoldId == null || typeId == null) { + return getDataTable(new ArrayList<>()); + } + BasSheep query = new BasSheep(); + query.setSheepfoldId(sheepfoldId.longValue()); + query.setTypeId(typeId.longValue()); + startPage(); + List list = basSheepService.selectBasSheepList(query); + return getDataTable(list); + } + + + /** + * 根据耳号(管理耳号或电子耳号)+ 耳号类型 查询羊只信息 + * earType:0-电子耳号,1-管理耳号 + */ + @GetMapping("/byEarNumber") + public AjaxResult byEarNumber(@RequestParam String earNumber, @RequestParam Integer earType) { + BasSheep query = new BasSheep(); + query.setManageTags(earNumber); + List list = basSheepService.selectBasSheepList(query); + + if (list.isEmpty()) { + query.setManageTags(null); + query.setElectronicTags(earNumber); + list = basSheepService.selectBasSheepList(query); + } + + if (list.isEmpty()) { + return error("未找到对应的羊只"); + } + + BasSheep sheep = list.get(0); + + String oldTag = earType == 0 ? sheep.getElectronicTags() : sheep.getManageTags(); + + Map result = new HashMap<>(); + result.put("sheep", sheep); + result.put("oldTag", oldTag); + + return success(result); + } + + + /** + * 判断耳号是否存在(用于新增羊只时校验) + */ + @GetMapping("/existsByManageTags/{manageTags}") + public AjaxResult existsByManageTags(@PathVariable String manageTags) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags.trim()); + if (sheep != null) { + return success(true); + } + return success(false); + } + + + @GetMapping("/existsByTag") + public AjaxResult existsByTag(@RequestParam String tag, @RequestParam Integer earType) { + boolean exists = basSheepService.existsByTag(tag, earType); + Map result = new HashMap<>(); + result.put("exists", exists); + return success(result); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java new file mode 100644 index 0000000..f681ab3 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.base.controller; + +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.common.utils.poi.ExcelUtil; +import com.zhyc.module.base.domain.BasSheepGroup; +import com.zhyc.module.base.service.IBasSheepGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 分组管理Controller + * + * @author wyt + * @date 2025-07-14 + */ +@RestController +@RequestMapping("/group_management/group_management") +public class BasSheepGroupController extends BaseController +{ + @Autowired + private IBasSheepGroupService basSheepGroupService; + + /** + * 查询分组管理列表 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:list')") + @GetMapping("/list") + public AjaxResult list(BasSheepGroup basSheepGroup) + { + List list = basSheepGroupService.selectBasSheepGroupList(basSheepGroup); + return success(list); + } + + /** + * 导出分组管理列表 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:export')") + @Log(title = "分组管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BasSheepGroup basSheepGroup) + { + List list = basSheepGroupService.selectBasSheepGroupList(basSheepGroup); + ExcelUtil util = new ExcelUtil(BasSheepGroup.class); + util.exportExcel(response, list, "分组管理数据"); + } + + /** + * 获取分组管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:query')") + @GetMapping(value = "/{groupId}") + public AjaxResult getInfo(@PathVariable("groupId") Long groupId) + { + return success(basSheepGroupService.selectBasSheepGroupByGroupId(groupId)); + } + + /** + * 新增分组管理 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:add')") + @Log(title = "分组管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BasSheepGroup basSheepGroup) + { + return toAjax(basSheepGroupService.insertBasSheepGroup(basSheepGroup)); + } + + /** + * 修改分组管理 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:edit')") + @Log(title = "分组管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BasSheepGroup basSheepGroup) + { + return toAjax(basSheepGroupService.updateBasSheepGroup(basSheepGroup)); + } + + /** + * 删除分组管理 + */ + @PreAuthorize("@ss.hasPermi('group_management:group_management:remove')") + @Log(title = "分组管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{groupIds}") + public AjaxResult remove(@PathVariable Long[] groupIds) + { + return toAjax(basSheepGroupService.deleteBasSheepGroupByGroupIds(groupIds)); + } + + @PreAuthorize("@ss.hasPermi('group_management:group_management:list')") + @GetMapping("/leaf") + public AjaxResult selectLeafNodes() { + List leafNodes = basSheepGroupService.selectLeafNodes(); + return success(leafNodes); + } + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java new file mode 100644 index 0000000..31196e4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepGroupMappingController.java @@ -0,0 +1,148 @@ +package com.zhyc.module.base.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.common.utils.StringUtils; +import com.zhyc.module.base.domain.BasSheepGroupMapping; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +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.base.service.IBasSheepGroupMappingService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +// 1. 导入 +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + + +/** + * 羊只分组关联Controller + * + * @author wyt + * @date 2025-07-16 + */ +@RestController +@RequestMapping("/sheep_grouping/sheep_grouping") +public class BasSheepGroupMappingController extends BaseController +{ + @Autowired + private IBasSheepGroupMappingService basSheepGroupMappingService; + + /** + * 查询羊只分组关联列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:list')") + @GetMapping("/list") + public TableDataInfo list(BasSheepGroupMapping basSheepGroupMapping) + { + startPage(); + List list = basSheepGroupMappingService.selectBasSheepGroupMappingList(basSheepGroupMapping); + return getDataTable(list); + } + + // 2. 声明(放在类内部、方法外部) + private static final Logger log = LoggerFactory.getLogger(BasSheepGroupMappingController.class); + + + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:list')") + @GetMapping("/listJoin") + public TableDataInfo list( + @RequestParam(required = false) Long sheepId, + @RequestParam(required = false) Long groupId, + @RequestParam(required = false) String bsManageTags) { + + List earList = null; + if (StringUtils.hasText(bsManageTags)) { + earList = Arrays.asList(bsManageTags.split("[,,\\s]+")); + } + startPage(); + List> list = basSheepGroupMappingService + .selectBasSheepGroupMappingList(sheepId, groupId, earList); + return getDataTable(list); + } + + + /** + * 导出羊只分组关联列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:export')") + @Log(title = "羊只分组关联", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BasSheepGroupMapping basSheepGroupMapping) + { + List list = basSheepGroupMappingService.selectBasSheepGroupMappingList(basSheepGroupMapping); + ExcelUtil util = new ExcelUtil(BasSheepGroupMapping.class); + util.exportExcel(response, list, "羊只分组关联数据"); + } + + /** + * 获取羊只分组关联详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(basSheepGroupMappingService.selectBasSheepGroupMappingById(id)); + } + + /** + * 新增羊只分组关联 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:add')") + @Log(title = "羊只分组关联", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BasSheepGroupMapping basSheepGroupMapping) + { + return toAjax(basSheepGroupMappingService.insertBasSheepGroupMapping(basSheepGroupMapping)); + } + + /** + * 修改羊只分组关联 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:edit')") + @Log(title = "羊只分组关联", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BasSheepGroupMapping basSheepGroupMapping) + { + try { + return toAjax(basSheepGroupMappingService.updateBasSheepGroupMapping(basSheepGroupMapping)); + } catch (RuntimeException e) { + return error(e.getMessage()); + } + } + + /** + * 删除羊只分组关联 + */ + @PreAuthorize("@ss.hasPermi('sheep_grouping:sheep_grouping:remove')") + @Log(title = "羊只分组关联", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(basSheepGroupMappingService.deleteBasSheepGroupMappingByIds(ids)); + } + + + @PostMapping("/addByEarTags") + public AjaxResult addByEarTags(@RequestBody Map params) { + List earTags = (List) params.get("earTags"); + Long groupId = Long.valueOf(params.get("groupId").toString()); + + if (earTags == null || earTags.isEmpty()) { + return error("耳号列表不能为空"); + } + + return basSheepGroupMappingService.addByEarTags(earTags, groupId); + } + + + +} 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 new file mode 100644 index 0000000..f847204 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java @@ -0,0 +1,114 @@ +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; +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.base.domain.BasSheepType; +import com.zhyc.module.base.service.IBasSheepTypeService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 羊只类型Controller + * + * @author ruoyi + * @date 2025-07-22 + */ +@RestController +@RequestMapping("/base/base") +public class BasSheepTypeController extends BaseController +{ + @Autowired + private IBasSheepTypeService basSheepTypeService; + + @Autowired + private IBasSheepService basSheepService; + /** + * 查询羊只类型列表 + */ + @PreAuthorize("@ss.hasPermi('base:base:list')") + @GetMapping("/list") + public TableDataInfo list(BasSheepType basSheepType) + { + startPage(); + List list = basSheepTypeService.selectBasSheepTypeList(basSheepType); + return getDataTable(list); + } + + /** + * 导出羊只类型列表 + */ + @PreAuthorize("@ss.hasPermi('base:base:export')") + @Log(title = "羊只类型", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BasSheepType basSheepType) + { + List list = basSheepTypeService.selectBasSheepTypeList(basSheepType); + ExcelUtil util = new ExcelUtil(BasSheepType.class); + util.exportExcel(response, list, "羊只类型数据"); + } + + /** + * 获取羊只类型详细信息 + */ + @PreAuthorize("@ss.hasPermi('base:base:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return success(basSheepTypeService.selectBasSheepTypeById(id)); + } + + /** + * 新增羊只类型 + */ + @PreAuthorize("@ss.hasPermi('base:base:add')") + @Log(title = "羊只类型", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BasSheepType basSheepType) + { + return toAjax(basSheepTypeService.insertBasSheepType(basSheepType)); + } + + /** + * 修改羊只类型 + */ + @PreAuthorize("@ss.hasPermi('base:base:edit')") + @Log(title = "羊只类型", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BasSheepType basSheepType) + { + return toAjax(basSheepTypeService.updateBasSheepType(basSheepType)); + } + + /** + * 删除羊只类型 + */ + @PreAuthorize("@ss.hasPermi('base:base:remove')") + @Log(title = "羊只类型", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(basSheepTypeService.deleteBasSheepTypeByIds(ids)); + } + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java new file mode 100644 index 0000000..0954dc3 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepVarietyController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.base.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.base.domain.BasSheepVariety; +import com.zhyc.module.base.service.IBasSheepVarietyService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 羊只品种Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/base/variety") +public class BasSheepVarietyController extends BaseController +{ + @Autowired + private IBasSheepVarietyService basSheepVarietyService; + + /** + * 查询羊只品种列表 + */ + @PreAuthorize("@ss.hasPermi('base:variety:list')") + @GetMapping("/list") + public TableDataInfo list(BasSheepVariety basSheepVariety) + { + startPage(); + List list = basSheepVarietyService.selectBasSheepVarietyList(basSheepVariety); + return getDataTable(list); + } + + /** + * 导出羊只品种列表 + */ + @PreAuthorize("@ss.hasPermi('base:variety:export')") + @Log(title = "羊只品种", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BasSheepVariety basSheepVariety) + { + List list = basSheepVarietyService.selectBasSheepVarietyList(basSheepVariety); + ExcelUtil util = new ExcelUtil(BasSheepVariety.class); + util.exportExcel(response, list, "羊只品种数据"); + } + + /** + * 获取羊只品种详细信息 + */ + @PreAuthorize("@ss.hasPermi('base:variety:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(basSheepVarietyService.selectBasSheepVarietyById(id)); + } + + /** + * 新增羊只品种 + */ + @PreAuthorize("@ss.hasPermi('base:variety:add')") + @Log(title = "羊只品种", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BasSheepVariety basSheepVariety) + { + return toAjax(basSheepVarietyService.insertBasSheepVariety(basSheepVariety)); + } + + /** + * 修改羊只品种 + */ + @PreAuthorize("@ss.hasPermi('base:variety:edit')") + @Log(title = "羊只品种", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BasSheepVariety basSheepVariety) + { + return toAjax(basSheepVarietyService.updateBasSheepVariety(basSheepVariety)); + } + + /** + * 删除羊只品种 + */ + @PreAuthorize("@ss.hasPermi('base:variety:remove')") + @Log(title = "羊只品种", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(basSheepVarietyService.deleteBasSheepVarietyByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java new file mode 100644 index 0000000..7274064 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BreedRamFileController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.base.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.enums.BusinessType; +import com.zhyc.module.base.domain.BreedRamFile; +import com.zhyc.module.base.service.IBreedRamFileService; +import com.zhyc.common.core.controller.BaseController; +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 种公羊档案Controller + * + * @author zhyc + * @date 2025-07-29 + */ +@RestController +@RequestMapping("/ram_file/bas_ram_file") +public class BreedRamFileController extends BaseController +{ + @Autowired + private IBreedRamFileService breedRamFileService; + + /** + * 查询种公羊档案列表 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:list')") + @GetMapping("/list") + public TableDataInfo list(BreedRamFile breedRamFile) + { + startPage(); + List list = breedRamFileService.selectBreedRamFileList(breedRamFile); + return getDataTable(list); + } + + /** + * 导出种公羊档案列表 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:export')") + @Log(title = "种公羊档案", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BreedRamFile breedRamFile) + { + List list = breedRamFileService.selectBreedRamFileList(breedRamFile); + ExcelUtil util = new ExcelUtil(BreedRamFile.class); + util.exportExcel(response, list, "种公羊档案数据"); + } + + /** + * 获取种公羊档案详细信息 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(breedRamFileService.selectBreedRamFileById(id)); + } + + /** + * 新增种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:add')") + @Log(title = "种公羊档案", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BreedRamFile breedRamFile) + { + return toAjax(breedRamFileService.insertBreedRamFile(breedRamFile)); + } + + /** + * 修改种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:edit')") + @Log(title = "种公羊档案", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BreedRamFile breedRamFile) + { + return toAjax(breedRamFileService.updateBreedRamFile(breedRamFile)); + } + + /** + * 删除种公羊档案 + */ + @PreAuthorize("@ss.hasPermi('breed_ram_file:breed_ram_file:remove')") + @Log(title = "种公羊档案", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(breedRamFileService.deleteBreedRamFileByIds(ids)); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java new file mode 100644 index 0000000..a519335 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java @@ -0,0 +1,119 @@ +package com.zhyc.module.base.controller; + +import java.util.List; +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; +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.base.domain.DaRanch; +import com.zhyc.module.base.service.IDaRanchService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 牧场管理Controller + * + * @author ruoyi + * @date 2025-07-22 + */ +@RestController +@RequestMapping("/ranch/ranch") +public class DaRanchController extends BaseController +{ + @Autowired + private IDaRanchService daRanchService; + + @Autowired + private IBasSheepService basSheepService; + /** + * 查询牧场管理列表 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:list')") + @GetMapping("/list") + public TableDataInfo list(DaRanch daRanch) + { + startPage(); + List list = daRanchService.selectDaRanchList(daRanch); + return getDataTable(list); + } + + /** + * 导出牧场管理列表 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:export')") + @Log(title = "牧场管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, DaRanch daRanch) + { + List list = daRanchService.selectDaRanchList(daRanch); + ExcelUtil util = new ExcelUtil(DaRanch.class); + util.exportExcel(response, list, "牧场管理数据"); + } + + /** + * 获取牧场管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(daRanchService.selectDaRanchById(id)); + } + + /** + * 获取指定牧场下的所有羊只耳号 + */ + @GetMapping("/getSheepByRanchId/{ranchId}") + public AjaxResult getSheepByRanchId(@PathVariable Long ranchId) { + List sheepList = basSheepService.getSheepByRanchId(ranchId); + return AjaxResult.success(sheepList); + } + + + /** + * 新增牧场管理 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:add')") + @Log(title = "牧场管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody DaRanch daRanch) + { + return toAjax(daRanchService.insertDaRanch(daRanch)); + } + + /** + * 修改牧场管理 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:edit')") + @Log(title = "牧场管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody DaRanch daRanch) + { + return toAjax(daRanchService.updateDaRanch(daRanch)); + } + + /** + * 删除牧场管理 + */ + @PreAuthorize("@ss.hasPermi('ranch:ranch:remove')") + @Log(title = "牧场管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(daRanchService.deleteDaRanchByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java new file mode 100644 index 0000000..7b72788 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaSheepfoldController.java @@ -0,0 +1,122 @@ +package com.zhyc.module.base.controller; + +import com.zhyc.common.annotation.Log; +import com.zhyc.common.core.controller.BaseController; +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.DaSheepfold; +import com.zhyc.module.base.service.IDaSheepfoldService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 羊舍管理Controller + * + * @author wyt + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/sheepfold_management/sheepfold_management") +public class DaSheepfoldController extends BaseController +{ + @Autowired + private IDaSheepfoldService daSheepfoldService; + + /** + * 查询羊舍管理列表 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:list')") + @GetMapping("/list") + public TableDataInfo list(DaSheepfold daSheepfold) + { + startPage(); + List list = daSheepfoldService.selectDaSheepfoldList(daSheepfold); + return getDataTable(list); + } + /* + * 根据羊舍ids查询羊只id + * */ + + @GetMapping("/getSheepById") + public AjaxResult getSheepfold(@RequestParam String id) { + List list = daSheepfoldService.sheepListById(id); + return AjaxResult.success(list); + } + + + + /** + * 导出羊舍管理列表 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:export')") + @Log(title = "羊舍管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, DaSheepfold daSheepfold) + { + List list = daSheepfoldService.selectDaSheepfoldList(daSheepfold); + ExcelUtil util = new ExcelUtil(DaSheepfold.class); + util.exportExcel(response, list, "羊舍管理数据"); + } + + /** + * 获取羊舍管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(daSheepfoldService.selectDaSheepfoldById(id)); + } + + /** + * 新增羊舍管理 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:add')") + @Log(title = "羊舍管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody DaSheepfold daSheepfold) + { + return toAjax(daSheepfoldService.insertDaSheepfold(daSheepfold)); + } + + /** + * 修改羊舍管理 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:edit')") + @Log(title = "羊舍管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody DaSheepfold daSheepfold) + { + return toAjax(daSheepfoldService.updateDaSheepfold(daSheepfold)); + } + + /** + * 删除羊舍管理 + */ + @PreAuthorize("@ss.hasPermi('sheepfold_management:sheepfold_management:remove')") + @Log(title = "羊舍管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(daSheepfoldService.deleteDaSheepfoldByIds(ids)); + } + /** + * 检查羊舍编号是否已存在 + */ + @GetMapping("/checkSheepfoldNoExist") + public AjaxResult checkSheepfoldNoExist( + @RequestParam Long ranchId, + @RequestParam Long sheepfoldTypeId, + @RequestParam String sheepfoldNo + ) { + boolean exist = daSheepfoldService.checkSheepfoldNoExist(ranchId, sheepfoldTypeId, sheepfoldNo); + return AjaxResult.success(exist); + } +} 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 new file mode 100644 index 0000000..5046e7c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java @@ -0,0 +1,103 @@ +package com.zhyc.module.base.controller; + +import com.zhyc.common.annotation.Log; +import com.zhyc.common.core.controller.BaseController; +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; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 羊只档案Controller + * + * @author wyt + * @date 2025-07-13 + */ +@RestController +@RequestMapping("/sheep_file/sheep_file") +public class SheepFileController extends BaseController +{ + @Autowired + private ISheepFileService sheepFileService; + + /** + * 查询羊只档案列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:list')") + @GetMapping("/list") + public TableDataInfo list(SheepFile sheepFile) + { + startPage(); + List list = sheepFileService.selectSheepFileList(sheepFile); + return getDataTable(list); + } + + /** + * 导出羊只档案列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:export')") + @Log(title = "羊只档案", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SheepFile sheepFile) + { + List list = sheepFileService.selectSheepFileList(sheepFile); + ExcelUtil util = new ExcelUtil(SheepFile.class); + util.exportExcel(response, list, "羊只档案数据"); + } + + /** + * 获取羊只档案详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(sheepFileService.selectSheepFileById(id)); + } + + /* + * 根据耳号查询是否存在羊舍 + * */ + @GetMapping("/byNo/{manageTags}") + public AjaxResult byManageTags(@PathVariable String manageTags){ + SheepFile sheep=sheepFileService.selectBasSheepByManageTags(manageTags.trim()); + return success(sheep); + } + + + @GetMapping("/stat/sheepType") + public AjaxResult statSheepType() { + return success(sheepFileService.countBySheepType()); + } + + @GetMapping("/stat/breedStatus") + public AjaxResult statBreedStatus() { + return success(sheepFileService.countByBreedStatus()); + } + + @GetMapping("/stat/variety") + public AjaxResult statVariety() { + return success(sheepFileService.countByVariety()); + } + + @GetMapping("/stat/lactationParity") + public AjaxResult statLactationParity() { + return success(sheepFileService.countParityOfLactation()); + } + + // 在群总数 + @GetMapping("/stat/inGroupCount") + public AjaxResult inGroupCount() { + return success(sheepFileService.countInGroup()); + } + +} 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 new file mode 100644 index 0000000..047d376 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheep.java @@ -0,0 +1,182 @@ +package com.zhyc.module.base.domain; + +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; + +/** + * 羊只基本信息对象 bas_sheep + * + * @author ruoyi + * @date 2025-07-15 + */ + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BasSheep extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 管理耳号 */ + @Excel(name = "管理耳号") + private String manageTags; + + /** 牧场id */ + @Excel(name = "牧场id") + private Long ranchId; + + /** 羊舍id */ + @Excel(name = "羊舍id") + private Long sheepfoldId; + private String sheepfoldName; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + /** 品种id */ + @Excel(name = "品种id") + private Long varietyId; + + //仅用于改品种页面的回显 + private String varietyName; + + /** 家系 */ + @Excel(name = "家系") + private String family; + + /** 羊只类别 */ + @Excel(name = "羊只类别") + private Long typeId; + + /** 性别 */ + @Excel(name = "性别") + private Long gender; + + /** 出生日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 出生体重 */ + @Excel(name = "出生体重") + private Long birthWeight; + + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 羊只状态 */ + @Excel(name = "羊只状态") + private Long statusId; + + /** 断奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date weaningDate; + + /** 断奶体重 */ + @Excel(name = "断奶体重") + private Long weaningWeight; + + /** 繁育状态id */ + @Excel(name = "繁育状态id") + private Long breedStatusId; + + /** 父号id */ + @Excel(name = "父号id") + private Long fatherId; + + /** 母号id */ + @Excel(name = "母号id") + private Long motherId; + + /** 受体id */ + @Excel(name = "受体id") + private Long receptorId; + + /** 配种日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date matingDate; + + /** 配种类型 */ + @Excel(name = "配种类型") + private Long matingTypeId; + + /** 孕检日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date pregDate; + + /** 产羔日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "产羔日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date lambingDate; + + /** 产羔时怀孕天数 */ + @Excel(name = "产羔时怀孕天数") + private Long lambingDay; + + /** 预产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expectedDate; + + /** 是否性控 */ + @Excel(name = "是否性控") + private Long controlled; + + /** 配种次数 */ + @Excel(name = "配种次数") + private Long matingCounts; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Long matingTotal; + + /** 累计流产次数 */ + @Excel(name = "累计流产次数") + private Long miscarriageCounts; + + /** 体况评分 */ + @Excel(name = "体况评分") + private Long body; + + /** 乳房评分 */ + @Excel(name = "乳房评分") + private Long breast; + + /** 入群来源 */ + @Excel(name = "入群来源") + private String source; + + /** 入群日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "入群日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date sourceDate; + + /** 来源牧场id */ + @Excel(name = "来源牧场id") + private Long sourceRanchId; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 是否删除 */ + @Excel(name = "是否删除") + private Long isDelete; + + +} 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 new file mode 100644 index 0000000..e0d1adb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroup.java @@ -0,0 +1,47 @@ +package com.zhyc.module.base.domain; + +import com.zhyc.common.annotation.Excel; +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 + * + * @author wyt + * @date 2025-07-14 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class BasSheepGroup extends TreeEntity +{ + private static final long serialVersionUID = 1L; + + /** 分组ID */ + @Excel(name = "分组ID") + private Long groupId; + + /** 分组名称 */ + @Excel(name = "分组名称") + private String groupName; + + /** 状态(0正常 1停用) */ + @Excel(name = "状态", readConverterExp = "0=正常,1=停用") + private String status; + + /** 状态(0正常 1停用) */ + @Excel(name = "祖级列表") + private String ancestors; + + /** 祖级列表名称 */ + @Excel(name = "祖级列表名称") + private String ancestorNames; + + + private Integer isLeaf; + +} 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 new file mode 100644 index 0000000..eed7c36 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepGroupMapping.java @@ -0,0 +1,36 @@ +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; + +/** + * 羊只分组关联对象 bas_sheep_group_mapping + * + * @author wyt + * @date 2025-07-16 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class BasSheepGroupMapping extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + @Excel(name = "主键ID") + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 分组ID */ + @Excel(name = "分组ID") + private Long groupId; + +} 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 new file mode 100644 index 0000000..edf709e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepType.java @@ -0,0 +1,31 @@ +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; + +/** + * 羊只类型对象 bas_sheep_type + * + * @author ruoyi + * @date 2025-07-22 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class BasSheepType extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Integer id; + + /** 羊只类型 */ + private String name; + + +} 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 new file mode 100644 index 0000000..56e8a36 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BasSheepVariety.java @@ -0,0 +1,31 @@ +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; + +/** + * 羊只品种对象 bas_sheep_variety + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class BasSheepVariety extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java new file mode 100644 index 0000000..463308d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/BreedRamFile.java @@ -0,0 +1,890 @@ +package com.zhyc.module.base.domain; + +import java.math.BigDecimal; +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; + +/** + * 种公羊档案对象 breed_ram_file + * + * @author zhyc + * @date 2025-07-29 + */ +public class BreedRamFile extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 种公羊id */ + private Long id; + + /** 普通耳号 */ + @Excel(name = "普通耳号") + private String ordinaryEarNumber; + + /** 牧场id */ + @Excel(name = "牧场id") + private Long ranchId; + + /** 牧场名称 */ + @Excel(name = "牧场名称") + private String ranchName; + + /** 羊舍id */ + @Excel(name = "羊舍id") + private Long sheepfoldId; + + /** 羊舍名称 */ + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + /** 品种id */ + @Excel(name = "品种id") + private Long varietyId; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 羊只类别 */ + @Excel(name = "羊只类别") + private String sheepCategory; + + /** 当前状态 */ + @Excel(name = "当前状态") + private String currentStatus; + + /** 生日 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 动态 */ + @Excel(name = "动态") + private String dynamicInfo; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 出生体重 */ + @Excel(name = "出生体重") + private BigDecimal birthWeight; + + /** 断奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date weaningDate; + + /** 断奶日龄 */ + @Excel(name = "断奶日龄") + private Long weaningDayAge; + + /** 断奶体重 */ + @Excel(name = "断奶体重") + private BigDecimal weaningWeight; + + /** 断奶日增重 */ + @Excel(name = "断奶日增重") + private BigDecimal weaningDailyGain; + + /** 断奶后日增重 */ + @Excel(name = "断奶后日增重") + private BigDecimal postWeaningDailyGain; + + /** 当前体重 */ + @Excel(name = "当前体重") + private BigDecimal currentWeight; + + /** 当前体重称重日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "当前体重称重日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date currentWeightDate; + + /** 活动量 */ + @Excel(name = "活动量") + private String activityLevel; + + /** 性欲情况 */ + @Excel(name = "性欲情况") + private String sexualStatus; + + /** 阴囊周长 */ + @Excel(name = "阴囊周长") + private BigDecimal scrotumCircumference; + + /** 采精时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "采精时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date spermCollectionTime; + + /** 精液量 */ + @Excel(name = "精液量") + private BigDecimal spermVolume; + + /** 精液活力 */ + @Excel(name = "精液活力") + private String spermVitality; + + /** 精液密度 */ + @Excel(name = "精液密度") + private String spermDensity; + + /** 精液品质 */ + @Excel(name = "精液品质") + private String spermQuality; + + /** 配种状态 */ + @Excel(name = "配种状态") + private Long breedingStatus; + + /** 上次计划时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "上次计划时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date lastPlanTime; + + /** 本次计划时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "本次计划时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date currentPlanTime; + + /** 蛋白率%EBV */ + @Excel(name = "蛋白率%EBV") + private BigDecimal proteinRateEbv; + + /** 乳脂率%EBV */ + @Excel(name = "乳脂率%EBV") + private BigDecimal milkFatRateEbv; + + /** 乳体细胞(SCS)EBV */ + @Excel(name = "乳体细胞", readConverterExp = "S=CS") + private BigDecimal scsEbv; + + /** 生长性能EBV */ + @Excel(name = "生长性能EBV") + private BigDecimal growthPerformanceEbv; + + /** 抗逆性EBV */ + @Excel(name = "抗逆性EBV") + private BigDecimal resistanceEbv; + + /** 繁殖性能EBV */ + @Excel(name = "繁殖性能EBV") + private BigDecimal reproductionPerformanceEbv; + + /** 体型性状EBV */ + @Excel(name = "体型性状EBV") + private BigDecimal bodyTypeEbv; + + /** 综合育种值 */ + @Excel(name = "综合育种值") + private BigDecimal comprehensiveBreedingValue; + + /** 父号 */ + @Excel(name = "父号") + private String fatherNumber; + + /** 母号 */ + @Excel(name = "母号") + private String motherNumber; + + /** 祖父 */ + @Excel(name = "祖父") + private String grandfatherNumber; + + /** 祖母 */ + @Excel(name = "祖母") + private String grandmotherNumber; + + /** 外祖父 */ + @Excel(name = "外祖父") + private String maternalGrandfatherNumber; + + /** 外祖母 */ + @Excel(name = "外祖母") + private String maternalGrandmotherNumber; + + /** 是否核心羊群(0否1是) */ + @Excel(name = "是否核心羊群", readConverterExp = "0=否,1=是") + private Long isCoreFlock; + + /** 是否种用(0否1是) */ + @Excel(name = "是否种用", readConverterExp = "0=否,1=是") + private Long isBreedingUse; + + /** 孕检 */ + @Excel(name = "孕检") + private String pregnancyCheck; + + /** 总配母羊数 */ + @Excel(name = "总配母羊数") + private Long totalMatedEwes; + + /** 本交孕检母羊数 */ + @Excel(name = "本交孕检母羊数") + private Long naturalPregnancyCheckEwes; + + /** 本交受孕率% */ + @Excel(name = "本交受孕率%") + private BigDecimal naturalConceptionRate; + + /** 人工孕检母羊数 */ + @Excel(name = "人工孕检母羊数") + private Long artificialPregnancyCheckEwes; + + /** 人工受孕率% */ + @Excel(name = "人工受孕率%") + private BigDecimal artificialConceptionRate; + + /** 公羊母亲奶量 */ + @Excel(name = "公羊母亲奶量") + private BigDecimal ramMotherMilkVolume; + + /** 产奶量估计育种值(Kg) */ + @Excel(name = "产奶量估计育种值", readConverterExp = "K=g") + private BigDecimal milkProductionEbv; + + /** 准确性 */ + @Excel(name = "准确性") + private BigDecimal accuracy; + + /** 信息数 */ + @Excel(name = "信息数") + private Long informationCount; + + /** 是否亲子鉴定(0否1是) */ + @Excel(name = "是否亲子鉴定", readConverterExp = "0=否,1=是") + private Long isPaternityTested; + + /** 是否删除(0否1是) */ + private Long isDelete; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setOrdinaryEarNumber(String ordinaryEarNumber) + { + this.ordinaryEarNumber = ordinaryEarNumber; + } + + public String getOrdinaryEarNumber() + { + return ordinaryEarNumber; + } + public void setRanchId(Long ranchId) + { + this.ranchId = ranchId; + } + + public Long getRanchId() + { + return ranchId; + } + public void setRanchName(String ranchName) + { + this.ranchName = ranchName; + } + + public String getRanchName() + { + return ranchName; + } + public void setSheepfoldId(Long sheepfoldId) + { + this.sheepfoldId = sheepfoldId; + } + + public Long getSheepfoldId() + { + return sheepfoldId; + } + public void setSheepfoldName(String sheepfoldName) + { + this.sheepfoldName = sheepfoldName; + } + + public String getSheepfoldName() + { + return sheepfoldName; + } + public void setElectronicTags(String electronicTags) + { + this.electronicTags = electronicTags; + } + + public String getElectronicTags() + { + return electronicTags; + } + public void setVarietyId(Long varietyId) + { + this.varietyId = varietyId; + } + + public Long getVarietyId() + { + return varietyId; + } + public void setVariety(String variety) + { + this.variety = variety; + } + + public String getVariety() + { + return variety; + } + public void setSheepCategory(String sheepCategory) + { + this.sheepCategory = sheepCategory; + } + + public String getSheepCategory() + { + return sheepCategory; + } + public void setCurrentStatus(String currentStatus) + { + this.currentStatus = currentStatus; + } + + public String getCurrentStatus() + { + return currentStatus; + } + public void setBirthday(Date birthday) + { + this.birthday = birthday; + } + + public Date getBirthday() + { + return birthday; + } + public void setDynamicInfo(String dynamicInfo) + { + this.dynamicInfo = dynamicInfo; + } + + public String getDynamicInfo() + { + return dynamicInfo; + } + public void setMonthAge(Long monthAge) + { + this.monthAge = monthAge; + } + + public Long getMonthAge() + { + return monthAge; + } + public void setBirthWeight(BigDecimal birthWeight) + { + this.birthWeight = birthWeight; + } + + public BigDecimal getBirthWeight() + { + return birthWeight; + } + public void setWeaningDate(Date weaningDate) + { + this.weaningDate = weaningDate; + } + + public Date getWeaningDate() + { + return weaningDate; + } + public void setWeaningDayAge(Long weaningDayAge) + { + this.weaningDayAge = weaningDayAge; + } + + public Long getWeaningDayAge() + { + return weaningDayAge; + } + public void setWeaningWeight(BigDecimal weaningWeight) + { + this.weaningWeight = weaningWeight; + } + + public BigDecimal getWeaningWeight() + { + return weaningWeight; + } + public void setWeaningDailyGain(BigDecimal weaningDailyGain) + { + this.weaningDailyGain = weaningDailyGain; + } + + public BigDecimal getWeaningDailyGain() + { + return weaningDailyGain; + } + public void setPostWeaningDailyGain(BigDecimal postWeaningDailyGain) + { + this.postWeaningDailyGain = postWeaningDailyGain; + } + + public BigDecimal getPostWeaningDailyGain() + { + return postWeaningDailyGain; + } + public void setCurrentWeight(BigDecimal currentWeight) + { + this.currentWeight = currentWeight; + } + + public BigDecimal getCurrentWeight() + { + return currentWeight; + } + public void setCurrentWeightDate(Date currentWeightDate) + { + this.currentWeightDate = currentWeightDate; + } + + public Date getCurrentWeightDate() + { + return currentWeightDate; + } + public void setActivityLevel(String activityLevel) + { + this.activityLevel = activityLevel; + } + + public String getActivityLevel() + { + return activityLevel; + } + public void setSexualStatus(String sexualStatus) + { + this.sexualStatus = sexualStatus; + } + + public String getSexualStatus() + { + return sexualStatus; + } + public void setScrotumCircumference(BigDecimal scrotumCircumference) + { + this.scrotumCircumference = scrotumCircumference; + } + + public BigDecimal getScrotumCircumference() + { + return scrotumCircumference; + } + public void setSpermCollectionTime(Date spermCollectionTime) + { + this.spermCollectionTime = spermCollectionTime; + } + + public Date getSpermCollectionTime() + { + return spermCollectionTime; + } + public void setSpermVolume(BigDecimal spermVolume) + { + this.spermVolume = spermVolume; + } + + public BigDecimal getSpermVolume() + { + return spermVolume; + } + public void setSpermVitality(String spermVitality) + { + this.spermVitality = spermVitality; + } + + public String getSpermVitality() + { + return spermVitality; + } + public void setSpermDensity(String spermDensity) + { + this.spermDensity = spermDensity; + } + + public String getSpermDensity() + { + return spermDensity; + } + public void setSpermQuality(String spermQuality) + { + this.spermQuality = spermQuality; + } + + public String getSpermQuality() + { + return spermQuality; + } + public void setBreedingStatus(Long breedingStatus) + { + this.breedingStatus = breedingStatus; + } + + public Long getBreedingStatus() + { + return breedingStatus; + } + public void setLastPlanTime(Date lastPlanTime) + { + this.lastPlanTime = lastPlanTime; + } + + public Date getLastPlanTime() + { + return lastPlanTime; + } + public void setCurrentPlanTime(Date currentPlanTime) + { + this.currentPlanTime = currentPlanTime; + } + + public Date getCurrentPlanTime() + { + return currentPlanTime; + } + public void setProteinRateEbv(BigDecimal proteinRateEbv) + { + this.proteinRateEbv = proteinRateEbv; + } + + public BigDecimal getProteinRateEbv() + { + return proteinRateEbv; + } + public void setMilkFatRateEbv(BigDecimal milkFatRateEbv) + { + this.milkFatRateEbv = milkFatRateEbv; + } + + public BigDecimal getMilkFatRateEbv() + { + return milkFatRateEbv; + } + public void setScsEbv(BigDecimal scsEbv) + { + this.scsEbv = scsEbv; + } + + public BigDecimal getScsEbv() + { + return scsEbv; + } + public void setGrowthPerformanceEbv(BigDecimal growthPerformanceEbv) + { + this.growthPerformanceEbv = growthPerformanceEbv; + } + + public BigDecimal getGrowthPerformanceEbv() + { + return growthPerformanceEbv; + } + public void setResistanceEbv(BigDecimal resistanceEbv) + { + this.resistanceEbv = resistanceEbv; + } + + public BigDecimal getResistanceEbv() + { + return resistanceEbv; + } + public void setReproductionPerformanceEbv(BigDecimal reproductionPerformanceEbv) + { + this.reproductionPerformanceEbv = reproductionPerformanceEbv; + } + + public BigDecimal getReproductionPerformanceEbv() + { + return reproductionPerformanceEbv; + } + public void setBodyTypeEbv(BigDecimal bodyTypeEbv) + { + this.bodyTypeEbv = bodyTypeEbv; + } + + public BigDecimal getBodyTypeEbv() + { + return bodyTypeEbv; + } + public void setComprehensiveBreedingValue(BigDecimal comprehensiveBreedingValue) + { + this.comprehensiveBreedingValue = comprehensiveBreedingValue; + } + + public BigDecimal getComprehensiveBreedingValue() + { + return comprehensiveBreedingValue; + } + public void setFatherNumber(String fatherNumber) + { + this.fatherNumber = fatherNumber; + } + + public String getFatherNumber() + { + return fatherNumber; + } + public void setMotherNumber(String motherNumber) + { + this.motherNumber = motherNumber; + } + + public String getMotherNumber() + { + return motherNumber; + } + public void setGrandfatherNumber(String grandfatherNumber) + { + this.grandfatherNumber = grandfatherNumber; + } + + public String getGrandfatherNumber() + { + return grandfatherNumber; + } + public void setGrandmotherNumber(String grandmotherNumber) + { + this.grandmotherNumber = grandmotherNumber; + } + + public String getGrandmotherNumber() + { + return grandmotherNumber; + } + public void setMaternalGrandfatherNumber(String maternalGrandfatherNumber) + { + this.maternalGrandfatherNumber = maternalGrandfatherNumber; + } + + public String getMaternalGrandfatherNumber() + { + return maternalGrandfatherNumber; + } + public void setMaternalGrandmotherNumber(String maternalGrandmotherNumber) + { + this.maternalGrandmotherNumber = maternalGrandmotherNumber; + } + + public String getMaternalGrandmotherNumber() + { + return maternalGrandmotherNumber; + } + public void setIsCoreFlock(Long isCoreFlock) + { + this.isCoreFlock = isCoreFlock; + } + + public Long getIsCoreFlock() + { + return isCoreFlock; + } + public void setIsBreedingUse(Long isBreedingUse) + { + this.isBreedingUse = isBreedingUse; + } + + public Long getIsBreedingUse() + { + return isBreedingUse; + } + public void setPregnancyCheck(String pregnancyCheck) + { + this.pregnancyCheck = pregnancyCheck; + } + + public String getPregnancyCheck() + { + return pregnancyCheck; + } + public void setTotalMatedEwes(Long totalMatedEwes) + { + this.totalMatedEwes = totalMatedEwes; + } + + public Long getTotalMatedEwes() + { + return totalMatedEwes; + } + public void setNaturalPregnancyCheckEwes(Long naturalPregnancyCheckEwes) + { + this.naturalPregnancyCheckEwes = naturalPregnancyCheckEwes; + } + + public Long getNaturalPregnancyCheckEwes() + { + return naturalPregnancyCheckEwes; + } + public void setNaturalConceptionRate(BigDecimal naturalConceptionRate) + { + this.naturalConceptionRate = naturalConceptionRate; + } + + public BigDecimal getNaturalConceptionRate() + { + return naturalConceptionRate; + } + public void setArtificialPregnancyCheckEwes(Long artificialPregnancyCheckEwes) + { + this.artificialPregnancyCheckEwes = artificialPregnancyCheckEwes; + } + + public Long getArtificialPregnancyCheckEwes() + { + return artificialPregnancyCheckEwes; + } + public void setArtificialConceptionRate(BigDecimal artificialConceptionRate) + { + this.artificialConceptionRate = artificialConceptionRate; + } + + public BigDecimal getArtificialConceptionRate() + { + return artificialConceptionRate; + } + public void setRamMotherMilkVolume(BigDecimal ramMotherMilkVolume) + { + this.ramMotherMilkVolume = ramMotherMilkVolume; + } + + public BigDecimal getRamMotherMilkVolume() + { + return ramMotherMilkVolume; + } + public void setMilkProductionEbv(BigDecimal milkProductionEbv) + { + this.milkProductionEbv = milkProductionEbv; + } + + public BigDecimal getMilkProductionEbv() + { + return milkProductionEbv; + } + public void setAccuracy(BigDecimal accuracy) + { + this.accuracy = accuracy; + } + + public BigDecimal getAccuracy() + { + return accuracy; + } + public void setInformationCount(Long informationCount) + { + this.informationCount = informationCount; + } + + public Long getInformationCount() + { + return informationCount; + } + public void setIsPaternityTested(Long isPaternityTested) + { + this.isPaternityTested = isPaternityTested; + } + + public Long getIsPaternityTested() + { + return isPaternityTested; + } + public void setIsDelete(Long isDelete) + { + this.isDelete = isDelete; + } + + public Long getIsDelete() + { + return isDelete; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("ordinaryEarNumber", getOrdinaryEarNumber()) + .append("ranchId", getRanchId()) + .append("ranchName", getRanchName()) + .append("sheepfoldId", getSheepfoldId()) + .append("sheepfoldName", getSheepfoldName()) + .append("electronicTags", getElectronicTags()) + .append("varietyId", getVarietyId()) + .append("variety", getVariety()) + .append("sheepCategory", getSheepCategory()) + .append("currentStatus", getCurrentStatus()) + .append("birthday", getBirthday()) + .append("dynamicInfo", getDynamicInfo()) + .append("monthAge", getMonthAge()) + .append("birthWeight", getBirthWeight()) + .append("weaningDate", getWeaningDate()) + .append("weaningDayAge", getWeaningDayAge()) + .append("weaningWeight", getWeaningWeight()) + .append("weaningDailyGain", getWeaningDailyGain()) + .append("postWeaningDailyGain", getPostWeaningDailyGain()) + .append("currentWeight", getCurrentWeight()) + .append("currentWeightDate", getCurrentWeightDate()) + .append("activityLevel", getActivityLevel()) + .append("sexualStatus", getSexualStatus()) + .append("scrotumCircumference", getScrotumCircumference()) + .append("spermCollectionTime", getSpermCollectionTime()) + .append("spermVolume", getSpermVolume()) + .append("spermVitality", getSpermVitality()) + .append("spermDensity", getSpermDensity()) + .append("spermQuality", getSpermQuality()) + .append("breedingStatus", getBreedingStatus()) + .append("lastPlanTime", getLastPlanTime()) + .append("currentPlanTime", getCurrentPlanTime()) + .append("remark", getRemark()) + .append("proteinRateEbv", getProteinRateEbv()) + .append("milkFatRateEbv", getMilkFatRateEbv()) + .append("scsEbv", getScsEbv()) + .append("growthPerformanceEbv", getGrowthPerformanceEbv()) + .append("resistanceEbv", getResistanceEbv()) + .append("reproductionPerformanceEbv", getReproductionPerformanceEbv()) + .append("bodyTypeEbv", getBodyTypeEbv()) + .append("comprehensiveBreedingValue", getComprehensiveBreedingValue()) + .append("fatherNumber", getFatherNumber()) + .append("motherNumber", getMotherNumber()) + .append("grandfatherNumber", getGrandfatherNumber()) + .append("grandmotherNumber", getGrandmotherNumber()) + .append("maternalGrandfatherNumber", getMaternalGrandfatherNumber()) + .append("maternalGrandmotherNumber", getMaternalGrandmotherNumber()) + .append("isCoreFlock", getIsCoreFlock()) + .append("isBreedingUse", getIsBreedingUse()) + .append("pregnancyCheck", getPregnancyCheck()) + .append("totalMatedEwes", getTotalMatedEwes()) + .append("naturalPregnancyCheckEwes", getNaturalPregnancyCheckEwes()) + .append("naturalConceptionRate", getNaturalConceptionRate()) + .append("artificialPregnancyCheckEwes", getArtificialPregnancyCheckEwes()) + .append("artificialConceptionRate", getArtificialConceptionRate()) + .append("ramMotherMilkVolume", getRamMotherMilkVolume()) + .append("milkProductionEbv", getMilkProductionEbv()) + .append("accuracy", getAccuracy()) + .append("informationCount", getInformationCount()) + .append("isPaternityTested", getIsPaternityTested()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("isDelete", getIsDelete()) + .toString(); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..ef3c938 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaRanch.java @@ -0,0 +1,31 @@ +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; + +/** + * 牧场管理对象 da_ranch + * + * @author ruoyi + * @date 2025-07-22 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class DaRanch extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 牧场名称 */ + private String ranch; + + +} 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 new file mode 100644 index 0000000..0216feb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/DaSheepfold.java @@ -0,0 +1,57 @@ +package com.zhyc.module.base.domain; + +import com.zhyc.common.annotation.Excel; +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 + * + * @author wyt + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class DaSheepfold extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 羊舍id */ + @Excel(name = "羊舍id") + private Long id; + + /** 牧场 */ + @Excel(name = "牧场") + private Long ranchId; + + /** 羊舍名称 */ + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 羊舍类型id */ + @Excel(name = "羊舍类型id") + private Long sheepfoldTypeId; + + /** 羊舍编号 */ + @Excel(name = "羊舍编号") + private String sheepfoldNo; + + /** 排号 */ + @Excel(name = "排号") + private String rowNo; + + /** 栏数 */ + @Excel(name = "栏数") + private String columns; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + +} 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 new file mode 100644 index 0000000..acefce9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java @@ -0,0 +1,273 @@ +package com.zhyc.module.base.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zhyc.common.annotation.Excel; +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; + +/** + * 羊只档案对象 sheep_file + * + * @author wyt + * @date 2025-07-13 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SheepFile extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 羊只id */ + private Long id; + + /** 管理耳号 */ + @Excel(name = "管理耳号") + private String bsManageTags; + + /** 牧场id */ + @Excel(name = "牧场id") + private Long ranchId; + + /** 牧场名称 */ + @Excel(name = "牧场名称") + private String drRanch; + + /** 羊舍id */ + @Excel(name = "羊舍id") + private Long sheepfoldId; + + /** 羊舍名称 */ + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + /** 品种id */ + @Excel(name = "品种id") + private Long varietyId; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 家系 */ + @Excel(name = "家系") + private String family; + + /** 羊只类型 */ + @Excel(name = "羊只类型") + private String name; + + /** 性别 */ + @Excel(name = "性别") + private Long gender; + + /** 出生日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 日龄 */ + @Excel(name = "日龄") + private Long dayAge; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 出生体重 */ + @Excel(name = "出生体重") + private Long birthWeight; + + /** 断奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date weaningDate; + + /** 羊只状态 */ + @Excel(name = "羊只状态") + private Long statusId; + + /** 断奶体重 */ + @Excel(name = "断奶体重") + private Long weaningWeight; + + /** 当前体重 */ + @Excel(name = "当前体重") + private Long currentWeight; + + /** 繁育状态id */ + @Excel(name = "繁育状态id") + private Long breedStatusId; + + /** 繁殖状态 */ + @Excel(name = "繁殖状态") + private String breed; + + /** 父号id */ + @Excel(name = "父号id") + private Long bsFatherId; + + /** 父亲管理耳号 */ + @Excel(name = "父亲管理耳号") + private String fatherManageTags; + + /** 母号id */ + @Excel(name = "母号id") + private Long bsMotherId; + + /** 母亲管理耳号 */ + @Excel(name = "母亲管理耳号") + private String motherManageTags; + + /** 受体id */ + @Excel(name = "受体id") + private Long receptorId; + + /** 受体管理耳号 */ + @Excel(name = "受体管理耳号") + private String receptorManageTags; + + /** 祖父号id */ + @Excel(name = "祖父号id") + private Long fatherFatherId; + + /** 祖父管理耳号 */ + @Excel(name = "祖父管理耳号") + private String grandfatherManageTags; + + /** 祖母号id */ + @Excel(name = "祖母号id") + private Long fatherMotherId; + + /** 祖母管理耳号 */ + @Excel(name = "祖母管理耳号") + private String grandmotherManageTags; + + /** 外祖父号id */ + @Excel(name = "外祖父号id") + private Long fatherId; + + /** 外祖父管理耳号 */ + @Excel(name = "外祖父管理耳号") + private String maternalGrandfatherManageTags; + + /** 外祖母号id */ + @Excel(name = "外祖母号id") + private Long motherId; + + /** 外祖母管理耳号 */ + @Excel(name = "外祖母管理耳号") + private String maternalGrandmotherManageTags; + + /** 配种日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date matingDate; + + /** 配种类型 */ + @Excel(name = "配种类型") + private Long matingTypeId; + + /** 孕检日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date pregDate; + + /** 产羔日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "产羔日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date lambingDate; + + /** 产羔时怀孕天数 */ + @Excel(name = "产羔时怀孕天数") + private Long lambingDay; + + /** 配后天数 */ + @Excel(name = "配后天数") + private Long matingDay; + + /** 怀孕天数 */ + @Excel(name = "怀孕天数") + private Long gestationDay; + + /** 预产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expectedDate; + + /** 产后天数 */ + @Excel(name = "产后天数") + private Long postLambingDay; + + /** 泌乳天数 */ + @Excel(name = "泌乳天数") + private Long lactationDay; + + /** 空怀天数 */ + @Excel(name = "空怀天数") + private Long anestrousDay; + + /** 配种次数 */ + @Excel(name = "配种次数") + private Long matingCounts; + + /** 累计配种次数 */ + @Excel(name = "累计配种次数") + private Long matingTotal; + + /** 累计流产次数 */ + @Excel(name = "累计流产次数") + private Long miscarriageCounts; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 是否性控 */ + @Excel(name = "是否性控") + private Long controlled; + + /** 体况评分 */ + @Excel(name = "体况评分") + private Long body; + + /** 乳房评分 */ + @Excel(name = "乳房评分") + private Long breast; + + /** 入群来源 */ + @Excel(name = "入群来源") + private String source; + + /** 入群日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "入群日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date sourceDate; + + /** 来源牧场id */ + @Excel(name = "来源牧场id") + private Long sourceRanchId; + + /** 来源牧场 */ + @Excel(name = "来源牧场") + private String sourceRanch; + + /** 是否删除 */ + private Long isDelete; + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java new file mode 100644 index 0000000..52abe57 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMapper.java @@ -0,0 +1,67 @@ +package com.zhyc.module.base.mapper; + +import com.zhyc.module.base.domain.BasSheepGroup; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 分组管理Mapper接口 + * + * @author wyt + * @date 2025-07-14 + */ +@Mapper +public interface BasSheepGroupMapper +{ + /** + * 查询分组管理 + * + * @param groupId 分组管理主键 + * @return 分组管理 + */ + public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId); + + /** + * 查询分组管理列表 + * + * @param basSheepGroup 分组管理 + * @return 分组管理集合 + */ + public List selectBasSheepGroupList(BasSheepGroup basSheepGroup); + + /** + * 新增分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + public int insertBasSheepGroup(BasSheepGroup basSheepGroup); + + /** + * 修改分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + public int updateBasSheepGroup(BasSheepGroup basSheepGroup); + + /** + * 删除分组管理 + * + * @param groupId 分组管理主键 + * @return 结果 + */ + public int deleteBasSheepGroupByGroupId(Long groupId); + + /** + * 批量删除分组管理 + * + * @param groupIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBasSheepGroupByGroupIds(Long[] groupIds); + + List selectLeafNodes(); + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java new file mode 100644 index 0000000..2e4f1cc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepGroupMappingMapper.java @@ -0,0 +1,88 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; +import java.util.Map; + +import com.zhyc.module.base.domain.BasSheepGroupMapping; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +/** + * 羊只分组关联Mapper接口 + * + * @author wyt + * @date 2025-07-16 + */ +@Mapper +public interface BasSheepGroupMappingMapper +{ + /** + * 查询羊只分组关联 + * + * @param id 羊只分组关联主键 + * @return 羊只分组关联 + */ + public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id); + + /** + * 查询羊只分组关联列表 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 羊只分组关联集合 + */ + public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping); + + + /** + * 联表查询羊只分组关联列表(支持耳号列表) + */ + List> selectBasSheepGroupMappingList( + @Param("sheepId") Long sheepId, + @Param("groupId") Long groupId, + @Param("bsManageTags") List bsManageTags + ); + + + + + + /** + * 新增羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ + public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); + + /** + * 修改羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ + public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); + + /** + * 删除羊只分组关联 + * + * @param id 羊只分组关联主键 + * @return 结果 + */ + public int deleteBasSheepGroupMappingById(Long id); + + /** + * 批量删除羊只分组关联 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBasSheepGroupMappingByIds(Long[] ids); + + + List> selectSheepIdsByEarTags(@Param("earTags") List earTags); + + int batchInsert(@Param("list") List list); + + + List selectListByGroupId(@Param("groupId") Long groupId); + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java new file mode 100644 index 0000000..4baaf89 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepMapper.java @@ -0,0 +1,83 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheep; +import org.apache.ibatis.annotations.Param; + +/** + * 羊只基本信息Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface BasSheepMapper +{ + /** + * 查询羊只基本信息 + * + * @param id 羊只基本信息主键 + * @return 羊只基本信息 + */ + public BasSheep selectBasSheepById(Long id); + + /** + * 查询羊只基本信息列表 + * + * @param basSheep 羊只基本信息 + * @return 羊只基本信息集合 + */ + public List selectBasSheepList(BasSheep basSheep); + + /** + * 新增羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + public int insertBasSheep(BasSheep basSheep); + + /** + * 修改羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + public int updateBasSheep(BasSheep basSheep); + + /** + * 删除羊只基本信息 + * + * @param id 羊只基本信息主键 + * @return 结果 + */ + public int deleteBasSheepById(Long id); + + /** + * 批量删除羊只基本信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBasSheepByIds(Long[] ids); + + + /** + * 根据管理耳号查询 + */ + BasSheep selectBasSheepByManageTags(String manageTags); + + + List selectBasSheepBySheepfold(String id); + +// 根据牧场ID获取羊只列表 + List getSheepByRanchId(Long ranchId); + + List selectBasSheepListByIds(List ids); + + //用于校验改耳号部分新管理/电子耳号 + int existsByManageTag(@Param("tag") String tag); + int existsByElectronicTag(@Param("tag") String tag); + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java new file mode 100644 index 0000000..4afe2e9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepTypeMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; +import com.zhyc.module.base.domain.BasSheepType; + +/** + * 羊只类型Mapper接口 + * + * @author ruoyi + * @date 2025-07-22 + */ +public interface BasSheepTypeMapper +{ + /** + * 查询羊只类型 + * + * @param id 羊只类型主键 + * @return 羊只类型 + */ + public BasSheepType selectBasSheepTypeById(Integer id); + + /** + * 查询羊只类型列表 + * + * @param basSheepType 羊只类型 + * @return 羊只类型集合 + */ + public List selectBasSheepTypeList(BasSheepType basSheepType); + + /** + * 新增羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + public int insertBasSheepType(BasSheepType basSheepType); + + /** + * 修改羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + public int updateBasSheepType(BasSheepType basSheepType); + + /** + * 删除羊只类型 + * + * @param id 羊只类型主键 + * @return 结果 + */ + public int deleteBasSheepTypeById(Integer id); + + /** + * 批量删除羊只类型 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBasSheepTypeByIds(Integer[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java new file mode 100644 index 0000000..0802830 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BasSheepVarietyMapper.java @@ -0,0 +1,75 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheepVariety; +import org.apache.ibatis.annotations.Mapper; + +/** + * 羊只品种Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface BasSheepVarietyMapper +{ + /** + * 查询羊只品种 + * + * @param id 羊只品种主键 + * @return 羊只品种 + */ + public BasSheepVariety selectBasSheepVarietyById(Long id); + + /** + * 查询羊只品种列表 + * + * @param basSheepVariety 羊只品种 + * @return 羊只品种集合 + */ + public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety); + + /** + * 新增羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + public int insertBasSheepVariety(BasSheepVariety basSheepVariety); + + /** + * 修改羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + public int updateBasSheepVariety(BasSheepVariety basSheepVariety); + + /** + * 删除羊只品种 + * + * @param id 羊只品种主键 + * @return 结果 + */ + public int deleteBasSheepVarietyById(Long id); + + /** + * 批量删除羊只品种 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBasSheepVarietyByIds(Long[] ids); + + + /** + * 根据品种名称查询品种 ID 用于导入羊只 + * + * @param varietyName 品种名称 + * @return 品种 ID + */ + Long selectIdByName(String varietyName); + + BasSheepVariety selectByVarietyName(String varietyName); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java new file mode 100644 index 0000000..bb6eaa2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/BreedRamFileMapper.java @@ -0,0 +1,109 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; +import com.zhyc.module.base.domain.BreedRamFile; + +/** + * 种公羊档案Mapper接口 + * + * @author zhyc + * @date 2025-07-29 + */ +public interface BreedRamFileMapper +{ + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileById(Long id); + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int insertBreedRamFile(BreedRamFile breedRamFile); + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int updateBreedRamFile(BreedRamFile breedRamFile); + + /** + * 删除种公羊档案 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + public int deleteBreedRamFileById(Long id); + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBreedRamFileByIds(Long[] ids); + + /** + * 根据普通耳号查询种公羊档案 + * + * @param ordinaryEarNumber 普通耳号 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileByOrdinaryEarNumber(String ordinaryEarNumber); + + /** + * 根据电子耳号查询种公羊档案 + * + * @param electronicTags 电子耳号 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileByElectronicTags(String electronicTags); + + /** + * 根据牧场ID查询种公羊档案列表 + * + * @param ranchId 牧场ID + * @return 种公羊档案集合 + */ + public List selectBreedRamFileListByRanchId(Long ranchId); + + /** + * 根据羊舍ID查询种公羊档案列表 + * + * @param sheepfoldId 羊舍ID + * @return 种公羊档案集合 + */ + public List selectBreedRamFileListBySheepfoldId(Long sheepfoldId); + + /** + * 查询核心羊群种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectCoreFlockBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 查询种用种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedingUseBreedRamFileList(BreedRamFile breedRamFile); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java new file mode 100644 index 0000000..5e3c949 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaRanchMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.base.mapper; + +import java.util.List; +import com.zhyc.module.base.domain.DaRanch; + +/** + * 牧场管理Mapper接口 + * + * @author ruoyi + * @date 2025-07-22 + */ +public interface DaRanchMapper +{ + /** + * 查询牧场管理 + * + * @param id 牧场管理主键 + * @return 牧场管理 + */ + public DaRanch selectDaRanchById(Long id); + + /** + * 查询牧场管理列表 + * + * @param daRanch 牧场管理 + * @return 牧场管理集合 + */ + public List selectDaRanchList(DaRanch daRanch); + + /** + * 新增牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + public int insertDaRanch(DaRanch daRanch); + + /** + * 修改牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + public int updateDaRanch(DaRanch daRanch); + + /** + * 删除牧场管理 + * + * @param id 牧场管理主键 + * @return 结果 + */ + public int deleteDaRanchById(Long id); + + /** + * 批量删除牧场管理 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDaRanchByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java new file mode 100644 index 0000000..9b690ce --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/DaSheepfoldMapper.java @@ -0,0 +1,67 @@ +package com.zhyc.module.base.mapper; + +import com.zhyc.module.base.domain.DaSheepfold; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 羊舍管理Mapper接口 + * + * @author wyt + * @date 2025-07-11 + */ +@Mapper +public interface DaSheepfoldMapper +{ + /** + * 查询羊舍管理 + * + * @param id 羊舍管理主键 + * @return 羊舍管理 + */ + public DaSheepfold selectDaSheepfoldById(Long id); + + /** + * 查询羊舍管理列表 + * + * @param daSheepfold 羊舍管理 + * @return 羊舍管理集合 + */ + public List selectDaSheepfoldList(DaSheepfold daSheepfold); + + /** + * 新增羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + public int insertDaSheepfold(DaSheepfold daSheepfold); + + /** + * 修改羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + public int updateDaSheepfold(DaSheepfold daSheepfold); + + /** + * 删除羊舍管理 + * + * @param id 羊舍管理主键 + * @return 结果 + */ + public int deleteDaSheepfoldById(Long id); + + /** + * 批量删除羊舍管理 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDaSheepfoldByIds(Long[] ids); + + public int selectCount(DaSheepfold daSheepfold); + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java new file mode 100644 index 0000000..9d4fc5a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.base.mapper; + +import com.zhyc.module.base.domain.SheepFile; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * 羊只档案Mapper接口 + * + * @author wyt + * @date 2025-07-13 + */ +@Mapper +public interface SheepFileMapper +{ + /** + * 查询羊只档案 + * + * @param id 羊只档案主键 + * @return 羊只档案 + */ + public SheepFile selectSheepFileById(Long id); + + /** + * 查询羊只档案列表 + * + * @param sheepFile 羊只档案 + * @return 羊只档案集合 + */ + public List selectSheepFileList(SheepFile sheepFile); + + + /** + * 根据管理耳号查询 + * + * @param tags 管理耳号 + * @return 结果 + */ + SheepFile selectSheepByManageTags(String tags); + + + // 在群羊只总数 + Long countInGroup(); + + + // 羊只类别分布(按 name 分组) + List> countBySheepType(); + + // 繁育状态分布(按 breed 分组) + List> countByBreedStatus(); + + // 品种分布(按 variety 分组) + List> countByVariety(); + + // 泌乳羊胎次分布(name = '泌乳羊' 时按 parity 分组) + List> countParityOfLactation(); + + + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java new file mode 100644 index 0000000..d6b5c7a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupMappingService.java @@ -0,0 +1,73 @@ +package com.zhyc.module.base.service; + +import java.util.List; +import java.util.Map; + +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.module.base.domain.BasSheepGroupMapping; + +/** + * 羊只分组关联Service接口 + * + * @author wyt + * @date 2025-07-16 + */ +public interface IBasSheepGroupMappingService +{ + /** + * 查询羊只分组关联 + * + * @param id 羊只分组关联主键 + * @return 羊只分组关联 + */ + public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id); + + /** + * 查询羊只分组关联列表 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 羊只分组关联集合 + */ + public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping); + + + /** + * 联表查询羊只分组关联列表(支持耳号列表) + */ + List> selectBasSheepGroupMappingList(Long sheepId, Long groupId, List bsManageTags); + + + /** + * 新增羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ + public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); + + /** + * 修改羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ + public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping); + + /** + * 批量删除羊只分组关联 + * + * @param ids 需要删除的羊只分组关联主键集合 + * @return 结果 + */ + public int deleteBasSheepGroupMappingByIds(Long[] ids); + + /** + * 删除羊只分组关联信息 + * + * @param id 羊只分组关联主键 + * @return 结果 + */ + public int deleteBasSheepGroupMappingById(Long id); + + public AjaxResult addByEarTags(List earTags, Long groupId); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java new file mode 100644 index 0000000..330d5fc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepGroupService.java @@ -0,0 +1,64 @@ +package com.zhyc.module.base.service; + +import com.zhyc.module.base.domain.BasSheepGroup; + +import java.util.List; + +/** + * 分组管理Service接口 + * + * @author wyt + * @date 2025-07-14 + */ +public interface IBasSheepGroupService +{ + /** + * 查询分组管理 + * + * @param groupId 分组管理主键 + * @return 分组管理 + */ + public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId); + + /** + * 查询分组管理列表 + * + * @param basSheepGroup 分组管理 + * @return 分组管理集合 + */ + public List selectBasSheepGroupList(BasSheepGroup basSheepGroup); + + /** + * 新增分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + public int insertBasSheepGroup(BasSheepGroup basSheepGroup); + + /** + * 修改分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + public int updateBasSheepGroup(BasSheepGroup basSheepGroup); + + /** + * 批量删除分组管理 + * + * @param groupIds 需要删除的分组管理主键集合 + * @return 结果 + */ + public int deleteBasSheepGroupByGroupIds(Long[] groupIds); + + /** + * 删除分组管理信息 + * + * @param groupId 分组管理主键 + * @return 结果 + */ + public int deleteBasSheepGroupByGroupId(Long groupId); + + List selectLeafNodes(); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java new file mode 100644 index 0000000..18c7351 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepService.java @@ -0,0 +1,77 @@ +package com.zhyc.module.base.service; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheep; + +/** + * 羊只基本信息Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IBasSheepService +{ + /** + * 查询羊只基本信息 + * + * @param id 羊只基本信息主键 + * @return 羊只基本信息 + */ + public BasSheep selectBasSheepById(Long id); + + /** + * 查询羊只基本信息列表 + * + * @param basSheep 羊只基本信息 + * @return 羊只基本信息集合 + */ + public List selectBasSheepList(BasSheep basSheep); + + /** + * 新增羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + public int insertBasSheep(BasSheep basSheep); + + /** + * 修改羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + public int updateBasSheep(BasSheep basSheep); + + /** + * 批量删除羊只基本信息 + * + * @param ids 需要删除的羊只基本信息主键集合 + * @return 结果 + */ + public int deleteBasSheepByIds(Long[] ids); + + /** + * 删除羊只基本信息信息 + * + * @param id 羊只基本信息主键 + * @return 结果 + */ + public int deleteBasSheepById(Long id); + + /** + * 根据羊只耳号获取羊只 + */ + BasSheep selectBasSheepByManageTags(String trim); + + /** + * 根据牧场ID获取羊只列表 + */ + List getSheepByRanchId(Long ranchId); + + List selectBasSheepListByIds(List ids); + + //校验新管理/电子耳号 + boolean existsByTag(String tag, Integer earType); +} 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 new file mode 100644 index 0000000..5f9721d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepTypeService.java @@ -0,0 +1,65 @@ +package com.zhyc.module.base.service; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.domain.BasSheepType; + +/** + * 羊只类型Service接口 + * + * @author ruoyi + * @date 2025-07-22 + */ +public interface IBasSheepTypeService +{ + /** + * 查询羊只类型 + * + * @param id 羊只类型主键 + * @return 羊只类型 + */ + public BasSheepType selectBasSheepTypeById(Integer id); + + /** + * 查询羊只类型列表 + * + * @param basSheepType 羊只类型 + * @return 羊只类型集合 + */ + public List selectBasSheepTypeList(BasSheepType basSheepType); + + /** + * 新增羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + public int insertBasSheepType(BasSheepType basSheepType); + + /** + * 修改羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + public int updateBasSheepType(BasSheepType basSheepType); + + /** + * 批量删除羊只类型 + * + * @param ids 需要删除的羊只类型主键集合 + * @return 结果 + */ + public int deleteBasSheepTypeByIds(Integer[] ids); + + /** + * 删除羊只类型信息 + * + * @param id 羊只类型主键 + * @return 结果 + */ + public int deleteBasSheepTypeById(Integer id); + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java new file mode 100644 index 0000000..04369a6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBasSheepVarietyService.java @@ -0,0 +1,67 @@ +package com.zhyc.module.base.service; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheepVariety; + +/** + * 羊只品种Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IBasSheepVarietyService +{ + /** + * 查询羊只品种 + * + * @param id 羊只品种主键 + * @return 羊只品种 + */ + public BasSheepVariety selectBasSheepVarietyById(Long id); + + /** + * 查询羊只品种列表 + * + * @param basSheepVariety 羊只品种 + * @return 羊只品种集合 + */ + public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety); + + /** + * 新增羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + public int insertBasSheepVariety(BasSheepVariety basSheepVariety); + + /** + * 修改羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + public int updateBasSheepVariety(BasSheepVariety basSheepVariety); + + /** + * 批量删除羊只品种 + * + * @param ids 需要删除的羊只品种主键集合 + * @return 结果 + */ + public int deleteBasSheepVarietyByIds(Long[] ids); + + /** + * 删除羊只品种信息 + * + * @param id 羊只品种主键 + * @return 结果 + */ + public int deleteBasSheepVarietyById(Long id); + + + // 根据品种名称查询品种 + public BasSheepVariety selectByVarietyName(String varietyName); + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java new file mode 100644 index 0000000..847f3b0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IBreedRamFileService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.base.service; + +import java.util.List; +import com.zhyc.module.base.domain.BreedRamFile; + +/** + * 种公羊档案Service接口 + * + * @author zhyc + * @date 2025-07-29 + */ +public interface IBreedRamFileService +{ + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + public BreedRamFile selectBreedRamFileById(Long id); + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案集合 + */ + public List selectBreedRamFileList(BreedRamFile breedRamFile); + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int insertBreedRamFile(BreedRamFile breedRamFile); + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + public int updateBreedRamFile(BreedRamFile breedRamFile); + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的种公羊档案主键集合 + * @return 结果 + */ + public int deleteBreedRamFileByIds(Long[] ids); + + /** + * 删除种公羊档案信息 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + public int deleteBreedRamFileById(Long id); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java new file mode 100644 index 0000000..5428460 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaRanchService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.base.service; + +import java.util.List; +import com.zhyc.module.base.domain.DaRanch; + +/** + * 牧场管理Service接口 + * + * @author ruoyi + * @date 2025-07-22 + */ +public interface IDaRanchService +{ + /** + * 查询牧场管理 + * + * @param id 牧场管理主键 + * @return 牧场管理 + */ + public DaRanch selectDaRanchById(Long id); + + /** + * 查询牧场管理列表 + * + * @param daRanch 牧场管理 + * @return 牧场管理集合 + */ + public List selectDaRanchList(DaRanch daRanch); + + /** + * 新增牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + public int insertDaRanch(DaRanch daRanch); + + /** + * 修改牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + public int updateDaRanch(DaRanch daRanch); + + /** + * 批量删除牧场管理 + * + * @param ids 需要删除的牧场管理主键集合 + * @return 结果 + */ + public int deleteDaRanchByIds(Long[] ids); + + /** + * 删除牧场管理信息 + * + * @param id 牧场管理主键 + * @return 结果 + */ + public int deleteDaRanchById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java new file mode 100644 index 0000000..26bac8f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/IDaSheepfoldService.java @@ -0,0 +1,76 @@ +package com.zhyc.module.base.service; + +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.domain.DaSheepfold; + +import java.util.List; + +/** + * 羊舍管理Service接口 + * + * @author wyt + * @date 2025-07-11 + */ +public interface IDaSheepfoldService +{ + /** + * 查询羊舍管理 + * + * @param id 羊舍管理主键 + * @return 羊舍管理 + */ + public DaSheepfold selectDaSheepfoldById(Long id); + + /** + * 查询羊舍管理列表 + * + * @param daSheepfold 羊舍管理 + * @return 羊舍管理集合 + */ + public List selectDaSheepfoldList(DaSheepfold daSheepfold); + + /** + * 新增羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + public int insertDaSheepfold(DaSheepfold daSheepfold); + + /** + * 修改羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + public int updateDaSheepfold(DaSheepfold daSheepfold); + + /** + * 批量删除羊舍管理 + * + * @param ids 需要删除的羊舍管理主键集合 + * @return 结果 + */ + public int deleteDaSheepfoldByIds(Long[] ids); + + /** + * 删除羊舍管理信息 + * + * @param id 羊舍管理主键 + * @return 结果 + */ + public int deleteDaSheepfoldById(Long id); + + /** + * 检查羊舍编号是否已存在 + * + * @param ranchId 羊舍所属牧场ID + * @param sheepfoldTypeId 羊舍类型ID + * @param sheepfoldNo 羊舍编号 + * @return 是否已存在 + */ + boolean checkSheepfoldNoExist(Long ranchId, Long sheepfoldTypeId, String sheepfoldNo); + +// 根据羊舍id获取该羊舍的羊 + List sheepListById(String id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java new file mode 100644 index 0000000..8280603 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/ISheepFileService.java @@ -0,0 +1,41 @@ +package com.zhyc.module.base.service; + +import com.zhyc.module.base.domain.SheepFile; + +import java.util.List; +import java.util.Map; + +/** + * 羊只档案Service接口 + * + * @author wyt + * @date 2025-07-13 + */ +public interface ISheepFileService +{ + /** + * 查询羊只档案 + * + * @param id 羊只档案主键 + * @return 羊只档案 + */ + public SheepFile selectSheepFileById(Long id); + + /** + * 查询羊只档案列表 + * + * @param sheepFile 羊只档案 + * @return 羊只档案集合 + */ + public List selectSheepFileList(SheepFile sheepFile); + + + SheepFile selectBasSheepByManageTags(String trim); + + Long countInGroup(); + + List> countBySheepType(); + List> countByBreedStatus(); + List> countByVariety(); + List> countParityOfLactation(); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java new file mode 100644 index 0000000..74418da --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupMappingServiceImpl.java @@ -0,0 +1,189 @@ +package com.zhyc.module.base.service.impl; + +import java.util.*; +import java.util.stream.Collectors; + +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.module.base.domain.BasSheepGroupMapping; +import com.zhyc.module.base.mapper.BasSheepGroupMappingMapper; +import com.zhyc.module.base.service.IBasSheepGroupMappingService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 羊只分组关联Service业务层处理 + * + * @author wyt + * @date 2025-07-16 + */ +@Service +public class BasSheepGroupMappingServiceImpl implements IBasSheepGroupMappingService +{ + @Autowired + private BasSheepGroupMappingMapper basSheepGroupMappingMapper; + + /** + * 查询羊只分组关联 + * + * @param id 羊只分组关联主键 + * @return 羊只分组关联 + */ + @Override + public BasSheepGroupMapping selectBasSheepGroupMappingById(Long id) + { + return basSheepGroupMappingMapper.selectBasSheepGroupMappingById(id); + } + + /** + * 查询羊只分组关联列表 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 羊只分组关联 + */ + @Override + public List selectBasSheepGroupMappingList(BasSheepGroupMapping basSheepGroupMapping) + { + return basSheepGroupMappingMapper.selectBasSheepGroupMappingList(basSheepGroupMapping); + } + + + @Override + public List> selectBasSheepGroupMappingList( + Long sheepId, Long groupId, List bsManageTags) { + return basSheepGroupMappingMapper.selectBasSheepGroupMappingList(sheepId, groupId, bsManageTags); + } + + /** + * 新增羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ + @Override + public int insertBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) + { + return basSheepGroupMappingMapper.insertBasSheepGroupMapping(basSheepGroupMapping); + } + + /** + * 修改羊只分组关联 + * + * @param basSheepGroupMapping 羊只分组关联 + * @return 结果 + */ +// @Override +// public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) +// { +// return basSheepGroupMappingMapper.updateBasSheepGroupMapping(basSheepGroupMapping); +// } + @Override + public int updateBasSheepGroupMapping(BasSheepGroupMapping basSheepGroupMapping) { + + Long SheepId = basSheepGroupMapping.getSheepId(); + Long GroupId = basSheepGroupMapping.getGroupId(); + existsInGroup(SheepId,GroupId); + + if (existsInGroup(basSheepGroupMapping.getSheepId(), basSheepGroupMapping.getGroupId())) { + throw new RuntimeException("该羊已在此分组,无需修改"); + } + return basSheepGroupMappingMapper.updateBasSheepGroupMapping(basSheepGroupMapping); + } + + /** + * 批量删除羊只分组关联 + * + * @param ids 需要删除的羊只分组关联主键 + * @return 结果 + */ + @Override + public int deleteBasSheepGroupMappingByIds(Long[] ids) + { + return basSheepGroupMappingMapper.deleteBasSheepGroupMappingByIds(ids); + } + + /** + * 删除羊只分组关联信息 + * + * @param id 羊只分组关联主键 + * @return 结果 + */ + @Override + public int deleteBasSheepGroupMappingById(Long id) + { + return basSheepGroupMappingMapper.deleteBasSheepGroupMappingById(id); + } + + + + @Override + public AjaxResult addByEarTags(List earTags, Long groupId) { + // 1. 参数判空 + if (earTags == null || earTags.isEmpty()) { + return AjaxResult.error("耳号列表不能为空"); + } + + // 2. 根据耳号查询羊只(manage_tags -> id) + List> sheepList = basSheepGroupMappingMapper.selectSheepIdsByEarTags(earTags); + Map tagToId = new HashMap<>(); + for (Map s : sheepList) { + tagToId.put((String) s.get("manage_tags"), ((Number) s.get("id")).longValue()); + } + + // 3. 不存在的耳号 + List missing = new ArrayList<>(); + for (String tag : earTags) { + if (!tagToId.containsKey(tag)) { + missing.add(tag); + } + } + if (!missing.isEmpty()) { + Map res = new HashMap<>(); + res.put("success", false); + res.put("missing", missing); + return AjaxResult.success(res); + } + + // 4. 查询该分组下已存在的羊只ID + List existingRows = basSheepGroupMappingMapper.selectListByGroupId(groupId); + System.out.println("🔍 existingRows 类型 = " + existingRows.getClass()); + + Set existingIds = existingRows.stream() + .map(BasSheepGroupMapping::getSheepId) + .collect(Collectors.toSet()); + + System.out.println("🔍 existingIds = " + existingIds); + + // 5. 过滤出未在该分组的羊只 + List toInsert = new ArrayList<>(); + for (Map.Entry e : tagToId.entrySet()) { + Long sheepId = e.getValue(); + if (!existingIds.contains(sheepId)) { + BasSheepGroupMapping m = new BasSheepGroupMapping(); + m.setSheepId(sheepId); + m.setGroupId(groupId); + toInsert.add(m); + } + } + + if (toInsert.isEmpty()) { + return AjaxResult.success("所选羊只已全部在该分组中"); + } + + // 6. 批量插入 + int rows = basSheepGroupMappingMapper.batchInsert(toInsert); + Map res = new HashMap<>(); + res.put("success", true); + res.put("inserted", rows); + return AjaxResult.success(res); + } + + private boolean existsInGroup(Long sheepId, Long groupId) { + BasSheepGroupMapping param = new BasSheepGroupMapping(); + List> list = basSheepGroupMappingMapper + .selectBasSheepGroupMappingList(sheepId, groupId, null); + return !list.isEmpty(); + } + + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java new file mode 100644 index 0000000..3d375b3 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepGroupServiceImpl.java @@ -0,0 +1,123 @@ +package com.zhyc.module.base.service.impl; + +import com.zhyc.common.utils.DateUtils; +import com.zhyc.module.base.domain.BasSheepGroup; +import com.zhyc.module.base.mapper.BasSheepGroupMapper; +import com.zhyc.module.base.service.IBasSheepGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 分组管理Service业务层处理 + * + * @author wyt + * @date 2025-07-14 + */ +@Service +public class BasSheepGroupServiceImpl implements IBasSheepGroupService +{ + @Autowired + private BasSheepGroupMapper basSheepGroupMapper; + + /** + * 查询分组管理 + * + * @param groupId 分组管理主键 + * @return 分组管理 + */ + @Override + public BasSheepGroup selectBasSheepGroupByGroupId(Long groupId) + { + return basSheepGroupMapper.selectBasSheepGroupByGroupId(groupId); + } + + /** + * 查询分组管理列表 + * + * @param basSheepGroup 分组管理 + * @return 分组管理 + */ +// @Override +// public List selectBasSheepGroupList(BasSheepGroup basSheepGroup) +// { +// return basSheepGroupMapper.selectBasSheepGroupList(basSheepGroup); +// } + @Override + public List selectBasSheepGroupList(BasSheepGroup basSheepGroup) { + List groups = basSheepGroupMapper.selectBasSheepGroupList(basSheepGroup); + + // 处理祖先名称显示格式 + groups.forEach(group -> { + if (group.getAncestorNames() != null) { + String formattedNames = group.getAncestorNames().replace(",", " / "); + group.setAncestorNames(formattedNames); + } + }); + + return groups; + } + + /** + * 新增分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + @Override + public int insertBasSheepGroup(BasSheepGroup basSheepGroup) + { + basSheepGroup.setCreateTime(DateUtils.getNowDate()); + return basSheepGroupMapper.insertBasSheepGroup(basSheepGroup); + } + + /** + * 修改分组管理 + * + * @param basSheepGroup 分组管理 + * @return 结果 + */ + @Override + public int updateBasSheepGroup(BasSheepGroup basSheepGroup) + { + basSheepGroup.setUpdateTime(DateUtils.getNowDate()); + return basSheepGroupMapper.updateBasSheepGroup(basSheepGroup); + } + + /** + * 批量删除分组管理 + * + * @param groupIds 需要删除的分组管理主键 + * @return 结果 + */ + @Override + public int deleteBasSheepGroupByGroupIds(Long[] groupIds) + { + return basSheepGroupMapper.deleteBasSheepGroupByGroupIds(groupIds); + } + + /** + * 删除分组管理信息 + * + * @param groupId 分组管理主键 + * @return 结果 + */ + @Override + public int deleteBasSheepGroupByGroupId(Long groupId) + { + return basSheepGroupMapper.deleteBasSheepGroupByGroupId(groupId); + } + + @Override + public List selectLeafNodes() { + List leafNodes = basSheepGroupMapper.selectLeafNodes(); + // 如果 ancestorNames 需要格式化,可以复用已有的逻辑 + leafNodes.forEach(group -> { + if (group.getAncestorNames() != null) { + group.setAncestorNames(group.getAncestorNames().replace(",", " / ")); + } + }); + return leafNodes; + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java new file mode 100644 index 0000000..7135f73 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepServiceImpl.java @@ -0,0 +1,125 @@ +package com.zhyc.module.base.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.mapper.BasSheepMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.base.service.IBasSheepService; + +/** + * 羊只基本信息Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class BasSheepServiceImpl implements IBasSheepService +{ + @Autowired + private BasSheepMapper basSheepMapper; + + /** + * 查询羊只基本信息 + * + * @param id 羊只基本信息主键 + * @return 羊只基本信息 + */ + @Override + public BasSheep selectBasSheepById(Long id) + { + return basSheepMapper.selectBasSheepById(id); + } + + /** + * 查询羊只基本信息列表 + * + * @param basSheep 羊只基本信息 + * @return 羊只基本信息 + */ + @Override + public List selectBasSheepList(BasSheep basSheep) + { + return basSheepMapper.selectBasSheepList(basSheep); + } + + /** + * 新增羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + @Override + public int insertBasSheep(BasSheep basSheep) + { + basSheep.setCreateTime(DateUtils.getNowDate()); + return basSheepMapper.insertBasSheep(basSheep); + } + + /** + * 修改羊只基本信息 + * + * @param basSheep 羊只基本信息 + * @return 结果 + */ + @Override + public int updateBasSheep(BasSheep basSheep) + { + basSheep.setUpdateTime(DateUtils.getNowDate()); + return basSheepMapper.updateBasSheep(basSheep); + } + + /** + * 批量删除羊只基本信息 + * + * @param ids 需要删除的羊只基本信息主键 + * @return 结果 + */ + @Override + public int deleteBasSheepByIds(Long[] ids) + { + return basSheepMapper.deleteBasSheepByIds(ids); + } + + /** + * 删除羊只基本信息信息 + * + * @param id 羊只基本信息主键 + * @return 结果 + */ + @Override + public int deleteBasSheepById(Long id) + { + return basSheepMapper.deleteBasSheepById(id); + } + + + @Override + public BasSheep selectBasSheepByManageTags(String manageTags){ + return basSheepMapper.selectBasSheepByManageTags(manageTags); + } + + @Override + public List getSheepByRanchId(Long ranchId) { + return basSheepMapper.getSheepByRanchId(ranchId); + } + + @Override + public List selectBasSheepListByIds(List ids) { + return basSheepMapper.selectBasSheepListByIds(ids); + } + + //校验新管理/电子耳号 + @Override + public boolean existsByTag(String tag, Integer earType) { + if (earType == 0) { + return basSheepMapper.existsByElectronicTag(tag) > 0; + } else if (earType == 1) { + return basSheepMapper.existsByManageTag(tag) > 0; + } + return false; + } + + +} 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 new file mode 100644 index 0000000..4c1a362 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepTypeServiceImpl.java @@ -0,0 +1,89 @@ +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; +import com.zhyc.module.base.domain.BasSheepType; +import com.zhyc.module.base.service.IBasSheepTypeService; + +/** + * 羊只类型Service业务层处理 + * + * @author ruoyi + * @date 2025-07-22 + */ +@Service +public class BasSheepTypeServiceImpl implements IBasSheepTypeService { + @Autowired + private BasSheepTypeMapper basSheepTypeMapper; + + /** + * 查询羊只类型 + * + * @param id 羊只类型主键 + * @return 羊只类型 + */ + @Override + public BasSheepType selectBasSheepTypeById(Integer id) { + return basSheepTypeMapper.selectBasSheepTypeById(id); + } + + /** + * 查询羊只类型列表 + * + * @param basSheepType 羊只类型 + * @return 羊只类型 + */ + @Override + public List selectBasSheepTypeList(BasSheepType basSheepType) { + return basSheepTypeMapper.selectBasSheepTypeList(basSheepType); + } + + /** + * 新增羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + @Override + public int insertBasSheepType(BasSheepType basSheepType) { + return basSheepTypeMapper.insertBasSheepType(basSheepType); + } + + /** + * 修改羊只类型 + * + * @param basSheepType 羊只类型 + * @return 结果 + */ + @Override + public int updateBasSheepType(BasSheepType basSheepType) { + return basSheepTypeMapper.updateBasSheepType(basSheepType); + } + + /** + * 批量删除羊只类型 + * + * @param ids 需要删除的羊只类型主键 + * @return 结果 + */ + @Override + public int deleteBasSheepTypeByIds(Integer[] ids) { + return basSheepTypeMapper.deleteBasSheepTypeByIds(ids); + } + + /** + * 删除羊只类型信息 + * + * @param id 羊只类型主键 + * @return 结果 + */ + @Override + public int deleteBasSheepTypeById(Integer id) { + return basSheepTypeMapper.deleteBasSheepTypeById(id); + } + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java new file mode 100644 index 0000000..7a1285f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BasSheepVarietyServiceImpl.java @@ -0,0 +1,99 @@ +package com.zhyc.module.base.service.impl; + +import java.util.List; + +import com.zhyc.module.base.domain.BasSheepVariety; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.base.mapper.BasSheepVarietyMapper; +import com.zhyc.module.base.service.IBasSheepVarietyService; + +/** + * 羊只品种Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class BasSheepVarietyServiceImpl implements IBasSheepVarietyService +{ + @Autowired + private BasSheepVarietyMapper basSheepVarietyMapper; + + /** + * 查询羊只品种 + * + * @param id 羊只品种主键 + * @return 羊只品种 + */ + @Override + public BasSheepVariety selectBasSheepVarietyById(Long id) + { + return basSheepVarietyMapper.selectBasSheepVarietyById(id); + } + + /** + * 查询羊只品种列表 + * + * @param basSheepVariety 羊只品种 + * @return 羊只品种 + */ + @Override + public List selectBasSheepVarietyList(BasSheepVariety basSheepVariety) + { + return basSheepVarietyMapper.selectBasSheepVarietyList(basSheepVariety); + } + + /** + * 新增羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + @Override + public int insertBasSheepVariety(BasSheepVariety basSheepVariety) + { + return basSheepVarietyMapper.insertBasSheepVariety(basSheepVariety); + } + + /** + * 修改羊只品种 + * + * @param basSheepVariety 羊只品种 + * @return 结果 + */ + @Override + public int updateBasSheepVariety(BasSheepVariety basSheepVariety) + { + return basSheepVarietyMapper.updateBasSheepVariety(basSheepVariety); + } + + /** + * 批量删除羊只品种 + * + * @param ids 需要删除的羊只品种主键 + * @return 结果 + */ + @Override + public int deleteBasSheepVarietyByIds(Long[] ids) + { + return basSheepVarietyMapper.deleteBasSheepVarietyByIds(ids); + } + + /** + * 删除羊只品种信息 + * + * @param id 羊只品种主键 + * @return 结果 + */ + @Override + public int deleteBasSheepVarietyById(Long id) + { + return basSheepVarietyMapper.deleteBasSheepVarietyById(id); + } + + @Override + public BasSheepVariety selectByVarietyName(String varietyName) { + return basSheepVarietyMapper.selectByVarietyName(varietyName); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java new file mode 100644 index 0000000..7e7d8fe --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/BreedRamFileServiceImpl.java @@ -0,0 +1,96 @@ +package com.zhyc.module.base.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.base.mapper.BreedRamFileMapper; +import com.zhyc.module.base.domain.BreedRamFile; +import com.zhyc.module.base.service.IBreedRamFileService; + +/** + * 种公羊档案Service业务层处理 + * + * @author zhyc + * @date 2025-07-29 + */ +@Service +public class BreedRamFileServiceImpl implements IBreedRamFileService +{ + @Autowired + private BreedRamFileMapper breedRamFileMapper; + + /** + * 查询种公羊档案 + * + * @param id 种公羊档案主键 + * @return 种公羊档案 + */ + @Override + public BreedRamFile selectBreedRamFileById(Long id) + { + return breedRamFileMapper.selectBreedRamFileById(id); + } + + /** + * 查询种公羊档案列表 + * + * @param breedRamFile 种公羊档案 + * @return 种公羊档案 + */ + @Override + public List selectBreedRamFileList(BreedRamFile breedRamFile) + { + return breedRamFileMapper.selectBreedRamFileList(breedRamFile); + } + + /** + * 新增种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + @Override + public int insertBreedRamFile(BreedRamFile breedRamFile) + { + breedRamFile.setCreateTime(DateUtils.getNowDate()); + return breedRamFileMapper.insertBreedRamFile(breedRamFile); + } + + /** + * 修改种公羊档案 + * + * @param breedRamFile 种公羊档案 + * @return 结果 + */ + @Override + public int updateBreedRamFile(BreedRamFile breedRamFile) + { + breedRamFile.setUpdateTime(DateUtils.getNowDate()); + return breedRamFileMapper.updateBreedRamFile(breedRamFile); + } + + /** + * 批量删除种公羊档案 + * + * @param ids 需要删除的种公羊档案主键 + * @return 结果 + */ + @Override + public int deleteBreedRamFileByIds(Long[] ids) + { + return breedRamFileMapper.deleteBreedRamFileByIds(ids); + } + + /** + * 删除种公羊档案信息 + * + * @param id 种公羊档案主键 + * @return 结果 + */ + @Override + public int deleteBreedRamFileById(Long id) + { + return breedRamFileMapper.deleteBreedRamFileById(id); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java new file mode 100644 index 0000000..fbdf04c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaRanchServiceImpl.java @@ -0,0 +1,93 @@ +package com.zhyc.module.base.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.base.mapper.DaRanchMapper; +import com.zhyc.module.base.domain.DaRanch; +import com.zhyc.module.base.service.IDaRanchService; + +/** + * 牧场管理Service业务层处理 + * + * @author ruoyi + * @date 2025-07-22 + */ +@Service +public class DaRanchServiceImpl implements IDaRanchService +{ + @Autowired + private DaRanchMapper daRanchMapper; + + /** + * 查询牧场管理 + * + * @param id 牧场管理主键 + * @return 牧场管理 + */ + @Override + public DaRanch selectDaRanchById(Long id) + { + return daRanchMapper.selectDaRanchById(id); + } + + /** + * 查询牧场管理列表 + * + * @param daRanch 牧场管理 + * @return 牧场管理 + */ + @Override + public List selectDaRanchList(DaRanch daRanch) + { + return daRanchMapper.selectDaRanchList(daRanch); + } + + /** + * 新增牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + @Override + public int insertDaRanch(DaRanch daRanch) + { + return daRanchMapper.insertDaRanch(daRanch); + } + + /** + * 修改牧场管理 + * + * @param daRanch 牧场管理 + * @return 结果 + */ + @Override + public int updateDaRanch(DaRanch daRanch) + { + return daRanchMapper.updateDaRanch(daRanch); + } + + /** + * 批量删除牧场管理 + * + * @param ids 需要删除的牧场管理主键 + * @return 结果 + */ + @Override + public int deleteDaRanchByIds(Long[] ids) + { + return daRanchMapper.deleteDaRanchByIds(ids); + } + + /** + * 删除牧场管理信息 + * + * @param id 牧场管理主键 + * @return 结果 + */ + @Override + public int deleteDaRanchById(Long id) + { + return daRanchMapper.deleteDaRanchById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java new file mode 100644 index 0000000..4753929 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/DaSheepfoldServiceImpl.java @@ -0,0 +1,114 @@ +package com.zhyc.module.base.service.impl; + +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.domain.DaSheepfold; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.mapper.DaSheepfoldMapper; +import com.zhyc.module.base.service.IDaSheepfoldService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 羊舍管理Service业务层处理 + * + * @author wyt + * @date 2025-07-11 + */ +@Service +public class DaSheepfoldServiceImpl implements IDaSheepfoldService +{ + @Autowired + private DaSheepfoldMapper daSheepfoldMapper; + @Autowired + private BasSheepMapper basSheepMapper; + + /** + * 查询羊舍管理 + * + * @param id 羊舍管理主键 + * @return 羊舍管理 + */ + @Override + public DaSheepfold selectDaSheepfoldById(Long id) + { + return daSheepfoldMapper.selectDaSheepfoldById(id); + } + + /** + * 查询羊舍管理列表 + * + * @param daSheepfold 羊舍管理 + * @return 羊舍管理 + */ + @Override + public List selectDaSheepfoldList(DaSheepfold daSheepfold) + { + return daSheepfoldMapper.selectDaSheepfoldList(daSheepfold); + } + + /** + * 新增羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + @Override + public int insertDaSheepfold(DaSheepfold daSheepfold) + { + return daSheepfoldMapper.insertDaSheepfold(daSheepfold); + } + + /** + * 修改羊舍管理 + * + * @param daSheepfold 羊舍管理 + * @return 结果 + */ + @Override + public int updateDaSheepfold(DaSheepfold daSheepfold) + { + return daSheepfoldMapper.updateDaSheepfold(daSheepfold); + } + + /** + * 批量删除羊舍管理 + * + * @param ids 需要删除的羊舍管理主键 + * @return 结果 + */ + @Override + public int deleteDaSheepfoldByIds(Long[] ids) + { + return daSheepfoldMapper.deleteDaSheepfoldByIds(ids); + } + + /** + * 删除羊舍管理信息 + * + * @param id 羊舍管理主键 + * @return 结果 + */ + @Override + public int deleteDaSheepfoldById(Long id) + { + return daSheepfoldMapper.deleteDaSheepfoldById(id); + } + + + @Override + public boolean checkSheepfoldNoExist(Long ranchId, Long sheepfoldTypeId, String sheepfoldNo) { + DaSheepfold query = new DaSheepfold(); + query.setRanchId(ranchId); + query.setSheepfoldTypeId(sheepfoldTypeId); + query.setSheepfoldNo(sheepfoldNo); + return daSheepfoldMapper.selectCount(query) > 0; + } + + @Override + public List sheepListById(String id) { + List basSheep = basSheepMapper.selectBasSheepBySheepfold(id); + return basSheep; + } +} 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 new file mode 100644 index 0000000..351a4ad --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/base/service/impl/SheepFileServiceImpl.java @@ -0,0 +1,74 @@ +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List;import java.util.Map; + +/** + * 羊只档案Service业务层处理 + * + * @author wyt + * @date 2025-07-13 + */ +@Service +public class SheepFileServiceImpl implements ISheepFileService { + @Autowired + private SheepFileMapper sheepFileMapper; + + /** + * 查询羊只档案 + * + * @param id 羊只档案主键 + * @return 羊只档案 + */ + @Override + public SheepFile selectSheepFileById(Long id) { + return sheepFileMapper.selectSheepFileById(id); + } + + /** + * 查询羊只档案列表 + * + * @param sheepFile 羊只档案 + * @return 羊只档案 + */ + @Override + public List selectSheepFileList(SheepFile sheepFile) { + return sheepFileMapper.selectSheepFileList(sheepFile); + } + + @Override + public SheepFile selectBasSheepByManageTags(String tags) { + return sheepFileMapper.selectSheepByManageTags(tags); + } + + + @Override + public List> countBySheepType() { + return sheepFileMapper.countBySheepType(); + } + + @Override + public List> countByBreedStatus() { + return sheepFileMapper.countByBreedStatus(); + } + + @Override + public List> countByVariety() { + return sheepFileMapper.countByVariety(); + } + + @Override + public List> countParityOfLactation() { + return sheepFileMapper.countParityOfLactation(); + } + @Override + public Long countInGroup() { return sheepFileMapper.countInGroup(); } + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java new file mode 100644 index 0000000..6fb5fba --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DewormController.java @@ -0,0 +1,106 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.Deworm; +import com.zhyc.module.biosafety.service.IDewormService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 驱虫Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/biosafety/deworm") +public class DewormController extends BaseController +{ + @Autowired + private IDewormService dewormService; + + /** + * 查询驱虫列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:list')") + @GetMapping("/list") + public TableDataInfo list(Deworm deworm) + { + startPage(); + List list = dewormService.selectDewormList(deworm); + return getDataTable(list); + } + + /** + * 导出驱虫列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:export')") + @Log(title = "驱虫", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Deworm deworm) + { + List list = dewormService.selectDewormList(deworm); + ExcelUtil util = new ExcelUtil(Deworm.class); + util.exportExcel(response, list, "驱虫数据"); + } + + /** + * 获取驱虫详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(dewormService.selectDewormById(id)); + } + + /** + * 新增驱虫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:add')") + @Log(title = "驱虫", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Deworm deworm) + { + System.out.println(deworm); + return toAjax(dewormService.insertDeworm(deworm)); + } + + /** + * 修改驱虫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:edit')") + @Log(title = "驱虫", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Deworm deworm) + { + return toAjax(dewormService.updateDeworm(deworm)); + } + + /** + * 删除驱虫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:deworm:remove')") + @Log(title = "驱虫", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(dewormService.deleteDewormByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java new file mode 100644 index 0000000..39149cc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DiagnosisController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.biosafety.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.biosafety.domain.Diagnosis; +import com.zhyc.module.biosafety.service.IDiagnosisService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 诊疗结果Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/diagnosis/diagnosis") +public class DiagnosisController extends BaseController +{ + @Autowired + private IDiagnosisService diagnosisService; + + /** + * 查询诊疗结果列表 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:list')") + @GetMapping("/list") + public TableDataInfo list(Diagnosis diagnosis) + { + startPage(); + List list = diagnosisService.selectDiagnosisList(diagnosis); + return getDataTable(list); + } + + /** + * 导出诊疗结果列表 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:export')") + @Log(title = "诊疗结果", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Diagnosis diagnosis) + { + List list = diagnosisService.selectDiagnosisList(diagnosis); + ExcelUtil util = new ExcelUtil(Diagnosis.class); + util.exportExcel(response, list, "诊疗结果数据"); + } + + /** + * 获取诊疗结果详细信息 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(diagnosisService.selectDiagnosisById(id)); + } + + /** + * 新增诊疗结果 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:add')") + @Log(title = "诊疗结果", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Diagnosis diagnosis) + { + return toAjax(diagnosisService.insertDiagnosis(diagnosis)); + } + + /** + * 修改诊疗结果 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:edit')") + @Log(title = "诊疗结果", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Diagnosis diagnosis) + { + return toAjax(diagnosisService.updateDiagnosis(diagnosis)); + } + + /** + * 删除诊疗结果 + */ + @PreAuthorize("@ss.hasPermi('diagnosis:diagnosis:remove')") + @Log(title = "诊疗结果", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(diagnosisService.deleteDiagnosisByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java new file mode 100644 index 0000000..7e2f934 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/DisinfectController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.service.IDisinfectService; +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.biosafety.domain.Disinfect; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 消毒记录Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/biosafety/disinfect") +public class DisinfectController extends BaseController +{ + @Autowired + private IDisinfectService disinfectService; + + /** + * 查询消毒记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:list')") + @GetMapping("/list") + public TableDataInfo list(Disinfect disinfect) + { + startPage(); + List list = disinfectService.selectDisinfectList(disinfect); + return getDataTable(list); + } + + /** + * 导出消毒记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:export')") + @Log(title = "消毒记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Disinfect disinfect) + { + List list = disinfectService.selectDisinfectList(disinfect); + ExcelUtil util = new ExcelUtil(Disinfect.class); + util.exportExcel(response, list, "消毒记录数据"); + } + + /** + * 获取消毒记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(disinfectService.selectDisinfectById(id)); + } + + /** + * 新增消毒记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:add')") + @Log(title = "消毒记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Disinfect disinfect) + { + return toAjax(disinfectService.insertDisinfect(disinfect)); + } + + /** + * 修改消毒记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:edit')") + @Log(title = "消毒记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Disinfect disinfect) + { + return toAjax(disinfectService.updateDisinfect(disinfect)); + } + + /** + * 删除消毒记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:disinfect:remove')") + @Log(title = "消毒记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(disinfectService.deleteDisinfectByIds(ids)); + } +} 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 new file mode 100644 index 0000000..5795ca8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/HealthController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.service.IHealthService; +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.biosafety.domain.Health; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 保健Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/biosafety/health") +public class HealthController extends BaseController +{ + @Autowired + private IHealthService healthService; + + /** + * 查询保健列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:list')") + @GetMapping("/list") + public TableDataInfo list(Health health) + { + startPage(); + List list = healthService.selectHealthList(health); + return getDataTable(list); + } + + /** + * 导出保健列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:export')") + @Log(title = "保健", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Health health) + { + List list = healthService.selectHealthList(health); + ExcelUtil util = new ExcelUtil(Health.class); + util.exportExcel(response, list, "保健数据"); + } + + /** + * 获取保健详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(healthService.selectHealthById(id)); + } + + /** + * 新增保健 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:add')") + @Log(title = "保健", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Health health) + { + return toAjax(healthService.insertHealth(health)); + } + + /** + * 修改保健 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:edit')") + @Log(title = "保健", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Health health) + { + return toAjax(healthService.updateHealth(health)); + } + + /** + * 删除保健 + */ + @PreAuthorize("@ss.hasPermi('biosafety:health:remove')") + @Log(title = "保健", businessType = BusinessType.DELETE) + @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/controller/ImmunityController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java new file mode 100644 index 0000000..f49376c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/ImmunityController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.service.IImmunityService; +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.biosafety.domain.Immunity; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 免疫Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/biosafety/immunity") +public class ImmunityController extends BaseController +{ + @Autowired + private IImmunityService immunityService; + + /** + * 查询免疫列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:list')") + @GetMapping("/list") + public TableDataInfo list(Immunity immunity) + { + startPage(); + List list = immunityService.selectImmunityList(immunity); + return getDataTable(list); + } + + /** + * 导出免疫列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:export')") + @Log(title = "免疫", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Immunity immunity) + { + List list = immunityService.selectImmunityList(immunity); + ExcelUtil util = new ExcelUtil(Immunity.class); + util.exportExcel(response, list, "免疫数据"); + } + + /** + * 获取免疫详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(immunityService.selectImmunityById(id)); + } + + /** + * 新增免疫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:add')") + @Log(title = "免疫", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Immunity immunity) + { + return toAjax(immunityService.insertImmunity(immunity)); + } + + /** + * 修改免疫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:edit')") + @Log(title = "免疫", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Immunity immunity) + { + return toAjax(immunityService.updateImmunity(immunity)); + } + + /** + * 删除免疫 + */ + @PreAuthorize("@ss.hasPermi('biosafety:immunity:remove')") + @Log(title = "免疫", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(immunityService.deleteImmunityByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java new file mode 100644 index 0000000..3c1694a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineItemsController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.QuarantineItems; +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.biosafety.service.IQuarantineItemsService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 检疫项目Controller + * + * @author ruoyi + * @date 2025-07-14 + */ +@RestController +@RequestMapping("/biosafety/items") +public class QuarantineItemsController extends BaseController +{ + @Autowired + private IQuarantineItemsService quarantineItemsService; + + /** + * 查询检疫项目列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:list')") + @GetMapping("/list") + public TableDataInfo list(QuarantineItems quarantineItems) + { + startPage(); + List list = quarantineItemsService.selectQuarantineItemsList(quarantineItems); + return getDataTable(list); + } + + /** + * 导出检疫项目列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:export')") + @Log(title = "检疫项目", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QuarantineItems quarantineItems) + { + List list = quarantineItemsService.selectQuarantineItemsList(quarantineItems); + ExcelUtil util = new ExcelUtil(QuarantineItems.class); + util.exportExcel(response, list, "检疫项目数据"); + } + + /** + * 获取检疫项目详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(quarantineItemsService.selectQuarantineItemsById(id)); + } + + /** + * 新增检疫项目 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:add')") + @Log(title = "检疫项目", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QuarantineItems quarantineItems) + { + return toAjax(quarantineItemsService.insertQuarantineItems(quarantineItems)); + } + + /** + * 修改检疫项目 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:edit')") + @Log(title = "检疫项目", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QuarantineItems quarantineItems) + { + return toAjax(quarantineItemsService.updateQuarantineItems(quarantineItems)); + } + + /** + * 删除检疫项目 + */ + @PreAuthorize("@ss.hasPermi('biosafety:items:remove')") + @Log(title = "检疫项目", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(quarantineItemsService.deleteQuarantineItemsByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java new file mode 100644 index 0000000..1c06745 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineReportController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.QuarantineReport; +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.biosafety.service.IQuarantineReportService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 检疫记录Controller + * + * @author ruoyi + * @date 2025-07-14 + */ +@RestController +@RequestMapping("/biosafety/quarantine") +public class QuarantineReportController extends BaseController +{ + @Autowired + private IQuarantineReportService quarantineReportService; + + /** + * 查询检疫记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:quarantine:list')") + @GetMapping("/list") + public TableDataInfo list(QuarantineReport quarantineReport) + { + startPage(); + List list = quarantineReportService.selectQuarantineReportList(quarantineReport); + return getDataTable(list); + } + + /** + * 导出检疫记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:quarantine:export')") + @Log(title = "检疫记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QuarantineReport quarantineReport) + { + List list = quarantineReportService.selectQuarantineReportList(quarantineReport); + ExcelUtil util = new ExcelUtil(QuarantineReport.class); + util.exportExcel(response, list, "检疫记录数据"); + } + + /** + * 获取检疫记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('bisosafety:quarantine:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(quarantineReportService.selectQuarantineReportById(id)); + } + + /** + * 新增检疫记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:quarantine:add')") + @Log(title = "检疫记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QuarantineReport quarantineReport) + { + return toAjax(quarantineReportService.insertQuarantineReport(quarantineReport)); + } + + /** + * 修改检疫记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:quarantine:edit')") + @Log(title = "检疫记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QuarantineReport quarantineReport) + { + return toAjax(quarantineReportService.updateQuarantineReport(quarantineReport)); + } + + /** + * 删除检疫记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:quarantine:remove')") + @Log(title = "检疫记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(quarantineReportService.deleteQuarantineReportByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java new file mode 100644 index 0000000..439d3fb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/QuarantineSampleController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.QuarantineSample; +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.biosafety.service.IQuarantineSampleService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 样品类型Controller + * + * @author ruoyi + * @date 2025-07-14 + */ +@RestController +@RequestMapping("/biosafety/sample") +public class QuarantineSampleController extends BaseController +{ + @Autowired + private IQuarantineSampleService quarantineSampleService; + + /** + * 查询样品类型列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:list')") + @GetMapping("/list") + public TableDataInfo list(QuarantineSample quarantineSample) + { + startPage(); + List list = quarantineSampleService.selectQuarantineSampleList(quarantineSample); + return getDataTable(list); + } + + /** + * 导出样品类型列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:export')") + @Log(title = "样品类型", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QuarantineSample quarantineSample) + { + List list = quarantineSampleService.selectQuarantineSampleList(quarantineSample); + ExcelUtil util = new ExcelUtil(QuarantineSample.class); + util.exportExcel(response, list, "样品类型数据"); + } + + /** + * 获取样品类型详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(quarantineSampleService.selectQuarantineSampleById(id)); + } + + /** + * 新增样品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:add')") + @Log(title = "样品类型", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QuarantineSample quarantineSample) + { + return toAjax(quarantineSampleService.insertQuarantineSample(quarantineSample)); + } + + /** + * 修改样品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:edit')") + @Log(title = "样品类型", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QuarantineSample quarantineSample) + { + return toAjax(quarantineSampleService.updateQuarantineSample(quarantineSample)); + } + + /** + * 删除样品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:sample:remove')") + @Log(title = "样品类型", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(quarantineSampleService.deleteQuarantineSampleByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java new file mode 100644 index 0000000..d049ae6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java @@ -0,0 +1,103 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwDisease; +import com.zhyc.module.biosafety.service.ISwDiseaseService; +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.common.utils.poi.ExcelUtil; + +/** + * 疾病Controller + * + * @author ruoyi + * @date 2025-07-09 + */ +@RestController +@RequestMapping("/biosafety/disease") +public class SwDiseaseController extends BaseController +{ + @Autowired + private ISwDiseaseService swDiseaseService; + + /** + * 查询疾病列表 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:list')") + @GetMapping("/list") + public AjaxResult list(SwDisease swDisease) + { + List list = swDiseaseService.selectSwDiseaseList(swDisease); + return success(list); + } + + /** + * 导出疾病列表 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:export')") + @Log(title = "疾病", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwDisease swDisease) + { + List list = swDiseaseService.selectSwDiseaseList(swDisease); + ExcelUtil util = new ExcelUtil(SwDisease.class); + util.exportExcel(response, list, "疾病数据"); + } + + /** + * 获取疾病详细信息 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swDiseaseService.selectSwDiseaseById(id)); + } + + /** + * 新增疾病 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:add')") + @Log(title = "疾病", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwDisease swDisease) + { + return toAjax(swDiseaseService.insertSwDisease(swDisease)); + } + + /** + * 修改疾病 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:edit')") + @Log(title = "疾病", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwDisease swDisease) + { + return toAjax(swDiseaseService.updateSwDisease(swDisease)); + } + + /** + * 删除疾病 + */ + @PreAuthorize("@ss.hasPermi('disease:disease:remove')") + @Log(title = "疾病", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swDiseaseService.deleteSwDiseaseByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java new file mode 100644 index 0000000..0a4f67b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicTypeController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwMedicType; +import com.zhyc.module.biosafety.service.ISwMedicTypeService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 药品类型Controller + * + * @author ruoyi + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/biosafety/type") +public class SwMedicTypeController extends BaseController +{ + @Autowired + private ISwMedicTypeService swMedicTypeService; + + /** + * 查询药品类型列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:list')") + @GetMapping("/list") + public TableDataInfo list(SwMedicType swMedicType) + { + startPage(); + List list = swMedicTypeService.selectSwMedicTypeList(swMedicType); + return getDataTable(list); + } + + /** + * 导出药品类型列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:export')") + @Log(title = "药品类型", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwMedicType swMedicType) + { + List list = swMedicTypeService.selectSwMedicTypeList(swMedicType); + ExcelUtil util = new ExcelUtil(SwMedicType.class); + util.exportExcel(response, list, "药品类型数据"); + } + + /** + * 获取药品类型详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swMedicTypeService.selectSwMedicTypeById(id)); + } + + /** + * 新增药品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:add')") + @Log(title = "药品类型", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwMedicType swMedicType) + { + return toAjax(swMedicTypeService.insertSwMedicType(swMedicType)); + } + + /** + * 修改药品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:edit')") + @Log(title = "药品类型", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwMedicType swMedicType) + { + return toAjax(swMedicTypeService.updateSwMedicType(swMedicType)); + } + + /** + * 删除药品类型 + */ + @PreAuthorize("@ss.hasPermi('biosafety:type:remove')") + @Log(title = "药品类型", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swMedicTypeService.deleteSwMedicTypeByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java new file mode 100644 index 0000000..c6cbc0f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwMedicine; +import com.zhyc.module.biosafety.service.ISwMedicineService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 药品Controller + * + * @author ruoyi + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/system/medicine") +public class SwMedicineController extends BaseController +{ + @Autowired + private ISwMedicineService swMedicineService; + + /** + * 查询药品列表 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:list')") + @GetMapping("/list") + public TableDataInfo list(SwMedicine swMedicine) + { + startPage(); + List list = swMedicineService.selectSwMedicineList(swMedicine); + return getDataTable(list); + } + + /** + * 导出药品列表 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:export')") + @Log(title = "药品", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwMedicine swMedicine) + { + List list = swMedicineService.selectSwMedicineList(swMedicine); + ExcelUtil util = new ExcelUtil(SwMedicine.class); + util.exportExcel(response, list, "药品数据"); + } + + /** + * 获取药品详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swMedicineService.selectSwMedicineById(id)); + } + + /** + * 新增药品 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:add')") + @Log(title = "药品", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwMedicine swMedicine) + { + return toAjax(swMedicineService.insertSwMedicine(swMedicine)); + } + + /** + * 修改药品 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:edit')") + @Log(title = "药品", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwMedicine swMedicine) + { + return toAjax(swMedicineService.updateSwMedicine(swMedicine)); + } + + /** + * 删除药品 + */ + @PreAuthorize("@ss.hasPermi('system:medicine:remove')") + @Log(title = "药品", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swMedicineService.deleteSwMedicineByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java new file mode 100644 index 0000000..c3661aa --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwMedicineUsageController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwMedicineUsage; +import com.zhyc.module.biosafety.service.ISwMedicineUsageService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 药品使用记录Controller + * + * @author ruoyi + * @date 2025-07-12 + */ +@RestController +@RequestMapping("/biosafety/usageInfo") +public class SwMedicineUsageController extends BaseController +{ + @Autowired + private ISwMedicineUsageService swMedicineUsageService; + + /** + * 查询药品使用记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:list')") + @GetMapping("/list") + public TableDataInfo list(SwMedicineUsage swMedicineUsage) + { + startPage(); + List list = swMedicineUsageService.selectSwMedicineUsageList(swMedicineUsage); + return getDataTable(list); + } + + /** + * 导出药品使用记录列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:export')") + @Log(title = "药品使用记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwMedicineUsage swMedicineUsage) + { + List list = swMedicineUsageService.selectSwMedicineUsageList(swMedicineUsage); + ExcelUtil util = new ExcelUtil(SwMedicineUsage.class); + util.exportExcel(response, list, "药品使用记录数据"); + } + + /** + * 获取药品使用记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return success(swMedicineUsageService.selectSwMedicineUsageById(id)); + } + + /** + * 新增药品使用记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:add')") + @Log(title = "药品使用记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwMedicineUsage swMedicineUsage) + { + return toAjax(swMedicineUsageService.insertSwMedicineUsage(swMedicineUsage)); + } + + /** + * 修改药品使用记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:edit')") + @Log(title = "药品使用记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwMedicineUsage swMedicineUsage) + { + return toAjax(swMedicineUsageService.updateSwMedicineUsage(swMedicineUsage)); + } + + /** + * 删除药品使用记录 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usageInfo:remove')") + @Log(title = "药品使用记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swMedicineUsageService.deleteSwMedicineUsageByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java new file mode 100644 index 0000000..44eed9b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwPrescriptionController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.service.ISwPrescriptionService; +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.biosafety.domain.SwPrescription; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 处方Controller + * + * @author ruoyi + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/biosafety/prescription") +public class SwPrescriptionController extends BaseController +{ + @Autowired + private ISwPrescriptionService swPrescriptionService; + + /** + * 查询处方列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:list')") + @GetMapping("/list") + public TableDataInfo list(SwPrescription swPrescription) + { + startPage(); + List list = swPrescriptionService.selectSwPrescriptionList(swPrescription); + return getDataTable(list); + } + + /** + * 导出处方列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:export')") + @Log(title = "处方", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwPrescription swPrescription) + { + List list = swPrescriptionService.selectSwPrescriptionList(swPrescription); + ExcelUtil util = new ExcelUtil(SwPrescription.class); + util.exportExcel(response, list, "处方数据"); + } + + /** + * 获取处方详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swPrescriptionService.selectSwPrescriptionById(id)); + } + + /** + * 新增处方 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:add')") + @Log(title = "处方", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwPrescription swPrescription) + { + return toAjax(swPrescriptionService.insertSwPrescription(swPrescription)); + } + + /** + * 修改处方 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:edit')") + @Log(title = "处方", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwPrescription swPrescription) + { + return toAjax(swPrescriptionService.updateSwPrescription(swPrescription)); + } + + /** + * 删除处方 + */ + @PreAuthorize("@ss.hasPermi('biosafety:prescription:remove')") + @Log(title = "处方", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swPrescriptionService.deleteSwPrescriptionByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java new file mode 100644 index 0000000..db8dfe5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUnitController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwUnit; +import com.zhyc.module.biosafety.service.ISwUnitService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 药品单位Controller + * + * @author ruoyi + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/biosafety/unit") +public class SwUnitController extends BaseController +{ + @Autowired + private ISwUnitService swUnitService; + + /** + * 查询药品单位列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:list')") + @GetMapping("/list") + public TableDataInfo list(SwUnit swUnit) + { + startPage(); + List list = swUnitService.selectSwUnitList(swUnit); + return getDataTable(list); + } + + /** + * 导出药品单位列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:export')") + @Log(title = "药品单位", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwUnit swUnit) + { + List list = swUnitService.selectSwUnitList(swUnit); + ExcelUtil util = new ExcelUtil(SwUnit.class); + util.exportExcel(response, list, "药品单位数据"); + } + + /** + * 获取药品单位详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swUnitService.selectSwUnitById(id)); + } + + /** + * 新增药品单位 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:add')") + @Log(title = "药品单位", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwUnit swUnit) + { + return toAjax(swUnitService.insertSwUnit(swUnit)); + } + + /** + * 修改药品单位 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:edit')") + @Log(title = "药品单位", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwUnit swUnit) + { + return toAjax(swUnitService.updateSwUnit(swUnit)); + } + + /** + * 删除药品单位 + */ + @PreAuthorize("@ss.hasPermi('biosafety:unit:remove')") + @Log(title = "药品单位", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swUnitService.deleteSwUnitByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java new file mode 100644 index 0000000..ea0c207 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwUsageController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.SwUsage; +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.biosafety.service.ISwUsageService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 药品使用方法Controller + * + * @author ruoyi + * @date 2025-07-11 + */ +@RestController +@RequestMapping("/biosafety/usage") +public class SwUsageController extends BaseController +{ + @Autowired + private ISwUsageService swUsageService; + + /** + * 查询药品使用方法列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:list')") + @GetMapping("/list") + public TableDataInfo list(SwUsage swUsage) + { + startPage(); + List list = swUsageService.selectSwUsageList(swUsage); + return getDataTable(list); + } + + /** + * 导出药品使用方法列表 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:export')") + @Log(title = "药品使用方法", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, SwUsage swUsage) + { + List list = swUsageService.selectSwUsageList(swUsage); + ExcelUtil util = new ExcelUtil(SwUsage.class); + util.exportExcel(response, list, "药品使用方法数据"); + } + + /** + * 获取药品使用方法详细信息 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(swUsageService.selectSwUsageById(id)); + } + + /** + * 新增药品使用方法 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:add')") + @Log(title = "药品使用方法", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody SwUsage swUsage) + { + return toAjax(swUsageService.insertSwUsage(swUsage)); + } + + /** + * 修改药品使用方法 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:edit')") + @Log(title = "药品使用方法", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SwUsage swUsage) + { + return toAjax(swUsageService.updateSwUsage(swUsage)); + } + + /** + * 删除药品使用方法 + */ + @PreAuthorize("@ss.hasPermi('biosafety:usage:remove')") + @Log(title = "药品使用方法", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(swUsageService.deleteSwUsageByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java new file mode 100644 index 0000000..85d5591 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/TreatmentController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.biosafety.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.biosafety.domain.Treatment; +import com.zhyc.module.biosafety.service.ITreatmentService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 治疗记录Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/treatment/treatment") +public class TreatmentController extends BaseController +{ + @Autowired + private ITreatmentService treatmentService; + + /** + * 查询治疗记录列表 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:list')") + @GetMapping("/list") + public TableDataInfo list(Treatment treatment) + { + startPage(); + List list = treatmentService.selectTreatmentList(treatment); + return getDataTable(list); + } + + /** + * 导出治疗记录列表 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:export')") + @Log(title = "治疗记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Treatment treatment) + { + List list = treatmentService.selectTreatmentList(treatment); + ExcelUtil util = new ExcelUtil(Treatment.class); + util.exportExcel(response, list, "治疗记录数据"); + } + + /** + * 获取治疗记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(treatmentService.selectTreatmentById(id)); + } + + /** + * 新增治疗记录 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:add')") + @Log(title = "治疗记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Treatment treatment) + { + return toAjax(treatmentService.insertTreatment(treatment)); + } + + /** + * 修改治疗记录 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:edit')") + @Log(title = "治疗记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Treatment treatment) + { + return toAjax(treatmentService.updateTreatment(treatment)); + } + + /** + * 删除治疗记录 + */ + @PreAuthorize("@ss.hasPermi('treatment:treatment:remove')") + @Log(title = "治疗记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(treatmentService.deleteTreatmentByIds(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 new file mode 100644 index 0000000..c3b60c5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java @@ -0,0 +1,75 @@ +package com.zhyc.module.biosafety.domain; + +import java.util.Date; +import java.util.List; + +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; + +/** + * 驱虫对象 sw_deworm + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Deworm extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + private Long sheepId; + + private Integer[] sheepIds; + + /** 羊只id */ + @Excel(name = "羊只耳号") + private String sheepNo; + @Excel(name = "品种") + private String variety; + @Excel(name = "羊只类别") + private String sheepType; + @Excel(name = "羊只性别") + private String gender; + @Excel(name = "月龄") + private Long monthAge; + @Excel(name = "繁殖状态") + private String breed; + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + + + /** 药品使用记录 */ + @Excel(name = "药品使用记录") + private Integer usageId; + + + // 药品使用 + private List usageDetails; + + /** 驱虫日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "驱虫日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 技术员 */ + @Excel(name = "技术员") + private String technical; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + +} 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 new file mode 100644 index 0000000..05fe6ad --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java @@ -0,0 +1,97 @@ +package com.zhyc.module.biosafety.domain; + +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; + +/** + * 诊疗结果对象 sw_diagnosis + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Diagnosis extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 治疗记录id */ + @Excel(name = "治疗记录") + private Long treatId; + + /** 羊只id */ + @Excel(name = "羊只耳号") + private String sheepNo; + + private Long sheepId; + + /** 时间日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "时间日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 羊只类别 */ + @Excel(name = "羊只类别") + private String sheepType; + + /** 性别 */ + @Excel(name = "性别") + private String gender; + + /** 性别 */ + @Excel(name = "月龄") + private Long monthAge; + + + /** 胎次 */ + @Excel(name = "胎次") + private String parity; + + /** 疾病类型 */ + @Excel(name = "疾病类型") + private String diseasePName; + + private Long diseasePid; + + /** 子疾病 */ + @Excel(name = "子疾病") + private String diseaseName; + + private Long diseaseId; + + /** 诊疗结果 */ + @Excel(name = "诊疗结果") + private String result; + + /** 开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date begindate; + + /** 结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date enddate; + + /** 治疗天数 */ + @Excel(name = "治疗天数") + private Long treatDay; + + /** 羊舍id */ + @Excel(name = "羊舍") + private String sheepfold; + + private Long sheepfoldId; + +} 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 new file mode 100644 index 0000000..773ec33 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Disinfect.java @@ -0,0 +1,67 @@ +package com.zhyc.module.biosafety.domain; + +import java.util.Date; +import java.util.List; + +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; + +/** + * 消毒记录对象 sw_disinfect + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Disinfect extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 羊舍id */ + @Excel(name = "羊舍") + private String sheepfoldName; + + private Integer sheepfoldId; + + private Integer[] sheepfoldIds; + + /** 消毒日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 消毒方式 */ + @Excel(name = "消毒方式") + private String way; + + /** 药品使用记录id */ + @Excel(name = "药品使用记录id") + private Integer usageId; + + /** 比例 */ + @Excel(name = "比例") + private String ratio; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + // 药品使用 + private List usageDetails; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java new file mode 100644 index 0000000..05e591a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java @@ -0,0 +1,68 @@ +package com.zhyc.module.biosafety.domain; + +import java.util.Date; +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import com.zhyc.common.annotation.Excel; +import com.zhyc.common.core.domain.BaseEntity; + +/** + * 保健对象 sw_health + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +public class Health extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 保健日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "保健日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 羊只id */ + @Excel(name = "羊只id") + private Long sheepId; + + private Integer[] sheepIds; + + /** 羊只id */ + @Excel(name = "羊只耳号") + private String sheepNo; + @Excel(name = "品种") + private String variety; + @Excel(name = "羊只类别") + private String sheepType; + @Excel(name = "羊只性别") + private String gender; + @Excel(name = "月龄") + private Long monthAge; + @Excel(name = "繁殖状态") + private String breed; + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 用药记录 */ + @Excel(name = "用药记录") + private Integer usageId; + + + /** 技术员 */ + @Excel(name = "技术员") + private String technical; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + // 药品使用 + private List usageDetails; +} 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 new file mode 100644 index 0000000..1a77298 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java @@ -0,0 +1,79 @@ +package com.zhyc.module.biosafety.domain; + +import java.util.Date; +import java.util.List; + +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; + +/** + * 免疫对象 sw_immunity + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Immunity extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 羊只id */ + @Excel(name = "羊只id") + private Long sheepId; + + private Integer[] sheepIds; + + /** 羊只id */ + @Excel(name = "羊只耳号") + private String sheepNo; + @Excel(name = "品种") + + private String variety; + @Excel(name = "羊只类别") + private String sheepType; + + @Excel(name = "羊只性别") + private String gender; + + @Excel(name = "月龄") + private Long monthAge; + + @Excel(name = "繁殖状态") + private String breed; + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 使用记录 */ + @Excel(name = "使用记录") + private Integer usageId; + + + /** 免疫日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "免疫日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 技术员 */ + @Excel(name = "技术员") + private String technical; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + // 药品使用 + private List usageDetails; + +} 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 new file mode 100644 index 0000000..807962a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineItems.java @@ -0,0 +1,31 @@ +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; + +/** + * 检疫项目对象 sw_quarantine_items + * + * @author ruoyi + * @date 2025-07-14 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class QuarantineItems extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 名称 */ + @Excel(name = "名称") + private String name; + +} 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 new file mode 100644 index 0000000..0fa8f88 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java @@ -0,0 +1,95 @@ +package com.zhyc.module.biosafety.domain; + +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; +import org.apache.ibatis.type.Alias; + +/** + * 检疫记录对象 sw_quarantine_report + * + * @author ruoyi + * @date 2025-07-14 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@Alias("QuarantineReport") +public class QuarantineReport extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + +// 羊只耳号 + private String[] ids; + + /** 羊只 */ + private Long sheepId; + + @Excel(name = "羊只耳号") + private String sheepNo; + @Excel(name = "羊只类别") + private String sheepType; + @Excel(name = "羊只性别") + private String gender; + @Excel(name = "月龄") + private Long monthAge; + @Excel(name = "胎次") + private Long parity; + @Excel(name = "繁育状态") + private String breed; + + + /** 检疫日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "检疫日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 检疫项目 */ + + private Long quarItem; + + /** 检疫项目 */ + @Excel(name = "检疫项目") + private String itemName; + + + /** 样品类型 */ + private Long sampleType; + + /** 样品 */ + @Excel(name = "样品类型") + private String sample; + + + /** 采样员 */ + @Excel(name = "采样员") + private String sampler; + + /** 检疫员 */ + @Excel(name = "检疫员") + private String quarOfficer; + + /** 检疫结果 */ + @Excel(name = "检疫结果") + private String result; + + /** 状态 */ + @Excel(name = "状态") + private Integer status; + + /** 备注*/ + @Excel(name = "备注") + private String comment; + + +} 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 new file mode 100644 index 0000000..e128a0e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineSample.java @@ -0,0 +1,31 @@ +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; + +/** + * 样品类型对象 sw_quarantine_sample + * + * @author ruoyi + * @date 2025-07-14 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class QuarantineSample extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 样品类型 */ + @Excel(name = "样品类型") + private String name; + +} 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 new file mode 100644 index 0000000..65ab2c1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwDisease.java @@ -0,0 +1,40 @@ +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; + +/** + * 疾病对象 sw_disease + * + * @author ruoyi + * @date 2025-07-09 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwDisease extends TreeEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 名称 */ + @Excel(name = "名称") + private String name; + + /** 描述 */ + @Excel(name = "描述") + private String comment; + + /** */ + @Excel(name = "") + private Long pid; + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java new file mode 100644 index 0000000..46893c5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicType.java @@ -0,0 +1,58 @@ +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; + +/** + * 药品类型对象 sw_medic_type + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwMedicType extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 编号 */ + private Long id; + + /** 药品类型 */ + @Excel(name = "药品类型") + private String name; + + 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; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("name", getName()) + .toString(); + } +} 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 new file mode 100644 index 0000000..247ef20 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicine.java @@ -0,0 +1,49 @@ +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; + +/** + * 药品对象 sw_medicine + * + * @author ruoyi + * @date 2025-07-11 + */ + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwMedicine extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** */ + private Long id; + + /** 药品编号 */ + @Excel(name = "药品编号") + private String medica; + + /** 药品名称 */ + @Excel(name = "药品名称") + private String name; + + /** 药品类型 */ + @Excel(name = "药品类型") + private Long medicType; + + /** 使用方法 */ + @Excel(name = "使用方法") + private Long usageId; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + +} 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 new file mode 100644 index 0000000..95a6aea --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsage.java @@ -0,0 +1,41 @@ +package com.zhyc.module.biosafety.domain; + +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; + +/** + * 药品使用记录对象 sw_medicine_usage + * + * @author ruoyi + * @date 2025-07-12 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwMedicineUsage extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Integer id; + + /** 使用名称 */ + @Excel(name = "使用名称") + private String name; + + /** 使用类型 */ + @Excel(name = "使用类型") + private String useType; + + /** 药品使用记录详情信息 */ + private List swMedicineUsageDetailsList; + + +} 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 new file mode 100644 index 0000000..86eb829 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwMedicineUsageDetails.java @@ -0,0 +1,59 @@ +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; + +/** + * 药品使用记录详情对象 sw_medicine_usage_details + * + * @author ruoyi + * @date 2025-07-12 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwMedicineUsageDetails extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 药品使用记录id */ + @Excel(name = "药品使用记录id") + private Integer mediUsage; + + /** 药品id */ + @Excel(name = "药品id") + private Long mediId; + +/** 药品名称*/ + @Excel(name = "药品名称") + private String mediName; + + /** 用量 */ + @Excel(name = "用量") + private String dosage; + + /** 单位 */ + @Excel(name = "单位") + private String unit; + + /** 使用方法 */ + @Excel(name = "使用方法") + private String usageId; + + /** 生产厂家 */ + @Excel(name = "生产厂家") + private String manufacturer; + + /** 生产批号 */ + @Excel(name = "生产批号") + private String batchNumber; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java new file mode 100644 index 0000000..e03540b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPresDetail.java @@ -0,0 +1,114 @@ +package com.zhyc.module.biosafety.domain; + +import java.math.BigDecimal; + +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; + +/** + * 处方详情对象 sw_pres_detail + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwPresDetail extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 处方id */ + private Long persId; + + /** 药品id */ + @Excel(name = "药品id") + private Integer mediId; + + /** 用量 */ + @Excel(name = "用量") + private BigDecimal dosage; + + /** 单位 */ + @Excel(name = "单位") + private Integer unitId; + + /** 使用方法 */ + @Excel(name = "使用方法") + private Integer usageId; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setPersId(Long persId) + { + this.persId = persId; + } + + public Long getPersId() + { + return persId; + } + public void setMediId(Integer mediId) + { + this.mediId = mediId; + } + + public Integer getMediId() + { + return mediId; + } + public void setDosage(BigDecimal dosage) + { + this.dosage = dosage; + } + + public BigDecimal getDosage() + { + return dosage; + } + public void setUnitId(Integer unitId) + { + this.unitId = unitId; + } + + public Integer getUnitId() + { + return unitId; + } + public void setUsageId(Integer usageId) + { + this.usageId = usageId; + } + + public Integer getUsageId() + { + return usageId; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("persId", getPersId()) + .append("mediId", getMediId()) + .append("dosage", getDosage()) + .append("unitId", getUnitId()) + .append("usageId", getUsageId()) + .toString(); + } +} 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 new file mode 100644 index 0000000..ae22e43 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwPrescription.java @@ -0,0 +1,138 @@ +package com.zhyc.module.biosafety.domain; + +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; + +/** + * 处方对象 sw_prescription + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwPrescription extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 处方编号 */ + @Excel(name = "处方编号") + private String no; + + /** 处方名称 */ + @Excel(name = "处方名称") + private String name; + + /** 类型(免疫/保健/驱虫/消毒/疾病治疗) */ + @Excel(name = "类型", readConverterExp = "免疫/保健/驱虫/消毒/疾病治疗") + private Integer persType; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 状态(0禁用1启用) */ + @Excel(name = "状态(0禁用1启用)") + private Integer status; + + /** 处方详情信息 */ + 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 new file mode 100644 index 0000000..9820928 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUnit.java @@ -0,0 +1,33 @@ +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; + +/** + * 药品单位对象 sw_unit + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwUnit extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 编号 */ + private Integer id; + + /** 单位 */ + @Excel(name = "单位") + private String name; + +/* 国际单位*/ + private String unit; +} 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 new file mode 100644 index 0000000..450c220 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/SwUsage.java @@ -0,0 +1,32 @@ +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; + +/** + * 药品使用方法对象 sw_usage + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SwUsage extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 编号 */ + private Integer id; + + /** 使用方法 */ + @Excel(name = "使用方法") + private String name; + + +} 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 new file mode 100644 index 0000000..e4217fc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java @@ -0,0 +1,107 @@ +package com.zhyc.module.biosafety.domain; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +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; + +/** + * 治疗记录对象 sw_treatment + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Treatment extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + private Long id; + + /** 诊疗记录id */ + private Long diagId; + + /** 羊只耳号 */ + @Excel(name = "羊只耳号") + private String sheepNo; + + private Long sheepId; +// 用于批量新增 + private List sheepIds; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 羊只类别 */ + @Excel(name = "羊只类别") + private String sheepType; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 性别 */ + @Excel(name = "性别") + private String gender; + + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 繁殖状态 */ + @Excel(name = "繁殖状态") + private String breed; + + /** 泌乳天数 */ + @Excel(name = "泌乳天数") + private Long lactDay; + + /** 怀孕天数 */ + @Excel(name = "怀孕天数") + private Long gestDay; + + /** 治疗日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "治疗日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 疾病类型 */ + @Excel(name = "疾病类型") + private String diseaseName; + + private Long diseaseId; + + + /** 父疾病 */ + @Excel(name = "父疾病") + private String diseasePName; + + private Long diseasePid; + + /** 兽医 */ + @Excel(name = "兽医") + private String veterinary; + + /** 药品使用记录id */ + @Excel(name = "药品使用记录id") + private Integer usageId; + +// 药品使用 + private List usageDetails; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java new file mode 100644 index 0000000..8ce542c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DewormMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.Deworm; +import org.apache.ibatis.annotations.Mapper; + +/** + * 驱虫Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface DewormMapper +{ + /** + * 查询驱虫 + * + * @param id 驱虫主键 + * @return 驱虫 + */ + public Deworm selectDewormById(Long id); + + /** + * 查询驱虫列表 + * + * @param deworm 驱虫 + * @return 驱虫集合 + */ + public List selectDewormList(Deworm deworm); + + /** + * 新增驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + public int insertDeworm(List deworm); + + /** + * 修改驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + public int updateDeworm(Deworm deworm); + + /** + * 删除驱虫 + * + * @param id 驱虫主键 + * @return 结果 + */ + public int deleteDewormById(Long id); + + /** + * 批量删除驱虫 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDewormByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java new file mode 100644 index 0000000..f9f8076 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DiagnosisMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Diagnosis; +import org.apache.ibatis.annotations.Mapper; + +/** + * 诊疗结果Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface DiagnosisMapper +{ + /** + * 查询诊疗结果 + * + * @param id 诊疗结果主键 + * @return 诊疗结果 + */ + public Diagnosis selectDiagnosisById(Long id); + + /** + * 查询诊疗结果列表 + * + * @param diagnosis 诊疗结果 + * @return 诊疗结果集合 + */ + public List selectDiagnosisList(Diagnosis diagnosis); + + /** + * 新增诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + public int insertDiagnosis(Diagnosis diagnosis); + + /** + * 修改诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + public int updateDiagnosis(Diagnosis diagnosis); + + /** + * 删除诊疗结果 + * + * @param id 诊疗结果主键 + * @return 结果 + */ + public int deleteDiagnosisById(Long id); + + /** + * 批量删除诊疗结果 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDiagnosisByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java new file mode 100644 index 0000000..885bf2e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/DisinfectMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Disinfect; +import org.apache.ibatis.annotations.Mapper; + +/** + * 消毒记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface DisinfectMapper +{ + /** + * 查询消毒记录 + * + * @param id 消毒记录主键 + * @return 消毒记录 + */ + public Disinfect selectDisinfectById(Long id); + + /** + * 查询消毒记录列表 + * + * @param disinfect 消毒记录 + * @return 消毒记录集合 + */ + public List selectDisinfectList(Disinfect disinfect); + + /** + * 新增消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + public int insertDisinfect(List disinfect); + + /** + * 修改消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + public int updateDisinfect(Disinfect disinfect); + + /** + * 删除消毒记录 + * + * @param id 消毒记录主键 + * @return 结果 + */ + public int deleteDisinfectById(Long id); + + /** + * 批量删除消毒记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDisinfectByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java new file mode 100644 index 0000000..bcdc175 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/HealthMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Health; +import org.apache.ibatis.annotations.Mapper; + +/** + * 保健Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface HealthMapper +{ + /** + * 查询保健 + * + * @param id 保健主键 + * @return 保健 + */ + public Health selectHealthById(Long id); + + /** + * 查询保健列表 + * + * @param health 保健 + * @return 保健集合 + */ + public List selectHealthList(Health health); + + /** + * 新增保健 + * + * @param health 保健 + * @return 结果 + */ + public int insertHealth(List health); + + /** + * 修改保健 + * + * @param health 保健 + * @return 结果 + */ + public int updateHealth(Health health); + + /** + * 删除保健 + * + * @param id 保健主键 + * @return 结果 + */ + public int deleteHealthById(Long id); + + /** + * 批量删除保健 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteHealthByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java new file mode 100644 index 0000000..a500a9e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/ImmunityMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Immunity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 免疫Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface ImmunityMapper +{ + /** + * 查询免疫 + * + * @param id 免疫主键 + * @return 免疫 + */ + public Immunity selectImmunityById(Long id); + + /** + * 查询免疫列表 + * + * @param immunity 免疫 + * @return 免疫集合 + */ + public List selectImmunityList(Immunity immunity); + + /** + * 新增免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + public int insertImmunity(List immunity); + + /** + * 修改免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + public int updateImmunity(Immunity immunity); + + /** + * 删除免疫 + * + * @param id 免疫主键 + * @return 结果 + */ + public int deleteImmunityById(Long id); + + /** + * 批量删除免疫 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteImmunityByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java new file mode 100644 index 0000000..30b19d7 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineItemsMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineItems; +import org.apache.ibatis.annotations.Mapper; + +/** + * 检疫项目Mapper接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Mapper +public interface QuarantineItemsMapper +{ + /** + * 查询检疫项目 + * + * @param id 检疫项目主键 + * @return 检疫项目 + */ + public QuarantineItems selectQuarantineItemsById(Long id); + + /** + * 查询检疫项目列表 + * + * @param quarantineItems 检疫项目 + * @return 检疫项目集合 + */ + public List selectQuarantineItemsList(QuarantineItems quarantineItems); + + /** + * 新增检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + public int insertQuarantineItems(QuarantineItems quarantineItems); + + /** + * 修改检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + public int updateQuarantineItems(QuarantineItems quarantineItems); + + /** + * 删除检疫项目 + * + * @param id 检疫项目主键 + * @return 结果 + */ + public int deleteQuarantineItemsById(Long id); + + /** + * 批量删除检疫项目 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQuarantineItemsByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java new file mode 100644 index 0000000..bc4c181 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineReportMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineReport; +import org.apache.ibatis.annotations.Mapper; + +/** + * 检疫记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Mapper +public interface QuarantineReportMapper +{ + /** + * 查询检疫记录 + * + * @param id 检疫记录主键 + * @return 检疫记录 + */ + public QuarantineReport selectQuarantineReportById(Long id); + + /** + * 查询检疫记录列表 + * + * @param quarantineReport 检疫记录 + * @return 检疫记录集合 + */ + public List selectQuarantineReportList(QuarantineReport quarantineReport); + + /** + * 新增检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + public int insertQuarantineReport(List quarantineReport); + + /** + * 修改检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + public int updateQuarantineReport(QuarantineReport quarantineReport); + + /** + * 删除检疫记录 + * + * @param id 检疫记录主键 + * @return 结果 + */ + public int deleteQuarantineReportById(Long id); + + /** + * 批量删除检疫记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQuarantineReportByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java new file mode 100644 index 0000000..5df4a8a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/QuarantineSampleMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineSample; +import org.apache.ibatis.annotations.Mapper; + +/** + * 样品类型Mapper接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Mapper +public interface QuarantineSampleMapper +{ + /** + * 查询样品类型 + * + * @param id 样品类型主键 + * @return 样品类型 + */ + public QuarantineSample selectQuarantineSampleById(Long id); + + /** + * 查询样品类型列表 + * + * @param quarantineSample 样品类型 + * @return 样品类型集合 + */ + public List selectQuarantineSampleList(QuarantineSample quarantineSample); + + /** + * 新增样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + public int insertQuarantineSample(QuarantineSample quarantineSample); + + /** + * 修改样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + public int updateQuarantineSample(QuarantineSample quarantineSample); + + /** + * 删除样品类型 + * + * @param id 样品类型主键 + * @return 结果 + */ + public int deleteQuarantineSampleById(Long id); + + /** + * 批量删除样品类型 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQuarantineSampleByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java new file mode 100644 index 0000000..ed5de79 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwDiseaseMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwDisease; +import org.apache.ibatis.annotations.Mapper; + +/** + * 疾病Mapper接口 + * + * @author ruoyi + * @date 2025-07-09 + */ +@Mapper +public interface SwDiseaseMapper +{ + /** + * 查询疾病 + * + * @param id 疾病主键 + * @return 疾病 + */ + public SwDisease selectSwDiseaseById(Long id); + + /** + * 查询疾病列表 + * + * @param swDisease 疾病 + * @return 疾病集合 + */ + public List selectSwDiseaseList(SwDisease swDisease); + + /** + * 新增疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + public int insertSwDisease(SwDisease swDisease); + + /** + * 修改疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + public int updateSwDisease(SwDisease swDisease); + + /** + * 删除疾病 + * + * @param id 疾病主键 + * @return 结果 + */ + public int deleteSwDiseaseById(Long id); + + /** + * 批量删除疾病 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwDiseaseByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java new file mode 100644 index 0000000..19e73c4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicTypeMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicType; +import org.apache.ibatis.annotations.Mapper; + +/** + * 药品类型Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface SwMedicTypeMapper +{ + /** + * 查询药品类型 + * + * @param id 药品类型主键 + * @return 药品类型 + */ + public SwMedicType selectSwMedicTypeById(Long id); + + /** + * 查询药品类型列表 + * + * @param swMedicType 药品类型 + * @return 药品类型集合 + */ + public List selectSwMedicTypeList(SwMedicType swMedicType); + + /** + * 新增药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + public int insertSwMedicType(SwMedicType swMedicType); + + /** + * 修改药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + public int updateSwMedicType(SwMedicType swMedicType); + + /** + * 删除药品类型 + * + * @param id 药品类型主键 + * @return 结果 + */ + public int deleteSwMedicTypeById(Long id); + + /** + * 批量删除药品类型 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwMedicTypeByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java new file mode 100644 index 0000000..dd1ed67 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwMedicine; +import org.apache.ibatis.annotations.Mapper; + +/** + * 药品Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface SwMedicineMapper +{ + /** + * 查询药品 + * + * @param id 药品主键 + * @return 药品 + */ + public SwMedicine selectSwMedicineById(Long id); + + /** + * 查询药品列表 + * + * @param swMedicine 药品 + * @return 药品集合 + */ + public List selectSwMedicineList(SwMedicine swMedicine); + + /** + * 新增药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + public int insertSwMedicine(SwMedicine swMedicine); + + /** + * 修改药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + public int updateSwMedicine(SwMedicine swMedicine); + + /** + * 删除药品 + * + * @param id 药品主键 + * @return 结果 + */ + public int deleteSwMedicineById(Long id); + + /** + * 批量删除药品 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwMedicineByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java new file mode 100644 index 0000000..3d60eb0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwMedicineUsageMapper.java @@ -0,0 +1,90 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicineUsage; +import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; +import org.apache.ibatis.annotations.Mapper; + +/** + * 药品使用记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Mapper +public interface SwMedicineUsageMapper +{ + /** + * 查询药品使用记录 + * + * @param id 药品使用记录主键 + * @return 药品使用记录 + */ + public SwMedicineUsage selectSwMedicineUsageById(Integer id); + + /** + * 查询药品使用记录列表 + * + * @param swMedicineUsage 药品使用记录 + * @return 药品使用记录集合 + */ + public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage); + + /** + * 新增药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage); + + /** + * 修改药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage); + + /** + * 删除药品使用记录 + * + * @param id 药品使用记录主键 + * @return 结果 + */ + public int deleteSwMedicineUsageById(Integer id); + + /** + * 批量删除药品使用记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwMedicineUsageByIds(Long[] ids); + + /** + * 批量删除药品使用记录详情 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwMedicineUsageDetailsByMediUsages(Long[] ids); + + /** + * 批量新增药品使用记录详情 + * + * @param swMedicineUsageDetailsList 药品使用记录详情列表 + * @return 结果 + */ + public int batchSwMedicineUsageDetails(List swMedicineUsageDetailsList); + + + /** + * 通过药品使用记录主键删除药品使用记录详情信息 + * + * @param id 药品使用记录ID + * @return 结果 + */ + public int deleteSwMedicineUsageDetailsByMediUsage(Integer id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java new file mode 100644 index 0000000..35796dc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwPrescriptionMapper.java @@ -0,0 +1,89 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwPrescription; +import com.zhyc.module.biosafety.domain.SwPresDetail; +import org.apache.ibatis.annotations.Mapper; + +/** + * 处方Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface SwPrescriptionMapper +{ + /** + * 查询处方 + * + * @param id 处方主键 + * @return 处方 + */ + public SwPrescription selectSwPrescriptionById(Long id); + + /** + * 查询处方列表 + * + * @param swPrescription 处方 + * @return 处方集合 + */ + public List selectSwPrescriptionList(SwPrescription swPrescription); + + /** + * 新增处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + public int insertSwPrescription(SwPrescription swPrescription); + + /** + * 修改处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + public int updateSwPrescription(SwPrescription swPrescription); + + /** + * 删除处方 + * + * @param id 处方主键 + * @return 结果 + */ + public int deleteSwPrescriptionById(Long id); + + /** + * 批量删除处方 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwPrescriptionByIds(Long[] ids); + + /** + * 批量删除处方详情 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwPresDetailByPersIds(Long[] ids); + + /** + * 批量新增处方详情 + * + * @param swPresDetailList 处方详情列表 + * @return 结果 + */ + public int batchSwPresDetail(List swPresDetailList); + + + /** + * 通过处方主键删除处方详情信息 + * + * @param id 处方ID + * @return 结果 + */ + public int deleteSwPresDetailByPersId(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java new file mode 100644 index 0000000..417b3aa --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUnitMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.mapper; + +import com.zhyc.module.biosafety.domain.SwUnit; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 药品单位Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface SwUnitMapper +{ + /** + * 查询药品单位 + * + * @param id 药品单位主键 + * @return 药品单位 + */ + public SwUnit selectSwUnitById(Long id); + + /** + * 查询药品单位列表 + * + * @param swUnit 药品单位 + * @return 药品单位集合 + */ + public List selectSwUnitList(SwUnit swUnit); + + /** + * 新增药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + public int insertSwUnit(SwUnit swUnit); + + /** + * 修改药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + public int updateSwUnit(SwUnit swUnit); + + /** + * 删除药品单位 + * + * @param id 药品单位主键 + * @return 结果 + */ + public int deleteSwUnitById(Long id); + + /** + * 批量删除药品单位 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwUnitByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java new file mode 100644 index 0000000..a2b591b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/SwUsageMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwUsage; +import org.apache.ibatis.annotations.Mapper; + +/** + * 药品使用方法Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface SwUsageMapper +{ + /** + * 查询药品使用方法 + * + * @param id 药品使用方法主键 + * @return 药品使用方法 + */ + public SwUsage selectSwUsageById(Long id); + + /** + * 查询药品使用方法列表 + * + * @param swUsage 药品使用方法 + * @return 药品使用方法集合 + */ + public List selectSwUsageList(SwUsage swUsage); + + /** + * 新增药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + public int insertSwUsage(SwUsage swUsage); + + /** + * 修改药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + public int updateSwUsage(SwUsage swUsage); + + /** + * 删除药品使用方法 + * + * @param id 药品使用方法主键 + * @return 结果 + */ + public int deleteSwUsageById(Long id); + + /** + * 批量删除药品使用方法 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteSwUsageByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java new file mode 100644 index 0000000..643d9a0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/mapper/TreatmentMapper.java @@ -0,0 +1,66 @@ +package com.zhyc.module.biosafety.mapper; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.Treatment; +import org.apache.ibatis.annotations.Mapper; + +/** + * 治疗记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface TreatmentMapper +{ + /** + * 查询治疗记录 + * + * @param id 治疗记录主键 + * @return 治疗记录 + */ + public Treatment selectTreatmentById(Long id); + + /** + * 查询治疗记录列表 + * + * @param treatment 治疗记录 + * @return 治疗记录集合 + */ + public List selectTreatmentList(Treatment treatment); + + /** + * 新增治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + public int insertTreatment(Treatment treatment); + + /** + * 修改治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + public int updateTreatment(Treatment treatment); + + /** + * 删除治疗记录 + * + * @param id 治疗记录主键 + * @return 结果 + */ + public int deleteTreatmentById(Long id); + + /** + * 批量删除治疗记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteTreatmentByIds(Long[] ids); + + int insertTreatmentList(List treatments); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java new file mode 100644 index 0000000..f897fa4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDewormService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.Deworm; + +/** + * 驱虫Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IDewormService +{ + /** + * 查询驱虫 + * + * @param id 驱虫主键 + * @return 驱虫 + */ + public Deworm selectDewormById(Long id); + + /** + * 查询驱虫列表 + * + * @param deworm 驱虫 + * @return 驱虫集合 + */ + public List selectDewormList(Deworm deworm); + + /** + * 新增驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + public int insertDeworm(Deworm deworm); + + /** + * 修改驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + public int updateDeworm(Deworm deworm); + + /** + * 批量删除驱虫 + * + * @param ids 需要删除的驱虫主键集合 + * @return 结果 + */ + public int deleteDewormByIds(Long[] ids); + + /** + * 删除驱虫信息 + * + * @param id 驱虫主键 + * @return 结果 + */ + public int deleteDewormById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java new file mode 100644 index 0000000..d88f954 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDiagnosisService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.Diagnosis; + +/** + * 诊疗结果Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IDiagnosisService +{ + /** + * 查询诊疗结果 + * + * @param id 诊疗结果主键 + * @return 诊疗结果 + */ + public Diagnosis selectDiagnosisById(Long id); + + /** + * 查询诊疗结果列表 + * + * @param diagnosis 诊疗结果 + * @return 诊疗结果集合 + */ + public List selectDiagnosisList(Diagnosis diagnosis); + + /** + * 新增诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + public int insertDiagnosis(Diagnosis diagnosis); + + /** + * 修改诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + public int updateDiagnosis(Diagnosis diagnosis); + + /** + * 批量删除诊疗结果 + * + * @param ids 需要删除的诊疗结果主键集合 + * @return 结果 + */ + public int deleteDiagnosisByIds(Long[] ids); + + /** + * 删除诊疗结果信息 + * + * @param id 诊疗结果主键 + * @return 结果 + */ + public int deleteDiagnosisById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java new file mode 100644 index 0000000..d6d20f2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IDisinfectService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Disinfect; + +/** + * 消毒记录Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IDisinfectService +{ + /** + * 查询消毒记录 + * + * @param id 消毒记录主键 + * @return 消毒记录 + */ + public Disinfect selectDisinfectById(Long id); + + /** + * 查询消毒记录列表 + * + * @param disinfect 消毒记录 + * @return 消毒记录集合 + */ + public List selectDisinfectList(Disinfect disinfect); + + /** + * 新增消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + public int insertDisinfect(Disinfect disinfect); + + /** + * 修改消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + public int updateDisinfect(Disinfect disinfect); + + /** + * 批量删除消毒记录 + * + * @param ids 需要删除的消毒记录主键集合 + * @return 结果 + */ + public int deleteDisinfectByIds(Long[] ids); + + /** + * 删除消毒记录信息 + * + * @param id 消毒记录主键 + * @return 结果 + */ + public int deleteDisinfectById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java new file mode 100644 index 0000000..b9d8e8e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IHealthService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Health; + +/** + * 保健Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IHealthService +{ + /** + * 查询保健 + * + * @param id 保健主键 + * @return 保健 + */ + public Health selectHealthById(Long id); + + /** + * 查询保健列表 + * + * @param health 保健 + * @return 保健集合 + */ + public List selectHealthList(Health health); + + /** + * 新增保健 + * + * @param health 保健 + * @return 结果 + */ + public int insertHealth(Health health); + + /** + * 修改保健 + * + * @param health 保健 + * @return 结果 + */ + public int updateHealth(Health health); + + /** + * 批量删除保健 + * + * @param ids 需要删除的保健主键集合 + * @return 结果 + */ + public int deleteHealthByIds(Long[] ids); + + /** + * 删除保健信息 + * + * @param id 保健主键 + * @return 结果 + */ + public int deleteHealthById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java new file mode 100644 index 0000000..1f75b9b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IImmunityService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.Immunity; + +/** + * 免疫Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IImmunityService +{ + /** + * 查询免疫 + * + * @param id 免疫主键 + * @return 免疫 + */ + public Immunity selectImmunityById(Long id); + + /** + * 查询免疫列表 + * + * @param immunity 免疫 + * @return 免疫集合 + */ + public List selectImmunityList(Immunity immunity); + + /** + * 新增免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + public int insertImmunity(Immunity immunity); + + /** + * 修改免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + public int updateImmunity(Immunity immunity); + + /** + * 批量删除免疫 + * + * @param ids 需要删除的免疫主键集合 + * @return 结果 + */ + public int deleteImmunityByIds(Long[] ids); + + /** + * 删除免疫信息 + * + * @param id 免疫主键 + * @return 结果 + */ + public int deleteImmunityById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java new file mode 100644 index 0000000..59bbad1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineItemsService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineItems; + +/** + * 检疫项目Service接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +public interface IQuarantineItemsService +{ + /** + * 查询检疫项目 + * + * @param id 检疫项目主键 + * @return 检疫项目 + */ + public QuarantineItems selectQuarantineItemsById(Long id); + + /** + * 查询检疫项目列表 + * + * @param quarantineItems 检疫项目 + * @return 检疫项目集合 + */ + public List selectQuarantineItemsList(QuarantineItems quarantineItems); + + /** + * 新增检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + public int insertQuarantineItems(QuarantineItems quarantineItems); + + /** + * 修改检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + public int updateQuarantineItems(QuarantineItems quarantineItems); + + /** + * 批量删除检疫项目 + * + * @param ids 需要删除的检疫项目主键集合 + * @return 结果 + */ + public int deleteQuarantineItemsByIds(Long[] ids); + + /** + * 删除检疫项目信息 + * + * @param id 检疫项目主键 + * @return 结果 + */ + public int deleteQuarantineItemsById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java new file mode 100644 index 0000000..2aaeb26 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineReportService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineReport; + +/** + * 检疫记录Service接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +public interface IQuarantineReportService +{ + /** + * 查询检疫记录 + * + * @param id 检疫记录主键 + * @return 检疫记录 + */ + public QuarantineReport selectQuarantineReportById(Long id); + + /** + * 查询检疫记录列表 + * + * @param quarantineReport 检疫记录 + * @return 检疫记录集合 + */ + public List selectQuarantineReportList(QuarantineReport quarantineReport); + + /** + * 新增检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + public int insertQuarantineReport(QuarantineReport quarantineReport); + + /** + * 修改检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + public int updateQuarantineReport(QuarantineReport quarantineReport); + + /** + * 批量删除检疫记录 + * + * @param ids 需要删除的检疫记录主键集合 + * @return 结果 + */ + public int deleteQuarantineReportByIds(Long[] ids); + + /** + * 删除检疫记录信息 + * + * @param id 检疫记录主键 + * @return 结果 + */ + public int deleteQuarantineReportById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java new file mode 100644 index 0000000..5741045 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/IQuarantineSampleService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineSample; + +/** + * 样品类型Service接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +public interface IQuarantineSampleService +{ + /** + * 查询样品类型 + * + * @param id 样品类型主键 + * @return 样品类型 + */ + public QuarantineSample selectQuarantineSampleById(Long id); + + /** + * 查询样品类型列表 + * + * @param quarantineSample 样品类型 + * @return 样品类型集合 + */ + public List selectQuarantineSampleList(QuarantineSample quarantineSample); + + /** + * 新增样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + public int insertQuarantineSample(QuarantineSample quarantineSample); + + /** + * 修改样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + public int updateQuarantineSample(QuarantineSample quarantineSample); + + /** + * 批量删除样品类型 + * + * @param ids 需要删除的样品类型主键集合 + * @return 结果 + */ + public int deleteQuarantineSampleByIds(Long[] ids); + + /** + * 删除样品类型信息 + * + * @param id 样品类型主键 + * @return 结果 + */ + public int deleteQuarantineSampleById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java new file mode 100644 index 0000000..94dcb7b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwDiseaseService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwDisease; + +/** + * 疾病Service接口 + * + * @author ruoyi + * @date 2025-07-09 + */ +public interface ISwDiseaseService +{ + /** + * 查询疾病 + * + * @param id 疾病主键 + * @return 疾病 + */ + public SwDisease selectSwDiseaseById(Long id); + + /** + * 查询疾病列表 + * + * @param swDisease 疾病 + * @return 疾病集合 + */ + public List selectSwDiseaseList(SwDisease swDisease); + + /** + * 新增疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + public int insertSwDisease(SwDisease swDisease); + + /** + * 修改疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + public int updateSwDisease(SwDisease swDisease); + + /** + * 批量删除疾病 + * + * @param ids 需要删除的疾病主键集合 + * @return 结果 + */ + public int deleteSwDiseaseByIds(Long[] ids); + + /** + * 删除疾病信息 + * + * @param id 疾病主键 + * @return 结果 + */ + public int deleteSwDiseaseById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java new file mode 100644 index 0000000..186af6c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicTypeService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicType; + +/** + * 药品类型Service接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +public interface ISwMedicTypeService +{ + /** + * 查询药品类型 + * + * @param id 药品类型主键 + * @return 药品类型 + */ + public SwMedicType selectSwMedicTypeById(Long id); + + /** + * 查询药品类型列表 + * + * @param swMedicType 药品类型 + * @return 药品类型集合 + */ + public List selectSwMedicTypeList(SwMedicType swMedicType); + + /** + * 新增药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + public int insertSwMedicType(SwMedicType swMedicType); + + /** + * 修改药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + public int updateSwMedicType(SwMedicType swMedicType); + + /** + * 批量删除药品类型 + * + * @param ids 需要删除的药品类型主键集合 + * @return 结果 + */ + public int deleteSwMedicTypeByIds(Long[] ids); + + /** + * 删除药品类型信息 + * + * @param id 药品类型主键 + * @return 结果 + */ + public int deleteSwMedicTypeById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java new file mode 100644 index 0000000..abc52b5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicine; + +/** + * 药品Service接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +public interface ISwMedicineService +{ + /** + * 查询药品 + * + * @param id 药品主键 + * @return 药品 + */ + public SwMedicine selectSwMedicineById(Long id); + + /** + * 查询药品列表 + * + * @param swMedicine 药品 + * @return 药品集合 + */ + public List selectSwMedicineList(SwMedicine swMedicine); + + /** + * 新增药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + public int insertSwMedicine(SwMedicine swMedicine); + + /** + * 修改药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + public int updateSwMedicine(SwMedicine swMedicine); + + /** + * 批量删除药品 + * + * @param ids 需要删除的药品主键集合 + * @return 结果 + */ + public int deleteSwMedicineByIds(Long[] ids); + + /** + * 删除药品信息 + * + * @param id 药品主键 + * @return 结果 + */ + public int deleteSwMedicineById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java new file mode 100644 index 0000000..70e3dd8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwMedicineUsageService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwMedicineUsage; + +/** + * 药品使用记录Service接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +public interface ISwMedicineUsageService +{ + /** + * 查询药品使用记录 + * + * @param id 药品使用记录主键 + * @return 药品使用记录 + */ + public SwMedicineUsage selectSwMedicineUsageById(Integer id); + + /** + * 查询药品使用记录列表 + * + * @param swMedicineUsage 药品使用记录 + * @return 药品使用记录集合 + */ + public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage); + + /** + * 新增药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage); + + /** + * 修改药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage); + + /** + * 批量删除药品使用记录 + * + * @param ids 需要删除的药品使用记录主键集合 + * @return 结果 + */ + public int deleteSwMedicineUsageByIds(Long[] ids); + + /** + * 删除药品使用记录信息 + * + * @param id 药品使用记录主键 + * @return 结果 + */ + public int deleteSwMedicineUsageById(Integer id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java new file mode 100644 index 0000000..97c79fc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwPrescriptionService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwPrescription; + +/** + * 处方Service接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +public interface ISwPrescriptionService +{ + /** + * 查询处方 + * + * @param id 处方主键 + * @return 处方 + */ + public SwPrescription selectSwPrescriptionById(Long id); + + /** + * 查询处方列表 + * + * @param swPrescription 处方 + * @return 处方集合 + */ + public List selectSwPrescriptionList(SwPrescription swPrescription); + + /** + * 新增处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + public int insertSwPrescription(SwPrescription swPrescription); + + /** + * 修改处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + public int updateSwPrescription(SwPrescription swPrescription); + + /** + * 批量删除处方 + * + * @param ids 需要删除的处方主键集合 + * @return 结果 + */ + public int deleteSwPrescriptionByIds(Long[] ids); + + /** + * 删除处方信息 + * + * @param id 处方主键 + * @return 结果 + */ + public int deleteSwPrescriptionById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java new file mode 100644 index 0000000..13ee078 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUnitService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwUnit; + +/** + * 药品单位Service接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +public interface ISwUnitService +{ + /** + * 查询药品单位 + * + * @param id 药品单位主键 + * @return 药品单位 + */ + public SwUnit selectSwUnitById(Long id); + + /** + * 查询药品单位列表 + * + * @param swUnit 药品单位 + * @return 药品单位集合 + */ + public List selectSwUnitList(SwUnit swUnit); + + /** + * 新增药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + public int insertSwUnit(SwUnit swUnit); + + /** + * 修改药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + public int updateSwUnit(SwUnit swUnit); + + /** + * 批量删除药品单位 + * + * @param ids 需要删除的药品单位主键集合 + * @return 结果 + */ + public int deleteSwUnitByIds(Long[] ids); + + /** + * 删除药品单位信息 + * + * @param id 药品单位主键 + * @return 结果 + */ + public int deleteSwUnitById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java new file mode 100644 index 0000000..e6d3152 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ISwUsageService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; +import com.zhyc.module.biosafety.domain.SwUsage; + +/** + * 药品使用方法Service接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +public interface ISwUsageService +{ + /** + * 查询药品使用方法 + * + * @param id 药品使用方法主键 + * @return 药品使用方法 + */ + public SwUsage selectSwUsageById(Long id); + + /** + * 查询药品使用方法列表 + * + * @param swUsage 药品使用方法 + * @return 药品使用方法集合 + */ + public List selectSwUsageList(SwUsage swUsage); + + /** + * 新增药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + public int insertSwUsage(SwUsage swUsage); + + /** + * 修改药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + public int updateSwUsage(SwUsage swUsage); + + /** + * 批量删除药品使用方法 + * + * @param ids 需要删除的药品使用方法主键集合 + * @return 结果 + */ + public int deleteSwUsageByIds(Long[] ids); + + /** + * 删除药品使用方法信息 + * + * @param id 药品使用方法主键 + * @return 结果 + */ + public int deleteSwUsageById(Long id); +} 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 new file mode 100644 index 0000000..ed72447 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/ITreatmentService.java @@ -0,0 +1,64 @@ +package com.zhyc.module.biosafety.service; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.Treatment; +import org.springframework.transaction.annotation.Transactional; + +/** + * 治疗记录Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface ITreatmentService +{ + /** + * 查询治疗记录 + * + * @param id 治疗记录主键 + * @return 治疗记录 + */ + public Treatment selectTreatmentById(Long id); + + /** + * 查询治疗记录列表 + * + * @param treatment 治疗记录 + * @return 治疗记录集合 + */ + public List selectTreatmentList(Treatment treatment); + + /** + * 新增治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + public int insertTreatment(Treatment treatment); + + + /** + * 修改治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + public int updateTreatment(Treatment treatment); + + /** + * 批量删除治疗记录 + * + * @param ids 需要删除的治疗记录主键集合 + * @return 结果 + */ + public int deleteTreatmentByIds(Long[] ids); + + /** + * 删除治疗记录信息 + * + * @param id 治疗记录主键 + * @return 结果 + */ + public int deleteTreatmentById(Long id); +} 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 new file mode 100644 index 0000000..c6f850c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java @@ -0,0 +1,160 @@ +package com.zhyc.module.biosafety.service.impl; + +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.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.domain.Treatment; +import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.DewormMapper; +import com.zhyc.module.biosafety.service.IDewormService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 驱虫Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class DewormServiceImpl implements IDewormService +{ + @Autowired + private DewormMapper dewormMapper; + @Autowired + private SwMedicineUsageServiceImpl medicineUsageService; + @Autowired + private SwMedicineUsageMapper medicineUsageMapper; + @Autowired + private SheepFileMapper sheepFileMapper; + + /** + * 查询驱虫 + * + * @param id 驱虫主键 + * @return 驱虫 + */ + @Override + public Deworm selectDewormById(Long id) + { + Deworm deworm = dewormMapper.selectDewormById(id); + SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(deworm.getUsageId()); + deworm.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); + return deworm; + } + + /** + * 查询驱虫列表 + * + * @param deworm 驱虫 + * @return 驱虫 + */ + @Override + public List selectDewormList(Deworm deworm) + { + return dewormMapper.selectDewormList(deworm); + } + + /** + * 新增驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + @Override + @Transactional + public int insertDeworm(Deworm deworm) + { + String username = SecurityUtils.getUsername(); + // 使用记录的文件 + SwMedicineUsage medicineUsage = new SwMedicineUsage(); + medicineUsage.setSwMedicineUsageDetailsList(deworm.getUsageDetails()); + medicineUsage.setName("羊只驱虫"); + medicineUsage.setUseType("1"); + + List deworms = new ArrayList<>(); + + deworm.setCreateBy(username); + deworm.setCreateTime(DateUtils.getNowDate()); + for (Integer sheepId : deworm.getSheepIds()) { + SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); + + Deworm dew = new Deworm(); + BeanUtils.copyProperties(deworm, dew); + dew.setSheepId(Long.valueOf(sheepId)); + dew.setVariety(sheepFile.getVariety()); + dew.setSheepType(sheepFile.getName()); + dew.setMonthAge(sheepFile.getMonthAge()); + dew.setGender(String.valueOf(sheepFile.getGender())); + dew.setBreed(sheepFile.getBreed()); + dew.setParity(sheepFile.getParity()); +// 获取药品使用记录的id + Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); + dew.setUsageId(usageId); + deworms.add(dew); + } + + + return dewormMapper.insertDeworm(deworms); + } + + /** + * 修改驱虫 + * + * @param deworm 驱虫 + * @return 结果 + */ + @Override + @Transactional + public int updateDeworm(Deworm deworm) + { + String username = SecurityUtils.getUsername(); + for (SwMedicineUsageDetails usageDetail : deworm.getUsageDetails()) { + usageDetail.setMediUsage(deworm.getUsageId()); + } + medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(deworm.getUsageId()); + SwMedicineUsage swMedicineUsage = new SwMedicineUsage(); + + swMedicineUsage.setId(deworm.getUsageId()); + swMedicineUsage.setUpdateBy(username); + swMedicineUsage.setUpdateTime(DateUtils.getNowDate()); + medicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); + + medicineUsageMapper.batchSwMedicineUsageDetails(deworm.getUsageDetails()); + deworm.setUpdateBy(username); + deworm.setUpdateTime(DateUtils.getNowDate()); + return dewormMapper.updateDeworm(deworm); + } + + /** + * 批量删除驱虫 + * + * @param ids 需要删除的驱虫主键 + * @return 结果 + */ + @Override + public int deleteDewormByIds(Long[] ids) + { + return dewormMapper.deleteDewormByIds(ids); + } + + /** + * 删除驱虫信息 + * + * @param id 驱虫主键 + * @return 结果 + */ + @Override + public int deleteDewormById(Long id) + { + return dewormMapper.deleteDewormById(id); + } +} 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 new file mode 100644 index 0000000..c17e8ec --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java @@ -0,0 +1,133 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; +import java.util.Objects; + +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.domain.SheepFile; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.mapper.SheepFileMapper; +import com.zhyc.module.biosafety.mapper.DiagnosisMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.domain.Diagnosis; +import com.zhyc.module.biosafety.service.IDiagnosisService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 诊疗结果Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class DiagnosisServiceImpl implements IDiagnosisService +{ + @Autowired + private DiagnosisMapper diagnosisMapper; + @Autowired + private SheepFileMapper sheepFileMapper; + @Autowired + private BasSheepMapper sheepMapper; + + /** + * 查询诊疗结果 + * + * @param id 诊疗结果主键 + * @return 诊疗结果 + */ + @Override + public Diagnosis selectDiagnosisById(Long id) + { + return diagnosisMapper.selectDiagnosisById(id); + } + + /** + * 查询诊疗结果列表 + * + * @param diagnosis 诊疗结果 + * @return 诊疗结果 + */ + @Override + public List selectDiagnosisList(Diagnosis diagnosis) + { + return diagnosisMapper.selectDiagnosisList(diagnosis); + } + + /** + * 新增诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + @Override + @Transactional + public int insertDiagnosis(Diagnosis diagnosis) + { + SheepFile sheepFile = sheepFileMapper.selectSheepFileById(diagnosis.getSheepId()); + diagnosis.setSheepType(sheepFile.getName()); + diagnosis.setParity(String.valueOf(sheepFile.getParity())); + diagnosis.setGender(String.valueOf(sheepFile.getGender())); + diagnosis.setMonthAge(sheepFile.getMonthAge()); + + String username = SecurityUtils.getUsername(); + diagnosis.setCreateBy(username); + diagnosis.setCreateTime(DateUtils.getNowDate()); + if (!Objects.equals(sheepFile.getSheepfoldId(), diagnosis.getSheepfoldId())){ + BasSheep basSheep = new BasSheep(); + basSheep.setId(diagnosis.getSheepId()); + basSheep.setSheepfoldId(diagnosis.getSheepfoldId()); + sheepMapper.updateBasSheep(basSheep); + } +// 转入其他羊舍 + return diagnosisMapper.insertDiagnosis(diagnosis); + } + + /** + * 修改诊疗结果 + * + * @param diagnosis 诊疗结果 + * @return 结果 + */ + @Override + @Transactional + public int updateDiagnosis(Diagnosis diagnosis) + { + BasSheep basSheep = new BasSheep(); + basSheep.setId(diagnosis.getSheepId()); + basSheep.setSheepfoldId(diagnosis.getSheepfoldId()); + String username = SecurityUtils.getUsername(); + basSheep.setUpdateBy(username); + basSheep.setUpdateTime(DateUtils.getNowDate()); + diagnosis.setUpdateBy(username); + diagnosis.setUpdateTime(DateUtils.getNowDate()); + sheepMapper.updateBasSheep(basSheep); + return diagnosisMapper.updateDiagnosis(diagnosis); + } + + /** + * 批量删除诊疗结果 + * + * @param ids 需要删除的诊疗结果主键 + * @return 结果 + */ + @Override + public int deleteDiagnosisByIds(Long[] ids) + { + return diagnosisMapper.deleteDiagnosisByIds(ids); + } + + /** + * 删除诊疗结果信息 + * + * @param id 诊疗结果主键 + * @return 结果 + */ + @Override + public int deleteDiagnosisById(Long id) + { + return diagnosisMapper.deleteDiagnosisById(id); + } +} 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 new file mode 100644 index 0000000..24918ef --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DisinfectServiceImpl.java @@ -0,0 +1,148 @@ +package com.zhyc.module.biosafety.service.impl; + +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.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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.DisinfectMapper; +import com.zhyc.module.biosafety.domain.Disinfect; +import com.zhyc.module.biosafety.service.IDisinfectService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 消毒记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class DisinfectServiceImpl implements IDisinfectService +{ + @Autowired + private DisinfectMapper disinfectMapper; + + @Autowired + private SwMedicineUsageServiceImpl medicineUsageService; + + @Autowired + private SwMedicineUsageMapper medicineUsageMapper; + + @Autowired + private SheepFileMapper sheepFileMapper; + + /** + * 查询消毒记录 + * + * @param id 消毒记录主键 + * @return 消毒记录 + */ + @Override + public Disinfect selectDisinfectById(Long id) + { + Disinfect disinfect = disinfectMapper.selectDisinfectById(id); + SwMedicineUsage swMedicineUsage = medicineUsageService.selectSwMedicineUsageById(disinfect.getUsageId()); + disinfect.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); + return disinfect; + } + + /** + * 查询消毒记录列表 + * + * @param disinfect 消毒记录 + * @return 消毒记录 + */ + @Override + public List selectDisinfectList(Disinfect disinfect) + { + return disinfectMapper.selectDisinfectList(disinfect); + } + + /** + * 新增消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + @Override + public int insertDisinfect(Disinfect disinfect) + { + String username = SecurityUtils.getUsername(); + // 使用记录的文件 + SwMedicineUsage medicineUsage = new SwMedicineUsage(); + medicineUsage.setSwMedicineUsageDetailsList(disinfect.getUsageDetails()); + medicineUsage.setName("羊舍消毒"); + medicineUsage.setUseType("3"); + + + List disinfects = new ArrayList<>(); + + disinfect.setCreateBy(username); + disinfect.setCreateTime(DateUtils.getNowDate()); + + for (Integer sheepfold : disinfect.getSheepfoldIds()) { + Disinfect dis = new Disinfect(); + BeanUtils.copyProperties(disinfect,dis); + dis.setSheepfoldId(sheepfold); +// 获取药品使用记录的id + Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); + dis.setUsageId(usageId); + disinfects.add(dis); + } + + return disinfectMapper.insertDisinfect(disinfects); + } + + /** + * 修改消毒记录 + * + * @param disinfect 消毒记录 + * @return 结果 + */ + @Override + @Transactional + public int updateDisinfect(Disinfect disinfect) + { + for (SwMedicineUsageDetails usageDetail : disinfect.getUsageDetails()) { + usageDetail.setMediUsage(disinfect.getUsageId()); + } + medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(disinfect.getUsageId()); + medicineUsageMapper.batchSwMedicineUsageDetails(disinfect.getUsageDetails()); + String username = SecurityUtils.getUsername(); + disinfect.setUpdateBy(username); + disinfect.setUpdateTime(DateUtils.getNowDate()); + return disinfectMapper.updateDisinfect(disinfect); + } + + /** + * 批量删除消毒记录 + * + * @param ids 需要删除的消毒记录主键 + * @return 结果 + */ + @Override + public int deleteDisinfectByIds(Long[] ids) + { + return disinfectMapper.deleteDisinfectByIds(ids); + } + + /** + * 删除消毒记录信息 + * + * @param id 消毒记录主键 + * @return 结果 + */ + @Override + public int deleteDisinfectById(Long id) + { + return disinfectMapper.deleteDisinfectById(id); + } +} 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 new file mode 100644 index 0000000..bef0199 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java @@ -0,0 +1,152 @@ +package com.zhyc.module.biosafety.service.impl; + +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.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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.HealthMapper; +import com.zhyc.module.biosafety.domain.Health; +import com.zhyc.module.biosafety.service.IHealthService; + +/** + * 保健Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class HealthServiceImpl implements IHealthService +{ + @Autowired + private HealthMapper healthMapper; + + @Autowired + private SwMedicineUsageServiceImpl medicineUsageService; + + @Autowired + private SwMedicineUsageMapper medicineUsageMapper; + + @Autowired + private SheepFileMapper sheepFileMapper; + + /** + * 查询保健 + * + * @param id 保健主键 + * @return 保健 + */ + @Override + public Health selectHealthById(Long id) + { + Health health = healthMapper.selectHealthById(id); + SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(health.getUsageId()); + health.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); + return health; + } + + /** + * 查询保健列表 + * + * @param health 保健 + * @return 保健 + */ + @Override + public List selectHealthList(Health health) + { + return healthMapper.selectHealthList(health); + } + + /** + * 新增保健 + * + * @param health 保健 + * @return 结果 + */ + @Override + public int insertHealth(Health health) + { + String username = SecurityUtils.getUsername(); + + // 使用记录的文件 + SwMedicineUsage medicineUsage = new SwMedicineUsage(); + medicineUsage.setSwMedicineUsageDetailsList(health.getUsageDetails()); + medicineUsage.setName("羊只保健"); + medicineUsage.setUseType("2"); + + List healths = new ArrayList<>(); + health.setCreateBy(username); + health.setCreateTime(DateUtils.getNowDate()); + for (Integer sheepId : health.getSheepIds()) { + SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); + Health heal = new Health(); + BeanUtils.copyProperties(health, heal); + heal.setSheepId(Long.valueOf(sheepId)); + heal.setVariety(sheepFile.getVariety()); + heal.setSheepType(sheepFile.getName()); + heal.setMonthAge(sheepFile.getMonthAge()); + heal.setGender(String.valueOf(sheepFile.getGender())); + heal.setBreed(sheepFile.getBreed()); + heal.setParity(sheepFile.getParity()); + +// 获取药品使用记录的id + Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); + + heal.setUsageId(usageId); + healths.add(heal); + } + return healthMapper.insertHealth(healths); + } + + /** + * 修改保健 + * + * @param health 保健 + * @return 结果 + */ + @Override + public int updateHealth(Health health) + { + for (SwMedicineUsageDetails usageDetail : health.getUsageDetails()) { + usageDetail.setMediUsage(health.getUsageId()); + } + medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(health.getUsageId()); + medicineUsageMapper.batchSwMedicineUsageDetails(health.getUsageDetails()); + String username = SecurityUtils.getUsername(); + health.setUpdateBy(username); + health.setUpdateTime(DateUtils.getNowDate()); + return healthMapper.updateHealth(health); + } + + /** + * 批量删除保健 + * + * @param ids 需要删除的保健主键 + * @return 结果 + */ + @Override + public int deleteHealthByIds(Long[] ids) + { + return healthMapper.deleteHealthByIds(ids); + } + + /** + * 删除保健信息 + * + * @param id 保健主键 + * @return 结果 + */ + @Override + public int deleteHealthById(Long id) + { + return healthMapper.deleteHealthById(id); + } +} 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 new file mode 100644 index 0000000..6556faf --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java @@ -0,0 +1,159 @@ +package com.zhyc.module.biosafety.service.impl; + +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.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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.ImmunityMapper; +import com.zhyc.module.biosafety.domain.Immunity; +import com.zhyc.module.biosafety.service.IImmunityService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 免疫Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class ImmunityServiceImpl implements IImmunityService +{ + @Autowired + private ImmunityMapper immunityMapper; + + @Autowired + private SwMedicineUsageServiceImpl medicineUsageService; + + @Autowired + private SwMedicineUsageMapper medicineUsageMapper; + + @Autowired + private SheepFileMapper sheepFileMapper; + + + /** + * 查询免疫 + * + * @param id 免疫主键 + * @return 免疫 + */ + @Override + public Immunity selectImmunityById(Long id) + { + Immunity immunity = immunityMapper.selectImmunityById(id); + SwMedicineUsage swMedicineUsage = medicineUsageMapper.selectSwMedicineUsageById(immunity.getUsageId()); + immunity.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); + return immunity; + } + + /** + * 查询免疫列表 + * + * @param immunity 免疫 + * @return 免疫 + */ + @Override + public List selectImmunityList(Immunity immunity) + { + return immunityMapper.selectImmunityList(immunity); + } + + /** + * 新增免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + @Override + public int insertImmunity(Immunity immunity) + { + String username = SecurityUtils.getUsername(); + + // 使用记录的文件 + SwMedicineUsage medicineUsage = new SwMedicineUsage(); + medicineUsage.setSwMedicineUsageDetailsList(immunity.getUsageDetails()); + medicineUsage.setName("羊只免疫"); + medicineUsage.setUseType("0"); + medicineUsage.setCreateBy(username); + + List immunities = new ArrayList<>(); + + immunity.setUpdateBy(username); + immunity.setCreateTime(DateUtils.getNowDate()); + + for (Integer sheepId : immunity.getSheepIds()) { + SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); + + Immunity imm = new Immunity(); + BeanUtils.copyProperties(immunity, imm); + imm.setSheepId(Long.valueOf(sheepId)); + imm.setVariety(sheepFile.getVariety()); + imm.setSheepType(sheepFile.getName()); + imm.setMonthAge(sheepFile.getMonthAge()); + imm.setGender(String.valueOf(sheepFile.getGender())); + imm.setBreed(sheepFile.getBreed()); + imm.setParity(sheepFile.getParity()); +// 获取药品使用记录的id + Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); + + imm.setUsageId(usageId); + immunities.add(imm); + } + + + immunity.setCreateTime(DateUtils.getNowDate()); + return immunityMapper.insertImmunity(immunities); + } + + /** + * 修改免疫 + * + * @param immunity 免疫 + * @return 结果 + */ + @Override + @Transactional + public int updateImmunity(Immunity immunity) + { + for (SwMedicineUsageDetails usageDetail : immunity.getUsageDetails()) { + usageDetail.setMediUsage(immunity.getUsageId()); + } + medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(immunity.getUsageId()); + medicineUsageMapper.batchSwMedicineUsageDetails(immunity.getUsageDetails()); + immunity.setUpdateTime(DateUtils.getNowDate()); + return immunityMapper.updateImmunity(immunity); + } + + /** + * 批量删除免疫 + * + * @param ids 需要删除的免疫主键 + * @return 结果 + */ + @Override + public int deleteImmunityByIds(Long[] ids) + { + return immunityMapper.deleteImmunityByIds(ids); + } + + /** + * 删除免疫信息 + * + * @param id 免疫主键 + * @return 结果 + */ + @Override + public int deleteImmunityById(Long id) + { + return immunityMapper.deleteImmunityById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java new file mode 100644 index 0000000..541a759 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineItemsServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.QuarantineItems; +import com.zhyc.module.biosafety.mapper.QuarantineItemsMapper; +import com.zhyc.module.biosafety.service.IQuarantineItemsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 检疫项目Service业务层处理 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Service +public class QuarantineItemsServiceImpl implements IQuarantineItemsService +{ + @Autowired + private QuarantineItemsMapper quarantineItemsMapper; + + /** + * 查询检疫项目 + * + * @param id 检疫项目主键 + * @return 检疫项目 + */ + @Override + public QuarantineItems selectQuarantineItemsById(Long id) + { + return quarantineItemsMapper.selectQuarantineItemsById(id); + } + + /** + * 查询检疫项目列表 + * + * @param quarantineItems 检疫项目 + * @return 检疫项目 + */ + @Override + public List selectQuarantineItemsList(QuarantineItems quarantineItems) + { + return quarantineItemsMapper.selectQuarantineItemsList(quarantineItems); + } + + /** + * 新增检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + @Override + public int insertQuarantineItems(QuarantineItems quarantineItems) + { + return quarantineItemsMapper.insertQuarantineItems(quarantineItems); + } + + /** + * 修改检疫项目 + * + * @param quarantineItems 检疫项目 + * @return 结果 + */ + @Override + public int updateQuarantineItems(QuarantineItems quarantineItems) + { + return quarantineItemsMapper.updateQuarantineItems(quarantineItems); + } + + /** + * 批量删除检疫项目 + * + * @param ids 需要删除的检疫项目主键 + * @return 结果 + */ + @Override + public int deleteQuarantineItemsByIds(Long[] ids) + { + return quarantineItemsMapper.deleteQuarantineItemsByIds(ids); + } + + /** + * 删除检疫项目信息 + * + * @param id 检疫项目主键 + * @return 结果 + */ + @Override + public int deleteQuarantineItemsById(Long id) + { + return quarantineItemsMapper.deleteQuarantineItemsById(id); + } +} 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 new file mode 100644 index 0000000..4c55e78 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java @@ -0,0 +1,129 @@ +package com.zhyc.module.biosafety.service.impl; + +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.QuarantineReportMapper; +import com.zhyc.module.biosafety.domain.QuarantineReport; +import com.zhyc.module.biosafety.service.IQuarantineReportService; + +/** + * 检疫记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Service +public class QuarantineReportServiceImpl implements IQuarantineReportService +{ + @Autowired + private QuarantineReportMapper quarantineReportMapper; + @Autowired + private SheepFileServiceImpl sheepFileService; + + /** + * 查询检疫记录 + * + * @param id 检疫记录主键 + * @return 检疫记录 + */ + @Override + public QuarantineReport selectQuarantineReportById(Long id) + { + return quarantineReportMapper.selectQuarantineReportById(id); + } + + /** + * 查询检疫记录列表 + * + * @param quarantineReport 检疫记录 + * @return 检疫记录 + */ + @Override + public List selectQuarantineReportList(QuarantineReport quarantineReport) + { + return quarantineReportMapper.selectQuarantineReportList(quarantineReport); + } + + /** + * 新增检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + @Override + public int insertQuarantineReport(QuarantineReport quarantineReport) + { + String username = SecurityUtils.getUsername(); + quarantineReport.setCreateBy(username); + quarantineReport.setCreateTime(DateUtils.getNowDate()); + if (quarantineReport.getResult()==null){ + quarantineReport.setStatus(0); + }else { + quarantineReport.setStatus(1); + } + List list = new ArrayList(); + for (String sheepId : quarantineReport.getIds()) { + SheepFile sheepFile = sheepFileService.selectSheepFileById(Long.parseLong(sheepId)); + QuarantineReport quarantine= new QuarantineReport(); + BeanUtils.copyProperties(quarantineReport, quarantine); + quarantine.setSheepId(sheepFile.getId()); + quarantine.setSheepNo(sheepFile.getElectronicTags()); + quarantine.setSheepType(sheepFile.getName()); + +// 性别前端处理 + quarantine.setGender(String.valueOf(sheepFile.getGender())); + quarantine.setMonthAge(sheepFile.getMonthAge()); + quarantine.setParity(sheepFile.getParity()); + quarantine.setBreed(sheepFile.getBreed()); + list.add(quarantine); + } + return quarantineReportMapper.insertQuarantineReport(list); + } + + /** + * 修改检疫记录 + * + * @param quarantineReport 检疫记录 + * @return 结果 + */ + @Override + public int updateQuarantineReport(QuarantineReport quarantineReport) + { + String username = SecurityUtils.getUsername(); + quarantineReport.setUpdateBy(username); + quarantineReport.setUpdateTime(DateUtils.getNowDate()); + return quarantineReportMapper.updateQuarantineReport(quarantineReport); + } + + /** + * 批量删除检疫记录 + * + * @param ids 需要删除的检疫记录主键 + * @return 结果 + */ + @Override + public int deleteQuarantineReportByIds(Long[] ids) + { + return quarantineReportMapper.deleteQuarantineReportByIds(ids); + } + + /** + * 删除检疫记录信息 + * + * @param id 检疫记录主键 + * @return 结果 + */ + @Override + public int deleteQuarantineReportById(Long id) + { + return quarantineReportMapper.deleteQuarantineReportById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java new file mode 100644 index 0000000..6ac853d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineSampleServiceImpl.java @@ -0,0 +1,93 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.QuarantineSampleMapper; +import com.zhyc.module.biosafety.domain.QuarantineSample; +import com.zhyc.module.biosafety.service.IQuarantineSampleService; + +/** + * 样品类型Service业务层处理 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Service +public class QuarantineSampleServiceImpl implements IQuarantineSampleService +{ + @Autowired + private QuarantineSampleMapper quarantineSampleMapper; + + /** + * 查询样品类型 + * + * @param id 样品类型主键 + * @return 样品类型 + */ + @Override + public QuarantineSample selectQuarantineSampleById(Long id) + { + return quarantineSampleMapper.selectQuarantineSampleById(id); + } + + /** + * 查询样品类型列表 + * + * @param quarantineSample 样品类型 + * @return 样品类型 + */ + @Override + public List selectQuarantineSampleList(QuarantineSample quarantineSample) + { + return quarantineSampleMapper.selectQuarantineSampleList(quarantineSample); + } + + /** + * 新增样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + @Override + public int insertQuarantineSample(QuarantineSample quarantineSample) + { + return quarantineSampleMapper.insertQuarantineSample(quarantineSample); + } + + /** + * 修改样品类型 + * + * @param quarantineSample 样品类型 + * @return 结果 + */ + @Override + public int updateQuarantineSample(QuarantineSample quarantineSample) + { + return quarantineSampleMapper.updateQuarantineSample(quarantineSample); + } + + /** + * 批量删除样品类型 + * + * @param ids 需要删除的样品类型主键 + * @return 结果 + */ + @Override + public int deleteQuarantineSampleByIds(Long[] ids) + { + return quarantineSampleMapper.deleteQuarantineSampleByIds(ids); + } + + /** + * 删除样品类型信息 + * + * @param id 样品类型主键 + * @return 结果 + */ + @Override + public int deleteQuarantineSampleById(Long id) + { + return quarantineSampleMapper.deleteQuarantineSampleById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java new file mode 100644 index 0000000..8945257 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwDiseaseServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwDisease; +import com.zhyc.module.biosafety.mapper.SwDiseaseMapper; +import com.zhyc.module.biosafety.service.ISwDiseaseService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 疾病Service业务层处理 + * + * @author ruoyi + * @date 2025-07-09 + */ +@Service +public class SwDiseaseServiceImpl implements ISwDiseaseService +{ + @Autowired + private SwDiseaseMapper swDiseaseMapper; + + /** + * 查询疾病 + * + * @param id 疾病主键 + * @return 疾病 + */ + @Override + public SwDisease selectSwDiseaseById(Long id) + { + return swDiseaseMapper.selectSwDiseaseById(id); + } + + /** + * 查询疾病列表 + * + * @param swDisease 疾病 + * @return 疾病 + */ + @Override + public List selectSwDiseaseList(SwDisease swDisease) + { + return swDiseaseMapper.selectSwDiseaseList(swDisease); + } + + /** + * 新增疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + @Override + public int insertSwDisease(SwDisease swDisease) + { + return swDiseaseMapper.insertSwDisease(swDisease); + } + + /** + * 修改疾病 + * + * @param swDisease 疾病 + * @return 结果 + */ + @Override + public int updateSwDisease(SwDisease swDisease) + { + return swDiseaseMapper.updateSwDisease(swDisease); + } + + /** + * 批量删除疾病 + * + * @param ids 需要删除的疾病主键 + * @return 结果 + */ + @Override + public int deleteSwDiseaseByIds(Long[] ids) + { + return swDiseaseMapper.deleteSwDiseaseByIds(ids); + } + + /** + * 删除疾病信息 + * + * @param id 疾病主键 + * @return 结果 + */ + @Override + public int deleteSwDiseaseById(Long id) + { + return swDiseaseMapper.deleteSwDiseaseById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java new file mode 100644 index 0000000..2e1b20a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicTypeServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicType; +import com.zhyc.module.biosafety.mapper.SwMedicTypeMapper; +import com.zhyc.module.biosafety.service.ISwMedicTypeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 药品类型Service业务层处理 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Service +public class SwMedicTypeServiceImpl implements ISwMedicTypeService +{ + @Autowired + private SwMedicTypeMapper swMedicTypeMapper; + + /** + * 查询药品类型 + * + * @param id 药品类型主键 + * @return 药品类型 + */ + @Override + public SwMedicType selectSwMedicTypeById(Long id) + { + return swMedicTypeMapper.selectSwMedicTypeById(id); + } + + /** + * 查询药品类型列表 + * + * @param swMedicType 药品类型 + * @return 药品类型 + */ + @Override + public List selectSwMedicTypeList(SwMedicType swMedicType) + { + return swMedicTypeMapper.selectSwMedicTypeList(swMedicType); + } + + /** + * 新增药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + @Override + public int insertSwMedicType(SwMedicType swMedicType) + { + return swMedicTypeMapper.insertSwMedicType(swMedicType); + } + + /** + * 修改药品类型 + * + * @param swMedicType 药品类型 + * @return 结果 + */ + @Override + public int updateSwMedicType(SwMedicType swMedicType) + { + return swMedicTypeMapper.updateSwMedicType(swMedicType); + } + + /** + * 批量删除药品类型 + * + * @param ids 需要删除的药品类型主键 + * @return 结果 + */ + @Override + public int deleteSwMedicTypeByIds(Long[] ids) + { + return swMedicTypeMapper.deleteSwMedicTypeByIds(ids); + } + + /** + * 删除药品类型信息 + * + * @param id 药品类型主键 + * @return 结果 + */ + @Override + public int deleteSwMedicTypeById(Long id) + { + return swMedicTypeMapper.deleteSwMedicTypeById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java new file mode 100644 index 0000000..78d9ba5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwMedicine; +import com.zhyc.module.biosafety.mapper.SwMedicineMapper; +import com.zhyc.module.biosafety.service.ISwMedicineService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 药品Service业务层处理 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Service +public class SwMedicineServiceImpl implements ISwMedicineService +{ + @Autowired + private SwMedicineMapper swMedicineMapper; + + /** + * 查询药品 + * + * @param id 药品主键 + * @return 药品 + */ + @Override + public SwMedicine selectSwMedicineById(Long id) + { + return swMedicineMapper.selectSwMedicineById(id); + } + + /** + * 查询药品列表 + * + * @param swMedicine 药品 + * @return 药品 + */ + @Override + public List selectSwMedicineList(SwMedicine swMedicine) + { + return swMedicineMapper.selectSwMedicineList(swMedicine); + } + + /** + * 新增药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + @Override + public int insertSwMedicine(SwMedicine swMedicine) + { + return swMedicineMapper.insertSwMedicine(swMedicine); + } + + /** + * 修改药品 + * + * @param swMedicine 药品 + * @return 结果 + */ + @Override + public int updateSwMedicine(SwMedicine swMedicine) + { + return swMedicineMapper.updateSwMedicine(swMedicine); + } + + /** + * 批量删除药品 + * + * @param ids 需要删除的药品主键 + * @return 结果 + */ + @Override + public int deleteSwMedicineByIds(Long[] ids) + { + return swMedicineMapper.deleteSwMedicineByIds(ids); + } + + /** + * 删除药品信息 + * + * @param id 药品主键 + * @return 结果 + */ + @Override + public int deleteSwMedicineById(Long id) + { + return swMedicineMapper.deleteSwMedicineById(id); + } +} 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 new file mode 100644 index 0000000..d5d06f9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwMedicineUsageServiceImpl.java @@ -0,0 +1,139 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.module.biosafety.service.ISwMedicineUsageService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.ArrayList; +import com.zhyc.common.utils.StringUtils; +import org.springframework.transaction.annotation.Transactional; +import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails; +import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper; +import com.zhyc.module.biosafety.domain.SwMedicineUsage; + +/** + * 药品使用记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Service +public class SwMedicineUsageServiceImpl implements ISwMedicineUsageService +{ + @Autowired + private SwMedicineUsageMapper swMedicineUsageMapper; + + /** + * 查询药品使用记录 + * + * @param id 药品使用记录主键 + * @return 药品使用记录 + */ + @Override + public SwMedicineUsage selectSwMedicineUsageById(Integer id) + { + return swMedicineUsageMapper.selectSwMedicineUsageById(id); + } + + /** + * 查询药品使用记录列表 + * + * @param swMedicineUsage 药品使用记录 + * @return 药品使用记录 + */ + @Override + public List selectSwMedicineUsageList(SwMedicineUsage swMedicineUsage) + { + return swMedicineUsageMapper.selectSwMedicineUsageList(swMedicineUsage); + } + + /** + * 新增药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + @Transactional + @Override + public int insertSwMedicineUsage(SwMedicineUsage swMedicineUsage) + { + String username = SecurityUtils.getUsername(); + swMedicineUsage.setCreateBy(username); + swMedicineUsage.setCreateTime(DateUtils.getNowDate()); + int rows = swMedicineUsageMapper.insertSwMedicineUsage(swMedicineUsage); + insertSwMedicineUsageDetails(swMedicineUsage); + return swMedicineUsage.getId(); + } + + /** + * 修改药品使用记录 + * + * @param swMedicineUsage 药品使用记录 + * @return 结果 + */ + @Transactional + @Override + public int updateSwMedicineUsage(SwMedicineUsage swMedicineUsage) + { + String username = SecurityUtils.getUsername(); + swMedicineUsage.setUpdateBy(username); + swMedicineUsage.setUpdateTime(DateUtils.getNowDate()); + swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(swMedicineUsage.getId()); + insertSwMedicineUsageDetails(swMedicineUsage); + return swMedicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); + } + + /** + * 批量删除药品使用记录 + * + * @param ids 需要删除的药品使用记录主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteSwMedicineUsageByIds(Long[] ids) + { + swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsages(ids); + return swMedicineUsageMapper.deleteSwMedicineUsageByIds(ids); + } + + /** + * 删除药品使用记录信息 + * + * @param id 药品使用记录主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteSwMedicineUsageById(Integer id) + { + swMedicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(id); + return swMedicineUsageMapper.deleteSwMedicineUsageById(id); + } + + /** + * 新增药品使用记录详情信息 + * + * @param swMedicineUsage 药品使用记录对象 + */ + public void insertSwMedicineUsageDetails(SwMedicineUsage swMedicineUsage) + { + List swMedicineUsageDetailsList = swMedicineUsage.getSwMedicineUsageDetailsList(); + Integer id = swMedicineUsage.getId(); + if (StringUtils.isNotNull(swMedicineUsageDetailsList)) + { + List list = new ArrayList(); + for (SwMedicineUsageDetails swMedicineUsageDetails : swMedicineUsageDetailsList) + { + swMedicineUsageDetails.setMediUsage(id); + list.add(swMedicineUsageDetails); + } + if (list.size() > 0) + { + swMedicineUsageMapper.batchSwMedicineUsageDetails(list); + } + } + } +} 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 new file mode 100644 index 0000000..59841b8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwPrescriptionServiceImpl.java @@ -0,0 +1,139 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.module.biosafety.domain.SwPresDetail; +import com.zhyc.module.biosafety.domain.SwPrescription; +import com.zhyc.module.biosafety.mapper.SwPrescriptionMapper; +import com.zhyc.module.biosafety.service.ISwPrescriptionService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.ArrayList; +import com.zhyc.common.utils.StringUtils; +import org.springframework.transaction.annotation.Transactional; + +/** + * 处方Service业务层处理 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Service +public class SwPrescriptionServiceImpl implements ISwPrescriptionService +{ + @Autowired + private SwPrescriptionMapper swPrescriptionMapper; + + /** + * 查询处方 + * + * @param id 处方主键 + * @return 处方 + */ + @Override + public SwPrescription selectSwPrescriptionById(Long id) + { + return swPrescriptionMapper.selectSwPrescriptionById(id); + } + + /** + * 查询处方列表 + * + * @param swPrescription 处方 + * @return 处方 + */ + @Override + public List selectSwPrescriptionList(SwPrescription swPrescription) + { + return swPrescriptionMapper.selectSwPrescriptionList(swPrescription); + } + + /** + * 新增处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + @Transactional + @Override + public int insertSwPrescription(SwPrescription swPrescription) + { + String username = SecurityUtils.getUsername(); + swPrescription.setCreateBy(username); + swPrescription.setCreateTime(DateUtils.getNowDate()); + int rows = swPrescriptionMapper.insertSwPrescription(swPrescription); + insertSwPresDetail(swPrescription); + return rows; + } + + /** + * 修改处方 + * + * @param swPrescription 处方 + * @return 结果 + */ + @Transactional + @Override + public int updateSwPrescription(SwPrescription swPrescription) + { + String username = SecurityUtils.getUsername(); + swPrescription.setUpdateBy(username); + swPrescription.setUpdateTime(DateUtils.getNowDate()); + swPrescriptionMapper.deleteSwPresDetailByPersId(swPrescription.getId()); + insertSwPresDetail(swPrescription); + return swPrescriptionMapper.updateSwPrescription(swPrescription); + } + + /** + * 批量删除处方 + * + * @param ids 需要删除的处方主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteSwPrescriptionByIds(Long[] ids) + { + swPrescriptionMapper.deleteSwPresDetailByPersIds(ids); + return swPrescriptionMapper.deleteSwPrescriptionByIds(ids); + } + + /** + * 删除处方信息 + * + * @param id 处方主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteSwPrescriptionById(Long id) + { + swPrescriptionMapper.deleteSwPresDetailByPersId(id); + return swPrescriptionMapper.deleteSwPrescriptionById(id); + } + + /** + * 新增处方详情信息 + * + * @param swPrescription 处方对象 + */ + public void insertSwPresDetail(SwPrescription swPrescription) + { + List swPresDetailList = swPrescription.getSwPresDetailList(); + Long id = swPrescription.getId(); + if (StringUtils.isNotNull(swPresDetailList)) + { + List list = new ArrayList(); + for (SwPresDetail swPresDetail : swPresDetailList) + { + swPresDetail.setPersId(id); + list.add(swPresDetail); + } + if (list.size() > 0) + { + swPrescriptionMapper.batchSwPresDetail(list); + } + } + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java new file mode 100644 index 0000000..513c76d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUnitServiceImpl.java @@ -0,0 +1,95 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwUnit; +import com.zhyc.module.biosafety.mapper.SwUnitMapper; +import com.zhyc.module.biosafety.service.ISwUnitService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + + +/** + * 药品单位Service业务层处理 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Service +public class SwUnitServiceImpl implements ISwUnitService +{ + @Autowired + private SwUnitMapper swUnitMapper; + + /** + * 查询药品单位 + * + * @param id 药品单位主键 + * @return 药品单位 + */ + @Override + public SwUnit selectSwUnitById(Long id) + { + return swUnitMapper.selectSwUnitById(id); + } + + /** + * 查询药品单位列表 + * + * @param swUnit 药品单位 + * @return 药品单位 + */ + @Override + public List selectSwUnitList(SwUnit swUnit) + { + return swUnitMapper.selectSwUnitList(swUnit); + } + + /** + * 新增药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + @Override + public int insertSwUnit(SwUnit swUnit) + { + return swUnitMapper.insertSwUnit(swUnit); + } + + /** + * 修改药品单位 + * + * @param swUnit 药品单位 + * @return 结果 + */ + @Override + public int updateSwUnit(SwUnit swUnit) + { + return swUnitMapper.updateSwUnit(swUnit); + } + + /** + * 批量删除药品单位 + * + * @param ids 需要删除的药品单位主键 + * @return 结果 + */ + @Override + public int deleteSwUnitByIds(Long[] ids) + { + return swUnitMapper.deleteSwUnitByIds(ids); + } + + /** + * 删除药品单位信息 + * + * @param id 药品单位主键 + * @return 结果 + */ + @Override + public int deleteSwUnitById(Long id) + { + return swUnitMapper.deleteSwUnitById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java new file mode 100644 index 0000000..203445b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/SwUsageServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.biosafety.service.impl; + +import java.util.List; + +import com.zhyc.module.biosafety.domain.SwUsage; +import com.zhyc.module.biosafety.mapper.SwUsageMapper; +import com.zhyc.module.biosafety.service.ISwUsageService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 药品使用方法Service业务层处理 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Service +public class SwUsageServiceImpl implements ISwUsageService +{ + @Autowired + private SwUsageMapper swUsageMapper; + + /** + * 查询药品使用方法 + * + * @param id 药品使用方法主键 + * @return 药品使用方法 + */ + @Override + public SwUsage selectSwUsageById(Long id) + { + return swUsageMapper.selectSwUsageById(id); + } + + /** + * 查询药品使用方法列表 + * + * @param swUsage 药品使用方法 + * @return 药品使用方法 + */ + @Override + public List selectSwUsageList(SwUsage swUsage) + { + return swUsageMapper.selectSwUsageList(swUsage); + } + + /** + * 新增药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + @Override + public int insertSwUsage(SwUsage swUsage) + { + return swUsageMapper.insertSwUsage(swUsage); + } + + /** + * 修改药品使用方法 + * + * @param swUsage 药品使用方法 + * @return 结果 + */ + @Override + public int updateSwUsage(SwUsage swUsage) + { + return swUsageMapper.updateSwUsage(swUsage); + } + + /** + * 批量删除药品使用方法 + * + * @param ids 需要删除的药品使用方法主键 + * @return 结果 + */ + @Override + public int deleteSwUsageByIds(Long[] ids) + { + return swUsageMapper.deleteSwUsageByIds(ids); + } + + /** + * 删除药品使用方法信息 + * + * @param id 药品使用方法主键 + * @return 结果 + */ + @Override + public int deleteSwUsageById(Long id) + { + return swUsageMapper.deleteSwUsageById(id); + } +} 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 new file mode 100644 index 0000000..7ecd944 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java @@ -0,0 +1,176 @@ +package com.zhyc.module.biosafety.service.impl; + +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.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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.biosafety.mapper.TreatmentMapper; +import com.zhyc.module.biosafety.domain.Treatment; +import com.zhyc.module.biosafety.service.ITreatmentService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 治疗记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class TreatmentServiceImpl implements ITreatmentService +{ + @Autowired + private TreatmentMapper treatmentMapper; + @Autowired + private SwMedicineUsageServiceImpl medicineUsageService; + @Autowired + private SwMedicineUsageMapper medicineUsageMapper; + @Autowired + private SheepFileMapper sheepFileMapper; + + /** + * 查询治疗记录 + * + * @param id 治疗记录主键 + * @return 治疗记录 + */ + @Override + public Treatment selectTreatmentById(Long id) + { + Treatment treatment = treatmentMapper.selectTreatmentById(id); +// 获取药品使用记录 + SwMedicineUsage swMedicineUsage = medicineUsageService.selectSwMedicineUsageById(treatment.getUsageId()); + treatment.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList()); + return treatment; + } + + /** + * 查询治疗记录列表 + * + * @param treatment 治疗记录 + * @return 治疗记录 + */ + @Override + public List selectTreatmentList(Treatment treatment) + { + return treatmentMapper.selectTreatmentList(treatment); + } + + /** + * 新增治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + @Override + @Transactional + public int insertTreatment(Treatment treatment) + { + String username = SecurityUtils.getUsername(); +// 使用记录的文件 + SwMedicineUsage medicineUsage = new SwMedicineUsage(); + medicineUsage.setSwMedicineUsageDetailsList(treatment.getUsageDetails()); + medicineUsage.setName("羊只治疗"); + medicineUsage.setUseType("4"); + medicineUsage.setCreateBy(username); + medicineUsage.setCreateTime(DateUtils.getNowDate()); +// 新增单挑数据 + if (treatment.getSheepId()!=null){ +// 药品使用记录 + Integer id=medicineUsageService.insertSwMedicineUsage(medicineUsage); +// 药品使用记录id + treatment.setUsageId(id); + treatment.setCreateTime(DateUtils.getNowDate()); + return treatmentMapper.insertTreatment(treatment); + +// 批量新增 + }else { + + List treatments = new ArrayList<>(); + treatment.setCreateTime(DateUtils.getNowDate()); + for (String sheepId : treatment.getSheepIds()) { + SheepFile sheepFile = sheepFileMapper.selectSheepFileById(Long.valueOf(sheepId)); + Treatment treat = new Treatment(); + BeanUtils.copyProperties(treatment, treat); + treat.setSheepId(Long.valueOf(sheepId)); + treat.setVariety(sheepFile.getVariety()); + treat.setSheepType(sheepFile.getName()); + treat.setMonthAge(sheepFile.getMonthAge()); + treat.setGender(String.valueOf(sheepFile.getGender())); + treat.setBreed(sheepFile.getBreed()); + treat.setParity(sheepFile.getParity()); + treat.setLactDay(sheepFile.getLactationDay()); + treat.setGestDay(sheepFile.getGestationDay()); +// 获取药品使用记录的id + Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); + System.out.println(medicineUsage); + System.out.println(usageId); + treat.setUsageId(usageId); + treatments.add(treat); + } +// 药品使用记录 + medicineUsage.setSwMedicineUsageDetailsList(treatment.getUsageDetails()); + + + return treatmentMapper.insertTreatmentList(treatments); + } + + } + + /** + * 修改治疗记录 + * + * @param treatment 治疗记录 + * @return 结果 + */ + @Override + @Transactional + public int updateTreatment(Treatment treatment) + { + String username = SecurityUtils.getUsername(); + for (SwMedicineUsageDetails usageDetail : treatment.getUsageDetails()) { + usageDetail.setMediUsage(treatment.getUsageId()); + } + medicineUsageMapper.deleteSwMedicineUsageDetailsByMediUsage(treatment.getUsageId()); + SwMedicineUsage swMedicineUsage = new SwMedicineUsage(); + swMedicineUsage.setId(treatment.getUsageId()); + swMedicineUsage.setUpdateBy(username); + medicineUsageMapper.updateSwMedicineUsage(swMedicineUsage); + medicineUsageMapper.batchSwMedicineUsageDetails(treatment.getUsageDetails()); + treatment.setUpdateBy(username); + treatment.setUpdateTime(DateUtils.getNowDate()); + return treatmentMapper.updateTreatment(treatment); + } + + /** + * 批量删除治疗记录 + * + * @param ids 需要删除的治疗记录主键 + * @return 结果 + */ + @Override + public int deleteTreatmentByIds(Long[] ids) + { + return treatmentMapper.deleteTreatmentByIds(ids); + } + + /** + * 删除治疗记录信息 + * + * @param id 治疗记录主键 + * @return 结果 + */ + @Override + public int deleteTreatmentById(Long id) + { + return treatmentMapper.deleteTreatmentById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java new file mode 100644 index 0000000..4c1aa3f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpFreshMilkInspController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.dairyProducts.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.dairyProducts.domain.NpFreshMilkInsp; +import com.zhyc.module.dairyProducts.service.INpFreshMilkInspService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 鲜奶生产,成品检验记录Controller + * + * @author ruoyi + * @date 2025-07-18 + */ +@RestController +@RequestMapping("/freshMilkTest/freshMilkTest") +public class NpFreshMilkInspController extends BaseController +{ + @Autowired + private INpFreshMilkInspService npFreshMilkInspService; + + /** + * 查询鲜奶生产,成品检验记录列表 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:list')") + @GetMapping("/list") + public TableDataInfo list(NpFreshMilkInsp npFreshMilkInsp) + { + startPage(); + List list = npFreshMilkInspService.selectNpFreshMilkInspList(npFreshMilkInsp); + return getDataTable(list); + } + + /** + * 导出鲜奶生产,成品检验记录列表 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:export')") + @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, NpFreshMilkInsp npFreshMilkInsp) + { + List list = npFreshMilkInspService.selectNpFreshMilkInspList(npFreshMilkInsp); + ExcelUtil util = new ExcelUtil(NpFreshMilkInsp.class); + util.exportExcel(response, list, "鲜奶生产,成品检验记录数据"); + } + + /** + * 获取鲜奶生产,成品检验记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(npFreshMilkInspService.selectNpFreshMilkInspById(id)); + } + + /** + * 新增鲜奶生产,成品检验记录 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:add')") + @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody NpFreshMilkInsp npFreshMilkInsp) + { + return toAjax(npFreshMilkInspService.insertNpFreshMilkInsp(npFreshMilkInsp)); + } + + /** + * 修改鲜奶生产,成品检验记录 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:edit')") + @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody NpFreshMilkInsp npFreshMilkInsp) + { + return toAjax(npFreshMilkInspService.updateNpFreshMilkInsp(npFreshMilkInsp)); + } + + /** + * 删除鲜奶生产,成品检验记录 + */ + @PreAuthorize("@ss.hasPermi('freshMilkTest:freshMilkTest:remove')") + @Log(title = "鲜奶生产,成品检验记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(npFreshMilkInspService.deleteNpFreshMilkInspByIds(ids)); + } +} 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 new file mode 100644 index 0000000..44cbccb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkInOutStoreController.java @@ -0,0 +1,70 @@ +package com.zhyc.module.dairyProducts.controller; + +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.util.Date; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("/milkInOutStore") +public class NpMilkInOutStoreController extends BaseController { + + @Autowired + private INpMilkInOutStoreService service; + + /** 查询(日期区间)+ 动态列 */ + @PreAuthorize("@ss.hasPermi('milkInOutStore:list')") + @GetMapping("/list") + public TableDataInfo list( + @RequestParam(required=false) Date datetimeStart, + @RequestParam(required=false) Date datetimeEnd + ) { + startPage(); + List> rows = service.selectWithDynamicColumns(datetimeStart, datetimeEnd); + return getDataTable(rows); + } + + /** 导入 Excel */ + @Log(title="导入羊奶出入库", businessType=BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('milkInOutStore:import')") + @PostMapping("/import") + public AjaxResult importExcel(@RequestParam("file") MultipartFile file) throws Exception { + List> list = service.parseImportExcel(file); + service.batchInsertFromRows(list); + return AjaxResult.success("导入成功"); + } + /** 导出 Excel */ + @PreAuthorize("@ss.hasPermi('milkInOutStore:export')") + @Log(title="导出羊奶出入库", businessType=BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, + @RequestParam(required=false) Date datetimeStart, + @RequestParam(required=false) Date datetimeEnd + ) { + List> rows = service.selectWithDynamicColumns(datetimeStart, datetimeEnd); + // 解决方案:强制转换并压制警告 + @SuppressWarnings("unchecked") + ExcelUtil> util = new ExcelUtil<>((Class>) (Class) Map.class); + } + + /** 获取可选列定义(饲喂来源 + 销售去向) */ + @PreAuthorize("@ss.hasPermi('milkInOutStore:cols')") + @GetMapping("/columns") + public AjaxResult getColumns(){ + return AjaxResult.success(service.getAllColumnOptions()); + } +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java new file mode 100644 index 0000000..32e7db8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpMilkProdClassesController.java @@ -0,0 +1,69 @@ +package com.zhyc.module.dairyProducts.controller; + +import java.util.Date; +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +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.common.core.page.TableDataInfo; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; +import com.zhyc.module.dairyProducts.service.INpMilkProdClassesService; + +@RestController +@RequestMapping("/milkProdclasses/milkProdclasses") +public class NpMilkProdClassesController extends BaseController { + + @Autowired + private INpMilkProdClassesService npMilkProdClassesService; + + @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:list')") + @GetMapping("/list") + public TableDataInfo list( + @RequestParam(required = false) Date datetimeStart, + @RequestParam(required = false) Date datetimeEnd, + @RequestParam(required = false) String manageEarNo, // 改为单个字符串,模糊 + @RequestParam(required = false) String factory, + @RequestParam(required = false) Integer classes) { + startPage(); + List list = npMilkProdClassesService + .selectNpMilkProdClassesList(datetimeStart, datetimeEnd, + manageEarNo, factory, classes); + return getDataTable(list); + } + + @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:import')") + @Log(title = "班次产奶", businessType = BusinessType.IMPORT) + @PostMapping("/import") + public AjaxResult importData(MultipartFile file) { + try { + ExcelUtil util = new ExcelUtil<>(NpMilkProdClasses.class); + List list = util.importExcel(file.getInputStream()); + int rows = npMilkProdClassesService.importMilkProdClasses(list); + return success("成功导入 " + rows + " 行数据"); + } catch (Exception e) { + return error("导入失败:" + e.getMessage()); + } + } + + @PreAuthorize("@ss.hasPermi('milkProdclasses:milkProdclasses:export')") + @Log(title = "班次产奶", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, + @RequestParam(required = false) Date datetimeStart, + @RequestParam(required = false) Date datetimeEnd, + @RequestParam(required = false) String manageEarNos, + @RequestParam(required = false) String factory, + @RequestParam(required = false) Integer classes) { + List list = npMilkProdClassesService.selectNpMilkProdClassesList(datetimeStart, datetimeEnd, manageEarNos, factory, classes); + ExcelUtil util = new ExcelUtil<>(NpMilkProdClasses.class); + util.exportExcel(response, list, "班次产奶数据"); + } +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java new file mode 100644 index 0000000..bf88fcd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpRawMilkInspeController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.dairyProducts.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.dairyProducts.service.INpRawMilkInspeService; +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.dairyProducts.domain.NpRawMilkInspe; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 生乳检验记录Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/rawMilkTest/rawMilkTest") +public class NpRawMilkInspeController extends BaseController +{ + @Autowired + private INpRawMilkInspeService npRawMilkInspeService; + + /** + * 查询生乳检验记录列表 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:list')") + @GetMapping("/list") + public TableDataInfo list(NpRawMilkInspe npRawMilkInspe) + { + startPage(); + List list = npRawMilkInspeService.selectNpRawMilkInspeList(npRawMilkInspe); + return getDataTable(list); + } + + /** + * 导出生乳检验记录列表 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:export')") + @Log(title = "生乳检验记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, NpRawMilkInspe npRawMilkInspe) + { + List list = npRawMilkInspeService.selectNpRawMilkInspeList(npRawMilkInspe); + ExcelUtil util = new ExcelUtil(NpRawMilkInspe.class); + util.exportExcel(response, list, "生乳检验记录数据"); + } + + /** + * 获取生乳检验记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(npRawMilkInspeService.selectNpRawMilkInspeById(id)); + } + + /** + * 新增生乳检验记录 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:add')") + @Log(title = "生乳检验记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody NpRawMilkInspe npRawMilkInspe) + { + return toAjax(npRawMilkInspeService.insertNpRawMilkInspe(npRawMilkInspe)); + } + + /** + * 修改生乳检验记录 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:edit')") + @Log(title = "生乳检验记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody NpRawMilkInspe npRawMilkInspe) + { + return toAjax(npRawMilkInspeService.updateNpRawMilkInspe(npRawMilkInspe)); + } + + /** + * 删除生乳检验记录 + */ + @PreAuthorize("@ss.hasPermi('rawMilkTest:rawMilkTest:remove')") + @Log(title = "生乳检验记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(npRawMilkInspeService.deleteNpRawMilkInspeByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java new file mode 100644 index 0000000..0c2955d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpSheepMilkAnalysisController.java @@ -0,0 +1,79 @@ +package com.zhyc.module.dairyProducts.controller; + +import com.zhyc.common.annotation.Log; +import com.zhyc.common.core.controller.BaseController; +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.dairyProducts.domain.NpSheepMilkAnalysis; +import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/dairyProducts/sheepMilkAnalysis") +public class NpSheepMilkAnalysisController extends BaseController { + + @Autowired + private INpSheepMilkAnalysisService npSheepMilkAnalysisService; + + /** + * 查询奶产量分析列表 + */ + @GetMapping("/list") + public TableDataInfo list(NpSheepMilkAnalysis analysis) { + startPage(); + List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); + return getDataTable(list); + } + + /** + * 获取单个分析记录详细信息 + */ + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return AjaxResult.success(npSheepMilkAnalysisService.selectNpSheepMilkAnalysisById(id)); + } + /** + * 新增奶产量分析记录 + */ + @Log(title = "奶产量分析", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody NpSheepMilkAnalysis analysis) { + return toAjax(npSheepMilkAnalysisService.insertNpSheepMilkAnalysis(analysis)); + } + + /** + * 修改奶产量分析记录 + */ + @Log(title = "奶产量分析", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody NpSheepMilkAnalysis analysis) { + return toAjax(npSheepMilkAnalysisService.updateNpSheepMilkAnalysis(analysis)); + } + + /** + * 删除奶产量分析记录 + */ + @Log(title = "奶产量分析", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(npSheepMilkAnalysisService.deleteNpSheepMilkAnalysisByIds(ids)); + } + + /** + * 导出奶产量分析记录 + */ + @Log(title = "奶产量分析", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(NpSheepMilkAnalysis analysis) { + List list = npSheepMilkAnalysisService.selectNpSheepMilkAnalysisList(analysis); + ExcelUtil util = new ExcelUtil<>(NpSheepMilkAnalysis.class); + return util.exportExcel(list, "奶产量分析数据"); + } +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java new file mode 100644 index 0000000..fc7fda2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/NpYogurtInspController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.dairyProducts.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; +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.dairyProducts.service.INpYogurtInspService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 酸奶生产,成品检疫记录Controller + * + * @author ruoyi + * @date 2025-07-17 + */ +@RestController +@RequestMapping("/yogurtTest/yogurtTest") +public class NpYogurtInspController extends BaseController +{ + @Autowired + private INpYogurtInspService npYogurtInspService; + + /** + * 查询酸奶生产,成品检疫记录列表 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:list')") + @GetMapping("/list") + public TableDataInfo list(NpYogurtInsp npYogurtInsp) + { + startPage(); + List list = npYogurtInspService.selectNpYogurtInspList(npYogurtInsp); + return getDataTable(list); + } + + /** + * 导出酸奶生产,成品检疫记录列表 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:export')") + @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, NpYogurtInsp npYogurtInsp) + { + List list = npYogurtInspService.selectNpYogurtInspList(npYogurtInsp); + ExcelUtil util = new ExcelUtil(NpYogurtInsp.class); + util.exportExcel(response, list, "酸奶生产,成品检疫记录数据"); + } + + /** + * 获取酸奶生产,成品检疫记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(npYogurtInspService.selectNpYogurtInspById(id)); + } + + /** + * 新增酸奶生产,成品检疫记录 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:add')") + @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody NpYogurtInsp npYogurtInsp) + { + return toAjax(npYogurtInspService.insertNpYogurtInsp(npYogurtInsp)); + } + + /** + * 修改酸奶生产,成品检疫记录 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:edit')") + @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody NpYogurtInsp npYogurtInsp) + { + return toAjax(npYogurtInspService.updateNpYogurtInsp(npYogurtInsp)); + } + + /** + * 删除酸奶生产,成品检疫记录 + */ + @PreAuthorize("@ss.hasPermi('yogurtTest:yogurtTest:remove')") + @Log(title = "酸奶生产,成品检疫记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(npYogurtInspService.deleteNpYogurtInspByIds(ids)); + } +} 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 new file mode 100644 index 0000000..9447a07 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/RanchController.java @@ -0,0 +1,23 @@ +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 { + + @Autowired + private IRanchService ranchService; + + @GetMapping("/list") + public AjaxResult list() { + return success(ranchService.selectAllRanch()); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java new file mode 100644 index 0000000..bca0801 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzDryMatterCorrectionController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.dairyProducts.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.dairyProducts.domain.XzDryMatterCorrection; +import com.zhyc.module.dairyProducts.service.IXzDryMatterCorrectionService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 干物质校正Controller + * + * @author ruoyi + * @date 2025-07-12 + */ +@RestController +@RequestMapping("/dryMatterCorrection/dryMatterCorrection") +public class XzDryMatterCorrectionController extends BaseController +{ + @Autowired + private IXzDryMatterCorrectionService xzDryMatterCorrectionService; + + /** + * 查询干物质校正列表 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:list')") + @GetMapping("/list") + public TableDataInfo list(XzDryMatterCorrection xzDryMatterCorrection) + { + startPage(); + List list = xzDryMatterCorrectionService.selectXzDryMatterCorrectionList(xzDryMatterCorrection); + return getDataTable(list); + } + + /** + * 导出干物质校正列表 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:export')") + @Log(title = "干物质校正", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, XzDryMatterCorrection xzDryMatterCorrection) + { + List list = xzDryMatterCorrectionService.selectXzDryMatterCorrectionList(xzDryMatterCorrection); + ExcelUtil util = new ExcelUtil(XzDryMatterCorrection.class); + util.exportExcel(response, list, "干物质校正数据"); + } + + /** + * 获取干物质校正详细信息 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(xzDryMatterCorrectionService.selectXzDryMatterCorrectionById(id)); + } + + /** + * 新增干物质校正 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:add')") + @Log(title = "干物质校正", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody XzDryMatterCorrection xzDryMatterCorrection) + { + return toAjax(xzDryMatterCorrectionService.insertXzDryMatterCorrection(xzDryMatterCorrection)); + } + + /** + * 修改干物质校正 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:edit')") + @Log(title = "干物质校正", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody XzDryMatterCorrection xzDryMatterCorrection) + { + return toAjax(xzDryMatterCorrectionService.updateXzDryMatterCorrection(xzDryMatterCorrection)); + } + + /** + * 删除干物质校正 + */ + @PreAuthorize("@ss.hasPermi('dryMatterCorrection:dryMatterCorrection:remove')") + @Log(title = "干物质校正", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(xzDryMatterCorrectionService.deleteXzDryMatterCorrectionByIds(ids)); + } +} 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 new file mode 100644 index 0000000..ee52381 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzParityCorrectionController.java @@ -0,0 +1,112 @@ +package com.zhyc.module.dairyProducts.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.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 + * + * @author ruoyi + * @date 2025-07-14 + */ +@RestController +@RequestMapping("/parityCorrection/parityCorrection") +public class XzParityCorrectionController extends BaseController +{ + @Autowired + private IXzParityCorrectionService xzParityCorrectionService; + + /** + * 查询胎次校正列表 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:list')") +// @GetMapping("/list") +// public TableDataInfo list(XzParityCorrection xzParityCorrection) +// { +// startPage(); +// List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); +// return getDataTable(list); +// } + /** + * 获取全部胎次校正(无需分页,供下拉/列表直接显示) + */ + @GetMapping("/listAll") + public AjaxResult listAll(XzParityCorrection xzParityCorrection){ + List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); + return success(list); // 直接返回数组 + } + + /** + * 导出胎次校正列表 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:export')") + @Log(title = "胎次校正", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, XzParityCorrection xzParityCorrection) + { + List list = xzParityCorrectionService.selectXzParityCorrectionList(xzParityCorrection); + ExcelUtil util = new ExcelUtil(XzParityCorrection.class); + util.exportExcel(response, list, "胎次校正数据"); + } + + /** + * 获取胎次校正详细信息 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(xzParityCorrectionService.selectXzParityCorrectionById(id)); + } + + /** + * 新增胎次校正 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:add')") + @Log(title = "胎次校正", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody XzParityCorrection xzParityCorrection) + { + return toAjax(xzParityCorrectionService.insertXzParityCorrection(xzParityCorrection)); + } + + /** + * 修改胎次校正 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:edit')") + @Log(title = "胎次校正", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody XzParityCorrection xzParityCorrection) + { + return toAjax(xzParityCorrectionService.updateXzParityCorrection(xzParityCorrection)); + } + + /** + * 删除胎次校正 + */ + @PreAuthorize("@ss.hasPermi('parityCorrection:parityCorrection:remove')") + @Log(title = "胎次校正", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(xzParityCorrectionService.deleteXzParityCorrectionByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java new file mode 100644 index 0000000..ace94f9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/controller/XzWegihCorrectionController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.dairyProducts.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; +import com.zhyc.module.dairyProducts.service.IXzWegihCorrectionService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 称重校正Controller + * + * @author ruoyi + * @date 2025-07-12 + */ +@RestController +@RequestMapping("/weightCorrection/weightCorrection") +public class XzWegihCorrectionController extends BaseController +{ + @Autowired + private IXzWegihCorrectionService xzWegihCorrectionService; + + /** + * 查询称重校正列表 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:list')") + @GetMapping("/list") + public TableDataInfo list(XzWegihCorrection xzWegihCorrection) + { + startPage(); + List list = xzWegihCorrectionService.selectXzWegihCorrectionList(xzWegihCorrection); + return getDataTable(list); + } + + /** + * 导出称重校正列表 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:export')") + @Log(title = "称重校正", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, XzWegihCorrection xzWegihCorrection) + { + List list = xzWegihCorrectionService.selectXzWegihCorrectionList(xzWegihCorrection); + ExcelUtil util = new ExcelUtil(XzWegihCorrection.class); + util.exportExcel(response, list, "称重校正数据"); + } + + /** + * 获取称重校正详细信息 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(xzWegihCorrectionService.selectXzWegihCorrectionById(id)); + } + + /** + * 新增称重校正 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:add')") + @Log(title = "称重校正", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody XzWegihCorrection xzWegihCorrection) + { + return toAjax(xzWegihCorrectionService.insertXzWegihCorrection(xzWegihCorrection)); + } + + /** + * 修改称重校正 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:edit')") + @Log(title = "称重校正", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody XzWegihCorrection xzWegihCorrection) + { + return toAjax(xzWegihCorrectionService.updateXzWegihCorrection(xzWegihCorrection)); + } + + /** + * 删除称重校正 + */ + @PreAuthorize("@ss.hasPermi('weightCorrection:weightCorrection:remove')") + @Log(title = "称重校正", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(xzWegihCorrectionService.deleteXzWegihCorrectionByIds(ids)); + } +} 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 new file mode 100644 index 0000000..64e71f6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpFreshMilkInsp.java @@ -0,0 +1,90 @@ +package com.zhyc.module.dairyProducts.domain; + +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; + +/** + * 鲜奶生产,成品检验记录对象 np_fresh_milk_insp + * + * @author ruoyi + * @date 2025-07-18 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class NpFreshMilkInsp extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 来源 */ + @Excel(name = "来源") + private String source; + + /** 检测日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 脂肪g/100g */ + @Excel(name = "脂肪g/100g") + private Double fat; + + /** 蛋白质g/100g */ + @Excel(name = "蛋白质g/100g") + private Double protein; + + /** 非脂g/100g */ + @Excel(name = "非脂g/100g") + private Double nonFat; + + /** 酸度oT */ + @Excel(name = "酸度oT") + private Double acidity; + + /** 菌落总数CFU/ml_1 */ + @Excel(name = "菌落总数CFU/ml_1") + private Double bacterialColony1; + + /** 菌落总数CFU/ml_2 */ + @Excel(name = "菌落总数CFU/ml_2") + private Double bacterialColony2; + + /** 菌落总数CFU/ml_3 */ + @Excel(name = "菌落总数CFU/ml_3") + private Double bacterialColony3; + + /** 菌落总数CFU/ml_4 */ + @Excel(name = "菌落总数CFU/ml_4") + private Double bacterialColony4; + + /** 菌落总数CFU/ml_5 */ + @Excel(name = "菌落总数CFU/ml_5") + private Double bacterialColony5; + + /** 大肠菌群CFU/ml */ + @Excel(name = "大肠菌群CFU/ml") + private Double coli; + + /** 乳铁蛋白(mg/L) */ + @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") + private Double lactoferrin; + + /** 免疫球蛋白(mg/l) */ + @Excel(name = "免疫球蛋白", readConverterExp = "m=g/l") + private Double ig; + + /** 备注 */ + @Excel(name = "备注") + private String commnet; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java new file mode 100644 index 0000000..770ace1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkInOutStore.java @@ -0,0 +1,128 @@ +package com.zhyc.module.dairyProducts.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.zhyc.common.annotation.Excel; +import com.zhyc.common.core.domain.BaseEntity; + +public class NpMilkInOutStore extends BaseEntity { + private Integer id; + + @Excel(name = "日期") + private Date datetime; + + @Excel(name = "羊数") + private Integer num; + + @Excel(name = "初乳羊") + private Integer colostSheep; + + @Excel(name = "商乳入库") + private BigDecimal commercialIntake; + + @Excel(name = "抗乳入库") + private BigDecimal antiIntake; + + @Excel(name = "初乳入库") + private BigDecimal colostIntake; + + @Excel(name = "入库小计") + private BigDecimal intakeTotal; + + @Excel(name = "商乳实验用奶") + private BigDecimal commercialTest; + + @Excel(name = "初乳实验用奶") + private BigDecimal colostTest; + + @Excel(name = "商乳调拨出库") + private BigDecimal transferCommercial; + + @Excel(name = "抗乳调拨出库") + private BigDecimal transferAnti; + + @Excel(name = "初乳调拨出库") + private BigDecimal transferColost; + + @Excel(name = "调拨小计") + private BigDecimal transferTotal; + + @Excel(name = "损耗") + private BigDecimal loss; + + @Excel(name = "商乳库存") + private BigDecimal stockCommercial; + + @Excel(name = "抗乳库存") + private BigDecimal stockAnti; + + @Excel(name = "初乳库存") + private BigDecimal colost; + + @Excel(name = "爱特退回鲜奶") + private BigDecimal returnFresh; + + @Excel(name = "爱特退回酸奶") + private BigDecimal returnYogurt; + + // --- getters and setters --- + public Integer getId() { return id; } + public void setId(Integer id) { this.id = id; } + + public Date getDatetime() { return datetime; } + public void setDatetime(Date datetime) { this.datetime = datetime; } + + public Integer getNum() { return num; } + public void setNum(Integer num) { this.num = num; } + + public Integer getColostSheep() { return colostSheep; } + public void setColostSheep(Integer colostSheep) { this.colostSheep = colostSheep; } + + public BigDecimal getCommercialIntake() { return commercialIntake; } + public void setCommercialIntake(BigDecimal commercialIntake) { this.commercialIntake = commercialIntake; } + + public BigDecimal getAntiIntake() { return antiIntake; } + public void setAntiIntake(BigDecimal antiIntake) { this.antiIntake = antiIntake; } + + public BigDecimal getColostIntake() { return colostIntake; } + public void setColostIntake(BigDecimal colostIntake) { this.colostIntake = colostIntake; } + + public BigDecimal getIntakeTotal() { return intakeTotal; } + public void setIntakeTotal(BigDecimal intakeTotal) { this.intakeTotal = intakeTotal; } + + public BigDecimal getCommercialTest() { return commercialTest; } + public void setCommercialTest(BigDecimal commercialTest) { this.commercialTest = commercialTest; } + + public BigDecimal getColostTest() { return colostTest; } + public void setColostTest(BigDecimal colostTest) { this.colostTest = colostTest; } + + public BigDecimal getTransferCommercial() { return transferCommercial; } + public void setTransferCommercial(BigDecimal transferCommercial) { this.transferCommercial = transferCommercial; } + + public BigDecimal getTransferAnti() { return transferAnti; } + public void setTransferAnti(BigDecimal transferAnti) { this.transferAnti = transferAnti; } + + public BigDecimal getTransferColost() { return transferColost; } + public void setTransferColost(BigDecimal transferColost) { this.transferColost = transferColost; } + + public BigDecimal getTransferTotal() { return transferTotal; } + public void setTransferTotal(BigDecimal transferTotal) { this.transferTotal = transferTotal; } + + public BigDecimal getLoss() { return loss; } + public void setLoss(BigDecimal loss) { this.loss = loss; } + + public BigDecimal getStockCommercial() { return stockCommercial; } + public void setStockCommercial(BigDecimal stockCommercial) { this.stockCommercial = stockCommercial; } + + public BigDecimal getStockAnti() { return stockAnti; } + public void setStockAnti(BigDecimal stockAnti) { this.stockAnti = stockAnti; } + + public BigDecimal getColost() { return colost; } + public void setColost(BigDecimal colost) { this.colost = colost; } + + public BigDecimal getReturnFresh() { return returnFresh; } + public void setReturnFresh(BigDecimal returnFresh) { this.returnFresh = returnFresh; } + + public BigDecimal getReturnYogurt() { return returnYogurt; } + public void setReturnYogurt(BigDecimal returnYogurt) { this.returnYogurt = returnYogurt; } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java new file mode 100644 index 0000000..19e2ce9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpMilkProdClasses.java @@ -0,0 +1,80 @@ +package com.zhyc.module.dairyProducts.domain; + +import java.io.Serializable; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zhyc.common.annotation.Excel; + + + +public class NpMilkProdClasses implements Serializable { + private static final long serialVersionUID = 1L; + + private Long id; // 主键ID + private Date createTime; // 创建时间 + private Date updateTime; // 更新时间 + + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "日期") + private Date datetime; + + @Excel(name = "管理耳号") + private String manageEarNo; + + @Excel(name = "电子耳号") + private String electronicEarNo; + + @Excel(name = "胎次") + private Integer parity; + + @Excel(name = "厂区") + private String factory; + + @Excel(name = "班次") + private Integer classes; + + @Excel(name = "班次产奶量") + private Double milk; + + @Excel(name = "班次校正奶量") + private Double correctedMilk; + + private String sheepId; + + // Getters and Setters + public Long getId() { return id; } + public void setId(Long id) { this.id = id; } + + public Date getCreateTime() { return createTime; } + public void setCreateTime(Date createTime) { this.createTime = createTime; } + + public Date getUpdateTime() { return updateTime; } + public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } + + public Date getDatetime() { return datetime; } + public void setDatetime(Date datetime) { this.datetime = datetime; } + + public String getManageEarNo() { return manageEarNo; } + public void setManageEarNo(String manageEarNo) { this.manageEarNo = manageEarNo; } + + public String getElectronicEarNo() { return electronicEarNo; } + public void setElectronicEarNo(String electronicEarNo) { this.electronicEarNo = electronicEarNo; } + + public Integer getParity() { return parity; } + public void setParity(Integer parity) { this.parity = parity; } + + public String getFactory() { return factory; } + public void setFactory(String factory) { this.factory = factory; } + + public Integer getClasses() { return classes; } + public void setClasses(Integer classes) { this.classes = classes; } + + public Double getMilk() { return milk; } + public void setMilk(Double milk) { this.milk = milk; } + + public Double getCorrectedMilk() { return correctedMilk; } + public void setCorrectedMilk(Double correctedMilk) { this.correctedMilk = correctedMilk; } + + public String getSheepId() { return sheepId; } + public void setSheepId(String sheepId) { this.sheepId = sheepId; } +} \ No newline at end of file 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 new file mode 100644 index 0000000..0c71d35 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpRawMilkInspe.java @@ -0,0 +1,456 @@ +//package com.zhyc.module.dairyProducts.rawMilkTest.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; +// +///** +// * 生乳检验记录对象 np_raw_milk_inspe +// * +// * @author ruoyi +// * @date 2025-07-15 +// */ +//public class NpRawMilkInspe extends BaseEntity +//{ +// private static final long serialVersionUID = 1L; +// +// /** $column.columnComment */ +// private Long id; +// +// /** 检测日期 */ +// @JsonFormat(pattern = "yyyy-MM-dd") +// @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") +// private Date datetime; +// +// /** 来源 */ +// @Excel(name = "来源") +// private String source; +// +// /** 冰点(摄氏度) */ +// @Excel(name = "冰点", readConverterExp = "摄=氏度") +// private Double freeze; +// +// /** 相对密度(20摄氏度/40摄氏度) */ +// @Excel(name = "相对密度", readConverterExp = "2=0摄氏度/40摄氏度") +// private Double density; +// +// /** 脂肪g/100g */ +// @Excel(name = "脂肪g/100g") +// private Double fat; +// +// /** 蛋白质g/100g */ +// @Excel(name = "蛋白质g/100g") +// private Double protein; +// +// /** 非脂g/100g */ +// @Excel(name = "非脂g/100g") +// private Double nonFat; +// +// /** 干物质mg/100g */ +// @Excel(name = "干物质mg/100g") +// private Double dryMatter; +// +// /** 杂物质mg/100g */ +// @Excel(name = "杂物质mg/100g") +// private Double impurity; +// +// /** 乳糖g/100g */ +// @Excel(name = "乳糖g/100g") +// private Double lactose; +// +// /** 灰度g/100g */ +// @Excel(name = "灰度g/100g") +// private Double ashContent; +// +// /** 酸度 */ +// @Excel(name = "酸度") +// private Double acidity; +// +// /** ph */ +// @Excel(name = "ph") +// private Double ph; +// +// /** 菌落总数(CFU/g) */ +// @Excel(name = "菌落总数", readConverterExp = "C=FU/g") +// private Double bacterialColony; +// +// /** 乳铁蛋白(mg/L) */ +// @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") +// private Double lactoferrin; +// +// /** 免疫球蛋白(mg/L) */ +// @Excel(name = "免疫球蛋白", readConverterExp = "m=g/L") +// private Double ig; +// +// /** 体细胞(scc/ml) */ +// @Excel(name = "体细胞", readConverterExp = "s=cc/ml") +// private Double somaticCell; +// +// /** 尿素氮 */ +// @Excel(name = "尿素氮") +// private Double usea; +// +// /** 脂蛋比 */ +// @Excel(name = "脂蛋比") +// private Double fatRatio; +// +// /** 备注 */ +// @Excel(name = "备注") +// private String comment; +// +// public void setId(Long id) +// { +// this.id = id; +// } +// +// public Long getId() +// { +// return id; +// } +// +// public void setDatetime(Date datetime) +// { +// this.datetime = datetime; +// } +// +// public Date getDatetime() +// { +// return datetime; +// } +// +// public void setSource(String source) +// { +// this.source = source; +// } +// +// public String getSource() +// { +// return source; +// } +// +// public void setFreeze(Double freeze) +// { +// this.freeze = freeze; +// } +// +// public Double getFreeze() +// { +// return freeze; +// } +// +// public void setDensity(Double density) +// { +// this.density = density; +// } +// +// public Double getDensity() +// { +// return density; +// } +// +// public void setFat(Double fat) +// { +// this.fat = fat; +// } +// +// public Double getFat() +// { +// return fat; +// } +// +// public void setProtein(Double protein) +// { +// this.protein = protein; +// } +// +// public Double getProtein() +// { +// return protein; +// } +// +// public void setNonFat(Double nonFat) +// { +// this.nonFat = nonFat; +// } +// +// public Double getNonFat() +// { +// return nonFat; +// } +// +// public void setDryMatter(Double dryMatter) +// { +// this.dryMatter = dryMatter; +// } +// +// public Double getDryMatter() +// { +// return dryMatter; +// } +// +// public void setImpurity(Double impurity) +// { +// this.impurity = impurity; +// } +// +// public Double getImpurity() +// { +// return impurity; +// } +// +// public void setLactose(Double lactose) +// { +// this.lactose = lactose; +// } +// +// public Double getLactose() +// { +// return lactose; +// } +// +// public void setAshContent(Double ashContent) +// { +// this.ashContent = ashContent; +// } +// +// public Double getAshContent() +// { +// return ashContent; +// } +// +// public void setAcidity(Double acidity) +// { +// this.acidity = acidity; +// } +// +// public Double getAcidity() +// { +// return acidity; +// } +// +// public void setPh(Double ph) +// { +// this.ph = ph; +// } +// +// public Double getPh() +// { +// return ph; +// } +// +// public void setBacterialColony(Double bacterialColony) +// { +// this.bacterialColony = bacterialColony; +// } +// +// public Double getBacterialColony() +// { +// return bacterialColony; +// } +// +// public void setLactoferrin(Double lactoferrin) +// { +// this.lactoferrin = lactoferrin; +// } +// +// public Double getLactoferrin() +// { +// return lactoferrin; +// } +// +// public void setIg(Double ig) +// { +// this.ig = ig; +// } +// +// public Double getIg() +// { +// return ig; +// } +// +// public void setSomaticCell(Double somaticCell) +// { +// this.somaticCell = somaticCell; +// } +// +// public Double getSomaticCell() +// { +// return somaticCell; +// } +// +// public void setUsea(Double usea) +// { +// this.usea = usea; +// } +// +// public Double getUsea() +// { +// return usea; +// } +// +// public void setFatRatio(Double fatRatio) +// { +// this.fatRatio = fatRatio; +// } +// +// public Double getFatRatio() +// { +// return fatRatio; +// } +// +// 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("datetime", getDatetime()) +// .append("source", getSource()) +// .append("freeze", getFreeze()) +// .append("density", getDensity()) +// .append("fat", getFat()) +// .append("protein", getProtein()) +// .append("nonFat", getNonFat()) +// .append("dryMatter", getDryMatter()) +// .append("impurity", getImpurity()) +// .append("lactose", getLactose()) +// .append("ashContent", getAshContent()) +// .append("acidity", getAcidity()) +// .append("ph", getPh()) +// .append("bacterialColony", getBacterialColony()) +// .append("lactoferrin", getLactoferrin()) +// .append("ig", getIg()) +// .append("somaticCell", getSomaticCell()) +// .append("usea", getUsea()) +// .append("fatRatio", getFatRatio()) +// .append("comment", getComment()) +// .append("createBy", getCreateBy()) +// .append("createTime", getCreateTime()) +// .toString(); +// } +//} +package com.zhyc.module.dairyProducts.domain; + +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; + +/** + * 生乳检验记录对象 np_raw_milk_inspe + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class NpRawMilkInspe extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 检测日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 来源 */ + @Excel(name = "来源") + private String source; + + /** 冰点(摄氏度) */ + @Excel(name = "冰点", readConverterExp = "摄=氏度") + private Double freeze; + + /** 相对密度(20摄氏度/40摄氏度) */ + @Excel(name = "相对密度", readConverterExp = "2=0摄氏度/40摄氏度") + private Double density; + + /** 脂肪g/100g */ + @Excel(name = "脂肪g/100g") + private Double fat; + + /** 蛋白质g/100g */ + @Excel(name = "蛋白质g/100g") + private Double protein; + + /** 非脂g/100g */ + @Excel(name = "非脂g/100g") + private Double nonFat; + + /** 干物质mg/100g */ + @Excel(name = "干物质mg/100g") + private Double dryMatter; + + /** 杂质度mg/100g */ + @Excel(name = "杂质度mg/100g") + private Double impurityDegree; + + /** 乳糖g/100g */ + @Excel(name = "乳糖g/100g") + private Double lactose; + + /** 灰度g/100g */ + @Excel(name = "灰度g/100g") + private Double ashContent; + + /** 酸度 */ + @Excel(name = "酸度") + private Double acidity; + + /** ph */ + @Excel(name = "ph") + private Double ph; + + /** 菌落总数(CFU/g) */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialColony; + + /** 乳铁蛋白(mg/L) */ + @Excel(name = "乳铁蛋白", readConverterExp = "m=g/L") + private Double lactoferrin; + + /** 免疫球蛋白(mg/L) */ + @Excel(name = "免疫球蛋白", readConverterExp = "m=g/L") + private Double ig; + + /** 体细胞(scc/ml) */ + @Excel(name = "体细胞", readConverterExp = "s=cc/ml") + private Double somaticCell; + + /** 尿素氮 */ + @Excel(name = "尿素氮") + private Double usea; + + /** 脂蛋比 */ + @Excel(name = "脂蛋比") + private Double fatRatio; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java new file mode 100644 index 0000000..05972f6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpSheepMilkAnalysis.java @@ -0,0 +1,162 @@ +package com.zhyc.module.dairyProducts.domain; + +import java.util.Date; +public class NpSheepMilkAnalysis { + private String sheepId; + private String manageEarTag; + private String variety; + private Date milkingStartTime; + private Date dryEndTime; + private Integer milkingDays; + private Integer analysisDays; + private Integer maxParity; + private Double sumSystemMilk; + private Double sumCorrectedMilk; + private Double avgCorrectedDaily; + private Double sumParity1Milk; + private Double sumParity2Milk; + private Double sumParity3Milk; + private Double sumParity4Milk; + private Double avgParity1Daily; + private Double avgParity2Daily; + private Double avgParity3Daily; + private Double avgParity4Daily; + private Integer lactationDays; + private Double avgLast7Milk; + private Double avgLast7Corrected; + private Double avgLast14Milk; + private Double avgLast30Milk; + private String sheepCategory; + private Date birthday; + private Integer parity; + private Integer monthAge; + private Double currentWeight; + private String breedStatus; + private String fatherManageTags; + private String motherManageTags; + private String ranchName; + private String family; + private Integer motherMilkingDays; + private Double motherSumCorrected; + private Integer motherMaxParity; + private Double motherAvgCorrectedDaily; + private Date lastUpdate; + + public String getSheepId() { return sheepId; } + public void setSheepId(String sheepId) { this.sheepId = sheepId; } + + public String getManageEarTag() { return manageEarTag; } + public void setManageEarTag(String manageEarTag) { this.manageEarTag = manageEarTag; } + + public String getVariety() { return variety; } + public void setVariety(String variety) { this.variety = variety; } + + public Date getMilkingStartTime() { return milkingStartTime; } + public void setMilkingStartTime(Date milkingStartTime) { this.milkingStartTime = milkingStartTime; } + + public Date getDryEndTime() { return dryEndTime; } + public void setDryEndTime(Date dryEndTime) { this.dryEndTime = dryEndTime; } + + public Integer getMilkingDays() { return milkingDays; } + public void setMilkingDays(Integer milkingDays) { this.milkingDays = milkingDays; } + + public Integer getAnalysisDays() { return analysisDays; } + public void setAnalysisDays(Integer analysisDays) { this.analysisDays = analysisDays; } + + public Integer getMaxParity() { return maxParity; } + public void setMaxParity(Integer maxParity) { this.maxParity = maxParity; } + + public Double getSumSystemMilk() { return sumSystemMilk; } + public void setSumSystemMilk(Double sumSystemMilk) { this.sumSystemMilk = sumSystemMilk; } + + public Double getSumCorrectedMilk() { return sumCorrectedMilk; } + public void setSumCorrectedMilk(Double sumCorrectedMilk) { this.sumCorrectedMilk = sumCorrectedMilk; } + + public Double getAvgCorrectedDaily() { return avgCorrectedDaily; } + public void setAvgCorrectedDaily(Double avgCorrectedDaily) { this.avgCorrectedDaily = avgCorrectedDaily; } + + public Double getSumParity1Milk() { return sumParity1Milk; } + public void setSumParity1Milk(Double sumParity1Milk) { this.sumParity1Milk = sumParity1Milk; } + + public Double getSumParity2Milk() { return sumParity2Milk; } + public void setSumParity2Milk(Double sumParity2Milk) { this.sumParity2Milk = sumParity2Milk; } + + public Double getSumParity3Milk() { return sumParity3Milk; } + public void setSumParity3Milk(Double sumParity3Milk) { this.sumParity3Milk = sumParity3Milk; } + + public Double getSumParity4Milk() { return sumParity4Milk; } + public void setSumParity4Milk(Double sumParity4Milk) { this.sumParity4Milk = sumParity4Milk; } + + public Double getAvgParity1Daily() { return avgParity1Daily; } + public void setAvgParity1Daily(Double avgParity1Daily) { this.avgParity1Daily = avgParity1Daily; } + + public Double getAvgParity2Daily() { return avgParity2Daily; } + public void setAvgParity2Daily(Double avgParity2Daily) { this.avgParity2Daily = avgParity2Daily; } + + public Double getAvgParity3Daily() { return avgParity3Daily; } + public void setAvgParity3Daily(Double avgParity3Daily) { this.avgParity3Daily = avgParity3Daily; } + + public Double getAvgParity4Daily() { return avgParity4Daily; } + public void setAvgParity4Daily(Double avgParity4Daily) { this.avgParity4Daily = avgParity4Daily; } + + public Integer getLactationDays() { return lactationDays; } + public void setLactationDays(Integer lactationDays) { this.lactationDays = lactationDays; } + + public Double getAvgLast7Milk() { return avgLast7Milk; } + public void setAvgLast7Milk(Double avgLast7Milk) { this.avgLast7Milk = avgLast7Milk; } + + public Double getAvgLast7Corrected() { return avgLast7Corrected; } + public void setAvgLast7Corrected(Double avgLast7Corrected) { this.avgLast7Corrected = avgLast7Corrected; } + + public Double getAvgLast14Milk() { return avgLast14Milk; } + public void setAvgLast14Milk(Double avgLast14Milk) { this.avgLast14Milk = avgLast14Milk; } + + public Double getAvgLast30Milk() { return avgLast30Milk; } + public void setAvgLast30Milk(Double avgLast30Milk) { this.avgLast30Milk = avgLast30Milk; } + + public String getSheepCategory() { return sheepCategory; } + public void setSheepCategory(String sheepCategory) { this.sheepCategory = sheepCategory; } + + public Date getBirthday() { return birthday; } + public void setBirthday(Date birthday) { this.birthday = birthday; } + + public Integer getParity() { return parity; } + public void setParity(Integer parity) { this.parity = parity; } + + public Integer getMonthAge() { return monthAge; } + public void setMonthAge(Integer monthAge) { this.monthAge = monthAge; } + + public Double getCurrentWeight() { return currentWeight; } + public void setCurrentWeight(Double currentWeight) { this.currentWeight = currentWeight; } + + public String getBreedStatus() { return breedStatus; } + public void setBreedStatus(String breedStatus) { this.breedStatus = breedStatus; } + + public String getFatherManageTags() { return fatherManageTags; } + public void setFatherManageTags(String fatherManageTags) { this.fatherManageTags = fatherManageTags; } + + public String getMotherManageTags() { return motherManageTags; } + public void setMotherManageTags(String motherManageTags) { this.motherManageTags = motherManageTags; } + + public String getRanchName() { return ranchName; } + public void setRanchName(String ranchName) { this.ranchName = ranchName; } + + public String getFamily() { return family; } + public void setFamily(String family) { this.family = family; } + + public Integer getMotherMilkingDays() { return motherMilkingDays; } + public void setMotherMilkingDays(Integer motherMilkingDays) { this.motherMilkingDays = motherMilkingDays; } + + public Double getMotherSumCorrected() { return motherSumCorrected; } + public void setMotherSumCorrected(Double motherSumCorrected) { this.motherSumCorrected = motherSumCorrected; } + + public Integer getMotherMaxParity() { return motherMaxParity; } + public void setMotherMaxParity(Integer motherMaxParity) { this.motherMaxParity = motherMaxParity; } + + public Double getMotherAvgCorrectedDaily() { return motherAvgCorrectedDaily; } + public void setMotherAvgCorrectedDaily(Double motherAvgCorrectedDaily) { this.motherAvgCorrectedDaily = motherAvgCorrectedDaily; } + + public Date getLastUpdate() { return lastUpdate; } + public void setLastUpdate(Date lastUpdate) { this.lastUpdate = lastUpdate; } +} + 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 new file mode 100644 index 0000000..e284508 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/NpYogurtInsp.java @@ -0,0 +1,91 @@ +package com.zhyc.module.dairyProducts.domain; + +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; + +/** + * 酸奶生产,成品检疫记录对象 np_yogurt_insp + * + * @author ruoyi + * @date 2025-07-17 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class NpYogurtInsp extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 来源 */ + @Excel(name = "来源") + private String source; + + /** 检测日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "检测日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 脂肪g/100g */ + @Excel(name = "脂肪g/100g") + private Double fat; + + /** 蛋白质g/100g */ + @Excel(name = "蛋白质g/100g") + private Double protein; + + /** 非脂g/100g + */ + @Excel(name = "非脂g/100g") + private Double nonFat; + + /** 酸度oT */ + @Excel(name = "酸度oT") + private Double acidity; + + /** 菌落总数(CFU/g)_1 */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialColony1; + + /** 菌落总数(CFU/g)_2 */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialClony2; + + /** 菌落总数(CFU/g)_3 */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialClony3; + + /** 菌落总数(CFU/g)_4 */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialClony4; + + /** 菌落总数(CFU/g)_5 */ + @Excel(name = "菌落总数", readConverterExp = "C=FU/g") + private Double bacterialClony5; + + /** 酵母菌(CFU/g) */ + @Excel(name = "酵母菌(CFU/g)") + private Double yeast; + + /** 霉菌(CFU/g) */ + @Excel(name = "霉菌", readConverterExp = "C=FU/g") + private Double mould; + + /** 乳酸菌数(CFU/g) */ + @Excel(name = "乳酸菌数", readConverterExp = "C=FU/g") + private Double lacto; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java new file mode 100644 index 0000000..7486310 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/Ranch.java @@ -0,0 +1,12 @@ +package com.zhyc.module.dairyProducts.domain; + +public class Ranch { + private String ranchCode; + private String ranchName; + + public String getRanchCode() { return ranchCode; } + public void setRanchCode(String ranchCode) { this.ranchCode = ranchCode; } + + public String getRanchName() { return ranchName; } + public void setRanchName(String ranchName) { this.ranchName = ranchName; } +} \ No newline at end of file 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 new file mode 100644 index 0000000..a211abb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzDryMatterCorrection.java @@ -0,0 +1,37 @@ +package com.zhyc.module.dairyProducts.domain; + +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; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class XzDryMatterCorrection extends BaseEntity { + private static final long serialVersionUID = 1L; + + private Long id; + + @JsonFormat(pattern = "yyyy-MM") + @Excel(name = "年月", width = 30, dateFormat = "yyyy-MM") + private Date datetime; + + @Excel(name = "厂区") + private String factory; + + @Excel(name = "干物质含量") + private Double content; + + @Excel(name = "干物质标准") + private Double standard; + + @Excel(name = "干物质系数") + private Double coefficient; + +} \ No newline at end of file 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 new file mode 100644 index 0000000..d1a93e6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzParityCorrection.java @@ -0,0 +1,35 @@ +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; + +/** + * 胎次校正对象 xz_parity_correction + * + * @author ruoyi + * @date 2025-07-14 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class XzParityCorrection extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 胎次 */ + @Excel(name = "胎次") + private Integer parity; + + /** 系数 */ + @Excel(name = "系数") + private Double coef; + +} 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 new file mode 100644 index 0000000..6bba703 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/domain/XzWegihCorrection.java @@ -0,0 +1,51 @@ +package com.zhyc.module.dairyProducts.domain; + +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; + +/** + * 称重校正对象 xz_wegih_correction + * + * @author ruoyi + * @date 2025-07-12 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class XzWegihCorrection extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 厂区 */ + @Excel(name = "厂区") + private String factory; + + /** 实际奶量 */ + @Excel(name = "实际奶量") + private Double actual; + + /** 系统奶量 */ + @Excel(name = "系统奶量") + private Double systemMilk; // 修改字段名 + + /** 称重系数(计算字段) */ + @Excel(name = "称重系数") + private Double coefficient; + + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java new file mode 100644 index 0000000..bb5ca20 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpFreshMilkInspMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; +import org.apache.ibatis.annotations.Mapper; + +/** + * 鲜奶生产,成品检验记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-18 + */ +@Mapper +public interface NpFreshMilkInspMapper +{ + /** + * 查询鲜奶生产,成品检验记录 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 鲜奶生产,成品检验记录 + */ + public NpFreshMilkInsp selectNpFreshMilkInspById(Long id); + + /** + * 查询鲜奶生产,成品检验记录列表 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 鲜奶生产,成品检验记录集合 + */ + public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 新增鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 修改鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 删除鲜奶生产,成品检验记录 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 结果 + */ + public int deleteNpFreshMilkInspById(Long id); + + /** + * 批量删除鲜奶生产,成品检验记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteNpFreshMilkInspByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java new file mode 100644 index 0000000..aa4ed29 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkInOutStoreMapper.java @@ -0,0 +1,23 @@ +package com.zhyc.module.dairyProducts.mapper; + +import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; +import org.apache.ibatis.annotations.Param; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +public interface NpMilkInOutStoreMapper { + List> selectWithColumns( + @Param("start") Date start, @Param("end") Date end, + @Param("feedSources") List feedSources, + @Param("saleDestinations") List saleDestinations + ); + int insertStore(NpMilkInOutStore store); + void insertFeedRecord(@Param("storeId") Integer storeId, @Param("source") String source, @Param("amount") java.math.BigDecimal amount); + void insertSaleRecord(@Param("storeId") Integer storeId, @Param("destination") String dest, @Param("amount") java.math.BigDecimal amount); + + List selectFeedSources(); + List selectSaleDestinations(); +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java new file mode 100644 index 0000000..82a3238 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpMilkProdClassesMapper.java @@ -0,0 +1,25 @@ +package com.zhyc.module.dairyProducts.mapper; + +import org.apache.ibatis.annotations.Param; +import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; +import java.util.Date; +import java.util.List; + +public interface NpMilkProdClassesMapper { + List selectNpMilkProdClassesList( + @Param("datetimeStart") Date datetimeStart, + @Param("datetimeEnd") Date datetimeEnd, + @Param("manageEarNo") String manageEarNo, + @Param("factory") String factory, + @Param("classes") Integer classes); + + int insertNpMilkProdClasses(NpMilkProdClasses row); + + String selectSheepIdByManageEarNo(@Param("manageEarNo") String manageEarNo); + + Double getWeightCorrection(@Param("date") Date date, @Param("factory") String factory); + + Double getParityCorrection(@Param("parity") Integer parity); + + Double getDryMatterCorrection(@Param("date") Date date, @Param("factory") String factory); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java new file mode 100644 index 0000000..8b455ba --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpRawMilkInspeMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; +import org.apache.ibatis.annotations.Mapper; + +/** + * 生乳检验记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface NpRawMilkInspeMapper +{ + /** + * 查询生乳检验记录 + * + * @param id 生乳检验记录主键 + * @return 生乳检验记录 + */ + public NpRawMilkInspe selectNpRawMilkInspeById(Long id); + + /** + * 查询生乳检验记录列表 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 生乳检验记录集合 + */ + public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe); + + /** + * 新增生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); + + /** + * 修改生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); + + /** + * 删除生乳检验记录 + * + * @param id 生乳检验记录主键 + * @return 结果 + */ + public int deleteNpRawMilkInspeById(Long id); + + /** + * 批量删除生乳检验记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteNpRawMilkInspeByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java new file mode 100644 index 0000000..f330707 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpSheepMilkAnalysisMapper.java @@ -0,0 +1,19 @@ +package com.zhyc.module.dairyProducts.mapper; + +import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; +import java.util.List; + +public interface NpSheepMilkAnalysisMapper { + + NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); + + List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); + + int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + + int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + + int deleteNpSheepMilkAnalysisById(Long id); + + int deleteNpSheepMilkAnalysisByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java new file mode 100644 index 0000000..5a736d7 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/NpYogurtInspMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; + +import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; +import org.apache.ibatis.annotations.Mapper; + +/** + * 酸奶生产,成品检疫记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-17 + */ +@Mapper +public interface NpYogurtInspMapper +{ + /** + * 查询酸奶生产,成品检疫记录 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 酸奶生产,成品检疫记录 + */ + public NpYogurtInsp selectNpYogurtInspById(Long id); + + /** + * 查询酸奶生产,成品检疫记录列表 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 酸奶生产,成品检疫记录集合 + */ + public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp); + + /** + * 新增酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp); + + /** + * 修改酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp); + + /** + * 删除酸奶生产,成品检疫记录 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 结果 + */ + public int deleteNpYogurtInspById(Long id); + + /** + * 批量删除酸奶生产,成品检疫记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteNpYogurtInspByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java new file mode 100644 index 0000000..a234521 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/RanchMapper.java @@ -0,0 +1,10 @@ +package com.zhyc.module.dairyProducts.mapper; + +import com.zhyc.module.dairyProducts.domain.Ranch; +import org.apache.ibatis.annotations.Select; +import java.util.List; + +public interface RanchMapper { + @Select("SELECT ranch AS ranchName, ranch AS ranchCode FROM da_ranch") + List selectAllRanch(); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java new file mode 100644 index 0000000..b84955b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzDryMatterCorrectionMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; +import org.apache.ibatis.annotations.Mapper; + +/** + * 干物质校正Mapper接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Mapper +public interface XzDryMatterCorrectionMapper +{ + /** + * 查询干物质校正 + * + * @param id 干物质校正主键 + * @return 干物质校正 + */ + public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id); + + /** + * 查询干物质校正列表 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 干物质校正集合 + */ + public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 新增干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 修改干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 删除干物质校正 + * + * @param id 干物质校正主键 + * @return 结果 + */ + public int deleteXzDryMatterCorrectionById(Long id); + + /** + * 批量删除干物质校正 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteXzDryMatterCorrectionByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java new file mode 100644 index 0000000..d2f4654 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzParityCorrectionMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.XzParityCorrection; +import org.apache.ibatis.annotations.Mapper; + +/** + * 胎次校正Mapper接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Mapper +public interface XzParityCorrectionMapper +{ + /** + * 查询胎次校正 + * + * @param id 胎次校正主键 + * @return 胎次校正 + */ + public XzParityCorrection selectXzParityCorrectionById(Long id); + + /** + * 查询胎次校正列表 + * + * @param xzParityCorrection 胎次校正 + * @return 胎次校正集合 + */ + public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection); + + /** + * 新增胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + public int insertXzParityCorrection(XzParityCorrection xzParityCorrection); + + /** + * 修改胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + public int updateXzParityCorrection(XzParityCorrection xzParityCorrection); + + /** + * 删除胎次校正 + * + * @param id 胎次校正主键 + * @return 结果 + */ + public int deleteXzParityCorrectionById(Long id); + + /** + * 批量删除胎次校正 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteXzParityCorrectionByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java new file mode 100644 index 0000000..b6313bd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/mapper/XzWegihCorrectionMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.dairyProducts.mapper; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; +import org.apache.ibatis.annotations.Mapper; + +/** + * 称重校正Mapper接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Mapper +public interface XzWegihCorrectionMapper +{ + /** + * 查询称重校正 + * + * @param id 称重校正主键 + * @return 称重校正 + */ + public XzWegihCorrection selectXzWegihCorrectionById(Long id); + + /** + * 查询称重校正列表 + * + * @param xzWegihCorrection 称重校正 + * @return 称重校正集合 + */ + public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection); + + /** + * 新增称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection); + + /** + * 修改称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection); + + /** + * 删除称重校正 + * + * @param id 称重校正主键 + * @return 结果 + */ + public int deleteXzWegihCorrectionById(Long id); + + /** + * 批量删除称重校正 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteXzWegihCorrectionByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java new file mode 100644 index 0000000..3f7c523 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpFreshMilkInspService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; + +/** + * 鲜奶生产,成品检验记录Service接口 + * + * @author ruoyi + * @date 2025-07-18 + */ +public interface INpFreshMilkInspService +{ + /** + * 查询鲜奶生产,成品检验记录 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 鲜奶生产,成品检验记录 + */ + public NpFreshMilkInsp selectNpFreshMilkInspById(Long id); + + /** + * 查询鲜奶生产,成品检验记录列表 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 鲜奶生产,成品检验记录集合 + */ + public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 新增鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 修改鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp); + + /** + * 批量删除鲜奶生产,成品检验记录 + * + * @param ids 需要删除的鲜奶生产,成品检验记录主键集合 + * @return 结果 + */ + public int deleteNpFreshMilkInspByIds(Long[] ids); + + /** + * 删除鲜奶生产,成品检验记录信息 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 结果 + */ + public int deleteNpFreshMilkInspById(Long id); +} 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 new file mode 100644 index 0000000..992573a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkInOutStoreService.java @@ -0,0 +1,16 @@ +package com.zhyc.module.dairyProducts.service; + +import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; +import org.springframework.web.multipart.MultipartFile; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +public interface INpMilkInOutStoreService { + List> selectWithDynamicColumns(Date start, Date end); + List> getAllColumnOptions(); + List> parseImportExcel(MultipartFile file) throws Exception; + void batchInsertFromRows(List> rows) throws Exception; +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java new file mode 100644 index 0000000..b582994 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpMilkProdClassesService.java @@ -0,0 +1,16 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.Date; +import java.util.List; +import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; + +public interface INpMilkProdClassesService { + List selectNpMilkProdClassesList( + Date datetimeStart, + Date datetimeEnd, + String manageEarNo, // 改为单个 String + String factory, + Integer classes); + + int importMilkProdClasses(List list); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java new file mode 100644 index 0000000..dd12502 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpRawMilkInspeService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; + +/** + * 生乳检验记录Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface INpRawMilkInspeService +{ + /** + * 查询生乳检验记录 + * + * @param id 生乳检验记录主键 + * @return 生乳检验记录 + */ + public NpRawMilkInspe selectNpRawMilkInspeById(Long id); + + /** + * 查询生乳检验记录列表 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 生乳检验记录集合 + */ + public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe); + + /** + * 新增生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); + + /** + * 修改生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe); + + /** + * 批量删除生乳检验记录 + * + * @param ids 需要删除的生乳检验记录主键集合 + * @return 结果 + */ + public int deleteNpRawMilkInspeByIds(Long[] ids); + + /** + * 删除生乳检验记录信息 + * + * @param id 生乳检验记录主键 + * @return 结果 + */ + public int deleteNpRawMilkInspeById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java new file mode 100644 index 0000000..7750a5f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpSheepMilkAnalysisService.java @@ -0,0 +1,20 @@ +package com.zhyc.module.dairyProducts.service; + +import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; +import java.util.List; + +public interface INpSheepMilkAnalysisService { + + NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id); + + List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis); + + int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + + int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis); + + int deleteNpSheepMilkAnalysisById(Long id); + + int deleteNpSheepMilkAnalysisByIds(Long[] ids); +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java new file mode 100644 index 0000000..01582c4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/INpYogurtInspService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; + +import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; + +/** + * 酸奶生产,成品检疫记录Service接口 + * + * @author ruoyi + * @date 2025-07-17 + */ +public interface INpYogurtInspService +{ + /** + * 查询酸奶生产,成品检疫记录 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 酸奶生产,成品检疫记录 + */ + public NpYogurtInsp selectNpYogurtInspById(Long id); + + /** + * 查询酸奶生产,成品检疫记录列表 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 酸奶生产,成品检疫记录集合 + */ + public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp); + + /** + * 新增酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp); + + /** + * 修改酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp); + + /** + * 批量删除酸奶生产,成品检疫记录 + * + * @param ids 需要删除的酸奶生产,成品检疫记录主键集合 + * @return 结果 + */ + public int deleteNpYogurtInspByIds(Long[] ids); + + /** + * 删除酸奶生产,成品检疫记录信息 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 结果 + */ + public int deleteNpYogurtInspById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java new file mode 100644 index 0000000..15d3e1d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IRanchService.java @@ -0,0 +1,8 @@ +package com.zhyc.module.dairyProducts.service; + +import com.zhyc.module.dairyProducts.domain.Ranch; +import java.util.List; + +public interface IRanchService { + List selectAllRanch(); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java new file mode 100644 index 0000000..522d857 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzDryMatterCorrectionService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; + +/** + * 干物质校正Service接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +public interface IXzDryMatterCorrectionService +{ + /** + * 查询干物质校正 + * + * @param id 干物质校正主键 + * @return 干物质校正 + */ + public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id); + + /** + * 查询干物质校正列表 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 干物质校正集合 + */ + public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 新增干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 修改干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection); + + /** + * 批量删除干物质校正 + * + * @param ids 需要删除的干物质校正主键集合 + * @return 结果 + */ + public int deleteXzDryMatterCorrectionByIds(Long[] ids); + + /** + * 删除干物质校正信息 + * + * @param id 干物质校正主键 + * @return 结果 + */ + public int deleteXzDryMatterCorrectionById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java new file mode 100644 index 0000000..d5c9ce2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzParityCorrectionService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; + +import com.zhyc.module.dairyProducts.domain.XzParityCorrection; + +/** + * 胎次校正Service接口 + * + * @author ruoyi + * @date 2025-07-14 + */ +public interface IXzParityCorrectionService +{ + /** + * 查询胎次校正 + * + * @param id 胎次校正主键 + * @return 胎次校正 + */ + public XzParityCorrection selectXzParityCorrectionById(Long id); + + /** + * 查询胎次校正列表 + * + * @param xzParityCorrection 胎次校正 + * @return 胎次校正集合 + */ + public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection); + + /** + * 新增胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + public int insertXzParityCorrection(XzParityCorrection xzParityCorrection); + + /** + * 修改胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + public int updateXzParityCorrection(XzParityCorrection xzParityCorrection); + + /** + * 批量删除胎次校正 + * + * @param ids 需要删除的胎次校正主键集合 + * @return 结果 + */ + public int deleteXzParityCorrectionByIds(Long[] ids); + + /** + * 删除胎次校正信息 + * + * @param id 胎次校正主键 + * @return 结果 + */ + public int deleteXzParityCorrectionById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java new file mode 100644 index 0000000..d24ed2b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/IXzWegihCorrectionService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.dairyProducts.service; + +import java.util.List; +import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; + +/** + * 称重校正Service接口 + * + * @author ruoyi + * @date 2025-07-12 + */ +public interface IXzWegihCorrectionService +{ + /** + * 查询称重校正 + * + * @param id 称重校正主键 + * @return 称重校正 + */ + public XzWegihCorrection selectXzWegihCorrectionById(Long id); + + /** + * 查询称重校正列表 + * + * @param xzWegihCorrection 称重校正 + * @return 称重校正集合 + */ + public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection); + + /** + * 新增称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection); + + /** + * 修改称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection); + + /** + * 批量删除称重校正 + * + * @param ids 需要删除的称重校正主键集合 + * @return 结果 + */ + public int deleteXzWegihCorrectionByIds(Long[] ids); + + /** + * 删除称重校正信息 + * + * @param id 称重校正主键 + * @return 结果 + */ + public int deleteXzWegihCorrectionById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java new file mode 100644 index 0000000..cd59779 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpFreshMilkInspServiceImpl.java @@ -0,0 +1,95 @@ +package com.zhyc.module.dairyProducts.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.dairyProducts.mapper.NpFreshMilkInspMapper; +import com.zhyc.module.dairyProducts.domain.NpFreshMilkInsp; +import com.zhyc.module.dairyProducts.service.INpFreshMilkInspService; + +/** + * 鲜奶生产,成品检验记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-18 + */ +@Service +public class NpFreshMilkInspServiceImpl implements INpFreshMilkInspService +{ + @Autowired + private NpFreshMilkInspMapper npFreshMilkInspMapper; + + /** + * 查询鲜奶生产,成品检验记录 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 鲜奶生产,成品检验记录 + */ + @Override + public NpFreshMilkInsp selectNpFreshMilkInspById(Long id) + { + return npFreshMilkInspMapper.selectNpFreshMilkInspById(id); + } + + /** + * 查询鲜奶生产,成品检验记录列表 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 鲜奶生产,成品检验记录 + */ + @Override + public List selectNpFreshMilkInspList(NpFreshMilkInsp npFreshMilkInsp) + { + return npFreshMilkInspMapper.selectNpFreshMilkInspList(npFreshMilkInsp); + } + + /** + * 新增鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + @Override + public int insertNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp) + { + npFreshMilkInsp.setCreateTime(DateUtils.getNowDate()); + return npFreshMilkInspMapper.insertNpFreshMilkInsp(npFreshMilkInsp); + } + + /** + * 修改鲜奶生产,成品检验记录 + * + * @param npFreshMilkInsp 鲜奶生产,成品检验记录 + * @return 结果 + */ + @Override + public int updateNpFreshMilkInsp(NpFreshMilkInsp npFreshMilkInsp) + { + return npFreshMilkInspMapper.updateNpFreshMilkInsp(npFreshMilkInsp); + } + + /** + * 批量删除鲜奶生产,成品检验记录 + * + * @param ids 需要删除的鲜奶生产,成品检验记录主键 + * @return 结果 + */ + @Override + public int deleteNpFreshMilkInspByIds(Long[] ids) + { + return npFreshMilkInspMapper.deleteNpFreshMilkInspByIds(ids); + } + + /** + * 删除鲜奶生产,成品检验记录信息 + * + * @param id 鲜奶生产,成品检验记录主键 + * @return 结果 + */ + @Override + public int deleteNpFreshMilkInspById(Long id) + { + return npFreshMilkInspMapper.deleteNpFreshMilkInspById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java new file mode 100644 index 0000000..fc99d05 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkInOutStoreServiceImpl.java @@ -0,0 +1,82 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import com.zhyc.module.dairyProducts.domain.NpMilkInOutStore; +import com.zhyc.module.dairyProducts.mapper.NpMilkInOutStoreMapper; +import com.zhyc.module.dairyProducts.service.INpMilkInOutStoreService; +import org.apache.poi.ss.usermodel.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.io.InputStream; +import java.math.BigDecimal; +import java.util.*; + +@Service +public class NpMilkInOutStoreServiceImpl implements INpMilkInOutStoreService { + + @Autowired + private NpMilkInOutStoreMapper mapper; + + @Override + public List> selectWithDynamicColumns(Date start, Date end) { + List feed = mapper.selectFeedSources(); + List sale = mapper.selectSaleDestinations(); + return mapper.selectWithColumns(start, end, feed, sale); + } + + @Override + public List> getAllColumnOptions() { + Map m = new HashMap<>(); + m.put("feed", mapper.selectFeedSources()); + m.put("sale", mapper.selectSaleDestinations()); + return Collections.singletonList(m); + } + @Override + public List> parseImportExcel(MultipartFile file) throws Exception { + // 用 Apache POI 解析 Excel 第一行标题,动态映射列名跟 unit cells + InputStream in = file.getInputStream(); + Workbook wb = WorkbookFactory.create(in); + Sheet sheet = wb.getSheetAt(0); + Row header = sheet.getRow(0); + int cols = header.getLastCellNum(); + List titles = new ArrayList<>(); + for (int i = 0; i < cols; i++) titles.add(header.getCell(i).getStringCellValue()); + List> rows = new ArrayList<>(); + for (int r = 1; r <= sheet.getLastRowNum(); r++) { + Row row = sheet.getRow(r); + if (row == null) continue; + Map map = new LinkedHashMap<>(); + for (int c = 0; c < cols; c++) { + Cell cell = row.getCell(c); + map.put(titles.get(c), cell == null ? null : cell.toString()); + } + rows.add(map); + } + return rows; + } + + @Override + public void batchInsertFromRows(List> rows) throws Exception { + for (Map row : rows) { + // 提取主表字段 + NpMilkInOutStore store = new NpMilkInOutStore(); + store.setDatetime(java.sql.Date.valueOf(row.get("日期").toString())); + store.setNum(Integer.valueOf(row.get("羊数").toString())); + // ... 设置其它固定字段 ... + mapper.insertStore(store); + Integer sid = store.getId(); + // 其余列为动态饲喂或销售,根据字典决定分类: + for (Map.Entry ent: row.entrySet()) { + String col = ent.getKey(); + BigDecimal amt = new BigDecimal(ent.getValue().toString()); + if (mapper.selectFeedSources().contains(col)) { + mapper.insertFeedRecord(sid, col, amt); + } else if (mapper.selectSaleDestinations().contains(col)) { + mapper.insertSaleRecord(sid, col, amt); + } + } + } + } +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java new file mode 100644 index 0000000..1c26057 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpMilkProdClassesServiceImpl.java @@ -0,0 +1,62 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import com.zhyc.module.dairyProducts.domain.NpMilkProdClasses; +import com.zhyc.module.dairyProducts.mapper.NpMilkProdClassesMapper; +import com.zhyc.module.dairyProducts.service.INpMilkProdClassesService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; + +@Service +public class NpMilkProdClassesServiceImpl implements INpMilkProdClassesService { + + @Autowired + private NpMilkProdClassesMapper mapper; + + @Override + public List selectNpMilkProdClassesList(Date datetimeStart, Date datetimeEnd, + String manageEarNo, String factory, Integer classes) { + return mapper.selectNpMilkProdClassesList(datetimeStart, datetimeEnd, manageEarNo, factory, classes); + } + + @Override + public int importMilkProdClasses(List list) { + int count = 0; + for (NpMilkProdClasses item : list) { + // 根据管理耳号查 sheep_id + String sheepId = mapper.selectSheepIdByManageEarNo(item.getManageEarNo()); + if (sheepId == null) continue; + + item.setSheepId(sheepId); + + // 计算校正奶量 + Double correctedMilk = calculateCorrectedMilk(item); + item.setCorrectedMilk(correctedMilk); + + // 插入数据 + count += mapper.insertNpMilkProdClasses(item); + } + return count; + } + + private Double calculateCorrectedMilk(NpMilkProdClasses item) { + Double milk = item.getMilk(); + if (milk == null) return null; + + // 1. 称重矫正系数 + Double weightCorrection = mapper.getWeightCorrection(item.getDatetime(), item.getFactory()); + if (weightCorrection == null) weightCorrection = 1.0; + + // 2. 胎次矫正系数 + Double parityCorrection = mapper.getParityCorrection(item.getParity()); + if (parityCorrection == null) parityCorrection = 1.0; + + // 3. 干物质矫正系数 + Double dryMatterCorrection = mapper.getDryMatterCorrection(item.getDatetime(), item.getFactory()); + if (dryMatterCorrection == null) dryMatterCorrection = 1.0; + + return milk * weightCorrection * parityCorrection * dryMatterCorrection; + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java new file mode 100644 index 0000000..3422dff --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpRawMilkInspeServiceImpl.java @@ -0,0 +1,95 @@ +package com.zhyc.module.dairyProducts.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.dairyProducts.mapper.NpRawMilkInspeMapper; +import com.zhyc.module.dairyProducts.domain.NpRawMilkInspe; +import com.zhyc.module.dairyProducts.service.INpRawMilkInspeService; + +/** + * 生乳检验记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class NpRawMilkInspeServiceImpl implements INpRawMilkInspeService +{ + @Autowired + private NpRawMilkInspeMapper npRawMilkInspeMapper; + + /** + * 查询生乳检验记录 + * + * @param id 生乳检验记录主键 + * @return 生乳检验记录 + */ + @Override + public NpRawMilkInspe selectNpRawMilkInspeById(Long id) + { + return npRawMilkInspeMapper.selectNpRawMilkInspeById(id); + } + + /** + * 查询生乳检验记录列表 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 生乳检验记录 + */ + @Override + public List selectNpRawMilkInspeList(NpRawMilkInspe npRawMilkInspe) + { + return npRawMilkInspeMapper.selectNpRawMilkInspeList(npRawMilkInspe); + } + + /** + * 新增生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + @Override + public int insertNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe) + { + npRawMilkInspe.setCreateTime(DateUtils.getNowDate()); + return npRawMilkInspeMapper.insertNpRawMilkInspe(npRawMilkInspe); + } + + /** + * 修改生乳检验记录 + * + * @param npRawMilkInspe 生乳检验记录 + * @return 结果 + */ + @Override + public int updateNpRawMilkInspe(NpRawMilkInspe npRawMilkInspe) + { + return npRawMilkInspeMapper.updateNpRawMilkInspe(npRawMilkInspe); + } + + /** + * 批量删除生乳检验记录 + * + * @param ids 需要删除的生乳检验记录主键 + * @return 结果 + */ + @Override + public int deleteNpRawMilkInspeByIds(Long[] ids) + { + return npRawMilkInspeMapper.deleteNpRawMilkInspeByIds(ids); + } + + /** + * 删除生乳检验记录信息 + * + * @param id 生乳检验记录主键 + * @return 结果 + */ + @Override + public int deleteNpRawMilkInspeById(Long id) + { + return npRawMilkInspeMapper.deleteNpRawMilkInspeById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java new file mode 100644 index 0000000..c2476ee --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpSheepMilkAnalysisServiceImpl.java @@ -0,0 +1,47 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import java.util.List; + +import com.zhyc.module.dairyProducts.mapper.NpSheepMilkAnalysisMapper; +import com.zhyc.module.dairyProducts.domain.NpSheepMilkAnalysis; +import com.zhyc.module.dairyProducts.service.INpSheepMilkAnalysisService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class NpSheepMilkAnalysisServiceImpl implements INpSheepMilkAnalysisService { + + @Autowired + private NpSheepMilkAnalysisMapper npSheepMilkAnalysisMapper; + + @Override + public NpSheepMilkAnalysis selectNpSheepMilkAnalysisById(Long id) { + return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisById(id); + } + + @Override + public List selectNpSheepMilkAnalysisList(NpSheepMilkAnalysis analysis) { + return npSheepMilkAnalysisMapper.selectNpSheepMilkAnalysisList(analysis); + } + + @Override + public int insertNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { + return npSheepMilkAnalysisMapper.insertNpSheepMilkAnalysis(analysis); + } + + @Override + public int updateNpSheepMilkAnalysis(NpSheepMilkAnalysis analysis) { + return npSheepMilkAnalysisMapper.updateNpSheepMilkAnalysis(analysis); + } + + @Override + public int deleteNpSheepMilkAnalysisById(Long id) { + return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisById(id); + } + + @Override + public int deleteNpSheepMilkAnalysisByIds(Long[] ids) { + return npSheepMilkAnalysisMapper.deleteNpSheepMilkAnalysisByIds(ids); + } +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java new file mode 100644 index 0000000..f80e745 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/NpYogurtInspServiceImpl.java @@ -0,0 +1,95 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.module.dairyProducts.domain.NpYogurtInsp; +import com.zhyc.module.dairyProducts.mapper.NpYogurtInspMapper; +import com.zhyc.module.dairyProducts.service.INpYogurtInspService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 酸奶生产,成品检疫记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-17 + */ +@Service +public class NpYogurtInspServiceImpl implements INpYogurtInspService +{ + @Autowired + private NpYogurtInspMapper npYogurtInspMapper; + + /** + * 查询酸奶生产,成品检疫记录 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 酸奶生产,成品检疫记录 + */ + @Override + public NpYogurtInsp selectNpYogurtInspById(Long id) + { + return npYogurtInspMapper.selectNpYogurtInspById(id); + } + + /** + * 查询酸奶生产,成品检疫记录列表 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 酸奶生产,成品检疫记录 + */ + @Override + public List selectNpYogurtInspList(NpYogurtInsp npYogurtInsp) + { + return npYogurtInspMapper.selectNpYogurtInspList(npYogurtInsp); + } + + /** + * 新增酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + @Override + public int insertNpYogurtInsp(NpYogurtInsp npYogurtInsp) + { + npYogurtInsp.setCreateTime(DateUtils.getNowDate()); + return npYogurtInspMapper.insertNpYogurtInsp(npYogurtInsp); + } + + /** + * 修改酸奶生产,成品检疫记录 + * + * @param npYogurtInsp 酸奶生产,成品检疫记录 + * @return 结果 + */ + @Override + public int updateNpYogurtInsp(NpYogurtInsp npYogurtInsp) + { + return npYogurtInspMapper.updateNpYogurtInsp(npYogurtInsp); + } + + /** + * 批量删除酸奶生产,成品检疫记录 + * + * @param ids 需要删除的酸奶生产,成品检疫记录主键 + * @return 结果 + */ + @Override + public int deleteNpYogurtInspByIds(Long[] ids) + { + return npYogurtInspMapper.deleteNpYogurtInspByIds(ids); + } + + /** + * 删除酸奶生产,成品检疫记录信息 + * + * @param id 酸奶生产,成品检疫记录主键 + * @return 结果 + */ + @Override + public int deleteNpYogurtInspById(Long id) + { + return npYogurtInspMapper.deleteNpYogurtInspById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java new file mode 100644 index 0000000..281d32e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/RanchServiceImpl.java @@ -0,0 +1,19 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import com.zhyc.module.dairyProducts.domain.Ranch; +import com.zhyc.module.dairyProducts.mapper.RanchMapper; +import com.zhyc.module.dairyProducts.service.IRanchService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.List; + +@Service +public class RanchServiceImpl implements IRanchService { + @Autowired + private RanchMapper ranchMapper; + + @Override + public List selectAllRanch() { + return ranchMapper.selectAllRanch(); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java new file mode 100644 index 0000000..4bf9fb2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzDryMatterCorrectionServiceImpl.java @@ -0,0 +1,93 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.dairyProducts.mapper.XzDryMatterCorrectionMapper; +import com.zhyc.module.dairyProducts.domain.XzDryMatterCorrection; +import com.zhyc.module.dairyProducts.service.IXzDryMatterCorrectionService; + +/** + * 干物质校正Service业务层处理 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Service +public class XzDryMatterCorrectionServiceImpl implements IXzDryMatterCorrectionService +{ + @Autowired + private XzDryMatterCorrectionMapper xzDryMatterCorrectionMapper; + + /** + * 查询干物质校正 + * + * @param id 干物质校正主键 + * @return 干物质校正 + */ + @Override + public XzDryMatterCorrection selectXzDryMatterCorrectionById(Long id) + { + return xzDryMatterCorrectionMapper.selectXzDryMatterCorrectionById(id); + } + + /** + * 查询干物质校正列表 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 干物质校正 + */ + @Override + public List selectXzDryMatterCorrectionList(XzDryMatterCorrection xzDryMatterCorrection) + { + return xzDryMatterCorrectionMapper.selectXzDryMatterCorrectionList(xzDryMatterCorrection); + } + + /** + * 新增干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + @Override + public int insertXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection) + { + return xzDryMatterCorrectionMapper.insertXzDryMatterCorrection(xzDryMatterCorrection); + } + + /** + * 修改干物质校正 + * + * @param xzDryMatterCorrection 干物质校正 + * @return 结果 + */ + @Override + public int updateXzDryMatterCorrection(XzDryMatterCorrection xzDryMatterCorrection) + { + return xzDryMatterCorrectionMapper.updateXzDryMatterCorrection(xzDryMatterCorrection); + } + + /** + * 批量删除干物质校正 + * + * @param ids 需要删除的干物质校正主键 + * @return 结果 + */ + @Override + public int deleteXzDryMatterCorrectionByIds(Long[] ids) + { + return xzDryMatterCorrectionMapper.deleteXzDryMatterCorrectionByIds(ids); + } + + /** + * 删除干物质校正信息 + * + * @param id 干物质校正主键 + * @return 结果 + */ + @Override + public int deleteXzDryMatterCorrectionById(Long id) + { + return xzDryMatterCorrectionMapper.deleteXzDryMatterCorrectionById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java new file mode 100644 index 0000000..49f5731 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzParityCorrectionServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import java.util.List; + +import com.zhyc.module.dairyProducts.mapper.XzParityCorrectionMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.dairyProducts.domain.XzParityCorrection; +import com.zhyc.module.dairyProducts.service.IXzParityCorrectionService; + +/** + * 胎次校正Service业务层处理 + * + * @author ruoyi + * @date 2025-07-14 + */ +@Service +public class XzParityCorrectionServiceImpl implements IXzParityCorrectionService +{ + @Autowired + private XzParityCorrectionMapper xzParityCorrectionMapper; + + /** + * 查询胎次校正 + * + * @param id 胎次校正主键 + * @return 胎次校正 + */ + @Override + public XzParityCorrection selectXzParityCorrectionById(Long id) + { + return xzParityCorrectionMapper.selectXzParityCorrectionById(id); + } + + /** + * 查询胎次校正列表 + * + * @param xzParityCorrection 胎次校正 + * @return 胎次校正 + */ + @Override + public List selectXzParityCorrectionList(XzParityCorrection xzParityCorrection) + { + return xzParityCorrectionMapper.selectXzParityCorrectionList(xzParityCorrection); + } + + /** + * 新增胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + @Override + public int insertXzParityCorrection(XzParityCorrection xzParityCorrection) + { + return xzParityCorrectionMapper.insertXzParityCorrection(xzParityCorrection); + } + + /** + * 修改胎次校正 + * + * @param xzParityCorrection 胎次校正 + * @return 结果 + */ + @Override + public int updateXzParityCorrection(XzParityCorrection xzParityCorrection) + { + return xzParityCorrectionMapper.updateXzParityCorrection(xzParityCorrection); + } + + /** + * 批量删除胎次校正 + * + * @param ids 需要删除的胎次校正主键 + * @return 结果 + */ + @Override + public int deleteXzParityCorrectionByIds(Long[] ids) + { + return xzParityCorrectionMapper.deleteXzParityCorrectionByIds(ids); + } + + /** + * 删除胎次校正信息 + * + * @param id 胎次校正主键 + * @return 结果 + */ + @Override + public int deleteXzParityCorrectionById(Long id) + { + return xzParityCorrectionMapper.deleteXzParityCorrectionById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java new file mode 100644 index 0000000..7869c42 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/dairyProducts/service/impl/XzWegihCorrectionServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.dairyProducts.service.impl; + +import java.util.List; + +import com.zhyc.module.dairyProducts.domain.XzWegihCorrection; +import com.zhyc.module.dairyProducts.mapper.XzWegihCorrectionMapper; +import com.zhyc.module.dairyProducts.service.IXzWegihCorrectionService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 称重校正Service业务层处理 + * + * @author ruoyi + * @date 2025-07-12 + */ +@Service +public class XzWegihCorrectionServiceImpl implements IXzWegihCorrectionService +{ + @Autowired + private XzWegihCorrectionMapper xzWegihCorrectionMapper; + + /** + * 查询称重校正 + * + * @param id 称重校正主键 + * @return 称重校正 + */ + @Override + public XzWegihCorrection selectXzWegihCorrectionById(Long id) + { + return xzWegihCorrectionMapper.selectXzWegihCorrectionById(id); + } + + /** + * 查询称重校正列表 + * + * @param xzWegihCorrection 称重校正 + * @return 称重校正 + */ + @Override + public List selectXzWegihCorrectionList(XzWegihCorrection xzWegihCorrection) + { + return xzWegihCorrectionMapper.selectXzWegihCorrectionList(xzWegihCorrection); + } + + /** + * 新增称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + @Override + public int insertXzWegihCorrection(XzWegihCorrection xzWegihCorrection) + { + return xzWegihCorrectionMapper.insertXzWegihCorrection(xzWegihCorrection); + } + + /** + * 修改称重校正 + * + * @param xzWegihCorrection 称重校正 + * @return 结果 + */ + @Override + public int updateXzWegihCorrection(XzWegihCorrection xzWegihCorrection) + { + return xzWegihCorrectionMapper.updateXzWegihCorrection(xzWegihCorrection); + } + + /** + * 批量删除称重校正 + * + * @param ids 需要删除的称重校正主键 + * @return 结果 + */ + @Override + public int deleteXzWegihCorrectionByIds(Long[] ids) + { + return xzWegihCorrectionMapper.deleteXzWegihCorrectionByIds(ids); + } + + /** + * 删除称重校正信息 + * + * @param id 称重校正主键 + * @return 结果 + */ + @Override + public int deleteXzWegihCorrectionById(Long id) + { + return xzWegihCorrectionMapper.deleteXzWegihCorrectionById(id); + } +} 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 new file mode 100644 index 0000000..23ac1e1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java @@ -0,0 +1,107 @@ +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; +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.produce.bodyManage.domain.ScBodyMeasure; +import com.zhyc.module.produce.bodyManage.service.IScBodyMeasureService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 体尺测量Controller + * + * @author ruoyi + * @date 2025-07-27 + */ +@RestController +@RequestMapping("/body_measure/body_measure") +public class ScBodyMeasureController extends BaseController +{ + @Autowired + private IScBodyMeasureService scBodyMeasureService; + + + /** + * 查询体尺测量列表 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:list')") + @GetMapping("/list") + public TableDataInfo list(ScBodyMeasure scBodyMeasure) + { + startPage(); + List list = scBodyMeasureService.selectScBodyMeasureList(scBodyMeasure); + return getDataTable(list); + } + + /** + * 导出体尺测量列表 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:export')") + @Log(title = "体尺测量", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBodyMeasure scBodyMeasure) + { + List list = scBodyMeasureService.selectScBodyMeasureList(scBodyMeasure); + ExcelUtil util = new ExcelUtil(ScBodyMeasure.class); + util.exportExcel(response, list, "体尺测量数据"); + } + + /** + * 获取体尺测量详细信息 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBodyMeasureService.selectScBodyMeasureById(id)); + } + + /** + * 新增体尺测量 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:add')") + @Log(title = "体尺测量", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScBodyMeasure scBodyMeasure) + { + return toAjax(scBodyMeasureService.insertScBodyMeasure(scBodyMeasure)); + } + + /** + * 修改体尺测量 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:edit')") + @Log(title = "体尺测量", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScBodyMeasure scBodyMeasure) + { + return toAjax(scBodyMeasureService.updateScBodyMeasure(scBodyMeasure)); + } + + /** + * 删除体尺测量 + */ + @PreAuthorize("@ss.hasPermi('body_measure:body_measure:remove')") + @Log(title = "体尺测量", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBodyMeasureService.deleteScBodyMeasureByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java new file mode 100644 index 0000000..d2438a7 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.produce.bodyManage.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.produce.bodyManage.domain.ScBodyScore; +import com.zhyc.module.produce.bodyManage.service.IScBodyScoreService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 体况评分Controller + * + * @author ruoyi + * @date 2025-07-27 + */ +@RestController +@RequestMapping("/body_score/body_score") +public class ScBodyScoreController extends BaseController +{ + @Autowired + private IScBodyScoreService scBodyScoreService; + + /** + * 查询体况评分列表 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:list')") + @GetMapping("/list") + public TableDataInfo list(ScBodyScore scBodyScore) + { + startPage(); + List list = scBodyScoreService.selectScBodyScoreList(scBodyScore); + return getDataTable(list); + } + + /** + * 导出体况评分列表 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:export')") + @Log(title = "体况评分", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBodyScore scBodyScore) + { + List list = scBodyScoreService.selectScBodyScoreList(scBodyScore); + ExcelUtil util = new ExcelUtil(ScBodyScore.class); + util.exportExcel(response, list, "体况评分数据"); + } + + /** + * 获取体况评分详细信息 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBodyScoreService.selectScBodyScoreById(id)); + } + + /** + * 新增体况评分 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:add')") + @Log(title = "体况评分", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScBodyScore scBodyScore) + { + return toAjax(scBodyScoreService.insertScBodyScore(scBodyScore)); + } + + /** + * 修改体况评分 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:edit')") + @Log(title = "体况评分", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScBodyScore scBodyScore) + { + return toAjax(scBodyScoreService.updateScBodyScore(scBodyScore)); + } + + /** + * 删除体况评分 + */ + @PreAuthorize("@ss.hasPermi('body_score:body_score:remove')") + @Log(title = "体况评分", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBodyScoreService.deleteScBodyScoreByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java new file mode 100644 index 0000000..e6a9cad --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.produce.bodyManage.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.produce.bodyManage.domain.ScBreastRating; +import com.zhyc.module.produce.bodyManage.service.IScBreastRatingService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 乳房评分Controller + * + * @author ruoyi + * @date 2025-07-27 + */ +@RestController +@RequestMapping("/breast_rating/breast_rating") +public class ScBreastRatingController extends BaseController +{ + @Autowired + private IScBreastRatingService scBreastRatingService; + + /** + * 查询乳房评分列表 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:list')") + @GetMapping("/list") + public TableDataInfo list(ScBreastRating scBreastRating) + { + startPage(); + List list = scBreastRatingService.selectScBreastRatingList(scBreastRating); + return getDataTable(list); + } + + /** + * 导出乳房评分列表 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:export')") + @Log(title = "乳房评分", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBreastRating scBreastRating) + { + List list = scBreastRatingService.selectScBreastRatingList(scBreastRating); + ExcelUtil util = new ExcelUtil(ScBreastRating.class); + util.exportExcel(response, list, "乳房评分数据"); + } + + /** + * 获取乳房评分详细信息 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBreastRatingService.selectScBreastRatingById(id)); + } + + /** + * 新增乳房评分 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:add')") + @Log(title = "乳房评分", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScBreastRating scBreastRating) + { + return toAjax(scBreastRatingService.insertScBreastRating(scBreastRating)); + } + + /** + * 修改乳房评分 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:edit')") + @Log(title = "乳房评分", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScBreastRating scBreastRating) + { + return toAjax(scBreastRatingService.updateScBreastRating(scBreastRating)); + } + + /** + * 删除乳房评分 + */ + @PreAuthorize("@ss.hasPermi('breast_rating:breast_rating:remove')") + @Log(title = "乳房评分", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBreastRatingService.deleteScBreastRatingByIds(ids)); + } +} 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 new file mode 100644 index 0000000..cf9e617 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java @@ -0,0 +1,189 @@ +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; + +/** + * 体尺测量对象 sc_body_measure + * + * @author ruoyi + * @date 2025-07-27 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScBodyMeasure extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 耳号 + */ + private Long sheepId; + @Excel(name = "耳号") + private String manageTags; + + /** + * 羊舍ID + */ + private Long sheepfoldId; + @Excel(name = "羊舍") + /** 羊舍名称(用于展示) */ + private String sheepfoldName; + + /** + * 品种ID(关联羊只表) + */ + private Long varietyId; + + /** + * 品种名称(用于展示) + */ + @Excel(name = "羊只品种") + private String varietyName; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + + /** + * 测量日期 + */ + @Excel(name = "测量日期") + private LocalDate measureDate; + /** + * 羊只类别 + */ + private Long sheepTypeId; + @Excel(name = "羊只类别") + private String sheepTypeName; + /** + * 性别 + */ + @Excel(name = "性别", readConverterExp = "1=母,2=公,3=阉羊") + private String gender; + /** + * 胎次 + */ + private Integer parity; + /** + * 出生体重 + */ + private BigDecimal birthWeight; + /** + * 断奶体重 + */ + private BigDecimal weaningWeight; + /** + * 当前体重 + */ + private BigDecimal currentWeight; + + /** + * 体高 + */ + @Excel(name = "体高") + private Long height; + + /** + * 胸围 + */ + @Excel(name = "胸围") + private Long bust; + + /** + * 体斜长 + */ + @Excel(name = "体斜长") + private Long bodyLength; + + /** + * 管围 + */ + @Excel(name = "管围") + private Long pipeLength; + + /** + * 胸深 + */ + @Excel(name = "胸深") + private Long chestDepth; + + /** + * 臀高 + */ + @Excel(name = "臀高") + private Long hipHeight; + + /** + * 尻宽 + */ + @Excel(name = "尻宽") + private Long rumpWidth; + + /** + * 尻高 + */ + @Excel(name = "尻高") + private Long rumpHeignt; + + /** + * 腰角宽 + */ + @Excel(name = "腰角宽") + private Long hipWidth; + + /** + * 十字部高 + */ + @Excel(name = "十字部高") + private Long hipCrossHeight; + + /** + * 繁育状态 + */ + @Excel(name = "繁育状态") + private String breedStatusName; + /** + * 泌乳天数 + */ + @Excel(name = "泌乳天数") + private Integer lactationDay; + /** + * 怀孕天数 + */ + @Excel(name = "怀孕天数") + private Integer gestationDay; + /** + * 配后天数 + */ + @Excel(name = "配后天数") + private Integer postMatingDay; + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + +} 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 new file mode 100644 index 0000000..005eb4b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java @@ -0,0 +1,82 @@ +package com.zhyc.module.produce.bodyManage.domain; + +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; + +/** + * 体况评分对象 sc_body_score + * + * @author ruoyi + * @date 2025-07-27 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScBodyScore extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 羊只id + */ + private String sheepId; + @Excel(name = "管理耳号") + private String manageTags; + + /** + * 品种 + */ + private Long varietyId; + @Excel(name = "品种") + private String varietyName; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + + /** + * 事件日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "事件日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** + * 体况评分 + */ + @Excel(name = "体况评分") + private Long score; + + /** + * 羊舍id + */ + private Long sheepfold; + @Excel(name = "羊舍") + private String sheepfoldName; + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + +} 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 new file mode 100644 index 0000000..3699f57 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java @@ -0,0 +1,116 @@ +package com.zhyc.module.produce.bodyManage.domain; + +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 java.time.LocalDate; + +/** + * 乳房评分对象 sc_breast_rating + * + * @author ruoyi + * @date 2025-07-27 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScBreastRating extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 羊只id + */ + + private String sheepId; + @Excel(name = "羊只id") + private String manageTags; + + /** + * 品种 + */ + private Long varietyId; + @Excel(name = "品种") + private String varietyName; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + + /** + * 事件日期 + */ + @Excel(name = "事件日期") + private LocalDate eventDate; + + /** + * 羊舍ID + */ + private Long sheepfoldId; + @Excel(name = "羊舍") + /** 羊舍名称(用于展示) */ + private String sheepfoldName; + + + /** + * 乳房深度 + */ + @Excel(name = "乳房深度") + private Long depth; + + /** + * 乳房长度 + */ + @Excel(name = "乳房长度") + private Long length; + + /** + * 乳房位置 + */ + @Excel(name = "乳房位置") + private String position; + + /** + * 乳房附着 + */ + @Excel(name = "乳房附着") + private String adbere; + + /** + * 乳房间隔度 + */ + @Excel(name = "乳房间隔度") + private String spacing; + + /** + * 乳房评分 + */ + @Excel(name = "乳房评分") + private Long score; + + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java new file mode 100644 index 0000000..7566ff1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.mapper; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; + +/** + * 体尺测量Mapper接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface ScBodyMeasureMapper +{ + /** + * 查询体尺测量 + * + * @param id 体尺测量主键 + * @return 体尺测量 + */ + public ScBodyMeasure selectScBodyMeasureById(Long id); + + /** + * 查询体尺测量列表 + * + * @param scBodyMeasure 体尺测量 + * @return 体尺测量集合 + */ + public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure); + + /** + * 新增体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure); + + /** + * 修改体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure); + + /** + * 删除体尺测量 + * + * @param id 体尺测量主键 + * @return 结果 + */ + public int deleteScBodyMeasureById(Long id); + + /** + * 批量删除体尺测量 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBodyMeasureByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java new file mode 100644 index 0000000..1e7a4e6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.mapper; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; + +/** + * 体况评分Mapper接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface ScBodyScoreMapper +{ + /** + * 查询体况评分 + * + * @param id 体况评分主键 + * @return 体况评分 + */ + public ScBodyScore selectScBodyScoreById(Long id); + + /** + * 查询体况评分列表 + * + * @param scBodyScore 体况评分 + * @return 体况评分集合 + */ + public List selectScBodyScoreList(ScBodyScore scBodyScore); + + /** + * 新增体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + public int insertScBodyScore(ScBodyScore scBodyScore); + + /** + * 修改体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + public int updateScBodyScore(ScBodyScore scBodyScore); + + /** + * 删除体况评分 + * + * @param id 体况评分主键 + * @return 结果 + */ + public int deleteScBodyScoreById(Long id); + + /** + * 批量删除体况评分 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBodyScoreByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java new file mode 100644 index 0000000..485043a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.mapper; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; + +/** + * 乳房评分Mapper接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface ScBreastRatingMapper +{ + /** + * 查询乳房评分 + * + * @param id 乳房评分主键 + * @return 乳房评分 + */ + public ScBreastRating selectScBreastRatingById(Long id); + + /** + * 查询乳房评分列表 + * + * @param scBreastRating 乳房评分 + * @return 乳房评分集合 + */ + public List selectScBreastRatingList(ScBreastRating scBreastRating); + + /** + * 新增乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + public int insertScBreastRating(ScBreastRating scBreastRating); + + /** + * 修改乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + public int updateScBreastRating(ScBreastRating scBreastRating); + + /** + * 删除乳房评分 + * + * @param id 乳房评分主键 + * @return 结果 + */ + public int deleteScBreastRatingById(Long id); + + /** + * 批量删除乳房评分 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBreastRatingByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java new file mode 100644 index 0000000..f86848f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.service; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; + +/** + * 体尺测量Service接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface IScBodyMeasureService +{ + /** + * 查询体尺测量 + * + * @param id 体尺测量主键 + * @return 体尺测量 + */ + public ScBodyMeasure selectScBodyMeasureById(Long id); + + /** + * 查询体尺测量列表 + * + * @param scBodyMeasure 体尺测量 + * @return 体尺测量集合 + */ + public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure); + + /** + * 新增体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure); + + /** + * 修改体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure); + + /** + * 批量删除体尺测量 + * + * @param ids 需要删除的体尺测量主键集合 + * @return 结果 + */ + public int deleteScBodyMeasureByIds(Long[] ids); + + /** + * 删除体尺测量信息 + * + * @param id 体尺测量主键 + * @return 结果 + */ + public int deleteScBodyMeasureById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java new file mode 100644 index 0000000..78ac57d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.service; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; + +/** + * 体况评分Service接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface IScBodyScoreService +{ + /** + * 查询体况评分 + * + * @param id 体况评分主键 + * @return 体况评分 + */ + public ScBodyScore selectScBodyScoreById(Long id); + + /** + * 查询体况评分列表 + * + * @param scBodyScore 体况评分 + * @return 体况评分集合 + */ + public List selectScBodyScoreList(ScBodyScore scBodyScore); + + /** + * 新增体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + public int insertScBodyScore(ScBodyScore scBodyScore); + + /** + * 修改体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + public int updateScBodyScore(ScBodyScore scBodyScore); + + /** + * 批量删除体况评分 + * + * @param ids 需要删除的体况评分主键集合 + * @return 结果 + */ + public int deleteScBodyScoreByIds(Long[] ids); + + /** + * 删除体况评分信息 + * + * @param id 体况评分主键 + * @return 结果 + */ + public int deleteScBodyScoreById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java new file mode 100644 index 0000000..81b408f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.bodyManage.service; + +import java.util.List; +import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; + +/** + * 乳房评分Service接口 + * + * @author ruoyi + * @date 2025-07-27 + */ +public interface IScBreastRatingService +{ + /** + * 查询乳房评分 + * + * @param id 乳房评分主键 + * @return 乳房评分 + */ + public ScBreastRating selectScBreastRatingById(Long id); + + /** + * 查询乳房评分列表 + * + * @param scBreastRating 乳房评分 + * @return 乳房评分集合 + */ + public List selectScBreastRatingList(ScBreastRating scBreastRating); + + /** + * 新增乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + public int insertScBreastRating(ScBreastRating scBreastRating); + + /** + * 修改乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + public int updateScBreastRating(ScBreastRating scBreastRating); + + /** + * 批量删除乳房评分 + * + * @param ids 需要删除的乳房评分主键集合 + * @return 结果 + */ + public int deleteScBreastRatingByIds(Long[] ids); + + /** + * 删除乳房评分信息 + * + * @param id 乳房评分主键 + * @return 结果 + */ + public int deleteScBreastRatingById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java new file mode 100644 index 0000000..985960e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java @@ -0,0 +1,117 @@ +package com.zhyc.module.produce.bodyManage.service.impl; + +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.module.base.domain.BasSheep; +import com.zhyc.module.base.service.IBasSheepService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.bodyManage.mapper.ScBodyMeasureMapper; +import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; +import com.zhyc.module.produce.bodyManage.service.IScBodyMeasureService; + +/** + * 体尺测量Service业务层处理 + * + * @author ruoyi + * @date 2025-07-27 + */ +@Service +public class ScBodyMeasureServiceImpl implements IScBodyMeasureService +{ + @Autowired + private ScBodyMeasureMapper scBodyMeasureMapper; + @Autowired + private IBasSheepService basSheepService; + /** + * 查询体尺测量 + * + * @param id 体尺测量主键 + * @return 体尺测量 + */ + @Override + public ScBodyMeasure selectScBodyMeasureById(Long id) + { + return scBodyMeasureMapper.selectScBodyMeasureById(id); + } + + /** + * 查询体尺测量列表 + * + * @param scBodyMeasure 体尺测量 + * @return 体尺测量 + */ + @Override + public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure) + { + return scBodyMeasureMapper.selectScBodyMeasureList(scBodyMeasure); + } + + /** + * 新增体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + @Override + public int insertScBodyMeasure(ScBodyMeasure scBodyMeasure) + { + String manageTags = scBodyMeasure.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBodyMeasure.setSheepId(sheep.getId()); + } + scBodyMeasure.setCreateTime(DateUtils.getNowDate()); + scBodyMeasure.setCreateBy(SecurityUtils.getUsername()); + return scBodyMeasureMapper.insertScBodyMeasure(scBodyMeasure); + } + + /** + * 修改体尺测量 + * + * @param scBodyMeasure 体尺测量 + * @return 结果 + */ + @Override + public int updateScBodyMeasure(ScBodyMeasure scBodyMeasure) + { + String manageTags = scBodyMeasure.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBodyMeasure.setSheepId(sheep.getId()); + } + return scBodyMeasureMapper.updateScBodyMeasure(scBodyMeasure); + } + + /** + * 批量删除体尺测量 + * + * @param ids 需要删除的体尺测量主键 + * @return 结果 + */ + @Override + public int deleteScBodyMeasureByIds(Long[] ids) + { + return scBodyMeasureMapper.deleteScBodyMeasureByIds(ids); + } + + /** + * 删除体尺测量信息 + * + * @param id 体尺测量主键 + * @return 结果 + */ + @Override + public int deleteScBodyMeasureById(Long id) + { + return scBodyMeasureMapper.deleteScBodyMeasureById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java new file mode 100644 index 0000000..1a55d69 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java @@ -0,0 +1,127 @@ +package com.zhyc.module.produce.bodyManage.service.impl; + +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.module.base.domain.BasSheep; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.service.IBasSheepService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.bodyManage.mapper.ScBodyScoreMapper; +import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; +import com.zhyc.module.produce.bodyManage.service.IScBodyScoreService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 体况评分Service业务层处理 + * + * @author ruoyi + * @date 2025-07-27 + */ +@Service +public class ScBodyScoreServiceImpl implements IScBodyScoreService { + @Autowired + private ScBodyScoreMapper scBodyScoreMapper; + @Autowired + private IBasSheepService basSheepService; + @Autowired + private BasSheepMapper basSheepMapper; + + /** + * 查询体况评分 + * + * @param id 体况评分主键 + * @return 体况评分 + */ + @Override + public ScBodyScore selectScBodyScoreById(Long id) { + return scBodyScoreMapper.selectScBodyScoreById(id); + } + + /** + * 查询体况评分列表 + * + * @param scBodyScore 体况评分 + * @return 体况评分 + */ + @Override + public List selectScBodyScoreList(ScBodyScore scBodyScore) { + return scBodyScoreMapper.selectScBodyScoreList(scBodyScore); + } + + /** + * 新增体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int insertScBodyScore(ScBodyScore scBodyScore) { + String manageTags = scBodyScore.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBodyScore.setSheepId(sheep.getId().toString()); + } + scBodyScore.setCreateTime(DateUtils.getNowDate()); + scBodyScore.setCreateBy(SecurityUtils.getUsername()); + + int insertResult = scBodyScoreMapper.insertScBodyScore(scBodyScore); + + if (insertResult > 0 && scBodyScore.getSheepId() != null) { + BasSheep updateSheep = new BasSheep(); + updateSheep.setId(Long.parseLong(scBodyScore.getSheepId())); + updateSheep.setBody(scBodyScore.getScore()); + basSheepMapper.updateBasSheep(updateSheep); + } + + return insertResult; + } + + /** + * 修改体况评分 + * + * @param scBodyScore 体况评分 + * @return 结果 + */ + @Override + public int updateScBodyScore(ScBodyScore scBodyScore) { + String manageTags = scBodyScore.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBodyScore.setSheepId(sheep.getId().toString()); + } + return scBodyScoreMapper.updateScBodyScore(scBodyScore); + } + + /** + * 批量删除体况评分 + * + * @param ids 需要删除的体况评分主键 + * @return 结果 + */ + @Override + public int deleteScBodyScoreByIds(Long[] ids) { + return scBodyScoreMapper.deleteScBodyScoreByIds(ids); + } + + /** + * 删除体况评分信息 + * + * @param id 体况评分主键 + * @return 结果 + */ + @Override + public int deleteScBodyScoreById(Long id) { + return scBodyScoreMapper.deleteScBodyScoreById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java new file mode 100644 index 0000000..e813d43 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java @@ -0,0 +1,131 @@ +package com.zhyc.module.produce.bodyManage.service.impl; + +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.module.base.domain.BasSheep; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.service.IBasSheepService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.bodyManage.mapper.ScBreastRatingMapper; +import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; +import com.zhyc.module.produce.bodyManage.service.IScBreastRatingService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 乳房评分Service业务层处理 + * + * @author ruoyi + * @date 2025-07-27 + */ +@Service +public class ScBreastRatingServiceImpl implements IScBreastRatingService { + @Autowired + private ScBreastRatingMapper scBreastRatingMapper; + + @Autowired + private IBasSheepService basSheepService; + + @Autowired + private BasSheepMapper basSheepMapper; + + /** + * 查询乳房评分 + * + * @param id 乳房评分主键 + * @return 乳房评分 + */ + @Override + public ScBreastRating selectScBreastRatingById(Long id) { + return scBreastRatingMapper.selectScBreastRatingById(id); + } + + /** + * 查询乳房评分列表 + * + * @param scBreastRating 乳房评分 + * @return 乳房评分 + */ + @Override + public List selectScBreastRatingList(ScBreastRating scBreastRating) { + return scBreastRatingMapper.selectScBreastRatingList(scBreastRating); + } + + /** + * 新增乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int insertScBreastRating(ScBreastRating scBreastRating) { + String manageTags = scBreastRating.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBreastRating.setSheepId(sheep.getId().toString()); + } + scBreastRating.setCreateTime(DateUtils.getNowDate()); + scBreastRating.setCreateBy(SecurityUtils.getUsername()); + int rows = scBreastRatingMapper.insertScBreastRating(scBreastRating); + + if (rows > 0 && scBreastRating.getSheepId() != null) { + Long sheepId = Long.parseLong(scBreastRating.getSheepId()); + Long score = scBreastRating.getScore().longValue(); + + BasSheep updateSheep = new BasSheep(); + updateSheep.setId(sheepId); + updateSheep.setBreast(score); + + basSheepMapper.updateBasSheep(updateSheep); + } + return rows; + } + + /** + * 修改乳房评分 + * + * @param scBreastRating 乳房评分 + * @return 结果 + */ + @Override + public int updateScBreastRating(ScBreastRating scBreastRating) { + String manageTags = scBreastRating.getManageTags(); + if (StringUtils.isNotBlank(manageTags)) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("耳号不存在,请检查输入"); + } + scBreastRating.setSheepId(sheep.getId().toString()); + } + return scBreastRatingMapper.updateScBreastRating(scBreastRating); + } + + /** + * 批量删除乳房评分 + * + * @param ids 需要删除的乳房评分主键 + * @return 结果 + */ + @Override + public int deleteScBreastRatingByIds(Long[] ids) { + return scBreastRatingMapper.deleteScBreastRatingByIds(ids); + } + + /** + * 删除乳房评分信息 + * + * @param id 乳房评分主键 + * @return 结果 + */ + @Override + public int deleteScBreastRatingById(Long id) { + return scBreastRatingMapper.deleteScBreastRatingById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java new file mode 100644 index 0000000..17e4ee4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/RawSpermRecordController.java @@ -0,0 +1,137 @@ +package com.zhyc.module.produce.breed.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.common.utils.StringUtils; +import com.zhyc.module.produce.breed.domain.RawSpermRecord; +import com.zhyc.module.produce.breed.service.IRawSpermRecordService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 采精记录Controller + * + * @author ruoyi + * @date 2025-07-23 + */ +@RestController +@RequestMapping("/Sperm/Sperm") +public class RawSpermRecordController extends BaseController +{ + @Autowired + private IRawSpermRecordService rawSpermRecordService; + + /** + * 查询采精记录列表 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:list')") + @GetMapping("/list") + public TableDataInfo list(RawSpermRecord rawSpermRecord) + { + startPage(); + List list = rawSpermRecordService.selectRawSpermRecordList(rawSpermRecord); + return getDataTable(list); + } + + /** + * 导出采精记录列表 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:export')") + @Log(title = "采精记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, RawSpermRecord rawSpermRecord) + { + List list = rawSpermRecordService.selectRawSpermRecordList(rawSpermRecord); + ExcelUtil util = new ExcelUtil(RawSpermRecord.class); + util.exportExcel(response, list, "采精记录数据"); + } + + /** + * 获取采精记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(rawSpermRecordService.selectRawSpermRecordById(id)); + } + + /** + * 新增采精记录 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:add')") + @Log(title = "采精记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody RawSpermRecord rawSpermRecord) + { + // 如果传入的是耳号,需要先根据耳号查询羊只ID + if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { + Long sheepId = rawSpermRecordService.getSheepIdByManageTags(rawSpermRecord.getManageTags()); + if (sheepId == null) { + return error("未找到对应耳号的羊只信息"); + } + rawSpermRecord.setSheepId(sheepId); + } + + return toAjax(rawSpermRecordService.insertRawSpermRecord(rawSpermRecord)); + } + + /** + * 修改采精记录 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:edit')") + @Log(title = "采精记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody RawSpermRecord rawSpermRecord) + { + // 如果传入的是耳号,需要先根据耳号查询羊只ID + if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { + Long sheepId = rawSpermRecordService.getSheepIdByManageTags(rawSpermRecord.getManageTags()); + if (sheepId == null) { + return error("未找到对应耳号的羊只信息"); + } + rawSpermRecord.setSheepId(sheepId); + } + + return toAjax(rawSpermRecordService.updateRawSpermRecord(rawSpermRecord)); + } + + /** + * 删除采精记录 + */ + @PreAuthorize("@ss.hasPermi('Sperm:Sperm:remove')") + @Log(title = "采精记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(rawSpermRecordService.deleteRawSpermRecordByIds(ids)); + } + + /** + * 根据耳号查询羊只信息 + */ + @GetMapping("/getSheepByManageTags/{manageTags}") + public AjaxResult getSheepByManageTags(@PathVariable("manageTags") String manageTags) + { + Long sheepId = rawSpermRecordService.getSheepIdByManageTags(manageTags); + if (sheepId != null) { + return success(sheepId); + } else { + return error("未找到对应耳号的羊只信息"); + } + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java new file mode 100644 index 0000000..7b6b947 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.produce.breed.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.produce.breed.domain.ScBreedPlan; +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.produce.breed.service.IScBreedPlanService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 配种计划Controller + * + * @author ruoyi + * @date 2025-07-16 + */ +@RestController +@RequestMapping("/mating_plan/mating_plan") +public class ScBreedPlanController extends BaseController +{ + @Autowired + private IScBreedPlanService scBreedPlanService; + + /** + * 查询配种计划列表 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:list')") + @GetMapping("/list") + public TableDataInfo list(ScBreedPlan scBreedPlan) + { + startPage(); + List list = scBreedPlanService.selectScBreedPlanList(scBreedPlan); + return getDataTable(list); + } + + /** + * 导出配种计划列表 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:export')") + @Log(title = "配种计划", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBreedPlan scBreedPlan) + { + List list = scBreedPlanService.selectScBreedPlanList(scBreedPlan); + ExcelUtil util = new ExcelUtil(ScBreedPlan.class); + util.exportExcel(response, list, "配种计划数据"); + } + + /** + * 获取配种计划详细信息 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBreedPlanService.selectScBreedPlanById(id)); + } + + /** + * 新增配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:add')") + @Log(title = "配种计划", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScBreedPlan scBreedPlan) + { + return toAjax(scBreedPlanService.insertScBreedPlan(scBreedPlan)); + } + + /** + * 修改配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:edit')") + @Log(title = "配种计划", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScBreedPlan scBreedPlan) + { + return toAjax(scBreedPlanService.updateScBreedPlan(scBreedPlan)); + } + + /** + * 删除配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:mating_plan:remove')") + @Log(title = "配种计划", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBreedPlanService.deleteScBreedPlanByIds(ids)); + } +} 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 new file mode 100644 index 0000000..c872868 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedPlanGenerateController.java @@ -0,0 +1,185 @@ +package com.zhyc.module.produce.breed.controller; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; +import com.zhyc.module.produce.breed.service.IScBreedPlanGenerateService; +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.common.core.page.TableDataInfo; + +/** + * 配种计划生成Controller + * + * @author ruoyi + * @date 2025-07-16 + */ +@RestController +@RequestMapping("/mating_plan/generate") +public class ScBreedPlanGenerateController extends BaseController +{ + @Autowired + private IScBreedPlanGenerateService scBreedPlanGenerateService; + + /** + * 查询配种计划生成列表 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:list')") + @GetMapping("/list") + public TableDataInfo list(ScBreedPlanGenerate scBreedPlanGenerate) + { + startPage(); + List list = scBreedPlanGenerateService.selectScBreedPlanGenerateList(scBreedPlanGenerate); + return getDataTable(list); + } + + /** + * 筛选符合条件的母羊 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:selectEwe')") + @GetMapping("/selectEwe") + public AjaxResult selectEligibleEwe() + { + List> eligibleEwe = scBreedPlanGenerateService.selectEligibleEwe(); + return success(eligibleEwe); + } + + /** + * 筛选符合条件的公羊 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:selectRam')") + @GetMapping("/selectRam") + public AjaxResult selectEligibleRam() + { + List> eligibleRam = scBreedPlanGenerateService.selectEligibleRam(); + return success(eligibleRam); + } + + /** + * 自动生成配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:auto')") + @PostMapping("/auto") + @Log(title = "自动生成配种计划", businessType = BusinessType.INSERT) + public AjaxResult autoGenerateBreedPlan(@RequestBody Map params) + { + try { + // 安全的类型转换 + List eweIdsRaw = (List) params.get("eweIds"); + List ramIdsRaw = (List) params.get("ramIds"); + + if (eweIdsRaw == null || ramIdsRaw == null) { + return error("参数不能为空"); + } + + List eweIds = eweIdsRaw.stream() + .map(obj -> { + if (obj instanceof Integer) { + return ((Integer) obj).longValue(); + } else if (obj instanceof Long) { + return (Long) obj; + } else { + return Long.valueOf(obj.toString()); + } + }) + .collect(Collectors.toList()); + + List ramIds = ramIdsRaw.stream() + .map(obj -> { + if (obj instanceof Integer) { + return ((Integer) obj).longValue(); + } else if (obj instanceof Long) { + return (Long) obj; + } else { + return Long.valueOf(obj.toString()); + } + }) + .collect(Collectors.toList()); + + ScBreedPlanGenerate planGenerate = scBreedPlanGenerateService.autoGenerateBreedPlan(eweIds, ramIds); + return success(planGenerate); + } catch (Exception e) { + logger.error("自动生成配种计划失败", e); + return error("自动生成配种计划失败:" + e.getMessage()); + } + } + + /** + * 获取配种计划生成详细信息 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBreedPlanGenerateService.selectScBreedPlanGenerateById(id)); + } + + /** + * 保存配种计划生成 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:add')") + @Log(title = "配种计划生成", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScBreedPlanGenerate scBreedPlanGenerate) + { + return toAjax(scBreedPlanGenerateService.insertScBreedPlanGenerate(scBreedPlanGenerate)); + } + + /** + * 修改配种计划生成 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:edit')") + @Log(title = "配种计划生成", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScBreedPlanGenerate scBreedPlanGenerate) + { + return toAjax(scBreedPlanGenerateService.updateScBreedPlanGenerate(scBreedPlanGenerate)); + } + + /** + * 审批配种计划 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:approve')") + @Log(title = "审批配种计划", businessType = BusinessType.UPDATE) + @PutMapping("/approve/{id}") + public AjaxResult approve(@PathVariable Long id) + { + return toAjax(scBreedPlanGenerateService.approveBreedPlan(id)); + } + + /** + * 获取配种计划详情 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:view')") + @GetMapping("/view/{id}") + public AjaxResult viewBreedPlan(@PathVariable Long id) + { + Map planDetails = scBreedPlanGenerateService.getBreedPlanDetails(id); + return success(planDetails); + } + + /** + * 删除配种计划生成 + */ + @PreAuthorize("@ss.hasPermi('mating_plan:generate:remove')") + @Log(title = "配种计划生成", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBreedPlanGenerateService.deleteScBreedPlanGenerateByIds(ids)); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..c80c7ae --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScBreedRecordController.java @@ -0,0 +1,158 @@ +package com.zhyc.module.produce.breed.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.produce.breed.domain.ScBreedRecord; +import com.zhyc.module.produce.breed.service.IScBreedRecordService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 配种记录Controller + * + * @author ruoyi + * @date 2025-07-23 + */ +@RestController +@RequestMapping("/Breeding_records/Breeding_records") +public class ScBreedRecordController extends BaseController +{ + @Autowired + private IScBreedRecordService scBreedRecordService; + + /** + * 查询配种记录列表 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:list')") + @GetMapping("/list") + public TableDataInfo list(ScBreedRecord scBreedRecord) + { + startPage(); + List list = scBreedRecordService.selectScBreedRecordList(scBreedRecord); + return getDataTable(list); + } + + /** + * 导出配种记录列表 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:export')") + @Log(title = "配种记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScBreedRecord scBreedRecord) + { + List list = scBreedRecordService.selectScBreedRecordList(scBreedRecord); + ExcelUtil util = new ExcelUtil(ScBreedRecord.class); + util.exportExcel(response, list, "配种记录数据"); + } + + /** + * 获取配种记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scBreedRecordService.selectScBreedRecordById(id)); + } + + /** + * 根据耳号查询羊只信息 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") + @GetMapping(value = "/getSheepByTags/{manageTags}") + public AjaxResult getSheepInfoByTags(@PathVariable("manageTags") String manageTags) + { + return success(scBreedRecordService.getSheepInfoByTags(manageTags)); + } + + /** + * 根据母羊耳号获取配种计划信息 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:query')") + @GetMapping(value = "/getBreedPlan/{manageTags}") + public AjaxResult getBreedPlanByEweTags(@PathVariable("manageTags") String manageTags) + { + return success(scBreedRecordService.getBreedPlanByEweTags(manageTags)); + } + + /** + * 新增配种记录 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:add')") + @Log(title = "配种记录", businessType = BusinessType.INSERT) + @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("未找到母羊耳号对应的羊只信息"); + } + scBreedRecord.setEweId(eweId.toString()); + } + + if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { + Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); + if (ramId == null) { + return error("未找到公羊耳号对应的羊只信息"); + } + scBreedRecord.setRamId(ramId.toString()); + } + + return toAjax(scBreedRecordService.insertScBreedRecord(scBreedRecord)); + } + + /** + * 修改配种记录 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:edit')") + @Log(title = "配种记录", businessType = BusinessType.UPDATE) + @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("未找到母羊耳号对应的羊只信息"); + } + scBreedRecord.setEweId(eweId.toString()); + } + + if (scBreedRecord.getRamManageTags() != null && !scBreedRecord.getRamManageTags().isEmpty()) { + Long ramId = scBreedRecordService.getRamIdByTags(scBreedRecord.getRamManageTags()); + if (ramId == null) { + return error("未找到公羊耳号对应的羊只信息"); + } + scBreedRecord.setRamId(ramId.toString()); + } + + return toAjax(scBreedRecordService.updateScBreedRecord(scBreedRecord)); + } + + /** + * 删除配种记录 + */ + @PreAuthorize("@ss.hasPermi('Breeding_records:Breeding_records:remove')") + @Log(title = "配种记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scBreedRecordService.deleteScBreedRecordByIds(ids)); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java new file mode 100644 index 0000000..4013c1d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScDryMilkController.java @@ -0,0 +1,115 @@ +package com.zhyc.module.produce.breed.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.produce.breed.domain.ScDryMilk; +import com.zhyc.module.produce.breed.service.IScDryMilkService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 干奶记录Controller + * + * @author ruoyi + * @date 2025-07-15 + */ +@RestController +@RequestMapping("/drymilk/drymilk") +public class ScDryMilkController extends BaseController +{ + @Autowired + private IScDryMilkService scDryMilkService; + + /** + * 查询干奶记录列表 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:list')") + @GetMapping("/list") + public TableDataInfo list(ScDryMilk scDryMilk) + { + startPage(); + List list = scDryMilkService.selectScDryMilkList(scDryMilk); + return getDataTable(list); + } + + /** + * 导出干奶记录列表 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:export')") + @Log(title = "干奶记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScDryMilk scDryMilk) + { + List list = scDryMilkService.selectScDryMilkList(scDryMilk); + ExcelUtil util = new ExcelUtil(ScDryMilk.class); + util.exportExcel(response, list, "干奶记录数据"); + } + + /** + * 获取干奶记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scDryMilkService.selectScDryMilkById(id)); + } + + /** + * 根据耳号查询羊只ID + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:query')") + @GetMapping(value = "/sheep/{manageTags}") + public AjaxResult getSheepIdByManageTags(@PathVariable("manageTags") String manageTags) + { + Long sheepId = scDryMilkService.selectSheepIdByManageTags(manageTags); + return success(sheepId); + } + + /** + * 新增干奶记录 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:add')") + @Log(title = "干奶记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScDryMilk scDryMilk) + { + return toAjax(scDryMilkService.insertScDryMilk(scDryMilk)); + } + + /** + * 修改干奶记录 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:edit')") + @Log(title = "干奶记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScDryMilk scDryMilk) + { + return toAjax(scDryMilkService.updateScDryMilk(scDryMilk)); + } + + /** + * 删除干奶记录 + */ + @PreAuthorize("@ss.hasPermi('drymilk:drymilk:remove')") + @Log(title = "干奶记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scDryMilkService.deleteScDryMilkByIds(ids)); + } +} \ 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 new file mode 100644 index 0000000..04bce38 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScLambingRecordController.java @@ -0,0 +1,146 @@ +package com.zhyc.module.produce.breed.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.produce.breed.domain.ScLambingRecord; +import com.zhyc.module.produce.breed.domain.ScLambDetail; +import com.zhyc.module.produce.breed.service.IScLambingRecordService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 产羔记录Controller + */ +@RestController +@RequestMapping("/breed/lambing_records") +public class ScLambingRecordController extends BaseController { + + @Autowired + private IScLambingRecordService scLambingRecordService; + + /** + * 查询产羔记录列表 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:list')") + @GetMapping("/list") + public TableDataInfo list(ScLambingRecord scLambingRecord) { + startPage(); + List list = scLambingRecordService.selectScLambingRecordList(scLambingRecord); + return getDataTable(list); + } + + /** + * 导出产羔记录列表 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:export')") + @Log(title = "产羔记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScLambingRecord scLambingRecord) { + List list = scLambingRecordService.selectScLambingRecordList(scLambingRecord); + ExcelUtil util = new ExcelUtil(ScLambingRecord.class); + util.exportExcel(response, list, "产羔记录数据"); + } + + /** + * 获取产羔记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(scLambingRecordService.selectScLambingRecordById(id)); + } + + /** + * 新增产羔记录(包含羔羊详情) + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:add')") + @Log(title = "产羔记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScLambingRecord scLambingRecord) { + try { + // 设置创建人 + scLambingRecord.setCreateBy(getUsername()); + + // 如果没有设置创建时间,使用当前时间 + if (scLambingRecord.getCreateTime() == null) { + scLambingRecord.setCreateTime(new java.util.Date()); + } + + int result = scLambingRecordService.insertScLambingRecord(scLambingRecord); + + if (result > 0) { + String message = "新增产羔记录成功"; + if (scLambingRecord.getLambDetails() != null && !scLambingRecord.getLambDetails().isEmpty()) { + message += ",同时录入了 " + scLambingRecord.getLambDetails().size() + " 只羔羊详情"; + } + return success(message); + } else { + return error("新增产羔记录失败"); + } + } catch (Exception e) { + logger.error("新增产羔记录异常", e); + return error("新增产羔记录失败:" + e.getMessage()); + } + } + + /** + * 修改产羔记录 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:edit')") + @Log(title = "产羔记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScLambingRecord scLambingRecord) { + try { + scLambingRecord.setUpdateBy(getUsername()); + scLambingRecord.setUpdateTime(new java.util.Date()); + return toAjax(scLambingRecordService.updateScLambingRecord(scLambingRecord)); + } catch (Exception e) { + logger.error("修改产羔记录异常", e); + return error("修改产羔记录失败:" + e.getMessage()); + } + } + + /** + * 删除产羔记录 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:remove')") + @Log(title = "产羔记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + try { + return toAjax(scLambingRecordService.deleteScLambingRecordByIds(ids)); + } catch (Exception e) { + logger.error("删除产羔记录异常", e); + return error("删除产羔记录失败:" + e.getMessage()); + } + } + + /** + * 查询羔羊详情 + */ + @PreAuthorize("@ss.hasPermi('breed:lambing_records:query')") + @GetMapping("/lamb_detail/{lambingRecordId}") + public AjaxResult getLambDetail(@PathVariable("lambingRecordId") Long lambingRecordId) { + try { + List lambDetails = scLambingRecordService.selectLambDetailByLambingRecordId(lambingRecordId); + return success(lambDetails); + } catch (Exception e) { + logger.error("查询羔羊详情异常", e); + return error("查询羔羊详情失败:" + e.getMessage()); + } + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java new file mode 100644 index 0000000..08d5cc1 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScPregnancyRecordController.java @@ -0,0 +1,116 @@ +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; +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.RequestParam; +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.produce.breed.domain.ScPregnancyRecord; +import com.zhyc.module.produce.breed.service.IScPregnancyRecordService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 孕检记录Controller + * + * @author zhyc + * @date 2025-01-21 + */ +@RestController +@RequestMapping("/Pregnancy_Test/Pregnancy_Test") +public class ScPregnancyRecordController extends BaseController +{ + @Autowired + private IScPregnancyRecordService scPregnancyRecordService; + + /** + * 查询孕检记录列表 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:list')") + @GetMapping("/list") + public TableDataInfo list(ScPregnancyRecord scPregnancyRecord) + { + startPage(); + List list = scPregnancyRecordService.selectScPregnancyRecordList(scPregnancyRecord); + return getDataTable(list); + } + + /** + * 导出孕检记录列表 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:export')") + @Log(title = "孕检记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScPregnancyRecord scPregnancyRecord) + { + List list = scPregnancyRecordService.selectScPregnancyRecordList(scPregnancyRecord); + ExcelUtil util = new ExcelUtil(ScPregnancyRecord.class); + util.exportExcel(response, list, "孕检记录数据"); + } + + /** + * 获取孕检记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scPregnancyRecordService.selectScPregnancyRecordById(id)); + } + + /** + * 新增孕检记录 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:add')") + @Log(title = "孕检记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScPregnancyRecord scPregnancyRecord) + { + return toAjax(scPregnancyRecordService.insertScPregnancyRecord(scPregnancyRecord)); + } + + /** + * 修改孕检记录 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:edit')") + @Log(title = "孕检记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScPregnancyRecord scPregnancyRecord) + { + return toAjax(scPregnancyRecordService.updateScPregnancyRecord(scPregnancyRecord)); + } + + /** + * 删除孕检记录 + */ + @PreAuthorize("@ss.hasPermi('Pregnancy_Test:Pregnancy_Test:remove')") + @Log(title = "孕检记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scPregnancyRecordService.deleteScPregnancyRecordByIds(ids)); + } + + /** + * 根据耳号获取羊只信息 + */ + @GetMapping("/getSheepByManageTags") + public AjaxResult getSheepByManageTags(@RequestParam("manageTags") String manageTags) + { + Map sheepInfo = scPregnancyRecordService.getSheepByManageTags(manageTags); + return success(sheepInfo); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java new file mode 100644 index 0000000..cbd1964 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScSheepDeathController.java @@ -0,0 +1,120 @@ +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; +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.produce.breed.domain.ScSheepDeath; +import com.zhyc.module.produce.breed.service.IScSheepDeathService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 羊只死淘记录Controller + * + * @author ruoyi + * @date 2025-08-06 + */ +@RestController +@RequestMapping("/sheep_death/death") +public class ScSheepDeathController extends BaseController +{ + @Autowired + private IScSheepDeathService scSheepDeathService; + + /** + * 查询羊只死淘记录列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:list')") + @GetMapping("/list") + public TableDataInfo list(ScSheepDeath scSheepDeath) + { + startPage(); + List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); + return getDataTable(list); + } + + /** + * 根据管理耳号查询羊只信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") + @GetMapping("/sheepInfo/{manageTags}") + public AjaxResult getSheepInfo(@PathVariable("manageTags") String manageTags) + { + Map sheepInfo = scSheepDeathService.selectSheepFileByManageTags(manageTags); + if (sheepInfo != null) { + return success(sheepInfo); + } else { + return error("未找到该耳号对应的羊只信息"); + } + } + + /** + * 导出羊只死淘记录列表 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:export')") + @Log(title = "羊只死淘记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScSheepDeath scSheepDeath) + { + List list = scSheepDeathService.selectScSheepDeathList(scSheepDeath); + ExcelUtil util = new ExcelUtil(ScSheepDeath.class); + util.exportExcel(response, list, "羊只死淘记录数据"); + } + + /** + * 获取羊只死淘记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scSheepDeathService.selectScSheepDeathById(id)); + } + + /** + * 新增羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:add')") + @Log(title = "羊只死淘记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScSheepDeath scSheepDeath) + { + return toAjax(scSheepDeathService.insertScSheepDeath(scSheepDeath)); + } + + /** + * 修改羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:edit')") + @Log(title = "羊只死淘记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScSheepDeath scSheepDeath) + { + return toAjax(scSheepDeathService.updateScSheepDeath(scSheepDeath)); + } + + /** + * 删除羊只死淘记录 + */ + @PreAuthorize("@ss.hasPermi('sheep_death:death:remove')") + @Log(title = "羊只死淘记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scSheepDeathService.deleteScSheepDeathByIds(ids)); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java new file mode 100644 index 0000000..d454abf --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/controller/ScWeanRecordController.java @@ -0,0 +1,162 @@ +package com.zhyc.module.produce.breed.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.produce.breed.domain.ScWeanRecord; +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.produce.breed.service.IScWeanRecordService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 断奶记录Controller + * + * @author zhyc + * @date 2024-01-01 + */ +@RestController +@RequestMapping("/Weaning/weaning_record") +public class ScWeanRecordController extends BaseController { + @Autowired + private IScWeanRecordService scWeanRecordService; + + /** + * 查询断奶记录列表 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:list')") + @GetMapping("/list") + public TableDataInfo list(ScWeanRecord scWeanRecord) { + startPage(); + List list = scWeanRecordService.selectScWeanRecordList(scWeanRecord); + return getDataTable(list); + } + + /** + * 导出断奶记录列表 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:export')") + @Log(title = "断奶记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScWeanRecord scWeanRecord) { + List list = scWeanRecordService.selectScWeanRecordList(scWeanRecord); + ExcelUtil util = new ExcelUtil(ScWeanRecord.class); + util.exportExcel(response, list, "断奶记录数据"); + } + + /** + * 获取断奶记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(scWeanRecordService.selectScWeanRecordById(id)); + } + + /** + * 根据耳号查询羊只ID + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:query')") + @GetMapping(value = "/sheepId/{earNumber}") + public AjaxResult getSheepIdByEarNumber(@PathVariable("earNumber") String earNumber) { + Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(earNumber); + if (sheepId != null) { + return success(sheepId); + } else { + return error("未找到对应的羊只信息"); + } + } + + /** + * 新增断奶记录 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:add')") + @Log(title = "断奶记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScWeanRecord scWeanRecord) { + // 验证耳号是否存在 + if (scWeanRecord.getEarNumber() != null) { + Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); + if (sheepId == null) { + return error("耳号不存在,请检查后重新输入"); + } + scWeanRecord.setSheepId(sheepId); + } + + // 验证必要字段 + if (scWeanRecord.getSheepId() == null) { + return error("羊只信息不能为空"); + } + if (scWeanRecord.getDatetime() == null) { + return error("断奶日期不能为空"); + } + if (scWeanRecord.getWeight() == null) { + return error("断奶重量不能为空"); + } + if (scWeanRecord.getStatus() == null) { + return error("是否留养不能为空"); + } + + scWeanRecord.setCreateBy(getUsername()); + return toAjax(scWeanRecordService.insertScWeanRecord(scWeanRecord)); + } + + /** + * 修改断奶记录 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:edit')") + @Log(title = "断奶记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScWeanRecord scWeanRecord) { + // 验证耳号是否存在 + if (scWeanRecord.getEarNumber() != null) { + Long sheepId = scWeanRecordService.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); + if (sheepId == null) { + return error("耳号不存在,请检查后重新输入"); + } + scWeanRecord.setSheepId(sheepId); + } + + // 验证必要字段 + if (scWeanRecord.getId() == null) { + return error("记录ID不能为空"); + } + if (scWeanRecord.getSheepId() == null) { + return error("羊只信息不能为空"); + } + if (scWeanRecord.getDatetime() == null) { + return error("断奶日期不能为空"); + } + if (scWeanRecord.getWeight() == null) { + return error("断奶重量不能为空"); + } + if (scWeanRecord.getStatus() == null) { + return error("是否留养不能为空"); + } + + return toAjax(scWeanRecordService.updateScWeanRecord(scWeanRecord)); + } + + /** + * 删除断奶记录 + */ + @PreAuthorize("@ss.hasPermi('Weaning:weaning_record:remove')") + @Log(title = "断奶记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(scWeanRecordService.deleteScWeanRecordByIds(ids)); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..2f1c625 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/RawSpermRecord.java @@ -0,0 +1,83 @@ +package com.zhyc.module.produce.breed.domain; + +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; + +/** + * 采精记录对象 raw_sperm_record + * + * @author ruoyi + * @date 2025-07-23 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class RawSpermRecord extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 耳号 */ + @Excel(name = "耳号") + private String manageTags; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 采精日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "采精日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date pickDate; + + /** 采精量 */ + @Excel(name = "采精量") + private Long amount; + + /** 精液密度 */ + @Excel(name = "精液密度") + private String density; + + /** 精液活力 */ + @Excel(name = "精液活力") + private String vitallity; + + /** 是否性控(0否1是) */ + @Excel(name = "是否性控", readConverterExp = "0=否,1=是") + private Long controlled; + + /** 性欲情况 */ + @Excel(name = "性欲情况") + private String sexualStatus; + + /** 诊疗信息 */ + @Excel(name = "诊疗信息") + private String info; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 采集备注 */ + @Excel(name = "采集备注") + private String comment; + + +} \ No newline at end of file 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 new file mode 100644 index 0000000..1989341 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlan.java @@ -0,0 +1,39 @@ +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; + +/** + * 配种计划对象 sc_breed_plan + * + * @author ruoyi + * @date 2025-07-16 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScBreedPlan extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 公羊id */ + @Excel(name = "公羊id") + private String ramId; + + /** 母羊id */ + @Excel(name = "母羊id") + private String eweId; + + /** 配种类型 */ + @Excel(name = "配种类型") + private Long breedType; + +} 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 new file mode 100644 index 0000000..db6f059 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanGenerate.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.domain; + +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; + +/** + * 配种计划生成对象 sc_breed_plan_generate + * + * @author ruoyi + * @date 2025-07-16 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScBreedPlanGenerate extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 计划名称 */ + @Excel(name = "计划名称") + private String planName; + + /** 计划类型:1-同期发情配种计划 */ + @Excel(name = "计划类型") + private Integer planType; + + /** 计划日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "计划日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date planDate; + + /** 总母羊数 */ + @Excel(name = "总母羊数") + private Integer totalEweCount; + + /** 总公羊数 */ + @Excel(name = "总公羊数") + private Integer totalRamCount; + + /** 配种比例 */ + @Excel(name = "配种比例") + private String breedRatio; + + /** 状态:0-待审批,1-已审批,2-已拒绝 */ + @Excel(name = "状态") + private Integer status; + + /** 审批人 */ + @Excel(name = "审批人") + private String approver; + + /** 审批时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "审批时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private Date approveTime; + + /** 审批意见 */ + private String approveRemark; + +} \ No newline at end of file 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 new file mode 100644 index 0000000..4380caf --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedPlanTemp.java @@ -0,0 +1,73 @@ +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; + +/** + * 配种计划详情对象 sc_breed_plan_temp + * + * @author ruoyi + * @date 2025-07-16 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScBreedPlanTemp extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 配种计划生成ID */ + private Long planGenerateId; + + /** 公羊ID */ + @Excel(name = "公羊ID") + private String ramId; + + /** 母羊ID */ + @Excel(name = "母羊ID") + private String eweId; + + /** 配种类型 */ + @Excel(name = "配种类型") + private Long breedType; + + /** 公羊管理耳号 */ + @Excel(name = "公羊管理耳号") + private String ramManageTags; + + /** 公羊品种 */ + @Excel(name = "公羊品种") + private String ramVariety; + + /** 母羊管理耳号 */ + @Excel(name = "母羊管理耳号") + private String eweManageTags; + + /** 母羊品种 */ + @Excel(name = "母羊品种") + private String eweVariety; + + /** 母羊体重 */ + @Excel(name = "母羊体重") + private Double eweWeight; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + +} \ No newline at end of file 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 new file mode 100644 index 0000000..c5f548d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java @@ -0,0 +1,116 @@ +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; + +/** + * 配种记录对象 sc_breed_record + * + * @author ruoyi + * @date 2025-07-23 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScBreedRecord extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只id */ + @Excel(name = "羊只id") + private Long sheepId; + + /** 配种公羊id */ + @Excel(name = "配种公羊id") + private String ramId; + + /** 配种母羊id */ + @Excel(name = "配种母羊id") + private String eweId; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 繁殖用药/耗精量 */ + @Excel(name = "耗精量") + private String breedDrugs; + + // ============ 显示字段 ============ + + /** 母羊耳号 */ + @Excel(name = "耳号") + private String eweManageTags; + + /** 母羊品种 */ + @Excel(name = "品种") + private String eweVariety; + + /** 公羊耳号 */ + @Excel(name = "配种公羊") + private String ramManageTags; + + /** 公羊品种 */ + @Excel(name = "配种公羊品种") + private String ramVariety; + + /** 胎次 */ + @Excel(name = "胎次") + private Integer eweParity; + + /** 月龄 */ + @Excel(name = "月龄") + private Integer eweMonthAge; + + /** 羊舍名称 */ + @Excel(name = "当前羊舍") + private String eweSheepfoldName; + + /** 繁育状态 */ + @Excel(name = "繁育状态") + private String eweBreedStatus; + + /** 是否性控 */ + @Excel(name = "是否性控", readConverterExp = "0=否,1=是") + private Integer eweControlled; + + /** 羊只备注 */ + @Excel(name = "羊只备注") + private String eweComment; + + /** 牧场名称 */ + @Excel(name = "所在牧场") + private String ranchName; + + /** 配种方式 */ + @Excel(name = "配种方式") + private String matingType; + + /** 羊只类别 */ + @Excel(name = "配种时羊只类别") + private String sheepType; + + /** 配次 */ + @Excel(name = "配次") + private Integer matingCount; + + /** 发情后配种时间 */ + @Excel(name = "发情后配种时间(小时)") + private Long timeSincePlanning; + + /** 牧场ID */ + private Long ranchId; + + +} \ 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 new file mode 100644 index 0000000..07f0fb8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScDryMilk.java @@ -0,0 +1,73 @@ +package com.zhyc.module.produce.breed.domain; + +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; + +/** + * 干奶记录对象 sc_dry_milk + * + * @author ruoyi + * @date 2025-07-15 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScDryMilk extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键id */ + private Long id; + + /** 羊只id */ + @Excel(name = "羊只id") + private String sheepId; + + /** 干奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "干奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 是否使用乳头封闭剂 */ + @Excel(name = "是否使用乳头封闭剂") + private Long status; + + /** 转入羊舍id */ + @Excel(name = "转入羊舍id") + private Long sheepfold; + + /** 技术员 */ + @Excel(name = "技术员") + private String tecahnician; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + // 以下为联表查询字段,不存储在sc_dry_milk表中 + + /** 管理耳号 */ + @Excel(name = "耳号") + private String manageTags; + + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 羊舍名称 */ + @Excel(name = "转入羊舍") + private String sheepfoldName; + + /** 事件类型 */ + @Excel(name = "事件类型") + private String eventType; + + +} \ No newline at end of file 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 new file mode 100644 index 0000000..69044e4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambDetail.java @@ -0,0 +1,94 @@ +package com.zhyc.module.produce.breed.domain; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +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; + +/** + * 羔羊详情对象 sc_lamb_detail + * + * @author ruoyi + * @date 2025-07-11 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScLambDetail extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 产羔记录ID */ + @Excel(name = "产羔记录ID") + private Long lambingRecordId; + + /** 羔羊耳号 */ + @Excel(name = "羔羊耳号") + private String lambEarNumber; + + /** 羔羊品种ID */ + @Excel(name = "羔羊品种ID") + private Integer lambBreed; // 改为Integer类型,存储品种ID + + /** 性别 */ + @Excel(name = "性别") + private Integer gender; + + /** 出生重量 */ + @Excel(name = "出生重量") + private BigDecimal birthWeight; + + /** 是否留养 */ + @Excel(name = "是否留养") + private Boolean isRetained; + + /** 家系 */ + @Excel(name = "家系") + private String lineage; + + /** 生日 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + private List lambDetails; + + /** 母羊ID */ + private Long motherId; + + /** 父羊ID */ + private Long fatherId; + + /** 牧场ID */ + private Integer ranchId; + + /** 羊舍ID */ + private Integer sheepfoldId; + + /** 胎次 */ + private Integer parity; + + // getter和setter方法 + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java new file mode 100644 index 0000000..bfb27a0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScLambingRecord.java @@ -0,0 +1,387 @@ +package com.zhyc.module.produce.breed.domain; + +import java.util.Date; +import java.util.List; +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; + +/** + * 产羔记录对象 sc_lambing_record + * + * @author ruoyi + * @date 2025-07-11 + */ +public class ScLambingRecord extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只id */ + @Excel(name = "羊只id") + private String sheepId; + + /** 胎次 */ + @Excel(name = "胎次") + private Long parity; + + /** 产羔数量 */ + @Excel(name = "产羔数量") + private Long lambsBorn; + + /** 活羔数量 */ + @Excel(name = "活羔数量") + private Long survival; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 产羔评分 */ + @Excel(name = "产羔评分") + private Long score; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 创建日期 */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date createTime; // 改为 createTime + + // ========== 关联查询字段(简化版) ========== + + /** 母羊耳号 */ + @Excel(name = "母羊耳号") + private String femaleEarNumber; + + /** 母羊品种 */ + @Excel(name = "母羊品种") + private String femaleBreed; + + /** 月龄 */ + @Excel(name = "月龄") + private Integer monthAge; + + /** 当前羊舍 */ + @Excel(name = "当前羊舍") + private String currentShed; + + /** 所在牧场 */ + @Excel(name = "所在牧场") + private String farm; + + /** 配种日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date breedingDate; + + /** 公羊耳号 */ + @Excel(name = "公羊耳号") + private String maleEarNumber; + + /** 公羊品种 */ + @Excel(name = "公羊品种") + private String maleBreed; + + /** 产羔时怀孕天数 */ + @Excel(name = "产羔时怀孕天数") + private Integer pregnancyDays; + + /** 折损数(计算字段) */ + @Excel(name = "折损数") + private Integer loss; + + /** 公羔数量(从羊只信息表统计) */ + @Excel(name = "公羔数量") + private Integer maleCount; + + /** 母羔数量(从羊只信息表统计) */ + @Excel(name = "母羔数量") + private Integer femaleCount; + + /** 留养公羔数量 */ + @Excel(name = "留养公羔数量") + private Integer retainedMaleCount; + + /** 留养母羔数量 */ + @Excel(name = "留养母羔数量") + private Integer retainedFemaleCount; + + /** 未留养公羔数量 */ + @Excel(name = "未留养公羔数量") + private Integer unretainedMaleCount; + + /** 未留养母羔数量 */ + @Excel(name = "未留养母羔数量") + private Integer unretainedFemaleCount; + + /** 羔羊信息列表(从羊只信息表查询) */ + private List lambInfoList; + + private List lambDetails; + + // ========== 原有getter和setter方法 ========== + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setSheepId(String sheepId) + { + this.sheepId = sheepId; + } + + public String getSheepId() + { + return sheepId; + } + + public void setParity(Long parity) + { + this.parity = parity; + } + + public Long getParity() + { + return parity; + } + + public void setLambsBorn(Long lambsBorn) + { + this.lambsBorn = lambsBorn; + } + + public Long getLambsBorn() + { + return lambsBorn; + } + + public void setSurvival(Long survival) + { + this.survival = survival; + } + + public Long getSurvival() + { + return survival; + } + + public void setTechnician(String technician) + { + this.technician = technician; + } + + public String getTechnician() + { + return technician; + } + + public void setScore(Long score) + { + this.score = score; + } + + public Long getScore() + { + return score; + } + + public void setComment(String comment) + { + this.comment = comment; + } + + public String getComment() + { + return comment; + } + + public void setCreateTime(Date createTime) + { + this.createTime = createTime; + } + + public Date getCreateTime() + { + return createTime; + } + + // ========== 简化版关联字段的getter和setter方法 ========== + + public String getFemaleEarNumber() { + return femaleEarNumber; + } + + public void setFemaleEarNumber(String femaleEarNumber) { + this.femaleEarNumber = femaleEarNumber; + } + + public String getFemaleBreed() { + return femaleBreed; + } + + public void setFemaleBreed(String femaleBreed) { + this.femaleBreed = femaleBreed; + } + + public Integer getMonthAge() { + return monthAge; + } + + public void setMonthAge(Integer monthAge) { + this.monthAge = monthAge; + } + + public String getCurrentShed() { + return currentShed; + } + + public void setCurrentShed(String currentShed) { + this.currentShed = currentShed; + } + + public String getFarm() { + return farm; + } + + public void setFarm(String farm) { + this.farm = farm; + } + + public Date getBreedingDate() { + return breedingDate; + } + + public void setBreedingDate(Date breedingDate) { + this.breedingDate = breedingDate; + } + + public String getMaleEarNumber() { + return maleEarNumber; + } + + public void setMaleEarNumber(String maleEarNumber) { + this.maleEarNumber = maleEarNumber; + } + + public String getMaleBreed() { + return maleBreed; + } + + public void setMaleBreed(String maleBreed) { + this.maleBreed = maleBreed; + } + + + public Integer getPregnancyDays() { + return pregnancyDays; + } + + public void setPregnancyDays(Integer pregnancyDays) { + this.pregnancyDays = pregnancyDays; + } + + public Integer getLoss() { + return loss; + } + + public void setLoss(Integer loss) { + this.loss = loss; + } + + public Integer getMaleCount() { + return maleCount; + } + + public void setMaleCount(Integer maleCount) { + this.maleCount = maleCount; + } + + public Integer getFemaleCount() { + return femaleCount; + } + + public void setFemaleCount(Integer femaleCount) { + this.femaleCount = femaleCount; + } + + public Integer getRetainedMaleCount() { + return retainedMaleCount; + } + + public void setRetainedMaleCount(Integer retainedMaleCount) { + this.retainedMaleCount = retainedMaleCount; + } + + public Integer getRetainedFemaleCount() { + return retainedFemaleCount; + } + + public void setRetainedFemaleCount(Integer retainedFemaleCount) { + this.retainedFemaleCount = retainedFemaleCount; + } + + public Integer getUnretainedMaleCount() { + return unretainedMaleCount; + } + + public void setUnretainedMaleCount(Integer unretainedMaleCount) { + this.unretainedMaleCount = unretainedMaleCount; + } + + public Integer getUnretainedFemaleCount() { + return unretainedFemaleCount; + } + + public void setUnretainedFemaleCount(Integer unretainedFemaleCount) { + this.unretainedFemaleCount = unretainedFemaleCount; + } + + public List getLambInfoList() { + return lambInfoList; + } + + public void setLambInfoList(List lambInfoList) { + this.lambInfoList = lambInfoList; + } + + public List getLambDetails() { + return lambDetails; + } + + public void setLambDetails(List lambDetails) { + this.lambDetails = lambDetails; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("sheepId", getSheepId()) + .append("parity", getParity()) + .append("lambsBorn", getLambsBorn()) + .append("survival", getSurvival()) + .append("technician", getTechnician()) + .append("score", getScore()) + .append("comment", getComment()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) // 改为 createTime + .append("femaleEarNumber", getFemaleEarNumber()) + .append("femaleBreed", getFemaleBreed()) + .append("farm", getFarm()) + .toString(); + } +} + 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 new file mode 100644 index 0000000..f02d38f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScPregnancyRecord.java @@ -0,0 +1,122 @@ +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; + +/** + * 孕检记录对象 sc_pregnancy_record + * + * @author zhyc + * @date 2025-01-21 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScPregnancyRecord extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 耳号 */ + @Excel(name = "耳号") + private String manageTags; + + /** 孕检日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "孕检日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 孕检结果 */ + @Excel(name = "孕检结果") + private String result; + + /** 胎儿数量 */ + @Excel(name = "胎儿数量") + private Integer fetusCount; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 孕检方式 */ + @Excel(name = "孕检方式") + private String way; + + /** 备注 */ + @Excel(name = "备注") + private String remark; + + /** 是否删除 */ + private Integer isDelete; + + // 关联查询字段 + /** 品种 */ + @Excel(name = "品种") + private String variety; + + /** 月龄 */ + @Excel(name = "月龄") + private Long monthAge; + + /** 胎次 */ + @Excel(name = "胎次") + private Integer parity; + + /** 配次 */ + @Excel(name = "配次") + private Integer matingCounts; + + /** 当前羊舍 */ + @Excel(name = "当前羊舍") + private String sheepfoldName; + + /** 繁育状态 */ + @Excel(name = "繁育状态") + private String breedStatus; + + /** 配种公羊耳号 */ + @Excel(name = "配种公羊") + private String fatherManageTags; + + /** 配种公羊品种 */ + @Excel(name = "配种公羊品种") + private String fatherVariety; + + /** 配种类型 */ + @Excel(name = "配种类型") + private String matingTypeName; + + /** 配种日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "配种日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date matingDate; + + /** 预产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "预产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expectedDate; + + /** 上次事件日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "上次事件日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date lastEventDate; + + /** 所在牧场 */ + @Excel(name = "所在牧场") + private String ranchName; + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java new file mode 100644 index 0000000..52f04dd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScSheepDeath.java @@ -0,0 +1,356 @@ +package com.zhyc.module.produce.breed.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; + +/** + * 羊只死淘记录对象 sc_sheep_death + * + * @author ruoyi + * @date 2025-08-06 + */ +public class ScSheepDeath extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 管理耳号 */ + @Excel(name = "管理耳号") + private String manageTags; + + /** 事件类型 */ + @Excel(name = "事件类型") + private String eventType; + + /** 死亡日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "死亡日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date deathDate; + + /** 疾病类型ID */ + @Excel(name = "疾病类型ID") + private Long diseaseTypeId; + + /** 疾病子类型ID */ + @Excel(name = "疾病子类型ID") + private Long diseaseSubtypeId; + + /** 死淘去向 */ + @Excel(name = "死淘去向") + private String disposalDirection; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 处理人 */ + @Excel(name = "处理人") + private String handler; + + /** 班组 */ + @Excel(name = "班组") + private String workGroup; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 是否删除(0:未删除 1:已删除) */ + @Excel(name = "是否删除(0:未删除 1:已删除)") + private Long isDelete; + + // 以下字段仅用于前端显示,不存储到数据库 + /** 品种 */ + private String variety; + + /** 死亡时羊只类别 */ + private String sheepType; + + /** 性别 */ + private Integer gender; + + /** 日龄 */ + private Long dayAge; + + /** 胎次 */ + private Integer parity; + + /** 羊舍 */ + private String sheepfoldName; + + /** 繁育状态 */ + private String breedStatus; + + /** 死亡时产后天数 */ + private Integer postLambingDay; + + /** 死亡时泌乳天数 */ + private Integer lactationDay; + + /** 死亡时怀孕天数 */ + private Integer gestationDay; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setSheepId(Long sheepId) + { + this.sheepId = sheepId; + } + + public Long getSheepId() + { + return sheepId; + } + + public void setManageTags(String manageTags) + { + this.manageTags = manageTags; + } + + public String getManageTags() + { + return manageTags; + } + + public void setEventType(String eventType) + { + this.eventType = eventType; + } + + public String getEventType() + { + return eventType; + } + + public void setDeathDate(Date deathDate) + { + this.deathDate = deathDate; + } + + public Date getDeathDate() + { + return deathDate; + } + + public void setDiseaseTypeId(Long diseaseTypeId) + { + this.diseaseTypeId = diseaseTypeId; + } + + public Long getDiseaseTypeId() + { + return diseaseTypeId; + } + + public void setDiseaseSubtypeId(Long diseaseSubtypeId) + { + this.diseaseSubtypeId = diseaseSubtypeId; + } + + public Long getDiseaseSubtypeId() + { + return diseaseSubtypeId; + } + + public void setDisposalDirection(String disposalDirection) + { + this.disposalDirection = disposalDirection; + } + + public String getDisposalDirection() + { + return disposalDirection; + } + + public void setTechnician(String technician) + { + this.technician = technician; + } + + public String getTechnician() + { + return technician; + } + + public void setHandler(String handler) + { + this.handler = handler; + } + + public String getHandler() + { + return handler; + } + + public void setWorkGroup(String workGroup) + { + this.workGroup = workGroup; + } + + public String getWorkGroup() + { + return workGroup; + } + + public void setComment(String comment) + { + this.comment = comment; + } + + public String getComment() + { + return comment; + } + + public void setIsDelete(Long isDelete) + { + this.isDelete = isDelete; + } + + public Long getIsDelete() + { + return isDelete; + } + + // 以下为仅用于显示的字段的getter/setter + public void setVariety(String variety) + { + this.variety = variety; + } + + public String getVariety() + { + return variety; + } + + public void setSheepType(String sheepType) + { + this.sheepType = sheepType; + } + + public String getSheepType() + { + return sheepType; + } + + public void setGender(Integer gender) + { + this.gender = gender; + } + + public Integer getGender() + { + return gender; + } + + public void setDayAge(Long dayAge) + { + this.dayAge = dayAge; + } + + public Long getDayAge() + { + return dayAge; + } + + public void setParity(Integer parity) + { + this.parity = parity; + } + + public Integer getParity() + { + return parity; + } + + public void setSheepfoldName(String sheepfoldName) + { + this.sheepfoldName = sheepfoldName; + } + + public String getSheepfoldName() + { + return sheepfoldName; + } + + public void setBreedStatus(String breedStatus) + { + this.breedStatus = breedStatus; + } + + public String getBreedStatus() + { + return breedStatus; + } + + public void setPostLambingDay(Integer postLambingDay) + { + this.postLambingDay = postLambingDay; + } + + public Integer getPostLambingDay() + { + return postLambingDay; + } + + public void setLactationDay(Integer lactationDay) + { + this.lactationDay = lactationDay; + } + + public Integer getLactationDay() + { + return lactationDay; + } + + public void setGestationDay(Integer gestationDay) + { + this.gestationDay = gestationDay; + } + + public Integer getGestationDay() + { + return gestationDay; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("sheepId", getSheepId()) + .append("manageTags", getManageTags()) + .append("eventType", getEventType()) + .append("deathDate", getDeathDate()) + .append("diseaseTypeId", getDiseaseTypeId()) + .append("diseaseSubtypeId", getDiseaseSubtypeId()) + .append("disposalDirection", getDisposalDirection()) + .append("technician", getTechnician()) + .append("handler", getHandler()) + .append("workGroup", getWorkGroup()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("comment", getComment()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("isDelete", getIsDelete()) + .toString(); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..79c70ce --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScWeanRecord.java @@ -0,0 +1,100 @@ +package com.zhyc.module.produce.breed.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zhyc.common.annotation.Excel; +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 + * + * @author zhyc + * @date 2024-01-01 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ScWeanRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 羊只ID */ + @Excel(name = "羊只ID") + private Long sheepId; + + /** 断奶日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date datetime; + + /** 断奶重量 */ + @Excel(name = "断奶重量") + private BigDecimal weight; + + /** 是否留养 */ + @Excel(name = "是否留养") + private String status; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 电子耳号 */ + @Excel(name = "电子耳号") + private String electronicTags; + + // 关联查询字段 + /** 耳号 */ + @Excel(name = "耳号") + private String earNumber; + + /** 品种 */ + @Excel(name = "品种") + private String breed; + + /** 事件类型 */ + @Excel(name = "事件类型") + private String eventType; + + /** 性别 */ + @Excel(name = "性别") + private String gender; + + /** 父号 */ + @Excel(name = "父号") + private String fatherNumber; + + /** 母号 */ + @Excel(name = "母号") + private String motherNumber; + + /** 月龄 */ + @Excel(name = "月龄") + private Integer monthAge; + + /** 出生重量 */ + @Excel(name = "出生重量") + private BigDecimal birthWeight; + + /** 羊舍 */ + @Excel(name = "羊舍") + private String sheepPen; + + /** 繁育状态 */ + @Excel(name = "繁育状态") + private String breedingStatus; + + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java new file mode 100644 index 0000000..e8b79f7 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/SheepLambInfo.java @@ -0,0 +1,25 @@ +package com.zhyc.module.produce.breed.domain; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * 羊只羔羊信息对象(用于产羔详情显示) + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +class SheepLambInfo { + private String lambEarNumber; // 羔羊耳号 + private String lambBreed; // 羔羊品种 + private Integer gender; // 性别 + private Double birthWeight; // 出生重量 + private Boolean isRetained; // 是否留养 + private String lineage; // 家系 + private Date birthday; // 生日 + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java new file mode 100644 index 0000000..a3b9ef8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/RawSpermRecordMapper.java @@ -0,0 +1,69 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.RawSpermRecord; + +/** + * 采精记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-23 + */ +public interface RawSpermRecordMapper +{ + /** + * 查询采精记录 + * + * @param id 采精记录主键 + * @return 采精记录 + */ + public RawSpermRecord selectRawSpermRecordById(Long id); + + /** + * 查询采精记录列表 + * + * @param rawSpermRecord 采精记录 + * @return 采精记录集合 + */ + public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord); + + /** + * 新增采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + public int insertRawSpermRecord(RawSpermRecord rawSpermRecord); + + /** + * 修改采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + public int updateRawSpermRecord(RawSpermRecord rawSpermRecord); + + /** + * 删除采精记录 + * + * @param id 采精记录主键 + * @return 结果 + */ + public int deleteRawSpermRecordById(Long id); + + /** + * 批量删除采精记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteRawSpermRecordByIds(Long[] ids); + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 耳号 + * @return 羊只ID + */ + public Long selectSheepIdByManageTags(String manageTags); +} \ No newline at end of file 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 new file mode 100644 index 0000000..00eaf16 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanGenerateMapper.java @@ -0,0 +1,107 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import java.util.Map; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; +import com.zhyc.module.produce.breed.domain.ScBreedPlan; + +/** + * 配种计划生成Mapper接口 + * + * @author ruoyi + * @date 2025-07-16 + */ +@Mapper +public interface ScBreedPlanGenerateMapper +{ + /** + * 查询配种计划生成 + * + * @param id 配种计划生成主键 + * @return 配种计划生成 + */ + public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id); + + /** + * 查询配种计划生成列表 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 配种计划生成集合 + */ + public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 筛选符合条件的母羊 + * + * @return 符合条件的母羊列表 + */ + public List> selectEligibleEwe(); + + /** + * 筛选符合条件的公羊 + * + * @return 符合条件的公羊列表 + */ + public List> selectEligibleRam(); + + /** + * 新增配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 插入临时配种计划 + * + * @param planGenerateId 配种计划生成ID + * @param breedPlan 配种计划 + * @return 结果 + */ + public int insertTempBreedPlan(@Param("planGenerateId") Long planGenerateId, + @Param("breedPlan") ScBreedPlan breedPlan); + + /** + * 修改配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 将临时配种计划转为正式配种计划 + * + * @param planGenerateId 配种计划生成ID + * @return 结果 + */ + public int transferTempToFormal(Long planGenerateId); + + /** + * 获取配种计划详情 + * + * @param planGenerateId 配种计划生成ID + * @return 配种计划详情列表 + */ + public List> selectBreedPlanDetails(Long planGenerateId); + + /** + * 删除配种计划生成 + * + * @param id 配种计划生成主键 + * @return 结果 + */ + public int deleteScBreedPlanGenerateById(Long id); + + /** + * 批量删除配种计划生成 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBreedPlanGenerateByIds(Long[] ids); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java new file mode 100644 index 0000000..9699efb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedPlanMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScBreedPlan; +import org.apache.ibatis.annotations.Mapper; + +/** + * 配种计划Mapper接口 + * + * @author ruoyi + * @date 2025-07-16 + */ +@Mapper +public interface ScBreedPlanMapper +{ + /** + * 查询配种计划 + * + * @param id 配种计划主键 + * @return 配种计划 + */ + public ScBreedPlan selectScBreedPlanById(Long id); + + /** + * 查询配种计划列表 + * + * @param scBreedPlan 配种计划 + * @return 配种计划集合 + */ + public List selectScBreedPlanList(ScBreedPlan scBreedPlan); + + /** + * 新增配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + public int insertScBreedPlan(ScBreedPlan scBreedPlan); + + /** + * 修改配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + public int updateScBreedPlan(ScBreedPlan scBreedPlan); + + /** + * 删除配种计划 + * + * @param id 配种计划主键 + * @return 结果 + */ + public int deleteScBreedPlanById(Long id); + + /** + * 批量删除配种计划 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBreedPlanByIds(Long[] ids); +} 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 new file mode 100644 index 0000000..ee67b34 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScBreedRecordMapper.java @@ -0,0 +1,94 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScBreedRecord; + +/** + * 配种记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-23 + */ +public interface ScBreedRecordMapper +{ + /** + * 查询配种记录 + * + * @param id 配种记录主键 + * @return 配种记录 + */ + public ScBreedRecord selectScBreedRecordById(Long id); + + /** + * 查询配种记录列表 + * + * @param scBreedRecord 配种记录 + * @return 配种记录集合 + */ + public List selectScBreedRecordList(ScBreedRecord scBreedRecord); + + /** + * 新增配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + public int insertScBreedRecord(ScBreedRecord scBreedRecord); + + /** + * 修改配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + public int updateScBreedRecord(ScBreedRecord scBreedRecord); + + /** + * 删除配种记录 + * + * @param id 配种记录主键 + * @return 结果 + */ + public int deleteScBreedRecordById(Long id); + + /** + * 批量删除配种记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScBreedRecordByIds(Long[] ids); + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + public Long getSheepIdByManageTags(String manageTags); + + /** + * 根据公羊耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + public Long getRamIdByManageTags(String manageTags); + + /** + * 根据耳号查询羊只详细信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map getSheepInfoByTags(String manageTags); + + /** + * 根据母羊耳号获取配种计划信息 + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + public Map getBreedPlanByEweTags(String manageTags); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java new file mode 100644 index 0000000..742dbe7 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScDryMilkMapper.java @@ -0,0 +1,71 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScDryMilk; +import org.apache.ibatis.annotations.Mapper; + +/** + * 干奶记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Mapper +public interface ScDryMilkMapper +{ + /** + * 查询干奶记录 + * + * @param id 干奶记录主键 + * @return 干奶记录 + */ + public ScDryMilk selectScDryMilkById(Long id); + + /** + * 查询干奶记录列表 + * + * @param scDryMilk 干奶记录 + * @return 干奶记录集合 + */ + public List selectScDryMilkList(ScDryMilk scDryMilk); + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + public Long selectSheepIdByManageTags(String manageTags); + + /** + * 新增干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + public int insertScDryMilk(ScDryMilk scDryMilk); + + /** + * 修改干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + public int updateScDryMilk(ScDryMilk scDryMilk); + + /** + * 删除干奶记录 + * + * @param id 干奶记录主键 + * @return 结果 + */ + public int deleteScDryMilkById(Long id); + + /** + * 批量删除干奶记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScDryMilkByIds(Long[] ids); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java new file mode 100644 index 0000000..2ba02de --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambDetailMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScLambDetail; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * 羔羊详情Mapper接口 + */ +@Mapper +public interface ScLambDetailMapper { + + /** + * 查询羔羊详情列表 + */ + public List selectScLambDetailList(ScLambDetail scLambDetail); + + /** + * 新增羔羊详情 + */ + public int insertScLambDetail(ScLambDetail scLambDetail); + public int insertBasSheep(ScLambDetail scLambDetail); + /** + * 批量新增羔羊详情 + */ + public int insertScLambDetailBatch(@Param("list") List scLambDetailList); + public int insertBasSheepBatch(@Param("list") List scLambDetailList); + /** + * 修改羔羊详情 + */ + public int updateScLambDetail(ScLambDetail scLambDetail); + + /** + * 删除羔羊详情 + */ + public int deleteScLambDetailById(Long id); + + /** + * 批量删除羔羊详情 + */ + public int deleteScLambDetailByIds(Long[] ids); + + /** + * 根据产羔记录ID删除羔羊详情 + */ + public int deleteScLambDetailByLambingRecordId(Long lambingRecordId); + + /** + * 查询羔羊详情 + */ + public ScLambDetail selectScLambDetailById(Long id); + + /** + * 根据产羔记录ID查询羔羊详情列表 + */ + public List selectScLambDetailByLambingRecordId(Long lambingRecordId); + + /** + * 检查羔羊耳号是否已存在 + */ + public int checkLambEarNumberExists(@Param("lambEarNumber") String lambEarNumber, @Param("excludeId") Long excludeId); +} \ 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 new file mode 100644 index 0000000..85edef3 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java @@ -0,0 +1,72 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScLambingRecord; +import com.zhyc.module.produce.breed.domain.ScLambDetail; +import org.apache.ibatis.annotations.Mapper; + +/** + * 产羔记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-11 + */ +@Mapper +public interface ScLambingRecordMapper +{ + /** + * 查询产羔记录 + * + * @param id 产羔记录主键 + * @return 产羔记录 + */ + public ScLambingRecord selectScLambingRecordById(Long id); + + /** + * 查询产羔记录列表(包含关联信息) + * + * @param scLambingRecord 产羔记录 + * @return 产羔记录集合 + */ + public List selectScLambingRecordList(ScLambingRecord scLambingRecord); + + /** + * 查询产羔记录详细信息(包含关联信息) + * + * @param id 产羔记录主键 + * @return 产羔记录 + */ + public ScLambingRecord selectScLambingRecordDetailById(Long id); + + /** + * 新增产羔记录 + * + * @param scLambingRecord 产羔记录 + * @return 结果 + */ + public int insertScLambingRecord(ScLambingRecord scLambingRecord); + + /** + * 修改产羔记录 + * + * @param scLambingRecord 产羔记录 + * @return 结果 + */ + public int updateScLambingRecord(ScLambingRecord scLambingRecord); + + /** + * 删除产羔记录 + * + * @param id 产羔记录主键 + * @return 结果 + */ + public int deleteScLambingRecordById(Long id); + + /** + * 批量删除产羔记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScLambingRecordByIds(Long[] ids); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java new file mode 100644 index 0000000..4962992 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScPregnancyRecordMapper.java @@ -0,0 +1,78 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; + +/** + * 孕检记录Mapper接口 + * + * @author zhyc + * @date 2025-01-21 + */ +public interface ScPregnancyRecordMapper +{ + /** + * 查询孕检记录 + * + * @param id 孕检记录主键 + * @return 孕检记录 + */ + public ScPregnancyRecord selectScPregnancyRecordById(Long id); + + /** + * 查询孕检记录列表 + * + * @param scPregnancyRecord 孕检记录 + * @return 孕检记录集合 + */ + public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord); + + /** + * 新增孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); + + /** + * 修改孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); + + /** + * 删除孕检记录 + * + * @param id 孕检记录主键 + * @return 结果 + */ + public int deleteScPregnancyRecordById(Long id); + + /** + * 批量删除孕检记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScPregnancyRecordByIds(Long[] ids); + + /** + * 根据耳号查询羊只信息 + * + * @param manageTags 耳号 + * @return 羊只信息 + */ + public Map selectSheepByManageTags(String manageTags); + + /** + * 更新羊只基础表中的孕检相关字段 + * + * @param params 更新参数 + * @return 结果 + */ + public int updateSheepPregnancyInfo(Map params); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java new file mode 100644 index 0000000..980d20d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScSheepDeathMapper.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; + +/** + * 羊只死淘记录Mapper接口 + * + * @author ruoyi + * @date 2025-08-06 + */ +public interface ScSheepDeathMapper +{ + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + public ScSheepDeath selectScSheepDeathById(Long id); + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录集合 + */ + public List selectScSheepDeathList(ScSheepDeath scSheepDeath); + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map selectSheepFileByManageTags(String manageTags); + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int insertScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int updateScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 删除羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + public int deleteScSheepDeathById(Long id); + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScSheepDeathByIds(Long[] ids); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java new file mode 100644 index 0000000..cb74588 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScWeanRecordMapper.java @@ -0,0 +1,78 @@ +package com.zhyc.module.produce.breed.mapper; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScWeanRecord; +import org.apache.ibatis.annotations.Mapper; + +/** + * 断奶记录Mapper接口 + * + * @author zhyc + * @date 2024-01-01 + */ +@Mapper +public interface ScWeanRecordMapper { + /** + * 查询断奶记录 + * + * @param id 断奶记录主键 + * @return 断奶记录 + */ + public ScWeanRecord selectScWeanRecordById(Long id); + + /** + * 查询断奶记录列表 + * + * @param scWeanRecord 断奶记录 + * @return 断奶记录集合 + */ + public List selectScWeanRecordList(ScWeanRecord scWeanRecord); + + /** + * 新增断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + public int insertScWeanRecord(ScWeanRecord scWeanRecord); + + /** + * 修改断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + public int updateScWeanRecord(ScWeanRecord scWeanRecord); + + /** + * 删除断奶记录 + * + * @param id 断奶记录主键 + * @return 结果 + */ + public int deleteScWeanRecordById(Long id); + + /** + * 批量删除断奶记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScWeanRecordByIds(Long[] ids); + + /** + * 根据耳号查询羊只ID + * + * @param earNumber 耳号 + * @return 羊只ID + */ + public Long selectSheepIdByEarNumber(String earNumber); + + /** + * 根据耳号更新bas_sheep表中的断奶信息 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + public int updateBasSheepWeaningInfo(ScWeanRecord scWeanRecord); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java new file mode 100644 index 0000000..a9b29f2 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IRawSpermRecordService.java @@ -0,0 +1,69 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.RawSpermRecord; + +/** + * 采精记录Service接口 + * + * @author ruoyi + * @date 2025-07-23 + */ +public interface IRawSpermRecordService +{ + /** + * 查询采精记录 + * + * @param id 采精记录主键 + * @return 采精记录 + */ + public RawSpermRecord selectRawSpermRecordById(Long id); + + /** + * 查询采精记录列表 + * + * @param rawSpermRecord 采精记录 + * @return 采精记录集合 + */ + public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord); + + /** + * 新增采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + public int insertRawSpermRecord(RawSpermRecord rawSpermRecord); + + /** + * 修改采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + public int updateRawSpermRecord(RawSpermRecord rawSpermRecord); + + /** + * 批量删除采精记录 + * + * @param ids 需要删除的采精记录主键集合 + * @return 结果 + */ + public int deleteRawSpermRecordByIds(Long[] ids); + + /** + * 删除采精记录信息 + * + * @param id 采精记录主键 + * @return 结果 + */ + public int deleteRawSpermRecordById(Long id); + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 耳号 + * @return 羊只ID + */ + public Long getSheepIdByManageTags(String manageTags); +} \ No newline at end of file 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 new file mode 100644 index 0000000..4580492 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanGenerateService.java @@ -0,0 +1,101 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; + +/** + * 配种计划生成Service接口 + * + * @author ruoyi + * @date 2025-07-16 + */ +public interface IScBreedPlanGenerateService +{ + /** + * 查询配种计划生成 + * + * @param id 配种计划生成主键 + * @return 配种计划生成 + */ + public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id); + + /** + * 查询配种计划生成列表 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 配种计划生成集合 + */ + public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 筛选符合条件的母羊 + * + * @return 符合条件的母羊列表 + */ + public List> selectEligibleEwe(); + + /** + * 筛选符合条件的公羊 + * + * @return 符合条件的公羊列表 + */ + public List> selectEligibleRam(); + + /** + * 自动生成配种计划 + * + * @param eweIds 母羊ID列表 + * @param ramIds 公羊ID列表 + * @return 生成的配种计划 + */ + public ScBreedPlanGenerate autoGenerateBreedPlan(List eweIds, List ramIds); + + /** + * 新增配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 修改配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate); + + /** + * 审批配种计划 + * + * @param id 配种计划ID + * @return 结果 + */ + public int approveBreedPlan(Long id); + + /** + * 获取配种计划详情 + * + * @param id 配种计划ID + * @return 配种计划详情 + */ + public Map getBreedPlanDetails(Long id); + + /** + * 批量删除配种计划生成 + * + * @param ids 需要删除的配种计划生成主键集合 + * @return 结果 + */ + public int deleteScBreedPlanGenerateByIds(Long[] ids); + + /** + * 删除配种计划生成信息 + * + * @param id 配种计划生成主键 + * @return 结果 + */ + public int deleteScBreedPlanGenerateById(Long id); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java new file mode 100644 index 0000000..256778e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedPlanService.java @@ -0,0 +1,62 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; + +import com.zhyc.module.produce.breed.domain.ScBreedPlan; + +/** + * 配种计划Service接口 + * + * @author ruoyi + * @date 2025-07-16 + */ +public interface IScBreedPlanService +{ + /** + * 查询配种计划 + * + * @param id 配种计划主键 + * @return 配种计划 + */ + public ScBreedPlan selectScBreedPlanById(Long id); + + /** + * 查询配种计划列表 + * + * @param scBreedPlan 配种计划 + * @return 配种计划集合 + */ + public List selectScBreedPlanList(ScBreedPlan scBreedPlan); + + /** + * 新增配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + public int insertScBreedPlan(ScBreedPlan scBreedPlan); + + /** + * 修改配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + public int updateScBreedPlan(ScBreedPlan scBreedPlan); + + /** + * 批量删除配种计划 + * + * @param ids 需要删除的配种计划主键集合 + * @return 结果 + */ + public int deleteScBreedPlanByIds(Long[] ids); + + /** + * 删除配种计划信息 + * + * @param id 配种计划主键 + * @return 结果 + */ + public int deleteScBreedPlanById(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 new file mode 100644 index 0000000..7f71704 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScBreedRecordService.java @@ -0,0 +1,94 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScBreedRecord; + +/** + * 配种记录Service接口 + * + * @author ruoyi + * @date 2025-07-23 + */ +public interface IScBreedRecordService +{ + /** + * 查询配种记录 + * + * @param id 配种记录主键 + * @return 配种记录 + */ + public ScBreedRecord selectScBreedRecordById(Long id); + + /** + * 查询配种记录列表 + * + * @param scBreedRecord 配种记录 + * @return 配种记录集合 + */ + public List selectScBreedRecordList(ScBreedRecord scBreedRecord); + + /** + * 新增配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + public int insertScBreedRecord(ScBreedRecord scBreedRecord); + + /** + * 修改配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + public int updateScBreedRecord(ScBreedRecord scBreedRecord); + + /** + * 批量删除配种记录 + * + * @param ids 需要删除的配种记录主键集合 + * @return 结果 + */ + public int deleteScBreedRecordByIds(Long[] ids); + + /** + * 删除配种记录信息 + * + * @param id 配种记录主键 + * @return 结果 + */ + public int deleteScBreedRecordById(Long id); + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + public Long getSheepIdByTags(String manageTags); + + /** + * 根据公羊耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + public Long getRamIdByTags(String manageTags); + + /** + * 根据耳号查询羊只详细信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map getSheepInfoByTags(String manageTags); + + /** + * 根据母羊耳号获取配种计划信息 + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + public Map getBreedPlanByEweTags(String manageTags); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java new file mode 100644 index 0000000..ad90b57 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScDryMilkService.java @@ -0,0 +1,63 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScDryMilk; + +/** + * 干奶记录Service接口 + * + * @author ruoyi + * @date 2025-07-15 + */ +public interface IScDryMilkService +{ + /** + * 查询干奶记录 + * + * @param id 干奶记录主键 + * @return 干奶记录 + */ + public ScDryMilk selectScDryMilkById(Long id); + + /** + * 查询干奶记录列表 + * + * @param scDryMilk 干奶记录 + * @return 干奶记录集合 + */ + public List selectScDryMilkList(ScDryMilk scDryMilk); + + Long selectSheepIdByManageTags(String manageTags); + + /** + * 新增干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + public int insertScDryMilk(ScDryMilk scDryMilk); + + /** + * 修改干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + public int updateScDryMilk(ScDryMilk scDryMilk); + + /** + * 批量删除干奶记录 + * + * @param ids 需要删除的干奶记录主键集合 + * @return 结果 + */ + public int deleteScDryMilkByIds(Long[] ids); + + /** + * 删除干奶记录信息 + * + * @param id 干奶记录主键 + * @return 结果 + */ + public int deleteScDryMilkById(Long id); +} 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 new file mode 100644 index 0000000..83a6497 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScLambingRecordService.java @@ -0,0 +1,46 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import com.zhyc.module.produce.breed.domain.ScLambingRecord; +import com.zhyc.module.produce.breed.domain.ScLambDetail; + +/** + * 产羔记录Service接口 + */ +public interface IScLambingRecordService { + + /** + * 查询产羔记录列表 + */ + public List selectScLambingRecordList(ScLambingRecord scLambingRecord); + + /** + * 新增产羔记录(包含羔羊详情) + */ + public int insertScLambingRecord(ScLambingRecord scLambingRecord); + + /** + * 修改产羔记录 + */ + public int updateScLambingRecord(ScLambingRecord scLambingRecord); + + /** + * 批量删除产羔记录 + */ + public int deleteScLambingRecordByIds(Long[] ids); + + /** + * 删除产羔记录信息 + */ + public int deleteScLambingRecordById(Long id); + + /** + * 查询产羔记录 + */ + public ScLambingRecord selectScLambingRecordById(Long id); + + /** + * 查询羔羊详情 + */ + public List selectLambDetailByLambingRecordId(Long lambingRecordId); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java new file mode 100644 index 0000000..bc0d2e4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScPregnancyRecordService.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; + +/** + * 孕检记录Service接口 + * + * @author zhyc + * @date 2025-01-21 + */ +public interface IScPregnancyRecordService +{ + /** + * 查询孕检记录 + * + * @param id 孕检记录主键 + * @return 孕检记录 + */ + public ScPregnancyRecord selectScPregnancyRecordById(Long id); + + /** + * 查询孕检记录列表 + * + * @param scPregnancyRecord 孕检记录 + * @return 孕检记录集合 + */ + public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord); + + /** + * 新增孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); + + /** + * 修改孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord); + + /** + * 批量删除孕检记录 + * + * @param ids 需要删除的孕检记录主键集合 + * @return 结果 + */ + public int deleteScPregnancyRecordByIds(Long[] ids); + + /** + * 删除孕检记录信息 + * + * @param id 孕检记录主键 + * @return 结果 + */ + public int deleteScPregnancyRecordById(Long id); + + /** + * 根据耳号查询羊只信息 + * + * @param manageTags 耳号 + * @return 羊只信息 + */ + public Map getSheepByManageTags(String manageTags); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java new file mode 100644 index 0000000..e1100d5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScSheepDeathService.java @@ -0,0 +1,70 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; +import java.util.Map; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; + +/** + * 羊只死淘记录Service接口 + * + * @author ruoyi + * @date 2025-08-06 + */ +public interface IScSheepDeathService +{ + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + public ScSheepDeath selectScSheepDeathById(Long id); + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录集合 + */ + public List selectScSheepDeathList(ScSheepDeath scSheepDeath); + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + public Map selectSheepFileByManageTags(String manageTags); + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int insertScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + public int updateScSheepDeath(ScSheepDeath scSheepDeath); + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的羊只死淘记录主键集合 + * @return 结果 + */ + public int deleteScSheepDeathByIds(Long[] ids); + + /** + * 删除羊只死淘记录信息 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + public int deleteScSheepDeathById(Long id); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java new file mode 100644 index 0000000..9f49b44 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/IScWeanRecordService.java @@ -0,0 +1,69 @@ +package com.zhyc.module.produce.breed.service; + +import java.util.List; + +import com.zhyc.module.produce.breed.domain.ScWeanRecord; + +/** + * 断奶记录Service接口 + * + * @author ruoyi + * @date 2025-07-13 + */ +public interface IScWeanRecordService { + /** + * 查询断奶记录 + * + * @param id 断奶记录主键 + * @return 断奶记录 + */ + public ScWeanRecord selectScWeanRecordById(Long id); + + /** + * 查询断奶记录列表 + * + * @param scWeanRecord 断奶记录 + * @return 断奶记录集合 + */ + public List selectScWeanRecordList(ScWeanRecord scWeanRecord); + + /** + * 新增断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + public int insertScWeanRecord(ScWeanRecord scWeanRecord); + + /** + * 修改断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + public int updateScWeanRecord(ScWeanRecord scWeanRecord); + + /** + * 批量删除断奶记录 + * + * @param ids 需要删除的断奶记录主键集合 + * @return 结果 + */ + public int deleteScWeanRecordByIds(Long[] ids); + + /** + * 删除断奶记录信息 + * + * @param id 断奶记录主键 + * @return 结果 + */ + public int deleteScWeanRecordById(Long id); + + /** + * 根据耳号查询羊只ID + * + * @param earNumber 耳号 + * @return 羊只ID + */ + public Long selectSheepIdByEarNumber(String earNumber); +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java new file mode 100644 index 0000000..f925b77 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/RawSpermRecordServiceImpl.java @@ -0,0 +1,120 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.mapper.RawSpermRecordMapper; +import com.zhyc.module.produce.breed.domain.RawSpermRecord; +import com.zhyc.module.produce.breed.service.IRawSpermRecordService; + +/** + * 采精记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-23 + */ +@Service +public class RawSpermRecordServiceImpl implements IRawSpermRecordService +{ + @Autowired + private RawSpermRecordMapper rawSpermRecordMapper; + + /** + * 查询采精记录 + * + * @param id 采精记录主键 + * @return 采精记录 + */ + @Override + public RawSpermRecord selectRawSpermRecordById(Long id) + { + return rawSpermRecordMapper.selectRawSpermRecordById(id); + } + + /** + * 查询采精记录列表 + * + * @param rawSpermRecord 采精记录 + * @return 采精记录 + */ + @Override + public List selectRawSpermRecordList(RawSpermRecord rawSpermRecord) + { + return rawSpermRecordMapper.selectRawSpermRecordList(rawSpermRecord); + } + + /** + * 新增采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + @Override + public int insertRawSpermRecord(RawSpermRecord rawSpermRecord) + { + // 如果传入的是耳号,需要先根据耳号查询羊只ID + if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { + Long sheepId = getSheepIdByManageTags(rawSpermRecord.getManageTags()); + rawSpermRecord.setSheepId(sheepId); + } + + rawSpermRecord.setCreateTime(DateUtils.getNowDate()); + return rawSpermRecordMapper.insertRawSpermRecord(rawSpermRecord); + } + + /** + * 修改采精记录 + * + * @param rawSpermRecord 采精记录 + * @return 结果 + */ + @Override + public int updateRawSpermRecord(RawSpermRecord rawSpermRecord) + { + // 如果传入的是耳号,需要先根据耳号查询羊只ID + if (StringUtils.isNotEmpty(rawSpermRecord.getManageTags()) && rawSpermRecord.getSheepId() == null) { + Long sheepId = getSheepIdByManageTags(rawSpermRecord.getManageTags()); + rawSpermRecord.setSheepId(sheepId); + } + + return rawSpermRecordMapper.updateRawSpermRecord(rawSpermRecord); + } + + /** + * 批量删除采精记录 + * + * @param ids 需要删除的采精记录主键 + * @return 结果 + */ + @Override + public int deleteRawSpermRecordByIds(Long[] ids) + { + return rawSpermRecordMapper.deleteRawSpermRecordByIds(ids); + } + + /** + * 删除采精记录信息 + * + * @param id 采精记录主键 + * @return 结果 + */ + @Override + public int deleteRawSpermRecordById(Long id) + { + return rawSpermRecordMapper.deleteRawSpermRecordById(id); + } + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 耳号 + * @return 羊只ID + */ + @Override + public Long getSheepIdByManageTags(String manageTags) + { + return rawSpermRecordMapper.selectSheepIdByManageTags(manageTags); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..3e88f7c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanGenerateServiceImpl.java @@ -0,0 +1,240 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import java.util.Map; +import java.util.HashMap; +import java.util.Date; +import java.text.SimpleDateFormat; + +import com.zhyc.module.produce.breed.domain.ScBreedPlan; +import com.zhyc.module.produce.breed.domain.ScBreedPlanGenerate; +import com.zhyc.module.produce.breed.mapper.ScBreedPlanGenerateMapper; +import com.zhyc.module.produce.breed.mapper.ScBreedPlanMapper; +import com.zhyc.module.produce.breed.service.IScBreedPlanGenerateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.zhyc.common.utils.SecurityUtils; + +/** + * 配种计划生成Service业务层处理 + * + * @author ruoyi + * @date 2025-07-16 + */ +@Service +public class ScBreedPlanGenerateServiceImpl implements IScBreedPlanGenerateService +{ + @Autowired + private ScBreedPlanGenerateMapper scBreedPlanGenerateMapper; + + @Autowired + private ScBreedPlanMapper scBreedPlanMapper; + + /** + * 查询配种计划生成 + * + * @param id 配种计划生成主键 + * @return 配种计划生成 + */ + @Override + public ScBreedPlanGenerate selectScBreedPlanGenerateById(Long id) + { + return scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); + } + + /** + * 查询配种计划生成列表 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 配种计划生成 + */ + @Override + public List selectScBreedPlanGenerateList(ScBreedPlanGenerate scBreedPlanGenerate) + { + return scBreedPlanGenerateMapper.selectScBreedPlanGenerateList(scBreedPlanGenerate); + } + + /** + * 筛选符合条件的母羊 + * + * @return 符合条件的母羊列表 + */ + @Override + public List> selectEligibleEwe() + { + return scBreedPlanGenerateMapper.selectEligibleEwe(); + } + + /** + * 筛选符合条件的公羊 + * + * @return 符合条件的公羊列表 + */ + @Override + public List> selectEligibleRam() + { + return scBreedPlanGenerateMapper.selectEligibleRam(); + } + + /** + * 自动生成配种计划 + * + * @param eweIds 母羊ID列表 + * @param ramIds 公羊ID列表 + * @return 生成的配种计划 + */ + @Override + @Transactional + public ScBreedPlanGenerate autoGenerateBreedPlan(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); + planGenerate.setPlanDate(new Date()); + planGenerate.setTotalEweCount(eweIds.size()); + planGenerate.setTotalRamCount(ramIds.size()); + + // 计算配种比例 + double ratio = (double) eweIds.size() / ramIds.size(); + planGenerate.setBreedRatio(String.format("%.1f:1", ratio)); + planGenerate.setStatus(0); // 待审批 + planGenerate.setCreateBy(SecurityUtils.getUsername()); + planGenerate.setCreateTime(new Date()); + + // 保存配种计划生成记录 + scBreedPlanGenerateMapper.insertScBreedPlanGenerate(planGenerate); + + // 生成具体的配种计划 + generateBreedPlanDetails(planGenerate.getId(), eweIds, ramIds); + + return planGenerate; + } + + /** + * 生成具体的配种计划详情 + */ + private void generateBreedPlanDetails(Long planGenerateId, List eweIds, List ramIds) + { + 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(); + breedPlan.setRamId(ramIds.get(ramIndex).toString()); + breedPlan.setEweId(eweIds.get(i).toString()); + breedPlan.setBreedType(1L); // 默认配种类型 + + // 插入临时配种计划,关联到生成记录 + scBreedPlanGenerateMapper.insertTempBreedPlan(planGenerateId, breedPlan); + + // 每个公羊配种指定数量的母羊后,切换到下一个公羊 + if ((i + 1) % ewesPerRam == 0 && ramIndex < ramIds.size() - 1) { + ramIndex++; + } + } + } + + /** + * 新增配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + @Override + public int insertScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate) + { + scBreedPlanGenerate.setCreateTime(new Date()); + return scBreedPlanGenerateMapper.insertScBreedPlanGenerate(scBreedPlanGenerate); + } + + /** + * 修改配种计划生成 + * + * @param scBreedPlanGenerate 配种计划生成 + * @return 结果 + */ + @Override + public int updateScBreedPlanGenerate(ScBreedPlanGenerate scBreedPlanGenerate) + { + scBreedPlanGenerate.setUpdateTime(new Date()); + return scBreedPlanGenerateMapper.updateScBreedPlanGenerate(scBreedPlanGenerate); + } + + /** + * 审批配种计划 + * + * @param id 配种计划ID + * @return 结果 + */ + @Override + @Transactional + public int approveBreedPlan(Long id) + { + // 更新审批状态 + ScBreedPlanGenerate planGenerate = new ScBreedPlanGenerate(); + planGenerate.setId(id); + planGenerate.setStatus(1); // 已审批 + planGenerate.setApprover(SecurityUtils.getUsername()); + planGenerate.setApproveTime(new Date()); + planGenerate.setUpdateTime(new Date()); + + int result = scBreedPlanGenerateMapper.updateScBreedPlanGenerate(planGenerate); + + // 将临时配种计划转为正式配种计划 + if (result > 0) { + scBreedPlanGenerateMapper.transferTempToFormal(id); + } + + return result; + } + + /** + * 获取配种计划详情 + * + * @param id 配种计划ID + * @return 配种计划详情 + */ + @Override + public Map getBreedPlanDetails(Long id) + { + Map result = new HashMap<>(); + + // 获取配种计划基本信息 + ScBreedPlanGenerate planGenerate = scBreedPlanGenerateMapper.selectScBreedPlanGenerateById(id); + result.put("planInfo", planGenerate); + + // 获取配种计划详情列表 + List> planDetails = scBreedPlanGenerateMapper.selectBreedPlanDetails(id); + result.put("planDetails", planDetails); + + return result; + } + + /** + * 批量删除配种计划生成 + * + * @param ids 需要删除的配种计划生成主键 + * @return 结果 + */ + @Override + public int deleteScBreedPlanGenerateByIds(Long[] ids) + { + return scBreedPlanGenerateMapper.deleteScBreedPlanGenerateByIds(ids); + } + + /** + * 删除配种计划生成信息 + * + * @param id 配种计划生成主键 + * @return 结果 + */ + @Override + public int deleteScBreedPlanGenerateById(Long 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/ScBreedPlanServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java new file mode 100644 index 0000000..f6ae9b0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedPlanServiceImpl.java @@ -0,0 +1,94 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; + +import com.zhyc.module.produce.breed.domain.ScBreedPlan; +import com.zhyc.module.produce.breed.mapper.ScBreedPlanMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.service.IScBreedPlanService; + +/** + * 配种计划Service业务层处理 + * + * @author ruoyi + * @date 2025-07-16 + */ +@Service +public class ScBreedPlanServiceImpl implements IScBreedPlanService +{ + @Autowired + private ScBreedPlanMapper scBreedPlanMapper; + + /** + * 查询配种计划 + * + * @param id 配种计划主键 + * @return 配种计划 + */ + @Override + public ScBreedPlan selectScBreedPlanById(Long id) + { + return scBreedPlanMapper.selectScBreedPlanById(id); + } + + /** + * 查询配种计划列表 + * + * @param scBreedPlan 配种计划 + * @return 配种计划 + */ + @Override + public List selectScBreedPlanList(ScBreedPlan scBreedPlan) + { + return scBreedPlanMapper.selectScBreedPlanList(scBreedPlan); + } + + /** + * 新增配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + @Override + public int insertScBreedPlan(ScBreedPlan scBreedPlan) + { + return scBreedPlanMapper.insertScBreedPlan(scBreedPlan); + } + + /** + * 修改配种计划 + * + * @param scBreedPlan 配种计划 + * @return 结果 + */ + @Override + public int updateScBreedPlan(ScBreedPlan scBreedPlan) + { + return scBreedPlanMapper.updateScBreedPlan(scBreedPlan); + } + + /** + * 批量删除配种计划 + * + * @param ids 需要删除的配种计划主键 + * @return 结果 + */ + @Override + public int deleteScBreedPlanByIds(Long[] ids) + { + return scBreedPlanMapper.deleteScBreedPlanByIds(ids); + } + + /** + * 删除配种计划信息 + * + * @param id 配种计划主键 + * @return 结果 + */ + @Override + public int deleteScBreedPlanById(Long id) + { + return scBreedPlanMapper.deleteScBreedPlanById(id); + } +} 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 new file mode 100644 index 0000000..61ab012 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScBreedRecordServiceImpl.java @@ -0,0 +1,164 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import java.util.Map; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.mapper.ScBreedRecordMapper; +import com.zhyc.module.produce.breed.domain.ScBreedRecord; +import com.zhyc.module.produce.breed.service.IScBreedRecordService; + +/** + * 配种记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-23 + */ +@Service +public class ScBreedRecordServiceImpl implements IScBreedRecordService +{ + @Autowired + private ScBreedRecordMapper scBreedRecordMapper; + + /** + * 查询配种记录 + * + * @param id 配种记录主键 + * @return 配种记录 + */ + @Override + public ScBreedRecord selectScBreedRecordById(Long id) + { + return scBreedRecordMapper.selectScBreedRecordById(id); + } + + /** + * 查询配种记录列表 + * + * @param scBreedRecord 配种记录 + * @return 配种记录 + */ + @Override + public List selectScBreedRecordList(ScBreedRecord scBreedRecord) + { + // 如果查询条件中有耳号,需要先转换为ID + if (StringUtils.isNotEmpty(scBreedRecord.getEweManageTags())) + { + Long eweId = scBreedRecordMapper.getSheepIdByManageTags(scBreedRecord.getEweManageTags()); + if (eweId != null) + { + scBreedRecord.setEweId(eweId.toString()); + } + } + + if (StringUtils.isNotEmpty(scBreedRecord.getRamManageTags())) + { + Long ramId = scBreedRecordMapper.getRamIdByManageTags(scBreedRecord.getRamManageTags()); + if (ramId != null) + { + scBreedRecord.setRamId(ramId.toString()); + } + } + + return scBreedRecordMapper.selectScBreedRecordList(scBreedRecord); + } + + /** + * 新增配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + @Override + public int insertScBreedRecord(ScBreedRecord scBreedRecord) + { + scBreedRecord.setCreateTime(DateUtils.getNowDate()); + return scBreedRecordMapper.insertScBreedRecord(scBreedRecord); + } + + /** + * 修改配种记录 + * + * @param scBreedRecord 配种记录 + * @return 结果 + */ + @Override + public int updateScBreedRecord(ScBreedRecord scBreedRecord) + { + return scBreedRecordMapper.updateScBreedRecord(scBreedRecord); + } + + /** + * 批量删除配种记录 + * + * @param ids 需要删除的配种记录主键 + * @return 结果 + */ + @Override + public int deleteScBreedRecordByIds(Long[] ids) + { + return scBreedRecordMapper.deleteScBreedRecordByIds(ids); + } + + /** + * 删除配种记录信息 + * + * @param id 配种记录主键 + * @return 结果 + */ + @Override + public int deleteScBreedRecordById(Long id) + { + return scBreedRecordMapper.deleteScBreedRecordById(id); + } + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + @Override + public Long getSheepIdByTags(String manageTags) + { + return scBreedRecordMapper.getSheepIdByManageTags(manageTags); + } + + /** + * 根据公羊耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + @Override + public Long getRamIdByTags(String manageTags) + { + return scBreedRecordMapper.getRamIdByManageTags(manageTags); + } + + /** + * 根据耳号查询羊只详细信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + @Override + public Map getSheepInfoByTags(String manageTags) + { + return scBreedRecordMapper.getSheepInfoByTags(manageTags); + } + + /** + * 根据母羊耳号获取配种计划信息 + * + * @param manageTags 母羊管理耳号 + * @return 配种计划信息 + */ + @Override + public Map getBreedPlanByEweTags(String manageTags) + { + return scBreedRecordMapper.getBreedPlanByEweTags(manageTags); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java new file mode 100644 index 0000000..dd87f80 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScDryMilkServiceImpl.java @@ -0,0 +1,127 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.mapper.ScDryMilkMapper; +import com.zhyc.module.produce.breed.domain.ScDryMilk; +import com.zhyc.module.produce.breed.service.IScDryMilkService; +import com.zhyc.common.utils.StringUtils; +import com.zhyc.common.exception.ServiceException; + +/** + * 干奶记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-15 + */ +@Service +public class ScDryMilkServiceImpl implements IScDryMilkService +{ + @Autowired + private ScDryMilkMapper scDryMilkMapper; + + /** + * 查询干奶记录 + * + * @param id 干奶记录主键 + * @return 干奶记录 + */ + @Override + public ScDryMilk selectScDryMilkById(Long id) + { + return scDryMilkMapper.selectScDryMilkById(id); + } + + /** + * 查询干奶记录列表 + * + * @param scDryMilk 干奶记录 + * @return 干奶记录 + */ + @Override + public List selectScDryMilkList(ScDryMilk scDryMilk) + { + return scDryMilkMapper.selectScDryMilkList(scDryMilk); + } + + /** + * 根据耳号查询羊只ID + * + * @param manageTags 管理耳号 + * @return 羊只ID + */ + @Override + public Long selectSheepIdByManageTags(String manageTags) + { + return scDryMilkMapper.selectSheepIdByManageTags(manageTags); + } + + /** + * 新增干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + @Override + public int insertScDryMilk(ScDryMilk scDryMilk) + { + // 如果传入的是耳号,需要转换为羊只ID + if (StringUtils.isNotEmpty(scDryMilk.getManageTags()) && StringUtils.isEmpty(scDryMilk.getSheepId())) + { + Long sheepId = scDryMilkMapper.selectSheepIdByManageTags(scDryMilk.getManageTags()); + if (sheepId == null) + { + throw new ServiceException("未找到对应耳号的羊只信息"); + } + scDryMilk.setSheepId(String.valueOf(sheepId)); + } + return scDryMilkMapper.insertScDryMilk(scDryMilk); + } + + /** + * 修改干奶记录 + * + * @param scDryMilk 干奶记录 + * @return 结果 + */ + @Override + public int updateScDryMilk(ScDryMilk scDryMilk) + { + // 如果传入的是耳号,需要转换为羊只ID + if (StringUtils.isNotEmpty(scDryMilk.getManageTags()) && StringUtils.isEmpty(scDryMilk.getSheepId())) + { + Long sheepId = scDryMilkMapper.selectSheepIdByManageTags(scDryMilk.getManageTags()); + if (sheepId == null) + { + throw new ServiceException("未找到对应耳号的羊只信息"); + } + scDryMilk.setSheepId(String.valueOf(sheepId)); + } + return scDryMilkMapper.updateScDryMilk(scDryMilk); + } + + /** + * 批量删除干奶记录 + * + * @param ids 需要删除的干奶记录主键 + * @return 结果 + */ + @Override + public int deleteScDryMilkByIds(Long[] ids) + { + return scDryMilkMapper.deleteScDryMilkByIds(ids); + } + + /** + * 删除干奶记录信息 + * + * @param id 干奶记录主键 + * @return 结果 + */ + @Override + public int deleteScDryMilkById(Long id) + { + return scDryMilkMapper.deleteScDryMilkById(id); + } +} \ 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 new file mode 100644 index 0000000..74b6715 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScLambingRecordServiceImpl.java @@ -0,0 +1,192 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.math.BigDecimal; +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.zhyc.module.produce.breed.mapper.ScLambingRecordMapper; +import com.zhyc.module.produce.breed.mapper.ScLambDetailMapper; +import com.zhyc.module.produce.breed.domain.ScLambingRecord; +import com.zhyc.module.produce.breed.domain.ScLambDetail; +import com.zhyc.module.produce.breed.service.IScLambingRecordService; + +/** + * 产羔记录Service业务层处理 + */ +@Service +public class ScLambingRecordServiceImpl implements IScLambingRecordService { + + @Autowired + private ScLambingRecordMapper scLambingRecordMapper; + + @Autowired + private ScLambDetailMapper scLambDetailMapper; + + /** + * 查询产羔记录列表 + */ + @Override + public List selectScLambingRecordList(ScLambingRecord scLambingRecord) { + return scLambingRecordMapper.selectScLambingRecordList(scLambingRecord); + } + + /** + * 新增产羔记录(包含羔羊详情) + */ + @Override + @Transactional + public int insertScLambingRecord(ScLambingRecord scLambingRecord) { + // 1. 插入产羔记录 + int result = scLambingRecordMapper.insertScLambingRecord(scLambingRecord); + + // 2. 如果有羔羊详情,则批量插入羔羊详情 + if (scLambingRecord.getLambDetails() != null && !scLambingRecord.getLambDetails().isEmpty()) { + insertLambDetails(scLambingRecord); + } + + return result; + } + + /** + * 批量插入羔羊详情 + */ + private void insertLambDetails(ScLambingRecord scLambingRecord) { + // 遍历羔羊详情列表,逐个插入 + for (ScLambDetail lambDetail : scLambingRecord.getLambDetails()) { + // 设置产羔记录ID + lambDetail.setLambingRecordId(scLambingRecord.getId()); + + // 设置创建信息 + lambDetail.setCreateBy(scLambingRecord.getCreateBy()); + lambDetail.setCreateTime(scLambingRecord.getCreateTime()); + + // 数据验证和转换 + validateAndConvertLambDetail(lambDetail); + + // 插入羔羊详情 + scLambDetailMapper.insertScLambDetail(lambDetail); + scLambDetailMapper.insertBasSheep(lambDetail); + } + } + + + + /** + * 验证和转换羔羊详情 + */ + /** + * 验证和转换羔羊详情 + */ + private void validateAndConvertLambDetail(ScLambDetail lambDetail) { + // 验证必填字段 + if (lambDetail.getLambEarNumber() == null || lambDetail.getLambEarNumber().trim().isEmpty()) { + throw new RuntimeException("羔羊耳号不能为空"); + } + + if (lambDetail.getGender() == null) { // 改为检查Integer类型 + throw new RuntimeException("羔羊性别不能为空"); + } + + // 验证性别值的有效性(假设0=母羊,1=公羊) + if (lambDetail.getGender() < 0 || lambDetail.getGender() > 1) { + throw new RuntimeException("羔羊性别值无效,请使用0(母羊)或1(公羊)"); + } + + // 检查耳号是否已存在 + int count = scLambDetailMapper.checkLambEarNumberExists(lambDetail.getLambEarNumber().trim(), null); + if (count > 0) { + throw new RuntimeException("羔羊耳号 [" + lambDetail.getLambEarNumber() + "] 已存在,请使用其他耳号"); + } + + // 设置默认值 + if (lambDetail.getIsRetained() == null) { + lambDetail.setIsRetained(false); + } + + if (lambDetail.getBirthday() == null) { + lambDetail.setBirthday(new java.util.Date()); + } + + // 处理体重(前端可能传来的是number类型) + if (lambDetail.getBirthWeight() == null) { + lambDetail.setBirthWeight(BigDecimal.ZERO); + } + + // 验证品种ID + if (lambDetail.getLambBreed() == null) { + throw new RuntimeException("羔羊品种不能为空"); + } + + // 去除空格 + lambDetail.setLambEarNumber(lambDetail.getLambEarNumber().trim()); + if (lambDetail.getLineage() != null) { + lambDetail.setLineage(lambDetail.getLineage().trim()); + } + } + + /** + * 修改产羔记录 + */ + @Override + @Transactional + public int updateScLambingRecord(ScLambingRecord scLambingRecord) { + // 更新产羔记录 + int result = scLambingRecordMapper.updateScLambingRecord(scLambingRecord); + + // 如果包含羔羊详情,先删除原有的,再插入新的 + if (scLambingRecord.getLambDetails() != null) { + // 删除原有羔羊详情 + scLambDetailMapper.deleteScLambDetailByLambingRecordId(scLambingRecord.getId()); + + // 插入新的羔羊详情 + if (!scLambingRecord.getLambDetails().isEmpty()) { + insertLambDetails(scLambingRecord); + } + } + + return result; + } + + /** + * 批量删除产羔记录 + */ + @Override + @Transactional + public int deleteScLambingRecordByIds(Long[] ids) { + // 先删除关联的羔羊详情 + for (Long id : ids) { + scLambDetailMapper.deleteScLambDetailByLambingRecordId(id); + } + // 再删除产羔记录 + return scLambingRecordMapper.deleteScLambingRecordByIds(ids); + } + + /** + * 删除产羔记录信息 + */ + @Override + @Transactional + public int deleteScLambingRecordById(Long id) { + // 先删除关联的羔羊详情 + scLambDetailMapper.deleteScLambDetailByLambingRecordId(id); + // 再删除产羔记录 + return scLambingRecordMapper.deleteScLambingRecordById(id); + } + + /** + * 查询产羔记录 + */ + @Override + public ScLambingRecord selectScLambingRecordById(Long id) { + return scLambingRecordMapper.selectScLambingRecordById(id); + } + + /** + * 查询羔羊详情 + */ + @Override + public List selectLambDetailByLambingRecordId(Long lambingRecordId) { + return scLambDetailMapper.selectScLambDetailByLambingRecordId(lambingRecordId); + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..dde2c3d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScPregnancyRecordServiceImpl.java @@ -0,0 +1,179 @@ +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.zhyc.module.produce.breed.mapper.ScPregnancyRecordMapper; +import com.zhyc.module.produce.breed.domain.ScPregnancyRecord; +import com.zhyc.module.produce.breed.service.IScPregnancyRecordService; + +/** + * 孕检记录Service业务层处理 + * + * @author zhyc + * @date 2025-01-21 + */ +@Service +public class ScPregnancyRecordServiceImpl implements IScPregnancyRecordService +{ + @Autowired + private ScPregnancyRecordMapper scPregnancyRecordMapper; + + /** + * 查询孕检记录 + * + * @param id 孕检记录主键 + * @return 孕检记录 + */ + @Override + public ScPregnancyRecord selectScPregnancyRecordById(Long id) + { + return scPregnancyRecordMapper.selectScPregnancyRecordById(id); + } + + /** + * 查询孕检记录列表 + * + * @param scPregnancyRecord 孕检记录 + * @return 孕检记录 + */ + @Override + public List selectScPregnancyRecordList(ScPregnancyRecord scPregnancyRecord) + { + return scPregnancyRecordMapper.selectScPregnancyRecordList(scPregnancyRecord); + } + + /** + * 新增孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + @Override + @Transactional + public int insertScPregnancyRecord(ScPregnancyRecord scPregnancyRecord) + { + scPregnancyRecord.setCreateTime(DateUtils.getNowDate()); + scPregnancyRecord.setIsDelete(0); + + // 根据耳号获取羊只ID + if (scPregnancyRecord.getManageTags() != null) { + Map sheepInfo = scPregnancyRecordMapper.selectSheepByManageTags(scPregnancyRecord.getManageTags()); + if (sheepInfo != null && sheepInfo.get("id") != null) { + scPregnancyRecord.setSheepId(Long.valueOf(sheepInfo.get("id").toString())); + } + } + + int result = scPregnancyRecordMapper.insertScPregnancyRecord(scPregnancyRecord); + + // 如果孕检结果为怀孕,更新羊只基础表相关字段 + if ("怀孕".equals(scPregnancyRecord.getResult()) && scPregnancyRecord.getSheepId() != null) { + updateSheepPregnancyStatus(scPregnancyRecord); + } + + return result; + } + + /** + * 修改孕检记录 + * + * @param scPregnancyRecord 孕检记录 + * @return 结果 + */ + @Override + @Transactional + public int updateScPregnancyRecord(ScPregnancyRecord scPregnancyRecord) + { + scPregnancyRecord.setUpdateTime(DateUtils.getNowDate()); + + // 根据耳号获取羊只ID + if (scPregnancyRecord.getManageTags() != null) { + Map sheepInfo = scPregnancyRecordMapper.selectSheepByManageTags(scPregnancyRecord.getManageTags()); + if (sheepInfo != null && sheepInfo.get("id") != null) { + scPregnancyRecord.setSheepId(Long.valueOf(sheepInfo.get("id").toString())); + } + } + + int result = scPregnancyRecordMapper.updateScPregnancyRecord(scPregnancyRecord); + + // 如果孕检结果为怀孕,更新羊只基础表相关字段 + if ("怀孕".equals(scPregnancyRecord.getResult()) && scPregnancyRecord.getSheepId() != null) { + updateSheepPregnancyStatus(scPregnancyRecord); + } + + return result; + } + + /** + * 批量删除孕检记录 + * + * @param ids 需要删除的孕检记录主键 + * @return 结果 + */ + @Override + public int deleteScPregnancyRecordByIds(Long[] ids) + { + return scPregnancyRecordMapper.deleteScPregnancyRecordByIds(ids); + } + + /** + * 删除孕检记录信息 + * + * @param id 孕检记录主键 + * @return 结果 + */ + @Override + public int deleteScPregnancyRecordById(Long id) + { + return scPregnancyRecordMapper.deleteScPregnancyRecordById(id); + } + + /** + * 根据耳号查询羊只信息 + * + * @param manageTags 耳号 + * @return 羊只信息 + */ + @Override + public Map getSheepByManageTags(String manageTags) + { + return scPregnancyRecordMapper.selectSheepByManageTags(manageTags); + } + + /** + * 更新羊只怀孕状态 + * + * @param scPregnancyRecord 孕检记录 + */ + private void updateSheepPregnancyStatus(ScPregnancyRecord scPregnancyRecord) { + Map params = new HashMap<>(); + params.put("sheepId", scPregnancyRecord.getSheepId()); + params.put("pregDate", scPregnancyRecord.getDatetime()); + + // 设置繁育状态为怀孕状态(假设怀孕状态ID为2) + params.put("breedStatusId", 2); + + // 计算预产日期(羊的妊娠期大约150天) + if (scPregnancyRecord.getDatetime() != null) { + Calendar cal = Calendar.getInstance(); + cal.setTime(scPregnancyRecord.getDatetime()); + cal.add(Calendar.DAY_OF_YEAR, 150); + params.put("expectedDate", cal.getTime()); + } + + // 计算怀孕天数 + if (scPregnancyRecord.getDatetime() != null) { + long days = (System.currentTimeMillis() - scPregnancyRecord.getDatetime().getTime()) / (1000 * 60 * 60 * 24); + params.put("gestationDay", (int) days); + } + + scPregnancyRecordMapper.updateSheepPregnancyInfo(params); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java new file mode 100644 index 0000000..12e7afd --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScSheepDeathServiceImpl.java @@ -0,0 +1,166 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import java.util.Map; +import com.zhyc.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.breed.mapper.ScSheepDeathMapper; +import com.zhyc.module.produce.breed.domain.ScSheepDeath; +import com.zhyc.module.produce.breed.service.IScSheepDeathService; + +/** + * 羊只死淘记录Service业务层处理 + * + * @author ruoyi + * @date 2025-08-06 + */ +@Service +public class ScSheepDeathServiceImpl implements IScSheepDeathService +{ + @Autowired + private ScSheepDeathMapper scSheepDeathMapper; + + /** + * 查询羊只死淘记录 + * + * @param id 羊只死淘记录主键 + * @return 羊只死淘记录 + */ + @Override + public ScSheepDeath selectScSheepDeathById(Long id) + { + ScSheepDeath scSheepDeath = scSheepDeathMapper.selectScSheepDeathById(id); + // 查询时也需要填充显示字段 + if (scSheepDeath != null && scSheepDeath.getManageTags() != null) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); + scSheepDeath.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); + scSheepDeath.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); + scSheepDeath.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); + scSheepDeath.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); + scSheepDeath.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); + scSheepDeath.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); + scSheepDeath.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); + scSheepDeath.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); + scSheepDeath.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); + } + } + return scSheepDeath; + } + + /** + * 查询羊只死淘记录列表 + * + * @param scSheepDeath 羊只死淘记录 + * @return 羊只死淘记录 + */ + @Override + public List selectScSheepDeathList(ScSheepDeath scSheepDeath) + { + List list = scSheepDeathMapper.selectScSheepDeathList(scSheepDeath); + // 为列表中的每条记录填充显示字段 + for (ScSheepDeath death : list) { + if (death.getManageTags() != null) { + Map sheepInfo = selectSheepFileByManageTags(death.getManageTags()); + if (sheepInfo != null) { + death.setVariety(sheepInfo.get("variety") != null ? sheepInfo.get("variety").toString() : null); + death.setSheepType(sheepInfo.get("sheepType") != null ? sheepInfo.get("sheepType").toString() : null); + death.setGender(sheepInfo.get("gender") != null ? Integer.valueOf(sheepInfo.get("gender").toString()) : null); + death.setDayAge(sheepInfo.get("dayAge") != null ? Long.valueOf(sheepInfo.get("dayAge").toString()) : null); + death.setParity(sheepInfo.get("parity") != null ? Integer.valueOf(sheepInfo.get("parity").toString()) : null); + death.setSheepfoldName(sheepInfo.get("sheepfoldName") != null ? sheepInfo.get("sheepfoldName").toString() : null); + death.setBreedStatus(sheepInfo.get("breedStatus") != null ? sheepInfo.get("breedStatus").toString() : null); + death.setPostLambingDay(sheepInfo.get("postLambingDay") != null ? Integer.valueOf(sheepInfo.get("postLambingDay").toString()) : null); + death.setLactationDay(sheepInfo.get("lactationDay") != null ? Integer.valueOf(sheepInfo.get("lactationDay").toString()) : null); + death.setGestationDay(sheepInfo.get("gestationDay") != null ? Integer.valueOf(sheepInfo.get("gestationDay").toString()) : null); + } + } + } + return list; + } + + /** + * 根据管理耳号查询sheep_file视图信息 + * + * @param manageTags 管理耳号 + * @return 羊只信息 + */ + @Override + public Map selectSheepFileByManageTags(String manageTags) + { + return scSheepDeathMapper.selectSheepFileByManageTags(manageTags); + } + + /** + * 新增羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + @Override + public int insertScSheepDeath(ScSheepDeath scSheepDeath) + { + // 设置事件类型默认为"死亡" + if (scSheepDeath.getEventType() == null || scSheepDeath.getEventType().isEmpty()) { + scSheepDeath.setEventType("死亡"); + } + + // 如果有管理耳号,查询并设置羊只ID + if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); + } + } + + scSheepDeath.setCreateTime(DateUtils.getNowDate()); + return scSheepDeathMapper.insertScSheepDeath(scSheepDeath); + } + + /** + * 修改羊只死淘记录 + * + * @param scSheepDeath 羊只死淘记录 + * @return 结果 + */ + @Override + public int updateScSheepDeath(ScSheepDeath scSheepDeath) + { + // 如果管理耳号发生变化,重新查询并设置羊只ID + if (scSheepDeath.getManageTags() != null && !scSheepDeath.getManageTags().isEmpty()) { + Map sheepInfo = selectSheepFileByManageTags(scSheepDeath.getManageTags()); + if (sheepInfo != null) { + scSheepDeath.setSheepId(sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null); + } + } + + scSheepDeath.setUpdateTime(DateUtils.getNowDate()); + return scSheepDeathMapper.updateScSheepDeath(scSheepDeath); + } + + /** + * 批量删除羊只死淘记录 + * + * @param ids 需要删除的羊只死淘记录主键 + * @return 结果 + */ + @Override + public int deleteScSheepDeathByIds(Long[] ids) + { + return scSheepDeathMapper.deleteScSheepDeathByIds(ids); + } + + /** + * 删除羊只死淘记录信息 + * + * @param id 羊只死淘记录主键 + * @return 结果 + */ + @Override + public int deleteScSheepDeathById(Long id) + { + return scSheepDeathMapper.deleteScSheepDeathById(id); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java new file mode 100644 index 0000000..9efcaff --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/service/impl/ScWeanRecordServiceImpl.java @@ -0,0 +1,134 @@ +package com.zhyc.module.produce.breed.service.impl; + +import java.util.List; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.module.produce.breed.domain.ScWeanRecord; +import com.zhyc.module.produce.breed.mapper.ScWeanRecordMapper; +import com.zhyc.module.produce.breed.service.IScWeanRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + * 断奶记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-13 + */ +@Service +public class ScWeanRecordServiceImpl implements IScWeanRecordService { + @Autowired + private ScWeanRecordMapper scWeanRecordMapper; + + /** + * 查询断奶记录 + * + * @param id 断奶记录主键 + * @return 断奶记录 + */ + @Override + public ScWeanRecord selectScWeanRecordById(Long id) { + return scWeanRecordMapper.selectScWeanRecordById(id); + } + + /** + * 查询断奶记录列表 + * + * @param scWeanRecord 断奶记录 + * @return 断奶记录 + */ + @Override + public List selectScWeanRecordList(ScWeanRecord scWeanRecord) { + return scWeanRecordMapper.selectScWeanRecordList(scWeanRecord); + } + + /** + * 新增断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + @Override + @Transactional + public int insertScWeanRecord(ScWeanRecord scWeanRecord) { + // 如果前端传递的是耳号,需要先获取羊只ID + if (scWeanRecord.getEarNumber() != null && scWeanRecord.getSheepId() == null) { + Long sheepId = scWeanRecordMapper.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); + if (sheepId != null) { + scWeanRecord.setSheepId(sheepId); + } + } + scWeanRecord.setCreateTime(DateUtils.getNowDate()); + + // 插入断奶记录 + int result = scWeanRecordMapper.insertScWeanRecord(scWeanRecord); + + // 同步更新bas_sheep表中的断奶信息 + if (result > 0 && scWeanRecord.getEarNumber() != null) { + scWeanRecordMapper.updateBasSheepWeaningInfo(scWeanRecord); + } + + return result; + } + + /** + * 修改断奶记录 + * + * @param scWeanRecord 断奶记录 + * @return 结果 + */ + @Override + @Transactional + public int updateScWeanRecord(ScWeanRecord scWeanRecord) { + // 如果前端传递的是耳号,需要先获取羊只ID + if (scWeanRecord.getEarNumber() != null && scWeanRecord.getSheepId() == null) { + Long sheepId = scWeanRecordMapper.selectSheepIdByEarNumber(scWeanRecord.getEarNumber()); + if (sheepId != null) { + scWeanRecord.setSheepId(sheepId); + } + } + + // 更新断奶记录 + int result = scWeanRecordMapper.updateScWeanRecord(scWeanRecord); + + // 同步更新bas_sheep表中的断奶信息 + if (result > 0 && scWeanRecord.getEarNumber() != null) { + scWeanRecordMapper.updateBasSheepWeaningInfo(scWeanRecord); + } + + return result; + } + + /** + * 批量删除断奶记录 + * + * @param ids 需要删除的断奶记录主键 + * @return 结果 + */ + @Override + public int deleteScWeanRecordByIds(Long[] ids) { + return scWeanRecordMapper.deleteScWeanRecordByIds(ids); + } + + /** + * 删除断奶记录信息 + * + * @param id 断奶记录主键 + * @return 结果 + */ + @Override + public int deleteScWeanRecordById(Long id) { + return scWeanRecordMapper.deleteScWeanRecordById(id); + } + + /** + * 根据耳号查询羊只ID + * + * @param earNumber 耳号 + * @return 羊只ID + */ + @Override + public Long selectSheepIdByEarNumber(String earNumber) { + return scWeanRecordMapper.selectSheepIdByEarNumber(earNumber); + } +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java new file mode 100644 index 0000000..6d2f7f9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java @@ -0,0 +1,118 @@ +package com.zhyc.module.produce.manage_sheep.controller; + +import com.zhyc.common.annotation.Log; +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.common.enums.BusinessType; +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.module.base.domain.BasSheepVariety; +import com.zhyc.module.base.service.IBasSheepVarietyService; +import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; +import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; +import com.zhyc.module.base.domain.DaSheepfold; +import com.zhyc.module.base.service.IDaSheepfoldService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import static com.zhyc.common.core.domain.AjaxResult.success; +import static com.zhyc.common.utils.SecurityUtils.getUsername; + +@RestController +@RequestMapping("produce/manage_sheep/add_sheep") +public class ScAddSheepController { + @Autowired + private IScAddSheepService scAddSheepService; + @Autowired + private IDaSheepfoldService daSheepfoldMapper; + @Autowired + private IBasSheepVarietyService basSheepVarietyMapper; + //新增羊只验证 + @PreAuthorize("@ss.hasPermi('produce:add_sheep:add')") + @Log(title = "新增", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult addSheep(@RequestBody ScAddSheep scAddSheep) { + if (scAddSheep.getEarNumber() == null || scAddSheep.getEarNumber().isEmpty()) { + return AjaxResult.error("耳号不能为空"); + } + if (scAddSheep.getSheepfold() == null || scAddSheep.getSheepfold() == 0) { + return AjaxResult.error("羊舍不能为空"); + } + if (scAddSheep.getBornWeight() == null) { + return AjaxResult.error("出生体重不能为空"); + } + if (scAddSheep.getBirthday() == null) { + return AjaxResult.error("出生日期不能为空"); + } + if (scAddSheep.getGender() == null) { + return AjaxResult.error("性别不能为空"); + } + if (scAddSheep.getVarietyId() == null) { + return AjaxResult.error("品种不能为空"); + } + + try { + boolean success = scAddSheepService.insertScAddSheep(scAddSheep); + if (success) { + return success("新增成功"); + } else { + return AjaxResult.error("新增失败"); + } + } catch (ServiceException e) { + return AjaxResult.error(e.getMessage()); + } + } + + + //导出 + @Log(title = "羊只信息", businessType = BusinessType.EXPORT) + @PostMapping("/exportForm") + public void exportForm(HttpServletResponse response, @RequestBody ScAddSheep scAddSheep) throws IOException { + ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); + List list = new ArrayList<>(); + + // 处理羊舍名称(原有逻辑) + if (scAddSheep.getSheepfold() != null) { + DaSheepfold fold = daSheepfoldMapper.selectDaSheepfoldById(scAddSheep.getSheepfold().longValue()); + if (fold != null) { + scAddSheep.setSheepfoldNameExcel(fold.getSheepfoldName()); + } + } + + if (scAddSheep.getVarietyId() != null) { + BasSheepVariety variety = basSheepVarietyMapper.selectBasSheepVarietyById(scAddSheep.getVarietyId().longValue()); + if (variety != null) { + scAddSheep.setVarietyName(variety.getVariety()); + } + } + + list.add(scAddSheep); + util.exportExcel(response, list, "羊只信息"); + } + //导入 + @PostMapping("/importData") + @PreAuthorize("@ss.hasPermi('produce:add_sheep:import')") + @Log(title = "羊只信息", businessType = BusinessType.IMPORT) + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); + List list = util.importExcel(file.getInputStream()); + String message = scAddSheepService.importSheep(list, updateSupport, getUsername()); + return success(message); + } + + @PostMapping("/importTemplate") + @PreAuthorize("@ss.hasPermi('produce:add_sheep:import')") + public void importTemplate(HttpServletResponse response) { + ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); + util.importTemplateExcel(response, "羊只信息模板"); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java new file mode 100644 index 0000000..756e4a5 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScChangeComment; +import com.zhyc.module.produce.manage_sheep.service.IScChangeCommentService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 改备注Controller + * + * @author ruoyi + * @date 2025-07-24 + */ +@RestController +@RequestMapping("/changeComment/changeComment") +public class ScChangeCommentController extends BaseController +{ + @Autowired + private IScChangeCommentService scChangeCommentService; + + /** + * 查询改备注列表 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:list')") + @GetMapping("/list") + public TableDataInfo list(ScChangeComment scChangeComment) + { + startPage(); + List list = scChangeCommentService.selectScChangeCommentList(scChangeComment); + return getDataTable(list); + } + + /** + * 导出改备注列表 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:export')") + @Log(title = "改备注", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScChangeComment scChangeComment) + { + List list = scChangeCommentService.selectScChangeCommentList(scChangeComment); + ExcelUtil util = new ExcelUtil(ScChangeComment.class); + util.exportExcel(response, list, "改备注数据"); + } + + /** + * 获取改备注详细信息 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scChangeCommentService.selectScChangeCommentById(id)); + } + + /** + * 新增改备注 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:add')") + @Log(title = "改备注", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScChangeComment scChangeComment) + { + return toAjax(scChangeCommentService.insertScChangeComment(scChangeComment)); + } + + /** + * 修改改备注 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:edit')") + @Log(title = "改备注", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScChangeComment scChangeComment) + { + return toAjax(scChangeCommentService.updateScChangeComment(scChangeComment)); + } + + /** + * 删除改备注 + */ + @PreAuthorize("@ss.hasPermi('changeComment:changeComment:remove')") + @Log(title = "改备注", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scChangeCommentService.deleteScChangeCommentByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java new file mode 100644 index 0000000..cd6b28b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java @@ -0,0 +1,119 @@ +package com.zhyc.module.produce.manage_sheep.controller; + +import java.util.List; +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; +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.produce.manage_sheep.domain.ScChangeEar; +import com.zhyc.module.produce.manage_sheep.service.IScChangeEarService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 修改电子耳号记录Controller + * + * @author ruoyi + * @date 2025-07-24 + */ +@RestController +@RequestMapping("/changeEar/changeEar") +public class ScChangeEarController extends BaseController +{ + @Autowired + private IScChangeEarService scChangeEarService; + + @Autowired + private IBasSheepService basSheepService; + /** + * 查询修改电子耳号记录列表 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:list')") + @GetMapping("/list") + public TableDataInfo list(ScChangeEar scChangeEar) + { + startPage(); + List list = scChangeEarService.selectScChangeEarList(scChangeEar); + return getDataTable(list); + } + + /** + * 导出修改电子耳号记录列表 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:export')") + @Log(title = "修改电子耳号记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScChangeEar scChangeEar) + { + List list = scChangeEarService.selectScChangeEarList(scChangeEar); + ExcelUtil util = new ExcelUtil(ScChangeEar.class); + util.exportExcel(response, list, "修改电子耳号记录数据"); + } + + /** + * 获取修改电子耳号记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:query')") + @GetMapping("/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) { + ScChangeEar changeEar = scChangeEarService.selectScChangeEarById(id); + // 关联查询羊只表,获取旧耳号 + BasSheep sheep = basSheepService.selectBasSheepById(changeEar.getSheepId()); + if (sheep != null) { + // 根据耳号类型,设置旧耳号 + if (changeEar.getEarType() == 0) { + changeEar.setOldTag(sheep.getElectronicTags()); + } else { + changeEar.setOldTag(sheep.getManageTags()); + } + } + return success(changeEar); + } + + /** + * 新增修改电子耳号记录 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:add')") + @Log(title = "修改电子耳号记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScChangeEar scChangeEar) + { + return toAjax(scChangeEarService.insertScChangeEar(scChangeEar)); + } + + /** + * 修改修改电子耳号记录 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:edit')") + @Log(title = "修改电子耳号记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScChangeEar scChangeEar) + { + return toAjax(scChangeEarService.updateScChangeEar(scChangeEar)); + } + + /** + * 删除修改电子耳号记录 + */ + @PreAuthorize("@ss.hasPermi('changeEar:changeEar:remove')") + @Log(title = "修改电子耳号记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(scChangeEarService.deleteScChangeEarByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java new file mode 100644 index 0000000..fd5b092 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java @@ -0,0 +1,104 @@ +package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScChangeVariety; +import com.zhyc.module.produce.manage_sheep.service.IScChangeVarietyService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 改品种记录Controller + * + * @author ruoyi + * @date 2025-07-24 + */ +@RestController +@RequestMapping("/changeVariety/changeVariety") +public class ScChangeVarietyController extends BaseController +{ + @Autowired + private IScChangeVarietyService scChangeVarietyService; + + /** + * 查询改品种记录列表 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:list')") + @GetMapping("/list") + public TableDataInfo list(ScChangeVariety scChangeVariety) + { + startPage(); + List list = scChangeVarietyService.selectScChangeVarietyList(scChangeVariety); + return getDataTable(list); + } + + /** + * 导出改品种记录列表 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:export')") + @Log(title = "改品种记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScChangeVariety scChangeVariety) + { + List list = scChangeVarietyService.selectScChangeVarietyList(scChangeVariety); + ExcelUtil util = new ExcelUtil(ScChangeVariety.class); + util.exportExcel(response, list, "改品种记录数据"); + } + + /** + * 获取改品种记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return success(scChangeVarietyService.selectScChangeVarietyById(id)); + } + + /** + * 新增改品种记录 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:add')") + @Log(title = "改品种记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScChangeVariety scChangeVariety) + { + return toAjax(scChangeVarietyService.insertScChangeVariety(scChangeVariety)); + } + + /** + * 修改改品种记录 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:edit')") + @Log(title = "改品种记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScChangeVariety scChangeVariety) + { + return toAjax(scChangeVarietyService.updateScChangeVariety(scChangeVariety)); + } + + /** + * 删除改品种记录 + */ + @PreAuthorize("@ss.hasPermi('changeVariety:changeVariety:remove')") + @Log(title = "改品种记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(scChangeVarietyService.deleteScChangeVarietyByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java new file mode 100644 index 0000000..9fe5a2f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java @@ -0,0 +1,108 @@ +package com.zhyc.module.produce.manage_sheep.controller; + +import java.io.IOException; +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; +import com.zhyc.module.produce.manage_sheep.service.IScTransGroupService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 转群记录Controller + * + * @author ruoyi + * @date 2025-07-10 + */ +@RestController +@RequestMapping("produce/manage_sheep/trans_group") +public class ScTransGroupController extends BaseController { + @Autowired + private IScTransGroupService scTransGroupService; + + /** + * 查询转群记录列表 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:list')") + @GetMapping("/list") + public TableDataInfo list(ScTransGroup scTransGroup) { + startPage(); + List list = scTransGroupService.selectScTransGroupList(scTransGroup); + return getDataTable(list); + } + + /** + * 导出转群记录列表 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:export')") + @Log(title = "转群记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScTransGroup scTransGroup) throws IOException { + List list = scTransGroupService.selectScTransGroupList(scTransGroup); + ExcelUtil util = new ExcelUtil<>(ScTransGroup.class); + util.exportExcel(response, list, "转群记录数据"); + } + + /** + * 获取转群记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) { + return success(scTransGroupService.selectScTransGroupById(id)); + } + + /** + * 新增转群记录 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:add')") + @Log(title = "转群记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScTransGroup scTransGroup) { + return toAjax(scTransGroupService.insertScTransGroup(scTransGroup)); + } + + /** + * 修改转群记录 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:edit')") + @Log(title = "转群记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScTransGroup scTransGroup) { + return toAjax(scTransGroupService.updateScTransGroup(scTransGroup)); + } + + /** + * 删除转群记录 + */ + @PreAuthorize("@ss.hasPermi('produce:trans_group:remove')") + @Log(title = "转群记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) { + return toAjax(scTransGroupService.deleteScTransGroupByIds(ids)); + } + + + /** + * 审批转群记录 + */ + @PutMapping("/approve") + public AjaxResult approve(@RequestBody ScTransGroup scTransGroup) { + return toAjax(scTransGroupService.approveScTransGroup(scTransGroup)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java new file mode 100644 index 0000000..f41c044 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java @@ -0,0 +1,116 @@ +package com.zhyc.module.produce.manage_sheep.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.produce.manage_sheep.domain.ScTransitionInfo; +import com.zhyc.module.produce.manage_sheep.service.IScTransitionInfoService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 转场Controller + * + * @author ruoyi + * @date 2025-07-10 + */ +@RestController +@RequestMapping("produce/manage_sheep/transition_info") +public class ScTransitionInfoController extends BaseController { + @Autowired + private IScTransitionInfoService scTransitionInfoService; + + /** + * 查询转场列表 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:list')") + @GetMapping("/list") + public TableDataInfo list(ScTransitionInfo scTransitionInfo) { + startPage(); + List list = scTransitionInfoService.selectScTransitionInfoList(scTransitionInfo); + return getDataTable(list); + } + + /** + * 导出转场列表 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:export')") + @Log(title = "转场", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScTransitionInfo scTransitionInfo) { + List list = scTransitionInfoService.selectScTransitionInfoList(scTransitionInfo); + for (ScTransitionInfo item : list) { + item.setStatusText(scTransitionInfoService.convertStatus(item.getStatus())); + item.setTransTypeText(scTransitionInfoService.convertTransType(item.getTransType())); + } + ExcelUtil util = new ExcelUtil<>(ScTransitionInfo.class); + util.exportExcel(response, list, "转场数据"); + } + + /** + * 获取转场详细信息 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) { + ScTransitionInfo transitionInfo = scTransitionInfoService.selectScTransitionInfoById(id); + transitionInfo.setTransTypeText(scTransitionInfoService.convertTransType(transitionInfo.getTransType())); + return success(transitionInfo); + } + + /** + * 新增转场 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:add')") + @Log(title = "转场", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScTransitionInfo scTransitionInfo) { + return toAjax(scTransitionInfoService.insertScTransitionInfo(scTransitionInfo)); + } + + //批量添加 + @PostMapping("/batch") + public AjaxResult addBatch(@RequestBody List transitionInfoList) { + return toAjax(scTransitionInfoService.insertScTransitionInfoBatch(transitionInfoList)); + } + + /** + * 修改转场 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:edit')") + @Log(title = "转场", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScTransitionInfo scTransitionInfo) { + return toAjax(scTransitionInfoService.updateScTransitionInfo(scTransitionInfo)); + } + + /** + * 删除转场 + */ + @PreAuthorize("@ss.hasPermi('produce:transition_info:remove')") + @Log(title = "转场", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) { + return toAjax(scTransitionInfoService.deleteScTransitionInfoByIds(ids)); + } + + @PutMapping("/approve") + public AjaxResult approveScTransitionInfo(@RequestBody ScTransitionInfo scTransitionInfo) { + int rows = scTransitionInfoService.approveScTransitionInfo(scTransitionInfo); + return toAjax(rows); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java new file mode 100644 index 0000000..7bdf7ad --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java @@ -0,0 +1,90 @@ +package com.zhyc.module.produce.manage_sheep.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.zhyc.common.annotation.Excel; +import com.zhyc.common.core.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScAddSheep extends BaseEntity { + /** + * 羊只 + * + * @author ruoyi + * @date 2025-07-10 + */ + private static final long serialVersionUID = 1L; + @Excel(name = "主键") + private Integer id; + /** 羊只耳号 */ + @Excel(name = "耳号") + private String earNumber; + + /** 羊舍编号 */ + private Integer sheepfold; + + private String sheepfoldName; + + // 导出时生成“羊舍名称”列 ,仅 Excel 用,不映射到数据库 + @Excel(name = "羊舍名称") + private String sheepfoldNameExcel; + + /** 父号 */ + @Excel(name = "父号") + private String father; + + /** 母号 */ + @Excel(name = "母号") + private String mother; + + /** 出生体重 */ + @Excel(name = "出生体重") + private BigDecimal bornWeight; + + /** 出生日期 */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @Excel(name = "出生日期", dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 性别 1母 2公 3阉羊 */ + @Excel(name = "性别", readConverterExp = "1=母,2=公,3=阉羊") + private Integer gender; + + /** 胎次 */ + @Excel(name = "胎次") + private Integer parity; + + /** 品种id */ + private Integer varietyId; + + /** 品种名称(联表查询返回,非数据库字段) */ + @Excel(name = "品种") + private String varietyName; + + /** 入群日期 */ + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @Excel(name = "入群日期", dateFormat = "yyyy-MM-dd") + private Date joinDate; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + + + private String createBy; + private Date createTime; + + +} + 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 new file mode 100644 index 0000000..2243411 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java @@ -0,0 +1,47 @@ +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; + +/** + * 改备注对象 sc_change_comment + * + * @author ruoyi + * @date 2025-07-24 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScChangeComment extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 羊只id + */ + private String sheepId; + @Excel(name = "管理耳号") + private String manageTags; + /** + * 新备注 + */ + @Excel(name = "新备注") + private String newComment; + + /** + * 原备注 + */ + @Excel(name = "原备注") + private String oldComment; + + +} 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 new file mode 100644 index 0000000..f2ef13f --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java @@ -0,0 +1,50 @@ +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; + +/** + * 修改电子耳号记录对象 sc_change_ear + * + * @author ruoyi + * @date 2025-07-24 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScChangeEar extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Integer id; + + /** 羊只id */ + private Long sheepId; + + @Excel(name = "管理耳号") + private String manageTags; + + /** 选择更改耳号类型(0电子耳号1管理耳号) */ + @Excel(name = "耳号类型", readConverterExp = "0=电子耳号,1=管理耳号") + private Integer earType; + + /** 新耳号/电子耳号 */ + @Excel(name = "新耳号/电子耳号") + private String newTag; + + /** 旧耳号/电子耳号 */ + @Excel(name = "旧耳号/电子耳号") + private String oldTag; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + +} 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 new file mode 100644 index 0000000..5f5e8ee --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java @@ -0,0 +1,52 @@ +package com.zhyc.module.produce.manage_sheep.domain; + +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; + +/** + * 改品种记录对象 sc_change_variety + * + * @author ruoyi + * @date 2025-07-24 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScChangeVariety extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Integer id; + + /** 羊只id */ + private Integer sheepId; + @Excel(name = "耳号") + private String manageTags; + + /** 原品种 */ + @Excel(name = "原品种") + private String varietyOld; + + /** 新品种 */ + @Excel(name = "新品种") + private String varietyNew; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 创建日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date createTime; + + +} 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 new file mode 100644 index 0000000..ba62557 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java @@ -0,0 +1,107 @@ +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 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScTransGroup extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Integer id; + + /** + * 羊只id + */ + private Integer sheepId; + + @Excel(name = "耳号") + private String manageTags; + /** + * 转入羊舍 + */ + private String foldTo; + + /** + * 转出羊舍 + */ + private String foldFrom; + + /** + * 转出羊舍名称 + */ + @Excel(name = "转出羊舍") + private String foldFromName; + + /** + * 羊只类型ID + */ + private Integer sheepTypeId; + // 羊只类型名称 + private String sheepTypeName; + /** + * 转入羊舍名称 + */ + @Excel(name = "转入羊舍") + private String foldToName; + + /** + * 品种id + */ + private Long varietyId; + + /** + * 品种名称(联表查询返回,非数据库字段) + */ + @Excel(name = "品种") + private String varietyName; + + + private Integer reason; + /** + * 转群原因描述 用于导出 + */ + @Excel(name = "转群原因") + private String reasonText; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + + /** + * 状态 + */ + + private Integer status; + /** + * 状态描述 用于导出 + */ + @Excel(name = "状态") + private String statusText; + + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + +} 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 new file mode 100644 index 0000000..554bf4d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java @@ -0,0 +1,88 @@ +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; + +/** + * 转场对象 sc_transition_info + * + * @author ruoyi + * @date 2025-07-10 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScTransitionInfo extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + *主键 + */ + private Integer id; + + /** + * 羊只id + */ + private Integer sheepId; + + @Excel(name = "耳号") + private String manageTags; + /** + * 品种id + */ + private Long varietyId; + + /** + * 品种名称(联表返回,非数据库字段) + */ + @Excel(name = "品种") + private String varietyName; + + /** + * 转入牧场 + */ + @Excel(name = "转入牧场") + private String transTo; + + /** + * 当前牧场 + */ + @Excel(name = "当前牧场") + private String transFrom; + + /** + * 转场类型 + */ + private Integer transType; + + /** + * 转场类型名称 只用于导出 + */ + @Excel(name = "转场类型") + private String transTypeText; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + + /** + * 状态 + */ + private Integer status; + @Excel(name = "状态") + private String statusText; + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java new file mode 100644 index 0000000..8231d04 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScAddSheepMapper.java @@ -0,0 +1,25 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface ScAddSheepMapper { + //新增羊只 + int insert(ScAddSheep scAddSheep); + + //查询新增羊只列表 + List selectScAddSheepList(ScAddSheep scAddSheep); + + //修改羊只 + int updateScAddSheep(ScAddSheep scAddSheep); + + //删除羊只(支持批量) + int deleteScAddSheepByIds(Integer[] ids); + + //根据耳号查询羊只 + ScAddSheep selectByEarNumber(String earNumber); +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java new file mode 100644 index 0000000..cd71536 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; + +/** + * 改备注Mapper接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface ScChangeCommentMapper +{ + /** + * 查询改备注 + * + * @param id 改备注主键 + * @return 改备注 + */ + public ScChangeComment selectScChangeCommentById(Long id); + + /** + * 查询改备注列表 + * + * @param scChangeComment 改备注 + * @return 改备注集合 + */ + public List selectScChangeCommentList(ScChangeComment scChangeComment); + + /** + * 新增改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + public int insertScChangeComment(ScChangeComment scChangeComment); + + /** + * 修改改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + public int updateScChangeComment(ScChangeComment scChangeComment); + + /** + * 删除改备注 + * + * @param id 改备注主键 + * @return 结果 + */ + public int deleteScChangeCommentById(Long id); + + /** + * 批量删除改备注 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScChangeCommentByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java new file mode 100644 index 0000000..5699a46 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; + +/** + * 修改电子耳号记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface ScChangeEarMapper +{ + /** + * 查询修改电子耳号记录 + * + * @param id 修改电子耳号记录主键 + * @return 修改电子耳号记录 + */ + public ScChangeEar selectScChangeEarById(Integer id); + + /** + * 查询修改电子耳号记录列表 + * + * @param scChangeEar 修改电子耳号记录 + * @return 修改电子耳号记录集合 + */ + public List selectScChangeEarList(ScChangeEar scChangeEar); + + /** + * 新增修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + public int insertScChangeEar(ScChangeEar scChangeEar); + + /** + * 修改修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + public int updateScChangeEar(ScChangeEar scChangeEar); + + /** + * 删除修改电子耳号记录 + * + * @param id 修改电子耳号记录主键 + * @return 结果 + */ + public int deleteScChangeEarById(Integer id); + + /** + * 批量删除修改电子耳号记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScChangeEarByIds(Integer[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java new file mode 100644 index 0000000..12d9075 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; + +/** + * 改品种记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface ScChangeVarietyMapper +{ + /** + * 查询改品种记录 + * + * @param id 改品种记录主键 + * @return 改品种记录 + */ + public ScChangeVariety selectScChangeVarietyById(Integer id); + + /** + * 查询改品种记录列表 + * + * @param scChangeVariety 改品种记录 + * @return 改品种记录集合 + */ + public List selectScChangeVarietyList(ScChangeVariety scChangeVariety); + + /** + * 新增改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + public int insertScChangeVariety(ScChangeVariety scChangeVariety); + + /** + * 修改改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + public int updateScChangeVariety(ScChangeVariety scChangeVariety); + + /** + * 删除改品种记录 + * + * @param id 改品种记录主键 + * @return 结果 + */ + public int deleteScChangeVarietyById(Integer id); + + /** + * 批量删除改品种记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScChangeVarietyByIds(Integer[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java new file mode 100644 index 0000000..5746adc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java @@ -0,0 +1,63 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import java.util.List; + +import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; +import org.apache.ibatis.annotations.Mapper; + +/** + * 转群记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Mapper +public interface ScTransGroupMapper { + /** + * 查询转群记录 + * + * @param id 转群记录主键 + * @return 转群记录 + */ + public ScTransGroup selectScTransGroupById(Integer id); + + /** + * 查询转群记录列表 + * + * @param scTransGroup 转群记录 + * @return 转群记录集合 + */ + public List selectScTransGroupList(ScTransGroup scTransGroup); + + /** + * 新增转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + public int insertScTransGroup(ScTransGroup scTransGroup); + + /** + * 修改转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + public int updateScTransGroup(ScTransGroup scTransGroup); + + /** + * 删除转群记录 + * + * @param id 转群记录主键 + * @return 结果 + */ + public int deleteScTransGroupById(Integer id); + + /** + * 批量删除转群记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScTransGroupByIds(Integer[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java new file mode 100644 index 0000000..a095246 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java @@ -0,0 +1,66 @@ +package com.zhyc.module.produce.manage_sheep.mapper; + +import java.util.List; + +import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; +import org.apache.ibatis.annotations.Param; + +/** + * 转场Mapper接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +public interface ScTransitionInfoMapper +{ + /** + * 查询转场 + * + * @param id 转场主键 + * @return 转场 + */ + public ScTransitionInfo selectScTransitionInfoById(Integer id); + + /** + * 查询转场列表 + * + * @param scTransitionInfo 转场 + * @return 转场集合 + */ + public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo); + + /** + * 新增转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo); + + /** + * 修改转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo); + + /** + * 删除转场 + * + * @param id 转场主键 + * @return 结果 + */ + public int deleteScTransitionInfoById(Integer id); + + /** + * 批量删除转场 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScTransitionInfoByIds(Integer[] ids); + + //批量转场 + int insertScTransitionInfoBatch(@Param("list") List transitionInfoList); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java new file mode 100644 index 0000000..e39b7c9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScAddSheepService.java @@ -0,0 +1,27 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; + +import java.util.List; + + +public interface IScAddSheepService { + + //新增 + boolean insertScAddSheep(ScAddSheep scAddSheep); + + //查询 + List selectScAddSheepList(ScAddSheep scAddSheep); + + //修改 + boolean updateScAddSheep(ScAddSheep scAddSheep); + + //删除 + boolean deleteScAddSheepByIds(Integer[] ids); + + //导入 + String importSheep(List list, boolean updateSupport, String operName); + + +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java new file mode 100644 index 0000000..cd11f0c --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; + +/** + * 改备注Service接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface IScChangeCommentService +{ + /** + * 查询改备注 + * + * @param id 改备注主键 + * @return 改备注 + */ + public ScChangeComment selectScChangeCommentById(Long id); + + /** + * 查询改备注列表 + * + * @param scChangeComment 改备注 + * @return 改备注集合 + */ + public List selectScChangeCommentList(ScChangeComment scChangeComment); + + /** + * 新增改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + public int insertScChangeComment(ScChangeComment scChangeComment); + + /** + * 修改改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + public int updateScChangeComment(ScChangeComment scChangeComment); + + /** + * 批量删除改备注 + * + * @param ids 需要删除的改备注主键集合 + * @return 结果 + */ + public int deleteScChangeCommentByIds(Long[] ids); + + /** + * 删除改备注信息 + * + * @param id 改备注主键 + * @return 结果 + */ + public int deleteScChangeCommentById(Long id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java new file mode 100644 index 0000000..93133ea --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; + +/** + * 修改电子耳号记录Service接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface IScChangeEarService +{ + /** + * 查询修改电子耳号记录 + * + * @param id 修改电子耳号记录主键 + * @return 修改电子耳号记录 + */ + public ScChangeEar selectScChangeEarById(Integer id); + + /** + * 查询修改电子耳号记录列表 + * + * @param scChangeEar 修改电子耳号记录 + * @return 修改电子耳号记录集合 + */ + public List selectScChangeEarList(ScChangeEar scChangeEar); + + /** + * 新增修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + public int insertScChangeEar(ScChangeEar scChangeEar); + + /** + * 修改修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + public int updateScChangeEar(ScChangeEar scChangeEar); + + /** + * 批量删除修改电子耳号记录 + * + * @param ids 需要删除的修改电子耳号记录主键集合 + * @return 结果 + */ + public int deleteScChangeEarByIds(Integer[] ids); + + /** + * 删除修改电子耳号记录信息 + * + * @param id 修改电子耳号记录主键 + * @return 结果 + */ + public int deleteScChangeEarById(Integer id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java new file mode 100644 index 0000000..7de8f59 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java @@ -0,0 +1,61 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import java.util.List; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; + +/** + * 改品种记录Service接口 + * + * @author ruoyi + * @date 2025-07-24 + */ +public interface IScChangeVarietyService +{ + /** + * 查询改品种记录 + * + * @param id 改品种记录主键 + * @return 改品种记录 + */ + public ScChangeVariety selectScChangeVarietyById(Integer id); + + /** + * 查询改品种记录列表 + * + * @param scChangeVariety 改品种记录 + * @return 改品种记录集合 + */ + public List selectScChangeVarietyList(ScChangeVariety scChangeVariety); + + /** + * 新增改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + public int insertScChangeVariety(ScChangeVariety scChangeVariety); + + /** + * 修改改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + public int updateScChangeVariety(ScChangeVariety scChangeVariety); + + /** + * 批量删除改品种记录 + * + * @param ids 需要删除的改品种记录主键集合 + * @return 结果 + */ + public int deleteScChangeVarietyByIds(Integer[] ids); + + /** + * 删除改品种记录信息 + * + * @param id 改品种记录主键 + * @return 结果 + */ + public int deleteScChangeVarietyById(Integer id); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java new file mode 100644 index 0000000..6430d38 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java @@ -0,0 +1,67 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import java.util.List; + +import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; + +/** + * 转群记录Service接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +public interface IScTransGroupService { + /** + * 查询转群记录 + * + * @param id 转群记录主键 + * @return 转群记录 + */ + public ScTransGroup selectScTransGroupById(Integer id); + + /** + * 查询转群记录列表 + * + * @param scTransGroup 转群记录 + * @return 转群记录集合 + */ + public List selectScTransGroupList(ScTransGroup scTransGroup); + + /** + * 新增转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + public int insertScTransGroup(ScTransGroup scTransGroup); + + /** + * 修改转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + public int updateScTransGroup(ScTransGroup scTransGroup); + + /** + * 批量删除转群记录 + * + * @param ids 需要删除的转群记录主键集合 + * @return 结果 + */ + public int deleteScTransGroupByIds(Integer[] ids); + + /** + * 删除转群记录信息 + * + * @param id 转群记录主键 + * @return 结果 + */ + public int deleteScTransGroupById(Integer id); + + + /** + * 审批转群记录 + */ + int approveScTransGroup(ScTransGroup scTransGroup); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java new file mode 100644 index 0000000..b578491 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java @@ -0,0 +1,73 @@ +package com.zhyc.module.produce.manage_sheep.service; + +import java.util.List; + +import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; + +/** + * 转场Service接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +public interface IScTransitionInfoService { + /** + * 查询转场 + * + * @param id 转场主键 + * @return 转场 + */ + public ScTransitionInfo selectScTransitionInfoById(Integer id); + + /** + * 查询转场列表 + * + * @param scTransitionInfo 转场 + * @return 转场集合 + */ + public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo); + + /** + * 新增转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo); + + /** + * 修改转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo); + + /** + * 批量删除转场 + * + * @param ids 需要删除的转场主键集合 + * @return 结果 + */ + public int deleteScTransitionInfoByIds(Integer[] ids); + + /** + * 删除转场信息 + * + * @param id 转场主键 + * @return 结果 + */ + public int deleteScTransitionInfoById(Integer id); + + //批量转场 + public int insertScTransitionInfoBatch(List transitionInfoList); + + //状态 + public String convertStatus(Integer status); + + //转场类型 + public String convertTransType(Integer transType); + + //审批转场 + public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java new file mode 100644 index 0000000..b6ed6b4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java @@ -0,0 +1,189 @@ +package com.zhyc.module.produce.manage_sheep.service.impl; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; +import com.zhyc.module.base.mapper.BasSheepVarietyMapper; +import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; +import com.zhyc.module.produce.manage_sheep.mapper.ScAddSheepMapper; +import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.service.IBasSheepService; +import com.zhyc.module.base.domain.DaSheepfold; +import com.zhyc.module.base.mapper.DaSheepfoldMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; + +@Service +public class ScAddSheepServiceImpl implements IScAddSheepService { + + @Autowired + private ScAddSheepMapper scAddSheepMapper; + + @Autowired + private DaSheepfoldMapper daSheepfoldMapper; + + @Autowired + private IBasSheepService basSheepService; + + @Autowired + private BasSheepVarietyMapper basSheepVarietyMapper; + + //新增 + @Override + @Transactional(rollbackFor = Exception.class) + public boolean insertScAddSheep(ScAddSheep scAddSheep) { + BasSheep existSheep =basSheepService.selectBasSheepByManageTags(scAddSheep.getEarNumber().trim()); + if (existSheep != null) { + throw new ServiceException("添加失败,耳号已存在"); + } + + boolean ok = scAddSheepMapper.insert(scAddSheep) > 0; + if (!ok) return false; + + BasSheep bs = new BasSheep(); + bs.setManageTags(scAddSheep.getEarNumber()); +// bs.setElectronicTags(scAddSheep.getEarNumber()); + bs.setSheepfoldId(scAddSheep.getSheepfold().longValue()); + bs.setFatherId(null); + bs.setMotherId(null); + bs.setBirthWeight(scAddSheep.getBornWeight().longValue()); + bs.setSource(String.valueOf(2)); + bs.setBirthday(scAddSheep.getBirthday()); + bs.setGender(scAddSheep.getGender().longValue()); + if (scAddSheep.getParity() != null) { + bs.setParity(scAddSheep.getParity().longValue()); + } else { + bs.setParity(null); + } + bs.setVarietyId(scAddSheep.getVarietyId().longValue()); + bs.setSourceDate(scAddSheep.getJoinDate()); + bs.setComment(scAddSheep.getComment()); + bs.setCreateBy(scAddSheep.getCreateBy()); + bs.setCreateTime(new Date()); + + basSheepService.insertBasSheep(bs); + return true; + } + + //查询 + @Override + public List selectScAddSheepList(ScAddSheep scAddSheep) { + return scAddSheepMapper.selectScAddSheepList(scAddSheep); + } + + //修改 + @Override + public boolean updateScAddSheep(ScAddSheep scAddSheep) { + return scAddSheepMapper.updateScAddSheep(scAddSheep) > 0; + } + + //删除 + @Override + public boolean deleteScAddSheepByIds(Integer[] ids) { + return scAddSheepMapper.deleteScAddSheepByIds(ids) > 0; + } + + //导入羊只 + @Override + @Transactional(rollbackFor = Exception.class) + public String importSheep(List list, boolean updateSupport, String operName) { + if (list == null || list.isEmpty()) { + throw new ServiceException("导入数据不能为空!"); + } + + int success = 0, failure = 0; + StringBuilder failureMsg = new StringBuilder(); + + for (int i = 0; i < list.size(); i++) { + ScAddSheep sheep = list.get(i); + try { + // 处理品种名称转换为品种ID + if (StringUtils.isNotBlank(sheep.getVarietyName())) { + Long varietyId = basSheepVarietyMapper.selectIdByName(sheep.getVarietyName()); + if (varietyId == null) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:品种名称不存在【") + .append(sheep.getVarietyName()) + .append("】"); + continue; + } + sheep.setVarietyId(varietyId.intValue()); + } else { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:品种不能为空"); + continue; + } + + // 处理羊舍名称转换为羊舍ID + if (StringUtils.isNotBlank(sheep.getSheepfoldNameExcel())) { + DaSheepfold param = new DaSheepfold(); + param.setSheepfoldName(sheep.getSheepfoldNameExcel()); + List foldList = daSheepfoldMapper.selectDaSheepfoldList(param); + if (foldList == null || foldList.isEmpty()) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:羊舍名称不存在【") + .append(sheep.getSheepfoldNameExcel()) + .append("】"); + continue; + } + sheep.setSheepfold(foldList.get(0).getId().intValue()); + } + + // 校验耳号是否为空 + if (StringUtils.isBlank(sheep.getEarNumber())) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:耳号不能为空"); + continue; + } + + // 核心校验:判断羊只基本信息表中是否存在未删除的同名耳号 + BasSheep existSheep = basSheepService.selectBasSheepByManageTags(sheep.getEarNumber().trim()); + if (existSheep != null) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:耳号已存在且未删除【") + .append(sheep.getEarNumber()) + .append("】"); + continue; + } + + // 执行导入(新增或更新) + if (updateSupport && sheep.getId() != null) { + sheep.setUpdateBy(operName); + updateScAddSheep(sheep); + } else { + sheep.setCreateBy(operName); + insertScAddSheep(sheep); + } + success++; + + } catch (Exception e) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:") + .append(e.getMessage()); + } + } + + if (failure > 0) { + throw new ServiceException("导入失败!共 " + failure + " 条:" + failureMsg); + } + return "导入成功!共 " + success + " 条"; + } + + +} \ No newline at end of file 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 new file mode 100644 index 0000000..f45aa59 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java @@ -0,0 +1,120 @@ +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.manage_sheep.mapper.ScChangeCommentMapper; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; +import com.zhyc.module.produce.manage_sheep.service.IScChangeCommentService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 改备注Service业务层处理 + * + * @author ruoyi + * @date 2025-07-24 + */ +@Service +public class ScChangeCommentServiceImpl implements IScChangeCommentService +{ + @Autowired + private ScChangeCommentMapper scChangeCommentMapper; + + @Autowired + private IBasSheepService basSheepService; + /** + * 查询改备注 + * + * @param id 改备注主键 + * @return 改备注 + */ + @Override + public ScChangeComment selectScChangeCommentById(Long id) + { + return scChangeCommentMapper.selectScChangeCommentById(id); + } + + /** + * 查询改备注列表 + * + * @param scChangeComment 改备注 + * @return 改备注 + */ + @Override + public List selectScChangeCommentList(ScChangeComment scChangeComment) + { + return scChangeCommentMapper.selectScChangeCommentList(scChangeComment); + } + + /** + * 新增改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int insertScChangeComment(ScChangeComment scChangeComment) + { + scChangeComment.setCreateTime(new Date()); + scChangeComment.setCreateBy(SecurityUtils.getUsername()); + int rows = scChangeCommentMapper.insertScChangeComment(scChangeComment); + if (rows <= 0) { + return rows; + } + + String manageTags = scChangeComment.getManageTags(); + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("未找到耳号为【" + manageTags + "】的羊只,无法更新备注"); + } + + sheep.setComment(scChangeComment.getNewComment()); + basSheepService.updateBasSheep(sheep); + + return rows; + } + + /** + * 修改改备注 + * + * @param scChangeComment 改备注 + * @return 结果 + */ + @Override + public int updateScChangeComment(ScChangeComment scChangeComment) + { + return scChangeCommentMapper.updateScChangeComment(scChangeComment); + } + + /** + * 批量删除改备注 + * + * @param ids 需要删除的改备注主键 + * @return 结果 + */ + @Override + public int deleteScChangeCommentByIds(Long[] ids) + { + return scChangeCommentMapper.deleteScChangeCommentByIds(ids); + } + + /** + * 删除改备注信息 + * + * @param id 改备注主键 + * @return 结果 + */ + @Override + public int deleteScChangeCommentById(Long id) + { + return scChangeCommentMapper.deleteScChangeCommentById(id); + } + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java new file mode 100644 index 0000000..8f78e50 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java @@ -0,0 +1,156 @@ +package com.zhyc.module.produce.manage_sheep.service.impl; + +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; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.manage_sheep.mapper.ScChangeEarMapper; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; +import com.zhyc.module.produce.manage_sheep.service.IScChangeEarService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 修改电子耳号记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-24 + */ +@Service +public class ScChangeEarServiceImpl implements IScChangeEarService +{ + @Autowired + private ScChangeEarMapper scChangeEarMapper; + + @Autowired + private IBasSheepService basSheepService; + /** + * 查询修改电子耳号记录 + * + * @param id 修改电子耳号记录主键 + * @return 修改电子耳号记录 + */ + @Override + public ScChangeEar selectScChangeEarById(Integer id) { + ScChangeEar changeEar = scChangeEarMapper.selectScChangeEarById(id); + if (changeEar != null && changeEar.getSheepId() != null) { + System.out.println("当前要查询羊只信息的sheepId: " + changeEar.getSheepId()); + BasSheep sheep = basSheepService.selectBasSheepById(changeEar.getSheepId()); + System.out.println("查询到的羊只信息: " + sheep); + if (sheep != null) { + if (changeEar.getEarType() != null) { + if (changeEar.getEarType() == 0) { + changeEar.setOldTag(sheep.getElectronicTags()); + } else { + changeEar.setOldTag(sheep.getManageTags()); + } + } + changeEar.setManageTags(sheep.getManageTags()); + } else { + System.out.println("根据sheepId: " + changeEar.getSheepId() + " 未查询到对应的羊只信息"); + } + } else { + System.out.println("changeEar为null或者sheepId为null"); + } + System.out.println("设置旧耳号: " + changeEar.getOldTag()); + return changeEar; + } + + /** + * 查询修改电子耳号记录列表 + * + * @param scChangeEar 修改电子耳号记录 + * @return 修改电子耳号记录 + */ + @Override + public List selectScChangeEarList(ScChangeEar scChangeEar) { + List list = scChangeEarMapper.selectScChangeEarList(scChangeEar); + return list; + } + + /** + * 新增修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int insertScChangeEar(ScChangeEar scChangeEar) { + scChangeEar.setCreateTime(DateUtils.getNowDate()); + scChangeEar.setCreateBy(SecurityUtils.getUsername()); + + // 在新增时,确保旧耳号被正确设置为原始耳号的值 + if (scChangeEar.getSheepId() == null) { + throw new RuntimeException("未找到对应的羊只ID"); + } + + BasSheep sheep = basSheepService.selectBasSheepById(scChangeEar.getSheepId()); + if (sheep == null) { + throw new RuntimeException("未找到ID为【" + scChangeEar.getSheepId() + "】的羊只"); + } + + // 设置旧耳号为原始耳号的值 + if (scChangeEar.getEarType() == 0) { + scChangeEar.setOldTag(sheep.getElectronicTags()); + } else if (scChangeEar.getEarType() == 1) { + scChangeEar.setOldTag(sheep.getManageTags()); + } else { + throw new RuntimeException("无效的耳号类型:" + scChangeEar.getEarType()); + } + + int rows = scChangeEarMapper.insertScChangeEar(scChangeEar); + System.out.println(scChangeEar); + if (rows <= 0) { + return rows; + } + + // 更新羊只基本信息表中的管理耳号或电子耳号 + if (scChangeEar.getEarType() == 0) { + sheep.setElectronicTags(scChangeEar.getNewTag()); + } else if (scChangeEar.getEarType() == 1) { + sheep.setManageTags(scChangeEar.getNewTag()); + } + basSheepService.updateBasSheep(sheep); + + return rows; + } + + /** + * 修改修改电子耳号记录 + * + * @param scChangeEar 修改电子耳号记录 + * @return 结果 + */ + @Override + public int updateScChangeEar(ScChangeEar scChangeEar) + { + return scChangeEarMapper.updateScChangeEar(scChangeEar); + } + + /** + * 批量删除修改电子耳号记录 + * + * @param ids 需要删除的修改电子耳号记录主键 + * @return 结果 + */ + @Override + public int deleteScChangeEarByIds(Integer[] ids) + { + return scChangeEarMapper.deleteScChangeEarByIds(ids); + } + + /** + * 删除修改电子耳号记录信息 + * + * @param id 修改电子耳号记录主键 + * @return 结果 + */ + @Override + public int deleteScChangeEarById(Integer id) + { + return scChangeEarMapper.deleteScChangeEarById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java new file mode 100644 index 0000000..9551a56 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java @@ -0,0 +1,127 @@ +package com.zhyc.module.produce.manage_sheep.service.impl; + +import java.util.Date; +import java.util.List; + +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.domain.BasSheepVariety; +import com.zhyc.module.base.service.IBasSheepService; +import com.zhyc.module.base.service.IBasSheepVarietyService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.manage_sheep.mapper.ScChangeVarietyMapper; +import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; +import com.zhyc.module.produce.manage_sheep.service.IScChangeVarietyService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 改品种记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-24 + */ +@Service +public class ScChangeVarietyServiceImpl implements IScChangeVarietyService +{ + @Autowired + private ScChangeVarietyMapper scChangeVarietyMapper; + @Autowired + private IBasSheepService basSheepService; + @Autowired + private IBasSheepVarietyService varietyService; + /** + * 查询改品种记录 + * + * @param id 改品种记录主键 + * @return 改品种记录 + */ + @Override + public ScChangeVariety selectScChangeVarietyById(Integer id) + { + return scChangeVarietyMapper.selectScChangeVarietyById(id); + } + + /** + * 查询改品种记录列表 + * + * @param scChangeVariety 改品种记录 + * @return 改品种记录 + */ + @Override + public List selectScChangeVarietyList(ScChangeVariety scChangeVariety) + { + return scChangeVarietyMapper.selectScChangeVarietyList(scChangeVariety); + } + + /** + * 新增改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int insertScChangeVariety(ScChangeVariety scChangeVariety) + { + scChangeVariety.setCreateTime(new Date()); + scChangeVariety.setCreateBy(SecurityUtils.getUsername()); + int rows = scChangeVarietyMapper.insertScChangeVariety(scChangeVariety); + if (rows <= 0) { + return rows; + } + + String manageTags = scChangeVariety.getManageTags(); + BasSheep sheep = basSheepService.selectBasSheepByManageTags(manageTags); + if (sheep == null) { + throw new RuntimeException("未找到耳号为【" + manageTags + "】的羊只,无法更新品种"); + } + + String newVarietyName = scChangeVariety.getVarietyNew(); + BasSheepVariety newVariety = varietyService.selectByVarietyName(newVarietyName); + if (newVariety == null) { + throw new RuntimeException("未找到品种【" + newVarietyName + "】的信息,请检查品种名称"); + } + + sheep.setVarietyId(newVariety.getId()); + basSheepService.updateBasSheep(sheep); + + return rows; + } + + /** + * 修改改品种记录 + * + * @param scChangeVariety 改品种记录 + * @return 结果 + */ + @Override + public int updateScChangeVariety(ScChangeVariety scChangeVariety) + { + return scChangeVarietyMapper.updateScChangeVariety(scChangeVariety); + } + + /** + * 批量删除改品种记录 + * + * @param ids 需要删除的改品种记录主键 + * @return 结果 + */ + @Override + public int deleteScChangeVarietyByIds(Integer[] ids) + { + return scChangeVarietyMapper.deleteScChangeVarietyByIds(ids); + } + + /** + * 删除改品种记录信息 + * + * @param id 改品种记录主键 + * @return 结果 + */ + @Override + public int deleteScChangeVarietyById(Integer id) + { + return scChangeVarietyMapper.deleteScChangeVarietyById(id); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java new file mode 100644 index 0000000..3604f92 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java @@ -0,0 +1,180 @@ +package com.zhyc.module.produce.manage_sheep.service.impl; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.service.IBasSheepService; +import com.zhyc.module.produce.manage_sheep.mapper.ScTransGroupMapper; +import com.zhyc.module.produce.manage_sheep.service.IScTransGroupService; +import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + * 转群记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Service +public class ScTransGroupServiceImpl implements IScTransGroupService { + @Autowired + private ScTransGroupMapper scTransGroupMapper; + @Autowired + private BasSheepMapper basSheepMapper; + @Autowired + private IBasSheepService basSheepService; + /** + * 查询转群记录 + * + * @param id 转群记录主键 + * @return 转群记录 + */ + @Override + public ScTransGroup selectScTransGroupById(Integer id) { + ScTransGroup group = scTransGroupMapper.selectScTransGroupById(id); + group.setReasonText(convertReason(group.getReason())); + group.setStatusText(convertStatus(group.getStatus())); + return group; + } + + + /** + * 查询转群记录列表 + * + * @param scTransGroup 转群记录 + * @return 转群记录 + */ + @Override + public List selectScTransGroupList(ScTransGroup scTransGroup) { + List list = scTransGroupMapper.selectScTransGroupList(scTransGroup); + list.forEach(group -> { + group.setReasonText(convertReason(group.getReason())); + group.setStatusText(convertStatus(group.getStatus())); + }); + return list; + } + + /** + * 新增转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + + @Override + public int insertScTransGroup(ScTransGroup scTransGroup) { + scTransGroup.setStatus(0); + scTransGroup.setCreateTime(DateUtils.getNowDate()); + scTransGroup.setCreateBy(SecurityUtils.getUsername()); + return scTransGroupMapper.insertScTransGroup(scTransGroup); + } + + /** + * 修改转群记录 + * + * @param scTransGroup 转群记录 + * @return 结果 + */ + @Override + public int updateScTransGroup(ScTransGroup scTransGroup) { + return scTransGroupMapper.updateScTransGroup(scTransGroup); + } + + /** + * 批量删除转群记录 + * + * @param ids 需要删除的转群记录主键 + * @return 结果 + */ + @Override + public int deleteScTransGroupByIds(Integer[] ids) { + return scTransGroupMapper.deleteScTransGroupByIds(ids); + } + + /** + * 删除转群记录信息 + * + * @param id 转群记录主键 + * @return 结果 + */ + @Override + public int deleteScTransGroupById(Integer id) { + return scTransGroupMapper.deleteScTransGroupById(id); + } + + + /** + * 审批转群记录 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int approveScTransGroup(ScTransGroup scTransGroup) { + int rows = scTransGroupMapper.updateScTransGroup(scTransGroup); + + if (rows > 0 && scTransGroup.getStatus() == 1) { + updateSheepFold(scTransGroup); + } + + return rows; + } + + /** + * 更新羊只所在羊舍 + */ + private void updateSheepFold(ScTransGroup transGroup) { + Long foldTo = Long.valueOf(transGroup.getFoldTo()); + if (foldTo == null) { + throw new RuntimeException("转入羊舍不能为空"); + } + + String manageTags = transGroup.getManageTags(); + if (manageTags == null || manageTags.isEmpty()) { + throw new RuntimeException("耳号不能为空"); + } + + List tagList = Arrays.asList(manageTags.split(",")); + + for (String tag : tagList) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(tag.trim()); + if (sheep != null) { + BasSheep updateSheep = new BasSheep(); + updateSheep.setId(sheep.getId()); + updateSheep.setSheepfoldId(foldTo); + basSheepMapper.updateBasSheep(updateSheep); + } else { + throw new RuntimeException("耳号 [" + tag + "] 不存在"); + } + } + } + + /** + * 转换转群原因 + */ + private String convertReason(Integer reasonCode) { + Map reasonMap = new HashMap<>(); + reasonMap.put(0, "新产羊过抗转群"); + reasonMap.put(1, "治愈转群"); + reasonMap.put(2, "病羊过抗转群"); + return reasonMap.getOrDefault(reasonCode, "未知原因"); + } + + /** + * 转换状态 + */ + private String convertStatus(Integer statusCode) { + Map statusMap = new HashMap<>(); + statusMap.put(0, "待批准"); + statusMap.put(1, "通过"); + statusMap.put(2, "驳回"); + return statusMap.getOrDefault(statusCode, "未知状态"); + } + +} 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 new file mode 100644 index 0000000..cd8a96b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java @@ -0,0 +1,201 @@ +package com.zhyc.module.produce.manage_sheep.service.impl; + +import java.util.*; + +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +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; +import com.zhyc.module.produce.manage_sheep.domain.ScTransitionInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhyc.module.produce.manage_sheep.service.IScTransitionInfoService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 转场Service业务层处理 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Service +public class ScTransitionInfoServiceImpl implements IScTransitionInfoService +{ + @Autowired + private ScTransitionInfoMapper scTransitionInfoMapper; + @Autowired + private BasSheepMapper basSheepMapper; + @Autowired + private IDaRanchService daRanchService; + @Autowired + private IBasSheepService basSheepService; + /** + * 查询转场 + * + * @param id 转场主键 + * @return 转场 + */ + @Override + public ScTransitionInfo selectScTransitionInfoById(Integer id) + { + return scTransitionInfoMapper.selectScTransitionInfoById(id); + } + + /** + * 查询转场列表 + * + * @param scTransitionInfo 转场 + * @return 转场 + */ + @Override + public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo) + { + return scTransitionInfoMapper.selectScTransitionInfoList(scTransitionInfo); + } + + /** + * 新增转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + @Override + public int insertScTransitionInfo(ScTransitionInfo scTransitionInfo) + { + scTransitionInfo.setStatus(0); + scTransitionInfo.setCreateTime(DateUtils.getNowDate()); + return scTransitionInfoMapper.insertScTransitionInfo(scTransitionInfo); + } + + /** + * 修改转场 + * + * @param scTransitionInfo 转场 + * @return 结果 + */ + @Override + public int updateScTransitionInfo(ScTransitionInfo scTransitionInfo) + { + return scTransitionInfoMapper.updateScTransitionInfo(scTransitionInfo); + } + + /** + * 批量删除转场 + * + * @param ids 需要删除的转场主键 + * @return 结果 + */ + @Override + public int deleteScTransitionInfoByIds(Integer[] ids) + { + return scTransitionInfoMapper.deleteScTransitionInfoByIds(ids); + } + + /** + * 删除转场信息 + * + * @param id 转场主键 + * @return 结果 + */ + @Override + public int deleteScTransitionInfoById(Integer id) + { + return scTransitionInfoMapper.deleteScTransitionInfoById(id); + } + + @Override + public int insertScTransitionInfoBatch(List transitionInfoList) { + String username = SecurityUtils.getUsername(); + Date now = DateUtils.getNowDate(); + + for (ScTransitionInfo info : transitionInfoList) { + info.setCreateBy(username); // 设置创建人 + info.setCreateTime(now); // 设置创建时间 + info.setStatus(0); // 设置默认状态 + } + return scTransitionInfoMapper.insertScTransitionInfoBatch(transitionInfoList); + } + + /** + * 审批转场记录(通过时更新羊只所在牧场) + */ + @Override + @Transactional(rollbackFor = Exception.class) + public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo) { + int rows = scTransitionInfoMapper.updateScTransitionInfo(scTransitionInfo); + + if (rows > 0 && scTransitionInfo.getStatus() == 1) { + updateSheepRanch(scTransitionInfo); + } + return rows; + } + + /** + * 更新羊只的所在牧场(基于现有牧场列表接口) + */ + private void updateSheepRanch(ScTransitionInfo transitionInfo) { + String transTo = transitionInfo.getTransTo(); + if (StringUtils.isBlank(transTo)) { + throw new RuntimeException("转入牧场不能为空"); + } + + DaRanch query = new DaRanch(); + query.setRanch(transTo); + List ranchList = daRanchService.selectDaRanchList(query); + + Optional matchedRanch = ranchList.stream() + .filter(ranch -> transTo.equals(ranch.getRanch())) + .findFirst(); + + if (!matchedRanch.isPresent()) { + throw new RuntimeException("转入牧场 [" + transTo + "] 不存在"); + } + Long targetRanchId = matchedRanch.get().getId(); + + String manageTags = transitionInfo.getManageTags(); + if (StringUtils.isBlank(manageTags)) { + throw new RuntimeException("耳号不能为空"); + } + List tagList = Arrays.asList(manageTags.split(",")); + + for (String tag : tagList) { + BasSheep sheep = basSheepService.selectBasSheepByManageTags(tag.trim()); + if (sheep == null) { + throw new RuntimeException("耳号 [" + tag + "] 不存在"); + } + + BasSheep updateSheep = new BasSheep(); + updateSheep.setId(sheep.getId()); + updateSheep.setRanchId(targetRanchId); + basSheepMapper.updateBasSheep(updateSheep); + } + } + + /** + * 状态 + */ + public String convertStatus(Integer statusCode) { + Map statusMap = new HashMap<>(); + statusMap.put(0, "待批准"); + statusMap.put(1, "通过"); + statusMap.put(2, "驳回"); + return statusMap.getOrDefault(statusCode, "未知状态"); + } + + /** + * 转场类型 + */ + public String convertTransType(Integer transTypeCode) { + Map transTypeMap = new HashMap<>(); + transTypeMap.put(0, "内部调拨"); + transTypeMap.put(1, "内部销售"); + transTypeMap.put(2, "育肥调拨"); + return transTypeMap.getOrDefault(transTypeCode, "未知类型"); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java new file mode 100644 index 0000000..914a781 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java @@ -0,0 +1,105 @@ +package com.zhyc.module.produce.other.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.module.produce.other.domain.ScCastrate; +import com.zhyc.module.produce.other.service.IScCastrateService; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 去势Controller + * + * @author ruoyi + * @date 2025-07-09 + */ +@RestController +@RequestMapping("/produce/other/castrate") +public class ScCastrateController extends BaseController +{ + @Autowired + private IScCastrateService scCastrateService; + + /** + * 查询去势列表 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:list')") + @GetMapping("/list") + public TableDataInfo list(ScCastrate scCastrate) + { + startPage(); + List list = scCastrateService.selectScCastrateList(scCastrate); + return getDataTable(list); + } + + /** + * 导出去势列表 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:export')") + @Log(title = "去势", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScCastrate scCastrate) + { + List list = scCastrateService.selectScCastrateList(scCastrate); + ExcelUtil util = new ExcelUtil(ScCastrate.class); + util.exportExcel(response, list, "去势数据"); + } + + /** + * 获取去势详细信息 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(scCastrateService.selectScCastrateById(id)); + } + + /** + * 新增去势 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:add')") + @Log(title = "去势", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ScCastrate scCastrate) + { + return toAjax(scCastrateService.insertScCastrate(scCastrate)); + } + + /** + * 修改去势 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:edit')") + @Log(title = "去势", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScCastrate scCastrate) + { + return toAjax(scCastrateService.updateScCastrate(scCastrate)); + } + + /** + * 删除去势 + */ + @PreAuthorize("@ss.hasPermi('produce:castrate:remove')") + @Log(title = "去势", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(scCastrateService.deleteScCastrateByIds(ids)); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java new file mode 100644 index 0000000..9f97e71 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java @@ -0,0 +1,113 @@ +package com.zhyc.module.produce.other.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhyc.common.utils.StringUtils; +import com.zhyc.module.produce.other.domain.ScFixHoof; +import com.zhyc.module.produce.other.service.IScFixHoofService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +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.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; + +/** + * 修蹄Controller + * + * @author ruoyi + * @date 2025-07-10 + */ +@RestController +@RequestMapping("/produce/other/fixHoof") +public class ScFixHoofController extends BaseController +{ + @Autowired + private IScFixHoofService scFixHoofService; + + /** + * 查询修蹄列表 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:list')") + @GetMapping("/list") + public TableDataInfo list(ScFixHoof scFixHoof) + { + startPage(); + List list = scFixHoofService.selectScFixHoofList(scFixHoof); + return getDataTable(list); + + } + + /** + * 导出修蹄列表 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:export')") + @Log(title = "修蹄", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ScFixHoof scFixHoof) + { + List list = scFixHoofService.selectScFixHoofList(scFixHoof); + ExcelUtil util = new ExcelUtil(ScFixHoof.class); + util.exportExcel(response, list, "修蹄数据"); + } + + /** + * 获取修蹄详细信息 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return success(scFixHoofService.selectScFixHoofById(id)); + } + + /** + * 新增修蹄记录(支持批量) + * @return 结果 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:add')") + @Log(title = "修蹄", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody List dtos) { + for (ScFixHoof dto : dtos) { + if (dto.getSheepId() == null && StringUtils.isNotBlank(dto.getManageTags())) { + Long sheepId = scFixHoofService.findIdByManageTags(dto.getManageTags()); + dto.setSheepId(sheepId.intValue()); + } + + // 保存修蹄记录 + scFixHoofService.insertScFixHoof(dto); + } + return toAjax(dtos.size()); + } + + /** + * 修改修蹄 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:edit')") + @Log(title = "修蹄", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ScFixHoof dto){ + dto.setSheepId(scFixHoofService.findIdByManageTags(dto.getManageTags()).intValue()); + return toAjax(scFixHoofService.updateScFixHoof(dto)); + } + + /** + * 删除修蹄 + */ + @PreAuthorize("@ss.hasPermi('produce:fixHoof:remove')") + @Log(title = "修蹄", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(scFixHoofService.deleteScFixHoofByIds(ids)); + } + + + +} + 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 new file mode 100644 index 0000000..1ebab6d --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java @@ -0,0 +1,66 @@ +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; + +/** + * 去势对象 sc_castrate + * + * @author ruoyi + * @date 2025-07-09 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScCastrate extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 羊只id + */ + private String sheepId; + + @Excel(name = "耳号") + private String manageTags; + + /** + * 羊舍id + */ + private Long sheepfold; + + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 品种id */ + private Long varietyId; + + /** 品种名称(联表查询返回,非数据库字段) */ + @Excel(name = "品种") + private String varietyName; + + /** + * 备注 + */ + @Excel(name = "备注") + private String comment; + + /** + * 技术员 + */ + @Excel(name = "技术员") + private String technician; + + + + +} 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 new file mode 100644 index 0000000..60a92a8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java @@ -0,0 +1,55 @@ +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; + +/** + * 修蹄对象 sc_fix_hoof + * + * @author ruoyi + * @date 2025-07-10 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ScFixHoof extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Integer id; + + /** 羊只id */ + private Integer sheepId; + /** 管理耳号(仅用于接收参数/返回视图) */ + @Excel(name = "管理耳号") + private String manageTags; + + /** 羊舍id */ + private Integer sheepfold; + + /** 羊舍名称 */ + @Excel(name = "羊舍名称") + private String sheepfoldName; + + /** 品种id */ + private Long varietyId; + + /** 品种名称(联表查询返回,非数据库字段) */ + @Excel(name = "品种") + private String varietyName; + + /** 备注 */ + @Excel(name = "备注") + private String comment; + + /** 技术员 */ + @Excel(name = "技术员") + private String technician; + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java new file mode 100644 index 0000000..8b09e94 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java @@ -0,0 +1,64 @@ +package com.zhyc.module.produce.other.mapper; + +import java.util.List; + +import com.zhyc.module.produce.other.domain.ScCastrate; +import org.apache.ibatis.annotations.Mapper; + +/** + * 去势Mapper接口 + * + * @author ruoyi + * @date 2025-07-09 + */ +@Mapper +public interface ScCastrateMapper +{ + /** + * 查询去势 + * + * @param id 去势主键 + * @return 去势 + */ + public ScCastrate selectScCastrateById(Long id); + + /** + * 查询去势列表 + * + * @param scCastrate 去势 + * @return 去势集合 + */ + public List selectScCastrateList(ScCastrate scCastrate); + + /** + * 新增去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + public int insertScCastrate(ScCastrate scCastrate); + + /** + * 修改去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + public int updateScCastrate(ScCastrate scCastrate); + + /** + * 删除去势 + * + * @param id 去势主键 + * @return 结果 + */ + public int deleteScCastrateById(Long id); + + /** + * 批量删除去势 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScCastrateByIds(Long[] ids); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java new file mode 100644 index 0000000..490ddc4 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java @@ -0,0 +1,65 @@ +package com.zhyc.module.produce.other.mapper; + +import java.util.List; + +import com.zhyc.module.produce.other.domain.ScFixHoof; +import org.apache.ibatis.annotations.Mapper; + +/** + * 修蹄Mapper接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Mapper +public interface ScFixHoofMapper { + /** + * 查询修蹄 + * + * @param id 修蹄主键 + * @return 修蹄 + */ + public ScFixHoof selectScFixHoofById(Integer id); + + /** + * 查询修蹄列表 + * + * @param scFixHoof 修蹄 + * @return 修蹄集合 + */ + public List selectScFixHoofList(ScFixHoof scFixHoof); + + /** + * 新增修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + public int insertScFixHoof(ScFixHoof scFixHoof); + + /** + * 修改修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + public int updateScFixHoof(ScFixHoof scFixHoof); + + /** + * 删除修蹄 + * + * @param id 修蹄主键 + * @return 结果 + */ + public int deleteScFixHoofById(Integer id); + + /** + * 批量删除修蹄 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteScFixHoofByIds(Integer[] ids); + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java new file mode 100644 index 0000000..293a6bf --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java @@ -0,0 +1,63 @@ +package com.zhyc.module.produce.other.service; + +import java.util.List; + +import com.zhyc.module.produce.other.domain.ScCastrate; + +/** + * 去势Service接口 + * + * @author ruoyi + * @date 2025-07-09 + */ +public interface IScCastrateService { + /** + * 查询去势 + * + * @param id 去势主键 + * @return 去势 + */ + public ScCastrate selectScCastrateById(Long id); + + /** + * 查询去势列表 + * + * @param scCastrate 去势 + * @return 去势集合 + */ + public List selectScCastrateList(ScCastrate scCastrate); + + /** + * 新增去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + public int insertScCastrate(ScCastrate scCastrate); + + /** + * 修改去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + public int updateScCastrate(ScCastrate scCastrate); + + /** + * 批量删除去势 + * + * @param ids 需要删除的去势主键集合 + * @return 结果 + */ + public int deleteScCastrateByIds(Long[] ids); + + /** + * 删除去势信息 + * + * @param id 去势主键 + * @return 结果 + */ + public int deleteScCastrateById(Long id); + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java new file mode 100644 index 0000000..32d9263 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java @@ -0,0 +1,71 @@ +package com.zhyc.module.produce.other.service; + +import java.util.List; + +import com.zhyc.module.produce.other.domain.ScFixHoof; + +/** + * 修蹄Service接口 + * + * @author ruoyi + * @date 2025-07-10 + */ +public interface IScFixHoofService { + /** + * 查询修蹄 + * + * @param id 修蹄主键 + * @return 修蹄 + */ + public ScFixHoof selectScFixHoofById(Integer id); + + /** + * 查询修蹄列表 + * + * @param scFixHoof 修蹄 + * @return 修蹄集合 + */ + public List selectScFixHoofList(ScFixHoof scFixHoof); + + /** + * 新增修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + public int insertScFixHoof(ScFixHoof scFixHoof); + + /** + * 修改修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + public int updateScFixHoof(ScFixHoof scFixHoof); + + /** + * 批量删除修蹄 + * + * @param ids 需要删除的修蹄主键集合 + * @return 结果 + */ + public int deleteScFixHoofByIds(Integer[] ids); + + /** + * 删除修蹄信息 + * + * @param id 修蹄主键 + * @return 结果 + */ + public int deleteScFixHoofById(Integer id); + + /** + * 根据管理耳号查询 + * + * @param manageTags + * @return + */ + Long findIdByManageTags(String manageTags); + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java new file mode 100644 index 0000000..74f80eb --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java @@ -0,0 +1,108 @@ +package com.zhyc.module.produce.other.service.impl; + +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; +import com.zhyc.module.produce.other.domain.ScCastrate; +import com.zhyc.module.produce.other.mapper.ScCastrateMapper; +import com.zhyc.module.produce.other.service.IScCastrateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 去势Service业务层处理 + * + * @author ruoyi + * @date 2025-07-09 + */ +@Service +public class ScCastrateServiceImpl implements IScCastrateService { + @Autowired + private ScCastrateMapper scCastrateMapper; + @Autowired + private IBasSheepService basSheepService; + + /** + * 查询去势 + * + * @param id 去势主键 + * @return 去势 + */ + @Override + public ScCastrate selectScCastrateById(Long id) { + return scCastrateMapper.selectScCastrateById(id); + } + + /** + * 查询去势列表 + * + * @param scCastrate 去势 + * @return 去势 + */ + @Override + public List selectScCastrateList(ScCastrate scCastrate) { + return scCastrateMapper.selectScCastrateList(scCastrate); + } + + /** + * 新增去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + @Override + public int insertScCastrate(ScCastrate scCastrate) { + scCastrate.setCreateTime(DateUtils.getNowDate()); + scCastrate.setCreateBy(SecurityUtils.getUsername()); + int result = scCastrateMapper.insertScCastrate(scCastrate); + + if (result > 0 && scCastrate.getSheepId() != null) { + try { + BasSheep sheep = new BasSheep(); + sheep.setId(Long.parseLong(scCastrate.getSheepId())); + sheep.setGender(3L); + basSheepService.updateBasSheep(sheep); + } catch (Exception e) { + throw new RuntimeException("去势成功,但更新羊只性别失败,请重试"); + } + } + + return result; + } + + /** + * 修改去势 + * + * @param scCastrate 去势 + * @return 结果 + */ + @Override + public int updateScCastrate(ScCastrate scCastrate) { + return scCastrateMapper.updateScCastrate(scCastrate); + } + + /** + * 批量删除去势 + * + * @param ids 需要删除的去势主键 + * @return 结果 + */ + @Override + public int deleteScCastrateByIds(Long[] ids) { + return scCastrateMapper.deleteScCastrateByIds(ids); + } + + /** + * 删除去势信息 + * + * @param id 去势主键 + * @return 结果 + */ + @Override + public int deleteScCastrateById(Long id) { + return scCastrateMapper.deleteScCastrateById(id); + } +} 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 new file mode 100644 index 0000000..fde7034 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java @@ -0,0 +1,123 @@ +package com.zhyc.module.produce.other.service.impl; + +import java.util.List; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.DateUtils; +import com.zhyc.common.utils.SecurityUtils; +import com.zhyc.common.utils.StringUtils; +import com.zhyc.module.base.domain.BasSheep; +import com.zhyc.module.base.mapper.BasSheepMapper; +import com.zhyc.module.base.service.IDaSheepfoldService; +import com.zhyc.module.produce.other.domain.ScFixHoof; +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业务层处理 + * + * @author ruoyi + * @date 2025-07-10 + */ +@Service +public class ScFixHoofServiceImpl implements IScFixHoofService { + @Autowired + private ScFixHoofMapper scFixHoofMapper; + + @Autowired + private BasSheepMapper basSheepMapper; + + @Autowired + private IDaSheepfoldService daSheepfoldService; + + /** + * 查询修蹄 + * + * @param id 修蹄主键 + * @return 修蹄 + */ + @Override + public ScFixHoof selectScFixHoofById(Integer id) { + return scFixHoofMapper.selectScFixHoofById(id); + } + + /** + * 查询修蹄列表 + * + * @param scFixHoof 修蹄 + * @return 修蹄 + */ + @Override + public List selectScFixHoofList(ScFixHoof scFixHoof) { + return scFixHoofMapper.selectScFixHoofList(scFixHoof); + } + + /** + * 新增修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + @Override + public int insertScFixHoof(ScFixHoof scFixHoof) { + BasSheep sheep = basSheepMapper.selectBasSheepById(scFixHoof.getSheepId().longValue()); + if (sheep == null) { + throw new ServiceException("该羊只ID不存在,请检查后再添加"); + } + scFixHoof.setCreateTime(DateUtils.getNowDate()); + scFixHoof.setCreateBy(SecurityUtils.getUsername()); + return scFixHoofMapper.insertScFixHoof(scFixHoof); + } + + /** + * 修改修蹄 + * + * @param scFixHoof 修蹄 + * @return 结果 + */ + @Override + public int updateScFixHoof(ScFixHoof scFixHoof) { + return scFixHoofMapper.updateScFixHoof(scFixHoof); + } + + /** + * 批量删除修蹄 + * + * @param ids 需要删除的修蹄主键 + * @return 结果 + */ + @Override + public int deleteScFixHoofByIds(Integer[] ids) { + return scFixHoofMapper.deleteScFixHoofByIds(ids); + } + + /** + * 删除修蹄信息 + * + * @param id 修蹄主键 + * @return 结果 + */ + @Override + public int deleteScFixHoofById(Integer id) { + return scFixHoofMapper.deleteScFixHoofById(id); + } + + + /** + * 根据管理耳号查询 + */ + @Override + public Long findIdByManageTags(String manageTags) { + if (StringUtils.isBlank(manageTags)) + throw new ServiceException("管理耳号不能为空"); + BasSheep sheep = basSheepMapper.selectBasSheepByManageTags(manageTags.trim()); + if (sheep == null) + throw new ServiceException("管理耳号不存在:" + manageTags); + return sheep.getId(); + } + + +} \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java new file mode 100644 index 0000000..e1b567e --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzMaterialsManagementController.java @@ -0,0 +1,116 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzMaterialsManagement; +import com.zhyc.module.stock.service.IWzMaterialsManagementService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; + +/** + * 物资管理Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/management") +public class WzMaterialsManagementController extends BaseController { + private final IWzMaterialsManagementService wzMaterialsManagementService; + + public WzMaterialsManagementController(IWzMaterialsManagementService wzMaterialsManagementService) { + this.wzMaterialsManagementService = wzMaterialsManagementService; + } + + /** + * 查询物资管理列表 + */ + @PreAuthorize("@ss.hasPermi('stock:management:list')") + @GetMapping("/list") + public TableDataInfo list(WzMaterialsManagement wzMaterialsManagement) { + startPage(); + List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); + return getDataTable(list); + } + + /** + * 导出物资管理列表 + */ + @PreAuthorize("@ss.hasPermi('stock:management:export')") + @Log(title = "物资管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzMaterialsManagement wzMaterialsManagement) { + List list = wzMaterialsManagementService.selectWzMaterialsManagementList(wzMaterialsManagement); + ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); + util.exportExcel(response, list, "物资管理数据"); + } + + /** + * 获取物资管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:management:query')") + @GetMapping(value = "/{materialManagementCode}") + public AjaxResult getInfo(@PathVariable("materialManagementCode") Long materialManagementCode) { + return success(wzMaterialsManagementService.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode)); + } + + /** + * 新增物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:add')") + @Log(title = "物资管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzMaterialsManagement wzMaterialsManagement) { + return toAjax(wzMaterialsManagementService.insertWzMaterialsManagement(wzMaterialsManagement)); + } + + /** + * 修改物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:edit')") + @Log(title = "物资管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzMaterialsManagement wzMaterialsManagement) { + return toAjax(wzMaterialsManagementService.updateWzMaterialsManagement(wzMaterialsManagement)); + } + + /** + * 删除物资管理 + */ + @PreAuthorize("@ss.hasPermi('stock:management:remove')") + @Log(title = "物资管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{materialManagementCodes}") + public AjaxResult remove(@PathVariable Long[] materialManagementCodes) { + return toAjax(wzMaterialsManagementService.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes)); + } + + @Log(title = "物资管理", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:management:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil<>(WzMaterialsManagement.class); + List stockInList = util.importExcel(file.getInputStream()); + for (WzMaterialsManagement wzMaterialsManagement : stockInList) { + System.out.println(wzMaterialsManagement); + } + String operName = getUsername(); + String message = wzMaterialsManagementService.importUser(stockInList, updateSupport, operName); + // String message = "OK We are testing"; + return success(message); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java new file mode 100644 index 0000000..6705202 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockInController.java @@ -0,0 +1,122 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzStockIn; +import com.zhyc.module.stock.service.IWzStockInService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; + +/** + * 入库记录Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/in") +public class WzStockInController extends BaseController +{ + private final IWzStockInService wzStockInService; + + public WzStockInController(IWzStockInService wzStockInService) { + this.wzStockInService = wzStockInService; + } + + /** + * 查询入库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:in:list')") + @GetMapping("/list") + public TableDataInfo list(WzStockIn wzStockIn) + { + startPage(); + List list = wzStockInService.selectWzStockInList(wzStockIn); + return getDataTable(list); + } + + /** + * 导出入库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:in:export')") + @Log(title = "入库记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzStockIn wzStockIn) + { + List list = wzStockInService.selectWzStockInList(wzStockIn); + ExcelUtil util = new ExcelUtil<>(WzStockIn.class); + util.exportExcel(response, list, "入库记录数据"); + } + + /** + * 获取入库记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:in:query')") + @GetMapping(value = "/{stockInCode}") + public AjaxResult getInfo(@PathVariable("stockInCode") Long stockInCode) + { + return success(wzStockInService.selectWzStockInByStockInCode(stockInCode)); + } + + /** + * 新增入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:add')") + @Log(title = "入库记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzStockIn wzStockIn) + { + return toAjax(wzStockInService.insertWzStockIn(wzStockIn)); + } + + /** + * 修改入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:edit')") + @Log(title = "入库记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzStockIn wzStockIn) + { + return toAjax(wzStockInService.updateWzStockIn(wzStockIn)); + } + + /** + * 删除入库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:in:remove')") + @Log(title = "入库记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{stockInCodes}") + public AjaxResult remove(@PathVariable Long[] stockInCodes) + { + return toAjax(wzStockInService.deleteWzStockInByStockInCodes(stockInCodes)); + } + + @Log(title = "用户管理", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:in:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception + { + ExcelUtil util = new ExcelUtil<>(WzStockIn.class); + List stockInList = util.importExcel(file.getInputStream()); + stockInList.removeIf(wzStockIn -> wzStockIn.getDocDate() == null); + String operName = getUsername(); + String message = wzStockInService.importUser(stockInList, updateSupport, operName); +// String message = "OK We are testing"; + return success(message); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java new file mode 100644 index 0000000..cb80a44 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/controller/WzStockOutController.java @@ -0,0 +1,130 @@ +package com.zhyc.module.stock.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +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.stock.domain.WzStockOut; +import com.zhyc.module.stock.service.IWzStockOutService; +import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; + +/** + * 出库记录Controller + * + * @author HashMap + * @date 2025-08-05 + */ +@RestController +@RequestMapping("/stock/out") +public class WzStockOutController extends BaseController +{ + private final IWzStockOutService wzStockOutService; + + public WzStockOutController(IWzStockOutService wzStockOutService) { + this.wzStockOutService = wzStockOutService; + } + + /** + * 查询出库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:out:list')") + @GetMapping("/list") + public TableDataInfo list(WzStockOut wzStockOut) + { + startPage(); + List list = wzStockOutService.selectWzStockOutList(wzStockOut); + return getDataTable(list); + } + + /** + * 导出出库记录列表 + */ + @PreAuthorize("@ss.hasPermi('stock:out:export')") + @Log(title = "出库记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WzStockOut wzStockOut) + { + List list = wzStockOutService.selectWzStockOutList(wzStockOut); + ExcelUtil util = new ExcelUtil<>(WzStockOut.class); + util.exportExcel(response, list, "出库记录数据"); + } + + /** + * 获取出库记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('stock:out:query')") + @GetMapping(value = "/{stockOutCode}") + public AjaxResult getInfo(@PathVariable("stockOutCode") Long stockOutCode) + { + return success(wzStockOutService.selectWzStockOutByStockOutCode(stockOutCode)); + } + + /** + * 新增出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:add')") + @Log(title = "出库记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody WzStockOut wzStockOut) + { + return toAjax(wzStockOutService.insertWzStockOut(wzStockOut)); + } + + /** + * 修改出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:edit')") + @Log(title = "出库记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody WzStockOut wzStockOut) + { + return toAjax(wzStockOutService.updateWzStockOut(wzStockOut)); + } + + /** + * 删除出库记录 + */ + @PreAuthorize("@ss.hasPermi('stock:out:remove')") + @Log(title = "出库记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{stockOutCodes}") + public AjaxResult remove(@PathVariable Long[] stockOutCodes) + { + return toAjax(wzStockOutService.deleteWzStockOutByStockOutCodes(stockOutCodes)); + } + + /** + * 导入出库记录 + */ + @Log(title = "出库记录", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('stock:out:import')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception + { + ExcelUtil util = new ExcelUtil<>(WzStockOut.class); + List WzStockOutList = util.importExcel(file.getInputStream()); + WzStockOutList.removeIf(wzStockOut -> wzStockOut.getDocId() == null); + String operName = getUsername(); + String message; + try { + message = wzStockOutService.importUser(WzStockOutList, updateSupport, operName); + }catch (Exception e) { + message = e.getMessage(); + logger.error(e.getMessage()); + } + // String message = "OK We are testing"; + return success(message); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java new file mode 100644 index 0000000..88d3a53 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzMaterialsManagement.java @@ -0,0 +1,87 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 物资管理对象 wz_materials_management + * + * @author HashMap + * @date 2025-08-05 + */ +@Setter +@Getter +public class WzMaterialsManagement extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + @Excel(name = "序号") + private Long materialManagementCode; + + /** 存货编码 */ + @Excel(name = "存货编码") + private String materialId; + + /** 存货 */ + @Excel(name = "存货") + private String materialName; + + /** 批号 */ + @Excel(name = "批号") + private String batchId; + + /** 规格型号 */ + @Excel(name = "规格型号") + private String materialSpecification; + + /** 主计量 */ + @Excel(name = "主计量") + private String materialUnit; + + /** 现存量(主) */ + @Excel(name = "现存量(主)") + private BigDecimal currentStock; + + /** 库存预警 */ + @Excel(name = "库存预警") + private String stockAlarm; + + /** 生产日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date productionDate; + + /** 失效日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expirationDate; + + /** 失效预警 */ + @Excel(name = "失效预警") + private String expirationAlarm; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("materialManagementCode", getMaterialManagementCode()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("batchId", getBatchId()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("currentStock", getCurrentStock()) + .append("stockAlarm", getStockAlarm()) + .append("productionDate", getProductionDate()) + .append("expirationDate", getExpirationDate()) + .append("expirationAlarm", getExpirationAlarm()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java new file mode 100644 index 0000000..cda8b08 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockIn.java @@ -0,0 +1,142 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 入库记录对象 wz_stock_in + * + * @author HashMap + * @date 2025-08-05 + */ +@Setter +@Getter +public class WzStockIn extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 序号 */ + private Long stockInCode; + + /** 单据日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date docDate; + + /** 创建时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date createDate; + + /** 单据编号 */ + @Excel(name = "单据编号") + private String docId; + + /** 业务类型 */ + @Excel(name = "业务类型") + private String businessType; + + /** 仓库编码 */ + @Excel(name = "仓库编码") + private String repositoryId; + + /** 仓库 */ + @Excel(name = "仓库") + private String repositoryName; + + /** 入库类别 */ + @Excel(name = "入库类别") + private String stockInType; + + /** 供应商编码 */ + @Excel(name = "供应商编码") + private String supplierId; + + /** 供应商 */ + @Excel(name = "供应商") + private String supplierName; + + /** 部门编码 */ + @Excel(name = "部门编码") + private String departmentId; + + /** 部门 */ + @Excel(name = "部门") + private String departmentName; + + /** 经手人编码 */ + @Excel(name = "经手人编码") + private String operatorId; + + /** 经手人 */ + @Excel(name = "经手人") + private String operatorName; + + /** 制单人 */ + @Excel(name = "制单人") + private String single; + + /** 审核人 */ + @Excel(name = "审核人") + private String reviewer; + + /** 存货编码 */ + @Excel(name = "存货编码") + private String materialId; + + /** 存货 */ + @Excel(name = "存货") + private String materialName; + + /** 规格型号 */ + @Excel(name = "规格型号") + private String materialSpecification; + + /** 计量单位 */ + @Excel(name = "计量单位") + private String materialUnit; + + /** 实收数量 */ + @Excel(name = "实收数量") + private BigDecimal count; + + /** 入库调整 */ + @Excel(name = "入库调整") + private String stockInAdjustRemark; + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("stockInCode", getStockInCode()) + .append("docDate", getDocDate()) + .append("createDate", getCreateDate()) + .append("docId", getDocId()) + .append("businessType", getBusinessType()) + .append("repositoryId", getRepositoryId()) + .append("repositoryName", getRepositoryName()) + .append("stockInType", getStockInType()) + .append("supplierId", getSupplierId()) + .append("supplierName", getSupplierName()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("operatorId", getOperatorId()) + .append("operatorName", getOperatorName()) + .append("remark", getRemark()) + .append("single", getSingle()) + .append("reviewer", getReviewer()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("count", getCount()) + .append("stockInAdjustRemark", getStockInAdjustRemark()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java new file mode 100644 index 0000000..c0a84a9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/domain/WzStockOut.java @@ -0,0 +1,251 @@ +package com.zhyc.module.stock.domain; + +import java.math.BigDecimal; +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; +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; + +/** + * 出库记录对象 wz_stock_out + * + * @author HashMap + * @date 2025-08-05 + */ +@Getter +@Setter +public class WzStockOut extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 序号 + */ + private Long stockOutCode; + + /** + * 单据日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date docDate; + + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date createDate; + + /** + * 单据编号 + */ + @Excel(name = "单据编号") + private String docId; + + /** + * 业务类型 + */ + @Excel(name = "业务类型") + private String businessType; + + /** + * 仓库编码 + */ + @Excel(name = "仓库编码") + private String repositoryId; + + /** + * 仓库名称 + */ + @Excel(name = "仓库") + private String repositoryName; + + /** + * 项目分类 + */ + @Excel(name = "项目分类") + private String projectClassification; + + /** + * 项目编码 + */ + @Excel(name = "项目编码") + private String projectId; + + /** + * 项目 + */ + @Excel(name = "项目") + private String projectName; + + /** + * 生产车间编码 + */ + @Excel(name = "生产车间编码") + private String departmentId; + + /** + * 生产车间 + */ + @Excel(name = "生产车间") + private String departmentName; + + /** + * 领用人编码 + */ + @Excel(name = "领用人编码") + private String receiverId; + + /** + * 领用人 + */ + @Excel(name = "领用人") + private String receiver; + + /** + * 制单人 + */ + @Excel(name = "制单人") + private String single; + + /** + * 审核人 + */ + @Excel(name = "审核人") + private String reviewer; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date reviewDate; + + /** + * 修改人 + */ + @Excel(name = "修改人") + private String modifier; + + /** + * 材料分类编码 + */ + @Excel(name = "材料分类编码") + private String materialClassId; + + /** + * 材料分类 + */ + @Excel(name = "材料分类") + private String materialClassName; + + /** + * 材料编码 + */ + @Excel(name = "材料编码") + private String materialId; + + /** + * 材料名称 + */ + @Excel(name = "材料名称") + private String materialName; + + /** + * 材料规格 + */ + @Excel(name = "材料规格") + private String materialSpecification; + + /** + * 计量单位 + */ + @Excel(name = "计量单位") + private String materialUnit; + + /** + * 数量 + */ + @Excel(name = "数量") + private BigDecimal count; + + /** + * 批号 + */ + @Excel(name = "批号") + private Long batchId; + + /** + * 生产日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date productionDate; + + /** + * 保质期 + */ + @Excel(name = "保质期") + private Long shelfLife; + + /** + * 保质期单位 + */ + @Excel(name = "保质期单位") + private String shelfLifeUnit; + + /** + * 失效日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date expirationDate; + + /** + * 代理人 + */ + @Excel(name = "代理人") + private String agent; + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("stockOutCode", getStockOutCode()) + .append("docDate", getDocDate()) + .append("createDate", getCreateDate()) + .append("docId", getDocId()) + .append("businessType", getBusinessType()) + .append("repositoryId", getRepositoryId()) + .append("repositoryName", getRepositoryName()) + .append("projectClassification", getProjectClassification()) + .append("projectId", getProjectId()) + .append("projectName", getProjectName()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("receiverId", getReceiverId()) + .append("receiver", getReceiver()) + .append("single", getSingle()) + .append("reviewer", getReviewer()) + .append("reviewDate", getReviewDate()) + .append("modifier", getModifier()) + .append("materialClassId", getMaterialClassId()) + .append("materialClassName", getMaterialClassName()) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("materialSpecification", getMaterialSpecification()) + .append("materialUnit", getMaterialUnit()) + .append("count", getCount()) + .append("batchId", getBatchId()) + .append("productionDate", getProductionDate()) + .append("shelfLife", getShelfLife()) + .append("shelfLifeUnit", getShelfLifeUnit()) + .append("expirationDate", getExpirationDate()) + .append("agent", getAgent()) + .toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java new file mode 100644 index 0000000..a1c75a9 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzMaterialsManagementMapper.java @@ -0,0 +1,71 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzMaterialsManagement; +import org.apache.ibatis.annotations.Mapper; + +/** + * 物资管理Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzMaterialsManagementMapper +{ + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理集合 + */ + List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 删除物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); + + /** + * 以物资编码获取记录 + * + * @param materialID 物资编码 + * @return 结果 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialID(String materialID); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java new file mode 100644 index 0000000..ed2fda8 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockInMapper.java @@ -0,0 +1,70 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzStockIn; +import org.apache.ibatis.annotations.Mapper; + +/** + * 入库记录Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzStockInMapper +{ + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + WzStockIn selectWzStockInByStockInCode(Long stockInCode); + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录集合 + */ + List selectWzStockInList(WzStockIn wzStockIn); + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int insertWzStockIn(WzStockIn wzStockIn); + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int updateWzStockIn(WzStockIn wzStockIn); + + /** + * 删除入库记录 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + int deleteWzStockInByStockInCode(Long stockInCode); + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzStockInByStockInCodes(Long[] stockInCodes); + + /** + * 查询最近的入库记录 + * + * @return 数据库中最近的入库记录 + */ + WzStockIn getEarliestStockIn(); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java new file mode 100644 index 0000000..a9ae9ce --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/mapper/WzStockOutMapper.java @@ -0,0 +1,70 @@ +package com.zhyc.module.stock.mapper; + +import java.util.List; +import com.zhyc.module.stock.domain.WzStockOut; +import org.apache.ibatis.annotations.Mapper; + +/** + * 出库记录Mapper接口 + * + * @author HashMap + * @date 2025-08-05 + */ +@Mapper +public interface WzStockOutMapper +{ + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录集合 + */ + List selectWzStockOutList(WzStockOut wzStockOut); + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int insertWzStockOut(WzStockOut wzStockOut); + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int updateWzStockOut(WzStockOut wzStockOut); + + /** + * 删除出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + int deleteWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的数据主键集合 + * @return 结果 + */ + int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); + + /** + * 查询最近的记录 + * + * @return 结果 + */ + WzStockOut getEarliestStockOut(); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java new file mode 100644 index 0000000..46e71dc --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzMaterialsManagementService.java @@ -0,0 +1,71 @@ +package com.zhyc.module.stock.service; + +import java.util.List; +import com.zhyc.module.stock.domain.WzMaterialsManagement; + +/** + * 物资管理Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzMaterialsManagementService +{ + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理集合 + */ + List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement); + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement); + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的物资管理主键集合 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes); + + /** + * 删除物资管理信息 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode); + + /** + * 导入入库数据 + * + * @param MaterialsManagementList 物资数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java new file mode 100644 index 0000000..8d986a0 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockInService.java @@ -0,0 +1,72 @@ +package com.zhyc.module.stock.service; + +import java.util.List; + +import com.zhyc.module.stock.domain.WzStockIn; + +/** + * 入库记录Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzStockInService +{ + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + WzStockIn selectWzStockInByStockInCode(Long stockInCode); + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录集合 + */ + List selectWzStockInList(WzStockIn wzStockIn); + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int insertWzStockIn(WzStockIn wzStockIn); + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + int updateWzStockIn(WzStockIn wzStockIn); + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的入库记录主键集合 + * @return 结果 + */ + int deleteWzStockInByStockInCodes(Long[] stockInCodes); + + /** + * 删除入库记录信息 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + int deleteWzStockInByStockInCode(Long stockInCode); + + /** + * 导入入库数据 + * + * @param StockInList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + String importUser(List StockInList, Boolean isUpdateSupport, String operName); +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java new file mode 100644 index 0000000..6e4c75b --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/IWzStockOutService.java @@ -0,0 +1,72 @@ +package com.zhyc.module.stock.service; + +import java.util.List; + +import com.zhyc.module.stock.domain.WzStockOut; + +/** + * 出库记录Service接口 + * + * @author HashMap + * @date 2025-08-05 + */ +public interface IWzStockOutService +{ + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录集合 + */ + List selectWzStockOutList(WzStockOut wzStockOut); + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int insertWzStockOut(WzStockOut wzStockOut); + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + int updateWzStockOut(WzStockOut wzStockOut); + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的出库记录主键集合 + * @return 结果 + */ + int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes); + + /** + * 删除出库记录信息 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + int deleteWzStockOutByStockOutCode(Long stockOutCode); + + /** + * 导入入库数据 + * + * @param WzStockOutList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception; +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java new file mode 100644 index 0000000..ab6d272 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzMaterialsManagementServiceImpl.java @@ -0,0 +1,132 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.List; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzMaterialsManagementMapper; +import com.zhyc.module.stock.domain.WzMaterialsManagement; +import com.zhyc.module.stock.service.IWzMaterialsManagementService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 物资管理Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzMaterialsManagementServiceImpl implements IWzMaterialsManagementService { + private final WzMaterialsManagementMapper wzMaterialsManagementMapper; + + public WzMaterialsManagementServiceImpl(WzMaterialsManagementMapper wzMaterialsManagementMapper) { + this.wzMaterialsManagementMapper = wzMaterialsManagementMapper; + } + + /** + * 查询物资管理 + * + * @param materialManagementCode 物资管理主键 + * @return 物资管理 + */ + @Override + public WzMaterialsManagement selectWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { + return wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialManagementCode(materialManagementCode); + } + + /** + * 查询物资管理列表 + * + * @param wzMaterialsManagement 物资管理 + * @return 物资管理 + */ + @Override + public List selectWzMaterialsManagementList(WzMaterialsManagement wzMaterialsManagement) { + return wzMaterialsManagementMapper.selectWzMaterialsManagementList(wzMaterialsManagement); + } + + /** + * 新增物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + @Override + public int insertWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { + return wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); + } + + /** + * 修改物资管理 + * + * @param wzMaterialsManagement 物资管理 + * @return 结果 + */ + @Override + public int updateWzMaterialsManagement(WzMaterialsManagement wzMaterialsManagement) { + return wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); + } + + /** + * 批量删除物资管理 + * + * @param materialManagementCodes 需要删除的物资管理主键 + * @return 结果 + */ + @Override + public int deleteWzMaterialsManagementByMaterialManagementCodes(Long[] materialManagementCodes) { + return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCodes(materialManagementCodes); + } + + /** + * 删除物资管理信息 + * + * @param materialManagementCode 物资管理主键 + * @return 结果 + */ + @Override + public int deleteWzMaterialsManagementByMaterialManagementCode(Long materialManagementCode) { + return wzMaterialsManagementMapper.deleteWzMaterialsManagementByMaterialManagementCode(materialManagementCode); + } + + /** + * 导入用户数据 + * + * @param MaterialsManagementList 物资数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List MaterialsManagementList, Boolean isUpdateSupport, String operName) { + if (StringUtils.isNull(MaterialsManagementList) || MaterialsManagementList.isEmpty()) { + throw new ServiceException("导入用户数据不能为空!"); + } + int successNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + try { + for (WzMaterialsManagement wzMaterialsManagement : MaterialsManagementList) { + if (wzMaterialsManagement.getMaterialId() != null) { + WzMaterialsManagement isExist = wzMaterialsManagementMapper.selectWzMaterialsManagementByMaterialID(wzMaterialsManagement.getMaterialId()); + // 存在则更新 + if (isExist != null) { + sameNum++; + wzMaterialsManagementMapper.updateWzMaterialsManagement(wzMaterialsManagement); + continue; + } + } + int result = wzMaterialsManagementMapper.insertWzMaterialsManagement(wzMaterialsManagement); + if (result > 0) successNum++; + } + } catch (Exception e) { + return failureMsg.append("导入出错:").append(e.getMessage()).toString(); + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n更新 ").append(sameNum).append(" 条(已存在记录)"); + return successMsg.toString(); + } + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java new file mode 100644 index 0000000..7632654 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockInServiceImpl.java @@ -0,0 +1,137 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.List; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzStockInMapper; +import com.zhyc.module.stock.domain.WzStockIn; +import com.zhyc.module.stock.service.IWzStockInService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 入库记录Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzStockInServiceImpl implements IWzStockInService { + private final WzStockInMapper wzStockInMapper; + + public WzStockInServiceImpl(WzStockInMapper wzStockInMapper) { + this.wzStockInMapper = wzStockInMapper; + } + + /** + * 查询入库记录 + * + * @param stockInCode 入库记录主键 + * @return 入库记录 + */ + @Override + public WzStockIn selectWzStockInByStockInCode(Long stockInCode) { + return wzStockInMapper.selectWzStockInByStockInCode(stockInCode); + } + + /** + * 查询入库记录列表 + * + * @param wzStockIn 入库记录 + * @return 入库记录 + */ + @Override + public List selectWzStockInList(WzStockIn wzStockIn) { + return wzStockInMapper.selectWzStockInList(wzStockIn); + } + + /** + * 新增入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + @Override + public int insertWzStockIn(WzStockIn wzStockIn) { + return wzStockInMapper.insertWzStockIn(wzStockIn); + } + + /** + * 修改入库记录 + * + * @param wzStockIn 入库记录 + * @return 结果 + */ + @Override + public int updateWzStockIn(WzStockIn wzStockIn) { + return wzStockInMapper.updateWzStockIn(wzStockIn); + } + + /** + * 批量删除入库记录 + * + * @param stockInCodes 需要删除的入库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockInByStockInCodes(Long[] stockInCodes) { + return wzStockInMapper.deleteWzStockInByStockInCodes(stockInCodes); + } + + /** + * 删除入库记录信息 + * + * @param stockInCode 入库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockInByStockInCode(Long stockInCode) { + return wzStockInMapper.deleteWzStockInByStockInCode(stockInCode); + } + + /** + * 导入用户数据 + * + * @param StockInList 用户数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List StockInList, Boolean isUpdateSupport, String operName) { + if (StringUtils.isNull(StockInList) || StockInList.isEmpty()) { + throw new ServiceException("导入用户数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + try { + WzStockIn earliestStockIn = wzStockInMapper.getEarliestStockIn(); + System.out.println(earliestStockIn); + for (WzStockIn wzStockIn : StockInList) { + if (earliestStockIn.getDocDate().getTime() >= wzStockIn.getDocDate().getTime()) { + sameNum++; + continue; + } + int result = wzStockInMapper.insertWzStockIn(wzStockIn); + if (result == 0) { + failureNum++; + failureMsg.append("失败的项:").append(wzStockIn.getDocId()).append("\n"); + } + else successNum++; + } + + } catch (Exception e) { + failureNum++; + } + if (failureNum > 0) { + return failureMsg.toString(); + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); + return successMsg.toString(); + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java new file mode 100644 index 0000000..5fb6c36 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/stock/service/impl/WzStockOutServiceImpl.java @@ -0,0 +1,136 @@ +package com.zhyc.module.stock.service.impl; + +import java.util.Date; +import java.util.List; + +import com.zhyc.common.exception.ServiceException; +import com.zhyc.common.utils.StringUtils; +import org.springframework.stereotype.Service; +import com.zhyc.module.stock.mapper.WzStockOutMapper; +import com.zhyc.module.stock.domain.WzStockOut; +import com.zhyc.module.stock.service.IWzStockOutService; +import org.springframework.transaction.annotation.Transactional; + +/** + * 出库记录Service业务层处理 + * + * @author HashMap + * @date 2025-08-05 + */ +@Service +public class WzStockOutServiceImpl implements IWzStockOutService { + private final WzStockOutMapper wzStockOutMapper; + + public WzStockOutServiceImpl(WzStockOutMapper wzStockOutMapper) { + this.wzStockOutMapper = wzStockOutMapper; + } + + /** + * 查询出库记录 + * + * @param stockOutCode 出库记录主键 + * @return 出库记录 + */ + @Override + public WzStockOut selectWzStockOutByStockOutCode(Long stockOutCode) { + return wzStockOutMapper.selectWzStockOutByStockOutCode(stockOutCode); + } + + /** + * 查询出库记录列表 + * + * @param wzStockOut 出库记录 + * @return 出库记录 + */ + @Override + public List selectWzStockOutList(WzStockOut wzStockOut) { + return wzStockOutMapper.selectWzStockOutList(wzStockOut); + } + + /** + * 新增出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + @Override + public int insertWzStockOut(WzStockOut wzStockOut) { + return wzStockOutMapper.insertWzStockOut(wzStockOut); + } + + /** + * 修改出库记录 + * + * @param wzStockOut 出库记录 + * @return 结果 + */ + @Override + public int updateWzStockOut(WzStockOut wzStockOut) { + return wzStockOutMapper.updateWzStockOut(wzStockOut); + } + + /** + * 批量删除出库记录 + * + * @param stockOutCodes 需要删除的出库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockOutByStockOutCodes(Long[] stockOutCodes) { + return wzStockOutMapper.deleteWzStockOutByStockOutCodes(stockOutCodes); + } + + /** + * 删除出库记录信息 + * + * @param stockOutCode 出库记录主键 + * @return 结果 + */ + @Override + public int deleteWzStockOutByStockOutCode(Long stockOutCode) { + return wzStockOutMapper.deleteWzStockOutByStockOutCode(stockOutCode); + } + + /** + * 导入用户数据 + * + * @param WzStockOutList 入库数据列表 + * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据 + * @param operName 操作用户 + * @return 结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public String importUser(List WzStockOutList, Boolean isUpdateSupport, String operName) throws Exception { + if (StringUtils.isNull(WzStockOutList) || WzStockOutList.isEmpty()) { + throw new ServiceException("导入入库数据不能为空!"); + } + int successNum = 0; + int sameNum = 0; + StringBuilder successMsg = new StringBuilder(); + WzStockOut earliestStockOut = wzStockOutMapper.getEarliestStockOut(); + // 确保最近记录有值 + if (null == earliestStockOut || earliestStockOut.getCreateDate() == null) { + if (earliestStockOut != null) { + earliestStockOut.setCreateDate(new Date(0)); + } else { + earliestStockOut = new WzStockOut(); + earliestStockOut.setCreateDate(new Date(0)); + } + } + for (WzStockOut wzStockOut : WzStockOutList) { + if (null != wzStockOut && null != wzStockOut.getCreateDate()) { + if (earliestStockOut.getCreateDate().getTime() >= wzStockOut.getCreateDate().getTime()) { + sameNum++; + continue; + } + } else { + continue; + } + int result = wzStockOutMapper.insertWzStockOut(wzStockOut); + if (result > 0) successNum++; + } + successMsg.append("导入完成 : 导入 ").append(successNum).append(" 条\n跳过 ").append(sameNum).append(" 条(重复记录)"); + return successMsg.toString(); + } +} From f81cdcc18e809d6c15438b938567c9665f44e0a5 Mon Sep 17 00:00:00 2001 From: piaobo <1913856125@qq.com> Date: Fri, 15 Aug 2025 18:05:48 +0800 Subject: [PATCH 13/23] =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=BB=93=E6=9E=84?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E4=BB=A5=E5=8F=8A=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E6=A0=B9=E6=8D=AE=E5=B2=97=E4=BD=8D=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=94=A8=E6=88=B7=EF=BC=8C=E7=94=A8=E4=BA=8E=E6=8A=80?= =?UTF-8?q?=E6=9C=AF=E5=91=98=E7=AD=89=E6=9F=A5=E8=AF=A2(=E6=9C=AA?= =?UTF-8?q?=E5=AE=8C=E6=88=90)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/HealthController.java | 3 ++- .../common/controller/UserController.java | 27 +++++++++++++++++++ .../zhyc/module/common/domain/UserPost.java | 14 ++++++++++ .../module/common/mapper/UserPostMapper.java | 12 +++++++++ .../common/service/UserPostService.java | 9 +++++++ .../service/impl/UserPostServiceImpl.java | 19 +++++++++++++ .../mapper/common/UserPostMapper.xml | 18 +++++++++++++ .../breed}/RawSpermRecordMapper.xml | 0 .../breed}/ScBreedRecordMapper.xml | 0 .../breed}/ScSheepDeathMapper.xml | 0 10 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/common/controller/UserController.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/common/domain/UserPost.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/common/mapper/UserPostMapper.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/common/service/UserPostService.java create mode 100644 zhyc-module/src/main/java/com/zhyc/module/common/service/impl/UserPostServiceImpl.java create mode 100644 zhyc-module/src/main/resources/mapper/common/UserPostMapper.xml rename zhyc-module/src/main/resources/mapper/{Sperm => produce/breed}/RawSpermRecordMapper.xml (100%) rename zhyc-module/src/main/resources/mapper/{Breeding_records => produce/breed}/ScBreedRecordMapper.xml (100%) rename zhyc-module/src/main/resources/mapper/{sheep_death => produce/breed}/ScSheepDeathMapper.xml (100%) 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/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/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/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/Breeding_records/ScBreedRecordMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml similarity index 100% rename from zhyc-module/src/main/resources/mapper/Breeding_records/ScBreedRecordMapper.xml rename to zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml 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 From 73468bf67525eee7830f43d8cc34587669d19620 Mon Sep 17 00:00:00 2001 From: HashMap Date: Sun, 17 Aug 2025 18:25:43 +0800 Subject: [PATCH 14/23] =?UTF-8?q?feat(module/feed=20module=20global/import?= =?UTF-8?q?):=20=E6=B7=BB=E5=8A=A0=E9=A5=B2=E5=96=82=E7=AE=A1=E7=90=86/?= =?UTF-8?q?=E9=A5=B2=E5=96=82=E8=AE=A1=E5=88=92=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加饲喂管理/饲喂计划模块 对配方管理的一些已知问题进行修正 使用IDEA自动优化import对整个项目进行了import优化 BREAKING CHANGE: 使用IDEA自动优化import对整个项目进行了import优化 --- .../main/java/com/zhyc/SheepApplication.java | 1 - .../framework/aspectj/RateLimiterAspect.java | 2 - .../zhyc/framework/config/RedisConfig.java | 3 - .../base/controller/BasSheepController.java | 1 - .../controller/BasSheepTypeController.java | 4 - .../base/controller/SheepFileController.java | 1 - .../com/zhyc/module/base/domain/BasSheep.java | 2 - .../module/base/domain/BasSheepGroup.java | 2 - .../base/domain/BasSheepGroupMapping.java | 2 - .../zhyc/module/base/domain/BasSheepType.java | 3 - .../module/base/domain/BasSheepVariety.java | 2 - .../com/zhyc/module/base/domain/DaRanch.java | 3 - .../zhyc/module/base/domain/DaSheepfold.java | 2 - .../zhyc/module/base/domain/SheepFile.java | 2 - .../base/service/IBasSheepTypeService.java | 1 - .../service/impl/BasSheepTypeServiceImpl.java | 1 - .../service/impl/SheepFileServiceImpl.java | 1 - .../zhyc/module/biosafety/domain/Deworm.java | 2 - .../module/biosafety/domain/Diagnosis.java | 2 - .../module/biosafety/domain/Disinfect.java | 2 - .../module/biosafety/domain/Immunity.java | 2 - .../biosafety/domain/QuarantineItems.java | 2 - .../biosafety/domain/QuarantineReport.java | 2 - .../biosafety/domain/QuarantineSample.java | 2 - .../module/biosafety/domain/SwDisease.java | 2 - .../module/biosafety/domain/SwMedicine.java | 2 - .../biosafety/domain/SwMedicineUsage.java | 2 - .../domain/SwMedicineUsageDetails.java | 2 - .../zhyc/module/biosafety/domain/SwUnit.java | 2 - .../zhyc/module/biosafety/domain/SwUsage.java | 2 - .../module/biosafety/domain/Treatment.java | 3 - .../biosafety/service/ITreatmentService.java | 1 - .../service/impl/DewormServiceImpl.java | 1 - .../service/impl/DisinfectServiceImpl.java | 2 - .../service/impl/HealthServiceImpl.java | 1 - .../service/impl/ImmunityServiceImpl.java | 1 - .../impl/QuarantineReportServiceImpl.java | 1 - .../service/impl/TreatmentServiceImpl.java | 1 - .../NpMilkInOutStoreController.java | 1 - .../controller/RanchController.java | 3 - .../XzParityCorrectionController.java | 1 - .../dairyProducts/domain/NpFreshMilkInsp.java | 2 - .../dairyProducts/domain/NpRawMilkInspe.java | 2 - .../dairyProducts/domain/NpYogurtInsp.java | 2 - .../domain/XzDryMatterCorrection.java | 2 - .../domain/XzParityCorrection.java | 2 - .../domain/XzWegihCorrection.java | 2 - .../service/INpMilkInOutStoreService.java | 1 - .../feed/controller/SgFeedPlanController.java | 55 +++++++--- .../feed/controller/SgMaterialController.java | 1 - .../zhyc/module/feed/domain/SgFeedPlan.java | 103 +++++++++--------- .../module/feed/mapper/SgFeedPlanMapper.java | 16 +-- .../feed/service/ISgFeedPlanService.java | 16 +-- .../service/impl/SgFeedPlanServiceImpl.java | 7 +- .../impl/SgFormulaListServiceImpl.java | 1 - .../controller/ScBodyMeasureController.java | 1 - .../bodyManage/domain/ScBodyMeasure.java | 3 - .../bodyManage/domain/ScBodyScore.java | 2 - .../bodyManage/domain/ScBreastRating.java | 2 - .../produce/breed/domain/RawSpermRecord.java | 2 - .../produce/breed/domain/ScBreedPlan.java | 2 - .../breed/domain/ScBreedPlanGenerate.java | 2 - .../produce/breed/domain/ScBreedPlanTemp.java | 2 - .../produce/breed/domain/ScBreedRecord.java | 5 - .../produce/breed/domain/ScDryMilk.java | 2 - .../produce/breed/domain/ScLambDetail.java | 2 - .../breed/domain/ScPregnancyRecord.java | 3 - .../produce/breed/domain/ScWeanRecord.java | 2 - .../breed/mapper/ScLambingRecordMapper.java | 1 - .../impl/ScPregnancyRecordServiceImpl.java | 1 - .../manage_sheep/domain/ScChangeComment.java | 2 - .../manage_sheep/domain/ScChangeEar.java | 2 - .../manage_sheep/domain/ScChangeVariety.java | 2 - .../manage_sheep/domain/ScTransGroup.java | 3 - .../manage_sheep/domain/ScTransitionInfo.java | 2 - .../impl/ScChangeCommentServiceImpl.java | 2 +- .../impl/ScTransitionInfoServiceImpl.java | 1 - .../produce/other/domain/ScCastrate.java | 2 - .../produce/other/domain/ScFixHoof.java | 2 - .../service/impl/ScFixHoofServiceImpl.java | 1 - .../mapper/feed/SgFeedPlanMapper.xml | 39 ++++--- 81 files changed, 139 insertions(+), 238 deletions(-) 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-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/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..1212838 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; 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/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..a7244ba 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; 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..587f4b7 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; 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..a28b76b 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; 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..9c9e4c5 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; 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..a121c55 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; 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..75845b6 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; 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/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/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/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/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/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/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/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 a8efd25..26c861f 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; /** * 体尺测量对象 sc_body_measure 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 5e5c1bf..d50931e 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 325a020..fae5409 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 @@ -3,8 +3,6 @@ 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; 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..6746caf 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,13 +1,8 @@ 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; 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/ScLambingRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java index 85edef3..1a26677 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 @@ -2,7 +2,6 @@ package com.zhyc.module.produce.breed.mapper; import java.util.List; import com.zhyc.module.produce.breed.domain.ScLambingRecord; -import com.zhyc.module.produce.breed.domain.ScLambDetail; import org.apache.ibatis.annotations.Mapper; /** 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 2243411..0667e48 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 f2ef13f..f42ebf6 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 5f5e8ee..1566b62 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 ba62557..28a47ac 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 554bf4d..fbb6538 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 cd8a96b..7c698af 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 1ebab6d..4b40215 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 60a92a8..1a723ec 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/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 From 8bc26605e03ad4dc98a58b1fcbf3393f7e2e61de Mon Sep 17 00:00:00 2001 From: zyk Date: Tue, 19 Aug 2025 00:18:10 +0800 Subject: [PATCH 15/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BA=86=E9=85=8D?= =?UTF-8?q?=E7=A7=8D=E8=AE=A1=E5=88=92=E5=92=8C=E9=85=8D=E7=A7=8D=E8=AE=B0?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ScBreedPlanGenerateController.java | 79 ++++- .../controller/ScBreedRecordController.java | 102 +++++- .../produce/breed/domain/ScBreedRecord.java | 45 ++- .../mapper/ScBreedPlanGenerateMapper.java | 24 ++ .../breed/mapper/ScBreedRecordMapper.java | 37 +- .../service/IScBreedPlanGenerateService.java | 28 +- .../breed/service/IScBreedRecordService.java | 28 ++ .../impl/ScBreedPlanGenerateServiceImpl.java | 326 +++++++++++++++++- .../impl/ScBreedRecordServiceImpl.java | 84 +++++ .../breed/ScBreedPlanGenerateMapper.xml | 203 ++++++++--- .../produce/breed/ScBreedRecordMapper.xml | 124 ++++++- 11 files changed, 985 insertions(+), 95 deletions(-) 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/domain/ScBreedRecord.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/domain/ScBreedRecord.java index 6746caf..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 @@ -5,6 +5,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.util.Date; /** * 配种记录对象 sc_breed_record @@ -42,6 +43,10 @@ public class ScBreedRecord extends BaseEntity @Excel(name = "耗精量") private String breedDrugs; + /** 配种方式 1-同期发情 2-本交 */ + @Excel(name = "配种方式", readConverterExp = "1=同期发情,2=本交") + private Integer breedType; + // ============ 显示字段 ============ /** 母羊耳号 */ @@ -88,7 +93,7 @@ public class ScBreedRecord extends BaseEntity @Excel(name = "所在牧场") private String ranchName; - /** 配种方式 */ + /** 配种方式显示 */ @Excel(name = "配种方式") private String matingType; @@ -107,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/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/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/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/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/produce/breed/ScBreedRecordMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScBreedRecordMapper.xml index 4128a7a..c03c285 100644 --- a/zhyc-module/src/main/resources/mapper/produce/breed/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 From c11faeeaceaa339d98d4e3e75a56e3a54fbfad1a Mon Sep 17 00:00:00 2001 From: zyk Date: Tue, 19 Aug 2025 10:13:42 +0800 Subject: [PATCH 16/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E4=BA=86=E4=BA=A7=E7=BE=94=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScLambingRecordController.java | 20 ++++ .../breed/mapper/ScLambingRecordMapper.java | 10 ++ .../service/IScLambingRecordService.java | 9 ++ .../impl/ScLambingRecordServiceImpl.java | 16 ++-- .../produce/breed/ScLambingRecordMapper.xml | 94 +++++++++++-------- 5 files changed, 102 insertions(+), 47 deletions(-) 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/mapper/ScLambingRecordMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/breed/mapper/ScLambingRecordMapper.java index 1a26677..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,8 +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 org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 产羔记录Mapper接口 @@ -37,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/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/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/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} From 0122acc5b1250cd2a32bb62e82ceb0c562e249e7 Mon Sep 17 00:00:00 2001 From: piaobo <1913856125@qq.com> Date: Tue, 19 Aug 2025 12:45:02 +0800 Subject: [PATCH 17/23] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=98=B5=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhyc/common/utils/SecurityUtils.java | 15 ++++ .../module/biosafety/domain/Disinfect.java | 4 +- .../biosafety/domain/SwPrescription.java | 86 ------------------- .../service/impl/DewormServiceImpl.java | 4 +- .../service/impl/DiagnosisServiceImpl.java | 4 +- .../service/impl/DisinfectServiceImpl.java | 4 +- .../service/impl/HealthServiceImpl.java | 4 +- .../service/impl/ImmunityServiceImpl.java | 4 +- .../impl/QuarantineReportServiceImpl.java | 4 +- .../impl/SwMedicineUsageServiceImpl.java | 4 +- .../impl/SwPrescriptionServiceImpl.java | 5 +- .../service/impl/TreatmentServiceImpl.java | 4 +- 12 files changed, 37 insertions(+), 105 deletions(-) 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-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 1212838..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 @@ -35,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/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/service/impl/DewormServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java index a7244ba..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 @@ -72,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()); @@ -115,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 587f4b7..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 @@ -73,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()); @@ -114,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 a28b76b..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 @@ -73,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(); @@ -119,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 9c9e4c5..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 @@ -75,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(); @@ -128,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 a121c55..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 @@ -60,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){ @@ -96,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 75845b6..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 @@ -73,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()); @@ -134,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()); } From a4bc0c1724c8f9618fd62d284925e7a885da174a Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Tue, 19 Aug 2025 17:07:16 +0800 Subject: [PATCH 18/23] =?UTF-8?q?=E9=83=A8=E5=88=86bug=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=EF=BC=8C=E5=88=9B=E5=BB=BA=E6=97=A5=E6=9C=9F=E7=B2=BE=E7=A1=AE?= =?UTF-8?q?=E5=88=B0=E5=87=A0=E7=82=B9=E5=87=A0=E5=88=86=EF=BC=8C=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=E6=94=BE=E6=9C=80=E5=89=8D=E9=9D=A2=EF=BC=8C=E8=BD=AC?= =?UTF-8?q?=E5=9C=BA=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScAddSheepController.java | 15 ++++++-- .../ScTransitionInfoController.java | 3 ++ .../manage_sheep/domain/ScAddSheep.java | 5 +++ .../manage_sheep/domain/ScChangeComment.java | 14 +++++++- .../manage_sheep/domain/ScChangeEar.java | 9 +++++ .../manage_sheep/domain/ScChangeVariety.java | 16 ++++++--- .../manage_sheep/domain/ScTransGroup.java | 24 +++++++++---- .../manage_sheep/domain/ScTransitionInfo.java | 34 +++++++++++++------ .../mapper/ScTransitionInfoMapper.java | 17 +++++----- .../service/IScTransitionInfoService.java | 1 + .../service/impl/ScAddSheepServiceImpl.java | 31 +++++++++++++---- .../service/impl/ScTransGroupServiceImpl.java | 17 ++++++++++ .../impl/ScTransitionInfoServiceImpl.java | 19 ++++++++++- .../produce/other/domain/ScCastrate.java | 6 ++++ .../produce/other/domain/ScFixHoof.java | 7 +++- .../resources/mapper/base/BasSheepMapper.xml | 2 +- .../produce/manage_sheep/ScAddSheepMapper.xml | 14 ++++++-- .../manage_sheep/ScChangeCommentMapper.xml | 8 ++++- .../manage_sheep/ScChangeEarMapper.xml | 13 +++++++ .../manage_sheep/ScChangeVarietyMapper.xml | 8 ++++- .../manage_sheep/ScTransGroupMapper.xml | 17 +++++++++- .../manage_sheep/ScTransitionInfoMapper.xml | 33 ++++++++++++++---- .../mapper/produce/other/ScCastrateMapper.xml | 4 ++- .../mapper/produce/other/ScFixHoofMapper.xml | 4 ++- 24 files changed, 265 insertions(+), 56 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java index 6d2f7f9..5721eee 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java @@ -5,7 +5,9 @@ import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.enums.BusinessType; import com.zhyc.common.exception.ServiceException; import com.zhyc.common.utils.poi.ExcelUtil; +import com.zhyc.module.base.domain.BasSheepType; import com.zhyc.module.base.domain.BasSheepVariety; +import com.zhyc.module.base.service.IBasSheepTypeService; import com.zhyc.module.base.service.IBasSheepVarietyService; import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; @@ -36,6 +38,8 @@ public class ScAddSheepController { private IDaSheepfoldService daSheepfoldMapper; @Autowired private IBasSheepVarietyService basSheepVarietyMapper; + @Autowired + private IBasSheepTypeService basSheepTypeService; //新增羊只验证 @PreAuthorize("@ss.hasPermi('produce:add_sheep:add')") @Log(title = "新增", businessType = BusinessType.INSERT) @@ -79,8 +83,7 @@ public class ScAddSheepController { public void exportForm(HttpServletResponse response, @RequestBody ScAddSheep scAddSheep) throws IOException { ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); List list = new ArrayList<>(); - - // 处理羊舍名称(原有逻辑) + // 处理羊舍名称 if (scAddSheep.getSheepfold() != null) { DaSheepfold fold = daSheepfoldMapper.selectDaSheepfoldById(scAddSheep.getSheepfold().longValue()); if (fold != null) { @@ -88,6 +91,7 @@ public class ScAddSheepController { } } + //处理羊只品种名称 if (scAddSheep.getVarietyId() != null) { BasSheepVariety variety = basSheepVarietyMapper.selectBasSheepVarietyById(scAddSheep.getVarietyId().longValue()); if (variety != null) { @@ -95,6 +99,13 @@ public class ScAddSheepController { } } + //处理羊只类型名称 + if (scAddSheep.getTypeId() != null) { + BasSheepType sheepType = basSheepTypeService.selectBasSheepTypeById(scAddSheep.getTypeId().intValue()); + if (sheepType != null) { + scAddSheep.setTypeName(sheepType.getName()); + } + } list.add(scAddSheep); util.exportExcel(response, list, "羊只信息"); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java index f41c044..6307706 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java @@ -110,6 +110,9 @@ public class ScTransitionInfoController extends BaseController { @PutMapping("/approve") public AjaxResult approveScTransitionInfo(@RequestBody ScTransitionInfo scTransitionInfo) { + if ("转场转入".equals(scTransitionInfo.getEventType()) && scTransitionInfo.getSheepfoldId() == null) { + return AjaxResult.error("转场转入时,接收羊舍ID不能为空"); + } int rows = scTransitionInfoService.approveScTransitionInfo(scTransitionInfo); return toAjax(rows); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java index 7bdf7ad..310cd52 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java @@ -68,6 +68,11 @@ public class ScAddSheep extends BaseEntity { @Excel(name = "品种") private String varietyName; + /** 羊只类别 */ + private Long typeId; + @Excel(name = "羊只类型") + private String typeName; + /** 入群日期 */ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @Excel(name = "入群日期", dateFormat = "yyyy-MM-dd") 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 2243411..2a513be 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 @@ -29,8 +29,20 @@ public class ScChangeComment extends BaseEntity { * 羊只id */ private String sheepId; - @Excel(name = "管理耳号") + private String manageTags; + + /** 羊舍 */ + private Long sheepfoldId; + @Excel(name = "羊舍") + private String sheepfoldName; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + /** * 新备注 */ 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 f2ef13f..47eec0a 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 @@ -30,6 +30,15 @@ public class ScChangeEar extends BaseEntity @Excel(name = "管理耳号") private String manageTags; + /** 羊舍 */ + private Long sheepfoldId; + @Excel(name = "羊舍") + private String sheepfoldName; + + /** 事件类型(改管理耳号/改电子耳号) */ + @Excel(name = "事件类型") + private String eventType; + /** 选择更改耳号类型(0电子耳号1管理耳号) */ @Excel(name = "耳号类型", readConverterExp = "0=电子耳号,1=管理耳号") private Integer earType; 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 5f5e8ee..ce4f52a 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 @@ -31,6 +31,17 @@ public class ScChangeVariety extends BaseEntity @Excel(name = "耳号") private String manageTags; + /** 羊舍 */ + private Long sheepfoldId; + @Excel(name = "羊舍") + private String sheepfoldName; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + /** 原品种 */ @Excel(name = "原品种") private String varietyOld; @@ -43,10 +54,5 @@ public class ScChangeVariety extends BaseEntity @Excel(name = "备注") private String comment; - /** 创建日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTime; - } 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 ba62557..8568e8a 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 @@ -33,6 +33,14 @@ public class ScTransGroup extends BaseEntity { @Excel(name = "耳号") private String manageTags; + + /** + * 事件类型(1-围产转群,2-普通转群,3-育肥转群,4-预售转群) + */ + private Integer eventType; + @Excel(name = "事件类型") + private String eventTypeText; + /** * 转入羊舍 */ @@ -43,18 +51,19 @@ public class ScTransGroup extends BaseEntity { */ private String foldFrom; + /** + * 羊只类型 + */ + private Integer sheepTypeId; + @Excel(name = "羊只类型") + private String sheepTypeName; + /** * 转出羊舍名称 */ @Excel(name = "转出羊舍") private String foldFromName; - /** - * 羊只类型ID - */ - private Integer sheepTypeId; - // 羊只类型名称 - private String sheepTypeName; /** * 转入羊舍名称 */ @@ -80,6 +89,9 @@ public class ScTransGroup extends BaseEntity { @Excel(name = "转群原因") private String reasonText; + /** 转群日期 */ + @Excel(name = "转群日期") + private String transDate; /** * 技术员 */ 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 554bf4d..eaeec95 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 @@ -8,6 +8,8 @@ import org.apache.commons.lang3.builder.ToStringStyle; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.time.LocalDate; + /** * 转场对象 sc_transition_info * @@ -29,9 +31,27 @@ public class ScTransitionInfo extends BaseEntity { * 羊只id */ private Integer sheepId; - @Excel(name = "耳号") private String manageTags; + + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + + + /** + * 转场类型 + */ + private Integer transType; + @Excel(name = "转场类型") + private String transTypeText; + + /** 转场日期 */ + @Excel(name = "转场日期") + private LocalDate transitionDate; + /** * 品种id */ @@ -56,16 +76,9 @@ public class ScTransitionInfo extends BaseEntity { private String transFrom; /** - * 转场类型 + * 接收羊舍 */ - private Integer transType; - - /** - * 转场类型名称 只用于导出 - */ - @Excel(name = "转场类型") - private String transTypeText; - + private Long sheepfoldId; /** * 技术员 */ @@ -78,6 +91,7 @@ public class ScTransitionInfo extends BaseEntity { private Integer status; @Excel(name = "状态") private String statusText; + /** * 备注 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java index a095246..ce67176 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java @@ -7,15 +7,15 @@ import org.apache.ibatis.annotations.Param; /** * 转场Mapper接口 - * + * * @author ruoyi * @date 2025-07-10 */ -public interface ScTransitionInfoMapper +public interface ScTransitionInfoMapper { /** * 查询转场 - * + * * @param id 转场主键 * @return 转场 */ @@ -23,7 +23,7 @@ public interface ScTransitionInfoMapper /** * 查询转场列表 - * + * * @param scTransitionInfo 转场 * @return 转场集合 */ @@ -31,7 +31,7 @@ public interface ScTransitionInfoMapper /** * 新增转场 - * + * * @param scTransitionInfo 转场 * @return 结果 */ @@ -39,7 +39,7 @@ public interface ScTransitionInfoMapper /** * 修改转场 - * + * * @param scTransitionInfo 转场 * @return 结果 */ @@ -47,7 +47,7 @@ public interface ScTransitionInfoMapper /** * 删除转场 - * + * * @param id 转场主键 * @return 结果 */ @@ -55,7 +55,7 @@ public interface ScTransitionInfoMapper /** * 批量删除转场 - * + * * @param ids 需要删除的数据主键集合 * @return 结果 */ @@ -63,4 +63,5 @@ public interface ScTransitionInfoMapper //批量转场 int insertScTransitionInfoBatch(@Param("list") List transitionInfoList); + } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java index b578491..c9cb5c5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java @@ -70,4 +70,5 @@ public interface IScTransitionInfoService { //审批转场 public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo); + } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java index b6ed6b4..e2819ee 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java @@ -2,7 +2,9 @@ package com.zhyc.module.produce.manage_sheep.service.impl; import com.zhyc.common.exception.ServiceException; import com.zhyc.common.utils.StringUtils; +import com.zhyc.module.base.domain.BasSheepType; import com.zhyc.module.base.mapper.BasSheepVarietyMapper; +import com.zhyc.module.base.service.IBasSheepTypeService; import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; import com.zhyc.module.produce.manage_sheep.mapper.ScAddSheepMapper; import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; @@ -32,6 +34,8 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { @Autowired private BasSheepVarietyMapper basSheepVarietyMapper; + @Autowired + private IBasSheepTypeService basSheepTypeService; //新增 @Override @Transactional(rollbackFor = Exception.class) @@ -64,7 +68,10 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { bs.setComment(scAddSheep.getComment()); bs.setCreateBy(scAddSheep.getCreateBy()); bs.setCreateTime(new Date()); - + if (scAddSheep.getTypeId() != null) { + bs.setTypeId(scAddSheep.getTypeId().longValue()); + } + bs.setStatusId(1L); basSheepService.insertBasSheep(bs); return true; } @@ -101,7 +108,6 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { for (int i = 0; i < list.size(); i++) { ScAddSheep sheep = list.get(i); try { - // 处理品种名称转换为品种ID if (StringUtils.isNotBlank(sheep.getVarietyName())) { Long varietyId = basSheepVarietyMapper.selectIdByName(sheep.getVarietyName()); if (varietyId == null) { @@ -122,7 +128,6 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { continue; } - // 处理羊舍名称转换为羊舍ID if (StringUtils.isNotBlank(sheep.getSheepfoldNameExcel())) { DaSheepfold param = new DaSheepfold(); param.setSheepfoldName(sheep.getSheepfoldNameExcel()); @@ -139,7 +144,23 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { sheep.setSheepfold(foldList.get(0).getId().intValue()); } - // 校验耳号是否为空 + if (StringUtils.isNotBlank(sheep.getTypeName())) { + BasSheepType typeQuery = new BasSheepType(); + typeQuery.setName(sheep.getTypeName().trim()); + List typeList = basSheepTypeService.selectBasSheepTypeList(typeQuery); + + if (typeList == null || typeList.isEmpty()) { + failure++; + failureMsg.append("
第") + .append(i + 1) + .append("行:羊只类型名称不存在【") + .append(sheep.getTypeName()) + .append("】"); + continue; + } + sheep.setTypeId(typeList.get(0).getId().longValue()); + } + if (StringUtils.isBlank(sheep.getEarNumber())) { failure++; failureMsg.append("
第") @@ -148,7 +169,6 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { continue; } - // 核心校验:判断羊只基本信息表中是否存在未删除的同名耳号 BasSheep existSheep = basSheepService.selectBasSheepByManageTags(sheep.getEarNumber().trim()); if (existSheep != null) { failure++; @@ -160,7 +180,6 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { continue; } - // 执行导入(新增或更新) if (updateSupport && sheep.getId() != null) { sheep.setUpdateBy(operName); updateScAddSheep(sheep); diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java index 3604f92..e52185e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java @@ -31,6 +31,7 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { private BasSheepMapper basSheepMapper; @Autowired private IBasSheepService basSheepService; + /** * 查询转群记录 * @@ -42,6 +43,7 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { ScTransGroup group = scTransGroupMapper.selectScTransGroupById(id); group.setReasonText(convertReason(group.getReason())); group.setStatusText(convertStatus(group.getStatus())); + group.setEventTypeText(convertEventType(group.getEventType())); return group; } @@ -58,6 +60,7 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { list.forEach(group -> { group.setReasonText(convertReason(group.getReason())); group.setStatusText(convertStatus(group.getStatus())); + group.setEventTypeText(convertEventType(group.getEventType())); }); return list; } @@ -177,4 +180,18 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { return statusMap.getOrDefault(statusCode, "未知状态"); } + /** + * 转换事件类型(1-围产转群,2-普通转群,3-育肥转群,4-预售转群) + */ + private String convertEventType(Integer eventType) { + if (eventType == null) { + return "未知"; + } + Map eventTypeMap = new HashMap<>(); + eventTypeMap.put(1, "围产转群"); + eventTypeMap.put(2, "普通转群"); + eventTypeMap.put(3, "育肥转群"); + eventTypeMap.put(4, "预售转群"); + return eventTypeMap.getOrDefault(eventType, "未知"); + } } 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 cd8a96b..d5df328 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 @@ -128,8 +128,16 @@ public class ScTransitionInfoServiceImpl implements IScTransitionInfoService @Override @Transactional(rollbackFor = Exception.class) public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo) { + // 1. 查询当前记录的原始状态 + ScTransitionInfo existing = scTransitionInfoMapper.selectScTransitionInfoById(scTransitionInfo.getId()); + if (existing == null) { + throw new RuntimeException("转场记录不存在"); + } + // 2. 校验状态:仅允许审批“待审批”的记录 + if (existing.getStatus() != 0) { + throw new RuntimeException("该记录已完成审批,无法重复操作"); + } int rows = scTransitionInfoMapper.updateScTransitionInfo(scTransitionInfo); - if (rows > 0 && scTransitionInfo.getStatus() == 1) { updateSheepRanch(scTransitionInfo); } @@ -158,6 +166,12 @@ public class ScTransitionInfoServiceImpl implements IScTransitionInfoService } Long targetRanchId = matchedRanch.get().getId(); + //获取接收羊舍 + Long targetSheepfoldId = transitionInfo.getSheepfoldId(); + if ("转场转入".equals(transitionInfo.getEventType()) && targetSheepfoldId == null) { + throw new RuntimeException("转场转入时,接收羊舍不能为空"); + } + String manageTags = transitionInfo.getManageTags(); if (StringUtils.isBlank(manageTags)) { throw new RuntimeException("耳号不能为空"); @@ -173,6 +187,9 @@ public class ScTransitionInfoServiceImpl implements IScTransitionInfoService BasSheep updateSheep = new BasSheep(); updateSheep.setId(sheep.getId()); updateSheep.setRanchId(targetRanchId); + if ("转场转入".equals(transitionInfo.getEventType())) { + updateSheep.setSheepfoldId(targetSheepfoldId); + } basSheepMapper.updateBasSheep(updateSheep); } } 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 1ebab6d..be6afda 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 @@ -33,6 +33,12 @@ public class ScCastrate extends BaseEntity { @Excel(name = "耳号") private String manageTags; + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + /** * 羊舍id */ 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 60a92a8..9adbc9c 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 @@ -26,10 +26,15 @@ public class ScFixHoof extends BaseEntity /** 羊只id */ private Integer sheepId; - /** 管理耳号(仅用于接收参数/返回视图) */ @Excel(name = "管理耳号") private String manageTags; + /** + * 事件类型 + */ + @Excel(name = "事件类型") + private String eventType; + /** 羊舍id */ private Integer sheepfold; diff --git a/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml b/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml index f42546a..a035e60 100644 --- a/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml +++ b/zhyc-module/src/main/resources/mapper/base/BasSheepMapper.xml @@ -328,7 +328,7 @@ SELECT COUNT(*) FROM bas_sheep WHERE manage_tags = #{tag} - AND s.is_delete = 0 + AND is_delete = 0 @@ -55,10 +62,10 @@ INSERT INTO sc_add_sheep (ear_number, sheepfold, father, mother, born_weight, birthday, - gender, parity, variety_id, join_date, comment, technician, + gender, parity, variety_id, type_id, join_date, comment, technician, create_by, create_time) VALUES (#{earNumber}, #{sheepfold}, #{father}, #{mother}, #{bornWeight}, - #{birthday}, #{gender}, #{parity}, #{varietyId}, #{joinDate}, + #{birthday}, #{gender}, #{parity}, #{varietyId}, #{typeId}, #{joinDate}, #{comment}, #{technician}, #{createBy}, #{createTime}) @@ -74,6 +81,7 @@ gender = #{gender}, parity = #{parity}, variety_id = #{varietyId}, + type_id = #{typeId}, join_date = #{joinDate}, comment = #{comment}, technician = #{technician}, diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml index df4eaa6..e931054 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml @@ -8,6 +8,8 @@ + + @@ -17,13 +19,16 @@ select scc.id, scc.sheep_id, - bs.manage_tags as manage_tags, + bs.manage_tags as manage_tags, + sf.sheepfold_name as sheepfold_name, + '改备注' as event_type, scc.new_comment, scc.old_comment, scc.create_by, scc.create_time from sc_change_comment scc left join bas_sheep bs on scc.sheep_id = bs.id + left join da_sheepfold sf on bs.sheepfold_id = sf.id @@ -37,6 +46,10 @@ and bs.manage_tags LIKE CONCAT('%', #{manageTags}, '%') + and bs.sheepfold_id = #{sheepfoldId} + + and sf.sheepfold_name LIKE CONCAT('%', #{sheepfoldName}, '%') + and sce.ear_type = #{earType} and sce.newTag LIKE CONCAT('%', #{newTag}, '%') diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml index 77cf67f..680ce6d 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml @@ -8,6 +8,8 @@ + + @@ -18,7 +20,9 @@ select scv.id, scv.sheep_id, - bs.manage_tags as manage_tags, + bs.manage_tags as manage_tags, + sf.sheepfold_name as sheepfold_name, + '改品种' as event_type, scv.variety_old, scv.variety_new, scv.comment, @@ -26,6 +30,7 @@ scv.create_time from sc_change_variety scv left join bas_sheep bs on scv.sheep_id = bs.id + left join da_sheepfold sf on bs.sheepfold_id = sf.id + + + and formula_id = #{formulaId} + and zookeeper = #{zookeeper} + and deploy_date = #{deployDate} + + + + + + + insert into sg_feed_list + + formula_id, + formula_batch_id, + zookeeper, + deploy_date, + + + #{formulaId}, + #{formulaBatchId}, + #{zookeeper}, + #{deployDate}, + + + + + update sg_feed_list + + formula_id = #{formulaId}, + formula_batch_id = #{formulaBatchId}, + zookeeper = #{zookeeper}, + deploy_date = #{deployDate}, + + where id = #{id} + + + + delete from sg_feed_list where id = #{id} + + + + delete from sg_feed_list where id in + + #{id} + + + \ No newline at end of file From 6c67094c0d0852a2e3a579260c3d5152001bfe4e Mon Sep 17 00:00:00 2001 From: HashMap Date: Wed, 20 Aug 2025 12:38:20 +0800 Subject: [PATCH 21/23] =?UTF-8?q?perf(module=20feed/FeedList):=20=E4=B8=BA?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=90=8C=E6=AD=A5=E5=A2=9E=E5=8A=A0=E4=BA=86?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在配料清单部分增加了缓存机制: 所有对数据库的请求通过Map缓存 仅当配方管理出现修改 || 饲喂计划出现增删改操作时通过标志位通知配料清单表下一次请求刷新缓存 减少对数据库的重复请求操作 --- .../feed/controller/SgFeedListController.java | 35 ++++++++++++++----- .../feed/controller/SgFeedPlanController.java | 9 +++-- .../SgFormulaManagementController.java | 6 ++++ 3 files changed, 39 insertions(+), 11 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java index f806ea9..446327d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFeedListController.java @@ -10,6 +10,7 @@ import com.zhyc.module.feed.domain.SgFeedPlan; import com.zhyc.module.feed.domain.SgFormulaManagement; import com.zhyc.module.feed.service.ISgFeedPlanService; import com.zhyc.module.feed.service.ISgFormulaManagementService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; @@ -46,6 +47,9 @@ public class SgFeedListController extends BaseController { private final Map sgFeedListMap = new HashMap<>(); + public static boolean refresh = true; + + @Autowired public SgFeedListController(ISgFeedListService sgFeedListService, ISgFormulaManagementService sgFormulaManagementService, ISgFeedPlanService sgFeedPlanService) { this.sgFeedListService = sgFeedListService; this.sgFormulaManagementService = sgFormulaManagementService; @@ -59,7 +63,14 @@ public class SgFeedListController extends BaseController { @GetMapping("/list") @Transactional(rollbackFor = Exception.class) public TableDataInfo list(SgFeedList sgFeedList) { - SyncFeedList(); + /* + 刷新缓存 + 当配方管理表出现更新 或 饲喂计划表出现增删改时会将refresh置为true 通知此处进行刷新 + */ + if (refresh) { + SyncFeedList(); + refresh = false; + } startPage(); List list = sgFeedListService.selectSgFeedListList(sgFeedList); // 用 map 中已有的数据替换 list 中的元素 @@ -164,17 +175,20 @@ public class SgFeedListController extends BaseController { rootPlanQuery.setFormulaId(sgFormulaManagement.getFormulaId()); rootPlanQuery.setBatchId(sgFormulaManagement.getBatchId()); List sgFeedPlans = sgFeedPlanService.selectSgFeedPlanList(rootPlanQuery); - // 为空则标识当前配方不在饲喂计划中 + // 为空则标识当前配方不在饲喂计划中 && 不在缓存中设置 if (sgFeedPlans.isEmpty()) { isPlan = false; - } - // rootPlan中存储的是该配方批号的总量 - SgFeedPlan rootPlan = computePlanTotal(sgFeedPlans); + } else { + // rootPlan中存储的是该配方批号的总量 + SgFeedPlan rootPlan = computePlanTotal(sgFeedPlans); + + // 将计划实体对象设置到配料清单中 + sgFeedList.setRootPlan(rootPlan); + + // 完整的配料清单对象加入缓存 + sgFeedListMap.put(sgFormulaManagement.getFormulaId() + "_" + sgFormulaManagement.getBatchId(), sgFeedList); + } - // 将计划实体对象设置到配料清单中 - sgFeedList.setRootPlan(rootPlan); - // 完整的配料清单对象加入缓存 - sgFeedListMap.put(sgFormulaManagement.getFormulaId() + "_" + sgFormulaManagement.getBatchId(), sgFeedList); // 不存在则插入 if (!isExist && isPlan) { sgFeedListService.insertSgFeedList(sgFeedList); @@ -213,6 +227,9 @@ public class SgFeedListController extends BaseController { rootPlan.setPlanNoonSize(planFeedNoonSize); rootPlan.setPlanAfternoonSize(planFeedAfternoonSize); rootPlan.setPlanFeedTotal(planFeedTotalSize); + + // 设置计划日期 + rootPlan.setPlanDate(sgFeedPlans.get(0).getPlanDate()); } return rootPlan; } 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 4661361..39bde43 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 @@ -82,6 +82,8 @@ public class SgFeedPlanController extends BaseController { sgFeedPlan.setCreateDate(new Date()); // 计算其他字段值 setPlan(sgFeedPlan); + // 通知配料清单刷新数据 + SgFeedListController.refresh = true; return toAjax(sgFeedPlanService.insertSgFeedPlan(sgFeedPlan)); } @@ -94,6 +96,8 @@ public class SgFeedPlanController extends BaseController { public AjaxResult edit(@RequestBody SgFeedPlan sgFeedPlan) { // 根据修改后的值重新计算 setPlan(sgFeedPlan); + // 通知配料清单刷新数据 + SgFeedListController.refresh = true; return toAjax(sgFeedPlanService.updateSgFeedPlan(sgFeedPlan)); } @@ -104,6 +108,8 @@ public class SgFeedPlanController extends BaseController { @Log(title = "饲喂计划", businessType = BusinessType.DELETE) @DeleteMapping("/{createDates}") public AjaxResult remove(@PathVariable Date[] createDates) { + // 通知配料清单刷新数据 + SgFeedListController.refresh = true; return toAjax(sgFeedPlanService.deleteSgFeedPlanByCreateDates(createDates)); } @@ -111,7 +117,7 @@ public class SgFeedPlanController extends BaseController { * 设定计划值 * 用于添加和修改 */ - private SgFeedPlan setPlan(SgFeedPlan sgFeedPlan) { + private void setPlan(SgFeedPlan sgFeedPlan) { // 根据羊舍ID获取羊只数量 int countByFoldId = sgFeedPlanService.getSheepCountByFoldId(sgFeedPlan.getSheepHouseId()); sgFeedPlan.setSheepCount(countByFoldId); @@ -121,6 +127,5 @@ public class SgFeedPlanController extends BaseController { 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/SgFormulaManagementController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java index 3f33ae2..9284c7a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgFormulaManagementController.java @@ -143,6 +143,9 @@ public class SgFormulaManagementController extends BaseController { sgFormulaListItem.setFormulaId(sgFormulaManagement.getFormulaId()); sgFormulaListService.insertSgFormulaList(sgFormulaListItem); } + + // 通知配料清单刷新数据 + SgFeedListController.refresh = true; return toAjax(sgFormulaManagementService.updateSgFormulaManagement(sgFormulaManagement)); } @@ -167,6 +170,9 @@ public class SgFormulaManagementController extends BaseController { } // 前置检查完毕 执行删除 sgFormulaManagement.setBatchId(batchId); + + // 通知配料清单刷新数据 + SgFeedListController.refresh = true; return toAjax(sgFormulaManagementService.deleteSgFormulaManagement(sgFormulaManagement)); } } From a1972a86eb60837d9744439df225893132b750fe Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Wed, 20 Aug 2025 13:15:17 +0800 Subject: [PATCH 22/23] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=BE=8A=E5=8F=AA?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScAddSheepController.java | 17 +++++++++++++ .../manage_sheep/domain/ScAddSheep.java | 5 ++++ .../service/impl/ScAddSheepServiceImpl.java | 24 +++++++++++++++++++ .../produce/manage_sheep/ScAddSheepMapper.xml | 13 +++++----- 4 files changed, 53 insertions(+), 6 deletions(-) diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java index 5721eee..4f56d3b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScAddSheepController.java @@ -7,8 +7,10 @@ import com.zhyc.common.exception.ServiceException; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.module.base.domain.BasSheepType; import com.zhyc.module.base.domain.BasSheepVariety; +import com.zhyc.module.base.domain.DaRanch; import com.zhyc.module.base.service.IBasSheepTypeService; import com.zhyc.module.base.service.IBasSheepVarietyService; +import com.zhyc.module.base.service.IDaRanchService; import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; import com.zhyc.module.base.domain.DaSheepfold; @@ -40,6 +42,9 @@ public class ScAddSheepController { private IBasSheepVarietyService basSheepVarietyMapper; @Autowired private IBasSheepTypeService basSheepTypeService; + @Autowired + private IDaRanchService daRanchService; + //新增羊只验证 @PreAuthorize("@ss.hasPermi('produce:add_sheep:add')") @Log(title = "新增", businessType = BusinessType.INSERT) @@ -48,6 +53,9 @@ public class ScAddSheepController { if (scAddSheep.getEarNumber() == null || scAddSheep.getEarNumber().isEmpty()) { return AjaxResult.error("耳号不能为空"); } + if (scAddSheep.getRanchId() == null || scAddSheep.getRanchId() == 0) { + return AjaxResult.error("牧场不能为空"); + } if (scAddSheep.getSheepfold() == null || scAddSheep.getSheepfold() == 0) { return AjaxResult.error("羊舍不能为空"); } @@ -83,6 +91,14 @@ public class ScAddSheepController { public void exportForm(HttpServletResponse response, @RequestBody ScAddSheep scAddSheep) throws IOException { ExcelUtil util = new ExcelUtil<>(ScAddSheep.class); List list = new ArrayList<>(); + //处理牧场名称 + if (scAddSheep.getRanchId() != null) { + // 根据牧场ID查询牧场信息 + DaRanch ranch = daRanchService.selectDaRanchById(scAddSheep.getRanchId().longValue()); + if (ranch != null) { + scAddSheep.setRanchName(ranch.getRanch()); // 将牧场名称设置到实体中 + } + } // 处理羊舍名称 if (scAddSheep.getSheepfold() != null) { DaSheepfold fold = daSheepfoldMapper.selectDaSheepfoldById(scAddSheep.getSheepfold().longValue()); @@ -109,6 +125,7 @@ public class ScAddSheepController { list.add(scAddSheep); util.exportExcel(response, list, "羊只信息"); } + //导入 @PostMapping("/importData") @PreAuthorize("@ss.hasPermi('produce:add_sheep:import')") diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java index 310cd52..bae1352 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java @@ -27,6 +27,11 @@ public class ScAddSheep extends BaseEntity { @Excel(name = "耳号") private String earNumber; + /** 牧场 */ + private Integer ranchId; + @Excel(name = "牧场名称") + private String ranchName; + /** 羊舍编号 */ private Integer sheepfold; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java index e2819ee..4f3b0f2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java @@ -3,8 +3,10 @@ package com.zhyc.module.produce.manage_sheep.service.impl; import com.zhyc.common.exception.ServiceException; import com.zhyc.common.utils.StringUtils; import com.zhyc.module.base.domain.BasSheepType; +import com.zhyc.module.base.domain.DaRanch; import com.zhyc.module.base.mapper.BasSheepVarietyMapper; import com.zhyc.module.base.service.IBasSheepTypeService; +import com.zhyc.module.base.service.IDaRanchService; import com.zhyc.module.produce.manage_sheep.domain.ScAddSheep; import com.zhyc.module.produce.manage_sheep.mapper.ScAddSheepMapper; import com.zhyc.module.produce.manage_sheep.service.IScAddSheepService; @@ -36,6 +38,9 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { @Autowired private IBasSheepTypeService basSheepTypeService; + + @Autowired + private IDaRanchService daRanchService; //新增 @Override @Transactional(rollbackFor = Exception.class) @@ -51,6 +56,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { BasSheep bs = new BasSheep(); bs.setManageTags(scAddSheep.getEarNumber()); // bs.setElectronicTags(scAddSheep.getEarNumber()); + bs.setRanchId(scAddSheep.getRanchId().longValue()); bs.setSheepfoldId(scAddSheep.getSheepfold().longValue()); bs.setFatherId(null); bs.setMotherId(null); @@ -108,6 +114,23 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { for (int i = 0; i < list.size(); i++) { ScAddSheep sheep = list.get(i); try { + if (StringUtils.isBlank(sheep.getRanchName())) { + failure++; + failureMsg.append("
第").append(i + 1).append("行:牧场名称不能为空"); + continue; + } + DaRanch ranchParam = new DaRanch(); + ranchParam.setRanch(sheep.getRanchName().trim()); + List ranchList = daRanchService.selectDaRanchList(ranchParam); + + if (ranchList == null || ranchList.isEmpty()) { + failure++; + failureMsg.append("
第").append(i + 1) + .append("行:牧场名称不存在【").append(sheep.getRanchName()).append("】"); + continue; + } + sheep.setRanchId(ranchList.get(0).getId().intValue()); + if (StringUtils.isNotBlank(sheep.getVarietyName())) { Long varietyId = basSheepVarietyMapper.selectIdByName(sheep.getVarietyName()); if (varietyId == null) { @@ -131,6 +154,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { if (StringUtils.isNotBlank(sheep.getSheepfoldNameExcel())) { DaSheepfold param = new DaSheepfold(); param.setSheepfoldName(sheep.getSheepfoldNameExcel()); + param.setRanchId(sheep.getRanchId().longValue()); List foldList = daSheepfoldMapper.selectDaSheepfoldList(param); if (foldList == null || foldList.isEmpty()) { failure++; diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScAddSheepMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScAddSheepMapper.xml index 29a68fd..6c0b7b9 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScAddSheepMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScAddSheepMapper.xml @@ -61,18 +61,19 @@ INSERT INTO sc_add_sheep - (ear_number, sheepfold, father, mother, born_weight, birthday, - gender, parity, variety_id, type_id, join_date, comment, technician, - create_by, create_time) - VALUES (#{earNumber}, #{sheepfold}, #{father}, #{mother}, #{bornWeight}, - #{birthday}, #{gender}, #{parity}, #{varietyId}, #{typeId}, #{joinDate}, - #{comment}, #{technician}, #{createBy}, #{createTime}) + (ear_number, sheepfold, ranch_id, father, mother, born_weight, birthday, + gender, parity, variety_id, type_id, join_date, comment, technician, + create_by, create_time) + VALUES (#{earNumber}, #{sheepfold}, #{ranchId}, #{father}, #{mother}, #{bornWeight}, + #{birthday}, #{gender}, #{parity}, #{varietyId}, #{typeId}, #{joinDate}, + #{comment}, #{technician}, #{createBy}, #{createTime}) UPDATE sc_add_sheep ear_number = #{earNumber}, + ranch_id = #{ranchId}, sheepfold = #{sheepfold}, father = #{father}, mother = #{mother}, From 7249cd9dfc15d70bac71cc8801f619ff95e160e4 Mon Sep 17 00:00:00 2001 From: piaobo <1913856125@qq.com> Date: Wed, 20 Aug 2025 17:27:12 +0800 Subject: [PATCH 23/23] =?UTF-8?q?=E6=B6=88=E6=AF=92=E8=8D=AF=E5=93=81?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=A3=80=E7=96=AB=E8=AE=B0=E5=BD=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhyc/module/biosafety/domain/Deworm.java | 2 +- .../module/biosafety/domain/Disinfect.java | 6 ++- .../impl/QuarantineReportServiceImpl.java | 2 +- .../mapper/biosafety/DisinfectMapper.xml | 45 ++++++++++++++----- .../biosafety/QuarantineReportMapper.xml | 9 ++-- 5 files changed, 45 insertions(+), 19 deletions(-) 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 f8b1f81..55d20a5 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 @@ -11,7 +11,7 @@ import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; /** - * 驱虫对象 sw_deworm + * 驱虫对象 sw_dih * * @author ruoyi * @date 2025-07-15 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 44cc620..4c6847d 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 @@ -35,8 +35,8 @@ public class Disinfect extends BaseEntity private Integer[] sheepfoldIds; /** 消毒日期 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm") - @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "消毒日期", width = 30, dateFormat = "yyyy-MM-dd") private Date datetime; /** 技术员 */ @@ -58,6 +58,8 @@ public class Disinfect extends BaseEntity /** 备注 */ @Excel(name = "备注") private String comment; +/** 药品名称用于查询*/ + private String mediName; // 药品使用 private List usageDetails; 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 8fde76f..ce4fa2f 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 @@ -63,7 +63,7 @@ public class QuarantineReportServiceImpl implements IQuarantineReportService String username = SecurityUtils.getLoginUser().getUser().getNickName(); quarantineReport.setCreateBy(username); quarantineReport.setCreateTime(DateUtils.getNowDate()); - if (quarantineReport.getResult()==null){ + if (quarantineReport.getResult()==null || quarantineReport.getResult().length()==0){ quarantineReport.setStatus(0); }else { quarantineReport.setStatus(1); diff --git a/zhyc-module/src/main/resources/mapper/biosafety/DisinfectMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/DisinfectMapper.xml index 0269e82..2d00f31 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/DisinfectMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/DisinfectMapper.xml @@ -28,16 +28,39 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"