public async Task <List <EquipmentAttachmentViewModel> > GetEquipmentAttachmentForUserAsync(User user, EquipmentAttachmentUserFormModel equipmentAttachmentUserFormModel) { try { var equipments = await _context.Equipments.ToListAsync(); var equipmentTemps = equipments.Where(c => equipmentAttachmentUserFormModel.EquipmentIds.Contains(c.Id)).ToList(); var equipmentnodes = new List <Equipment>(); equipmentTemps.ForEach(or => { equipmentnodes.Add(or); if (or.ParentId != null) { var parentNode = FillParent(equipments, or); if (parentNode != null) { equipmentnodes.Add(parentNode); } } }); var equipmentAtts = await _context.EquipmentAttachments.Where(c => equipmentnodes.Contains(c.Equipment)).ToListAsync(); return(equipmentAtts.Select(equipmentAtt => new EquipmentAttachmentViewModel { EquipmentAttachmentId = equipmentAtt.Id, CreationDate = equipmentAtt.CreationDate, Description = equipmentAtt.Description, EquipmentAttachmentName = equipmentAtt.EquipmentAttachmentName, EquipmentId = equipmentAtt.EquipmentId, EquipmentAttachmentType = equipmentAtt.EquipmentAttachmentType, FileId = equipmentAtt.FileId, FileSize = equipmentAtt.FileSize, FileType = equipmentAtt.FileType }).ToList()); } catch (Exception ex) { throw new ExperienceManagementGlobalException(EquipmentServiceErrors.GetEquipmentAttachmentForUserError, ex); } }
public async Task <IActionResult> GetEquipmentAttachmentForUser([FromBody] EquipmentAttachmentUserFormModel equipmentAttachmentUserFormModel) { var equipmentAtts = await _equipmentService.GetEquipmentAttachmentForUserAsync(HttpContext.GetUser(), equipmentAttachmentUserFormModel); return(Ok(GetRequestResult(equipmentAtts))); }