public JsonResult ChangeRequestStatus(int id = 0, int acctiontype = 0, string description = "", string term = null, string studentCode = null)
        {
            var     status    = -1;
            decimal logTypeId = -1;

            if (id > 0)
            {
                if (acctiontype == 1)//تایید اولیه
                {
                    status    = (byte)RequestStatus.M_First_Accepted;
                    logTypeId = (byte)LogsType.FirstAcceptReqeustByInternationalManager;
                }
                if (acctiontype == 2)//رد
                {
                    status    = (byte)RequestStatus.M_Rejected;
                    logTypeId = (byte)LogsType.RejectRequestByInternationalManager;
                }
                if (acctiontype == 3)//تایید نهایی
                {
                    status    = (byte)RequestStatus.M_Final_Accepted;
                    logTypeId = (byte)LogsType.FinalAcceptRequestByInternationalManager;
                }

                if (status != -1)
                {
                    if (status == (int)RequestStatus.M_Final_Accepted &&
                        !string.IsNullOrEmpty(term) &&
                        !string.IsNullOrEmpty(studentCode) &&
                        Helpers.IsNumeric(studentCode)
                        )
                    {
                        var convertedTerm = $"{term.Substring(0, 2)}{term.Substring(6, 1)}";
                        var student       = _newStudentService.FindOne(s => s.stcode == studentCode && s.term.ToString() == convertedTerm);
                        if (student != null)
                        {
                            student.RequestId = decimal.Parse(id.ToString());
                            _newStudentService.UpdatetItem(student);
                        }
                    }

                    var req = _requestService.FindById(id);
                    if (req != null && status > 0)
                    {
                        req.Status      = Convert.ToByte(status);
                        req.Description = description;
                        _requestService.UpdatetItem(req);

                        if (logTypeId > 0)
                        {
                            var userId   = (Session["UserCmsInfo"] as UserLoginCmsViewModel)?.UserId;
                            var deviceIP = Request.UserHostAddress;
                            var userLog  = new ISR.DAL.Amozesh_Initial.UserLog()
                            {
                                UserLogTypeId = logTypeId,
                                LogDate       = DateTime.Now,
                                ModifyId      = id,
                                Description   = $"reqId={int.Parse(id.ToString())}",
                                UserId        = userId,
                                IP_dev        = deviceIP
                            };
                            _userLogService.AddNewItem(userLog);
                        }
                        return(new JsonResult {
                            Data = new { Result = true, Message = "ok" }
                        });
                    }
                    return(new JsonResult {
                        Data = new { Result = false, Message = "Invalid" }
                    });
                }
                return(new JsonResult {
                    Data = new { Result = false, Message = "Invalid" }
                });
            }
            return(new JsonResult {
                Data = new { Result = false, Message = "Invalid" }
            });
        }