Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Step

Action

Expected system response

Comment

1

                                                                              

Create geographicLevels

In URL:

http://localhost:8080/api/geographicLevels/?access_token=f77791e5-5cb7-4787-92f9-b55b6d971791

Method: Post:

Example Body:

{

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}


                                                                                       

 Status 201 created         

id: a8db3899-896f-4e40-b912-f38a6af5b3ce

Image Added

                                                 

2

Create geographicZone

In URL:

http://localhost:8080/api/geographicZones/?access_token=f77791e5-5cb7-4787-92f9-b55b6d971791

Method: Post:

Example Body:

{

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}


}

Status 201 Created ,

id: 3141d995-1f69-4400-be30-64ed564a0253Image Added



3

Create facilityType

In URL:

http://localhost:8080/api/facilityTypes/?access_token=b30d1dcf-9d04-4b10-a3a0-5f29b96b8a22

Method: Post

Example Body:

{

"code": "typecode",

"name": "typename"

}

Status 201 Created ,

id: d734497f-7e46-4915-9f05-83c0432fc158


Image Added


4

Create facility

In URL:

http://localhost:8080/api/facilities/?access_token=b30d1dcf-9d04-4b10-a3a0-5f29b96b8a22

Method Post

Example body:

{

"code": "facilitycode",

"name": "facilityname",

"geographicZone": {

"id": "3141d995-1f69-4400-be30-64ed564a0253",

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}

},

"type": {

"id": "d734497f-7e46-4915-9f05-83c0432fc158",

"code": "typecode",

"name": "typename"

},

"active": true,

"enabled": true

}




Status 201 Created,

id: fb9ce60f-6557-4651-b9b9-efefccf76251


Image Added


5

Create program:

In URL: 

http://localhost:8080/api/programs/?access_token=dd27b91f-91ae-4d9e-9f61-caf3abe870f7

Method: Post

Example Body:

{

"code": "programcode",

"name": "programname",

"periodsSkippable": true

}

Status 201 Created,

id: bebd5da3-b905-45b7-a474-85c3ba655f9d

Image Added


6

Create schedule

In URL:

http://localhost:8080/api/processingSchedules/?access_token=f77791e5-5cb7-4787-92f9-b55b6d971791

Method: Post

Example Body:

{

"code": "schedulecode",

"name": "schedulename"

}

Status 201 Created,

id: 79650728-fb5e-4413-ba1e-c58e042415f9

Image Added


7

Create periods

In URL:

http://localhost:8080/api/periodsprocessingPeriods/?access_token=5a7d37fa075fd2f4-c57c0e58-4c8e4118-8c3fb673-6d40021b01aa3c29359c1a28

Method: Post

Example Body:

{

"processingSchedule": {

"id":"cfc72ad3865f24e7-856f9496-44794dc3-b2f686d4-a7c031cc5b39f00554da539b",

"code": "codecode12","description": nullschedulecode","modifiedDate

": null,"name": "scheduleNameschedulename"

},

"name": "name90periodname",

"description": "descriptiontestabc",

"startDate": "2016-0709-1305",

"endDate": "2016-0709-1415"

}

Status 201 Created,

"id":

"e7db9cad

f9378770-

d62b

e1f9-

4550

4dbc-

a5a8-af6e4b06f4b7"

85b2-482ce55cb776


Image Added


8

Create RequisitionLine

URL:

http://localhost:8080/api/requisitionLines/?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

Method: POST

Body:

{

"id": "fc93a929-d62e-4fff-9f8f-4ad9df0a4e60",

"product": {

"id": "1752b457-0a4b-4de0-bf94-5a6a8002427e",

"code": "productCode",

"primaryName": "productName",

"dispensingUnit": "1",

"dosesPerDispensingUnit": 1,

"packSize": 1,

"packRoundingThreshold": 1,

"roundToZero": true,

"active": true,

"fullSupply": true,

"tracer": true,

"productCategory": {

"id": "3c840e6c-a2e6-482f-b794-90379fcbfe00",

"code": "categorycode",

"name": "categoryname",

"displayOrder": 32

}

},

"requisition": null,

"stockInHand": 2,

"beginningBalance": 2,

"totalReceivedQuantity": 2,

"totalLossesAndAdjustments": 2,

"stockOnHand": 2,

"requestedQuantity": 2,

"totalConsumedQuantity": 2,

"requestedQuantityExplanation": "abc",

"remarks": "sometest",

"approvedQuantity": 2

}

id: 1275b316-68c6-48c8-a343-b82b854eaa25

Image Added

The attribute Remarks are not filled.
9

Create User

URL: http://localhost:8080/api/users?access_token=f77791e5-5cb7-4787-92f9-b55b6d971791

Method: POST

Body:

{

"username": "UserName12",

"email": "abc@gmail.com",

"firstName": "Name2F",

"lastName": "Last2N",

"verified": "true",

"active": "true",

"restrictLogin": "false",

"timezone":"CTM"

}

