/// <summary>
        /// This function is responsible for populating the
        /// parameters required for generating a invoice.
        /// </summary>
        /// <param name="invoicedto"></param>
        /// <param name="timeActivity"></param>
        /// <returns></returns>
        private Invoice PopulateInvoiceParam(Invoicedto invoicedto, TimeActivity timeActivity)
        {
            Invoice invoice = new Invoice();

            invoice.TxnDate = timeActivity.TxnDate;
            invoice.Line = new Line[]
            {
                new Line{AmountSpecified=true,Description=timeActivity.Description,Amount=25,DetailType=LineDetailTypeEnum.SalesItemLineDetail,DetailTypeSpecified=true,AnyIntuitObject = new SalesItemLineDetail{Qty=Convert.ToDecimal(3.5),TaxCodeRef=new ReferenceType{Value="NON"},ItemRef=new ReferenceType{Value=timeActivity.ItemRef.Value}}},
                new Line{Amount=25,AmountSpecified=true,DetailType=LineDetailTypeEnum.SubTotalLineDetail,DetailTypeSpecified=true,AnyIntuitObject = new SubTotalLineDetail{}}
            };
            invoice.TxnTaxDetail = new TxnTaxDetail { TotalTax = 0 };
            invoice.CustomerRef = new ReferenceType { Value = timeActivity.CustomerRef.Value };
            invoice.DueDate = DateTime.Now;
            invoice.TotalAmt = 25;
            invoice.ApplyTaxAfterDiscount = false;
            invoice.PrintStatus = PrintStatusEnum.NeedToPrint;
            invoice.PrintStatusSpecified = true;
            invoice.EmailStatus = EmailStatusEnum.NotSet;
            invoice.EmailStatusSpecified = true;
            invoice.Balance = 25;
            invoice.BalanceSpecified = true;
            invoice.Deposit = 0;
            invoice.DepositSpecified = true;
            invoice.AllowIPNPayment = false;
            invoice.AllowIPNPaymentSpecified = true;
            invoice.AllowOnlinePayment = false;
            invoice.AllowOnlinePaymentSpecified = true;
            invoice.AllowOnlineCreditCardPayment = false;
            invoice.AllowOnlineCreditCardPaymentSpecified = true;
            invoice.AllowOnlineACHPayment = false;
            invoice.AllowOnlineACHPaymentSpecified = true;
            return invoice;
        }
Ejemplo n.º 2
0
 public void TimeActivityAddTestUsingoAuth(ServiceContext qboContextoAuth)
 {
     //Creating the TimeActivity for Add
     TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
     //Adding the TimeActivity
     TimeActivity added = Helper.Add <TimeActivity>(qboContextoAuth, timeActivity);
 }
Ejemplo n.º 3
0
        public void TimeActivityAddAsyncTestsUsingoAuth(ServiceContext qboContextoAuth)
        {
            //Creating the TimeActivity for Add
            TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);

            TimeActivity added = Helper.AddAsync <TimeActivity>(qboContextoAuth, entity);
        }
Ejemplo n.º 4
0
        public void SetNoActivityMilliseconds(int millisecondsSinceActivity)
        {
            TimeActivity = TimeSpan.FromMilliseconds(millisecondsSinceActivity);
            TimeActivity = TimeActivity.Subtract(TimeSpan.FromMilliseconds(TimeActivity.Milliseconds));
            TimeActivity = TimeActivity.Subtract(TimeSpan.FromSeconds(TimeActivity.Seconds));

            if (TimeActivity.TotalMinutes > 0)
            {
                var minutesPlural = TimeActivity.TotalMinutes > 1 ? "s" : "";
                var newMessage    = $"No Timer Running For {TimeActivity.TotalMinutes} Minute{minutesPlural}";

                if (newMessage != InactiveMinutes)
                {
                    InactiveMinutes = newMessage;
                    PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(InactiveMinutes)));
                    PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(HasInactiveTime)));

                    // ReSharper disable once CompareOfFloatsByEqualityOperator
                    if (TimeActivity.TotalMinutes % TimeSpan.FromMilliseconds(ModelHelpers.Gallifrey.Settings.AppSettings.AlertTimeMilliseconds).TotalMinutes == 0)
                    {
                        ModelHelpers.ShowNotification(InactiveMinutes);
                    }
                }
            }
            else
            {
                InactiveMinutes = string.Empty;
                PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(InactiveMinutes)));
                PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(HasInactiveTime)));
            }
        }
