Domain method for adding an internal comment

This commit is contained in:
richard-dds 2018-09-11 15:34:24 -04:00
parent 100048afdf
commit 0ddbeaf176
2 changed files with 20 additions and 0 deletions

View File

@ -13,6 +13,7 @@ from atst.models.request import Request
from atst.models.request_revision import RequestRevision from atst.models.request_revision import RequestRevision
from atst.models.request_status_event import RequestStatusEvent, RequestStatus from atst.models.request_status_event import RequestStatusEvent, RequestStatus
from atst.models.request_review import RequestReview from atst.models.request_review import RequestReview
from atst.models.request_internal_comment import RequestInternalComment
from atst.utils import deep_merge from atst.utils import deep_merge
from .exceptions import NotFoundError, UnauthorizedError from .exceptions import NotFoundError, UnauthorizedError
@ -311,3 +312,13 @@ WHERE requests_with_status.status = :status
Requests.set_status(request, RequestStatus.CHANGES_REQUESTED_TO_FINVER) Requests.set_status(request, RequestStatus.CHANGES_REQUESTED_TO_FINVER)
return Requests._add_review(user, request, review_data) return Requests._add_review(user, request, review_data)
@classmethod
def update_internal_comments(cls, user, request, comment_text):
Authorization.check_can_approve_request(user)
request.internal_comments = RequestInternalComment(text=comment_text, user=user)
db.session.add(request)
db.session.commit()
return request

View File

@ -221,3 +221,12 @@ def test_request_changes_to_financial_verification_info():
assert request.status == RequestStatus.CHANGES_REQUESTED_TO_FINVER assert request.status == RequestStatus.CHANGES_REQUESTED_TO_FINVER
current_review = request.latest_status.review current_review = request.latest_status.review
assert current_review.fname_mao == review_data["fname_mao"] assert current_review.fname_mao == review_data["fname_mao"]
def test_update_internal_comments():
request = RequestFactory.create()
ccpo = UserFactory.from_atat_role("ccpo")
request = Requests.update_internal_comments(ccpo, request, "this is my comment")
assert request.internal_comments.text == "this is my comment"