public IHttpActionResult PostNewTask(Models.Task task) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } using (var ctx = new KanbanBoardWithSignalRAngularJSSolContext()) { ctx.Tasks.Add(new Models.Task() { Id = task.Id, Name = task.Name, Description = task.Description, ColumnId = task.ColumnId, EmployeeId = task.EmployeeId, DueDate = task.DueDate, selectedHours = task.selectedHours, EmployeeName = task.EmployeeName, PmAssignedBy = task.PmAssignedBy, PercentageComplete = task.PercentageComplete, CaseNumber = task.CaseNumber }); ctx.SaveChanges(); } return(Ok()); }
public IHttpActionResult Download(int id) { Models.Task task = db.Tasks.Find(id); string[] CaseNumArray = new string[100]; string[] SubjectArray = new string[100]; string[] OwnerArray = new string[100]; string[] CreatorArray = new string[100]; double[] TotalHoursArray = new double[100]; string[] DescArray = new string[100]; DateTime[] CreatedDateArray = new DateTime[100]; InitializeAsync(); void InitializeAsync() { ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; string user = "******"; string pass = "******"; binding = new SforceService(); binding.Timeout = 60000; WebReference.LoginResult lr; lr = binding.login(user, pass); string authEndPoint = binding.Url; binding.Url = lr.serverUrl; binding.SessionHeaderValue = new SessionHeader(); binding.SessionHeaderValue.sessionId = lr.sessionId; string soqlQuery = "SELECT Subject, CaseNumber, Owner.Name, CreatedDate, Total_Time_Logged__c, CreatedBy.Name, Description FROM Case where (Status = 'Case Opened' or Status = 'Case Assigned')" + "and (Owner.Name = 'Bradley Soverns' or Owner.Name = 'Edward Spain' or Owner.Name = 'Kyle McQuistion' or Owner.Name = 'Dan Dibble' or Owner.Name = 'Porfirio Esparra' or Owner.Name = 'Firaus Odeh')"; QueryResult qr = binding.query(soqlQuery); sObject[] records = qr.records; if (qr.size > 0) { Console.WriteLine(""); for (int i = 0; i < records.Length; i++) { Case T = (Case)records[i]; if (CaseNumArray.Contains(T.CaseNumber)) { //Should avoid duplicate cases } else { Case c = (Case)records[i]; SubjectArray[i] = c.Subject; CaseNumArray[i] = c.CaseNumber; OwnerArray[i] = c.Owner.Name1; CreatorArray[i] = c.CreatedBy.Name; CreatedDateArray[i] = c.CreatedDate ?? DateTime.Now; TotalHoursArray[i] = c.Total_Time_Logged__c.Value; DescArray[i] = c.Description; //Debug.WriteLine(c.CaseNumber + ": " + c.Subject + ": " + c.Owner.Name1 + ": " + c.CreatedBy.Name + ": " + c.CreatedDate + ": " + c.Total_Time_Logged__c); } } logout(); } for (int i = 0; id < records.Length; id++) { decimal hours = (decimal)TotalHoursArray[i]; using (var ctx = new KanbanBoardWithSignalRAngularJSSolContext()) { ctx.Tasks.Add(new Models.Task() { Id = task.Id, Name = SubjectArray[i], Description = DescArray[i], ColumnId = task.ColumnId, EmployeeId = task.EmployeeId, DueDate = task.DueDate, selectedHours = hours, EmployeeName = OwnerArray[i], PmAssignedBy = CreatorArray[i], PercentageComplete = task.PercentageComplete, CaseNumber = CaseNumArray[i] }); ctx.SaveChanges(); } } } void logout() { binding.logout(); } return(Ok(task)); }