From 568b782afa3be4b55f617e7330aa1f2c0e54e693 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 27 Jun 2022 09:03:01 +0800
Subject: [PATCH] 地块管理

---
 src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java               |    4 
 src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java          |   58 ++++
 src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java             |    2 
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.java                            |    4 
 src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java               |   18 +
 src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml                 |    4 
 src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java |    5 
 src/main/java/org/springblade/modules/task/vo/TaskVO.java                                    |    4 
 src/main/java/org/springblade/modules/stock/controller/StockController.java                  |    4 
 src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml             |   20 +
 src/main/java/org/springblade/modules/task/entity/Task.java                                  |   15 +
 src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java           |    3 
 src/main/java/org/springblade/modules/soldr/entity/Soldr.java                                |    6 
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml                             |   28 ++
 src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java                          |    5 
 src/main/java/org/springblade/modules/stock/mapper/StockMapper.java                          |    2 
 src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml                   |    7 
 src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java    |    9 
 src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml                             |    4 
 src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java         |    1 
 src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java           |   77 ++++++
 src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java                 |    5 
 src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java                |    2 
 src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java      |   46 ++-
 src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml                           |   48 +++
 src/main/java/org/springblade/modules/task/controller/TaskController.java                    |   33 ++
 src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java            |   34 ++
 src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java            |    1 
 src/main/java/org/springblade/modules/recovery/entity/Recovery.java                          |    4 
 src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java     |    4 
 src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java                    |    1 
 src/main/java/org/springblade/common/config/BladeConfiguration.java                          |    5 
 src/main/java/org/springblade/modules/farmplant/controller/StrainController.java             |   12 +
 src/main/java/org/springblade/modules/soldr/controller/SoldrController.java                  |   91 +++++++
 src/main/java/org/springblade/modules/task/service/ITaskService.java                         |    2 
 src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java                            |    4 
 src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java                         |    2 
 src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java                           |    1 
 src/main/java/org/springblade/modules/stock/service/IStockService.java                       |    2 
 src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml               |    1 
 src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java                          |    4 
 src/main/java/org/springblade/modules/soldr/service/ISoldrService.java                       |    6 
 src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml                           |   73 ++++-
 43 files changed, 575 insertions(+), 86 deletions(-)

diff --git a/src/main/java/org/springblade/common/config/BladeConfiguration.java b/src/main/java/org/springblade/common/config/BladeConfiguration.java
index b97c1ea..4c5452a 100644
--- a/src/main/java/org/springblade/common/config/BladeConfiguration.java
+++ b/src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -39,6 +39,7 @@
 		SecureRegistry secureRegistry = new SecureRegistry();
 		secureRegistry.setEnabled(true);
 		secureRegistry.excludePathPatterns("/blade-auth/**");
+		secureRegistry.excludePathPatterns("/blade-resource/oss/endpoint/**");
 		secureRegistry.excludePathPatterns("/blade-system/menu/routes");
 		secureRegistry.excludePathPatterns("/blade-system/menu/auth-routes");
 		secureRegistry.excludePathPatterns("/blade-system/menu/top-menu");
@@ -54,7 +55,11 @@
 		secureRegistry.excludePathPatterns("/farmPlant/**");
 		secureRegistry.excludePathPatterns("/land/land/**");
 		secureRegistry.excludePathPatterns("/farmPlant/**");
+		secureRegistry.excludePathPatterns("/task/task/**");
+		secureRegistry.excludePathPatterns("/recovery/**");
+		secureRegistry.excludePathPatterns("/blade-user/**");
 		secureRegistry.excludePathPatterns("/soldrecord/soldrecord/**");
+		secureRegistry.excludePathPatterns("/stockfactory/stockfactory/**");
 		secureRegistry.excludePathPatterns("/soldr/soldr/**");
 		secureRegistry.excludePathPatterns("/stockrecord/stockrecord/**");
 		secureRegistry.excludePathPatterns("/blade-resource/oss/endpoint/**");
diff --git a/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java b/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
index 55143a2..71528a9 100644
--- a/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
+++ b/src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
@@ -29,6 +29,11 @@
 import org.springblade.modules.farm.entity.FarmingRecord;
 import org.springblade.modules.farm.service.FarmingRecordService;
 import org.springblade.modules.farm.vo.FarmingRecordVO;
+import org.springblade.modules.soldr.entity.Soldr;
+import org.springblade.modules.soldr.service.ISoldrService;
+import org.springblade.modules.soldrecord.service.ISoldrecordService;
+import org.springblade.modules.stockfactory.entity.Stockfactory;
+import org.springblade.modules.stockfactory.service.IStockfactoryService;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
@@ -36,8 +41,9 @@
 
 /**
  * 农事记录控制器
- * @since 2022-05-13
+ *
  * @author zhongrj
+ * @since 2022-05-13
  */
 @RestController
 @AllArgsConstructor
