Skip to content

NewJobService

reference
2 min readUpdated

Kind: Class

Source: Frontend/src/app/services/sales/new-job/new-job.service.ts (line 17)

Part of: Frontend

NewJobService manages data access and actions for sales job and inquiry workflows. It retrieves branch, responsible, product type, time frame, and status data sources, then saves, updates, or deletes job-related records.

Methods

MethodSignatureReturns
getCurrentBranchgetCurrentBranch()void
getSalesResponsiblesDataSourcegetSalesResponsiblesDataSource(companyBranchForData: number)void
getSalesResponsiblesDataSourceWithEnumgetSalesResponsiblesDataSourceWithEnum(departmentIdEnum: number, companyBranchForData: number)void
getProductTypesDataSourcegetProductTypesDataSource()void
getPurchasingProductTypesDataSourcegetPurchasingProductTypesDataSource()void
getTimeFramePeriodsDataSourcegetTimeFramePeriodsDataSource()void
getStatusDataSourcegetStatusDataSource(stage: undefined)void
saveJobsaveJob(job: undefined)void
updateJobupdateJob(job: undefined)void
deleteInquirydeleteInquiry(id: undefined)void
getsalesjobbyidgetsalesjobbyid(id: undefined)void
getDeliveriesForInstandSalesJobgetDeliveriesForInstandSalesJob(Jobid: undefined)void
createInquirycreateInquiry(inquiry: undefined)void
getInquirygetInquiry(inquiryId: number)void
updateInquiryupdateInquiry(inquiry: undefined)void
deleteJobdeleteJob(id: undefined)void
changeJobStatuschangeJobStatus(job: undefined)void
regretJobregretJob(id: undefined, regretDetails: undefined)void
unRegretPotentialJobunRegretPotentialJob(id: undefined)void
cancelJobcancelJob(id: undefined, cancelDetails: undefined)void
unCancelPotentialJobunCancelPotentialJob(id: undefined)void
convertJobToOfferconvertJobToOffer(id: undefined)void
regretOfferedJobregretOfferedJob(id: undefined, regretDetails: undefined)void
unRegretOfferedJobunRegretOfferedJob(id: undefined)void
cancelOfferedJobcancelOfferedJob(id: undefined, cancelDetails: undefined)void
unCancelOfferedJobunCancelOfferedJob(id: undefined)void
convertJobToPotentialconvertJobToPotential(id: undefined)void
LostOfferedJobLostOfferedJob(id: number, LossDetails: undefined)void
unLossOfferedJobunLossOfferedJob(id: number)void
unRejectOrderedJobunRejectOrderedJob(id: number)void
getSingleOffergetSingleOffer(offerId: number)void
createSingleOffercreateSingleOffer(offer: SalesOffers)void
approveOfferArchiveRequestapproveOfferArchiveRequest(offerId: number)void
disapproveOfferArchiveRequestdisapproveOfferArchiveRequest(offerId: number)void
changeStageSingleOfferchangeStageSingleOffer(offer: SalesOffers)void
requestSalesOfferPricesrequestSalesOfferPrices(offer: SalesOffers)void
updateSingleOfferupdateSingleOffer(offer: SalesOffers)void
regretSingleOfferregretSingleOffer(id: number, regretDetails: undefined)void
getregrettedOfferReasongetregrettedOfferReason(archivedId: number)void
updateRegrettedOfferReasonupdateRegrettedOfferReason(Id: number, regretDetails: RegretReasonModel)void
unRegretSingleOfferunRegretSingleOffer(id: number)void
cancelSingleOffercancelSingleOffer(id: number, cancelDetails: undefined)void
getCancelledOfferReasongetCancelledOfferReason(archivedId: number)void
updateCancelledOfferReasonupdateCancelledOfferReason(Id: number, cancelDetails: CancelReasonModel)void
unCancelSingleOfferunCancelSingleOffer(id: number)void
lostSingleOfferlostSingleOffer(id: number, lostDetails: undefined)void
getLostOfferReasongetLostOfferReason(archivedId: number)void
updateLostOfferReasonupdateLostOfferReason(Id: number, lostDetails: LostReasonModel)void
unLostSingleOfferunLostSingleOffer(id: number)void
deleteSingleOfferdeleteSingleOffer(id: number)void

Properties

PropertyType
datasourceBySearchEnumany

Diagram

mermaid
graph LR
  Component[Sales Job Component] --> Service[NewJobService]

  Service --> Branch[getCurrentBranch]
  Service --> SalesResponsibles[getSalesResponsiblesDataSource]
  Service --> SalesResponsiblesEnum[getSalesResponsiblesDataSourceWithEnum]
  Service --> ProductTypes[getProductTypesDataSource]
  Service --> PurchasingProductTypes[getPurchasingProductTypesDataSource]
  Service --> TimeFrames[getTimeFramePeriodsDataSource]
  Service --> Statuses[getStatusDataSource]

  Service --> Save[saveJob]
  Service --> Update[updateJob]
  Service --> Delete[deleteInquiry]

Usage

ts
import { Component, inject } from '@angular/core';
import { NewJobService } from '@app/services/sales/new-job/new-job.service';

@Component({
  selector: 'app-new-job-form',
  template: `<!-- form template -->`,
})
export class NewJobFormComponent {
  private readonly newJobService = inject(NewJobService);

  readonly salesResponsibles =
    this.newJobService.getSalesResponsiblesDataSource();

  readonly productTypes =
    this.newJobService.getProductTypesDataSource();

  readonly statuses =
    this.newJobService.getStatusDataSource();

  save(job: unknown): void {
    this.newJobService.saveJob(job);
  }

  update(job: unknown): void {
    this.newJobService.updateJob(job);
  }

  deleteInquiry(inquiry: unknown): void {
    this.newJobService.deleteInquiry(inquiry);
  }
}

AI Coding Instructions

  • Use the existing data-source methods when binding branch, responsible, product type, time frame, and status controls.
  • Keep job payload shapes aligned with the contracts expected by saveJob() and updateJob().
  • Call getSalesResponsiblesDataSourceWithEnum() only where the consuming control requires enum-backed responsible values.
  • Route inquiry deletion through deleteInquiry() rather than duplicating deletion logic in components.

Used by

52 references from 52 files. Each is a place in this repository where the symbol is actually used — go read one rather than trusting an example.

Imported by (52)

  • MrqDetailsComponentFrontend/src/app/components/MRQ/mrq-details/mrq-details.component.ts:1
  • BillOfMaterialsDetailsComponentFrontend/src/app/components/bill-of-materials/bill-of-materials-details/bill-of-materials-details.component.ts:1
  • BlogPopupComponentFrontend/src/app/components/blogs/blog-popup/blog-popup.component.ts:1
  • BlogsComponentFrontend/src/app/components/blogs/blogs.component.ts:1
  • WarehouseConfigDetailsComponentFrontend/src/app/components/configuration/company/warehouse/warehouse-config-details/warehouse-config-details.component.ts:1
  • DashboardSettingsComponentFrontend/src/app/components/configuration/dashboard-settings/dashboard-settings/dashboard-settings.component.ts:1
  • UsersLayoutsListComponentFrontend/src/app/components/configuration/default-layouts/users-layouts-list/users-layouts-list.component.ts:1
  • ProductsDetailsComponentFrontend/src/app/components/configuration/products/products-details/products-details.component.ts:1

…and 44 more.

Was this page helpful?

Download as PDF