diff --git a/Marco.Pms.Model/Dtos/Activities/CreateActivityMasterDto.cs b/Marco.Pms.Model/Dtos/Activities/CreateActivityMasterDto.cs index 4532ddb..9961661 100644 --- a/Marco.Pms.Model/Dtos/Activities/CreateActivityMasterDto.cs +++ b/Marco.Pms.Model/Dtos/Activities/CreateActivityMasterDto.cs @@ -4,5 +4,6 @@ { public string? ActivityName { get; set; } public string? UnitOfMeasurement { get; set; } + public List? CheckList { get; set; } } } diff --git a/Marco.Pms.Model/Entitlements/ActivityCheckList.cs b/Marco.Pms.Model/Entitlements/ActivityCheckList.cs new file mode 100644 index 0000000..aa2637b --- /dev/null +++ b/Marco.Pms.Model/Entitlements/ActivityCheckList.cs @@ -0,0 +1,10 @@ +namespace Marco.Pms.Model.Entitlements +{ + public class ActivityCheckList + { + public int Id { get; set; } + public int ActivityMasterId { get; set; } + public string? CheckList { get; set; } + public int TenantId { get; set; } + } +} diff --git a/Marco.Pms.Services/Controllers/MasterController.cs b/Marco.Pms.Services/Controllers/MasterController.cs index 204d37b..1096484 100644 --- a/Marco.Pms.Services/Controllers/MasterController.cs +++ b/Marco.Pms.Services/Controllers/MasterController.cs @@ -43,6 +43,22 @@ namespace Marco.Pms.Services.Controllers var activityMaster = createActivity.ToActivityMasterFromCreateActivityMasterDto(tenantId); _context.ActivityMasters.Add(activityMaster); await _context.SaveChangesAsync(); + + if (createActivity.CheckList != null) { + List activityCheckList = new List(); + foreach (var check in createActivity.CheckList) + { + ActivityCheckList checkList = new ActivityCheckList + { + ActivityMasterId = activityMaster.Id, + TenantId = tenantId, + CheckList = check + }; + activityCheckList.Add(checkList); + } + //_context.ActivityCheckList.AddRange(activityCheckList); + await _context.SaveChangesAsync(); + } return Ok(ApiResponse.SuccessResponse(activityMaster, "Activity created successfully", 200)); } @@ -52,11 +68,28 @@ namespace Marco.Pms.Services.Controllers var tenantId = _userHelper.GetTenantId(); var employee = await _userHelper.GetCurrentEmployeeAsync(); ActivityMaster? activity = await _context.ActivityMasters.FirstOrDefaultAsync(x => x.Id == id); - if (activity != null) { + if (activity != null && createActivity.UnitOfMeasurement != null) { activity.ActivityName = activity.ActivityName; activity.UnitOfMeasurement = createActivity.UnitOfMeasurement; activity.TenantId = tenantId; await _context.SaveChangesAsync(); + + if (createActivity.CheckList != null) + { + List activityCheckList = new List(); + foreach (var check in createActivity.CheckList) + { + ActivityCheckList checkList = new ActivityCheckList + { + ActivityMasterId = activity.Id, + TenantId = tenantId, + CheckList = check + }; + activityCheckList.Add(checkList); + } + //_context.ActivityCheckList.UpdateRange(activityCheckList); + await _context.SaveChangesAsync(); + } return Ok(ApiResponse.SuccessResponse(activity, "Activity updated successfully", 200)); }