use of eu.ggnet.dwoss.report.ee.ReportAgent.SearchParameter in project dwoss by gg-net.
the class ReportAgentSearchIT method testSearch.
@Test
public void testSearch() throws Exception {
utx.begin();
em.joinTransaction();
ReportLine invoice1 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
ReportLine invoice2 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
ReportLine annulationInvoiceFor2 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(ANNULATION_INVOICE));
annulationInvoiceFor2.setRefurbishId(invoice2.getRefurbishId());
annulationInvoiceFor2.setUniqueUnitId(invoice2.getUniqueUnitId());
invoice2.add(annulationInvoiceFor2);
ReportLine invoice3 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
ReportLine invoice4 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
ReportLine complaintFor2 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(COMPLAINT));
complaintFor2.setRefurbishId(invoice2.getRefurbishId());
complaintFor2.setUniqueUnitId(invoice2.getUniqueUnitId());
invoice2.add(complaintFor2);
annulationInvoiceFor2.add(complaintFor2);
ReportLine differentFor2 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
differentFor2.setUniqueUnitId(invoice2.getUniqueUnitId());
invoice2.add(differentFor2);
ReportLine different2For2 = generator.makeReportLine(asList(LENOVO), D1, 5, asList(UNIT), asList(INVOICE));
different2For2.setUniqueUnitId(invoice2.getUniqueUnitId());
invoice2.add(different2For2);
em.persist(invoice1);
em.persist(invoice2);
em.persist(annulationInvoiceFor2);
em.persist(invoice3);
em.persist(invoice4);
em.persist(differentFor2);
em.persist(different2For2);
String refurbishId = invoice2.getRefurbishId();
utx.commit();
long count = agent.count(new SearchParameter(refurbishId));
assertTrue(count > 1);
List<SimpleReportLine> find = agent.findSimple(new SearchParameter(refurbishId), 0, 100);
assertEquals(count, find.size());
}
use of eu.ggnet.dwoss.report.ee.ReportAgent.SearchParameter in project dwoss by gg-net.
the class SimpleReportLineTryout method main.
public static void main(String[] args) {
ReportAgent rastub = new ReportAgent() {
List<eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine> all = Arrays.asList(eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.ACER).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.DELL).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(10).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.HP).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(23).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.AMAZON).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.EMACHINES).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.FUJITSU).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.ONESELF).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.LENOVO).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").partNo("AA.BBBBB.CC").uniqueUnitId(1000).reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.FUJITSU).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.SAMSUNG).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.SAMSUNG).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.AMAZON).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").reportingDate(new Date()).build(), eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.builder().amount(1).contractor(TradeName.ALSO).contractorReferencePrice(100).documentType(DocumentType.INVOICE).positionType(PositionType.UNIT).price(50).productName("ABCDEFG").purchasePrice(40).refurbishId("1234567").reportingDate(new Date()).build());
@Override
public <T> List<T> findAll(Class<T> entityClass) {
if (entityClass.equals(eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.class))
return (List<T>) all;
return Collections.EMPTY_LIST;
}
@Override
public <T> List<T> findAll(Class<T> entityClass, int start, int amount) {
if (entityClass.equals(eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.class)) {
if (start > all.size())
return Collections.EMPTY_LIST;
if (start < 0)
start = 0;
if (amount + start > all.size())
amount = all.size() - start;
return (List<T>) all.subList(start, amount + start);
}
return Collections.EMPTY_LIST;
}
@Override
public List<eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine> findSimple(SearchParameter search, int firstResult, int maxResults) {
return findAll(eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.class, firstResult, maxResults);
}
@Override
public long count(SearchParameter search) {
return all.size();
}
@Override
public <T> long count(Class<T> entityClass) {
if (entityClass.equals(eu.ggnet.dwoss.report.ee.entity.partial.SimpleReportLine.class))
return all.size();
return 0;
}
// <editor-fold defaultstate="collapsed" desc="Unused Methods">
@Override
public Report store(Report report, Collection<Storeable> storeables) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> findAllReportLinesReverse(int firstResult, int maxResults) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public Set<ReportLine> attachDanglingComplaints(TradeName type, Date till) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAllEager(Class<T> entityClass) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAllEager(Class<T> entityClass, int start, int amount) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findById(Class<T> entityClass, Object id) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findById(Class<T> entityClass, Object id, LockModeType lockModeType) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findByIdEager(Class<T> entityClass, Object id) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findByIdEager(Class<T> entityClass, Object id, LockModeType lockModeType) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> find(SearchParameter search, int firstResult, int maxResults) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public ViewReportResult findReportResult(long reportId) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> findReportLinesByDocumentType(DocumentType type, Date from, Date till) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public ViewReportResult prepareReport(ReportParameter p, boolean loadUnreported) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public boolean updateReportLineComment(int optLock, long reportId, String comment) {
System.out.println("Line = " + reportId + " adding comment " + comment);
return true;
}
@Override
public Reply<String> updateReportName(Report.OptimisticKey key, String name) {
System.out.println("Report = " + key + " changing name = " + name);
return Reply.success(name);
}
};
Dl.remote().add(ReportAgent.class, rastub);
Ui.exec(() -> {
UiCore.startSwing(() -> new JLabel("Main Applikation"));
Ui.build().fx().show(() -> {
RawReportView srl = new RawReportView();
srl.load(new SearchParameter());
return srl;
});
});
}
use of eu.ggnet.dwoss.report.ee.ReportAgent.SearchParameter in project dwoss by gg-net.
the class SelectExistingReportViewTryout method main.
public static void main(String[] args) {
ReportAgent rastub = new ReportAgent() {
private int counter = 0;
// <editor-fold defaultstate="collapsed" desc="Unused Methods">
@Override
public List<SimpleReportLine> findSimple(SearchParameter search, int firstResult, int maxResults) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> find(SearchParameter search, int firstResult, int maxResults) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public long count(SearchParameter search) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public ViewReportResult prepareReport(ReportParameter p, boolean loadUnreported) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> findReportLinesByDocumentType(DocumentType type, Date from, Date till) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public Report store(Report report, Collection<Storeable> storeables) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public ViewReportResult findReportResult(long reportId) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public List<ReportLine> findAllReportLinesReverse(int firstResult, int maxResults) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public Set<ReportLine> attachDanglingComplaints(TradeName type, Date till) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> long count(Class<T> entityClass) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAll(Class<T> entityClass) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAll(Class<T> entityClass, int start, int amount) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAllEager(Class<T> entityClass) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> List<T> findAllEager(Class<T> entityClass, int start, int amount) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findById(Class<T> entityClass, Object id) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findById(Class<T> entityClass, Object id, LockModeType lockModeType) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findByIdEager(Class<T> entityClass, Object id) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public <T> T findByIdEager(Class<T> entityClass, Object id, LockModeType lockModeType) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public boolean updateReportLineComment(int optLock, long reportId, String comment) {
// To change body of generated methods, choose Tools | Templates.
throw new UnsupportedOperationException("Not supported yet.");
}
// </editor-fold>
@Override
public Reply<String> updateReportName(Report.OptimisticKey key, String name) {
System.out.println("Report Name updated with " + name + " calles");
counter++;
if ((counter % 2) != 0) {
System.out.println("Counter=" + counter + " simulating Error");
return Reply.failure("Counter=" + counter + " simulating Error");
} else {
System.out.println("Counter=" + counter + " simulating Success");
return Reply.success(name);
}
}
};
Dl.remote().add(ReportAgent.class, rastub);
UiCore.startSwing(() -> new JLabel("Main Applikation"));
final Date today = new Date();
final Date enddate = new Date();
final Date startdate = new Date();
final Set<TradeName> trades = new HashSet<>();
trades.add(TradeName.HP);
trades.add(TradeName.ACER);
// build some sample Reports
List<Report> allReports = new ArrayList();
for (int i = 0; i < 8; i++) {
for (TradeName traden : trades) {
startdate.setYear(62 + i);
long sum = today.getTime() + startdate.getTime();
Date sumDate = new Date(sum);
String name = "Report: " + i + "-" + traden + "-" + sumDate.toString();
Report e = new Report(name, traden, sumDate, enddate);
allReports.add(e);
}
}
Ui.exec(() -> {
Ui.build().fx().show(() -> allReports, () -> new SelectExistingReportView());
});
}
Aggregations