Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
83
src/main/java/com/mini/capi/api/biz/appController.java
Normal file
83
src/main/java/com/mini/capi/api/biz/appController.java
Normal file
@@ -0,0 +1,83 @@
|
||||
package com.mini.capi.api.biz;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountWeekView;
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountYearView;
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryView;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryAccountWeekViewService;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryAccountYearViewService;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryViewService;
|
||||
import com.mini.capi.model.ApiResult;
|
||||
import com.mini.capi.model.ChartResult;
|
||||
import com.mini.capi.utils.DateUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/appApi")
|
||||
public class appController {
|
||||
|
||||
|
||||
@Resource
|
||||
private ErpPeriodSummaryViewService summaryViewService;
|
||||
|
||||
|
||||
@Resource
|
||||
private ErpPeriodSummaryAccountWeekViewService weekViewService;
|
||||
|
||||
@Resource
|
||||
private ErpPeriodSummaryAccountYearViewService yearViewService;
|
||||
|
||||
|
||||
/**
|
||||
* 实时汇总
|
||||
*/
|
||||
@GetMapping("getSummaryChart")
|
||||
public ApiResult<?> getSummaryChart(String cycleType) {
|
||||
QueryWrapper<ErpPeriodSummaryView> queryWrapper = new QueryWrapper<>();
|
||||
if (StringUtils.hasText(cycleType)) {
|
||||
queryWrapper.eq("cycle_type", cycleType);
|
||||
String cycleCode = DateUtils.calculateStartCycleCode(cycleType);
|
||||
if (cycleCode != null) {
|
||||
queryWrapper.ge("cycle_code", cycleCode);
|
||||
}
|
||||
}
|
||||
List<ErpPeriodSummaryView> summaryViews = summaryViewService.list(queryWrapper);
|
||||
return ApiResult.success(summaryViews);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 账号周汇总
|
||||
*/
|
||||
@GetMapping("getCardWeekChart")
|
||||
public ApiResult<?> getCardWeekChart() {
|
||||
List<ChartResult> chartResults = new ArrayList<>();
|
||||
List<ErpPeriodSummaryAccountWeekView> weekViews = weekViewService.list();
|
||||
for (ErpPeriodSummaryAccountWeekView weekView : weekViews) {
|
||||
chartResults.add(new ChartResult(weekView.getAccountName(), weekView.getType(), weekView.getAmount()));
|
||||
}
|
||||
return ApiResult.success(chartResults);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 账号年汇总
|
||||
*/
|
||||
@GetMapping("getCardYearChart")
|
||||
public ApiResult<?> getCardYearChart() {
|
||||
List<ChartResult> chartResults = new ArrayList<>();
|
||||
List<ErpPeriodSummaryAccountYearView> weekViews = yearViewService.list();
|
||||
for (ErpPeriodSummaryAccountYearView weekView : weekViews) {
|
||||
chartResults.add(new ChartResult(weekView.getAccountName(), weekView.getType(), weekView.getAmount()));
|
||||
}
|
||||
return ApiResult.success(chartResults);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryAccountWeekView")
|
||||
public class ErpPeriodSummaryAccountWeekViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryAccountYearView")
|
||||
public class ErpPeriodSummaryAccountYearViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryAllView")
|
||||
public class ErpPeriodSummaryAllViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryView")
|
||||
public class ErpPeriodSummaryViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryWeekView")
|
||||
public class ErpPeriodSummaryWeekViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.mini.capi.biz.controller;
|
||||
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/biz/erpPeriodSummaryYearView")
|
||||
public class ErpPeriodSummaryYearViewController {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_account_week_view")
|
||||
public class ErpPeriodSummaryAccountWeekView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("account_name")
|
||||
private String accountName;
|
||||
|
||||
@TableField("amount")
|
||||
private BigDecimal amount;
|
||||
|
||||
@TableField("type")
|
||||
private String type;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_account_year_view")
|
||||
public class ErpPeriodSummaryAccountYearView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("account_name")
|
||||
private String accountName;
|
||||
|
||||
@TableField("amount")
|
||||
private BigDecimal amount;
|
||||
|
||||
@TableField("type")
|
||||
private String type;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_all_view")
|
||||
public class ErpPeriodSummaryAllView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("category_name")
|
||||
private String categoryName;
|
||||
|
||||
@TableField("account_name")
|
||||
private String accountName;
|
||||
|
||||
@TableField("f_full_name")
|
||||
private String fFullName;
|
||||
|
||||
@TableField("type")
|
||||
private String type;
|
||||
|
||||
@TableField("amount")
|
||||
private BigDecimal amount;
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_view")
|
||||
public class ErpPeriodSummaryView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("create_time")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@TableField("summary_id")
|
||||
private Long summaryId;
|
||||
|
||||
@TableField("cycle_type")
|
||||
private String cycleType;
|
||||
|
||||
@TableField("cycle_code")
|
||||
private String cycleCode;
|
||||
|
||||
@TableField("total_income")
|
||||
private BigDecimal totalIncome;
|
||||
|
||||
@TableField("total_expense")
|
||||
private BigDecimal totalExpense;
|
||||
|
||||
@TableField("net_cashflow")
|
||||
private BigDecimal netCashflow;
|
||||
|
||||
@TableField("income_count")
|
||||
private BigDecimal incomeCount;
|
||||
|
||||
@TableField("expense_count")
|
||||
private BigDecimal expenseCount;
|
||||
|
||||
@TableField("update_time")
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
@TableField("f_tenant_id")
|
||||
private String fTenantId;
|
||||
|
||||
@TableField("f_flow_id")
|
||||
private byte[] fFlowId;
|
||||
|
||||
@TableField("f_flow_task_id")
|
||||
private byte[] fFlowTaskId;
|
||||
|
||||
@TableField("f_flow_state")
|
||||
private byte[] fFlowState;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_week_view")
|
||||
public class ErpPeriodSummaryWeekView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("category_name")
|
||||
private String categoryName;
|
||||
|
||||
@TableField("account_name")
|
||||
private String accountName;
|
||||
|
||||
@TableField("f_full_name")
|
||||
private String fFullName;
|
||||
|
||||
@TableField("type")
|
||||
private String type;
|
||||
|
||||
@TableField("amount")
|
||||
private BigDecimal amount;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.mini.capi.biz.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@TableName("erp_period_summary_year_view")
|
||||
public class ErpPeriodSummaryYearView implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("category_name")
|
||||
private String categoryName;
|
||||
|
||||
@TableField("account_name")
|
||||
private String accountName;
|
||||
|
||||
@TableField("f_full_name")
|
||||
private String fFullName;
|
||||
|
||||
@TableField("type")
|
||||
private String type;
|
||||
|
||||
@TableField("amount")
|
||||
private BigDecimal amount;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountWeekView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAccountWeekViewMapper extends BaseMapper<ErpPeriodSummaryAccountWeekView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountYearView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAccountYearViewMapper extends BaseMapper<ErpPeriodSummaryAccountYearView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAllView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAllViewMapper extends BaseMapper<ErpPeriodSummaryAllView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryViewMapper extends BaseMapper<ErpPeriodSummaryView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryWeekView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryWeekViewMapper extends BaseMapper<ErpPeriodSummaryWeekView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.mapper;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryYearView;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryYearViewMapper extends BaseMapper<ErpPeriodSummaryYearView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountWeekView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAccountWeekViewService extends IService<ErpPeriodSummaryAccountWeekView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountYearView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAccountYearViewService extends IService<ErpPeriodSummaryAccountYearView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAllView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryAllViewService extends IService<ErpPeriodSummaryAllView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryViewService extends IService<ErpPeriodSummaryView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryWeekView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryWeekViewService extends IService<ErpPeriodSummaryWeekView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.mini.capi.biz.service;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryYearView;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
public interface ErpPeriodSummaryYearViewService extends IService<ErpPeriodSummaryYearView> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountWeekView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryAccountWeekViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryAccountWeekViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryAccountWeekViewServiceImpl extends ServiceImpl<ErpPeriodSummaryAccountWeekViewMapper, ErpPeriodSummaryAccountWeekView> implements ErpPeriodSummaryAccountWeekViewService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAccountYearView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryAccountYearViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryAccountYearViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryAccountYearViewServiceImpl extends ServiceImpl<ErpPeriodSummaryAccountYearViewMapper, ErpPeriodSummaryAccountYearView> implements ErpPeriodSummaryAccountYearViewService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryAllView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryAllViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryAllViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryAllViewServiceImpl extends ServiceImpl<ErpPeriodSummaryAllViewMapper, ErpPeriodSummaryAllView> implements ErpPeriodSummaryAllViewService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryViewServiceImpl extends ServiceImpl<ErpPeriodSummaryViewMapper, ErpPeriodSummaryView> implements ErpPeriodSummaryViewService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryWeekView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryWeekViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryWeekViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryWeekViewServiceImpl extends ServiceImpl<ErpPeriodSummaryWeekViewMapper, ErpPeriodSummaryWeekView> implements ErpPeriodSummaryWeekViewService {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mini.capi.biz.service.impl;
|
||||
|
||||
import com.mini.capi.biz.domain.ErpPeriodSummaryYearView;
|
||||
import com.mini.capi.biz.mapper.ErpPeriodSummaryYearViewMapper;
|
||||
import com.mini.capi.biz.service.ErpPeriodSummaryYearViewService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* VIEW 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author gaoxq
|
||||
* @since 2025-11-11
|
||||
*/
|
||||
@Service
|
||||
public class ErpPeriodSummaryYearViewServiceImpl extends ServiceImpl<ErpPeriodSummaryYearViewMapper, ErpPeriodSummaryYearView> implements ErpPeriodSummaryYearViewService {
|
||||
|
||||
}
|
||||
24
src/main/java/com/mini/capi/model/ChartResult.java
Normal file
24
src/main/java/com/mini/capi/model/ChartResult.java
Normal file
@@ -0,0 +1,24 @@
|
||||
package com.mini.capi.model;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
public class ChartResult implements Serializable {
|
||||
|
||||
|
||||
private String name;
|
||||
|
||||
private String type;
|
||||
|
||||
private BigDecimal value;
|
||||
|
||||
|
||||
public ChartResult(String name, String type, BigDecimal value) {
|
||||
this.name = name;
|
||||
this.type = type;
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
@@ -1,63 +1,66 @@
|
||||
package com.mini.capi.utils;
|
||||
|
||||
import com.mini.capi.model.DateInfo;
|
||||
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
|
||||
public class DateUtils {
|
||||
|
||||
/**
|
||||
* 格式化当前日期
|
||||
*
|
||||
* @param pattern 格式模式
|
||||
* @return 格式化后的日期字符串
|
||||
*/
|
||||
public static String formatCurrentDate(String pattern) {
|
||||
return LocalDateTime.now().format(DateTimeFormatter.ofPattern(pattern));
|
||||
// 日期格式化器(线程安全,复用提升性能)
|
||||
private static final DateTimeFormatter DAY_FORMATTER = DateTimeFormatter.ISO_LOCAL_DATE; // yyyy-MM-dd
|
||||
private static final DateTimeFormatter MONTH_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM"); // yyyy-MM
|
||||
|
||||
|
||||
public static String calculateStartCycleCode(String cycleType) {
|
||||
// 默认使用当前日期计算,留参便于测试时指定日期
|
||||
return calculateStartCycleCode(cycleType, LocalDate.now());
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化指定日期
|
||||
* 重载方法:支持指定基准日期计算起始cycleCode(便于测试)
|
||||
*
|
||||
* @param date 日期
|
||||
* @param pattern 格式模式
|
||||
* @return 格式化后的日期字符串
|
||||
* @param cycleType 周期类型(D:日, M:月, Q:季度, Y:年)
|
||||
* @param baseDate 基准日期(以此日期为起点计算时间范围)
|
||||
* @return 起始cycleCode(符合对应格式),未识别类型返回null
|
||||
*/
|
||||
public static String formatDate(LocalDateTime date, String pattern) {
|
||||
if (date == null) {
|
||||
return "";
|
||||
public static String calculateStartCycleCode(String cycleType, LocalDate baseDate) {
|
||||
if (baseDate == null) {
|
||||
throw new IllegalArgumentException("基准日期不能为null");
|
||||
}
|
||||
return date.format(DateTimeFormatter.ofPattern(pattern));
|
||||
if (cycleType == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return switch (cycleType) {
|
||||
case "D" ->
|
||||
// 日:最近30天,格式 yyyy-MM-dd
|
||||
baseDate.minusDays(30).format(DAY_FORMATTER);
|
||||
case "M" ->
|
||||
// 月:最近1年,格式 yyyy-MM
|
||||
baseDate.minusYears(1).format(MONTH_FORMATTER);
|
||||
case "Q" ->
|
||||
// 季度:最近3年,格式 yyyy-Qx
|
||||
getQuarterCycleCode(baseDate.minusYears(3));
|
||||
case "Y" ->
|
||||
// 年:最近6年,格式 yyyy
|
||||
String.valueOf(baseDate.minusYears(6).getYear());
|
||||
default ->
|
||||
// 未识别的周期类型,返回null
|
||||
null;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
public static String getSevenDaysAgo() {
|
||||
// 获取当前日期
|
||||
LocalDate today = LocalDate.now();
|
||||
// 减去7天
|
||||
LocalDate sevenDaysAgo = today.minusDays(7);
|
||||
// 格式化日期为yyyymmdd
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
|
||||
return sevenDaysAgo.format(formatter);
|
||||
/**
|
||||
* 计算指定日期对应的季度cycleCode(格式:yyyy-Qx)
|
||||
*
|
||||
* @param date 日期
|
||||
* @return 季度cycleCode(如2023-Q3)
|
||||
*/
|
||||
private static String getQuarterCycleCode(LocalDate date) {
|
||||
int month = date.getMonthValue(); // 1-12月
|
||||
int quarter = (month - 1) / 3 + 1;
|
||||
return String.format("%d-Q%d", date.getYear(), quarter);
|
||||
}
|
||||
|
||||
|
||||
public static DateInfo getDates() {
|
||||
// 获取当前日期
|
||||
LocalDate today = LocalDate.now();
|
||||
// 1. 获取昨天(yyyyMMdd)
|
||||
LocalDate yesterday = today.minusDays(1);
|
||||
String yesterdayStr = yesterday.format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
||||
// 2. 获取当月(yyyyMM)
|
||||
String currentMonthStr = today.format(DateTimeFormatter.ofPattern("yyyyMM"));
|
||||
// 3. 获取当前季度(yyyyQ1-Q4)
|
||||
int quarter = (today.getMonthValue() - 1) / 3 + 1;
|
||||
String currentQuarterStr = today.format(DateTimeFormatter.ofPattern("yyyy")) + "Q" + quarter;
|
||||
// 4. 获取当前年度(yyyy)
|
||||
String currentYearStr = today.format(DateTimeFormatter.ofPattern("yyyy"));
|
||||
DateInfo dateInfo = new DateInfo(yesterdayStr, currentMonthStr, currentQuarterStr, currentYearStr);
|
||||
return dateInfo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryAccountWeekViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryAccountWeekView">
|
||||
<result column="account_name" property="accountName" />
|
||||
<result column="amount" property="amount" />
|
||||
<result column="type" property="type" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
account_name, amount, type
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryAccountYearViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryAccountYearView">
|
||||
<result column="account_name" property="accountName" />
|
||||
<result column="amount" property="amount" />
|
||||
<result column="type" property="type" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
account_name, amount, type
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
19
src/main/resources/mapper/ErpPeriodSummaryAllViewMapper.xml
Normal file
19
src/main/resources/mapper/ErpPeriodSummaryAllViewMapper.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryAllViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryAllView">
|
||||
<result column="category_name" property="categoryName" />
|
||||
<result column="account_name" property="accountName" />
|
||||
<result column="f_full_name" property="fFullName" />
|
||||
<result column="type" property="type" />
|
||||
<result column="amount" property="amount" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
category_name, account_name, f_full_name, type, amount
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
28
src/main/resources/mapper/ErpPeriodSummaryViewMapper.xml
Normal file
28
src/main/resources/mapper/ErpPeriodSummaryViewMapper.xml
Normal file
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryView">
|
||||
<result column="create_time" property="createTime" />
|
||||
<result column="summary_id" property="summaryId" />
|
||||
<result column="cycle_type" property="cycleType" />
|
||||
<result column="cycle_code" property="cycleCode" />
|
||||
<result column="total_income" property="totalIncome" />
|
||||
<result column="total_expense" property="totalExpense" />
|
||||
<result column="net_cashflow" property="netCashflow" />
|
||||
<result column="income_count" property="incomeCount" />
|
||||
<result column="expense_count" property="expenseCount" />
|
||||
<result column="update_time" property="updateTime" />
|
||||
<result column="f_tenant_id" property="fTenantId" />
|
||||
<result column="f_flow_id" property="fFlowId" />
|
||||
<result column="f_flow_task_id" property="fFlowTaskId" />
|
||||
<result column="f_flow_state" property="fFlowState" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
create_time, summary_id, cycle_type, cycle_code, total_income, total_expense, net_cashflow, income_count, expense_count, update_time, f_tenant_id, f_flow_id, f_flow_task_id, f_flow_state
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
19
src/main/resources/mapper/ErpPeriodSummaryWeekViewMapper.xml
Normal file
19
src/main/resources/mapper/ErpPeriodSummaryWeekViewMapper.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryWeekViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryWeekView">
|
||||
<result column="category_name" property="categoryName" />
|
||||
<result column="account_name" property="accountName" />
|
||||
<result column="f_full_name" property="fFullName" />
|
||||
<result column="type" property="type" />
|
||||
<result column="amount" property="amount" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
category_name, account_name, f_full_name, type, amount
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
19
src/main/resources/mapper/ErpPeriodSummaryYearViewMapper.xml
Normal file
19
src/main/resources/mapper/ErpPeriodSummaryYearViewMapper.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.mini.capi.biz.mapper.ErpPeriodSummaryYearViewMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.mini.capi.biz.domain.ErpPeriodSummaryYearView">
|
||||
<result column="category_name" property="categoryName" />
|
||||
<result column="account_name" property="accountName" />
|
||||
<result column="f_full_name" property="fFullName" />
|
||||
<result column="type" property="type" />
|
||||
<result column="amount" property="amount" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
category_name, account_name, f_full_name, type, amount
|
||||
</sql>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user