예제 #1
0
  private void loadArticlesUsedOnSelectedDay() {
    String date =
        dtDate.getYear()
            + String.format("%02d", dtDate.getMonth() + 1)
            + String.format("%02d", dtDate.getDay());

    Query<Konsultation> qbe = new Query<Konsultation>(Konsultation.class);
    qbe.add(Konsultation.FLD_DATE, Query.EQUALS, date);
    List<Konsultation> cons = qbe.execute();

    StringBuilder sb = new StringBuilder();

    for (Konsultation c : cons) {
      List<Verrechnet> leistungen = c.getLeistungen();
      for (Verrechnet v : leistungen) {
        IVerrechenbar vv = v.getVerrechenbar();
        if (vv instanceof Artikel) {
          Artikel art = (Artikel) vv;
          Mandant mandator = ElexisEventDispatcher.getSelectedMandator();
          IStockEntry stockEntry =
              CoreHub.getStockService()
                  .findPreferredStockEntryForArticle(
                      art.storeToString(), (mandator != null) ? mandator.getId() : null);
          if (stockEntry != null) {
            StockEntry se = (StockEntry) stockEntry;
            currOrder.addBestellungEntry(
                se.getArticle(), se.getStock(), se.getProvider(), v.getZahl());
          } else {
            sb.append(art.getLabel() + " ist kein Lagerartikel.\n");
          }
        }
      }
    }
  }
예제 #2
0
  private void setSqlToDate(DateTime dateTo) {

    Calendar cal = GregorianCalendar.getInstance();
    cal.set(Calendar.YEAR, dateTo.getYear());
    cal.set(Calendar.MONTH, dateTo.getMonth());
    cal.set(Calendar.DAY_OF_MONTH, dateTo.getDay());

    TO_DATE = cal;
  }
예제 #3
0
  private void setSqlFromDate(DateTime dateFrom) {

    Calendar cal = GregorianCalendar.getInstance();
    cal.set(Calendar.YEAR, dateFrom.getYear());
    cal.set(Calendar.MONTH, dateFrom.getMonth());
    cal.set(Calendar.DAY_OF_MONTH, dateFrom.getDay());

    FROM_DATE = cal;
  }
예제 #4
0
  private void generate() {
    Calendar calendar = Calendar.getInstance();
    calendar.set(dtFrom.getYear(), dtFrom.getMonth(), dtFrom.getDay());
    Date dateFrom = calendar.getTime();
    calendar.set(dtTo.getYear(), dtTo.getMonth(), dtTo.getDay());
    Date dateTo = calendar.getTime();
    setData = new SetData(new Date(), textComment.getText(), dateFrom, dateTo);
    tableSet.setValues(setData);

    final int octet = spinnerOctet.getSelection();
    final String octetValue = textOctet.getText();
    final int keys = spinnerCount.getSelection();
    try {
      new ProgressMonitorDialog(getShell())
          .run(
              true,
              true,
              new IRunnableWithProgress() {
                @Override
                public void run(IProgressMonitor monitor)
                    throws InvocationTargetException, InterruptedException {
                  monitor.beginTask("Генерация ключей…", keys);
                  for (int i = 0; i < keys; ++i) {
                    String key;
                    do {
                      if (monitor.isCanceled()) {
                        throw new InterruptedException();
                      }
                      key = KeyGenerator.generateKey(octetValue, octet);
                    } while (setData.isKeyExists(key));
                    setData.addKey(key, true);
                    monitor.worked(1);
                  }
                }
              });
    } catch (InvocationTargetException e) {
      throw new KeyException("Ошибка при генерации ключей", e.getCause());
    } catch (InterruptedException e) {
    }
    tableKey.setValues(setData.getKeys());
  }
예제 #5
0
 /**
  * 获得终止时间
  *
  * @return
  */
 public Date getEndDateTime() {
   Calendar calendar = Calendar.getInstance();
   calendar.set(endDate.getYear(), endDate.getMonth(), endDate.getDay(), 23, 59, 59);
   return calendar.getTime();
 }
예제 #6
0
 /**
  * 获得起始时间
  *
  * @return
  */
 public Date getStartDateTime() {
   Calendar calendar = Calendar.getInstance();
   calendar.set(startDate.getYear(), startDate.getMonth(), startDate.getDay(), 0, 0, 0);
   return calendar.getTime();
 }
예제 #7
0
  @Override
  protected void okPressed() {

    if (currentWorkType == null) {
      parentForm.setMessage("Wählen Sie eine Tätigkeit!", IMessageProvider.ERROR);
      return;
    } else {
      if (currentWorkType.isAffectBand() == null || !currentWorkType.isAffectBand()) {
        entry.setBandAction(null);
      } else {
        if (entry.getBandAction() == null) {
          parentForm.setMessage("Unbekanntes Problem bei Bändern!", IMessageProvider.ERROR);
          return;
        }
        if (entry.getBandAction().getBandType() == null) {
          parentForm.setMessage("Kein Bandtyp ausgewählt!", IMessageProvider.ERROR);
          return;
        }
        if (entry.getBandAction().getAmount() == null || entry.getBandAction().getAmount() == 0) {
          boolean confirm =
              MessageDialog.openQuestion(
                  getShell(),
                  "Anzahl bestätigen",
                  "Sie wollen bei einer Tätigkeit, die ein oder mehrere Bänder betreffen kann, eine Anzahl von '0' angeben...\n"
                      + "Sind Sie sich sicher?");
          if (confirm) entry.getBandAction().setAmount(0);
          else return;
        }
      }
    }

    if (currentPersonType == null) {
      parentForm.setMessage("Wählen Sie eine Person!", IMessageProvider.ERROR);
      return;
    }

    if (entry.getDate() == null) {
      Calendar c = Calendar.getInstance();
      c.set(dateTime.getYear(), dateTime.getMonth(), dateTime.getDay());
      entry.setDate(c.getTime());
    }
    Calendar c = Calendar.getInstance();
    c.set(Calendar.HOUR_OF_DAY, 0);
    c.set(Calendar.MINUTE, 0);
    c.set(Calendar.SECOND, 0);
    c.set(Calendar.MILLISECOND, 0);
    c.add(Calendar.DATE, +1);
    if (entry.getDate() == null || c.getTime().before(entry.getDate())) {
      parentForm.setMessage("Kein Datum, oder Datum in der Zukunft!", IMessageProvider.ERROR);
      return;
    }

    if (entry.getTime() == null || entry.getTime() == 0) {
      boolean confirm =
          MessageDialog.openQuestion(
              getShell(),
              "Dauer bestätigen",
              "Sie wollen bei einer Tätigkeit, eine Dauer von '0' Stunden angeben...\n"
                  + "Sind Sie sich sicher?");
      if (confirm) entry.setTime(new Float(0));
      else return;
    }

    super.okPressed();
  }