Commit bb6a595c authored by ari_darmawan's avatar ari_darmawan

Merge branch 'master' into development

# Conflicts:
#	src/environments/environment.prod.ts
parents 525b1b2c edb51879
This source diff could not be displayed because it is too large. You can view the blob instead.
<!-- <div class="row">
<div class="col-12 col-sm-12"> -->
<button class="btn btn-sm btn-success arataka-btn-success" style="width: 100px;" (click)="requestAPI()" [disabled]="isDisabledButtonSearch">
<i class="bi bi-search"></i>
Search
</button>
<!-- </div>
</div> -->
<div class="row">
<div class="col-12 col-sm-12 text-center mt-5" *ngIf="isTicketReportEmpty == true">
<p style="font-size:18px;" class="text-muted"><i class="fas fa-table fa-3x"></i> <br> No List of Report</p>
......@@ -44,7 +52,7 @@
<th rowspan="2">Status Pengaduan</th>
<th rowspan="2">Tanggal Resolved</th>
<th rowspan="2">SLA Internal</th>
<th rowspan="2">Hari Kerja</th>
<th rowspan="2">Hari SLA</th>
<th rowspan="2">Target Penyelesaian</th>
<th rowspan="2">Remark</th>
<th colspan="2">Potensi Kerugian</th>
......@@ -81,7 +89,7 @@
<th rowspan="2">Status Permintaan</th>
<th rowspan="2">Tanggal Resolved</th>
<th rowspan="2">SLA Internal</th>
<th rowspan="2">Hari Kerja</th>
<th rowspan="2">Hari SLA</th>
<th rowspan="2">Target Penyelesaian</th>
<th rowspan="2">Remark</th>
<th colspan="2">Potensi Kerugian</th>
......@@ -112,7 +120,7 @@
<th>Status Informasi</th>
<th>Tanggal</th>
<th>Target Penyelesaian</th>
<th>Hari Kerja</th>
<th>Hari SLA</th>
</tr>
</ng-container>
<ng-container *ngIf="TicketReportRequest.servicefamily_name == 'Inquiry Call Center & NWB'">
......@@ -136,7 +144,7 @@
<th>Status Informasi</th>
<th>Tanggal</th>
<th>Target Penyelesaian</th>
<th>Hari Kerja</th>
<th>Hari SLA</th>
</tr>
</ng-container>
<ng-container *ngIf="TicketReportRequest.servicefamily_name == 'Telepon terputus Call Center & NWB'">
......@@ -152,7 +160,7 @@
<th>Status</th>
<th>Tanggal Closed</th>
<th>Target Penyelesaian</th>
<th>Hari Kerja</th>
<th>Hari SLA</th>
</tr>
</ng-container>
</thead>
......
......@@ -54,6 +54,7 @@ export class AdminDashboardLogboookComponent implements OnInit {
public isTicketReportLoading = false
public isTicketReportEmpty = true
public isDisabledButtonSearch = false;
//For abort subscribtion search Metabase List
public Subscribtion = null;
......@@ -79,7 +80,15 @@ export class AdminDashboardLogboookComponent implements OnInit {
ngOnInitAfter(_RequestList, _Model){
this.TicketReportRequest =_RequestList
this.ModelReportCategoryLogBook =_Model
this.GettingTicketReportDataAPI(this.TicketReportRequest)
this.isTicketReportEmpty = true;
this.isTicketReportLoading = false;
this.TicketReportData = [];
// this.GettingTicketReportDataAPI(this.TicketReportRequest)
}
requestAPI() {
this.isDisabledButtonSearch = true;
this.GettingTicketReportDataAPI(this.TicketReportRequest);
}
ReportExportToExcel(){
......@@ -94,6 +103,17 @@ export class AdminDashboardLogboookComponent implements OnInit {
team_id : this.TicketReportRequest.team_id,
user_id : this.TicketReportRequest.user_id,
})
console.log({
page : this.TicketReportRequest.page,
perpage : this.TicketReportRequest.perpage,
start_date : this.TicketReportRequest.start_date,
end_date : this.TicketReportRequest.end_date,
servicefamily_id : this.TicketReportRequest.servicefamily_id,
servicefamily_name : this.TicketReportRequest.servicefamily_name,
is_export : 'excel',
team_id : this.TicketReportRequest.team_id,
user_id : this.TicketReportRequest.user_id,
})
}
......@@ -102,6 +122,7 @@ export class AdminDashboardLogboookComponent implements OnInit {
this.TicketReportRequest.page = this.TicketReportRequest.page -= 1
this.PagingDisplay = "Page "+this.TicketReportRequest.page+" from " + Math.ceil(this.ListDataPagingReport.count / this.TicketReportRequest.perpage) + ', Total ' + this.ListDataPagingReport.count + ' Data'
this.GettingTicketReportDataAPI(this.TicketReportRequest)
this.isDisabledButtonSearch = true;
}
}
......@@ -110,6 +131,7 @@ export class AdminDashboardLogboookComponent implements OnInit {
this.TicketReportRequest.page = this.TicketReportRequest.page += 1
this.PagingDisplay = "Page "+this.TicketReportRequest.page+" from " + Math.ceil(this.ListDataPagingReport.count / this.TicketReportRequest.perpage) + ', Total ' + this.ListDataPagingReport.count + ' Data'
this.GettingTicketReportDataAPI(this.TicketReportRequest)
this.isDisabledButtonSearch = true;
}
}
......@@ -120,12 +142,12 @@ export class AdminDashboardLogboookComponent implements OnInit {
this.TicketReportData = undefined
this.isTicketReportLoading = true
this.isTicketReportEmpty = false
console.log("Report Request", JSON.stringify(_Request))
console.log("Report Request", _Request)
//console.log("loading...")
this.Subscribtion = this._DashboardService.ReportTicketLogBook(_Request)
.subscribe((result: any) => {
console.log("Report Response nih", JSON.stringify(result))
console.log("Report Response nih", result)
this.isDisabledButtonSearch = false;
if(result.values.data.length != 0){
this.TicketReportData = result.values.data;
......@@ -145,7 +167,7 @@ export class AdminDashboardLogboookComponent implements OnInit {
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error))
//AratakaConfig.Alert.showAlert(err.error.detail,'alert-danger',2000)
this.isDisabledButtonSearch = false;
this.isTicketReportLoading = false
this.isTicketReportEmpty = true
......
<button class="btn btn-sm btn-success arataka-btn-success" style="width: 100px;" (click)="requestAPI()" [disabled]="isDisabledButtonSearch">
<i class="bi bi-search"></i>
Search
</button>
<div class="row">
<div class="col-12 col-sm-12 text-center mt-5" *ngIf="isTicketReportEmpty == true">
<p style="font-size:18px;" class="text-muted"><i class="fas fa-table fa-3x"></i> <br> No List of Report</p>
......@@ -50,7 +55,11 @@
<td>{{data.ticket_service_name}}</td>
<td>{{data.ticket_servicesubcategory_name}}</td>
<td>{{data.ticket_description}}</td>
<td>{{data.ticket_status}}</td>
<td>{{data.ticket_status}}
<div *ngIf="data.team_name == null">
( Defect )
</div>
</td>
<td>{{data.ticket_resolved_date | date: 'dd MMMM yyyy HH:mm'}}</td>
<td>{{data.ticket_total_days_resolved}}</td>
</tr>
......
......@@ -49,7 +49,7 @@ export class AdminDashboardReportComponent implements OnInit {
public TicketReportData = undefined
public ListDataPagingReport = {count : 0}
public isDisabledButtonSearch = false;
public isTicketReportLoading = false
public isTicketReportEmpty = true
......@@ -76,7 +76,15 @@ export class AdminDashboardReportComponent implements OnInit {
ngOnInitAfter(_RequestList, _Model){
this.TicketReportRequest =_RequestList
this.ModelReportCategory =_Model
this.isTicketReportEmpty = true;
this.isTicketReportLoading = false;
this.TicketReportData = [];
// this.GettingTicketReportDataAPI(this.TicketReportRequest)
}
requestAPI() {
this.GettingTicketReportDataAPI(this.TicketReportRequest)
this.isDisabledButtonSearch = true;
}
ReportExportToExcel(){
......@@ -121,7 +129,8 @@ export class AdminDashboardReportComponent implements OnInit {
this.isTicketReportEmpty = false
//console.log("Report Request", JSON.stringify(_Request))
this.Subscribtion = this._DashboardService.ReportTicket(_Request)
.subscribe((result: any) => {
.subscribe((result: any) => {
this.isDisabledButtonSearch = false;
//console.log("Report Response nih", JSON.stringify(result))
if(result.values.data.length != 0){
......@@ -146,7 +155,7 @@ export class AdminDashboardReportComponent implements OnInit {
this.isTicketReportLoading = false
this.isTicketReportEmpty = true
this.isDisabledButtonSearch = false;
this._cRef.detectChanges();
});
}
......
......@@ -275,6 +275,14 @@ export class AdminDashboardComponent implements OnInit {
}else{
userID = this._SP.getUserInformation.values.user_id
}
console.log({
user_id : userID,
user_name : this._SP.getUserInformation.values.contact_name,
start_date : this.DashboardCountRequest.start_date,
end_date : this.DashboardCountRequest.end_date,
type_id : this.DashboardCardColorsData[_i].TypeId,
type_name : this.DashboardCardColorsData[_i].Name
})
this.GettingExcelForDashboardDataAPI({
user_id : userID,
user_name : this._SP.getUserInformation.values.contact_name,
......@@ -497,7 +505,7 @@ export class AdminDashboardComponent implements OnInit {
//Excel
GettingExcelForDashboardDataAPI(_Request){
//console.log("Request Nih", JSON.stringify(_Request))
console.log("Request Nih", _Request)
AratakaConfig.LoadingPage.showLoading('Please wait.., perparing excel.')
this.Subscribtion = this._DashboardService.downloadFileExcelDashboard(_Request)
.subscribe((result: any) => {
......
......@@ -68,9 +68,9 @@
</div>
</div>
<div class="col-12 col-sm-12 col-md-4 col-lg-3 mb-3">
<!-- <div class="col-12 col-sm-12 col-md-4 col-lg-3 mb-3">
<button (click)="RemoveFile(i)" class="btn btn-sm btn-block btn-danger mt-2" style="border-radius:3px;"><i class="fas fa-trash"></i> Remove File</button>
</div>
</div> -->
</div>
</ng-container>
......
......@@ -893,6 +893,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
this.Env.Team.CsCabangBranchAgent,
this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness
]
}
......@@ -1026,6 +1027,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
this.Env.Team.CsCabangBranchAgent,
this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness
]
}
......
......@@ -344,7 +344,8 @@ export class AdminTicketCreateComponent implements OnInit {
this.Env.Team.ProductAndProcessConsumer,
this.Env.Team.SociomileStaff,
this.Env.Team.ITRM,
this.Env.Team.BarcodeQRIS
this.Env.Team.BarcodeQRIS,
this.Env.Team.MerchantBusiness
]
}
......@@ -764,7 +765,7 @@ export class AdminTicketCreateComponent implements OnInit {
if(result.values.code == 0){
// AratakaConfig.LoadingPage.hideLoading()
var ObjKey = Object.keys(result.values.objects)
var created = result.values.objects[ObjKey[0]]
......@@ -840,7 +841,6 @@ export class AdminTicketCreateComponent implements OnInit {
AratakaConfig.LoadingPage.hideLoading()
},
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error));
AratakaConfig.LoadingPage.hideLoading()
AratakaConfig.Alert.showAlert('Internal Server Error!','alert-danger',2000)
});
......@@ -870,7 +870,7 @@ export class AdminTicketCreateComponent implements OnInit {
}
},
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error));
AratakaConfig.Alert.showAlert(err.error.message,'alert-danger',3000)
AratakaConfig.LoadingPage.hideLoading()
});
}
......
......@@ -3,8 +3,8 @@
<div class="form-group" *ngIf="CustomerType != ''" >
<label><small>Customer Type <span class="text-danger">*</span></small></label>
<select type="text"
[disabled]="IsFormDisabled"
class="form-control form-control-sm select-style"
[disabled]="IsFormDisabledCSType"
[(ngModel)]="CustomerType"
(change)="CustomerTypeChange()">
<ng-container *ngFor="let CustomerType of CustomerTypeData; let i = index">
......@@ -136,13 +136,13 @@
<div class="col-4">
<button class="btn btn-sm btn-block btn-danger" style="border-radius: 3px" (click)="CancelClick()"><i class="fas fa-times"></i> Cancel</button>
</div>
<div class="col-4" *ngIf="IsFormDisabled == true">
<div class="col-4" *ngIf="IsFormDisabled && !isEditCustomerType">
<button class="btn btn-sm btn-block arataka-btn-default" (click)="EditCsutomerData()"><i class="fas fa-user-edit"></i> Edit Customer</button>
</div>
<div class="col-8" *ngIf="IsFormDisabledCSType == true">
<button class="btn btn-sm btn-block arataka-btn-default" (click)="EditCsutomerDataSubmit()"><i class="far fa-paper-plane"></i> Edit Customer</button>
<div class="col-8" *ngIf="IsFormDisabledCSType && isEditCustomerType">
<button class="btn btn-sm btn-block arataka-btn-default" (click)="EditCsutomerDataSubmit()"><i class="far fa-paper-plane"></i> Save Customer</button>
</div>
<div class="col-4" *ngIf="IsFormDisabledCSType == false">
<div class="col-4" *ngIf="!IsFormDisabledCSType">
<button class="btn btn-sm btn-block arataka-btn-primary" (click)="SubmitNewCustomer()"><i class="fas fa-plus-circle"></i> Add Customer</button>
</div>
</ng-container>
......
......@@ -34,6 +34,7 @@ export class AdminTicketCustomerMdComponent implements OnInit {
@Input() IsFormDisabled : boolean = false
@Input() IsFormDisabledCSType : boolean = false
isEditCustomerType: boolean = false;
public CustomerTypeData = [
......@@ -111,6 +112,7 @@ export class AdminTicketCustomerMdComponent implements OnInit {
}
ngOnInitAfter(_data,_urlParamData){
console.log([_data, _urlParamData])
this.urlParamData = {
value : null,
......@@ -250,20 +252,20 @@ export class AdminTicketCustomerMdComponent implements OnInit {
let that = this
this.FilterIdentityType()
this.FirstName = ""
this.LastName = ""
this.Email = ""
this.MobileNumber = ""
this.MobileNumber2 = ""
this.MothersName = ""
this.IdentityIDNumber = ""
// this.FirstName = ""
// this.LastName = ""
// this.Email = ""
// this.MobileNumber = ""
// this.MobileNumber2 = ""
// this.MothersName = ""
// this.IdentityIDNumber = ""
this.CustomerTypeData.forEach(function(item,index) {
if(item.Active){
that.IdentityIDType = that.IdentityIDTypeData[index].ID
return false;
}
});
this.Address = ""
// this.Address = ""
var date17 = new Date();
date17.setFullYear(date17.getFullYear() - 17);
......@@ -274,9 +276,10 @@ export class AdminTicketCustomerMdComponent implements OnInit {
isGet: false,
})
this.CustomerID = null
// this.CustomerID = null
this.IsFormDisabled = false
// this.IsFormDisabled = false
// this.isEditCustomerType = false;
}
......@@ -341,8 +344,10 @@ export class AdminTicketCustomerMdComponent implements OnInit {
CancelClick() {
if(!this.IsFormDisabledCSType){
this.isEditCustomerType = false;
this.ChildEvent.next(this.CustomerDataLocal)
}else{
this.isEditCustomerType = false;
this.IsFormDisabledCSType = false;
this.IsFormDisabled = true;
}
......@@ -428,6 +433,7 @@ export class AdminTicketCustomerMdComponent implements OnInit {
EditCsutomerData(){
this.IsFormDisabledCSType = true;
this.IsFormDisabled = false;
this.isEditCustomerType = true;
}
EditCsutomerDataSubmit(){
......@@ -471,7 +477,7 @@ export class AdminTicketCustomerMdComponent implements OnInit {
org_id: 1,
customer_id : this.CustomerID
}
console.log(Request)
if(valid){
this.UpdateCustomerAPI(Request)
}else{
......@@ -543,7 +549,7 @@ export class AdminTicketCustomerMdComponent implements OnInit {
this.IsFormDisabled = true
}else{
} else {
//this.MobileNumber = ""
// this.FirstName = ""
......@@ -559,15 +565,12 @@ export class AdminTicketCustomerMdComponent implements OnInit {
}
}else{
} else {
AratakaConfig.Alert.showAlert('Internal Server Error!','alert-danger',2000)
this.IsFormDisabled = false
}
AratakaConfig.LoadingPage.hideLoading()
},
(err: HttpErrorResponse) => {
console.log(this.MobileNumber)
console.log(JSON.stringify(err.error));
}, (err: HttpErrorResponse) => {
//AratakaConfig.Alert.showAlert(err.error.detail,'alert-danger',2000)
// this.MobileNumber = this.urlParamData.value
// this.FirstName = ""
......@@ -585,41 +588,34 @@ export class AdminTicketCustomerMdComponent implements OnInit {
});
}
GettingPersonByIdentityIDNumberListAPI(_Request){
GettingPersonByIdentityIDNumberListAPI(_Request) {
//AratakaConfig.LoadingPage.showLoading('Checking Person by Identity ID Number')
this._CustomerService.GetPersonByIdentityIDNumber(_Request)
.subscribe((result: any) => {
if(result != null){
console.log(JSON.stringify(result))
if(result.values != undefined){
if (result != null) {
if (result.values != undefined) {
this.FilterCustomerType()
let CsTypeVal = ""
if(
this.TeamID == this.Env.Team.CsCabangBranchAgent ||
this.TeamID == this.Env.Team.AgentCallCenter ||
this.TeamID == this.Env.Team.SociomileStaff)
{
if(result.values[0].customer_type == "Non Nasabah"){
this.TeamID == this.Env.Team.SociomileStaff ) {
if (result.values[0].customer_type == "Non Nasabah") {
CsTypeVal = "0"
}else if(result.values[0].customer_type == "Nasabah"){
} else if (result.values[0].customer_type == "Nasabah") {
CsTypeVal = "1"
}else if(result.values[0].customer_type == "Nasabah Perusahaan"){
} else if (result.values[0].customer_type == "Nasabah Perusahaan") {
CsTypeVal = "2"
}else{
} else {
CsTypeVal = ""
}
}
else
{
if(result.values[0].customer_type == "Non Nasabah"){
} else {
if (result.values[0].customer_type == "Non Nasabah") {
CsTypeVal = "0"
}else if(result.values[0].customer_type == "Nasabah"){
} else if (result.values[0].customer_type == "Nasabah") {
CsTypeVal = "1"
}else{
} else {
CsTypeVal = ""
}
}
......@@ -644,11 +640,10 @@ export class AdminTicketCustomerMdComponent implements OnInit {
isGet: false,
})
this.CustomerID = result.values[0].id
this.IsFormDisabled = true
this.CustomerID = result.values[0].id;
this.IsFormDisabled = true;
}else{
} else {
// this.MobileNumber = ""
// this.FirstName = ""
......@@ -666,14 +661,12 @@ export class AdminTicketCustomerMdComponent implements OnInit {
}
}else{
} else {
AratakaConfig.Alert.showAlert('Internal Server Error!','alert-danger',2000)
this.IsFormDisabled = false
}
AratakaConfig.LoadingPage.hideLoading()
},
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error));
}, (err: HttpErrorResponse) => {
//AratakaConfig.Alert.showAlert(err.error.detail,'alert-danger',2000)
// this.MobileNumber = ""
......@@ -694,15 +687,12 @@ export class AdminTicketCustomerMdComponent implements OnInit {
});
}
InsertNewCustomerAPI(_Request){
InsertNewCustomerAPI(_Request) {
AratakaConfig.LoadingPage.showLoading('Add new Customer')
this._CustomerService.AddNewCustomer(_Request)
.subscribe((result: any) => {
if(result != null){
//console.log(JSON.stringify(result))
if(result.values != undefined){
if (result != null) {
if (result.values != undefined) {
var ObjKey = Object.keys(result.values.objects)
......@@ -716,57 +706,47 @@ export class AdminTicketCustomerMdComponent implements OnInit {
}
this.ChildEvent.next(this.CustomerDataLocal)
}else{
} else {
AratakaConfig.Alert.showAlert('Failed to add Customer','alert-danger',2000)
}
}else{
} else {
AratakaConfig.Alert.showAlert('Internal Server Error!','alert-danger',2000)
}
AratakaConfig.LoadingPage.hideLoading()
},
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error));
//AratakaConfig.Alert.showAlert(err.error.detail,'alert-danger',2000)
}, (err: HttpErrorResponse) => {
AratakaConfig.LoadingPage.hideLoading()
});
}
UpdateCustomerAPI(_Request){
UpdateCustomerAPI(_Request) {
AratakaConfig.LoadingPage.showLoading('Update Customer')
this._CustomerService.UpdateCustomer(_Request)
.subscribe((result: any) => {
if(result != null){
//console.log(JSON.stringify(result))
if(result.values != undefined){
if (result != null) {
if (result.values != undefined) {
var ObjKey = Object.keys(result.values.objects)
if(result.values.objects[ObjKey[0]].key != undefined){
if (result.values.objects[ObjKey[0]].key != undefined) {
AratakaConfig.Alert.showAlert('Customer data updated successfully','alert-success',2000)
this.IsFormDisabledCSType = false;
this.IsFormDisabled = true;
this.isEditCustomerType = false;
}
}else{
} else {
this.isEditCustomerType = false;
AratakaConfig.Alert.showAlert('Failed to Update Customer','alert-danger',2000)
}
}else{
} else {
this.isEditCustomerType = false;
AratakaConfig.Alert.showAlert('Internal Server Error!','alert-danger',2000)
}
AratakaConfig.LoadingPage.hideLoading()
},
(err: HttpErrorResponse) => {
console.log(JSON.stringify(err.error));
//AratakaConfig.Alert.showAlert(err.error.detail,'alert-danger',2000)
}, (err: HttpErrorResponse) => {
this.isEditCustomerType = false;
AratakaConfig.LoadingPage.hideLoading()
});
}
}
......@@ -191,6 +191,7 @@
<span *ngIf="data.status == 'escalated_ttr'"class='badge badge-pill badge-danger'>ESCALATED TTR</span>
<span *ngIf="data.status == 'assigned'" class='badge badge-pill badge-primary'>ASSIGNED</span>
<span *ngIf="data.status == 'dispatched'" class='badge badge-pill badge-danger'>DISPATCH</span>
<span *ngIf="data.agent_id == 0" class='badge badge-pill' style="background-color: orange;">Defect</span>
<p class="m-1"><small>{{data.title}}</small></p>
<p class="m-1"><small><b>{{data.start_date| date: 'dd MMMM yyyy HH:mm'}}</b></small></p>
<hr>
......@@ -247,6 +248,7 @@
<span *ngIf="StatusTicket == 'escalated_ttr'"class='badge badge-pill badge-danger'>ESCALATED TTR</span>
<span *ngIf="StatusTicket == 'assigned'" class='badge badge-pill badge-primary'>ASSIGNED</span>
<span *ngIf="StatusTicket == 'dispatched'" class='badge badge-pill badge-danger'>DISPATCH</span>
<span *ngIf="Agent_ID == 0" class='badge badge-pill' style="background-color: orange;">Defect</span>
&nbsp;
<span *ngIf="CsCabang != ''" class="text-dark">
,
......
......@@ -98,6 +98,7 @@ export class AdminTicketDetailComponent implements OnInit {
]
//Model
public create_By_id = null
public CallerID = null
public TickectContactID = null
public TeamFriendlyName = null
......@@ -110,6 +111,7 @@ export class AdminTicketDetailComponent implements OnInit {
public StartDate = null
public Origin = null
public StatusTicket = null
public Agent_ID = null
public TicketTeamID = null
public TicketSolution = null
public PublicConversation = []
......@@ -278,11 +280,14 @@ export class AdminTicketDetailComponent implements OnInit {
}
SubmitAsDataByRole(_data){
if(_data.status == 'new' || _data.status == 'escalated_tto'){
this.SubmitAsData = [{
ID : "assign",
Name : "Assigned"
}]
console.log(_data)
if(_data.status == 'new' || _data.status == "escalated_tto"){
this.SubmitAsData = [
{
ID : "reject",
Name : "Reject"
}
]
}
else if(_data.status == 'escalated_ttr'){
......@@ -419,6 +424,7 @@ export class AdminTicketDetailComponent implements OnInit {
this.StartDate = null
this.Origin = null
this.StatusTicket = null
this.Agent_ID = null
this.TicketTeamID = null
this.PublicConversation = []
this.InternalNote = []
......@@ -533,9 +539,11 @@ export class AdminTicketDetailComponent implements OnInit {
TicketID : this.paramTicketID,
TicketClass : this.FinalClass,
SubmitAs : this.SubmitAs,
ResolveByID : this._SP.getUserInformation.values.user_id
ResolveByID : this._SP.getUserInformation.values.user_id,
status_ticket: this.StatusTicket,
createByID: this.create_By_id
}
console.log(Request)
var that = this;
AratakaConfig.CallDialog.showModal('Message will sent to customer by email. Are you sure?',{isConfirm : function(){
if(that.PublicReplyEditor != '' && that.SubmitAs != ''){
......@@ -803,6 +811,7 @@ export class AdminTicketDetailComponent implements OnInit {
var ObjKey = Object.keys(result.values.objects)
var data = result.values.objects[ObjKey[0]]
this.create_By_id = data.fields.createdby_id;
this.CallerID = data.fields.caller_id
this.TickectContactID = data.fields.ticket_contact_id
this.RefNumber = data.fields.ref
......@@ -811,6 +820,7 @@ export class AdminTicketDetailComponent implements OnInit {
this.StartDate = data.fields.start_date
this.Origin = data.fields.origin
this.StatusTicket = data.fields.status
this.Agent_ID = data.fields.agent_id
this.TicketTeamID = data.fields.team_id
this.TicketSolution = data.fields.solution
this.PublicConversation = data.fields.public_log.entries.reverse()
......@@ -942,6 +952,7 @@ export class AdminTicketDetailComponent implements OnInit {
this.Env.Team.CsCabangBranchAgent,
this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness
]
}
......@@ -978,7 +989,7 @@ export class AdminTicketDetailComponent implements OnInit {
.subscribe((result: any) => {
if(result != null){
this.AssigneeTeamData = []
//console.log(JSON.stringify(result))
console.log(result)
if(result.values != null){
......@@ -1075,6 +1086,7 @@ export class AdminTicketDetailComponent implements OnInit {
this.Env.Team.CsCabangBranchAgent,
this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness
]
}
......@@ -1664,7 +1676,7 @@ export class AdminTicketDetailComponent implements OnInit {
this._TicketService.TicketHistory(_Request)
.subscribe((result: any) => {
if(result != null){
//console.log(JSON.stringify(result))
console.log(result)
this.TicketListData = []
if(result.values != null){
this.TicketListData = result.values.tickets
......
......@@ -84,6 +84,7 @@
<span style="font-size: 12px;" class="badge badge-pill badge-danger" *ngIf="data.status == 'escalated_ttr'">{{data.status}}</span>
<span style="font-size: 12px;" class="badge badge-pill badge-danger" *ngIf="data.status == 'dispatched'">{{data.status}}</span>
<span style="font-size: 12px;" class="badge badge-pill badge-primary" *ngIf="data.status == 'redispatched'">{{data.status}}</span>
<span style="font-size: 12px;" class="badge badge-pill" style="background-color: orange;" *ngIf="data.agent_id == 0">Defect</span>
</td>
<td>{{data.title}}</td>
<td>{{data.start_date | date: 'dd MMMM yyyy HH:mm'}}</td>
......
......@@ -161,7 +161,65 @@ export class AdminTicketComponent implements OnInit {
this.KeyFilterStatus = "assigned,escalated_ttr";
}else{
} else if (this.RoleID == this.Env.PARAM_SERVICEDESK) {
this.FilterStatusDropDown = [
{
ID : "0",
Name : "All Status"
},
// {
// ID : "assigned,pending,escalated_ttr,resolved",
// Name : "All Status"
// },
{
ID : "assigned",
Name : "Assigned"
},
// {
// ID : "new",
// Name : "New"
// },
{
ID : "resolved",
Name : "Resolved"
},
// {
// ID : "Pending",
// Name : "Pending"
// },
// {
// ID : "escalated_tto",
// Name : "Escalated TTO"
// },
{
ID : "escalated_ttr",
Name : "Escalated TTR"
},
{
ID : "escalated_tto",
Name : "Defect"
},
// {
// ID : "dispatched",
// Name : "Dispatched"
// },
// {
// ID : "redispatched",
// Name : "Redispatched"
// },
{
ID : "rejected",
Name : "Rejected"
},
// {
// ID : "closed",
// Name : "Closed"
// },
]
this.KeyFilterStatus = "0";
} else {
this.FilterStatusDropDown = [
{
......@@ -195,7 +253,7 @@ export class AdminTicketComponent implements OnInit {
{
ID : "escalated_ttr",
Name : "Escalated TTR"
},
},
// {
// ID : "dispatched",
// Name : "Dispatched"
......
......@@ -8,7 +8,7 @@ export const environment = {
// ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api/',
//dev
// ApiUrlBase : ' http://innodev.vnetcloud.com/nobucall-api-dev/',
ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api-v2/',
//uat
// ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api-uat/',
......@@ -16,7 +16,14 @@ export const environment = {
//sit
// ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api-sit/',
<<<<<<< HEAD
ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api-v2/',
=======
// PROD
// ApiUrlBase : 'http://innodev.vnetcloud.com/nobucall-api-sit/',
// ApiUrlBase : 'http://crm.nobubank.com/nobucall-api-v2/',
>>>>>>> master
SITE_NAME : "Visionet Helpdesk System",
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",
......@@ -65,7 +72,8 @@ export const environment = {
SociomileStaff : 10895,
ProductInovationAndBusinessSupport : 30397,
ITRM : 30393,
SupervisorNobu : 42931
SupervisorNobu : 42931,
MerchantBusiness: 66798
},
Agent : {
......
......@@ -496,7 +496,7 @@ export class TicketService {
}
PublicReplySubmit(_data) {
console.log(_data)
const service = this.injector.get(ServiceProxyWeb)
var data;
......@@ -521,7 +521,11 @@ export class TicketService {
{
data = {
ticket_class: _data.TicketClass,
solution: _data.Message
solution: _data.Message,
ResolveByID: _data.ResolveByID,
UserID : _data.UserID,
status_ticket: _data.status_ticket,
createByID: _data.createByID
}
endPoint = API_URL +'v3/ticket/reject/' + _data.TicketID
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment