From 5aa07d22c04bdfc3f5d6b9648bb7132b25bac849 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Wed, 15 Jun 2022 15:37:03 +0800
Subject: [PATCH] 农资库存管理

---
 src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml                    |   26 ++++
 src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java           |   32 ++++
 src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java                   |    1 
 src/main/java/org/springblade/modules/farmplant/service/FarmProductStockService.java          |    1 
 src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java            |    1 
 src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java    |   39 ++++++
 src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java                 |    1 
 src/main/java/org/springblade/modules/stock/vo/StocksVO.java                                  |    8 +
 src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml             |   26 ++++
 src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml                              |   20 ++
 src/main/java/org/springblade/modules/soldr/vo/SoldrVOs.java                                  |   37 ++++++
 src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml                  |   53 +++++---
 src/main/java/org/springblade/modules/stock/controller/StockController.java                   |   49 +++++++
 src/main/java/org/springblade/common/config/BladeConfiguration.java                           |    1 
 src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java        |   18 +++
 src/main/java/org/springblade/modules/soldr/controller/SoldrController.java                   |   31 +++++
 src/main/java/org/springblade/modules/soldrecord/vo/SoldrecordVO.java                         |    1 
 src/main/java/org/springblade/modules/farmplant/service/impl/FarmProductStockServiceImpl.java |    6 +
 18 files changed, 316 insertions(+), 35 deletions(-)

diff --git a/src/main/java/org/springblade/common/config/BladeConfiguration.java b/src/main/java/org/springblade/common/config/BladeConfiguration.java
index e4715f0..7f69ab9 100644
--- a/src/main/java/org/springblade/common/config/BladeConfiguration.java
+++ b/src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -52,6 +52,7 @@
 		secureRegistry.excludePathPatterns("/swagger-resources/**");
 		secureRegistry.excludePathPatterns("/druid/**");
 		secureRegistry.excludePathPatterns("/farmPlant/**");
+		secureRegistry.excludePathPatterns("/land/land/**");
 		secureRegistry.excludePathPatterns("/farmPlant/**");
 		secureRegistry.excludePathPatterns("/soldr/soldr/**");
 		secureRegistry.excludePathPatterns("/stockrecord/stockrecord/**");
diff --git a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
index f8eb416..bfc863e 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -41,10 +41,7 @@
 import javax.validation.Valid;
 import java.text.DecimalFormat;
 import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 农场养殖记录表控制器
@@ -290,4 +287,31 @@
 		return R.data(map);
 	}
 
