List of usage examples for java.sql Timestamp equals
public boolean equals(java.lang.Object ts)
From source file:com.lp.server.auftrag.ejbfac.AuftragFacBean.java
/** * Aktualisieren der Kopfdaten eines Auftrags. * //from w w w .j a v a 2 s. co m * @param auftragDtoI * die Daten des Auftrags * @param waehrungOriCNrI * die urspruengliche Belegwaehrung aenderewaehrung: 0 * @param theClientDto * der aktuelle Benutzer * @throws EJBExceptionLP * Ausnahme */ // TODO Grosser Auftrag bei Kunden. Funktion sollte jedoch // optimiert werden @TransactionTimeout(60000) public boolean updateAuftrag(AuftragDto auftragDtoI, String waehrungOriCNrI, TheClientDto theClientDto) throws EJBExceptionLP { checkAuftragDto(auftragDtoI); boolean bMwstSatzWurdeVonNullGeaendertUndEsGibtHandeingaben = false; AuftragDto auftragOldDto = auftragFindByPrimaryKey(auftragDtoI.getIId()); try { AuftragpositionDto[] aAuftragpositionDto = getAuftragpositionFac() .auftragpositionFindByAuftrag(auftragDtoI.getIId()); if (auftragOldDto.getAuftragartCNr().equals(AuftragServiceFac.AUFTRAGART_ABRUF) && aAuftragpositionDto.length > 0) { if (auftragOldDto.getAuftragartCNr().equals(AuftragServiceFac.AUFTRAGART_ABRUF) && !auftragDtoI.getAuftragartCNr().equals(AuftragServiceFac.AUFTRAGART_ABRUF)) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_ABRUFAUFTRAG_KANN_NICHT_MEHR_VERAENDERT_WERDEN, "FEHLER_ABRUFAUFTRAG_KANN_NICHT_MEHR_VERAENDERT_WERDEN"); } if (!auftragOldDto.getAuftragIIdRahmenauftrag().equals(auftragDtoI.getAuftragIIdRahmenauftrag())) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_ABRUFAUFTRAG_KANN_NICHT_MEHR_VERAENDERT_WERDEN, "FEHLER_ABRUFAUFTRAG_KANN_NICHT_MEHR_VERAENDERT_WERDEN"); } } // SK: Fuer Voest eingebaut am 27.1.2009 if (auftragOldDto.getDFinaltermin() != null && auftragDtoI.getDFinaltermin() != null) { if (!auftragOldDto.getDFinaltermin().equals(auftragDtoI.getDFinaltermin())) { // Finaltermin hat sich geaendert... Negative Positionen // bekommen neuen Positionstermin for (int i = 0; i < aAuftragpositionDto.length; i++) { if (aAuftragpositionDto[i].getNMenge() != null) { if (aAuftragpositionDto[i].getNMenge().compareTo(new BigDecimal(0)) < 0 && aAuftragpositionDto[i].getTUebersteuerbarerLiefertermin() .equals(auftragOldDto.getDFinaltermin())) { aAuftragpositionDto[i] .setTUebersteuerbarerLiefertermin(auftragDtoI.getDFinaltermin()); getAuftragpositionFac().updateAuftragpositionOhneWeitereAktion( aAuftragpositionDto[i], theClientDto); // Artikelreservierung Liefertermin aendern if (aAuftragpositionDto[i].isIdent()) { ArtikelreservierungDto artikelreservierungDto = getReservierungFac() .artikelreservierungFindByBelegartCNrBelegartPositionIIdOhneExc( LocaleFac.BELEGART_AUFTRAG, aAuftragpositionDto[i].getIId()); if (artikelreservierungDto != null) { artikelreservierungDto.setTLiefertermin( aAuftragpositionDto[i].getTUebersteuerbarerLiefertermin()); getReservierungFac().updateArtikelreservierung(artikelreservierungDto); } } } } } } } // aenderewaehrung: 1 wenn die Waehrung geaendert wurde, muessen die // Belegwerte neu berechnet werden if (waehrungOriCNrI != null && !waehrungOriCNrI.equals(auftragDtoI.getCAuftragswaehrung())) { // aenderewaehrung: 2 die Positionswerte neu berechnen und // abspeichern BigDecimal ffWechselkurs = getLocaleFac().getWechselkurs2(waehrungOriCNrI, auftragDtoI.getCAuftragswaehrung(), theClientDto); for (int i = 0; i < aAuftragpositionDto.length; i++) { if (aAuftragpositionDto[i].getNMenge() != null && aAuftragpositionDto[i].getNEinzelpreis() != null) { BigDecimal nNettoeinzelpreisInNeuerWaehrung = aAuftragpositionDto[i].getNEinzelpreis() .multiply(ffWechselkurs); VerkaufspreisDto verkaufspreisDto = getVkPreisfindungFac().berechnePreisfelder( nNettoeinzelpreisInNeuerWaehrung, aAuftragpositionDto[i].getFRabattsatz(), aAuftragpositionDto[i].getFZusatzrabattsatz(), aAuftragpositionDto[i].getMwstsatzIId(), 4, // @todo Konstante PJ 3778 theClientDto); aAuftragpositionDto[i].setNEinzelpreis(verkaufspreisDto.einzelpreis); aAuftragpositionDto[i].setNRabattbetrag(verkaufspreisDto.rabattsumme); aAuftragpositionDto[i].setNNettoeinzelpreis(verkaufspreisDto.nettopreis); aAuftragpositionDto[i].setNMwstbetrag(verkaufspreisDto.mwstsumme); aAuftragpositionDto[i].setNBruttoeinzelpreis(verkaufspreisDto.bruttopreis); // alle Preisfelder incl. der zusaetzlichen Preisfelder // befuellen getAuftragpositionFac().updateAuftragpositionOhneWeitereAktion(aAuftragpositionDto[i], theClientDto); } } } Timestamp auftragOldLT = Helper.cutTimestamp(auftragOldDto.getDLiefertermin()); if (!auftragOldDto.getDLiefertermin().equals(auftragDtoI.getDLiefertermin())) { for (int i = 0; i < aAuftragpositionDto.length; i++) { Timestamp posLT = Helper .cutTimestamp(aAuftragpositionDto[i].getTUebersteuerbarerLiefertermin()); if (posLT.equals(auftragOldLT)) { aAuftragpositionDto[i].setTUebersteuerbarerLiefertermin( new Timestamp(auftragDtoI.getDLiefertermin().getTime())); getAuftragpositionFac().updateAuftragpositionOhneWeitereAktion(aAuftragpositionDto[i], theClientDto); // Artikelreservierung Liefertermin aendern if (aAuftragpositionDto[i].isIdent()) { ArtikelreservierungDto artikelreservierungDto = getReservierungFac() .artikelreservierungFindByBelegartCNrBelegartPositionIIdOhneExc( LocaleFac.BELEGART_AUFTRAG, aAuftragpositionDto[i].getIId()); if (artikelreservierungDto != null) { artikelreservierungDto .setTLiefertermin(new Timestamp(auftragDtoI.getDLiefertermin().getTime())); getReservierungFac().updateArtikelreservierung(artikelreservierungDto); } } } } } // Auftrag Kunde wurde geaendert ? if (!auftragOldDto.getKundeIIdAuftragsadresse().equals(auftragDtoI.getKundeIIdAuftragsadresse())) { // mwstsatz KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(auftragDtoI.getKundeIIdAuftragsadresse(), theClientDto); KundeDto kundeDtoVorher = getKundeFac() .kundeFindByPrimaryKey(auftragOldDto.getKundeIIdAuftragsadresse(), theClientDto); ParametermandantDto parameterPositionskontierung = getParameterFac().getMandantparameter( theClientDto.getMandant(), ParameterFac.KATEGORIE_KUNDEN, ParameterFac.PARAMETER_KUNDEN_POSITIONSKONTIERUNG); boolean bDefaultMwstsatzAusArtikel = (Boolean) parameterPositionskontierung.getCWertAsObject(); for (int i = 0; i < aAuftragpositionDto.length; i++) { if (aAuftragpositionDto[i].isIdent() || aAuftragpositionDto[i].isHandeingabe()) { MwstsatzDto mwstsatzDto = getMandantFac().mwstsatzFindByMwstsatzbezIIdAktuellster( kundeDto.getMwstsatzbezIId(), theClientDto); if (bDefaultMwstsatzAusArtikel && aAuftragpositionDto[i].isIdent()) { ArtikelDto artikelDto = getArtikelFac().artikelFindByPrimaryKeySmall( aAuftragpositionDto[i].getArtikelIId(), theClientDto); if (artikelDto.getMwstsatzbezIId() != null) { mwstsatzDto = getMandantFac().mwstsatzFindByMwstsatzbezIIdAktuellster( artikelDto.getMwstsatzbezIId(), theClientDto); } } // SP503 if (bDefaultMwstsatzAusArtikel && aAuftragpositionDto[i].isHandeingabe()) { // Wenn alter und neuer Kunde den gleichen MWST-Satz // haben, dann nichts tun MwstsatzDto mwstsatzDtoKundeNeu = getMandantFac() .mwstsatzFindByMwstsatzbezIIdAktuellster(kundeDto.getMwstsatzbezIId(), theClientDto); MwstsatzDto mwstsatzDtoKundeVorher = getMandantFac() .mwstsatzFindByMwstsatzbezIIdAktuellster(kundeDtoVorher.getMwstsatzbezIId(), theClientDto); if (mwstsatzDtoKundeVorher.getFMwstsatz() == 0 && mwstsatzDtoKundeNeu.getFMwstsatz() > 0) { bMwstSatzWurdeVonNullGeaendertUndEsGibtHandeingaben = true; } if (mwstsatzDtoKundeNeu.getIId().equals(mwstsatzDtoKundeVorher.getIId())) { continue; } } if (!aAuftragpositionDto[i].getMwstsatzIId().equals(mwstsatzDto.getIId())) { aAuftragpositionDto[i].setMwstsatzIId(mwstsatzDto.getIId()); BigDecimal mwstBetrag = aAuftragpositionDto[i] .getNNettoeinzelpreisplusversteckteraufschlagminusrabatte() .multiply(new BigDecimal(mwstsatzDto.getFMwstsatz().doubleValue()) .movePointLeft(2)); aAuftragpositionDto[i].setNMwstbetrag(mwstBetrag); aAuftragpositionDto[i].setNBruttoeinzelpreis(mwstBetrag.add(aAuftragpositionDto[i] .getNNettoeinzelpreisplusversteckteraufschlagminusrabatte())); getAuftragpositionFac().updateAuftragpositionOhneWeitereAktion(aAuftragpositionDto[i], theClientDto); } } } // Kopftext und Fusstext zuruecksetzen auftragDtoI.setCFusstextUebersteuert(null); auftragDtoI.setCKopftextUebersteuert(null); } auftragDtoI.setPersonalIIdAendern(theClientDto.getIDPersonal()); auftragDtoI.setTAendern(getTimestamp()); Auftrag auftrag = em.find(Auftrag.class, auftragDtoI.getIId()); if (auftrag == null) { throw new EJBExceptionLP(EJBExceptionLP.FEHLER_BEI_FINDBYPRIMARYKEY, ""); } if (auftrag.getAuftragartCNr().equals(AuftragServiceFac.AUFTRAGART_ABRUF)) { if (!auftragDtoI.getAuftragartCNr().equals(AuftragServiceFac.AUFTRAGART_ABRUF)) auftragDtoI.setAuftragIIdRahmenauftrag(null); } if (!auftragDtoI.getKundeIIdAuftragsadresse().equals(auftrag.getKundeIIdAuftragsadresse())) { KundeDto kundeDto = getKundeFac().kundeFindByPrimaryKey(auftragDtoI.getKundeIIdAuftragsadresse(), theClientDto); Integer iGarantie = new Integer(0); if (kundeDto.getIGarantieinmonaten() != null) { iGarantie = kundeDto.getIGarantieinmonaten(); } auftragDtoI.setIGarantie(iGarantie); } setAuftragFromAuftragDto(auftrag, auftragDtoI); // aenderewaehrung: 3 der Status des Auftrags wechselt auf Angelegt pruefeUndSetzeAuftragstatusBeiAenderung(auftragDtoI.getIId(), theClientDto); } catch (RemoteException ex) { throwEJBExceptionLPRespectOld(ex); } return bMwstSatzWurdeVonNullGeaendertUndEsGibtHandeingaben; }
From source file:com.lp.server.fertigung.ejbfac.FertigungFacBean.java
@TransactionAttribute(TransactionAttributeType.SUPPORTS) public int wiederholendeLoseAnlegen(TheClientDto theClientDto) { int iAnzahlAngelegterLose = 0; DateFormatSymbols symbols = new DateFormatSymbols(theClientDto.getLocUi()); String[] defaultMonths = symbols.getMonths(); int iStandarddurchlaufzeit = 0; try {//from ww w . j a v a 2 s .co m ParametermandantDto parameter = getParameterFac().getMandantparameter(theClientDto.getMandant(), ParameterFac.KATEGORIE_FERTIGUNG, ParameterFac.INTERNEBESTELLUNG_DEFAULTDURCHLAUFZEIT); iStandarddurchlaufzeit = ((Integer) parameter.getCWertAsObject()).intValue(); } catch (RemoteException ex2) { throwEJBExceptionLPRespectOld(ex2); } Session session = FLRSessionFactory.getFactory().openSession(); Criteria crit = session.createCriteria(FLRWiederholendelose.class); crit.add(Restrictions.eq("mandant_c_nr", theClientDto.getMandant())); crit.add(Restrictions.eq(FertigungFac.FLR_WIEDERHOLENDELOSE_B_VERSTECKT, Helper.boolean2Short(false))); List<?> resultList = crit.list(); Iterator<?> resultListIterator = resultList.iterator(); while (resultListIterator.hasNext()) { FLRWiederholendelose flrWiederholendelose = (FLRWiederholendelose) resultListIterator.next(); // Naechster faelliger Termin nach Heute Calendar cBeginn = Calendar.getInstance(); cBeginn.setTimeInMillis(flrWiederholendelose.getT_termin().getTime()); String intervall = flrWiederholendelose.getAuftragwiederholungsintervall_c_nr(); Timestamp tHeute = Helper.cutTimestamp(new Timestamp(System.currentTimeMillis())); while (cBeginn.getTimeInMillis() < tHeute.getTime()) { if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_2WOECHENTLICH)) { cBeginn.set(Calendar.DAY_OF_MONTH, cBeginn.get(Calendar.DAY_OF_MONTH) + 14); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_WOECHENTLICH)) { cBeginn.set(Calendar.DAY_OF_MONTH, cBeginn.get(Calendar.DAY_OF_MONTH) + 7); } if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_JAHR)) { cBeginn.set(Calendar.YEAR, cBeginn.get(Calendar.YEAR) + 1); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_2JAHR)) { cBeginn.set(Calendar.YEAR, cBeginn.get(Calendar.YEAR) + 2); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_3JAHR)) { cBeginn.set(Calendar.YEAR, cBeginn.get(Calendar.YEAR) + 3); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_4JAHR)) { cBeginn.set(Calendar.YEAR, cBeginn.get(Calendar.YEAR) + 4); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_5JAHR)) { cBeginn.set(Calendar.YEAR, cBeginn.get(Calendar.YEAR) + 5); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_MONATLICH)) { cBeginn.set(Calendar.MONTH, cBeginn.get(Calendar.MONTH) + 1); } else if (intervall.equals(AuftragServiceFac.AUFTRAGWIEDERHOLUNGSINTERVALL_QUARTAL)) { cBeginn.set(Calendar.MONTH, cBeginn.get(Calendar.MONTH) + 3); } } Timestamp tBeginndatumFuerLos = new Timestamp(cBeginn.getTimeInMillis()); // Voreilende Tage abziehen String monatsname = defaultMonths[cBeginn.get(Calendar.MONTH)]; int iJahr = cBeginn.get(Calendar.YEAR); int iTageVoreilend = flrWiederholendelose.getI_tagevoreilend(); cBeginn.set(Calendar.DAY_OF_MONTH, cBeginn.get(Calendar.DAY_OF_MONTH) - iTageVoreilend); Timestamp tAnlagedatum = new Timestamp(cBeginn.getTimeInMillis()); if (tAnlagedatum.before(tHeute) || tAnlagedatum.equals(tHeute)) { // try { Query query = em.createNamedQuery("LosfindWiederholendeloseIIdTProduktionsbeginnMandantCNr"); query.setParameter(1, flrWiederholendelose.getI_id()); query.setParameter(2, tBeginndatumFuerLos); query.setParameter(3, theClientDto.getMandant()); Collection<?> cl = query.getResultList(); // if (cl.isEmpty()) { // throw new EJBExceptionLP(EJBExceptionLP.FEHLER, null); // } LosDto[] lose = assembleLosDtos(cl); // Wenn noch nicht angelegt if (lose.length == 0) { WiederholendeloseDto dto = wiederholendeloseFindByPrimaryKey(flrWiederholendelose.getI_id()); String projektname = ""; if (dto.getCProjekt() != null) { projektname += dto.getCProjekt() + " "; } projektname += monatsname + " " + iJahr; if (projektname.length() > 50) { projektname = projektname.substring(0, 49); } LosDto losDto = new LosDto(); losDto.setWiederholendeloseIId(dto.getIId()); losDto.setCProjekt(projektname); losDto.setFertigungsgruppeIId(dto.getFertigungsgruppeIId()); losDto.setKostenstelleIId(dto.getKostenstelleIId()); losDto.setLagerIIdZiel(dto.getLagerIIdZiel()); losDto.setMandantCNr(theClientDto.getMandant()); losDto.setNLosgroesse(dto.getNLosgroesse()); losDto.setPartnerIIdFertigungsort(dto.getPartnerIIdFertigungsort()); losDto.setStuecklisteIId(dto.getStuecklisteIId()); losDto.setTProduktionsbeginn(new java.sql.Date(tBeginndatumFuerLos.getTime())); // Produktionsende try { int laufzeit = iStandarddurchlaufzeit; if (dto.getStuecklisteIId() != null) { StuecklisteDto stuecklisteDto = getStuecklisteFac() .stuecklisteFindByPrimaryKey(dto.getStuecklisteIId(), theClientDto); if (stuecklisteDto.getNDefaultdurchlaufzeit() != null) { laufzeit = stuecklisteDto.getNDefaultdurchlaufzeit().intValue(); } } Calendar cTemp = Calendar.getInstance(); cTemp.setTimeInMillis(tBeginndatumFuerLos.getTime()); cTemp.set(Calendar.DAY_OF_MONTH, cTemp.get(Calendar.DAY_OF_MONTH) + laufzeit); losDto.setTProduktionsende(new java.sql.Date(cTemp.getTime().getTime())); context.getBusinessObject(FertigungFac.class).createLos(losDto, theClientDto); } catch (RemoteException ex1) { throwEJBExceptionLPRespectOld(ex1); } iAnzahlAngelegterLose++; } // } // catch (FinderException ex) { // throw new EJBExceptionLP(EJBExceptionLP.FEHLER, ex); // } } } return iAnzahlAngelegterLose; }
From source file:org.apache.ofbiz.entity.transaction.TransactionUtil.java
public static Timestamp getTransactionUniqueNowStamp() { Timestamp lastNowStamp = transactionLastNowStamp.get(); Timestamp nowTimestamp = UtilDateTime.nowTimestamp(); // check for an overlap with the lastNowStamp, or if the lastNowStamp is in the future because of incrementing to make each stamp unique if (lastNowStamp != null && (lastNowStamp.equals(nowTimestamp) || lastNowStamp.after(nowTimestamp))) { nowTimestamp = new Timestamp(lastNowStamp.getTime() + 1); }/*from ww w . j av a 2 s . c o m*/ transactionLastNowStamp.set(nowTimestamp); return nowTimestamp; }
From source file:org.compiere.process.ImportInventory.java
/** * Perform process./* www .ja v a2 s .c o m*/ * @return Message * @throws Exception */ protected String doIt() throws java.lang.Exception { log.info("M_Locator_ID=" + p_M_Locator_ID + ",MovementDate=" + p_MovementDate); if (p_UpdateCosting) { if (p_C_AcctSchema_ID <= 0) { throw new IllegalArgumentException("Accounting Schema required!"); } if (p_M_CostType_ID <= 0) { throw new IllegalArgumentException("Cost Type required!"); } if (p_M_CostElement_ID <= 0) { throw new IllegalArgumentException("Cost Element required!"); } if (p_AD_OrgTrx_ID < 0) { throw new IllegalArgumentException("AD_OrgTrx required!"); } acctSchema = MAcctSchema.get(getCtx(), p_C_AcctSchema_ID, get_TrxName()); } StringBuffer sql = null; int no = 0; String clientCheck = " AND AD_Client_ID=" + p_AD_Client_ID; // **** Prepare **** // Delete Old Imported if (p_DeleteOldImported) { sql = new StringBuffer("DELETE I_Inventory " + "WHERE I_IsImported='Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Delete Old Imported=" + no); } // Set Client, Org, Location, IsActive, Created/Updated sql = new StringBuffer("UPDATE I_Inventory " + "SET AD_Client_ID = COALESCE (AD_Client_ID,") .append(p_AD_Client_ID).append(")," + " AD_Org_ID = COALESCE (AD_Org_ID,").append(p_AD_Org_ID) .append("),"); if (p_MovementDate != null) sql.append(" MovementDate = COALESCE (MovementDate,").append(DB.TO_DATE(p_MovementDate)).append("),"); sql.append(" IsActive = COALESCE (IsActive, 'Y')," + " Created = COALESCE (Created, SysDate)," + " CreatedBy = COALESCE (CreatedBy, 0)," + " Updated = COALESCE (Updated, SysDate)," + " UpdatedBy = COALESCE (UpdatedBy, 0)," + " I_ErrorMsg = ' '," + " M_Warehouse_ID = NULL," // reset + " I_IsImported = 'N' " + "WHERE I_IsImported<>'Y' OR I_IsImported IS NULL"); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.info("Reset=" + no); sql = new StringBuffer("UPDATE I_Inventory o " + "SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=Invalid Org, '" + "WHERE (AD_Org_ID IS NULL OR AD_Org_ID=0" + " OR EXISTS (SELECT * FROM AD_Org oo WHERE o.AD_Org_ID=oo.AD_Org_ID AND (oo.IsSummary='Y' OR oo.IsActive='N')))" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); if (no != 0) log.warning("Invalid Org=" + no); // Location sql = new StringBuffer( "UPDATE I_Inventory i " + "SET M_Locator_ID=(SELECT MAX(M_Locator_ID) FROM M_Locator l" + " WHERE i.LocatorValue=l.Value AND i.AD_Client_ID=l.AD_Client_ID) " + "WHERE M_Locator_ID IS NULL AND LocatorValue IS NOT NULL" + " AND I_IsImported<>'Y'") .append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Locator from Value =" + no); sql = new StringBuffer( "UPDATE I_Inventory i " + "SET M_Locator_ID=(SELECT MAX(M_Locator_ID) FROM M_Locator l" + " WHERE i.X=l.X AND i.Y=l.Y AND i.Z=l.Z AND i.AD_Client_ID=l.AD_Client_ID) " + "WHERE M_Locator_ID IS NULL AND X IS NOT NULL AND Y IS NOT NULL AND Z IS NOT NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Locator from X,Y,Z =" + no); if (p_M_Locator_ID != 0) { sql = new StringBuffer("UPDATE I_Inventory " + "SET M_Locator_ID = ").append(p_M_Locator_ID) .append(" WHERE M_Locator_ID IS NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Locator from Parameter=" + no); } sql = new StringBuffer( "UPDATE I_Inventory " + "SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=No Location, ' " + "WHERE M_Locator_ID IS NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); if (no != 0) log.warning("No Location=" + no); // Set M_Warehouse_ID sql = new StringBuffer("UPDATE I_Inventory i " + "SET M_Warehouse_ID=(SELECT M_Warehouse_ID FROM M_Locator l WHERE i.M_Locator_ID=l.M_Locator_ID) " + "WHERE M_Locator_ID IS NOT NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Warehouse from Locator =" + no); sql = new StringBuffer( "UPDATE I_Inventory " + "SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=No Warehouse, ' " + "WHERE M_Warehouse_ID IS NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); if (no != 0) log.warning("No Warehouse=" + no); // Product sql = new StringBuffer( "UPDATE I_Inventory i " + "SET M_Product_ID=(SELECT MAX(M_Product_ID) FROM M_Product p" + " WHERE i.Value=p.Value AND i.AD_Client_ID=p.AD_Client_ID) " + "WHERE M_Product_ID IS NULL AND Value IS NOT NULL" + " AND I_IsImported<>'Y'") .append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Product from Value=" + no); sql = new StringBuffer( "UPDATE I_Inventory i " + "SET M_Product_ID=(SELECT MAX(M_Product_ID) FROM M_Product p" + " WHERE i.UPC=p.UPC AND i.AD_Client_ID=p.AD_Client_ID) " + "WHERE M_Product_ID IS NULL AND UPC IS NOT NULL" + " AND I_IsImported<>'Y'") .append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); log.fine("Set Product from UPC=" + no); sql = new StringBuffer( "UPDATE I_Inventory " + "SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=No Product, ' " + "WHERE M_Product_ID IS NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); if (no != 0) log.warning("No Product=" + no); // No QtyCount sql = new StringBuffer( "UPDATE I_Inventory " + "SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=No Qty Count, ' " + "WHERE QtyCount IS NULL" + " AND I_IsImported<>'Y'").append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); if (no != 0) log.warning("No QtyCount=" + no); commitEx(); if (p_IsValidateOnly) return ""; /*********************************************************************/ MInventory inventory = null; int noInsert = 0; int noInsertLine = 0; // Go through Inventory Records sql = new StringBuffer("SELECT * FROM I_Inventory " + "WHERE I_IsImported='N'").append(clientCheck) .append(" ORDER BY M_Warehouse_ID, TRUNC(MovementDate), I_Inventory_ID"); try { PreparedStatement pstmt = DB.prepareStatement(sql.toString(), get_TrxName()); ResultSet rs = pstmt.executeQuery(); // int x_M_Warehouse_ID = -1; Timestamp x_MovementDate = null; while (rs.next()) { X_I_Inventory imp = new X_I_Inventory(getCtx(), rs, get_TrxName()); Timestamp MovementDate = TimeUtil.getDay(imp.getMovementDate()); if (inventory == null || imp.getM_Warehouse_ID() != x_M_Warehouse_ID || !MovementDate.equals(x_MovementDate)) { inventory = new MInventory(getCtx(), 0, get_TrxName()); inventory.setClientOrg(imp.getAD_Client_ID(), imp.getAD_Org_ID()); inventory.setDescription("I " + imp.getM_Warehouse_ID() + " " + MovementDate); inventory.setM_Warehouse_ID(imp.getM_Warehouse_ID()); inventory.setMovementDate(MovementDate); // if (!inventory.save()) { log.log(Level.SEVERE, "Inventory not saved"); break; } x_M_Warehouse_ID = imp.getM_Warehouse_ID(); x_MovementDate = MovementDate; noInsert++; } // Line int M_AttributeSetInstance_ID = 0; if (imp.getLot() != null || imp.getSerNo() != null) { MProduct product = MProduct.get(getCtx(), imp.getM_Product_ID()); if (product.isInstanceAttribute()) { MAttributeSet mas = product.getAttributeSet(); MAttributeSetInstance masi = new MAttributeSetInstance(getCtx(), 0, mas.getM_AttributeSet_ID(), get_TrxName()); if (mas.isLot() && imp.getLot() != null) masi.setLot(imp.getLot(), imp.getM_Product_ID()); if (mas.isSerNo() && imp.getSerNo() != null) masi.setSerNo(imp.getSerNo()); //SHW if (mas.isGuaranteeDate()) { Timestamp GuaranteeDate = (Timestamp) imp.get_Value("GuaranteeDate"); masi.setGuaranteeDate(GuaranteeDate); } masi.setDescription(); masi.saveEx(); M_AttributeSetInstance_ID = masi.getM_AttributeSetInstance_ID(); } } if (imp.get_ValueAsInt("M_AttributeSetInstance_ID") != 0) M_AttributeSetInstance_ID = imp.get_ValueAsInt("M_AttributeSetInstance_ID"); MInventoryLine line = new MInventoryLine(inventory, imp.getM_Locator_ID(), imp.getM_Product_ID(), M_AttributeSetInstance_ID, imp.getQtyBook(), imp.getQtyCount()); line.saveEx(); imp.setI_IsImported(true); imp.setM_Inventory_ID(line.getM_Inventory_ID()); imp.setM_InventoryLine_ID(line.getM_InventoryLine_ID()); imp.setProcessed(true); imp.saveEx(); noInsertLine++; //@Trifon update Product cost record if Update costing is enabled if (p_UpdateCosting) { line.setCurrentCostPrice(imp.getCurrentCostPrice()); line.saveEx(); } } rs.close(); pstmt.close(); } catch (Exception e) { log.log(Level.SEVERE, sql.toString(), e); } // Set Error to indicator to not imported sql = new StringBuffer( "UPDATE I_Inventory " + "SET I_IsImported='N', Updated=SysDate " + "WHERE I_IsImported<>'Y'") .append(clientCheck); no = DB.executeUpdate(sql.toString(), get_TrxName()); addLog(0, null, new BigDecimal(no), "@Errors@"); // addLog(0, null, new BigDecimal(noInsert), "@M_Inventory_ID@: @Inserted@"); addLog(0, null, new BigDecimal(noInsertLine), "@M_InventoryLine_ID@: @Inserted@"); return ""; }
From source file:org.epics.archiverappliance.retrieval.client.MissingDataYearSpanRetrievalTest.java
/** * @param startStr - Start time of request * @param endStr - End time of request/*from ww w .j a v a 2s. c om*/ * @param expectedMinEventCount - How many events we expect at a minimum * @param firstTimeStampExpectedStr - The time stamp of the first event * @param firstTSIndex - If present, the index into generatedTimeStamps for the first event. Set to -1 if you want to skip this check. * @param msg - msg to add to log msgs and the like * @throws IOException */ private void testRetrieval(String startStr, String endStr, int expectedMinEventCount, String firstTimeStampExpectedStr, int firstTSIndex, String msg) throws IOException { Timestamp start = TimeUtils.convertFromISO8601String(startStr); Timestamp end = TimeUtils.convertFromISO8601String(endStr); Timestamp firstTimeStampExpected = null; if (firstTimeStampExpectedStr != null) { firstTimeStampExpected = TimeUtils.convertFromISO8601String(firstTimeStampExpectedStr); } if (firstTSIndex != -1) { assertTrue("Incorrect specification - Str is " + firstTimeStampExpectedStr + " and from array " + TimeUtils.convertToISO8601String(generatedTimeStamps.get(firstTSIndex)) + " for " + msg, firstTimeStampExpected.equals(generatedTimeStamps.get(firstTSIndex))); } RawDataRetrievalAsEventStream rawDataRetrieval = new RawDataRetrievalAsEventStream( "http://localhost:" + ConfigServiceForTests.RETRIEVAL_TEST_PORT + "/retrieval/data/getData.raw"); Timestamp obtainedFirstSample = null; int eventCount = 0; try (EventStream stream = rawDataRetrieval.getDataForPVS(new String[] { pvName }, start, end, null)) { if (stream != null) { for (Event e : stream) { if (obtainedFirstSample == null) { obtainedFirstSample = e.getEventTimeStamp(); } assertTrue( "Expecting sample with timestamp " + TimeUtils.convertToISO8601String( generatedTimeStamps.get(firstTSIndex + eventCount)) + " got " + TimeUtils.convertToISO8601String(e.getEventTimeStamp()) + " for " + msg, e.getEventTimeStamp().equals(generatedTimeStamps.get(firstTSIndex + eventCount))); eventCount++; } } else { logger.info("Stream is null for " + msg); } } assertTrue("Expecting at least " + expectedMinEventCount + " got " + eventCount + " for " + msg, eventCount >= expectedMinEventCount); if (firstTimeStampExpected != null) { if (obtainedFirstSample == null) { fail("Expecting at least one value for " + msg); } else { assertTrue( "Expecting first sample to be " + TimeUtils.convertToISO8601String(firstTimeStampExpected) + " got " + TimeUtils.convertToISO8601String(obtainedFirstSample) + " for " + msg, firstTimeStampExpected.equals(obtainedFirstSample)); } } else { if (obtainedFirstSample != null) { fail("Expecting no values for " + msg + " Got value from " + TimeUtils.convertToISO8601String(obtainedFirstSample)); } } }
From source file:org.etk.entity.engine.plugins.transaction.TransactionUtil.java
public static Timestamp getTransactionUniqueNowStamp() { Timestamp lastNowStamp = transactionLastNowStamp.get(); Timestamp nowTimestamp = UtilDateTime.nowTimestamp(); // check for an overlap with the lastNowStamp, or if the lastNowStamp is in // the future because of incrementing to make each stamp unique if (lastNowStamp != null && (lastNowStamp.equals(nowTimestamp) || lastNowStamp.after(nowTimestamp))) { nowTimestamp = new Timestamp(lastNowStamp.getTime() + 1); }// w ww. j a v a 2s .c om transactionLastNowStamp.set(nowTimestamp); return nowTimestamp; }
From source file:org.kuali.kfs.module.ar.document.service.impl.InvoiceRecurrenceDocumentServiceImpl.java
/** * @see org.kuali.kfs.module.ar.document.service.InvoiceRecurrenceService#isValidRecurrenceBeginDate(Date) *///from w ww . j a va 2s . c om @Override public boolean isValidRecurrenceBeginDate(Date beginDate) { boolean isSuccess = true; if (ObjectUtils.isNull(beginDate)) { return isSuccess; } Timestamp currentDate = new Timestamp(dateTimeService.getCurrentDate().getTime()); Timestamp beginDateTimestamp = new Timestamp(beginDate.getTime()); if (beginDateTimestamp.before(currentDate) || beginDateTimestamp.equals(currentDate)) { return false; } return isSuccess; }
From source file:org.kuali.kfs.module.ar.document.service.impl.InvoiceRecurrenceDocumentServiceImpl.java
/** * @see org.kuali.kfs.module.ar.document.service.InvoiceRecurrenceService#isValidRecurrenceEndDate(Date) *//* w w w .j a va 2 s. c o m*/ @Override public boolean isValidRecurrenceEndDate(Date beginDate, Date endDate) { boolean isSuccess = true; if (ObjectUtils.isNull(beginDate) || ObjectUtils.isNull(endDate)) { return isSuccess; } Timestamp beginDateTimestamp = new Timestamp(beginDate.getTime()); Timestamp endDateTimestamp = new Timestamp(endDate.getTime()); if ((ObjectUtils.isNotNull(endDateTimestamp)) && (endDateTimestamp.before(beginDateTimestamp) || endDateTimestamp.equals(beginDateTimestamp))) { return false; } return isSuccess; }
From source file:org.kuali.kfs.module.ar.document.validation.impl.InvoiceRecurrenceRule.java
/** * Validate Begin Date./*from w ww . j a va2s. co m*/ */ protected boolean validateDocumentRecurrenceBeginDate(InvoiceRecurrence newInvoiceRecurrence) { boolean success = true; if (ObjectUtils.isNull(newInvoiceRecurrence.getDocumentRecurrenceBeginDate())) { return success; } Timestamp currentDate = new Timestamp(getDateTimeService().getCurrentDate().getTime()); Timestamp beginDateTimestamp = new Timestamp( newInvoiceRecurrence.getDocumentRecurrenceBeginDate().getTime()); if (beginDateTimestamp.before(currentDate) || beginDateTimestamp.equals(currentDate)) { putFieldError(ArPropertyConstants.InvoiceRecurrenceFields.INVOICE_RECURRENCE_BEGIN_DATE, ArKeyConstants.ERROR_INVOICE_RECURRENCE_BEGIN_DATE_EARLIER_THAN_TODAY); return false; } return success; }
From source file:org.kuali.kfs.module.tem.document.service.impl.TravelDocumentServiceImpl.java
/** * @see org.kuali.kfs.module.tem.document.service.TravelDocumentService#updatePerDiemItemsFor(String, List, Integer, Timestamp, Timestamp) *///from w ww . j av a 2s . c o m @SuppressWarnings("null") @Override public void updatePerDiemItemsFor(final TravelDocument document, final List<PerDiemExpense> perDiemExpenseList, final Integer perDiemId, final Timestamp start, final Timestamp end) { final String mileageRateExpenseTypeCode = getParameterService().getParameterValueAsString( TemParameterConstants.TEM_DOCUMENT.class, TemConstants.TravelParameters.PER_DIEM_MILEAGE_RATE_EXPENSE_TYPE_CODE, KFSConstants.EMPTY_STRING); // Check for changes on trip begin and trip end. // This is necessary to prevent duplication of per diem creation due to timestamp changes. boolean datesChanged = false; if (perDiemExpenseList != null && !perDiemExpenseList.isEmpty()) { Timestamp tempStart = perDiemExpenseList.get(0).getMileageDate(); Timestamp tempEnd = perDiemExpenseList.get(0).getMileageDate(); if (perDiemExpenseList.size() > 1) { tempEnd = perDiemExpenseList.get(perDiemExpenseList.size() - 1).getMileageDate(); } if (!(tempStart.equals(start) && tempEnd.equals(end))) { // the perDiemExpenseList will be cleared once we recreate the table, but we need it for carrying over mileage rates datesChanged = true; } } List<PerDiem> perDiemList = new ArrayList<PerDiem>(); // find a valid per diem for each date. If per diem is null, make it a custom per diem. for (final Timestamp eachTimestamp : dateRange(start, end)) { PerDiem perDiem = getPerDiemService().getPerDiem(document.getPrimaryDestinationId(), eachTimestamp, document.getEffectiveDateForPerDiem(eachTimestamp)); if (perDiem == null || perDiem.getPrimaryDestinationId() == TemConstants.CUSTOM_PRIMARY_DESTINATION_ID) { perDiem = new PerDiem(); perDiem.setPrimaryDestination(new PrimaryDestination()); perDiem.getPrimaryDestination().setRegion(new TemRegion()); perDiem.getPrimaryDestination().getRegion().setTripType(new TripType()); perDiem.setPrimaryDestinationId(TemConstants.CUSTOM_PRIMARY_DESTINATION_ID); perDiem.getPrimaryDestination().getRegion() .setRegionName(document.getPrimaryDestinationCountryState()); perDiem.getPrimaryDestination().setCounty(document.getPrimaryDestinationCounty()); perDiem.getPrimaryDestination().getRegion().setTripType(document.getTripType()); perDiem.getPrimaryDestination().getRegion().setTripTypeCode(document.getTripTypeCode()); perDiem.getPrimaryDestination().setPrimaryDestinationName(document.getPrimaryDestinationName()); } perDiemList.add(perDiem); } final Map<Timestamp, PerDiemExpense> perDiemMapped = new HashMap<Timestamp, PerDiemExpense>(); int diffStartDays = 0; if (perDiemExpenseList.size() > 0 && perDiemExpenseList.get(0).getMileageDate() != null && !datesChanged) { diffStartDays = dateTimeService.dateDiff(start, perDiemExpenseList.get(0).getMileageDate(), false); } Calendar endCal = Calendar.getInstance(); if (end != null) { endCal.setTime(end); if (!datesChanged) { for (final PerDiemExpense perDiemItem : perDiemExpenseList) { if (diffStartDays != 0) { Calendar cal = Calendar.getInstance(); cal.setTime(perDiemItem.getMileageDate()); cal.add(Calendar.DATE, -diffStartDays); perDiemItem.setMileageDate(new Timestamp(cal.getTimeInMillis())); } if (perDiemItem.getMileageDate() != null) { Calendar currCal = Calendar.getInstance(); currCal.setTime(perDiemItem.getMileageDate()); if (!endCal.before(currCal)) { perDiemMapped.put(perDiemItem.getMileageDate(), perDiemItem); } } } } LOG.debug("Iterating over date range from " + start + " to " + end); int counter = 0; for (final Timestamp someDate : dateRange(start, end)) { // Check if a per diem entry exists for this date if (!perDiemMapped.containsKey(someDate)) { final boolean prorated = shouldProrate(someDate, start, end); PerDiemExpense perDiemExpense = createPerDiemItem(document, perDiemList.get(counter), someDate, prorated, mileageRateExpenseTypeCode); perDiemExpense.setDocumentNumber(document.getDocumentNumber()); perDiemMapped.put(someDate, perDiemExpense); } counter++; } } // Sort the dates and recreate the collection perDiemExpenseList.clear(); for (final Timestamp someDate : new TreeSet<Timestamp>(perDiemMapped.keySet())) { LOG.debug("Adding " + perDiemMapped.get(someDate) + " to perdiem list"); perDiemExpenseList.add(perDiemMapped.get(someDate)); } }