public async Task <int> AddPaymentAsync(PaymentModel model)
        {
            long id = model.PaymentId;

            using (var dataService = DataServiceFactory.CreateDataService())
            {
                var payment = new Payment();
                if (payment != null)
                {
                    UpdatePaymentFromModel(payment, model);
                    payment.PaymentGuid = Guid.NewGuid();
                    if (model.PaymentListModel != null && model.PaymentListModel.Count > 0)
                    {
                        var list = new List <PaymentList>();
                        foreach (var obj in model.PaymentListModel)
                        {
                            if (obj.PaymentListId > 0)
                            {
                                continue;
                            }
                            var paymentlist = new PaymentList();
                            UpdatePaymentListFromModel(paymentlist, obj);
                            list.Add(paymentlist);
                        }
                        payment.PaymentLists = list;
                    }
                    var paymentId = await dataService.AddPaymentAsync(payment);

                    model.Merge(await GetPaymentAsync(dataService, payment.PaymentId));
                    return(paymentId);
                }
                return(0);
            }
        }
예제 #2
0
        public void AddPayment(Payment payment)
        {
            Payment2 pay2 = new Payment2()
            {
                dateTime    = payment.dateTime,
                paymentType = payment.paymentType,
                totalPrice  = payment.totalPrice
            };

            _context.Payments.Add(pay2);

            foreach (var item in payment.menuItems)
            {
                PaymentList list = new PaymentList()
                {
                    dateTime  = payment.dateTime,
                    mainId    = item.Id,
                    MenuId    = item.MenuId,
                    Name      = item.Name,
                    ImagePath = item.ImagePath,
                    Price     = item.Price,
                    isUse     = item.isUse
                };

                _context.PaymentLists.Add(list);
            }
        }
        protected override void RefreshMainData()
        {
            PgMng.Grow(string.Empty, "Pago");

            _selectedOid = ActiveOID;

            switch (DataType)
            {
            case EntityMngFormTypeData.Default:

                if (moleQule.Common.ModulePrincipal.GetUseActiveYear())
                {
                    List = PaymentList.GetList(_tipo, moleQule.Common.ModulePrincipal.GetActiveYear().Year, false);
                }
                else
                {
                    List = PaymentList.GetList(_tipo, false);
                }
                break;

            case EntityMngFormTypeData.ByParameter:
                _sorted_list = List.GetSortedList();
                break;
            }
            PgMng.Grow(string.Empty, "Lista de Pagos");
        }
예제 #4
0
        public void PaymentListHasItems()
        {
            PaymentList list = null;

            list = PaymentList.GetList(2014, false);
            Assert.IsTrue(list.Count > 0);
        }
예제 #5
0
        public Payments(Order order)
        {
            InitializeComponent();

            AddToolbarItem.Icon = Device.RuntimePlatform == Device.UWP ? "Assets/add_new.png" : "add_new.png";

            MessageStackLayout.IsVisible = false;
            RefreshStackLayout.IsVisible = true;
            MainSearchBar.IsVisible      = true;

            _vm            = new PaymentListViewModel(order);
            BindingContext = _vm;

            if (Device.RuntimePlatform == Device.Android)
            {
                PaymentList.IsPullToRefreshEnabled = true;
                PaymentList.RefreshCommand         = _vm.RefreshCommand;
                PaymentList.SetBinding(ListView.IsRefreshingProperty, nameof(_vm.IsRefreshing));
            }
            else if (Device.RuntimePlatform == Device.UWP)
            {
                PaymentList.RowHeight = PaymentList.RowHeight * 2;
            }

            PaymentList.ItemSelected += (sender, e) => {
                Navigation.PushAsync(new PaymentPage(((ListView)sender).SelectedItem as Payment));
            };
        }
예제 #6
0
        public JsonResult SavePayment(PaymentList paylst)
        {
            try
            {
                string paynum = string.Empty;
                if (paylst._PAY_NUM == "[SYSTEM GENERATED]")
                {
                    paynum = "PY-" + DateTime.Now.ToString("yyMMddfff");;
                }
                else
                {
                    paynum = paylst._PAY_NUM;
                }

                dbcontext.SPROC_TCCG_PAYMENT_SAVE(paynum,
                                                  paylst._INVOICE_NUM,
                                                  DateTime.Parse(paylst._PAY_DTE),
                                                  paylst._AMT_PAID,
                                                  paylst._PAY_BALANCE);

                return(Json(new { result = true }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new { result = false, err = ex.Message }, JsonRequestBehavior.AllowGet));
            }
        }
        // GET api/<controller>
        public IEnumerable <Payment> Get()
        {
            PaymentList payments = new PaymentList();

            payments.Load();
            return(payments);
        }
