public async Task <IHttpActionResult> PutStudent(string id, PaymentTable payment)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != payment.ID)
            {
                return(BadRequest());
            }

            db.Entry(payment).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PaymentExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemplo n.º 2
0
        public void Update_CreatedUpdateAndRead1Record_UpdatedValues()
        {
            //Assemble
            PaymentModel paymentModel = new PaymentModel();

            paymentModel.enrollmentId         = enrollmentId;
            paymentModel.paymentAmountDue     = 20;
            paymentModel.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel.paymentRecieved      = true;
            paymentModel.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel.recieptIssued        = true;
            PaymentTable paymentTable = new PaymentTable();
            int          paymentID    = paymentTable.create(paymentModel);

            paymentModel.id                   = paymentID;
            paymentModel.enrollmentId         = enrollmentId;
            paymentModel.paymentAmountDue     = 20;
            paymentModel.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel.paymentRecieved      = true;
            paymentModel.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel.recieptIssued        = true;

            //Act
            paymentTable.update(paymentModel);
            PaymentModel actual = paymentTable.read(paymentID);

            //Assert
            Assert.AreEqual(paymentModel.enrollmentId, actual.enrollmentId);
            Assert.AreEqual(paymentModel.paymentAmountDue, actual.paymentAmountDue);
            Assert.AreEqual(paymentModel.paymentAmountDueDate, actual.paymentAmountDueDate);
            Assert.AreEqual(paymentModel.paymentRecieved, actual.paymentRecieved);
            Assert.AreEqual(paymentModel.paymentRecievedDate, actual.paymentRecievedDate);
            Assert.AreEqual(paymentModel.recieptIssued, actual.recieptIssued);
        }
Exemplo n.º 3
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (textBox3.Text == "")
                {
                    textBox3.Text = "0";
                }

                DataClasses1DataContext db = new DataClasses1DataContext();
                PaymentTable            dt = new PaymentTable();
                dt.DateOfPayment = DateTime.Today;
                dt.PaymentAmount = selectedUserSal;
                dt.UserId        = Int32.Parse(textBox2.Text);
                dt.ExtraBonus    = Int32.Parse(textBox3.Text);
                db.PaymentTables.InsertOnSubmit(dt);
                db.SubmitChanges();
                loadDataGrid2("");
                MessageBox.Show("Successfull Payment!");
            }
            catch
            {
                MessageBox.Show("Invalid Input!");
            }
        }
        public async Task <IHttpActionResult> PostStudent(PaymentTable payment)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Payments.Add(payment);

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (PaymentExists(payment.ID))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = payment.ID }, payment));
        }
Exemplo n.º 5
0
        private void RefreshList()
        {
            //clear all the items from the ListView
            lsvPayment.Items.Clear(); // make sure it is not just lvXXX.Clear()

            //read all the records from the table
            List <PaymentModel>    paymentList    = new PaymentTable().readAll();
            List <EnrollmentModel> enrollmentList = new EnrollmentTable().readAll();


            //loop through all the records
            foreach (var payment in paymentList)
            {
                var enrollmentIndex = new ForeignKeyHelper().findIndexOfEnrollmentID(enrollmentList, payment.enrollmentId);
                var enrollmentName  = enrollmentList[enrollmentIndex].name;
                //create an array that will hold all the fields in a row
                var row = new string[] { payment.id.ToString(), enrollmentName, payment.paymentAmountDue.ToString(), payment.paymentType, payment.paymentAmountDueDate.ToString(), payment.paymentRecieved.ToString(), payment.paymentRecievedDate.ToString(), payment.recieptIssued.ToString() };
                var lvi = new ListViewItem(row);

                //Save the model in the tag property so we can use it if row is selected
                lvi.Tag = payment;

                //add new row to the ListView
                lsvPayment.Items.Add(lvi);
            }
            lsvPayment.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
        }
