public ActivitiesListResponse GetActivitiesList(ActivityFilters filters) { ActivitiesListResponse response = new ActivitiesListResponse(); try { List <Activity> activitiesList = _context.Activities.ToList(); if (filters.company != 0 || filters.fromDate != "" || filters.toDate != "") { if (filters.company != 0) { activitiesList = activitiesList.Where((x) => x.Company == filters.company).ToList(); } if (filters.fromDate != "") { activitiesList = activitiesList.Where((x) => x.InsertDate >= Convert.ToDateTime(filters.fromDate)).ToList(); } if (filters.toDate != "") { activitiesList = activitiesList.Where((x) => x.InsertDate <= Convert.ToDateTime(filters.toDate)).ToList(); } } foreach (Activity item in activitiesList) { ENTITIES.Activity newActivity = new ENTITIES.Activity(); Copy(ref newActivity, item); List <ENTITIES.JBI> activitiesJBI = new List <ENTITIES.JBI>(); List <ActivityJBI> JBIlist = _context.ActivityJBIs.Where(x => x.ActivityId == item.ActivityId).ToList(); foreach (ActivityJBI jbi in JBIlist) { JBI onePerson = _context.JBIs.Where(x => x.Moneln == jbi.JBIId).FirstOrDefault(); ENTITIES.JBI oneJBI = new ENTITIES.JBI(); Copy(ref oneJBI, onePerson); activitiesJBI.Add(oneJBI); } List <ENTITIES.TextBox> activitiesTextBoxes = new List <ENTITIES.TextBox>(); List <TextBox> textBoxes = _context.TextBoxes.Where(x => x.ActivityId == item.ActivityId).ToList(); foreach (TextBox textBox in textBoxes) { ENTITIES.TextBox oneTextBox = new ENTITIES.TextBox(); Copy(ref oneTextBox, textBox); oneTextBox.BoxId = textBox.TextBoxId; activitiesTextBoxes.Add(oneTextBox); } newActivity.JBIlist = activitiesJBI.ToArray(); newActivity.TextBoxList = activitiesTextBoxes.ToArray(); response.Activities.Add(newActivity); } } catch (Exception ex) { response.desc = ex.Message; response.rc = -1; } return(response); }
public CrmResponse InsertActivity(ENTITIES.Activity newActivity) { CrmResponse response = new CrmResponse(); using (DalActivity context = new DalActivity()) { response = context.InsertNewActivity(newActivity); if (response.rc > -1) { //insert lines to schedule email sending response = context.ScheduleEmails(response.rc); } } return(response); }
public CrmResponse InsertNewActivity(ENTITIES.Activity activity) { CrmResponse response = new CrmResponse(); try { Activity newActivity = new Activity(); Type myType = newActivity.GetType(); PropertyInfo[] props = myType.GetProperties(); foreach (PropertyInfo prop in props) { object temp = activity.GetType().GetProperty(prop.Name); if (!(temp is null)) { object activityValue = activity.GetType().GetProperty(prop.Name).GetValue(activity); newActivity.GetType().GetProperty(prop.Name).SetValue(newActivity, activityValue); } } //buttons newActivity.Button1 = activity.Buttons[0]; newActivity.Button2 = activity.Buttons[1]; newActivity.Button3 = activity.Buttons[2]; newActivity.InsertDate = DateTime.Now; Activity act = _context.Activities.Add(newActivity); _context.SaveChanges(); int activityId = act.ActivityId; //textBoxes List <TextBox> textBoxes = new List <TextBox>(); foreach (var item in activity.TextBoxList) { TextBox textBox = new TextBox { ActivityId = activityId, Bold = item.Bold, Color = item.Color, FontSize = item.FontSize, Text = item.Text, TextBoxId = item.BoxId }; textBoxes.Add(textBox); } _context.TextBoxes.AddRange(textBoxes); _context.SaveChanges(); //JBI List <ActivityJBI> JBIs = new List <ActivityJBI>(); foreach (var item in activity.JBIlist) { ActivityJBI jbi = new ActivityJBI { ActivityId = activityId, JBIId = item.Moneln }; JBIs.Add(jbi); } _context.ActivityJBIs.AddRange(JBIs); _context.SaveChanges(); response.rc = activityId; } catch (Exception ex) { var message = ex.Message; response.desc = ex.Message; response.rc = -1; } return(response); }