package org.springblade.modules.farmplant.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.modules.farmplant.entity.FarmProductStock; import org.springblade.modules.farmplant.mapper.FarmProductStockMapper; import org.springblade.modules.farmplant.service.FarmProductStockService; import org.springblade.modules.farmplant.vo.FarmProductStockVO; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; import java.util.Map; /** * 农产品库存服务实现类 * @since 2022-05-18 * @author zhongrj */ @Service public class FarmProductStockServiceImpl extends ServiceImpl implements FarmProductStockService { /** * 自定义分页 * @param page * @param farmProductStock * @return */ @Override public IPage selectFarmProductStockPage(IPage page, FarmProductStockVO farmProductStock) { return page.setRecords(baseMapper.selectFarmProductStockPage(page, farmProductStock)); } @Override public List selectFarmProductStockPages(FarmProductStockVO farmProductStock) { return baseMapper.selectFarmProductStockPages(farmProductStock); } /** * 统计产量 * @param farmProductStock * @return */ @Override public FarmProductStockVO statisticsProduct(FarmProductStockVO farmProductStock) { List stockVOs = baseMapper.statisticsProduct(farmProductStock); FarmProductStockVO stock = new FarmProductStockVO(); BigDecimal decimal = new BigDecimal(0.0); //遍历 for (FarmProductStockVO stockVO : stockVOs) { BigDecimal bg = new BigDecimal(stockVO.getWeight()); decimal = decimal.add(bg.setScale(2, BigDecimal.ROUND_HALF_UP)); } stock.setWeight(decimal.toString()); //返回 return stock; } @Override public IPage statisticsProductx(IPage page, FarmProductStockVO farmProductStock) { return page.setRecords(baseMapper.statisticsProductx(page, farmProductStock)); } @Override public Map selctProductCount(String year) { return baseMapper.selctProductCount(year); } @Override public Map statisticsStock(String year,String deptId) { return baseMapper.statisticsStock(year,deptId); } @Override public List> statisticsStockMonth(String year,String deptId) { //按年统计 if (year.length()==4){ return baseMapper.statisticsStockYear(year,deptId); } //按月统计 if (year.length()==7){ return baseMapper.statisticsStockMonth(year,deptId); } //按日统计 if (year.length()==10){ return baseMapper.statisticsStockDay(year,deptId); } return null; } @Override public Map productsSupervise(String year,String deptId) { return baseMapper.productsSupervise(year,deptId); } @Override public List> statisticsYield(String year,String deptId) { return baseMapper.statisticsYield(year,deptId); } @Override public boolean stockCompare(double sale,String id) { return baseMapper.stockCompare(sale,id); } @Override public boolean stockReduce(double sale,String id) { return baseMapper.stockReduce(sale,id); } }