Exemplo n.º 6
0
        private void enrollHelaRegular()
        {
            EnrollmentTable enrollmentTable = new EnrollmentTable();
            PaymentTable    paymentTable    = new PaymentTable();

            EnrollmentModel enrollmentModel = new EnrollmentModel();

            enrollmentModel.name          = dogModelOdin.name + " (owned by " + clientModelJames.displayName + ") in " + programModelRegular1.name;
            enrollmentModel.clientId      = clientIdJames;
            enrollmentModel.dogId         = dogIdHela;
            enrollmentModel.programId     = programIdRegular1;
            enrollmentModel.paymentMethod = PaymentConstants.PAYMENT_PER_CLASS;
            enrollmentModel.joinDate      = DateTime.Now.AddDays(-19);
            enrollmentModel.inviteIssued  = true;
            int enrollmentId = enrollmentTable.create(enrollmentModel);

            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentType          = PaymentTypeConstants.DEPOSIT;
            paymentModel1.paymentAmountDue     = programVarietyModelRegular.depositAmount;
            paymentModel1.paymentAmountDueDate = DateTime.Now.AddDays(-19);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = DateTime.Now.AddDays(-19);
            paymentModel1.recieptIssued        = true;
            paymentTable.create(paymentModel1);

            PaymentModel paymentModel2 = new PaymentModel();

            paymentModel2.enrollmentId         = enrollmentId;
            paymentModel2.paymentType          = PaymentTypeConstants.INSTALLMENT;
            paymentModel2.paymentAmountDue     = 39.00;
            paymentModel2.paymentAmountDueDate = DateTime.Now.AddDays(+14);
            paymentModel2.paymentRecieved      = false;
            //paymentModel2.paymentRecievedDate = DateTime.Now.AddDays(+);
            paymentModel2.recieptIssued = false;
            paymentTable.create(paymentModel2);

            PaymentModel paymentModel3 = new PaymentModel();

            paymentModel3.enrollmentId         = enrollmentId;
            paymentModel3.paymentType          = PaymentTypeConstants.INSTALLMENT;
            paymentModel3.paymentAmountDue     = 39.00;
            paymentModel3.paymentAmountDueDate = DateTime.Now.AddDays(+28);
            paymentModel3.paymentRecieved      = false;
            //paymentModel2.paymentRecievedDate = DateTime.Now.AddDays(+);
            paymentModel3.recieptIssued = false;
            paymentTable.create(paymentModel3);

            PaymentModel paymentModel4 = new PaymentModel();

            paymentModel4.enrollmentId         = enrollmentId;
            paymentModel4.paymentType          = PaymentTypeConstants.INSTALLMENT;
            paymentModel4.paymentAmountDue     = 39.00;
            paymentModel4.paymentAmountDueDate = DateTime.Now.AddDays(+42);
            paymentModel4.paymentRecieved      = false;
            //paymentModel4.paymentRecievedDate = DateTime.Now.AddDays(+);
            paymentModel4.recieptIssued = false;
            paymentTable.create(paymentModel4);
        }
Exemplo n.º 7
0
        public void createPaymentInstallments(ProgramVarietyModel programVarietyModel)
        {
            var totalCostOfClasses     = programVarietyModel.noOfClasses * programVarietyModel.sessionCost;
            var numberOfInstallments   = programVarietyModel.noOfClasses / 2;
            var installmentAmountTotal = totalCostOfClasses - programVarietyModel.depositAmount;
            var installmentAmount      = Math.Round(installmentAmountTotal / numberOfInstallments, 2);

            List <ClassModel> classes            = new ClassTable().readAll();
            List <ClassModel> programClassesList = new List <ClassModel>();

            foreach (var thisClass in classes)
            {
                if (thisClass.programId == (cbxProgram.SelectedItem as dynamic).Value)
                {
                    programClassesList.Add(thisClass);
                }
            }

            for (int i = 1; i <= numberOfInstallments; i++)
            {
                var paymentModel = new PaymentModel();
                paymentModel.enrollmentId         = selectedEnrollment.id;
                paymentModel.paymentAmountDue     = installmentAmount;
                paymentModel.paymentAmountDueDate = programClassesList[(i * 2) - 1].classDate;
                paymentModel.paymentRecieved      = false;
                paymentModel.paymentType          = PaymentTypeConstants.INSTALLMENT;
                paymentModel.recieptIssued        = false;
                PaymentTable paymentTable = new PaymentTable();
                paymentTable.create(paymentModel);
            }
        }
