jun 28 release Mohemm CS

MOHEMM-Q3-DEV-LATEST
umasoodch 4 years ago
parent d67d3fcab9
commit b510d9da7b

@ -61,8 +61,7 @@
</ion-label>
</ion-item>
<div *ngFor="let menu of menuList">
<ion-item (click)="oepnMyRequest(menu)" *ngIf="menu.REQUEST_GROUP_NAME =='MBL_RG_01' && menu.MENU_TYPE =='E'">
<ion-item (click)="oepnMyRequest(menu)" *ngIf="menu.REQUEST_GROUP_NAME =='MBL_RG_01'">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 20px !important;" src="../assets/imgs/my-request.png" item-left>
</ion-thumbnail>
@ -184,8 +183,7 @@
</ion-label>
</ion-item>
<div *ngFor="let menu of menuList">
<ion-item (click)="oepnMyRequest(menu)" *ngIf="menu.REQUEST_GROUP_NAME =='MBL_RG_01' && menu.MENU_TYPE =='E'">
<ion-item (click)="oepnMyRequest(menu)" *ngIf="menu.REQUEST_GROUP_NAME =='MBL_RG_01'">
<ion-thumbnail slot="start" class="menu-thumb">
<img style= "height: 20px !important;" src="../assets/imgs/my-request.png" item-left>
</ion-thumbnail>

