1 /*
2 * The Kuali Financial System, a comprehensive financial management system for higher education.
3 *
4 * Copyright 2005-2014 The Kuali Foundation
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU Affero General Public License as
8 * published by the Free Software Foundation, either version 3 of the
9 * License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU Affero General Public License for more details.
15 *
16 * You should have received a copy of the GNU Affero General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 package org.kuali.kfs.module.ar.document.authorization;
20
21 import org.kuali.kfs.module.ar.document.PaymentApplicationDocument;
22 import org.kuali.kfs.sys.document.FinancialSystemTransactionalDocument;
23 import org.kuali.kfs.sys.document.authorization.FinancialSystemTransactionalDocumentPresentationControllerBase;
24 import org.kuali.rice.kew.api.WorkflowDocument;
25 import org.kuali.rice.krad.document.Document;
26
27 /**
28 * Presentation Controller for Payment Application.
29 */
30 public class PaymentApplicationDocumentPresentationController extends FinancialSystemTransactionalDocumentPresentationControllerBase {
31
32 /**
33 * @see org.kuali.kfs.sys.document.authorization.FinancialSystemTransactionalDocumentPresentationControllerBase#canErrorCorrect(org.kuali.kfs.sys.document.FinancialSystemTransactionalDocument)
34 */
35 @Override
36 public boolean canErrorCorrect(FinancialSystemTransactionalDocument document) {
37 return false;
38 }
39
40 /**
41 * @see org.kuali.rice.krad.document.DocumentPresentationControllerBase#canCancel(org.kuali.rice.krad.document.Document)
42 */
43 @Override
44 public boolean canCancel(Document document) {
45 PaymentApplicationDocument paymentApplicationDocument = (PaymentApplicationDocument) document;
46
47 // KULAR-452
48 if (paymentApplicationDocument.hasCashControlDocument()) {
49 return false;
50 }
51 else {
52 return true;
53 }
54 }
55 @Override
56 public boolean canEdit(Document document) {
57 WorkflowDocument workflowDocument = document.getDocumentHeader().getWorkflowDocument();
58 if (workflowDocument.isEnroute()) {
59 return false;
60 }
61 else {
62 return super.canEdit(document);
63 }
64 }
65
66 }