Exemplo n.º 8
0
        public async Task <IActionResult> CreatePaymentTable([FromBody] PaymentTable item)
        {
            if (item == null)
            {
                return(this.BadRequest());
            }

            item.Hierarchies?.ForEach(x =>
            {
                x.Id                     = 0;
                x.PaymentTableId         = 0;
                x.HierarchyStructure     = null;
                x.HierarchyStructureNode = null;
            });

            item.Indicators?.ForEach(x =>
            {
                x.PaymentTableId = 0;
                x.Indicator      = null;
                x.ThresholdDetails?.ForEach(t => t.Id = 0);
                if (x.GoalPayment != null)
                {
                    x.GoalPayment.Id = 0;
                }
            });

            await this.unitOfWork.PaymentTableRepository.AddAsync(item);

            await this.unitOfWork.SaveAsync();

            return(this.CreatedAtRoute("GetSchema", new { id = item.Id }, item));
        }
Exemplo n.º 9
0
 public ServiceController(ServiceOrderTable serviceOrderTable, TenantTable tenantTable, ProjectTable projectTable, UserTable userTable, PaymentTable paymentTable)
 {
     _serviceOrderTable = serviceOrderTable;
     _tenantTable       = tenantTable;
     _projectTable      = projectTable;
     _userTable         = userTable;
     _paymentTable      = paymentTable;
 }
        public async Task <IHttpActionResult> GetStudent(string id)
        {
            PaymentTable payment = await db.Payments.FindAsync(id);

            if (payment == null)
            {
                return(NotFound());
            }

            return(Ok(payment));
        }
