public debt_lodgement_reimbursment alter_debt_lodgement_reimbursement()
        {
            try
            {
                debt_lodgement_reimbursment prev_debt_lodgement_reimbursement = db.debt_lodgement_reimbursments.SingleOrDefault(a => a.id == debt_lodgement_reimbursement.id);

                prev_debt_lodgement_reimbursement.amount               = debt_lodgement_reimbursement.amount;
                prev_debt_lodgement_reimbursement.bank                 = debt_lodgement_reimbursement.bank;
                prev_debt_lodgement_reimbursement.date                 = debt_lodgement_reimbursement.date;
                prev_debt_lodgement_reimbursement.from_date            = debt_lodgement_reimbursement.from_date;
                prev_debt_lodgement_reimbursement.islocked             = debt_lodgement_reimbursement.islocked;
                prev_debt_lodgement_reimbursement.isverified           = debt_lodgement_reimbursement.isverified;
                prev_debt_lodgement_reimbursement.shop                 = debt_lodgement_reimbursement.shop;
                prev_debt_lodgement_reimbursement.teller_number        = debt_lodgement_reimbursement.teller_number;
                prev_debt_lodgement_reimbursement.to_date              = debt_lodgement_reimbursement.to_date;
                prev_debt_lodgement_reimbursement.transaction          = debt_lodgement_reimbursement.transaction;
                prev_debt_lodgement_reimbursement.transaction_category = debt_lodgement_reimbursement.transaction_category;
                prev_debt_lodgement_reimbursement.transaction_type     = debt_lodgement_reimbursement.transaction_type;
                prev_debt_lodgement_reimbursement.weekno               = debt_lodgement_reimbursement.weekno;

                db.SubmitChanges();
                return(debt_lodgement_reimbursement);
            }
            catch (Exception)
            {
                return(null);
            }
        }
 public debt_lodgement_reimbursment find_debt_lodgement_reimbursement_By_AppId(string Appid)
 {
     try
     {
         debt_lodgement_reimbursement = db.debt_lodgement_reimbursments.SingleOrDefault(a => a.app_id == Appid);
         return(debt_lodgement_reimbursement);
     }
     catch (Exception)
     {
         return(null);
     }
 }
 public debt_lodgement_reimbursment find_debt_lodgement_reimbursement_By_ID(int id)
 {
     try
     {
         debt_lodgement_reimbursement = db.debt_lodgement_reimbursments.SingleOrDefault(a => a.id == id);
         return(debt_lodgement_reimbursement);
     }
     catch (Exception)
     {
         return(null);
     }
 }
 public debt_lodgement_reimbursment delete_debt_lodgement_reimbursement()
 {
     try
     {
         debt_lodgement_reimbursment prev_debt_lodgement_reimbursement = db.debt_lodgement_reimbursments.SingleOrDefault(a => a.id == debt_lodgement_reimbursement.id);
         db.debt_lodgement_reimbursments.DeleteOnSubmit(prev_debt_lodgement_reimbursement);
         return(debt_lodgement_reimbursement);
     }
     catch (Exception)
     {
         return(null);
     }
 }
 public debt_lodgement_reimbursement_crud(debt_lodgement_reimbursment debt_lodgement_reimbursement_)
 {
     this.debt_lodgement_reimbursement_ = debt_lodgement_reimbursement_;
 }
