implement action display status collumn
This commit is contained in:
parent
1c60bdf77b
commit
fb9fca2277
|
@ -29,6 +29,11 @@ public class DescriptionStatusEntity extends TenantScopedBaseEntity {
|
|||
private String description;
|
||||
public static final String _description = "description";
|
||||
|
||||
@Column(name = "action", length = DescriptionStatusEntity._nameLength, nullable = true)
|
||||
private String action;
|
||||
public static final String _action = "action";
|
||||
public static final int _actionLength = 250;
|
||||
|
||||
@Column(name = "created_at", nullable = false)
|
||||
private Instant createdAt;
|
||||
public static final String _createdAt = "createdAt";
|
||||
|
@ -74,6 +79,14 @@ public class DescriptionStatusEntity extends TenantScopedBaseEntity {
|
|||
this.createdAt = createdAt;
|
||||
}
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public Instant getUpdatedAt() {
|
||||
return this.updatedAt;
|
||||
}
|
||||
|
|
|
@ -29,6 +29,11 @@ public class PlanStatusEntity extends TenantScopedBaseEntity {
|
|||
private String description;
|
||||
public static final String _description = "description";
|
||||
|
||||
@Column(name = "action", length = PlanStatusEntity._actionLength, nullable = true)
|
||||
private String action;
|
||||
public static final String _action = "action";
|
||||
public static final int _actionLength = 250;
|
||||
|
||||
@Column(name = "created_at", nullable = false)
|
||||
private Instant createdAt;
|
||||
public static final String _createdAt = "createdAt";
|
||||
|
@ -67,6 +72,14 @@ public class PlanStatusEntity extends TenantScopedBaseEntity {
|
|||
public String getDescription() { return this.description; }
|
||||
public void setDescription(String description) { this.description = description;}
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public Instant getCreatedAt() {
|
||||
return this.createdAt;
|
||||
}
|
||||
|
|
|
@ -56,6 +56,7 @@ public class DescriptionStatusBuilder extends BaseBuilder<DescriptionStatus, Des
|
|||
if (fields.hasField(this.asIndexer(DescriptionStatus._id))) m.setId(d.getId());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._name))) m.setName(d.getName());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._description))) m.setDescription(d.getDescription());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._action))) m.setAction(d.getAction());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._updatedAt))) m.setUpdateAt(d.getUpdatedAt());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._createdAt))) m.setCreatedAt(d.getCreatedAt());
|
||||
if (fields.hasField(this.asIndexer(DescriptionStatus._isActive))) m.setIsActive(d.getIsActive());
|
||||
|
|
|
@ -68,6 +68,8 @@ public class PlanStatusBuilder extends BaseBuilder<PlanStatus, PlanStatusEntity>
|
|||
m.setIsActive(d.getIsActive());
|
||||
if (fields.hasField(this.asIndexer(PlanStatus._description)))
|
||||
m.setDescription(d.getDescription());
|
||||
if (fields.hasField(this.asIndexer(PlanStatus._action)))
|
||||
m.setAction(d.getAction());
|
||||
if (fields.hasField(this.asIndexer(PlanStatus._internalStatus)))
|
||||
m.setInternalStatus(d.getInternalStatus());
|
||||
if (fields.hasField(this.asIndexer(PlanStatus._hash)))
|
||||
|
|
|
@ -16,6 +16,9 @@ public class DescriptionStatus {
|
|||
public final static String _description = "description";
|
||||
private String description;
|
||||
|
||||
public static final String _action = "action";
|
||||
private String action;
|
||||
|
||||
public final static String _createdAt = "createdAt";
|
||||
private Instant createdAt;
|
||||
|
||||
|
@ -46,6 +49,14 @@ public class DescriptionStatus {
|
|||
public String getDescription() { return this.description; }
|
||||
public void setDescription(String description) { this.description = description; }
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public Instant getCreatedAt() { return this.createdAt; }
|
||||
public void setCreatedAt(Instant createdAt) { this.createdAt = createdAt; }
|
||||
|
||||
|
|
|
@ -27,6 +27,9 @@ public class DescriptionStatusPersist {
|
|||
private String description;
|
||||
public final static String _description = "description";
|
||||
|
||||
private String action;
|
||||
public static final String _action = "action";
|
||||
|
||||
private org.opencdmp.commons.enums.DescriptionStatus internalStatus;
|
||||
public final static String _internalStatus = "internalStatus";
|
||||
|
||||
|
@ -46,6 +49,14 @@ public class DescriptionStatusPersist {
|
|||
public String getDescription() { return description; }
|
||||
public void setDescription(String description) { this.description = description; }
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public org.opencdmp.commons.enums.DescriptionStatus getInternalStatus() { return internalStatus; }
|
||||
public void setInternalStatus(org.opencdmp.commons.enums.DescriptionStatus internalStatus) { this.internalStatus = internalStatus; }
|
||||
|
||||
|
@ -93,6 +104,10 @@ public class DescriptionStatusPersist {
|
|||
.iff(() -> !this.isEmpty(item.getName()))
|
||||
.must(() -> this.lessEqualLength(item.getName(), DescriptionStatusEntity._nameLength))
|
||||
.failOn(DescriptionStatusPersist._name).failWith(this.messageSource.getMessage("Validation_Required", new Object[]{DescriptionStatusPersist._name}, LocaleContextHolder.getLocale())),
|
||||
this.spec()
|
||||
.iff(() -> !this.isEmpty(item.getAction()))
|
||||
.must(() -> this.lessEqualLength(item.getAction(), DescriptionStatusEntity._actionLength))
|
||||
.failOn(DescriptionStatusPersist._action).failWith(this.messageSource.getMessage("Validation_Required", new Object[]{DescriptionStatusPersist._action}, LocaleContextHolder.getLocale())),
|
||||
this.spec()
|
||||
.iff(() -> item.getInternalStatus() == org.opencdmp.commons.enums.DescriptionStatus.Finalized)
|
||||
.must(() -> !this.isNull(item.getDefinition()))
|
||||
|
|
|
@ -26,6 +26,9 @@ public class PlanStatusPersist {
|
|||
private String description;
|
||||
public static final String _description = "description";
|
||||
|
||||
private String action;
|
||||
public static final String _action = "action";
|
||||
|
||||
private org.opencdmp.commons.enums.PlanStatus internalStatus;
|
||||
public static final String _internalStatus = "internalStatus";
|
||||
|
||||
|
@ -53,6 +56,14 @@ public class PlanStatusPersist {
|
|||
|
||||
public void setDescription(String description) { this.description = description; }
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public org.opencdmp.commons.enums.PlanStatus getInternalStatus() { return this.internalStatus; }
|
||||
public void setInternalStatus(org.opencdmp.commons.enums.PlanStatus internalStatus) { this.internalStatus = internalStatus; }
|
||||
|
||||
|
@ -105,6 +116,10 @@ public class PlanStatusPersist {
|
|||
.iff(() -> !this.isEmpty(item.getName()))
|
||||
.must(() -> this.lessEqualLength(item.getName(), PlanStatusEntity._nameLength))
|
||||
.failOn(org.opencdmp.model.persist.planstatus.PlanStatusPersist._name).failWith(this.messageSource.getMessage("Validation_MaxLength", new Object[]{org.opencdmp.model.persist.planstatus.PlanStatusPersist._name}, LocaleContextHolder.getLocale())),
|
||||
this.spec()
|
||||
.iff(() -> !this.isEmpty(item.getAction()))
|
||||
.must(() -> this.lessEqualLength(item.getAction(), PlanStatusEntity._actionLength))
|
||||
.failOn(PlanStatusPersist._action).failWith(this.messageSource.getMessage("Validation_MaxLength", new Object[]{org.opencdmp.model.persist.planstatus.PlanStatusPersist._action}, LocaleContextHolder.getLocale())),
|
||||
this.spec()
|
||||
.iff(() -> item.getInternalStatus() == org.opencdmp.commons.enums.PlanStatus.Finalized)
|
||||
.must(() -> !this.isNull(item.getDefinition()))
|
||||
|
|
|
@ -16,6 +16,9 @@ public class PlanStatus {
|
|||
public final static String _description = "description";
|
||||
private String description;
|
||||
|
||||
public static final String _action = "action";
|
||||
private String action;
|
||||
|
||||
public final static String _createdAt = "createdAt";
|
||||
private Instant createdAt;
|
||||
|
||||
|
@ -61,6 +64,14 @@ public class PlanStatus {
|
|||
|
||||
public void setDescription(String description) { this.description = description; }
|
||||
|
||||
public String getAction() {
|
||||
return action;
|
||||
}
|
||||
|
||||
public void setAction(String action) {
|
||||
this.action = action;
|
||||
}
|
||||
|
||||
public PlanStatusDefinition getDefinition() {
|
||||
return this.definition;
|
||||
}
|
||||
|
|
|
@ -188,6 +188,8 @@ public class DescriptionStatusQuery extends QueryBase<DescriptionStatusEntity> {
|
|||
return DescriptionStatusEntity._name;
|
||||
else if (item.match(DescriptionStatus._description))
|
||||
return DescriptionStatusEntity._description;
|
||||
else if (item.match(DescriptionStatus._action))
|
||||
return DescriptionStatusEntity._action;
|
||||
else if (item.match(DescriptionStatus._createdAt))
|
||||
return DescriptionStatusEntity._createdAt;
|
||||
else if (item.match(DescriptionStatus._updatedAt))
|
||||
|
@ -210,6 +212,7 @@ public class DescriptionStatusQuery extends QueryBase<DescriptionStatusEntity> {
|
|||
item.setId(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._id, UUID.class));
|
||||
item.setName(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._name, String.class));
|
||||
item.setDescription(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._description, String.class));
|
||||
item.setAction(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._action, String.class));
|
||||
item.setTenantId(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._tenantId, UUID.class));
|
||||
item.setCreatedAt(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._createdAt, Instant.class));
|
||||
item.setUpdatedAt(QueryBase.convertSafe(tuple, columns, DescriptionStatusEntity._updatedAt, Instant.class));
|
||||
|
|
|
@ -187,6 +187,8 @@ public class PlanStatusQuery extends QueryBase<PlanStatusEntity> {
|
|||
return PlanStatusEntity._description;
|
||||
else if (item.match(PlanStatus._name))
|
||||
return PlanStatusEntity._name;
|
||||
else if (item.match(PlanStatus._action))
|
||||
return PlanStatusEntity._action;
|
||||
else if (item.match(PlanStatus._internalStatus))
|
||||
return PlanStatusEntity._internalStatus;
|
||||
else if (item.prefix(PlanStatus._definition))
|
||||
|
@ -211,6 +213,7 @@ public class PlanStatusQuery extends QueryBase<PlanStatusEntity> {
|
|||
item.setDescription(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._description, String.class));
|
||||
item.setDefinition(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._definition, String.class));
|
||||
item.setName(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._name, String.class));
|
||||
item.setAction(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._action, String.class));
|
||||
item.setInternalStatus(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._internalStatus, org.opencdmp.commons.enums.PlanStatus.class));
|
||||
item.setCreatedAt(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._createdAt, Instant.class));
|
||||
item.setUpdatedAt(QueryBase.convertSafe(tuple, columns, PlanStatusEntity._updatedAt, Instant.class));
|
||||
|
|
|
@ -100,6 +100,7 @@ public class DescriptionStatusServiceImpl implements DescriptionStatusService {
|
|||
|
||||
data.setName(model.getName());
|
||||
data.setDescription(model.getDescription());
|
||||
data.setAction(model.getAction());
|
||||
data.setInternalStatus(model.getInternalStatus());
|
||||
data.setDefinition(this.xmlHandlingService.toXml(this.buildDescriptionStatusDefinitionEntity(model.getDefinition())));
|
||||
data.setUpdatedAt(Instant.now());
|
||||
|
@ -165,7 +166,7 @@ public class DescriptionStatusServiceImpl implements DescriptionStatusService {
|
|||
List<DescriptionWorkflowDefinitionTransitionEntity> availableTransitions = definition.getStatusTransitions().stream().filter(x -> x.getFromStatusId().equals(description.getStatusId())).collect(Collectors.toList());
|
||||
if (!this.conventionService.isListNullOrEmpty(availableTransitions)){
|
||||
DescriptionStatusQuery query = this.queryFactory.query(DescriptionStatusQuery.class).authorize(AuthorizationFlags.AllExceptPublic).isActive(IsActive.Active).ids(availableTransitions.stream().map(DescriptionWorkflowDefinitionTransitionEntity::getToStatusId).distinct().toList());
|
||||
FieldSet fieldSet = new BaseFieldSet().ensure(DescriptionStatus._id).ensure(DescriptionStatus._name).ensure(DescriptionStatus._internalStatus);
|
||||
FieldSet fieldSet = new BaseFieldSet().ensure(DescriptionStatus._id).ensure(DescriptionStatus._name).ensure(DescriptionStatus._action).ensure(DescriptionStatus._internalStatus);
|
||||
return this.builderFactory.builder(DescriptionStatusBuilder.class).authorize(AuthorizationFlags.AllExceptPublic).build(fieldSet, query.collectAs(fieldSet));
|
||||
}
|
||||
|
||||
|
|
|
@ -31,7 +31,6 @@ import org.opencdmp.errorcode.ErrorThesaurusProperties;
|
|||
import org.opencdmp.event.EventBroker;
|
||||
import org.opencdmp.model.builder.planstatus.PlanStatusBuilder;
|
||||
import org.opencdmp.model.deleter.PlanStatusDeleter;
|
||||
import org.opencdmp.model.descriptionstatus.DescriptionStatus;
|
||||
import org.opencdmp.model.persist.planstatus.PlanStatusDefinitionAuthorizationItemPersist;
|
||||
import org.opencdmp.model.persist.planstatus.PlanStatusDefinitionAuthorizationPersist;
|
||||
import org.opencdmp.model.persist.planstatus.PlanStatusDefinitionPersist;
|
||||
|
@ -104,6 +103,7 @@ public class PlanStatusServiceImpl implements PlanStatusService {
|
|||
|
||||
data.setName(model.getName());
|
||||
data.setDescription(model.getDescription());
|
||||
data.setAction(model.getAction());
|
||||
data.setInternalStatus(model.getInternalStatus());
|
||||
data.setDefinition(this.xmlHandlingService.toXml(this.buildPlanStatusDefinitionEntity(model.getDefinition())));
|
||||
data.setUpdatedAt(Instant.now());
|
||||
|
@ -175,7 +175,7 @@ public class PlanStatusServiceImpl implements PlanStatusService {
|
|||
List<PlanWorkflowDefinitionTransitionEntity> availableTransitions = definition.getStatusTransitions().stream().filter(x -> x.getFromStatusId().equals(plan.getStatusId())).collect(Collectors.toList());
|
||||
if (!this.conventionService.isListNullOrEmpty(availableTransitions)){
|
||||
PlanStatusQuery query = this.queryFactory.query(PlanStatusQuery.class).authorize(AuthorizationFlags.AllExceptPublic).isActives(IsActive.Active).ids(availableTransitions.stream().map(PlanWorkflowDefinitionTransitionEntity::getToStatusId).distinct().toList());
|
||||
FieldSet fieldSet = new BaseFieldSet().ensure(DescriptionStatus._id).ensure(DescriptionStatus._name).ensure(DescriptionStatus._internalStatus);
|
||||
FieldSet fieldSet = new BaseFieldSet().ensure(PlanStatus._id).ensure(PlanStatus._name).ensure(PlanStatus._action).ensure(PlanStatus._internalStatus);
|
||||
return this.builderFactory.builder(PlanStatusBuilder.class).authorize(AuthorizationFlags.AllExceptPublic).build(fieldSet, query.collectAs(fieldSet));
|
||||
}
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@ import { DescriptionStatusDefinition } from "./description-status";
|
|||
export interface DescriptionStatusPersist extends BaseEntityPersist {
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: DescriptionStatusEnum;
|
||||
definition: DescriptionStatusDefinition;
|
||||
}
|
|
@ -7,6 +7,7 @@ import { BaseEntity } from "@common/base/base-entity.model";
|
|||
export interface DescriptionStatus extends BaseEntity{
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: DescriptionStatusEnum;
|
||||
definition: DescriptionStatusDefinition;
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import { PlanStatusDefinition } from "./plan-status";
|
|||
export interface PlanStatusPersist extends BaseEntityPersist {
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: PlanStatusEnum;
|
||||
definition: PlanStatusDefinition;
|
||||
}
|
|
@ -7,6 +7,7 @@ import { BaseEntity } from "@common/base/base-entity.model";
|
|||
export interface PlanStatus extends BaseEntity{
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: PlanStatusEnum;
|
||||
definition: PlanStatusDefinition;
|
||||
}
|
||||
|
|
|
@ -44,6 +44,14 @@
|
|||
<mat-error *ngIf="formGroup.controls.internalStatus.hasError('backendError')">{{formGroup.controls.internalStatus.getError('backendError').message}}</mat-error>
|
||||
</mat-form-field>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<mat-form-field class="w-100">
|
||||
<mat-label>{{'DESCRIPTION-STATUS-EDITOR.FIELDS.ACTION' | translate}}</mat-label>
|
||||
<input matInput type="text" name="action" [formControl]="formGroup.controls.action">
|
||||
<mat-error *ngIf="formGroup.controls.action.hasError('backendError')">{{formGroup.controls.action.getError('backendError').message}}</mat-error>
|
||||
<mat-error *ngIf="formGroup.controls.action.hasError('required')">{{'GENERAL.VALIDATION.REQUIRED' | translate}}</mat-error>
|
||||
</mat-form-field>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<h3>{{'DESCRIPTION-STATUS-EDITOR.FIELDS.DESCRIPTION' | translate}}</h3>
|
||||
<div class="col-12">
|
||||
|
|
|
@ -13,6 +13,7 @@ import { Guid } from "@common/types/guid";
|
|||
export class DescriptionStatusEditorModel extends BaseEditorModel implements DescriptionStatusPersist {
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: DescriptionStatusEnum;
|
||||
definition: DescriptionStatusDefinition;
|
||||
|
||||
|
@ -21,6 +22,7 @@ export class DescriptionStatusEditorModel extends BaseEditorModel implements Des
|
|||
super.fromModel(item);
|
||||
this.name = item?.name;
|
||||
this.description = item?.description;
|
||||
this.action = item?.action
|
||||
this.internalStatus = item?.internalStatus;
|
||||
this.definition = item?.definition;
|
||||
}
|
||||
|
@ -34,6 +36,7 @@ export class DescriptionStatusEditorModel extends BaseEditorModel implements Des
|
|||
id: [{ value: this.id, disabled }, context.getValidation('id').validators],
|
||||
name: [{value: this.name, disabled}, context.getValidation('name').validators],
|
||||
description: [{value: this.description, disabled}, context.getValidation('description').validators],
|
||||
action: [{value: this.action, disabled}, context.getValidation('action').validators],
|
||||
internalStatus: [{value: this.internalStatus, disabled}, context.getValidation('internalStatus').validators],
|
||||
hash: [{ value: this.hash, disabled: disabled }, context.getValidation('hash').validators],
|
||||
definition: this.buildDefinitionForm({context, disabled}),
|
||||
|
@ -70,6 +73,7 @@ export class DescriptionStatusEditorModel extends BaseEditorModel implements Des
|
|||
baseValidationArray.push({ key: 'id', validators: [BackendErrorValidator(this.validationErrorModel, 'id')] });
|
||||
baseValidationArray.push({ key: 'name', validators: [Validators.required, BackendErrorValidator(this.validationErrorModel, 'name')] });
|
||||
baseValidationArray.push({ key: 'description', validators: [BackendErrorValidator(this.validationErrorModel, 'description')] });
|
||||
baseValidationArray.push({ key: 'action', validators: [BackendErrorValidator(this.validationErrorModel, 'action')] });
|
||||
baseValidationArray.push({ key: 'internalStatus', validators: [BackendErrorValidator(this.validationErrorModel, 'internalStatus')] });
|
||||
baseValidationArray.push({ key: 'hash', validators: [] });
|
||||
baseValidationArray.push({ key: 'definition', validators: [BackendErrorValidator(this.validationErrorModel, 'definition')] });
|
||||
|
|
|
@ -20,6 +20,7 @@ export class DescriptionStatusEditorResolver extends BaseEditorResolver{
|
|||
nameof<DescriptionStatus>(x => x.id),
|
||||
nameof<DescriptionStatus>(x => x.name),
|
||||
nameof<DescriptionStatus>(x => x.description),
|
||||
nameof<DescriptionStatus>(x => x.action),
|
||||
nameof<DescriptionStatus>(x => x.internalStatus),
|
||||
nameof<DescriptionStatus>(x => x.definition),
|
||||
[nameof<DescriptionStatus>(x => x.definition), nameof<DescriptionStatusDefinition>(x => x.authorization)].join('.'),
|
||||
|
|
|
@ -20,6 +20,7 @@ export class PlanStatusEditorResolver extends BaseEditorResolver{
|
|||
nameof<PlanStatus>(x => x.id),
|
||||
nameof<PlanStatus>(x => x.name),
|
||||
nameof<PlanStatus>(x => x.description),
|
||||
nameof<PlanStatus>(x => x.action),
|
||||
nameof<PlanStatus>(x => x.internalStatus),
|
||||
nameof<PlanStatus>(x => x.definition),
|
||||
[nameof<PlanStatus>(x => x.definition), nameof<PlanStatusDefinition>(x => x.authorization)].join('.'),
|
||||
|
|
|
@ -44,6 +44,14 @@
|
|||
<mat-error *ngIf="formGroup.controls.internalStatus.hasError('backendError')">{{formGroup.controls.internalStatus.getError('backendError').message}}</mat-error>
|
||||
</mat-form-field>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<mat-form-field class="w-100">
|
||||
<mat-label>{{'PLAN-STATUS-EDITOR.FIELDS.ACTION' | translate}}</mat-label>
|
||||
<input matInput type="text" name="action" [formControl]="formGroup.controls.action">
|
||||
<mat-error *ngIf="formGroup.controls.action.hasError('backendError')">{{formGroup.controls.action.getError('backendError').message}}</mat-error>
|
||||
<mat-error *ngIf="formGroup.controls.action.hasError('required')">{{'GENERAL.VALIDATION.REQUIRED' | translate}}</mat-error>
|
||||
</mat-form-field>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<h3>{{'PLAN-STATUS-EDITOR.FIELDS.DESCRIPTION' | translate}}</h3>
|
||||
<div class="col-12">
|
||||
|
|
|
@ -14,6 +14,7 @@ import { Guid } from "@common/types/guid";
|
|||
export class PlanStatusEditorModel extends BaseEditorModel implements PlanStatusPersist {
|
||||
name: string;
|
||||
description: string;
|
||||
action: string;
|
||||
internalStatus: PlanStatusEnum;
|
||||
definition: PlanStatusDefinition;
|
||||
|
||||
|
@ -22,6 +23,7 @@ export class PlanStatusEditorModel extends BaseEditorModel implements PlanStatus
|
|||
super.fromModel(item);
|
||||
this.name = item?.name;
|
||||
this.description = item?.description;
|
||||
this.action = item?.action;
|
||||
this.internalStatus = item?.internalStatus;
|
||||
this.definition = item?.definition;
|
||||
}
|
||||
|
@ -35,6 +37,7 @@ export class PlanStatusEditorModel extends BaseEditorModel implements PlanStatus
|
|||
id: [{ value: this.id, disabled }, context.getValidation('id').validators],
|
||||
name: [{value: this.name, disabled}, context.getValidation('name').validators],
|
||||
description: [{value: this.description, disabled}, context.getValidation('description').validators],
|
||||
action: [{value: this.action, disabled}, context.getValidation('action').validators],
|
||||
internalStatus: [{value: this.internalStatus, disabled}, context.getValidation('internalStatus').validators],
|
||||
hash: [{ value: this.hash, disabled: disabled }, context.getValidation('hash').validators],
|
||||
definition: this.buildDefinitionForm({context, disabled}),
|
||||
|
@ -71,6 +74,7 @@ export class PlanStatusEditorModel extends BaseEditorModel implements PlanStatus
|
|||
baseValidationArray.push({ key: 'id', validators: [BackendErrorValidator(this.validationErrorModel, 'id')] });
|
||||
baseValidationArray.push({ key: 'name', validators: [Validators.required, BackendErrorValidator(this.validationErrorModel, 'name')] });
|
||||
baseValidationArray.push({ key: 'description', validators: [BackendErrorValidator(this.validationErrorModel, 'description')] });
|
||||
baseValidationArray.push({ key: 'action', validators: [BackendErrorValidator(this.validationErrorModel, 'action')] });
|
||||
baseValidationArray.push({ key: 'internalStatus', validators: [BackendErrorValidator(this.validationErrorModel, 'internalStatus')] });
|
||||
baseValidationArray.push({ key: 'hash', validators: [] });
|
||||
baseValidationArray.push({ key: 'definition', validators: [BackendErrorValidator(this.validationErrorModel, 'definition')] });
|
||||
|
|
|
@ -68,7 +68,7 @@
|
|||
<button [disabled]="saving" mat-menu-item (click)="saveAndContinue()" type="button">{{ 'DESCRIPTION-EDITOR.ACTIONS.SAVE-AND-CONTINUE' | translate }}</button>
|
||||
</mat-menu>
|
||||
<ng-container *ngIf="availableStatusesTransitions && availableStatusesTransitions.length > 0 && !isLocked && item.id && isNotFinalizedPlan()">
|
||||
<button *ngFor='let status of availableStatusesTransitions' [disabled]="saving" mat-button class="rounded-btn neutral mr-2" type="button" (click)="persistStatus(status)">{{ status.name }}</button>
|
||||
<button *ngFor='let status of availableStatusesTransitions' [disabled]="saving" mat-button class="rounded-btn neutral mr-2" type="button" (click)="persistStatus(status)">{{ status.action?.length > 0 ? status.action : status.name }}</button>
|
||||
</ng-container>
|
||||
<button [disabled]="saving" *ngIf="isLocked" mat-button disabled class="rounded-btn neutral cursor-default" type="button">{{ 'PLAN-OVERVIEW.LOCKED' | translate}}</button>
|
||||
</div>
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
</button>
|
||||
</div>
|
||||
<div class="col-auto pl-0">
|
||||
<p class="mb-0 pl-2 frame-txt">{{ status.name }}</p>
|
||||
<p class="mb-0 pl-2 frame-txt">{{ status.action?.length > 0 ? status.action : status.name }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center">
|
||||
|
|
|
@ -193,7 +193,7 @@
|
|||
</button>
|
||||
</div>
|
||||
<div class="col-auto pl-0">
|
||||
<p class="mb-0 pl-2 frame-txt">{{ status.name }}</p>
|
||||
<p class="mb-0 pl-2 frame-txt">{{ status.action?.length > 0 ? status.action : status.name }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center">
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
</mat-menu>
|
||||
</div>
|
||||
<div *ngIf="availableStatusesTransitions && availableStatusesTransitions.length > 0 && !isLocked && !isNew && hasNotDoi()" class="col-auto d-flex align-items-center" [matTooltipDisabled]="formGroup.pristine" matTooltip="{{'PLAN-EDITOR.ACTIONS.FINALIZE.CAN-NOT-FINALIZE' | translate}}">
|
||||
<button *ngFor='let status of availableStatusesTransitions' [disabled]="saving || !formGroup.pristine" mat-button class="rounded-btn primary-inverted mr-2" type="button" (click)="persistStatus(status)">{{ status.name}}</button>
|
||||
<button *ngFor='let status of availableStatusesTransitions' [disabled]="saving || !formGroup.pristine" mat-button class="rounded-btn primary-inverted mr-2" type="button" (click)="persistStatus(status)">{{ status.action?.length > 0 ? status.action : status.name }}</button>
|
||||
</div>
|
||||
<div *ngIf="isLocked" class="col-auto d-flex align-items-center">
|
||||
<button class="col-auto d-flex align-items-center" [disabled]="saving" mat-button class="rounded-btn primary-inverted mr-2" type="button">{{ 'PLAN-EDITOR.ACTIONS.LOCKED' | translate}}</button>
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -908,6 +908,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -960,6 +961,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
|
@ -910,6 +910,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
@ -953,6 +954,7 @@
|
|||
"FIELDS": {
|
||||
"NAME": "Name",
|
||||
"DESCRIPTION": "Description",
|
||||
"ACTION": "Action",
|
||||
"DEFINITION": "Definition",
|
||||
"INTERNAL-STATUS": "Internal Status",
|
||||
"AUTHORIZATION": "Authorization",
|
||||
|
|
Loading…
Reference in New Issue