@@ -45,6 +51,9 @@
 public class FarmingRecordController extends BladeController {
 
 	private final FarmingRecordService farmService;
+	private final ISoldrService soldrService;
+	private final ISoldrecordService soldrecordService;
+	private final IStockfactoryService stockfactoryService;
 
 	/**
 	 * 详情
@@ -85,8 +94,66 @@
 	@PostMapping("/save")
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入farm")
-	public R save(@Valid @RequestBody FarmingRecord farm) {
+	public R save(@Valid @RequestBody FarmingRecordVO farm) {
+		//通过已出资农资id查询已出农资详情
+		Soldr soldr = new Soldr();
 		farm.setCreateTime(new Date());
+		if(farm.getStockId()!=""){
+			Long id = Long.valueOf(farm.getStockId());
+			soldr.setId(id);
+			//返回已出农资详情
+			Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
+			//统计公斤
+			Integer specsValue1 = detail.getSpecsVal1();
+			String specs1 = detail.getSpecs1();
+			int spe = Integer.parseInt(specs1);
+			//已出农资数量
+			Integer amount1 = detail.getAmount1();
+			double v = 0;
+			//克
+			if (specsValue1 == 0) {
+				v = farm.getSnum() * spe * 0.001;
+			}
+			//斤
+			if (specsValue1 == 1) {
+				v = farm.getSnum() * spe * 0.5;
+			}
+			//公斤
+			if (specsValue1 == 2) {
+				v = farm.getSnum() * spe;
+			}
+			//吨
+			if (specsValue1 == 3) {
+				v = farm.getSnum() * spe * 1000;
+			}
+			//毫升
+			if (specsValue1 == 4) {
+				//毫升换成升
+				double s = farm.getSnum() * spe * 0.001;
+				//升换成公斤
+				v = s;
+			}
+			//升
+			if (specsValue1 == 5) {
+				v = farm.getSnum() * spe;
+			}
+		    Long ids = Long.valueOf(detail.getStockId1());
+			farm.setStockId(detail.getStockId1());
+			farm.setCensus(v);
+			farm.setCreateTime(new Date());
+			Stockfactory stockfactory = new Stockfactory();
+			stockfactory.setId(ids);
+			Stockfactory detailstock = stockfactoryService.getOne(Condition.getQueryWrapper(stockfactory));
+			String agriculturalName = detailstock.getAgriculturalName();
+			String content=agriculturalName+"   "+v+"公斤";
+			farm.setContent(content);
+			//使用农资数量等于已出农资数量
+			if (farm.getSnum() == detail.getAmount1()) {
+				soldrService.dels(id);
+			} else {
+				soldrecordService.updateSold(amount1 - farm.getSnum(), id, detail.getCensus() - v);
+			}
+		}
 		return R.status(farmService.save(farm));
 	}
 
@@ -124,19 +191,21 @@
 
 	/**
 	 * 查询统计本年农事记录操作总数
+	 *
 	 * @return
 	 */
 	@GetMapping("/getFarmingCount")
-	public R getFarmingCount(){
+	public R getFarmingCount() {
 		return R.data(farmService.getFarmingCount());
 	}
 
 	/**
 	 * 查询统计本年农事记录操作,按分类统计
+	 *
 	 * @return
 	 */
 	@GetMapping("/getFarmingStatis")
-	public R getFarmingStatis(){
+	public R getFarmingStatis() {
 		return R.data(farmService.getFarmingStatis());
 	}
 
diff --git a/src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java b/src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java
index b0d64af..6286a03 100644
--- a/src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java
+++ b/src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java
@@ -94,5 +94,7 @@
 	 * 租户id
 	 */
 	private String tenantId;
+	private String content;
+	private Double census;
 
 }
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
index 65dee27..7ebbece 100644
--- a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
@@ -28,10 +28,10 @@
     <!--详情信息(自定义查询)-->
     <select id="getFarmInfo" resultType="org.springblade.modules.farm.vo.FarmVO">
         select
-        id,farm_name,farm_address,farm_area,slogan,introduce,picture,ST_ASTEXT(position) as position,user_id
+        id,farm_name,farm_address,farm_area,slogan,introduce,picture,ST_ASTEXT(position) as position,dept_id
         from
         sys_farm
         where 1=1
-        and user_id = #{farm.userId}
+        and dept_id = #{farm.deptId}
     </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java b/src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java
index 62ba4a2..4a47038 100644
--- a/src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java
+++ b/src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java
@@ -22,4 +22,5 @@
 	 * 操作类型名称
 	 */
 	private String typeName;
+	private Integer snum;
 }
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 bfc863e..74c080c 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -19,13 +19,19 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
 import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.modules.farm.entity.FarmingRecord;
 import org.springblade.modules.farm.service.FarmingRecordService;
@@ -35,8 +41,12 @@
 import org.springblade.modules.farmplant.vo.StrainVO;
 import org.springblade.modules.lang.entity.Land;
 import org.springblade.modules.lang.service.ILandService;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.vo.UserVO;
+import org.springblade.modules.system.wrapper.UserWrapper;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
 import java.text.DecimalFormat;
@@ -110,6 +120,8 @@
 			record.setCreateTime(new Date());
 			record.setJobWay(farmPlant.getJobWay());
 			record.setTime(farmPlant.getTransplanTime());
+			record.setDeptId(farmPlant.getDeptId());
+			record.setTenantId(farmPlant.getTenantId());
 			if (farmPlant.getPlantingWay().equals("0")) {
 				//移栽
 				record.setType("10");
@@ -120,7 +132,7 @@
 			}
 			record.setLandId(farmPlant.getLandId());
 			record.setOperator(farmPlant.getCreateUser());
-			record.setRemarks("品种: " + farmPlant.getVarieties());
+			record.setContent("品种: " + farmPlant.getVarieties());
 			//新增
 			farmingRecordService.save(record);
 
@@ -314,4 +326,48 @@
 		return R.data(list);
 	}
 
+
+	/**
+	 * 自定义分页
+	 */
+	@GetMapping("/pagex")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入farmPlant")
+	public R<IPage<FarmPlantVO>> pagex(FarmPlantVO farmPlant, Query query) {
+		IPage<FarmPlantVO> pages = farmplantService.selectFarmPlantPage(Condition.getPage(query), farmPlant);
+		for (int i = 0; i < pages.getRecords().size(); i++) {
+			//修改种养类型
+			String plantingWay = pages.getRecords().get(i).getPlantingWay();
+			if (plantingWay.equals("0")) {
+				pages.getRecords().get(i).setTy("移栽");
+			}
+			else if (plantingWay.equals("1")) {
+				pages.getRecords().get(i).setTy("直播");
+			} else {
+				pages.getRecords().get(i).setTy("秧苗");
+			}
+			//计算天数
+			Date transplanTime = pages.getRecords().get(i).getTransplanTime();
+			Date date = new Date();
+			Integer integer = daysBetween(transplanTime, date);
+			pages.getRecords().get(i).setFate(integer);
+		}
+		return R.data(pages);
+	}
+
+	/**
+	 * 根据时间阶段计算天数
+	 * @param smdate    开始时间
+	 * @param bdate     结束时间
+	 * @return
+	 */
+	public static Integer daysBetween(Date smdate,Date bdate){
+		Calendar cal = Calendar.getInstance();
+		cal.setTime(smdate);
+		long time1 = cal.getTimeInMillis();
+		cal.setTime(bdate);
+		long time2 = cal.getTimeInMillis();
+		long between_days=(time2-time1)/(1000*3600*24);
+		return Integer.parseInt(String.valueOf(between_days))+1;
+	}
 }
diff --git a/src/main/java/org/springblade/modules/farmplant/controller/StrainController.java b/src/main/java/org/springblade/modules/farmplant/controller/StrainController.java
index 7a808ee..c6aed71 100644
--- a/src/main/java/org/springblade/modules/farmplant/controller/StrainController.java
+++ b/src/main/java/org/springblade/modules/farmplant/controller/StrainController.java
@@ -15,9 +15,11 @@
 import org.springblade.modules.farmplant.service.StrainService;
 import org.springblade.modules.farmplant.vo.StrainVO;
 import org.springframework.web.bind.annotation.*;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 农场检测报告/证书控制器
