List of usage examples for org.joda.time LocalDate now
public static LocalDate now()
ISOChronology
in the default time zone. From source file:es.usc.citius.servando.calendula.database.DatabaseHelper.java
License:Open Source License
/** * Method that migrate models to multi-user *//*from www. ja va 2 s .co m*/ private void migrateToMultiPatient() throws SQLException { // add patient column to routines, schedules and medicines getRoutinesDao().executeRaw("ALTER TABLE Routines ADD COLUMN Patient INTEGER;"); getRoutinesDao().executeRaw("ALTER TABLE Medicines ADD COLUMN Patient INTEGER;"); getRoutinesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Patient INTEGER;"); getRoutinesDao().executeRaw("ALTER TABLE DailyScheduleItems ADD COLUMN Patient INTEGER;"); getRoutinesDao().executeRaw("ALTER TABLE DailyScheduleItems ADD COLUMN Date TEXT;"); Patient p = createDefaultPatient(); // SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); // prefs.edit().putLong(PatientDao.PREFERENCE_ACTIVE_PATIENT, p.id()).commit(); // Assign all routines to the default patient UpdateBuilder<Routine, Long> rUpdateBuilder = getRoutinesDao().updateBuilder(); rUpdateBuilder.updateColumnValue(Routine.COLUMN_PATIENT, p.id()); rUpdateBuilder.update(); // Assign all schedules to the default patient UpdateBuilder<Schedule, Long> sUpdateBuilder = getSchedulesDao().updateBuilder(); sUpdateBuilder.updateColumnValue(Schedule.COLUMN_PATIENT, p.id()); sUpdateBuilder.update(); // Assign all medicines to the default patient UpdateBuilder<Medicine, Long> mUpdateBuilder = getMedicinesDao().updateBuilder(); mUpdateBuilder.updateColumnValue(Medicine.COLUMN_PATIENT, p.id()); mUpdateBuilder.update(); // Assign all DailyScheduleItems to the default patient, for today UpdateBuilder<DailyScheduleItem, Long> siUpdateBuilder = getDailyScheduleItemsDao().updateBuilder(); siUpdateBuilder.updateColumnValue(DailyScheduleItem.COLUMN_PATIENT, p.id()); siUpdateBuilder.update(); // date formatter changes on v11, so we can no use LocalDatePersister here String now = LocalDate.now().toString("ddMMYYYY"); String updateDateSql = "UPDATE DailyScheduleItems SET " + DailyScheduleItem.COLUMN_DATE + " = '" + now + "'"; getDailyScheduleItemsDao().executeRaw(updateDateSql); }
From source file:es.usc.citius.servando.calendula.database.DatabaseHelper.java
License:Open Source License
/** * Method that migrate schedules to the iCal format *//* w ww. j av a2 s . co m*/ private void migrateToICal() throws SQLException { getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Rrule TEXT;"); getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Start TEXT;"); getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Starttime TEXT;"); getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Dose REAL;"); getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Type INTEGER;"); getSchedulesDao().executeRaw("ALTER TABLE Schedules ADD COLUMN Cycle TEXT;"); getDailyScheduleItemsDao().executeRaw("ALTER TABLE DailyScheduleItems ADD COLUMN Schedule INTEGER;"); getDailyScheduleItemsDao().executeRaw("ALTER TABLE DailyScheduleItems ADD COLUMN Time TEXT;"); // update schedules TransactionManager.callInTransaction(getConnectionSource(), new Callable<Void>() { @Override public Void call() throws Exception { // iterate over schedules and replace days[] with rrule List<Schedule> schedules = getSchedulesDao().queryForAll(); Log.d(TAG, "Upgrade " + schedules.size() + " schedules"); for (Schedule s : schedules) { if (s.rule() == null) { s.setRepetition(new RepetitionRule(RepetitionRule.DEFAULT_ICAL_VALUE)); } s.setDays(s.getLegacyDays()); if (s.allDaysSelected()) { s.setType(Schedule.SCHEDULE_TYPE_EVERYDAY); } else { s.setType(Schedule.SCHEDULE_TYPE_SOMEDAYS); } s.setStart(LocalDate.now()); s.save(); } return null; } }); }
From source file:es.usc.citius.servando.calendula.fragments.HomeProfileMgr.java
License:Open Source License
public void init(View view, final Activity ctx) { this.context = ctx; this.rootView = view; preferences = PreferenceManager.getDefaultSharedPreferences(context); // Animation in = AnimationUtils.loadAnimation(ctx, android.R.anim.fade_in); // Animation out = AnimationUtils.loadAnimation(ctx, android.R.anim.fade_out); moods = ctx.getResources().getStringArray(R.array.moods); monthTv = (TextView) view.findViewById(R.id.month_text); dayTv = (TextView) view.findViewById(R.id.day_text); //clock = (CustomDigitalClock) view.findViewById(R.id.home_clock); bottomShadow = (ImageView) view.findViewById(R.id.bottom_shadow); profileInfo = view.findViewById(R.id.profile_info); blurMask = view.findViewById(R.id.blur_mask); santaContainer = view.findViewById(R.id.santa_container); santaImv = (ImageView) view.findViewById(R.id.image_santa); santaButton = (ImageButton) view.findViewById(R.id.santa_mode_button); santaButton.setImageDrawable(new IconicsDrawable(ctx, CommunityMaterial.Icon.cmd_pine_tree).sizeDp(36) .paddingDp(5).colorRes(R.color.white)); profileUsername = (TextView) view.findViewById(R.id.profile_username); profileContainer = (RelativeLayout) view.findViewById(R.id.profile_container); profileImageContainer = view.findViewById(R.id.profile_image_container); background = (ImageView) view.findViewById(R.id.image_switcher); modFabButton = (RoundedImageView) view.findViewById(R.id.mod_circle); moodImg = (ImageView) view.findViewById(R.id.mood_button); moodImg.setOnClickListener(new View.OnClickListener() { @Override//from w w w.j a va 2 s . co m public void onClick(View v) { showMoodsDialog(); } }); background.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { updateBackground(); } }); updateModButton(); updateProfileInfo(); profileInfo.setVisibility(View.INVISIBLE); background.setVisibility(View.INVISIBLE); bottomShadow.setVisibility(View.INVISIBLE); boolean disableChristmasMode = preferences.getBoolean("disable_christmas_mode", false); LocalDate today = LocalDate.now(); if (!disableChristmasMode && today.getMonthOfYear() == 12 && (today.getDayOfMonth() >= 23 && today.getDayOfMonth() <= 31)) { try { int current = preferences.getInt("current_santa_image", 0); santaImv.setImageDrawable(new GifDrawable(ctx.getAssets(), images.get(current))); santaContainer.setVisibility(View.VISIBLE); blurMask.setAlpha(0.5f); santaButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (t != null) { t.cancel(); } t = Toast.makeText(context, R.string.christmas_remove_message, Toast.LENGTH_SHORT); t.show(); rotateChristmasImage(); } }); santaButton.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { santaContainer.setVisibility(View.GONE); preferences.edit().putBoolean("disable_christmas_mode", true).apply(); t = Toast.makeText(context, R.string.done, Toast.LENGTH_SHORT); t.show(); return true; } }); if (!preferences.getBoolean("christmas_message_shown_2016", false)) { showChristmasDialog(); preferences.edit().putBoolean("christmas_message_shown_2016", true).apply(); } santaMode = true; } catch (Exception e) { santaContainer.setVisibility(View.GONE); } } else { santaContainer.setVisibility(View.GONE); } Picasso.with(context).load("file:///android_asset/" + getBackgroundPath(ctx)).into(background); background.post(new Runnable() { @Override public void run() { bottomShadow.setVisibility(View.VISIBLE); background.setVisibility(View.VISIBLE); background.animate().alpha(1).setDuration(200); } }); background.postDelayed(new Runnable() { @Override public void run() { profileInfo.setVisibility(View.VISIBLE); profileInfo.setAlpha(0); profileInfo.animate().alpha(santaMode ? 0.5f : 1).setDuration(400); } }, 300); }
From source file:es.usc.citius.servando.calendula.fragments.MedInfoFragment.java
License:Open Source License
private void setupView() { Context c = getActivity();//from w w w. j a va2s . c om int color = R.color.black; icMedName.setImageDrawable(IconUtils.icon(c, CommunityMaterial.Icon.cmd_script, color, 24, 4)); icProspect.setImageDrawable(IconUtils.icon(c, CommunityMaterial.Icon.cmd_information, color, 24, 4)); icScheduleInfo.setImageDrawable(IconUtils.icon(c, CommunityMaterial.Icon.cmd_calendar, color, 24, 4)); icMedStock.setImageDrawable(IconUtils.icon(c, CommunityMaterial.Icon.cmd_basket, color, 24, 4)); Drawable ic = new IconicsDrawable(c, CommunityMaterial.Icon.cmd_file_document).sizeDp(60).paddingDp(0) .color(DB.patients().getActive(c).getColor()); showProspectIcon.setImageDrawable(ic); String name = ""; String desc = ""; if (m != null) { if (m.isBoundToPrescription()) { Prescription p = DB.drugDB().prescriptions().findByCn(m.getCn()); if (p != null) { name += getNameWhyNot(p) + "\n"; desc += "CN - " + p.getCode() + "\n"; desc += "" + p.getContent() + "\n"; desc += "" + p.getDose(); } } else { desc = getString(R.string.message_link_real_prescription); name += m.getName(); } } medName.setText(name); medDesc.setText(desc); int scheduleCount = DB.schedules().findByMedicine(m).size(); if (scheduleCount == 0) { scheduleInfo.setText(R.string.active_schedules_none); } else if (scheduleCount == 1) { scheduleInfo.setText(R.string.active_schedules_one); } else { scheduleInfo.setText(getString(R.string.active_schedules_number, scheduleCount)); } if (m.isBoundToPrescription()) { showProspectBtn.setAlpha(1f); showProspectIcon.setAlpha(1f); bindMedBtn.setVisibility(View.GONE); showProspectBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { ProspectUtils.openProspect(DB.drugDB().prescriptions().findByCn(m.getCn()), getActivity(), true); } }); } else { showProspectBtn.setAlpha(0.8f); showProspectIcon.setAlpha(0.3f); bindMedBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(getActivity(), MedicinesActivity.class); intent.putExtra(MedicinesActivity.EXTRA_SEARCH_TEXT, m.getName()); intent.putExtra(CalendulaApp.INTENT_EXTRA_MEDICINE_ID, m.getId()); startActivity(intent); } }); } if (ModuleManager.isEnabled(StockModule.ID)) { stockLayout.setVisibility(View.VISIBLE); if (m.stockManagementEnabled()) { final Float s = m.getStock(); final String stock = s.intValue() == s ? String.valueOf(s.intValue()) : String.valueOf(s); stockInfo.setText(stock + " " + m.getPresentation().units(getResources(), s)); final StockCalculator.StockEnd stockEnd = StockCalculator.calculateStockEnd(LocalDate.now(), new MedicineScheduleStockProvider(m), m.getStock()); String msg = StockDisplayUtils.getReadableStockDuration(stockEnd, getContext()); stockInfoEnd.setText(msg); } else { stockInfo.setText(R.string.stock_no_data); stockInfoEnd.setText(R.string.stock_no_stock_info); } } }
From source file:es.usc.citius.servando.calendula.fragments.ScheduleImportFragment.java
License:Open Source License
private void setupStartEndDatePickers(View rootView) { if (schedule.start() == null) { schedule.setStart(LocalDate.now()); }/* w w w.j a v a2s .c om*/ final LocalDate scheduleStart = schedule.start(); buttonScheduleStart.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { DatePickerDialog dpd = new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { Log.d(TAG, year + " " + monthOfYear); LocalDate d = new LocalDate(year, monthOfYear + 1, dayOfMonth); setScheduleStart(d); } }, scheduleStart.getYear(), scheduleStart.getMonthOfYear() - 1, scheduleStart.getDayOfMonth()); dpd.show(); } }); buttonScheduleEnd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { LocalDate scheduleEnd = schedule.end() != null ? schedule.end() : scheduleStart.plusMonths(3); DatePickerDialog dpd = new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { LocalDate d = new LocalDate(year, monthOfYear + 1, dayOfMonth); setScheduleEnd(d); } }, scheduleEnd.getYear(), scheduleEnd.getMonthOfYear() - 1, scheduleEnd.getDayOfMonth()); dpd.show(); } }); buttonScheduleEnd.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage("Do you want this schedule to continue indefinitely?").setCancelable(true) .setPositiveButton(getString(R.string.dialog_yes_option), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { setScheduleEnd(null); } }) .setNegativeButton(getString(R.string.dialog_no_option), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { dialog.cancel(); } }); AlertDialog alert = builder.create(); alert.show(); return true; } }); clearStartButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { setScheduleStart(null); } }); clearEndButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { setScheduleEnd(null); } }); setScheduleStart(schedule.start()); if (schedule.end() == null && isNew && hasEnd && daysToEnd > 0) { LocalDate end = schedule.start().plusDays(daysToEnd); setScheduleEnd(end); } else { setScheduleEnd(schedule.end()); } }
From source file:es.usc.citius.servando.calendula.fragments.ScheduleImportFragment.java
License:Open Source License
private void checkToday(View v) { boolean[] days = Schedule.noWeekDays(); days[LocalDate.now().getDayOfWeek() - 1] = true; checkSelectedDays(v, days); }
From source file:es.usc.citius.servando.calendula.fragments.ScheduleImportFragment.java
License:Open Source License
@Override public void onRecurrenceSet(String s) { EventRecurrence event = new EventRecurrence(); LocalDate now = LocalDate.now(); Time startDate = new Time(Time.getCurrentTimezone()); startDate.set(now.getDayOfMonth(), now.getMonthOfYear(), now.getYear()); startDate.normalize(true);//from w w w .ja va 2 s . c o m event.parse(s); event.setStartDate(startDate); Log.d(TAG, "OnRecurrenceSet: " + event.startDate); schedule.setRepetition(new RepetitionRule("RRULE:" + s)); setScheduleStart(schedule.start()); LocalDate end = schedule.end(); Log.d(TAG, "ICAL: " + schedule.rule().toIcal()); setScheduleEnd(end); Log.d(TAG, "ICAL: " + schedule.rule().toIcal()); ruleText.setText(getCurrentSchedule()); }
From source file:es.usc.citius.servando.calendula.fragments.ScheduleTimetableFragment.java
License:Open Source License
void setupStartEndDatePickers(View rootView) { if (schedule.start() == null) { schedule.setStart(LocalDate.now()); }//from ww w . ja v a 2 s . com final LocalDate scheduleStart = schedule.start(); buttonScheduleStart.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { DatePickerDialog dpd = new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { Log.d(TAG, year + " " + monthOfYear); LocalDate d = new LocalDate(year, monthOfYear + 1, dayOfMonth); setScheduleStart(d); } }, scheduleStart.getYear(), scheduleStart.getMonthOfYear() - 1, scheduleStart.getDayOfMonth()); dpd.show(); } }); buttonScheduleEnd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { LocalDate scheduleEnd = schedule.end() != null ? schedule.end() : scheduleStart.plusMonths(3); DatePickerDialog dpd = new DatePickerDialog(getActivity(), new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { LocalDate d = new LocalDate(year, monthOfYear + 1, dayOfMonth); setScheduleEnd(d); } }, scheduleEnd.getYear(), scheduleEnd.getMonthOfYear() - 1, scheduleEnd.getDayOfMonth()); dpd.show(); } }); buttonScheduleEnd.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage("Do you want this schedule to continue indefinitely?").setCancelable(true) .setPositiveButton(getString(R.string.dialog_yes_option), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { setScheduleEnd(null); } }) .setNegativeButton(getString(R.string.dialog_no_option), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { dialog.cancel(); } }); AlertDialog alert = builder.create(); alert.show(); return true; } }); clearStartButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { setScheduleStart(null); } }); clearEndButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { setScheduleEnd(null); } }); setScheduleStart(schedule.start()); setScheduleEnd(schedule.end()); }
From source file:es.usc.citius.servando.calendula.persistence.DailyScheduleItem.java
License:Open Source License
public DailyScheduleItem(ScheduleItem scheduleItem) { this.scheduleItem = scheduleItem; this.date = LocalDate.now(); }
From source file:es.usc.citius.servando.calendula.persistence.DailyScheduleItem.java
License:Open Source License
public DailyScheduleItem(Schedule schedule, LocalTime time) { this.schedule = schedule; this.time = time; this.date = LocalDate.now(); }