Esempio n. 1
0
        public ActionResult Reroute(string WorkflowID, string ReportMode)
        {
            Session["ReportMode"] = ReportMode;

            string UserName = Session["UserName"] as string;

            if (UserName == null || UserName.Equals(String.Empty))
            {
                return(RedirectToAction("Login", "Login", new { UserName = "" }));
            }

            RerouteModel rerouteModel = new RerouteModel();

            if (TempData["rerouteModel"] != null)
            {
                rerouteModel = TempData["rerouteModel"] as RerouteModel;
            }
            else
            {
                rerouteModel.WorkflowID          = WorkflowID;
                rerouteModel.EntryModel          = new LINQCalls().getWorkflowEntry(WorkflowID);
                rerouteModel.CurrentRequestStage = rerouteModel.EntryModel.RequestStage;
            }

            rerouteModel.NewRequestStage = SelectListItemHelper.GetRequestStages();
            return(View(rerouteModel));
        }
Esempio n. 2
0
        internal string routeTargetEntries(RerouteModel rerouteModel, StaffADProfile staffADProfile, string ConnString)
        {
            string retVal     = null;
            string connString = getConnectionString(ConnString);

            SqlConnection conn = new SqlConnection(connString);
            SqlCommand    cmnd = new SqlCommand();

            cmnd.Connection  = conn;
            cmnd.CommandType = CommandType.StoredProcedure;
            cmnd.CommandText = "zsp_reroute_target_entries";

            cmnd.Parameters.Add("@workflowid", SqlDbType.VarChar).Value       = rerouteModel.WorkflowID;
            cmnd.Parameters.Add("@newrequeststageid", SqlDbType.Int).Value    = Int32.Parse(rerouteModel.NewRequestStageCode);
            cmnd.Parameters.Add("@comments", SqlDbType.VarChar).Value         = rerouteModel.Comments;
            cmnd.Parameters.Add("@target_status", SqlDbType.VarChar).Value    = "Rerouted";
            cmnd.Parameters.Add("@hr_uploader_name", SqlDbType.VarChar).Value = staffADProfile.user_logon_name;
            cmnd.Parameters.Add("@hr_uploader_id", SqlDbType.VarChar).Value   = staffADProfile.employee_number;
            cmnd.Parameters.Add("@appperiod", SqlDbType.VarChar).Value        = staffADProfile.appperiod;
            cmnd.Parameters.Add("@appid", SqlDbType.VarChar).Value            = DataHandlers.APP_ID;

            cmnd.Parameters.Add("@rErrorCode", SqlDbType.Int, 2).Direction      = ParameterDirection.Output;
            cmnd.Parameters.Add("@rErrorMsg", SqlDbType.VarChar, 255).Direction = ParameterDirection.Output;

            SqlDataReader dr;

            try {
                // Open the data connection
                cmnd.Connection = conn;
                conn.Open();

                dr = cmnd.ExecuteReader();

                int retCode = int.Parse(cmnd.Parameters["@rErrorCode"].Value.ToString());
                if (retCode != 0)
                {
                    retVal = retCode + "|" + cmnd.Parameters["@rErrorMsg"].Value.ToString();
                }
            } catch (SqlException ex) {
                if (ex.Number != 0)
                {
                    retVal = ex.Number + "|" + ex.Message;
                    logWriter.WriteErrorLog(string.Format("routeTargetEntries : Exception!!! / {0}", retVal));
                }
            } finally {
                conn.Close();
                cmnd.Dispose();
                dr = null;
            }
            return(retVal);
        }
Esempio n. 3
0
        public ActionResult Reroute(string RerouteAction, RerouteModel rerouteModel)
        {
            //now resolve the user profile from AD and Xceed
            StaffADProfile staffADProfile = new StaffADProfile();

            staffADProfile.user_logon_name = Session["UserName"] as string;

            //AD
            ActiveDirectoryQuery activeDirectoryQuery = new ActiveDirectoryQuery(staffADProfile);

            staffADProfile = activeDirectoryQuery.GetStaffProfile();
            if (staffADProfile == null)
            {
                ViewBag.ErrorMessage = "Your profile is not properly setup on the system. Please contact InfoTech.";
                return(View());
            }

            // staffADProfile = new LINQCalls().setInitiatorFields( staffADProfile );

            /*
             * if( staffADProfile.branch_code==null ){
             *   ViewBag.ErrorMessage="Your profile is not properly setup for Target. Please contact Human Resources.";
             *   return View();
             * }
             */
            staffADProfile.appperiod = "20150712";
            string _retVal = new AppDatabase().routeTargetEntries(rerouteModel, staffADProfile, "AppraisalDbConnectionString");

            Debug.WriteLine(_retVal);

            if (_retVal != null)
            {
                TempData["UploadComplete"] = "false";
                ViewBag.ErrorMessage       = _retVal;
                TempData["rerouteModel"]   = rerouteModel;
            }
            else
            {
                int newstageid = Int32.Parse(rerouteModel.NewRequestStageCode);
                var approvers  = new LINQCalls().getApproverNames(rerouteModel.WorkflowID, newstageid);
                TempData["PostBackMessage"] = REROUTEDMSG;
                TempData["Approvers"]       = string.Join("\\n", approvers.ToArray());
                return(RedirectToAction("Reports", "Reports", new { UserName = Session["UserName"] as string, ReportMode = Session["ReportMode"] as string }));
            }

            return(RedirectToAction("Reroute", "Reroute", new { UserName = Session["UserName"] as string, ReportMode = Session["ReportMode"] as string }));
        }