@@ -115,4 +117,14 @@
 		return R.data(strainService.strainTree(strain));
 	}
 
+
+	/**
+	 * 分页
+	 */
+	@GetMapping("/strain-trees")
+	public R<IPage<Strain>> list(@ApiIgnore @RequestParam Map<String, Object> strain, Query query) {
+		IPage<Strain> pages = strainService.page(Condition.getPage(query), Condition.getQueryWrapper(strain, Strain.class));
+		return R.data(pages);
+	}
+
 }
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 3f81463..d3525a2 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -15,6 +15,9 @@
         <if test="farmPlant.landId!=null and farmPlant.landId!=''">
             and sfp.land_id = #{farmPlant.landId}
         </if>
+        <if test="farmPlant.strainId!=null and farmPlant.strainId!=''">
+            and sfp.strain_id = #{farmPlant.strainId}
+        </if>
         <if test="farmPlant.plantingWay!=null and farmPlant.plantingWay!=''">
             and sfp.planting_way = #{farmPlant.plantingWay}
         </if>
@@ -181,9 +184,6 @@
     </select>
 
 
-
-
-
     <!--种植采收监管 产品等级(0:一等品)-->
     <select id="selectProduct" resultType="java.util.HashMap">
         SELECT
@@ -300,4 +300,5 @@
         </if>
         group by sfp.strain_id,strain_name,land_unit
     </select>
+
 </mapper>
diff --git a/src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java b/src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java
index d67586e..de03cf7 100644
--- a/src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java
+++ b/src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java
@@ -46,9 +46,14 @@
 	 * 结束时间
 	 */
 	private String endTime;
+	/**
+	 * 类型
+	 */
+	private String ty;
 
 	/**
 	 * 面积合计
 	 */
 	private Double areas;
+	private Integer fate;
 }
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 eed9c82..4d20f68 100644
--- a/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
+++ b/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
@@ -32,8 +32,9 @@
 
 /**
  * 农事记录控制器
- * @since 2022-05-18
+ *
  * @author zhongrj
+ * @since 2022-05-18
  */
 @RestController
 @AllArgsConstructor
@@ -92,7 +93,7 @@
 		recovery.setCreateTime(new Date());
 		//新增
 		boolean save = recoveryService.save(recovery);