Ejemplo n.º 5
0
 public void TimeActivityFindbyIdTestUsingoAuth(ServiceContext qboContextoAuth)
 {
     //Creating the TimeActivity for Adding
     TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
     //Adding the TimeActivity
     TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());
     TimeActivity found = Helper.FindById <TimeActivity>(qboContextoAuth, added);
 }
Ejemplo n.º 6
0
        /// <summary>
        /// Return the customer id from timeactivity.
        /// </summary>
        /// <param name="invoicedto"></param>
        /// <returns></returns>
        private TimeActivity GetCustomerId(Invoicedto invoicedto)
        {
            string EXISTING_TimeActive_QUERY         = string.Format("select * from timeactivity where Id = '{0}'", invoicedto.timeQboId);
            QueryService <TimeActivity> queryService = new QueryService <TimeActivity>(dataserviceFactory.getServiceContext);
            TimeActivity resultFound = queryService.ExecuteIdsQuery(EXISTING_TimeActive_QUERY).FirstOrDefault <TimeActivity>();

            return(resultFound);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Push the time activity to QBO
        /// </summary>
        /// <param name="timeActivitydto"></param>
        /// <returns></returns>
        internal TimeActivitydto Save(TimeActivitydto timeActivitydto)
        {
            try
            {
                TimeActivity timeActivity = new TimeActivity();
                timeActivity.TxnDate = timeActivitydto.Date;
                SelectListItem selectedCustom = GetSelectedItem(timeActivitydto.Customer, timeActivitydto.CustomerSelected);
                timeActivity.CustomerRef = new ReferenceType
                {
                    Value = selectedCustom.Value,
                };
                SelectListItem selectedItem = GetSelectedItem(timeActivitydto.Item, timeActivitydto.ItemSelected);
                timeActivity.ItemRef = new ReferenceType()
                {
                    Value = selectedItem.Value
                };
                SelectListItem selectedEmp = GetSelectedItem(timeActivitydto.Employee, timeActivitydto.EmployeeSelected);
                timeActivity.NameOf          = TimeActivityTypeEnum.Employee;
                timeActivity.NameOfSpecified = true;
                timeActivity.AnyIntuitObject = new ReferenceType()
                {
                    Value = selectedEmp.Value
                };
                timeActivity.ItemElementName = ItemChoiceType5.EmployeeRef;

                timeActivity.BillableStatus          = BillableStatusEnum.NotBillable;
                timeActivity.BillableStatusSpecified = true;
                timeActivity.Taxable          = false;
                timeActivity.TaxableSpecified = true;
                //Time
                timeActivity.HourlyRate          = new Decimal(0.00);
                timeActivity.HourlyRateSpecified = true;
                timeActivity.Hours = 10;

                timeActivity.HoursSpecified   = true;
                timeActivity.Minutes          = 0;
                timeActivity.Description      = timeActivitydto.Description;
                timeActivity.MinutesSpecified = true;
                timeActivity                 = dataService.Add <TimeActivity>(timeActivity);
                timeActivitydto.QboId        = timeActivity.Id;
                timeActivitydto.Hours        = timeActivity.Hours;
                timeActivitydto.TxnDate      = timeActivity.TxnDate;
                timeActivitydto.AlertMessage = string.Format("Time Activity successfully created and pushed to QBO (QBO ID = {0})", timeActivity.Id);
                return(timeActivitydto);
            }
            catch (Intuit.Ipp.Exception.FaultException ex)
            {
                throw ex;
            }
            catch (Intuit.Ipp.Exception.InvalidTokenException ex)
            {
                throw ex;
            }
            catch (Intuit.Ipp.Exception.SdkException ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 8
0
        public void TimeActivityAddAsyncTestsUsingoAuth()
        {
            //Creating the TimeActivity for Add
            TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);

            TimeActivity added = Helper.AddAsync <TimeActivity>(qboContextoAuth, entity);

            QBOHelper.VerifyTimeActivity(entity, added);
        }
Ejemplo n.º 9
0
        public void TimeActivityQueryUsingoAuth()
        {
            QueryService <TimeActivity> entityQuery = new QueryService <TimeActivity>(qboContextoAuth);
            TimeActivity existing = Helper.FindOrAdd <TimeActivity>(qboContextoAuth, new TimeActivity());
            //List<TimeActivity> entities = entityQuery.Where(c => c.Id == existing.Id).ToList();
            List <TimeActivity> entities = entityQuery.ExecuteIdsQuery("SELECT * FROM TimeActivity where Id='" + existing.Id + "'").ToList <TimeActivity>();

            Assert.IsTrue(entities.Count() > 0);
        }
Ejemplo n.º 10
0
        public void TimeActivityAddTestUsingoAuth()
        {
            //Creating the TimeActivity for Add
            TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            TimeActivity added = Helper.Add <TimeActivity>(qboContextoAuth, timeActivity);

            //Verify the added TimeActivity
            QBOHelper.VerifyTimeActivity(timeActivity, added);
        }
Ejemplo n.º 11
0
        public void TimeActivityDeleteAsyncTestsUsingoAuth(ServiceContext qboContextoAuth)
        {
            //Creating the TimeActivity for Adding
            //TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, entity);

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            Helper.DeleteAsync <TimeActivity>(qboContextoAuth, added);
        }
Ejemplo n.º 12
0
        public void TimeActivityFindByIdAsyncTestsUsingoAuth()
        {
            //Creating the TimeActivity for Adding
            //TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, entity);

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //FindById and verify
            Helper.FindByIdAsync <TimeActivity>(qboContextoAuth, added);
        }
Ejemplo n.º 13
0
        public void TimeActivitySparseUpdatedAsyncTestsUsingoAuth(ServiceContext qboContextoAuth)
        {
            //Creating the TimeActivity for Adding
            //TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, entity);

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());
            //Update the TimeActivity
            TimeActivity updated = QBOHelper.UpdateTimeActivitySparse(qboContextoAuth, added.Id, added.SyncToken);
            //Call the service
            TimeActivity updatedReturned = Helper.UpdateAsync <TimeActivity>(qboContextoAuth, updated);
        }
Ejemplo n.º 14
0
        public void TimeActivityVoidTestUsingoAuth()
        {
            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //Delete the returned entity
            try
            {
                TimeActivity voided = Helper.Void <TimeActivity>(qboContextoAuth, added);
                Assert.AreEqual(EntityStatusEnum.Voided, voided.status);
            }
            catch (IdsException ex)
            {
                Assert.Fail();
            }
        }
Ejemplo n.º 15
0
        public void TimeActivitySparseUpdateTestUsingoAuth(ServiceContext qboContextoAuth)
        {
            /*
             * //Creating the TimeActivity for Adding
             * TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
             * //Adding the TimeActivity
             * TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, timeActivity);
             */

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());
            //Change the data of added entity
            TimeActivity changed = QBOHelper.UpdateTimeActivitySparse(qboContextoAuth, added.Id, added.SyncToken);
            //Update the returned entity data
            TimeActivity updated = Helper.Update <TimeActivity>(qboContextoAuth, changed);//Verify the updated TimeActivity
        }
