示例#1
0
        public ActionResult Process(List <HumanResource_EmployeeBasic> objEmployee, ProcessDate objDate)
        {
            var user = (User)Session["CurrentUser"];
            var res  = _attendanceProcessRepository.Process(objEmployee, objDate, user);

            return(Json(res, JsonRequestBehavior.AllowGet));
        }
        public string Process(List <HumanResource_EmployeeBasic> objEmployee, ProcessDate objDate, User user)
        {
            string rv = "";

            try
            {
                foreach (var item in objEmployee)
                {
                    ProcessDate p = new ProcessDate
                    {
                        EmpID     = item.EmpID,
                        StartDate = objDate.StartDate,
                        EndDate   = objDate.EndDate
                    };
                    _dataService.Process(p, user);
                }
                rv = Operation.Success.ToString();
            }
            catch (Exception e)
            {
                rv = Operation.Error.ToString();
            }

            return(rv);
        }
示例#3
0
 public void Process(ProcessDate p, User user)
 {
     _dbConn = new SqlConnection(_connectionString);
     _dbConn.Open();
     _cmd = new SqlCommand("sp_Process_Attendance", _dbConn)
     {
         CommandType = CommandType.StoredProcedure
     };
     _cmd.Parameters.Add(new SqlParameter("@call_name", "Process_By_ID"));
     _cmd.Parameters.Add(new SqlParameter("@EmpID", p.EmpID));
     _cmd.Parameters.Add(new SqlParameter("@StartDate", p.StartDate.ToString("yyyy-MM-dd")));
     _cmd.Parameters.Add(new SqlParameter("@EndDate", p.EndDate.ToString("yyyy-MM-dd")));
     _da = new SqlDataAdapter(_cmd);
     _dt = new DataTable();
     _da.Fill(_dt);
     _dbConn.Close();
 }
        public void Calculate()
        {
            var dateStart       = LoanDetails.GrantedDate;
            var dateEnd         = dateStart.AddMonths(12);
            var totalDaysInYear = (int)(dateEnd - dateStart).TotalDays;

            Rebate            = 0;
            Interest          = 0;
            Fines             = 0;
            Status            = "Current";
            FinesRatePerMonth = GlobalSettings.RateOfFines / 12;

            decimal dailyFinesRate     = (FinesRatePerMonth * 12) / totalDaysInYear;
            var     interestRatePerDay = LoanDetails.InterestRate / totalDaysInYear;
            int     daysDue;

            // REBATE - Loan must be paid (zero balance) before the maturity date
            if (LoanBalance == 0)
            {
                if (ProcessDate <= LoanDetails.MaturityDate)
                {
                    daysDue = (int)LoanDetails.MaturityDate.Subtract(ProcessDate).TotalDays;
                    Rebate  = (daysDue * interestRatePerDay) * LoanDetails.LoanAmount;
                    Status  = "Settled";
                }
            }
            else
            {
                if (ProcessDate > LoanDetails.MaturityDate)
                {
                    daysDue  = (int)ProcessDate.Subtract(LoanDetails.MaturityDate).TotalDays;
                    Interest = (daysDue * interestRatePerDay) * LoanDetails.LoanAmount;
                    Fines    = (LoanBalance * dailyFinesRate) * daysDue;
                    Status   = "Overdue";
                }
            }
        }
