Beispiel #1
0
        public async Task <IHttpActionResult> GetApplication(int applicationId, int pageNumber = 0, int pageSize = 10, string sortField = "CreatedAt", string sortOrder = "desc", bool fetchAll = false)
        {
            var result = _objAppComponentRepository.GetApplicationComponentListbyappId(applicationId).OrderBy(sortField + " " + sortOrder);

            return(Ok(await CreatePageResult <ApplicationComponent>(result, pageNumber, pageSize, fetchAll)));
        }
Beispiel #2
0
        /// <summary>
        ///  Method:ProcessRunNumber
        ///  Description:This initialize the components step for each Run Number.
        ///  </summary>
        /// <param name="objRunNumberDetail"></param>
        public void ProcessRunNumber(RunDetail runDetail, string fileDownloadLocation)
        {
            var runNumberDirectory = fileDownloadLocation;

            if (!Directory.Exists(runNumberDirectory))
            {
                SingletonLogger.Instance.Debug("  Directory " + runDetail.RunNumber + " Does not Exists in " + runNumberDirectory);
                return;
            }
            var inputfiles = Directory.GetFiles(runNumberDirectory);

            if (inputfiles.Count() == 0)
            {
                SingletonLogger.Instance.Debug(" No Files exists to process under Run number ." + runNumberDirectory);
                return;
            }


            var runNumber = runDetail.RunNumber;
            var appId     = runDetail.ApplicationId;


            SingletonLogger.Instance.Debug("appId " + appId);

            //Get All Component of particulate Application

            // List<ApplicationComponent> applicationComponentList = objApplicationComponentsDal.GetAllApplicationComponentsByAppId(appId);
            var applicationComponentList = objApplicationComponentRepository.GetApplicationComponentListbyappId(appId);

            if (applicationComponentList.Count() == 0)
            {
                throw new Exception(" No Component steps exists for Application Id = " + appId);
            }
            else
            {
                try
                {
                    SingletonLogger.Instance.Debug("Total " + applicationComponentList.Count() + " Component steps founds .");
                    //Get RunNumberId By RunNumber From RunNumberDetails Table.
                    int runNumberId = objRunDetailsRepository.GetRunDetailByRunNumber(runNumber).RunDetailId;
                    SingletonLogger.Instance.Debug("runNumberId " + runNumberId);

                    //Make entry in RunComponentStatus table For Each Step For a RunNumber
                    foreach (var applicationComponent in applicationComponentList)
                    {
                        RunComponentStatus entity = new RunComponentStatus();
                        entity.RunNumberId     = runNumberId;
                        entity.ComponentId     = applicationComponent.ComponentId;
                        entity.ComponentOrder  = applicationComponent.ComponentOrder;
                        entity.ComponentStatus = 0;
                        entity.CreatedOn       = DateTime.Now;
                        entity.EndDate         = null;
                        entity.StartDate       = null;
                        objRunComponentStatusRepository.Save(entity);
                    }
                    SingletonLogger.Instance.Debug("All Component entry has been Added to RunComponentStatus table  for RunNumber " + runNumber);

                    // Update RunStatus in RunNumberDetails to 1
                    objRunDetailsRepository.UpdateRunStatusByRunNumberId(runNumberId, (int)RunNumberStatus.Running);
                    SingletonLogger.Instance.Debug("RunStatus has been updated RunNumberDetails table for RunNumber " + runNumber);
                }
                catch (Exception)
                {
                    throw;
                }
            }
        }
        public IHttpActionResult ApplicationComponents(int applicationId)
        {
            var componentIds = _objApplicationComponentRepository.GetApplicationComponentListbyappId(applicationId).Select(x => x.Component);

            return(Ok(componentIds));
        }