From 62f71c8d96430f336ad961011647b9f9dcdebb15 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Thu, 10 Feb 2022 08:34:07 +0800
Subject: [PATCH] 能量树

---
 src/main/java/org/springblade/common/config/BladeConfiguration.java              |    1 
 src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.java            |    1 
 src/main/java/org/springblade/modules/energy/controller/EnergyController.java    |   81 +++++++++++++++++++++++++++++-----------
 src/main/java/org/springblade/modules/energy/service/impl/EnergyServiceImpl.java |    5 ++
 src/main/java/org/springblade/modules/energy/service/IEnergyService.java         |    2 +
 src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.xml             |    4 ++
 6 files changed, 72 insertions(+), 22 deletions(-)

diff --git a/src/main/java/org/springblade/common/config/BladeConfiguration.java b/src/main/java/org/springblade/common/config/BladeConfiguration.java
index 1b0b95c..99ae951 100644
--- a/src/main/java/org/springblade/common/config/BladeConfiguration.java
+++ b/src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -110,6 +110,7 @@
 		secureRegistry.excludePathPatterns("/policy/**");
 		secureRegistry.excludePathPatterns("/vote/vote/**");
 		secureRegistry.excludePathPatterns("/useroption/useroption/**");
+		secureRegistry.excludePathPatterns("/energyTree/**");
 		return secureRegistry;
 	}
 
