Example #1
0
        public static void ProcessNewRequest(SourceRequestViewModel model, string _EmpNum)
        {
            string Content = "A new sourcing request has been initiated by " + model.INITIATOR_NAME;

            Content += " , log on to the Procurement application to approve/decline the request.";
            try
            {
                SOURCING_REQUEST _NewRequest = new SOURCING_REQUEST();
                decimal          ItemId      = GetSequence();
                var InfoFromHRMS             = GetInfoFromHRMS.GetSupervisorsDetails(_EmpNum);
                using (Entities context = new Entities())
                {
                    _NewRequest.TEMP_ID                = ItemId;
                    _NewRequest.ITEM_CATEGORY          = model.ITEM_CATEGORY;
                    _NewRequest.ITEM_DESCRIPTION       = model.ITEM_DESCRIPTION;
                    _NewRequest.PREFERED_VENDOR        = model.PREFERED_VENDOR;
                    _NewRequest.PREFERED_VENDOR_ID     = model.PREFERED_VENDOR_ID;
                    _NewRequest.INITIATING_BRANCH      = model.INITIATING_BRANCH;
                    _NewRequest.INITIATOR_NAME         = model.INITIATOR_NAME;
                    _NewRequest.INITIATOR_NUMBER       = model.INITIATOR_NUMBER;
                    _NewRequest.INITIATING_BRANCHCODE  = model.INITIATING_BRANCHCODE;
                    _NewRequest.INITIATING_DEPT        = model.INITIATING_DEPT;
                    _NewRequest.INITIATION_DATE        = DateTime.Now;
                    _NewRequest.INITIATOR_EMAIL        = model.INITIATOR_EMAIL;
                    _NewRequest.EXPECTED_DELIVERY_DATE = model.EXPECTED_DELIVERY_DATE;
                    _NewRequest.INITIATING_DEPTCODE    = model.INITIATING_DEPTCODE;
                    _NewRequest.LINE_MANAGER_NAME      = InfoFromHRMS.FullName;
                    _NewRequest.LINE_MANAGER_NUM       = InfoFromHRMS.EmployeeNumber;
                    _NewRequest.LINE_MANAGER_APPR      = "Pending";
                    _NewRequest.LINE_MANAGER_EMAIL     = InfoFromHRMS.Email;
                    _NewRequest.ITEM_CATEGORY_ID       = model.ITEM_CATEGORY_ID;
                    context.SOURCING_REQUEST.Add(_NewRequest);
                    context.SaveChanges();
                }

                DocumentUploadDownload.UploadDocument(model.Files, model.INITIATING_BRANCHCODE, ItemId);
                bool MailResponse = SendMail.prepMail(Content, InfoFromHRMS.FullName, InfoFromHRMS.Email, emailTemplatePath);
                if (MailResponse)
                {
                    Logger.Log("Email Sent to " + InfoFromHRMS.Email, "Info");
                }
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Logger.Log("Entity of type " + eve.Entry.Entity.GetType().Name + " in state " + eve.Entry.State + " has the following validation errors:", "error");
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Logger.Log("- Property: " + ve.PropertyName + ", Error: " + ve.ErrorMessage + " ", "error");
                    }
                }

                // Logger.Log("An error occured upon inserting new request into database. Error: " + ex.StackTrace, "error");
            }
        }
        public ActionResult Login(LoginViewModel model, string urlReturn)
        {
            string _Role = "";
            //var pass = AuthenticationService.Validate(model.UserName, model.Password);
            var profile = AuthenticationService.GetUserProfile(model.UserName);

            if (profile.EmployeeNumber != null)
            {
                var claims = new List <Claim>();
                //var profile = AuthenticationService.GetUserProfile(model.UserName);
                var userDetailsFrmDb = UserDBValidation.CheckUserExist(model.UserName);// Check is user exist in the database
                if (userDetailsFrmDb != null)
                {
                    _Role = userDetailsFrmDb.ROLE;
                    claims.Add(new Claim(ClaimTypes.Role, _Role));
                    claims.Add(new Claim(ClaimTypes.Rsa, Convert.ToString(userDetailsFrmDb.ROLE_ID)));
                    claims.Add(new Claim(ClaimTypes.Dns, userDetailsFrmDb.CATEGORY));
                    claims.Add(new Claim(ClaimTypes.Dsa, Convert.ToString(userDetailsFrmDb.CATEGORY_ID)));
                    claims.Add(new Claim(ClaimTypes.Actor, Convert.ToString(userDetailsFrmDb.USER_ID)));
                }
                else
                {
                    _Role = "Public";
                    claims.Add(new Claim(ClaimTypes.Role, _Role));
                }

                var    GetBranchCodeAndCostCenter = GetInfoFromHRMS.GetCostCenterWithEmpNumber(profile.EmployeeNumber);
                var    GetDeptCodeDesc            = GetInfoFromHRMS.GetDeptCodeDesc(GetBranchCodeAndCostCenter.CostCenterCode);
                var    Branches   = GetInfoFromHRMS.GetBranches(GetBranchCodeAndCostCenter.BranchCode);
                string MainBranch = Branches.Branch;
                var    BranchCode = GetBranchCodeAndCostCenter.BranchCode ?? profile.BranchCode;

                //if (BranchCode == Category.HQCODE)
                //{
                //    claims.Add(new Claim(ClaimTypes.Actor, GetBranchCodeAndCostCenter.CostCenterCode));
                //}
                claims.Add(new Claim(ClaimTypes.Name, profile.UserName));
                claims.Add(new Claim(ClaimTypes.GivenName, profile.FullName));
                claims.Add(new Claim(ClaimTypes.SerialNumber, profile.EmployeeNumber));
                claims.Add(new Claim(ClaimTypes.UserData, GetDeptCodeDesc.DeptName));
                claims.Add(new Claim(ClaimTypes.Email, profile.Email));
                claims.Add(new Claim(ClaimTypes.StateOrProvince, MainBranch));
                claims.Add(new Claim(ClaimTypes.PostalCode, BranchCode));
                claims.Add(new Claim(ClaimTypes.Actor, GetBranchCodeAndCostCenter.CostCenterCode));
                claims.Add(new Claim(ClaimTypes.Locality, GetDeptCodeDesc.DeptName));


                SignInAsync(new ClaimsIdentity(claims, DefaultAuthenticationTypes.ApplicationCookie));
                Logger.Log("Successful Login by " + profile.FullName + " Employee's Number " + profile.EmployeeNumber, "info");
                return(RedirectToLocal(urlReturn, _Role));
            }
            ViewBag.ErrorMessage = "Invalid username or password.";
            return(View(model));
        }
Example #3
0
        //get users in Procurement
        public static List <SelectListItem> GetUsersInProcurement()
        {
            List <SelectListItem> _listItems = new List <SelectListItem>();
            var UserInProcurement            = GetInfoFromHRMS.GetUsersInProcurementDept();

            foreach (var item in UserInProcurement)
            {
                _listItems.Add(new SelectListItem
                {
                    Text  = item.FullName,
                    Value = GetUserName(item.Email)
                });
            }
            return(_listItems);
        }