Idi na tekst

Kvote

Pregled kvota

Pregled podataka iz šifarnika kvota za tekuću budžetsku godinu. Pristupna tačka omogućava pregled upotrebom paginacije koju je neophodno definisati preko query1 parametara.

URL : /api/quotas

Metod : GET

Zahteva Autorizaciju : DA

Query parametri
  • page - broj strane, 1 <= vrednost < totalRows/per_page
  • per_page - broj elemenata po strani, vrednost <= 50
  • show_direct - prikaz kvota tekućeg DBK
  • show_indirect - prikaz kvota IBK tekućeg DBK
Primer query-a

https://spiri.mfin.trezor.rs/api/quotas?page=1&per_page=5

Uspešan zahtev

Code : 200 OK

Sadržaj paketa
{
    "status": {
        "message": "Success",
        "code": "SUCCESS"
    },
    "payload": [
        {
            "id": 4277,
            "appropriationId": 91,
            "parentId": null,
            "budgetYear": 2022,
            "treasury": "601",
            "period": 5,
            "budgetUserId": "10100",
            "programCode": "2101",
            "projectCode": "0004",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "411000",
            "functionCode": "110",
            "initialAmount": 7875000,
            "currentAmount": 7875000,
            "reservedAmount": 0,
            "executedAmount": 0,
            "expenditureCorrectionAmount": 0,
            "availableAmount": 7875000,
            "distributedAmount": 0,
            "validFrom": "2022-05-01T00:00:00",
            "validTo": "2022-05-31T23:59:59.999999",
            "lastChangeDate": "2022-04-05T16:55:27.407955",
            "lastChangeUserId": 17,
            "budgetUserDirectIndirectType": null,
            "programId": null,
            "projectStructureId": null,
            "initialAmountSum": 406194966813,
            "currentAmountSum": 405894945991.00,
            "reservedAmountSum": 300092.47,
            "executedAmountSum": 20235.55,
            "expenditureCorrectionAmountSum": 0,
            "availableAmountSum": 406211066636.98,
            "distributedAmountSum": 316440974,
            "lastChangeUserName": null,
            "directBudgetUserId": null,
            "totalRows": 12411
        },
        {
            "id": 4276,
            "appropriationId": 441,
            "parentId": null,
            "budgetYear": 2022,
            "treasury": "601",
            "period": 5,
            "budgetUserId": "10100",
            "programCode": "2101",
            "projectCode": "0004",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "412000",
            "functionCode": "110",
            "initialAmount": 1311333,
            "currentAmount": 1311333,
            "reservedAmount": 0,
            "executedAmount": 0,
            "expenditureCorrectionAmount": 0,
            "availableAmount": 1311333,
            "distributedAmount": 0,
            "validFrom": "2022-05-01T00:00:00",
            "validTo": "2022-05-31T23:59:59.999999",
            "lastChangeDate": "2022-04-05T16:55:27.407955",
            "lastChangeUserId": 17,
            "budgetUserDirectIndirectType": null,
            "programId": null,
            "projectStructureId": null,
            "initialAmountSum": 406194966813,
            "currentAmountSum": 405894945991.00,
            "reservedAmountSum": 300092.47,
            "executedAmountSum": 20235.55,
            "expenditureCorrectionAmountSum": 0,
            "availableAmountSum": 406211066636.98,
            "distributedAmountSum": 316440974,
            "lastChangeUserName": null,
            "directBudgetUserId": null,
            "totalRows": 12411
        },
        {
            "id": 44,
            "appropriationId": 770,
            "parentId": null,
            "budgetYear": 2022,
            "treasury": "601",
            "period": 4,
            "budgetUserId": "10100",
            "programCode": "2101",
            "projectCode": "0004",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "413000",
            "functionCode": "110",
            "initialAmount": 10000,
            "currentAmount": 10000,
            "reservedAmount": 0,
            "executedAmount": 0,
            "expenditureCorrectionAmount": 0,
            "availableAmount": 10000,
            "distributedAmount": 0,
            "validFrom": "2022-04-01T00:00:00",
            "validTo": "2022-04-30T23:59:59.999999",
            "lastChangeDate": "2022-04-01T13:14:24.774179",
            "lastChangeUserId": 18,
            "budgetUserDirectIndirectType": null,
            "programId": null,
            "projectStructureId": null,
            "initialAmountSum": 406194966813,
            "currentAmountSum": 405894945991.00,
            "reservedAmountSum": 300092.47,
            "executedAmountSum": 20235.55,
            "expenditureCorrectionAmountSum": 0,
            "availableAmountSum": 406211066636.98,
            "distributedAmountSum": 316440974,
            "lastChangeUserName": null,
            "directBudgetUserId": null,
            "totalRows": 12411
        },
        {
            "id": 4273,
            "appropriationId": 770,
            "parentId": null,
            "budgetYear": 2022,
            "treasury": "601",
            "period": 5,
            "budgetUserId": "10100",
            "programCode": "2101",
            "projectCode": "0004",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "413000",
            "functionCode": "110",
            "initialAmount": 10000,
            "currentAmount": 10000,
            "reservedAmount": 0,
            "executedAmount": 0,
            "expenditureCorrectionAmount": 0,
            "availableAmount": 10000,
            "distributedAmount": 0,
            "validFrom": "2022-05-01T00:00:00",
            "validTo": "2022-05-31T23:59:59.999999",
            "lastChangeDate": "2022-04-05T16:55:27.407955",
            "lastChangeUserId": 17,
            "budgetUserDirectIndirectType": null,
            "programId": null,
            "projectStructureId": null,
            "initialAmountSum": 406194966813,
            "currentAmountSum": 405894945991.00,
            "reservedAmountSum": 300092.47,
            "executedAmountSum": 20235.55,
            "expenditureCorrectionAmountSum": 0,
            "availableAmountSum": 406211066636.98,
            "distributedAmountSum": 316440974,
            "lastChangeUserName": null,
            "directBudgetUserId": null,
            "totalRows": 12411
        },
        {
            "id": 241,
            "appropriationId": 1010,
            "parentId": null,
            "budgetYear": 2022,
            "treasury": "601",
            "period": 4,
            "budgetUserId": "10100",
            "programCode": "2101",
            "projectCode": "0004",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "414000",
            "functionCode": "110",
            "initialAmount": 97500,
            "currentAmount": 97500,
            "reservedAmount": 0,
            "executedAmount": 0,
            "expenditureCorrectionAmount": 0,
            "availableAmount": 97500,
            "distributedAmount": 0,
            "validFrom": "2022-04-01T00:00:00",
            "validTo": "2022-04-30T23:59:59.999999",
            "lastChangeDate": "2022-04-01T13:14:24.774179",
            "lastChangeUserId": 18,
            "budgetUserDirectIndirectType": null,
            "programId": null,
            "projectStructureId": null,
            "initialAmountSum": 406194966813,
            "currentAmountSum": 405894945991.00,
            "reservedAmountSum": 300092.47,
            "executedAmountSum": 20235.55,
            "expenditureCorrectionAmountSum": 0,
            "availableAmountSum": 406211066636.98,
            "distributedAmountSum": 316440974,
            "lastChangeUserName": null,
            "directBudgetUserId": null,
            "totalRows": 12411
        }
    ],
    "additionalInformation": null
}

