diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderInvoiceRecordController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderInvoiceRecordController.java index ac1d0fa36..c265a029c 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderInvoiceRecordController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderInvoiceRecordController.java @@ -9,7 +9,7 @@ import com.jsowell.common.util.poi.ExcelUtil; import com.jsowell.pile.domain.OrderInvoiceRecord; import com.jsowell.pile.dto.GetInvoiceInfoDTO; import com.jsowell.pile.service.OrderInvoiceRecordService; -import com.jsowell.pile.service.PileMerchantInfoService; +import com.jsowell.pile.vo.web.OrderInvoiceRecordExportVO; import com.jsowell.pile.vo.web.OrderInvoiceRecordVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; @@ -37,9 +37,6 @@ public class OrderInvoiceRecordController extends BaseController { @Autowired private OrderInvoiceRecordService orderInvoiceRecordService; - @Autowired - private PileMerchantInfoService pileMerchantInfoService; - /** * 查询申请开票列表 */ @@ -58,9 +55,9 @@ public class OrderInvoiceRecordController extends BaseController { @PreAuthorize("@ss.hasPermi('order:invoice:export')") @Log(title = "申请开票", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, OrderInvoiceRecord orderInvoiceRecord) { - List list = orderInvoiceRecordService.selectOrderInvoiceRecordList(orderInvoiceRecord); - ExcelUtil util = new ExcelUtil(OrderInvoiceRecord.class); + public void export(HttpServletResponse response, GetInvoiceInfoDTO dto) { + List list = orderInvoiceRecordService.getInvoiceExportListWithAuth(dto); + ExcelUtil util = new ExcelUtil(OrderInvoiceRecordExportVO.class); util.exportExcel(response, list, "申请开票数据"); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderInvoiceRecordMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderInvoiceRecordMapper.java index 5e06642b8..002998b52 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderInvoiceRecordMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderInvoiceRecordMapper.java @@ -1,8 +1,9 @@ package com.jsowell.pile.mapper; import com.jsowell.pile.domain.OrderInvoiceRecord; -import com.jsowell.pile.dto.QueryInvoiceRecordDTO; import com.jsowell.pile.dto.GetInvoiceInfoDTO; +import com.jsowell.pile.dto.QueryInvoiceRecordDTO; +import com.jsowell.pile.vo.web.OrderInvoiceRecordExportVO; import com.jsowell.pile.vo.web.OrderInvoiceRecordVO; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -40,6 +41,14 @@ public interface OrderInvoiceRecordMapper { */ List getInvoiceListWithAuth(@Param("dto") GetInvoiceInfoDTO dto); + /** + * 查询申请开票导出列表(带权限校验) + * + * @param dto 查询条件 + * @return 导出集合 + */ + List getInvoiceExportListWithAuth(@Param("dto") GetInvoiceInfoDTO dto); + /** * 新增申请开票 * diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderInvoiceRecordService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderInvoiceRecordService.java index 19dcf5146..8c015f5c3 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderInvoiceRecordService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderInvoiceRecordService.java @@ -4,6 +4,7 @@ import com.jsowell.pile.domain.OrderInvoiceRecord; import com.jsowell.pile.dto.GetInvoiceInfoDTO; import com.jsowell.pile.dto.QueryInvoiceRecordDTO; import com.jsowell.pile.vo.web.InvoiceRecordVO; +import com.jsowell.pile.vo.web.OrderInvoiceRecordExportVO; import com.jsowell.pile.vo.web.OrderInvoiceRecordVO; import java.time.LocalDateTime; @@ -41,6 +42,14 @@ public interface OrderInvoiceRecordService { */ List getInvoiceListWithAuth(GetInvoiceInfoDTO dto); + /** + * 查询申请开票导出列表(带权限校验) + * + * @param dto 查询条件 + * @return 导出列表 + */ + List getInvoiceExportListWithAuth(GetInvoiceInfoDTO dto); + List selectInvoiceRecordList(QueryInvoiceRecordDTO memberId); List selectInvoiceVOList(QueryInvoiceRecordDTO memberId); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderInvoiceRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderInvoiceRecordServiceImpl.java index f8498c8f7..e617d1498 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderInvoiceRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderInvoiceRecordServiceImpl.java @@ -13,6 +13,7 @@ import com.jsowell.pile.util.UserUtils; import com.jsowell.pile.vo.base.OrderAmountDetailVO; import com.jsowell.pile.vo.uniapp.customer.InvoiceTitleVO; import com.jsowell.pile.vo.web.InvoiceRecordVO; +import com.jsowell.pile.vo.web.OrderInvoiceRecordExportVO; import com.jsowell.pile.vo.web.OrderInvoiceRecordVO; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -94,16 +95,31 @@ public class OrderInvoiceRecordServiceImpl implements OrderInvoiceRecordService */ @Override public List getInvoiceListWithAuth(GetInvoiceInfoDTO dto) { + if (!fillAuthorizedMerchantDeptIds(dto)) { + return new ArrayList<>(); + } + return orderInvoiceRecordMapper.getInvoiceListWithAuth(dto); + } + + @Override + public List getInvoiceExportListWithAuth(GetInvoiceInfoDTO dto) { + if (!fillAuthorizedMerchantDeptIds(dto)) { + return new ArrayList<>(); + } + return orderInvoiceRecordMapper.getInvoiceExportListWithAuth(dto); + } + + private boolean fillAuthorizedMerchantDeptIds(GetInvoiceInfoDTO dto) { // 获取登录账号信息 AuthorizedDeptVO authorizedMap = UserUtils.getAuthorizedMap(); if (authorizedMap == null) { - return new ArrayList<>(); + return false; } List merchantDeptIds = authorizedMap.getMerchantDeptIds(); if (CollectionUtils.isNotEmpty(merchantDeptIds)) { dto.setMerchantDeptIds(merchantDeptIds); } - return orderInvoiceRecordMapper.getInvoiceListWithAuth(dto); + return true; } @Override diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderInvoiceRecordExportVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderInvoiceRecordExportVO.java new file mode 100644 index 000000000..58b86f416 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderInvoiceRecordExportVO.java @@ -0,0 +1,66 @@ +package com.jsowell.pile.vo.web; + +import com.jsowell.common.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 申请开票导出对象 + */ +@Data +public class OrderInvoiceRecordExportVO { + @Excel(name = "会员ID") + private String memberId; + + @Excel(name = "会员手机号") + private String memberPhoneNumber; + + @Excel(name = "运营商") + private String merchantName; + + @Excel(name = "抬头类型", readConverterExp = "1=单位,2=个人") + private String titleType; + + @Excel(name = "抬头名称") + private String titleName; + + @Excel(name = "税号") + private String taxId; + + @Excel(name = "单位地址") + private String unitAddress; + + @Excel(name = "抬头电话") + private String titlePhoneNumber; + + @Excel(name = "开票邮箱") + private String email; + + @Excel(name = "开户银行") + private String bankName; + + @Excel(name = "银行账户") + private String bankAccountNumber; + + @Excel(name = "申请订单编号") + private String orderCodes; + + @Excel(name = "状态", readConverterExp = "0=未开票,1=已开票") + private String status; + + @Excel(name = "开票总金额") + private BigDecimal totalAmount; + + @Excel(name = "总服务费金额") + private BigDecimal totalServiceAmount; + + @Excel(name = "总电费金额") + private BigDecimal totalElecAmount; + + @Excel(name = "申请时间") + private String createTime; + + @Excel(name = "开票时间") + private String updateTime; +} diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderInvoiceRecordMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderInvoiceRecordMapper.xml index d94de0142..dfb8d57b0 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderInvoiceRecordMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderInvoiceRecordMapper.xml @@ -169,6 +169,44 @@ order by t1.create_time desc + + - \ No newline at end of file +