id: d8c1a779-53ca-435e-a86c-a7a786fe50b6

Image Added


10

Create supervisoryNode

URL: http://localhost:8080/api/supervisoryNodes/?access_token=a2bb6f21-56aa-43e2-a9c5-940cb54d887a

Method: POST

Example body:


{

"code": "supervisoryNodeTest",

"facility": {

"id": "fb9ce60f-6557-4651-b9b9-efefccf76251",

"code": "facilitycode",

"name": "facilityname",

"geographicZone": {

"id": "3141d995-1f69-4400-be30-64ed564a0253",

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}

},

"type": {

"id": "d734497f-7e46-4915-9f05-83c0432fc158",

"code": "typecode",

"name": "typename"

},

"active": true,

"enabled": true

}

}

id: 5ec94f96-ac1b-4d1d-bd89-505f4f71c0e8

Image Added


11


Create requisition:

In URL: http://localhost:8080/api/requisitions/?access_token=5a7d37fa-c57c-4c8e-8c3f-6d40021b01aa

Method: Post

Example Body

{

"id": "abd802e5-c181-453e-9b9a-087eedfb68b9",

"requisitionLines": [

{

"id": "4da79bc3-4188-4770-bace-991761dfb869",

"product": {

"id": "1752b457-0a4b-4de0-bf94-5a6a8002427e",

"code": "productCode",

"primaryName": "productName",

"dispensingUnit": 1,

"dosesPerDispensingUnit": 1,

"packSize": 1,

"packRoundingThreshold": 1,

"roundToZero": true,

"active": true,

"fullSupply": true,

"tracer": true,

"productCategory": {

"id": "3c840e6c-a2e6-482f-b794-90379fcbfe00",

"code": "categorycode",

"name": "categoryname",

"displayOrder": 32


}



},

"stockInHand": 2,

"beginningBalance": 2,

"totalReceivedQuantity": 2,

"totalLossesAndAdjustments": 2,

"stockOnHand": 2,

"requestedQuantity": 2,

"totalConsumedQuantity": 2,

"requestedQuantityExplanation": "abc",

"remarks": "sometest",

"approvedQuantity": 2

}

],

"facility": {

"id": "fb9ce60f-6557-4651-b9b9-efefccf76251",

"code": "facilitycode",

"name": "facilityname",

"geographicZone": {

"id": "3141d995-1f69-4400-be30-64ed564a0253",

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}

},

"type": {

"id": "d734497f-7e46-4915-9f05-83c0432fc158",

"code": "typecode",

"name": "typename"

},

"active": true,

"enabled": true

},

"program": {

"id": "bebd5da3-b905-45b7-a474-85c3ba655f9d",

"code": "programcode",

"name": "programname",

"periodsSkippable": true

},

"processingPeriod": {

"id": "f9378770-e1f9-4dbc-85b2-482ce55cb776",

"processingSchedule": {

"id": "79650728-fb5e-4413-ba1e-c58e042415f9",

"code": "schedulecode",

"name": "schedulename"

},

"name": "periodname",

"description": "abc",

"startDate": "2016-09-15",

"endDate": "2016-09-15"


},

"status": "INITIATED",

"supervisoryNode": {

"id": " 5ec94f96-ac1b-4d1d-bd89-505f4f71c0e8",

"code": "supervisoryNodeTest",

"facility": {

"id": "fb9ce60f-6557-4651-b9b9-efefccf76251",

"code": "facilitycode",

"name": "facilityname",

"geographicZone": {

"id": "3141d995-1f69-4400-be30-64ed564a0253",

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}

},

"type": {

"id": "d734497f-7e46-4915-9f05-83c0432fc158",

"code": "typecode",

"name": "typename"

}

}

}

}


                        

Status 201 Created,

id: f13a2c6f-8791-4329-b468-11634e0cedf1

Image Added

Created requisition contain the entites created above.

12

Submit the previously created requisition.

URL: http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1/submit?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

Method: PUT

Body: the body of previously created requisition


Image Added


13

Verify if the requisition is submitted.

Method: GET

URL: http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

OR

URL: http://localhost:8080/api/requisitions/submitted?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

Method: GET

Image Added


14

Create special User with previously created supervisoryNode.

Method: POST

Example body:

{

"id": "35316636-6264-6331-2d34-3933322d3462",

"username": "trusted-client",

"password": "secret",

"email": "testowysoldevelo@gmail.com",

"firstName": "Name2F",

"lastName": "Last2N",

"verified": "true",

"active": "true",

"restrictLogin": "false",

"timezone":"CTM",

"supervisedNode": {

"id": "5ec94f96-ac1b-4d1d-bd89-505f4f71c0e8",

"code": "supervisoryNodeTest",

"facility": {

"id": "fb9ce60f-6557-4651-b9b9-efefccf76251",

"code": "facilitycode",

"name": "facilityname",

"geographicZone": {

"id": "3141d995-1f69-4400-be30-64ed564a0253",

"code": "geocode",

"name": "geoname",

"level": {

"id": "a8db3899-896f-4e40-b912-f38a6af5b3ce",

"code": "levelcode",

"name": "levelname",

"levelNumber": "32"

}

},

"type": {

"id": "d734497f-7e46-4915-9f05-83c0432fc158",

"code": "typecode",

"name": "typename"

},

"active": true,

"enabled": true

}

}


}


