Exemplo n.º 1
0
        [HttpPost]//creates new hierarchy
        public async Task Post([FromBody] List <HierarchyUser> hierarchyUsers)
        {
            var requestId           = DateTime.UtcNow.ToFileTime().ToString();
            var genericSchedulesLog = new GenericSchedulesLog();

            genericSchedulesLog.GenericScheduleDateTime = DateTime.UtcNow;
            genericSchedulesLog.GenericScheduleId       = 1;
            genericSchedulesLog.OrganizationId          = hierarchyUsers.FirstOrDefault().OrganizationId;

            genericSchedulesLog.Log = "Info : Create Organization Hierarchy User Started.";
            _dbLoggerService.LogInfo(genericSchedulesLog);


            _logger.LogInformation("Request:{0} HttpReqeustType:{1}", requestId, HttpRequestType.GET);
            try
            {
                //await Task.Delay(0hierarchyUsers
                //await _hierarchyUserService.SaveOrganizationHierarchyUserAssignment(hierarchyUser, genericSchedulesLog);
                _logger.LogInformation("Response:{0}  is succeed", requestId);
            }
            catch (Exception ex)
            {
                await Task.Delay(0);

                _logger.LogError("Response:{0}  is failed Error : {1}", requestId, ex);
                NotFound();
            }
        }
Exemplo n.º 2
0
        public void LogInfo(GenericSchedulesLog genericSchedulesLog)
        {
            //genericSchedulesLog.LogDateTime = DateTime.UtcNow;
            genericSchedulesLog.Log             = genericSchedulesLog.Log.Replace("'", "");
            genericSchedulesLog.GenericDateTime = genericSchedulesLog.GenericScheduleDateTime.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
            string sql = "INSERT INTO [vlfGenericSchedulesLog] ([GenericScheduleID]  ,[OrganizationID] ,[GenericScheduleDateTime] ,[LogDateTime],[LogType],[Log]) VALUES ('" + genericSchedulesLog.GenericScheduleId + "', '" + genericSchedulesLog.OrganizationId + "','" + genericSchedulesLog.GenericDateTime + "','" + DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture) + "', '" + genericSchedulesLog.LogType + "','" + genericSchedulesLog.Log + "')";

            Int32 rows = _sqlHelper.ExecuteNonQuery(_connectionStrings.Value.SentinelFmMain, sql, CommandType.Text);
        }
Exemplo n.º 3
0
        public async Task CreateHierarchy(HierarchyContainer hierarchyContainer, GenericSchedulesLog genericSchedulesLog)
        {
            try
            {
                _scheduleService.UpdateScheduleTask(hierarchyContainer.schedule.Id);
                switch (hierarchyContainer.schedule.ServiceSubTypeId)
                {
                case 1:     // Organization Hieararchy
                    await CreateOrganizationHierarchy(hierarchyContainer.hierarchies, hierarchyContainer.hierarchiesVehicles, genericSchedulesLog);

                    break;

                case 2:     //ServiceSubType.Hierarchy
                            //CreateHirarchy(schedule.Params);
                    break;

                case 3:     //ServiceSubType.HierarchyUser
                            //SaveOrganizationHierarchyUserAssignment(schedule.Params);
                    break;

                case 4:     //ServiceSubType.HierarchyVehicle
                            //Console.WriteLine("Case 4");
                    break;

                default:
                    Console.WriteLine("Default case");
                    break;
                }
            }
            catch (Exception ex)
            {
                _logger.LogInformation("Hierarchy Exception No :{0} ", ex.ToString());
                genericSchedulesLog.Log = "Hierarchy Exception No: " + ex.ToString();

                _dbLoggerService.LogInfo(genericSchedulesLog);
            }
        }
