Elly Makuba

There are three object involved when updating a requisition, two requition domain objects and one requisition dto. The newRequisitionLineItem method in RequisitionLineItem class is building a new d...

There are three object involved when updating a requisition, two requition domain objects and one requisition dto. The newRequisitionLineItem method in RequisitionLineItem class is building a new domain object then populating it with values from the DTO. The design uses the newly created object to update an existing requisition retrieved from the db. There is one challenge though, creating a new requisition defaults the skipped value to false in newRequisitionLineItem method and if I don't check the status here before passing the dto value then it means an existing requisition can always be unskipped even after approval.

where do you suggest I put this?

where do you suggest I put this?

I have added this ; (!requisition.isApproved()) { if (requisitionLineItem.getSkipped() != null){ this.skipped = requisitionLineItem.getSkipped(); } else{ this.skipped = false; } } in Requisition...

I have added this ;
(!requisition.isApproved()) {
if (requisitionLineItem.getSkipped() != null)

Unknown macro: { this.skipped = requisitionLineItem.getSkipped(); }

else

Unknown macro: { this.skipped = false; }

}

in RequisitionLineItem class to only allow unskipping before approval status, that works for authorized status.

I have corrected this, the shouldNotSetSkippedIfRequisitionStatusIsApproved mehtod is now working as expected.

I have corrected this, the shouldNotSetSkippedIfRequisitionStatusIsApproved mehtod is now working as expected.

Only when AUTHORIZED, once approved there can never be changes.

Only when AUTHORIZED, once approved there can never be changes.

Yes I made it configurable through an environment variable then added an end-point in RequisitionController class to fetch that value. The client will request the environment variable from the serv...

Yes I made it configurable through an environment variable then added an end-point in RequisitionController class to fetch that value. The client will request the environment variable from the server, when set to false the approver will not be able to unskip line items.

API changes to enable approver unskip requisition line items
API changes to enable approver unskip requisition line items
UI changes to enable approver unskip requisition line items
UI changes to enable approver unskip requisition line items
Noted.

Noted.

added file_columns table configs for tz-upgrade
added file_columns table configs for tz-upgrade
I have removed the two db migration scripts affecting file_columns table

I have removed the two db migration scripts affecting file_columns table

Noted.

Noted.

I have not modified existing db script's content directly, but i have added new scripts that update the existing ones. In other words if you don't run my latest scripts then there will be no change...

I have not modified existing db script's content directly, but i have added new scripts that update the existing ones. In other words if you don't run my latest scripts then there will be no change to your db schema. I don't expect my changes to break an existing implementation, though if you include them in an upgrade you will have more columns in the generated csv and those columns will be ordered differently from the previous version.

I have removed price property from orderlineitem and included it in extradata property.

I have removed price property from orderlineitem and included it in extradata property.

I have added unit tests for the additional logic

I have added unit tests for the additional logic

There is this table file_columns containing configuration columns to be exported to csv.The current version of openlmis-fulfillment has a historic bootstrap migration script inserting columns in th...

There is this table file_columns containing configuration columns to be exported to csv.The current version of openlmis-fulfillment has a historic bootstrap migration script inserting columns in this table, but not in the sequence expected by elmis. So in one script i'm updating the position (order) these columns should appear and in another script i'm inserting additional columns to file_columns table.

added extradata property to order class
added extradata property to order class
Made ftp file transfer and email sending configurable on requisition to order
Made ftp file transfer and email sending configurable on requisition to order
I was renaming column titles to match elmis and added a new column called 'price'

I was renaming column titles to match elmis and added a new column called 'price'

made sending fpt and email configurable on requisition to order conversion
made sending fpt and email configurable on requisition to order conversion
I have added a validator for enabled property

I have added a validator for enabled property

This review is for ticket "https://openlmis.atlassian.net/browse/TZUP-174"

This review is for ticket "https://openlmis.atlassian.net/browse/TZUP-174"