+	/**
+	 * 小程序农产品种养统计(累计和)
+	 *
+	 * @return
+	 */
+	@GetMapping("/getFarmPlantStatisticsCountx")
+	public R getFarmPlantStatisticsCountx(FarmPlantVO farmPlant, Query query) {
+		Double num = 0.0;
+		IPage<FarmPlantVO> pages = farmplantService.getFarmPlantStatisticsCountz(Condition.getPage(query), farmPlant);
+		for (int i = 0; i < pages.getRecords().size(); i++) {
+			String area = pages.getRecords().get(i).getArea();
+			Double a = Double.parseDouble(area);
+			DecimalFormat df = new DecimalFormat("#.00");
+			String format = df.format(a);
+			pages.getRecords().get(i).setArea(format);
+			num += a;
+		}
+		Map map = new HashMap();
+		List list = new ArrayList();
+		DecimalFormat df = new DecimalFormat("#.00");
+		String format = df.format(num);
+		map.put("znum", format);
+		list.add(map);
+		list.add(pages);
+		return R.data(list);
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java b/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
index 5816a2b..11a101b 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmProductStockController.java
@@ -16,12 +16,14 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
-import java.util.Date;
+import java.text.DecimalFormat;
+import java.util.*;
 
 /**
  * 农产品库存控制器
- * @since 2022-05-18
+ *
  * @author zhongrj
+ * @since 2022-05-18
  */
 @RestController
 @AllArgsConstructor
@@ -65,6 +67,7 @@
 
 	/**
 	 * 统计产量
+	 *
 	 * @param farmProductStock
 	 * @return
 	 */
@@ -120,8 +123,38 @@
 	 * 大屏产量统计
 	 */
 	@PostMapping("/selctProductCount")
-	public R selctProductCount( String year) {
+	public R selctProductCount(String year) {
 		return R.data(farmProductStockService.selctProductCount(year));
 	}
 
+	/**
+	 * 小程序统计产量详情
+	 *
+	 * @param farmProductStock
+	 * @return
+	 */
+	@GetMapping("/statisticsProductx")
+	public R statisticsProductx(FarmProductStockVO farmProductStock, Query query) {
+		Double zwei = 0.0;
+		IPage<FarmProductStockVO> pages = farmProductStockService.statisticsProductx(Condition.getPage(query), farmProductStock);
+		for (int i = 0; i < pages.getRecords().size(); i++) {
+			String weight = pages.getRecords().get(i).getWeight();
+			Double a=Double.parseDouble(weight);
+			DecimalFormat df = new DecimalFormat("#.00");
+			String format = df.format(a);
+			//产量
+			Double wei = Double.parseDouble(format);
+			pages.getRecords().get(i).setWeight(format);
+			zwei += wei;
+		}
+		Map map = new HashMap();
+		List list = new ArrayList();
+		DecimalFormat df = new DecimalFormat("#.00");
+		String format = df.format(zwei);
+		map.put("zwei", format);
+		list.add(map);
+		list.add(pages);
+		return R.data(list);
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java
index 73b8ed8..f21ab63 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java
@@ -27,6 +27,7 @@
 	 * @return
 	 */
 	List<FarmPlantVO> selectFarmPlantPage(@Param("page") IPage page, @Param("farmPlant") FarmPlantVO farm);
+	List<FarmPlantVO> getFarmPlantStatisticsCountz(@Param("page") IPage page, @Param("farmPlant") FarmPlantVO farm);
 
 	/**
 	 * @param page
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
index 31aaa60..3f81463 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -275,5 +275,29 @@
         </if>
     </select>
 
-
+    <!--小程序查询农场养殖记录数据-->
+    <select id="getFarmPlantStatisticsCountz" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
+        SELECT
+        sfp.strain_id,
+        ss.strain_name strainName,
+        sum( sl.land_area ) area,
+        land_unit landUnit
+        FROM
+        sys_farm_plant sfp
+        LEFT JOIN sys_strain ss ON ss.id = sfp.strain_id
+        LEFT JOIN sys_land sl ON sl.id = sfp.land_id where 1=1
+        <if test="farmPlant.startTime!=null and farmPlant.startTime!=''">
+            and sfp.transplan_time &gt;= #{farmPlant.startTime}
+        </if>
+        <if test="farmPlant.endTime!=null and farmPlant.endTime!=''">
+            and sfp.transplan_time &lt;= #{farmPlant.endTime}
+        </if>
+        <if test="farmPlant.deptId!=null and farmPlant.deptId!=''">
+            and sfp.dept_id = #{farmPlant.deptId}
+        </if>
+        <if test="farmPlant.tenantId!=null and farmPlant.tenantId!=''">
+            and sfp.tenant_id = #{farmPlant.tenantId}
+        </if>
+        group by sfp.strain_id,strain_name,land_unit
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
index c2ae41f..0d6593a 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.java
@@ -32,5 +32,6 @@
 	 * @return
 	 */
 	List<FarmProductStockVO> statisticsProduct(@Param("farmProductStock") FarmProductStockVO farmProductStock);
+	List<FarmProductStockVO> statisticsProductx(@Param("page") IPage page, @Param("farmProductStock") FarmProductStockVO farmProductStock);
 	Map<String, String> selctProductCount(String year);
 }
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
index 2ce7dbc..10e2ee0 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -64,4 +64,30 @@
         WHERE
             YEAR ( s.time ) =#{year}
     </select>
+
+    <!--小程序农产品库存详情数据-->
+    <select id="statisticsProductx" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
+        select sfps.strain_id strainId,sfps.weight,ss.url,ss.strain_name strainName from
+        sys_farm_product_stock sfps
+        left join sys_strain ss on ss.id = sfps.strain_id
+        where 1=1
+        <if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
+            and sfps.strain_id = #{farmProductStock.strainId}
+        </if>
+        <if test="farmProductStock.leaves!=null and farmProductStock.leaves!=''">
+            and sfps.leaves = #{farmProductStock.leaves}
+        </if>
+        <if test="farmProductStock.startTime!=null and farmProductStock.startTime!=''">
+            and sfps.time &gt;= #{farmProductStock.startTime}
+        </if>
+        <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
+            and sfps.time &lt;= #{farmProductStock.endTime}
+        </if>
+        <if test="farmProductStock.deptId!=null and farmProductStock.deptId!=''">
+            and sfps.dept_id = #{farmProductStock.deptId}
+        </if>
+        <if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
+            and sfps.tenant_id = #{farmProductStock.tenantId}
+        </if>
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java b/src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java
index 264f617..4fab270 100644
--- a/src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java
+++ b/src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java
@@ -26,6 +26,7 @@
 	 * @return
 	 */
 	IPage<FarmPlantVO> selectFarmPlantPage(IPage<FarmPlantVO> page, FarmPlantVO farm);
+	IPage<FarmPlantVO> getFarmPlantStatisticsCountz(IPage<FarmPlantVO> page, FarmPlantVO farm);
 
 	/**
 	 * 农产品种养统计
diff --git a/src/main/java/org/springblade/modules/farmplant/service/FarmProductStockService.java b/src/main/java/org/springblade/modules/farmplant/service/FarmProductStockService.java
index a283d0e..5ae263b 100644
--- a/src/main/java/org/springblade/modules/farmplant/service/FarmProductStockService.java
+++ b/src/main/java/org/springblade/modules/farmplant/service/FarmProductStockService.java
@@ -30,5 +30,6 @@
 	 * @return
 	 */
 	FarmProductStockVO statisticsProduct(FarmProductStockVO farmProductStock);
+	IPage<FarmProductStockVO> statisticsProductx(IPage<FarmProductStockVO> page, FarmProductStockVO farmProductStock);
 	Map<String, String> selctProductCount(String year);
 }
diff --git a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
index 4dd6b28..776c7da 100644
--- a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
+++ b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
@@ -36,6 +36,24 @@
 		List<FarmPlantVO> farmPlantVOS = baseMapper.selectFarmPlantPage(page, farm);
 		//遍历
 		farmPlantVOS.forEach(farmPlantVO -> {
+			if (farmPlantVO.getLandUnit().equals("0")) {
+				farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 1));
+			}
+			if (farmPlantVO.getLandUnit().equals("1")) {
+				farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.1));
+			}
+			if (farmPlantVO.getLandUnit().equals("2")) {
+				farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.0015));
+			}
+		});
+		return page.setRecords(farmPlantVOS);
+	}
+
+	@Override
+	public IPage<FarmPlantVO> getFarmPlantStatisticsCountz(IPage<FarmPlantVO> page, FarmPlantVO farm) {
+		List<FarmPlantVO> farmPlantVOS = baseMapper.getFarmPlantStatisticsCountz(page, farm);
+		//遍历
+		farmPlantVOS.forEach(farmPlantVO -> {
 			if (farmPlantVO.getLandUnit().equals("1")) {
 				farmPlantVO.setArea(String.format("%.2f", Double.parseDouble(farmPlantVO.getArea()) * 0.1));
 			}
diff --git a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmProductStockServiceImpl.java b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmProductStockServiceImpl.java
index 6a4058f..20120b1 100644
--- a/src/main/java/org/springblade/modules/farmplant/service/impl/FarmProductStockServiceImpl.java
+++ b/src/main/java/org/springblade/modules/farmplant/service/impl/FarmProductStockServiceImpl.java
@@ -51,6 +51,12 @@
 	}
 
 	@Override
+	public IPage<FarmProductStockVO> statisticsProductx(IPage<FarmProductStockVO> page, FarmProductStockVO farmProductStock) {
+		return page.setRecords(baseMapper.statisticsProductx(page, farmProductStock));
+	}
+
+
+	@Override
 	public Map<String, String> selctProductCount(String year) {
 		return baseMapper.selctProductCount(year);
 	}
diff --git a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
index 57558d9..2049187 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -90,26 +90,38 @@
     <select id="selectZAre" resultType="java.util.HashMap">
         SELECT IFNULL(land_area, 0) as area, IFNULL(land_unit, 0) as unit
         FROM sys_land
-        WHERE is_deleted = 0 and  dept_id=#{deprId}
+        WHERE is_deleted = 0
+        <if test="deptId!= null and deptId!=''">
+            and dept_id=#{deptId}
+        </if>
     </select>
     <!--土地使用面积-->
     <select id="selectSAre" resultType="java.util.HashMap">
         SELECT IFNULL(land_area, 0) as area, IFNULL(land_unit, 0) as unit
         FROM sys_land
         WHERE is_deleted = 0
-          and type = 0 and  dept_id=#{deprId}
+        and type = 0
+        <if test="deptId!= null and deptId!=''">
+            and dept_id=#{deptId}
+        </if>
     </select>
     <!--土地未使用面积-->
     <select id="selectWAre" resultType="java.util.HashMap">
         SELECT IFNULL(land_area, 0) as area, IFNULL(land_unit, 0) as unit
         FROM sys_land
         WHERE is_deleted = 0
-          and type = 1 and  dept_id=#{deprId}
+        and type = 1
+        <if test="deptId!= null and deptId!=''">
+            and dept_id=#{deptId}
+        </if>
     </select>
     <select id="selectNum" resultType="java.util.HashMap">
         SELECT strain_id
         FROM `sys_farm_plant`
-        WHERE status = 1 and dept_id=#{deprId}
+        WHERE status = 1
+        <if test="deptId!= null and deptId!=''">
+            and dept_id=#{deptId}
+        </if>
         GROUP BY strain_id
     </select>
 
diff --git a/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java b/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
index 3aed84d..fe17e69 100644
--- a/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
+++ b/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
@@ -28,6 +28,7 @@
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.soldr.vo.SoldrVOs;
 import org.springblade.modules.soldrecord.service.ISoldrecordService;
 import org.springblade.modules.stock.entity.Stock;
 import org.springblade.modules.stock.service.IStockService;
@@ -172,4 +173,34 @@
 	}
 
 
+	@GetMapping("/outs")
+	public R outs(SoldrVOs soldrVOs) {
+		//如果等于就修改并删除
+		if (soldrVOs.getType().equals("0")) {
+			Stock stock = new Stock();
+			stock.setId(soldrVOs.getId());
+			Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
+			Integer amount = detail1.getAmount();
+			stock.setAmount(amount + soldrVOs.getNum());
+			stockService.Updaet(stock);
+			//删除
+			soldrService.del(soldrVOs.getId());
+		}
+		//如果小于就修改
+		else {
+			Soldr soldr = new Soldr();
+			soldr.setSid(soldrVOs.getId());
+			Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
+			Integer amount1 = detail.getAmount1();
+			soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId());
+			Stock stock = new Stock();
+			stock.setId(soldrVOs.getId());
+			Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
+			Integer amount = detail1.getAmount();
+			stock.setAmount(amount + soldrVOs.getNum());
+			stockService.Updaet(stock);
+		}
+		return R.success("退回成功");
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/soldr/vo/SoldrVOs.java b/src/main/java/org/springblade/modules/soldr/vo/SoldrVOs.java
new file mode 100644
index 0000000..09987d5
--- /dev/null
+++ b/src/main/java/org/springblade/modules/soldr/vo/SoldrVOs.java
@@ -0,0 +1,37 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.soldr.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.soldr.entity.Soldr;
+
+/**
+ * 已出库存数量记录表视图实体类
+ *
+ * @author BladeX
+ * @since 2022-05-27
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class SoldrVOs extends Soldr {
+	private static final long serialVersionUID = 1L;
+	int  num;
+	Long id;
+	String type;
+
+}
diff --git a/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml b/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
index 8874abc..07059c2 100644
--- a/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
+++ b/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
@@ -67,25 +67,34 @@
     <!--查看变更明细-->
     <select id="selectListbg" resultType="org.springblade.modules.soldrecord.vo.SoldrecordVO">
         SELECT st.stock_id1,
-               st.specs1,
-               st.amount1,
-               stf.factory_name      AS factoryName,
-               stf.type as stype,
-               d.dict_value          AS dic1,
-               c.dict_value          AS dic2,
-               b.dict_value          AS dic3,
-               stf.agricultural_name AS agrname
+        st.specs1,
+        st.amount1,
+        st.create_time,
+        f.real_name as username,
+        stf.factory_name AS factoryName,
+        stf.type as stype,
+        d.dict_value AS dic1,
+        c.dict_value AS dic2,
+        b.dict_value AS dic3,
+        stf.agricultural_name AS agrname
         FROM sys_soldrecord st
-                 LEFT JOIN sys_stockfactory stf ON stf.id = st.stock_id1
-                 LEFT JOIN (SELECT dict_key, dict_value
-                            FROM blade_dict_biz
-                            WHERE CODE = 'stockSpecs1' AND is_deleted = 0) d ON d.dict_key = st.specs_val1
-                 LEFT JOIN (SELECT dict_key, dict_value
-                            FROM blade_dict_biz
-                            WHERE CODE = 'stockSpecs2' AND is_deleted = 0) c ON c.dict_key = st.specs_val2
-                 LEFT JOIN (SELECT dict_key, dict_value
-                            FROM blade_dict_biz
-                            WHERE CODE = 'stockPurchase1' AND is_deleted = 0) b ON b.dict_key = st.type
+        LEFT JOIN sys_stockfactory stf ON stf.id = st.stock_id1
+        LEFT JOIN (SELECT dict_key, dict_value
+        FROM blade_dict_biz
+        WHERE CODE = 'stockSpecs1' AND is_deleted = 0 <if test="soldrecord.codes!=null and soldrecord.codes != ''">
+        AND blade_dict_biz.tenant_id = #{soldrecord.codes}
+    </if>) d ON d.dict_key = st.specs_val1
+        LEFT JOIN (SELECT dict_key, dict_value
+        FROM blade_dict_biz
+        WHERE CODE = 'stockSpecs2' AND is_deleted = 0 <if test="soldrecord.codes!=null and soldrecord.codes != ''">
+        AND blade_dict_biz.tenant_id = #{soldrecord.codes}
+    </if>) c ON c.dict_key = st.specs_val2
+        LEFT JOIN (SELECT dict_key, dict_value
+        FROM blade_dict_biz
+        WHERE CODE = 'stockPurchase1' AND is_deleted = 0 <if test="soldrecord.codes!=null and soldrecord.codes != ''">
+        AND blade_dict_biz.tenant_id = #{soldrecord.codes}
+    </if>) b ON b.dict_key = st.type
+        LEFT JOIN ( SELECT id, real_name FROM blade_user ) f ON f.id=st.create_user
         WHERE st.is_deleted = 0
         <if test="soldrecord.stockId1!=null and soldrecord.stockId1 != ''">
             and st.stock_id1 = #{soldrecord.stockId1}
@@ -93,11 +102,15 @@
     </select>
 
     <update id="updateSold">
-        update sys_soldr set amount1=#{amount} where sid = #{id}
+        update sys_soldr
+        set amount1=#{amount}
+        where sid = #{id}
     </update>
 
     <delete id="delc">
-        delete from sys_soldrecord where stock_id1 = #{id}
+        delete
+        from sys_soldrecord
+        where stock_id1 = #{id}
     </delete>
 
 </mapper>
diff --git a/src/main/java/org/springblade/modules/soldrecord/vo/SoldrecordVO.java b/src/main/java/org/springblade/modules/soldrecord/vo/SoldrecordVO.java
index a040b22..28434ca 100644
--- a/src/main/java/org/springblade/modules/soldrecord/vo/SoldrecordVO.java
+++ b/src/main/java/org/springblade/modules/soldrecord/vo/SoldrecordVO.java
@@ -38,4 +38,5 @@
 	String spn;
 	String agrname;
 	Integer cnum;
+	String codes;
 }
diff --git a/src/main/java/org/springblade/modules/stock/controller/StockController.java b/src/main/java/org/springblade/modules/stock/controller/StockController.java
index 4e6034d..f7e4c2b 100644
--- a/src/main/java/org/springblade/modules/stock/controller/StockController.java
+++ b/src/main/java/org/springblade/modules/stock/controller/StockController.java
@@ -455,16 +455,59 @@
 			rknu += rknum;
 			cknu += cknum;
 		}
-		Map map= new HashMap();
+		Map map = new HashMap();
 		DecimalFormat df = new DecimalFormat("#0.000");
 		String format = df.format(rknu);
 		Double a = Double.parseDouble(format);
 		String format1 = df.format(cknu);
 		double b = Double.parseDouble(format1);
-		map.put("rknum",a);
-		map.put("cknum",b);
+		map.put("rknum", a);
+		map.put("cknum", b);
 		return R.data(map);
 	}
 
+	/**
+	 * 小程序农资数据统计详情
+	 *
+	 * @param stock
+	 * @param query
+	 * @return
+	 */
+	@PostMapping("/pagenums")
+	public R pagenums(StocksVO stock, Query query) {
+		Double rknu = 0.0;
+		Double cknu = 0.0;
+		IPage<StocksVO> pages = stockService.slectNum(Condition.getPage(query), stock);
+		for (int i = 0; i < pages.getRecords().size(); i++) {
+			Double cgnum = pages.getRecords().get(i).getCgnum();
+			Double dbrknum = pages.getRecords().get(i).getDbrknum();
+			double v = cgnum + dbrknum;
+			pages.getRecords().get(i).setRknum(v);
+			Double lycknum = pages.getRecords().get(i).getLycknum();
+			Double dbcknum = pages.getRecords().get(i).getDbcknum();
+			Double bfcknum = pages.getRecords().get(i).getBfcknum();
+			double v1 = lycknum + dbcknum + bfcknum;
+			pages.getRecords().get(i).setCknum(v1);
+		}
+		for (int j = 0; j < pages.getRecords().size(); j++) {
+			Double rknum = pages.getRecords().get(j).getRknum();
+			Double cknum = pages.getRecords().get(j).getCknum();
+			rknu += rknum;
+			cknu += cknum;
+		}
+		Map map = new HashMap();
+		DecimalFormat df = new DecimalFormat("#0.000");
+		String format = df.format(rknu);
+		Double a = Double.parseDouble(format);
+		String format1 = df.format(cknu);
+		double b = Double.parseDouble(format1);
+		map.put("rknum", a);
+		map.put("cknum", b);
+		List list = new ArrayList();
+		list.add(map);
+		list.add(pages);
+		return R.data(list);
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/stock/vo/StocksVO.java b/src/main/java/org/springblade/modules/stock/vo/StocksVO.java
index ab64118..2b3a5dc 100644
--- a/src/main/java/org/springblade/modules/stock/vo/StocksVO.java
+++ b/src/main/java/org/springblade/modules/stock/vo/StocksVO.java
@@ -48,5 +48,13 @@
 	 * 结束时间
 	 */
 	private String endTime;
+	/**
+	 * 总的入库数量
+	 */
+	Double zrknum;
+	/**
+	 * 总的出库数量
+	 */
+	Double zcknum;
 
 }

--
Gitblit v1.9.3