Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
N
nobu-web-v2
Project
Project
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
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ari_darmawan
nobu-web-v2
Commits
565f5925
Commit
565f5925
authored
Jan 05, 2023
by
ari_darmawan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
change behavior logbook pda team and behavior config env
parent
cad53651
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
750 additions
and
74 deletions
+750
-74
logbooks-report.component.html
...d-logbooks/logbooks-report/logbooks-report.component.html
+150
-0
logbooks-report.component.ts
...ard-logbooks/logbooks-report/logbooks-report.component.ts
+2
-0
admin-routing.module.ts
src/app/admin/admin-routing.module.ts
+9
-4
admin-ticket-create.component.html
...et/admin-ticket-create/admin-ticket-create.component.html
+3
-3
admin-ticket-create.component.ts
...cket/admin-ticket-create/admin-ticket-create.component.ts
+24
-20
admin-ticket-detail.component.html
...et/admin-ticket-detail/admin-ticket-detail.component.html
+2
-2
admin-ticket-detail.component.ts
...cket/admin-ticket-detail/admin-ticket-detail.component.ts
+2
-2
admin.module.ts
src/app/admin/admin.module.ts
+4
-0
logbook.component.css
src/app/admin/logbook/logbook.component.css
+97
-0
logbook.component.html
src/app/admin/logbook/logbook.component.html
+95
-0
logbook.component.spec.ts
src/app/admin/logbook/logbook.component.spec.ts
+25
-0
logbook.component.ts
src/app/admin/logbook/logbook.component.ts
+0
-0
tabs-logbook.component.css
...app/admin/logbook/tabs-logbook/tabs-logbook.component.css
+38
-0
tabs-logbook.component.html
...pp/admin/logbook/tabs-logbook/tabs-logbook.component.html
+209
-0
tabs-logbook.component.spec.ts
...admin/logbook/tabs-logbook/tabs-logbook.component.spec.ts
+25
-0
tabs-logbook.component.ts
src/app/admin/logbook/tabs-logbook/tabs-logbook.component.ts
+0
-0
app.module.ts
src/app/app.module.ts
+13
-3
configAPI.json
src/assets/configAPI.json
+2
-2
environment.ts
src/environments/environment.ts
+2
-2
service-proxy.service.ts
src/shared/serviceproxy/service-proxy.service.ts
+48
-36
No files found.
src/app/admin/admin-dashboard-logbooks/logbooks-report/logbooks-report.component.html
View file @
565f5925
...
@@ -12,6 +12,156 @@
...
@@ -12,6 +12,156 @@
Download Excel
<i
class=
"fas fa-download"
></i>
Download Excel
<i
class=
"fas fa-download"
></i>
</span>
</span>
<!-- <div class="table-responsive mt-4">
<table class="table table-bordered table-striped table-sm">
<thead>
<tr>
<th rowspan="2" style="max-width: 15px;">#</th>
<th *ngFor="let data of fieldExport; let i = index">
<div class="form-check">
<input type="checkbox" class="form-check-input" [checked]="data['value']" id="exampleCheck1" (change)="onChangeFieldReport(i, $event)">
<label class="form-check-label" for="exampleCheck1">{{data['field']}}</label>
</div>
</th>
</tr>
</thead>
<tbody>
<div *ngIf="TeamID == Env.Team.SociomileStaff">
<tr *ngFor="let data of listLogbooks.data; let i = index">
<td class="col-1">{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.</td>
<td>{{data.ref}}</td>
<td>{{data.createdby_name}}</td>
<td>{{data.start_date}}</td>
<td>{{data.caller_name}}</td>
<td>{{data.caller_mobile_phone}}</td>
<td>{{data.ticket_servicefamiliy_name}}</td>
<td>{{data.ticket_service_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.title}}</td>
<td>{{data.team_name}}</td>
<td>{{data.sla_internal}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.resolve_date}}</td>
<td>{{data.cscabang}}</td>
</tr>
</div>
<div *ngIf="TeamID == Env.Team.CsCabangBranchAgent">
<tr *ngFor="let data of listLogbooks.data; let i = index">
<td class="col-1">{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.</td>
<td>{{data.ref}}</td>
<td>{{data.createdby_name}}</td>
<td>{{data.start_date}}</td>
<td>{{data.caller_name}}</td>
<td>{{data.caller_mobile_phone}}</td>
<td>{{data.ticket_servicefamiliy_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.title}}</td>
<td>{{data.team_name}}</td>
<td>{{data.sla_internal}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.resolve_date}}</td>
<td>{{data.cscabang}}</td>
<td>{{data.supervisor}}</td>
</tr>
</div>
<div *ngIf="TeamID == Env.Team.AgentCallCenter">
<tr *ngFor="let data of listLogbooks.data; let i = index">
<td class="col-1">{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.</td>
<td>{{data.ref}}</td>
<td>{{data.createdby_name}}</td>
<td>{{data.agent_name}}</td>
<td>{{data.unit_pengaduan}}</td>
<td>{{data.start_date}}</td>
<td>{{data.caller_name}}</td>
<td>{{data.caller_mobile_phone}}</td>
<td>{{data.no_rekening}}</td>
<td>{{data.no_kartu_atm}}</td>
<td>{{data.penyebab_pengaduan}}</td>
<td>{{data.ticket_servicefamiliy_name}}</td>
<td>{{data.ticket_service_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.deskripsi}}</td>
<td>{{data.tanggal_transaksi}}</td>
<td>{{data.e_channel}}</td>
<td>{{data.kategori}}</td>
<td>{{data.tidak_lanjut}}</td>
<td>{{data.team_name}}</td>
<td>{{data.pic}}</td>
<td>{{(data.ticket_solution != null)? (data.ticket_solution | pipeSubstring) : ''}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.resolve_date}}</td>
<td>{{data.sla_internal}}</td>
<td>{{data.sla_hari_kerja}}</td>
</tr>
</div>
<div *ngIf="TeamID == Env.Team.ServiceReport">
<div *ngIf="servicefamily_id == 2 || servicefamily_id == 4">
<tr *ngFor="let data of listLogbooks.data; let i = index">
<td class="col-1">{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.</td>
<td>{{data.ref}}</td>
<td>{{data.createdby_name}}</td>
<td>{{data.agent_name}}</td>
<td>{{data.unit_pengaduan}}</td>
<td>{{data.start_date}}</td>
<td>{{data.caller_name}}</td>
<td>{{data.caller_mobile_phone}}</td>
<td>{{data.no_rekening}}</td>
<td>{{data.no_kartu_atm}}</td>
<td>{{data.penyebab_pengaduan}}</td>
<td>{{data.ticket_servicefamiliy_name}}</td>
<td>{{data.ticket_service_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.deskripsi}}</td>
<td>{{data.tanggal_transaksi}}</td>
<td>{{data.e_channel}}</td>
<td>{{data.kategori}}</td>
<td>{{data.tidak_lanjut}}</td>
<td>{{data.team_name}}</td>
<td>{{data.pic}}</td>
<td>{{(data.ticket_solution != null)? (data.ticket_solution | pipeSubstring) : ''}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.resolve_date}}</td>
<td>{{data.sla_internal}}</td>
<td>{{data.sla_hari_kerja}}</td>
<td>{{data.target_penyelesaian}}</td>
<td>{{data.remark}}</td>
<td>{{data.nasabah}}</td>
<td>{{data.bank}}</td>
</tr>
</div>
<div *ngIf="servicefamily_id == 1 || servicefamily_id == 5">
<tr *ngFor="let data of listLogbooks.data; let i = index">
<td class="col-1">{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.</td>
<td>{{data.ref}}</td>
<td>{{data.createdby_name}}</td>
<td>{{data.start_date}}</td>
<td>{{data.caller_name}}</td>
<td>{{data.caller_mobile_phone}}</td>
<td>{{data.no_rekening}}</td>
<td>{{data.no_kartu_atm}}</td>
<td>{{data.ticket_servicefamiliy_name}}</td>
<td>{{data.ticket_service_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.deskripsi}}</td>
<td>{{data.e_channel}}</td>
<td>{{data.kategori}}</td>
<td>{{data.ticket_solution}}</td>
<td>{{data.team_name}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.close_date}}</td>
<td>{{data.sla_internal}}</td>
<td>{{data.sla_hari_kerja}}</td>
</tr>
</div>
</div>
</tbody>
</table>
</div> -->
<!-- Role SPV and SD Only -->
<!-- Role SPV and SD Only -->
<div
class=
"table-responsive mt-4"
*
ngIf=
"RoleID == _SP.PARAM_SPV || RoleID == _SP.PARAM_SERVICEDESK || TeamID == Env.Team.ServiceReport"
>
<div
class=
"table-responsive mt-4"
*
ngIf=
"RoleID == _SP.PARAM_SPV || RoleID == _SP.PARAM_SERVICEDESK || TeamID == Env.Team.ServiceReport"
>
<table
class=
"table table-bordered table-striped table-sm"
>
<table
class=
"table table-bordered table-striped table-sm"
>
...
...
src/app/admin/admin-dashboard-logbooks/logbooks-report/logbooks-report.component.ts
View file @
565f5925
...
@@ -37,6 +37,7 @@ export class LogbooksReportComponent implements OnInit, OnChanges {
...
@@ -37,6 +37,7 @@ export class LogbooksReportComponent implements OnInit, OnChanges {
listRequest
:
any
=
{};
listRequest
:
any
=
{};
serviceFamilyName
:
string
=
""
;
serviceFamilyName
:
string
=
""
;
servicefamily_id
:
number
=
0
;
constructor
(
constructor
(
private
_cRef
:
ChangeDetectorRef
,
private
_cRef
:
ChangeDetectorRef
,
private
router
:
Router
,
private
router
:
Router
,
...
@@ -57,6 +58,7 @@ export class LogbooksReportComponent implements OnInit, OnChanges {
...
@@ -57,6 +58,7 @@ export class LogbooksReportComponent implements OnInit, OnChanges {
let
start_date_ticket
=
''
;
let
start_date_ticket
=
''
;
let
deskripsi
=
''
;
let
deskripsi
=
''
;
let
status
=
''
;
let
status
=
''
;
this
.
servicefamily_id
=
this
.
listRequest
.
servicefamily_id
[
0
];
switch
(
this
.
listRequest
.
servicefamily_id
[
0
])
{
switch
(
this
.
listRequest
.
servicefamily_id
[
0
])
{
case
2
:
case
2
:
start_date_ticket
+=
" Pengaduan"
;
start_date_ticket
+=
" Pengaduan"
;
...
...
src/app/admin/admin-routing.module.ts
View file @
565f5925
...
@@ -12,16 +12,21 @@ import { AdminLivedashboardComponent } from './admin-livedashboard/admin-livedas
...
@@ -12,16 +12,21 @@ import { AdminLivedashboardComponent } from './admin-livedashboard/admin-livedas
import
{
LoginLogsComponent
}
from
'./login-logs/login-logs.component'
;
import
{
LoginLogsComponent
}
from
'./login-logs/login-logs.component'
;
import
{
AdminDashboardLogbooksComponent
}
from
'./admin-dashboard-logbooks/admin-dashboard-logbooks.component'
;
import
{
AdminDashboardLogbooksComponent
}
from
'./admin-dashboard-logbooks/admin-dashboard-logbooks.component'
;
import
{
AdminUserAgentComponent
}
from
'./admin-user-agent/admin-user-agent.component'
;
import
{
AdminUserAgentComponent
}
from
'./admin-user-agent/admin-user-agent.component'
;
import
{
LogbookComponent
}
from
'./logbook/logbook.component'
;
const
routes
:
Routes
=
[
const
routes
:
Routes
=
[
{
path
:
''
,
component
:
LogbookComponent
},
// {
// {
// path: '',
// path: '',
// component: AdminDashboardComponent
// component: AdminDashboardComponent
// },
// },
{
//
{
path
:
''
,
//
path: '',
component
:
AdminDashboardLogbooksComponent
//
component: AdminDashboardLogbooksComponent
},
//
},
{
{
path
:
'live-dashboard'
,
path
:
'live-dashboard'
,
component
:
AdminLivedashboardComponent
component
:
AdminLivedashboardComponent
...
...
src/app/admin/admin-ticket/admin-ticket-create/admin-ticket-create.component.html
View file @
565f5925
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
{{CustomerMdData.Name}}
{{CustomerMdData.Name}}
</button>
</button>
</div>
</div>
<hr>
<
!-- <
hr>
<p>
<p>
<b>Agent</b>
<b>Agent</b>
</p>
</p>
...
@@ -48,8 +48,8 @@
...
@@ -48,8 +48,8 @@
<div class="form-group">
<div class="form-group">
<label class="text-muted">Channel <span class="text-danger">*</span></label>
<label class="text-muted">Channel <span class="text-danger">*</span></label>
<input type="text" placeholder="Input Channel ..." #inputRequired class="form-control form-control-sm" [(ngModel)]="channel" maxlength="30">
<input type="text" placeholder="Input Channel ..." #inputRequired class="form-control form-control-sm" [(ngModel)]="channel" maxlength="30">
</div>
</div>
-->
<
hr
>
<
!-- <hr> --
>
<p>
<p>
<b>
Assignee
</b>
<b>
Assignee
</b>
</p>
</p>
...
...
src/app/admin/admin-ticket/admin-ticket-create/admin-ticket-create.component.ts
View file @
565f5925
...
@@ -175,7 +175,7 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -175,7 +175,7 @@ export class AdminTicketCreateComponent implements OnInit {
this
.
GettingTeamsListAPI
()
this
.
GettingTeamsListAPI
()
this
.
GettingTopicListAPI
()
this
.
GettingTopicListAPI
()
this
.
GettingComplaintmentListAPI
()
this
.
GettingComplaintmentListAPI
()
this
.
requestAgent
();
//
this.requestAgent();
}
}
//Take By User ------------------------------------------------------------------------
//Take By User ------------------------------------------------------------------------
...
@@ -370,7 +370,8 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -370,7 +370,8 @@ export class AdminTicketCreateComponent implements OnInit {
this
.
Env
.
Team
.
SociomileStaff
,
this
.
Env
.
Team
.
SociomileStaff
,
this
.
Env
.
Team
.
ITRM
,
this
.
Env
.
Team
.
ITRM
,
this
.
Env
.
Team
.
BarcodeQRIS
,
this
.
Env
.
Team
.
BarcodeQRIS
,
this
.
Env
.
Team
.
MerchantBusiness
this
.
Env
.
Team
.
MerchantBusiness
,
this
.
Env
.
Team
.
DigitalLoan
]
]
}
}
...
@@ -786,16 +787,11 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -786,16 +787,11 @@ export class AdminTicketCreateComponent implements OnInit {
this
.
_TicketService
.
CreateTicketWithContact
(
_Request
)
this
.
_TicketService
.
CreateTicketWithContact
(
_Request
)
.
subscribe
((
result
:
any
)
=>
{
.
subscribe
((
result
:
any
)
=>
{
if
(
result
!=
null
){
if
(
result
!=
null
){
//console.log(JSON.stringify(result))
if
(
result
.
values
.
code
==
0
){
if
(
result
.
values
.
code
==
0
){
// AratakaConfig.LoadingPage.hideLoading()
// AratakaConfig.LoadingPage.hideLoading()
var
ObjKey
=
Object
.
keys
(
result
.
values
.
objects
)
var
ObjKey
=
Object
.
keys
(
result
.
values
.
objects
)
var
created
=
result
.
values
.
objects
[
ObjKey
[
0
]]
var
created
=
result
.
values
.
objects
[
ObjKey
[
0
]]
console
.
log
(
ObjKey
)
console
.
log
(
created
)
const
params
=
{
const
params
=
{
"agent_custom"
:
this
.
extAgent
,
"agent_custom"
:
this
.
extAgent
,
"agent_extension_id"
:
Number
(
this
.
idAgent
),
"agent_extension_id"
:
Number
(
this
.
idAgent
),
...
@@ -804,18 +800,7 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -804,18 +800,7 @@ export class AdminTicketCreateComponent implements OnInit {
"ticket_id"
:
Number
(
created
.
key
),
"ticket_id"
:
Number
(
created
.
key
),
"ticket_type"
:
created
.
class
"ticket_type"
:
created
.
class
}
}
console
.
log
(
params
)
this
.
API
.
post
(
'ticket_extension'
,
params
)
.
subscribe
((
response
:
any
)
=>
{
this
.
InsertNewTicketAssignAPI
({
ticket_assign
:
created
.
key
,
ticket_class
:
created
.
class
,
team_id
:
this
.
AssigneeTeam_ID
,
agent_id
:
this
.
AssigneeTeamAgent_ID
,
source_agent_id
:
this
.
_SP
.
getUserInformation
.
values
.
user_id
})
},
(
err
:
HttpErrorResponse
)
=>
{
this
.
InsertNewTicketAssignAPI
({
this
.
InsertNewTicketAssignAPI
({
ticket_assign
:
created
.
key
,
ticket_assign
:
created
.
key
,
ticket_class
:
created
.
class
,
ticket_class
:
created
.
class
,
...
@@ -823,7 +808,25 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -823,7 +808,25 @@ export class AdminTicketCreateComponent implements OnInit {
agent_id
:
this
.
AssigneeTeamAgent_ID
,
agent_id
:
this
.
AssigneeTeamAgent_ID
,
source_agent_id
:
this
.
_SP
.
getUserInformation
.
values
.
user_id
source_agent_id
:
this
.
_SP
.
getUserInformation
.
values
.
user_id
})
})
})
// this.API.post('ticket_extension', params)
// .subscribe((response: any) => {
// this.InsertNewTicketAssignAPI({
// ticket_assign : created.key,
// ticket_class : created.class,
// team_id : this.AssigneeTeam_ID,
// agent_id : this.AssigneeTeamAgent_ID,
// source_agent_id : this._SP.getUserInformation.values.user_id
// })
// }, (err: HttpErrorResponse) => {
// this.InsertNewTicketAssignAPI({
// ticket_assign : created.key,
// ticket_class : created.class,
// team_id : this.AssigneeTeam_ID,
// agent_id : this.AssigneeTeamAgent_ID,
// source_agent_id : this._SP.getUserInformation.values.user_id
// })
// })
// this.InsertNewTicketContactAPI({
// this.InsertNewTicketContactAPI({
// ticket_id : created.key,
// ticket_id : created.key,
...
@@ -928,7 +931,8 @@ export class AdminTicketCreateComponent implements OnInit {
...
@@ -928,7 +931,8 @@ export class AdminTicketCreateComponent implements OnInit {
if
(
result
!=
null
){
if
(
result
!=
null
){
//console.log(JSON.stringify(result))
//console.log(JSON.stringify(result))
if
(
result
.
values
.
code
==
0
){
if
(
result
.
values
.
code
==
0
){
AratakaConfig
.
LoadingPage
.
hideLoading
();
AratakaConfig
.
Alert
.
showAlert
(
'Create Ticket Success'
,
'alert-success'
,
2000
)
}
else
{
}
else
{
AratakaConfig
.
Alert
.
showAlert
(
'Failed to Create Ticket Dispatch'
,
'alert-danger'
,
2000
)
AratakaConfig
.
Alert
.
showAlert
(
'Failed to Create Ticket Dispatch'
,
'alert-danger'
,
2000
)
...
...
src/app/admin/admin-ticket/admin-ticket-detail/admin-ticket-detail.component.html
View file @
565f5925
...
@@ -27,7 +27,7 @@
...
@@ -27,7 +27,7 @@
<br>
<br>
<div
class=
"row"
>
<div
class=
"row"
>
<div
class=
"col-12 col-sm-4 col-md-4 col-lg-3 mb-3"
>
<div
class=
"col-12 col-sm-4 col-md-4 col-lg-3 mb-3"
>
<p>
<
!-- <
p>
<b>Agent</b>
<b>Agent</b>
</p>
</p>
<div class="form-group">
<div class="form-group">
...
@@ -58,7 +58,7 @@
...
@@ -58,7 +58,7 @@
<div class="form-group">
<div class="form-group">
<label class="text-muted">Channel <span class="text-danger">*</span></label>
<label class="text-muted">Channel <span class="text-danger">*</span></label>
<input type="text" placeholder="Input Channel ..." #inputRequired class="form-control form-control-sm" [(ngModel)]="channel" disabled>
<input type="text" placeholder="Input Channel ..." #inputRequired class="form-control form-control-sm" [(ngModel)]="channel" disabled>
</div>
</div>
-->
<hr>
<hr>
<p>
<p>
<b>
Assignee
</b>
<b>
Assignee
</b>
...
...
src/app/admin/admin-ticket/admin-ticket-detail/admin-ticket-detail.component.ts
View file @
565f5925
...
@@ -250,8 +250,8 @@ export class AdminTicketDetailComponent implements OnInit {
...
@@ -250,8 +250,8 @@ export class AdminTicketDetailComponent implements OnInit {
this
.
GettingTicketDetailAPI
({
this
.
GettingTicketDetailAPI
({
ID
:
this
.
paramTicketID
ID
:
this
.
paramTicketID
})
})
this
.
getDetailExtensionTiket
()
//
this.getDetailExtensionTiket()
this
.
requestAgent
()
//
this.requestAgent()
this
.
ConversationViewByRole
()
this
.
ConversationViewByRole
()
AratakaConfig
.
BootstrapDateCustomPicker
({
AratakaConfig
.
BootstrapDateCustomPicker
({
...
...
src/app/admin/admin.module.ts
View file @
565f5925
...
@@ -31,6 +31,8 @@ import { LogbooksComponent } from './admin-dashboard-logbooks/logbooks/logbooks.
...
@@ -31,6 +31,8 @@ import { LogbooksComponent } from './admin-dashboard-logbooks/logbooks/logbooks.
import
{
LogbooksReportComponent
}
from
'./admin-dashboard-logbooks/logbooks-report/logbooks-report.component'
;
import
{
LogbooksReportComponent
}
from
'./admin-dashboard-logbooks/logbooks-report/logbooks-report.component'
;
import
{
AdminUserAgentComponent
}
from
'./admin-user-agent/admin-user-agent.component'
;
import
{
AdminUserAgentComponent
}
from
'./admin-user-agent/admin-user-agent.component'
;
import
{
CreateAgentComponent
}
from
'./admin-user-agent/create-agent/create-agent.component'
;
import
{
CreateAgentComponent
}
from
'./admin-user-agent/create-agent/create-agent.component'
;
import
{
LogbookComponent
}
from
'./logbook/logbook.component'
;
import
{
TabsLogbookComponent
}
from
'./logbook/tabs-logbook/tabs-logbook.component'
;
/*import { PipeSha256 } from '../pipe/pipe-global.pipe';
/*import { PipeSha256 } from '../pipe/pipe-global.pipe';
import { PipeEncryptoJs } from '../pipe/pipe-global.pipe';
import { PipeEncryptoJs } from '../pipe/pipe-global.pipe';
import { PipeDencryptoJs } from '../pipe/pipe-global.pipe';
import { PipeDencryptoJs } from '../pipe/pipe-global.pipe';
...
@@ -65,6 +67,8 @@ import { PipeDencryptoJs } from '../pipe/pipe-global.pipe';
...
@@ -65,6 +67,8 @@ import { PipeDencryptoJs } from '../pipe/pipe-global.pipe';
LogbooksReportComponent
,
LogbooksReportComponent
,
AdminUserAgentComponent
,
AdminUserAgentComponent
,
CreateAgentComponent
,
CreateAgentComponent
,
LogbookComponent
,
TabsLogbookComponent
,
],
],
imports
:
[
imports
:
[
PipeglobalModule
,
PipeglobalModule
,
...
...
src/app/admin/logbook/logbook.component.css
0 → 100644
View file @
565f5925
.jumbotron
{
background
:
url('../../../assets/StoredImage/DahsboardJumbotron.png')
no-repeat
center
center
;
-webkit-background-size
:
cover
;
-moz-background-size
:
cover
;
-o-background-size
:
cover
;
background-size
:
100%
;
margin-top
:
0px
;
/*border: 1px solid #ccc;*/
}
.container-01
{
border
:
2px
solid
#ccc
;
border-radius
:
3px
;
}
.dashboardBox
{
padding
:
8px
;
border
:
1px
solid
transparent
;
text-align
:
center
;
border-radius
:
5px
;
margin
:
5px
0
;
}
.ticketTect
{
font-size
:
11px
;
font-weight
:
bold
;
}
.downloadExportDashboard
{
top
:
0
;
right
:
0
;
position
:
absolute
;
cursor
:
pointer
;
color
:
#636e72
;
margin-right
:
10px
;
background
:
#fff
;
/* border: 1px solid #ccc; */
border-radius
:
50%
;
padding
:
5px
8px
;
font-size
:
12px
;
}
.downloadExportDashboard
:hover
{
color
:
#222
;
}
.TabsCustomTitle
{
background
:
transparent
;
margin
:
2px
;
color
:
#222
;
padding
:
3px
30px
;
border-bottom
:
3px
solid
#ebe9e9
;
cursor
:
pointer
;
word-wrap
:
break-word
;
display
:
inline-block
;
font-size
:
13px
;
font-weight
:
900
;
text-transform
:
uppercase
;
}
.TabsCustomTitle
:hover
{
color
:
#222
;
border-bottom
:
3px
solid
#d18b5d
;
}
.TabsCustomTitle.active
{
color
:
#222
;
border-bottom
:
3px
solid
#e67e22
;
}
.TabsCustom
{
background
:
transparent
;
margin
:
2px
;
color
:
#222
;
padding
:
3px
20px
;
border-bottom
:
3px
solid
#ebe9e9
;
cursor
:
pointer
;
word-wrap
:
break-word
;
display
:
inline-block
;
font-size
:
12px
;
}
.TabsCustom
:hover
{
color
:
#222
;
border-bottom
:
3px
solid
#7e8389
;
}
.TabsCustom.active
{
color
:
#222
;
border-bottom
:
3px
solid
#2c3e50
;
}
src/app/admin/logbook/logbook.component.html
0 → 100644
View file @
565f5925
<div
class=
"container"
style=
"margin-top: -20px;"
>
<div
class=
"row"
>
<div
class=
"col-12 col-sm-6 col-md-4 col-lg-8"
>
<p
style=
"font-size: 15px;"
>
DASHBOARD
</p>
</div>
<div
class=
"col-12 col-sm-6 col-md-4 col-lg-2"
>
<div
class=
"form-group"
>
<label
class=
"text-muted"
><small>
Start Date
</small></label>
<div
class=
"input-group date"
id=
"StartDate"
data-target-input=
"nearest"
>
<input
type=
"text"
class=
"form-control form-control-sm datetimepicker-input"
data-toggle=
"datetimepicker"
data-target=
"#StartDate"
(
blur
)="
GettingDashboardCardColorsDataAPI
()"
/>
<div
class=
"input-group-append"
data-target=
"#StartDate"
data-toggle=
"datetimepicker"
>
<div
class=
"input-group-text"
><i
class=
"far fa-calendar-alt"
></i></div>
</div>
</div>
</div>
</div>
<div
class=
"col-12 col-sm-6 col-md-4 col-lg-2"
>
<div
class=
"form-group"
>
<label
class=
"text-muted"
><small>
End Date
</small></label>
<div
class=
"input-group date"
id=
"EndDate"
data-target-input=
"nearest"
>
<input
type=
"text"
class=
"form-control form-control-sm datetimepicker-input"
data-toggle=
"datetimepicker"
data-target=
"#EndDate"
(
blur
)="
GettingDashboardCardColorsDataAPI
()"
/>
<div
class=
"input-group-append"
data-target=
"#EndDate"
data-toggle=
"datetimepicker"
>
<div
class=
"input-group-text"
><i
class=
"far fa-calendar-alt"
></i></div>
</div>
</div>
</div>
</div>
</div>
<p
*
ngIf=
"isDashboardCardEmpty"
style=
"font-size:18px;"
class=
"text-muted text-center"
>
<i
class=
"far fa-chart-bar fa-3x"
></i>
<br>
Upss... no Dashboard!
</p>
<p
*
ngIf=
"isDashboardCardLoading"
style=
"font-size:18px;"
class=
"text-muted text-center"
>
<i
class=
"fas fa-spinner fa-spin"
></i>
Retrieving data
</p>
<ng-container
*
ngIf=
"!isDashboardCardEmpty && !isDashboardCardLoading"
>
<div
class=
"row"
>
<ng-container
*
ngFor=
"let data of dashboardListCard; let i = index"
>
<div
class=
"col-12 col-sm-6 col-md-4 col-lg-2"
>
<div
class=
"dashboardBox"
[
ngStyle
]="{'
background-color
'
:
data
.
colour
,'
color
'
:
'#
fff
'}"
>
<p
class=
"downloadExportDashboard"
*
ngIf=
"(data.Count != 0) && (RoleID == _SP.PARAM_SPV || RoleID == _SP.PARAM_SERVICEDESK)"
(
click
)="
GettingExcelForDashboardDataAPI
(
i
)"
>
<i
class=
"fas fa-download"
></i>
</p>
<p
class=
"m-0 p-0"
>
{{data.Count}}
</p>
<p
class=
"m-0 p-0 ticketTect"
>
{{data.Name}}
</p>
</div>
</div>
</ng-container>
</div>
</ng-container>
<br>
<p
class=
"mb-3"
>
<span
class=
"mb-1 TabsCustomTitle active"
>
Logbook
</span>
</p>
<p
*
ngIf=
"isEmptyChild"
style=
"font-size:18px;"
class=
"text-muted text-center"
>
<i
class=
"fas fa-columns fa-3x"
></i>
<br>
There is no Dashboard
</p>
<p
*
ngIf=
"isLoadingChild"
style=
"font-size:18px;"
class=
"text-muted text-center"
>
<i
class=
"fas fa-spinner fa-spin"
></i>
Retrieving data
</p>
<p
*
ngIf=
"!isLoadingChild && !isEmptyChild"
>
<ng-container
*
ngFor=
"let data of listChildTabs; let i = index"
>
<span
class=
"TabsCustom"
[
ngClass
]="{'
active
'
:
data
.
selected
,
''
:
!
data
.
selected
}"
(
click
)="
changeTab
(
i
)"
>
{{data.name}} {{data.count ? data.count : ''}}
</span>
</ng-container>
</p>
<app-tabs-logbook
[
paramsRequest
]="
paramsRequest
"
>
</app-tabs-logbook>
</div>
src/app/admin/logbook/logbook.component.spec.ts
0 → 100644
View file @
565f5925
import
{
async
,
ComponentFixture
,
TestBed
}
from
'@angular/core/testing'
;
import
{
LogbookComponent
}
from
'./logbook.component'
;
describe
(
'LogbookComponent'
,
()
=>
{
let
component
:
LogbookComponent
;
let
fixture
:
ComponentFixture
<
LogbookComponent
>
;
beforeEach
(
async
(()
=>
{
TestBed
.
configureTestingModule
({
declarations
:
[
LogbookComponent
]
})
.
compileComponents
();
}));
beforeEach
(()
=>
{
fixture
=
TestBed
.
createComponent
(
LogbookComponent
);
component
=
fixture
.
componentInstance
;
fixture
.
detectChanges
();
});
it
(
'should create'
,
()
=>
{
expect
(
component
).
toBeTruthy
();
});
});
src/app/admin/logbook/logbook.component.ts
0 → 100644
View file @
565f5925
This diff is collapsed.
Click to expand it.
src/app/admin/logbook/tabs-logbook/tabs-logbook.component.css
0 → 100644
View file @
565f5925
.downloadExportReport
{
border
:
1px
solid
#607D8B
;
padding
:
5px
10px
;
border-radius
:
3px
;
float
:
right
;
font-size
:
12px
;
background
:
#607D8B
;
color
:
#fff
;
cursor
:
pointer
;
margin
:
0
10px
30px
0
;
}
.downloadExportReport
:hover
{
color
:
#ffffff
;
background-color
:
#263238
;
}
.Table-Background
{
/* border: 2px solid #ebe9e9; */
padding
:
20px
5px
;
margin
:
10px
;
/* border-radius: 10px; */
}
.table
th
{
vertical-align
:
middle
;
}
.table
td
,
.table
th
{
min-width
:
150px
;
}
.table
td
:first-child
,
.table
th
:first-child
{
min-width
:
20px
;
}
\ No newline at end of file
src/app/admin/logbook/tabs-logbook/tabs-logbook.component.html
0 → 100644
View file @
565f5925
<button
class=
"btn btn-sm btn-success arataka-btn-success"
style=
"width: 100px;"
(
click
)="
GettingTicketReportDataAPI
()"
[
disabled
]="
isDisabledButtonSearch
"
>
<i
class=
"bi bi-search"
></i>
Search
</button>
<br>
<div
class=
"row"
>
<div
class=
"col-12 col-sm-12 text-center mt-5"
*
ngIf=
"isEmptyLogbooks"
>
<p
style=
"font-size:18px;"
class=
"text-muted"
><i
class=
"fas fa-table fa-3x"
></i>
<br>
No List of Report
</p>
</div>
<div
class=
"col-12 col-sm-12 text-center mt-5"
*
ngIf=
"isLoadingLogbooks"
>
<p
style=
"font-size:18px;"
class=
"text-muted"
><i
class=
"fas fa-spinner fa-spin"
></i>
Retrieving data
</p>
</div>
<div
class=
"col-12 col-sm-12 Table-Background"
*
ngIf=
"!isLoadingLogbooks && !isEmptyLogbooks"
>
<span
class=
"downloadExportReport"
(
click
)="
GettingExcelForReportDataAPI
()"
>
Download Excel
<i
class=
"fas fa-download"
></i>
</span>
<div
class=
"table-responsive mt-4"
>
<table
class=
"table table-bordered table-striped table-sm"
>
<thead>
<tr>
<th
rowspan=
"2"
style=
"max-width: 15px;"
>
#
</th>
<th
*
ngFor=
"let data of fieldExport; let i = index"
>
<div
class=
"form-check"
>
<input
type=
"checkbox"
class=
"form-check-input"
[
checked
]="
data
['
value
']"
id=
"exampleCheck1"
(
change
)="
onChangeFieldReport
(
i
,
$
event
)"
>
<label
class=
"form-check-label"
for=
"exampleCheck1"
>
{{data['field']}}
</label>
</div>
</th>
</tr>
</thead>
<tbody>
<ng-container
*
ngIf=
"TeamID == Env.Team.SociomileStaff"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.ticket_service_name}}
</td>
<td>
{{data.ticket_servicesubcategory_name}}
</td>
<td>
{{data.title}}
</td>
<td>
{{data.team_name}}
</td>
<td>
{{data.sla_internal}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.resolve_date}}
</td>
<td>
{{data.cscabang}}
</td>
</tr>
</ng-container>
<ng-container
*
ngIf=
"TeamID == Env.Team.CsCabangBranchAgent"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.ticket_servicesubcategory_name}}
</td>
<td>
{{data.title}}
</td>
<td>
{{data.team_name}}
</td>
<td>
{{data.sla_internal}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.resolve_date}}
</td>
<td>
{{data.cscabang}}
</td>
<td>
{{data.supervisor}}
</td>
</tr>
</ng-container>
<ng-container
*
ngIf=
"TeamID == Env.Team.AgentCallCenter"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.agent_name}}
</td>
<td>
{{data.unit_pengaduan}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.no_rekening}}
</td>
<td>
{{data.no_kartu_atm}}
</td>
<td>
{{data.penyebab_pengaduan}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.ticket_service_name}}
</td>
<td>
{{data.ticket_servicesubcategory_name}}
</td>
<td>
{{data.deskripsi}}
</td>
<td>
{{data.tanggal_transaksi}}
</td>
<td>
{{data.e_channel}}
</td>
<td>
{{data.kategori}}
</td>
<td>
{{data.tidak_lanjut}}
</td>
<td>
{{data.team_name}}
</td>
<td>
{{data.pic}}
</td>
<td>
{{(data.ticket_solution != null)? (data.ticket_solution | pipeSubstring) : ''}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.resolve_date}}
</td>
<td>
{{data.sla_internal}}
</td>
<td>
{{data.sla_hari_kerja}}
</td>
</tr>
</ng-container>
<ng-container
*
ngIf=
"RoleID == _SP.PARAM_SPV || RoleID == _SP.PARAM_SERVICEDESK || TeamID == Env.Team.ServiceReport"
>
<ng-container
*
ngIf=
"servicefamily_id == 2 || servicefamily_id == 4"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.agent_name}}
</td>
<td>
{{data.unit_pengaduan}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.no_rekening}}
</td>
<td>
{{data.no_kartu_atm}}
</td>
<td>
{{data.penyebab_pengaduan}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.ticket_service_name}}
</td>
<td>
{{data.ticket_servicesubcategory_name}}
</td>
<td>
{{data.deskripsi}}
</td>
<td>
{{data.tanggal_transaksi}}
</td>
<td>
{{data.e_channel}}
</td>
<td>
{{data.kategori}}
</td>
<td>
{{data.tidak_lanjut}}
</td>
<td>
{{data.team_name}}
</td>
<td>
{{data.pic}}
</td>
<td>
{{(data.ticket_solution != null)? (data.ticket_solution | pipeSubstring) : ''}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.resolve_date}}
</td>
<td>
{{data.sla_internal}}
</td>
<td>
{{data.sla_hari_kerja}}
</td>
<td>
{{data.target_penyelesaian}}
</td>
<td>
{{data.remark}}
</td>
<td>
{{data.nasabah}}
</td>
<td>
{{data.bank}}
</td>
</tr>
</ng-container>
<ng-container
*
ngIf=
"servicefamily_id == 1 || servicefamily_id == 5"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.no_rekening}}
</td>
<td>
{{data.no_kartu_atm}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.ticket_service_name}}
</td>
<td>
{{data.ticket_servicesubcategory_name}}
</td>
<td>
{{data.deskripsi}}
</td>
<td>
{{data.e_channel}}
</td>
<td>
{{data.kategori}}
</td>
<td>
{{data.ticket_solution}}
</td>
<td>
{{data.team_name}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.close_date}}
</td>
<td>
{{data.sla_internal}}
</td>
<td>
{{data.sla_hari_kerja}}
</td>
</tr>
</ng-container>
</ng-container>
<ng-container
*
ngIf=
"RoleID == Env.PARAM_SUPPORT"
>
<tr
*
ngFor=
"let data of listLogbooks.data; let i = index"
>
<td
class=
"col-1"
>
{{((i+1) + ((listRequest.perpage * listRequest.page) - listRequest.perpage))}}.
</td>
<td>
{{data.ref}}
</td>
<td>
{{data.createdby_name}}
</td>
<td>
{{data.start_date}}
</td>
<td>
{{data.caller_name}}
</td>
<td>
{{data.caller_mobile_phone}}
</td>
<td>
{{data.ticket_servicefamiliy_name}}
</td>
<td>
{{data.deskripsi}}
</td>
<td>
{{data.ticket_status}}
</td>
<td>
{{data.resolve_date}}
</td>
<td>
{{data.target_penyelesaian}}
</td>
<td>
{{data.sla_hari_kerja}}
</td>
</tr>
</ng-container>
</tbody>
</table>
</div>
</div>
</div>
<br>
<div
class=
"row"
*
ngIf=
"!isLoadingLogbooks && !isEmptyLogbooks"
>
<div
class=
"col-12"
>
<p
class=
"text-center text-muted"
>
<small>
{{listLogbooks.PagingDisplay}}
</small>
</p>
</div>
<div
class=
"col-6"
>
<h5
class=
"text-center arataka-paging-arrow mb-5"
(
click
)="
PagingArrowLeft
()"
>
<i
class=
"fas fa-chevron-left"
></i>
Previous
</h5>
</div>
<div
class=
"col-6"
>
<h5
class=
"text-center arataka-paging-arrow mb-5"
(
click
)="
PagingArrowRight
()"
>
Next
<i
class=
"fas fa-chevron-right"
></i>
</h5>
</div>
</div>
src/app/admin/logbook/tabs-logbook/tabs-logbook.component.spec.ts
0 → 100644
View file @
565f5925
import
{
async
,
ComponentFixture
,
TestBed
}
from
'@angular/core/testing'
;
import
{
TabsLogbookComponent
}
from
'./tabs-logbook.component'
;
describe
(
'TabsLogbookComponent'
,
()
=>
{
let
component
:
TabsLogbookComponent
;
let
fixture
:
ComponentFixture
<
TabsLogbookComponent
>
;
beforeEach
(
async
(()
=>
{
TestBed
.
configureTestingModule
({
declarations
:
[
TabsLogbookComponent
]
})
.
compileComponents
();
}));
beforeEach
(()
=>
{
fixture
=
TestBed
.
createComponent
(
TabsLogbookComponent
);
component
=
fixture
.
componentInstance
;
fixture
.
detectChanges
();
});
it
(
'should create'
,
()
=>
{
expect
(
component
).
toBeTruthy
();
});
});
src/app/admin/logbook/tabs-logbook/tabs-logbook.component.ts
0 → 100644
View file @
565f5925
This diff is collapsed.
Click to expand it.
src/app/app.module.ts
View file @
565f5925
import
{
BrowserModule
}
from
'@angular/platform-browser'
;
import
{
BrowserModule
}
from
'@angular/platform-browser'
;
import
{
NgModule
}
from
'@angular/core'
;
import
{
NgModule
,
APP_INITIALIZER
}
from
'@angular/core'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
CommonModule
}
from
'@angular/common'
;
import
{
RouterModule
}
from
'@angular/router'
;
import
{
RouterModule
}
from
'@angular/router'
;
...
@@ -7,7 +7,7 @@ import { FormsModule,ReactiveFormsModule } from '@angular/forms';
...
@@ -7,7 +7,7 @@ import { FormsModule,ReactiveFormsModule } from '@angular/forms';
import
{
HttpClientModule
}
from
'@angular/common/http'
;
import
{
HttpClientModule
}
from
'@angular/common/http'
;
import
{
HomeService
}
from
'./home.service'
;
import
{
HomeService
}
from
'./home.service'
;
import
{
ServiceProxyWeb
}
from
'../shared/serviceproxy/service-proxy.service'
;
import
{
ConfigService
,
ServiceProxyWeb
}
from
'../shared/serviceproxy/service-proxy.service'
;
import
{
AuthService
}
from
'../shared/serviceproxy/service-proxy.service'
;
import
{
AuthService
}
from
'../shared/serviceproxy/service-proxy.service'
;
import
{
AppRoutingModule
}
from
'./app-routing.module'
;
import
{
AppRoutingModule
}
from
'./app-routing.module'
;
...
@@ -22,6 +22,10 @@ import { PageNotFoundComponent } from './page-not-found/page-not-found.component
...
@@ -22,6 +22,10 @@ import { PageNotFoundComponent } from './page-not-found/page-not-found.component
import
{
PipeglobalModule
}
from
'./pipe/pipeglobal/pipeglobal.module'
;
import
{
PipeglobalModule
}
from
'./pipe/pipeglobal/pipeglobal.module'
;
export
const
configFactory
=
(
configService
:
ConfigService
)
=>
{
return
()
=>
configService
.
loadEnvConfig
();
};
@
NgModule
({
@
NgModule
({
declarations
:
[
declarations
:
[
AppComponent
,
AppComponent
,
...
@@ -45,7 +49,13 @@ import { PipeglobalModule } from './pipe/pipeglobal/pipeglobal.module';
...
@@ -45,7 +49,13 @@ import { PipeglobalModule } from './pipe/pipeglobal/pipeglobal.module';
providers
:
[
providers
:
[
HomeService
,
HomeService
,
ServiceProxyWeb
,
ServiceProxyWeb
,
AuthService
AuthService
,
{
provide
:
APP_INITIALIZER
,
useFactory
:
configFactory
,
deps
:
[
ConfigService
],
multi
:
true
}
],
],
bootstrap
:
[
AppComponent
]
bootstrap
:
[
AppComponent
]
})
})
...
...
src/assets/configAPI.json
View file @
565f5925
{
{
"APIBASEURL"
:
"http://
localhost:9825
/"
,
"APIBASEURL"
:
"http://
innodev.vnetcloud.com/nobucall-api-v2
/"
,
"MICROSERVICEURL"
:
"h
h
ttp://innodev.vnetcloud.com/nobu-history-login/api/v1/"
,
"MICROSERVICEURL"
:
"http://innodev.vnetcloud.com/nobu-history-login/api/v1/"
,
"SITE_NAME"
:
"Visionet Helpdesk System"
,
"SITE_NAME"
:
"Visionet Helpdesk System"
,
"SITE_LOGO"
:
"https://i0.wp.com/jogorogo.info/wp-content/uploads/2017/07/logo_visionet.png?fit=879%2C227"
,
"SITE_LOGO"
:
"https://i0.wp.com/jogorogo.info/wp-content/uploads/2017/07/logo_visionet.png?fit=879%2C227"
,
"COMPANY_NAME"
:
"PT. Visionet Data Internasional"
,
"COMPANY_NAME"
:
"PT. Visionet Data Internasional"
,
...
...
src/environments/environment.ts
View file @
565f5925
...
@@ -4,8 +4,8 @@
...
@@ -4,8 +4,8 @@
export
const
environment
=
{
export
const
environment
=
{
production
:
false
,
production
:
false
,
"APIBASEURL"
:
"http://
crm.nobubank
.com/nobucall-api-v2/"
,
"APIBASEURL"
:
"http://
innodev.vnetcloud
.com/nobucall-api-v2/"
,
"MICROSERVICEURL"
:
"http://
crm.nobubank.com/nobucall-api
-log/api/v1/"
,
"MICROSERVICEURL"
:
"http://
innodev.vnetcloud.com/nobucall-history
-log/api/v1/"
,
"SITE_NAME"
:
"Visionet Helpdesk System"
,
"SITE_NAME"
:
"Visionet Helpdesk System"
,
"SITE_LOGO"
:
"https://i0.wp.com/jogorogo.info/wp-content/uploads/2017/07/logo_visionet.png?fit=879%2C227"
,
"SITE_LOGO"
:
"https://i0.wp.com/jogorogo.info/wp-content/uploads/2017/07/logo_visionet.png?fit=879%2C227"
,
"COMPANY_NAME"
:
"PT. Visionet Data Internasional"
,
"COMPANY_NAME"
:
"PT. Visionet Data Internasional"
,
...
...
src/shared/serviceproxy/service-proxy.service.ts
View file @
565f5925
...
@@ -9,42 +9,22 @@ import { Http, ResponseContentType, RequestOptions } from '@angular/http';
...
@@ -9,42 +9,22 @@ import { Http, ResponseContentType, RequestOptions } from '@angular/http';
import
{
environment
}
from
'../../environments/environment'
;
import
{
environment
}
from
'../../environments/environment'
;
//const API_URL = environment.apiUrl;
//const API_URL = environment.apiUrl;
var
API_URL
=
environment
.
APIBASEURL
;
var
API_URL
;
var
API_MICROSERVICE
=
environment
.
MICROSERVICEURL
;
var
API_MICROSERVICE
;
var
ckConfig
=
environment
.
ckeConfig
;
var
ckConfig
;
var
SITE_NAME
=
environment
.
SITE_NAME
;
var
SITE_NAME
;
var
SITE_LOGO
=
environment
.
SITE_LOGO
;
var
SITE_LOGO
;
var
COMPANY_NAME
=
environment
.
COMPANY_NAME
var
COMPANY_NAME
;
var
PARAM_AGENTROLEID
=
environment
.
PARAM_AGENTROLEID
var
PARAM_AGENTROLEID
;
var
PARAM_AGENTSPVROLEID
=
environment
.
PARAM_AGENTSPVROLEID
var
PARAM_AGENTSPVROLEID
;
var
PARAM_SPV
=
environment
.
PARAM_SPV
var
PARAM_SPV
;
var
PARAM_AGENT
=
environment
.
PARAM_AGENT
var
PARAM_AGENT
;
var
PARAM_SERVICEDESK
=
environment
.
PARAM_SERVICEDESK
var
PARAM_SERVICEDESK
;
var
PARAM_SUPPORT
=
environment
.
PARAM_SUPPORT
var
PARAM_SUPPORT
;
var
ZENDESK_API_URL
=
environment
.
ZENDESK_API_URL
var
ZENDESK_API_URL
;
var
ZENDESK_API_USER
=
environment
.
ZENDESK_API_USER
var
ZENDESK_API_USER
;
var
ZENDESK_API_PASS
=
environment
.
ZENDESK_API_PASS
var
ZENDESK_API_PASS
;
var
CATEGORY
=
environment
.
category
.
servicesubcategory_id
var
CATEGORY
;
console
.
log
(
environment
)
// fetch('./assets/configAPI.json').then(res => res.json())
// .then(res => {
// API_URL = res.APIBASEURL;
// API_MICROSERVICE = res.MICROSERVICEURL;
// ckConfig = res.ckeConfig;
// SITE_NAME = res.SITE_NAME;
// SITE_LOGO = res.SITE_LOGO;
// COMPANY_NAME = res.COMPANY_NAME
// PARAM_AGENTROLEID = res.PARAM_AGENTROLEID
// PARAM_AGENTSPVROLEID = res.PARAM_AGENTSPVROLEID
// PARAM_SPV = res.PARAM_SPV
// PARAM_AGENT = res.PARAM_AGENT
// PARAM_SERVICEDESK = res.PARAM_SERVICEDESK
// PARAM_SUPPORT = res.PARAM_SUPPORT
// ZENDESK_API_URL = res.ZENDESK_API_URL
// ZENDESK_API_USER = res.ZENDESK_API_USER
// ZENDESK_API_PASS = res.ZENDESK_API_PASS
// CATEGORY = res.category.servicesubcategory_id
// })
@
Injectable
({
@
Injectable
({
providedIn
:
'root'
providedIn
:
'root'
...
@@ -1128,6 +1108,38 @@ export class DashboardService {
...
@@ -1128,6 +1108,38 @@ export class DashboardService {
}
}
@
Injectable
({
providedIn
:
'root'
})
export
class
ConfigService
{
config
;
constructor
(
private
http
:
HttpClient
)
{}
loadEnvConfig
()
{
this
.
config
=
this
.
http
.
get
(
'./assets/configAPI.json'
)
.
subscribe
((
config
:
any
)
=>
{
API_URL
=
config
.
APIBASEURL
;
API_MICROSERVICE
=
config
.
MICROSERVICEURL
;
ckConfig
=
config
.
ckeConfig
;
SITE_NAME
=
config
.
SITE_NAME
;
SITE_LOGO
=
config
.
SITE_LOGO
;
COMPANY_NAME
=
config
.
COMPANY_NAME
;
PARAM_AGENTROLEID
=
config
.
PARAM_AGENTROLEID
;
PARAM_AGENTSPVROLEID
=
config
.
PARAM_AGENTSPVROLEID
;
PARAM_SPV
=
config
.
PARAM_SPV
;
PARAM_AGENT
=
config
.
PARAM_AGENT
;
PARAM_SERVICEDESK
=
config
.
PARAM_SERVICEDESK
;
PARAM_SUPPORT
=
config
.
PARAM_SUPPORT
;
ZENDESK_API_URL
=
config
.
ZENDESK_API_URL
;
ZENDESK_API_USER
=
config
.
ZENDESK_API_USER
;
ZENDESK_API_PASS
=
config
.
ZENDESK_API_PASS
;
CATEGORY
=
config
.
category
.
servicesubcategory_id
;
})
}
}
@
Injectable
({
@
Injectable
({
providedIn
:
'root'
providedIn
:
'root'
...
...
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