Beispiel #1
0
  @Override
  protected SQLRowValues createDefaults() {
    System.err.println("Create defaults");

    setSiteEnabled(false, Type_Diff.DONNEUR_ORDRE);
    setSiteEnabled(false, Type_Diff.SITE);

    // Numero incremental auto
    final SQLRowValues rowVals = new SQLRowValues(getTable());
    rowVals.put("NUMERO", NumerotationAutoSQLElement.getNextNumero(DevisSQLElement.class));

    // User
    // final SQLSelect sel = new SQLSelect(Configuration.getInstance().getBase());
    final SQLElement eltComm = Configuration.getInstance().getDirectory().getElement("COMMERCIAL");
    final int idUser = UserManager.getInstance().getCurrentUser().getId();
    //
    // sel.addSelect(eltComm.getTable().getKey());
    // sel.setWhere(new Where(eltComm.getTable().getField("ID_USER_COMMON"), "=", idUser));
    // final List<SQLRow> rowsComm = (List<SQLRow>)
    // Configuration.getInstance().getBase().getDataSource().execute(sel.asString(), new
    // SQLRowListRSH(eltComm.getTable()));

    SQLRow rowsComm =
        SQLBackgroundTableCache.getInstance()
            .getCacheForTable(eltComm.getTable())
            .getFirstRowContains(idUser, eltComm.getTable().getField("ID_USER_COMMON"));

    if (rowsComm != null) {
      rowVals.put("ID_COMMERCIAL", rowsComm.getID());
    }
    if (getTable().getUndefinedID() == SQLRow.NONEXISTANT_ID) {
      rowVals.put("ID_ETAT_DEVIS", EtatDevisSQLElement.EN_ATTENTE);
    } else {
      SQLRowValues foreign = UndefinedRowValuesCache.getInstance().getDefaultRowValues(getTable());
      if (foreign != null && !foreign.isUndefined()) {
        rowVals.put("ID_ETAT_DEVIS", foreign.getObject("ID_ETAT_DEVIS"));
      } else {
        rowVals.put("ID_ETAT_DEVIS", EtatDevisSQLElement.EN_ATTENTE);
      }
    }
    rowVals.put("T_HT", Long.valueOf(0));
    rowVals.put("T_TVA", Long.valueOf(0));
    rowVals.put("T_SERVICE", Long.valueOf(0));
    rowVals.put("T_TTC", Long.valueOf(0));

    if (getTable().getFieldsName().contains("DATE_VALIDITE")) {
      Calendar cal = Calendar.getInstance();
      cal.add(Calendar.MONTH, 1);
      rowVals.put("DATE_VALIDITE", cal.getTime());
    }
    return rowVals;
  }