package service;
import api.v1.*;
import mapper.*;
import models.*;
import models.OrderStatus;
import org.joda.time.DateTime;
import org.junit.Test;
import models.CleanableOrderModel;
import quba.models.QubaStation;
import quba.models.QubaStationProfile;
import util.InMemoryDbTest;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
public class OrderServiceTest extends InMemoryDbTest {
@Test
public void testListAll() {
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.findAll();
assertNotNull("orders null", orders);
assertEquals("orderlist", 13, orders.size());
}
@Test
public void testCreateOrder() {
OrderService orderService = new OrderService(fakeUser);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
orderService.setNow(new DateTime(sdf.parse("2015-11-07"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
Order aOrder = createOrder();
OrderModel order = orderService.createOrUpdate(aOrder);
assertNotNull("order", order);
assertEquals("met_ref", aOrder.met_ref, order.met_ref);
assertEquals("custref_contractnum", aOrder.custref_contractnum, order.custref_contractnum);
assertEquals("custref_po_calloff", aOrder.custref_po_calloff, order.custref_po_calloff);
assertEquals("custref_email", aOrder.custref_email, order.custref_email);
assertEquals("customer_name", aOrder.customer_name, order.customer_name);
assertEquals("customer_email",aOrder.customer_email,order.customer_email);
assertEquals("customer_phone",aOrder.customer_phone,order.customer_phone);
assertEquals("start_date1",aOrder.start_date1,order.start_date1);
assertEquals("start_termin",aOrder.start_termin1,order.start_termin1);
assertEquals("end_date1",aOrder.end_date1,order.end_date1);
assertEquals("end_termin",aOrder.end_termin1,order.end_termin1);
Termin[] actualTermins = OrderMapper.mapTerminsToApi(order.termins1);
assertEquals("info_for_meteorologist", aOrder.info_for_meteorologist, order.info_for_meteorologist);
assertEquals("termins length",aOrder.termins1.length, actualTermins.length);
assertEquals("termins 0 hour",aOrder.termins1[0].hour, actualTermins[0].hour);
assertEquals("termins 0 selected",aOrder.termins1[0].selected, actualTermins[0].selected);
assertEquals("termins 3 hour",aOrder.termins1[3].hour, actualTermins[3].hour);
assertEquals("termins 3 selected",aOrder.termins1[3].selected, actualTermins[3].selected);
assertEquals("other_info",aOrder.other_info, order.other_info);
assertEquals("info_for_meteorologist",aOrder.info_for_meteorologist, order.info_for_meteorologist);
assertEquals("position_name",aOrder.position_name,order.position_name);
assertNotNull("positon null", order.position);
assertEquals("position.name", aOrder.position.name, order.position.name);
assertEquals("position.latitude", aOrder.position.dec.getLatitude(), order.position.latitude,0.0001);
assertEquals("position.longitude",aOrder.position.dec.getLongitude(),order.position.longitude,0.0001);
assertNotNull("customer", order.customer);
assertTrue("customer.id > 0", order.customer.id > 0);
assertNotNull("recipients list null",order.recipients);
assertEquals("recipients size", 2,order.recipients.size());
}
@Test
public void testCreateOrderStartingSameDay() {
OrderService orderService = new OrderService(fakeUser);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
orderService.setNow(new DateTime(sdf.parse("2015-11-07"),PoseidonService.getTimeZone()).withHourOfDay(12));
} catch (ParseException e) { }
Order aOrder = new Order();
aOrder.customer_email = "test@example.com";
aOrder.customer_name = "Test";
aOrder.customer_phone = "123";
CustomerModel customerModel = new CustomerService(fakeUser).getById(1L);
Customer customer = new CustomerMapper().mapToApi(customerModel);
aOrder.customer = customer;
aOrder.custref_po_calloff = "32123";
aOrder.met_ref = "111222";
aOrder.start_date1 = orderService.getNow().toDate();
aOrder.start_termin1= 3;
aOrder.end_date1 = orderService.getNow().plusDays(7).toDate();
aOrder.end_termin1=21;
aOrder.termins1 = new Termin[8];
for (int i = 0; i < aOrder.termins1.length; i++) {
aOrder.termins1[i] = new Termin(i * 3, false);
}
aOrder.termins1[3].selected = true; // kl 9
aOrder.termins1[4].selected = true; // kl 12
aOrder.termins1[6].selected = true; // kl 18
aOrder.info_for_meteorologist = "Bla bla";
aOrder.other_info = "More bla bla";
PositionModel positionModel = new PositionService(fakeUser).getById(2L); // Gullfaks
Position position = new PositionMapper().mapToApi(positionModel);
aOrder.position = position;
aOrder.recipients = new ArrayList<>();
RecipientModel recipient1 = RecipientModel.find.byId(1L);
RecipientMapper recipientMapper = new RecipientMapper();
aOrder.recipients.add(recipientMapper.mapToApi(recipient1));
OrderModel order = orderService.createOrUpdate(aOrder);
assertNotNull("order", order);
assertEquals("met_ref", aOrder.met_ref, order.met_ref);
QubaStation station = QubaStation.findStationByName(order.position.name);
assertNotNull("Fant ikke station i quba", station);
List<QubaStationProfile> profiles = QubaStationProfile.findAllProfilesForStation(station.stationid);
assertNotNull("Fant ikke stationprofiles i quba", profiles);
assertEquals("Uventet antall stasjonsprofiler", 5,profiles.size());
}
@Test
public void testSearch(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
params.met_ref = "123";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("result size",2,searchResult.size());
}
@Test
public void testSearchNotCaseSensitive(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
params.position_name = "gull";
List<OrderModel> searchResult = service.search(params);
assertNotNull("null søkeresultat", searchResult);
assertEquals("Uventet antall ordre på posisjonen", 2, searchResult.size());
assertEquals("Gullfaks","Gullfaks",searchResult.get(0).position.name);
}
@Test
public void testSearchStatusNew(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-09-01"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.status = "new";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("Uventet antall nye bestillinger", 7, searchResult.size());
assertEquals("Uventet status på bestilling med index 0", OrderStatus.NEW,searchResult.get(0).orderStatus);
assertEquals("Uventet status på bestilling med index 1", OrderStatus.NEW,searchResult.get(1).orderStatus);
assertEquals("Uventet status på bestilling med index 2", OrderStatus.NEW,searchResult.get(2).orderStatus);
}
@Test
public void testSearchStatusActive(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-11-02"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.status = "active";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("Two results", 2, searchResult.size());
assertEquals("Status active", OrderStatus.ACTIVE,searchResult.get(0).orderStatus);
}
@Test
public void testSearchStatusExpired(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-11-02"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.status = "expired";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("", 4, searchResult.size());
assertEquals("Status expired", OrderStatus.EXPIRED,searchResult.get(0).orderStatus);
assertEquals("Status expired", OrderStatus.EXPIRED,searchResult.get(1).orderStatus);
}
@Test
public void testSearchActiveTodayOnly(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-10-14"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.status = "active";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("", 2, searchResult.size());
assertEquals("Status active", OrderStatus.ACTIVE,searchResult.get(0).orderStatus);
}
@Test
public void testSearchRecipients(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-10-14"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.recipient_email = "leifj";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("", 7, searchResult.size());
}
@Test
public void testSearchNoPosition(){
OrderService service = new OrderService(fakeUser);
OrderSearch params = new OrderSearch();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
service.setNow(new DateTime(sdf.parse("2015-10-14"),PoseidonService.getTimeZone()));
} catch (ParseException e) { }
params.met_ref = "no_pos";
List<OrderModel> searchResult = service.search(params);
assertNotNull("search result", searchResult);
assertEquals("", 1, searchResult.size());
assertNull("Posisjon er uventet ikke null", searchResult.get(0).position);
}
@Test
public void testGetByDateTermin() {
OrderService service = new OrderService(fakeUser);
DateTime date = new DateTime(2013,12,16,0,0, PoseidonService.getTimeZone());
List<OrderModel> orders = service.getByDateTermin(date, 3);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 3)", 0, orders.size());
orders = service.getByDateTermin(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 9)", 1, orders.size());
orders = service.getByDateTermin(date, 12);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 12)", 0, orders.size());
date = new DateTime(2013,12,17,0,0, PoseidonService.getTimeZone());
orders = service.getByDateTermin(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 6)", 1, orders.size());
orders = service.getByDateTermin(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 9)", 1, orders.size());
orders = service.getByDateTermin(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 18)", 1, orders.size());
date = new DateTime(2013,12,18,0,0, PoseidonService.getTimeZone());
orders = service.getByDateTermin(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 6)", 1, orders.size());
orders = service.getByDateTermin(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 9)", 1, orders.size());
orders = service.getByDateTermin(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 18)", 0, orders.size());
date = new DateTime(2013,12,19,0,0, PoseidonService.getTimeZone());
orders = service.getByDateTermin(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (after period 3, termin 6)", 0, orders.size());
orders = service.getByDateTermin(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 9)", 1, orders.size());
date = new DateTime(2013,12,20,0,0, PoseidonService.getTimeZone());
orders = service.getByDateTermin(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 9)", 1, orders.size());
}
@Test
public void testGetOrdersForStartDatePeriod1() {
DateTime date = new DateTime(2013,12,01,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForStartDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
orders = service.getOrdersForStartDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
}
@Test
public void testGetOrdersForStartDatePeriod2() {
DateTime date = new DateTime(2013,12,07,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForStartDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
orders = service.getOrdersForStartDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
}
@Test
public void testGetOrdersForStartDatePeriod3() {
DateTime date = new DateTime(2013,12,16,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForStartDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
orders = service.getOrdersForStartDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size", 0, orders.size());
orders = service.getOrdersForStartDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size", 1, orders.size());
}
@Test
public void testGetOrdersForEndDatePeriod1() {
DateTime date = new DateTime(2013,12,3,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForEndDate(date, 3);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 3)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 6)", 1, orders.size());
orders = service.getOrdersForEndDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 9)", 1, orders.size());
orders = service.getOrdersForEndDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 12)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 1, termin 18)", 0, orders.size());
}
@Test
public void testGetOrdersForEndDatePeriod2() {
DateTime date = new DateTime(2013,12,9,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForEndDate(date, 3);
assertNotNull("orders", orders);
assertEquals("result size (period 2, termin 3)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 2, termin 6) ", 1, orders.size());
orders = service.getOrdersForEndDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 2, termin 9)", 1, orders.size());
orders = service.getOrdersForEndDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size (period 2, termin 12)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 2, termin 18)", 0, orders.size());
}
@Test
public void testGetOrdersForEndDatePeriod3() {
DateTime date = new DateTime(2013,12,18,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForEndDate(date, 3);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 3)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 6) ", 1, orders.size());
orders = service.getOrdersForEndDate(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 9)", 1, orders.size());
orders = service.getOrdersForEndDate(date, 12);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 12)", 0, orders.size());
orders = service.getOrdersForEndDate(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 3, termin 18)", 0, orders.size());
}
@Test
public void testGetOrdersForDate() {
DateTime date = new DateTime(2013,12,11,0,0, PoseidonService.getTimeZone());
DateTime now = new DateTime(PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForDate(now);
System.out.println("orders: "+orders.size());
assertNotNull("orders", orders);
}
@Test
public void testGetOrdersForPeriod() {
DateTime date = new DateTime(2013,12,11,0,0, PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<OrderModel> orders = service.getOrdersForPeriod(date, 0);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 0)", 0, orders.size());
orders = service.getOrdersForPeriod(date, 3);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 3)", 0, orders.size());
orders = service.getOrdersForPeriod(date, 6);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 6)", 1, orders.size());
orders = service.getOrdersForPeriod(date, 9);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 9)", 1, orders.size());
orders = service.getOrdersForPeriod(date, 12);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 12)", 0, orders.size());
orders = service.getOrdersForPeriod(date, 15);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 15)", 0, orders.size());
orders = service.getOrdersForPeriod(date, 18);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 18)", 1, orders.size());
orders = service.getOrdersForPeriod(date, 21);
assertNotNull("orders", orders);
assertEquals("result size (period 3-1, termin 21)", 0, orders.size());
}
@Test
public void testGetDeletableQubaOrders(){
DateTime date = new DateTime(2015,12,7,0,0,PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
List<CleanableOrderModel> orders = service.getCleanableQubaOrders(date);
assertNotNull("no orders", orders);
assertTrue("cleanable orders empty",!orders.isEmpty());
assertEquals("One cleanable order",1,orders.size());
assertEquals("Posisjonsnavn","Oseberg Sør",orders.get(0).getPositionName());
}
@Test
public void testGetActiveOrdersTomorrowForQba() throws Exception {
DateTime now = new DateTime(2015,12,7,0,0,PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
service.setNow(now);
DateTime date = new DateTime(2015,12,7,12,0,PoseidonService.getTimeZone());
List<OrderModel> orders = service.getActiveOrdersTomorrowForQba(date);
assertNotNull("no active orders", orders);
assertTrue("active orders empty",!orders.isEmpty());
assertEquals("One active order",3,orders.size());
assertEquals("Posisjonsnavn","Oseberg",orders.get(0).position.name);
}
@Test
public void testSaveOrderBeforeAfterQubaSyncForNextDay(){
DateTime now = new DateTime(2016,2,26,15,2,PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
service.setNow(now);
int start_termin = 9;
DateTime start = new DateTime(2016,2,27, start_termin,0,PoseidonService.getTimeZone());
DateTime end = new DateTime(2016,3,27, 21 ,0,PoseidonService.getTimeZone());
String posisjon = "Gullfaks";
Order order = createOrder(start,end, posisjon);
order.start_termin1 = start_termin;
ProductModel offshoreByMetNo= ProductModel.findByName(PoseidonPropertyService.getProperty("order.default_productname"));
order.start_termin1 = start_termin;
order.product = new ProductMapper().mapToApi(offshoreByMetNo);
service.createOrUpdate(order);
QubaStation station = QubaStation.findStationByName(posisjon);
assertNotNull("Posisjon finnes ikke i Quba", station);
// sjekk at alle terminer for morgendagen finnes i stationprofile
for (Termin termin : order.termins1) {
if ( termin.selected) {
QubaStationProfile sp = QubaStationProfile.findStProfileByStationAndSession(station.stationid, termin.hour);
assertNotNull("StationProfile finnes ikke i Quba", sp);
}
}
}
@Test
public void testSaveOrderWithNoPositionBeforeAfterQubaSyncForNextDay(){
DateTime now = new DateTime(2016,2,26,15,2,PoseidonService.getTimeZone());
OrderService service = new OrderService(fakeUser);
service.setNow(now);
int start_termin = 9;
DateTime start = new DateTime(2016,2,27, start_termin,0,PoseidonService.getTimeZone());
DateTime end = new DateTime(2016,3,27, 21 ,0,PoseidonService.getTimeZone());
ProductModel africaProduct = ProductModel.findByName("Africa");
Order order = createOrder(start,end, null);
order.start_termin1 = start_termin;
order.product = new ProductMapper().mapToApi(africaProduct);
service.createOrUpdate(order);
assertTrue(true);
}
private Order createOrder() {
DateTime start_date1 = DateTime.now();
DateTime end_date1 = DateTime.now();
String posisjon = "Ekofisk";
return createOrder(start_date1,end_date1,posisjon);
}
private Order createOrder(DateTime start_date1, DateTime end_date1, String posisjon) {
Order aOrder = new Order();
aOrder.customer_email = "test@example.com";
aOrder.customer_name = "Test";
aOrder.customer_phone = "123";
CustomerModel customerModel = new CustomerService(fakeUser).getById(1L);
Customer customer = new CustomerMapper().mapToApi(customerModel);
aOrder.customer = customer;
aOrder.custref_po_calloff = "32123";
aOrder.met_ref = "111222";
aOrder.start_date1 = start_date1.toDate();
aOrder.start_termin1= 3;
aOrder.end_date1 = end_date1.toDate();
aOrder.end_termin1=21;
aOrder.info_for_meteorologist = "Bla bla";
aOrder.other_info = "More bla bla";
for(int i=0;i<aOrder.termins1.length;i++){
aOrder.termins1[i] = new Termin(i*3,i%3==0);
}
if ( posisjon != null ) {
PositionModel positionModel = new PositionService(fakeUser).findByName(posisjon);
Position position = new PositionMapper().mapToApi(positionModel);
aOrder.position = position;
}
aOrder.recipients = new ArrayList<>();
RecipientModel recipient1 = RecipientModel.find.byId(1L);
RecipientModel recipient2 = RecipientModel.find.byId(2L);
RecipientMapper recipientMapper = new RecipientMapper();
aOrder.recipients.add(recipientMapper.mapToApi(recipient1));
aOrder.recipients.add(recipientMapper.mapToApi(recipient2));
return aOrder;
}
}