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 -> {
|
||||
if(!payDetails.isEmpty()) {
|
||||
resetSettlementCounters();
|
||||
if(payDetails != null && !payDetails.isEmpty()) {
|
||||
|
||||
for(PayDetail payDetail:payDetails) {
|
||||
int transType = payDetail.getTransactionType();
|
||||
String transName = payDetail.getTransType();
|
||||
|
||||
// if(payDetail.isSettlementEnabled()) {
|
||||
if(payDetail.getTransactionType() == TransactionType.SALE && !payDetail.isCanceled){
|
||||
if((transType == TransactionType.SALE || "SALE".equalsIgnoreCase(transName)) && !payDetail.isCanceled){
|
||||
saleCount ++;
|
||||
saleAmount += payDetail.getAmount();
|
||||
} else if(payDetail.getTransactionType() == TransactionType.PRE_SALE_COMPLETE && !payDetail.isCanceled){
|
||||
} else if((transType == TransactionType.PRE_SALE_COMPLETE
|
||||
|| "PREAUTH COMPLETION".equalsIgnoreCase(transName)
|
||||
|| "PRE_AUTH_COMPLETE".equalsIgnoreCase(transName)) && !payDetail.isCanceled){
|
||||
preCount ++;
|
||||
preAmount += payDetail.getAmount();
|
||||
}
|
||||
else if(payDetail.getTransactionType() == TransactionType.REFUND){
|
||||
else if(transType == TransactionType.REFUND || "REFUND".equalsIgnoreCase(transName)){
|
||||
refundCount ++;
|
||||
refundAmount += payDetail.getAmount();
|
||||
}else if(payDetail.getTransactionType() == TransactionType.CASH_ADVANCE){
|
||||
}else if(transType == TransactionType.CASH_ADVANCE
|
||||
|| "CASH_OUT".equalsIgnoreCase(transName)
|
||||
|| "CASH_ADVANCE".equalsIgnoreCase(transName)){
|
||||
caCount ++;
|
||||
caAmount += payDetail.getAmount();
|
||||
}
|
||||
// }
|
||||
|
||||
|
||||
// sharedViewModel.payDetail.setValue(payDetail);
|
||||
}
|
||||
long totalAmount = saleAmount + preAmount + caAmount;
|
||||
sharedViewModel.totalAmount.postValue(totalAmount);
|
||||
@ -247,16 +249,6 @@ public class SettlementTransactionFragment extends DataBindingFragment implement
|
||||
|
||||
|
||||
} 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);
|
||||
|
||||
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) {
|
||||
settlementViewModel.sale_count.setValue(saleCount);
|
||||
settlementViewModel.sale_amount.setValue(saleAmount);
|
||||
|
||||
@ -46,11 +46,35 @@ public interface PayDetailDao {
|
||||
LiveData<List<PayDetail>> getSettlement();
|
||||
|
||||
// 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();
|
||||
|
||||
// 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();
|
||||
|
||||
// 6 = PRE AUTH CANCEL, 7= PRE_AUTH_COMPLETE , 5 = PRE AUTH
|
||||
|
||||
Loading…
Reference in New Issue
Block a user