@ -357,7 +357,8 @@ export class AppComponent implements OnInit {
}
oepnMyRequest(menu) {
this.cs.sharedService.setSharedData(menu, MenuResponse.SELECTED_MENU);
this.cs.openConcurrentReport();
// this.cs.openConcurrentReport();
this.cs.openConcurrentTransactionsHome();
this.menu.toggle();
}
oepnTransaction() {

@ -1,5 +1,5 @@
<ion-content style="--background: white;">
<div>
<ion-content style="--background: white;" class="biggerPhone">
<div class="rocket-image">
<img src="assets/icon/update_rocket_image.png" style="width: 100%;" />
</div>
<div style="text-align: center;">

@ -0,0 +1,10 @@
@media only screen and (min-width: 540px) and (max-width: 767px) {
.biggerPhone {
.rocket-image {
img {
height: 350px;
}
}
}
}

@ -34,7 +34,7 @@ export class AttendScanService {
userData: any = {};
public isFakeLocationUsed = false;
public isGpsRequired = false;
public collection = 'HMG';
public collection = 'CS';
constructor(private device: Device,
private zbar: ZBar,

@ -145,8 +145,8 @@ export class AuthenticationService {
} else {
mobileType = 'android';
}
request.VersionID = 3.6;
request.Channel = 33;
request.VersionID = 3.7;
request.Channel = 31;
request.LanguageID = TranslatorService.getCurrentLanguageCode();
request.MobileType = mobileType;
@ -228,7 +228,7 @@ export class AuthenticationService {
public login(request: LoginRequest, onError: any, errorLabel: string): Observable<Response> {
this.setPublicFields(request);
request.P_APP_VERSION = "HMG";
request.P_APP_VERSION = "CS";
return this.con.post(AuthenticationService.login, request, onError, errorLabel);
}
@ -485,7 +485,7 @@ export class AuthenticationService {
public checkUserAuthentication(request: CheckUserAuthenticationRequest, onError: any, errorLabel: string)
: Observable<CheckUserAuthenticationResponse> {
this.setPublicFields(request);
request.P_APP_VERSION = "HMG";
request.P_APP_VERSION = "CS";
return this.con.post(AuthenticationService.userChecking, request, onError, errorLabel);
}
@ -495,7 +495,7 @@ export class AuthenticationService {
return this.con.post(AuthenticationService.activationCodeURL, request, onError, errorLabel);
}
public checkSMS(request: SMSCheckRequest, onError: any, errorLabel: string, fromSMS = false )
public checkSMS(request: SMSCheckRequest, onError: any, errorLabel: string, fromSMS = false)
: Observable<SMSCheckResponse> {
this.setPublicFields(request);
return this.con.post(AuthenticationService.smsCheck, request, onError, errorLabel, fromSMS);

@ -1358,6 +1358,10 @@ export class CommonService {
this.nav.navigateForward(['/reports/transaction-list']);
}
public openConcurrentTransactionsHome() {
this.nav.navigateForward(['/reports/transactions']);
}
public openTermination() {
this.nav.navigateForward(['/termination/termination-form']);

@ -427,6 +427,8 @@ export class HomePage implements OnInit {
if (this.menuList[i].MENU_TYPE === 'M') {
this.events.publish('myTeamFlag', 'true');
// this.common.sharedService.setSharedData('true', "myTeamFlag");
} else {
this.events.publish('myTeamFlag', 'false');
}
}

@ -301,15 +301,6 @@ export class HomeComponent implements OnInit {
return { AttachmentID: this.indexLastObj, FileName: res.name, Base64Data: res.data.split(",")[1], ContentType: 'image/' + attachType };
});
} catch (e) { }
}
}

@ -35,7 +35,7 @@ export class HrRequestFormComponent implements OnInit {
public searchKeySelect = 'Complaints';
myColor: string = 'secondary';
public showRequestDetails = false;
public proID = "HMG"
public proID = "CS"
public inquiry: string;
public HR: string;
public complaints: string;

@ -100,8 +100,8 @@
</div>
</div>
</div>
<ion-infinite-scroll (ionInfinite)="doInfinite($event)" *ngIf="itemType !== ''">
<ion-infinite-scroll (ionInfinite)="doInfinite($event)" *ngIf="itemType !== '' && worklistLength >= 25">
<ion-infinite-scroll-content></ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>

@ -80,6 +80,7 @@ export class HomeComponent implements OnInit {
public totalMR = 0;
public totalIC = 0;
public totalStamp = 0;
public worklistLength = 0;
public showChart = false;
@ -423,6 +424,7 @@ export class HomeComponent implements OnInit {
}
this.WorklistService.getWorkList(this.WorkListObj, '', '', this.isPostNoLoad).subscribe((result) => {
if (this.common.validResponse(result)) {
this.worklistLength = result.GetWorkList.length;
this.handleWorkListResult(result.GetWorkList);
}
}
@ -589,6 +591,7 @@ export class HomeComponent implements OnInit {
if (!this.isReachEnd && this.selectedFilter !== 'ITG') {
this.WorklistService.getWorkList(this.WorkListObj, '', '', this.isPostNoLoad).subscribe((result) => {
if (this.common.validResponse(result)) {
this.worklistLength = result.GetWorkList.length;
this.handleWorkListResult(result.GetWorkList);
}
});

@ -170,6 +170,10 @@
</ion-list>
<div class="square-selected" *ngIf="searchKey"><div class="profileImageDiv">
<ion-label class="employee-details sc-ion-label-ios-h sc-ion-label-ios-s ios hydrated"><span>{{searchKey}}</span></ion-label>
<div class="star-fav" ><img src="assets/imgs/close.svg" (click)="resetSelected()"></div></div></div>
<!-- <div style="font-weight: bold;" *ngIf="searchKeySelect === '4' && !isFavoriteLetterActive">
<ion-slides [options]="slideOptsOne">
<ion-slide *ngFor="let filter of favLetter; let i=index">

@ -7,34 +7,42 @@
position: relative;
bottom: 4px;
}
ion-radio {
--color-checked: #269db8;
}
.center {
text-align: center;
}
.boldTxtNav {
text-align: start;
font-weight: bold;
padding: 12px;
}
.employee-details {
display: inline-block;
margin: 10px;
}
.empImgeRep {
display: inline-block;
height: 40px;
width: 40px;
}
.star-fav {
float: right;
margin: 10px;
}
.star-fav-left {
float: left;
margin: 10px 5px;
}
.uk-margin {
margin: 15px 15px 0px 15px;
font-weight: bold;
@ -42,9 +50,11 @@ ion-radio {
position: relative;
top: 10px;
}
.uk-padding {
padding: 20px;
}
.uk-padding .employee-details {
bottom: 10px;
position: relative;
@ -55,18 +65,22 @@ ion-radio {
border-radius: 21px;
padding-left: 10px !important;
}
.filterInput-ar {
border: solid var(--gray) 1px;
border-radius: 21px;
--padding-start: 10px !important;
}
.square-container {
width: 100%;
clear: both;
}
.square {
clear: both;
}
.top-radio-row {
font-size: 12px;
}
@ -104,6 +118,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
position: relative;
top: 0;
}
.profileImage {
width: 60px !important;
}
@ -111,9 +126,11 @@ button.item-button.button.button-md.button-clear.button-clear-md {
.activated {
border: #209a83 0.02cm solid;
}
.deactivated {
border: #e4e4e4 0.02cm solid;
}
.repContentDiv {
text-align: center;
width: 85%;
@ -124,6 +141,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
margin-top: -9px;
margin-right: -35px;
}
.selIEmpDiv {
text-align: right;
margin-bottom: -26px;
@ -143,6 +161,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
margin: 8px 17px 0px 17px;
padding: 10px 2px 10px 2px;
}
.filterInput {
border: solid var(--gray) 1px;
border-radius: 21px;
@ -161,6 +180,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
// padding-right: 129px;
//margin-right: -136px;
}
.filterBtn {
background: var(--newgreen);
--background: var (--newgreen);
@ -168,6 +188,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
height: 60px;
width: 60px;
}
.filterBtn-ar {
// background: var(--newgreen);
// --background: var (--newgreen);
@ -191,6 +212,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
// padding: 8px;
width: 100%;
}
.square {
// width:calc(100% / 2);
width: 100%;
@ -223,17 +245,21 @@ button.item-button.button.button-md.button-clear.button-clear-md {
position: relative;
bottom: 4px;
}
ion-radio {
--color-checked: #269db8;
}
.center {
text-align: center;
padding: 5px;
}
.boldTxtNav {
font-weight: bold;
padding: 5px;
}
.employee-details {
display: inline-block;
margin: 10px;
@ -241,15 +267,18 @@ ion-radio {
white-space: nowrap;
width: 70%;
}
.empImgeRep {
display: inline-block;
height: 40px;
width: 40px;
}
.star-fav {
float: right;
margin: 15px 0px 0px 0px;
}
.uk-margin {
margin: 15px 15px 0px 15px;
font-weight: bold;
@ -257,9 +286,11 @@ ion-radio {
position: relative;
top: 10px;
}
.uk-padding {
padding: 20px;
}
.uk-padding .employee-details {
bottom: 10px;
position: relative;
@ -275,6 +306,7 @@ ion-radio {
padding-bottom: 25px;
padding-top: 15px;
}
.textSearchType {
padding-top: 8px;
font-size: 12px;
@ -282,32 +314,56 @@ ion-radio {
.isFavLetterActive {
color: #269db8;
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
height: 35px;
}
.vl {
border-left: 2px solid lightgray;
height: 42px;
}
.searchText{
.searchText {
background: transparent;
color: #269db8;
font-weight: bold;
text-decoration: underline;
}
.letterDiv{
font-weight: bold;
width: 10%;
.letterDiv {
font-weight: bold;
width: 10%;
float: right;
}
.letterDivLoop{
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
.letterDivLoop {
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
height: 35px;
}
.square-selected {
box-shadow: 5px 2px 8px #ccc;
padding: 0px 10px 0px 10px;
margin: 0px 15px;
border-radius: 10px;
position: relative;
bottom: 20px;
}
.square-selected img {
height: 20px;
width: 20px;
bottom: 3px;
position: relative;
}
.square-selected span {
white-space: normal;
}

@ -48,7 +48,7 @@ export class WorkListReplacementItgComponent implements OnInit {
spaceBetween: 5
};
public activeSelectedLetter:string;
public activeSelectedLetter: string;
constructor(public vacationRuleService: VacationRuleServiceService,
public ts: TranslatorService,
@ -368,7 +368,7 @@ export class WorkListReplacementItgComponent implements OnInit {
this.selectedLetter(this.activeSelectedLetter);
} else {
this.favLetter.forEach((obj, index) => {
if(this.activeSelectedLetter) {}
if (this.activeSelectedLetter) { }
if (index === 0) {
// this.selectedLetter(obj);
this.favIsActive.push(true);
@ -446,7 +446,7 @@ export class WorkListReplacementItgComponent implements OnInit {
if (letter === el) {
this.favIsActive[index] = true;
this.activeSelectedLetter = el;
this.worklistService.getFavoriteByLetter(letter,() => {
this.worklistService.getFavoriteByLetter(letter, () => {
}).subscribe((result) => {
if (this.cs.validResponse(result)) {
this.cs.stopLoading();
@ -466,4 +466,10 @@ export class WorkListReplacementItgComponent implements OnInit {
returnIsActiveFunction(i) {
return this.favIsActive[i];
}
resetSelected() {
this.searchKey = '';
this.userSelected = false;
}
}

@ -90,7 +90,7 @@
<ion-row>
<ion-col size="7">
<div *ngIf="isFilter" style="height: 0px;">
<ion-searchbar style="padding-top: 1px;" class="filterClass" mode='md' (ionInput)="filterList($event)" placeholder="Filter">
<ion-searchbar [(ngModel)]="inputSearch" style="padding-top: 1px;" class="filterClass" mode='md' (ionInput)="filterList($event)" placeholder="Filter">
</ion-searchbar>
</div>
<ion-input *ngIf="!isFilter" class='replacmentSearchBar' clearInput="true"
@ -125,7 +125,12 @@
</ion-row>
</ion-grid>
</ion-list>
<div class="square-selected" *ngIf="inputSearch"><div class="profileImageDiv">
<ion-label class="employee-details sc-ion-label-ios-h sc-ion-label-ios-s ios hydrated"><span>{{inputSearch}}</span></ion-label>
<div class="star-fav" ><img src="assets/imgs/close.svg" (click)="resetSelected()"></div></div></div>
<div class="letterDiv" *ngIf="searchBy === '4' && !isFavoriteLetterActive && !userSelected">
<!-- <ion-slides [options]="slideOptsOne">
<ion-slide *ngFor="let filter of favLetter; let i=index"> -->

@ -31,6 +31,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
position: relative;
top: 0;
}
.profileImage {
width: 60px !important;
}
@ -38,9 +39,11 @@ button.item-button.button.button-md.button-clear.button-clear-md {
.activated {
border: #209a83 0.02cm solid;
}
.deactivated {
border: #e4e4e4 0.02cm solid;
}
.repContentDiv {
text-align: center;
width: 85%;
@ -51,6 +54,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
margin-top: -9px;
margin-right: -35px;
}
.selIEmpDiv {
text-align: right;
margin-bottom: -26px;
@ -70,6 +74,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
margin: 8px 17px 0px 17px;
padding: 10px 2px 10px 2px;
}
.filterInput {
border: solid var(--gray) 1px;
border-radius: 21px;
@ -88,6 +93,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
// padding-right: 129px;
//margin-right: -136px;
}
.filterBtn {
background: var(--newgreen);
--background: var (--newgreen);
@ -95,6 +101,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
height: 60px;
width: 60px;
}
.filterBtn-ar {
// background: var(--newgreen);
// --background: var (--newgreen);
@ -118,6 +125,7 @@ button.item-button.button.button-md.button-clear.button-clear-md {
// padding: 8px;
width: 100%;
}
.square {
// width:calc(100% / 2);
width: 100%;
@ -150,18 +158,22 @@ button.item-button.button.button-md.button-clear.button-clear-md {
position: relative;
bottom: 4px;
}
ion-radio {
--color-checked: #269db8;
}
.center {
text-align: center;
padding: 5px;
}
.boldTxtNav {
text-align: start;
font-weight: bold;
padding: 12px;
}
.employee-details {
display: inline-block;
margin: 10px;
@ -169,15 +181,18 @@ ion-radio {
white-space: nowrap;
width: 70%;
}
.empImgeRep {
display: inline-block;
height: 40px;
width: 40px;
}
.star-fav {
float: right;
margin: 15px 0px 0px 0px;
}
.uk-margin {
margin: 15px 15px 0px 15px;
font-weight: bold;
@ -185,9 +200,11 @@ ion-radio {
position: relative;
top: 10px;
}
.uk-padding {
padding: 20px;
}
.uk-padding .employee-details {
bottom: 10px;
position: relative;
@ -197,57 +214,86 @@ ion-radio {
float: left;
margin: 10px 5px;
}
.top-radio-row {
font-size: 12px;
display: block;
padding-bottom: 25px;
padding-top: 15px;
}
.textSearchType {
padding-top: 8px;
font-size: 12px;
}
.isFavLetterActive {
// background: #269db8;
// width: 55px;
// border-radius: 60px;
color: #269db8;
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
height: 35px;
}
.vl {
border-left: 2px solid lightgray;
height: 42px;
}
.clearText{
.clearText {
background: transparent;
color: #D55D5C;
font-weight: bold;
text-decoration: underline;
}
.searchText{
.searchText {
background: transparent;
color: #269db8;
font-weight: bold;
text-decoration: underline;
}
.filterClass input{
.filterClass input {
box-shadow: none !important;
-webkit-box-shadow: none !important;
}
.letterDiv{
font-weight: bold;
width: 10%;
.letterDiv {
font-weight: bold;
width: 10%;
float: right;
}
.letterDivLoop{
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
.letterDivLoop {
display: block;
width: 60%;
float: right;
transition-duration: 0ms;
height: 35px;
}
.square-selected {
box-shadow: 5px 2px 8px #ccc;
padding: 0px 10px 0px 10px;
margin: 0px 15px;
border-radius: 10px;
position: relative;
bottom: 20px;
}
.square-selected img {
height: 20px;
width: 20px;
bottom: 3px;
position: relative;
}
.square-selected span {
white-space: normal;
}

@ -682,4 +682,10 @@ export class WorkListReplacementRollComponent implements OnInit {
clearSearchInput() {
this.inputSearch = '';
}
resetSelected() {
this.inputSearch = '';
this.userSelected = false;
}
}

@ -414,7 +414,7 @@
<ion-tabs>
<ion-tab-bar class="tabBar" slot="bottom" style="height: 100% !important;">
<ion-tab-button *ngIf="approveDis" (click)="actionButton('APPROVE')">
<ion-tab-button *ngIf="approveDis" (click)="actionButton('APPROVED')">
<img src="../assets/imgs/mohemm-action/Approve.png">
<ion-label class="action-btn"> {{approve_label}}</ion-label>
@ -426,7 +426,7 @@
</ion-tab-button>
<ion-tab-button *ngIf="rejectDis" (click)="actionButton('REJECT')">
<ion-tab-button *ngIf="rejectDis" (click)="actionButton('REJECTED')">
<img src="../assets/imgs/mohemm-action/Reject.png">
<ion-label class="action-btn"> {{reject_label}}</ion-label>
</ion-tab-button>

@ -497,16 +497,16 @@ export class WorklistMainIcComponent implements OnInit {
checkRequestType(index) {
if (this.notificationArray[index].REQUEST_TYPE === 'PO') {
this.intializeNotificationDetail();
} else
if (this.notificationArray[index].REQUEST_TYPE === 'PR') {
this.common.openWorklistMainPOPage();
} else if (this.notificationArray[index].REQUEST_TYPE === 'PR') {
this.common.openWorklistMainPRPage();
} else
if (this.notificationArray[index].REQUEST_TYPE === 'MO') {
} else if (this.notificationArray[index].REQUEST_TYPE === 'MO') {
this.common.openWorklistMainMRPage();
} else {
} else if (this.notificationArray[index].REQUEST_TYPE === 'ITEM_CREATION') {
this.intializeNotificationDetail();
} else {
this.common.openWorklistMainPage();
}
}
}
actionButton(action) {
@ -544,8 +544,8 @@ export class WorklistMainIcComponent implements OnInit {
// }
if (
ButtonAction == "APPROVE" ||
ButtonAction == "REJECT" ||
ButtonAction == "APPROVED" ||
ButtonAction == "REJECTED" ||
ButtonAction == "DEL" ||
ButtonAction == "CLOSE"
) {
@ -560,10 +560,10 @@ export class WorklistMainIcComponent implements OnInit {
// this.WorkListActionObj,
// WorklistMainPRComponent.PASS_NOTIFICATION_INFO
// );
if (ButtonAction == "APPROVE") {
if (ButtonAction == "APPROVED") {
this.confirmMsg = this.ts.trPK('worklistMain', 'approveMsg')
}
else if (ButtonAction == "REJECT") {
else if (ButtonAction == "REJECTED") {
this.confirmMsg = this.ts.trPK('worklistMain', 'rejectMsg')
}
@ -653,7 +653,8 @@ export class WorklistMainIcComponent implements OnInit {
ButtonAction == "TRANSFER" ||
ButtonAction == "TRANSFER_INFO" ||
ButtonAction == "APPROVE_AND_FORWARD" ||
ButtonAction == "FORWARD"
ButtonAction == "FORWARD" ||
ButtonAction == "RETURNED"
) {

@ -317,12 +317,12 @@
<ion-row>
<ion-col class="rowBorder" style="background: #269db8;">
<ion-label>
<p style="color: white;">Current</p>
<p style="color: white;">{{ 'general, current' | translate}}</p>
</ion-label>
</ion-col>
<ion-col class="rowBorder" style="background: #269db8;">
<ion-label>
<p style="color: white;">Proposed</p>
<p style="color: white;">{{ 'general, proposed' | translate}}</p>
</ion-label>
</ion-col>
</ion-row>

@ -49,7 +49,7 @@ export class AddBasicDetailsComponent implements OnInit {
private hiddenInput: HiddenInput;
private eitResponse: any;
private eitColResponse: any;
private eitVALSettoCall: any = [];
private comtransNo: number = 0;
getPassMnuEntryObj: MenuEntry;
@ -65,7 +65,7 @@ export class AddBasicDetailsComponent implements OnInit {
isResubmit: boolean = false;
private updatedValues: any = [];
addEITData: any;
direction:string;
direction: string;
public targetValue: any;
public employeeBasicDetails: any = [];
public mutualBasicDetailsArray: any = [];
@ -135,7 +135,7 @@ export class AddBasicDetailsComponent implements OnInit {
}
}
ngOnInit() {}
ngOnInit() { }
ngAfterViewInit() {
this.getEitDffStructure();
@ -171,7 +171,7 @@ export class AddBasicDetailsComponent implements OnInit {
this.drawEitFieldsStatic(result.GetBasicDetColsStructureList);
}
}
public handleBasicDffStructureResult(result) {
if (result.GetBasicDetDffStructureList != null) {
this.getColumnStructure();
@ -188,59 +188,59 @@ export class AddBasicDetailsComponent implements OnInit {
let defaultValText: string = "";
if (feildsList[i].DISPLAY_FLAG != "N") {
//text , date , time
if (feildsList[i].DATATYPE == "VARCHAR2" && feildsList[i].ObjectValuesList === null) {
// character
this.textInput = new TextInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
defaultValText,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
} else if (feildsList[i].DATATYPE == "VARCHAR2" && feildsList[i].ObjectValuesList !== null) {
this.selectInput = new SelectInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
this.fillStaticDropdownList(
feildsList[i].SEGMENT_NAME,
feildsList[i].ObjectValuesList,
feildsList[i].APPLICATION_COLUMN_NAME
);
} else if (feildsList[i].DATATYPE == "NUMBER") {
this.numberInput = new NumberInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
} else if (feildsList[i].DATATYPE == "DATE" && this.targetValue === 'new') {
this.dateInput = new DateInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
"",
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG,
this.direction
);
//text , date , time
if (feildsList[i].DATATYPE == "VARCHAR2" && feildsList[i].ObjectValuesList === null) {
// character
this.textInput = new TextInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
defaultValText,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
} else if (feildsList[i].DATATYPE == "VARCHAR2" && feildsList[i].ObjectValuesList !== null) {
this.selectInput = new SelectInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
this.fillStaticDropdownList(
feildsList[i].SEGMENT_NAME,
feildsList[i].ObjectValuesList,
feildsList[i].APPLICATION_COLUMN_NAME
);
} else if (feildsList[i].DATATYPE == "NUMBER") {
this.numberInput = new NumberInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
defaultVal,
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG
);
} else if (feildsList[i].DATATYPE == "DATE" && this.targetValue === 'new') {
this.dateInput = new DateInput(
feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME,
"",
containerId,
feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG,
this.direction
);
}
}
}
}
this.fillBasicDetailsStructure();
}
@ -251,7 +251,7 @@ export class AddBasicDetailsComponent implements OnInit {
let numbervalue: any = 0;
let dateValue: any = null;
let transNo: number = 1;
let textValue : any;
let textValue: any;
for (let i = 0; i < this.eitColResponse.length; i++) {
varcharValue = null;
@ -260,10 +260,10 @@ export class AddBasicDetailsComponent implements OnInit {
if (this.eitColResponse[i].DISPLAY_FLAG != "N") {
if (this.eitColResponse[i].ObjectValuesList === null) {
let elem = document.getElementById( this.eitColResponse[i].APPLICATION_COLUMN_NAME) as HTMLInputElement;
let elemVal = elem !== null ? (document.getElementById( this.eitColResponse[i].APPLICATION_COLUMN_NAME ) as HTMLInputElement).value : '';
let elem = document.getElementById(this.eitColResponse[i].APPLICATION_COLUMN_NAME) as HTMLInputElement;
let elemVal = elem !== null ? (document.getElementById(this.eitColResponse[i].APPLICATION_COLUMN_NAME) as HTMLInputElement).value : '';
textValue = elemVal;
if (this.eitColResponse[i].DATATYPE == "VARCHAR2" || this.eitColResponse[i].DATATYPE == "NUMBER") {
elemVal = elemVal;
} else if (this.eitColResponse[i].DATATYPE == "DATE" && this.targetValue === 'new') {
@ -272,7 +272,7 @@ export class AddBasicDetailsComponent implements OnInit {
} else if (this.eitColResponse[i].DATATYPE == "DATE" && this.targetValue === 'correct') {
// date
elemVal = this.customiseDate(this.effectiveDate);
}
}
if (this.targetValue === 'new') {
if (this.eitColResponse[i].REQUIRED_FLAG == "Y" && !elemVal) {
@ -301,11 +301,11 @@ export class AddBasicDetailsComponent implements OnInit {
} else {
let x = document.getElementById(this.eitColResponse[i].APPLICATION_COLUMN_NAME) as HTMLSelectElement;
let val = x.options[x.selectedIndex] ? x.options[x.selectedIndex].value : null;
let txt = x.options[x.selectedIndex] ? x.options[x.selectedIndex].text : null;
varcharValue = val;
textValue = txt;
let val = x.options[x.selectedIndex] ? x.options[x.selectedIndex].value : null;
let txt = x.options[x.selectedIndex] ? x.options[x.selectedIndex].text : null;
varcharValue = val;
textValue = txt;
if (x !== null) {
if (this.eitColResponse[i].REQUIRED_FLAG == "Y" && !varcharValue) {
x.classList.add("requiredClassElm");
@ -323,7 +323,7 @@ export class AddBasicDetailsComponent implements OnInit {
DATE_VALUE: dateValue
});
}
} else {
} else {
let x = document.getElementById(this.eitColResponse[i].APPLICATION_COLUMN_NAME) as HTMLSelectElement;
let val = x !== null ? x.dataset.colmText : '';
textValue = x !== null ? x.value : '';
@ -815,8 +815,8 @@ export class AddBasicDetailsComponent implements OnInit {
let obj = this.handleDefaultValueResult(result);
let val = obj.value;
let text = obj.text;
if (val==null){val="";}
if (text==null){text="";}
if (val == null) { val = ""; }
if (text == null) { text = ""; }
if (isStandardDate) {
console.log("isStandardDate");
elem.value = this.cs.reverseFormatDate(val);
@ -834,7 +834,7 @@ export class AddBasicDetailsComponent implements OnInit {
if (val) {
elem.dataset.dtvalue = val;
elem.innerHTML = val;
elem.value=val;
elem.value = val;
} else {
elem.dataset.dtvalue = "";
elem.innerHTML = "";
@ -843,11 +843,11 @@ export class AddBasicDetailsComponent implements OnInit {
if (isSelectElement) {
let elem = this.getSelectElementByName(segmentName);
elem = document.getElementById(elem),
elem.value = val;
elem.value = val;
} else {
elem.value = val;
elem.innerText = text;
elem.setAttribute("value", val);
elem.value = val;
elem.innerText = text;
elem.setAttribute("value", val);
}
}
if (isHidden || isReadOnlyList) {
@ -1234,7 +1234,7 @@ export class AddBasicDetailsComponent implements OnInit {
}
public customiseDate(date: any) {
let formatedDate = date.slice(0,9);
let formatedDate = date.slice(0, 9);
let newDate = formatedDate.split("/").reverse();
const tmp = newDate[2];
newDate[2] = newDate[1];
@ -1248,7 +1248,7 @@ export class AddBasicDetailsComponent implements OnInit {
public fillBasicDetailsStructure() {
this.mutualBasicDetailsArray = this.mutualBasicDetailsArray.concat(this.eitResponse, this.eitColResponse);
for (let i = 0; i < this.employeeBasicDetails.length; i++) {
let val: any;
if (this.employeeBasicDetails[i].VARCHAR2_VALUE) {
@ -1256,13 +1256,13 @@ export class AddBasicDetailsComponent implements OnInit {
} else if (this.employeeBasicDetails[i].DATE_VALUE) {
val = this.customiseDate(this.employeeBasicDetails[i].DATE_VALUE);
if (this.employeeBasicDetails[i].APPLICATION_COLUMN_NAME === 'EFFECTIVE_DATE') {
this.effectiveDate = this.employeeBasicDetails[i].DATE_VALUE;
this.effectiveDate = this.employeeBasicDetails[i].DATE_VALUE;
this.showEffectiveDate = this.employeeBasicDetails[i].SEGMENT_VALUE_DSP;
}
} else if (this.employeeBasicDetails[i].NUMBER_VALUE) {
val = this.employeeBasicDetails[i].NUMBER_VALUE;
}
const elem = document.getElementById( this.employeeBasicDetails[i].APPLICATION_COLUMN_NAME ) as HTMLInputElement;
const elem = document.getElementById(this.employeeBasicDetails[i].APPLICATION_COLUMN_NAME) as HTMLInputElement;
if (elem) {
if (val) {
let feldDetails = this.mutualBasicDetailsArray.find(
@ -1367,7 +1367,7 @@ export class AddBasicDetailsComponent implements OnInit {
let numbervalue: any = 0;
let dateValue: any = null;
let transNo: number = 1;
let textValue : any;
let textValue: any;
// if(this.ExtraObj.transactionNo)
// transNo=this.ExtraObj.transactionNo;
for (let i = 0; i < this.eitResponse.length; i++) {
@ -1413,11 +1413,11 @@ export class AddBasicDetailsComponent implements OnInit {
this.eitResponse[i].DISPLAY_FLAG != "N"
) {
//time
if(elemVal.length>5){
elemVal = elemVal.substring(11, 16);
}else{
elemVal = elemVal;
}
if (elemVal.length > 5) {
elemVal = elemVal.substring(11, 16);
} else {
elemVal = elemVal;
}
}
if (this.eitResponse[i].REQUIRED_FLAG == "Y" && !elemVal) {
elem.classList.add("requiredClassElm");
@ -1426,11 +1426,11 @@ export class AddBasicDetailsComponent implements OnInit {
} else {
elem.classList.remove("requiredClassElm");
}
// if (elemVal != 'null'){
varcharValue = elemVal;
// if (elemVal != 'null'){
varcharValue = elemVal;
//} else{
// elemVal = null;
// }
// elemVal = null;
// }
valuseArr.push({
TRANSACTION_NUMBER: transNo,
NAME: this.eitResponse[i].APPLICATION_COLUMN_NAME,
@ -1759,15 +1759,15 @@ export class AddBasicDetailsComponent implements OnInit {
P_SELECTED_RESP_ID: this.respID,
P_FUNCTION_NAME: this.selMenu.GetMenuEntriesList.FUNCTION_NAME,
EITTransactionTBL: allStatisDynamicValues,
P_ACTION_TYPE: this.targetValue === 'correct' ? 'CORRECT' : 'CHANGE'
P_ACTION_TYPE: this.targetValue === 'correct' ? 'CORRECT' : 'CHANGE'
};
console.log(this.basicRequest);
this.profileService.submitBasicDetailsTransaction(this.basicRequest).subscribe((result: any) => {
this.handleBasicdetailsResult(result);
this.handleBasicdetailsResult(result);
});
}
}
}

@ -74,14 +74,10 @@ export class ConatactComponent implements OnInit {
this.setIsDeletedStatus();
console.log(this.phoneNumbers);
this.submitrequest = {
P_MENU_TYPE: this.selMenu.List_Menu.MENU_TYPE,
P_SELECTED_RESP_ID: this.respID, //this.selMenu.List_Menu.RESP_ID,//-999,
P_FUNCTION_NAME: this.selMenu.GetMenuEntriesList.FUNCTION_NAME,
P_MBL_PHONES_TBL: this.phoneNumbers,
};
this.profileService.submitPhoneTransaction(this.submitrequest, () => { }, this.ts.trPK('general', 'retry')).subscribe((response) => {
if (this.cs.validResponse(response)) {

@ -1290,9 +1290,10 @@ export class ConcurrentReportComponent implements OnInit {
return values;
}
selectTemplates() {
this.elementRef
.nativeElement.querySelectorAll('#containerDiv')[0].innerHTML = '';
this.getCppDiffStructure(this.template);
this.elementRef.nativeElement.querySelectorAll('#containerDiv')[0].innerHTML = '';
if (this.template) {
this.getCppDiffStructure(this.template);
}
}
refreshStatus() {

@ -10,6 +10,7 @@ import { ConcurrentReportComponent } from './concurrent-report/concurrent-report
import { ReportServiceService } from './report-service.service';
import { HmgCommonModule } from '../hmg-common/hmg-common.module';
import { TransactionListComponent } from './transaction-list/transaction-list.component';
import { TransactionsComponent } from './transactions/transactions.component';
const routes: Routes = [
@ -25,6 +26,10 @@ const routes: Routes = [
path: 'transaction-list',
component: TransactionListComponent
},
{
path: 'transactions',
component: TransactionsComponent
},
],
}
];
@ -37,7 +42,7 @@ const routes: Routes = [
RouterModule.forChild(routes),
HmgCommonModule
],
declarations: [ReportsPage, ConcurrentReportComponent, TransactionListComponent],
declarations: [ReportsPage, ConcurrentReportComponent, TransactionListComponent, TransactionsComponent],
providers: [ReportServiceService]
})
export class ReportsPageModule { }

@ -1,7 +1,11 @@
<ion-content>
<div class="head-title">
<app-generic-header showImage="false" showBack="true" [headerText]="'general,concurrent-report' | translate">
<app-generic-header
showImage="false"
showBack="true"
backLink="/home"
[headerText]="'general,concurrent-report' | translate">
</app-generic-header>
</div>
<div class="header"></div>

@ -0,0 +1,69 @@
<ion-content>
<div class="head-title">
<app-generic-header showImage="false" showBack="true" [headerText]="'general,concurrent-report' | translate">
</app-generic-header>
</div>
<div class="header"></div>
<div class="bottom"></div>
<div class="main-container">
<ion-item>
<ion-label>{{ 'worklist,template-name' | translate}}</ion-label>
<ion-select [(ngModel)]="template" (ionChange)="selectTemplates()" [placeholder]="'general,select' | translate"
[okText]="'general,ok' | translate" [cancelText]="'general,cancel' | translate" class="concorrent-select large-ion-select">
<ion-select-option *ngFor="let program of programList" [value]="program">
{{ program.USER_CONCURRENT_PROGRAM_NAME}}</ion-select-option></ion-select>
</ion-item>
<div *ngIf="transactionList && transactionList.length>0" class="transaction-list">
<ion-card *ngFor="let transaction of transactionList">
<div [ngClass]="direction =='rtl' ? 'date_ar' :'date'" >{{getDate(transaction.REQUEST_DATE)}}</div>
<ion-label class="ion-text-wrap">
<ion-text color="primary">
<div>
<p class="display-created" >{{'transaction, request-id' | translate}}</p>
<P class="inline-display">
{{transaction.REQUEST_ID}}
</P>
</div>
<p class="display-created" >{{'transaction, phase' | translate}}</p>
<p class="display-created bold padding">{{transaction.CCP_PHASE}}</p>
</ion-text>
<ion-text color="secondary">
<div class="name-container">
<p class="color-black display-inline">{{'transaction,program-name' | translate}}</p>
<p class="display-inline red">{{transaction.CONCURRENT_PROGRAM_NAME}}</p>
</div>
</ion-text>
<div class="output-container" >
<p class="color-black display-inline">{{'transaction,output' | translate}}</p>
<p class="display-inline" (click)="getCppOutput(transaction)" [ngClass]="transaction.CCP_PHASE =='Running' || transaction.CCP_PHASE =='Pending'? 'disabled-icon' : '' " ><ion-icon name="download" class="download"></ion-icon></p>
<p class="display-inline" (click)="refresh()" *ngIf="transaction.CCP_PHASE =='Running' || transaction.CCP_PHASE =='Pending'"><ion-icon name="refresh" class="refresh" > </ion-icon></p>
</div>
</ion-label>
</ion-card>
</div>
<div class="no-dataDiv"
*ngIf="transactionList && transactionList.length ==0">
<ion-row>
<img class="empty-data" src="../assets/imgs/box.png" />
</ion-row>
<h4> {{'general, noData' | translate}}</h4>
</div>
</div>
</ion-content>
<ion-footer class="footer">
<div class="Btn">
<ion-button class="CreateBtn" color="customnavy" ion-button (click)="createTransaction()">
{{'vacation-rule, create-request' | translate}}</ion-button>
</div>
</ion-footer>

@ -0,0 +1,213 @@
.display-created {
display: inline-block;
margin: 2px;
color: #000;
}
#containerDiv {
margin-top: 20px;
}
.padding {
padding-left: 5px;
padding-right: 5px;
}
.bold {
font-weight: bold;
font-size: 16px;
}
.color-black {
color: #000;
}
.date {
position: absolute;
font-size: 14px;
padding: 10px;
right: 0;
width: 100px;
color: #969696;
}
.date_ar {
position: absolute;
font-size: 14px;
padding: 10px;
left: 0;
width: 100px;
color: #969696;
}
.transaction-list {
margin-top: 20px;
}
.date-container {
margin: 0px 20px;
}
.label {
font-size: 16px;
// margin-left: 15px;
color: #a2a5a6 !important;
display: block;
overflow: hidden;
-webkit-box-flex: 1;
-webkit-flex: 1;
-ms-flex: 1;
flex: 1;
/* font-size: inherit; */
// text-overflow: ellipsis;
// white-space: nowrap;
white-space: normal;
// padding-top: 10px;
padding: 5px 0px;
padding-left: 10px !important;
margin: 10px auto;
:root[dir="ltr"] {
font-family: var(--fontFamilySemiBoldEN) !important;
}
:root[dir="rtl"] {
font-family: var(--fontFamilyIOSAR) !important;
font-weight: bold;
}
}
.Field-en {
border-radius: 30px;
border: 1px solid #a2a5a6 !important;
margin-bottom: 15px;
padding-left: 20px !important;
padding-top: 6px !important;
color: #999999 !important;
}
.Field-ar {
border-radius: 30px;
border: 1px solid #a2a5a6 !important;
margin-bottom: 20px;
padding-right: 20px !important;
padding-top: 6px !important;
color: #999999 !important;
}
select {
width: 300px !important;
border: none !important;
}
.padding_date {
padding-left: 5px !important;
}
.date-icon {
font-size: 20px;
left: -1px;
position: relative;
top: 2px;
}
ion-card {
padding: 10px;
border-radius: 11px;
box-shadow: 0px 1px 2px 1px #ccc;
}
.display-inline {
display: inline-block;
}
.red {
color: #CA3332;
font-weight: 600;
margin: 0px 5px;
overflow: hidden;
width: 90%;
white-space: nowrap;
text-overflow: ellipsis;
}
.inline-display {
display: inline-block;
font-weight: 600;
padding-left: 8px;
}
.download {
font-size: 26px;
margin: 0px 10px;
position: relative;
top: 5px;
color: #CA3332;
}
.refresh {
font-size: 22px;
margin: 0px 10px;
position: relative;
top: 5px;
color: #CA3332;
}
.disabled-icon {
pointer-events: none;
opacity: .5;
}
.output-container {
position: relative;
bottom: 10px;
}
@media screen and (min-width: 300px) {
.CreateBtn {
--background: var(--newgreen) !important;
background: var(--newgreen) !important;
white-space: normal;
color: var(--light);
text-transform: capitalize;
min-height: 1.0cm;
--border-radius: 7px !important;
border-radius: 7px !important;
--min-height: 1.6cm !important;
width: 315px;
font-family: var(--fontFamilyPoppins-SemiBold, inherit);
}
}
@media screen and (min-width: 1px) and (max-width:290px) {
.CreateBtn {
--background: var(--newgreen) !important;
background: var(--newgreen) !important;
white-space: normal;
color: var(--light);
text-transform: capitalize;
min-height: 1.0cm;
--border-radius: 7px !important;
border-radius: 7px !important;
--min-height: 1.6cm !important;
width: 257px;
font-family: var(--fontFamilyPoppins-SemiBold, inherit);
}
}
.footer {
padding: 15px 0px;
background-color: var(--light) !important;
border: 0px !important;
box-shadow: none !important;
-webkit-box-shadow: none;
}
.Btn {
margin: auto;
text-align: center;
display: block;
}

@ -0,0 +1,27 @@
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { TransactionsComponent } from './transactions.component';
describe('TransactionsComponent', () => {
let component: TransactionsComponent;
let fixture: ComponentFixture<TransactionsComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ TransactionsComponent ],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(TransactionsComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

@ -0,0 +1,128 @@
import { Component, ElementRef, OnInit } from '@angular/core';
import { FileOpener } from '@ionic-native/file-opener/ngx';
import { File } from '@ionic-native/file/ngx';
import { Platform } from '@ionic/angular';
import { CommonService } from 'src/app/hmg-common/services/common/common.service';
import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response';
import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service';
import { ReportServiceService } from '../report-service.service';
@Component({
selector: 'app-transactions',
templateUrl: './transactions.component.html',
styleUrls: ['./transactions.component.scss'],
})
export class TransactionsComponent implements OnInit {
transactionList: any = [];
selectedMenu: any;
template: any;
direction: any;
programList: any = [];
constructor(public cs: CommonService, private elementRef: ElementRef, public reports: ReportServiceService, public ts: TranslatorService, private platform: Platform, private file: File, private opener: FileOpener,
) { }
ngOnInit() {
this.selectedMenu = this.cs.sharedService.getSharedData(MenuResponse.SELECTED_MENU, false);
// this.transactionList = this.cs.sharedService.getSharedData(ReportServiceService.TRANSACTION_LIST, false);
//this.template = this.cs.sharedService.getSharedData(ReportServiceService.TEMPLATE, false);
this.direction = TranslatorService.getCurrentDirection();
this.getConcurrentProgram();
}
getDate(date) {
return this.cs.evaluteDate(date);
}
getCppOutput(transaction) {
var request: any = {
P_REQUEST_ID: transaction['REQUEST_ID']
};
this.cs.startLoading();
this.reports.getCppOutput(request, {}, this.ts.trPK('general', 'retry')).subscribe((result: any) => {
this.saveAndOpenPdf(result.GetCcpOutputList['P_OUTPUT_FILE'], 'report.pdf');
console.log(result);
this.cs.stopLoading();
});
}
// saveAndOpenPdf(pdf: string, filename: string) {
// const linkSource = `data:application/pdf;base64,${pdf}`;
// const downloadLink = document.createElement("a");
// const fileName = "report.pdf";
// downloadLink.href = linkSource;
// downloadLink.download = fileName;
// downloadLink.click();
// }
saveAndOpenPdf(pdf: string, filename: string) {
const writeDirectory = this.platform.is('ios') ? this.file.dataDirectory : this.file.externalDataDirectory;
this.file.writeFile(writeDirectory, filename, this.convertBase64ToBlob(pdf, 'data:application/pdf;base64'), { replace: true })
.then(() => {
this.opener.open(writeDirectory + filename, 'application/pdf')
.catch(() => {
console.log('Error opening pdf file');
});
})
.catch(() => {
console.error('Error writing pdf file');
});
}
convertBase64ToBlob(b64Data, contentType): Blob {
contentType = contentType || '';
const sliceSize = 512;
b64Data = b64Data.replace(/^[^,]+,/, '');
b64Data = b64Data.replace(/\s/g, '');
const byteCharacters = window.atob(b64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return new Blob(byteArrays, { type: contentType });
}
refresh() {
// var request: any = {
// P_REQUEST_ID: transaction['REQUEST_ID']
// };
this.cs.startLoading();
var request: any = {};
request.P_MENU_TYPE = this.selectedMenu.MENU_TYPE;
request.P_SELECTED_RESP_ID = -999;
request.P_FUNCTION_NAME = this.selectedMenu.FUNCTION_NAME;
request.P_DESC_FLEX_NAME = this.template.CONCURRENT_PROGRAM_NAME;
this.reports.getTransaction(request, {}, this.ts.trPK('general', 'retry')).subscribe((result: any) => {
this.cs.stopLoading();
this.transactionList = result['GetCcpTransactionsList_New'];
});
}
getConcurrentProgram() {
this.cs.startLoading();
this.reports.getConcurrentProgram({
P_REQUEST_GROUP_ID: this.selectedMenu.REQUEST_GROUP_ID
}, () => { }, this.ts.trPK('general', 'retry')).subscribe((response) => {
this.cs.stopLoading();
this.programList = response.GetConcurrentProgramsList;
})
}
selectTemplates() {
// this.elementRef
// .nativeElement.querySelectorAll('#containerDiv')[0].innerHTML = '';
if (this.template) {
this.refresh();
}
}
createTransaction() {
this.cs.openConcurrentReport();
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

@ -249,6 +249,14 @@
}
},
"general": {
"current": {
"en": "Current",
"ar": "تيار"
},
"proposed": {
"en": "Proposed",
"ar": "مقترح"
},
"fav-showData": {
"en": "Please select an alphabet to see your favourites",
"ar": "الرجاء تحديد الأبجدية لرؤية المفضلة لديك"

Loading…
Cancel
Save