From 866833b4ed4ffdbad3262287406599ce66990204 Mon Sep 17 00:00:00 2001 From: "CHIEFSOFT\\ameye" Date: Fri, 24 Nov 2023 14:52:20 -0500 Subject: [PATCH] offers --- REMEMBER.txt | 2 +- src/app/pages/mytasks/mytasks.page.html | 16 ++++++- src/app/pages/mytasks/mytasks.page.ts | 24 ++++++---- src/app/store/interval-refresh.service.ts | 7 ++- .../store/usersoffers-data.service.spec.ts | 16 +++++++ src/app/store/usersoffers-data.service.ts | 48 +++++++++++++++++++ 6 files changed, 99 insertions(+), 14 deletions(-) create mode 100644 src/app/store/usersoffers-data.service.spec.ts create mode 100644 src/app/store/usersoffers-data.service.ts diff --git a/REMEMBER.txt b/REMEMBER.txt index a1029b0..830f8ec 100644 --- a/REMEMBER.txt +++ b/REMEMBER.txt @@ -73,7 +73,7 @@ ionic generate page ownersjob ionic generate component latest-market ionic generate service tasks-data ionic generate service banners-data - +ionic generate service usersoffers-data ***ionic generate service pendingjob-data diff --git a/src/app/pages/mytasks/mytasks.page.html b/src/app/pages/mytasks/mytasks.page.html index f621407..b2237e5 100644 --- a/src/app/pages/mytasks/mytasks.page.html +++ b/src/app/pages/mytasks/mytasks.page.html @@ -26,7 +26,7 @@
-
+
WrenchBoard Tasks @@ -40,6 +40,20 @@
+
+ + WrenchBoard Tasks + + Ready to Start + + + + You have one or more task offers waiting for you to start. + + + + Start Now +
diff --git a/src/app/pages/mytasks/mytasks.page.ts b/src/app/pages/mytasks/mytasks.page.ts index 0824edc..ec70936 100644 --- a/src/app/pages/mytasks/mytasks.page.ts +++ b/src/app/pages/mytasks/mytasks.page.ts @@ -3,6 +3,7 @@ import { Component, OnInit } from '@angular/core'; import { WrenchService } from 'src/app/services/wrench.service'; import {SessionDataProviderService} from "../../store/session-data-provider.service"; import {TasksDataService} from "../../store/tasks-data.service"; +import {UsersoffersDataService} from "../../store/usersoffers-data.service"; @Component({ selector: 'app-mytasks', @@ -14,6 +15,7 @@ export class MytasksPage implements OnInit { tabs: any = 'tasks'; + active_offers_count:number =0; active_job_count:number =0; pastdue_job_count:number =0; review_job_count:number =0; @@ -24,24 +26,20 @@ export class MytasksPage implements OnInit { private router: Router, public sessionDataProviderService: SessionDataProviderService, private wrenchService: WrenchService, - public tasksDataService:TasksDataService + public tasksDataService:TasksDataService, + public usersoffersDataService:UsersoffersDataService ) { } + myOffersData :[]; ngOnInit() { // debugger; this.refreshJobsData(); this.getJobsData(); - // this.getPastDueJobsData(); - // this.getInReviewJobsData(); } - // onCall() { - // this.router.navigate(['call']); - // } - // - // onMessage() { - // this.router.navigate(['message']); - // } + startOfferPage(){ + this.router.navigate(['joboffers']); + } activeSeleted(item) { this.router.navigate(['activetask'],{state: item}); } @@ -76,6 +74,12 @@ export class MytasksPage implements OnInit { this.pastdue_job_count = this.tasksDataService.pastdue_job_count; this.review_job_count = this.tasksDataService.review_job_count; + + this.myOffersData = this.usersoffersDataService.myOffersData; + + this.active_offers_count = this.usersoffersDataService.total_offers; + + console.log("Any OFFERRRR-> :::: ",this.active_offers_count); } async getJobsData(){ diff --git a/src/app/store/interval-refresh.service.ts b/src/app/store/interval-refresh.service.ts index 0045260..010c6b8 100644 --- a/src/app/store/interval-refresh.service.ts +++ b/src/app/store/interval-refresh.service.ts @@ -3,6 +3,7 @@ import {SessionDataProviderService} from "./session-data-provider.service"; import {MarketDataService} from "./market-data.service"; import {TasksDataService} from "./tasks-data.service"; import {BannersDataService} from "./banners-data.service"; +import {UsersoffersDataService} from "./usersoffers-data.service"; @Injectable({ providedIn: 'root' @@ -12,11 +13,12 @@ export class IntervalRefreshService { constructor( public sessionDataProviderService:SessionDataProviderService, public marketDataService:MarketDataService, public tasksDataService:TasksDataService, - public bannersDataService:BannersDataService) { + public bannersDataService:BannersDataService, + public usersoffersDataService:UsersoffersDataService) { this.marketDataService.getJobsData(); } - startIntervalCalls(){ + async startIntervalCalls(){ console.log("Hello Start ",this.sessionDataProviderService.session,this.sessionDataProviderService.refresh ); var interval = setInterval( ()=> { @@ -28,6 +30,7 @@ export class IntervalRefreshService { this.marketDataService.getJobsData(); this.tasksDataService.getJobsData(); this.bannersDataService.getBannersData(); + this.usersoffersDataService.getMyOffersData(); }, this.sessionDataProviderService.refresh*2); } diff --git a/src/app/store/usersoffers-data.service.spec.ts b/src/app/store/usersoffers-data.service.spec.ts new file mode 100644 index 0000000..edb29fa --- /dev/null +++ b/src/app/store/usersoffers-data.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { UsersoffersDataService } from './usersoffers-data.service'; + +describe('UsersoffersDataService', () => { + let service: UsersoffersDataService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(UsersoffersDataService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/store/usersoffers-data.service.ts b/src/app/store/usersoffers-data.service.ts new file mode 100644 index 0000000..5cc0409 --- /dev/null +++ b/src/app/store/usersoffers-data.service.ts @@ -0,0 +1,48 @@ +import { Injectable } from '@angular/core'; +import {SessionDataProviderService} from "./session-data-provider.service"; +import {AlertController, LoadingController} from "@ionic/angular"; +import {WrenchService} from "../services/wrench.service"; + +@Injectable({ + providedIn: 'root' +}) +export class UsersoffersDataService { + + constructor(public sessionDataProviderService: SessionDataProviderService, + private alertController:AlertController, + private wrenchService: WrenchService, + private loadingCtrl: LoadingController) { } + + session_image_server:string=''; + curr_session:string=''; + // + usrData: { + action:number, member_id: number, uid: string, + sessionid: string, + limit:20, + page:1, offset:number + }; + total_offers:number = 0; + myOffersTotalData:any; + myOffersData: []; + async getMyOffersData(){ + this.usrData = {action:15010, + member_id: this.sessionDataProviderService.member_id, + uid: this.sessionDataProviderService.member_uid, + sessionid: this.sessionDataProviderService.session , + limit:20, page:1,offset: 0} + + this.curr_session = this.sessionDataProviderService.session; + this.wrenchService.getMyOffers(this.usrData).subscribe( + myOffersTotalData => { + this.myOffersTotalData = myOffersTotalData; + this.session_image_server = this.myOffersTotalData.session_image_server; + console.log("myOffersTotalData RETURN->", this.myOffersTotalData); + this.myOffersData = this.myOffersTotalData.result_list; + console.log("myOffersData RETURN DATA->", this.myOffersData); + this.total_offers = this.myOffersData.length; + } + ); + + } +}