예제 #8
0
        protected override void GetFormSourceData(object[] parameters)
        {
            _loan   = (Loan)parameters[1];
            _entity = (Payment)parameters[2];
            _loans  = LoanList.NewList(_loan);

            PaymentList pagos = PaymentList.GetListByPrestamo(_loans[0], false);

            TransactionPayment pf = _entity.Operations.GetItemByFactura(_loans[0].Oid);

            if (pf != null)
            {
                _loans[0].Asignado    = pf.Cantidad;
                _loans[0].TotalPagado = 0;

                foreach (PaymentInfo pago in pagos)
                {
                    if (pago.EEstado == moleQule.Base.EEstado.Anulado)
                    {
                        continue;
                    }

                    _loans[0].TotalPagado += pago.Importe;
                }
            }

            _loans[0].Pendiente        = _loans[0].Importe - _loans[0].TotalPagado + _loans[0].Asignado;
            _loans[0].PendienteAsignar = _loans[0].Pendiente - _loans[0].Asignado;
        }
예제 #9
0
        protected override void GetFormSourceData(long oid, object[] parameters)
        {
            try
            {
                ETipoPago tipo = ETipoPago.Prestamo;

                if (parameters[1] != null)
                {
                    _loan = (Loan)parameters[1];
                }

                if (parameters.Length >= 3)
                {
                    _entity = (Payment)parameters[2];
                }
                else
                {
                    _entity = Payment.Get(oid, tipo, true);
                    _entity.BeginEdit();
                }

                _loans = _loan != null?
                         LoanList.NewList(_loan)
                             : LoanList.GetByPagoAndPendientesList(_entity.GetInfo(false));

                if (_loans.Count > 0)
                {
                    PaymentList pagos = PaymentList.GetListByPrestamo(_loans[0], false);

                    TransactionPayment pf = _entity.Operations.GetItemByFactura(_loans[0].Oid);

                    if (pf != null)
                    {
                        _loans[0].Asignado    = pf.Cantidad;
                        _loans[0].TotalPagado = 0;

                        foreach (PaymentInfo pago in pagos)
                        {
                            if (pago.EEstado == moleQule.Base.EEstado.Anulado)
                            {
                                continue;
                            }

                            _loans[0].TotalPagado += pago.Importe;
                        }
                    }

                    _loans[0].Pendiente        = _loans[0].Importe - _loans[0].TotalPagado + _loans[0].Asignado;
                    _loans[0].PendienteAsignar = _loans[0].Pendiente - _loans[0].Asignado;
                }
            }
            catch (Exception ex)
            {
                if (_entity != null)
                {
                    _entity.CloseSession();
                }
                throw ex;
            }
        }
예제 #10
0
        /// <summary>
        /// 修改机票地接社支出金额
        /// </summary>
        /// <param name="TravelId">团队编号</param>
        /// <returns></returns>
        public bool UpdateSettle(PaymentList Model)
        {
            if (string.IsNullOrEmpty(Model.Id) || Model.Id == "0")
            {
                return(false);
            }
            if (Model.SupplierType != EyouSoft.Model.EnumType.CompanyStructure.SupplierType.地接 && Model.SupplierType != EyouSoft.Model.EnumType.CompanyStructure.SupplierType.票务)
            {
                return(false);
            }

            string sql = "";

            if (Model.SupplierType == EyouSoft.Model.EnumType.CompanyStructure.SupplierType.地接)
            {
                sql = " update tbl_PlanLocalAgency set AddAmount=@AddAmount ,ReduceAmount=@ReduceAmount,FRemark=@FRemark,TotalAmount=@TotalAmount where id=@id";
            }

            if (Model.SupplierType == EyouSoft.Model.EnumType.CompanyStructure.SupplierType.票务)
            {
                sql = " update tbl_PlanTicketOut set AddAmount=@AddAmount ,ReduceAmount=@ReduceAmount,FRemark=@FRemark,TotalAmount=@TotalAmount where id=@id";
            }

            DbCommand cmd = this._db.GetSqlStringCommand(sql);

            this._db.AddInParameter(cmd, "AddAmount", DbType.Decimal, Model.AddAmount);
            this._db.AddInParameter(cmd, "ReduceAmount", DbType.Decimal, Model.ReduceAmount);
            this._db.AddInParameter(cmd, "FRemark", DbType.String, Model.FRemark);
            this._db.AddInParameter(cmd, "TotalAmount", DbType.Decimal, Model.TotalAmount);
            this._db.AddInParameter(cmd, "id", DbType.StringFixedLength, Model.Id);
            return(DbHelper.ExecuteSql(cmd, this._db) > 0 ? true : false);
        }
