Ich arbeite derzeit an einer HR system
und es hat eine Option für get 10 consecutive days (working days except weekends)
von Leave in seinem Urlaubsmanagement-Modul. Es ist eine J2EE-Anwendung.Get 'N' Anzahl der aufeinander folgenden Wochentage ab dem angegebenen Datum
Alles, was ich will, ist get 'N' number of consecutive weekdays from the given date
Hat jemand weiß, wie dieses Problem zu erreichen?
P. S: Ich verwende keine 3rd-Party-Bibliotheken nicht wie JodaTime ..
Hier Code für Tag verlassen Anwendung mein Controller ist. Es hat nichts mit den aufeinanderfolgenden Tagen zu tun. aber hier dieses Posting zu beweisen, dass ich es ernst etwas mache ..
if (action.equals("applyLeave")) {
Leave l = new Leave();
int userid = Integer.parseInt(request.getParameter("userid"));
int leavetype = Integer.parseInt(request.getParameter("leavetype"));
String from = request.getParameter("from"); // from time
String to = request.getParameter("to"); // to time
double total = Double.parseDouble(request.getParameter("total")); // total hours
String r1 = request.getParameter("rep1");
String r2 = request.getParameter("rep2");
if (r1 == null || r1.isEmpty()) {
r1 = "0";
}
if (r2 == null || r2.isEmpty()) {
r2 = "0";
}
int rep1 = Integer.parseInt(r1);
int rep2 = Integer.parseInt(r2);
String reason = request.getParameter("reason");
String date = request.getParameter("date");
l.setUser(userid);
l.setLeavetype(leavetype);
l.setDate(date);
l.setFrom(from);
l.setReason(reason);
l.setRep1(rep1);
l.setRep2(rep2);
l.setTo(to);
l.setTotal(total);
dao.saveLeave(l);
// get manager of the department
UserDao udao = (UserDao) ctx.getBean("udao");
DepartmentDao ddao = (DepartmentDao) ctx.getBean("depdao");
NotificationDao notificationDao = (NotificationDao) ctx.getBean("notificationDao");
User u = udao.getUserByUserID(userid).get(0);
int department = u.getDepartment();
Department d = ddao.getDepartmentByID(department).get(0);
int manager = d.getManager();
// save a notification for the respective manager
// insert notification
String text = u.getFirstname() + " " + u.getLastname() + " has applied for a leave";
Notification n = new Notification();
n.setUserid(manager);
n.setFk(dao.getLeaveID());
n.setType(3);
n.setText(text);
notificationDao.saveNotification(n);
PrintWriter out = res.getWriter();
res.setContentType("text/html");
Gson gson = new Gson();
JsonObject myObj = new JsonObject();
myObj.add("message", gson.toJsonTree("Successfully Inserted"));
out.println(myObj.toString());
out.close();
}
@Psioniax habe ich die meisten Dinge in der Anwendung erfolgreich abgeschlossen, aber ich bin zu kämpfen diese aufeinander folgenden Tagen zu erhalten. Ich habe nach Google für eine Lösung gesucht, aber ich konnte keine finden .. –
Bearbeiten Sie Ihre Frage, um einige Code –
@Psioniax, bearbeitet mit dem Code –