-		if (save){
+		if (save) {
 			//同时生成农事记录和库存记录
 			FarmingRecord record = new FarmingRecord();
 			record.setCreateTime(new Date());
@@ -103,7 +104,7 @@
 			record.setLandId(recovery.getLandId());
 			record.setOperator(recovery.getOperator());
 			Strain strain = strainService.getById(recovery.getStrainId());
-			record.setRemarks("品种: "+strain.getStrainName() +", 重量:"+recovery.getWeight());
+			record.setContent("品种: " + strain.getStrainName() + ", 重量:" + recovery.getWeight());
 			//新增
 			farmingRecordService.save(record);
 
@@ -113,7 +114,7 @@
 			stock.setFarmPlantId(recovery.getFarmPlantId());
 			stock.setStrainId(recovery.getStrainId());
 			FarmProductStock stock1 = farmProductStockService.getOne(new QueryWrapper<>(stock));
-			if (null!=stock1) {
+			if (null != stock1) {
 				//更新库存
 				//计算库存
 				double old = Double.parseDouble(stock1.getWeight());
@@ -122,7 +123,7 @@
 				stock1.setWeight(String.valueOf(addNum));
 				//更新
 				farmProductStockService.updateById(stock1);
-			}else {
+			} else {
 				//新增库存
 				FarmProductStock productStock = new FarmProductStock();
 				productStock.setCreateTime(new Date());
@@ -142,11 +143,12 @@
 
 	/**
 	 * double 相加
+	 *
 	 * @param d1
 	 * @param d2
 	 * @return
 	 */
-	private double add(double d1, double d2){
+	private double add(double d1, double d2) {
 		// 进行加法运算
 		BigDecimal b1 = new BigDecimal(d1);
 		BigDecimal b2 = new BigDecimal(d2);
@@ -185,4 +187,24 @@
 		return R.status(recoveryService.removeByIds(Func.toLongList(ids)));
 	}
 
+
+	/**
+	 * 小程序采收详情列表自定义分页
+	 */
+	@GetMapping("/pagec")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入recovery")
+	public R<IPage<RecoveryVO>> pagec(RecoveryVO recovery, Query query) {
+		IPage<RecoveryVO> pages = recoveryService.selectRecoveryPage(Condition.getPage(query), recovery);
+		for (int i = 0; i < pages.getRecords().size(); i++) {
+			String jobWay = pages.getRecords().get(i).getJobWay();
+			if (jobWay.equals("0")) {
+				pages.getRecords().get(i).setLx("人工");
+			} else {
+				pages.getRecords().get(i).setLx("机械");
+			}
+
+		}
+		return R.data(pages);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/recovery/entity/Recovery.java b/src/main/java/org/springblade/modules/recovery/entity/Recovery.java
index b49656d..6334dda 100644
--- a/src/main/java/org/springblade/modules/recovery/entity/Recovery.java
+++ b/src/main/java/org/springblade/modules/recovery/entity/Recovery.java
@@ -61,8 +61,8 @@
 	/**
 	 * 采收时间
 	 */
-	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
-	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
 	private Date time;
 
 	/**
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 0f5aae2..d5a3f59 100644
--- a/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
+++ b/src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
@@ -21,4 +21,8 @@
 	 * 农产品名称
 	 */
 	private String strainName;
+	/**
+	 * 类型
+	 */
+	private String lx;
 }
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 fe17e69..c57d149 100644
--- a/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
+++ b/src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
@@ -40,6 +40,11 @@
 import org.springblade.modules.soldr.service.ISoldrService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 /**
  * 已出库存数量记录表 控制器
  *
@@ -161,7 +166,38 @@
 			soldr.setSid(id);
 			Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
 			Integer amount1 = detail.getAmount1();
-			soldrecordService.updateSold(amount1 - num, id);
+			Double census = detail.getCensus();
+			//统计公斤
+			Integer specsValue1 = detail.getSpecsVal1();
+			double v = 0;
+			//克
+			if (specsValue1 == 0) {
+				v = num * 0.001;
+			}
+			//斤
+			if (specsValue1 == 1) {
+				v = num * 0.5;
+			}
+			//公斤
+			if (specsValue1 == 2) {
+				v = num;
+			}
+			//吨
+			if (specsValue1 == 3) {
+				v = num * 1000;
+			}
+			//毫升
+			if (specsValue1 == 4) {
+				//毫升换成升
+				double s = num * 0.001;
+				//升换成公斤
+				v = s;
+			}
+			//升
+			if (specsValue1 == 5) {
+				v = num;
+			}
+			soldrecordService.updateSold(amount1 - num, id,census-v);
 			Stock stock = new Stock();
 			stock.setId(id);
 			Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
@@ -192,7 +228,38 @@
 			soldr.setSid(soldrVOs.getId());
 			Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
 			Integer amount1 = detail.getAmount1();
-			soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId());
+			Double census = detail.getCensus();
+			//统计公斤
+			Integer specsValue1 = detail.getSpecsVal1();
+			double v = 0;
+			//克
+			if (specsValue1 == 0) {
+				v = soldrVOs.getNum() * 0.001;
+			}
+			//斤
+			if (specsValue1 == 1) {
+				v = soldrVOs.getNum() * 0.5;
+			}
+			//公斤
+			if (specsValue1 == 2) {
+				v = soldrVOs.getNum();
+			}
+			//吨
+			if (specsValue1 == 3) {
+				v = soldrVOs.getNum() * 1000;
+			}
+			//毫升
+			if (specsValue1 == 4) {
+				//毫升换成升
+				double s = soldrVOs.getNum() * 0.001;
+				//升换成公斤
+				v = s;
+			}
+			//升
+			if (specsValue1 == 5) {
+				v = soldrVOs.getNum();
+			}
+			soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId(),census-v);
 			Stock stock = new Stock();
 			stock.setId(soldrVOs.getId());
 			Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
@@ -203,4 +270,24 @@
 		return R.success("退回成功");
 	}
 
+	/**
+	 * 已出农资列表
+	 *
+	 * @return
+	 */
+	@GetMapping("/selectSol")
+	public R selectSol() {
+		List<SoldrVO> soldrVOS = soldrService.selectSol();
+		for (int i = 0; i < soldrVOS.size(); i++) {
+			String specs1 = soldrVOS.get(i).getSpecs1();
+			String dic1 = soldrVOS.get(i).getDic1();
+			String dic2 = soldrVOS.get(i).getDic2();
+			String agrname = soldrVOS.get(i).getAgrname();
+			String s = agrname + specs1 + dic1 + "/" + dic2;
+			soldrVOS.get(i).setSpn(s);
+		}
+
+		return R.data(soldrVOS);
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/soldr/entity/Soldr.java b/src/main/java/org/springblade/modules/soldr/entity/Soldr.java
index 93603fd..5050b21 100644
--- a/src/main/java/org/springblade/modules/soldr/entity/Soldr.java
+++ b/src/main/java/org/springblade/modules/soldr/entity/Soldr.java
@@ -23,6 +23,7 @@
 import org.springblade.core.mp.base.BaseEntity;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
 
 /**
  * 已出库存数量记录表实体类
@@ -33,7 +34,7 @@
 @Data
 @TableName("sys_soldr")
 @EqualsAndHashCode(callSuper = true)
-public class Soldr extends BaseEntity {
+public class Soldr extends TenantEntity {
 
 	private static final long serialVersionUID = 1L;
 
@@ -45,7 +46,6 @@
 	 * 数量
 	 */
 	private Integer amount1;
-	private Integer tenantId1;
 	/**
 	 * 规格
 	 */
@@ -63,5 +63,7 @@
 	 */
 	private String type;
 	private Long sid;
+	private String deptId;
+	private Double census;
 
 }
diff --git a/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java b/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java
index 24bb325..1def817 100644
--- a/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java
+++ b/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java
@@ -23,6 +23,7 @@
 import org.springblade.modules.soldrecord.vo.SoldrecordVO;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 已出库存数量记录表 Mapper 接口
@@ -42,4 +43,7 @@
 	List<SoldrVO> selectSoldrPage(IPage page, SoldrVO soldr);
 	List<SoldrVO> selectLists(IPage page, SoldrVO soldr);
 	void  del(Long id);
+	void  dels(Long id);
+	List<SoldrVO> selectSol();
+	List<Map<String, Object>> selectCz(Long sid);
 }
diff --git a/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml b/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml
index 86a6a91..23166d9 100644
--- a/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml
+++ b/src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml
@@ -29,7 +29,7 @@
     </select>
 
     <select id="selectLists" resultType="org.springblade.modules.soldr.vo.SoldrVO">
-        SELECT st.stock_id1,
+        SELECT st.id,st.stock_id1,
         st.specs1,
         st.sid,
         st.amount1 AS amount1,
@@ -50,7 +50,8 @@
         WHERE CODE = 'stockSpecs2' AND is_deleted = 0 <if test="soldr.codes!=null and soldr.codes != ''">
         AND blade_dict_biz.tenant_id = #{soldr.codes}
     </if>) c ON c.dict_key = st.specs_val2
-        LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0  <if test="soldr.codes!=null and soldr.codes != ''">
+        LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0  <if
+        test="soldr.codes!=null and soldr.codes != ''">
         AND blade_dict_biz.tenant_id = #{soldr.codes}
     </if>) a ON
         a.dict_key = stf.type
@@ -68,4 +69,47 @@
         from sys_soldr
         where sid = #{id}
     </delete>
+
+    <delete id="dels">
+        delete
+        from sys_soldr
+        where id = #{id}
+    </delete>
+
+    <!--已出农资列表-->
+    <select id="selectSol" resultType="org.springblade.modules.soldr.vo.SoldrVO">
+        SELECT st.id,
+               st.stock_id1,
+               st.specs1,
+               st.sid,
+               st.amount1            AS amount1,
+               stf.factory_name      AS factoryName,
+               a.dict_value          AS stype,
+               d.dict_value          AS dic1,
+               c.dict_value          AS dic2,
+               stf.agricultural_name as agrname
+        FROM sys_soldr 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 = 'stockType' AND is_deleted = 0) a ON
+            a.dict_key = stf.type
+        WHERE st.is_deleted = 0
+    </select>
+
+    <!--查询是否存在已出库农资-->
+    <select id="selectCz" resultType="java.util.Map">
+        SELECT census, sid, amount1
+        FROM `sys_soldr`
+        WHERE sid = #{sid}
+    </select>
+
 </mapper>
diff --git a/src/main/java/org/springblade/modules/soldr/service/ISoldrService.java b/src/main/java/org/springblade/modules/soldr/service/ISoldrService.java
index 70ce9c2..9e8db02 100644
--- a/src/main/java/org/springblade/modules/soldr/service/ISoldrService.java
+++ b/src/main/java/org/springblade/modules/soldr/service/ISoldrService.java
@@ -21,6 +21,9 @@
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * 已出库存数量记录表 服务类
  *
@@ -39,4 +42,7 @@
 	IPage<SoldrVO> selectSoldrPage(IPage<SoldrVO> page, SoldrVO soldr);
 	IPage<SoldrVO> selectLists(IPage<SoldrVO> page, SoldrVO soldr);
 	void  del(Long id);
+	void  dels(Long id);
+	List<SoldrVO> selectSol();
+	List<Map<String, Object>> selectCz(Long sid);
 }