예제 #11
0
        public PaymentListPage(int accountId)
        {
            InitializeComponent();
            BindingContext = ViewModelLocator.PaymentListVm;

            ViewModel.AccountId = accountId;

            PaymentList.On <Android>().SetIsFastScrollEnabled(true);

            if (Device.RuntimePlatform == Device.iOS)
            {
                var addItem = new ToolbarItem
                {
                    Text     = Strings.AddTitle,
                    Priority = 0,
                    Order    = ToolbarItemOrder.Primary
                };
                addItem.Clicked += AddItem_Clicked;

                ToolbarItems.Add(addItem);
            }

            var filterItem = new ToolbarItem
            {
                Command  = new Command(OpenDialog),
                Text     = Strings.FilterLabel,
                Priority = 1,
                Order    = ToolbarItemOrder.Primary
            };

            ToolbarItems.Add(filterItem);

            ViewModel.InitializeCommand.ExecuteAsync().FireAndForgetSafeAsync();
        }
예제 #12
0
        public PaymentListPage(int accountId)
        {
            InitializeComponent();
            BindingContext = ViewModelLocator.PaymentListVm;

            ViewModel.AccountId = accountId;

            PaymentList.ItemTapped += (sender, args) =>
            {
                PaymentList.SelectedItem = null;
                ViewModel.EditPaymentCommand.Execute(args.Item);
            };

            PaymentList.On <Android>().SetIsFastScrollEnabled(true);

            var filterItem = new ToolbarItem
            {
                Command  = new Command(OpenDialog),
                Text     = Strings.FilterLabel,
                Priority = 0,
                Order    = ToolbarItemOrder.Primary
            };

            ToolbarItems.Add(filterItem);
        }
예제 #13
0
        //get all data in mst_Concern table using USP_MST_SELECTCONCERN-SP
        /// <summary>
        /// To Get Mode Of Payment
        /// </summary>
        /// <param name="TypeOfPayment"></param>
        /// <returns></returns>
        public PaymentList GetModeOfPayment(string TypeOfPayment)
        {
            OracleConnection cnn = new OracleConnection(con);
            OracleCommand    cmd;

            string proc = "USP_MST_GET_MODEOFPAYMENT";

            cmd             = new OracleCommand(proc, cnn);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("TypeOfPayment_", TypeOfPayment);
            cmd.Parameters.Add("Sp_recordset", Oracle.DataAccess.Client.OracleDbType.RefCursor).Direction = ParameterDirection.Output;

            cmd.Connection.Open();
            OracleDataReader dr           = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            PaymentBO        objPaymentBO = null;
            PaymentList      oPaymentList = new PaymentList();

            while (dr.Read())
            {
                objPaymentBO = new PaymentBO();

                objPaymentBO = MapData(dr);

                oPaymentList.Add(objPaymentBO);
            }

            dr.Close();

            return(oPaymentList);
        }
예제 #14
0
        protected void ViewPayment()
        {
            SqlConnection conn = new SqlConnection
                                     ("Server=DESKTOP-41H50KG\\SQLEXPRESS; Database=clubone; Uid=20201113; password=123456");

            conn.Open();

            SqlCommand cmd = new
                             SqlCommand("select pID as pID, amount as amount from Payment where Payment.userID = @UID", conn);

            cmd.Parameters.Add("@UID", System.Data.SqlDbType.Int, 100).Value = Session["user_id"];
            SqlDataAdapter adapter    = new SqlDataAdapter(cmd);
            DataTable      dt_payment = new DataTable();

            adapter.Fill(dt_payment);
            PaymentList.DataSource = dt_payment;
            PaymentList.DataBind();

            for (int i = 0; i < PaymentList.Rows.Count; ++i)
            {
                LinkButton btn = (LinkButton)PaymentList.Rows[i].FindControl("details");
                int        pID = Convert.ToInt32(PaymentList.Rows[i].Cells[0].Text);

                btn.PostBackUrl = "Receipt.aspx?id=" + pID;
            }
        }
