Commit 4ee38dd4 authored by xenia's avatar xenia
Browse files

default type_kind is set, test updated

parent 7632222e
Showing with 50 additions and 33 deletions
+50 -33
......@@ -6,12 +6,12 @@ package com.cdek.transport.ek4;
public interface WarehouseConstants {
/**
* Тип транспорта по-умолчанию
* Тип транспорта не задан. Разрешен по-умолчанию для описей типа type_in
*/
String TRANSPORT_KIND_DEFAULT = "3";
String TRANSPORT_KIND_NONE = "3";
/**
* Тип транспорта - земля.
* Тип транспорта - земля. Разрешен по-умолчанию для описей типа type_out
*/
String TRANSPORT_KIND_GROUND = "4";
......
package com.cdek.warehouse.services.sked.impl;
import com.cdek.transport.ek4.WarehouseConstants;
import com.cdek.transport.model.document.Document;
import com.cdek.transport.model.sked.Sked;
import com.cdek.transport.model.sked.SkedToDocumentMap;
......@@ -69,25 +70,17 @@ public abstract class SkedBaseDocumentMapper {
return userService.getEmployeeCodeByUserCode(userCode);
}
/*
* sked.setExternalId(null);
sked.setOpisNumber(null);
sked.setDocumentType(null);
sked.setDocumentUuid(null);
sked.setDateCreated(null);
sked.setDateUpdated(null);
sked.setDate(null);
sked.setDateClosed(null);
sked.setOperType(null);
sked.setAimType(null);
sked.setTransportKind(null);
sked.setWarehouse(null);
sked.setBranchFrom(null);
sked.setBranchTo(null);
sked.setBranch(null);
sked.setEmployeeOut(null);
sked.setEmployeeIn(null);
sked.setDescription (null);
sked.setDeleted(null);
sked.setUser(null);*/
/**
* По типу описи проставляет вид транспорта по умолчанию {@link Sked#transportKind}
* Для {@link Sked#TYPE_IN} устанавливает {@link WarehouseConstants#TRANSPORT_KIND_NONE}
* Для {@link Sked#TYPE_OUT} устанавливает {@link WarehouseConstants#TRANSPORT_KIND_GROUND}
* @param sked
*/
protected void setDefaultTransportKind(Sked sked) {
if(sked.getOperType() == Sked.TYPE_IN){
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_NONE);
} else if(sked.getOperType() == Sked.TYPE_OUT){
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_GROUND);
}
}
}
package com.cdek.warehouse.services.sked.impl;
import com.cdek.transport.ek4.WarehouseConstants;
import com.cdek.transport.model.document.Acceptance;
import com.cdek.transport.model.document.Document;
import com.cdek.transport.model.sked.Sked;
......@@ -30,7 +31,10 @@ public class SkedFromAcceptanceFiller extends SkedBaseDocumentMapper implements
private void setAcceptanceFields(final Sked sked, final Acceptance acceptance) {
sked.setBranchFrom(acceptance.getBranchFrom());
sked.setBranchTo(acceptance.getBranchTo());
setDefaultTransportKind(sked);
setEmployeeInAndOut(sked, acceptance.getUserCode());
}
}
......@@ -30,7 +30,7 @@ public class SkedFromCorrectionIncomeFiller extends SkedBaseDocumentMapper imple
private void setCorrectionIncomeFields(final Sked sked, final CorrectionIncome correctionIncome) {
setBranchFromAndToAsCurrent(sked, correctionIncome);
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_DEFAULT);
setDefaultTransportKind(sked);
setEmployeeInAndOut(sked, correctionIncome.getUserCode());
}
......
......@@ -31,7 +31,7 @@ public class SkedFromCorrectionShipmentFiller extends SkedBaseDocumentMapper imp
private void setCorrectionShipmentFields(final Sked sked, final CorrectionShipment correctionShipment) {
sked.setBranchTo(correctionShipment.getBranchTo());
sked.setBranchFrom(correctionShipment.getBranchFrom());
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_DEFAULT);
setDefaultTransportKind(sked);
setEmployeeInAndOut(sked, correctionShipment.getUserCode());
}
}
......@@ -25,8 +25,7 @@ public class SkedFromDeliveryFiller extends SkedBaseDocumentMapper implements Sk
private void setFields(final Sked sked, final Delivery delivery) {
setBaseFields(sked, delivery);
//для данного типа умолчательный "3" не принимается
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_GROUND);
setDefaultTransportKind(sked);
sked.setEmployeeOut(delivery.getEmployeePassed());
sked.setEmployeeIn(delivery.getEmployeeAccepted());
setBranchFromAndToAsCurrent(sked, delivery);
......
......@@ -32,6 +32,7 @@ public class SkedFromPrimeIncomeFiller extends SkedBaseDocumentMapper implements
setBranchFromAndToAsCurrent(sked, primeIncome);
sked.setEmployeeOut(primeIncome.getEmployeeDeliver());
sked.setEmployeeIn(primeIncome.getEmployeeAccept());
setDefaultTransportKind(sked);
}
......
......@@ -25,7 +25,7 @@ public class SkedFromReturnUndeliveredFiller extends SkedBaseDocumentMapper impl
private void setFields(final Sked sked, final ReturnUndelivered returnUndelivered) {
setBaseFields(sked, returnUndelivered);
sked.setTransportKind(WarehouseConstants.TRANSPORT_KIND_DEFAULT);
setDefaultTransportKind(sked);
sked.setEmployeeOut(returnUndelivered.getEmployeePassed());
sked.setEmployeeIn(returnUndelivered.getEmployeeAccepted());
setBranchFromAndToAsCurrent(sked, returnUndelivered);
......
......@@ -24,7 +24,7 @@ public class SkedFromSorterIncomeFiller extends SkedBaseDocumentMapper implement
private void setFields(final Sked sked, final SorterIncome sorterIncome) {
setBaseFields(sked, sorterIncome);
//sked.setTransportKind(); //ПУСТО
setDefaultTransportKind(sked);
sked.setEmployeeOut(sorterIncome.getEmployeeDeliver());
sked.setEmployeeIn(sorterIncome.getEmployeeAccept());
setBranchFromAndToAsCurrent(sked, sorterIncome);
......
......@@ -25,7 +25,6 @@ import com.cdek.warehouse.services.document.DocumentService;
import com.cdek.warehouse.services.sync.ek4.SyncDocumentResult;
import com.cdek.warehouse.services.sync.ek4.impl.model.SkedTask;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -254,7 +253,7 @@ public class SyncSkedDispatcher extends BaseSyncOperationDispatcher {
request.document.setAimTypeId(skedClone.getAimType());
if (skedClone.getTransportKind() == null) {
//todo FIXME удалить после фикса ЕК4. в настоящий момент ЕК4 не принимает null и ожидает 3
request.document.setTransportKind(createCodeName(WarehouseConstants.TRANSPORT_KIND_DEFAULT));
request.document.setTransportKind(createCodeName(WarehouseConstants.TRANSPORT_KIND_NONE));
} else {
request.document.setTransportKind(createCodeName(skedClone.getTransportKind()));
}
......
package com.cdek.warehouse.services.unit;
import com.cdek.transport.ek4.WarehouseConstants;
import com.cdek.transport.model.document.Consolidation;
import com.cdek.transport.model.document.Delivery;
import com.cdek.transport.model.document.DocumentType;
import com.cdek.transport.model.document.PrimeIncome;
import com.cdek.transport.model.sked.Sked;
......@@ -23,6 +25,7 @@ import java.util.Arrays;
import java.util.List;
import static junit.framework.TestCase.assertNull;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.when;
......@@ -58,7 +61,8 @@ public class SkedCreatorTest extends BaseUnitTest {
PrimeIncome primeIncome = getPrimeIncome();
Sked sked = skedCreator.createSked(primeIncome);
assertNotNull(sked);
checkNullness(sked, "externalId", "opisNumber", "transportKind", "dateCreated", "dateUpdated", "uuid");
assertEquals(WarehouseConstants.TRANSPORT_KIND_NONE, sked.getTransportKind());
checkNullness(sked, "externalId", "opisNumber", "dateCreated", "dateUpdated", "uuid");
}
@Test
......@@ -66,9 +70,20 @@ public class SkedCreatorTest extends BaseUnitTest {
Consolidation consolidation = getConsolidation();
Sked sked = skedCreator.createSked(consolidation);
assertNotNull(sked);
assertEquals(consolidation.getTransportKind(), sked.getTransportKind());
checkNullness(sked, "externalId", "opisNumber", "dateCreated", "dateUpdated", "uuid");
}
@Test
public void createSkedFromDelivery() {
Delivery delivery = getDelivery();
Sked sked = skedCreator.createSked(delivery);
assertNotNull(sked);
assertEquals(Sked.TYPE_OUT, sked.getOperType().intValue());
assertEquals(WarehouseConstants.TRANSPORT_KIND_GROUND, sked.getTransportKind());
checkNullness(sked, "externalId", "opisNumber", "dateCreated", "dateUpdated", "uuid");
}
private void checkNullness(Object obj, String... nullFields) {
List<String> fields = new ArrayList<String>(Arrays.asList(nullFields));
......@@ -101,4 +116,10 @@ public class SkedCreatorTest extends BaseUnitTest {
return document;
}
private Delivery getDelivery(){
Delivery document = enhancedRandom.nextObject(Delivery.class);
forceFillingSuper(document, "type", DocumentType.DELIVERY);
return document;
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment