diff --git a/src/main/java/info/bukova/isspst/reporting/ParamFiller.java b/src/main/java/info/bukova/isspst/reporting/ParamFiller.java index 24b6e544..41aec3b7 100644 --- a/src/main/java/info/bukova/isspst/reporting/ParamFiller.java +++ b/src/main/java/info/bukova/isspst/reporting/ParamFiller.java @@ -1,5 +1,6 @@ package info.bukova.isspst.reporting; +import com.mysql.jdbc.StringUtils; import info.bukova.isspst.data.Address; import info.bukova.isspst.data.AuthItem; import info.bukova.isspst.data.Order; @@ -8,16 +9,14 @@ import info.bukova.isspst.data.User; import info.bukova.isspst.data.UserSettingsData; import info.bukova.isspst.services.requirement.TripRequirementService; import info.bukova.isspst.services.settings.GlobalSettingsService; +import info.bukova.isspst.services.tripbill.TripBillApprovalService; import info.bukova.isspst.services.users.UserService; import info.bukova.isspst.storage.FileStorage; +import org.springframework.beans.factory.annotation.Autowired; import java.util.HashMap; import java.util.Map; -import org.springframework.beans.factory.annotation.Autowired; - -import com.mysql.jdbc.StringUtils; - public class ParamFiller { @Autowired @@ -30,6 +29,8 @@ public class ParamFiller { private TripRequirementService tripReqService; @Autowired private GlobalSettingsService settingService; + @Autowired + private TripBillApprovalService tripBillApprovalService; public void fill() { if (definition.getDataSet() == null || definition.getDataSet().isEmpty()) { @@ -57,25 +58,31 @@ public class ParamFiller { TripBill tb = (TripBill)definition.getDataSet().get(0); tripReqService.loadAuthItems(tb.getRequirement()); - AuthItem lastButOneAuth = tb.getRequirement().getAuthorization().get(0); - definition.setParam("P_PREV_APPROVE_DATE", lastButOneAuth.getAuthDate()); + if (tb.getApproval() != null) { + tripBillApprovalService.loadAuthItems(tb.getApproval()); + } - User lastButOneUser = lastButOneAuth.getApprover(); - UserSettingsData prevApproverSettings = userService.getUserSettings(lastButOneUser); + if (tb.getApproval() != null && tb.getApproval().getAuthorization() != null && !tb.getApproval().getAuthorization().isEmpty()) { - if (prevApproverSettings != null && !StringUtils.isNullOrEmpty(prevApproverSettings.getSignatureFile())) { - definition.setParam("P_PREV_APPROVER_SIGNATURE", storage.serverPath(prevApproverSettings.getSignatureFile())); - } + AuthItem lastButOneAuth = tb.getApproval().getAuthorization().get(0); + definition.setParam("P_PREV_APPROVE_DATE", lastButOneAuth.getAuthDate()); + User lastButOneUser = lastButOneAuth.getApprover(); + UserSettingsData prevApproverSettings = userService.getUserSettings(lastButOneUser); - AuthItem lastAuth = tb.getRequirement().getAuthorization().get(tb.getRequirement().getAuthorization().size() - 1); - definition.setParam("P_APPROVE_DATE", lastAuth.getAuthDate()); - - User u = lastAuth.getApprover(); - UserSettingsData approverSettings = userService.getUserSettings(u); - - if (approverSettings != null && !StringUtils.isNullOrEmpty(approverSettings.getSignatureFile())) { - definition.setParam("P_APPROVER_SIGNATURE", storage.serverPath(approverSettings.getSignatureFile())); + if (prevApproverSettings != null && !StringUtils.isNullOrEmpty(prevApproverSettings.getSignatureFile())) { + definition.setParam("P_PREV_APPROVER_SIGNATURE", storage.serverPath(prevApproverSettings.getSignatureFile())); + } + + AuthItem lastAuth = tb.getApproval().getAuthorization().get(tb.getRequirement().getAuthorization().size() - 1); + definition.setParam("P_APPROVE_DATE", lastAuth.getAuthDate()); + + User u = lastAuth.getApprover(); + UserSettingsData approverSettings = userService.getUserSettings(u); + + if (approverSettings != null && !StringUtils.isNullOrEmpty(approverSettings.getSignatureFile())) { + definition.setParam("P_APPROVER_SIGNATURE", storage.serverPath(approverSettings.getSignatureFile())); + } } } diff --git a/src/main/webapp/WEB-INF/reports/tripBill.jasper b/src/main/webapp/WEB-INF/reports/tripBill.jasper index 2d1911c6..11f966a1 100644 Binary files a/src/main/webapp/WEB-INF/reports/tripBill.jasper and b/src/main/webapp/WEB-INF/reports/tripBill.jasper differ diff --git a/src/main/webapp/WEB-INF/reports/tripBill.jrxml b/src/main/webapp/WEB-INF/reports/tripBill.jrxml index 6fb9ddf4..c51d0ef8 100644 --- a/src/main/webapp/WEB-INF/reports/tripBill.jrxml +++ b/src/main/webapp/WEB-INF/reports/tripBill.jrxml @@ -2,7 +2,7 @@ - + @@ -571,6 +571,20 @@ tuzemské pracovní cesty]]> + + + + + + + + + + + + + +