예제 #15
0
        protected void NewApunteBancario(NotifyEntity item)
        {
            if (item.ETipoNotificacion != ETipoNotificacion.PagoTarjetaVencido)
            {
                if (((PaymentList)item.List).Count > 0)
                {
                    //PgMng.ShowInfoException("Seleccione un extracto pendiente de la tarjeta");

                    PaymentInfo    pg      = ((PaymentList)item.List)[0];
                    CreditCardInfo tarjeta = CreditCardInfo.Get(pg.OidTarjetaCredito, false);
                    PaymentInfo    pago    = PaymentInfo.GetByVencimientoTarjeta(tarjeta, pg.Vencimiento, false);

                    PagoFraccionadoTarjetaEditForm form = new PagoFraccionadoTarjetaEditForm(pago.Oid, ETipoPago.FraccionadoTarjeta, this);
                    form.ShowDialog();
                }
                return;
            }

            PaymentList list = (PaymentList)item.List;

            if (list.Count == 0)
            {
                PgMng.ShowInfoException("No existen extractos pendientes para esta tarjeta");
                return;
            }

            Library.Invoice.ModuleController.CreateApuntesBancarios(list);

            RefreshAction();
        }
예제 #16
0
        public override void DeleteObject(long oid)
        {
            LoanInfo    prestamo = LoanInfo.Get(ActiveOID, false);
            PaymentList pagos    = PaymentList.GetListByPrestamo(prestamo, false);

            PaymentInfo p = pagos.FirstOrDefault(x => x.EEstado != moleQule.Base.EEstado.Anulado);

            if (pagos != null && (pagos.FirstOrDefault(x => x.EEstado != moleQule.Base.EEstado.Anulado) != default(PaymentInfo)))
            {
                PgMng.ShowErrorException(Resources.Messages.PRESTAMO_CON_PAGOS_ASOCIADOS);
                _action_result = DialogResult.Cancel;
            }
            else
            {
                if (prestamo.OidPago != 0)
                {
                    PgMng.ShowErrorException(Resources.Messages.PRESTAMO_ASOCIADO_PAGO_FACTURA);
                    _action_result = DialogResult.Cancel;
                }
                else
                {
                    Loan.Delete(oid);
                    _action_result = DialogResult.OK;
                }
            }
        }
예제 #17
0
        public ProcessPaymentResponse ProcessPayment(ProcessPaymentRequest request)
        {
            var toReturn = new ProcessPaymentResponse
            {
                Success = true
            };

            try
            {
                var newItem = new PaymentList
                {
                    CreditCardNumber = request.CreditCardNumber,
                    CardHolder       = request.CardHolder,
                    ExpirationDate   = request.ExpirationDate,
                    Amount           = request.Amount,
                    SecurityCode     = request.SecurityCode,
                    PaymentAgent     = "Premium"
                };

                _unitOfWork.ExpensivePaymentGateway.AddExpensivePayment(newItem);
                _unitOfWork.Commit();
            }
            catch (Exception cex)
            {
                toReturn.Success = false;
                toReturn.Errors  = new List <string>
                {
                    cex.Message
                };

                toReturn.Message = cex.StackTrace;
            }

            return(toReturn);
        }
예제 #18
0
        public void PaymentListNotIsNull()
        {
            PaymentList list = null;

            list = PaymentList.GetList(2015, false);
            Assert.IsNotNull(list);
            Assert.AreEqual(list.Count, 0);
        }
예제 #19
0
 // addPayment METHOD
 public bool addPayment(Payment p)  // It calls verify() method first, and if verify is successful it adds the payment to the bill payments.
 {
     if (p.verify() == true)
     {
         PaymentList.Add(p);
         return(true);
     }
     return(false);
 }
예제 #20
0
        public void PaymentListHasItemsOnlyFromAEmployee()
        {
            PaymentList     list       = null;
            QueryConditions conditions = new QueryConditions {
                Acreedor = ProviderBaseInfo.New(1, ETipoAcreedor.Empleado)
            };

            list = PaymentList.GetList(conditions, false);
            Assert.IsNull(list.FirstOrDefault(x => x.OidAgente != conditions.Acreedor.Oid || x.ETipoAcreedor != ETipoAcreedor.Empleado));
        }
예제 #21
0
        public void LoadTest()
        {
            PaymentList payments = new PaymentList();

            payments.Load();
            int expected = 4;
            int actual   = payments.Count;

            Assert.AreEqual(expected, actual);
        }
        public static PaymentListViewModel Get(PaymentList sourceList)
        {
            PaymentListViewModel list = new PaymentListViewModel();

            foreach (PagoInfo item in sourceList)
            {
                list.Add(PaymentViewModel.New(item));
            }

            return(list);
        }
