Commit df3b4446 by 程裕兵

feat:left transamount

parent d36cfa7f
...@@ -9,6 +9,7 @@ import com.jiejing.common.utils.collection.CollectionUtil; ...@@ -9,6 +9,7 @@ import com.jiejing.common.utils.collection.CollectionUtil;
import com.jiejing.common.utils.convert.BeanUtil; import com.jiejing.common.utils.convert.BeanUtil;
import com.jiejing.common.utils.crypt.AesUtil; import com.jiejing.common.utils.crypt.AesUtil;
import com.jiejing.common.utils.text.SensitiveUtil; import com.jiejing.common.utils.text.SensitiveUtil;
import com.jiejing.fitness.enums.finance.BrandCashierTransStateEnum;
import com.jiejing.fitness.finance.api.cashier.vo.StudioCashierRecordVO; import com.jiejing.fitness.finance.api.cashier.vo.StudioCashierRecordVO;
import com.jiejing.fitness.finance.api.cashier.vo.StudioSettleVO; import com.jiejing.fitness.finance.api.cashier.vo.StudioSettleVO;
import com.jiejing.fitness.finance.repository.entity.StudioCashierRecord; import com.jiejing.fitness.finance.repository.entity.StudioCashierRecord;
...@@ -58,9 +59,15 @@ public class CashierConvert { ...@@ -58,9 +59,15 @@ public class CashierConvert {
List<StudioCashierRecord> refunds) { List<StudioCashierRecord> refunds) {
StudioCashierRecordVO result = convertVO(record); StudioCashierRecordVO result = convertVO(record);
result.setLeftTransAmount(MoneyUtil.subtract(record.getTransAmount(), result.setLeftTransAmount(MoneyUtil.subtract(record.getTransAmount(),
refunds.stream().map(StudioCashierRecord::getTransAmount).reduce(BigDecimal::add).orElse(ZERO))); refunds.stream()
.filter(e -> BrandCashierTransStateEnum.REFUND_SUCCESS.getCode().equals(e.getTransState())
|| BrandCashierTransStateEnum.REFUNDING.getCode().equals(e.getTransState()))
.map(StudioCashierRecord::getTransAmount).reduce(BigDecimal::add).orElse(ZERO)));
result.setLeftActualAmount(MoneyUtil.subtract(record.getActualAmount(), result.setLeftActualAmount(MoneyUtil.subtract(record.getActualAmount(),
refunds.stream().map(StudioCashierRecord::getActualAmount).reduce(BigDecimal::add).orElse(ZERO))); refunds.stream()
.filter(e -> BrandCashierTransStateEnum.REFUND_SUCCESS.getCode().equals(e.getTransState())
|| BrandCashierTransStateEnum.REFUNDING.getCode().equals(e.getTransState()))
.map(StudioCashierRecord::getActualAmount).reduce(BigDecimal::add).orElse(ZERO)));
return result; return result;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment