Search in sources :

Example 66 with UniqueUnit

use of eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit in project dwoss by gg-net.

the class UniqueUnitEaoIT method testFindByProductPartNo.

@Test
public void testFindByProductPartNo() throws Exception {
    utx.begin();
    em.joinTransaction();
    UniqueUnitEao unitEao = new UniqueUnitEao(em);
    List<UniqueUnit> uus = unitEao.findByProductPartNo(PARTNO_1);
    assertFalse(uus.isEmpty());
    assertEquals(2, uus.size());
    utx.commit();
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit) UniqueUnitEao(eu.ggnet.dwoss.uniqueunit.ee.eao.UniqueUnitEao)

Example 67 with UniqueUnit

use of eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit in project dwoss by gg-net.

the class UniqueUnitEaoIT method setUp.

@Before
public void setUp() throws Exception {
    utx.begin();
    em.joinTransaction();
    product = new Product(ProductGroup.MONITOR, TradeName.ACER, PARTNO_1, "The Notebook");
    em.persist(product);
    Product p2 = new Product(ProductGroup.MONITOR, TradeName.ACER, PARTNO_2, "The Notebook");
    em.persist(p2);
    Product p3 = new Product(ProductGroup.MONITOR, TradeName.ACER, PARTNO_3, "The Notebook");
    em.persist(p3);
    unit_62325 = new UniqueUnit();
    unit_62325.setIdentifier(UniqueUnit.Identifier.REFURBISHED_ID, REFURBISHID_62325);
    unit_62325.setContractor(TradeName.AMAZON);
    unit_62325.setCondition(UniqueUnit.Condition.ALMOST_NEW);
    unit_62325.setProduct(product);
    unit_62325.setInputDate(_2012_12_02_);
    em.persist(unit_62325);
    UniqueUnit u2 = new UniqueUnit();
    u2.setIdentifier(UniqueUnit.Identifier.REFURBISHED_ID, "99999");
    u2.setContractor(TradeName.ACER);
    u2.setCondition(UniqueUnit.Condition.ALMOST_NEW);
    u2.setInputDate(_2012_12_10_);
    u2.setProduct(product);
    em.persist(u2);
    UniqueUnit u3 = new UniqueUnit();
    u3.setIdentifier(UniqueUnit.Identifier.REFURBISHED_ID, "99998");
    u3.setContractor(TradeName.ACER);
    u3.setCondition(UniqueUnit.Condition.AS_NEW);
    u3.setProduct(p2);
    u3.setInputDate(_2012_12_10_);
    em.persist(u3);
    UniqueUnit u4 = new UniqueUnit();
    u4.setIdentifier(UniqueUnit.Identifier.REFURBISHED_ID, "99997");
    u4.setContractor(TradeName.ACER);
    u4.setCondition(UniqueUnit.Condition.AS_NEW);
    u4.setProduct(p3);
    u4.setInputDate(_2012_12_10_);
    em.persist(u4);
    UniqueUnit u5 = new UniqueUnit();
    u5.setIdentifier(UniqueUnit.Identifier.REFURBISHED_ID, "99996");
    u5.setContractor(TradeName.ACER);
    u5.setCondition(UniqueUnit.Condition.AS_NEW);
    u5.setProduct(p3);
    u5.setInputDate(_2012_12_20_);
    em.persist(u5);
    utx.commit();
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit) Product(eu.ggnet.dwoss.uniqueunit.ee.entity.Product)

Example 68 with UniqueUnit

use of eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit in project dwoss by gg-net.

the class UnitHistoryListenerOperationIT method testEvent.

@Test
public void testEvent() throws InterruptedException {
    String MSG = "Eine Nachricht";
    int id1 = helper.createSampleUnit();
    helper.send(id1, MSG, "Junit");
    Thread.sleep(1000);
    UniqueUnit u1 = uniqueUnitAgent.findByIdEager(UniqueUnit.class, id1);
    assertNotNull(u1);
    assertEquals("Should have three history Elements, contains " + u1.getHistory(), 3, u1.getHistory().size());
    assertTrue("Should contain '" + MSG + "', but has '" + u1 + "'", hasMessage(u1, MSG));
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit) Test(org.junit.Test)

