Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
PERFORMA_REPLICA
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Muhammad Usman
PERFORMA_REPLICA
Commits
94fda9f2
Commit
94fda9f2
authored
Nov 22, 2019
by
GD-A-150752
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
edit-workflow-template 90%
parent
7d463ed7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
187 additions
and
104 deletions
+187
-104
app.module.ts
frontend/angular/src/app/app.module.ts
+0
-2
app.service.ts
frontend/angular/src/app/app.service.ts
+14
-0
edit-message-template.component.html
...dit-message-template/edit-message-template.component.html
+27
-32
edit-message-template.component.ts
.../edit-message-template/edit-message-template.component.ts
+49
-11
edit-message-template.service.ts
...ts/edit-message-template/edit-message-template.service.ts
+0
-29
edit-workflow-template.component.html
...t-workflow-template/edit-workflow-template.component.html
+0
-0
edit-workflow-template.component.scss
...t-workflow-template/edit-workflow-template.component.scss
+6
-0
edit-workflow-template.component.ts
...dit-workflow-template/edit-workflow-template.component.ts
+82
-10
edit-workflow-template.service.ts
.../edit-workflow-template/edit-workflow-template.service.ts
+3
-20
constants.ts
frontend/angular/src/app/constants.ts
+6
-0
No files found.
frontend/angular/src/app/app.module.ts
View file @
94fda9f2
...
...
@@ -14,7 +14,6 @@ import { AdminPortalLayoutService } from './components/admin-portal/admin-portal
import
{
ApplicantPortalLayoutComponent
}
from
'./components/applicant-portal/applicant-portal-layout/applicant-portal-layout.component'
;
import
{
ApplicantPortalLayoutService
}
from
'./components/applicant-portal/applicant-portal-layout/applicant-portal-layout.service'
;
import
{
EditMessageTemplateComponent
}
from
'./components/edit-message-template/edit-message-template.component'
;
import
{
EditMessageTemplateService
}
from
'./components/edit-message-template/edit-message-template.service'
;
import
{
EditWorkflowTemplateComponent
}
from
'./components/edit-workflow-template/edit-workflow-template.component'
;
import
{
EditWorkflowTemplateService
}
from
'./components/edit-workflow-template/edit-workflow-template.service'
;
import
{
ErrorMessageComponent
}
from
'./components/error-message/error-message.component'
;
...
...
@@ -55,7 +54,6 @@ import { OneITModule } from './oneit/oneit.module';
AdminPortalLayoutService
,
ApplicantPortalLayoutService
,
AppService
,
EditMessageTemplateService
,
EditWorkflowTemplateService
],
bootstrap
:
[
AppComponent
]
...
...
frontend/angular/src/app/app.service.ts
View file @
94fda9f2
import
{
Injectable
}
from
'@angular/core'
;
import
{
Observable
}
from
'rxjs'
;
import
{
MessageTemplateModel
}
from
"./models/messageTemplate.model"
;
import
{
PlaceholderOptionsEnum
}
from
'./models/placeholderOptions.enum'
;
import
{
TemplateTypeEnum
}
from
'./models/templateType.enum'
;
import
{
EnumService
}
from
'./oneit/services/enum.service'
;
...
...
@@ -39,4 +40,17 @@ export class AppService {
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
)
);
}
getMessageTemplateByID
(
id
,
assocs
):
Observable
<
MessageTemplateModel
>
{
return
this
.
searchService
.
getObjectById
(
'MessageTemplates'
,
id
,
assocs
)
.
map
(
data
=>
{
const
objs
=
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
);
if
(
objs
&&
objs
.
length
>
0
)
{
return
objs
[
0
];
}
}
);
}
}
frontend/angular/src/app/components/edit-message-template/edit-message-template.component.html
View file @
94fda9f2
...
...
@@ -6,54 +6,43 @@
</div>
<div
class=
"ui-g form-group"
>
<div
class=
"ui-g-12 ui-md-12"
>
<div
class=
"ui-g form-group"
>
<div
class=
"ui-g-12 ui-md-4 s-a-center"
>
<label>
Message Template
</label>
</div>
<div
class=
"ui-g-12 ui-md-4 ui-fluid"
>
<div
class=
"form-group row"
>
<div
class=
"col-md-6"
>
<label
for=
"MessageTemplate{{messageTemplate.ObjectID}}"
>
Message Template
</label>
<input
[(
ngModel
)]="
messageTemplate
.
TemplateName
"
name=
"MessageTemplate{{messageTemplate.ObjectID}}"
fieldLabel=
"Message Template"
type=
"text"
[
disabled
]="
showLoader
"
pInputText
class=
"form-control ui-inputtext"
id=
"MessageTemplate{{messageTemplate.ObjectID}}"
>
</div>
</div>
<div
class=
"ui-g form-group"
>
<div
class=
"ui-g-12 ui-md-4"
>
<label>
Message Template Type
</label>
fieldLabel=
"Message Template"
type=
"text"
[
disabled
]="
showLoader
"
class=
"form-control"
id=
"MessageTemplate{{messageTemplate.ObjectID}}"
>
</div>
<div
class=
"
ui-g-12 ui-md-4 ui-fluid
"
<div
class=
"
col-md-6
"
*
ngIf=
"this.messageTemplateTypes.length && this.messageTemplate && this.messageTemplate.TemplateType"
>
<label
for=
"select"
>
Message Template Type
</label>
<app-select-2
[
data
]="
messageTemplateTypes
"
[
value
]="
templateTypeId
"
fieldLabel=
"Description"
fieldLabel=
"Description"
id=
"select"
(
valChange
)="
storeMessageContent
($
event
)"
>
</app-select-2>
</div>
</div>
<div
class=
"ui-g form-group"
*
ngIf=
"emailTemplateType()"
>
<div
class=
"ui-g-12 ui-md-4 s-a-center"
>
<label>
Subject
</label>
</div>
<div
class=
"ui-g-12 ui-md-4 ui-fluid"
>
<div
class=
"form-group row"
>
<div
class=
"col-md-6"
>
<label
for=
"subjectInputId"
>
Subject
</label>
<input
id=
"subjectInputId"
[(
ngModel
)]="
messageTemplate
.
Subject
"
name=
"Subject{{messageTemplate.ObjectID}}"
fieldLabel=
"Subject"
placeholder=
"Subject"
type=
"text"
pInputText
class=
"form-control
ui-inputtext
"
fieldLabel=
"Subject"
placeholder=
"Subject"
type=
"text"
class=
"form-control"
[
disabled
]="
showLoader
"
>
</div>
<div
class=
"ui-g-12 ui-md-4"
*
ngIf=
"subjectPlaceholderOptions.length"
>
<div
class=
"col-md-6"
*
ngIf=
"subjectPlaceholderOptions.length"
>
<label>
Placeholder for Subject
</label>
<app-select-2
[
data
]="
subjectPlaceholderOptions
"
[
value
]="
0
"
fieldLabel=
"Description"
(
valChange
)="
addPlaceholderInSubject
($
event
)"
>
</app-select-2>
</div>
</div>
<div
class=
"ui-g form-group"
>
<div
class=
"ui-g-12 ui-md-4"
>
<label>
Message Content
</label>
</div>
<div
class=
"ui-g-12 ui-md-4"
*
ngIf=
"emailTemplateType()"
>
</div>
<div
class=
"ui-g-12 ui-md-4"
*
ngIf=
"contentPlaceholderOptions.length"
>
<div
class=
"form-group row"
>
<div
class=
"col-md-offset-6 col-md-6"
*
ngIf=
"contentPlaceholderOptions.length"
>
<label>
Placeholder for Content
</label>
<app-select-2
[
data
]="
contentPlaceholderOptions
"
[
value
]="
0
"
fieldLabel=
"Description"
(
valChange
)="
addPlaceholderInMessageContent
($
event
)"
>
...
...
@@ -73,8 +62,9 @@
</p-overlayPanel>
</div>
</div>
<div
class=
"ui-g form-group"
>
<div
class=
"ui-g-12 ui-md-12"
>
<div
class=
"form-group row"
>
<div
class=
"col-md-12"
>
<label>
Message Content
</label>
<p-editor
*
ngIf=
"emailTemplateType()"
[(
ngModel
)]="
messageTemplate
.
MessageContent
"
name=
"MessageContent{{messageTemplate.ObjectID}}"
#
messageContent
...
...
@@ -102,12 +92,17 @@
<div
class=
"ui-g-12 ui-md-12"
>
<div
class=
"text-center form-group"
>
<button
type=
"button"
value=
"Cancel"
class=
"btn btn-primary largeBtn greyBtn"
routerLink=
"/admin/list-message-templates
"
>
Cancel
(
click
)="
cancelClicked
()
"
>
Cancel
</button>
<button
*
ngIf=
"showSaveBtn()"
type=
"button"
value=
"Save"
class=
"btn btn-primary largeBtn"
(
click
)="
saveMessageTemplate
()"
[
disabled
]="
showLoader
"
>
Save
</button>
<button
*
ngIf=
"showSaveIntoAllTemplates()"
type=
"button"
value=
"Save into all templates"
class=
"btn btn-primary largeBtn"
(
click
)="
saveMessageTemplate
()"
[
disabled
]="
showLoader
"
>
Save into all templates
</button>
<button
*
ngIf=
"showSaveCopyBtn()"
type=
"button"
value=
"Save As a Copy"
class=
"btn btn-primary largeBtn"
(
click
)="
saveMessageTemplate
(
true
)"
[
disabled
]="
showLoader
"
>
...
...
frontend/angular/src/app/components/edit-message-template/edit-message-template.component.ts
View file @
94fda9f2
import
{
Component
,
OnIni
t
,
ViewChild
}
from
'@angular/core'
;
import
{
Component
,
EventEmitter
,
Input
,
OnInit
,
Outpu
t
,
ViewChild
}
from
'@angular/core'
;
import
{
NgForm
}
from
'@angular/forms'
;
import
{
ActivatedRoute
,
Params
,
Router
}
from
'@angular/router'
;
import
{
Editor
}
from
'primeng/editor'
;
...
...
@@ -13,7 +13,6 @@ import { SaveService } from '../../oneit/services/save.service';
import
{
UtilsService
}
from
'../../oneit/services/utils.service'
;
import
{
AdminPortalLayoutService
}
from
'../admin-portal/admin-portal-layout/admin-portal-layout.service'
;
import
{
BaseComponent
}
from
'../base/base.component'
;
import
{
EditMessageTemplateService
}
from
'./edit-message-template.service'
;
@
Component
({
selector
:
'app-edit-message-template'
,
...
...
@@ -21,6 +20,10 @@ import { EditMessageTemplateService } from './edit-message-template.service';
})
export
class
EditMessageTemplateComponent
extends
BaseComponent
implements
OnInit
{
@
Input
()
objectID
:
string
;
// tslint:disable-next-line:prefer-output-readonly
@
Output
()
closeModal
:
EventEmitter
<
any
>
=
new
EventEmitter
<
any
>
();
subscriptions
:
Array
<
Subscription
>
=
[];
@
ViewChild
(
'form'
)
form
:
NgForm
;
@
ViewChild
(
'messageContent'
)
messageContentEditor
:
Editor
;
...
...
@@ -50,7 +53,6 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
private
utilsService
:
UtilsService
,
private
saveService
:
SaveService
,
private
appService
:
AppService
,
private
editMessageTemplateService
:
EditMessageTemplateService
,
private
adminPortalLayoutService
:
AdminPortalLayoutService
)
{
super
(
utilsService
);
...
...
@@ -83,7 +85,7 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
.
subscribe
(
data
=>
{
if
(
this
.
created
Exists
())
{
if
(
this
.
already
Exists
())
{
return
;
}
...
...
@@ -93,10 +95,10 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
.
subscribe
(
(
params
:
Params
)
=>
{
if
(
params
.
id
&&
params
.
id
!==
'0'
)
{
if
(
(
params
.
id
&&
params
.
id
!==
'0'
)
||
this
.
templateUpdateFromWorkflow
()
)
{
this
.
editMode
=
true
;
this
.
getMessageTemplateByID
(
params
.
id
);
this
.
getMessageTemplateByID
(
this
.
templateUpdateFromWorkflow
()
?
this
.
objectID
:
params
.
id
);
}
else
{
this
.
messageTemplate
.
HiringTeam
=
this
.
adminPortalLayoutService
.
getHiringTeamID
().
ObjectID
;
...
...
@@ -126,6 +128,11 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
!
this
.
editMode
)
:
false
;
}
showSaveIntoAllTemplates
():
boolean
{
return
!!
this
.
messageTemplate
&&
!!
this
.
messageTemplate
.
ObjectID
&&
(
!
this
.
alreadyExists
()
&&
!
this
.
messageTemplate
.
IsSystemGenerated
&&
!!
this
.
objectID
);
}
showSaveCopyBtn
():
boolean
{
return
this
.
messageTemplate
&&
this
.
messageTemplate
.
ObjectID
?
(
!!
this
.
messageTemplate
.
HiringTeam
)
:
false
;
...
...
@@ -299,10 +306,11 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
this
.
utilsService
.
resetCounter
();
this
.
utilsService
.
clearErrorMessages
();
this
.
subscriptions
.
push
(
this
.
editMessageTemplate
Service
.
getMessageTemplateByID
(
id
,
[])
this
.
subscriptions
.
push
(
this
.
app
Service
.
getMessageTemplateByID
(
id
,
[])
.
subscribe
(
data
=>
{
this
.
messageTemplate
=
data
;
this
.
updatedObjs
[
this
.
messageTemplate
.
ObjectID
]
=
this
.
messageTemplate
;
this
.
templateTypeId
=
this
.
messageTemplateTypes
.
find
(
elem
=>
elem
.
Value
===
this
.
messageTemplate
.
TemplateType
.
Value
).
id
;
this
.
showLoader
=
false
;
...
...
@@ -316,6 +324,25 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
);
}
// If new message template is being created from 'EditWorkFlowComponent'
templateCreationFromWorkflow
():
boolean
{
return
this
.
objectID
&&
this
.
objectID
.
indexOf
(
'NEW'
)
!==
-
1
;
}
// If a message template is being updated from 'EditWorkFlowComponent'
templateUpdateFromWorkflow
():
boolean
{
return
this
.
objectID
&&
this
.
objectID
.
indexOf
(
'NEW'
)
===
-
1
;
}
cancelClicked
():
void
{
// If new message template is being created from 'EditWorkFlowComponent'
if
(
this
.
templateCreationFromWorkflow
()
||
this
.
templateUpdateFromWorkflow
())
{
this
.
closeModal
.
emit
(
-
1
);
}
else
{
this
.
router
.
navigate
([
'/admin/list-message-templates'
]);
}
}
saveMessageTemplate
(
saveCopy
=
false
):
void
{
this
.
utilsService
.
clearErrorMessages
();
const
service
=
`svc/
${
saveCopy
?
SERVICES
.
SAVE_MESSAGE_AS_COPY
:
SERVICES
.
SAVE
}
`
;
...
...
@@ -326,9 +353,20 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
this
.
showLoader
=
true
;
this
.
subscriptions
.
push
(
this
.
saveService
.
saveObjects
(
service
,
this
.
createdObjs
,
this
.
updatedObjs
,
this
.
deletedObjs
)
.
subscribe
(
()
=>
{
data
=>
{
this
.
utilsService
.
handleSuccess
();
this
.
router
.
navigate
([
'/admin/list-message-templates'
]);
if
(
this
.
templateCreationFromWorkflow
())
{
let
id
=
this
.
messageTemplate
.
ObjectID
;
if
(
data
.
created
[
id
])
{
id
=
data
.
created
[
id
];
}
this
.
closeModal
.
emit
(
id
);
}
else
if
(
this
.
templateUpdateFromWorkflow
())
{
this
.
closeModal
.
emit
(
this
.
messageTemplate
.
ObjectID
);
}
else
{
this
.
router
.
navigate
([
'/admin/list-message-templates'
]);
}
},
error
=>
{
this
.
showLoader
=
false
;
...
...
@@ -397,8 +435,8 @@ export class EditMessageTemplateComponent extends BaseComponent implements OnIni
},
0
);
}
created
Exists
():
boolean
{
return
Object
.
keys
(
this
.
createdObjs
).
length
>
0
;
already
Exists
():
boolean
{
return
Object
.
keys
(
this
.
createdObjs
).
length
>
0
||
Object
.
keys
(
this
.
updatedObjs
).
length
>
0
;
}
// tslint:disable-next-line:max-file-line-count
...
...
frontend/angular/src/app/components/edit-message-template/edit-message-template.service.ts
deleted
100644 → 0
View file @
7d463ed7
import
{
Injectable
}
from
'@angular/core'
;
import
{
Observable
}
from
'rxjs/Observable'
;
import
{
MessageTemplateModel
}
from
'../../models/messageTemplate.model'
;
import
{
SearchService
}
from
'../../oneit/services/search.service'
;
import
{
UtilsService
}
from
'../../oneit/services/utils.service'
;
@
Injectable
()
export
class
EditMessageTemplateService
{
constructor
(
private
searchService
:
SearchService
,
private
utilsService
:
UtilsService
)
{
}
getMessageTemplateByID
(
id
,
assocs
):
Observable
<
MessageTemplateModel
>
{
return
this
.
searchService
.
getObjectById
(
'MessageTemplates'
,
id
,
assocs
)
.
map
(
data
=>
{
const
objs
=
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
);
if
(
objs
&&
objs
.
length
>
0
)
{
return
objs
[
0
];
}
}
);
}
}
frontend/angular/src/app/components/edit-workflow-template/edit-workflow-template.component.html
View file @
94fda9f2
This diff is collapsed.
Click to expand it.
frontend/angular/src/app/components/edit-workflow-template/edit-workflow-template.component.scss
View file @
94fda9f2
...
...
@@ -51,8 +51,14 @@ p-inputMask {
&
:hover
{
background-color
:
transparent
!
important
;
color
:
#4e5258
!
important
;
}
}
.ui-state-highlight
{
background-color
:
transparent
!
important
;
color
:
#4e5258
!
important
;
}
}
}
...
...
frontend/angular/src/app/components/edit-workflow-template/edit-workflow-template.component.ts
View file @
94fda9f2
...
...
@@ -2,10 +2,11 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import
{
NgForm
}
from
'@angular/forms'
;
import
{
ActivatedRoute
,
Params
,
Router
}
from
'@angular/router'
;
import
{
ConfirmationService
}
from
'primeng/api'
;
import
{
Dialog
}
from
'primeng/dialog'
;
import
{
combineLatest
}
from
'rxjs/observable/combineLatest'
;
import
{
Subscription
}
from
'rxjs/Subscription'
;
import
{
AppService
}
from
'../../app.service'
;
import
{
SERVICES
}
from
'../../constants'
;
import
{
ASSOCS
,
SERVICES
}
from
'../../constants'
;
import
{
MessageTemplateModel
}
from
'../../models/messageTemplate.model'
;
import
{
ResponseActionEnum
}
from
'../../models/responseAction.enum'
;
import
{
StageTypeEnum
}
from
'../../models/stageType.enum'
;
...
...
@@ -29,6 +30,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
subscriptions
:
Array
<
Subscription
>
=
[];
@
ViewChild
(
'form'
)
form
:
NgForm
;
@
ViewChild
(
'messageTemplateDialog'
)
messageTemplateDialog
:
Dialog
;
createdObjs
;
updatedObjs
;
deletedObjs
;
...
...
@@ -46,6 +48,8 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
showLoader
=
false
;
editMode
=
false
;
displayNewMessageTemplate
=
false
;
selectedTemplateID
=
null
;
selectedMessageTemplate
=
null
;
// object id of type WorkflowMessageModel
constructor
(
private
router
:
Router
,
...
...
@@ -327,7 +331,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
}
}
getMessageTemplates
():
void
{
getMessageTemplates
(
callback
=
null
):
void
{
const
sharedMsgParams
=
{
OnlyGlobalTemplate
:
true
,
attribsByName
:
'Autocomplete'
...
...
@@ -347,10 +351,11 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
const
myTemplates
=
response
[
0
].
filter
(
message
=>
message
.
HiringTeam
===
this
.
adminPortalLayoutService
.
getHiringTeamID
().
ObjectID
);
this
.
messageTemplates
=
[...
myTemplates
,
...
response
[
1
]];
const
newTemplate
=
new
MessageTemplateModel
();
newTemplate
.
TemplateName
=
'New Template'
;
newTemplate
.
id
=
'0'
;
this
.
messageTemplates
.
push
(
newTemplate
);
this
.
addNewOptionToMessageTemplate
();
if
(
callback
)
{
// called when a new message template is created
callback
();
}
},
error
=>
{
this
.
utilsService
.
handleError
(
error
);
...
...
@@ -359,11 +364,61 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
);
}
showMessageTemplateDialog
(
$event
):
void
{
addNewOptionToMessageTemplate
():
void
{
const
newTemplate
=
new
MessageTemplateModel
();
newTemplate
.
TemplateName
=
'New Template'
;
newTemplate
.
id
=
'0'
;
this
.
messageTemplates
.
push
(
newTemplate
);
}
showMessageTemplateDialog
(
$event
,
message
:
WorkflowMessageModel
):
void
{
const
template
=
$event
.
value
;
if
(
template
.
id
&&
template
.
id
===
'0'
)
{
// When new template is selected, store it to global variable
this
.
selectedTemplateID
=
'NEW'
;
this
.
displayNewMessageTemplate
=
true
;
this
.
selectedMessageTemplate
=
message
.
ObjectID
;
}
else
{
// When other options from message template are selected, assign global variable to null
this
.
selectedMessageTemplate
=
null
;
}
}
configureMessageTemplate
(
message
:
WorkflowMessageModel
):
void
{
if
(
message
.
MessageTemplate
&&
typeof
message
.
MessageTemplate
!==
'string'
)
{
this
.
selectedTemplateID
=
message
.
MessageTemplate
.
ObjectID
;
this
.
displayNewMessageTemplate
=
true
;
}
}
closeDialog
(
value
):
void
{
if
(
value
===
-
1
)
{
// Cancel button is clicked
}
else
if
(
this
.
selectedTemplateID
===
'NEW'
&&
this
.
selectedMessageTemplate
!==
null
)
{
// When new value is created, assign it to the current WorkFlowMessage
this
.
showLoader
=
true
;
this
.
getMessageTemplates
(()
=>
{
const
found
=
this
.
messageTemplates
.
find
(
elem
=>
elem
.
ObjectID
===
value
);
if
(
found
)
{
this
.
workflow
.
WorkFlowStages
.
forEach
(
wfStage
=>
{
const
messageTemplate
=
wfStage
.
WorkFlowMessages
.
find
(
wfMessage
=>
wfMessage
.
ObjectID
===
this
.
selectedMessageTemplate
);
if
(
messageTemplate
)
{
messageTemplate
.
MessageTemplate
=
found
;
}
});
}
this
.
selectedMessageTemplate
=
null
;
this
.
selectedTemplateID
=
null
;
this
.
showLoader
=
false
;
});
}
this
.
displayNewMessageTemplate
=
false
;
}
populateMessageTemplates
(
template
:
MessageTemplateModel
):
void
{
this
.
messageTemplates
.
splice
(
this
.
messageTemplates
.
length
-
1
,
1
);
this
.
messageTemplates
.
push
(
template
);
}
availableStepTypes
():
Array
<
StepTypeEnum
>
{
...
...
@@ -384,7 +439,7 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
}
stageMessagesCount
(
stage
:
WorkflowStageModel
):
string
{
return
`Message Schedule (
${
stage
.
WorkFlowMessages
.
length
}
)`
;
return
`Message Schedule (
${
(
stage
&&
stage
.
WorkFlowMessages
)
?
stage
.
WorkFlowMessages
.
length
:
0
}
)`
;
}
addStep
(
$event
,
stage
:
WorkflowStageModel
):
void
{
...
...
@@ -494,11 +549,25 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
this
.
utilsService
.
resetCounter
();
this
.
utilsService
.
clearErrorMessages
();
this
.
subscriptions
.
push
(
this
.
editWorkflowTemplateService
.
getWorkflowTemplateByID
(
id
,
[])
const
assoc
=
[
ASSOCS
.
WORKFLOW_STAGE
,
[
ASSOCS
.
WORKFLOW_STAGE
,
ASSOCS
.
WORKFLOW_MESSAGE
].
join
(
'.'
),
[
ASSOCS
.
WORKFLOW_STAGE
,
ASSOCS
.
WORKFLOW_MESSAGE
,
ASSOCS
.
WORKFLOW_STEP
].
join
(
'.'
)];
this
.
subscriptions
.
push
(
this
.
editWorkflowTemplateService
.
getWorkflowTemplateByID
(
id
,
assoc
)
.
subscribe
(
data
=>
{
this
.
workflow
=
data
;
this
.
updatedObjs
[
this
.
workflow
.
ObjectID
]
=
this
.
workflow
;
this
.
utilsService
.
addObjsToJSONByObjectID
(
this
.
updatedObjs
,
this
.
workflow
.
WorkFlowStages
);
this
.
workflow
.
WorkFlowStages
.
forEach
(
stage
=>
{
if
(
stage
.
WorkFlowMessages
)
{
this
.
utilsService
.
addObjsToJSONByObjectID
(
this
.
updatedObjs
,
stage
.
WorkFlowMessages
);
}
if
(
stage
.
Steps
)
{
this
.
utilsService
.
addObjsToJSONByObjectID
(
this
.
updatedObjs
,
stage
.
Steps
);
}
});
this
.
reOrderStages
(
this
.
filterStages
(
true
,
true
,
true
));
this
.
showLogs
();
this
.
showLoader
=
false
;
},
error
=>
{
...
...
@@ -544,7 +613,10 @@ export class EditWorkflowTemplateComponent extends BaseComponent implements OnIn
}
showLogs
():
void
{
console
.
log
(
this
.
workflow
.
WorkFlowStages
);
console
.
log
(
this
.
workflow
);
console
.
log
(
this
.
createdObjs
);
console
.
log
(
this
.
updatedObjs
);
console
.
log
(
this
.
deletedObjs
);
}
alreadyExists
():
boolean
{
...
...
frontend/angular/src/app/components/edit-workflow-template/edit-workflow-template.service.ts
View file @
94fda9f2
import
{
Injectable
}
from
'@angular/core'
;
import
{
Observable
}
from
'rxjs/Observable'
;
import
{
SERVICES
}
from
"../../constants"
;
import
{
MessageTemplateModel
}
from
"../../models/messageTemplate.model"
;
import
{
SERVICES
}
from
'../../constants'
;
import
{
MessageTemplateModel
}
from
'../../models/messageTemplate.model'
;
import
{
SearchService
}
from
'../../oneit/services/search.service'
;
import
{
UtilsService
}
from
'../../oneit/services/utils.service'
;
...
...
@@ -21,25 +21,8 @@ export class EditWorkflowTemplateService {
);
}
getmessagetemplate_withdrawsForAutocomplete
(
searchTerm
,
assocs
):
Observable
<
any
>
{
return
this
.
searchService
.
getObjects
(
''
,
'All'
,
{},
assocs
,
null
,
null
,
null
,
null
)
.
map
(
data
=>
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
)
);
}
getmessagetemplatesForAutocomplete
(
searchTerm
,
assocs
):
Observable
<
any
>
{
return
this
.
searchService
.
getObjects
(
''
,
'All'
,
{},
assocs
,
null
,
null
,
null
,
null
)
.
map
(
data
=>
{
return
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
);
}
);
}
getWorkflowTemplateByID
(
id
,
assocs
):
Observable
<
any
>
{
return
this
.
searchService
.
getObjectById
(
''
,
id
,
assocs
)
return
this
.
searchService
.
getObjectById
(
'
WorkFlowTemplates
'
,
id
,
assocs
)
.
map
(
data
=>
{
const
objs
=
this
.
utilsService
.
convertResponseToObjects
(
data
,
assocs
);
...
...
frontend/angular/src/app/constants.ts
View file @
94fda9f2
...
...
@@ -21,3 +21,9 @@ export const SEARCH = {
MESSAGE_TEMPLATE
:
'ListMessageTemplate'
,
WORKFLOW_TEMPLATE
:
'ListWorkFlow'
};
export
const
ASSOCS
=
{
WORKFLOW_STAGE
:
'WorkFlowStages'
,
WORKFLOW_MESSAGE
:
'WorkFlowMessages'
,
WORKFLOW_STEP
:
'WorkFlowSteps'
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment