Portal

<back to all web services

BrowseLastProcurement

Requires Authentication
The following routes are available for this service:
GET/user/{userid}/lastprocurement
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ResponseBase:
    response_status: Optional[ResponseStatus] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ModifyRequestBase(IConcurrencyStamp):
    concurrency_stamp: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ModifyProcurementBase(ModifyRequestBase):
    is_group_member: Optional[bool] = None
    group_name: Optional[str] = None
    group_short_name: Optional[str] = None
    country_id: Optional[int] = None
    vat_number: Optional[str] = None
    registration_number: Optional[str] = None
    duns: Optional[str] = None
    address: Optional[str] = None
    main_activity: Optional[str] = None
    established_date: Optional[datetime.datetime] = None
    workforce: Optional[int] = None
    website: Optional[str] = None
    sales_manager_name: Optional[str] = None
    sales_manager_phone: Optional[str] = None
    sales_manager_email: Optional[str] = None
    csr_manager_name: Optional[str] = None
    csr_manager_phone: Optional[str] = None
    csr_manager_email: Optional[str] = None
    account_country_id: Optional[int] = None
    bank_name: Optional[str] = None
    account_number: Optional[str] = None
    iban: Optional[str] = None
    swift: Optional[str] = None
    currency_id: Optional[int] = None
    work_force_n1: Optional[int] = None
    work_force_n2: Optional[int] = None
    work_force_n3: Optional[int] = None
    subscribed_capital: Optional[int] = None
    subscribed_capital_currency_id: Optional[int] = None
    revenue_n1: Optional[int] = None
    revenue_n2: Optional[int] = None
    revenue_n3: Optional[int] = None
    net_profit_n1: Optional[int] = None
    net_profit_n2: Optional[int] = None
    net_profit_n3: Optional[int] = None
    equity_n1: Optional[int] = None
    equity_n2: Optional[int] = None
    equity_n3: Optional[int] = None
    liability_n1: Optional[int] = None
    liability_n2: Optional[int] = None
    liability_n3: Optional[int] = None
    operating_result_n1: Optional[int] = None
    operating_result_n2: Optional[int] = None
    operating_result_n3: Optional[int] = None
    db_failure_score: Optional[str] = None
    is_audited_account: Optional[bool] = None
    is_audited_account_comment: Optional[str] = None
    is_liquidation_proceedings: Optional[bool] = None
    is_liquidation_proceedings_comment: Optional[str] = None
    veolia_annual_revenues_proportion: Optional[Decimal] = None
    is_anti_corruption_document: Optional[bool] = None
    is_corruption_risk_map: Optional[bool] = None
    is_third_parties_evaluating_system: Optional[bool] = None
    is_internal_rules: Optional[bool] = None
    is_human_rights: Optional[bool] = None
    is_anti_corruption_training: Optional[bool] = None
    is_anti_corruption_report_system: Optional[bool] = None
    is_iso9001: Optional[bool] = None
    is_eco_vadis_scorecard: Optional[bool] = None
    eco_vadis_total_score: Optional[int] = None
    is_reduce_employee_safety_risk: Optional[bool] = None
    is_promote_social_integration: Optional[bool] = None
    is_nondiscrimination_policy: Optional[bool] = None
    is_iso14001: Optional[bool] = None
    is_identified_major_environmental_impacts: Optional[bool] = None
    is_use_water_resources: Optional[bool] = None
    is_consumption_of_raw_materials: Optional[bool] = None
    is_energy_consumption: Optional[bool] = None
    is_greenhouse_gas_emissions: Optional[bool] = None
    is_atmospheric_emissions: Optional[bool] = None
    is_aqueous_pollution: Optional[bool] = None
    is_waste_generation: Optional[bool] = None
    is_natural_areas_pollution: Optional[bool] = None
    is_privacy_statement: Optional[bool] = None
    is_veolia_supplier_charter: Optional[bool] = None
    is_veolia_core_standards: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ModifyLegalRepresentativeBase(ModifyRequestBase):
    procurement_id: int = 0
    position: Optional[str] = None
    name: Optional[str] = None
    address: Optional[str] = None
    birth_date: Optional[datetime.datetime] = None
    email: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LegalRepresentativeDetails(ModifyLegalRepresentativeBase):
    id: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ProcurementDetails(ModifyProcurementBase):
    id: int = 0
    indebtedness_n1: Optional[float] = None
    indebtedness_n2: Optional[float] = None
    indebtedness_n3: Optional[float] = None
    sales_proportionate_profit_n1: Optional[float] = None
    sales_proportionate_profit_n2: Optional[float] = None
    sales_proportionate_profit_n3: Optional[float] = None
    liquidity_ratio_n1: Optional[float] = None
    liquidity_ratio_n2: Optional[float] = None
    liquidity_ratio_n3: Optional[float] = None
    submitted_by_id: Optional[int] = None
    submission_date_time: Optional[datetime.datetime] = None
    is_submitted: bool = False
    legal_representatives: Optional[List[LegalRepresentativeDetails]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BrowseProcurementResponse(ResponseBase):
    procurement: Optional[ProcurementDetails] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BrowseLastProcurement(IGet):
    user_id: int = 0

Python BrowseLastProcurement DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /user/{userid}/lastprocurement HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Procurement: 
	{
		Id: 0,
		SubmittedById: 0,
		SubmissionDateTime: 0001-01-01,
		IsSubmitted: False,
		LegalRepresentatives: 
		[
			{
				Id: 0,
				ProcurementId: 0,
				Position: String,
				Name: String,
				Address: String,
				BirthDate: 0001-01-01,
				Email: String,
				ConcurrencyStamp: String
			}
		],
		IsGroupMember: False,
		GroupName: String,
		GroupShortName: String,
		CountryId: 0,
		VatNumber: String,
		RegistrationNumber: String,
		Duns: String,
		Address: String,
		MainActivity: String,
		EstablishedDate: 0001-01-01,
		Workforce: 0,
		Website: String,
		SalesManagerName: String,
		SalesManagerPhone: String,
		SalesManagerEmail: String,
		CsrManagerName: String,
		CsrManagerPhone: String,
		CsrManagerEmail: String,
		AccountCountryId: 0,
		BankName: String,
		AccountNumber: String,
		Iban: String,
		Swift: String,
		CurrencyId: 0,
		WorkForceN1: 0,
		WorkForceN2: 0,
		WorkForceN3: 0,
		SubscribedCapital: 0,
		SubscribedCapitalCurrencyId: 0,
		RevenueN1: 0,
		RevenueN2: 0,
		RevenueN3: 0,
		NetProfitN1: 0,
		NetProfitN2: 0,
		NetProfitN3: 0,
		EquityN1: 0,
		EquityN2: 0,
		EquityN3: 0,
		LiabilityN1: 0,
		LiabilityN2: 0,
		LiabilityN3: 0,
		OperatingResultN1: 0,
		OperatingResultN2: 0,
		OperatingResultN3: 0,
		DBFailureScore: String,
		IsAuditedAccount: False,
		IsAuditedAccountComment: String,
		IsLiquidationProceedings: False,
		IsLiquidationProceedingsComment: String,
		VeoliaAnnualRevenuesProportion: 0,
		IsAntiCorruptionDocument: False,
		IsCorruptionRiskMap: False,
		IsThirdPartiesEvaluatingSystem: False,
		IsInternalRules: False,
		IsHumanRights: False,
		IsAntiCorruptionTraining: False,
		IsAntiCorruptionReportSystem: False,
		IsIso9001: False,
		IsEcoVadisScorecard: False,
		EcoVadisTotalScore: 0,
		IsReduceEmployeeSafetyRisk: False,
		IsPromoteSocialIntegration: False,
		IsNondiscriminationPolicy: False,
		IsIso14001: False,
		IsIdentifiedMajorEnvironmentalImpacts: False,
		IsUseWaterResources: False,
		IsConsumptionOfRawMaterials: False,
		IsEnergyConsumption: False,
		IsGreenhouseGasEmissions: False,
		IsAtmosphericEmissions: False,
		IsAqueousPollution: False,
		IsWasteGeneration: False,
		IsNaturalAreasPollution: False,
		IsPrivacyStatement: False,
		IsVeoliaSupplierCharter: False,
		IsVeoliaCoreStandards: False,
		ConcurrencyStamp: String
	},
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}