Ejemplo n.º 16
0
        /// <summary>
        /// This function is responsible for populating the
        /// parameters required for generating a invoice.
        /// </summary>
        /// <param name="invoicedto"></param>
        /// <param name="timeActivity"></param>
        /// <returns></returns>
        private Invoice PopulateInvoiceParam(Invoicedto invoicedto, TimeActivity timeActivity)
        {
            Invoice invoice = new Invoice();

            invoice.TxnDate = timeActivity.TxnDate;
            invoice.Line    = new Line[]
            {
                new Line {
                    AmountSpecified = true, Description = timeActivity.Description, Amount = 25, DetailType = LineDetailTypeEnum.SalesItemLineDetail, DetailTypeSpecified = true, AnyIntuitObject = new SalesItemLineDetail {
                        Qty = Convert.ToDecimal(3.5), TaxCodeRef = new ReferenceType {
                            Value = "NON"
                        }, ItemRef = new ReferenceType {
                            Value = timeActivity.ItemRef.Value
                        }
                    }
                },
                new Line {
                    Amount = 25, AmountSpecified = true, DetailType = LineDetailTypeEnum.SubTotalLineDetail, DetailTypeSpecified = true, AnyIntuitObject = new SubTotalLineDetail {
                    }
                }
            };
            invoice.TxnTaxDetail = new TxnTaxDetail {
                TotalTax = 0
            };
            invoice.CustomerRef = new ReferenceType {
                Value = timeActivity.CustomerRef.Value
            };
            invoice.DueDate  = DateTime.Now;
            invoice.TotalAmt = 25;
            invoice.ApplyTaxAfterDiscount = false;
            invoice.PrintStatus           = PrintStatusEnum.NeedToPrint;
            invoice.PrintStatusSpecified  = true;
            invoice.EmailStatus           = EmailStatusEnum.NotSet;
            invoice.EmailStatusSpecified  = true;
            invoice.Balance                               = 25;
            invoice.BalanceSpecified                      = true;
            invoice.Deposit                               = 0;
            invoice.DepositSpecified                      = true;
            invoice.AllowIPNPayment                       = false;
            invoice.AllowIPNPaymentSpecified              = true;
            invoice.AllowOnlinePayment                    = false;
            invoice.AllowOnlinePaymentSpecified           = true;
            invoice.AllowOnlineCreditCardPayment          = false;
            invoice.AllowOnlineCreditCardPaymentSpecified = true;
            invoice.AllowOnlineACHPayment                 = false;
            invoice.AllowOnlineACHPaymentSpecified        = true;
            return(invoice);
        }
