Передача данных, возвращенных из запроса Request в объекте Response Post - PullRequest
0 голосов
/ 08 июля 2019

Мое кодирование на Angular ржавое, так как я давно этого не делал, но я пытаюсь сделать это - взять список значений, возвращаемых из контроллера списка, и вставить их в мое сообщение Response в контроллер поиска, который будет использовать этот список для поиска в хранилище.

Это то, что я пробовал до сих пор -

1 - инициализировать массив списка с помощью Guid: [] в инициализаторе $ scope.data {}

//Initailize 
$scope.data = {
    selection: null,
    start: '',
    end: '',
    minDate: new Date(2017, 01, 01),
    defaultStartDate: moment({ year: currentDate.getFullYear(), month: currentDate.getMonth(), day: currentDate.getDate() }),
    defaultEndDate: moment({ year: currentDate.getFullYear(), month: currentDate.getMonth(), day: currentDate.getDate() + 1 }),
    format: 'YYYY-MM-DD HH:mm:ss.SSS',
    elasticUrl: '',
    dnsHost: '',
    messageTypes: [],
    scrollId: '',
    TID: '',
    Guids: []
};

2 - вернуть интересующий меня список из контроллера поиска с $ scope.Guids = data.Guids

var search = function () {
    NProgress.start();
    var ospLogsSearchParam = {
        StartDate: $scope.data.start,
        EndDate: $scope.data.end,
        ElasticUrl: $scope.data.elasticUrl,
        MessageTypes: $scope.data.messageTypes,
        DnsHost: $scope.data.dnsHost,
        TID: $scope.data.TID,
    };
    var queryString = $.param(ospLogsSearchParam);
    $http.get("/api/search?" + queryString).success(function (data) {
        $scope.isLoading = false;

        $scope.total = data.Total;
        $scope.took = "";
        $scope.tookMins = "";
        $scope.successCount = "";
        $scope.errorCount = "";
        $scope.tps = "";
        $scope.Guids = data.Guids; (data list)
    }).finally(function () {
        NProgress.done();
    });
}

3 - вставить это значение (Guids: $ scope.data.Guids) в поле Guids объекта SearchParameter, который я отправляю второму контроллеру поиска.

function invokeParse() {
    var ospLogsSearchParam = {
        StartDate: $scope.data.start,
        EndDate: $scope.data.end,
        ElasticUrl: $scope.data.elasticUrl,
        MessageTypes: $scope.data.messageTypes,
        DnsHost: $scope.data.dnsHost,
        TID: $scope.data.TID,
        Guids: $scope.data.Guids (data trying to send to back end controller)
    };
    var parse = {
        Logs: $scope.filteredItems,
        DNSName: !$scope.data.dnsHost ? 'none' : $scope.data.dnsHost,
        OspLogsSearchParams: ospLogsSearchParam
}

Ожидаемый результат заключается в том, что внутренний контроллер поиска будет выполнять поиск, используя каждое значение в списке в качестве фильтра where.

Фактический результат состоит в том, что список руководств не заполняется этими значениями из поискового запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...