"id": "35316636-6264-6331-2d34-3933322d3462"

Image Added

15

Authorize the first requisition.

URL: http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1/auhtorize?access_token=3492a106-c88a-41a6-840f-f794256802bd

bodyBody: the body of previously created requisition

Method: PUT

Image Added


16

Verify if the previously authorized requisition is waiting for the approval.

URL:  http://localhost:8080/api/requisitions/requisitions-for-approval?access_token=3492a106-c88a-41a6-840f-f794256802bd

Method: GET

Image Added

Only the requisition with AUTHORIZED status, supervisoryNode associated with special User will be seen.

The requisitions created in points 17 and 18 will not be visible on the approval lists. The User with proper role is not associated with supervisoryNode.

17Create second requisition with different supervisoryNode.

Image Added

The whole process of creation the second requisition is the same like for the first requisition. (follow the steps from 1 to 15 but do not repeat the step from point 14.)
18Create third requisition without supervisoryNode.
The whole process of creation the second requisition is the same like for the first requisition. (follow the steps from 1 to 15 but do not repeat the step described in points 10 and 14.)
19

Approve the first requisition.

URL: http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1/approve?access_token=3492a106-c88a-41a6-840f-f794256802bd

Method: PUT

Body: the body of previously created requisition

Image Added


20

Add comments to the first requisition.

URL: http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1/comments?access_token=3492a106-c88a-41a6-840f-f794256802bd

Example body:

{

"body": "some information"

}

Status 201 Created,

id: 7cba6c5d-ffcf-404a-a2b5-61e03f9d0998

Image Added

Comments are added to the first requisition when it has APPROVED status.
21

Verify if the comments are inserted (to the first requisition).

URL:

http://localhost:8080/api/requisitions/f13a2c6f-8791-4329-b468-11634e0cedf1/comments?access_token=3492a106-c88a-41a6-840f-f794256802bd

Method: GET

Image Added


22

Change the Approved Quantity attribute.

URL: http://localhost:8080/api/requisitionLines?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

Method: POST

{

"id": "fc93a929-d62e-4fff-9f8f-4ad9df0a4e60",

"product": {

"id": "1752b457-0a4b-4de0-bf94-5a6a8002427e",

"code": "productCode",

"primaryName": "productName",

"dispensingUnit": "1",

"dosesPerDispensingUnit": 1,

"packSize": 1,

"packRoundingThreshold": 1,

"roundToZero": true,

"active": true,

"fullSupply": true,

"tracer": true,

"productCategory": {

"id": "3c840e6c-a2e6-482f-b794-90379fcbfe00",

"code": "categorycode",

"name": "categoryname",

"displayOrder": 32

}

},

"requisition": null,

"stockInHand": 2,

"beginningBalance": 2,

"totalReceivedQuantity": 2,

"totalLossesAndAdjustments": 2,

"stockOnHand": 2,

"requestedQuantity": 2,

"totalConsumedQuantity": 2,

"requestedQuantityExplanation": "abc",

"remarks": "sometest",

"approvedQuantity": "125"

}

Status 200 OK


Image Added

Earlier, the approved quantity attribute was equals to 2.

23

Insert text into Remarks attribute.

URL:

http://localhost:8080/api/requisitionLines?access_token=a5c523c7-914e-4d12-8a55-78db5f2f57b6

Method; POST

Body:

{

"id": "fc93a929-d62e-4fff-9f8f-4ad9df0a4e60",

"product": {

"id": "1752b457-0a4b-4de0-bf94-5a6a8002427e",

"code": "productCode",

"primaryName": "productName",

"dispensingUnit": "1",

"dosesPerDispensingUnit": 1,

"packSize": 1,

"packRoundingThreshold": 1,

"roundToZero": true,

"active": true,

"fullSupply": true,

"tracer": true,

"productCategory": {

"id": "3c840e6c-a2e6-482f-b794-90379fcbfe00",

"code": "categorycode",

"name": "categoryname",

"displayOrder": 32

}

},

"requisition": null,

"stockInHand": 2,

"beginningBalance": 2,

"totalReceivedQuantity": 2,

"totalLossesAndAdjustments": 2,

"stockOnHand": 2,

"requestedQuantity": 2,

"totalConsumedQuantity": 2,

"requestedQuantityExplanation": "abc",

"remarks": "some test information are inserted",

"approvedQuantity": "125"

}

Status 200 OK

Image Added

I cannot insert into Remarks attribute the text larger than 250 charts. When i try to do that, the 400 bad request status will be returned.

Image Added