예제 #23
0
        public void DeleteTest()
        {
            PaymentList payments = new PaymentList();

            payments.Load();

            Payment payment = payments.FirstOrDefault(c => c.Description == "Updated Payment");
            int     actual  = payment.Delete();

            Assert.IsTrue(actual > 0);
        }
        public async Task <int> DeletePaymentListAsync(int id)
        {
            var payment = new PaymentList {
                PaymentId = id
            };

            using (var dataService = DataServiceFactory.CreateDataService())
            {
                return(await dataService.DeletePaymentListAsync(payment));
            }
        }
        public async Task <int> DeletePaymentListAsync(PaymentList model)
        {
            var entity = _dataSource.paymentLists.Where(x => x.PaymentListId == model.PaymentListId).FirstOrDefault();

            if (entity != null)
            {
                _dataSource.paymentLists.Remove(entity);
                return(await _dataSource.SaveChangesAsync());
            }
            return(0);
        }
 private void UpdatePaymentListFromModel(PaymentList target, PaymentListModel source)
 {
     target.DateOfPayment = source.DateOfPayment.UtcDateTime;
     target.BankAccountId = source.BankAccountId;
     target.CashAccountId = source.CashAccountId;
     target.ChequeNo      = source.ChequeNo;
     target.Narration     = source.Narration;
     target.PaymentId     = source.PaymentId;
     target.PaymentTypeId = source.PaymentTypeId;
     target.Amount        = Convert.ToDecimal(string.IsNullOrEmpty(source.Amount) ? "0" : source.Amount);
     target.PDC           = source.PDC;
 }
예제 #27
0
        protected override void OnAppearing()
        {
            Title = ViewModel.Title;

            base.OnAppearing();

            var group = ViewModel.DailyList.FirstOrDefault(x => x.Any(y => y.IsCleared));

            if (group != null)
            {
                PaymentList.ScrollTo(group[0], group, ScrollToPosition.MakeVisible, false);
            }
        }
        public override void PrintList()
        {
            PgMng.Reset(3, 1, Face.Resources.Messages.LOADING_DATA, this);
            PaymentReportMng reportMng = new PaymentReportMng(AppContext.ActiveSchema, this.Text, FilterValues);

            reportMng.ShowQRCode = false;

            PgMng.Grow(Face.Resources.Messages.BUILDING_REPORT);
            PaymentListRpt report = reportMng.GetListReport(PaymentList.GetList((IList <PaymentInfo>)Datos.List), null);

            PgMng.FillUp();

            ShowReport(report);
        }
예제 #29
0
        public void UpdateTest()
        {
            PaymentList payments = new PaymentList();

            payments.Load();

            Payment payment = payments.FirstOrDefault(c => c.Description == "New Payment");

            payment.Description = "Updated Payment";
            payment.Update();

            payment.LoadById();

            Assert.AreEqual(payment.Description, "Updated Payment");
        }
 internal static PaymentList getPaymentsList(HttpResponseMessage responce)
 {
     var paymentList = new PaymentList();
     var jsonObj = JsonConvert.DeserializeObject<Dictionary<string, object>>(responce.Content.ReadAsStringAsync().Result);
     if (jsonObj.ContainsKey("payments"))
     {
         var paymentsArray = JsonConvert.DeserializeObject<List<object>>(jsonObj["payments"].ToString());
         foreach(var paymentObj in paymentsArray)
         {
             var payment = new Payment();
             payment = JsonConvert.DeserializeObject<Payment>(paymentObj.ToString());
             paymentList.Add(payment);
         }
     }
     return paymentList;
 }
        public void CreditCardStatementListLoadPayments()
        {
            CreditCardStatementList list = null;

            list = CreditCardStatementList.GetList(2014, false);

            Assert.IsTrue(list.Count > 0);

            PaymentList payments = PaymentList.GetByCreditCardStatement(list[0].Oid, false);

            Assert.IsTrue(payments.Count > 0);
            Assert.IsNull(payments.FirstOrDefault(x => x.OidLink != list[0].Oid));
            Assert.IsNull(payments.FirstOrDefault(x => x.OidTarjetaCredito != list[0].OidCreditCard));
            Assert.IsNull(payments.FirstOrDefault(x => x.Vencimiento < list[0].From));
            Assert.IsNull(payments.FirstOrDefault(x => x.Vencimiento > list[0].DueDate));
        }
 public async Task<PaymentList.response> PaymentList(PaymentList.request request, CancellationToken? token = null)
 {
     return await SendAsync<PaymentList.response>(request.ToXmlString(), token.GetValueOrDefault(CancellationToken.None));
 }