private ErorrMessage ErrorResponse(int num, string msg)
        {
            var error = new ErorrMessage()
            {
                ResponseCode   = num,
                ResponseStatus = false,
                Message        = msg
            };

            return(error);
        }
        public async Task <IHttpActionResult> SendEmailSms(EmailSmsRequest dataRequest)
        {
            try
            {
                var json = JsonConvert.SerializeObject(dataRequest);
                log(json);

                if (!ModelState.IsValid)
                {
                    var message = string.Join(" | ", ModelState.Values
                                              .SelectMany(v => v.Errors)
                                              .Select(e => e.ErrorMessage));

                    var error = new ErorrMessage()
                    {
                        ResponseCode   = 403,
                        ResponseStatus = false,
                        Message        = message
                    };

                    return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
                }

                var SmsResponse = await util.SendEmailSms(dataRequest);

                if (SmsResponse == null)
                {
                    return(ResponseMessage(Request.CreateResponse(HttpStatusCode.NotFound, ErrorResponse(404, "Unable to send"))));
                }

                return(Ok(SuccessResponse(200, "successful", SmsResponse)));
            }
            catch (Exception ex)
            {
                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.InternalServerError, ErrorResponse(500, ex.Message.ToString()))));
            }
        }
Ejemplo n.º 3
0
        public IHttpActionResult NotificationByUser(TransByEmployerDTO requestParam)
        {
            try
            {
                var json = JsonConvert.SerializeObject(requestParam);
                log(json);

                if (!ModelState.IsValid)
                {
                    var message = string.Join(" | ", ModelState.Values
                                              .SelectMany(v => v.Errors)
                                              .Select(e => e.ErrorMessage));

                    var error = new ErorrMessage()
                    {
                        ResponseCode   = 403,
                        ResponseStatus = false,
                        Message        = message
                    };

                    return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
                }

                var transactionResponse = util.NotificationByEmployer(requestParam);
                if (transactionResponse.Count() == 0)
                {
                    return(ResponseMessage(Request.CreateResponse(HttpStatusCode.NotFound, ErrorResponse(404, "Unable to capture record"))));
                }

                return(Ok(SuccessResponse(200, "successful", transactionResponse)));
            }
            catch (Exception ex)
            {
                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.InternalServerError, ErrorResponse(500, ex.Message.ToString()))));
            }
        }
Ejemplo n.º 4
0
        public async Task <IHttpActionResult> RegisterEmployee(RegisterModel model)
        {
            SexType sex = 0;

            var json = JsonConvert.SerializeObject(model);

            ServiceController.log(json);

            if (!ModelState.IsValid)
            {
                var message = string.Join(" | ", ModelState.Values
                                          .SelectMany(v => v.Errors)
                                          .Select(e => e.ErrorMessage));

                var error = new ErorrMessage()
                {
                    ResponseCode   = 403,
                    ResponseStatus = false,
                    Message        = message
                };

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
            }

            if (model.Sex.Equals("Female"))
            {
                sex = SexType.Female;
            }
            else
            {
                sex = SexType.Male;
            }

            ApplicationUser user = new ApplicationUser();

            user.UserName      = model.Email;
            user.Email         = model.Email;
            user.FirstName     = model.FirstName;
            user.LastName      = model.LastName;
            user.Address       = model.Address;
            user.DateOfBirth   = Convert.ToDateTime(model.DateOfBirth);
            user.PlaceOfBirth  = model.PlaceOfBirth;
            user.MiddleName    = model.MiddleName;
            user.PhoneNumber   = model.PhoneNumber;
            user.StateOfOrigin = model.StateOfOrigin;
            user.CreatedAt     = DateTime.Now;
            user.Sex           = sex;
            user.UserType      = UserType.Employee;

            //var user = new ApplicationUser()
            //{
            //    UserName = model.Email,
            //    Email = model.Email,
            //    FirstName = model.FirstName,
            //    LastName = model.LastName,
            //    Address = model.Address,
            //    DateOfBirth = Convert.ToDateTime(model.DateOfBirth),
            //    PlaceOfBirth = model.PlaceOfBirth,
            //    MiddleName = model.MiddleName,
            //    PhoneNumber = model.PhoneNumber,
            //    StateOfOrigin = model.StateOfOrigin,
            //    CreatedAt = DateTime.Now,
            //    Sex = sex,
            //    UserType = UserType.Employee
            //};

            //upload file

            //verifiy user BVN
            var isNimcVerify = util.VerifyNIMC(model.ExtraData.NIMC);
            var isBvnVerify  = util.VerifyBVN(model.ExtraData.BVN);

            if (!isBvnVerify || !isNimcVerify)
            {
                var error = new ErorrMessage()
                {
                    ResponseCode   = 403,
                    ResponseStatus = false,
                    Message        = "Invalid BVN or NIN | please contact your bank"
                };

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
            }

            IdentityResult result = await UserManager.CreateAsync(user, DefaultPassword);

            if (!result.Succeeded)
            {
                var error = new ErorrMessage()
                {
                    ResponseCode   = 403,
                    ResponseStatus = false,
                    Message        = "Unable to create User"
                };

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
            }

            var employee = util.RegisterEmployee(model, user.Id);

            var res = new UserReponseModel()
            {
                ResponseCode   = 201,
                ResponseStatus = true,
                Message        = "User sucessfully created",
                UserId         = user.Id
            };

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Created, res)));
        }
Ejemplo n.º 5
0
        public async Task <IHttpActionResult> Register(RegisterBindingModel model)
        {
            Console.WriteLine(model);
            SexType sex = 0;

            if (!ModelState.IsValid)
            {
                var message = string.Join(" | ", ModelState.Values
                                          .SelectMany(v => v.Errors)
                                          .Select(e => e.ErrorMessage));

                var error = new ErorrMessage()
                {
                    ResponseCode   = 403,
                    ResponseStatus = false,
                    Message        = message
                };
                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Forbidden, error)));
            }

            if (model.Sex.Equals("Female"))
            {
                sex = SexType.Female;
            }
            else
            {
                sex = SexType.Male;
            }

            var user = new ApplicationUser()
            {
                UserName      = model.Email,
                Email         = model.Email,
                FirstName     = model.FirstName,
                LastName      = model.LastName,
                Address       = model.Address,
                DateOfBirth   = Convert.ToDateTime(model.DateOfBirth),
                PlaceOfBirth  = model.PlaceOfBirth,
                MiddleName    = model.MiddleName,
                PhoneNumber   = model.PhoneNumber,
                StateOfOrigin = model.StateOfOrigin,
                CreatedAt     = DateTime.Now,
                Sex           = sex,
            };

            if (model.Type.Equals("Employer"))
            {
                user.UserType = UserType.Employer;
            }

            IdentityResult result = await UserManager.CreateAsync(user, model.Password);

            if (!result.Succeeded)
            {
                return(GetErrorResult(result));
            }

            if (model.Type.Equals("Employer"))
            {
                var employer = new Employer()
                {
                    EmployerId           = user.Id,
                    NextOfKin            = model.NextOfKin,
                    NextOfKinAddress     = model.NextOfKinAddress,
                    NextOfKinPhoneNumber = model.NextOfKinPhone,
                    PlaceOfWork          = model.PlaceOfWork,
                    CreatedAt            = DateTime.Now
                };

                var employerDatails = util.RegisterEmployer(employer, model);
            }

            var res = new UserReponseModel()
            {
                ResponseCode   = 201,
                ResponseStatus = true,
                Message        = "User sucessfully created",
                UserId         = user.Id
            };

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Created, res)));
        }