2016-11-23 2 views
1

日にちから3日を追加する必要がありますが、土曜日と日曜日の日付は避けなければなりません....日付解析のためのスクリプトが必要です3営業日を追加

私は以下のコードを使用してい

..

import java.util.GregorianCalendar; 
import java.util.Calendar; 
import java.util.Date; 
import java.text.SimpleDateFormat 

//String dt = "2016-10-12"; // Start date 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
Calendar c = Calendar.getInstance(); 
c.setTime(sdf.parse(dt)); 
c.add(Calendar.DATE, 3); // number of days to add 
op = sdf.format(c.getTime()); // dt is now the new date 

シナリオ与えられた.... 3営業日は、私は、コードを使用していますが、私は必要なJavaScriptで

Monday +3 days 
Tuesday +3 days 
Wednesday +5 days 
Thursday +5 days 
Friday +5 days 
Saturday +4 days 
Sunday +3 days 

追加する必要があります使用する必要がありますこれはgroovyScriptで..私はこれに新しいです、私はhを知らない....私は助けを必要と...

var day = weekday[ invoiceDatee.getDay() ]; 
switch(day) { 
    case "Sunday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 3); 
     break; 
    case "Monday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 3); 
     break; 
    case "Tuesday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 3); 
     break; 
    case "Wednesday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 5); 
     break; 
    case "Thursday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 5); 
     break; 
    case "Friday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 5); 
     break; 
    case "Saturday": 
     invoiceDatee.setDate(invoiceDatee.getDate() + 4); 
     break; 
    default: 
} 

答えて

0

def map = [1: 3, 2: 3, 3: 3, 4: 5, 5: 5, 6: 5, 7: 4] 
c.add(Calendar.DATE, map[c.get(Calendar.DAY_OF_WEEK)]); // number of days to add 
+0

おかげでAdeelアンサリ、これを試していることを行うにはOW ....それは働いていません。 引数の後のコロンが不正です。 解決策:コロンの前の複雑なラベル式は、@ 8行目、32列目の括弧で囲まなければなりません。 Calendar.SATURDAY:4; – Kumar

+0

@Kumar、申し訳ありませんが、私はコードをコンパイルしていません。それを更新しました。今すぐ動作します。 –

+0

スーパー感謝のBroそれは働く.....非常に@アデルAnsari – Kumar

関連する問題