Ashutosh_Task#513 #96
@ -11,6 +11,7 @@ namespace Marco.Pms.Model.ViewModels.Activities
|
||||
public double CompletedTask { get; set; }
|
||||
public BasicEmployeeVM? AssignedBy { get; set; }
|
||||
public Guid WorkItemId { get; set; }
|
||||
public List<string>? PreSignedUrls { get; set; }
|
||||
public WorkItem? WorkItem { get; set; }
|
||||
public List<BasicEmployeeVM>? teamMembers { get; set; }
|
||||
public List<CommentVM>? comments { get; set; }
|
||||
|
@ -317,6 +317,13 @@ namespace MarcoBMS.Services.Controllers
|
||||
|
||||
List<Employee> employees = await _context.Employees.Where(e => employeeIdList.Contains(e.Id)).Include(e => e.JobRole).ToListAsync();
|
||||
|
||||
List<TaskComment> allComments = await _context.TaskComments.Where(c => taskIdList.Contains(c.TaskAllocationId)).ToListAsync();
|
||||
var allCommentIds = allComments.Select(c => c.Id).ToList();
|
||||
|
||||
var taskAttachments = await _context.TaskAttachments.Where(t => taskIdList.Contains(t.ReferenceId) || allCommentIds.Contains(t.ReferenceId)).ToListAsync();
|
||||
var documentIds = taskAttachments.Select(t => t.DocumentId).ToList();
|
||||
var documents = await _context.Documents.Where(d => documentIds.Contains(d.Id)).ToListAsync();
|
||||
|
||||
List<ListTaskVM> tasks = new List<ListTaskVM>();
|
||||
//foreach (var workItem in workItems)
|
||||
//{
|
||||
@ -325,10 +332,21 @@ namespace MarcoBMS.Services.Controllers
|
||||
|
||||
var response = taskAllocation.ToListTaskVMFromTaskAllocation();
|
||||
|
||||
List<TaskComment> comments = await _context.TaskComments.Where(c => c.TaskAllocationId == taskAllocation.Id).ToListAsync();
|
||||
List<TaskComment> comments = allComments.Where(c => c.TaskAllocationId == taskAllocation.Id).ToList();
|
||||
List<BasicEmployeeVM> team = new List<BasicEmployeeVM>();
|
||||
List<TaskMembers> taskMembers = teamMembers.Where(m => m.TaskAllocationId == taskAllocation.Id).ToList();
|
||||
|
||||
var taskDocumentIds = taskAttachments.Where(t => t.ReferenceId == taskAllocation.Id).Select(t => t.DocumentId).ToList();
|
||||
var taskDocuments = documents.Where(d => taskDocumentIds.Contains(d.Id)).ToList();
|
||||
|
||||
List<string> taskPreSignedUrls = new List<string>();
|
||||
foreach (var document in taskDocuments)
|
||||
{
|
||||
string preSignedUrl = _s3Service.GeneratePreSignedUrlAsync(document.S3Key);
|
||||
taskPreSignedUrls.Add(preSignedUrl);
|
||||
}
|
||||
response.PreSignedUrls = taskPreSignedUrls;
|
||||
|
||||
foreach (var taskMember in taskMembers)
|
||||
{
|
||||
var teamMember = employees.Find(e => e.Id == taskMember.EmployeeId);
|
||||
@ -340,7 +358,18 @@ namespace MarcoBMS.Services.Controllers
|
||||
List<CommentVM> commentVM = new List<CommentVM> { };
|
||||
foreach (var comment in comments)
|
||||
{
|
||||
commentVM.Add(comment.ToCommentVMFromTaskComment());
|
||||
var commentDocumentIds = taskAttachments.Where(t => t.ReferenceId == comment.Id).Select(t => t.DocumentId).ToList();
|
||||
var commentDocuments = documents.Where(d => commentDocumentIds.Contains(d.Id)).ToList();
|
||||
List<string> commentPreSignedUrls = new List<string>();
|
||||
foreach (var document in commentDocuments)
|
||||
{
|
||||
string preSignedUrl = _s3Service.GeneratePreSignedUrlAsync(document.S3Key);
|
||||
commentPreSignedUrls.Add(preSignedUrl);
|
||||
}
|
||||
CommentVM commentVm = comment.ToCommentVMFromTaskComment();
|
||||
commentVm.PreSignedUrls = commentPreSignedUrls;
|
||||
|
||||
commentVM.Add(commentVm);
|
||||
}
|
||||
List<ActivityCheckList> checkLists = await _context.ActivityCheckLists.Where(x => x.ActivityId == (taskAllocation.WorkItem != null ? taskAllocation.WorkItem.ActivityId : Guid.Empty)).ToListAsync();
|
||||
List<CheckListMappings> checkListMappings = await _context.CheckListMappings.Where(c => c.TaskAllocationId == taskAllocation.Id).ToListAsync();
|
||||
|
Loading…
x
Reference in New Issue
Block a user