예제 #1
0
        public List <TempModel> GetEST_Manufacturers(IQueryBuilder queryBuilder) //List<BAM_Manufacturer>
        {
            var dataExport        = _estService.GetExportData(queryBuilder);
            var modelDescriptions = dataExport.NewItemList.DistinctBy(x => x.Asset_Desc).Select(x => new TempModel {
                ModelName = x.Asset_Desc
            }).ToList();

            //modelDescriptions.AddRange(dataExport.AssetTagChangeList.DistinctBy(x => x.Audit_Prod_Desc).Select(x => new TempModel { ModelName = x.Audit_Prod_Desc }).ToList());
            //modelDescriptions.AddRange(dataExport.DeployedToBAMUserList.DistinctBy(x => x.Audit_Prod_Desc).Select(x => new TempModel { ModelName = x.Audit_Prod_Desc }).ToList());
            //modelDescriptions.AddRange(dataExport.RetiredAssetList.DistinctBy(x => x.Audit_Prod_Desc).Select(x => new TempModel { ModelName = x.Audit_Prod_Desc }).ToList());
            //modelDescriptions.AddRange(dataExport.ReturnedFromBAMList.DistinctBy(x => x.Audit_Prod_Desc).Select(x => new TempModel { ModelName = x.Audit_Prod_Desc }).ToList());
            //modelDescriptions.AddRange(dataExport.SwappedAssetList.DistinctBy(x => x.Audit_Prod_Desc).Select(x => new TempModel { ModelName = x.Audit_Prod_Desc }).ToList());
            return(modelDescriptions);
        }
        private List <SCAudit> GetAll_BaseQuery()
        {
            var returnValue = new EST_DataExportModel();

            returnValue = _eST_Service.GetExportData(_queryBuilder);
            if (returnValue.Any())
            {
                returnValue = returnValue
                              .Where
                              (
                    item => item.Audit_Part_Num.ToUpper().StartsWith("BNL") &&
                    item.Audit_Rem.StartsWith("Added PO") &&
                    (item.Audit_Dest_Site_Num.ToUpper().StartsWith("E-") || item.Audit_Dest_Site_Num.ToUpper() == "LTX")
                              )
                              .ToList();
            }

            return(returnValue);
        }
예제 #3
0
        public async Task <EST_DataExportModel> ExportDataToBAM(IQueryBuilder queryBuilder, int jobType)
        {
            _progressReport.StartDateTime  = DateTime.Now;
            _progressReport.ServiceJobType = jobType;
            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            // Query, cleanse and subset the data
            //if (_dataExport == null)
            var _dataExport = _estService.GetExportData(queryBuilder);

            queryBuilder = _estService._queryBuilder;

            _progressReport.EsteemExtractDateTime = DateTime.Now;
            _progressReport.QueryStartParameters  = queryBuilder.StartDate;
            _progressReport.QueryEndParameters    = queryBuilder.EndDate;
            _progressReport.QueryString           = queryBuilder.LastQueryString;
            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            // Process the Data
            var newItemTask   = Process_NewItemList(_dataExport, _progressReport);
            var locationTask  = Process_LocationChangeList(_dataExport, _progressReport);
            var assetTagTask  = Process_AssetTagChangeList(_dataExport, _progressReport);
            var deployTask    = Process_DeployedToBAMUserList(_dataExport, _progressReport);
            var returnNewTask = Process_ReturnedFromBAMList(_dataExport, _progressReport);
            var retiredTask   = Process_RetiredAssetList(_dataExport, _progressReport);
            var disposedTask  = Process_DisplosedAssetList(_dataExport, _progressReport);
            var swappedTask   = Process_SwappedAssetList(_dataExport, _progressReport);

            _progressReport.NewItemCount        = _dataExport?.NewItemList?.Count;
            _progressReport.LocationChangeCount = _dataExport?.LocationChangeList?.Count;
            _progressReport.AssetTagChangeCount = _dataExport?.AssetTagChangeList?.Count;
            _progressReport.DeployedCount       = _dataExport?.DeployedToBAMUserList?.Count;
            _progressReport.ReturnedCount       = _dataExport?.ReturnedFromBAMList?.Count;
            _progressReport.RetiredCount        = _dataExport?.RetiredAssetList?.Count;
            _progressReport.DisposedCount       = _dataExport?.DisplosedAssetList?.Count;
            _progressReport.SwappedCount        = _dataExport?.SwappedAssetList?.Count;

            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            _dataExport = (await Task.WhenAll(
                               newItemTask,
                               assetTagTask,
                               deployTask,
                               locationTask, //returnTask,
                               returnNewTask,
                               retiredTask,
                               disposedTask,
                               swappedTask)).First();

            _progressReport.BAMExportDateTime = DateTime.Now;
            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            // Save any Exceptions to the BAMEsteemExportDB
            await _reportingService.ProcessExceptions(_reportings);

            await _reportingService.ProcessBillables(_billables);

            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            _progressReport.BAMExportDateTime = DateTime.Now;

            _progressReport.ExceptionCountTotal = _reportings.Count;
            _progressReport.ProcessSuccessFlag  = _progressReport.ExceptionCountTotal == 0 ? true : false;

            if (!_progressReport.ProcessSuccessFlag && jobType == 3)
            {
                Email.Send(_progressReport.Id);
            }

            _progressReport = _reportingService.ServiceProgressReporting(_progressReport);

            return(_dataExport);
        }