Ejemplo n.º 17
0
        public void TimeActivityBatchUsingoAuth(ServiceContext qboContextoAuth)
        {
            Dictionary <OperationEnum, object> batchEntries = new Dictionary <OperationEnum, object>();

            TimeActivity existing = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //  batchEntries.Add(OperationEnum.create, QBOHelper.CreateTimeActivity(qboContextoAuth));

            batchEntries.Add(OperationEnum.update, QBOHelper.UpdateTimeActivity(qboContextoAuth, existing));

            batchEntries.Add(OperationEnum.query, "select * from TimeActivity");

            batchEntries.Add(OperationEnum.delete, existing);

            ReadOnlyCollection <IntuitBatchResponse> batchResponses = Helper.Batch <TimeActivity>(qboContextoAuth, batchEntries);
        }
Ejemplo n.º 18
0
        public void TimeActivityUpdatedAsyncTestsUsingoAuth()
        {
            //Creating the TimeActivity for Adding
            //TimeActivity entity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, entity);

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());
            //Update the TimeActivity
            TimeActivity updated = QBOHelper.UpdateTimeActivity(qboContextoAuth, added);
            //Call the service
            TimeActivity updatedReturned = Helper.UpdateAsync <TimeActivity>(qboContextoAuth, updated);

            //Verify updated TimeActivity
            QBOHelper.VerifyTimeActivity(updated, updatedReturned);
        }
