Browse Source

存栏数据

wwh 2 years ago
parent
commit
d41b2a0e64

+ 15 - 1
huimv-cattle/pom.xml

@@ -21,7 +21,11 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
-
+        <dependency>
+            <groupId>com.huimv</groupId>
+            <artifactId>huimv-common</artifactId>
+            <version>0.0.6-SNAPSHOT</version>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>
@@ -125,15 +129,25 @@
                 <version>2.6</version>
             </plugin>
         </plugins>
+        <!-- 如果不添加此节点mybatis的mapper.xml文件都会被漏掉。 -->
         <resources>
             <resource>
                 <directory>src/main/java</directory>
                 <includes>
+                    <include>**/*.yml</include>
+                    <include>**/*.properties</include>
                     <include>**/*.xml</include>
                 </includes>
+                <filtering>false</filtering>
             </resource>
             <resource>
                 <directory>src/main/resources</directory>
+                <includes>
+                    <include>**/*.yml</include>
+                    <include>**/*.properties</include>
+                    <include>**/*.xml</include>
+                </includes>
+                <filtering>false</filtering>
             </resource>
         </resources>
     </build>

+ 19 - 1
huimv-cattle/src/main/java/com/huimv/cattle/controller/StockController.java

@@ -1,10 +1,18 @@
 package com.huimv.cattle.controller;
 
 
+import com.huimv.cattle.service.StockService;
+import com.huimv.common.utils.Result;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletRequest;
+import java.util.Map;
+
 /**
  * <p>
  *  前端控制器
@@ -14,8 +22,18 @@ import org.springframework.web.bind.annotation.RestController;
  * @since 2022-12-14
  */
 @RestController
-@RequestMapping("/stock")
+@RequestMapping("/v1.0.0/all")
 public class StockController {
+    @Autowired
+    private StockService stockService;
+    @PostMapping("/getStock")
+    public Result list(@RequestBody Map<String,String> paramsMap) {
+        return stockService.getStock(paramsMap);
+    }
 
+    @PostMapping("/saveStock")
+    public Result saveStock(@RequestBody Map<String,String> paramsMap) {
+        return stockService.add(paramsMap);
+    }
 }
 

+ 6 - 0
huimv-cattle/src/main/java/com/huimv/cattle/mapper/StockMapper.java

@@ -2,6 +2,10 @@ package com.huimv.cattle.mapper;
 
 import com.huimv.cattle.pojo.Stock;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+import javax.xml.transform.Result;
+import java.util.Map;
 
 /**
  * <p>
@@ -11,6 +15,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author zn
  * @since 2022-12-14
  */
+@Repository
 public interface StockMapper extends BaseMapper<Stock> {
 
+    Stock getList();
 }

+ 3 - 0
huimv-cattle/src/main/java/com/huimv/cattle/mapper/xml/StockMapper.xml

@@ -14,5 +14,8 @@
     <sql id="Base_Column_List">
         id, fat_stock, cow_stock, bull_stock
     </sql>
+    <select id="getList" resultType="com.huimv.cattle.pojo.Stock">
+        select * from  stock
+    </select>
 
 </mapper>

+ 7 - 0
huimv-cattle/src/main/java/com/huimv/cattle/service/StockService.java

@@ -2,6 +2,11 @@ package com.huimv.cattle.service;
 
 import com.huimv.cattle.pojo.Stock;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.common.utils.Result;
+
+import javax.servlet.http.HttpServletRequest;
+
+import java.util.Map;
 
 /**
  * <p>
@@ -12,5 +17,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2022-12-14
  */
 public interface StockService extends IService<Stock> {
+    Result getStock(Map<String,String> paramsMap);
 
+    Result add(Map<String,String> paramsMap);
 }

+ 65 - 0
huimv-cattle/src/main/java/com/huimv/cattle/service/impl/StockServiceImpl.java

@@ -1,11 +1,20 @@
 package com.huimv.cattle.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.huimv.cattle.pojo.Stock;
 import com.huimv.cattle.mapper.StockMapper;
 import com.huimv.cattle.service.StockService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.common.utils.Result;
+import com.huimv.common.utils.ResultCode;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+
+import java.text.NumberFormat;
+import java.util.Map;
+
 /**
  * <p>
  *  服务实现类
@@ -17,4 +26,60 @@ import org.springframework.stereotype.Service;
 @Service
 public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements StockService {
 
+    @Autowired
+    StockMapper stockMapper;
+    @Override
+    public Result getStock(Map<String, String> paramsMap) {
+        Stock stock = stockMapper.getList();
+        JSONObject jsonObject = new JSONObject();
+        if (ObjectUtil.isEmpty(stock)) {
+            jsonObject.put("fatStock", 0);
+            jsonObject.put("cowStock", 0);
+            jsonObject.put("bullStock", 0);
+            jsonObject.put("count", 0);
+            jsonObject.put("fat", 0);
+            jsonObject.put("cow", 0);
+            jsonObject.put("bull", 0);
+        } else {
+            Integer count=stock.getFatStock()+stock.getBullStock()+stock.getCowStock();
+            //创建一个数值格式化对象
+            NumberFormat numberFormat = NumberFormat.getInstance();
+            //设置精确到小数点后2位
+            numberFormat.setMaximumFractionDigits(2);
+            String fat=numberFormat.format((float)stock.getFatStock() / (float)count * 100) + "%";
+            String cow=numberFormat.format((float)stock.getCowStock() / (float)count * 100) + "%";
+            String bull=numberFormat.format((float)stock.getBullStock() /(float) count * 100) + "%";
+            jsonObject.put("fatStock", stock.getFatStock());
+            jsonObject.put("cowStock", stock.getCowStock());
+            jsonObject.put("bullStock", stock.getBullStock());
+            jsonObject.put("count", count);
+            jsonObject.put("fat", fat);
+            jsonObject.put("cow", cow);
+            jsonObject.put("bull", bull);
+        }
+        return new Result(ResultCode.SUCCESS,jsonObject);
+    }
+
+    @Override
+    public Result add(Map<String, String> paramsMap) {
+        Integer fatStock = Integer.parseInt(paramsMap.get("fatStock"));
+        Integer cowStock = Integer.parseInt(paramsMap.get("cowStock"));
+        Integer bullStock = Integer.parseInt(paramsMap.get("bullStock"));
+        String id = paramsMap.get("id");
+        if (ObjectUtil.isEmpty(stockMapper.selectById(id))) {
+            Stock stock = new Stock();
+            stock.setFatStock(fatStock);
+            stock.setCowStock(cowStock);
+            stock.setBullStock(bullStock);
+            stockMapper.insert(stock);
+            return new Result(ResultCode.SUCCESS);
+        } else {
+            Stock stock = stockMapper.selectById(id);
+            stock.setFatStock(fatStock);
+            stock.setCowStock(cowStock);
+            stock.setBullStock(bullStock);
+            stockMapper.updateById(stock);
+            return new Result(ResultCode.SUCCESS);
+        }
+    }
 }

+ 1 - 1
huimv-cattle/src/main/resources/application-dev.yml

@@ -110,4 +110,4 @@ mybatis-plus:
   configuration:
     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
   # mapper.xml文件所存放的位置
-  mapper-locations: classpath*:com/huimv/eartag2/manage2/mapper/xml/*.xml  # 不加这一行出错:“org.apache.ibatis.binding.BindingException:  Invalid bound statement (not found)”
+  mapper-locations: classpath*:com/huimv/cattle/mapper/xml/*.xml  # 不加这一行出错:“org.apache.ibatis.binding.BindingException:  Invalid bound statement (not found)”