私は現在HR system
で働いており、離脱管理モジュールには休暇の選択肢がget 10 consecutive days (working days except weekends)
です。そのJ2EEアプリケーションです。与えられた日付から連続した平日の数字をNとします
私が欲しいのはget 'N' number of consecutive weekdays from the given date
にある誰もがこの問題を達成する方法を知っていますか?
P.S:私はJodaTimeのような任意のサードパーティのライブラリを使用していないよ...
ここでは、一日の休暇申請のための私のコントローラのコードがあります。それは連続した日とは関係ありません。しかし、ここではこれを掲示することで、(つまりJavaScriptを使用してタグ付けされた)標準のJavaでのソリューションを必要とするかどうかを
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、私は、アプリケーションで物事のほとんどを完了しましたが、私は、この日連続で取得するために苦労しています。私は解決のためにgoogleを探しましたが、何も見つかりませんでした。 –
コードを編集して –
@ Psioniax、コード –