MoneyCostServiceImpl.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package vip.xiaonuo.money.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.core.toolkit.StringUtils;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import vip.xiaonuo.money.entity.MoneyCost;
  6. import vip.xiaonuo.money.entity.MoneyProducePrice;
  7. import vip.xiaonuo.money.mapper.MoneyCostMapper;
  8. import vip.xiaonuo.money.param.MoneyInOutParam;
  9. import vip.xiaonuo.money.service.IMoneyCostService;
  10. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  11. import org.springframework.stereotype.Service;
  12. import java.text.SimpleDateFormat;
  13. import java.util.ArrayList;
  14. import java.util.Calendar;
  15. import java.util.Date;
  16. import java.util.List;
  17. /**
  18. * <p>
  19. * 财务费用分析 服务实现类
  20. * </p>
  21. *
  22. * @author author
  23. * @since 2024-11-21
  24. */
  25. @Service
  26. public class MoneyCostServiceImpl extends ServiceImpl<MoneyCostMapper, MoneyCost> implements IMoneyCostService {
  27. @Autowired
  28. private MoneyCostMapper costMapper;
  29. @Override
  30. public List<MoneyCost> listCost(MoneyInOutParam outParam) {
  31. Calendar calendar = Calendar.getInstance();
  32. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  33. calendar.add(Calendar.MONTH, -11);
  34. String currentDateString = sdf.format(calendar.getTime());
  35. QueryWrapper<MoneyCost> queryWrapper = new QueryWrapper<>();
  36. queryWrapper.ge("create_time", currentDateString);
  37. queryWrapper.eq(StringUtils.isNotBlank(outParam.getOrgId()), "org_id", outParam.getOrgId());
  38. queryWrapper.select(" IFNULL(sum(manage),'0') manage,IFNULL(sum(sale),'0') sale,IFNULL(sum(finance),'0') finance," +
  39. "create_time createTime");
  40. queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')");
  41. queryWrapper.orderByAsc("create_time");
  42. return costMapper.selectList(queryWrapper);
  43. }
  44. }