Pogrešan zahtev

Uslov : Ukoliko ne postoji ili je neispravan access token u Authorized zaglavlju.

Code : 401 UNAUTHORIZED


Uslov : Ukoliko integrativni proces ne poseduje pravo za pregled resursa.

Code : 403 FORBIDDEN

Napomene

  • Svaki element povratnog niza koji predstavlja redove šifarnika poseduje polje totalRows, koje predstavlja ukupan broj redova koji zadovoljavaju zadati query1 kriterijum.

Učitavanje zahteva za kvote

Omogućava učitavanje inicijalnog zahteva za kvote, kao i učitavanje svih zahteva za promenu kvote. Nakon učitavanja podataka koji zadovoljavaju sintaksna pravila, povratna vrednost zahteva dobija status:

  • 1 - Created - u slučaju uspešnog učitavanja,
  • 2 - Invalid - ukoliko je došlo do odbijanja zahteva usled neispunjavanja nekog poslovnog pravila

URL : /api/quotas/requests

Metod : POST

Zahteva Autorizaciju : DA

Zahtev
{
    "budgetYear": "[budžetska godina]",
    "budgetUserId": "[JBKJS]",
    "reasonCode": "[šifra zahteva*]",
    "treasury": "[šifra trezora]",
    "items": [
        {
            "budgetUserId": "[JBKJS korisnika]",
            "programCode": "[šifra programa]",
            "projectCode": "[šifra projekta]",
            "functionCode": "[šifra funkcije]",
            "sourceOfFundingCode": "[šifra izvora finansiranja]",
            "economicClassificationCode": "[šifra ekonomske klasifikacije]",
            "increaseAmount": "[iznos uvećanja]", 
            "decreaseAmount": "[iznos umanjenja]",
            "period": "[period kvote]"
        }
    ]
}
Parametri zahteva
Parametar Tip Validacija
budgetYear int Godina
budgetUserId string(5) JBKJS
reasonCode string(4) kv01 - Inicijalni zahtev
kv02 - Povećanje ili smanjenje kvote
kv03 - Zahtev za preusmeravanje
kv04 - Raspodela kvota indirektnim korisnicima
kv05 - Zahtev za grupnu promenu kvota
treasury string(3) Validna šifra trezora - 601 za republiku
programCode string(4) Validna šifra programa
projectCode string(4) Validna šifra projekta
functionCode string(3) Validna šifra funkcije
sourceOfFundingCode string(2) Validna šifra izvora finansiranja
economicClassificationCode string(6) Validna šifra ekonomske klasifikacije
increaseAmount decimal Iznos uvećanja kvote
decreaseAmount decimal Iznos umanjenja kvote
period int Period kvote - 1 do 12
Primer zahteva
{
    "budgetYear": 2022,
    "budgetUserId": "00000",
    "reasonCode": "kv01",
    "treasury": "601",
    "items": [
        {
            "budgetUserId": "30211",
            "programCode": "1603",
            "projectCode": "0011",
            "functionCode": "330",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "413000",
            "increaseAmount": 45000, 
            "decreaseAmount": 0,
            "period": 8
        },
        {
            "budgetUserId": "30211",
            "programCode": "1603",
            "projectCode": "0011",
            "functionCode": "330",
            "sourceOfFundingCode": "01",
            "economicClassificationCode": "414000",
            "increaseAmount": 45000, 
            "decreaseAmount": 0,
            "period": 8
        }            
    ]
}

