Compare commits
No commits in common. "839062db74a9ffed2dbd36deb95b9fdd060af5a0" and "e9616b18ee263904002df255c53680bae8b02c3c" have entirely different histories.
839062db74
...
e9616b18ee
@ -51,6 +51,22 @@ public class GetWorkflowTemplateVersion : IGeneralId
|
|||||||
public Guid Guid { get; set; }
|
public Guid Guid { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class EditWorkflowTemplateVersion : IGeneralId
|
||||||
|
{
|
||||||
|
public long Id { get; set; }
|
||||||
|
public Guid Guid { get; set; }
|
||||||
|
|
||||||
|
public long Version { get; set; }
|
||||||
|
|
||||||
|
public GeneralIdRef? DomainId { get; set; }
|
||||||
|
|
||||||
|
public string Description { get; set; } = String.Empty;
|
||||||
|
|
||||||
|
public string ActivityNameTemplate { get; set; } = String.Empty;
|
||||||
|
|
||||||
|
public List<TaskDefinition> Tasks { get; set; } = [];
|
||||||
|
}
|
||||||
|
|
||||||
public class PatchWorkflowTemplateVersion
|
public class PatchWorkflowTemplateVersion
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -89,7 +105,7 @@ public interface IWorkflowTemplateManager
|
|||||||
|
|
||||||
Task<PaginatedData<GetWorkflowTemplateVersion>> GetWorkflowTemplateVersionsAsync(Paging paging, CancellationToken cancellationToken);
|
Task<PaginatedData<GetWorkflowTemplateVersion>> GetWorkflowTemplateVersionsAsync(Paging paging, CancellationToken cancellationToken);
|
||||||
Task<GetWorkflowTemplateVersion?> GetWorkflowTemplateAsync(GeneralIdRef generalIdRef, CancellationToken cancellationToken);
|
Task<GetWorkflowTemplateVersion?> GetWorkflowTemplateAsync(GeneralIdRef generalIdRef, CancellationToken cancellationToken);
|
||||||
Task EditTemplateVersion(AuditUserDetails auditUserDetails, GetWorkflowTemplateVersion template, CancellationToken cancellationToken);
|
Task EditTemplateVersion(AuditUserDetails auditUserDetails, EditWorkflowTemplateVersion template, CancellationToken cancellationToken);
|
||||||
Task PatchTemplateVersion(AuditUserDetails auditUserDetails, IGeneralIdRef templateId, PatchWorkflowTemplateVersion patchTemplate, CancellationToken cancellationToken);
|
Task PatchTemplateVersion(AuditUserDetails auditUserDetails, IGeneralIdRef templateId, PatchWorkflowTemplateVersion patchTemplate, CancellationToken cancellationToken);
|
||||||
Task PostTemplateVersion(AuditUserDetails auditUserDetails, CreateWorkflowTemplateVersion template, CancellationToken cancellationToken);
|
Task PostTemplateVersion(AuditUserDetails auditUserDetails, CreateWorkflowTemplateVersion template, CancellationToken cancellationToken);
|
||||||
Task DeleteTemplateVersion(AuditUserDetails auditUserDetails, IGeneralIdRef templateId, CancellationToken cancellationToken);
|
Task DeleteTemplateVersion(AuditUserDetails auditUserDetails, IGeneralIdRef templateId, CancellationToken cancellationToken);
|
||||||
|
|||||||
@ -1,10 +1,15 @@
|
|||||||
using e_suite.API.Common;
|
using e_suite.API.Common;
|
||||||
|
using e_suite.API.Common.models;
|
||||||
|
using e_suite.Database.Core.Tables.UserManager;
|
||||||
|
using e_suite.Modules.SSOManager;
|
||||||
using e_suite.Utilities.Pagination;
|
using e_suite.Utilities.Pagination;
|
||||||
|
using eSuite.API.Models;
|
||||||
using eSuite.API.security;
|
using eSuite.API.security;
|
||||||
using eSuite.API.Utilities;
|
using eSuite.API.Utilities;
|
||||||
using eSuite.Core.Miscellaneous;
|
using eSuite.Core.Miscellaneous;
|
||||||
using eSuite.Core.Security;
|
using eSuite.Core.Security;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using System.Net.NetworkInformation;
|
||||||
|
|
||||||
namespace eSuite.API.Controllers;
|
namespace eSuite.API.Controllers;
|
||||||
|
|
||||||
@ -87,7 +92,7 @@ public class WorkflowTemplateController : ESuiteControllerBase
|
|||||||
[ProducesResponseType(StatusCodes.Status200OK)]
|
[ProducesResponseType(StatusCodes.Status200OK)]
|
||||||
[ProducesResponseType(StatusCodes.Status400BadRequest)]
|
[ProducesResponseType(StatusCodes.Status400BadRequest)]
|
||||||
[AccessKey(SecurityAccess.EditWorkflowTemplate)]
|
[AccessKey(SecurityAccess.EditWorkflowTemplate)]
|
||||||
public async Task<IActionResult> EditTemplateVersion(GetWorkflowTemplateVersion template, CancellationToken cancellationToken = default!)
|
public async Task<IActionResult> EditTemplateVersion(EditWorkflowTemplateVersion template, CancellationToken cancellationToken = default!)
|
||||||
{
|
{
|
||||||
await _workflowTemplateManager.EditTemplateVersion(AuditUserDetails, template, cancellationToken);
|
await _workflowTemplateManager.EditTemplateVersion(AuditUserDetails, template, cancellationToken);
|
||||||
return Ok();
|
return Ok();
|
||||||
|
|||||||
@ -69,17 +69,8 @@ public class AuditEngineCore
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Value converter + comparer
|
var currentValue = property.CurrentValue == null ? null : Convert.ChangeType(property.CurrentValue, property.CurrentValue!.GetType());
|
||||||
var converter = property.Metadata.GetValueConverter(); //todo need a unit test for when a value converter is present on the table.
|
var oldValue = property.OriginalValue == null ? null : Convert.ChangeType(property.OriginalValue, property.OriginalValue!.GetType());
|
||||||
var comparer = property.Metadata.GetValueComparer();
|
|
||||||
|
|
||||||
// Raw CLR values
|
|
||||||
var currentClr = property.CurrentValue;
|
|
||||||
var oldClr = property.OriginalValue;
|
|
||||||
|
|
||||||
// Convert to provider (JSON for Tasks)
|
|
||||||
var currentValue = converter?.ConvertToProvider(currentClr) ?? currentClr;
|
|
||||||
var oldValue = converter?.ConvertToProvider(oldClr) ?? oldClr;
|
|
||||||
|
|
||||||
var isSoftDelete =
|
var isSoftDelete =
|
||||||
propertyInfo.CustomAttributes.SingleOrDefault(x =>
|
propertyInfo.CustomAttributes.SingleOrDefault(x =>
|
||||||
@ -105,10 +96,8 @@ public class AuditEngineCore
|
|||||||
var currentDisplayName = GetNewName(property) ?? GetEnumAsString(currentValue);
|
var currentDisplayName = GetNewName(property) ?? GetEnumAsString(currentValue);
|
||||||
var oldDisplayName = GetOldName(property) ?? GetEnumAsString(oldValue);
|
var oldDisplayName = GetOldName(property) ?? GetEnumAsString(oldValue);
|
||||||
|
|
||||||
// Compare using EF’s own comparer if available
|
var valuesMatch = (currentValue == null && oldValue == null) ||
|
||||||
var valuesMatch = comparer != null
|
(currentValue != null && currentValue.Equals(oldValue));
|
||||||
? comparer.Equals(currentClr, oldClr)
|
|
||||||
: Equals(currentValue, oldValue);
|
|
||||||
|
|
||||||
if (isRedacted)
|
if (isRedacted)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -165,9 +165,7 @@ public class WorkflowTemplateRepository : RepositoryBase, IWorkflowTemplateRepos
|
|||||||
|
|
||||||
public IQueryable<e_suite.Database.Core.Tables.Workflow.WorkflowVersion> GetWorkflowVersions()
|
public IQueryable<e_suite.Database.Core.Tables.Workflow.WorkflowVersion> GetWorkflowVersions()
|
||||||
{
|
{
|
||||||
return DatabaseDbContext.WorkflowVersions
|
return DatabaseDbContext.WorkflowVersions.Include( x => x.Domain);
|
||||||
.Include( x => x.Domain)
|
|
||||||
.Include( x => x.Workflow);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task EditWorkflowVersionAsync(AuditUserDetails auditUserDetails, e_suite.Database.Core.Tables.Workflow.WorkflowVersion workflowVersion, CancellationToken cancellationToken)
|
public async Task EditWorkflowVersionAsync(AuditUserDetails auditUserDetails, e_suite.Database.Core.Tables.Workflow.WorkflowVersion workflowVersion, CancellationToken cancellationToken)
|
||||||
|
|||||||
@ -92,7 +92,7 @@ public class WorkflowTemplateManager : IWorkflowTemplateManager
|
|||||||
|
|
||||||
public async Task EditTemplateVersion(
|
public async Task EditTemplateVersion(
|
||||||
AuditUserDetails auditUserDetails,
|
AuditUserDetails auditUserDetails,
|
||||||
GetWorkflowTemplateVersion template,
|
EditWorkflowTemplateVersion template,
|
||||||
CancellationToken cancellationToken
|
CancellationToken cancellationToken
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@ -107,7 +107,6 @@ public class WorkflowTemplateManager : IWorkflowTemplateManager
|
|||||||
version.Deleted = false;
|
version.Deleted = false;
|
||||||
version.Version = template.Version+1;
|
version.Version = template.Version+1;
|
||||||
version.Tasks = template.Tasks;
|
version.Tasks = template.Tasks;
|
||||||
version.Workflow.Name = template.WorkflowName;
|
|
||||||
}, cancellationToken);
|
}, cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user