diff --git a/src/main/java/org/springblade/modules/energy/controller/EnergyController.java b/src/main/java/org/springblade/modules/energy/controller/EnergyController.java
index 8cad7d9..d8ed361 100644
--- a/src/main/java/org/springblade/modules/energy/controller/EnergyController.java
+++ b/src/main/java/org/springblade/modules/energy/controller/EnergyController.java
@@ -52,7 +52,7 @@
 import java.util.Map;
 
 /**
- *  控制器
+ * 控制器
  *
  * @author BladeX
  * @since 2020-07-19
@@ -97,8 +97,8 @@
 	@ApiOperation(value = "新增", notes = "传入dj")
 	public R save(@Valid @RequestBody Energy energy) {
 		List<String> list = energyService.selectEnergyTree(energy.getIdentification());
-		if (list==null){
-			EnergyTree energyTree= new EnergyTree();
+		if (list == null) {
+			EnergyTree energyTree = new EnergyTree();
 			energyTree.setIdentification(energy.getIdentification());
 			energyTreeService.save(energyTree);
 		}
@@ -139,13 +139,14 @@
 
 	/**
 	 * 能量统计
+	 *
 	 * @return
 	 */
 	@PostMapping("/selectTreeNum")
 	public R selectTreeNum() {
-		Date date=new Date();
-		DateFormat format=new SimpleDateFormat("yyyy-MM-dd");
-		String time=format.format(date);
+		Date date = new Date();
+		DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+		String time = format.format(date);
 		List<String> list = energyService.selectTreeNum(time);
 		List<List<String>> lists = splitList(list, 3);
 		return R.data(lists);
@@ -153,59 +154,95 @@
 
 	/**
 	 * 拾取能量
+	 *
 	 * @param id
 	 * @return
 	 */
 	@PostMapping("/updateEnergyId")
-	public R updateEnergyId(String id,String identification,int num) {
+	public R updateEnergyId(String id, String identification, int num) {
 
-		energyService.updateEnergyId(id,identification);
+		energyService.updateEnergyId(id, identification);
 		//能量树
 		String nums = energyTreeService.selectNum(identification);
-		Integer a=Integer.valueOf(nums);
-		Integer n=Integer.valueOf(num);
+		Integer a = Integer.valueOf(nums);
+		Integer n = Integer.valueOf(num);
 		int i1 = n + a;
 		String i = String.valueOf(i1);
-		energyTreeService.updateEnergyTreeId(i,identification);
+		energyTreeService.updateEnergyTreeId(i, identification);
+		return R.success("拾取成功");
+	}
+
+	/**
+	 * 拾取能量
+	 *
+	 * @return
+	 */
+	@PostMapping("/updateEnergyIds")
+	public R updateEnergyId(@Valid @RequestBody Energy energy) {
+
+		energyService.updateEnergyIds(energy.getId(), energy.getIdentification());
+		//能量树
+		String nums = energyTreeService.selectNum(energy.getIdentification());
+		Integer a = Integer.valueOf(nums);
+		Integer n = Integer.valueOf(energy.getNum());
+		int i1 = n + a;
+		String i = String.valueOf(i1);
+		energyTreeService.updateEnergyTreeId(i, energy.getIdentification());
 		return R.success("拾取成功");
 	}
 
 
-	private List<List<String>> splitList(List<String> list , int groupSize){
+	private List<List<String>> splitList(List<String> list, int groupSize) {
 		int length = list.size();
 		// 计算可以分成多少组
-		int num = ( length + groupSize - 1 )/groupSize ; // TODO
+		int num = (length + groupSize - 1) / groupSize; // TODO
 		List<List<String>> newList = new ArrayList<>(num);
 		for (int i = 0; i < num; i++) {
 			// 开始位置
 			int fromIndex = i * groupSize;
 			// 结束位置
-			int toIndex = (i+1) * groupSize < length ? ( i+1 ) * groupSize : length ;
-			newList.add(list.subList(fromIndex,toIndex)) ;
+			int toIndex = (i + 1) * groupSize < length ? (i + 1) * groupSize : length;
+			newList.add(list.subList(fromIndex, toIndex));
 		}
-		return  newList ;
+		return newList;
 	}
 
 	/**
 	 * 每天23点自动拾取能量
-	 *
 	 */
 	@PostMapping("/pickup")
-	public void pickup(String ids,String time,String identification) {
+	public void pickup(String ids, String time, String identification) {
 		String[] split = ids.split(",");
 		String strArrays = "";
 		for (int i = 0; i < split.length; i++) {
 			strArrays += "'" + split[i] + "',";
 		}
 		String code = strArrays.substring(0, strArrays.length() - 1);
-		energyService.updateEnergyType(code,time);
+		energyService.updateEnergyType(code, time);
 		//能量树
 		String nums = energyTreeService.selectNum(identification);
-		Integer a=Integer.valueOf(nums);
+		Integer a = Integer.valueOf(nums);
 		int length = split.length;
 		int i = a + length;
-		String num=String.valueOf(i);
-		energyTreeService.updateEnergyTreeId(num,identification);
+		String num = String.valueOf(i);
+		energyTreeService.updateEnergyTreeId(num, identification);
 	}
 
+	/**
+	 * 浇水
+	 *
+	 * @param energy
+	 * @return
+	 */
+	@PostMapping("/updateTre")
+	public R updateTre(@Valid @RequestBody Energy energy) {
+		//能量树
+		String nums = energyTreeService.selectNum(energy.getIdentification());
+		Integer a = Integer.valueOf(nums);
+		int i1 = a+1;
+		String i = String.valueOf(i1);
+		energyTreeService.updateEnergyTreeId(i, energy.getIdentification());
+		String nu = energyTreeService.selectNum(energy.getIdentification());
+		return R.data(nu);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.java b/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.java
index e4d3eba..ad73896 100644
--- a/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.java
+++ b/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.java
@@ -35,6 +35,7 @@
 	List<String> selectTreeNum(String time);
 	List<String> selectEnergyTree(String identification);
 	void  updateEnergyId(String id,String identification);
+	void  updateEnergyIds(Integer id,String identification);
 	void  updateEnergyType(String code,String time);
 	String selectType(String time);
 }
diff --git a/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.xml b/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.xml
index b1d9501..2ac9fa6 100644
--- a/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.xml
+++ b/src/main/java/org/springblade/modules/energy/mapper/EnergyMapper.xml
@@ -19,6 +19,10 @@
         UPDATE sys_energy SET
             type = 0 WHERE id = #{id} and identification=#{identification}
     </update>
+    <update id="updateEnergyIds">
+        UPDATE sys_energy SET
+            type = 0 WHERE id = #{id} and identification=#{identification}
+    </update>
 
     <select id="selectType" resultType="java.lang.String">
         select GROUP_CONCAT(id) as ids from sys_energy WHERE type=1 and time=#{time};
diff --git a/src/main/java/org/springblade/modules/energy/service/IEnergyService.java b/src/main/java/org/springblade/modules/energy/service/IEnergyService.java
index c8771be..b2a7739 100644
--- a/src/main/java/org/springblade/modules/energy/service/IEnergyService.java
+++ b/src/main/java/org/springblade/modules/energy/service/IEnergyService.java
@@ -18,6 +18,7 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import io.swagger.models.auth.In;
 import org.springblade.modules.dj.entity.Dj;
 import org.springblade.modules.dj.vo.DjVO;
 import org.springblade.modules.energy.entity.Energy;
@@ -34,6 +35,7 @@
 public interface IEnergyService extends IService<Energy> {
 	List<String> selectTreeNum(String time);
 	void  updateEnergyId(String id,String identification);
+	void  updateEnergyIds(Integer id, String identification);
 	void  updateEnergyType(String code,String time);
 	String selectType(String time);
 	List<String> selectEnergyTree(String identification);
diff --git a/src/main/java/org/springblade/modules/energy/service/impl/EnergyServiceImpl.java b/src/main/java/org/springblade/modules/energy/service/impl/EnergyServiceImpl.java
index 9530982..e4d0689 100644
--- a/src/main/java/org/springblade/modules/energy/service/impl/EnergyServiceImpl.java
+++ b/src/main/java/org/springblade/modules/energy/service/impl/EnergyServiceImpl.java
@@ -53,6 +53,11 @@
 	}
 
 	@Override
+	public void updateEnergyIds(Integer id, String identification) {
+		baseMapper.updateEnergyIds(id,identification);
+	}
+
+	@Override
 	public void updateEnergyType(String code,String time) {
 		baseMapper.updateEnergyType(code,time);
 	}

--
Gitblit v1.9.3