Uspešan zahtev

Code : 200 OK

Sadržaj paketa
{
    "status": {
        "message": "Success",
        "code": "SUCCESS"
    },
    "payload": {
        "id": 1,
        "budgetYear": 2022,
        "reasonCode": "kv01",
        "treasury": "601",
        "budgetUserId": "00000",
        "filename": null,
        "description": null,
        "changeReason": null,
        "denialReason": null,
        "effectiveDate": null,
        "entryDate": null,
        "lastChangeDate": "0001-01-01T00:00:00",
        "lastChangeUserId": 0,
        "status": 1,
        "totalIncreaseAmount": 15390000.0,
        "totalDecreaseAmount": 0,
        "hasSalaries": false,
        "validFrom": null,
        "validTo": null,
        "items": [
            {
                "model": {
                    "id": null,
                    "appropriationId": 3060,
                    "period": 8,
                    "budgetUserId": "30211",
                    "programCode": "1603",
                    "projectCode": "0011",
                    "sourceOfFundingCode": "01",
                    "economicClassificationCode": "413000",
                    "functionCode": "330",
                    "increaseAmount": 45000.0,
                    "decreaseAmount": 0,
                    "lastChangeDate": null,
                    "lastChangeUserId": null,
                    "status": 1,
                    "programId": 457
                },
                "errors": null,
                "errorData": null
            },
            {
                "model": {
                    "id": null,
                    "appropriationId": 3060,
                    "period": 8,
                    "budgetUserId": "30211",
                    "programCode": "1603",
                    "projectCode": "0011",
                    "sourceOfFundingCode": "01",
                    "economicClassificationCode": "414000",
                    "functionCode": "330",
                    "increaseAmount": 45000.0,
                    "decreaseAmount": 0,
                    "lastChangeDate": null,
                    "lastChangeUserId": null,
                    "status": 1,
                },
                "errors": null,
                "errorData": null
            }
        ],
    },
    "additionalInformation": null
}    

