Пример #1
0
        public IActionResult PANApproval(enmSaveStatus?_enmSaveStatus, enmMessage?_enmMessage)
        {
            if (_enmSaveStatus != null)
            {
                ViewBag.SaveStatus = (int)_enmSaveStatus.Value;
                ViewBag.Message    = _enmMessage?.GetDescription();
            }
            mdlTcPANWraper mdl = new mdlTcPANWraper();

            ModelState.Clear();
            return(View(mdl));
        }
Пример #2
0
        public async Task <IActionResult> PANApprovalAsync(mdlTcPANWraper mdl, string submitdata, [FromServices] IConsProfile consProfile)
        {
            try
            {
                ModelState.Clear();
                if (submitdata == "LoadData")
                {
                    if (mdl.TcId == "")
                    {
                        ModelState.AddModelError(nameof(mdl.TcId), "TcId Required");
                    }
                    else
                    {
                        mdl = consProfile.GetPANDetails(enmLoadData.ByID, new mdlFilterModel()
                        {
                            idFilter = new mdlIdFilter()
                            {
                                TcId = mdl.TcId
                            }
                        }, 0, true).FirstOrDefault();
                    }
                    return(View(mdl));
                }
                else if (submitdata == "Approve" || submitdata == "Reject")
                {
                    bool HaveModelError = false;
                    if (mdl.DetailId == 0)
                    {
                        HaveModelError = true;
                        ModelState.AddModelError("", "Invalid Data");
                    }
                    if (submitdata == "Reject" && (string.IsNullOrWhiteSpace(mdl.ApprovalRemarks)))
                    {
                        HaveModelError = true;
                        ModelState.AddModelError(nameof(mdl.ApprovalRemarks), "Remarks Required");
                    }

                    if (!HaveModelError)
                    {
                        var data = _context.TblTcPanDetails.Where(p => p.DetailId == mdl.DetailId).FirstOrDefault();
                        if (data == null)
                        {
                            HaveModelError = true;
                            ModelState.AddModelError("", "Invalid Data");
                        }
                        else
                        {
                            data.IsApproved      = submitdata == "Approve" ? enmApprovalType.Approved : enmApprovalType.Rejected;
                            data.ApprovalRemarks = mdl.ApprovalRemarks;
                            data.ApprovedBy      = _currentUsers.EmpId;
                            data.ApprovedDt      = DateTime.Now;
                            _context.Update(data);
                            await _context.SaveChangesAsync();

                            return(RedirectToAction("PANApproval",
                                                    new { _enmSaveStatus = enmSaveStatus.success, _enmMessage = submitdata == "Approve" ? enmMessage.ApprovedSucessfully : enmMessage.RejectSucessfully }));
                        }
                    }
                    if (HaveModelError)
                    {
                        ViewBag.SaveStatus = (int)enmSaveStatus.danger;
                        ViewBag.Message    = enmMessage.InvalidData;
                    }
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
            }
            if (mdl == null)
            {
                mdl = new mdlTcPANWraper();
            }
            return(View(mdl));
        }