public PersonResponse Add(PersonInsertRequest item)
    {
        var controller = new PersonController(classmates);

        return(ValidateAndExecute(() => controller.ValidateInsert(item),
                                  () => controller.ExecuteInsert(item)));
    }
예제 #2
0
        public PersonInsertResponse Insert(PersonInsertRequest request)
        {
            var response = new PersonInsertResponse();

            if (request.IsNotValid())
            {
                response.Message = ConstHelper.REQUEST_NOT_VALID;
                return(response);
            }

            try
            {
                var entity = PersonMapper.MapEntityFromRequest(request);
                _personRepository.Insert(entity);

                var model = PersonMapper.MapModelFromEntity(entity);
                response.Model = model;
            }
            catch (Exception ex)
            {
                response.Message = string.Format("Insert to database failed!{0}{1}", Environment.NewLine, ex.Message);
                return(response);
            }

            response.Status  = true;
            response.Message = "Person inserted.";
            return(response);
        }
예제 #3
0
        public int Insert(PersonInsertRequest model)
        {
            int id = 0;

            using (SqlConnection conn = new SqlConnection(sqlConnectionString))
            {
                conn.Open();
                using (SqlCommand cmd = new SqlCommand("Person_Insert", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@UserId", model.UserId);
                    cmd.Parameters.AddWithValue("@FirstName", model.FirstName);
                    cmd.Parameters.AddWithValue("@MiddleInitial", model.MiddleInitial);
                    cmd.Parameters.AddWithValue("@LastName", model.LastName);
                    cmd.Parameters.AddWithValue("@ModifiedBy", model.ModifiedBy);
                    cmd.Parameters.AddWithValue("@DisplayName", model.DisplayName);

                    SqlParameter parm = new SqlParameter("@Id", SqlDbType.Int);
                    parm.Direction = ParameterDirection.Output;
                    cmd.Parameters.Add(parm);

                    cmd.ExecuteNonQuery();

                    id = (int)cmd.Parameters["@Id"].Value;
                }
                conn.Close();
            }
            return(id);
        }
예제 #4
0
        public static PersonInsertRequest GetPersonInsertRequest()
        {
            var request = new PersonInsertRequest();

            request.FirstName = "John";
            request.LastName  = "Doe";
            request.Email     = "*****@*****.**";
            request.Phone     = "0090 555 669 99 88";
            return(request);
        }
        public static PersonInsertRequest MapRequestFromViewModel(PersonViewModel model)
        {
            var request = new PersonInsertRequest();

            request.FirstName = model.FirstName;
            request.LastName  = model.LastName;
            request.Email     = model.Email;
            request.Phone     = model.Phone;

            return(request);
        }
예제 #6
0
        public static Person MapEntityFromRequest(PersonInsertRequest request)
        {
            var person = PersonFactory.CreatePerson();

            person.FirstName = request.FirstName;
            person.LastName  = request.LastName;
            person.Email     = request.Email;
            person.Phone     = request.Phone;

            return(person);
        }
예제 #7
0
        public HttpResponseMessage Post(PersonInsertRequest model)
        {
            try
            {
                //var user = _authService.GetCurrentUser();
                //model.ModifiedBy = user.Id;
                int id = svc.Insert(model);

                ItemResponse <int> resp = new ItemResponse <int>();
                resp.Item = id;

                return(Request.CreateResponse(HttpStatusCode.OK, resp));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message));
            }
        }
예제 #8
0
        internal static PersonUpdateRequest GetPersonUpdateRequest(PersonSelectRequest selectRequest, PersonInsertRequest insertRequest)
        {
            var request = new PersonUpdateRequest();

            request.UId       = selectRequest.UId;
            request.FirstName = insertRequest.FirstName;
            request.LastName  = insertRequest.LastName;
            request.Phone     = insertRequest.Phone;

            return(request);
        }