backend-api http://jira.mfd.msk:8088/browse/CLS-648
This commit is contained in:
parent
4a4c4f94db
commit
5eff6962fe
6 changed files with 87 additions and 3 deletions
|
|
@ -0,0 +1,43 @@
|
|||
package ru.spcex.clearing.backendapi.controller.queue.misc;
|
||||
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.annotations.ApiResponse;
|
||||
import io.swagger.annotations.ApiResponses;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import ru.clearing.classes.statics.data.misc.SCrossRate;
|
||||
import ru.spcex.clearing.backendapi.controller.queue.AbstractQueueController;
|
||||
import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllResponse;
|
||||
import ru.spcex.clearing.backendapi.service.IOperator;
|
||||
import ru.spcex.clearing.backendapi.service.IStateLoader;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/cross-rate")
|
||||
public class SCrossRateController extends AbstractQueueController {
|
||||
private final IStateLoader stateLoader;
|
||||
|
||||
@Autowired
|
||||
public SCrossRateController(IOperator operator, IStateLoader stateLoader) {
|
||||
super(operator);
|
||||
this.stateLoader = stateLoader;
|
||||
}
|
||||
|
||||
@ApiOperation(value = "get all cross-rate's.")
|
||||
@ApiResponses(value = {@ApiResponse(code = 200, message = "OK", response = CommonGetAllResponse.class)})
|
||||
@RequestMapping(method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public CommonGetAllResponse getAll() {
|
||||
Collection<Map<String, Object>> all = stateLoader.getAllMetaTransform(
|
||||
IMDGDistributedNames.Map_SCrossRate, SCrossRate.class);
|
||||
CommonGetAllResponse response = new CommonGetAllResponse();
|
||||
response.fromEntity(all);
|
||||
return response;
|
||||
}
|
||||
}
|
||||
|
|
@ -9419,7 +9419,7 @@
|
|||
|
||||
"destination": "cross-rate",
|
||||
|
||||
"class": "ru.clearing.classes.statics.data.misc.sCrossRate",
|
||||
"class": "ru.clearing.classes.statics.data.misc.SCrossRate",
|
||||
|
||||
"table": "s_cross_rate",
|
||||
|
||||
|
|
|
|||
|
|
@ -2173,7 +2173,7 @@
|
|||
<price type="10" name="Цена за 1 штуку ликвидационного актива" shortname="Цена за шт." searchable="true" sortable="true" visible="true"/>
|
||||
<clearingDate type="6" name="Дата" shortname="Дата" searchable="true" sortable="true" ignore="true"/>
|
||||
</marketDataLiquidation>
|
||||
<sCrossRate name="Кросс курсы валют от ЦБ" destination="cross-rate" class="ru.clearing.classes.statics.data.misc.sCrossRate" table="s_cross_rate">
|
||||
<sCrossRate name="Кросс курсы валют от ЦБ" destination="cross-rate" class="ru.clearing.classes.statics.data.misc.SCrossRate" table="s_cross_rate">
|
||||
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true" visible="false"/>
|
||||
<date type="6" name="Дата торгов" shortname="Дата торгов" searchable="true" sortable="true" visible="false"/>
|
||||
<currency type="2" length="50" name="Наименование валюты" shortname="Наименование валюты" searchable="true" sortable="true" visible = "true"/>
|
||||
|
|
|
|||
|
|
@ -113,6 +113,7 @@ import static ru.spcex.clearing.test.json.MatcherFactoryWithJson.usingIgnoringFi
|
|||
MarketController.class,
|
||||
NotificationController.class,
|
||||
SessionController.class,
|
||||
SCrossRateController.class,
|
||||
//payment
|
||||
PaymentInstructionController.class,
|
||||
//register
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
package ru.spcex.clearing.backendapi.controller.queue.misc;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import ru.clearing.classes.statics.data.misc.SCrossRate;
|
||||
import ru.spcex.clearing.backendapi.controller.queue.AbstractControllerTest;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
|
||||
class SCrossRateControllerTest extends AbstractControllerTest {
|
||||
private static final String REST_URL = "/cross-rate/";
|
||||
|
||||
/**
|
||||
* {@link SCrossRateController#getAll()} <br>
|
||||
* Тест проверяет получение запроса по REST API.<br>
|
||||
* Входной запрос /cross-rate/ <br>
|
||||
* Ответ SCrossRate <br>
|
||||
*/
|
||||
@Test
|
||||
void getAll() throws Exception {
|
||||
//ARRANGE
|
||||
SCrossRate sCrossRate = new SCrossRate();
|
||||
sCrossRate.setId(currentId.get());
|
||||
sCrossRate.setDate(LocalDate.now());
|
||||
sCrossRate.setCurrency("RUB");
|
||||
sCrossRate.setCurrCode("RUB");
|
||||
sCrossRate.setFaceValue(new BigDecimal("1.00"));
|
||||
sCrossRate.setRate(new BigDecimal("1.00"));
|
||||
sCrossRate.setUnitRate(new BigDecimal("1.00"));
|
||||
sCrossRate.setGenerationTime(Instant.now());
|
||||
sCrossRate.setGenerationId(10L);
|
||||
sCrossRate.setCreatedAt(Instant.now());
|
||||
sCrossRate.setUpdatedAt(sCrossRate.getCreatedAt());
|
||||
|
||||
//ACT and ASSERT
|
||||
checkGettingAllFromRestApi(IMDGDistributedNames.Map_SCrossRate, sCrossRate, REST_URL);
|
||||
}
|
||||
}
|
||||
|
|
@ -9419,7 +9419,7 @@
|
|||
|
||||
"destination": "cross-rate",
|
||||
|
||||
"class": "ru.clearing.classes.statics.data.misc.sCrossRate",
|
||||
"class": "ru.clearing.classes.statics.data.misc.SCrossRate",
|
||||
|
||||
"table": "s_cross_rate",
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue