|
|
@@ -98,6 +98,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
public R<IPage<FinanceProfitDtoList>> financeProfit(FinanceProfitDtoList financeProfit, IPage<FinanceProfitDtoList> page) {
|
|
|
financeProfit.setTenantId(AuthUtil.getTenantId());
|
|
|
financeProfit.setBranchId(deptUtils.getDeptPid() + "");
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamineDate()) && "0".equals(financeProfit.getExamineDate())) {
|
|
|
+ financeProfit.setExamineDate(null);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamine()) && "0".equals(financeProfit.getExamine())) {
|
|
|
+ financeProfit.setExamine(null);
|
|
|
+ }
|
|
|
String jurisdiction = sysClient.getParamService("data.jurisdiction");
|
|
|
if ("1".equals(jurisdiction)) {
|
|
|
if (!AuthUtil.getUserRole().contains("admin") && !AuthUtil.getUserRole().contains("老板")
|
|
|
@@ -253,6 +259,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
item.setLineCnName(profit.getLineCnName());
|
|
|
}
|
|
|
}
|
|
|
+ item.setAmountProfit(item.getAmountDr().subtract(item.getAmountCr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setAmountProfitUsd(item.getAmountDrUsd().subtract(item.getAmountCrUsd()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setNotReceivedDr(item.getAmountDr().subtract(item.getRealAmountDr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setNotReceivedDrUsd(item.getAmountDrUsd().subtract(item.getRealAmountDrUsd()).setScale(2, RoundingMode.HALF_UP));
|
|
|
@@ -987,6 +995,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
public R financeProfitSum(FinanceProfitDtoList financeProfit) {
|
|
|
financeProfit.setTenantId(AuthUtil.getTenantId());
|
|
|
financeProfit.setBranchId(deptUtils.getDeptPid() + "");
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamineDate()) && "0".equals(financeProfit.getExamineDate())) {
|
|
|
+ financeProfit.setExamineDate(null);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamine()) && "0".equals(financeProfit.getExamine())) {
|
|
|
+ financeProfit.setExamine(null);
|
|
|
+ }
|
|
|
String jurisdiction = sysClient.getParamService("data.jurisdiction");
|
|
|
if ("1".equals(jurisdiction)) {
|
|
|
if (!AuthUtil.getUserRole().contains("admin") && !AuthUtil.getUserRole().contains("老板")
|
|
|
@@ -1129,6 +1143,14 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
|
|
|
}
|
|
|
}
|
|
|
+ for (FinanceProfitDtoList item : financeProfitList) {
|
|
|
+ item.setAmountProfit(item.getAmountDr().subtract(item.getAmountCr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setAmountProfitUsd(item.getAmountDrUsd().subtract(item.getAmountCrUsd()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setNotReceivedDr(item.getAmountDr().subtract(item.getRealAmountDr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setNotReceivedDrUsd(item.getAmountDrUsd().subtract(item.getRealAmountDrUsd()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setNotReceivedLoc(item.getAmountDrLoc().subtract(item.getRealAmountDrLoc()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ }
|
|
|
Map<String, BigDecimal> map = new HashMap<>();
|
|
|
map.put("amountDrUsd", financeProfitList.stream().map(FinanceProfitDtoList::getAmountDrUsd).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
map.put("realAmountDrUsd", financeProfitList.stream().map(FinanceProfitDtoList::getRealAmountDrUsd).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
@@ -1144,6 +1166,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
map.put("realAmountCrLoc", financeProfitList.stream().map(FinanceProfitDtoList::getRealAmountCrLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
map.put("amountProfitLoc", financeProfitList.stream().map(FinanceProfitDtoList::getAmountProfitLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
map.put("realAmountProfitLoc", financeProfitList.stream().map(FinanceProfitDtoList::getRealAmountProfitLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
+ map.put("amountProfit", financeProfitList.stream().map(FinanceProfitDtoList::getAmountProfit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
+ map.put("amountProfitUsd", financeProfitList.stream().map(FinanceProfitDtoList::getAmountProfitUsd).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
return R.data(map);
|
|
|
}
|
|
|
|
|
|
@@ -1151,6 +1175,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
public List<FinanceProfitDtoList> financeProfitExport(FinanceProfitDtoList financeProfit) {
|
|
|
financeProfit.setTenantId(AuthUtil.getTenantId());
|
|
|
financeProfit.setBranchId(deptUtils.getDeptPid() + "");
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamineDate()) && "0".equals(financeProfit.getExamineDate())) {
|
|
|
+ financeProfit.setExamineDate(null);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(financeProfit.getExamine()) && "0".equals(financeProfit.getExamine())) {
|
|
|
+ financeProfit.setExamine(null);
|
|
|
+ }
|
|
|
String jurisdiction = sysClient.getParamService("data.jurisdiction");
|
|
|
if ("1".equals(jurisdiction)) {
|
|
|
if (!AuthUtil.getUserRole().contains("admin") && !AuthUtil.getUserRole().contains("老板")
|
|
|
@@ -1305,6 +1335,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
|
|
|
item.setLineCnName(profit.getLineCnName());
|
|
|
}
|
|
|
}
|
|
|
+ item.setAmountProfit(item.getAmountDr().subtract(item.getAmountCr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
+ item.setAmountProfitUsd(item.getAmountDrUsd().subtract(item.getAmountCrUsd()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setNotReceivedDr(item.getAmountDr().subtract(item.getRealAmountDr()).setScale(2, RoundingMode.HALF_UP));
|
|
|
item.setNotReceivedDrUsd(item.getAmountDrUsd().subtract(item.getRealAmountDrUsd()).setScale(2, RoundingMode.HALF_UP));
|