diff --git a/src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java b/src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java
index 76eb487..f82ef70 100644
--- a/src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java
+++ b/src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java
@@ -24,6 +24,9 @@
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * 已出库存数量记录表 服务实现类
  *
@@ -48,4 +51,19 @@
 		baseMapper.del(id);
 	}
 
+	@Override
+	public void dels(Long id) {
+		baseMapper.dels(id);
+	}
+
+	@Override
+	public List<SoldrVO> selectSol() {
+		return baseMapper.selectSol();
+	}
+
+	@Override
+	public List<Map<String, Object>> selectCz(Long sid) {
+		return baseMapper.selectCz(sid);
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java b/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java
index ebc3536..8d78e2d 100644
--- a/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java
+++ b/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java
@@ -42,6 +42,6 @@
 	List<SoldrecordVO> selectSoldrecordPage(IPage page, SoldrecordVO soldrecord);
 	List<SoldrecordVO> selectLists(IPage page, SoldrecordVO soldrecord);
 	List<SoldrecordVO> selectListbg(IPage page, SoldrecordVO soldrecord);
-	void updateSold(Integer amount,Long id);
+	void updateSold(Integer amount, Long id, Double census);
 	void delc(String id);
 }
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 86f8b82..3768a81 100644
--- a/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
+++ b/src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
@@ -103,8 +103,8 @@
 
     <update id="updateSold">
         update sys_soldr
-        set amount1=#{amount}
-        where sid = #{id}
+        set amount1=#{amount}, census=#{census}
+        where id = #{id}
     </update>
 
     <delete id="delc">