示例#5
0
        /// <summary>
        /// Main method for entry into application
        /// </summary>
        public static void Main(string[] args)
        {
            ApplicationSettings application = ApplicationSettings.Instance;

            application.Initialize();

            ApplicationController.IdentifyNewFiles(application);

            Console.WriteLine("Data Processing started...");

            if (application.ResetData)
            {
                Console.WriteLine("Clearing FACT Transaction");
                ClearDown.ClearTransaction(application);

                Console.WriteLine("Clearing ODS Bank");
                ClearDown.ClearBank(application);

                Console.WriteLine("Clearing ODS BankEdit");
                ClearDown.ClearBankEdit(application);

                Console.WriteLine("Clearing ODS ExpenseEdit");
                ClearDown.ClearExpenseEdit(application);

                Console.WriteLine("Clearing ODS PayeeMapping");
                ClearDown.ClearPayeeMapping(application);

                Console.WriteLine("Clearing DIM Date");
                ClearDown.ClearDIMSRCEntity("[DIM].[Date]");

                Console.WriteLine("Clearing DIM DividendThreshold");
                ClearDown.ClearDIMSRCEntity("[DIM].[DividendThreshold]");

                Console.WriteLine("Clearing DIM Payee");
                ClearDown.ClearDIMSRCEntity("[DIM].[Payee]");

                Console.WriteLine("Clearing DIM Salary");
                ClearDown.ClearDIMSRCEntity("[DIM].[Salary]");

                Console.WriteLine("Clearing DIM Transaction Type");
                ClearDown.ClearDIMSRCEntity("[DIM].[TransactionType]");

                Console.WriteLine("Clearing SRC BankIntouch");
                ClearDown.ClearDIMSRCEntity("[SRC].[BankIntouch]");

                Console.WriteLine("Clearing SRC BankCaterAllen");
                ClearDown.ClearDIMSRCEntity("[SRC].[BankCaterAllen]");

                Console.WriteLine("Clearing SRC Expense");
                ClearDown.ClearDIMSRCEntity("[SRC].[Expense]");

                Console.WriteLine("Clearing SRC Invoice");
                ClearDown.ClearDIMSRCEntity("[SRC].[Invoice]");
            }

            Console.WriteLine("Processing SRC Bank Cater Allen");
            ProcessBankCaterAllen.ProcessAllFiles(application);

            Console.WriteLine("Processing SRC Bank Intouch");
            ProcessBankIntouch.ProcessAllFiles(application);

            Console.WriteLine("Processing SRC Expense");
            ProcessExpense.ProcessAllFiles(application);

            Console.WriteLine("Processing SRC Invoice");
            ProcessInvoice.ProcessAllFiles(application);

            Console.WriteLine("Processing DIM Date");
            ProcessDate.LoadDates(application);

            Console.WriteLine("Processing DIM Dividend Threshold");
            ProcessDividendThreshold.ProcessAllFiles(application);

            Console.WriteLine("Processing DIM Payee");
            ProcessPayee.ProcessAllFiles(application);

            Console.WriteLine("Processing DIM Salary");
            ProcessSalary.ProcessAllFiles(application);

            Console.WriteLine("Processing DIM TransactionType");
            ProcessTransactionType.ProcessAllFiles(application);

            Console.WriteLine("Processing ODS Bank");
            ProcessBank.ProcessAllFiles(application);

            Console.WriteLine("Processing ODS Bank Edit");
            ProcessBankEdit.ProcessAllFiles(application);

            Console.WriteLine("Processing ODS Expense Edit");
            ProcessExpenseEdit.ProcessAllFiles(application);

            Console.WriteLine("Processing ODS Payee Mapping");
            ProcessPayeeMapping.ProcessAllFiles(application);

            Console.WriteLine("Processing FACT Transaction Salary");
            ProcessTransaction.ProcessSalaryTransaction(application);

            Console.WriteLine("Processing FACT Transaction Expense");
            ProcessTransaction.ProcessExpenseTransaction(application);

            Console.WriteLine("Processing FACT Transaction Bank");
            ProcessTransaction.ProcessBankTransaction(application);

            Console.WriteLine("Data Processing complete!");
            Console.ReadLine();
        }
示例#6
0
 public static void SetVariables()
 {
     ProcessDate = DateTime.Now;
     //AvailableMarketDate = ProcessDate;
     AvailableMarketDate = ProcessDate.AddDays(-1);
 }