Exemplo n.º 11
0
        public void Count_AllRecordsDeleted_0()
        {
            //Assemble
            int          expected     = 0;
            PaymentTable paymentTable = new PaymentTable();

            //Act
            int actual = paymentTable.count();

            //Assert
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 12
0
        public void Delete_NonExistantId_0()
        {
            //Assemble
            PaymentTable paymentTable = new PaymentTable();
            int          expected     = 0;

            //Act
            paymentTable.delete(0);
            int actual = paymentTable.count();

            //Assert
            Assert.AreEqual(expected, actual);
        }
        public async Task <IHttpActionResult> DeleteStudent(string id)
        {
            PaymentTable payment = await db.Payments.FindAsync(id);

            if (payment == null)
            {
                return(NotFound());
            }

            db.Payments.Remove(payment);
            await db.SaveChangesAsync();

            return(Ok(payment));
        }
Exemplo n.º 14
0
        public void createPaymentDeposit(ProgramVarietyModel programVarietyModel)
        {
            var paymentModel = new PaymentModel();

            paymentModel.enrollmentId         = selectedEnrollment.id;
            paymentModel.paymentAmountDue     = programVarietyModel.depositAmount;
            paymentModel.paymentAmountDueDate = DateTime.Now;
            paymentModel.paymentRecieved      = false;
            paymentModel.paymentType          = PaymentTypeConstants.DEPOSIT;
            paymentModel.recieptIssued        = false;
            PaymentTable paymentTable = new PaymentTable();

            paymentTable.create(paymentModel);
        }
Exemplo n.º 15
0
 public IActionResult Index(Credit credit)
 {
     if (TestCorrectData(credit))
     {
         PaymentTable table = CalculateCredit(credit);
         ViewBag.Tabel = table.Payments;
         ViewBag.Over  = table.GetOverpayment;
         return(View("Result"));
     }
     else
     {
         return(MyError(1));
     }
 }
Exemplo n.º 16
0
        public void createPaymentBalance(ProgramVarietyModel programVarietyModel)
        {
            var totalCostOfClasses = programVarietyModel.noOfClasses * programVarietyModel.sessionCost;
            var discountAmount     = totalCostOfClasses / 100 * programVarietyModel.fullPaymentPercentageDiscount;
            var balance            = totalCostOfClasses - discountAmount - programVarietyModel.depositAmount;
            var paymentModel       = new PaymentModel();

            paymentModel.enrollmentId         = selectedEnrollment.id;
            paymentModel.paymentAmountDue     = balance;
            paymentModel.paymentAmountDueDate = DateTime.Now;
            paymentModel.paymentRecieved      = false;
            paymentModel.paymentType          = PaymentTypeConstants.BALANCE;
            paymentModel.recieptIssued        = false;
            PaymentTable paymentTable = new PaymentTable();

            paymentTable.create(paymentModel);
        }
Exemplo n.º 17
0
        public async Task <IActionResult> EditPaymentTable([FromBody] PaymentTable item, int id)
        {
            if (item == null)
            {
                return(this.BadRequest());
            }

            var result = await this.compensationServices.UpdatePaymentTable(id, item);

            if (!result)
            {
                return(this.BadRequest());
            }

            await this.unitOfWork.SaveAsync();

            return(new NoContentResult());
        }
Exemplo n.º 18
0
        public void ReadAll_Create3Records_CountIs3()
        {
            //Assemble
            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentAmountDue     = 20;
            paymentModel1.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel1.recieptIssued        = true;

            PaymentModel paymentModel2 = new PaymentModel();

            paymentModel2.enrollmentId         = enrollmentId;
            paymentModel2.paymentAmountDue     = 20;
            paymentModel2.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel2.paymentRecieved      = true;
            paymentModel2.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel2.recieptIssued        = true;

            PaymentModel paymentModel3 = new PaymentModel();

            paymentModel3.enrollmentId         = enrollmentId;
            paymentModel3.paymentAmountDue     = 20;
            paymentModel3.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel3.paymentRecieved      = true;
            paymentModel3.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel3.recieptIssued        = true;

            PaymentTable paymentTable = new PaymentTable();
            int          expected     = 3;

            //Act
            int paymentID1             = paymentTable.create(paymentModel1);
            int paymentID2             = paymentTable.create(paymentModel2);
            int paymentID3             = paymentTable.create(paymentModel3);
            List <PaymentModel> actual = paymentTable.readAll();

            //Assert
            Assert.AreEqual(expected, actual.Count);
        }
Exemplo n.º 19
0
        public void Create_ValidData_PaymentIDReturned()
        {
            //Assemble
            PaymentModel paymentModel = new PaymentModel();

            paymentModel.enrollmentId         = enrollmentId;
            paymentModel.paymentAmountDue     = 20.0;
            paymentModel.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel.paymentRecieved      = true;
            paymentModel.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel.recieptIssued        = true;
            //If created will be greater than 0, but we don't know exactly what it will be because deleting all records doesnt set the ID counter back to 0
            int          notCreated   = 0;
            PaymentTable paymentTable = new PaymentTable();

            //Act
            int actual = paymentTable.create(paymentModel);

            //Assert
            Assert.AreNotEqual(notCreated, actual);
        }
Exemplo n.º 20
0
        public void Count_Created1Record_1()
        {
            //Assemble
            PaymentModel paymentModel = new PaymentModel();

            paymentModel.enrollmentId         = enrollmentId;
            paymentModel.paymentAmountDue     = 20;
            paymentModel.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel.paymentRecieved      = true;
            paymentModel.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel.recieptIssued        = true;
            int          expected     = 1;
            PaymentTable paymentTable = new PaymentTable();

            //Act
            int paymentID = paymentTable.create(paymentModel);
            int actual    = paymentTable.count();

            //Assert
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 21
0
        private void enrollHeimdallAdvanced()
        {
            EnrollmentTable enrollmentTable = new EnrollmentTable();
            PaymentTable    paymentTable    = new PaymentTable();

            EnrollmentModel enrollmentModel = new EnrollmentModel();

            enrollmentModel.name          = dogModelHeimdall.name + " (owned by " + clientModelMark.displayName + ") in " + programModelAdvanced1.name;
            enrollmentModel.clientId      = clientIdJames;
            enrollmentModel.dogId         = dogIdHeimdall;
            enrollmentModel.programId     = programIdAdvanced1;
            enrollmentModel.paymentMethod = PaymentConstants.PAYMENT_PER_CLASS;
            enrollmentModel.joinDate      = DateTime.Now.AddDays(-2);
            enrollmentModel.inviteIssued  = true;
            int enrollmentId = enrollmentTable.create(enrollmentModel);

            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentType          = PaymentTypeConstants.DEPOSIT;
            paymentModel1.paymentAmountDue     = programVarietyModelAdvanced.depositAmount;
            paymentModel1.paymentAmountDueDate = DateTime.Now.AddDays(-2);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = DateTime.Now.AddDays(-2);
            paymentModel1.recieptIssued        = true;
            paymentTable.create(paymentModel1);

            for (var i = 0; i < 8; i++)
            {
                PaymentModel paymentModelInstallment = new PaymentModel();
                paymentModelInstallment.enrollmentId         = enrollmentId;
                paymentModelInstallment.paymentType          = PaymentTypeConstants.INSTALLMENT;
                paymentModelInstallment.paymentAmountDue     = 26.25;
                paymentModelInstallment.paymentAmountDueDate = DateTime.Now.AddDays(50 + (i * 7));
                paymentModelInstallment.paymentRecieved      = false;
                //paymentModel1.paymentRecievedDate = DateTime.Now.AddDays(-2);
                paymentModelInstallment.recieptIssued = false;
                paymentTable.create(paymentModelInstallment);
            }
        }
Exemplo n.º 22
0
        public async Task <bool> UpdatePaymentTable(int id, PaymentTable paymentTable)
        {
            var item = await this.GetPaymentTableById(id);

            if (item == null)
            {
                return(false);
            }

            item.FinalDate               = paymentTable.FinalDate;
            item.TableType               = paymentTable.TableType;
            item.ThresholdType           = paymentTable.ThresholdType;
            item.PercentageIndicatorType = paymentTable.PercentageIndicatorType;
            item.StartDate               = paymentTable.StartDate;
            item.Name = paymentTable.Name;

            paymentTable.Hierarchies?.ForEach(x =>
            {
                x.Id                     = 0;
                x.PaymentTableId         = id;
                x.HierarchyStructure     = null;
                x.HierarchyStructureNode = null;
            });

            paymentTable.Indicators?.ForEach(x => x.PaymentTableId = id);

            this.unitOfWork.PaymentTableRepository.AddRemoveUpdateCollectionItems(
                item.Indicators,
                paymentTable.Indicators,
                v => v.Id);

            this.unitOfWork.PaymentTableRepository.AddRemoveCollectionItems(
                item.Hierarchies,
                paymentTable.Hierarchies,
                h => h.Id);

            this.unitOfWork.PaymentTableRepository.Edit(item);

            return(true);
        }
Exemplo n.º 23
0
        private static void consoleTableCounts()
        {
            Console.WriteLine("How many records in the tables");
            Console.WriteLine("==============================");

            Int32 classCount = new ClassTable().count();

            Console.WriteLine("classCount = " + classCount);

            Int32 clientCount = new ClientTable().count();

            Console.WriteLine("clientCount = " + clientCount);

            Int32 dogCount = new DogTable().count();

            Console.WriteLine("dogCount = " + dogCount);

            Int32 enrollmentCount = new EnrollmentTable().count();

            Console.WriteLine("enrollmentCount = " + enrollmentCount);

            Int32 paymentCount = new PaymentTable().count();

            Console.WriteLine("paymentCount = " + paymentCount);

            Int32 programCostCount = new ProgramVarietyTable().count();

            Console.WriteLine("programCostCount = " + programCostCount);

            Int32 programCount = new ProgramTable().count();

            Console.WriteLine("programCount = " + programCount);

            Int32 staffCount = new StaffTable().count();

            Console.WriteLine("staffCount = " + staffCount);

            Console.WriteLine("==============================");
        }
Exemplo n.º 24
0
        private void enrollLokiAdvanced()
        {
            EnrollmentTable enrollmentTable = new EnrollmentTable();
            PaymentTable    paymentTable    = new PaymentTable();

            EnrollmentModel enrollmentModel = new EnrollmentModel();

            enrollmentModel.name          = dogModelLoki.name + " (owned by " + clientModelJames.displayName + ") in " + programModelAdvanced1.name;
            enrollmentModel.clientId      = clientIdJames;
            enrollmentModel.dogId         = dogIdLoki;
            enrollmentModel.programId     = programIdAdvanced1;
            enrollmentModel.paymentMethod = PaymentConstants.PAYMENT_IN_FULL;
            enrollmentModel.joinDate      = DateTime.Now.AddDays(-2);
            enrollmentModel.inviteIssued  = true;
            int enrollmentId = enrollmentTable.create(enrollmentModel);

            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentType          = PaymentTypeConstants.DEPOSIT;
            paymentModel1.paymentAmountDue     = programVarietyModelAdvanced.depositAmount;
            paymentModel1.paymentAmountDueDate = DateTime.Now.AddDays(-2);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = DateTime.Now.AddDays(-2);
            paymentModel1.recieptIssued        = true;
            paymentTable.create(paymentModel1);


            PaymentModel paymentModel2 = new PaymentModel();

            paymentModel2.enrollmentId         = enrollmentId;
            paymentModel2.paymentType          = PaymentTypeConstants.BALANCE;
            paymentModel2.paymentAmountDue     = 210.00;
            paymentModel2.paymentAmountDueDate = DateTime.Now.AddDays(-2);
            paymentModel2.paymentRecieved      = false;
            //paymentModel2.paymentRecievedDate = DateTime.Now.AddDays(-19);
            paymentModel2.recieptIssued = false;
            paymentTable.create(paymentModel2);
        }
Exemplo n.º 25
0
        private void enrollHeimdallRegular()
        {
            EnrollmentTable enrollmentTable = new EnrollmentTable();
            PaymentTable    paymentTable    = new PaymentTable();

            EnrollmentModel enrollmentModel = new EnrollmentModel();

            enrollmentModel.name          = dogModelHeimdall.name + " (owned by " + clientModelMark.displayName + ") in " + programModelRegular1.name;
            enrollmentModel.clientId      = clientIdMark;
            enrollmentModel.dogId         = dogIdHeimdall;
            enrollmentModel.programId     = programIdRegular1;
            enrollmentModel.paymentMethod = PaymentConstants.PAYMENT_IN_FULL;
            enrollmentModel.joinDate      = DateTime.Now.AddDays(-19);
            enrollmentModel.inviteIssued  = true;
            int enrollmentId = enrollmentTable.create(enrollmentModel);

            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentType          = PaymentTypeConstants.DEPOSIT;
            paymentModel1.paymentAmountDue     = programVarietyModelRegular.depositAmount;
            paymentModel1.paymentAmountDueDate = DateTime.Now.AddDays(-19);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = DateTime.Now.AddDays(-19);
            paymentModel1.recieptIssued        = true;
            paymentTable.create(paymentModel1);

            PaymentModel paymentModel2 = new PaymentModel();

            paymentModel2.enrollmentId         = enrollmentId;
            paymentModel2.paymentType          = PaymentTypeConstants.BALANCE;
            paymentModel2.paymentAmountDue     = 117.00;
            paymentModel2.paymentAmountDueDate = DateTime.Now.AddDays(-19);
            paymentModel2.paymentRecieved      = false;
            //paymentModel2.paymentRecievedDate = DateTime.Now.AddDays(-19);
            paymentModel2.recieptIssued = false;
            paymentTable.create(paymentModel2);
        }
Exemplo n.º 26
0
        private PaymentTable CalculateCredit(Credit credit)
        {
            PaymentTable table = new PaymentTable();
            double       K, i, rate = 0.0;

            switch (credit.selectRate)
            {
            case SelectRate.Годовых:
                rate = credit.Rate;
                break;

            case SelectRate.в_день:
                rate = credit.Rate / 365;
                break;
            }

            if (credit.SelectTime == SelectTime.Месяцев)
            {
                i = rate / 100 / 12;
            }
            else
            {
                i = rate / 100 / 30;
            }
            K = (i * Math.Pow(1 + i, credit.Time)) / (Math.Pow(1 + i, credit.Time) - 1);

            double payment = K * credit.Sum;

            payment -= payment % 0.01;
            double Overpayment = payment * credit.Time - credit.Sum;

            Overpayment         -= Overpayment % 0.01;
            table.GetOverpayment = Overpayment;


            DateTime date = DateTime.Now.Date;
            double   ost  = Math.Round(credit.Sum, 2);

            for (int j = 1; j <= credit.Time; j++)
            {
                double procent = ost * i;
                procent -= (procent % 0.01);

                if (j != credit.Time)
                {
                    double body = Math.Round(payment - procent, 2);
                    ost -= body;
                    ost -= ost % 0.01;
                    table.Add(new Payment(j, date.Date.ToShortDateString(), body, procent, ost));
                }
                else
                {
                    double body = table.Payments.Last().Renains;
                    ost -= body;
                    ost -= ost % 0.01;
                    table.Add(new Payment(j, date.Date.ToShortDateString(), body, procent, ost));
                }

                switch (credit.selectPayment)
                {
                case SelectPayment.ежемесячно:
                    date = date.AddMonths(1);
                    break;

                case SelectPayment.каждые_15_дней:
                    date = date.AddDays(15);
                    break;

                case SelectPayment.каждые_10_дней:
                    date = date.AddDays(10);
                    break;
                }
            }

            return(table);
        }
Exemplo n.º 27
0
 public AdminController(TenantTable tenantTable, ServiceOrderTable serviceOrderTable, PaymentTable paymentTable)
 {
     _tenantTable       = tenantTable;
     _serviceOrderTable = serviceOrderTable;
     _paymentTable      = paymentTable;
 }
Exemplo n.º 28
0
        public void ReadAll_Create3Records_3DifferentRecords()
        {
            //Assemble
            PaymentModel paymentModel1 = new PaymentModel();

            paymentModel1.enrollmentId         = enrollmentId;
            paymentModel1.paymentAmountDue     = 20;
            paymentModel1.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel1.paymentRecieved      = true;
            paymentModel1.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel1.recieptIssued        = true;

            PaymentModel paymentModel2 = new PaymentModel();

            paymentModel2.enrollmentId         = enrollmentId;
            paymentModel2.paymentAmountDue     = 20;
            paymentModel2.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel2.paymentRecieved      = true;
            paymentModel2.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel2.recieptIssued        = true;

            PaymentModel paymentModel3 = new PaymentModel();

            paymentModel3.enrollmentId         = enrollmentId;
            paymentModel3.paymentAmountDue     = 20;
            paymentModel3.paymentAmountDueDate = new DateTime(2021, 01, 01);
            paymentModel3.paymentRecieved      = true;
            paymentModel3.paymentRecievedDate  = new DateTime(2021, 01, 01);
            paymentModel3.recieptIssued        = true;

            PaymentTable paymentTable = new PaymentTable();

            //Act
            int paymentID1             = paymentTable.create(paymentModel1);
            int paymentID2             = paymentTable.create(paymentModel2);
            int paymentID3             = paymentTable.create(paymentModel3);
            List <PaymentModel> actual = paymentTable.readAll();

            //Assert
            Assert.AreEqual(paymentID1, paymentID1);
            Assert.AreEqual(paymentModel1.enrollmentId, actual[0].enrollmentId);
            Assert.AreEqual(paymentModel1.paymentAmountDue, actual[0].paymentAmountDue);
            Assert.AreEqual(paymentModel1.paymentAmountDueDate, actual[0].paymentAmountDueDate);
            Assert.AreEqual(paymentModel1.paymentRecieved, actual[0].paymentRecieved);
            Assert.AreEqual(paymentModel1.paymentRecievedDate, actual[0].paymentRecievedDate);
            Assert.AreEqual(paymentModel1.recieptIssued, actual[0].recieptIssued);

            Assert.AreEqual(paymentID2, paymentID2);
            Assert.AreEqual(paymentModel2.enrollmentId, actual[1].enrollmentId);
            Assert.AreEqual(paymentModel2.paymentAmountDue, actual[1].paymentAmountDue);
            Assert.AreEqual(paymentModel2.paymentAmountDueDate, actual[1].paymentAmountDueDate);
            Assert.AreEqual(paymentModel2.paymentRecieved, actual[1].paymentRecieved);
            Assert.AreEqual(paymentModel2.paymentRecievedDate, actual[1].paymentRecievedDate);
            Assert.AreEqual(paymentModel2.recieptIssued, actual[1].recieptIssued);

            Assert.AreEqual(paymentID3, paymentID3);
            Assert.AreEqual(paymentModel3.enrollmentId, actual[2].enrollmentId);
            Assert.AreEqual(paymentModel3.paymentAmountDue, actual[2].paymentAmountDue);
            Assert.AreEqual(paymentModel3.paymentAmountDueDate, actual[2].paymentAmountDueDate);
            Assert.AreEqual(paymentModel3.paymentRecieved, actual[2].paymentRecieved);
            Assert.AreEqual(paymentModel3.paymentRecievedDate, actual[2].paymentRecievedDate);
            Assert.AreEqual(paymentModel3.recieptIssued, actual[2].recieptIssued);
        }