diff --git a/src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java b/src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java
index 5ee2623..361a324 100644
--- a/src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java
+++ b/src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java
@@ -40,6 +40,6 @@
 	IPage<SoldrecordVO> selectSoldrecordPage(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
 	IPage<SoldrecordVO> selectLists(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
 	IPage<SoldrecordVO> selectListbg(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
-	void updateSold(Integer amount,Long id);
+	void updateSold(Integer amount,Long id,Double census);
 	void delc(String id);
 }
diff --git a/src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java b/src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java
index af38085..fbe410a 100644
--- a/src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java
+++ b/src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java
@@ -49,8 +49,8 @@
 	}
 
 	@Override
-	public void updateSold(Integer amount,Long id) {
-		baseMapper.updateSold(amount,id);
+	public void updateSold(Integer amount,Long id,Double census) {
+		baseMapper.updateSold(amount,id,census);
 	}
 
 	@Override
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 f7e4c2b..2055a3a 100644
--- a/src/main/java/org/springblade/modules/stock/controller/StockController.java
+++ b/src/main/java/org/springblade/modules/stock/controller/StockController.java
@@ -434,10 +434,10 @@
 	 * @return
 	 */
 	@GetMapping("/pagenumx")
-	public R pagenumx(String startTime, String endTime) {
+	public R pagenumx(String deptId,String startTime, String endTime) {
 		Double rknu = 0.0;
 		Double cknu = 0.0;
-		List<StocksVO> pages = stockService.slectNumx(startTime, endTime);
+		List<StocksVO> pages = stockService.slectNumx(deptId,startTime, endTime);
 		for (int i = 0; i < pages.size(); i++) {
 			Double cgnum = pages.get(i).getCgnum();
 			Double dbrknum = pages.get(i).getDbrknum();
diff --git a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.java b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.java
index d681fe8..f0f12fa 100644
--- a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.java
+++ b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.java
@@ -52,7 +52,7 @@
 
 	List<StocksVO> slectNum(IPage page, StocksVO stock);
 
-	List<StocksVO> slectNumx(String startTime, String endTime);
+	List<StocksVO> slectNumx(String deptId,String startTime, String endTime);
 
 	List<Map<String, Object>> StockCount(String deptId);
 }
diff --git a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
index 41b1581..9ce33e7 100644
--- a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
+++ b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -116,10 +116,13 @@
         WHERE stock_type1 = 1
         AND type1 = 0
         <if test="stock.startTime!=null and stock.startTime!=''">
-            and time1 &gt;= #{stock.startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
         </if>
         <if test="stock.endTime!=null and stock.endTime!=''">
-            and time1 &lt;= #{stock.endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
+        </if>
+        <if test="stock.deptId!=null and stock.deptId!=''">
+            and dept_id = #{stock.deptId}
         </if>
         GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
@@ -127,10 +130,13 @@
         WHERE stock_type1 = 1
         AND type1 = 1
         <if test="stock.startTime!=null and stock.startTime!=''">
-            and time1 &gt;= #{stock.startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
         </if>
         <if test="stock.endTime!=null and stock.endTime!=''">
-            and time1 &lt;= #{stock.endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
+        </if>
+        <if test="stock.deptId!=null and stock.deptId!=''">
+            and dept_id = #{stock.deptId}
         </if>
         GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
@@ -138,10 +144,13 @@
         WHERE stock_type1 = 0
         AND type1 = 0
         <if test="stock.startTime!=null and stock.startTime!=''">
-            and time1 &gt;= #{stock.startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
         </if>
         <if test="stock.endTime!=null and stock.endTime!=''">
-            and time1 &lt;= #{stock.endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
+        </if>
+        <if test="stock.deptId!=null and stock.deptId!=''">
+            and dept_id = #{stock.deptId}
         </if>
         GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
@@ -149,10 +158,13 @@
         WHERE stock_type1 = 0
         AND type1 = 1
         <if test="stock.startTime!=null and stock.startTime!=''">
-            and time1 &gt;= #{stock.startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
         </if>
         <if test="stock.endTime!=null and stock.endTime!=''">
-            and time1 &lt;= #{stock.endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
+        </if>
+        <if test="stock.deptId!=null and stock.deptId!=''">
+            and dept_id = #{stock.deptId}
         </if>
         GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
@@ -160,10 +172,13 @@
         WHERE stock_type1 = 0
         AND type1 = 2
         <if test="stock.startTime!=null and stock.startTime!=''">
-            and time1 &gt;= #{stock.startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
         </if>
         <if test="stock.endTime!=null and stock.endTime!=''">
-            and time1 &lt;= #{stock.endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
+        </if>
+        <if test="stock.deptId!=null and stock.deptId!=''">
+            and dept_id = #{stock.deptId}
         </if>
         GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
     </select>
@@ -175,7 +190,8 @@
                sto.type
         FROM `sys_stock` st
                  LEFT JOIN (SELECT id, type FROM sys_stockfactory) sto ON st.stock_id = sto.id
-        WHERE st.is_deleted = 0 and  dept_id=#{deptId}
+        WHERE st.is_deleted = 0
+          and dept_id = #{deptId}
     </select>
 
     <!--小程序数据统计-->
@@ -204,10 +220,13 @@
         WHERE stock_type1 = 1
         AND type1 = 0
         <if test="startTime!=null and startTime!=''">
-            and time1 &gt;= #{startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
         </if>
         <if test="endTime!=null and endTime!=''">
-            and time1 &lt;= #{endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
+        </if>
+        <if test="deptId!=null and deptId!=''">
+            and dept_id = #{deptId}
         </if>
         GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
@@ -215,10 +234,13 @@
         WHERE stock_type1 = 1
         AND type1 = 1
         <if test="startTime!=null and startTime!=''">
-            and time1 &gt;= #{startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
         </if>
         <if test="endTime!=null and endTime!=''">
-            and time1 &lt;= #{endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
+        </if>
+        <if test="deptId!=null and deptId!=''">
+            and dept_id = #{deptId}
         </if>
         GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
@@ -226,10 +248,13 @@
         WHERE stock_type1 = 0
         AND type1 = 0
         <if test="startTime!=null and startTime!=''">
-            and time1 &gt;= #{startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
         </if>
         <if test="endTime!=null and endTime!=''">
-            and time1 &lt;= #{endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
+        </if>
+        <if test="deptId!=null and deptId!=''">
+            and dept_id = #{deptId}
         </if>
         GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
@@ -237,10 +262,13 @@
         WHERE stock_type1 = 0
         AND type1 = 1
         <if test="startTime!=null and startTime!=''">
-            and time1 &gt;= #{startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
         </if>
         <if test="endTime!=null and endTime!=''">
-            and time1 &lt;= #{endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
+        </if>
+        <if test="deptId!=null and deptId!=''">
+            and dept_id = #{deptId}
         </if>
         GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
         LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
@@ -248,10 +276,13 @@
         WHERE stock_type1 = 0
         AND type1 = 2
         <if test="startTime!=null and startTime!=''">
-            and time1 &gt;= #{startTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
         </if>
         <if test="endTime!=null and endTime!=''">
-            and time1 &lt;= #{endTime}
+            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
+        </if>
+        <if test="deptId!=null and deptId!=''">
+            and dept_id = #{deptId}
         </if>
         GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
     </select>
diff --git a/src/main/java/org/springblade/modules/stock/service/IStockService.java b/src/main/java/org/springblade/modules/stock/service/IStockService.java
index cd11b4f..a710552 100644
--- a/src/main/java/org/springblade/modules/stock/service/IStockService.java
+++ b/src/main/java/org/springblade/modules/stock/service/IStockService.java
@@ -46,6 +46,6 @@
 	boolean UpdaeAmountc(Stock stock);
 	boolean Updaet(Stock stock);
 	IPage<StocksVO> slectNum(IPage<StocksVO> page, StocksVO stock);
-	List<StocksVO> slectNumx(String startTime, String endTime);
+	List<StocksVO> slectNumx(String deptId,String startTime, String endTime);
 	List<Map<String, Object>> StockCount(String deptId);
 }
diff --git a/src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java b/src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java
index 2b423bd..6ae363c 100644
--- a/src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java
+++ b/src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java
@@ -73,8 +73,8 @@
 	}
 
 	@Override
-	public List<StocksVO> slectNumx(String startTime, String endTime) {
-		return baseMapper.slectNumx(startTime,endTime);
+	public List<StocksVO> slectNumx(String deptId,String startTime, String endTime) {
+		return baseMapper.slectNumx(deptId,startTime,endTime);
 	}
 
 	@Override
diff --git a/src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java b/src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java
index 3b0bd74..f9b5b99 100644
--- a/src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java
+++ b/src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java
@@ -132,5 +132,14 @@
 		return R.data(stockfactoryService.selectStockFa());
 	}
 
+	/**
+	 * 小程序农资列表
+	 * @return
+	 */
+	@GetMapping("/selectStockIn")
+	public R selectStockIn() {
+		return R.data(stockfactoryService.selectStockIn());
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java b/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java
index 0850875..e50b7d5 100644
--- a/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java
+++ b/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java
@@ -39,4 +39,5 @@
 	 */
 	List<StockfactoryVO> selectStockfactoryPage(IPage page, StockfactoryVO stockfactory);
 	List selectStockFa();
+	List selectStockIn();
 }
diff --git a/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml b/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml
index 4c16192..d6f5d5c 100644
--- a/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml
+++ b/src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml
@@ -20,11 +20,27 @@
 
 
     <select id="selectStockfactoryPage" resultMap="stockfactoryResultMap">
-        select * from sys_stockfactory where is_deleted = 0
+        select *
+        from sys_stockfactory
+        where is_deleted = 0
     </select>
 
     <select id="selectStockFa" resultType="java.util.HashMap">
-        select id as dictKey,agricultural_name as dictValue from sys_stockfactory where is_deleted = 0
+        select id as dictKey, agricultural_name as dictValue
+        from sys_stockfactory
+        where is_deleted = 0
+    </select>
+
+    <!--小程序农资列表-->
+    <select id="selectStockIn" resultType="java.util.HashMap">
+        SELECT s.id                AS id,
+               s.agricultural_name AS agrname,
+               c.dict_value        AS dic
+        FROM sys_stockfactory s
+                 LEFT JOIN (SELECT dict_key, dict_value
+                            FROM blade_dict_biz
+                            WHERE CODE = 'stockType' AND is_deleted = 0) c ON c.dict_key = s.type
+        WHERE is_deleted = 0
     </select>
 
 </mapper>
diff --git a/src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java b/src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java
index 42d18c9..bde90ba 100644
--- a/src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java
+++ b/src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java
@@ -40,4 +40,5 @@
 	 */
 	IPage<StockfactoryVO> selectStockfactoryPage(IPage<StockfactoryVO> page, StockfactoryVO stockfactory);
 	List selectStockFa();
+	List selectStockIn();
 }
diff --git a/src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java b/src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java
index aaadb72..8d99c23 100644
--- a/src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java
+++ b/src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java
@@ -45,4 +45,9 @@
 		return baseMapper.selectStockFa();
 	}
 