Exemplo n.º 4
0
        //public async Task SaveOrganizationHierarchyUserAssignment(List<HierarchyUser> hierarchyUsers, GenericSchedulesLog genericSchedulesLog)
        //{
        //    var organizationId = hierarchyUsers.FirstOrDefault().OrganizationId;

        //    //deleting existing users and assigning high level users to root
        //   // _hierarchyUserRepository.DeleteOrganizationHierarchyUserAssgignment(organizationId);

        //    _hierarchyUserRepository.AssignHgiUserToOrganizationHierarchy(organizationId);
        //    foreach (HierarchyUser hierarchyUser in hierarchyUsers)
        //    {
        //        await Task.Delay(0);
        //        _hierarchyUserRepository.SaveOrganizationHierarchyUserAssignment(organizationId, hierarchyUser);
        //    }
        //    _hierarchyUserRepository.AssignEmailToHieararchyFleet(organizationId);
        //}

        public async Task SaveOrganizationHierarchyUserAssignment(List <Hierarchy> hierarchyUsers, GenericSchedulesLog genericSchedulesLog)
        {
            var organizationId = hierarchyUsers.FirstOrDefault().OrganizationId;

            //deleting existing users and assigning high level users to root
            //_hierarchyUserRepository.DeleteOrganizationHierarchyUserAssgignment(organizationId);

            _hierarchyUserRepository.AssignHgiUserToOrganizationHierarchy(organizationId);
            foreach (Hierarchy hierarchy in hierarchyUsers)
            {
                try
                {
                    await Task.Delay(0);

                    _hierarchyUserRepository.SaveOrganizationHierarchyUserAssignment(organizationId, hierarchy);
                }


                catch (Exception ex)
                {
                    //_logger.LogInformation("Hierarchy Actual Exception :{0}", ex.ToString());
                    // continue;
                }
            }

            _hierarchyUserRepository.AssignEmailToHieararchyFleet(organizationId);
        }
Exemplo n.º 5
0
 public void LogInfo(GenericSchedulesLog genericSchedulesLog)
 {
     _dbLoggerRepository.LogInfo(genericSchedulesLog);
 }
