private void PrepareEditView()
        {
            MDSalarySessionEntity mDSalarySessionEntity = CurrentMDSalarySessionEntity;


            if (!mDSalarySessionEntity.IsNew)
            {
                if (ddlFiscalYearID.Items.Count > 0 && mDSalarySessionEntity.FiscalYearID != null)
                {
                    ddlFiscalYearID.SelectedValue = mDSalarySessionEntity.FiscalYearID.ToString();
                }

                txtName.Text             = mDSalarySessionEntity.Name.ToString();
                txtSessionStartDate.Text = mDSalarySessionEntity.SessionStartDate.ToStringDefault();
                txtSessionEndDate.Text   = mDSalarySessionEntity.SessionEndDate.ToStringDefault();
                txtRemarks.Text          = mDSalarySessionEntity.Remarks.ToString();
                if (ddlSalarySessionStatusID.Items.Count > 0 && mDSalarySessionEntity.SalarySessionStatusID != null)
                {
                    ddlSalarySessionStatusID.SelectedValue = mDSalarySessionEntity.SalarySessionStatusID.ToString();
                }

                chkIsCurrentSession.Checked = mDSalarySessionEntity.IsCurrentSession;

                btnSubmit.Text    = "Update";
                btnAddNew.Visible = true;
            }
        }
        Int64 IMDSalarySessionDataAccess.Add(MDSalarySessionEntity mDSalarySessionEntity, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Add(mDSalarySessionEntity, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = AddTran(mDSalarySessionEntity, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        private void GetSalarySessionStartDateAndEndDate(Int64 salarySessionID)
        {
            MDSalarySessionEntity entity = FCCMDSalarySession.GetFacadeCreate().GetByID(salarySessionID);

            lblStartDate.Text = entity.SessionStartDate.ToString().Trim();
            lblEndDate.Text   = entity.SessionEndDate.ToString().Trim();
        }
Exemple #4
0
        private void ReGenerateWorkingDays()
        {
            if (ddlSalarySessionID != null && ddlSalarySessionID.Items.Count > 0)
            {
                MDSalarySessionEntity mDSalarySessionEntity = FCCMDSalarySession.GetFacadeCreate().GetByID(Int64.Parse(ddlSalarySessionID.SelectedValue));

                if (mDSalarySessionEntity != null && mDSalarySessionEntity.SalarySessionID > 0)
                {
                    TimeSpan dt        = mDSalarySessionEntity.SessionEndDate - mDSalarySessionEntity.SessionStartDate;
                    Double   totalDays = dt.TotalDays + 1;
                    Double   holiDay   = 0.0;
                    Double   workDay   = 0.0;

                    IList <HRWorkingDayEntity> lst = new List <HRWorkingDayEntity>();

                    for (Int32 i = 0; i < totalDays; i++)
                    {
                        HRWorkingDayEntity ent = new HRWorkingDayEntity();

                        ent.Date            = mDSalarySessionEntity.SessionStartDate.AddDays(i);
                        ent.FiscalYearID    = mDSalarySessionEntity.FiscalYearID;
                        ent.SalarySessionID = mDSalarySessionEntity.SalarySessionID;
                        ent.WorkingDay      = mDSalarySessionEntity.SessionStartDate.AddDays(i);

                        switch (ent.Date.DayOfWeek)
                        {
                        //Default Weekend
                        case DayOfWeek.Friday:
                            ent.AttendanceLeaveAndHolidayCategoryID = MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.HOLIDAY;
                            holiDay++;
                            break;

                        //Others Holiday will come here.
                        default:
                            ent.AttendanceLeaveAndHolidayCategoryID = MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.WORK_DAY;
                            workDay++;
                            break;
                        }

                        ent.Note      = String.Empty;
                        ent.Year      = ent.Date.Year;
                        ent.Month     = ent.Date.Month;
                        ent.Day       = ent.Date.Day;
                        ent.IsRemoved = false;

                        lst.Add(ent);
                    }

                    lblTotalDay.Text   = totalDays.ToString().Trim();
                    lblHoliday.Text    = holiDay.ToString().Trim();
                    lblWorkingDay.Text = workDay.ToString().Trim();


                    lvHRWorkingDay.DataSource = lst;
                    lvHRWorkingDay.DataBind();
                    BuildAttendanceLeaveAndHolidayCategoryDropDownList();
                }
            }
        }
        private Int64 UpdateTran(MDSalarySessionEntity mDSalarySessionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.MDSalarySession_SET";

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option, db);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);

                db.AddInParameter(cmd, "@SalarySessionID", DbType.Int64, mDSalarySessionEntity.SalarySessionID);
                db.AddInParameter(cmd, "@FiscalYearID", DbType.Int64, mDSalarySessionEntity.FiscalYearID);
                db.AddInParameter(cmd, "@Name", DbType.String, mDSalarySessionEntity.Name);
                db.AddInParameter(cmd, "@SessionStartDate", DbType.DateTime, mDSalarySessionEntity.SessionStartDate);
                db.AddInParameter(cmd, "@SessionEndDate", DbType.DateTime, mDSalarySessionEntity.SessionEndDate);
                db.AddInParameter(cmd, "@Remarks", DbType.String, mDSalarySessionEntity.Remarks);
                db.AddInParameter(cmd, "@SalarySessionStatusID", DbType.Int64, mDSalarySessionEntity.SalarySessionStatusID);
                db.AddInParameter(cmd, "@IsCurrentSession", DbType.Boolean, mDSalarySessionEntity.IsCurrentSession);

                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode > 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
        private void SaveMDSalarySessionEntity()
        {
            if (IsValid)
            {
                try
                {
                    MDSalarySessionEntity mDSalarySessionEntity = BuildMDSalarySessionEntity();

                    Int64 result = -1;

                    if (mDSalarySessionEntity.IsNew)
                    {
                        result = FCCMDSalarySession.GetFacadeCreate().Add(mDSalarySessionEntity, DatabaseOperationType.Add, TransactionRequired.No);
                    }
                    else
                    {
                        String filterExpression = SqlExpressionBuilder.PrepareFilterExpression(MDSalarySessionEntity.FLD_NAME_SalarySessionID, mDSalarySessionEntity.SalarySessionID.ToString(), SQLMatchType.Equal);
                        result = FCCMDSalarySession.GetFacadeCreate().Update(mDSalarySessionEntity, filterExpression, DatabaseOperationType.Update, TransactionRequired.No);
                    }

                    if (result > 0)
                    {
                        _SalarySessionID       = 0;
                        _MDSalarySessionEntity = new MDSalarySessionEntity();
                        PrepareInitialView();
                        BindMDSalarySessionList();

                        if (mDSalarySessionEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Salary Session Information has been added successfully.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Salary Session Information has been updated successfully.", false);
                        }

                        Response.Redirect("~/HR/HRWorkingDay.aspx");
                    }
                    else
                    {
                        if (mDSalarySessionEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to add Salary Session Information.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to update Salary Session Information.", false);
                        }
                    }
                }
                catch (Exception ex)
                {
                    MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                }
            }
        }
        protected void lvMDSalarySession_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            Int64 SalarySessionID;

            Int64.TryParse(e.CommandArgument.ToString(), out SalarySessionID);

            if (SalarySessionID > 0)
            {
                if (string.Equals(e.CommandName, "EditItem"))
                {
                    _SalarySessionID = SalarySessionID;

                    PrepareEditView();

                    cpeEditor.Collapsed   = false;
                    cpeEditor.ClientState = "false";
                }
                else if (string.Equals(e.CommandName, "DeleteItem"))
                {
                    try
                    {
                        Int64 result = -1;

                        String fe = SqlExpressionBuilder.PrepareFilterExpression(MDSalarySessionEntity.FLD_NAME_SalarySessionID, SalarySessionID.ToString(), SQLMatchType.Equal);

                        MDSalarySessionEntity mDSalarySessionEntity = new MDSalarySessionEntity();


                        result = FCCMDSalarySession.GetFacadeCreate().Delete(mDSalarySessionEntity, fe, DatabaseOperationType.Delete, TransactionRequired.No);

                        if (result == 0)
                        {
                            _SalarySessionID       = 0;
                            _MDSalarySessionEntity = new MDSalarySessionEntity();
                            PrepareInitialView();
                            BindMDSalarySessionList();

                            MiscUtil.ShowMessage(lblMessage, "Salary Session has been successfully deleted.", true);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to delete Salary Session.", true);
                        }
                    }
                    catch (Exception ex)
                    {
                        MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                    }
                }
            }
        }
        private Int64 DeleteTran(MDSalarySessionEntity mDSalarySessionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.MDSalarySession_SET";

            Database db = DatabaseFactory.CreateDatabase();


            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);


                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode >= 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
        private Int64 Update(MDSalarySessionEntity mDSalarySessionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.MDSalarySession_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);

                Database.AddInParameter(cmd, "@SalarySessionID", DbType.Int64, mDSalarySessionEntity.SalarySessionID);
                Database.AddInParameter(cmd, "@FiscalYearID", DbType.Int64, mDSalarySessionEntity.FiscalYearID);
                Database.AddInParameter(cmd, "@Name", DbType.String, mDSalarySessionEntity.Name);
                Database.AddInParameter(cmd, "@SessionStartDate", DbType.DateTime, mDSalarySessionEntity.SessionStartDate);
                Database.AddInParameter(cmd, "@SessionEndDate", DbType.DateTime, mDSalarySessionEntity.SessionEndDate);
                Database.AddInParameter(cmd, "@Remarks", DbType.String, mDSalarySessionEntity.Remarks);
                Database.AddInParameter(cmd, "@SalarySessionStatusID", DbType.Int64, mDSalarySessionEntity.SalarySessionStatusID);
                Database.AddInParameter(cmd, "@IsCurrentSession", DbType.Boolean, mDSalarySessionEntity.IsCurrentSession);

                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("MDSalarySessionEntity already exists. Please specify another MDSalarySessionEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("MDSalarySessionEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("MDSalarySessionEntity already exists. Please specify another MDSalarySessionEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
        private MDSalarySessionEntity BuildMDSalarySessionEntity()
        {
            MDSalarySessionEntity mDSalarySessionEntity = CurrentMDSalarySessionEntity;

            if (ddlFiscalYearID.Items.Count > 0)
            {
                if (ddlFiscalYearID.SelectedValue == "0")
                {
                }
                else
                {
                    mDSalarySessionEntity.FiscalYearID = Int64.Parse(ddlFiscalYearID.SelectedValue);
                }
            }

            mDSalarySessionEntity.Name = txtName.Text.Trim();
            if (txtSessionStartDate.Text.Trim().IsNotNullOrEmpty())
            {
                mDSalarySessionEntity.SessionStartDate = MiscUtil.ParseToDateTime(txtSessionStartDate.Text);
            }

            if (txtSessionEndDate.Text.Trim().IsNotNullOrEmpty())
            {
                mDSalarySessionEntity.SessionEndDate = MiscUtil.ParseToDateTime(txtSessionEndDate.Text);
            }

            mDSalarySessionEntity.Remarks = txtRemarks.Text.Trim();
            if (ddlSalarySessionStatusID.Items.Count > 0)
            {
                if (ddlSalarySessionStatusID.SelectedValue == "0")
                {
                }
                else
                {
                    mDSalarySessionEntity.SalarySessionStatusID = Int64.Parse(ddlSalarySessionStatusID.SelectedValue);
                }
            }

            mDSalarySessionEntity.IsCurrentSession = chkIsCurrentSession.Checked;


            return(mDSalarySessionEntity);
        }
        private Int64 Delete(MDSalarySessionEntity mDSalarySessionEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.MDSalarySession_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);


                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("MDSalarySessionEntity already exists. Please specify another MDSalarySessionEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("MDSalarySessionEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("MDSalarySessionEntity already exists. Please specify another MDSalarySessionEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
 protected void btnAddNew_Click(object sender, EventArgs e)
 {
     _SalarySessionID       = 0;
     _MDSalarySessionEntity = new MDSalarySessionEntity();
     PrepareInitialView();
 }
 Int64 IMDSalarySessionFacade.Delete(MDSalarySessionEntity mDSalarySessionEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateMDSalarySessionDataAccess().Delete(mDSalarySessionEntity, filterExpression, option, reqTran));
 }
 Int64 IMDSalarySessionFacade.Add(MDSalarySessionEntity mDSalarySessionEntity, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateMDSalarySessionDataAccess().Add(mDSalarySessionEntity, option, reqTran));
 }
Exemple #15
0
        private void GenerateWorkingDays()
        {
            if (ddlSalarySessionID != null && ddlSalarySessionID.Items.Count > 0)
            {
                MDSalarySessionEntity mDSalarySessionEntity = FCCMDSalarySession.GetFacadeCreate().GetByID(Int64.Parse(ddlSalarySessionID.SelectedValue));

                if (mDSalarySessionEntity != null && mDSalarySessionEntity.SalarySessionID > 0)
                {
                    TimeSpan dt        = mDSalarySessionEntity.SessionEndDate - mDSalarySessionEntity.SessionStartDate;
                    Double   totalDays = dt.TotalDays + 1;
                    Double   holiDay   = 0.0;
                    Double   workDay   = 0.0;

                    IList <HRWorkingDayEntity> lst = new List <HRWorkingDayEntity>();

                    for (Int32 i = 0; i < totalDays; i++)
                    {
                        HRWorkingDayEntity ent = new HRWorkingDayEntity();

                        ent.Date            = mDSalarySessionEntity.SessionStartDate.AddDays(i);
                        ent.FiscalYearID    = mDSalarySessionEntity.FiscalYearID;
                        ent.SalarySessionID = mDSalarySessionEntity.SalarySessionID;
                        ent.WorkingDay      = mDSalarySessionEntity.SessionStartDate.AddDays(i);

                        switch (ent.Date.DayOfWeek)
                        {
                        //Default Weekend
                        case DayOfWeek.Friday:
                            ent.AttendanceLeaveAndHolidayCategoryID = MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.HOLIDAY;
                            holiDay++;
                            break;

                        //Others Holiday will come here.
                        default:
                            ent.AttendanceLeaveAndHolidayCategoryID = MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.WORK_DAY;
                            workDay++;
                            break;
                        }

                        ent.Note      = String.Empty;
                        ent.Year      = ent.Date.Year;
                        ent.Month     = ent.Date.Month;
                        ent.Day       = ent.Date.Day;
                        ent.IsRemoved = false;

                        lst.Add(ent);
                    }

                    btnReGenerate.Enabled = false;

                    #region HasList

                    String fe = "FiscalYearID = " + Int64.Parse(ddlFiscalYearID.SelectedValue) + " and SalarySessionID=" + Int64.Parse(ddlSalarySessionID.SelectedValue) + "";
                    IList <HRWorkingDayEntity> hRWorkingDayList = FCCHRWorkingDay.GetFacadeCreate().GetIL(1000, 1, String.Empty, fe, DatabaseOperationType.LoadWithFilterExpression);
                    if (hRWorkingDayList != null && hRWorkingDayList.Count > 0)
                    {
                        lst     = hRWorkingDayList;
                        holiDay = 0.0;
                        workDay = 0.0;
                        foreach (HRWorkingDayEntity entity in hRWorkingDayList)
                        {
                            if (entity.AttendanceLeaveAndHolidayCategoryID == MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.HOLIDAY)
                            {
                                holiDay++;
                            }
                            else if (entity.AttendanceLeaveAndHolidayCategoryID == MasterDataConstants.MDAttendanceLeaveAndHolidayCategory.WORK_DAY)
                            {
                                workDay++;
                            }
                        }

                        btnSubmit.Text        = "Update";
                        btnReGenerate.Enabled = true;
                    }

                    #endregion
                    lblTotalDay.Text   = totalDays.ToString().Trim();
                    lblHoliday.Text    = holiDay.ToString().Trim();
                    lblWorkingDay.Text = workDay.ToString().Trim();


                    lvHRWorkingDay.DataSource = lst;
                    lvHRWorkingDay.DataBind();
                    BuildAttendanceLeaveAndHolidayCategoryDropDownList();
                }
            }
        }