From 9051165798048f48968f0c48cb0d111fca3d214d Mon Sep 17 00:00:00 2001
From: zyh <2066096076@qq.com>
Date: Fri, 22 Aug 2025 19:32:56 +0800
Subject: [PATCH 1/6] =?UTF-8?q?=E8=AE=B0=E5=BD=95=E7=9B=B8=E5=85=B3?=
=?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=8C=89=E7=85=A7=E6=97=A5=E6=9C=9F=E9=99=8D?=
=?UTF-8?q?=E5=BA=8F=E6=8E=92=E5=BA=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml | 1 +
.../resources/mapper/produce/bodyManage/ScBodyScoreMapper.xml | 1 +
.../resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml | 1 +
.../resources/mapper/produce/manage_sheep/ScAddSheepMapper.xml | 1 +
.../mapper/produce/manage_sheep/ScChangeCommentMapper.xml | 1 +
.../resources/mapper/produce/manage_sheep/ScChangeEarMapper.xml | 1 +
.../mapper/produce/manage_sheep/ScChangeVarietyMapper.xml | 1 +
.../resources/mapper/produce/manage_sheep/ScTransGroupMapper.xml | 1 +
.../mapper/produce/manage_sheep/ScTransitionInfoMapper.xml | 1 +
.../src/main/resources/mapper/produce/other/ScCastrateMapper.xml | 1 +
.../src/main/resources/mapper/produce/other/ScFixHoofMapper.xml | 1 +
11 files changed, 11 insertions(+)
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 5265e5f..7e75d9c 100644
--- a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyMeasureMapper.xml
@@ -102,6 +102,7 @@
and sm.create_time between #{params.beginCreateTime} and #{params.endCreateTime}
+ ORDER BY sm.create_time DESC
diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml
index 78b2c91..66d18ca 100644
--- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml
@@ -67,6 +67,7 @@
and t.create_time between #{params.beginCreateTime} and #{params.endCreateTime}
+ ORDER BY t.create_time DESC
diff --git a/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
index f86bdef..e767362 100644
--- a/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
@@ -7,6 +7,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
+
+
+
+
@@ -31,7 +36,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select id, name, use_type, update_by, update_time, create_by, create_time from sw_medicine_usage
+ select smu.id, sheepfold as sheepfold_id,sheep sheep_id,name, datetime,use_type, smu.update_by, smu.update_time, smu.create_by, smu.create_time,
+ ds.sheepfold_name,
+ bs.manage_tags sheep_no
+ from sw_medicine_usage smu
+ left join da_sheepfold ds on ds.id = smu.sheepfold
+ left join bas_sheep bs on bs.id = smu.sheep
@@ -62,6 +76,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
name,
use_type,
+ sheepfold,
+ sheep,
+ datetime,
update_by,
update_time,
create_by,
@@ -70,6 +87,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{name},
#{useType},
+ #{sheepfoldId},
+ #{sheepId},
+ #{datetime},
#{updateBy},
#{updateTime},
#{createBy},
diff --git a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
index ee496ad..031bb74 100644
--- a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
@@ -50,6 +50,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and disease_id = #{diseaseId}
and veterinary = #{veterinary}
+ ORDER BY datetime DESC
@@ -51,11 +52,23 @@
where id = #{id}
-
+
- select id as sheepId, variety, name as sheepType, gender, day_age as dayAge, parity, sheepfold_name as sheepfoldName, breed as breedStatus, post_lambing_day as postLambingDay, lactation_day as lactationDay, gestation_day as gestationDay
+ select
+ id as sheepId,
+ variety,
+ name as sheepType,
+ gender,
+ day_age as dayAge,
+ parity,
+ sheepfold_name as sheepfoldName,
+ breed as breedStatus,
+ post_lambing_day as postLambingDay,
+ lactation_day as lactationDay,
+ gestation_day as gestationDay
from sheep_file
where bs_manage_tags = #{manageTags} and is_delete = 0
+ limit 1
@@ -131,4 +144,14 @@
#{id}
+
+
+
+ UPDATE sheep_file
+ SET breed = #{status},
+ update_time = NOW()
+ WHERE id = #{sheepId}
+ AND is_delete = 0
+
+
\ No newline at end of file
From d9d489c1a0989b7e51df2343d8b605bcf1911b43 Mon Sep 17 00:00:00 2001
From: zyk
Date: Sun, 24 Aug 2025 12:17:22 +0800
Subject: [PATCH 5/6] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BA=86=E6=AD=BB?=
=?UTF-8?q?=E4=BA=A1=E6=A8=A1=E5=9D=97=EF=BC=8C=E4=BF=AE=E6=94=B9=E7=8A=B6?=
=?UTF-8?q?=E6=80=81=E5=9C=A8=E7=BE=A4=E4=B8=8D=E5=9C=A8=E7=BE=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../breed/mapper/ScSheepDeathMapper.java | 13 ++++++--
.../service/impl/ScSheepDeathServiceImpl.java | 32 +++++++++++++++++--
.../produce/breed/ScSheepDeathMapper.xml | 13 ++++++--
3 files changed, 52 insertions(+), 6 deletions(-)
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
index db7647c..853ab39 100644
--- 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
@@ -70,11 +70,20 @@ public interface ScSheepDeathMapper
public int deleteScSheepDeathByIds(Long[] ids);
/**
- * 更新羊只状态
+ * 更新羊只繁育状态
*
* @param sheepId 羊只ID
- * @param status 状态
+ * @param status 繁育状态
* @return 更新结果
*/
public int updateSheepFileStatus(@Param("sheepId") Long sheepId, @Param("status") String status);
+
+ /**
+ * 新增:更新羊只在群状态
+ *
+ * @param sheepId 羊只ID
+ * @param status 在群状态(1-在群,2-不在群)
+ * @return 更新结果
+ */
+ public int updateSheepStatus(@Param("sheepId") Long sheepId, @Param("status") String status);
}
\ 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
index 12e7afd..6db1659 100644
--- 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
@@ -111,7 +111,13 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
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);
+ Long sheepId = sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null;
+ scSheepDeath.setSheepId(sheepId);
+
+ // 插入死淘记录后,同时更新羊只在群状态为"不在群"(字典值为2)
+ if (sheepId != null) {
+ scSheepDeathMapper.updateSheepStatus(sheepId, "2");
+ }
}
}
@@ -132,7 +138,13 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
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);
+ Long sheepId = sheepInfo.get("sheepId") != null ? Long.valueOf(sheepInfo.get("sheepId").toString()) : null;
+ scSheepDeath.setSheepId(sheepId);
+
+ // 修改死淘记录时,同时更新羊只在群状态为"不在群"(字典值为2)
+ if (sheepId != null) {
+ scSheepDeathMapper.updateSheepStatus(sheepId, "2");
+ }
}
}
@@ -149,6 +161,15 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
@Override
public int deleteScSheepDeathByIds(Long[] ids)
{
+ // 可选:删除死淘记录前,将对应羊只在群状态改回"在群"
+ for (Long id : ids) {
+ ScSheepDeath scSheepDeath = scSheepDeathMapper.selectScSheepDeathById(id);
+ if (scSheepDeath != null && scSheepDeath.getSheepId() != null) {
+ // 恢复羊只在群状态为"在群"(字典值为1)
+ scSheepDeathMapper.updateSheepStatus(scSheepDeath.getSheepId(), "1");
+ }
+ }
+
return scSheepDeathMapper.deleteScSheepDeathByIds(ids);
}
@@ -161,6 +182,13 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
@Override
public int deleteScSheepDeathById(Long id)
{
+ // 可选:删除死淘记录前,将对应羊只在群状态改回"在群"
+ ScSheepDeath scSheepDeath = scSheepDeathMapper.selectScSheepDeathById(id);
+ if (scSheepDeath != null && scSheepDeath.getSheepId() != null) {
+ // 恢复羊只在群状态为"在群"(字典值为1)
+ scSheepDeathMapper.updateSheepStatus(scSheepDeath.getSheepId(), "1");
+ }
+
return scSheepDeathMapper.deleteScSheepDeathById(id);
}
}
\ No newline at end of file
diff --git a/zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml b/zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml
index 71c1458..1444e04 100644
--- a/zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/produce/breed/ScSheepDeathMapper.xml
@@ -52,7 +52,7 @@
where id = #{id}
-
+
select
id as sheepId,
@@ -145,7 +145,7 @@
-
+
UPDATE sheep_file
SET breed = #{status},
@@ -154,4 +154,13 @@
AND is_delete = 0
+
+
+ UPDATE sheep_file
+ SET status = #{status},
+ update_time = NOW()
+ WHERE id = #{sheepId}
+ AND is_delete = 0
+
+
\ No newline at end of file
From 12da9cf3a0c6327d78e4b250d2c032df3c3d4127 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=BC=82=E6=B3=8A?= <1913856125@qq.com>
Date: Sun, 24 Aug 2025 18:23:16 +0800
Subject: [PATCH 6/6] =?UTF-8?q?=E4=BF=AE=E6=94=B92.0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/zhyc/common/utils/DateUtils.java | 1 +
.../module/base/mapper/BasSheepMapper.java | 2 +
.../controller/DiagnosisController.java | 1 -
.../domain/SwMedicineUsageDetails.java | 8 ++
.../module/biosafety/domain/Treatment.java | 4 +
.../biosafety/mapper/TreatmentMapper.java | 3 +
.../service/impl/DiagnosisServiceImpl.java | 84 +++++++++++++++++--
.../service/impl/TreatmentServiceImpl.java | 25 +++++-
.../service/impl/ScSheepDeathServiceImpl.java | 18 ++++
.../biosafety/SwMedicineUsageMapper.xml | 7 +-
.../mapper/biosafety/TreatmentMapper.xml | 14 +++-
11 files changed, 153 insertions(+), 14 deletions(-)
diff --git a/zhyc-common/src/main/java/com/zhyc/common/utils/DateUtils.java b/zhyc-common/src/main/java/com/zhyc/common/utils/DateUtils.java
index c95401e..0570896 100644
--- a/zhyc-common/src/main/java/com/zhyc/common/utils/DateUtils.java
+++ b/zhyc-common/src/main/java/com/zhyc/common/utils/DateUtils.java
@@ -8,6 +8,7 @@ import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
+import java.time.temporal.ChronoUnit;
import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
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 4baaf89..a953f9a 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
@@ -3,6 +3,7 @@ package com.zhyc.module.base.mapper;
import java.util.List;
import com.zhyc.module.base.domain.BasSheep;
+import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
@@ -11,6 +12,7 @@ import org.apache.ibatis.annotations.Param;
* @author ruoyi
* @date 2025-07-15
*/
+@Mapper
public interface BasSheepMapper
{
/**
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
index 20224ad..3b7aff6 100644
--- 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
@@ -88,7 +88,6 @@ public class DiagnosisController extends BaseController
@PostMapping("/adds")
public AjaxResult adds(@RequestBody Diagnosis diagnosis)
{
- System.out.println(diagnosis);
return toAjax(diagnosisService.insertDiagnosisList(diagnosis));
}
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 34e0423..1b67654 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
@@ -1,11 +1,14 @@
package com.zhyc.module.biosafety.domain;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.zhyc.common.annotation.Excel;
import com.zhyc.common.core.domain.BaseEntity;
+import java.util.Date;
+
/**
* 药品使用记录详情对象 sw_medicine_usage_details
*
@@ -46,6 +49,11 @@ public class SwMedicineUsageDetails extends BaseEntity
@Excel(name = "使用方法")
private String usageId;
+ /** 使用时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date usetime;
+
/** 生产厂家 */
@Excel(name = "生产厂家")
private String manufacturer;
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 ae2d1a0..653dc53 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
@@ -89,6 +89,10 @@ public class Treatment extends BaseEntity
/** 兽医 */
@Excel(name = "兽医")
private String veterinary;
+ /** 治疗状态 */
+ @Excel(name = "治疗状态")
+ private String status;
+
/** 药品使用记录id */
@Excel(name = "药品使用记录id")
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
index 643d9a0..1d48767 100644
--- 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
@@ -63,4 +63,7 @@ public interface TreatmentMapper
public int deleteTreatmentByIds(Long[] ids);
int insertTreatmentList(List treatments);
+
+
+ List selectTreatmentStatus(Long sheepId);
}
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 ffa1e60..8447684 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
@@ -1,5 +1,6 @@
package com.zhyc.module.biosafety.service.impl;
+import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -9,13 +10,18 @@ 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.domain.Treatment;
import com.zhyc.module.biosafety.mapper.DiagnosisMapper;
+import com.zhyc.module.biosafety.mapper.TreatmentMapper;
+import org.springframework.beans.BeanUtils;
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业务层处理
*
@@ -31,6 +37,8 @@ public class DiagnosisServiceImpl implements IDiagnosisService
private SheepFileMapper sheepFileMapper;
@Autowired
private BasSheepMapper sheepMapper;
+ @Autowired
+ private TreatmentMapper treatmentMapper;
/**
* 查询诊疗结果
@@ -75,11 +83,24 @@ public class DiagnosisServiceImpl implements IDiagnosisService
String username = SecurityUtils.getLoginUser().getUser().getNickName();
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);
+
+ if (diagnosis.getSheepfoldId() != null)
+ if (!Objects.equals(sheepFile.getSheepfoldId(), diagnosis.getSheepfoldId())) {
+ BasSheep basSheep = new BasSheep();
+ basSheep.setId(diagnosis.getSheepId());
+ basSheep.setSheepfoldId(diagnosis.getSheepfoldId());
+ sheepMapper.updateBasSheep(basSheep);
+ }
+
+// 更改治疗记录的状态
+ Treatment treatment = new Treatment();
+ treatment.setId(diagnosis.getTreatId());
+ if (diagnosis.getResult().equals("0")){
+ treatment.setStatus("-1");
+ treatmentMapper.updateTreatment(treatment);
+ }else if (diagnosis.getResult().equals("1")){
+ treatment.setStatus("2");
+ treatmentMapper.updateTreatment(treatment);
}
// 转入其他羊舍
return diagnosisMapper.insertDiagnosis(diagnosis);
@@ -87,9 +108,60 @@ public class DiagnosisServiceImpl implements IDiagnosisService
@Override
+ @Transactional
public int insertDiagnosisList(Diagnosis diagnosis) {
+ if (diagnosis.getTreatIds() != null && diagnosis.getTreatIds().length > 0){
+ for (Integer treatId : diagnosis.getTreatIds()) {
+ System.out.println(treatId);
+ Treatment treatment = treatmentMapper.selectTreatmentById(Long.valueOf(treatId));
+ System.out.println(treatment);
+// BasSheep basSheep = sheepMapper.selectBasSheepById(treatment.getSheepId());
- return 0;
+ Diagnosis diag = new Diagnosis();
+ BeanUtils.copyProperties(treatment,diag);
+ diag.setResult(diagnosis.getResult());
+ diag.setParity(String.valueOf(treatment.getParity()));
+
+
+ // treatment 和 diagnosis 是你的两个实体对象
+ Date start = treatment.getDatetime(); // 已经是 Date
+ Date end = diagnosis.getDatetime(); // 已经是 Date
+ diag.setBegindate(start);
+ diag.setEnddate(end);
+ long oneDayMillis = 24 * 60 * 60 * 1000L;
+ long days = (end.getTime() / oneDayMillis) - (start.getTime() / oneDayMillis);
+ if (days<0){
+ days=0;
+ }
+
+ diag.setTreatDay(days);
+ diag.setTreatId(treatment.getId());
+
+
+ String username = SecurityUtils.getLoginUser().getUser().getNickName();
+ diag.setCreateBy(username);
+ diag.setCreateTime(DateUtils.getNowDate());
+ diagnosisMapper.insertDiagnosis(diag);
+ treatment.setDiagId(diag.getId());
+
+ // 更改治疗记录的状态
+ if (diagnosis.getResult().equals("0")){
+ treatment.setStatus("-1");
+ treatmentMapper.updateTreatment(treatment);
+ }else if (diagnosis.getResult().equals("1")){
+ treatment.setStatus("2");
+ treatmentMapper.updateTreatment(treatment);
+ }
+ if (diagnosis.getSheepfoldId() != null){
+ BasSheep basSheep = new BasSheep();
+ basSheep.setId(diagnosis.getSheepId());
+ basSheep.setSheepfoldId(diagnosis.getSheepfoldId());
+ sheepMapper.updateBasSheep(basSheep);
+ }
+ }
+ }
+
+ return 1;
}
/**
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 1f5c6ab..abb7d57 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,8 +7,10 @@ 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.Diagnosis;
import com.zhyc.module.biosafety.domain.SwMedicineUsage;
import com.zhyc.module.biosafety.domain.SwMedicineUsageDetails;
+import com.zhyc.module.biosafety.mapper.DiagnosisMapper;
import com.zhyc.module.biosafety.mapper.SwMedicineUsageMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -34,6 +36,8 @@ public class TreatmentServiceImpl implements ITreatmentService
private SwMedicineUsageMapper medicineUsageMapper;
@Autowired
private SheepFileMapper sheepFileMapper;
+ @Autowired
+ private DiagnosisMapper diagnosisMapper;
/**
* 查询治疗记录
@@ -47,7 +51,9 @@ public class TreatmentServiceImpl implements ITreatmentService
Treatment treatment = treatmentMapper.selectTreatmentById(id);
// 获取药品使用记录
SwMedicineUsage swMedicineUsage = medicineUsageService.selectSwMedicineUsageById(treatment.getUsageId());
- treatment.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList());
+ if (swMedicineUsage!=null){
+ treatment.setUsageDetails(swMedicineUsage.getSwMedicineUsageDetailsList());
+ }
return treatment;
}
@@ -176,4 +182,21 @@ public class TreatmentServiceImpl implements ITreatmentService
{
return treatmentMapper.deleteTreatmentById(id);
}
+
+ public void updateTreatmentStatus(Long sheepId) {
+ List treatments=treatmentMapper.selectTreatmentStatus(sheepId);
+ Diagnosis diagnosis = new Diagnosis();
+ for (Treatment treatment : treatments) {
+ if (treatment.getDiagId()!=null){
+ diagnosis.setId(treatment.getDiagId());
+ diagnosis.setResult("-1");
+ diagnosisMapper.updateDiagnosis(diagnosis);
+ if (treatment.getDiagId()!=null){
+ Treatment treat = new Treatment();
+ treat.setId(treatment.getId());
+ treatmentMapper.updateTreatment(treat);
+ }
+ }
+ }
+ }
}
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
index 15ead5a..0d67390 100644
--- 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
@@ -3,11 +3,17 @@ 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.module.biosafety.domain.Diagnosis;
+import com.zhyc.module.biosafety.domain.Treatment;
+import com.zhyc.module.biosafety.mapper.DiagnosisMapper;
+import com.zhyc.module.biosafety.mapper.TreatmentMapper;
+import com.zhyc.module.biosafety.service.impl.TreatmentServiceImpl;
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;
+import org.springframework.transaction.annotation.Transactional;
/**
* 羊只死淘记录Service业务层处理
@@ -20,6 +26,13 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
{
@Autowired
private ScSheepDeathMapper scSheepDeathMapper;
+ @Autowired
+ private DiagnosisMapper diagnosisMapper;
+ @Autowired
+ private TreatmentServiceImpl treatmentService;
+
+
+
/**
* 查询羊只死淘记录
@@ -100,6 +113,7 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
* @return 结果
*/
@Override
+ @Transactional
public int insertScSheepDeath(ScSheepDeath scSheepDeath)
{
// 设置事件类型默认为"死亡"
@@ -110,11 +124,15 @@ public class ScSheepDeathServiceImpl implements IScSheepDeathService
// 如果有管理耳号,查询并设置羊只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);
}
}
+
+ treatmentService.updateTreatmentStatus(scSheepDeath.getSheepId());
scSheepDeath.setCreateTime(DateUtils.getNowDate());
+
return scSheepDeathMapper.insertScSheepDeath(scSheepDeath);
}
diff --git a/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
index e767362..f478719 100644
--- a/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/biosafety/SwMedicineUsageMapper.xml
@@ -31,6 +31,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
@@ -63,7 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select smud.id, medi_usage, medi_id, dosage, unit, usageId, manufacturer, batch_number,
+ select smud.id, medi_usage, medi_id, dosage, unit, usageId,usetime, manufacturer, batch_number,
sm.name
from sw_medicine_usage_details smud
join sw_medicine sm on smud.medi_id = sm.id
@@ -133,9 +134,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- insert into sw_medicine_usage_details( id, medi_usage, medi_id, dosage, unit, usageId, manufacturer, batch_number) values
+ insert into sw_medicine_usage_details( id, medi_usage, medi_id, dosage, unit, usageId,usetime, manufacturer, batch_number) values
- ( #{item.id}, #{item.mediUsage}, #{item.mediId}, #{item.dosage}, #{item.unit}, #{item.usageId}, #{item.manufacturer}, #{item.batchNumber})
+ ( #{item.id}, #{item.mediUsage}, #{item.mediId}, #{item.dosage}, #{item.unit}, #{item.usageId}, #{item.usetime},#{item.manufacturer}, #{item.batchNumber})
\ No newline at end of file
diff --git a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
index 031bb74..5e07a30 100644
--- a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
+++ b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml
@@ -24,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
@@ -32,7 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select t.id, diag_id, sheep_id, variety, sheep_type, month_age, t.gender, t.parity, breed, lact_day, gest_day, datetime, disease_id, disease_pid, veterinary, usage_id, t.comment, t.update_by, t.update_time, t.create_by, t.create_time,
+ select t.id, diag_id, sheep_id, variety, sheep_type, month_age, t.gender, t.parity, breed, lact_day, gest_day, datetime, disease_id, disease_pid, veterinary, usage_id,status, t.comment, t.update_by, t.update_time, t.create_by, t.create_time,
bs.manage_tags,
sd.name disease_name,
sd2.name disease_pname
@@ -48,6 +49,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and sheep_id = #{sheepId}
and datetime between #{params.beginDatetime} and #{params.endDatetime}
and disease_id = #{diseaseId}
+ and status = #{status}
and veterinary = #{veterinary}
ORDER BY datetime DESC
@@ -57,6 +59,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where t.id = #{id}
+
+ select * from sw_treatment where sheep_id = #{sheepId} and status in (0, 1)
+
insert into sw_treatment
@@ -76,6 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
disease_pid,
veterinary,
usage_id,
+ status,
comment,
update_by,
update_time,
@@ -98,6 +104,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{diseasePid},
#{veterinary},
#{usageId},
+ #{status},
#{comment},
#{updateBy},
#{updateTime},
@@ -110,14 +117,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
insert into sw_treatment
(diag_id, sheep_id, variety, sheep_type, month_age, gender,
parity, breed, lact_day, gest_day, datetime,
- disease_id, disease_pid, veterinary, usage_id,
+ disease_id, disease_pid, veterinary, usage_id,status ,
comment, update_by, update_time, create_by, create_time)
values
(#{t.diagId}, #{t.sheepId}, #{t.variety}, #{t.sheepType},
#{t.monthAge}, #{t.gender}, #{t.parity}, #{t.breed},
#{t.lactDay}, #{t.gestDay}, #{t.datetime}, #{t.diseaseId},
- #{t.diseasePid}, #{t.veterinary},#{t.usageId}, #{t.comment},
+ #{t.diseasePid}, #{t.veterinary},#{t.usageId}, #{t.status}, #{t.comment},
#{t.updateBy}, #{t.updateTime},#{t.createBy}, #{t.createTime})
@@ -140,6 +147,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
disease_pid = #{diseasePid},
veterinary = #{veterinary},
usage_id = #{usageId},
+ status = #{status},
comment = #{comment},
update_by = #{updateBy},
update_time = #{updateTime},