Exemplo n.º 6
0
        public async Task CreateOrganizationHierarchy(List <Hierarchy> hierarchies, List <HierarchyVehicle> hierarchyVehicle, GenericSchedulesLog genericSchedulesLog)
        {
            // await CreateHierarchy(hierarchies);
            genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy Process Started";
            genericSchedulesLog.LogType = 1;
            _dbLoggerService.LogInfo(genericSchedulesLog);
            genericSchedulesLog.LogType = 0;

            var organizationId = 0;


            foreach (Hierarchy hierarchy in hierarchies)
            {
                try
                {
                    organizationId = hierarchy.OrganizationId;
                    if (hierarchy.NodeCode.Trim() == hierarchy.ParentNodeCode.Trim())
                    {
                        genericSchedulesLog.Log     = MessageType.WARN + " :Node : " + hierarchy.NodeCode.Trim() + " and ParentNode Code: " + hierarchy.ParentNodeCode.Trim() + " are same. Unable to process this record.";
                        genericSchedulesLog.LogType = 1;
                        _dbLoggerService.LogInfo(genericSchedulesLog);
                        genericSchedulesLog.LogType = 0;
                        continue;
                    }

                    if (_hierarchyRepository.GetOrganizationHierarchyByNodecode(organizationId, hierarchy.NodeCode) > 0)
                    {
                        try
                        {
                            _hierarchyRepository.UpdateOrganizationHierarchy(organizationId, hierarchy);
                        }
                        catch (Exception ex)
                        {
                            //_logger.LogInformation("Hierarchy Exception No :{0} Actual Exception :{1}", excno, ex.ToString());
                            genericSchedulesLog.Log     = MessageType.ERR + " : Node:" + hierarchy.NodeCode.Trim() + " Parent Node:" + hierarchy.ParentNodeCode.Trim() + " update failed";
                            genericSchedulesLog.LogType = 1;
                            _dbLoggerService.LogInfo(genericSchedulesLog);
                            genericSchedulesLog.LogType = 0;
                        }
                    }
                    else
                    {
                        try
                        {
                            _hierarchyRepository.SaveOrganizationHierarchy(hierarchy.OrganizationId, hierarchy);
                        }
                        catch (Exception ex)
                        {
                            genericSchedulesLog.Log     = MessageType.ERR + " : Node:" + hierarchy.NodeCode.Trim() + " Parent Node:" + hierarchy.ParentNodeCode.Trim() + " insert failed: Error :" + ex.ToString();
                            genericSchedulesLog.LogType = 1;
                            _dbLoggerService.LogInfo(genericSchedulesLog);
                            genericSchedulesLog.LogType = 0;
                        }
                    }
                    _hierarchyRepository.SetOrganizationHierarchyParentIdMinus(hierarchy.OrganizationId, hierarchy.NodeCode);
                }
                catch (Exception ex)
                {
                    //_logger.LogInformation("Hierarchy Exception No :{0} Actual Exception :{1}", excno, ex.ToString());
                    genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy  Error : " + ex.ToString() + " Node Code: " + hierarchy.NodeCode + " Parent Node Code: " + hierarchy.ParentNodeCode;
                    _dbLoggerService.LogInfo(genericSchedulesLog);
                }
            }



            string sql = " OrganizationId=" + organizationId.ToString() + " AND (ParentId <> -1 OR ParentId IS NULL)";
            var    hierarchyToDelete = _hierarchyRepository.GetOrganizationHierarchyBySql(sql);

            genericSchedulesLog.Log = "Module : GetOrganizationHierarchyBySql ended ";
            _dbLoggerService.LogInfo(genericSchedulesLog);

            genericSchedulesLog.Log = "Module : DeleteOrganizationHierarchySingleNode started ";
            _dbLoggerService.LogInfo(genericSchedulesLog);
            foreach (string node in hierarchyToDelete)
            {
                try
                {
                    _hierarchyRepository.DeleteOrganizationHierarchySingleNode(organizationId, node);
                }
                catch (Exception ex)
                {
                    //_logger.LogInformation("Hierarchy Exception No :{0} Actual Exception :{1}", excno, ex.ToString());
                    genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy Call:DeleteOrganizationHierarchySingleNode Error : " + ex.ToString() + " node: " + node;
                    _dbLoggerService.LogInfo(genericSchedulesLog);
                }
            }
            genericSchedulesLog.Log = "Module : DeleteOrganizationHierarchySingleNode ended ";
            _dbLoggerService.LogInfo(genericSchedulesLog);

            genericSchedulesLog.Log = "Module : SetHieararchyParent started ";
            _dbLoggerService.LogInfo(genericSchedulesLog);

            try
            {
                _hierarchyRepository.SetHieararchyParent(organizationId);
            }
            catch (Exception ex)
            {
                //_logger.LogInformation("Hierarchy Exception No :{0} Actual Exception :{1}", excno, ex.ToString());
                genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy Call:SetHieararchyParent Error : " + ex.ToString();
                _dbLoggerService.LogInfo(genericSchedulesLog);
            }
            genericSchedulesLog.Log = "Module : SetHieararchyParent ended ";
            _dbLoggerService.LogInfo(genericSchedulesLog);

            genericSchedulesLog.Log = "Module : UpdateOrganizationHierarchyFlat started ";
            _dbLoggerService.LogInfo(genericSchedulesLog);
            try
            {
                _hierarchyRepository.UpdateOrganizationHierarchyFlat(organizationId);
            }
            catch (Exception ex)
            {
                genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy Call:UpdateOrganizationHierarchyFlat Error : " + ex.ToString();
                _dbLoggerService.LogInfo(genericSchedulesLog);
            }


            genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy Process Ended";
            genericSchedulesLog.LogType = 1;
            _dbLoggerService.LogInfo(genericSchedulesLog);
            genericSchedulesLog.LogType = 0;

            genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy User Assignment Started";
            genericSchedulesLog.LogType = 1;
            _dbLoggerService.LogInfo(genericSchedulesLog);
            genericSchedulesLog.LogType = 0;


            try
            {
                _hierarchyRepository.AssignHgiUserToOrganizationHierarchy(organizationId);
            }
            catch (Exception ex)
            {
                genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy Call:AssignHgiUserToOrganizationHierarchy Error : " + ex.ToString();
                _dbLoggerService.LogInfo(genericSchedulesLog);
            }
            genericSchedulesLog.Log = "Module : AssignHgiUserToOrganizationHierarchy ended ";
            _dbLoggerService.LogInfo(genericSchedulesLog);

            genericSchedulesLog.Log = "Module : SaveOrganizationHierarchyUserAssignment started ";
            _dbLoggerService.LogInfo(genericSchedulesLog);
            try
            {
                var response = _hierarchyUserService.SaveOrganizationHierarchyUserAssignment(hierarchies, genericSchedulesLog);
                genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy User Assignment Ended";
                genericSchedulesLog.LogType = 1;
                _dbLoggerService.LogInfo(genericSchedulesLog);
                genericSchedulesLog.LogType = 0;


                if (response.IsCompleted)
                {
                    genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy Vehicle Assignment Started";
                    genericSchedulesLog.LogType = 1;
                    _dbLoggerService.LogInfo(genericSchedulesLog);
                    genericSchedulesLog.LogType = 0;

                    foreach (HierarchyVehicle objvehicle in hierarchyVehicle)
                    {
                        if (hierarchies.Where(f => f.Email == objvehicle.Email).FirstOrDefault() != null)
                        {
                            objvehicle.NodeCode = hierarchies.Where(f => f.Email == objvehicle.Email).FirstOrDefault().NodeCode;
                        }
                    }
                    var vehicleResponse = _hierarchyVehicleService.SaveOrganizationHierarchyVehicleAssignment(hierarchyVehicle, genericSchedulesLog);

                    if (vehicleResponse.IsCompleted)
                    {
                        genericSchedulesLog.Log     = MessageType.INFO + ": Module : Hierarchy Vehicle Assignment ended";
                        genericSchedulesLog.LogType = 1;
                        _dbLoggerService.LogInfo(genericSchedulesLog);
                        genericSchedulesLog.LogType = 0;

                        genericSchedulesLog.Log     = MessageType.INFO + ": Hierarchy creation ended";
                        genericSchedulesLog.LogType = 1;
                        _dbLoggerService.LogInfo(genericSchedulesLog);
                        genericSchedulesLog.LogType = 0;
                    }
                }
                await Task.Delay(0);
            }


            catch (Exception ex)
            {
                _logger.LogInformation("Hierarchy  Actual Exception :{0}", ex.ToString());
                genericSchedulesLog.Log = "Module : HierarchyService Function :CreateOrganizationHierarchy Call:SaveOrganizationHierarchyUserAssignment/SaveOrganizationHierarchyVehicleAssignment Error : " + ex.ToString();
                _dbLoggerService.LogInfo(genericSchedulesLog);
            }
        }