示例#7
0
    protected void Submit_Click(object sender, EventArgs e)
    {
        DateTime ProcessDate;
        DateTime AdvancePayCompletedDate;
        string   Advanceemployeeid;
        //Update Code Write Here

        SqlConnection con1 = new SqlConnection(constring);
        DataTable     dt   = new DataTable();

        con1.Open();
        DateTime date = DateTime.Today;

        date = Convert.ToDateTime(date.ToShortDateString());
        //Fetching Claim Details from ERSClaim Table based on AdvanceID for Mail Triggering
        int            i   = 0;
        DataTable      dt3 = new DataTable();
        DataRow        dr3;
        SqlDataAdapter da3 = new SqlDataAdapter("Select ERSAdvanceReason,ERSGrossPay,ERSAdvanceAmount,ERSApproverName,ERSApproverMailID,ERSAdvanceRequestProcessDate,ERSAdvanceApproverRemarks,ERSApplyDate,ERSAdavanceRequestStatus,ERSApproverID,ERSEmployeeID from ERSAdvancePay where ERSApproverID='" + Session["SessionEmployeeID"].ToString() + "'and ERSAdvanceID='" + AdvanceID.Text + "'", con1);

        da3.Fill(dt3);
        if (dt3.Rows.Count > 0)
        {
            dr3 = dt3.Rows[i];
            string Advanceid  = AdvanceID.Text;
            string reason     = Convert.ToString(dr3[0]);
            string grosspay   = Convert.ToString(dr3[1]);
            string Amount     = Convert.ToString(dr3[2]);
            string name       = Convert.ToString(dr3[3]);
            string mailiD     = Convert.ToString(dr3[4]);
            string remarks    = Convert.ToString(dr3[6]);
            string Applydate  = Convert.ToString(dr3[7]);
            string Status     = Convert.ToString(dr3[8]);
            string Approverid = Convert.ToString(dr3[9]);
            Advanceemployeeid = Convert.ToString(dr3[10]);

            string ename  = Session["SessionEmployeeName"].ToString();
            string mailid = Session["SessionUserMailID"].ToString();


            if (ActionDropDown.SelectedValue == "Approved")
            {
                // Action.Visible = false;
                ActionDropDown.Visible = false;
                SqlDataReader myReader = null;
                ProcessDate             = DateTime.Now;
                AdvancePayCompletedDate = ProcessDate.AddMonths(4);
                SqlCommand myCommand = new SqlCommand("update ERSAdvancePay set ERSAdavanceRequestStatus=@var2 ,ERSAdvanceApproverRemarks=@var3,AdvanceCompletedDate=@var5,AdvanceApproverActionDate=@var6 where ERSAdvanceID='" + AdvanceID.Text + "'", con1);

                myCommand.Parameters.AddWithValue("@var2", ActionDropDown.SelectedValue);
                myCommand.Parameters.AddWithValue("@var3", AdvanceRemarks.Text);
                myCommand.Parameters.AddWithValue("@var5", AdvancePayCompletedDate);
                myCommand.Parameters.AddWithValue("@var6", ProcessDate);
                //myCommand.Parameters.AddWithValue("@var4", "SNPL2048");
                myReader = myCommand.ExecuteReader();
                // Triggering a Mail to Employee Regarding Claim Status
                string subject = "ERS-Advance Pay Acknowledgement  Approved at <Level 1>";
                string body    = "Dear  " + " " + ename + ",<br /><br />Your Advance Pay request with the following details has been Approved by Approver<br /><br /> AdvancePayID: " + Advanceid
                                 + "<br />Claim Date: " + Applydate +
                                 "<br />Claim Reason: " + reason + "<br />Claim Amount: " + Amount + "<br /><br />Claim Status: \tApproved<br /><br /> " + "Approver Remarks: " + AdvanceRemarks.Text +
                                 "<br />Process Date: " + ProcessDate + "<br /> Approver: " + name +
                                 "<br />Please click here to  <a href=\"http://192.168.0.105/Login.aspx\">login</a>" +
                                 "<br /><br /><br />Thanks And Regards<br />ERS Team<br /><br />SNPL";
                sendMailToEmployee(subject, body, mailid);
                alertmodal.Style.Add("background-color", "#d7ecc6");
                Alert.Style.Add("background-color", "#d7ecc6");
                Label1.ForeColor = System.Drawing.ColorTranslator.FromHtml("green");
                Label6.ForeColor = System.Drawing.ColorTranslator.FromHtml("black");

                Label6.Text   = "Advancepay has been approved";
                Label1.Text   = "Success!";
                Alert.Visible = true;
                grid();
                // ClientScript.RegisterStartupScript(GetType(), "Alert", "Alert(' Advancepay has been approved');", true);
            }

            else if (ActionDropDown.SelectedValue == "Rejected")
            {
                //Action.Visible = false;
                ActionDropDown.Visible = false;

                SqlDataReader myReader = null;
                ProcessDate             = DateTime.Now;
                AdvancePayCompletedDate = ProcessDate.AddMonths(4);

                //string Remarks = Request.Form["TextArea1"];
                //Label3.Text = "UnAuthorized Employee";
                SqlCommand myCommand = new SqlCommand("update ERSAdvancePay set ERSAdvanceRequestProcessDate=@var1 ,ERSAdavanceRequestStatus=@var2 ,ERSAdvanceApproverRemarks=@var3 where ERSAdvanceID='" + AdvanceID.Text + "'", con1);
                myCommand.Parameters.AddWithValue("@var1", ProcessDate);
                myCommand.Parameters.AddWithValue("@var2", ActionDropDown.SelectedValue);
                myCommand.Parameters.AddWithValue("@var3", AdvanceRemarks.Text);
                // myCommand.Parameters.AddWithValue("@var4", "SNPL2048");

                myReader = myCommand.ExecuteReader();
                //Triggering a Mail to Employee Regarding Claim Status
                // Triggering a Mail to Employee Regarding Claim Status
                string subject = "ERS-Advance Pay Acknowledgement Rejected at <Level 1>";
                string body    = "Dear  " + " " + ename + ",<br /><br /> Your Claim request with the following details has been Rejected by Approver<br /><br /> Claim ID: " + Advanceid
                                 + "<br />Apply Date:" + Applydate +
                                 "<br />Claim Reason:" + reason + "<br />Claim Amount: <br />" + Amount + "\n<br />Claim Status: \tRejected\n\n<br /><br /> " + "Approver Remarks:" + AdvanceRemarks.Text +
                                 "\n<br />Process Date:" + ProcessDate + "\n<br /> Approver: " + name +
                                 "<br />Please click here to  <a href=\"http://192.168.0.105/Login.aspx\">login</a>" +
                                 "<br /><br />Thanks And Regards\n<br />ERS Team\n<br />SNPL";
                sendMailToEmployee(subject, body, mailid);
                alertmodal.Style.Add("background-color", "#d7ecc6");
                Alert.Style.Add("background-color", "#d7ecc6");
                Label1.ForeColor = System.Drawing.ColorTranslator.FromHtml("green");
                Label6.ForeColor = System.Drawing.ColorTranslator.FromHtml("black");

                Label1.Text   = "Success!";
                Label6.Text   = "Advancepay has been rejected";
                Alert.Visible = true;
                grid();
                // ClientScript.RegisterStartupScript(GetType(), "Alert", "Alert('Advancepay has been rejected.');", true);
            }
            else if (ActionDropDown.SelectedValue == "Forward to Next Level")
            {
                SqlDataReader myReader = null;
                ProcessDate             = DateTime.Now;
                AdvancePayCompletedDate = ProcessDate.AddMonths(4);


                //Start ... Code for find from Approver Action level and To Approver Action level while forwarding claim//
                if (Session["SessionEmployeeID"].ToString() == "SNPL-HYD-2048")
                {
                    Appname   = "V S N Murthy";
                    Appid     = "SNPL-HYD-2016";
                    fromlevel = "Level 1";
                    tolevel   = "Level 2";
                }
                else if (Session["SessionEmployeeID"].ToString() == "SNPL-HYD-2016")
                {
                    Appname   = "B V Chowdary";
                    Appid     = "SNPL-HYD-1107";
                    fromlevel = "Level 2";
                    tolevel   = "Level 3";
                }

                //End ... Code for find from Approver Action level and To Approver Action level while forwarding claim//


                //Label3.Text = "UnAuthorized Employee";
                // string Remarks = Request.Form["TextArea1"];
                SqlCommand myCommand = new SqlCommand("update ERSAdvancePay set ERSAdvanceRequestProcessDate=@var1 ,ERSAdavanceRequestStatus=@var2 ,ERSAdvanceApproverRemarks=@var3,ERSApproverID=@var4,ERSApproverName=@var5 where ERSAdvanceID='" + AdvanceID.Text + "'", con1);
                myCommand.Parameters.AddWithValue("@var1", ProcessDate);
                myCommand.Parameters.AddWithValue("@var2", "Pending");
                myCommand.Parameters.AddWithValue("@var3", AdvanceRemarks.Text);
                myCommand.Parameters.AddWithValue("@var4", Appid);
                myCommand.Parameters.AddWithValue("@var5", Appname);
                myReader = myCommand.ExecuteReader();
                //Triggering a Mail to Employee Regarding Claim Status
                string subject = "ERS-Advance Pay Acknowledgement Forwarded from <Level 1> To <Level 2>";
                string body    = "Dear  " + " " + ename + ",\n\n<br /><br /> Your Claim request with the following details has been forwarded by Approver<br /><br />\n\n Claim ID" + Advanceid
                                 + "<br />Claim Date:" + Applydate +
                                 "<br />Claim Reason:" + reason + "<br />Claim Amount: " + Amount + "<br />Claim Status :\tForwarded To Next Level<br /> " + "<br />Approver Remarks: " + AdvanceRemarks.Text +
                                 "<br />Process Date: " + ProcessDate + "<br /> Approver ID: " + name +
                                 "<br />Please click here to  <a href=\"http://192.168.0.105/Login.aspx\">login</a>" +
                                 "<br /><br /><br />Thanks & Regards<br />ERS Team<br />SNPL";
                sendMailToEmployee(subject, body, mailid);
                alertmodal.Style.Add("background-color", "#d7ecc6");
                Alert.Style.Add("background-color", "#d7ecc6");
                Label1.ForeColor = System.Drawing.ColorTranslator.FromHtml("green");
                Label6.ForeColor = System.Drawing.ColorTranslator.FromHtml("black");

                Label1.Text   = "Success!";
                Label6.Text   = "Advancepay has been Forwarded to next level of approver.";
                Alert.Visible = true;
                grid();
                // ClientScript.RegisterStartupScript(GetType(), "Alert", "Alert('Advancepay has been Forwarded to next level of approver.');", true);
            }
            AdvanceRemarks.Text = string.Empty;
            ActionDropDown.ClearSelection();
            con1.Close();
            BindGrid();
        }
        else
        {
        }
    }
示例#8
0
        private static ArrayList _EnumerateDates(DateTime startDate, DateTime endDate, ProcessDate _p)
        {
            ArrayList list = new ArrayList();

            list.Add(_p(startDate));

            // we've already trimmed the dates
            if (startDate != endDate)
            {
                for (DateTime date = startDate.AddDays(1); date <= endDate; date = date.AddDays(1))
                {
                    list.Add(_p(date));
                }
            }

            return(list);
        }