diff --git a/Mohem/src/app/absence/home/home.component.html b/Mohem/src/app/absence/home/home.component.html index cb229b7b..3d4c4ec9 100644 --- a/Mohem/src/app/absence/home/home.component.html +++ b/Mohem/src/app/absence/home/home.component.html @@ -22,50 +22,68 @@
- - - - -
-
-
- + +
+ +
+ + +
+
+ +
+ + + {{ts.trPK('absenceList','currentBalance')}} + {{accrualNet}} + + +
+ +
+ + + {{ts.trPK('absenceList','usedBalance')}} + {{accrualUsed}} + +
+
+ +
+
+
- + - + - + - +
- - - -
@@ -94,38 +112,10 @@
- - - - - - +
- -
+ --> + diff --git a/Mohem/src/app/absence/home/home.component.scss b/Mohem/src/app/absence/home/home.component.scss index a3f81d81..48d4d205 100644 --- a/Mohem/src/app/absence/home/home.component.scss +++ b/Mohem/src/app/absence/home/home.component.scss @@ -56,13 +56,9 @@ .header-div { - background-color: #269DB8; text-transform: capitalize; - height: 160px; - /* position: relative; */ - /* display: block; */ - margin-bottom: -28px; + height: 100px; } .header-toolbar-new{ @@ -107,7 +103,7 @@ // margin-left: 111px; text-align: center; font-family: WorkSans-Bold; - margin-left: 47px; + margin-left: -142px; margin-top: -19px; } @@ -119,52 +115,40 @@ .iconCalendar{ // margin-left: -241px; // margin-top: 5px; - margin-left: 30px !important; + margin-left: -12px !important; width: 22% !important; height: 26px !important; - margin-top: -69px !important; - margin-bottom: 20px !important; + margin-top: -50px !important; + margin-bottom: 23px !important; } -.today-graph{ - // display:block !important; - // height: 150px !important; - // width: 300 !important; - // margin-left: -70px !important; - display: block !important; - height: 196px; - width: 385px; - padding-left: 51px; - // padding-top: 29px; - margin-left: -70px !important; -} -.today-graph-ar{ - // display: block !important; - // height: 196px; - // width: 385px; - // padding-left: 51px; - /* margin-left: -70px !important; */ - // font-size: 14px; - // margin-left: -48px; - // margin-right: 63px; - // margin-bottom: -30px; - display: block !important; - height: 175px; - width: 320px; - padding-left: 51px; - font-size: 14px; - margin-right: 75px; - margin-bottom: -30px; -} +// .today-graph{ + +// display: block !important; +// height: 196px; +// width: 385px; +// padding-left: 51px; +// // padding-top: 29px; +// margin-left: -70px !important; +// } +// .today-graph-ar{ +// display: block !important; +// height: 175px; +// width: 320px; +// padding-left: 51px; +// font-size: 14px; +// margin-right: 75px; +// margin-bottom: -30px; +// } .headerGrid{ background-color: white !important; border: 1px solid #cac8c8 !important; border-radius: 20px !important; padding-top: 28px; - padding-bottom: 14px; + padding-bottom: 26px; margin-left: 13px; margin-right: 13px; - margin-top: -136px; + margin-top: -93px; margin-bottom: 10px; } @@ -310,3 +294,214 @@ margin-top: -13px; height: 6px; right: 16px; } +.subTitle{ + margin-top: -10px; + margin-left: 10px; + font-family: WorkSans-Bold; + font-size: 16px; +} + +.subTitle-ar{ + margin-top: -10px; + margin-right: 10px; + font-family: WorkSans-Bold; + font-size: 16px; +} + + +.today-graph { + max-height: 4cm; + display: block; + height: 124px; + width: 249px; + margin-left: -39px; +} + +.today-graph-ar { + max-height: 4cm; + display: block; + height: 132px; + width: 264px; + margin-right: 105px; +} + +.graph-container{ + margin-left: 160px; + position: relative; + margin-top: -98px; +} +// .label-container{ +// position: absolute; +// // width: 20%; +// // right: 30px; +// top: 50%; +// margin-top: -27px; +// left: 20px; + +// } + + +.green-label-container{ + margin-top: 20px; margin-left: 12px; + +} +.green-label-container-ar{ + margin-top: 20px; margin-right: 12px; + +} + +.black-label-container{ + margin-left: 12px; +} +.black-label-container-ar{ + margin-right: 12px; +} +.used-label-container{ + // border-top: 5px solid #292F42; + // padding: 1px 0px; + // margin: 15px 0px + width: 12px; + height: 12px; + padding-right: -10px; + border-radius: 100%; + background-color: #b60c0c; + margin-top: 30px; +} +.current-label-container{ + width: 12px; + height: 12px; + padding-right: -10px; + border-radius: 100%; + background-color: black; + margin-top: 21px; +} +.current-label{ + width: 12px; + height: 12px; + padding-right: -10px; + border-radius: 100%; + background-color: #269DB8; + // margin-top: 30px; +} +.span-one{ + // display: block; + // font-size: 12px; + // color: black; + display: block; + font-size: 12px; + color: #269DB8; + margin-left: 6px; + margin-top: -2px; + font-weight: bold; + +} + +.span-one-ar{ + display: block; + font-size: 12px; + color: #269DB8; + margin-right: 6px; + margin-top: -2px; + font-weight: bold; + +} + +.span-two{ + // display: block; + // font-size: 22px; + display: block; + font-size: 12px; + color: #269DB8; + margin-left: 6px; + margin-top: -2px; + font-weight: bold; + font-family: WorkSans-Bold; + +} + +.black-span1{ + // display: block; + // font-size: 12px; + // color: black; + display: block; + font-size: 12px; + color: black; + margin-left: 6px; + margin-top: 20px; + font-weight: bold; + +} +.black-span1-ar{ + // display: block; + // font-size: 12px; + // color: black; + display: block; + font-size: 12px; + color: black; + margin-right: 6px; + margin-top: 20px; + font-weight: bold; + +} +.black-span2{ + // display: block; + // font-size: 22px; + display: block; + font-size: 12px; + color: black; + margin-left: 6px; + margin-top: 20px; + font-weight: bold; + font-family: WorkSans-Bold; + +} +.red-span1{ + // display: block; + // font-size: 12px; + // color: black; + display: block; + font-size: 12px; + color: #b60c0c; + margin-left: 6px; + margin-top: 28px; + font-weight: bold; + +} +.red-span1-ar{ + // display: block; + // font-size: 12px; + // color: black; + display: block; + font-size: 12px; + color: #b60c0c; + margin-right: 6px; + margin-top: 28px; + font-weight: bold; + +} +.red-span2{ + // display: block; + // font-size: 22px; + display: block; + font-size: 12px; + color: #b60c0c; + margin-left: 6px; + margin-top: 28px; + font-weight: bold; + font-family: WorkSans-Bold; + +} +.yearLabel{ + font-size: 13px; + color: gray; + font-family: WorkSans-Bold; + margin-left: 29px; + margin-top: 5px; +} +.yearLabel-ar{ + font-size: 13px; + color: gray; + font-family: WorkSans-Bold; + margin-right: 29px; + margin-top: 5px; +} \ No newline at end of file diff --git a/Mohem/src/app/absence/home/home.component.ts b/Mohem/src/app/absence/home/home.component.ts index fd50e4ef..131f5127 100644 --- a/Mohem/src/app/absence/home/home.component.ts +++ b/Mohem/src/app/absence/home/home.component.ts @@ -66,6 +66,7 @@ export class HomeComponent implements OnInit { this.Sdate = new Date().toISOString(); this.getUserDetails(); + this.getAccrualBalance(); } private getUserDetails(){ this.authService.loadAuthenticatedUser().subscribe((user: AuthenticatedUser) => { @@ -113,9 +114,11 @@ export class HomeComponent implements OnInit { { data: [this.accrualNet,this.accrualUsed], backgroundColor: [ - '#1FA269', - '#CB3232',], - borderWidth: 2 + // '#1FA269', + // '#CB3232',], + '#269DB8', + '#b60c0c',], + borderWidth: 1 } ] }; @@ -270,9 +273,9 @@ createAbsence() { // { data: [this.accrualNet,this.accrualYearly,this.accrualUsed], { data: [this.accrualNet,this.accrualUsed], backgroundColor: [ - '#1FA269', - '#CB3232',], - borderWidth: 2 + '#269DB8', + '#b60c0c',], + borderWidth: 1 } ] }; diff --git a/Mohem/src/app/app.component.html b/Mohem/src/app/app.component.html index 3bcbe947..01c9a9b5 100644 --- a/Mohem/src/app/app.component.html +++ b/Mohem/src/app/app.component.html @@ -50,7 +50,7 @@ - HR REQUEST + {{ts.trPK('userProfile','HR-Request')}} diff --git a/Mohem/src/app/app.component.ts b/Mohem/src/app/app.component.ts index 1b6c1597..e700abcf 100644 --- a/Mohem/src/app/app.component.ts +++ b/Mohem/src/app/app.component.ts @@ -230,8 +230,8 @@ export class AppComponent implements OnInit { } public openMyRequestPage() { - this.cs.openMyRequestPage(); this.menu.toggle(); + this.cs.openMyRequestPage(); } public profile() { diff --git a/Mohem/src/app/authentication/sms-page/sms-page.page.ts b/Mohem/src/app/authentication/sms-page/sms-page.page.ts index 5bdfe570..9d9cab9b 100644 --- a/Mohem/src/app/authentication/sms-page/sms-page.page.ts +++ b/Mohem/src/app/authentication/sms-page/sms-page.page.ts @@ -206,6 +206,7 @@ export class SmsPageComponent implements OnInit { if (this.platform.is('cordova')) { this.insertMobileLogin(); } + this.common.sharedService.setSharedData(result.MemberInformationList[0].PAYROLL_CODE, "projcet-code"); this.activeType =this.common.setActiveTypeLogin(0); this.common.openHome(); }); diff --git a/Mohem/src/app/backend-integrations/announcement/announcement.component.ts b/Mohem/src/app/backend-integrations/announcement/announcement.component.ts index cae4ff8d..0482f4a5 100644 --- a/Mohem/src/app/backend-integrations/announcement/announcement.component.ts +++ b/Mohem/src/app/backend-integrations/announcement/announcement.component.ts @@ -10,17 +10,16 @@ import { TranslatorService } from 'src/app/hmg-common/services/translator/transl styleUrls: ['./announcement.component.scss'], }) export class AnnouncementComponent implements OnInit { - dt = new Date().toJSON().slice(0, 10).replace(/-/g, '/'); - public arr: {id: number,title_EN:string,title_AR:string, body_EN:string,body_AR:string, img: string, date: Date, isopen: boolean}[] =[]; + public arr: { id: number, title_EN: string, title_AR: string, body_EN: string, body_AR: string, img: string, date: Date, isopen: boolean }[] = []; public arrList = []; public listOfAnnouncement; - direction:string; + direction: string; constructor( public announcementService: AnnouncementService, public translate: TranslatorService, public common: CommonService - ) { } + ) { } ngOnInit() { this.direction = TranslatorService.getCurrentLanguageName(); @@ -37,23 +36,23 @@ export class AnnouncementComponent implements OnInit { }); } - toggleAnnouncement(item){ + toggleAnnouncement(item) { this.arrList.forEach(element => { - if(element.id === item.id){ - element.isOpen = !element.isOpen; - }else{ - element.isOpen = false; - } + if (element.id === item.id) { + element.isOpen = !element.isOpen; + } else { + element.isOpen = false; + } }); } - getAnnouncementListService(){ + getAnnouncementListService() { let holdData; this.announcementService.getAnnouncementListService().subscribe((result: any) => { if (this.common.validResponse(result)) { - holdData =JSON.parse(result.Mohemm_ITG_ResponseItem) //JSON.parse(result.Mohemm_ITG_ResponseItem); + holdData = JSON.parse(result.Mohemm_ITG_ResponseItem); this.listOfAnnouncement = JSON.parse(holdData.result.data); - for(let i=0; i< this.listOfAnnouncement.length; i++){ + for (let i = 0; i < this.listOfAnnouncement.length; i++) { this.listOfAnnouncement[i].Title_EN = this.listOfAnnouncement[i].Title_EN.replace(/<\/?[^>]+(>|$)/g, ""); this.listOfAnnouncement[i].Title_EN = this.listOfAnnouncement[i].Title_EN.replace(/\ /g, ''); this.listOfAnnouncement[i].Title_AR = this.listOfAnnouncement[i].Title_AR.replace(/<\/?[^>]+(>|$)/g, ""); @@ -62,8 +61,8 @@ export class AnnouncementComponent implements OnInit { this.listOfAnnouncement[i].EmailBody_EN = this.listOfAnnouncement[i].EmailBody_EN.replace(/\ /g, ''); this.listOfAnnouncement[i].EmailBody_AR = this.listOfAnnouncement[i].EmailBody_AR.replace(/<\/?[^>]+(>|$)/g, ""); this.listOfAnnouncement[i].EmailBody_AR = this.listOfAnnouncement[i].EmailBody_AR.replace(/\ /g, ''); - this.arr[i] ={ - id:this.listOfAnnouncement[i].rowID, + this.arr[i] = { + id: this.listOfAnnouncement[i].rowID, title_EN: this.listOfAnnouncement[i].Title_EN, title_AR: this.listOfAnnouncement[i].Title_AR, body_EN: this.listOfAnnouncement[i].EmailBody_EN, @@ -73,9 +72,7 @@ export class AnnouncementComponent implements OnInit { isopen: false }; } - console.log(this.listOfAnnouncement); this.arrList = this.arr; - console.log(this.arrList); } }); } diff --git a/Mohem/src/app/hmg-common/services/common/common.service.ts b/Mohem/src/app/hmg-common/services/common/common.service.ts index 2e5e4aa0..4cf0a1be 100644 --- a/Mohem/src/app/hmg-common/services/common/common.service.ts +++ b/Mohem/src/app/hmg-common/services/common/common.service.ts @@ -1124,6 +1124,9 @@ export class CommonService { public openHRRequestPage() { this.nav.navigateForward(['/mowadhafi/hr-request']); } + public openHRRequestFormPage() { + this.nav.navigateForward(['/mowadhafi/hr-request-form']); + } public openRequestDetailsPage() { this.nav.navigateForward(['/mowadhafi/request-details']); } diff --git a/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.html b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.html new file mode 100644 index 00000000..fcbfcce3 --- /dev/null +++ b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.html @@ -0,0 +1,152 @@ + + + + + + + + {{ts.trPK('userProfile','createHR-Request')}} + + + + + + +
+ + +
+ {{ts.trPK('userProfile','ServiceType')}} +
+
+ + + + {{HR}} + {{HR}} + + {{complaints}} + {{complaints}} + + {{inquiry}} + {{inquiry}} + + + +
+ + +
+
+ + + + + + + + + + + + + + + +
+ + +
+ {{ts.trPK('userProfile','SupportingDocument')}} +
+
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ {{ts.trPK('userProfile','Description')}} +
+ + + + + + + +
+
+
+
+ + +
+ + +
+ + +
+
+ + diff --git a/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.scss b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.scss new file mode 100644 index 00000000..9c117329 --- /dev/null +++ b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.scss @@ -0,0 +1,485 @@ + + +.header-toolbar-new{ + --background: #269DB8; + } + + .contentBg{ + padding: 0px 20px; +} + +.contentBg:before { + position: absolute; + content: ""; + background: #269DB8; + height: 140px; + width: 100%; + left: 0; + top: 0px; + z-index: 1; +} + +@media screen and (min-width: 1px) and (max-width:767px){ + .result-graph { + position: relative; + background: white; + // margin-top: 20px; + padding-bottom: 20px; + border-radius: 20px; + z-index: 1; + margin-bottom: 10px; + margin-top: 56px; + border-radius: 20px; + border: 1px solid #ccc; + padding-top: 12px; + }} + + @media screen and (min-width: 768px) and (max-width:1024px){ + .result-graph { + position: relative; + background: white; + // margin-top: 20px; + padding-bottom: 20px; + border-radius: 20px; + z-index: 1; + margin-bottom: 10px; + margin-top: 89px; + border-radius: 20px; + border: 1px solid #ccc; + padding-top: 114px !important; + }} + + .user-info{ + text-align: center; + margin-bottom: 3px; + .user-image-container{ + position: relative; + width: 100%; + height: 24px; + justify-content: space-between; + display: flex; + margin: 0 auto; + align-items: center; + }} + + .Boldtext{ + font-size: 13px; + font-family: WorkSans-Bold; + color: black !important; + display: block !important; + // line-height: 0px !important; + } + + .Nametext{ + font-size: 15px; + font-family: WorkSans-Bold; + color: black !important; + display: block !important; + // line-height: 0px !important; + } + + .employee-information-indetail{ + background: white; + margin-top: 15px; + border-radius: 20px; + margin-bottom: 15px; + border-radius: 20px; + border: 1px solid #ccc; + ion-col{ + padding: 15px; + // border-bottom: 1px solid #ccc; + } + h2{ + font-size: 13px; + // font-family: WorkSans-Bold; + margin: 0; + font-weight: bold; + color: rgb(128, 124, 124); + } + p{ + font-size: 13px; + margin: 0; + font-family: WorkSans-Bold; + // margin-bottom: 10px; + } + } + + @media screen and (min-width: 1px) and (max-width:767px){ + .user-image{ + position: relative; + display: block; + width: 95%; + height: 100%; + border-radius: 80px; + /* border: 1px solid #ccc; */ + margin-top: -125px; + + }} + @media screen and (min-width: 768px) and (max-width:1024px){ + .user-image{ + position: relative; + display: block; + width: 95%; + height: 100%; + border-radius: 80px; + margin-bottom: 371px; + }} + + .img{ + width: 100px; + height: 100px; + display: inline-flex; + overflow: hidden; + background: transparent; + border-radius: 70% !important; + position: relative; + top: 3px; + } + + .sendCodeBtn{ + --background: #269DB8; + color: white; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 12px; + margin-left: 5px !important; + margin-top: 15px !important; + margin-bottom: 20px !important; + /* border-radius: 4px; */ + height: 26px; + /* padding: 6px 24px; */ + font-size: 15px; + width: 322px; + } + + .verify-code{ + position: relative; + background: white; + border-radius: 20px; + z-index: 1; + border-radius: 20px; + border: 1px solid #ccc; + padding: 21px 3px 34px 14px; + margin: 25px 22px 2px 22px; + + + } + + + +// .sms_code{ +// margin: 0px; +// text-align: center; +// } + +ion-input { + margin: 0 5px; + text-align: center; + line-height: 0; + font-size: 32px; + //border: solid 1px #ccc; + border: 1px solid #ccc !important; + //box-shadow: 0 0 5px #ccc inset; + outline: none; + width: 20%; + transition: all .2s ease-in-out; + border-radius: 3px; + display: inline-block; + &:focus { + border-color:var(--ion-color-secondary) !important; + box-shadow: 0 0 5px var(--ion-color-secondary) !important; + } + + &::selection { + background: transparent; + } + } + + .sendVerifyBtn{ + --background: #269DB8; + color: white; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 12px; + margin-top: 15px !important; + margin-bottom: 20px !important; + /* border-radius: 4px; */ + height: 26px; + font-size: 15px; + width: 322px; + margin-left: 22px; + } + + .custom-radio .radio-icon { + margin: 0px; + border-radius: 50%; + border-width: var(--border-width); + border-style: var(--border-style); + border-color: #dcdcdc; + margin-top: 6px !important; + border-color: #d8d4d4 !important; + margin-bottom: 18px;} + + .text-label{ + color: black !important; + font-size: 10px; + margin-left: 15px; + margin-right: 18px; + font-family: 'WorkSans-Bold'; + } + + // .radio-list{ + // background: white; + // margin-left: 18px; + // /* margin-right: 10px; */ + // margin-top: 12px; + // } + + .result-serviceType{ + position: relative; + background: white; + border-radius: 20px; + z-index: 1; + border-radius: 25px; + border: 1px solid #ccc; + margin: 15px; + } + + .request-heading { + span { + display: block; + margin-bottom: 15px; + // padding-top: 8px; + // padding-left: 15px; + /* font-weight: bold; */ + font-size: 14px; + font-family: 'WorkSans-Bold'; + } + } + + .filed1{ + border-radius: 30px; + border: 1px solid #d3d5d5 !important; + margin: 10px; + padding-left: 11px !important; + padding-top: 6px !important; + color: #636161; + padding-bottom: 15px; + // padding-right: 252px; + padding-right: 115px; + } + .filed2{ + border-radius: 30px; + border: 1px solid #d3d5d5 !important; + margin: 10px; + padding-left: 11px !important; + padding-top: 6px !important; + color: #636161; + padding-bottom: 15px; + padding-right: 44px; + + } + .filed3{ + border-radius: 30px; + border: 1px solid #d3d5d5 !important; + margin: 10px; + padding-left: 11px !important; + padding-top: 6px !important; + color: #636161; + padding-bottom: 15px; + padding-right: 30px; + } + .filedDesc{ + border-radius: 30px; + border: 1px solid #d3d5d5 !important; + // margin: 10px; + padding-left: 20px !important; + padding-top: 6px !important; + color: #636161; + --padding-bottom: 90px; + font-size: 13px; + text-align: start; + } + .filedDesc-ar{ + border-radius: 30px; + border: 1px solid #d3d5d5 !important; + // margin: 10px; + padding-right: 20px !important; + padding-top: 6px !important; + color: #636161; + --padding-bottom: 90px; + font-size: 13px; + text-align: start; + } + + .labelDesc{ + display: block; + padding-top: 8px; + padding-left: 15px; + font-size: 14px; + font-weight: bold; + color: #adabab; + } + + .selectLabel{ + display: block; + padding-top: 8px; + padding-left: 15px; + font-size: 14px; + /* font-family: 'WorkSans-Bold'; */ + font-weight: bold; + color: black; + } + + + // .cancelRequest{ + // padding: 10px 7px 10px 0px; + // ion-button{ + // border-radius: 7px; + // padding: 12px 30px 12px 30px; + // background: #d00a0a; + // --background: transparent; + // --box-shadow: none !important; + // height: auto; + // min-height: inherit; + // font-size: 16px; + // font-weight: bold; + // margin-top: -5px; + // }} + // .submitRequest{ + // padding: 10px 7px 10px 0px; + // ion-button{ + // border-radius: 7px; + // padding: 12px 30px 12px 30px; + // background: #19a163; + // --background: transparent; + // --box-shadow: none !important; + // height: auto; + // min-height: inherit; + // font-size: 16px; + // font-weight: bold; + // margin-top: -5px; + // }} + + +.gridDiv{ + width: 100%; + height: 40px; + margin-top: 18px; + font-size: 14px; +} + +.gridCancelBtn{ + min-width: auto; + // margin: 0px; + padding: 10px; + border: 1px solid var(--cusgray); + box-shadow: none; + -webkit-box-shadow: none; + -moz-box-shadow: none; + width: 45%; + height: 100%; + border-radius: 8px; + background: #d00a0a; + color: white; + margin-left: 15px; + margin-right: 5px; + font-family: 'WorkSans-bold'; +} + +.gridSubmitBtn{ + min-width: auto; + // margin: 0px; + padding: 10px; + border: 1px solid var(--cusgray); + box-shadow: none; + -webkit-box-shadow: none; + -moz-box-shadow: none; + width: 45%; + height: 100%; + border-radius: 8px; + background: #19a163; + color: white; + // margin-left: 15px; + // margin-right: 5px; + font-family: 'WorkSans-bold';} + + + .filed-container{ + margin-right: -17px; + margin-left: -25px; + } + + .labels{ + display: block; + margin-top: 15px; + padding-top: 8px; + padding-left: 15px; + font-size: 14px; + font-family: 'WorkSans-Bold'; + } + + .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; + } + .footer{ + padding: 15px 0px 0px 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; + } + .footer2{ + padding: 15px 0px 0px 24px; + background-color: var(--light) !important; + border: 0px !important; + box-shadow: none !important; + -webkit-box-shadow: none; + } + + ion-footer .footer-button{ + --background: #259CB8; + width: 80%; + } + + .fileUpload { + position: relative; + overflow: hidden; + margin: 10px; + margin-left: -233px; + } + .fileUpload input.upload { + position: absolute; + top: 0; + right: 0; + margin: 0; + padding: 0; + font-size: 20px; + cursor: pointer; + opacity: 0; + filter: alpha(opacity=0); + } + + .iconButton .imgSize{ + width: 10px !important; + height: 10px; + } + + button.iconButton.button.button-ios.button-default.button-default-ios, +button.iconButton.button.button-md.button-default.button-default-md { + padding: 0px; +} \ No newline at end of file diff --git a/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.spec.ts b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.spec.ts new file mode 100644 index 00000000..c9dda9a7 --- /dev/null +++ b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.spec.ts @@ -0,0 +1,27 @@ +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { HrRequestFormComponent } from './hr-request-form.component'; + +describe('HrRequestFormComponent', () => { + let component: HrRequestFormComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ HrRequestFormComponent ], + schemas: [CUSTOM_ELEMENTS_SCHEMA], + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(HrRequestFormComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.ts b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.ts new file mode 100644 index 00000000..3971e868 --- /dev/null +++ b/Mohem/src/app/mowadhafi/hr-request-form/hr-request-form.component.ts @@ -0,0 +1,404 @@ +import { Component, OnInit } from '@angular/core'; +import { Platform, Events, MenuController } from '@ionic/angular'; +import { CommonService } from 'src/app/hmg-common/services/common/common.service'; +import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service'; +import { AuthenticationService } from 'src/app/hmg-common/services/authentication/authentication.service'; +import { AuthenticatedUser } from 'src/app/hmg-common/services/authentication/models/authenticated-user'; +import { SharedDataService } from 'src/app/hmg-common/services/shared-data-service/shared-data.service'; +import { MowadhafiService } from '../mowadhafi.service'; +import { Location } from '@angular/common'; +import { MenuResponse } from 'src/app/hmg-common/services/menu/models/menu-response'; +import { LoginModel } from 'src/app/authentication/models/LoginModel'; +import { SendActivationByType } from 'src/app/authentication/models/sendActivationByType'; +import { FileUploader } from 'ng2-file-upload'; +@Component({ + selector: 'app-hr-request-form', + templateUrl: './hr-request-form.component.html', + styleUrls: ['./hr-request-form.component.scss'], +}) +export class HrRequestFormComponent implements OnInit { + public EmpName : string; + public EmpNum : string; + public EmpGroup : string; + public EmpMobile : string; + public EmpJob : string; + public EmpOrgName : string; + public EmpPayrol : string; + public EmpPosition : string; + public EmpEmail: string; + public EmpCatMeaning:string; + public EmpGRADENAME : string; + public EmpLocation : string; + public EmpImg : string; + public userImage: any = '../assets/imgs/profile.png'; + public loginData = new LoginModel(); + public searchKeySelect = 'Complaints'; + myColor: string = 'secondary'; + public showRequestDetails = false; + public proID= "CS" + public inquiry: string; + public HR : string; + public complaints:string; + public Projectresult:any; + public EmpRelations:any; + public Hr:any; + public Payroll:any; + public GovRelation:any; + public projName:any; + public topicName:any; + public departTypeList: any; + public topicTypeList:any; + public sectionTypeList:any; + public projectDetial:any; + public projectDep:any; + public sectionDep:any; + public projectCode; + public SelectedServiceType:any; + public depType:any; + public secType:any; + public topicType:any; + indexLastObj: any; + addAttachRequest: any = []; + TransactionID: any; + public teckitDetial:any; + public teckitInfo:any; + public Description:any; + public selectedFile: any; + filterAllowedType: any = [ + "application/pdf", + "image/jpeg", + "image/png", + "text/plain", + "image/jpg", + "application/vnd.ms-excel", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" + ]; + + public direction: string; + constructor( + public ts: TranslatorService, + public cs: CommonService, + public authService: AuthenticationService, + public sharedData: SharedDataService, + public events: Events, + public MowadhafiService: MowadhafiService, + private location: Location, + private menu: MenuController, + + + ) { + this.direction = TranslatorService.getCurrentLanguageName(); + } + + ngOnInit() { + this.projectCode = this.cs.sharedService.getSharedData("projcet-code"); + this.getTicketsByEmployee(); + this.getTicketTypes(); + this.getProject(); + this.getCreateTicket(); + + + } + + goback() { + this.location.back(); + + } + + showSelectedField(){} + + getTicketTypes(){ + const request = { + EmployeeNumber:"", + + }; + this.MowadhafiService.getTicketTypes(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetTicketTypesResult(result); + + }) } + handlegetTicketTypesResult(result){ + this.HR = result.Mohemm_Itg_TicketTypesList[0].typeName; + this.complaints = result.Mohemm_Itg_TicketTypesList[1].typeName; + this.inquiry = result.Mohemm_Itg_TicketTypesList[2].typeName; + } + + +getProject(){ + const request = { + EmployeeNumber:"", + ItgProjectCode: this.projectCode + + }; + this.MowadhafiService.getProject(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetProjectResult(result); + + }) } + handlegetProjectResult(result){ + this.Projectresult=result.Mohemm_Itg_ProjectsList; + this.getProjectDepartments(); + } + + +getProjectDepartments(){ + const request = { + EmployeeNumber:"", + ItgProjectId:this.Projectresult[0].projectId, + + + }; + this.MowadhafiService.getProjectDepartments(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetProjectDepartmentsResult(result); + + }) } + handlegetProjectDepartmentsResult(result){ + this.departTypeList= result.Mohemm_ITG_ProjectDepartmentsList; + this.getDepartmentSections(); + + } + +getDepartmentSections(){ + const request = { + EmployeeNumber:"", + ItgProjectDepartmentId:this.departTypeList.projectDepartmentId, + + + }; + this.MowadhafiService.getDepartmentSections(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetDepartmentSectionsResult(result); + + }) } + handlegetDepartmentSectionsResult(result){ + this.sectionTypeList= result.Mohemm_ITG_DepartmentSectionsList; + + this.getSectionTopics(); + } + +getSectionTopics(){ + const request = { + EmployeeNumber:"", + ItgDepartmentSectionId:this.sectionTypeList.departmentSectionId, + + }; + this.MowadhafiService.getSectionTopics(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetSectionTopicsResult(result); + + }) } + handlegetSectionTopicsResult(result){ + // this.topicName=result.Mohemm_ITG_SectionTopicsList[0].topicName + this.topicTypeList= result.Mohemm_ITG_SectionTopicsList; + + + } + + + + // getTicketDetails(){ + // const request = { + // EmployeeNumber:'', + // ItgTicketId:this.teckitDetial.ticketId, + + // }; + // this.MowadhafiService.getTicketDetails(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + // { + // this.handlegetTicketDetailsResult(result); + + // }) } + // handlegetTicketDetailsResult(result){ + + // let res; + // if(this.cs.validResponse(result)){ + // res = JSON.parse(result.Mohemm_ITG_ResponseItem); + // console.log(res); + // this.teckitInfo = res.result.data; + + // } + + // } + + getTicketsByEmployee() { + const request = { + // TokenID:"xxx", + EmployeeNumber: "", + ItgPageSize: 10, + ItgPageNo: 1 + + }; + this.MowadhafiService.getTicketsByEmployee(request, () => { }, this.ts.trPK('general', 'retry')).subscribe((result) => { + this.handlegetTicketsByEmployeeResult(result); + + }) + } + + handlegetTicketsByEmployeeResult(result){ + let x; + if(this.cs.validResponse(result)){ + x = JSON.parse(result.Mohemm_ITG_ResponseItem); + console.log(x); + this.teckitInfo=x.result.data; + // for (let i = 0; i < this.ticketsInfo.length; i++) { + // console.log(i + ' : ' + this.ticketsInfo[i].ticketTypeName) + + // } + console.log("getTicketsByEmployee()-------------------------------------------------------"); + console.log(this.teckitInfo); + console.log("Type Id" + this.teckitInfo[0].ticketTypeId); + + } + } + + + getCreateTicket(){ + // const request = { + // // EmployeeNumber:"", + // // ticketTypeId:this.teckitInfo[0].ticketTypeId, + // // projectId:this.teckitInfo[0].projectId, + // // departmentId:this.teckitInfo[0].departmentId, + // // sectionId:this.teckitInfo[0].sectionId, + // // sectionTopicId:this.teckitInfo[0].topicId, + // // description:this.teckitInfo[0].description, + // // fileColl:this. + // // employeeNumber:this.teckitInfo[0].employeeNumber, + // // ticketStatus:this.teckitInfo[0].ticketStatusName, + + + + // // channelId:this.teckitInfo.channelId, + + + + // }; + var request = new FormData(); + request.append('EmployeeNumber',"" ); + + request.append('ticketTypeId', this.teckitInfo[0].ticketTypeId ); + request.append('projectId',this.teckitInfo[0].projectId); + request.append('departmentId',this.teckitInfo[0].departmentId ); + request.append('sectionId',this. teckitInfo[0].sectionId ); + request.append('sectionTopicId', this.teckitInfo[0].topicId ); + request.append('description',this.teckitInfo[0].description ); + request.append('fileColl',this.selectedFile[0],this.selectedFile[0].name ); + request.append('employeeNumber',this.teckitInfo[0].employeeNumber ); + request.append('ticketStatus',this.teckitInfo[0].ticketStatusName ); + + + //request.append('file', this.uploadForm.get('profile').value); + + + + this.MowadhafiService.getCreateTicket(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + { + this.handlegetCreateTicketResult(result); + + }) } + handlegetCreateTicketResult(result){ + + + } + + + + + +public cancelRequest() { + this.cs.openMyRequestPage(); + // this.menu.toggle(); +} + + +/*******************Add attchement Functions*************/ +public uploader: FileUploader = new FileUploader({ + allowedMimeType: [ + "application/pdf", + "image/jpeg", + "image/png", + "text/plain", + "image/jpg", + "application/vnd.ms-excel", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" + ], + maxFileSize: 10 * 1024 * 1024, + formatDataFunctionIsAsync: true, + formatDataFunction: async item => { + return new Promise((resolve, reject) => { + resolve({ + name: item._file.name, + length: item._file.size, + contentType: item._file.type, + date: new Date() + }); + }); + } +}); + + +onFileSelectedclick(event){ + //event.target.value = ''; + this.selectedFile = event; +} + + +onFileSelected(input) { + if (!(this.filterAllowedType.indexOf(input.target.files[0].type) > -1)) { + let msg: string = ""; + msg = this.ts.trPK("general", "noFileSelect"); + this.cs.presentAlert(msg); + return; + } // todo: show alert that you tried uploading wrong files + else { + const file = input.target.files[0]; + + // console.log(file); + + this.getBase64(file).then(data => + this.pushObject(data, file.name, file.type) + ); + } +} + + +getBase64(file) { + return new Promise((resolve, reject) => { + const reader = new FileReader(); + reader.readAsDataURL(file); + reader.onload = () => resolve(reader.result); + reader.onerror = error => reject(error); + }); +} + +pushObject(fileData, name, type) { + // console.log("before push: "+ this.index); + this.indexLastObj++; + try { + let array = name.split("."); + let attachType: string = array[array.length - 1]; + + this.addAttachRequest.push({ + AttachmentID: this.indexLastObj, + P_FILE_CONTENT_TYPE: attachType, //type.split('/')[1], + P_FILE_DATA: fileData.split(",")[1], + P_FILE_NAME: name, //.split('.')[0], + P_TRANSACTION_ID: this.TransactionID + }); + } catch (e) {} +} + +removeFile(objectitem) { + let objIndex1 = this.uploader.queue.findIndex(item => item == objectitem); + this.uploader.queue.splice(objIndex1, 1); + let objIndex = this.addAttachRequest.findIndex( + item => item.AttachmentID == objectitem.AttachmentID + ); + this.addAttachRequest.splice(objIndex, 1); +} + + +submitRequest(){ + +} + +} diff --git a/Mohem/src/app/mowadhafi/hr-request/hr-request.component.html b/Mohem/src/app/mowadhafi/hr-request/hr-request.component.html index c2f7eb28..14c682d4 100644 --- a/Mohem/src/app/mowadhafi/hr-request/hr-request.component.html +++ b/Mohem/src/app/mowadhafi/hr-request/hr-request.component.html @@ -11,7 +11,7 @@ -
+
- + -
+
- Action By + {{ts.trPK('userProfile','actionBy')}}{{action.actionBy}}
-

descriptions

- May 16,2021 +

{{action.comments}}

+ {{(action.actionDate)?.substring(0,10)}}
diff --git a/Mohem/src/app/mowadhafi/request-details/request-details.component.scss b/Mohem/src/app/mowadhafi/request-details/request-details.component.scss index 06ad71a7..7ecde242 100644 --- a/Mohem/src/app/mowadhafi/request-details/request-details.component.scss +++ b/Mohem/src/app/mowadhafi/request-details/request-details.component.scss @@ -70,7 +70,8 @@ font-size: 13px; margin-bottom: 0px; margin-top: -10px; - color: gray; + color: #a9a5a5; + font-family: 'WorkSans-bold'; } .request-list-container { @@ -78,7 +79,6 @@ padding-left: 37px; clear: both; min-height: 200px; - margin-bottom: 80px; padding-top: 15px; } .request-list-container:before{ @@ -162,7 +162,7 @@ margin-bottom: 0px; margin-top: -10px; color: gray; - margin-left: 178px; + margin-left: 172px; } .date-span-ar{ diff --git a/Mohem/src/app/mowadhafi/request-details/request-details.component.ts b/Mohem/src/app/mowadhafi/request-details/request-details.component.ts index ca0a2600..c122da44 100644 --- a/Mohem/src/app/mowadhafi/request-details/request-details.component.ts +++ b/Mohem/src/app/mowadhafi/request-details/request-details.component.ts @@ -15,6 +15,16 @@ import { Location } from '@angular/common'; }) export class RequestDetailsComponent implements OnInit { public direction : String; + public actionInfo:any = []; + public teckitInfo:any; + public description:any; + public section:any; + public topic:any; + public ticketRefre:any; + public date:any; + public status:any; + public teckitDetial:any; + constructor( public ts: TranslatorService, @@ -31,8 +41,9 @@ export class RequestDetailsComponent implements OnInit { } ngOnInit() { + this.teckitDetial = this.cs.sharedService.getSharedData('ticket-info', true) + this.getTicketDetails(); this.getTicketTransaction(); - this.getTicketDetails() } goback() { @@ -44,8 +55,8 @@ export class RequestDetailsComponent implements OnInit { getTicketTransaction(){ const request = { - EmployeeNumber:"121816", - ItgTicketId:"5a10de61-c4db-4c77-e464-08d8a1beaaac", + EmployeeNumber:'', + ItgTicketId:this.teckitDetial.ticketId, }; this.MowadhafiService.getTicketTransaction(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> @@ -54,14 +65,23 @@ export class RequestDetailsComponent implements OnInit { }) } handlegetTicketTransactionResult(result){ + let x; + if(this.cs.validResponse(result)){ + x = JSON.parse(result.Mohemm_ITG_ResponseItem); + console.log(x); + this.actionInfo=x.result.data; + for (let i = 0; i < this.actionInfo.length; i++) { + console.log(i + ' : ' + this.actionInfo[i].ticketTypeName) + + } + } } getTicketDetails(){ const request = { - EmployeeNumber:"121816", - TokenID:"@dm!n", - ItgTicketId:"5a10de61-c4db-4c77-e464-08d8a1beaaac", + EmployeeNumber:'', + ItgTicketId:this.teckitDetial.ticketId, }; this.MowadhafiService.getTicketDetails(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> @@ -70,6 +90,19 @@ export class RequestDetailsComponent implements OnInit { }) } handlegetTicketDetailsResult(result){ + + let res; + if(this.cs.validResponse(result)){ + res = JSON.parse(result.Mohemm_ITG_ResponseItem); + console.log(res); + this.teckitInfo = res.result.data; + this.status =this.teckitInfo.ticketStatusName; + this.date =this.teckitInfo.created.substring(0, 10); + this.ticketRefre =this.teckitInfo.ticketReferenceNo; + this.section = this.teckitInfo.sectionName; + this.topic =this.teckitInfo.topicName; + this.description =this.teckitInfo.description; + } } diff --git a/Mohem/src/app/my-team/details/details.component.html b/Mohem/src/app/my-team/details/details.component.html index a22f7da9..e8bc1fd3 100644 --- a/Mohem/src/app/my-team/details/details.component.html +++ b/Mohem/src/app/my-team/details/details.component.html @@ -400,7 +400,7 @@

{{ts.trPK('myTeam','my-team-members')}}

-

{{EmpTotal}}

+

{{EmployeeTotal}}

diff --git a/Mohem/src/app/my-team/details/details.component.ts b/Mohem/src/app/my-team/details/details.component.ts index 83674888..63cb72ed 100644 --- a/Mohem/src/app/my-team/details/details.component.ts +++ b/Mohem/src/app/my-team/details/details.component.ts @@ -92,7 +92,10 @@ export class DetailsComponent implements OnInit { public selectedFilter = ''; public itemType = ''; public monthNo: any; - isFavorite: boolean = false; + isFavorite = false; + public EmpNumer:any; + public isFavor:any; + public EmployeeTotal:any; @@ -231,7 +234,9 @@ export class DetailsComponent implements OnInit { this.showAttendanceTracking(); // tslint:disable-next-line: max-line-length this.currentMonthName = this.direction === 'en' ? this.common.getMonthName(this.monthIndex) : this.common.getMonthNameAr(this.monthIndex); - this.getSuborinatesAttStatus(); + // this.getSuborinatesAttStatus(); + // this.getFavorit(); + } @@ -300,7 +305,6 @@ export class DetailsComponent implements OnInit { this.timeCardService.getDayHoursTypeDetails(dayAndHoursReqObj, '', '', this.isPostNoLoad).subscribe((result) => { if (this.common.validResponse(result)) { - console.log(result.GetDayHoursTypeDetailsList); this.common.sharedService.setSharedData(result.GetDayHoursTypeDetailsList, 'RTP_IDs'); this.countAllAttendDays(result.GetDayHoursTypeDetailsList); } @@ -308,7 +312,7 @@ export class DetailsComponent implements OnInit { } monthCardSliders(monthNo) { - console.log(monthNo + "__________________") + /* change */ @@ -321,8 +325,7 @@ export class DetailsComponent implements OnInit { //end this.calendarConfig(this.getMonthName(monthNo), this.currentYear); - console.log("next month =" + this.nextMonth); - console.log(" Month Name =" + this.currentMonthName); + } @@ -350,7 +353,7 @@ export class DetailsComponent implements OnInit { this.preMonth = 12; } this.currentDate = new Date(this.currentYear, (this.preMonth - 1), 1); - console.log(this.currentDate); + this.calendarConfig(this.getMonthName(this.preMonth), this.currentYear); this.preMonth = this.preMonth - 1; this.nextMonth = this.preMonth + 2; @@ -525,6 +528,8 @@ export class DetailsComponent implements OnInit { this.isSpecialist = this.common.sharedService.getSharedData('isSpecialist', false) ? true : false; if (this.employee) { this.getEmpSubordinate(userID); + this.isFavorite = false; + this.getFavorit(); } } @@ -587,7 +592,7 @@ export class DetailsComponent implements OnInit { }; this.getEmployeeSubordinatesRequestObject = body; this.myTeamService.getEmployeeSubordinates(body).subscribe((result: any) => { - console.log('one'); + if (this.common.validResponse(result)) { this.handleEmpResult(result.GetEmployeeSubordinatesList); } @@ -595,6 +600,7 @@ export class DetailsComponent implements OnInit { } handleEmpResult(result) { + this.EmployeeTotal = result.length; const lastItemIndex = result.length - 1; const lastItem = result[lastItemIndex]; if (lastItem) { @@ -625,7 +631,7 @@ export class DetailsComponent implements OnInit { doInfinite(infiniteScroll) { if (!this.isReachEnd) { this.myTeamService.getEmployeeSubordinates(this.getEmployeeSubordinatesRequestObject).subscribe((result: any) => { - console.log('two'); + if (this.common.validResponse(result)) { this.handleEmpResult(result.GetEmployeeSubordinatesList); } @@ -715,37 +721,29 @@ export class DetailsComponent implements OnInit { } } - getSuborinatesAttStatus() { - const request = { - // VersionID:2.8, - // Channel:37, - // LanguageID:2, - // MobileType:"android", - // P_SESSION_ID:1142449920, - // MobileNumber:"0508079569", - // TokenID:"VHR_Token", - // P_USER_NAME:"111209", - // UserName:"111209", - // P_EMAIL_ADDRESS:"Faisal.AlQurashi@cloudsolutions.com.sa", - SearchMonth: "January", - SearchYear: 2021 + // getSuborinatesAttStatus() { + // const request = { + // // SearchMonth: "January", + // // SearchYear: 2021 + // SearchMonth: "", + // SearchYear: Number - }; - // this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) => - this.myTeamService.getSuborinatesAttStatus(request, () => { }, this.ts.trPK('general', 'retry')).subscribe((result) => { - this.handleRespondSuborinatesAttStatusResult(result); + // }; + // // this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) => + // this.myTeamService.getSuborinatesAttStatus(request, () => { }, this.ts.trPK('general', 'retry')).subscribe((result) => { + // this.handleRespondSuborinatesAttStatusResult(result); - }) - } + // }) + // } - handleRespondSuborinatesAttStatusResult(result) { - // this.EmpTotal = result.GetSubordinatesAttdStatusList.length; - this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES; - console.log("total no " + this.EmpTotal) - } + // handleRespondSuborinatesAttStatusResult(result) { + // // this.EmpTotal = result.GetSubordinatesAttdStatusList.length; + // this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES; + + // } activeFilter(index: number) { - console.log(this.filters); + if (this.currentActiveIndex !== index) { this.previousActiveIndex = this.currentActiveIndex; this.currentActiveIndex = index; @@ -804,8 +802,9 @@ export class DetailsComponent implements OnInit { this.common.presentConfirmDialog( confirmBoxhtml , () => { + var request = - { "USER_NAME": selEmp['USER_NAME'], "EMPLOYEE_DISPLAY_NAME": selEmp['EMPLOYEE_DISPLAY_NAME'], "EMAIL_ADDRESS": selEmp.EMAIL_ADDRESS, "EMPLOYEE_IMAGE": selEmp.EMPLOYEE_IMAGE, "IsFavorite": true }; + [ { "USER_NAME": this.employee.EMPLOYEE_NUMBER, "EMPLOYEE_DISPLAY_NAME": this.employee.EMPLOYEE_DISPLAY_NAME, "EMAIL_ADDRESS": this.employee.EMAIL_ADDRESS, "EMPLOYEE_IMAGE": this.employee.EMPLOYEE_IMAGE, "IsFavorite": !this.isFavorite}]; this.saveUserFavruiteList(request); // this.isFavorite = false; @@ -813,7 +812,7 @@ export class DetailsComponent implements OnInit { }, () => { }) - this.isFavorite = false; + // if (selectValue == "1" || selectValue == "2" || selectValue == "3") { // this.isSelect = true; // } @@ -832,6 +831,7 @@ export class DetailsComponent implements OnInit { if (this.common.validResponse(result)) { this.common.stopLoading(); this.favoriteUserList = result['Mohemm_GetFavoriteReplacementsList']; + } @@ -842,10 +842,27 @@ export class DetailsComponent implements OnInit { }).subscribe((result) => { if (this.common.validResponse(result)) { this.common.toastPK("replacementRoll", "favorite-saved"); - this.isFavorite = true; + this.isFavorite = !this.isFavorite; } }) } + getFavorit(){ + this.worklistService.getFavoriteMyTeam({}, () => { + }).subscribe((result) => { + this.EmpNumer = result.Mohemm_GetFavoriteReplacementsList; + + this.EmpNumer.forEach(element => { + if(element.USER_NAME === this.employee.EMPLOYEE_NUMBER){ + + this.isFavorite = true; + + } + }); + + }); + } + + } diff --git a/Mohem/src/app/my-team/home/home.component.html b/Mohem/src/app/my-team/home/home.component.html index 356357b3..e97bf341 100644 --- a/Mohem/src/app/my-team/home/home.component.html +++ b/Mohem/src/app/my-team/home/home.component.html @@ -47,7 +47,7 @@

{{ts.trPK('myTeam','my-team-members')}}

-

{{EmpTotal}}

+

{{EmployeeTotal}}

diff --git a/Mohem/src/app/my-team/home/home.component.ts b/Mohem/src/app/my-team/home/home.component.ts index 295da569..46296c21 100644 --- a/Mohem/src/app/my-team/home/home.component.ts +++ b/Mohem/src/app/my-team/home/home.component.ts @@ -31,6 +31,7 @@ export class HomeComponent implements OnInit { public pageFirstVisit = false; myColor: string = 'secondary'; public EmpTotal = []; + public EmployeeTotal: any; public options = { cutoutPercentage: 80, @@ -99,7 +100,7 @@ export class HomeComponent implements OnInit { this.common.sharedService.setSharedData( [], DetailsComponent.opendEmployeesARR); this.setIntitial(); - this.getSuborinatesAttStatus(); + // this.getSuborinatesAttStatus(); } toggleColor() { this.myColor = 'secondary'; @@ -166,6 +167,7 @@ export class HomeComponent implements OnInit { } handleEmpResult(result) { + this.EmployeeTotal = result.length; const lastItemIndex = result.length - 1; const lastItem = result[lastItemIndex]; if (lastItem) { @@ -240,33 +242,23 @@ export class HomeComponent implements OnInit { - getSuborinatesAttStatus(){ - const request = { - // VersionID:2.8, - // Channel:37, - // LanguageID:2, - // MobileType:"android", - // P_SESSION_ID:1142449920, - // MobileNumber:"0508079569", - // TokenID:"VHR_Token", - // P_USER_NAME:"111209", - // UserName:"111209", - // P_EMAIL_ADDRESS:"Faisal.AlQurashi@cloudsolutions.com.sa", - SearchMonth:"January", - SearchYear:2021 + // getSuborinatesAttStatus(){ + // const request = { + // // SearchMonth:"January", + // SearchYear:Number, - }; - // this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) => - this.myTeamService.getSuborinatesAttStatus(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> - { - this.handleRespondSuborinatesAttStatusResult(result); + // }; + // // this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) => + // this.myTeamService.getSuborinatesAttStatus(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> + // { + // this.handleRespondSuborinatesAttStatusResult(result); - }) - } + // }) + // } - handleRespondSuborinatesAttStatusResult(result){ - // this.EmpTotal = result.GetSubordinatesAttdStatusList.length; - this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES; - console.log("total no "+this.EmpTotal) - } + // handleRespondSuborinatesAttStatusResult(result){ + // // this.EmpTotal = result.GetSubordinatesAttdStatusList.length; + // this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES; + // console.log("total no "+this.EmpTotal) + // } } diff --git a/Mohem/src/app/my-team/service/my-team.service.ts b/Mohem/src/app/my-team/service/my-team.service.ts index 31354d76..87507d70 100644 --- a/Mohem/src/app/my-team/service/my-team.service.ts +++ b/Mohem/src/app/my-team/service/my-team.service.ts @@ -7,7 +7,7 @@ import { AuthenticationService } from "src/app/hmg-common/services/authenticatio export class MyTeamService { public static EMPLOYEE_SHARED_DATA = 'employee'; public static getMyTeam = 'Services/ERP.svc/REST/GET_EMPLOYEE_SUBORDINATES'; - public static getSuborinateStatus = 'Services/ERP.svc/REST/GET_SUBORDINATES_ATTD_STATUS'; + // public static getSuborinateStatus = 'Services/ERP.svc/REST/GET_SUBORDINATES_ATTD_STATUS'; constructor( @@ -20,11 +20,13 @@ export class MyTeamService { return this.con.post(MyTeamService.getMyTeam, request, onError, errorLabel); } - public getSuborinatesAttStatus(absence: any, onError?: any, errorLabel?: string){ - const request = absence; - this.authService.authenticateRequest(request); - return this.con.post(MyTeamService.getSuborinateStatus, request, onError, errorLabel); - } + // public getSuborinatesAttStatus(absence: any, onError?: any, errorLabel?: string){ + // const request = absence; + // this.authService.authenticateRequest(request); + // console.log("________________________________"); + // console.log(request); + // return this.con.post(MyTeamService.getSuborinateStatus, request, onError, errorLabel); + // } diff --git a/Mohem/src/app/notification/service/worklist.service.ts b/Mohem/src/app/notification/service/worklist.service.ts index c53b6f8a..1673443f 100644 --- a/Mohem/src/app/notification/service/worklist.service.ts +++ b/Mohem/src/app/notification/service/worklist.service.ts @@ -59,7 +59,13 @@ export class WorklistService { var req: any = {}; req['Mohemm_ChangeReplacementsInputList'] = request; this.authService.authenticateRequest(req); - + console.log(req); return this.api.post(WorklistService.saveFavorite, req, onError, errorLabel); } -} \ No newline at end of file + + public getFavoriteMyTeam(req: any, onError?: any, errorLabel?: string): Observable { + this.authService.authenticateRequest(req); + return this.api.post(WorklistService.getFavorite, req, onError, errorLabel); + } +} + diff --git a/Mohem/src/assets/localization/i18n.json b/Mohem/src/assets/localization/i18n.json index 15e83c59..639eaad5 100644 --- a/Mohem/src/assets/localization/i18n.json +++ b/Mohem/src/assets/localization/i18n.json @@ -1175,6 +1175,10 @@ "en": "Topic", "ar": "العنوان" }, + "actionBy": { + "en": "Action By :", + "ar": " : بواسطة" + }, "postedDate": { "en": "Posted on", "ar": "نشر في" @@ -1205,7 +1209,7 @@ }, "HR-Request": { "en": "HR Request", - "ar": "HR طلبات ال " + "ar": "HR طلبات" }, "performance-evaluation": { "en": "Performance Evaluation", @@ -1635,6 +1639,14 @@ "en": "Absence list", "ar": "قائمة الإجازات" }, + "AccrualUsed": { + "en": "Accrual Used", + "ar": "الأستحقاق المستخدم" + }, + "PreviousYears": { + "en": "Previous Years", + "ar": "السنوات السابقه" + }, "accrualBalances": { "en": "Accrual Balances", "ar": "رصيد حساب المستحقات"