月度汇总视图查询接口;
This commit is contained in:
+62
@@ -33,6 +33,7 @@ import com.mhd.bms.infrastructure.constant.BillLogsConstants;
|
|||||||
import com.mhd.bms.interfaces.assembler.billManage.BillManageAssembler;
|
import com.mhd.bms.interfaces.assembler.billManage.BillManageAssembler;
|
||||||
import com.mhd.bms.interfaces.dto.billManage.BillDetailDTO;
|
import com.mhd.bms.interfaces.dto.billManage.BillDetailDTO;
|
||||||
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
import com.mhd.bms.interfaces.dto.billingStatement.BillingStatementDTO;
|
import com.mhd.bms.interfaces.dto.billingStatement.BillingStatementDTO;
|
||||||
import com.mhd.common.core.exception.ServiceException;
|
import com.mhd.common.core.exception.ServiceException;
|
||||||
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
|
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
|
||||||
@@ -876,5 +877,66 @@ public class BillManageApplicationService {
|
|||||||
return flag && flagTwo;
|
return flag && flagTwo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组查询
|
||||||
|
*/
|
||||||
|
public List<CustomerMonthBillVO> queryCustomerMonthBillList(BillManageDO billManageDO) {
|
||||||
|
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||||
|
if (loginUser != null && loginUser.getUserPo() != null) {
|
||||||
|
Long userOrganizationId = loginUser.getUserPo().getOrganizationId();
|
||||||
|
Long frontendOrganizationId = billManageDO.getOrganizationId();
|
||||||
|
|
||||||
|
if (userOrganizationId != null && userOrganizationId == 2827L) {
|
||||||
|
if (frontendOrganizationId != null) {
|
||||||
|
billManageDO.setOrganizationId(frontendOrganizationId);
|
||||||
|
billManageDO.setTopOrganizationId(null);
|
||||||
|
} else {
|
||||||
|
billManageDO.setOrganizationId(null);
|
||||||
|
billManageDO.setTopOrganizationId(null);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (frontendOrganizationId != null && userOrganizationId != null) {
|
||||||
|
if (!frontendOrganizationId.equals(userOrganizationId)) {
|
||||||
|
billManageDO.setOrganizationId(userOrganizationId);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (userOrganizationId != null) {
|
||||||
|
billManageDO.setOrganizationId(userOrganizationId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (billManageDO.getOrganizationId() == null) {
|
||||||
|
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
|
||||||
|
if (topOrganizationId != null && topOrganizationId != 1) {
|
||||||
|
billManageDO.setTopOrganizationId(topOrganizationId);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
billManageDO.setTopOrganizationId(2827L);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
List<CustomerMonthBillVO> list = billManageDomainService.queryCustomerMonthBillList(billManageDO);
|
||||||
|
|
||||||
|
// 计算付款状态
|
||||||
|
for (CustomerMonthBillVO vo : list) {
|
||||||
|
BigDecimal totalAmount = vo.getTotalBillAmount() != null ? vo.getTotalBillAmount() : BigDecimal.ZERO;
|
||||||
|
BigDecimal settledAmount = vo.getTotalSettledAmount() != null ? vo.getTotalSettledAmount() : BigDecimal.ZERO;
|
||||||
|
|
||||||
|
if (totalAmount.compareTo(BigDecimal.ZERO) == 0) {
|
||||||
|
vo.setPaymentStatus(3);
|
||||||
|
vo.setPaymentStatusName("已付款");
|
||||||
|
} else if (settledAmount.compareTo(BigDecimal.ZERO) == 0) {
|
||||||
|
vo.setPaymentStatus(1);
|
||||||
|
vo.setPaymentStatusName("未付款");
|
||||||
|
} else if (settledAmount.compareTo(totalAmount) >= 0) {
|
||||||
|
vo.setPaymentStatus(3);
|
||||||
|
vo.setPaymentStatusName("已付款");
|
||||||
|
} else {
|
||||||
|
vo.setPaymentStatus(2);
|
||||||
|
vo.setPaymentStatusName("部分付款");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
+6
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||||||
import com.mhd.bms.domain.billManage.entity.BillManage;
|
import com.mhd.bms.domain.billManage.entity.BillManage;
|
||||||
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
||||||
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -20,6 +21,11 @@ public interface IBillManageService extends IService<BillManage>
|
|||||||
*/
|
*/
|
||||||
public List<BillManagePO> queryList(BillManageDO billManageDO);
|
public List<BillManagePO> queryList(BillManageDO billManageDO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组查询
|
||||||
|
*/
|
||||||
|
public List<CustomerMonthBillVO> queryCustomerMonthBillList(BillManageDO billManageDO);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增账单管理
|
* 新增账单管理
|
||||||
*/
|
*/
|
||||||
|
|||||||
+6
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
import com.mhd.bms.domain.billManage.entity.BillManage;
|
import com.mhd.bms.domain.billManage.entity.BillManage;
|
||||||
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
||||||
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
/**
|
/**
|
||||||
* 账单管理Mapper接口
|
* 账单管理Mapper接口
|
||||||
@@ -19,6 +20,11 @@ public interface BillManageMapper extends BaseMapper<BillManage>
|
|||||||
*/
|
*/
|
||||||
public List<BillManagePO> queryList(@Param("billManageDO") BillManageDO billManageDO);
|
public List<BillManagePO> queryList(@Param("billManageDO") BillManageDO billManageDO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组查询
|
||||||
|
*/
|
||||||
|
public List<CustomerMonthBillVO> queryCustomerMonthBillList(@Param("billManageDO") BillManageDO billManageDO);
|
||||||
|
|
||||||
String getInvoiceItemName(@Param("invoiceItemId") String invoiceItemId);
|
String getInvoiceItemName(@Param("invoiceItemId") String invoiceItemId);
|
||||||
|
|
||||||
String getInvoiceItemNcCode(@Param("invoiceItemId") String invoiceItemId);
|
String getInvoiceItemNcCode(@Param("invoiceItemId") String invoiceItemId);
|
||||||
|
|||||||
+6
@@ -31,6 +31,7 @@ import com.mhd.bms.domain.settlementCustomers.entity.SettlementCustomers;
|
|||||||
import com.mhd.bms.domain.settlementCustomers.repository.facade.ISettlementCustomersService;
|
import com.mhd.bms.domain.settlementCustomers.repository.facade.ISettlementCustomersService;
|
||||||
import com.mhd.bms.interfaces.dto.billManage.BillDetailDTO;
|
import com.mhd.bms.interfaces.dto.billManage.BillDetailDTO;
|
||||||
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
import com.mhd.common.core.domain.dto.ReconciliationDTO;
|
import com.mhd.common.core.domain.dto.ReconciliationDTO;
|
||||||
import com.mhd.common.core.domain.dto.nc.*;
|
import com.mhd.common.core.domain.dto.nc.*;
|
||||||
import com.mhd.common.core.domain.entity.R;
|
import com.mhd.common.core.domain.entity.R;
|
||||||
@@ -1504,4 +1505,9 @@ public class BillManageImpl extends ServiceImpl<BillManageMapper, BillManage> im
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<CustomerMonthBillVO> queryCustomerMonthBillList(BillManageDO billManageDO) {
|
||||||
|
return billManageMapper.queryCustomerMonthBillList(billManageDO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -266,4 +266,7 @@ public class BillManageDO extends BaseVOEntity{
|
|||||||
private String paymentAccountName;
|
private String paymentAccountName;
|
||||||
@ApiModelProperty("业务员ID")
|
@ApiModelProperty("业务员ID")
|
||||||
private String salesmanId;
|
private String salesmanId;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单月份(yyyy-MM,按创建时间月份筛选,用于客户月账单分组查询)")
|
||||||
|
private String billMonth;
|
||||||
}
|
}
|
||||||
+8
@@ -12,6 +12,7 @@ import com.mhd.bms.domain.billManage.repository.facade.IBillManageService;
|
|||||||
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
||||||
import com.mhd.bms.domain.billManage.repository.todo.BillDetailDO;
|
import com.mhd.bms.domain.billManage.repository.todo.BillDetailDO;
|
||||||
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
import com.mhd.bms.domain.billOperationLog.entity.BillOperationLog;
|
import com.mhd.bms.domain.billOperationLog.entity.BillOperationLog;
|
||||||
import com.mhd.bms.domain.billOperationLog.repository.todo.BillOperationLogDO;
|
import com.mhd.bms.domain.billOperationLog.repository.todo.BillOperationLogDO;
|
||||||
import com.mhd.bms.domain.billOperationLog.service.BillOperationLogDomainService;
|
import com.mhd.bms.domain.billOperationLog.service.BillOperationLogDomainService;
|
||||||
@@ -776,4 +777,11 @@ public class BillManageDomainService {
|
|||||||
{
|
{
|
||||||
return billManageService.synchronousNcSK(businessDocumentDetaliIds);
|
return billManageService.synchronousNcSK(businessDocumentDetaliIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组查询
|
||||||
|
*/
|
||||||
|
public List<CustomerMonthBillVO> queryCustomerMonthBillList(BillManageDO billManageDO) {
|
||||||
|
return billManageService.queryCustomerMonthBillList(billManageDO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -276,4 +276,7 @@ public class BillManageDTO extends BaseVOEntity{
|
|||||||
private String paymentAccountId;
|
private String paymentAccountId;
|
||||||
@ApiModelProperty("收款帐户名称")
|
@ApiModelProperty("收款帐户名称")
|
||||||
private String paymentAccountName;
|
private String paymentAccountName;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单月份(yyyy-MM,按创建时间月份筛选,用于客户月账单分组查询)")
|
||||||
|
private String billMonth;
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
package com.mhd.bms.interfaces.dto.billManage;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "客户月账单VO", description = "客户每月账单分组统计信息")
|
||||||
|
public class CustomerMonthBillVO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象id")
|
||||||
|
private Long settlementCustomersId;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象code")
|
||||||
|
private String settlementCustomersCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象/客户名称")
|
||||||
|
private String settlementEntity;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算主体id")
|
||||||
|
private Long settlementEntityId;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算主体")
|
||||||
|
private String settlementEntityName;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单月份(yyyy-MM)")
|
||||||
|
private String billMonth;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单总金额合计")
|
||||||
|
private BigDecimal totalBillAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty("已收金额合计")
|
||||||
|
private BigDecimal totalSettledAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty("未收金额合计")
|
||||||
|
private BigDecimal totalUnsettledAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单数量")
|
||||||
|
private Integer billCount;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款状态(1-未付款,2-部分付款,3-已付款)")
|
||||||
|
private Integer paymentStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款状态名称")
|
||||||
|
private String paymentStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("应收账单id列表(逗号拼接)")
|
||||||
|
private String billManageIds;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算方式")
|
||||||
|
private String settlementMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty("默认结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
}
|
||||||
@@ -3,6 +3,7 @@ package com.mhd.bms.interfaces.facadeApi;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
@@ -31,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
|
||||||
|
import com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO;
|
||||||
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
|
||||||
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
import com.mhd.bms.domain.billManage.repository.po.BillManagePO;
|
||||||
import com.mhd.bms.interfaces.assembler.billManage.BillManageAssembler;
|
import com.mhd.bms.interfaces.assembler.billManage.BillManageAssembler;
|
||||||
@@ -84,6 +86,72 @@ public class BillManageApi extends BaseController{
|
|||||||
return AjaxResult.success(billManageApplicationService.listCount(billManageDO));
|
return AjaxResult.success(billManageApplicationService.listCount(billManageDO));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组列表(应收)
|
||||||
|
*/
|
||||||
|
@ApiOperation("客户每月账单分组列表")
|
||||||
|
@GetMapping("/receivableCustomerMonthList")
|
||||||
|
public TableDataInfo receivableCustomerMonthList(BillManageDTO billManageDTO)
|
||||||
|
{
|
||||||
|
BillManageDO billManageDO = new BillManageDO();
|
||||||
|
BeanUtils.copyProperties(billManageDTO, billManageDO);
|
||||||
|
billManageDO.setBillType(1);
|
||||||
|
startPage();
|
||||||
|
List<CustomerMonthBillVO> list = billManageApplicationService.queryCustomerMonthBillList(billManageDO);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 客户每月账单分组列表统计(应收)
|
||||||
|
*/
|
||||||
|
@ApiOperation("客户每月账单分组列表统计")
|
||||||
|
@GetMapping(value = "/receivableCustomerMonthListCount")
|
||||||
|
public AjaxResult receivableCustomerMonthListCount(BillManageDTO billManageDTO)
|
||||||
|
{
|
||||||
|
BillManageDO billManageDO = new BillManageDO();
|
||||||
|
BeanUtils.copyProperties(billManageDTO, billManageDO);
|
||||||
|
billManageDO.setBillType(1);
|
||||||
|
List<CustomerMonthBillVO> list = billManageApplicationService.queryCustomerMonthBillList(billManageDO);
|
||||||
|
BigDecimal totalBillAmount = list.stream()
|
||||||
|
.map(CustomerMonthBillVO::getTotalBillAmount)
|
||||||
|
.filter(java.util.Objects::nonNull)
|
||||||
|
.reduce(java.math.BigDecimal.ZERO, java.math.BigDecimal::add);
|
||||||
|
BigDecimal totalSettledAmount = list.stream()
|
||||||
|
.map(CustomerMonthBillVO::getTotalSettledAmount)
|
||||||
|
.filter(java.util.Objects::nonNull)
|
||||||
|
.reduce(java.math.BigDecimal.ZERO, java.math.BigDecimal::add);
|
||||||
|
BigDecimal totalUnsettledAmount = list.stream()
|
||||||
|
.map(CustomerMonthBillVO::getTotalUnsettledAmount)
|
||||||
|
.filter(java.util.Objects::nonNull)
|
||||||
|
.reduce(java.math.BigDecimal.ZERO, java.math.BigDecimal::add);
|
||||||
|
java.util.Map<String, Object> resultMap = new java.util.HashMap<>();
|
||||||
|
resultMap.put("totalBillAmount", totalBillAmount);
|
||||||
|
resultMap.put("totalSettledAmount", totalSettledAmount);
|
||||||
|
resultMap.put("totalUnsettledAmount", totalUnsettledAmount);
|
||||||
|
resultMap.put("totalCount", list.size());
|
||||||
|
return AjaxResult.success(resultMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据账单ID列表查询应收账单详情(客户月账单点击账单数量回显)
|
||||||
|
*/
|
||||||
|
@ApiOperation("根据账单ID列表查询应收账单详情")
|
||||||
|
@GetMapping("/receivableDetailByMonth")
|
||||||
|
public TableDataInfo receivableDetailByMonth(BillManageDTO billManageDTO)
|
||||||
|
{
|
||||||
|
if (billManageDTO.getBillManageIds() != null && !billManageDTO.getBillManageIds().isEmpty()) {
|
||||||
|
Set<String> idSet = java.util.Arrays.stream(billManageDTO.getBillManageIds().split(","))
|
||||||
|
.collect(java.util.stream.Collectors.toSet());
|
||||||
|
billManageDTO.setBillManageIdSet(idSet);
|
||||||
|
}
|
||||||
|
BillManageDO billManageDO = new BillManageDO();
|
||||||
|
BeanUtils.copyProperties(billManageDTO, billManageDO);
|
||||||
|
billManageDO.setBillType(1);
|
||||||
|
startPage();
|
||||||
|
List<BillManagePO> list = billManageApplicationService.queryList(billManageDO);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
@ApiOperation("导出应收账单")
|
@ApiOperation("导出应收账单")
|
||||||
@GetMapping(value = "/exportReceivableList", produces = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
|
@GetMapping(value = "/exportReceivableList", produces = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
|
||||||
public void exportReceivableList(BillManageDTO billManageDTO, HttpServletResponse response) throws IOException
|
public void exportReceivableList(BillManageDTO billManageDTO, HttpServletResponse response) throws IOException
|
||||||
|
|||||||
@@ -22,7 +22,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
ORDER BY a.create_time DESC
|
ORDER BY a.create_time DESC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="queryCustomerMonthBillList" parameterType="com.mhd.bms.domain.billManage.repository.todo.BillManageDO" resultType="com.mhd.bms.interfaces.dto.billManage.CustomerMonthBillVO">
|
||||||
|
SELECT
|
||||||
|
a.SETTLEMENT_CUSTOMERS_ID AS settlementCustomersId,
|
||||||
|
a.SETTLEMENT_CUSTOMERS_CODE AS settlementCustomersCode,
|
||||||
|
a.SETTLEMENT_ENTITY AS settlementEntity,
|
||||||
|
b.SETTLEMENT_ENTITY_ID AS settlementEntityId,
|
||||||
|
b.SETTLEMENT_ENTITY AS settlementEntityName,
|
||||||
|
a.ORGANIZATION_ID AS organizationId,
|
||||||
|
a.ORGANIZATION_NAME AS organizationName,
|
||||||
|
DATE_FORMAT(a.CREATE_TIME, '%Y-%m') AS billMonth,
|
||||||
|
SUM(a.BILL_AMOUNT) AS totalBillAmount,
|
||||||
|
SUM(IFNULL(a.BILL_AMOUNT_SETTLEMENT, 0)) AS totalSettledAmount,
|
||||||
|
SUM(IFNULL(a.BILL_AMOUNT_UNSETTLED, 0)) AS totalUnsettledAmount,
|
||||||
|
COUNT(*) AS billCount,
|
||||||
|
GROUP_CONCAT(a.BILL_MANAGE_ID) AS billManageIds,
|
||||||
|
b.SETTLEMENT_METHOD AS settlementMethod,
|
||||||
|
b.SETTLEMENT_CURRENCY AS settlementCurrency
|
||||||
|
FROM bill_manage a
|
||||||
|
LEFT JOIN SETTLEMENT_CUSTOMERS b ON a.SETTLEMENT_CUSTOMERS_ID = b.SETTLEMENT_CUSTOMERS_ID AND b.del_flag = 1
|
||||||
|
WHERE a.del_flag = 1
|
||||||
|
<include refid="common_where"/>
|
||||||
|
GROUP BY a.SETTLEMENT_CUSTOMERS_ID, DATE_FORMAT(a.CREATE_TIME, '%Y-%m')
|
||||||
|
ORDER BY a.CREATE_TIME DESC
|
||||||
|
</select>
|
||||||
|
|
||||||
<sql id="common_where">
|
<sql id="common_where">
|
||||||
|
<if test="billManageDO.billMonth != null and billManageDO.billMonth != ''">
|
||||||
|
AND DATE_FORMAT(a.CREATE_TIME, '%Y-%m') = #{billManageDO.billMonth}
|
||||||
|
</if>
|
||||||
<if test="billManageDO.createTimeStart != null and billManageDO.createTimeStart != ''">
|
<if test="billManageDO.createTimeStart != null and billManageDO.createTimeStart != ''">
|
||||||
AND date_format(a.create_time,'%Y-%m-%d') <![CDATA[>=]]> #{billManageDO.createTimeStart}
|
AND date_format(a.create_time,'%Y-%m-%d') <![CDATA[>=]]> #{billManageDO.createTimeStart}
|
||||||
</if>
|
</if>
|
||||||
|
|||||||
Reference in New Issue
Block a user