Exemple #1
0
        /// <summary>
        /// Method Name     : Put
        /// Author          : Binal Patel
        /// Creation Date   : 17 October 2019
        /// Purpose         : Invokes the Put API request for HR
        /// </summary>
        /// <param name="resignationModel"></param>
        /// <returns></returns>
        public Resignation Put(ResignationViewModel resignationModel)
        {
            var updateRecord = _context.Resignations.FirstOrDefault(x => x.ResignationId == resignationModel.ResignationId);

            if (updateRecord == null)
            {
            }
            else
            {
                if (resignationModel.Role.Equals("HR"))
                {
                    if (!resignationModel.Status)
                    {
                        resignationModel.DeletedDate = System.DateTime.Now;
                    }
                    else
                    {
                        updateRecord.ResignationApprovedDate = resignationModel.ResignationApprovalDate;
                        updateRecord.ExitInterviewDate       = resignationModel.ExitInterviewDate;
                        updateRecord.LastModifiedDate        = System.DateTime.Now;
                    }
                    updateRecord.HRId = GetEmployeeId(resignationModel.SubId);
                    updateRecord.ResignationStatus = resignationModel.ResignationStatus.Trim() + BYHR;
                    updateRecord.HRRemark          = resignationModel.Remark;
                    updateRecord.IsRehiredByHR     = resignationModel.IsRehired;
                    _context.Update(updateRecord);
                    _context.SaveChanges();
                }
            }
            return(updateRecord);
        }
        public async Task <ActionResult> Resignation(ResignationViewModel reg, Int64 ReasonId, string RelievingReason)
        {
            string        UserId     = User.Identity.GetUserId();
            UserViewModel userDetail = generic.GetUserDetail(UserId);


            var      empjoiningdetails = db.EmpJoiningDetail.Where(e => e.UserId == UserId).FirstOrDefault();
            var      dateofresignation = DateTime.UtcNow;
            DateTime lastworkingday    = dateofresignation.AddDays(empjoiningdetails.NoticePeriod);

            reg.DateofResignation = dateofresignation;
            reg.RelievingReason   = RelievingReason;
            reg.ReasonId          = ReasonId;
            reg.LastWorkingDate   = lastworkingday;
            reg.Status            = 0;
            reg.UserId            = UserId;
            reg.AprrovedOn        = DateTime.UtcNow;
            bool res = ems.Addresignation(reg);

            if (userDetail.Role != "Admin")
            {
                string callbackUrl = await SendResignationEmailTokenAsync(userDetail.ReportingAuthority, userDetail.ReportingAuthorityname, userDetail.Name, reg.Reason, reg.RelievingReason, reg.DateofResignation, "Req");
            }
            return(Json(res, JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
 /// <summary>
 /// Method Name     : CommanDataForHR
 /// Author          : Binal Patel
 /// Creation Date   : 7 November 2019
 /// Purpose         : Command data used for HR accept and reject action
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 /// <param name="resignation">resignation</param>
 public void CommanAcceptByHR(Resignation resignation, ResignationViewModel resignationModel)
 {
     resignation.HRId = GetEmployeeId(resignationModel.SubId);
     resignation.ResignationStatus = resignationModel.ResignationStatus.Trim() + BYHR;
     resignation.HRRemark          = resignationModel.Remark;
     resignation.IsRehiredByHR     = resignationModel.IsRehired;
 }
Exemple #4
0
        /// <summary>
        /// Method Name     : Approve
        /// Author          : Binal Patel
        /// Creation Date   : 8 November 2019
        /// Purpose         : Approve Method
        /// </summary>
        /// <param name="resignationModel">resignationModel</param>
        public void Approve(ResignationViewModel resignationModel)
        {
            var resignation = _context.Resignations.FirstOrDefault(x => x.ResignationId == resignationModel.ResignationId);

            if (resignation != null)
            {
                AcceptorReject(resignation, resignationModel);
            }
        }
Exemple #5
0
        /// <summary>
        /// Method Name     : CommanDataForRM
        /// Author          : Binal Patel
        /// Creation Date   : 7 November 2019
        /// Purpose         : Command data used for RM accept and reject action
        /// </summary>
        /// <param name="resignationModel">resignationModel</param>
        /// <param name="resignation">resignation</param>
        public void CommanDataForRM(Resignation resignation, ResignationViewModel resignationModel)
        {
            int employeeId = GetEmployeeId(resignationModel.SubId);

            resignation.ManagerId          = employeeId;
            resignation.ResignationStatus  = resignationModel.ResignationStatus.Trim() + BYRM;
            resignation.ManagerRemark      = resignationModel.Remark;
            resignation.IsRehiredByManager = resignationModel.IsRehired;
        }
 public IActionResult Approve([FromBody] ResignationViewModel resignationModel)
 {
     if (ModelState.IsValid)
     {
         _approvalResignationBLL.Approve(resignationModel);
         return(Ok());
     }
     return(BadRequest());
 }
        public IActionResult Put([FromBody] ResignationViewModel resignationModel)
        {
            var source = _approvalResignationBLL.Put(resignationModel);

            if (source == null)
            {
                return(BadRequest());
            }
            else
            {
                return(Ok(source));
            }
        }
Exemple #8
0
 /// <summary>
 /// Method Name     : ApproveorReject
 /// Author          : Binal Patel
 /// Creation Date   : 8 November 2019
 /// Purpose         : Accept or Reject Action Performed
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 /// <param name="resignation">resignation</param>
 public void AcceptorReject(Resignation resignation, ResignationViewModel resignationModel)
 {
     if (resignationModel.Role.Equals("HR"))
     {
         AcceptByHR(resignation, resignationModel);
         _context.Update(resignation);
         _context.SaveChanges();
     }
     if (resignationModel.Role.Equals("RM"))
     {
         AcceptByRM(resignation, resignationModel);
         _context.Update(resignation);
         _context.SaveChanges();
     }
 }
Exemple #9
0
 /// <summary>
 /// Method Name     : AcceptByRM
 /// Author          : Binal Patel
 /// Creation Date   : 8 November 2019
 /// Purpose         : Accept or Reject Action for RM
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 /// <param name="resignation">resignation</param>
 public void AcceptByRM(Resignation resignation, ResignationViewModel resignationModel)
 {
     if (resignation.ResignationStatus == "Initiated" && !resignation.ExitInterviewDate.HasValue)
     {
         if (!resignationModel.Status)
         {
             resignation.DeletedDate = System.DateTime.Now;
             CommanDataForRM(resignation, resignationModel);
         }
         else
         {
             resignation.LastModifiedDate = System.DateTime.Now;
             CommanDataForRM(resignation, resignationModel);
         }
     }
 }
        /// <summary>
        /// Method Name     : Approve
        /// Author          : Vrunda Patel & Nilesh avasthi
        /// Creation Date   : 16 October 2019
        /// Purpose         : Invokes the Post API request for Approve and Reject
        /// </summary>
        /// <param name="resignationModel">ResignationModel</param>
        public void Approve(ResignationViewModel resignationModel)
        {
            List <string> roles = new List <string> {
                "EMPLOYEE", "HR", "RM"
            };
            List <string> rolesClaims = _claims.Roles;

            foreach (var items in roles)
            {
                if (rolesClaims.Contains(items))
                {
                    resignationModel.Role = items;
                }
            }
            resignationModel.SubId = _claims.UserId;
            _approvalResignationDAL.Approve(resignationModel);
        }
Exemple #11
0
 /// <summary>
 /// Method Name     : AcceptByHR
 /// Author          : Binal Patel
 /// Creation Date   : 8 November 2019
 /// Purpose         : Accept or Reject Action for HR
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 /// <param name="resignation">resignation</param>
 public void AcceptByHR(Resignation resignation, ResignationViewModel resignationModel)
 {
     if (resignation.ManagerId > 0 && resignation.ResignationStatus != string.Empty)
     {
         if (!resignationModel.Status)
         {
             resignation.DeletedDate = System.DateTime.Now;
             CommanAcceptByHR(resignation, resignationModel);
         }
         else
         {
             resignation.ResignationApprovedDate = resignationModel.ResignationApprovalDate;
             resignation.ExitInterviewDate       = resignationModel.ExitInterviewDate;
             resignation.LastModifiedDate        = System.DateTime.Now;
             CommanAcceptByHR(resignation, resignationModel);
         }
     }
 }
 /// <summary>
 ///  Method Name    : Put
 /// Author          : Binal Patel
 /// Creation Date   : 17 October 2019
 /// Purpose         : Invokes the Put API request for HR
 /// </summary>
 /// <param name="resignationModel">ResignationModel</param>
 /// <returns></returns>
 public Resignation Put(ResignationViewModel resignationModel)
 {
     resignationModel.SubId = _claims.UserId;
     resignationModel.Role  = _claims.Roles[1];
     return(_approvalResignationDAL.Put(resignationModel));
 }
Exemple #13
0
 /// <summary>
 /// Method Name     : Put
 /// Author          : Binal Patel
 /// Creation Date   : 17 October 2019
 /// Purpose         : Invokes the Put API request for HR
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 /// <returns></returns>
 public Resignation Put(ResignationViewModel resignationModel)
 {
     return(_databaseQuery.Put(resignationModel));
 }
Exemple #14
0
 /// <summary>
 /// Method Name     : Approve
 /// Author          : Vrunda Patel & Nilesh avasthi
 /// Creation Date   : 17 October 2019
 /// Purpose         : Invokes the Post API request for Approve and Reject
 /// Revision        :
 /// </summary>
 /// <param name="resignationModel">resignationModel</param>
 public void Approve(ResignationViewModel resignationModel)
 {
     _databaseQuery.Approve(resignationModel);
 }