Esempio n. 6
0
        private decimal lodgeDebt(List <debt> shopdebt, decimal amount, master_balance_sheet shopbal)
        {
            foreach (debt debt in shopdebt)
            {
                transaction_category debttran = db.transaction_categories.SingleOrDefault(a => a.code == "DL");
                bank         bank             = new CRUD.bank_crud().find_bank_By_Code("INT");
                payment_type ptype            = new CRUD.payment_type_crud().find_payment_type_By_ID(1);

                login lodin = db.logins.Single(a => a.username == "InterSwitch");
                if (amount > 0)
                {
                    //debt less than or equal to bonus
                    if (debt.current_amount <= amount && debt.status == true && debt.current_amount > 0)
                    {
                        decimal temp = debt.current_amount.Value;

                        debt.current_amount = 0;

                        debt.status             = false;
                        debt.installment_count += 1;



                        debt_transaction dtran = new debt_transaction
                        {
                            amount          = temp,
                            app_id          = Application().app_id,
                            balance_after   = getbal(temp, temp, debttran),
                            balance_before  = temp,
                            description     = debttran.description + " " + "for " + DateTime.Today,
                            details         = debttran.description + " " + "for " + DateTime.Today,
                            posted_by       = lodin.id,
                            shop            = debt.shop,
                            trans_category  = debttran.id,
                            trans_timestamp = DateTime.Now,
                            trans_type      = (debttran.type == true) ? 0 : 1,
                            debt            = debt.id,
                        };
                        db.debt_transactions.InsertOnSubmit(dtran);
                        db.SubmitChanges();

                        debt_transaction debtIdtran = new CRUD.debt_transaction_crud().find_debt_transaction_By_AppId(dtran.app_id);

                        debt_lodgement_reimbursment newmlr = new debt_lodgement_reimbursment
                        {
                            app_id               = Application().app_id,
                            amount               = temp,
                            bank                 = bank.id,
                            date                 = DateTime.Today,
                            shop                 = debt.shop,
                            teller_number        = "",
                            islocked             = true,
                            isverified           = true,
                            payment_type         = ptype.id,
                            transaction          = (debtIdtran != null) ? debtIdtran.id : 142,
                            transaction_category = debttran.id,
                        };

                        db.debt_lodgement_reimbursments.InsertOnSubmit(newmlr);
                        amount -= temp;


                        //debtTransactionToSave.Add(dtran);

                        shopbal.credit_balance = getbal(shopbal.credit_balance, temp, debttran);

                        shopbal.netbalance = getbal(shopbal.netbalance, temp, debttran);

                        //SAVE DEBT .... BALANCES

                        debt DebtToUpdate = db.debts.SingleOrDefault(a => a.id == debt.id);
                        DebtToUpdate.current_amount    = debt.current_amount;
                        DebtToUpdate.status            = debt.status;
                        DebtToUpdate.installment_count = debt.installment_count;

                        master_balance_sheet salesbalancesToUpdate = db.master_balance_sheets.SingleOrDefault(a => a.shop == shopbal.shop);
                        salesbalancesToUpdate.credit_balance = shopbal.credit_balance;
                        salesbalancesToUpdate.netbalance     = shopbal.netbalance;
                        db.SubmitChanges();

                        shop shop = new CRUD.shop_crud().find_shop_By_ID(debt.shop);
                        SendSmsAndMail(shop, debttran, debt, dtran, newmlr);
                    }
                    else if (debt.current_amount > amount && debt.status == true && debt.current_amount > 0)
                    {
                        decimal temp = debt.current_amount.Value;
                        debt.current_amount     = getbal(debt.current_amount, amount, debttran);
                        debt.installment_count += 1;



                        debt_transaction dtran = new debt_transaction
                        {
                            amount          = amount,
                            app_id          = Application().app_id,
                            balance_after   = getbal(temp, amount, debttran),
                            balance_before  = temp,
                            description     = debttran.description + " " + "for " + DateTime.Today,
                            details         = debttran.description + " " + "for " + DateTime.Today,
                            posted_by       = lodin.id,
                            shop            = debt.shop,
                            trans_category  = debttran.id,
                            trans_timestamp = DateTime.Now,
                            trans_type      = (debttran.type == true) ? 0 : 1,
                            debt            = debt.id,
                        };


                        db.debt_transactions.InsertOnSubmit(dtran);
                        db.SubmitChanges();
                        //debtTransactionToSave.Add(dtran);

                        debt_transaction debtIdtran = new CRUD.debt_transaction_crud().find_debt_transaction_By_AppId(dtran.app_id);

                        debt_lodgement_reimbursment newmlr = new debt_lodgement_reimbursment
                        {
                            app_id               = Application().app_id,
                            amount               = temp,
                            bank                 = bank.id,
                            date                 = DateTime.Today,
                            shop                 = debt.shop,
                            teller_number        = "",
                            islocked             = true,
                            isverified           = true,
                            payment_type         = ptype.id,
                            transaction          = (debtIdtran != null) ? debtIdtran.id : 142,
                            transaction_category = debttran.id,
                        };
                        db.debt_lodgement_reimbursments.InsertOnSubmit(newmlr);


                        shopbal.credit_balance = getbal(shopbal.credit_balance, amount, debttran);

                        shopbal.netbalance = getbal(shopbal.netbalance, amount, debttran);

                        //SAVE DEBT .... BALANCES

                        debt DebtToUpdate = db.debts.SingleOrDefault(a => a.id == debt.id);
                        DebtToUpdate.current_amount    = debt.current_amount;
                        DebtToUpdate.status            = debt.status;
                        DebtToUpdate.installment_count = debt.installment_count;

                        master_balance_sheet salesbalancesToUpdate = db.master_balance_sheets.SingleOrDefault(a => a.shop == shopbal.shop);
                        salesbalancesToUpdate.credit_balance = shopbal.credit_balance;
                        salesbalancesToUpdate.netbalance     = shopbal.netbalance;
                        amount -= amount;
                        db.SubmitChanges();
                        shop shop = new CRUD.shop_crud().find_shop_By_ID(debt.shop);
                        SendSmsAndMail(shop, debttran, debt, dtran, newmlr);
                        break;
                    }
                }
            }

            return(amount);
        }
Esempio n. 7
0
        private void SendSmsAndMail(shop shop, transaction_category tran, debt debt, debt_transaction dtran, debt_lodgement_reimbursment newmlr)
        {
            try
            {
                bool mailvalidity = new Utilities.Mail_Validity_Helper().getMailSendingStatus();
                SMS_Vendor_Validity_Helper valhelp = new SMS_Vendor_Validity_Helper();
                sms_vendor vendor = valhelp.getVendorsByName("50kobo");

                bool smsvalidity = (DateTime.Today <= vendor.expiry_date) ? true : false;

                if (shop.agent != null)
                {
                    sms message;
                    if (tran.code == "DL")
                    {
                        if (smsvalidity)
                        {
                            sm mm = new CRUD.sms_crud().findByCode("DL");
                            message = new sms();

                            if (message.initializeDebtParameters(shop, debt, dtran, newmlr, mm.subject.Trim() + "\r\n" + mm.content.Trim() + "\r\n" + mm.conclusion.Trim()))
                            {
                                message.CustomizeAndSendSMS();
                            }
                        }
                        if (mailvalidity)
                        {
                            mail       mail   = new CRUD.mail_crud().findByCode("DL");
                            MailClient client = new MailClient();
                            client.SendDebtLodgement(shop, mail, debt, dtran);
                        }
                    }
                }
            }
            catch (Exception)
            {
            }
        }