Commit 7592cda5 authored by ari_darmawan's avatar ari_darmawan

add team & change component dropdown search

parent 4abfb1fb
...@@ -20,7 +20,12 @@ ...@@ -20,7 +20,12 @@
"tsConfig": "src/tsconfig.app.json", "tsConfig": "src/tsconfig.app.json",
"assets": [ "assets": [
"src/favicon.ico", "src/favicon.ico",
"src/assets" "src/assets",
{
"glob": "**/*",
"input": "./node_modules/@ant-design/icons-angular/src/inline-svg/",
"output": "/assets/"
}
], ],
"styles": [ "styles": [
"src/styles.css", "src/styles.css",
...@@ -29,7 +34,8 @@ ...@@ -29,7 +34,8 @@
"./src/assets/MainStyle/fontawesome-free-5.11.2-web/css/all.min.css", "./src/assets/MainStyle/fontawesome-free-5.11.2-web/css/all.min.css",
"./src/assets/MainStyle/bootstrap-tagsinput.css", "./src/assets/MainStyle/bootstrap-tagsinput.css",
"./src/assets/MainStyle/DTPICKER-tempusdominus-bootstrap-4.min.css", "./src/assets/MainStyle/DTPICKER-tempusdominus-bootstrap-4.min.css",
"./src/assets/MainStyle/Switch.css" "./src/assets/MainStyle/Switch.css",
"node_modules/ng-zorro-antd/ng-zorro-antd.min.css"
], ],
"scripts": [ "scripts": [
"./node_modules/jquery/dist/jquery.min.js", "./node_modules/jquery/dist/jquery.min.js",
......
...@@ -33,7 +33,18 @@ ...@@ -33,7 +33,18 @@
</p> </p>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Assignee Team <span class="text-danger">*</span></label> <label class="text-muted">Assignee Team <span class="text-danger">*</span></label>
<select type="text" <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeam_ID"
nzPlaceHolder="Select Team"
[disabled]="IsFormTeamDisabled"
nzAllowClear
nzShowSearch
(ngModelChange)="AssigneeTeamChange()"
>
<nz-option *ngFor="let o of AssigneeTeamData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <select type="text"
#inputRequired #inputRequired
class="form-control form-control-sm select-style" class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeam_ID" [(ngModel)]="AssigneeTeam_ID"
...@@ -42,11 +53,21 @@ ...@@ -42,11 +53,21 @@
<ng-container *ngFor="let AssigneeTeam of AssigneeTeamData; let i = index"> <ng-container *ngFor="let AssigneeTeam of AssigneeTeamData; let i = index">
<option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option> <option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Assignee Agent <span class="text-danger">*</span></label> <label class="text-muted">Assignee Agent <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent"> <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamAgent_ID"
nzPlaceHolder="Select Agent"
[disabled]="IsFormTeamAgentDisabled"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of AssigneeTeamAgentData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent">
<input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name"
placeholder="All Agent : Type to search" (blur)="onBlur()" placeholder="All Agent : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectAgent($event)"/> (keyup)="onSeacrhSelectAgent($event)"/>
...@@ -67,7 +88,7 @@ ...@@ -67,7 +88,7 @@
<ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index"> <ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index">
<option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option> <option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="row" *ngIf="IsFormTeamDisabled == false && IsFormTeamAgentDisabled == false"> <div class="row" *ngIf="IsFormTeamDisabled == false && IsFormTeamAgentDisabled == false">
<div class="col-6"> <div class="col-6">
...@@ -103,7 +124,18 @@ ...@@ -103,7 +124,18 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Sub Topic <span class="text-danger">*</span></label> <label class="text-muted">Sub Topic <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic"> <nz-select
style="width: 100%;"
[(ngModel)]="SubTopic_ID"
nzPlaceHolder="Select Sub Topic"
nzAllowClear
nzShowSearch
(ngModelChange)="SubTopicChange()"
[disabled]="IsFormSubTopicDisabled"
>
<nz-option *ngFor="let o of SubTopicData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic">
<input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name"
placeholder="All Sub Topic : Type to search" (blur)="onBlur()" placeholder="All Sub Topic : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectSubTopic($event)"/> (keyup)="onSeacrhSelectSubTopic($event)"/>
...@@ -125,11 +157,21 @@ ...@@ -125,11 +157,21 @@
<ng-container *ngFor="let SubTopic of SubTopicData; let i = index"> <ng-container *ngFor="let SubTopic of SubTopicData; let i = index">
<option value="{{SubTopic.ID}}">{{SubTopic.Name}}</option> <option value="{{SubTopic.ID}}">{{SubTopic.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Category <span class="text-danger">*</span></label> <label class="text-muted">Category <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isCategory}" *ngIf="search.isCategory"> <nz-select
style="width: 100%;"
[(ngModel)]="Category_ID"
nzPlaceHolder="Select Category"
nzAllowClear
nzShowSearch
[disabled]="IsFormCategoryDisabled"
>
<nz-option *ngFor="let o of CategoryData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isCategory}" *ngIf="search.isCategory">
<input type="text" class="form-control form-control-sm" [(ngModel)]="Category_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="Category_Name"
placeholder="All Category : Type to search" (blur)="onBlur()" placeholder="All Category : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectCategory($event)"/> (keyup)="onSeacrhSelectCategory($event)"/>
...@@ -150,7 +192,7 @@ ...@@ -150,7 +192,7 @@
<ng-container *ngFor="let Category of CategoryData; let i = index"> <ng-container *ngFor="let Category of CategoryData; let i = index">
<option value="{{Category.ID}}">{{Category.Name}}</option> <option value="{{Category.ID}}">{{Category.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="row" *ngIf="IsFormTopicDisabled == false && IsFormSubTopicDisabled == false && IsFormCategoryDisabled == false"> <div class="row" *ngIf="IsFormTopicDisabled == false && IsFormSubTopicDisabled == false && IsFormCategoryDisabled == false">
<div class="col-6"> <div class="col-6">
...@@ -405,7 +447,17 @@ ...@@ -405,7 +447,17 @@
<div class="col-12"> <div class="col-12">
<div class="form-group"> <div class="form-group">
<label class="text-muted">Internal Note Assignee Team</label> <label class="text-muted">Internal Note Assignee Team</label>
<select type="text" <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamDestionationID"
nzPlaceHolder="Select Team"
nzAllowClear
nzShowSearch
(ngModelChange)="AssigneeTeamDestinationChange()"
>
<nz-option *ngFor="let o of AssigneeTeamDestionationData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <select type="text"
#inputRequired #inputRequired
class="form-control form-control-sm select-style" class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeamDestionationID" [(ngModel)]="AssigneeTeamDestionationID"
...@@ -413,20 +465,29 @@ ...@@ -413,20 +465,29 @@
<ng-container *ngFor="let AssigneeTeam of AssigneeTeamDestionationData; let i = index"> <ng-container *ngFor="let AssigneeTeam of AssigneeTeamDestionationData; let i = index">
<option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option> <option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="form-group"> <div class="form-group">
<label class="text-muted">Internal Note Assignee Agent</label> <label class="text-muted">Internal Note Assignee Agent</label>
<select type="text" <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamAgentDestionationID"
nzPlaceHolder="Select Agent"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of AssigneeTeamAgentDestinationData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <select type="text"
#inputRequired #inputRequired
class="form-control form-control-sm select-style" class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeamAgentDestionationID"> [(ngModel)]="AssigneeTeamAgentDestionationID">
<ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentDestinationData; let i = index"> <ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentDestinationData; let i = index">
<option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option> <option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
</div> </div>
</div> </div>
......
...@@ -398,7 +398,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -398,7 +398,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
} }
AssigneeTeamChange(){ AssigneeTeamChange(){
if(this.AssigneeTeam_ID != ""){ if(this.AssigneeTeam_ID != "" && this.AssigneeTeam_ID){
this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)}) this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)})
}else{ }else{
this.AssigneeTeamAgentData = [{ this.AssigneeTeamAgentData = [{
...@@ -410,7 +410,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -410,7 +410,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
} }
AssigneeTeamDestinationChange(){ AssigneeTeamDestinationChange(){
if(this.AssigneeTeamDestionationID != ""){ if(this.AssigneeTeamDestionationID != "" && this.AssigneeTeamDestionationID){
this.GettingTeamAgentForDestinationListAPI({ID : parseInt(this.AssigneeTeamDestionationID)}) this.GettingTeamAgentForDestinationListAPI({ID : parseInt(this.AssigneeTeamDestionationID)})
}else{ }else{
this.AssigneeTeamAgentDestinationData = [{ this.AssigneeTeamAgentDestinationData = [{
...@@ -440,7 +440,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -440,7 +440,7 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
} }
SubTopicChange(){ SubTopicChange(){
if(this.SubTopic_ID != ""){ if(this.SubTopic_ID != "" && this.SubTopic_ID){
this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)}) this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)})
}else{ }else{
this.CategoryData = [{ this.CategoryData = [{
...@@ -950,7 +950,13 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -950,7 +950,13 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
this.Env.Team.AgentCallCenter, this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff, this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness, this.Env.Team.MerchantBusiness,
this.Env.Team.DigitalLoan this.Env.Team.DigitalLoan,
this.Env.Team.TransferTradeOperation,
this.Env.Team.WealthManagement,
this.Env.Team.DigitalBankingBusiness,
this.Env.Team.MerchantService,
this.Env.Team.TransferTradeOperation,
this.Env.Team.ITB2BApplicationSupport
] ]
} }
...@@ -1085,7 +1091,12 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -1085,7 +1091,12 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
this.Env.Team.AgentCallCenter, this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff, this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness, this.Env.Team.MerchantBusiness,
this.Env.Team.DigitalLoan this.Env.Team.DigitalLoan,
this.Env.Team.TransferTradeOperation,
this.Env.Team.WealthManagement,
this.Env.Team.DigitalBankingBusiness,
this.Env.Team.MerchantService,
this.Env.Team.TransferTradeOperation,
] ]
} }
...@@ -1240,10 +1251,10 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -1240,10 +1251,10 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
if(result.values != null && result.values != undefined){ if(result.values != null && result.values != undefined){
this.AssigneeTeamAgentData.push({ // this.AssigneeTeamAgentData.push({
ID: "", // ID: "",
Name: "No Select" // Name: "No Select"
}) // })
this.AssigneeTeamAgent_ID = "" this.AssigneeTeamAgent_ID = ""
...@@ -1520,11 +1531,11 @@ export class AdminTicketOnpicDetailComponent implements OnInit { ...@@ -1520,11 +1531,11 @@ export class AdminTicketOnpicDetailComponent implements OnInit {
// }) // })
// this.SubTopic_ID = "" // this.SubTopic_ID = ""
// this.CategoryData = [{ this.CategoryData = [{
// ID: "", ID: "",
// Name: "No Select" Name: "No Select"
// }] }]
// this.Category_ID = "" this.Category_ID = ""
for(var i=0; i < result.values.length; i++){ for(var i=0; i < result.values.length; i++){
this.SubTopicData.push({ this.SubTopicData.push({
......
...@@ -56,16 +56,35 @@ ...@@ -56,16 +56,35 @@
</p> </p>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Assignee Team <span class="text-danger">*</span></label> <label class="text-muted">Assignee Team <span class="text-danger">*</span></label>
<select type="text" #inputRequired class="form-control form-control-sm select-style" <!-- <select type="text" #inputRequired class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeam_ID" (change)="AssigneeTeamChange()"> [(ngModel)]="AssigneeTeam_ID" (change)="AssigneeTeamChange()">
<ng-container *ngFor="let AssigneeTeam of AssigneeTeamData; let i = index"> <ng-container *ngFor="let AssigneeTeam of AssigneeTeamData; let i = index">
<option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option> <option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
<nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeam_ID"
nzPlaceHolder="Select Team"
nzAllowClear
nzShowSearch
(ngModelChange)="AssigneeTeamChange()"
>
<nz-option *ngFor="let o of AssigneeTeamData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Assignee Agent <span class="text-danger">*</span></label> <label class="text-muted">Assignee Agent <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent"> <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamAgent_ID"
nzPlaceHolder="Select Agent"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of AssigneeTeamAgentData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent">
<input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name"
placeholder="All Agent : Type to search" (blur)="onBlur()" placeholder="All Agent : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectAgent($event)"/> (keyup)="onSeacrhSelectAgent($event)"/>
...@@ -82,7 +101,7 @@ ...@@ -82,7 +101,7 @@
<ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index"> <ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index">
<option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option> <option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<hr> <hr>
<p> <p>
...@@ -99,7 +118,17 @@ ...@@ -99,7 +118,17 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Sub Topic <span class="text-danger">*</span></label> <label class="text-muted">Sub Topic <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic"> <nz-select
style="width: 100%;"
[(ngModel)]="SubTopic_ID"
nzPlaceHolder="Select Sub Topic"
nzAllowClear
nzShowSearch
(ngModelChange)="SubTopicChange()"
>
<nz-option *ngFor="let o of SubTopicData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic">
<input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name"
placeholder="All Sub Topic : Type to search" (blur)="onBlur()" placeholder="All Sub Topic : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectSubTopic($event)"/> (keyup)="onSeacrhSelectSubTopic($event)"/>
...@@ -116,11 +145,20 @@ ...@@ -116,11 +145,20 @@
<ng-container *ngFor="let SubTopic of SubTopicData; let i = index"> <ng-container *ngFor="let SubTopic of SubTopicData; let i = index">
<option value="{{SubTopic.ID}}">{{SubTopic.Name}}</option> <option value="{{SubTopic.ID}}">{{SubTopic.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Category <span class="text-danger">*</span></label> <label class="text-muted">Category <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isCategory}" *ngIf="search.isCategory"> <nz-select
style="width: 100%;"
[(ngModel)]="Category_ID"
nzPlaceHolder="Select Category"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of CategoryData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div [ngClass]="{'arataka-custom-autocomplete': search.isCategory}" *ngIf="search.isCategory">
<input type="text" class="form-control form-control-sm" [(ngModel)]="Category_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="Category_Name"
placeholder="All Category : Type to search" (blur)="onBlur()" placeholder="All Category : Type to search" (blur)="onBlur()"
(keyup)="onSeacrhSelectCategory($event)"/> (keyup)="onSeacrhSelectCategory($event)"/>
...@@ -136,7 +174,7 @@ ...@@ -136,7 +174,7 @@
<ng-container *ngFor="let Category of CategoryData; let i = index"> <ng-container *ngFor="let Category of CategoryData; let i = index">
<option value="{{Category.ID}}">{{Category.Name}}</option> <option value="{{Category.ID}}">{{Category.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<ng-container <ng-container
*ngIf="Topic_ID == Env.Topic.Keluhan.toString() || Topic_ID == Env.Topic.PermintaanKeServiceDesk.toString()"> *ngIf="Topic_ID == Env.Topic.Keluhan.toString() || Topic_ID == Env.Topic.PermintaanKeServiceDesk.toString()">
......
...@@ -240,7 +240,7 @@ export class AdminTicketCreateComponent implements OnInit { ...@@ -240,7 +240,7 @@ export class AdminTicketCreateComponent implements OnInit {
} }
AssigneeTeamChange(){ AssigneeTeamChange(){
if(this.AssigneeTeam_ID != ""){ if(this.AssigneeTeam_ID != "" && this.AssigneeTeam_ID){
this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)}) this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)})
}else{ }else{
this.AssigneeTeamAgentData = [{ this.AssigneeTeamAgentData = [{
...@@ -270,7 +270,7 @@ export class AdminTicketCreateComponent implements OnInit { ...@@ -270,7 +270,7 @@ export class AdminTicketCreateComponent implements OnInit {
} }
SubTopicChange(){ SubTopicChange(){
if(this.SubTopic_ID != ""){ if(this.SubTopic_ID != "" && this.SubTopic_ID){
this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)}) this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)})
}else{ }else{
this.CategoryData = [{ this.CategoryData = [{
...@@ -344,8 +344,8 @@ export class AdminTicketCreateComponent implements OnInit { ...@@ -344,8 +344,8 @@ export class AdminTicketCreateComponent implements OnInit {
var Request = { var Request = {
caller_id : this.CustomerMdData.ID, caller_id : this.CustomerMdData.ID,
service_id : this.SubTopic_ID, service_id : Number(this.SubTopic_ID),
servicesubcategory_id : this.Category_ID, servicesubcategory_id : Number(this.Category_ID),
title : this.Subject, title : this.Subject,
description : this.Description, description : this.Description,
cscabang : this.CSCabang, cscabang : this.CSCabang,
...@@ -425,7 +425,13 @@ export class AdminTicketCreateComponent implements OnInit { ...@@ -425,7 +425,13 @@ export class AdminTicketCreateComponent implements OnInit {
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 this.Env.Team.DigitalLoan,
this.Env.Team.TransferTradeOperation,
this.Env.Team.WealthManagement,
this.Env.Team.DigitalBankingBusiness,
this.Env.Team.MerchantService,
this.Env.Team.TransferTradeOperation,
this.Env.Team.ITB2BApplicationSupport
] ]
} }
...@@ -865,8 +871,8 @@ export class AdminTicketCreateComponent implements OnInit { ...@@ -865,8 +871,8 @@ export class AdminTicketCreateComponent implements OnInit {
this.InsertNewTicketAssignAPI({ this.InsertNewTicketAssignAPI({
ticket_assign : created.key, ticket_assign : created.key,
ticket_class : created.class, ticket_class : created.class,
team_id : this.AssigneeTeam_ID, team_id : Number(this.AssigneeTeam_ID),
agent_id : this.AssigneeTeamAgent_ID, agent_id : Number(this.AssigneeTeamAgent_ID),
source_agent_id : this._SP.getUserInformation.values.user_id source_agent_id : this._SP.getUserInformation.values.user_id
}) })
......
...@@ -91,18 +91,31 @@ ...@@ -91,18 +91,31 @@
</p> </p>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Assignee Team <span class="text-danger">*</span></label> <label class="text-muted">Assignee Team <span class="text-danger">*</span></label>
<select type="text" <nz-select
#inputRequired style="width: 100%;"
class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeam_ID" [(ngModel)]="AssigneeTeam_ID"
[disabled]="IsFormTeamDisabled" nzPlaceHolder="Select Team"
(change)="AssigneeTeamChange()"> nzAllowClear
<ng-container *ngFor="let AssigneeTeam of AssigneeTeamData; let i = index"> nzShowSearch
<option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option> (ngModelChange)="AssigneeTeamChange()"
</ng-container> [disabled]="IsFormTeamDisabled"
</select> >
</div> <nz-option *ngFor="let o of AssigneeTeamData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
<div class="form-group"> </nz-select>
</div>
<div class="form-group">
<label class="text-muted">Assignee Agent <span class="text-danger">*</span></label>
<nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamAgent_ID"
[disabled]="IsFormTeamAgentDisabled"
nzPlaceHolder="Select Agent"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of AssigneeTeamAgentData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div class="form-group">
<label class="text-muted">Assignee Agent <span class="text-danger">*</span></label> <label class="text-muted">Assignee Agent <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent"> <div [ngClass]="{'arataka-custom-autocomplete': search.isAgent}" *ngIf="search.isAgent">
<input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="AssigneeTeamAgent_Name"
...@@ -125,7 +138,7 @@ ...@@ -125,7 +138,7 @@
<ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index"> <ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentData; let i = index">
<option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option> <option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="row" *ngIf="IsFormTeamDisabled == false && IsFormTeamAgentDisabled == false"> <div class="row" *ngIf="IsFormTeamDisabled == false && IsFormTeamAgentDisabled == false">
<div class="col-6"> <div class="col-6">
...@@ -164,6 +177,32 @@ ...@@ -164,6 +177,32 @@
</select> </select>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="text-muted">Sub Topic <span class="text-danger">*</span></label>
<nz-select
style="width: 100%;"
[(ngModel)]="SubTopic_ID"
nzPlaceHolder="Select Sub Topic"
nzAllowClear
nzShowSearch
(ngModelChange)="SubTopicChange()"
[disabled]="IsFormSubTopicDisabled"
>
<nz-option *ngFor="let o of SubTopicData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
</div>
<div class="form-group">
<label class="text-muted">Category <span class="text-danger">*</span></label>
<nz-select
style="width: 100%;"
[(ngModel)]="Category_ID"
nzPlaceHolder="Select Category"
nzAllowClear
nzShowSearch
[disabled]="IsFormCategoryDisabled"
>
<nz-option *ngFor="let o of CategoryData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <div class="form-group">
<label class="text-muted">Sub Topic <span class="text-danger">*</span></label> <label class="text-muted">Sub Topic <span class="text-danger">*</span></label>
<div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic"> <div [ngClass]="{'arataka-custom-autocomplete': search.isSubTopic}" *ngIf="search.isSubTopic">
<input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name" <input type="text" class="form-control form-control-sm" [(ngModel)]="SubTopic_Name"
...@@ -212,7 +251,7 @@ ...@@ -212,7 +251,7 @@
<ng-container *ngFor="let Category of CategoryData; let i = index"> <ng-container *ngFor="let Category of CategoryData; let i = index">
<option value="{{Category.ID}}">{{Category.Name}}</option> <option value="{{Category.ID}}">{{Category.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
<div class="row" *ngIf="IsFormTopicDisabled == false && IsFormSubTopicDisabled == false && IsFormCategoryDisabled == false"> <div class="row" *ngIf="IsFormTopicDisabled == false && IsFormSubTopicDisabled == false && IsFormCategoryDisabled == false">
<div class="col-6"> <div class="col-6">
...@@ -476,7 +515,17 @@ ...@@ -476,7 +515,17 @@
<div class="col-12"> <div class="col-12">
<div class="form-group"> <div class="form-group">
<label class="text-muted">Internal Note Assignee Team <span class="text-danger">*</span></label> <label class="text-muted">Internal Note Assignee Team <span class="text-danger">*</span></label>
<select type="text" <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamDestionationID"
nzPlaceHolder="Select Team"
nzAllowClear
nzShowSearch
(ngModelChange)="AssigneeTeamDestinationChange()"
>
<nz-option *ngFor="let o of AssigneeTeamDestionationData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <select type="text"
#inputRequired #inputRequired
class="form-control form-control-sm select-style" class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeamDestionationID" [(ngModel)]="AssigneeTeamDestionationID"
...@@ -484,20 +533,29 @@ ...@@ -484,20 +533,29 @@
<ng-container *ngFor="let AssigneeTeam of AssigneeTeamDestionationData; let i = index"> <ng-container *ngFor="let AssigneeTeam of AssigneeTeamDestionationData; let i = index">
<option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option> <option value="{{AssigneeTeam.ID}}">{{AssigneeTeam.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="form-group"> <div class="form-group">
<label class="text-muted">Internal Note Assignee Agent <span class="text-danger">*</span></label> <label class="text-muted">Internal Note Assignee Agent <span class="text-danger">*</span></label>
<select type="text" <nz-select
style="width: 100%;"
[(ngModel)]="AssigneeTeamAgentDestionationID"
nzPlaceHolder="Select Agent"
nzAllowClear
nzShowSearch
>
<nz-option *ngFor="let o of AssigneeTeamAgentDestinationData" [nzValue]="o.ID" [nzLabel]="o.Name"></nz-option>
</nz-select>
<!-- <select type="text"
#inputRequired #inputRequired
class="form-control form-control-sm select-style" class="form-control form-control-sm select-style"
[(ngModel)]="AssigneeTeamAgentDestionationID"> [(ngModel)]="AssigneeTeamAgentDestionationID">
<ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentDestinationData; let i = index"> <ng-container *ngFor="let AssigneeTeamAgent of AssigneeTeamAgentDestinationData; let i = index">
<option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option> <option value="{{AssigneeTeamAgent.ID}}">{{AssigneeTeamAgent.Name}}</option>
</ng-container> </ng-container>
</select> </select> -->
</div> </div>
</div> </div>
</div> </div>
......
...@@ -415,7 +415,7 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -415,7 +415,7 @@ export class AdminTicketDetailComponent implements OnInit {
} }
AssigneeTeamChange(){ AssigneeTeamChange(){
if(this.AssigneeTeam_ID != ""){ if(this.AssigneeTeam_ID != "" && this.AssigneeTeam_ID){
this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)}) this.GettingTeamAgentListAPI({ID : parseInt(this.AssigneeTeam_ID)})
}else{ }else{
this.AssigneeTeamAgentData = [{ this.AssigneeTeamAgentData = [{
...@@ -427,7 +427,7 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -427,7 +427,7 @@ export class AdminTicketDetailComponent implements OnInit {
} }
AssigneeTeamDestinationChange(){ AssigneeTeamDestinationChange(){
if(this.AssigneeTeamDestionationID != ""){ if(this.AssigneeTeamDestionationID != "" && this.AssigneeTeamDestionationID){
this.GettingTeamAgentForDestinationListAPI({ID : parseInt(this.AssigneeTeamDestionationID)}) this.GettingTeamAgentForDestinationListAPI({ID : parseInt(this.AssigneeTeamDestionationID)})
}else{ }else{
this.AssigneeTeamAgentDestinationData = [{ this.AssigneeTeamAgentDestinationData = [{
...@@ -457,7 +457,7 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -457,7 +457,7 @@ export class AdminTicketDetailComponent implements OnInit {
} }
SubTopicChange(){ SubTopicChange(){
if(this.SubTopic_ID != ""){ if(this.SubTopic_ID != "" && this.SubTopic_ID){
this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)}) this.GettingCategoryListAPI({ID : parseInt(this.SubTopic_ID)})
}else{ }else{
this.CategoryData = [{ this.CategoryData = [{
...@@ -1049,7 +1049,13 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1049,7 +1049,13 @@ export class AdminTicketDetailComponent implements OnInit {
this.Env.Team.AgentCallCenter, this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff, this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness, this.Env.Team.MerchantBusiness,
this.Env.Team.DigitalLoan this.Env.Team.DigitalLoan,
this.Env.Team.TransferTradeOperation,
this.Env.Team.WealthManagement,
this.Env.Team.DigitalBankingBusiness,
this.Env.Team.MerchantService,
this.Env.Team.TransferTradeOperation,
this.Env.Team.ITB2BApplicationSupport
] ]
} }
...@@ -1112,7 +1118,6 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1112,7 +1118,6 @@ export class AdminTicketDetailComponent implements OnInit {
}) })
} }
} }
// this.AssigneeTeamData.sort(function(a, b){ // this.AssigneeTeamData.sort(function(a, b){
// if(a.Name < b.Name) { return -1; } // if(a.Name < b.Name) { return -1; }
// if(a.Name > b.Name) { return 1; } // if(a.Name > b.Name) { return 1; }
...@@ -1184,7 +1189,13 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1184,7 +1189,13 @@ export class AdminTicketDetailComponent implements OnInit {
this.Env.Team.AgentCallCenter, this.Env.Team.AgentCallCenter,
this.Env.Team.SociomileStaff, this.Env.Team.SociomileStaff,
this.Env.Team.MerchantBusiness, this.Env.Team.MerchantBusiness,
this.Env.Team.DigitalLoan this.Env.Team.DigitalLoan,
this.Env.Team.TransferTradeOperation,
this.Env.Team.WealthManagement,
this.Env.Team.DigitalBankingBusiness,
this.Env.Team.MerchantService,
this.Env.Team.TransferTradeOperation,
this.Env.Team.ITB2BApplicationSupport
] ]
} }
...@@ -1339,10 +1350,10 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1339,10 +1350,10 @@ export class AdminTicketDetailComponent implements OnInit {
if(result.values != null && result.values != undefined){ if(result.values != null && result.values != undefined){
this.AssigneeTeamAgentData.push({ // this.AssigneeTeamAgentData.push({
ID: "", // ID: "",
Name: "No Select" // Name: "No Select"
}) // })
this.AssigneeTeamAgent_ID = "" this.AssigneeTeamAgent_ID = ""
...@@ -1603,7 +1614,6 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1603,7 +1614,6 @@ export class AdminTicketDetailComponent implements OnInit {
Name : "Retrieving.." Name : "Retrieving.."
}] }]
this.SubTopic_ID = "" this.SubTopic_ID = ""
this._TicketService.GetSubTopic(_Request) this._TicketService.GetSubTopic(_Request)
.subscribe((result: any) => { .subscribe((result: any) => {
if(result != null){ if(result != null){
...@@ -1619,11 +1629,11 @@ export class AdminTicketDetailComponent implements OnInit { ...@@ -1619,11 +1629,11 @@ export class AdminTicketDetailComponent implements OnInit {
// }) // })
// this.SubTopic_ID = "" // this.SubTopic_ID = ""
// this.CategoryData = [{ this.CategoryData = [{
// ID: "", ID: "",
// Name: "No Select" Name: "No Select"
// }] }]
// this.Category_ID = "" this.Category_ID = ""
for(var i=0; i < result.values.length; i++){ for(var i=0; i < result.values.length; i++){
this.SubTopicData.push({ this.SubTopicData.push({
......
...@@ -37,7 +37,8 @@ import { TabsLogbookComponent } from './logbook/tabs-logbook/tabs-logbook.compon ...@@ -37,7 +37,8 @@ import { TabsLogbookComponent } from './logbook/tabs-logbook/tabs-logbook.compon
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';
*/ */
import { NzSelectModule } from 'ng-zorro-antd';
import { NgZorroAntdModule } from 'ng-zorro-antd';
@NgModule({ @NgModule({
declarations: [ declarations: [
/*PipeSha256, /*PipeSha256,
...@@ -76,7 +77,9 @@ import { PipeDencryptoJs } from '../pipe/pipe-global.pipe'; ...@@ -76,7 +77,9 @@ import { PipeDencryptoJs } from '../pipe/pipe-global.pipe';
ReactiveFormsModule, ReactiveFormsModule,
CommonModule, CommonModule,
AdminRoutingModule, AdminRoutingModule,
CKEditorModule CKEditorModule,
NzSelectModule,
NgZorroAntdModule
] ]
}) })
export class AdminModule { } export class AdminModule { }
...@@ -19,9 +19,9 @@ import { SideBarMenuComponent } from './shared/side-bar-menu/side-bar-menu.compo ...@@ -19,9 +19,9 @@ import { SideBarMenuComponent } from './shared/side-bar-menu/side-bar-menu.compo
import { NavTopMenuComponent } from './shared/nav-top-menu/nav-top-menu.component'; import { NavTopMenuComponent } from './shared/nav-top-menu/nav-top-menu.component';
import { SupportComponent } from './support/support.component'; import { SupportComponent } from './support/support.component';
import { PageNotFoundComponent } from './page-not-found/page-not-found.component'; import { PageNotFoundComponent } from './page-not-found/page-not-found.component';
import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
import { PipeglobalModule } from './pipe/pipeglobal/pipeglobal.module'; import { PipeglobalModule } from './pipe/pipeglobal/pipeglobal.module';
import { NgZorroAntdModule } from 'ng-zorro-antd';
export const configFactory = (configService: ConfigService) => { export const configFactory = (configService: ConfigService) => {
return () => configService.loadEnvConfig(); return () => configService.loadEnvConfig();
}; };
...@@ -43,6 +43,8 @@ export const configFactory = (configService: ConfigService) => { ...@@ -43,6 +43,8 @@ export const configFactory = (configService: ConfigService) => {
FormsModule, FormsModule,
ReactiveFormsModule, ReactiveFormsModule,
HttpClientModule, HttpClientModule,
NgZorroAntdModule,
BrowserAnimationsModule,
RouterModule.forRoot([]) RouterModule.forRoot([])
], ],
//exports: [RouterModule], //exports: [RouterModule],
......
...@@ -50,7 +50,12 @@ export const environment = { ...@@ -50,7 +50,12 @@ export const environment = {
"SupervisorNobu" : 42931, "SupervisorNobu" : 42931,
"MerchantBusiness": 66798, "MerchantBusiness": 66798,
"ServiceReport": 97408, "ServiceReport": 97408,
"DigitalLoan": 143888 "DigitalLoan": 143888,
"TransferTradeOperation": 219453,
"WealthManagement": 219458,
"DigitalBankingBusiness": 219459,
"MerchantService": 219460,
"ITB2BApplicationSupport": 219462
}, },
"Agent" : { "Agent" : {
"NobuCall" : 42, "NobuCall" : 42,
......
...@@ -55,7 +55,12 @@ export const environment = { ...@@ -55,7 +55,12 @@ export const environment = {
"SupervisorNobu" : 42931, "SupervisorNobu" : 42931,
"MerchantBusiness": 66798, "MerchantBusiness": 66798,
"ServiceReport": 97408, "ServiceReport": 97408,
"DigitalLoan": 143888 "DigitalLoan": 143888,
"TransferTradeOperation": 219453,
"WealthManagement": 219458,
"DigitalBankingBusiness": 219459,
"MerchantService": 219460,
"ITB2BApplicationSupport": 219462
}, },
"Agent" : { "Agent" : {
"NobuCall" : 42, "NobuCall" : 42,
......
...@@ -102,13 +102,22 @@ ...@@ -102,13 +102,22 @@
"@angular-devkit/core" "7.1.1" "@angular-devkit/core" "7.1.1"
"rxjs" "6.3.3" "rxjs" "6.3.3"
"@angular/animations@~7.1.0": "@angular/animations@^7.0.0", "@angular/animations@~7.1.0":
"integrity" "sha512-iTNxhPPraCZsE4rgM23lguT1kDV4mfYAr+Bsi5J0+v9ZJA+VaKvi6eRW8ZGrx4/rDz6hzTnBn1jgPppHFbsOcw==" "integrity" "sha512-iTNxhPPraCZsE4rgM23lguT1kDV4mfYAr+Bsi5J0+v9ZJA+VaKvi6eRW8ZGrx4/rDz6hzTnBn1jgPppHFbsOcw=="
"resolved" "https://registry.npmjs.org/@angular/animations/-/animations-7.1.1.tgz" "resolved" "https://registry.npmjs.org/@angular/animations/-/animations-7.1.1.tgz"
"version" "7.1.1" "version" "7.1.1"
dependencies: dependencies:
"tslib" "^1.9.0" "tslib" "^1.9.0"
"@angular/cdk@^7.0.0":
"integrity" "sha512-xbXxhHHKGkVuW6K7pzPmvpJXIwpl0ykBnvA2g+/7Sgy5Pd35wCC+UtHD9RYczDM/mkygNxMQtagyCErwFnDtQA=="
"resolved" "https://registry.npmjs.org/@angular/cdk/-/cdk-7.3.7.tgz"
"version" "7.3.7"
dependencies:
"tslib" "^1.7.1"
optionalDependencies:
"parse5" "^5.0.0"
"@angular/cli@~7.1.1": "@angular/cli@~7.1.1":
"integrity" "sha512-lPVKsk035T5Ls0Mf83OngrNoLZu/ucZSjRLN/GWZK1O/YYVmb/dTgVl/a7HC+G480tWQ34nlqnCRbrP7sE9v7g==" "integrity" "sha512-lPVKsk035T5Ls0Mf83OngrNoLZu/ucZSjRLN/GWZK1O/YYVmb/dTgVl/a7HC+G480tWQ34nlqnCRbrP7sE9v7g=="
"resolved" "https://registry.npmjs.org/@angular/cli/-/cli-7.1.1.tgz" "resolved" "https://registry.npmjs.org/@angular/cli/-/cli-7.1.1.tgz"
...@@ -124,7 +133,7 @@ ...@@ -124,7 +133,7 @@
"semver" "5.5.1" "semver" "5.5.1"
"symbol-observable" "1.2.0" "symbol-observable" "1.2.0"
"@angular/common@>=5.0.0", "@angular/common@~7.1.0", "@angular/common@7.1.1": "@angular/common@^7.0.0", "@angular/common@>=5.0.0", "@angular/common@>=7.0.0", "@angular/common@~7.1.0", "@angular/common@7.1.1":
"integrity" "sha512-SngekFx9v39sjgi9pON0Wehxpu+NdUk7OEebw4Fa8dKqTgydTkuhmnNH+9WQe264asoeCt51oufPRjIqMLNohA==" "integrity" "sha512-SngekFx9v39sjgi9pON0Wehxpu+NdUk7OEebw4Fa8dKqTgydTkuhmnNH+9WQe264asoeCt51oufPRjIqMLNohA=="
"resolved" "https://registry.npmjs.org/@angular/common/-/common-7.1.1.tgz" "resolved" "https://registry.npmjs.org/@angular/common/-/common-7.1.1.tgz"
"version" "7.1.1" "version" "7.1.1"
...@@ -155,14 +164,14 @@ ...@@ -155,14 +164,14 @@
dependencies: dependencies:
"tslib" "^1.9.0" "tslib" "^1.9.0"
"@angular/core@>=2.3.1 <8.0.0 || >7.0.0-beta <8.0.0", "@angular/core@>=5.0.0", "@angular/core@~7.1.0", "@angular/core@7.1.1", "@angular/core@7.2.16": "@angular/core@^7.0.0", "@angular/core@>=2.3.1 <8.0.0 || >7.0.0-beta <8.0.0", "@angular/core@>=5.0.0", "@angular/core@>=7.0.0", "@angular/core@~7.1.0", "@angular/core@7.1.1", "@angular/core@7.2.16":
"integrity" "sha512-Osig5SRgDRQ+Hec/liN7nq/BCJieB+4/pqRh9rFbOXezb2ptgRZqdXOXN8P17i4AwPVf308Mh55V0niJ5Eu3Rw==" "integrity" "sha512-Osig5SRgDRQ+Hec/liN7nq/BCJieB+4/pqRh9rFbOXezb2ptgRZqdXOXN8P17i4AwPVf308Mh55V0niJ5Eu3Rw=="
"resolved" "https://registry.npmjs.org/@angular/core/-/core-7.1.1.tgz" "resolved" "https://registry.npmjs.org/@angular/core/-/core-7.1.1.tgz"
"version" "7.1.1" "version" "7.1.1"
dependencies: dependencies:
"tslib" "^1.9.0" "tslib" "^1.9.0"
"@angular/forms@>=5.0.0", "@angular/forms@~7.1.0": "@angular/forms@^7.0.0", "@angular/forms@>=5.0.0", "@angular/forms@~7.1.0":
"integrity" "sha512-yCWuPjpu23Wc3XUw7v/ACNn/e249oT0bYlM8aaMQ1F5OwrmmC4NJC12Rpl9Ihza61RIHIKzNcHVEgzc7WhcSag==" "integrity" "sha512-yCWuPjpu23Wc3XUw7v/ACNn/e249oT0bYlM8aaMQ1F5OwrmmC4NJC12Rpl9Ihza61RIHIKzNcHVEgzc7WhcSag=="
"resolved" "https://registry.npmjs.org/@angular/forms/-/forms-7.1.1.tgz" "resolved" "https://registry.npmjs.org/@angular/forms/-/forms-7.1.1.tgz"
"version" "7.1.1" "version" "7.1.1"
...@@ -202,6 +211,21 @@ ...@@ -202,6 +211,21 @@
dependencies: dependencies:
"tslib" "^1.9.0" "tslib" "^1.9.0"
"@ant-design/colors@^3.1.0":
"integrity" "sha512-YKgNbG2dlzqMhA9NtI3/pbY16m3Yl/EeWBRa+lB1X1YaYxHrxNexiQYCLTWO/uDvAjLFMEDU+zR901waBtMtjQ=="
"resolved" "https://registry.npmjs.org/@ant-design/colors/-/colors-3.2.2.tgz"
"version" "3.2.2"
dependencies:
"tinycolor2" "^1.4.1"
"@ant-design/icons-angular@^2.0.2":
"integrity" "sha512-FDOtuxPKm2CaxWBWFqP2a5abtrrlVz8HzBdLEJJD68bW9ombWQKH71ZMp1Iw53Koqn1KTUCy0jPqSuSwx5wcrA=="
"resolved" "https://registry.npmjs.org/@ant-design/icons-angular/-/icons-angular-2.1.0.tgz"
"version" "2.1.0"
dependencies:
"@ant-design/colors" "^3.1.0"
"tslib" "^1.9.0"
"@babel/code-frame@^7.0.0": "@babel/code-frame@^7.0.0":
"integrity" "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==" "integrity" "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA=="
"resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz" "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz"
...@@ -1896,6 +1920,11 @@ ...@@ -1896,6 +1920,11 @@
dependencies: dependencies:
"assert-plus" "^1.0.0" "assert-plus" "^1.0.0"
"date-fns@^1.29.0":
"integrity" "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw=="
"resolved" "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz"
"version" "1.30.1"
"date-format@^1.2.0": "date-format@^1.2.0":
"integrity" "sha1-YV6CjiM90aubua4JUODOzPpuytg=" "integrity" "sha1-YV6CjiM90aubua4JUODOzPpuytg="
"resolved" "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz" "resolved" "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz"
...@@ -4525,6 +4554,16 @@ ...@@ -4525,6 +4554,16 @@
"resolved" "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz" "resolved" "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz"
"version" "2.6.0" "version" "2.6.0"
"ng-zorro-antd@^7.1.0":
"integrity" "sha512-EA/vsrnfkmEfwr1hTXOh3p3g7rx/4go34JQm6QtVnk7ddH9Fvk+hSLgrh8CddNvSrNtxDDHXKlnAyAqWCNpTZQ=="
"resolved" "https://registry.npmjs.org/ng-zorro-antd/-/ng-zorro-antd-7.1.0.tgz"
"version" "7.1.0"
dependencies:
"@angular/cdk" "^7.0.0"
"@ant-design/icons-angular" "^2.0.2"
"date-fns" "^1.29.0"
"tslib" "^1.9.0"
"ngx-ckeditor@^0.4.0": "ngx-ckeditor@^0.4.0":
"integrity" "sha512-SIFbVVFRy08Pz2/WuzqNXU0LW8kcuAgxrxL4SLi+8zl1AAxqvqjk79aAiI79A7XI2u+w9m22Suq9Pv3AvyjnTg==" "integrity" "sha512-SIFbVVFRy08Pz2/WuzqNXU0LW8kcuAgxrxL4SLi+8zl1AAxqvqjk79aAiI79A7XI2u+w9m22Suq9Pv3AvyjnTg=="
"resolved" "https://registry.npmjs.org/ngx-ckeditor/-/ngx-ckeditor-0.4.0.tgz" "resolved" "https://registry.npmjs.org/ngx-ckeditor/-/ngx-ckeditor-0.4.0.tgz"
...@@ -4975,6 +5014,11 @@ ...@@ -4975,6 +5014,11 @@
"error-ex" "^1.3.1" "error-ex" "^1.3.1"
"json-parse-better-errors" "^1.0.1" "json-parse-better-errors" "^1.0.1"
"parse5@^5.0.0":
"integrity" "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug=="
"resolved" "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz"
"version" "5.1.1"
"parse5@4.0.0": "parse5@4.0.0":
"integrity" "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==" "integrity" "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA=="
"resolved" "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz" "resolved" "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz"
...@@ -6518,6 +6562,11 @@ ...@@ -6518,6 +6562,11 @@
dependencies: dependencies:
"setimmediate" "^1.0.4" "setimmediate" "^1.0.4"
"tinycolor2@^1.4.1":
"integrity" "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw=="
"resolved" "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz"
"version" "1.6.0"
"tmp@^0.0.33", "tmp@0.0.33", "tmp@0.0.x": "tmp@^0.0.33", "tmp@0.0.33", "tmp@0.0.x":
"integrity" "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==" "integrity" "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw=="
"resolved" "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" "resolved" "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz"
...@@ -6609,7 +6658,7 @@ ...@@ -6609,7 +6658,7 @@
"source-map-support" "^0.5.6" "source-map-support" "^0.5.6"
"yn" "^2.0.0" "yn" "^2.0.0"
"tslib@^1.8.0", "tslib@^1.8.1", "tslib@^1.9.0": "tslib@^1.7.1", "tslib@^1.8.0", "tslib@^1.8.1", "tslib@^1.9.0":
"integrity" "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==" "integrity" "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ=="
"resolved" "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz" "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz"
"version" "1.9.3" "version" "1.9.3"
...@@ -6676,7 +6725,7 @@ ...@@ -6676,7 +6725,7 @@
"resolved" "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" "resolved" "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
"version" "0.0.6" "version" "0.0.6"
"typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev", "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev", "typescript@>=2.4.0 < 3.2", "typescript@>=3.1.1 <3.2", "typescript@~3.1.6", "typescript@3.1.6": "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev", "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev", "typescript@>=2.4.0 < 3.2", "typescript@>=3.1.1 <3.2", "typescript@~3.1.3", "typescript@~3.1.6", "typescript@3.1.6":
"integrity" "sha512-tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==" "integrity" "sha512-tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA=="
"resolved" "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz" "resolved" "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz"
"version" "3.1.6" "version" "3.1.6"
......
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