Example 69 with UniqueUnit

use of eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit in project dwoss by gg-net.

the class UnitListenerOperation method changeChannel.

/**
 * Listens for SalesChannelChanges.
 *
 * @param change the change
 */
public void changeChannel(@Observes SalesChannelChange change) {
    L.debug("Observed: " + change);
    UniqueUnit uu = em.find(UniqueUnit.class, change.getUniqueUnitId());
    if (uu != null)
        uu.setSalesChannel(change.getNewChannel());
    else
        L.warn("No UniqueUnit for Event " + change);
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit)

Example 70 with UniqueUnit

use of eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit in project dwoss by gg-net.

the class PersistenceIT method testPersistence.

@Test
public void testPersistence() throws Exception {
    utx.begin();
    em.joinTransaction();
    Date now = new Date();
    CategoryProduct cp1 = new CategoryProduct();
    cp1.setName("Mixup");
    cp1.setPrice(PriceType.SALE, 100.0, "The Salepreice");
    cp1.setSalesChannel(SalesChannel.RETAILER);
    Product p1 = new Product(ProductGroup.DESKTOP, TradeName.ACER, "LX.11111.222", "Verition Stein");
    p1.setDescription("Ein Tolles Gerät");
    p1.setPrice(PriceType.MANUFACTURER_COST, 200.0, "JUnit - Testcase");
    p1.setPrice(PriceType.CONTRACTOR_REFERENCE, 240.0, "JUnit - Testcase");
    p1.addFlag(Product.Flag.PRICE_FIXED);
    p1.setCategoryProduct(cp1);
    Product p2 = new Product(ProductGroup.COMMENTARY, TradeName.DELL, "DL", "Dienstleistung 1h");
    p2.setDescription("Eine Dienstleistungs Stunde");
    p2.setCategoryProduct(cp1);
    UnitCollection uc1 = new UnitCollection();
    uc1.setProduct(p1);
    uc1.setPartNoExtension("demo1");
    uc1.setNameExtension("Demo1");
    UnitCollection uc2 = new UnitCollection();
    uc2.setProduct(p1);
    uc2.setPartNoExtension("demo2");
    uc2.setNameExtension("Demo2");
    UniqueUnit unit1 = new UniqueUnit(p1, now, "");
    unit1.setIdentifier(SERIAL, "ROFFFLAASSS");
    unit1.setPrice(PriceType.SALE, 125, "JUnit - Testcase");
    unit1.addFlag(UniqueUnit.Flag.PRICE_FIXED);
    unit1.setContractor(TradeName.ONESELF);
    unit1.setComment("Ein Commentar");
    unit1.setCondition(UniqueUnit.Condition.AS_NEW);
    unit1.setUnitCollection(uc1);
    UniqueUnit unit2 = new UniqueUnit(p1, now, "lila");
    unit2.addHistory("Aufgenommen als Sopo 332");
    unit2.addHistory("Zerlegt weil kaput");
    unit2.setIdentifier(SERIAL, "DBCFDASFDSADEF");
    unit2.setContractor(TradeName.ONESELF);
    unit2.setComment("Auch ein Commentar");
    unit2.setCondition(UniqueUnit.Condition.AS_NEW);
    unit2.setUnitCollection(uc2);
    UniqueUnit unit3 = new UniqueUnit();
    unit3.setProduct(p1);
    unit3.setMfgDate(now);
    unit3.setIdentifier(SERIAL, "ABCDEFJKHKZHJI");
    unit3.setContractor(TradeName.ONESELF);
    unit3.setCondition(UniqueUnit.Condition.AS_NEW);
    unit3.setUnitCollection(uc2);
    UniqueUnit unit4 = new UniqueUnit(p2, now, "");
    unit4.setIdentifier(SERIAL, "ABCDEFFEQGSDFD");
    unit4.setContractor(TradeName.ONESELF);
    unit4.setCondition(UniqueUnit.Condition.USED);
    unit4.setComment("Ein sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr langer Kommentar");
    unit4.setInternalComment("Ein sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr" + " sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr langer Kommentar");
    em.persist(cp1);
    em.persist(p1);
    em.persist(p2);
    em.persist(uc1);
    em.persist(uc2);
    em.persist(unit1);
    em.persist(unit2);
    em.persist(unit3);
    em.persist(unit4);
    utx.commit();
    List<CategoryProduct> allCp = agent.findAll(CategoryProduct.class);
    assertThat(allCp).as("findAllCategoryProducts").isNotEmpty().hasSize(1).contains(cp1);
    CategoryProduct getCp1 = allCp.get(0);
    assertThat(getCp1.getSalesChannel()).as("saleschanel of categoryproduct").isEqualTo(SalesChannel.RETAILER);
    assertThat(getCp1.hasPrice(PriceType.SALE)).as("price sale is set on categoryproduct").isTrue();
    assertThat(agent.findAll(UniqueUnit.class)).as("findAllUniqueUnits").isNotNull().isNotEmpty().hasSize(4);
    UniqueUnit unit3_1 = agent.findById(UniqueUnit.class, unit3.getId());
    assertThat(unit3_1).as("Expected unit3").isNotNull().satisfies(u -> {
        assertThat(u.getComment()).isNull();
        assertThat(u.getInternalComment()).isNull();
        assertThat(u.getUnitCollection()).isEqualTo(uc2);
    });
    UniqueUnit unit4_1 = agent.findById(UniqueUnit.class, unit4.getId());
    assertThat(unit4_1).as("Expected unit4").isNotNull();
    assertThat(unit4_1.getComment()).as("Comment of unit4").isNotBlank();
    assertThat(unit4_1.getInternalComment()).as("InternalComment of unit4").isNotBlank();
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit) CategoryProduct(eu.ggnet.dwoss.uniqueunit.ee.entity.CategoryProduct) UnitCollection(eu.ggnet.dwoss.uniqueunit.ee.entity.UnitCollection) CategoryProduct(eu.ggnet.dwoss.uniqueunit.ee.entity.CategoryProduct) Product(eu.ggnet.dwoss.uniqueunit.ee.entity.Product) Date(java.util.Date) Test(org.junit.Test)