+	@Override
+	public List selectStockIn() {
+		return baseMapper.selectStockIn();
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java b/src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java
index eec21db..e864db5 100644
--- a/src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java
+++ b/src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java
@@ -30,6 +30,7 @@
 import org.springblade.core.tool.utils.Func;
 import org.springblade.modules.soldr.entity.Soldr;
 import org.springblade.modules.soldr.service.ISoldrService;
+import org.springblade.modules.soldr.vo.SoldrVO;
 import org.springblade.modules.soldrecord.entity.Soldrecord;
 import org.springblade.modules.soldrecord.service.ISoldrecordService;
 import org.springblade.modules.stock.entity.Stock;
@@ -45,6 +46,7 @@
 import org.springblade.core.boot.ctrl.BladeController;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 出入库记录 控制器
@@ -146,6 +148,9 @@
 			Integer num = stockrecord.getNum();
 			//出库量
 			Integer amount1 = stockrecord.getAmount1();
+			//规格
+			String specs1 = stockrecord.getSpecs1();
+			int spe = Integer.parseInt(specs1);
 			//当前总量
 			int i = num - amount1;
 			Stock stock = new Stock();
@@ -156,30 +161,30 @@
 			double v = 0;
 			//克
 			if (specsValue1 == 0) {
-				v = amount1 * 0.001;
+				v = amount1* spe * 0.001;
 			}
 			//斤
 			if (specsValue1 == 1) {
-				v = amount1 * 0.5;
+				v = amount1* spe * 0.5;
 			}
 			//公斤
 			if (specsValue1 == 2) {
-				v = amount1;
+				v = amount1* spe;
 			}
 			//吨
 			if (specsValue1 == 3) {
-				v = amount1 * 1000;
+				v = amount1 * spe * 1000;
 			}
 			//毫升
 			if (specsValue1 == 4) {
 				//毫升换成升
-				double s = amount1 * 0.001;
+				double s = amount1* spe * 0.001;
 				//升换成公斤
 				v = s;
 			}
 			//升
 			if (specsValue1 == 5) {
-				v = amount1;
+				v = amount1* spe;
 			}
 			stockrecord.setCensus(v);
 			if (i == 0) {
@@ -207,17 +212,22 @@
 				Soldr soldr = new Soldr();
 				soldr.setSid(stockrecord.getSid());
 				soldr.setStockId1(stockrecord.getStockId1());
-				soldr.setStockId1(stockrecord.getStockId1());
 				soldr.setAmount1(amount1);
 				soldr.setSpecs1(stockrecord.getSpecs1());
 				soldr.setSpecsVal1(stockrecord.getSpecsVal1());
 				soldr.setSpecsVal2(stockrecord.getSpecsVal2());
 				soldr.setType(stockrecord.getType1());
+				soldr.setCensus(v);
 				//已出库农资数量
-				Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
-				if (null != detail) {
-					Integer amount11 = detail.getAmount1();
-					soldrecordService.updateSold(amount11 + amount1, detail.getSid());
+				List<Map<String, Object>> maps = soldrService.selectCz(stockrecord.getSid());
+				if (maps.size()!=0) {
+					String a = maps.get(0).get("amount1").toString();
+					Integer amount11=Integer.parseInt(a);
+					String amount12 = maps.get(0).get("amount1").toString();
+					Double census = Double.parseDouble(amount12);
+					String sid = maps.get(0).get("sid").toString();
+					Long si=Long.valueOf(sid);
+					soldrecordService.updateSold(amount11 + amount1, si,census+v);
 				} else {
 					soldrService.save(soldr);
 				}
@@ -231,6 +241,8 @@
 			Integer num = stockrecord.getNum();
 			//入库量
 			Integer amount1 = stockrecord.getAmount1();
+			String specs1 = stockrecord.getSpecs1();
+			int spe=Integer.parseInt(specs1);
 			//当前总量
 			int i = num + amount1;
 			Stock stock = new Stock();
@@ -243,30 +255,30 @@
 			double v = 0;
 			//克
 			if (specsValue1 == 0) {
-				v = amount1 * 0.001;
+				v = amount1*spe * 0.001;
 			}
 			//斤
 			if (specsValue1 == 1) {
-				v = amount1 * 0.5;
+				v = amount1*spe * 0.5;
 			}
 			//公斤
 			if (specsValue1 == 2) {
-				v = amount1;
+				v = amount1*spe;
 			}
 			//吨
 			if (specsValue1 == 3) {
-				v = amount1 * 1000;
+				v = amount1*spe * 1000;
 			}
 			//毫升
 			if (specsValue1 == 4) {
 				//毫升换成升
-				double s = amount1 * 0.001;
+				double s = amount1*spe * 0.001;
 				//升换成公斤
 				v = s;
 			}
 			//升
 			if (specsValue1 == 5) {
-				v = amount1;
+				v = amount1*spe;
 			}
 			stockrecord.setCensus(v);
 		}
diff --git a/src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java b/src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java
index 2a5dbc6..02bb6c0 100644
--- a/src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java
+++ b/src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java
@@ -81,6 +81,7 @@
 	private Integer stockType1;
 	private String sp1;
 	private String sp2;
+	private String deptId;
 	private Long sid;
 	private Double census;
 }
diff --git a/src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml b/src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml
index 26e7b41..40a4184 100644
--- a/src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml
+++ b/src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml
@@ -87,4 +87,5 @@
             and st.sid = #{stockrecord.sid}
         </if>
     </select>
+
 </mapper>
diff --git a/src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java b/src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java
index fff0e06..ac9043d 100644
--- a/src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java
+++ b/src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java
@@ -21,6 +21,8 @@
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.List;
+
 /**
  * 出入库记录 服务类
  *
@@ -38,5 +40,4 @@
 	 */
 	IPage<StockrecordVO> selectStockrecordPage(IPage<StockrecordVO> page, StockrecordVO stockrecord);
 	IPage<StockrecordVO> seletStockRecordList(IPage<StockrecordVO> page, StockrecordVO stockrecord);
-
 }
