Search in sources :

Example 1 with Result

use of eu.ggnet.dwoss.util.interactiveresult.Result in project dwoss by gg-net.

the class UnitAvailabillityTryout method main.

public static void main(String[] args) {
    Dl.remote().add(UnitOverseer.class, new UnitOverseer() {

        private Map<String, Tuple2<UnitShard, String>> data = new HashMap<>();

        {
            data.put("1", new Tuple2<>(new UnitShard("1", 1, "SopoNr.: 1", Boolean.TRUE, 1), "Details zu Unit 1"));
            data.put("2", new Tuple2<>(new UnitShard("2", 2, "SopoNr.: 2", Boolean.FALSE, 1), "Details zu Unit 2"));
            data.put("3", new Tuple2<>(new UnitShard("3", 3, "SopoNr.: 3", Boolean.TRUE, 1), "Details zu Unit 3"));
            data.put("4", new Tuple2<>(new UnitShard("4", 4, "SopoNr.: 4", Boolean.FALSE, 1), "Details zu Unit 4"));
            data.put("5", new Tuple2<>(new UnitShard("5", 5, "SopoNr.: 5 exitiert nicht", null, null), "Existiert Nicht"));
            data.put("6", new Tuple2<>(new UnitShard("6", 6, "SopoNr.: 6", Boolean.FALSE, null), "Details zu Unit 6"));
        }

        @Override
        public String toDetailedHtml(String refurbishId, String username) {
            if (!data.containsKey(refurbishId))
                return refurbishId + " existiert nicht";
            return data.get(refurbishId)._2;
        }

        @Override
        public UnitShard find(String refurbishId) {
            if (!data.containsKey(refurbishId))
                return new UnitShard(refurbishId, 0, "SopoNr.: " + refurbishId + " exitiert nicht", null, null);
            return data.get(refurbishId)._1;
        }

        @Override
        public boolean isAvailable(String refurbishId) {
            // To change body of generated methods, choose Tools | Templates.
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public void lockStockUnit(long dossierId, String refurbishedId) throws IllegalStateException {
            // To change body of generated methods, choose Tools | Templates.
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public Result<List<Position>> createUnitPosition(String refurbishId, long documentId) throws UserInfoException {
            // To change body of generated methods, choose Tools | Templates.
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public String toDetailedHtml(int uniqueUnitId, String username) {
            // To change body of generated methods, choose Tools | Templates.
            throw new UnsupportedOperationException("Not supported yet.");
        }
    });
    Ui.exec(() -> {
        UiCore.startSwing(() -> new JLabel("Main Application"));
        Ui.build().swing().show(() -> new UnitAvailabilityViewCask());
    });
}
Also used : UnitAvailabilityViewCask(eu.ggnet.dwoss.redtapext.ui.cap.UnitAvailabilityViewCask) UnitOverseer(eu.ggnet.dwoss.redtapext.ee.UnitOverseer) Position(eu.ggnet.dwoss.redtape.ee.entity.Position) UnitShard(eu.ggnet.dwoss.uniqueunit.api.UnitShard) JLabel(javax.swing.JLabel) Result(eu.ggnet.dwoss.util.interactiveresult.Result) Tuple2(eu.ggnet.dwoss.util.Tuple2) UserInfoException(eu.ggnet.dwoss.util.UserInfoException)

Example 2 with Result

use of eu.ggnet.dwoss.util.interactiveresult.Result in project dwoss by gg-net.

the class UnitOverseerBean method createUnitPosition.

/**
 * Find a Unit by its refurbished id and returns it.
 * <p/>
 * This method will throw a UserInfoException describing, why the unit is not available.
 * <p/>
 * @param refurbishId The refurbished id of the UniqueUnit
 * @param documentId  the document as reference for tax and more.
 * @return a Unit by its refurbished id or null if nothing is found of the unit is not available.
 * @throws UserInfoException if the refurbishId is not available
 */
@Override
public Result<List<Position>> createUnitPosition(String refurbishId, long documentId) throws UserInfoException {
    UnitShard us = internalFind(refurbishId);
    if (!us.isAvailable())
        throwNotAvailable(refurbishId, us);
    Document doc = new DocumentEao(redTapeEm).findById(documentId);
    UniqueUnit uu = new UniqueUnitEao(uuEm).findByIdentifier(Identifier.REFURBISHED_ID, refurbishId);
    Position p = Position.builder().amount(1).price(0.).serialNumber(uu.getSerial()).refurbishedId(uu.getRefurbishId()).bookingAccount(postLedger.get(PositionType.UNIT, doc.getTaxType()).orElse(null)).type(PositionType.UNIT).tax(doc.getTaxType().getTax()).uniqueUnitId(uu.getId()).uniqueUnitProductId(uu.getProduct().getId()).name(UniqueUnitFormater.toPositionName(uu)).description(UniqueUnitFormater.toDetailedDiscriptionLine(uu)).build();
    // return Result
    if (redTapeHook.isUnsatisfied())
        return new Result(Arrays.asList(p));
    return redTapeHook.get().elaborateUnitPosition(p, documentId);
}
Also used : UniqueUnit(eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit) UnitShard(eu.ggnet.dwoss.uniqueunit.api.UnitShard) UniqueUnitEao(eu.ggnet.dwoss.uniqueunit.ee.eao.UniqueUnitEao) Result(eu.ggnet.dwoss.util.interactiveresult.Result)

Aggregations

UnitShard (eu.ggnet.dwoss.uniqueunit.api.UnitShard)2 Result (eu.ggnet.dwoss.util.interactiveresult.Result)2 Position (eu.ggnet.dwoss.redtape.ee.entity.Position)1 UnitOverseer (eu.ggnet.dwoss.redtapext.ee.UnitOverseer)1 UnitAvailabilityViewCask (eu.ggnet.dwoss.redtapext.ui.cap.UnitAvailabilityViewCask)1 UniqueUnitEao (eu.ggnet.dwoss.uniqueunit.ee.eao.UniqueUnitEao)1 UniqueUnit (eu.ggnet.dwoss.uniqueunit.ee.entity.UniqueUnit)1 Tuple2 (eu.ggnet.dwoss.util.Tuple2)1 UserInfoException (eu.ggnet.dwoss.util.UserInfoException)1 JLabel (javax.swing.JLabel)1