Exemplo n.º 7
0
        [HttpPost]//creates new hierarchy
        public async Task Post([FromBody] HierarchyContainer hierarchiesContainer)
        {
            _logger.LogInformation("Create Hierarchy Started");

            if (hierarchiesContainer.hierarchies != null)
            {
                _logger.LogInformation("Total hierarchy :{0} ", hierarchiesContainer.hierarchies.Count.ToString());
            }
            else
            {
                _logger.LogInformation("Total hierarchy : 0 ");
            }

            if (hierarchiesContainer.hierarchiesVehicles != null)
            {
                _logger.LogInformation("Total vehicles :{0} ", hierarchiesContainer.hierarchiesVehicles.Count.ToString());
            }
            else
            {
                _logger.LogInformation("Total vehicles : 0 ");
            }


            var requestId = DateTime.UtcNow.ToFileTime().ToString();

            var genericSchedulesLog = new GenericSchedulesLog();

            genericSchedulesLog.GenericScheduleDateTime = DateTime.UtcNow;
            genericSchedulesLog.GenericScheduleId       = hierarchiesContainer.schedule.Id;

            if (hierarchiesContainer.hierarchies != null)
            {
                genericSchedulesLog.OrganizationId = hierarchiesContainer.hierarchies.FirstOrDefault().OrganizationId;
            }

            genericSchedulesLog.Log = "Info : Create Organization Hierarchy Started.";


            _logger.LogInformation("Request:{0} HttpReqeustType:{1}", requestId, HttpRequestType.GET);
            try
            {
                genericSchedulesLog.Log     = MessageType.INFO + " :Service Started at" + DateTime.UtcNow;
                genericSchedulesLog.LogType = 1;
                _dbLoggerService.LogInfo(genericSchedulesLog);
                genericSchedulesLog.LogType = 0;

                genericSchedulesLog.Log     = MessageType.INFO + " :Total hierarchy records :" + hierarchiesContainer.hierarchies.Count.ToString() + " :Total vehicle records :" + hierarchiesContainer.hierarchiesVehicles.Count.ToString();
                genericSchedulesLog.LogType = 1;
                _dbLoggerService.LogInfo(genericSchedulesLog);
                genericSchedulesLog.LogType = 0;


                var task = _hierarchyService.CreateHierarchy(hierarchiesContainer, genericSchedulesLog);
                _logger.LogInformation("Response:{0}  is succeed", requestId);

                if (task.IsCompleted)
                {
                    genericSchedulesLog.Log = MessageType.INFO + " :Create Organization Hierarchy Ended.";
                    _dbLoggerService.LogInfo(genericSchedulesLog);
                }
            }
            catch (Exception ex)
            {
                await Task.Delay(0);

                genericSchedulesLog.Log = MessageType.ERR + " :Create Organization Hierarchy Failed. " + ex.ToString();
                _dbLoggerService.LogInfo(genericSchedulesLog);
                genericSchedulesLog.LogType = 0;
                NotFound();
            }
            finally
            {
                genericSchedulesLog.Log     = MessageType.INFO + " :Service ended at" + DateTime.UtcNow;
                genericSchedulesLog.LogType = 1;
                _dbLoggerService.LogInfo(genericSchedulesLog);
                genericSchedulesLog.LogType = 0;
            }
        }
