View Javadoc
1   package com.srv4pos.server.api.sale;
2   
3   import com.srv4pos.server.api.ServiceFactory;
4   import com.srv4pos.server.api.activation.ActivationServiceSample;
5   import com.srv4pos.server.api.day.DayInfo;
6   import com.srv4pos.server.api.day.DayService;
7   import com.srv4pos.server.api.infrastructure.credentials.Credentials;
8   import com.srv4pos.server.api.infrastructure.http.Transport;
9   import com.srv4pos.server.api.posplus.PrintType;
10  import com.srv4pos.server.api.seller.SellerService;
11  
12  import java.net.URL;
13  import java.util.Collections;
14  import java.util.Date;
15  
16  /**
17   * <p>User: Kirill, Date: 12.09.13 11:00</p>.
18   */
19  public class SaleServiceSample {
20      private final SaleService saleService;
21      private final SellerService sellerService;
22      private final Credentials credentials;
23      private final DayService dayService;
24  
25      public SaleServiceSample(URL url, Credentials credentials, Transport transport) {
26          ServiceFactory serviceFactory = new ServiceFactory(url, credentials, transport);
27          saleService = serviceFactory.getSaleService();
28          dayService = serviceFactory.getDayService();
29          sellerService = serviceFactory.getSellerService();
30          this.credentials = credentials;
31      }
32  
33      public void test() {
34          int version = sellerService.getThisVersion().getVersion();
35  
36          DayInfo dayInfo = new DayInfo();
37  
38          dayInfo.setCashAtClose(100);
39          dayInfo.setCash(110);
40          dayInfo.setCashRegisterName("Cash22");
41          dayInfo.setClose(null);
42          dayInfo.setModified(new Date(1000000000001L));
43          dayInfo.setGrandTotal(120);
44          dayInfo.setOpen(new Date(1000000000002L));
45          dayInfo.setOpened(true);
46          dayInfo.setReportPrinted(false);
47          dayInfo.setDayNumber(10);
48          dayInfo.setGrandTotalRefund(130);
49  
50          String dayIdentifier = dayService.create(version, dayInfo).getIdentifier();
51  
52          dayInfo.setIdentifier(dayIdentifier);
53          dayInfo.setCash(200);
54  
55          dayService.put(version, dayInfo);
56  
57          SaleInfo saleInfo = new SaleInfo();
58          saleInfo.setAbsoluteDiscount(0);
59          saleInfo.setRelativeDiscount(1000);
60          saleInfo.setDay(dayIdentifier);
61          saleInfo.setDiscount(3700);
62          saleInfo.setClose(new Date());
63          saleInfo.setRefund(true);
64          saleInfo.setVat(6660);
65          saleInfo.setRefundFor(123);
66          saleInfo.setBrutto(33300);
67          saleInfo.setVanillaBrutto(37000);
68          saleInfo.setControlUnitId(ActivationServiceSample.CONTROL_UNIT_SERIAL_NUMBER);
69  
70          saleInfo.setSaleState(SaleState.Open);
71  
72          SaleProductInfo saleProductInfo = new SaleProductInfo();
73          saleProductInfo.setAbsoluteDiscount(500);
74          saleProductInfo.setRelativeDiscount(0);
75          saleProductInfo.setDiscount(500);
76          saleProductInfo.setDeltaUnit(true);
77          saleProductInfo.setDelta(300);
78          saleProductInfo.setNetto(29600);
79          saleProductInfo.setVat(7400);
80          saleProductInfo.setBrutto(37000);
81          saleProductInfo.setEffectiveBrutto(33300);
82          saleProductInfo.setCreated(new Date());
83          saleProductInfo.setVanillaBrutto(37500);
84          saleProductInfo.setProductBrutto(12500);
85          saleProductInfo.setVatRate(2500);
86          saleProductInfo.setProductIdentifier("PRODUCT1");
87  
88          PrintInfo printInfo = new PrintInfo();
89          printInfo.setReceiptNumber(0);
90          printInfo.setPrintType(PrintType.Proforma);
91          printInfo.setControlNumber("123");
92          printInfo.setDeliveryType(DeliveryType.Display);
93  
94          PaymentInfo paymentInfo = new PaymentInfo();
95          paymentInfo.setPaymentType(PaymentType.Card);
96          paymentInfo.setPaymentState(PaymentState.PENDING);
97          paymentInfo.setAmount(10);
98  
99          VatRateSumInfo vatRateSumInfo = new VatRateSumInfo();
100         vatRateSumInfo.setBrutto(33300);
101         vatRateSumInfo.setNetto(26640);
102         vatRateSumInfo.setVat(6660);
103         vatRateSumInfo.setVanillaBrutto(37000);
104         vatRateSumInfo.setVanillaNetto(29600);
105         vatRateSumInfo.setVanillaVat(7400);
106         vatRateSumInfo.setVatRate(2500);
107 
108         saleInfo.setSaleProducts(Collections.singletonList(saleProductInfo));
109         saleInfo.setPrints(Collections.singletonList(printInfo));
110         saleInfo.setPayments(Collections.singletonList(paymentInfo));
111         saleInfo.setVatRateSums(Collections.singletonList(vatRateSumInfo));
112 
113         saleInfo.setSellerIdentifier(credentials.getSellerId());
114 
115         saleService.create(version, saleInfo);
116     }
117 }