public async Task <ConsolidateResponse> ConsolidateLoad(ConsolidateRequest request, string userName)
        {
            var consolidateResponse = new ConsolidateResponse();

            if (!userService.isUserMemberOfGroup(_config.UserServiceConfig.UserRoutes[2].group, userName))
            {
                consolidateResponse.isConsolidated = false;
                consolidateResponse.message.Add(String.Format(_config.UserServiceConfig.accountMessages[2], userName, _config.UserServiceConfig.UserRoutes[2].header));
            }

            try
            {
                if (consolidateResponse.isConsolidated)
                {
                    // Run main SP
                    await consolidateRepository.runConsolidateMergeMain(String.Format(_config.ConsolidateConfig.mainStoredProcedures[0], request.load));

                    // Check in ErrorLogTable
                    var consolidateErrorLogTables = await consolidateRepository.runConsolidateErrorTb(String.Format(_config.ConsolidateConfig.errorLogTables[0], request.load));

                    // Check in SuccessLogTable
                    if (consolidateErrorLogTables.Count == 0)
                    {
                        var consolidateSuccessLogTables = await consolidateRepository.runConsolidateSuccessTb(String.Format(_config.ConsolidateConfig.successLogTables[0], request.load));

                        if (consolidateSuccessLogTables.Count > 0)
                        {
                            consolidateResponse.isConsolidated = true;
                            consolidateResponse.message.Add(String.Format(_config.ConsolidateConfig.successLogTableMessages[0], request.load, consolidateSuccessLogTables[0].dtstamp, consolidateSuccessLogTables[0].TMWMove));
                        }
                        else
                        {
                            consolidateResponse.isConsolidated = false;
                            consolidateResponse.message.Add(String.Format(_config.ConsolidateConfig.successLogTableMessages[1], request.load));
                        }
                    }
                    else
                    {
                        consolidateResponse.isConsolidated = false;
                        consolidateResponse.message.Add(consolidateErrorLogTables[0].ErrorString);
                    }
                }
            } catch (Exception ex)
            {
            }


            return(consolidateResponse);
        }
Esempio n. 2
0
        public async Task <IActionResult> Consolidate([FromBody] ConsolidateRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var consolidateResponse = await consolidateService.ConsolidateLoad(request, userService.getUserName(User.Claims));

            if (!consolidateResponse.isConsolidated)
            {
                return(BadRequest(consolidateResponse));
            }

            return(Ok(consolidateResponse));
        }