Aggregations

UniqueUnit (eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit)88 UniqueUnitEao (eu.ggnet.dwoss.uniqueunit.ee.eao.UniqueUnitEao)38 Product (eu.ggnet.dwoss.uniqueunit.ee.entity.Product)31 StockUnit (eu.ggnet.dwoss.stock.ee.entity.StockUnit)27 Test (org.junit.Test)21 SubMonitor (eu.ggnet.dwoss.progress.SubMonitor)20 StockUnitEao (eu.ggnet.dwoss.stock.ee.eao.StockUnitEao)16 LogicTransaction (eu.ggnet.dwoss.stock.ee.entity.LogicTransaction)13 Document (eu.ggnet.dwoss.redtape.ee.entity.Document)8 StockTransaction (eu.ggnet.dwoss.stock.ee.entity.StockTransaction)8 UnitCollection (eu.ggnet.dwoss.uniqueunit.ee.entity.UnitCollection)7 java.util (java.util)7 Dossier (eu.ggnet.dwoss.redtape.ee.entity.Dossier)6 Position (eu.ggnet.dwoss.redtape.ee.entity.Position)6 ProductSpec (eu.ggnet.dwoss.spec.ee.entity.ProductSpec)6 Stock (eu.ggnet.dwoss.stock.ee.entity.Stock)6 UniqueUnitAgent (eu.ggnet.dwoss.uniqueunit.ee.UniqueUnitAgent)6 FileJacket (eu.ggnet.dwoss.util.FileJacket)6 DocumentType (eu.ggnet.dwoss.rules.DocumentType)5 Collectors (java.util.stream.Collectors)5