Exemplo n.º 1
0
        public UserInfoDTO ReadUserById(int id)
        {
            var         db     = new CrowdFundingVivaTeam1Entities();
            UserInfoDTO result = new UserInfoDTO();
            UserInfo    s      = db.UserInfo.Find(id);

            result = new UserInfoDTO
            {
                Id = s.Id,
                //Password = s.password,
                //Firstname = s.firstname,
                //Lastname = s.lastname,
                //Username = s.username,
                //Email_Primary = s.email_primary,
                //Email_Secondary = s.email_secondary,
                //Telephone = s.telephone,
                //Mobile = s.mobile,
                //About = s.about,
                //Date_Of_Birth = s.date_of_birth,
                //Points = s.points,
                //Is_Active = s.is_active,
                //Registration_Date = s.registration_date,
                //Deletion_Date = s.deletion_date,
                //Blocked_Date = s.blocked_date,
                //Is_Admin = s.is_admin
            };

            return(result);
        }
Exemplo n.º 2
0
        public async Task <TransactionResult> SaveUserTransaction(AspNetUsersDTO userInfoDTO, string email)
        {
            try
            {
                using (var db = new CrowdFundingVivaTeam1Entities())
                {
                    var s = await(from us in db.AspNetUsers
                                  where us.Email == email
                                  select us).FirstOrDefaultAsync();

                    s.FirstName   = userInfoDTO.FirstName;
                    s.LastName    = userInfoDTO.LastName;
                    s.PhoneNumber = userInfoDTO.PhoneNumber;

                    await db.SaveChangesAsync();

                    return(new TransactionResult(TransResult.Success, "Success", null));
                }
            }
            catch (Exception ex) { return(new TransactionResult(TransResult.Fail, ex.Message, ex)); }
        }
        public async Task <TransactionResult> ReadPageCount(string keyword)
        {
            try
            {
                var db = new CrowdFundingVivaTeam1Entities();
                int result;
                //var transaction = await ReadProjects(new TransactionCriteria { Search = keyword });
                if (keyword != null)
                {
                    result = await db.Project.Where(s => (s.Title.Contains(keyword) || s.ShortDescription.Contains(keyword)) && s.IsActive == true).CountAsync();
                }
                else
                {
                    result = await db.Project.Where(s => s.IsActive == true).CountAsync();
                }

                //return new TransactionResult(TransResult.Success, string.Empty, ((List<ProjectDTO>)transaction.ReturnObject).Count());

                return(new TransactionResult(TransResult.Success, string.Empty, result));
            }
            catch (Exception ex) { return(new TransactionResult(TransResult.Fail, ex.Message, ex)); }
        }
Exemplo n.º 4
0
        public HttpResponseMessage Pay(string ourToken, int amountPledged, int projectId, string userId)
        {
            var context = new CrowdFundingVivaTeam1Entities();

            using (var dbTran = context.Database.BeginTransaction())
            {
                try
                {
                    var payment = new Payment();
                    payment.Amount        = amountPledged;
                    payment.PaymentDate   = DateTime.Now;
                    payment.ProjectFK     = projectId;
                    payment.AspNetUsers   = context.AspNetUsers.Find(userId);
                    payment.PaymentMethod = "";

                    context.Payment.Add(payment);

                    var project = context.Project.Find(projectId);
                    project.Gathered    = project.Gathered == null ? (decimal)amountPledged : project.Gathered + (decimal)amountPledged;
                    project.BackerCount = project.BackerCount == null ? 1 : project.BackerCount + 1;

                    context.SaveChanges();

                    var _orderCode = CreateOrder(amountPledged); //CALL TO CREATE AN ORDER. IF AN ORDER CODE ALREADY EXISTS FROM A PREVIOUS STEP, USE THAT ONE INSTEAD

                    var cl = new RestClient(_BaseApiUrl);
                    cl.Authenticator = new HttpBasicAuthenticator(
                        _MerchantId.ToString(),
                        _ApiKey);

                    var req = new RestRequest(_PaymentsUrl, Method.POST);
                    req.RequestFormat = DataFormat.Json;
                    req.AddBody(new
                    {
                        OrderCode  = _orderCode,
                        SourceCode = "Default",         //MAKE SURE THIS IS A SOURCE OF TYPE SIMPLE/NATIVE
                        CreditCard = new
                        {
                            Token = ourToken//.Value.ToString()
                        }
                    });


                    var res = cl.Execute <TransactionResult>(req);
                    if (res.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        if (res.Data.ErrorCode == 0 && res.Data.StatusId == "F")
                        {
                            //Response.Write(string.Format(
                            //    "Transaction was successful. TransactionId is {0}",
                            //    res.Data.TransactionId));
                            //payment.tra
                            //save
                            payment.TransactionId = res.Data.TransactionId.ToString();
                            context.SaveChanges();
                            dbTran.Commit();
                            return(Request.CreateResponse(HttpStatusCode.OK, string.Format("Transaction was successful. TransactionId is {0}", res.Data.TransactionId)));
                        }
                        else
                        {
                            //Response.Write(string.Format(
                            //    "Transaction failed. Error code was {0}",
                            //    res.Data.ErrorCode));
                            dbTran.Rollback();
                            return(Request.CreateResponse(HttpStatusCode.InternalServerError, string.Format("Transaction failed. Error code was {0}", res.Data.ErrorCode)));
                        }
                    }
                    else
                    {
                        //Response.Write(string.Format(
                        //    "Transaction failed. Error code was {0}",
                        //    res.StatusCode));
                        dbTran.Rollback();
                        return(Request.CreateResponse(HttpStatusCode.InternalServerError, string.Format("Transaction failed. Error code was {0}", res.StatusCode)));
                    }
                }
                catch (Exception)
                {
                    dbTran.Rollback();
                    throw;
                }
            }
        }
Exemplo n.º 5
0
 public CrowdFundingTransactions()
 {
     context = new CrowdFundingVivaTeam1Entities();
 }