Ejemplo n.º 19
0
 /// <summary>
 /// this function generate invoice by receiving customer id
 /// create instance of invoice object
 /// push to QBO
 /// </summary>
 /// <param name="invoicedto"></param>
 /// <returns></returns>
 internal Invoicedto GenerateInvoice(Invoicedto invoicedto)
 {
     try
     {
         TimeActivity timeActivity = GetCustomerId(invoicedto);
         Invoice      invoice      = PopulateInvoiceParam(invoicedto, timeActivity);
         invoice                 = dataService.Add <Invoice>(invoice);
         invoicedto.Invoice      = invoice;
         invoicedto.InvoiceQboId = Convert.ToInt64(invoice.Id);
         invoicedto.AlertMessage = string.Format("Invoice successfully created and pushed to QBO (QBO ID = {0})", invoice.Id);
         return(invoicedto);
     }
     catch (Intuit.Ipp.Exception.FaultException ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 20
0
        public void TimeActivityDeleteTestUsingoAuth(ServiceContext qboContextoAuth)
        {
            //Creating the TimeActivity for Adding
            //TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, timeActivity);
            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //Delete the returned entity
            try
            {
                TimeActivity deleted = Helper.Delete <TimeActivity>(qboContextoAuth, added);
            }
            catch (IdsException ex)
            {
            }
        }
Ejemplo n.º 21
0
        public void TimeActivityUpdateTestUsingoAuth()
        {
            /*
             * //Creating the TimeActivity for Adding
             * TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
             * //Adding the TimeActivity
             * TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, timeActivity);
             */

            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());
            //Change the data of added entity
            TimeActivity changed = QBOHelper.UpdateTimeActivity(qboContextoAuth, added);
            //Update the returned entity data
            TimeActivity updated = Helper.Update <TimeActivity>(qboContextoAuth, changed);//Verify the updated TimeActivity

            QBOHelper.VerifyTimeActivity(changed, updated);
        }
Ejemplo n.º 22
0
        public ActionResult AddTimeActivity()
        {
            var customer = _quickBooksAdapter.FindAll <Customer>().First();
            var vendor   = _quickBooksAdapter.FindAll <Vendor>().First();
            var item     = _quickBooksAdapter.FindAll <Item>().First();

            var timeActivity = new TimeActivity
            {
                CustomerRef = new ReferenceType
                {
                    Value = customer.Id,
                    name  = customer.DisplayName
                },
                ItemRef = new ReferenceType
                {
                    Value = item.Id,
                    name  = item.Name
                },
                AnyIntuitObject = new ReferenceType
                {
                    Value = vendor.Id,
                    name  = vendor.DisplayName
                },
                ItemElementName         = ItemChoiceType5.VendorRef,
                NameOf                  = TimeActivityTypeEnum.Vendor,
                NameOfSpecified         = true,
                TxnDate                 = DateTime.UtcNow.Date,
                TxnDateSpecified        = true,
                BillableStatus          = BillableStatusEnum.NotBillable,
                BillableStatusSpecified = true,
                Taxable                 = false,
                TaxableSpecified        = true,
                HourlyRate              = 35.0m,
                HourlyRateSpecified     = true,
                Hours            = 8,
                HoursSpecified   = true,
                Minutes          = 0,
                MinutesSpecified = true,

                Description = String.Format("New TimeActivity entity is created from QuickBooks.Net wrapper in {0:u}", DateTime.Now)
            };

            _quickBooksAdapter.Add(timeActivity);

            return(FindAllTimeActivities());
        }
Ejemplo n.º 23
0
        public void TimeActivityDeleteTestUsingoAuth()
        {
            //Creating the TimeActivity for Adding
            //TimeActivity timeActivity = QBOHelper.CreateTimeActivity(qboContextoAuth);
            //Adding the TimeActivity
            //TimeActivity added = Helper.Add<TimeActivity>(qboContextoAuth, timeActivity);
            TimeActivity added = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //Delete the returned entity
            try
            {
                TimeActivity deleted = Helper.Delete <TimeActivity>(qboContextoAuth, added);
                Assert.AreEqual(EntityStatusEnum.Deleted, deleted.status);
            }
            catch (IdsException ex)
            {
                Assert.Fail();
            }
        }
Ejemplo n.º 24
0
        public void TimeActivityBatchUsingoAuth()
        {
            Dictionary <OperationEnum, object> batchEntries = new Dictionary <OperationEnum, object>();

            TimeActivity existing = Helper.FindOrAdd(qboContextoAuth, new TimeActivity());

            //  batchEntries.Add(OperationEnum.create, QBOHelper.CreateTimeActivity(qboContextoAuth));

            batchEntries.Add(OperationEnum.update, QBOHelper.UpdateTimeActivity(qboContextoAuth, existing));

            batchEntries.Add(OperationEnum.query, "select * from TimeActivity");

            batchEntries.Add(OperationEnum.delete, existing);

            ReadOnlyCollection <IntuitBatchResponse> batchResponses = Helper.BatchTest <TimeActivity>(qboContextoAuth, batchEntries);

            int position = 0;

            foreach (IntuitBatchResponse resp in batchResponses)
            {
                if (resp.ResponseType == ResponseType.Exception)
                {
                    Assert.Fail(resp.Exception.ToString());
                }

                if (resp.ResponseType == ResponseType.Entity)
                {
                    Assert.IsFalse(string.IsNullOrEmpty((resp.Entity as TimeActivity).Id));
                }
                else if (resp.ResponseType == ResponseType.Query)
                {
                    Assert.IsTrue(resp.Entities != null && resp.Entities.Count > 0);
                }
                else if (resp.ResponseType == ResponseType.CdcQuery)
                {
                    Assert.IsTrue(resp.CDCResponse != null && resp.CDCResponse.entities != null && resp.CDCResponse.entities.Count > 0);
                }

                position++;
            }
        }
Ejemplo n.º 25
0
        public AnswerResponseBE InsertTimeActivity(TimeActivityBE ITIMAC)
        {
            AnswerResponseBE  AR   = new AnswerResponseBE();
            EmploActiEntities BDEA = new EmploActiEntities();

            try
            {
                int CountTimeActi = 0;
                CountTimeActi = BDEA.TimeActivity.Where(x => x.CodeTimeActivity == ITIMAC.CodeTimeActivity).ToList().Count();
                if (CountTimeActi == 0)
                {
                    TimeActivity TIMACT = new TimeActivity();
                    TIMACT.ActivitiesCode = ITIMAC.ActivitiesCode;
                    TIMACT.DateActivity   = ITIMAC.DateActivity;
                    TIMACT.Hours          = ITIMAC.Hours;
                    TIMACT.IdUser         = ITIMAC.IdUser;

                    BDEA.TimeActivity.Add(TIMACT);
                    BDEA.SaveChanges();

                    AR.CodeError        = 0;
                    AR.DescriptionError = "Se ha insertado el tiempo / actividad correctamente";
                }
                else
                {
                    AR.CodeError        = 2;
                    AR.DescriptionError = "El registro ya existe, por favor verifique la información";
                }
            }
            catch (Exception EX)
            {
                AR.CodeError        = 1;
                AR.DescriptionError = "Hubo un error";
            }
            finally
            {
                BDEA.Dispose();
            }
            return(AR);
        }
Ejemplo n.º 26
0
        public AnswerResponseBE UpdateTimeActivity(TimeActivityBE UPTIMEACT)
        {
            AnswerResponseBE  AR   = new AnswerResponseBE();
            EmploActiEntities BDEA = new EmploActiEntities();

            try
            {
                TimeActivity timeactivity = new TimeActivity();
                timeactivity = BDEA.TimeActivity.Where(x => x.CodeTimeActivity == UPTIMEACT.CodeTimeActivity).FirstOrDefault();
                if (timeactivity != null)
                {
                    timeactivity.ActivitiesCode = UPTIMEACT.ActivitiesCode;
                    timeactivity.DateActivity   = UPTIMEACT.DateActivity;
                    timeactivity.Hours          = UPTIMEACT.Hours;

                    BDEA.SaveChanges();

                    AR.CodeError        = 0;
                    AR.DescriptionError = "Se ha actualizado el tiempo / actividad correctamente";
                }
                else
                {
                    AR.CodeError        = 2;
                    AR.DescriptionError = "El registro no existe, por favor verifique la información";
                }
            }
            catch (Exception EX)
            {
                AR.CodeError        = 1;
                AR.DescriptionError = "Hubo un error";
            }
            finally
            {
                BDEA.Dispose();
            }
            return(AR);
        }
        public ActionResult AddTimeActivity()
        {
            var customer = _quickBooksAdapter.FindAll<Customer>().First();
            var vendor = _quickBooksAdapter.FindAll<Vendor>().First();
            var item = _quickBooksAdapter.FindAll<Item>().First();

            var timeActivity = new TimeActivity
            {
                CustomerRef = new ReferenceType
                {
                    Value = customer.Id,
                    name = customer.DisplayName
                },
                ItemRef = new ReferenceType
                {
                    Value = item.Id,
                    name = item.Name
                },
                AnyIntuitObject = new ReferenceType
                {
                    Value = vendor.Id,
                    name = vendor.DisplayName
                },
                ItemElementName = ItemChoiceType5.VendorRef,
                NameOf = TimeActivityTypeEnum.Vendor,
                NameOfSpecified = true,
                TxnDate = DateTime.UtcNow.Date,
                TxnDateSpecified = true,
                BillableStatus = BillableStatusEnum.NotBillable,
                BillableStatusSpecified = true,
                Taxable = false,
                TaxableSpecified = true,
                HourlyRate = 35.0m,
                HourlyRateSpecified = true,
                Hours = 8,
                HoursSpecified = true,
                Minutes = 0,
                MinutesSpecified = true,

                Description = String.Format("New TimeActivity entity is created from QuickBooks.Net wrapper in {0:u}", DateTime.Now)
            };

            _quickBooksAdapter.Add(timeActivity);

            return FindAllTimeActivities();
        }
        /// <summary>
        /// Push the time activity to QBO
        /// </summary>
        /// <param name="timeActivitydto"></param>
        /// <returns></returns>
        internal TimeActivitydto Save(TimeActivitydto timeActivitydto)
        {
            try
            {
                TimeActivity timeActivity = new TimeActivity();
            timeActivity.TxnDate = timeActivitydto.Date;
            SelectListItem selectedCustom = GetSelectedItem(timeActivitydto.Customer,timeActivitydto.CustomerSelected);
            timeActivity.CustomerRef = new ReferenceType
            {
               
                Value = selectedCustom.Value,
            };
            SelectListItem selectedItem = GetSelectedItem(timeActivitydto.Item, timeActivitydto.ItemSelected);
            timeActivity.ItemRef = new ReferenceType()
            {
               
                Value = selectedItem.Value
            };
            SelectListItem selectedEmp = GetSelectedItem(timeActivitydto.Employee, timeActivitydto.EmployeeSelected);
            timeActivity.NameOf = TimeActivityTypeEnum.Employee;
            timeActivity.NameOfSpecified = true;
            timeActivity.AnyIntuitObject = new ReferenceType()
            {
              
                Value = selectedEmp.Value
            };
            timeActivity.ItemElementName = ItemChoiceType5.EmployeeRef;
           
            timeActivity.BillableStatus = BillableStatusEnum.NotBillable;
            timeActivity.BillableStatusSpecified = true;
            timeActivity.Taxable = false;
            timeActivity.TaxableSpecified = true;
            //Time
            timeActivity.HourlyRate = new Decimal(0.00);
            timeActivity.HourlyRateSpecified = true;
            timeActivity.Hours = 10;

            timeActivity.HoursSpecified = true;
            timeActivity.Minutes = 0;
            timeActivity.Description = timeActivitydto.Description;
            timeActivity.MinutesSpecified = true;
            timeActivity = dataService.Add<TimeActivity>(timeActivity);
            timeActivitydto.QboId = timeActivity.Id;
            timeActivitydto.Hours = timeActivity.Hours;
            timeActivitydto.TxnDate = timeActivity.TxnDate;
            timeActivitydto.AlertMessage = string.Format("Time Activity successfully created and pushed to QBO (QBO ID = {0})", timeActivity.Id);
            return timeActivitydto;
            }
            catch (Intuit.Ipp.Exception.FaultException ex)
            {
                throw ex;
            }
            catch (Intuit.Ipp.Exception.InvalidTokenException ex)
            {
                throw ex;
            }
            catch (Intuit.Ipp.Exception.SdkException ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 29
0
 public void TimeActivityQueryUsingoAuth(ServiceContext qboContextoAuth)
 {
     QueryService <TimeActivity> entityQuery = new QueryService <TimeActivity>(qboContextoAuth);
     TimeActivity existing = Helper.FindOrAdd <TimeActivity>(qboContextoAuth, new TimeActivity());
 }