diff --git a/src/main/java/org/springblade/modules/task/controller/TaskController.java b/src/main/java/org/springblade/modules/task/controller/TaskController.java
index 5e30ef2..4f30694 100644
--- a/src/main/java/org/springblade/modules/task/controller/TaskController.java
+++ b/src/main/java/org/springblade/modules/task/controller/TaskController.java
@@ -21,6 +21,7 @@
 import io.swagger.annotations.ApiParam;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
+
 import javax.validation.Valid;
 
 import org.springblade.core.mp.support.Condition;
@@ -35,8 +36,11 @@
 import org.springblade.modules.task.service.ITaskService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
- *  控制器
+ * 控制器
  *
  * @author BladeX
  * @since 2022-06-10
@@ -89,7 +93,7 @@
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入task")
 	public R save(@Valid @RequestBody Task task) {
-		task.setStatus(1);
+		task.setStatus(2);
 		return R.status(taskService.save(task));
 	}
 
@@ -100,6 +104,17 @@
 	@ApiOperationSupport(order = 5)
 	@ApiOperation(value = "修改", notes = "传入task")
 	public R update(@Valid @RequestBody Task task) {
+		return R.status(taskService.updateById(task));
+	}
+
+	/**
+	 * 任务处理
+	 */
+	@PostMapping("/updatechuli")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入task")
+	public R updatechuli(@Valid @RequestBody Task task) {
+		task.setStatus(0);
 		return R.status(taskService.updateById(task));
 	}
 
@@ -124,5 +139,17 @@
 		return R.status(taskService.deleteLogic(Func.toLongList(ids)));
 	}
 
-
+	/**
+	 * 统计待处理任务数量
+	 *
+	 * @param task
+	 * @return
+	 */
+	@GetMapping("/selectCount")
+	public R selectCount(Task task) {
+		int i = taskService.selectCount(task.getTaskUser());
+		Map map = new HashMap();
+		map.put("num",i);
+		return R.data(map);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/task/entity/Task.java b/src/main/java/org/springblade/modules/task/entity/Task.java
index b44657a..7da5524 100644
--- a/src/main/java/org/springblade/modules/task/entity/Task.java
+++ b/src/main/java/org/springblade/modules/task/entity/Task.java
@@ -26,6 +26,7 @@
 import org.springblade.core.mp.base.BaseEntity;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
 import org.springframework.format.annotation.DateTimeFormat;
 
 /**
@@ -37,7 +38,7 @@
 @Data
 @TableName("sys_task")
 @EqualsAndHashCode(callSuper = true)
-public class Task extends BaseEntity {
+public class Task extends TenantEntity {
 
 	private static final long serialVersionUID = 1L;
 
@@ -79,6 +80,18 @@
 	 * 农事操作
 	 */
 	private String farm;
+	/**
+	 * 农资id
+	 */
+	private String stockId;
+	/**
+	 * 农资规格
+	 */
+	private String stockGg;
+	/**
+	 * 农资数量
+	 */
+	private String stockNum;
 
 
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
index dd17851..6ea0a18 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
@@ -20,10 +20,11 @@
 import org.springblade.modules.task.vo.TaskVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+
 import java.util.List;
 
 /**
- *  Mapper 接口
+ * Mapper 接口
  *
  * @author BladeX
  * @since 2022-06-10
@@ -39,4 +40,5 @@
 	 */
 	List<TaskVO> selectTaskPage(IPage page, TaskVO task);
 
+	int selectCount(String taskuser);
 }
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
index 57ea9d6..5c39eb5 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -3,7 +3,7 @@
 <mapper namespace="org.springblade.modules.task.mapper.TaskMapper">
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="taskResultMap" type="org.springblade.modules.task.entity.Task">
+    <resultMap id="taskResultMap" type="org.springblade.modules.task.vo.TaskVO">
         <result column="id" property="id"/>
         <result column="create_user" property="createUser"/>
         <result column="create_dept" property="createDept"/>
@@ -21,11 +21,35 @@
         <result column="remark" property="remark"/>
         <result column="tp" property="tp"/>
         <result column="farm" property="farm"/>
+        <result column="landname" property="landname"/>
     </resultMap>
 
 
     <select id="selectTaskPage" resultMap="taskResultMap">
-        select * from sys_task where is_deleted = 0
+        select t.*, l.land_name as landname,f.agricultural_name as argname,
+        u.real_name as reaname
+        from sys_task t
+        LEFT JOIN sys_land l ON t.land_id = l.id
+        LEFT JOIN sys_stockfactory f ON f.id=t.stock_id
+        LEFT JOIN blade_user u ON u.id=t.task_user
+        where t.is_deleted = 0
+        <if test="task.status!=null and task.status!=''">
+            and t.status=#{task.status}
+        </if>
+        <if test="task.taskUser!=null and task.taskUser!=''">
+            and t.create_user=#{task.taskUser}
+        </if>
+        <if test="task.createUser!=null and task.createUser!=''">
+            and t.create_user=#{task.createUser}
+        </if>
     </select>
 
+    <!--统计待处理任务数量-->
+    <select id="selectCount" resultType="java.lang.Integer">
+        SELECT COUNT(*)
+        FROM `sys_task`
+        WHERE status = 2
+          AND is_deleted = 0
+          AND task_user = #{taskuser}
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskService.java b/src/main/java/org/springblade/modules/task/service/ITaskService.java
index 54b86ac..e048c93 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskService.java
+++ b/src/main/java/org/springblade/modules/task/service/ITaskService.java
@@ -37,5 +37,5 @@
 	 * @return
 	 */
 	IPage<TaskVO> selectTaskPage(IPage<TaskVO> page, TaskVO task);
-
+	int selectCount(String taskuser);
 }
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
index b7de4ac..ba7a431 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -38,4 +38,9 @@
 		return page.setRecords(baseMapper.selectTaskPage(page, task));
 	}
 
+	@Override
+	public int selectCount(String taskuser) {
+		return baseMapper.selectCount(taskuser);
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskVO.java b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
index e5b5488..3cbabbd 100644
--- a/src/main/java/org/springblade/modules/task/vo/TaskVO.java
+++ b/src/main/java/org/springblade/modules/task/vo/TaskVO.java
@@ -30,5 +30,7 @@
 @EqualsAndHashCode(callSuper = true)
 public class TaskVO extends Task {
 	private static final long serialVersionUID = 1L;
-
+	private String landname;
+	private String argname;
+	private String reaname;
 }

--
Gitblit v1.9.3