|
@@ -2,8 +2,10 @@ package com.qunzhixinxi.hnqz.admin.controller;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.entity.SysDictItem;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackage;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.WmScorePackageSettleNote;
|
|
|
import com.qunzhixinxi.hnqz.admin.entity.input.WmScorePackageSettleInput;
|
|
@@ -13,6 +15,7 @@ import com.qunzhixinxi.hnqz.admin.enums.PackageFinishStatusEnum;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.PackageTypeEnum;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.SettleStatusEnum;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectTypeEnum;
|
|
|
+import com.qunzhixinxi.hnqz.admin.service.SysDictItemService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmPayOffService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
|
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
@@ -42,6 +45,7 @@ import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 结算表
|
|
@@ -59,6 +63,7 @@ public class WmPayOffController {
|
|
|
private final WmPayOffService wmPayOffService;
|
|
|
private final WmScorePackageService wmScorePackageService;
|
|
|
private final RedisTemplate<String, Object> redisTemplate;
|
|
|
+ private final SysDictItemService dictItemService;
|
|
|
|
|
|
/**
|
|
|
* 财务回退操作
|
|
@@ -247,6 +252,16 @@ public class WmPayOffController {
|
|
|
if (CollectionUtil.isEmpty(list)) {
|
|
|
return new ArrayList<>();
|
|
|
}
|
|
|
+
|
|
|
+ // 获取发票类目信息
|
|
|
+ List<SysDictItem> invoiceCategoryList = dictItemService.list(Wrappers.<SysDictItem>lambdaQuery().in(SysDictItem::getType, "renlijia_invoice", "olading_invoice", "yee_invoice", "tax_helper_invoice"));
|
|
|
+ Map<String, Map<String, String>> collect = invoiceCategoryList.stream().collect(Collectors.groupingBy(SysDictItem::getType, Collectors.toMap(SysDictItem::getValue, SysDictItem::getLabel)));
|
|
|
+ Map<String,String> renlijiaInvoice = collect.get("renlijia_invoice");
|
|
|
+ Map<String,String> oladingInvoice = collect.get("olading_invoice");
|
|
|
+ Map<String,String> yeeInvoice = collect.get("yee_invoice");
|
|
|
+ Map<String,String> taxHelperInvoice = collect.get("tax_helper_invoice");
|
|
|
+
|
|
|
+
|
|
|
// 转换为导出实体
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
WmScorePackageSettleOutput settleOutput = list.get(i);
|
|
@@ -261,17 +276,27 @@ public class WmPayOffController {
|
|
|
|
|
|
SubjectTypeEnum subjectTypeEnum = SubjectTypeEnum.resolve(settleOutput.getSubType());
|
|
|
export.setSubType(subjectTypeEnum.getDesc());
|
|
|
+ String cate = String.valueOf(settleOutput.getInvoiceCategory());
|
|
|
+ String invoice;
|
|
|
switch (subjectTypeEnum) {
|
|
|
case TYPE_RENLIJIA:
|
|
|
- export.setInvoiceCategory(WmScorePackageSettleExcelModel.DingCategoryEnum.resolve(settleOutput.getInvoiceCategory()).getDesc());
|
|
|
+ invoice = renlijiaInvoice.get(cate);
|
|
|
break;
|
|
|
case TYPE_SHUIBANGYUN:
|
|
|
- export.setInvoiceCategory(WmScorePackageSettleExcelModel.CategoryEnum.resolve(settleOutput.getInvoiceCategory()).getDesc());
|
|
|
+ invoice = taxHelperInvoice.get(cate);
|
|
|
+ break;
|
|
|
+ case TYPE_OLADING:
|
|
|
+ invoice = oladingInvoice.get(cate);
|
|
|
+ break;
|
|
|
+ case TYPE_YEE:
|
|
|
+ invoice = yeeInvoice.get(cate);
|
|
|
break;
|
|
|
case TYPE_NULL:
|
|
|
- export.setInvoiceCategory(WmScorePackageSettleExcelModel.CategoryEnum.CATEGORY_NULL.getDesc());
|
|
|
+ default:
|
|
|
+ invoice = WmScorePackageSettleExcelModel.CategoryEnum.CATEGORY_NULL.getDesc();
|
|
|
break;
|
|
|
}
|
|
|
+ export.setInvoiceCategory(invoice);
|
|
|
export.setUserNames(settleOutput.getUserNames());
|
|
|
export.setSettleAmount(settleOutput.getSettleAmount());
|
|
|
export.setSettleStatus(SettleStatusEnum.resolve(settleOutput.getSettleStatus()).getName());
|