Skip to content

Commit

Permalink
bug fixing 5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
shakiz committed May 6, 2020
1 parent 14ea2de commit f16d129
Show file tree
Hide file tree
Showing 6 changed files with 88 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -164,10 +164,10 @@ else if (recordTypeStr.equals("Expense")){
@Override
public void onClick(View view) {
if (getIntent().getSerializableExtra("record") != null) {
updateExpense();
updateRecord();
}
else {
saveExpense();
saveRecord();
}
}
});
Expand All @@ -183,17 +183,22 @@ public void onClick(View v) {
}

//Save expense into DB with validation
private void saveExpense(){
private void saveRecord(){
if (!recordTypeStr.isEmpty()){
if (ux.validation(new int[]{R.id.Amount, R.id.Currency, R.id.Wallet, R.id.Note, R.id.ExpenseDate})){
if (!walletTitleStr.equals("No Data") && !walletTitleStr.equals("Select Wallet")) {
if (getRemainingBalance()){
Record record = new Record(Integer.parseInt(Amount.getText().toString()), currencyValue, recordTypeStr, categoryTitle.getText().toString(), walletTitleStr,
walletValue, Note.getText().toString(), ExpenseDate.getText().toString());
new SaveRecord(record).execute();
Record record = new Record(Integer.parseInt(Amount.getText().toString()), currencyValue, recordTypeStr, categoryTitle.getText().toString(), walletTitleStr,
walletValue, Note.getText().toString(), ExpenseDate.getText().toString());
if (record.getRecordType().equals(getText(R.string.expense))){
if (getRemainingBalance()){
new SaveRecord(record).execute();
}
else{
Snackbar.make(mainLayout,getResources().getString(R.string.wallet_amount_exceeds), Snackbar.LENGTH_SHORT).show();
}
}
else{
Snackbar.make(mainLayout,getResources().getString(R.string.wallet_amount_exceeds), Snackbar.LENGTH_SHORT).show();
else {
new SaveRecord(record).execute();
}
}
else{
Expand All @@ -206,19 +211,25 @@ private void saveExpense(){
//end

//Update expense
private void updateExpense() {
private void updateRecord() {

if (!recordTypeStr.isEmpty()){
if (ux.validation(new int[]{R.id.Amount, R.id.Currency, R.id.Wallet, R.id.Note, R.id.ExpenseDate})){
if (!walletTitleStr.equals("No Data") && !walletTitleStr.equals("Select Wallet")) {
if (getRemainingBalance()){
Record updatableRecord = new Record(Integer.parseInt(Amount.getText().toString()), currencyValue, recordTypeStr, categoryTitle.getText().toString(), walletTitleStr,
walletValue, Note.getText().toString(), ExpenseDate.getText().toString());
new UpdateRecord(updatableRecord,record.getId()).execute();
Record updatableRecord = new Record(Integer.parseInt(Amount.getText().toString()), currencyValue, recordTypeStr, categoryTitle.getText().toString(), walletTitleStr,
walletValue, Note.getText().toString(), ExpenseDate.getText().toString());
if (record.getRecordType().equals(getText(R.string.expense))){
if (getRemainingBalance()){
new UpdateRecord(updatableRecord,record.getId()).execute();
}
else{
Snackbar.make(mainLayout,R.string.wallet_amount_exceeds, Snackbar.LENGTH_LONG).show();
}
}
else{
Snackbar.make(mainLayout,R.string.wallet_amount_exceeds, Snackbar.LENGTH_LONG).show();
new UpdateRecord(updatableRecord,record.getId()).execute();
}

} else {
Snackbar.make(mainLayout,R.string.select_wallet, Snackbar.LENGTH_LONG).show();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,13 +104,17 @@ public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.
@Override
public void onSwiped(@NonNull final RecyclerView.ViewHolder viewHolder, int direction) {
final Record record = allRecords.get(viewHolder.getAdapterPosition());
ux.showDialog(R.layout.dialog_update_confirmation, "Delete Wallet information", new UX.onDialogOkListener() {
ux.showDialog(R.layout.dialog_update_confirmation, "Delete Wallet information", new UX.onDialogCancelListener() {
@Override
public void onClick() {
setBudgetAdapter();
}
}, new UX.onDialogOkListener() {
@Override
public void onClick() {
databaseHelper.deleteExpense(record.getId());
allRecords.remove(viewHolder.getAdapterPosition());
setBudgetAdapter();
allRecordsAdapter.notifyDataSetChanged();
}
});
}
Expand Down Expand Up @@ -153,7 +157,8 @@ public void onItemClick(int position, IconPowerMenuItem item) {

//set the budget list adapter
private void setBudgetAdapter() {
allRecordsAdapter = new AllRecordsAdapter(allRecords, this,new AllRecordsAdapter.onItemClick() {
allRecordsAdapter = new AllRecordsAdapter(allRecords, this);
allRecordsAdapter.onItemClickListener(new AllRecordsAdapter.onItemClick() {
@Override
public void itemClick(Record record) {
startActivity(new Intent(RecordsActivity.this, AddNewRecordActivity.class).putExtra("record", record).putExtra("from","record"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,8 +251,8 @@ public void onClick(View view) {
@Override
public void onBackPressed() {
if (getIntent().getStringExtra("from").equals("record")) startActivity(new Intent(AddNewWalletActivity.this, RecordsActivity.class));
else if (getIntent().getStringExtra("from").equals("newRecord")) startActivity(new Intent(this, AddNewRecordActivity.class).putExtra("from","wallet"));
else if (getIntent().getStringExtra("from").equals("home")) startActivity(new Intent(AddNewWalletActivity.this, DashboardActivity.class));
else if (getIntent().getStringExtra("from").equals("newRecord")) startActivity(new Intent(this, AddNewRecordActivity.class));
else if (getIntent().getStringExtra("from").equals("main")) startActivity(new Intent(AddNewWalletActivity.this, DashboardActivity.class));
else if (getIntent().getStringExtra("from").equals("walletDetails")) startActivity(new Intent(AddNewWalletActivity.this, WalletDetailsActivity.class).putExtra("wallet",wallet));
overridePendingTransition(R.anim.fadein,R.anim.push_up_out);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,8 @@ private void setAdapter(ArrayList<Record> allRecordItems) {
noDataGif.setVisibility(View.VISIBLE);
}
else {
allRecordsAdapter = new AllRecordsAdapter(allRecordItems, this,new AllRecordsAdapter.onItemClick() {
allRecordsAdapter = new AllRecordsAdapter(allRecordItems, this);
allRecordsAdapter.onItemClickListener(new AllRecordsAdapter.onItemClick() {
@Override
public void itemClick(Record record) {
ux.showRecordDetailsDialog(R.layout.dialog_record_short_details, record, new UX.onDialogOkListener() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,15 @@ public class AllRecordsAdapter extends RecyclerView.Adapter<AllRecordsAdapter.Vi
private onItemClick onItemClick;
private Context context;

public AllRecordsAdapter(ArrayList<Record> recordList, Context context, onItemClick onItemClick) {
public AllRecordsAdapter(ArrayList<Record> recordList, Context context) {
this.recordList = recordList;
this.onItemClick = onItemClick;
this.context = context;
}

public void onItemClickListener(onItemClick onItemClick){
this.onItemClick = onItemClick;
}

public interface onItemClick{
void itemClick(Record record);
}
Expand Down
45 changes: 45 additions & 0 deletions app/src/main/java/com/sakhawat/expense/tracker/utills/UX.java
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,46 @@ public void onClick(View v) {
dialogView.findViewById(R.id.CancelButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onDialogOkListener.onClick();
dialog.dismiss();
dialog.cancel();
}
});
}

/**
* This method will perform custom dialog functionality
*
* @param layout,title,okListener
*/
public void showDialog(int layout, String title, onDialogCancelListener cancelListener, onDialogOkListener okListener) {
final onDialogOkListener onDialogOkListener = okListener;
final onDialogCancelListener onDialogCancelListener = cancelListener;
TextView DialogMessage;
final View dialogView = View.inflate(context, layout, null);

final Dialog dialog = new Dialog(context);
dialog.setContentView(dialogView);

if (!TextUtils.isEmpty(title)) dialog.setTitle(title);
if (dialog != null) dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);

dialog.show();

DialogMessage = dialogView.findViewById(R.id.DialogMessage);
DialogMessage.setText(title);
dialogView.findViewById(R.id.OkButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onDialogOkListener.onClick();
dialog.dismiss();
}
});

dialogView.findViewById(R.id.CancelButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onDialogCancelListener.onClick();
dialog.dismiss();
dialog.cancel();
}
Expand Down Expand Up @@ -371,6 +411,11 @@ public void onClick(View v) {
public interface onDialogOkListener {
void onClick();
}

public interface onDialogCancelListener {
void onClick();
}

//region end for custom dialog

}

0 comments on commit f16d129

Please sign in to comment.