settlement fix for amount always 0
This commit is contained in:
parent
538ae41938
commit
2b114dab5e
@ -212,29 +212,31 @@ public class SettlementTransactionFragment extends DataBindingFragment implement
|
|||||||
}
|
}
|
||||||
|
|
||||||
settlementViewModel.getSettlementPOS().observe(getViewLifecycleOwner(), payDetails -> {
|
settlementViewModel.getSettlementPOS().observe(getViewLifecycleOwner(), payDetails -> {
|
||||||
if(!payDetails.isEmpty()) {
|
resetSettlementCounters();
|
||||||
|
if(payDetails != null && !payDetails.isEmpty()) {
|
||||||
|
|
||||||
for(PayDetail payDetail:payDetails) {
|
for(PayDetail payDetail:payDetails) {
|
||||||
|
int transType = payDetail.getTransactionType();
|
||||||
|
String transName = payDetail.getTransType();
|
||||||
|
|
||||||
// if(payDetail.isSettlementEnabled()) {
|
if((transType == TransactionType.SALE || "SALE".equalsIgnoreCase(transName)) && !payDetail.isCanceled){
|
||||||
if(payDetail.getTransactionType() == TransactionType.SALE && !payDetail.isCanceled){
|
saleCount ++;
|
||||||
saleCount ++;
|
saleAmount += payDetail.getAmount();
|
||||||
saleAmount += payDetail.getAmount();
|
} else if((transType == TransactionType.PRE_SALE_COMPLETE
|
||||||
} else if(payDetail.getTransactionType() == TransactionType.PRE_SALE_COMPLETE && !payDetail.isCanceled){
|
|| "PREAUTH COMPLETION".equalsIgnoreCase(transName)
|
||||||
preCount ++;
|
|| "PRE_AUTH_COMPLETE".equalsIgnoreCase(transName)) && !payDetail.isCanceled){
|
||||||
preAmount += payDetail.getAmount();
|
preCount ++;
|
||||||
}
|
preAmount += payDetail.getAmount();
|
||||||
else if(payDetail.getTransactionType() == TransactionType.REFUND){
|
}
|
||||||
refundCount ++;
|
else if(transType == TransactionType.REFUND || "REFUND".equalsIgnoreCase(transName)){
|
||||||
refundAmount += payDetail.getAmount();
|
refundCount ++;
|
||||||
}else if(payDetail.getTransactionType() == TransactionType.CASH_ADVANCE){
|
refundAmount += payDetail.getAmount();
|
||||||
caCount ++;
|
}else if(transType == TransactionType.CASH_ADVANCE
|
||||||
caAmount += payDetail.getAmount();
|
|| "CASH_OUT".equalsIgnoreCase(transName)
|
||||||
}
|
|| "CASH_ADVANCE".equalsIgnoreCase(transName)){
|
||||||
// }
|
caCount ++;
|
||||||
|
caAmount += payDetail.getAmount();
|
||||||
|
}
|
||||||
// sharedViewModel.payDetail.setValue(payDetail);
|
|
||||||
}
|
}
|
||||||
long totalAmount = saleAmount + preAmount + caAmount;
|
long totalAmount = saleAmount + preAmount + caAmount;
|
||||||
sharedViewModel.totalAmount.postValue(totalAmount);
|
sharedViewModel.totalAmount.postValue(totalAmount);
|
||||||
@ -247,16 +249,6 @@ public class SettlementTransactionFragment extends DataBindingFragment implement
|
|||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
int saleCount = 0;
|
|
||||||
int preCount = 0;
|
|
||||||
int refundCount = 0;
|
|
||||||
int caCount = 0;
|
|
||||||
long saleAmount = 0;
|
|
||||||
long preAmount = 0;
|
|
||||||
long refundAmount = 0;
|
|
||||||
long caAmount = 0;
|
|
||||||
|
|
||||||
settlementViewModel.isNoData.setValue(true);
|
settlementViewModel.isNoData.setValue(true);
|
||||||
|
|
||||||
sharedViewModel.setAmount(POSUtil.getInstance().getDecimalAmountSeparatorFormat(0));
|
sharedViewModel.setAmount(POSUtil.getInstance().getDecimalAmountSeparatorFormat(0));
|
||||||
@ -275,6 +267,17 @@ public class SettlementTransactionFragment extends DataBindingFragment implement
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void resetSettlementCounters() {
|
||||||
|
saleCount = 0;
|
||||||
|
preCount = 0;
|
||||||
|
refundCount = 0;
|
||||||
|
caCount = 0;
|
||||||
|
saleAmount = 0L;
|
||||||
|
preAmount = 0L;
|
||||||
|
refundAmount = 0L;
|
||||||
|
caAmount = 0L;
|
||||||
|
}
|
||||||
|
|
||||||
private void setSettlementViewModelData(int saleCount,long saleAmount,int preCount,long preAmount,int refundCount,long refundAmount,int caCount,long caAmount) {
|
private void setSettlementViewModelData(int saleCount,long saleAmount,int preCount,long preAmount,int refundCount,long refundAmount,int caCount,long caAmount) {
|
||||||
settlementViewModel.sale_count.setValue(saleCount);
|
settlementViewModel.sale_count.setValue(saleCount);
|
||||||
settlementViewModel.sale_amount.setValue(saleAmount);
|
settlementViewModel.sale_amount.setValue(saleAmount);
|
||||||
|
|||||||
@ -46,11 +46,35 @@ public interface PayDetailDao {
|
|||||||
LiveData<List<PayDetail>> getSettlement();
|
LiveData<List<PayDetail>> getSettlement();
|
||||||
|
|
||||||
// 1 = SALE & 7 = PRE_SALE_COMPLETE & 4 = REFUND & 9 = CASH_ADVANCE & 18 = TIP ADJUSTMENT
|
// 1 = SALE & 7 = PRE_SALE_COMPLETE & 4 = REFUND & 9 = CASH_ADVANCE & 18 = TIP ADJUSTMENT
|
||||||
@Query("SELECT * FROM paydetail WHERE isSettle = 0 AND isCanceled = 0 AND transactionType = 1 OR transactionType = 7 AND isSettle = 0 AND isCanceled = 0 OR transactionType = 4 AND isSettle = 0 OR transactionType = 9 AND isSettle = 0 ")
|
@Query("SELECT * FROM paydetail " +
|
||||||
|
"WHERE isSettle = 0 AND (" +
|
||||||
|
"((transactionType = 1 OR transactionType = 7) AND isCanceled = 0) " +
|
||||||
|
"OR transactionType = 4 " +
|
||||||
|
"OR transactionType = 9 " +
|
||||||
|
"OR (transactionType = 0 AND isCanceled = 0 AND (" +
|
||||||
|
"transType = 'SALE' " +
|
||||||
|
"OR transType = 'PREAUTH COMPLETION' " +
|
||||||
|
"OR transType = 'PRE_AUTH_COMPLETE' " +
|
||||||
|
"OR transType = 'REFUND' " +
|
||||||
|
"OR transType = 'CASH_OUT' " +
|
||||||
|
"OR transType = 'CASH_ADVANCE')))")
|
||||||
LiveData<List<PayDetail>> getSettlementPOS();
|
LiveData<List<PayDetail>> getSettlementPOS();
|
||||||
|
|
||||||
// 1 = SALE & 7 = PRE_SALE_COMPLETE & 4 = REFUND & 9 = CASH_ADVANCE & 18 = TIP ADJUSTMENT & 6 = PRE_AUTH_VOID & 20 = WALLET
|
// 1 = SALE & 7 = PRE_SALE_COMPLETE & 4 = REFUND & 9 = CASH_ADVANCE & 18 = TIP ADJUSTMENT & 6 = PRE_AUTH_VOID & 20 = WALLET
|
||||||
@Query("SELECT * FROM paydetail WHERE isSettle = 0 AND isCanceled = 0 AND transactionType = 1 OR transactionType = 7 AND isSettle = 0 AND isCanceled = 0 OR transactionType = 4 AND isSettle = 0 OR transactionType = 9 AND isSettle = 0 OR transactionType = 6 AND isSettle = 0")
|
@Query("SELECT * FROM paydetail " +
|
||||||
|
"WHERE isSettle = 0 AND (" +
|
||||||
|
"((transactionType = 1 OR transactionType = 7 OR transactionType = 6) AND isCanceled = 0) " +
|
||||||
|
"OR transactionType = 4 " +
|
||||||
|
"OR transactionType = 9 " +
|
||||||
|
"OR (transactionType = 0 AND isCanceled = 0 AND (" +
|
||||||
|
"transType = 'SALE' " +
|
||||||
|
"OR transType = 'PREAUTH COMPLETION' " +
|
||||||
|
"OR transType = 'PRE_AUTH_COMPLETE' " +
|
||||||
|
"OR transType = 'PREAUTH CANCELLATION' " +
|
||||||
|
"OR transType = 'PRE_AUTH_VOID' " +
|
||||||
|
"OR transType = 'REFUND' " +
|
||||||
|
"OR transType = 'CASH_OUT' " +
|
||||||
|
"OR transType = 'CASH_ADVANCE')))")
|
||||||
LiveData<List<PayDetail>> getSettlementPOSClearBatch();
|
LiveData<List<PayDetail>> getSettlementPOSClearBatch();
|
||||||
|
|
||||||
// 6 = PRE AUTH CANCEL, 7= PRE_AUTH_COMPLETE , 5 = PRE AUTH
|
// 6 = PRE AUTH CANCEL, 7= PRE_AUTH_COMPLETE , 5 = PRE AUTH
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user