Po otevření dialogu pro zobrazení vyúčtování SC se přepne na první záložku, kterou může schválit aktuálně přihlášený uživatel.

closes #217
Verze_2.0
Josef Rokos 10 years ago
parent 0f169f8be9
commit e5a8e0f0d9

@ -6,6 +6,7 @@ import info.bukova.isspst.data.TripBillApproval;
import info.bukova.isspst.services.requirement.TripRequirementService;
import info.bukova.isspst.services.tripbill.TripBillApprovalService;
import info.bukova.isspst.services.tripbill.TripBillService;
import info.bukova.isspst.services.users.UserService;
import info.bukova.isspst.ui.requirement.RequirementSubpage;
import org.zkoss.bind.annotation.BindingParam;
import org.zkoss.bind.annotation.Command;
@ -33,6 +34,8 @@ public class TripBillSummaryVM extends RequirementSubpage<TripBillApproval> {
private TripBillService tripBillService;
@WireVariable
private TripRequirementService tripRequirementService;
@WireVariable
private UserService userService;
private TripBill bill;
private Map<Integer, Boolean> selTab;
@ -71,11 +74,8 @@ public class TripBillSummaryVM extends RequirementSubpage<TripBillApproval> {
bills.add(this.bill);
if (bill.getApproval() != null && bill.getApproval().getState() != RequirementState.APPROVED) {
if (selectTab(bill)) {
isSelectedTad = true;
selTab.put(bill.getId(), true);
} else {
selTab.put(bill.getId(), false);
}
for (TripBill b : tripRequirementService.getBills(bill.getRequirement())) {
@ -83,11 +83,8 @@ public class TripBillSummaryVM extends RequirementSubpage<TripBillApproval> {
tripBillService.loadLazyData(b);
bills.add(b);
if (!isSelectedTad && b.getApproval() != null && b.getApproval().getState() != RequirementState.APPROVED) {
setBill(b);
if (!isSelectedTad && selectTab(b)) {
isSelectedTad = true;
} else {
selTab.put(b.getId(), false);
}
}
}
@ -99,6 +96,19 @@ public class TripBillSummaryVM extends RequirementSubpage<TripBillApproval> {
return bills;
}
private boolean selectTab(TripBill bill) {
if (bill.getApproval() != null
&& bill.getApproval().getState() != RequirementState.APPROVED
&& tripBillApprovalService.getNextApprover(bill.getApproval()).contains(userService.getCurrent())) {
setBill(bill);
return true;
} else {
selTab.put(bill.getId(), false);
}
return false;
}
@Command
public void showBill(@BindingParam("bill") TripBill bill) {
Map<String, Object> params = new HashMap<String, Object>();

Loading…
Cancel
Save