From cfd0cb4967919904180c3a0d470b5deb5b207419 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Fri, 19 Aug 2022 11:43:09 +0800
Subject: [PATCH] 数据统计产量统计统计采收记录表

---
 src/main/java/org/springblade/modules/recovery/service/impl/RecoveryServiceImpl.java |    5 +++++
 src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.java            |    2 ++
 src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.xml             |   16 ++++++++++++++++
 src/main/java/org/springblade/modules/recovery/service/RecoveryService.java          |    2 ++
 src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java                    |   10 ++++++++++
 src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java    |    9 +++++++++
 6 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java b/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
index 5163eec..c8dd772 100644
--- a/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
+++ b/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
@@ -21,6 +21,7 @@
 import org.springblade.modules.recovery.entity.Recovery;
 import org.springblade.modules.recovery.service.RecoveryService;
 import org.springblade.modules.recovery.vo.RecoveryVO;
+import org.springblade.modules.stock.vo.StocksVO;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
@@ -199,6 +200,14 @@
 		return R.status(recoveryService.removeByIds(Func.toLongList(ids)));
 	}
 
+	/**
+	 * 数据统计采收详情
+	 */
+	@PostMapping("/recoveryStatistics")
+	public  R<IPage<RecoveryVO>> recoveryStatistics(RecoveryVO recoveryVO, Query query){
+		IPage<RecoveryVO> pages = recoveryService.recoveryStatistics(Condition.getPage(query), recoveryVO);
+		return R.data(pages);
+	}
 
 	/**
 	 * 小程序采收详情列表自定义分页
diff --git a/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.java b/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.java
index 3cb4c5a..45514dd 100644
--- a/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.java
+++ b/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.java
@@ -38,4 +38,6 @@
 	 * @return
 	 */
     RecoveryVO getRecoveryDetail(@Param("recoveryId") Integer recoveryId);
+
+    IPage<RecoveryVO> recoveryStatistics(IPage<Object> page, @Param("recovery") RecoveryVO recoveryVO);
 }
diff --git a/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.xml b/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.xml
index 7d3f7b1..27f5de7 100644
--- a/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.xml
+++ b/src/main/java/org/springblade/modules/recovery/mapper/RecoveryMapper.xml
@@ -56,4 +56,20 @@
         left join sys_land sl on sl.id = sr.land_id
         where sr.id = #{recoveryId}
     </select>
+    <select id="recoveryStatistics" resultType="org.springblade.modules.recovery.vo.RecoveryVO">
+        SELECT sr.strain_id,SUM(sr.weight) AS weight,sr.dept_id,strain.strain_name,strain.url
+        FROM sys_recovery sr
+        LEFT JOIN sys_strain strain ON sr.strain_id = strain.id
+        WHERE 1=1
+        <if test="recovery.deptId !=null and recovery.deptId !=''">
+            AND sr.dept_id = #{recovery.deptId}
+        </if>
+        <if test="recovery.startTime != null and recovery.startTime !=''">
+            AND DATE_FORMAT(sr.create_time,'%Y-%m-%d') &gt;= #{recovery.startTime}
+        </if>
+        <if test="recovery.endTime != null and recovery.endTime !=''">
+            and DATE_FORMAT(sr.create_time,'%Y-%m-%d') &lt;= #{recovery.endTime}
+        </if>
+        GROUP BY strain_id
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/recovery/service/RecoveryService.java b/src/main/java/org/springblade/modules/recovery/service/RecoveryService.java
index 07600b6..d915fc0 100644
--- a/src/main/java/org/springblade/modules/recovery/service/RecoveryService.java
+++ b/src/main/java/org/springblade/modules/recovery/service/RecoveryService.java
@@ -35,4 +35,6 @@
 	 * @return
 	 */
 	RecoveryVO getRecoveryDetail(Integer recoveryId);
+
+    IPage<RecoveryVO> recoveryStatistics(IPage<Object> page, RecoveryVO recoveryVO);
 }
diff --git a/src/main/java/org/springblade/modules/recovery/service/impl/RecoveryServiceImpl.java b/src/main/java/org/springblade/modules/recovery/service/impl/RecoveryServiceImpl.java
index 0ec4e11..9ad3024 100644
--- a/src/main/java/org/springblade/modules/recovery/service/impl/RecoveryServiceImpl.java
+++ b/src/main/java/org/springblade/modules/recovery/service/impl/RecoveryServiceImpl.java
@@ -45,4 +45,9 @@
 	public RecoveryVO getRecoveryDetail(Integer recoveryId) {
 		return baseMapper.getRecoveryDetail(recoveryId);
 	}
+
+	@Override
+	public IPage<RecoveryVO> recoveryStatistics(IPage<Object> page, RecoveryVO recoveryVO) {
+		return baseMapper.recoveryStatistics(page,recoveryVO);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java b/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
index aa5f08e..fc3212d 100644
--- a/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
+++ b/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
@@ -41,4 +41,14 @@
 	 */
 	private String realName;
 
+	private String weight;
+	/**
+	 * 开始时间
+	 */
+	private String startTime;
+
+	/**
+	 * 结束时间
+	 */
+	private String endTime;
 }

--
Gitblit v1.9.3