Pogrešan zahtev

Uslov : Ukoliko prilikom učitavanja nije ispunjeno neko poslovno pravilo na nivou stavki servis će uspešno prihvatiti svaki zahtev, pri čemu će adekvatno biti postavljen nevalidan status, odnosno poruka o grešci na pojedinačnim stavkama.

Code : 200 OK

Sadržaj paketa
{
    "status": {
        "message": "Success",
        "code": "SUCCESS"
    },
    "payload": {
        "id": 1,
        "budgetYear": 2022,
        "reasonCode": "kv01",
        "treasury": "601",
        "budgetUserId": "00000",
        "status": 2,
        "totalIncreaseAmount": 15390000.0,
        "totalDecreaseAmount": 0,
        "items": [
            {
                "model": {
                    "id": null,
                    "appropriationId": 3060,
                    "period": 8,
                    "budgetUserId": "30211",
                    "programCode": "1603",
                    "projectCode": "0011",
                    "sourceOfFundingCode": "01",
                    "economicClassificationCode": "413000",
                    "functionCode": "330",
                    "increaseAmount": 45000.0,
                    "decreaseAmount": 0,
                    "lastChangeDate": null,
                    "lastChangeUserId": null,
                    "status": 2
                },
                "errors": [
                    {
                        "code": "MissingAppropriation",
                        "message": "No valid appropriations found for quota load"
                    }],
                "errorData": null
            },
            {
                "model": {
                    "id": null,
                    "appropriationId": 3060,
                    "period": 8,
                    "budgetUserId": "30211",
                    "programCode": "1603",
                    "projectCode": "0011",
                    "sourceOfFundingCode": "01",
                    "economicClassificationCode": "414000",
                    "functionCode": "330",
                    "increaseAmount": 45000.0,
                    "decreaseAmount": 0,
                    "lastChangeDate": null,
                    "lastChangeUserId": null,
                    "status": 2
                },
                "errors": [
                    {
                        "code": "MissingAppropriation",
                        "message": "No valid appropriations found for quota load"
                    }],
                "errorData": null
            }
        ],
    },
    "additionalInformation": null
}    

Uslov : Ukoliko prilikom učitavanja nije ispunjeno neko poslovno pravilo na nivou zahteva.

Code : 400 BAD REQUEST

Sadržaj paketa
{
    "payload": null,
    "status": {
        "message": "Reason code not valid for quota request",
        "code": "InvalidReasonCode"
    },
    "additionalInformation": null
}

Uslov : Ukoliko ne postoji ili je neispravan access token u Authorized zaglavlju.

Code : 401 UNAUTHORIZED


Uslov : Ukoliko integrativni proces ne poseduje pravo za pregled resursa.

Code : 403 FORBIDDEN


Uslov : Ukoliko poslati podaci ne zadovoljavaju sintaksnu validaciju ili json payload nije ispravno formiran.

Code : 422 UNPROCESSABLE ENTITY