public ActionResult Index() { MonthlyVolumeReportViewModel vm = new MonthlyVolumeReportViewModel(); var username = HttpContext.User.Identity.Name; vm.user = _UserRepository.GetUserByUsername(username); var aaUsersResult = _UserRepository.GetAllUsersByRole(4); vm.AAUsersDropdown = aaUsersResult.Select(row => new SelectListItem() { Text = row.LastName + "," + row.FirstName, Value = row.LastName + "," + row.FirstName }); var saUsersResult = _UserRepository.GetAllUsersByRole(3); vm.SAUsersDropdown = saUsersResult.Select(row => new SelectListItem() { Text = row.LastName + "," + row.FirstName, Value = row.LastName + "," + row.FirstName }); IEnumerable <Zone> zones = _zoneRepos.Zones; IList <int> zonelist = new List <int>(); foreach (var zone in zones) { zonelist.Add(zone.ZoneNumber); } vm.ZoneDropdown = zonelist; // Getting the values for the tables IEnumerable <Account> AccountList = new List <Account>(); IList <Account> ActualList = new List <Account>(); AccountList = _AccountRepository.Accounts; foreach (var account in AccountList) { account.AssignedSA = _UserRepository.GetUserById(account.AssignedSalesRep); account.AssignedUser = _UserRepository.GetUserById(account.AACreator); if (account.MailingZipcode != "") { account.Zone = _zoneRepos.GetZoneByZipcode(account.MailingZipcode); } else { account.Zone = 0; } ActualList.Add(account); } vm.Accounts = ActualList; return(View(vm)); }
/// <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 } }
public void SaveLeadAccessRecord(string path) { Domain.ImportedLead[] parsedLeads = Helper.ParseCSVFile(path); string sql = "INSERT INTO lead (companyname, contact1title, contact1firstname, contact2title, contact2firstname, primaryphonenumber, additionalphonenumber, numbertocall, faxnumber, primaryemailaddress, additionalemailaddress, websitelink, streetaddress1, streetaddress2, city, state, zipcode, zonenumber, status, assignedsauserid, callbackdate, ignoreddate, assignedaauserid, suppressed, contact1lastname, contact2lastname, ignored, dateimported, primaryphonechecked) VALUES (:companyname, :contact1title, :contact1firstname, :contact2title, :contact2firstname, :primaryphonenumber, :additionalphonenumber, :numbertocall, :faxnumber, :primaryemailaddress, :additionalemailaddress, :websitelink, :streetaddress1, :streetaddress2, :city, :state, :zipcode, :zonenumber, :status, :assignedsauserid, :callbackdate, :ignoreddate , :assignedaauserid, :suppressed, :contact1lastname, :contact2lastname, :ignored, :dateimported, :primaryphonechecked)"; using (Npgsql.NpgsqlConnection conn = new Npgsql.NpgsqlConnection(Infrastructure.ConfigReader.ConnectionString.ToString())) { conn.Open(); Npgsql.NpgsqlCommand command = new Npgsql.NpgsqlCommand(sql, conn); command.Parameters.Add(new Npgsql.NpgsqlParameter("companyname", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact1title", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact1firstname", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact2title", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact2firstname", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("primaryphonenumber", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("additionalphonenumber", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("numbertocall", NpgsqlTypes.NpgsqlDbType.Integer)); command.Parameters.Add(new Npgsql.NpgsqlParameter("faxnumber", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("primaryemailaddress", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("additionalemailaddress", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("websitelink", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("streetaddress1", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("streetaddress2", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("city", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("state", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("zipcode", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("zonenumber", NpgsqlTypes.NpgsqlDbType.Integer)); command.Parameters.Add(new Npgsql.NpgsqlParameter("status", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("assignedsauserid", NpgsqlTypes.NpgsqlDbType.Integer)); command.Parameters.Add(new Npgsql.NpgsqlParameter("callbackdate", NpgsqlTypes.NpgsqlDbType.Timestamp)); command.Parameters.Add(new Npgsql.NpgsqlParameter("ignoreddate", NpgsqlTypes.NpgsqlDbType.Timestamp)); command.Parameters.Add(new Npgsql.NpgsqlParameter("assignedaauserid", NpgsqlTypes.NpgsqlDbType.Integer)); command.Parameters.Add(new Npgsql.NpgsqlParameter("suppressed", NpgsqlTypes.NpgsqlDbType.Boolean)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact1lastname", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("contact2lastname", NpgsqlTypes.NpgsqlDbType.Text)); command.Parameters.Add(new Npgsql.NpgsqlParameter("ignored", NpgsqlTypes.NpgsqlDbType.Boolean)); command.Parameters.Add(new Npgsql.NpgsqlParameter("dateimported", NpgsqlTypes.NpgsqlDbType.Timestamp)); command.Parameters.Add(new Npgsql.NpgsqlParameter("primaryphonechecked", NpgsqlTypes.NpgsqlDbType.Boolean)); //int leadid = command.Parameters.Count; // System.Console.WriteLine(leadid); //System.Console.WriteLine(parsedData.Count); command.Prepare(); foreach (Domain.ImportedLead parsedLead in parsedLeads) { int zone = _ZoneRepository.GetZoneByZipcode(parsedLead.ZipCode); command.Parameters["@companyname"].Value = parsedLead.CompanyName; command.Parameters["@contact1firstname"].Value = parsedLead.ContactFirstName; command.Parameters["@contact1lastname"].Value = parsedLead.ContactLastName; command.Parameters["@contact1title"].Value = parsedLead.Title; command.Parameters["@streetaddress1"].Value = parsedLead.Address; command.Parameters["@city"].Value = parsedLead.City; command.Parameters["@state"].Value = parsedLead.State; command.Parameters["@zipcode"].Value = parsedLead.ZipCode; command.Parameters["@primaryphonenumber"].Value = parsedLead.PrimaryPhoneNumber; command.Parameters["@additionalphonenumber"].Value = parsedLead.AdditionalPhoneNumber; command.Parameters["@faxnumber"].Value = parsedLead.FaxNumber; command.Parameters["@primaryemailaddress"].Value = parsedLead.EmailAddress; command.Parameters["@status"].Value = "Cold Lead"; command.Parameters["@assignedsauserid"].Value = 0; command.Parameters["@assignedaauserid"].Value = 0; command.Parameters["@zonenumber"].Value = zone; command.Parameters["@ignored"].Value = false; command.Parameters["@dateimported"].Value = DateTime.Now; command.Parameters["@primaryphonechecked"].Value = true; long x = command.ExecuteNonQuery(); } } Lead lead = new Lead(); // If it's a new lead, just add it to the list if (lead.LeadId == 0) { lead.LeadId = counter; counter += 1; fakeLeads.Add(lead); } else if (fakeLeads.Count(row => row.LeadId == lead.LeadId) == 1) { //This is an update. Remove old one, insert new one DeleteLeadAccessRecord(lead); fakeLeads.Add(lead); } }