|
@@ -0,0 +1,121 @@
|
|
|
+package com.huimv.env.produce.service.impl;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.huimv.common.utils.Result;
|
|
|
+import com.huimv.common.utils.ResultCode;
|
|
|
+import com.huimv.env.produce.entity.Stock;
|
|
|
+import com.huimv.env.produce.entity.StockDetail;
|
|
|
+import com.huimv.env.produce.mapper.SalesDetailMapper;
|
|
|
+import com.huimv.env.produce.mapper.SalesMapper;
|
|
|
+import com.huimv.env.produce.mapper.StockDetailMapper;
|
|
|
+import com.huimv.env.produce.mapper.StockMapper;
|
|
|
+import com.huimv.env.produce.service.StockDetailService;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import javax.management.Query;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author zn
|
|
|
+ * @since 2022-11-01
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class StockDetailServiceImpl extends ServiceImpl<StockDetailMapper, StockDetail> implements StockDetailService {
|
|
|
+ @Autowired
|
|
|
+ private StockMapper stockMapper;
|
|
|
+ @Autowired
|
|
|
+ private StockDetailMapper stockDetailMapper;
|
|
|
+ //默认牧场
|
|
|
+ private static final String DEFAULT_FARM_CODE = "14";
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result getStock(Map<String, String> paramsMap) {
|
|
|
+ //
|
|
|
+ String farmCode = paramsMap.get("farmCode");
|
|
|
+ if (farmCode == null) {
|
|
|
+ farmCode = DEFAULT_FARM_CODE;
|
|
|
+ }
|
|
|
+ JSONObject resultJo = new JSONObject();
|
|
|
+ //查询总表
|
|
|
+ QueryWrapper<Stock> totalQueryWrapper = new QueryWrapper();
|
|
|
+ totalQueryWrapper.eq("farm_code", farmCode);
|
|
|
+ Stock stock = stockMapper.selectOne(totalQueryWrapper);
|
|
|
+ if (stock == null) {
|
|
|
+ resultJo.put("boarCount", 0);
|
|
|
+ resultJo.put("sowCount", 0);
|
|
|
+ resultJo.put("fatpigsCount", 0);
|
|
|
+ } else {
|
|
|
+ resultJo.put("boarCount", stock.getBoarCount());
|
|
|
+ resultJo.put("sowCount", stock.getSowCount());
|
|
|
+ resultJo.put("fatpigsCount", stock.getFatpigsCount());
|
|
|
+ }
|
|
|
+ //查询明细表
|
|
|
+ QueryWrapper<StockDetail> detailQueryWrapper = new QueryWrapper();
|
|
|
+ detailQueryWrapper.eq("farm_code", farmCode);
|
|
|
+ List<StockDetail> stockDetailList = stockDetailMapper.selectList(detailQueryWrapper);
|
|
|
+ resultJo.put("list", stockDetailList);
|
|
|
+ return new Result(ResultCode.SUCCESS, resultJo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result save(Map<String, String> paramsMap) {
|
|
|
+ //
|
|
|
+ String farmCode = paramsMap.get("farmCode");
|
|
|
+ if (farmCode == null) {
|
|
|
+ farmCode = DEFAULT_FARM_CODE;
|
|
|
+ }
|
|
|
+ //删除总表
|
|
|
+ QueryWrapper<Stock> totalQueryWrapper = new QueryWrapper();
|
|
|
+ totalQueryWrapper.eq("farm_code", farmCode);
|
|
|
+ stockMapper.delete(totalQueryWrapper);
|
|
|
+
|
|
|
+ //删除明细表
|
|
|
+ QueryWrapper<StockDetail> detailQueryWrapper = new QueryWrapper();
|
|
|
+ detailQueryWrapper.eq("farm_code", farmCode);
|
|
|
+ stockDetailMapper.delete(detailQueryWrapper);
|
|
|
+
|
|
|
+ //新增明细表
|
|
|
+ String list = paramsMap.get("list");
|
|
|
+ JSONArray listJa = JSONArray.parseArray(list);
|
|
|
+ int boarTotal = 0;
|
|
|
+ int sowTotal = 0;
|
|
|
+ int fatpigsTotal = 0;
|
|
|
+ for (int a = 0; a < listJa.size(); a++) {
|
|
|
+ JSONObject listJo = listJa.getJSONObject(a);
|
|
|
+ StockDetail stockDetail = new StockDetail();
|
|
|
+ stockDetail.setBoarCount(listJo.getInteger("boarCount"));
|
|
|
+ stockDetail.setSowCount(listJo.getInteger("sowCount"));
|
|
|
+ stockDetail.setFatpigsCount(listJo.getInteger("fatpigsCount"));
|
|
|
+ stockDetail.setFarmCode(farmCode);
|
|
|
+ stockDetailMapper.insert(stockDetail);
|
|
|
+ boarTotal += listJo.getInteger("boarCount");
|
|
|
+ sowTotal += listJo.getInteger("sowCount");
|
|
|
+ fatpigsTotal += listJo.getInteger("fatpigsCount");
|
|
|
+ }
|
|
|
+
|
|
|
+ //新增总表
|
|
|
+ Stock stock = new Stock();
|
|
|
+ stock.setFarmCode(farmCode);
|
|
|
+ stock.setFatpigsCount(fatpigsTotal);
|
|
|
+ stock.setSowCount(sowTotal);
|
|
|
+ stock.setBoarCount(boarTotal);
|
|
|
+ stockMapper.insert(stock);
|
|
|
+ return new Result(ResultCode.SUCCESS);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Result remove(Map<String, String> paramsMap) {
|
|
|
+ String id = paramsMap.get("id");
|
|
|
+ stockDetailMapper.deleteById(id);
|
|
|
+ return new Result(ResultCode.SUCCESS);
|
|
|
+ }
|
|
|
+}
|