示例#1
0
        /// <summary>
        /// Takes in a new Zone Number, saves new Zone to Repository, returns in JSON Format the Zone Number and it's ZoneId
        /// </summary>
        /// <param name="id">new Zone Number</param>
        /// <returns></returns>
        public ActionResult addZipcode(string text, string id)
        {
            var checkExixtingZip = _ZoneRepository.GetZoneByZipcode(text);

            if (checkExixtingZip == 0)
            {
                var findZone = _ZoneRepository.Zones.Single(row => row.ZoneId.ToString() == id);
                findZone.ZipCodesCovered.Add(text);
                int zipcode    = Convert.ToInt32(text);
                int zonenumber = Convert.ToInt32(id);

                _ZoneRepository.SaveZipCode(findZone.ZoneNumber, zipcode);
                var           ZipCodesCovered = _ZoneRepository.GetZipcodesByZone(findZone.ZoneNumber);
                StringBuilder sb = new StringBuilder();
                StringWriter  sw = new StringWriter(sb);

                using (JsonWriter w = new JsonTextWriter(sw))
                {
                    w.WriteStartObject();
                    w.WritePropertyName("ZipCodesCovered");

                    w.WriteStartArray();
                    foreach (var zip in ZipCodesCovered)
                    {
                        w.WriteValue(zip.ZipCode);
                    }
                    w.WriteEnd();
                    w.WritePropertyName("ZoneId");
                    w.WriteValue(findZone.ZoneId);

                    w.WriteEndObject();
                }
                //ChangeExistingLeadsZoneNumber(zipcode, findZone.ZoneNumber);
                return(Content(sb.ToString(), "application/json"));
            }
            else
            {
                return(Content("false"));                          //zipcode already exist
            }
        }