Added CheckList to Update and Create API

This commit is contained in:
ashutosh.nehete 2025-04-10 19:56:30 +05:30
parent e53d45ed77
commit 3702dae1ac
3 changed files with 48 additions and 6 deletions

View File

@ -1,10 +1,9 @@
using System.ComponentModel; namespace Marco.Pms.Model.Dtos.Activities
namespace Marco.Pms.Model.Dtos.Activities
{ {
public class CreateActivityMasterDto public class CreateActivityMasterDto
{ {
public string ActivityName { get; set; } public string? ActivityName { get; set; }
public string UnitOfMeasurement { get; set; } public string? UnitOfMeasurement { get; set; }
public List<string>? CheckList { get; set; }
} }
} }

View File

@ -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; }
}
}

View File

@ -43,6 +43,22 @@ namespace Marco.Pms.Services.Controllers
var activityMaster = createActivity.ToActivityMasterFromCreateActivityMasterDto(tenantId); var activityMaster = createActivity.ToActivityMasterFromCreateActivityMasterDto(tenantId);
_context.ActivityMasters.Add(activityMaster); _context.ActivityMasters.Add(activityMaster);
await _context.SaveChangesAsync(); await _context.SaveChangesAsync();
if (createActivity.CheckList != null) {
List<ActivityCheckList> activityCheckList = new List<ActivityCheckList>();
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<object>.SuccessResponse(activityMaster, "Activity created successfully", 200)); return Ok(ApiResponse<object>.SuccessResponse(activityMaster, "Activity created successfully", 200));
} }
@ -52,11 +68,28 @@ namespace Marco.Pms.Services.Controllers
var tenantId = _userHelper.GetTenantId(); var tenantId = _userHelper.GetTenantId();
var employee = await _userHelper.GetCurrentEmployeeAsync(); var employee = await _userHelper.GetCurrentEmployeeAsync();
ActivityMaster? activity = await _context.ActivityMasters.FirstOrDefaultAsync(x => x.Id == id); ActivityMaster? activity = await _context.ActivityMasters.FirstOrDefaultAsync(x => x.Id == id);
if (activity != null) { if (activity != null && createActivity.UnitOfMeasurement != null) {
activity.ActivityName = activity.ActivityName; activity.ActivityName = activity.ActivityName;
activity.UnitOfMeasurement = createActivity.UnitOfMeasurement; activity.UnitOfMeasurement = createActivity.UnitOfMeasurement;
activity.TenantId = tenantId; activity.TenantId = tenantId;
await _context.SaveChangesAsync(); await _context.SaveChangesAsync();
if (createActivity.CheckList != null)
{
List<ActivityCheckList> activityCheckList = new List<ActivityCheckList>();
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<object>.SuccessResponse(activity, "Activity updated successfully", 200)); return Ok(ApiResponse<object>.SuccessResponse(activity, "Activity updated successfully", 200));
} }