public IHttpActionResult GetProjectStatusChangeLog(string projectId) { return(Ok(new { changeLog = ProjectStatusChangeLog.Search(i => i.ProjectId == projectId).ToList() })); }
public void ChangeProjectStatus(ProjectDto project) { using (var scope = new TransactionScope()) { var projectInfo = ProjectInfo.FirstOrDefault(e => e.ProjectId == project.ProjectId && e.FlowCode == project.FlowCode); if (projectInfo != null) { projectInfo.Status = project.CurrStatus; projectInfo.Update(); var tasks = TaskWork.Search(e => e.RefID == project.ProjectId && e.Status == TaskWorkStatus.UnFinish && e.ActivityName == NodeCode.Start).ToList(); tasks.ForEach(e => { e.ActionName = SetTaskActionName(project.CurrStatus); }); TaskWork.Update(tasks.ToArray()); var log = new ProjectStatusChangeLog { ProjectId = project.ProjectId, PrevStatus = project.PrevStatus, CurrStatus = project.CurrStatus, FlowCode = project.FlowCode, Comment = project.Comment, CreateBy = ClientCookie.UserCode, CreateTime = DateTime.Now }; log.Add(); } scope.Complete(); } }