public int Add(TblMunicipality entity)
        {
            var validationMsg = Validate(entity);

            if (validationMsg.Any())
            {
                throw new Exception(string.Join(',', validationMsg));
            }

            int id = entity.Id;

            using (SqlConnection conn = new SqlConnection(_connectionString))
            {
                if (Exists(entity.Name, conn, entity.Id))
                {
                    throw new Exception("Can't add duplicate name!");
                }

                if (id > 0)
                {
                    SetBaseFieldsUpdate(entity);
                    conn.Update(entity);
                }
                else
                {
                    SetBaseFieldsAdd(entity);
                    id = Convert.ToInt32(conn.Insert(entity));
                }
            }

            return(id);
        }
        private List <string> Validate(TblMunicipality entity)
        {
            List <string> validationMsg = new List <string>();

            if (string.IsNullOrEmpty(entity.Name))
            {
                validationMsg.Add("Please enter municipality name to add.");                 //TODO: pick from resource?
            }
            return(validationMsg);
        }
Example #3
0
        public void CreateMunicipality(string name)
        {
            TblMunicipality entity = new TblMunicipality
            {
                Name = name
            };

            string url      = $"{BASE_API_PATH}/municipality/add";
            var    response = InvokeApi(url, entity, Method.POST);

            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
            var data = JsonConvert.DeserializeObject <GenericApiResponse <TblMunicipality> >(response.Content);

            Assert.True(data.Success);
        }
Example #4
0
        public ActionResult <GenericApiResponse <TblMunicipality> > AddOrUpdate(TblMunicipality entity)
        {
            try
            {
                var data = db.Add(entity);
                entity.Id = data;

                return(Ok(new GenericApiResponse <TblMunicipality> {
                    Success = true,
                    Count = data
                }));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(BadRequest(ex.Message));
            }
        }