Exemplo n.º 8
0
        public async Task SaveOrganizationHierarchyVehicleAssignment(List <HierarchyVehicle> hierarchyVehicles, GenericSchedulesLog genericSchedulesLog)
        {
            try
            {
                _logger.LogInformation("Vehicle Assignment started");
                await Task.Delay(0);

                var organizationId = hierarchyVehicles.FirstOrDefault().OrganizationId;
                //DateTime? _lastfrom = _hierarchyVehicleRepository.GetLastEffectiveFrom(organizationId);

                try
                {
                    _hierarchyVehicleRepository.SetOrganizationHierarchyAssignmentExpireDateTime(organizationId, DateTime.Now);
                }

                catch (Exception ex)
                {
                    _logger.LogInformation("Vehicle Assignment abrupted due to error SetOrganizationHierarchyAssignmentExpireDateTime : {0} ", ex.ToString());
                }

                try
                {
                    _hierarchyVehicleRepository.DeleteOrganizationHierarchyFleetVehicles(organizationId);
                }
                catch (Exception ex)
                {
                    _logger.LogInformation("Vehicle Assignment abrupted due to error DeleteOrganizationHierarchyFleetVehicles : {0} ", ex.ToString());
                }
                foreach (HierarchyVehicle hierarchyVehicle in hierarchyVehicles)
                {
                    //_oh.SaveOrganizationHierarchy(organizationId, row);
                    try
                    {
                        _hierarchyVehicleRepository.SaveOrganizationHierarchyAssignmentByVehicleDescription(organizationId, hierarchyVehicle);
                    }

                    catch (Exception ex)
                    {
                        genericSchedulesLog.Log = "Module : Vehicle Assignment Function : SaveOrganizationHierarchyVehicleAssignment  Error : " + ex.ToString() + " Object No : " + ex.ToString() + " Node Code: " + hierarchyVehicle.NodeCode + " vehicle description: " + hierarchyVehicle.Description;
                        _dbLoggerService.LogInfo(genericSchedulesLog);
                        //_logger.LogInformation("Vehicle Assignment abrupted due to error SaveOrganizationHierarchyAssignmentByVehicleDescription : {0} ", ex.ToString());
                    }
                }

                _logger.LogInformation("Vehicle Assignment ended");
            }
            catch (Exception ex)
            {
                _logger.LogInformation("Vehicle Assignment abrupted due to error : {0} ", ex.ToString());
            }
        }