Пример #1
0
        public void Initialize(String strUser1, String strUser2)
        {
            User1         = strUser1;
            User2         = strUser2;
            EmployeeName1 = strUser1;
            EmployeeName2 = strUser2;

            ADUsersInfo user1Info = userCtrl.GetObjectByNo(User1) as ADUsersInfo;
            ADUsersInfo user2Info = userCtrl.GetObjectByNo(User2) as ADUsersInfo;

            if (user1Info != null && user1Info.FK_HREmployeeID.HasValue)
            {
                HREmployeesInfo emp1Info = employeeCtrl.GetObjectByID(user1Info.FK_HREmployeeID.Value) as HREmployeesInfo;
                if (emp1Info != null)
                {
                    EmployeeName1 = emp1Info.Name;
                }
            }
            if (user2Info != null && user2Info.FK_HREmployeeID.HasValue)
            {
                HREmployeesInfo emp2Info = employeeCtrl.GetObjectByID(user2Info.FK_HREmployeeID.Value) as HREmployeesInfo;
                if (emp2Info != null)
                {
                    EmployeeName2 = emp2Info.Name;
                }
            }
            CheckPlaySound();
            LoadChatContents(true);
        }
Пример #2
0
        public void UpdateInsPaymentAmt()
        {
            if (Toolbar.IsNullOrNoneAction())
            {
                return;
            }

            EmployeeEntities entity           = (EmployeeEntities)CurrentModuleEntity;
            HREmployeesInfo  objEmployeesInfo = (HREmployeesInfo)entity.MainObject;

            objEmployeesInfo.HREmployeeSocialInsPaymentAmount      = objEmployeesInfo.HREmployeeSocialInsPaymentPercent * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeHealthInsPaymentAmount      = objEmployeesInfo.HREmployeeHealthInsPaymentPercent * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeOutOfWorkInsPaymentAmount   = objEmployeesInfo.HREmployeeOutOfWorkInsPaymentPercent * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeSocialInsPaymentAmountDN    = objEmployeesInfo.HREmployeeSocialInsPaymentPercentDN * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeHealthInsPaymentAmountDN    = objEmployeesInfo.HREmployeeHealthInsPaymentPercentDN * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeOutOfWorkInsPaymentAmountDN = objEmployeesInfo.HREmployeeOutOfWorkInsPaymentPercentDN * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            objEmployeesInfo.HREmployeeInsPaymentTotalAmount       = objEmployeesInfo.HREmployeeSocialInsPaymentAmount
                                                                     + objEmployeesInfo.HREmployeeHealthInsPaymentAmount
                                                                     + objEmployeesInfo.HREmployeeOutOfWorkInsPaymentAmount;
            objEmployeesInfo.HREmployeeInsPaymentTotalAmountDN = objEmployeesInfo.HREmployeeSocialInsPaymentAmountDN
                                                                 + objEmployeesInfo.HREmployeeHealthInsPaymentAmountDN
                                                                 + objEmployeesInfo.HREmployeeOutOfWorkInsPaymentAmountDN;
            objEmployeesInfo.HREmployeeSyndicatePaymentAmount = objEmployeesInfo.HREmployeeSyndicatePaymentPercent * objEmployeesInfo.HREmployeeContractSlrAmt / 100;
            entity.UpdateMainObjectBindingSource();
        }
Пример #3
0
 public ActionResult Index()
 {
     if (AuthConfig.GetSession("CurrentUser") != null)
     {
         ViewData["title"] = AuthConfig.CurrentCompanyInfo.CSCompanyDesc;
         HREmployeesInfo EmployeeInfo = GMCWebApp.GetEmployeeByUserName(Convert.ToString(AuthConfig.GetSession("CurrentUser")));
         if (EmployeeInfo == null)
         {
             EmployeeInfo = new HREmployeesInfo();
         }
         ViewData["EmployeeInfo"] = EmployeeInfo;
         ViewData["lstBranchs"]   = Helpers.HtmlControls.GetDropDownListObjects("BRBranchs", "BRBranchID", "BRBranchName", EmployeeInfo.FK_BRBranchID);
         ViewData["lstPositions"] = Helpers.HtmlControls.GetDropDownListObjects("HRPositions", "HRPositionID", "HRPositionName", EmployeeInfo.FK_HRPositionID);
         ViewData["lstSections"]  = Helpers.HtmlControls.GetDropDownListObjects("HRSections", "HRSectionID", "HRSectionName", EmployeeInfo.FK_HRSectionID);
         ViewData["lstAreas"]     = Helpers.HtmlControls.GetDropDownListObjects("HRAreas", "HRAreaID", "HRAreaName", EmployeeInfo.FK_HRAreaID);
         HomeModels home = new HomeModels();
         foreach (KeyValuePair <string, double> item in home.GetTonPhepTheoNhanVien(EmployeeInfo))
         {
             ViewData[item.Key] = item.Value;
         }
         if (AuthConfig.GetSession("TongNgayPhep") == null)
         {
             AuthConfig.SetSession("TongNgayPhep", ViewData["ConLai"]);
         }
         //DevExpress.Web.Localization.ASPxGridViewLocalizer.Active =
         return(View());
     }
     else
     {
         return(RedirectToAction("Login", "Account"));
     }
 }
Пример #4
0
        public Dictionary <string, double> GetTonPhepTheoNhanVien(HREmployeesInfo objEmployee)
        {
            Dictionary <string, double> dicPheps = new Dictionary <string, double>();
            int iYear  = Convert.ToInt32(AuthConfig.GetSession("WorkingYear"));
            int iMonth = Convert.ToInt32(AuthConfig.GetSession("WorkingPeriod"));
            HREmployeeLRegsInfo objHREmployeeLRegOldYear = (HREmployeeLRegsInfo) new HREmployeeLRegsController().GetEmployeeLRegByEmployeeIDAndYear(objEmployee.HREmployeeID, iYear - 1);
            double dbRemainDays = 0;

            if (objHREmployeeLRegOldYear != null)
            {
                dbRemainDays = objHREmployeeLRegOldYear.HREmployeeLRegRemainDays;
            }
            double dbSoNgayPhepNam        = new HREmployeeAnnualRegsController().TotalDaynnualRegByEmployeeIDAndYear(objEmployee.HREmployeeID, iYear);
            double dbSoNgayNghiThangNay   = ExpertERP.Procedure.HR.HR_CalculateEmployeeLeave.TinhSoNgayNghiPhepNamChoNhanVienTrongThang(objEmployee, new DateTime(iYear, iMonth, 1));
            double dbSoNgayNghiThangTruoc = 0;

            for (int i = 1; i < iMonth; i++)
            {
                dbSoNgayNghiThangTruoc += ExpertERP.Procedure.HR.HR_CalculateEmployeeLeave.TinhSoNgayNghiPhepNamChoNhanVienTrongThang(objEmployee, new DateTime(iYear, i, 1));
            }
            double dbConLai = dbRemainDays + dbSoNgayPhepNam - dbSoNgayNghiThangTruoc - dbSoNgayNghiThangNay;

            dicPheps.Add("TonNamTruoc", dbRemainDays);
            dicPheps.Add("SoNgayPhepNam", dbSoNgayPhepNam);
            dicPheps.Add("SoNgayNghiThangNay", dbSoNgayNghiThangNay);
            dicPheps.Add("SoNgayNghiThangTruoc", dbSoNgayNghiThangTruoc);
            dicPheps.Add("ConLai", dbConLai);
            return(dicPheps);
        }
Пример #5
0
        public void UpdateTotalLeaveDays(HRLeaveDaysInfo leaveDay)
        {
            HRLeaveDaysController objLeaveDaysController = new HRLeaveDaysController();
            HREmployeesController objEmployeesController = new HREmployeesController();
            HREmployeesInfo       obj = (HREmployeesInfo)objEmployeesController.GetObjectByID(leaveDay.FK_HREmployeeID);
            double leaveDays          = 0;

            if (obj != null)
            {
                List <HRLeaveDaysInfo> LeaveDaysList = new List <HRLeaveDaysInfo>();
                LeaveDaysList = objLeaveDaysController.GetLeaveDayOnYearByHREmployeeID(leaveDay.FK_HREmployeeID);
                foreach (HRLeaveDaysInfo item in LeaveDaysList)
                {
                    if (item.HRTimeSheetParamNo == "Pn")
                    {
                        leaveDays = leaveDays + 1;
                    }
                    else if (item.HRTimeSheetParamNo == "Pn 1/2")
                    {
                        leaveDays = leaveDays + 0.5;
                    }
                }
            }
            VinaDbUtil       dbUtil = new VinaDbUtil();
            LeaveDayEntities entity = (LeaveDayEntities)CurrentModuleEntity;

            leaveDay.TotalLeaveDays = 0;

            for (int i = 1; i <= 31; i++)
            {
                string paramNo = dbUtil.GetPropertyStringValue(leaveDay, string.Format("HRLeaveDayDate{0}", i));
                if (!string.IsNullOrEmpty(paramNo))
                {
                    if (paramNo.IndexOf("1/2") > 0)
                    {
                        leaveDay.TotalLeaveDays = leaveDay.TotalLeaveDays + decimal.Parse("0.5");
                    }
                    else
                    {
                        leaveDay.TotalLeaveDays = leaveDay.TotalLeaveDays + 1;
                    }
                }
            }

            //if ((leaveDays + leaveDay.TotalLeaveDays) >= 12)
            //{
            //    MessageBox.Show("Số ngày nghỉ phép không còn!",
            //                CommonLocalizedResources.MessageBoxDefaultCaption,
            //                MessageBoxButtons.OK,
            //                MessageBoxIcon.Information);
            //    leaveDay = (HRLeaveDaysInfo)leaveDay.OldObject;
            //    entity.LeaveDaysList.GridControl.RefreshDataSource();
            //}
            //else
            //{
            //    entity.LeaveDaysList.GridControl.RefreshDataSource();
            //}
            entity.LeaveDaysList.GridControl.RefreshDataSource();
        }
        public ActionResult ReloadEmployeeOffWork(int iObjectID)
        {
            HREmployeesInfo             EmployeeInfo = ExpertERP.Controller.EmployeeCtrl.GetObjectByID(iObjectID) as HREmployeesInfo;
            HomeModels                  home         = new HomeModels();
            List <string>               lstVals      = new List <string>();
            Dictionary <string, double> dicitem      = home.GetTonPhepTheoNhanVien(EmployeeInfo);

            AuthConfig.SetSession("TongNgayPhep", dicitem["ConLai"]);
            System.Web.Script.Serialization.JavaScriptSerializer json = new System.Web.Script.Serialization.JavaScriptSerializer();
            return(Content(json.Serialize(dicitem)));
        }
Пример #7
0
        protected void InvalidateEmployee()
        {
            VinaDbUtil            dbUtil                 = new VinaDbUtil();
            int                   employeeID             = dbUtil.GetPropertyIntValue(CurrentModuleEntity.MainObject, "FK_HREmployeeID");
            HREmployeesController objEmployeesController = new HREmployeesController();
            HREmployeesInfo       objHREmployeesInfo     = (HREmployeesInfo)objEmployeesController.GetObjectByID(employeeID);

            if (objHREmployeesInfo != null)
            {
                dbUtil.SetPropertyValue(CurrentModuleEntity.MainObject, String.Format("{0}EmployeePicture", MainTablePrefix), objHREmployeesInfo.HREmployeePicture);
                CurrentModuleEntity.UpdateMainObjectBindingSource();
            }
        }
Пример #8
0
        public override IList GetListFromDataSet(DataSet ds)
        {
            List <HREmployeesInfo> list = new List <HREmployeesInfo>();

            if (ds.Tables.Count > 0)
            {
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    HREmployeesInfo obj = (HREmployeesInfo)GetObjectFromDataRow(row);
                    list.Add(obj);
                }
            }
            return(list);
        }
Пример #9
0
        public List <HREmployeesInfo> GetEmployeeWorkingShiftList()
        {
            DataSet ds = dal.GetDataSet("HREmployees_GetEmployeeWorkingShiftList");
            List <HREmployeesInfo> employees = new List <HREmployeesInfo>();

            if (ds.Tables.Count > 0)
            {
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    HREmployeesInfo objEmployeesInfo = (HREmployeesInfo)GetObjectFromDataRow(row);
                    employees.Add(objEmployeesInfo);
                }
            }
            return(employees);
        }
        public ActionResult SubmitDocument(int iObjectID)
        {
            HREmployeeOffWorksInfo DocInfo = new HREmployeeOffWorksController().GetObjectByID(iObjectID) as HREmployeeOffWorksInfo;
            int             iEmpManagerID  = Convert.ToInt32(ExpertERP.Controller.EmployeeCtrl.GetObjectColumnByID(DocInfo.FK_HREmployeeID, "FK_HREmployeeManagerID"));
            HREmployeesInfo objEmployee    = ExpertERP.Controller.EmployeeCtrl.GetObjectByID(iEmpManagerID) as HREmployeesInfo;

            if (string.IsNullOrEmpty(ExpertERP.Controller.UserCtrl.GetObjectNameByID(objEmployee.FK_ADUserID)))
            {
                return(Content(string.Format("Nhân viên quản lý {0} chưa có cấu hình tài khoản đăng nhập! Vui lòng kiểm tra lại!")));
            }
            string strError = "OK";

            MailUtil.ActionSubmit(DocInfo, "EmployeeOffWork", Convert.ToString(AuthConfig.GetSession("CurrentUser")), out strError);
            return(Content(strError));
        }
Пример #11
0
        public List <HREmployeesInfo> GetEmployeeCardNumberList(int?branchID, int?departmentID, int?departmentRoomID, string status)
        {
            DataSet ds = dal.GetDataSet("HREmployees_GetEmployeeCardNumberList", branchID, departmentID, departmentRoomID, status);
            List <HREmployeesInfo> employees = new List <HREmployeesInfo>();

            if (ds.Tables.Count > 0)
            {
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    HREmployeesInfo objEmployeesInfo = (HREmployeesInfo)GetObjectFromDataRow(row);
                    employees.Add(objEmployeesInfo);
                }
            }
            return(employees);
        }
Пример #12
0
        public override void InvalidateModuleObjects(int iObjectID)
        {
            HREmployeeOTsController objEmployeeOTsController = new HREmployeeOTsController();
            DataSet ds = objEmployeeOTsController.GetAllDataByOverTimeID(iObjectID);

            EmployeeOTsList.Invalidate(ds);
            HREmployeesController objEmployeesController = new HREmployeesController();

            foreach (var item in EmployeeOTsList)
            {
                HREmployeesInfo objEmployeesInfo = (HREmployeesInfo)objEmployeesController.GetObjectByID(item.FK_HREmployeeID);
                if (objEmployeesInfo != null)
                {
                    item.HREmployeeCardNumber = objEmployeesInfo.HREmployeeCardNumber;
                }
            }
        }
        public ActionResult RegisterOffWork(string oEmplOffWork)
        {
            string[] arr = oEmplOffWork.Split('&');
            HREmployeeOffWorksInfo       objEmplOffWork      = new HREmployeeOffWorksInfo();
            HREmployeeOffWorksController EmployeeOffWorkCtrl = new HREmployeeOffWorksController();

            arr.ToList().ForEach(x =>
            {
                string[] arrItem = x.Split('=');
                GMCDbUtil.SetPropertyValue(objEmplOffWork, arrItem.FirstOrDefault(), Convert.ChangeType(arrItem.LastOrDefault(), GMCDbUtil.GetCSharpVariableType("HREmployeeOffWorks", arrItem.FirstOrDefault())));
            });
            int iLeaveTypeID = new HREmployeeLeaveTypesController().GetObjectIDByNo("PN");

            if (objEmplOffWork.FK_HREmployeeLeaveTypeID == iLeaveTypeID && objEmplOffWork.HREmployeeOffWorkRegDays > Convert.ToDouble(AuthConfig.GetSession("TongNgayPhep")))
            {
                return(Content("Số ngày nghỉ phép vượt quá tổng số ngày nghỉ phép còn lại! Kiểm tra lại"));
            }
            HREmployeesInfo objEmpl = ExpertERP.Controller.EmployeeCtrl.GetObjectByID(objEmplOffWork.FK_HREmployeeID) as HREmployeesInfo;

            if (objEmpl == null)
            {
                objEmpl = GMCWebApp.GetEmployeeByUserName(Convert.ToString(AuthConfig.GetSession("CurrentUser")));
            }
            if (objEmpl != null)
            {
                DataSet ds = SqlDatabaseHelper.RunStoredProcedure("spl_GetAllDataEmployeeOffWorkByEmployeeIDAndDate", objEmpl.HREmployeeID, objEmplOffWork.HREmployeeOffWorkFromDate.Value, objEmplOffWork.HREmployeeOffWorkToDate.Value);
                if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
                {
                    return(Content(string.Format("Bạn đã đăng ký phép trong thời gian {0} - {1}! Vui lòng kiểm tra lại!", objEmplOffWork.HREmployeeOffWorkFromDate.Value.ToShortDateString(), objEmplOffWork.HREmployeeOffWorkToDate.Value.ToShortDateString())));
                }
                if (objEmplOffWork.FK_HREmployeeID == 0)
                {
                    objEmplOffWork.FK_HREmployeeID = objEmpl.HREmployeeID;
                }
                objEmplOffWork.AACreatedUser              = Convert.ToString(AuthConfig.GetSession("CurrentUser"));
                objEmplOffWork.ApprovalStatusCombo        = "New";
                objEmplOffWork.HREmployeeOffWorkTypeCombo = "Permision";
                EmployeeOffWorkCtrl.SaveObject(objEmplOffWork);
                return(Content("OK"));
            }
            else
            {
                return(Content("User hiện chưa cấu hình nhân viên! Không thể đăng ký!"));
            }
        }
Пример #14
0
        public void UpdateWorkingSlrAmtDateTotal()
        {
            if (Toolbar.IsNullOrNoneAction())
            {
                return;
            }

            EmployeeEntities entity           = (EmployeeEntities)CurrentModuleEntity;
            HREmployeesInfo  objEmployeesInfo = (HREmployeesInfo)entity.MainObject;

            objEmployeesInfo.HREmployeeWorkingSlrAmtDateTotal = objEmployeesInfo.HREmployeeAllowanceProgress +
                                                                objEmployeesInfo.HREmployeeAllowanceResponsibility +
                                                                objEmployeesInfo.HREmployeeAllowanceEffective +
                                                                objEmployeesInfo.HREmployeeAllowancePerennial +
                                                                objEmployeesInfo.HREmployeeAllowanceOther +
                                                                objEmployeesInfo.HREmployeeWorkingSlrAmtDate;
            entity.UpdateMainObjectBindingSource();
        }
        public ActionResult ShowSubScreenRegisterOffWork(string sType)
        {
            HomeModels home = new HomeModels();

            ViewData["type"] = sType;
            DataTable dtSource = ADConfigValueUtility.InitConfigValueTable("EmployeeOffWorkShiftType");

            ViewData["ModalTitle"]           = "Thông tin đăng ký nghỉ phép";
            ViewData["lstEmployeeLeaveType"] = home.GetEmployeeLeaveTypes();
            ViewData["objEmployeeOffWork"]   = new HREmployeeOffWorksInfo();
            ViewData["lstShiftTypeCombo"]    = Helpers.HtmlControls.GetDropDownListObjects(dtSource, "Value", "Text");
            HREmployeesInfo objCurrent = GMCWebApp.GetEmployeeByUserName(Convert.ToString(AuthConfig.GetSession("CurrentUser")));

            if (objCurrent != null)
            {
                dtSource = new HREmployeesController().GetDataTableByDataSet(new HREmployeesController().GetAllDataByForeignColumn("FK_HREmployeeManagerID", objCurrent.HREmployeeID));
                if (dtSource == null)
                {
                    dtSource = new DataTable();
                }
                DataRow dr = dtSource.NewRow();
                if (dtSource.Columns.Contains("HREmployeeID"))
                {
                    dr.SetField("HREmployeeID", objCurrent.HREmployeeID);
                }
                if (dtSource.Columns.Contains("HREmployeeFullName"))
                {
                    dr.SetField("HREmployeeFullName", objCurrent.HREmployeeFullName);
                }
                dtSource.Rows.InsertAt(dr, 0);
            }
            ViewData["EmployeeID"]  = objCurrent.HREmployeeID;
            ViewData["lstEmployee"] = Helpers.HtmlControls.GetDropDownListObjects(dtSource, "HREmployeeID", "HREmployeeFullName");
            foreach (KeyValuePair <string, double> item in home.GetTonPhepTheoNhanVien(objCurrent))
            {
                ViewData[item.Key] = item.Value;
            }
            return(PartialView("ShowSubScreenRegisterOffWork"));
        }
        public ActionResult GridViewPartialView(int iFieldID, string sType, string sDocType, string sStatus)
        {
            // DXCOMMENT: Pass a data model for GridView in the PartialView method's second parameter
            HomeModels home = new HomeModels();
            Dictionary <STFieldsInfo, List <BusinessObject> > dic = home.GetFieldInfo(iFieldID);

            ViewData["sType"]   = sType;
            ViewData["control"] = dic;
            string sApproval       = Request.Url.Query.Split('=').LastOrDefault();
            string sApprovalStatus = (sApproval == "Register") ? "New" : ((sApproval == "Submit" ? "Approving" : "Approved"));

            sStatus = (sApproval == "Cancel") ? "Cancel" : "Alive";
            HREmployeesInfo objEmployee = GMCWebApp.GetEmployeeByUserName(Convert.ToString(AuthConfig.GetSession("CurrentUser")));
            int             iEmployeeID = 0;

            if (objEmployee != null)
            {
                iEmployeeID = objEmployee.HREmployeeID;
            }
            ViewData["data"] = home.GetEmployeeOffWorkByApprovalStatus(iEmployeeID, sApprovalStatus, sStatus);
            return(PartialView("GridViewAjaxPartialView", null));
        }
Пример #17
0
        public void UpdateWorkingSlrAmt()
        {
            if (Toolbar.IsNullOrNoneAction())
            {
                return;
            }

            EmployeeEntities entity           = (EmployeeEntities)CurrentModuleEntity;
            HREmployeesInfo  objEmployeesInfo = (HREmployeesInfo)entity.MainObject;

            ADConfigValuesController objConfigValuesController = new ADConfigValuesController();
            ADConfigValuesInfo       objConfigValuesInfo       = new ADConfigValuesInfo();

            objConfigValuesInfo = objConfigValuesController.GetObjectByConfigKey("DaysPerMonth");
            decimal dateWorking = 0;

            if (objConfigValuesInfo != null)
            {
                Decimal.TryParse(objConfigValuesInfo.ADConfigKeyValue, out dateWorking);
                objEmployeesInfo.HREmployeeWorkingSlrAmt = objEmployeesInfo.HREmployeeWorkingSlrAmtDate * dateWorking;
            }
            entity.UpdateMainObjectBindingSource();
        }
Пример #18
0
        public override void Invalidate(int iObjectID)
        {
            base.Invalidate(iObjectID);
            ArrangementShiftEntities    entity = (ArrangementShiftEntities)CurrentModuleEntity;
            HRDepartmentsController     objDepartmentsController     = new HRDepartmentsController();
            HRDepartmentRoomsController objDepartmentRoomsController = new HRDepartmentRoomsController();
            HREmployeesController       objEmployeesController       = new HREmployeesController();

            foreach (var objEmployeeArrangementShiftsInfo in entity.EmployeeArrangementShiftsList)
            {
                HREmployeesInfo   objEmployeesInfo   = (HREmployeesInfo)objEmployeesController.GetObjectByID(objEmployeeArrangementShiftsInfo.FK_HREmployeeID);
                HRDepartmentsInfo objDepartmentsInfo = (HRDepartmentsInfo)objDepartmentsController.GetObjectByID(objEmployeesInfo.FK_HRDepartmentID);
                if (objDepartmentsInfo != null)
                {
                    objEmployeeArrangementShiftsInfo.HRDepartmentName = objDepartmentsInfo.HRDepartmentName;
                }
                HRDepartmentRoomsInfo objDepartmentRoomsInfo = (HRDepartmentRoomsInfo)objDepartmentRoomsController.GetObjectByID(objEmployeesInfo.FK_HRDepartmentRoomID);
                if (objDepartmentRoomsInfo != null)
                {
                    objEmployeeArrangementShiftsInfo.HRDepartmentRoomName = objDepartmentRoomsInfo.HRDepartmentRoomName;
                }
            }
            InitializeArrangementShiftEntryGridControl();
        }
Пример #19
0
        public void SetDefaultValuesFromEmployee(HREmployeeWorkScheduleItemsInfo objEmployeeWorkScheduleItemsInfo, HREmployeesInfo objEmployeesInfo)
        {
            HREmployeeWorkSchedulesInfo objEmployeeWorkSchedulesInfo = (HREmployeeWorkSchedulesInfo)MainObject;

            objEmployeeWorkScheduleItemsInfo.FK_HREmployeeID      = objEmployeesInfo.HREmployeeID;
            objEmployeeWorkScheduleItemsInfo.HREmployeeNo         = objEmployeesInfo.HREmployeeNo;
            objEmployeeWorkScheduleItemsInfo.HREmployeeCardNumber = objEmployeesInfo.HREmployeeCardNumber;
        }
Пример #20
0
        public void SetDefaultValuesFromEmployee(HREmployeeOTsInfo objEmployeeOTsInfo, HREmployeesInfo objEmployeesInfo)
        {
            HROverTimesInfo objOverTimesInfo = (HROverTimesInfo)MainObject;

            objEmployeeOTsInfo.HREmployeeOTDate    = objOverTimesInfo.HROverTimeDate;
            objEmployeeOTsInfo.HREmployeeOTDateEnd = objOverTimesInfo.HROverTimeDateEnd;
            DateTime employeeOTDate    = objEmployeeOTsInfo.HREmployeeOTDate;
            DateTime employeeOTDateEnd = objEmployeeOTsInfo.HREmployeeOTDateEnd;

            objEmployeeOTsInfo.HREmployeeOTFromDate           = new DateTime(employeeOTDate.Year, employeeOTDate.Month, employeeOTDate.Day, objOverTimesInfo.HROverTimeFromDate.Hour, objOverTimesInfo.HROverTimeFromDate.Minute, 0);
            objEmployeeOTsInfo.HREmployeeOTToDate             = new DateTime(employeeOTDateEnd.Year, employeeOTDateEnd.Month, employeeOTDateEnd.Day, objOverTimesInfo.HROverTimeToDate.Hour, objOverTimesInfo.HROverTimeToDate.Minute, 0);
            objEmployeeOTsInfo.FK_HREmployeeID                = objEmployeesInfo.HREmployeeID;
            objEmployeeOTsInfo.HREmployeeName                 = objEmployeesInfo.HREmployeeName;
            objEmployeeOTsInfo.FK_HRDepartmentID              = objEmployeesInfo.FK_HRDepartmentID;
            objEmployeeOTsInfo.FK_HRDepartmentRoomID          = objEmployeesInfo.FK_HRDepartmentRoomID;
            objEmployeeOTsInfo.FK_HRDepartmentRoomGroupItemID = objEmployeesInfo.FK_HRDepartmentRoomGroupItemID;
            objEmployeeOTsInfo.HREmployeeCardNumber           = objEmployeesInfo.HREmployeeCardNumber;
            objEmployeeOTsInfo.FK_HRTimeSheetParamID          = objOverTimesInfo.FK_HRTimeSheetParamID;
            objEmployeeOTsInfo.FK_ADWorkingShiftID            = objOverTimesInfo.FK_ADWorkingShiftID;
            objEmployeeOTsInfo.HREmployeeOTFactor             = objOverTimesInfo.HROverTimeFactor;
        }
Пример #21
0
 public override void InitMainObject()
 {
     MainObject   = new HREmployeesInfo();
     SearchObject = new HREmployeesInfo();
 }
Пример #22
0
        public void ViewLeaveDays(int branchID, int departmentID, int departmentRoomID, int departmentRoomGroupItemID, int employeeID, DateTime dateFrom, DateTime dateTo, string status)
        {
            VinaDbUtil                  dbUtil = new VinaDbUtil();
            HRLeaveDaysController       objLeaveDaysController       = new HRLeaveDaysController();
            HRTimeSheetParamsController objTimeSheetParamsController = new HRTimeSheetParamsController();
            List <HRLeaveDaysInfo>      leaveDays = objLeaveDaysController.GetLeaveDaysList(branchID, departmentID, departmentRoomID, departmentRoomGroupItemID, employeeID, dateFrom, dateTo);

            commonParams = objTimeSheetParamsController.GetTimeSheetParamsByTimeSheetType(TimeSheetParamType.Common.ToString());
            LeaveDayEntities entity = (LeaveDayEntities)CurrentModuleEntity;

            entity.LeaveDaysList.Clear();
            HREmployeesController  objEmployeesController = new HREmployeesController();
            List <HREmployeesInfo> employees = new List <HREmployeesInfo>();

            if (employeeID == 0)
            {
                employees = objEmployeesController.GetEmployeeList(branchID, departmentID, departmentRoomID, departmentRoomGroupItemID, status);
            }
            else
            {
                HREmployeesInfo employee = (HREmployeesInfo)objEmployeesController.GetObjectByID(employeeID);
                employees.Add(employee);
            }

            int numDays = (int)(dateTo.Date - dateFrom.Date).TotalDays + 1;

            foreach (HRLeaveDaysInfo leaveDay in leaveDays)
            {
                if (!employees.Exists(p => p.HREmployeeID == leaveDay.FK_HREmployeeID))
                {
                    continue;
                }
                HRLeaveDaysInfo employeeLeaveDay = entity.LeaveDaysList.Where(ld => ld.FK_HREmployeeID == leaveDay.FK_HREmployeeID).FirstOrDefault();
                if (employeeLeaveDay == null)
                {
                    employeeLeaveDay = new HRLeaveDaysInfo();
                    entity.LeaveDaysList.Add(employeeLeaveDay);
                }
                if (employeeLeaveDay != null)
                {
                    employeeLeaveDay.FK_HREmployeeID      = leaveDay.FK_HREmployeeID;
                    employeeLeaveDay.HREmployeeNo         = leaveDay.HREmployeeNo;
                    employeeLeaveDay.HREmployeeName       = leaveDay.HREmployeeName;
                    employeeLeaveDay.HRLeaveDayDate       = dateFrom;
                    employeeLeaveDay.HREmployeeCardNumber = leaveDay.HREmployeeCardNumber;
                    HRTimeSheetParamsInfo param = commonParams.Where(p => p.HRTimeSheetParamID == leaveDay.FK_HRTimeSheetParamID).FirstOrDefault();
                    for (int i = 1; i <= numDays; i++)
                    {
                        if (param != null)
                        {
                            //dbUtil.SetPropertyValue(employeeLeaveDay, string.Format("HRLeaveDayDate{0}", leaveDay.HRLeaveDayDate.Date.Day), param.HRTimeSheetParamNo);
                            if (dateFrom.Date.AddDays(i - 1) == leaveDay.HRLeaveDayDate.Date)
                            {
                                string paramTemp = dbUtil.GetPropertyStringValue(employeeLeaveDay, string.Format("HRLeaveDayDate{0}", leaveDay.HRLeaveDayDate.Date.Day));
                                if (string.IsNullOrEmpty(paramTemp))
                                {
                                    dbUtil.SetPropertyValue(employeeLeaveDay, string.Format("HRLeaveDayDate{0}", i), param.HRTimeSheetParamNo);
                                }
                                else
                                {
                                    dbUtil.SetPropertyValue(employeeLeaveDay, string.Format("HRLeaveDayDate{0}", i), paramTemp + ", " + param.HRTimeSheetParamNo);
                                }
                            }
                        }
                    }
                }
            }

            foreach (HREmployeesInfo employee in employees)
            {
                if (!entity.LeaveDaysList.Exists(ld => ld.FK_HREmployeeID == employee.HREmployeeID))
                {
                    HRLeaveDaysInfo leaveDay = new HRLeaveDaysInfo();
                    leaveDay.FK_HREmployeeID      = employee.HREmployeeID;
                    leaveDay.HREmployeeNo         = employee.HREmployeeNo;
                    leaveDay.HREmployeeName       = employee.HREmployeeName;
                    leaveDay.HRLeaveDayDate       = dateFrom;
                    leaveDay.HREmployeeCardNumber = employee.HREmployeeCardNumber;
                    entity.LeaveDaysList.Add(leaveDay);
                }
            }

            foreach (HRLeaveDaysInfo leaveDay in entity.LeaveDaysList)
            {
                UpdateTotalLeaveDays(leaveDay);
                leaveDay.BackupObject = (HRLeaveDaysInfo)leaveDay.Clone();
            }

            HRLeaveDaysGridControl gridControl = entity.LeaveDaysList.GridControl as HRLeaveDaysGridControl;

            gridControl.ViewDate = dateFrom;
            gridControl.FromDate = dateFrom;
            gridControl.ToDate   = dateTo;
            //gridControl.InitializeControl();

            foreach (var item in entity.LeaveDaysList)
            {
                HREmployeesInfo objEmployeesInfo = (HREmployeesInfo)objEmployeesController.GetObjectByID(item.FK_HREmployeeID);
                if (objEmployeesInfo != null)
                {
                    item.HREmployeeCardNumber = objEmployeesInfo.HREmployeeCardNumber;
                }
            }
            gridControl.RefreshDataSource();
        }
Пример #23
0
        private HREmployeeArrangementShiftsInfo SetEmployeeArrangementShiftsInfoFromEmployee(HREmployeesInfo objEmployeesInfo)
        {
            HREmployeeArrangementShiftsInfo objEmployeeArrangementShiftsInfo = new HREmployeeArrangementShiftsInfo();

            if (objEmployeesInfo != null)
            {
                objEmployeeArrangementShiftsInfo.FK_HREmployeeID           = objEmployeesInfo.HREmployeeID;
                objEmployeeArrangementShiftsInfo.FK_HRDepartmentRoomID     = objEmployeesInfo.FK_HRDepartmentRoomID;
                objEmployeeArrangementShiftsInfo.HRDepartmentName          = objEmployeesInfo.HRDepartmentName;
                objEmployeeArrangementShiftsInfo.HRDepartmentRoomName      = objEmployeesInfo.HRDepartmentRoomName;
                objEmployeeArrangementShiftsInfo.HRDepartmentRoomGroupName = objEmployeesInfo.HRDepartmentRoomGroupItemName;
                objEmployeeArrangementShiftsInfo.HREmployeeName            = objEmployeesInfo.HREmployeeName;
                objEmployeeArrangementShiftsInfo.HREmployeeNo         = objEmployeesInfo.HREmployeeNo;
                objEmployeeArrangementShiftsInfo.HREmployeeCardNumber = objEmployeesInfo.HREmployeeCardNumber;
            }
            return(objEmployeeArrangementShiftsInfo);
        }
Пример #24
0
        public void SetDefaultValuesFromEmployee(HREmployeeRewardsInfo objEmployeeRewardsInfo, HREmployeesInfo objEmployeesInfo)
        {
            HRRewardsInfo objRewardsInfo = (HRRewardsInfo)MainObject;

            objEmployeeRewardsInfo.FK_HREmployeeID       = objEmployeesInfo.HREmployeeID;
            objEmployeeRewardsInfo.HREmployeeRewardValue = objRewardsInfo.HRRewardValue;
            objEmployeeRewardsInfo.HREmployeeNo          = objEmployeesInfo.HREmployeeNo;
            objEmployeeRewardsInfo.HREmployeeCardNumber  = objEmployeesInfo.HREmployeeCardNumber;
            objEmployeeRewardsInfo.HREmployeeRewardDate  = objRewardsInfo.HRRewardFromDate;
        }
Пример #25
0
        public void AddDefaulArrangementShiftEntries(HREmployeeArrangementShiftsInfo objEmployeeArrangementShiftsInfo, HREmployeesInfo objEmployeesInfo)
        {
            objEmployeeArrangementShiftsInfo.HRArrangementShiftEntrysList.Clear();

            ArrangementShiftEntities   entity = (ArrangementShiftEntities)CurrentModuleEntity;
            HRArrangementShiftsInfo    objArrangementShiftsInfo   = (HRArrangementShiftsInfo)entity.MainObject;
            ADWorkingShiftsController  objWorkingShiftsController = new ADWorkingShiftsController();
            List <ADWorkingShiftsInfo> workingShifts = entity.WorkingShifts;
            ADWorkingShiftsInfo        defaultParam  = (ADWorkingShiftsInfo)workingShifts.Where(o => o.ADWorkingShiftID == objEmployeesInfo.FK_ADWorkingShiftID).FirstOrDefault();

            if (defaultParam != null)
            {
                VinaDbUtil dbUtil  = new VinaDbUtil();
                int        numDays = NumOfDayInMonth();
                for (int i = 1; i <= numDays; i++)
                {
                    DateTime currentDate = objArrangementShiftsInfo.HRArrangementShiftFromDate.Date.AddDays(i - 1);
                    HRArrangementShiftEntrysInfo entry = new HRArrangementShiftEntrysInfo();
                    entry.FK_HREmployeeID                 = objEmployeeArrangementShiftsInfo.FK_HREmployeeID;
                    entry.FK_HRArrangementShiftID         = objEmployeeArrangementShiftsInfo.FK_HRArrangementShiftID;
                    entry.FK_HREmployeeArrangementShiftID = objEmployeeArrangementShiftsInfo.HREmployeeArrangementShiftID;
                    entry.HRArrangementShiftEntryDate     = currentDate;
                    entry.FK_ADWorkingShiftID             = defaultParam.ADWorkingShiftID;

                    //String propertyName = String.Format("{0}{1}", "HREmployeeArrangementShiftDate", i);
                    objEmployeeArrangementShiftsInfo.HRArrangementShiftEntrysList.Add(entry);
                }
            }
        }
Пример #26
0
        public void SetDefaultValuesFromEmployee(HREmployeeAllowancesInfo objEmployeeAllowancesInfo, HREmployeesInfo objEmployeesInfo)
        {
            HRAllowancesInfo objAllowancesInfo = (HRAllowancesInfo)MainObject;

            objEmployeeAllowancesInfo.FK_HREmployeeID                = objEmployeesInfo.HREmployeeID;
            objEmployeeAllowancesInfo.FK_HRAllowanceID               = objAllowancesInfo.HRAllowanceID;
            objEmployeeAllowancesInfo.HREmployeeAllowanceValue       = objAllowancesInfo.HRAllowanceValue;
            objEmployeeAllowancesInfo.HREmployeeNo                   = objEmployeesInfo.HREmployeeNo;
            objEmployeeAllowancesInfo.HREmployeeCardNumber           = objEmployeesInfo.HREmployeeCardNumber;
            objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = objAllowancesInfo.HRAllowanceConfigValue;
            objEmployeeAllowancesInfo.HREmployeeAllowanceDate        = DateTime.Now;

            // Set default config
            int timeSpan = GetTimeSpan(objEmployeesInfo.HREmployeeStartWorkingDate);
            HRAllowanceConfigsController  objAllowanceConfigsController = new HRAllowanceConfigsController();
            List <HRAllowanceConfigsInfo> listAllowanceConfigsInfo      = objAllowanceConfigsController.GetAllowanceConfigByFKEmployeePayrollFormula(objEmployeesInfo.FK_HREmployeePayrollFormulaID);

            if (listAllowanceConfigsInfo != null)
            {
                HREmployeeTimeSheetsController objEmployeeTimeSheetsController = new HREmployeeTimeSheetsController();
                HREmployeeTimeSheetsInfo       objEmployeeTimeSheetsInfo       = objEmployeeTimeSheetsController.GetEmployeeTimeSheetBySomeCriteria(objEmployeesInfo.HREmployeeID, objAllowancesInfo.HRAllowanceFromDate);
                HRTimesheetConfigsController   objTimesheetConfigsController   = new HRTimesheetConfigsController();
                int dateQty = objTimesheetConfigsController.GetDaysPerMonthByEmployeeFormullaID(objEmployeesInfo.FK_HREmployeePayrollFormulaID, objAllowancesInfo.HRAllowanceFromDate.Month, objAllowancesInfo.HRAllowanceFromDate.Year);

                foreach (HRAllowanceConfigsInfo item in listAllowanceConfigsInfo)
                {
                    if (item.HRAllowanceConfigName == AllowanceConfigName.Diligence.ToString() && objAllowancesInfo.HRAllowanceType == AllowanceType.Diligence.ToString())
                    {
                        objEmployeeAllowancesInfo.HREmployeeAllowanceAmount = item.HRAllowanceConfigAmount;
                        if (objEmployeeTimeSheetsInfo != null && objEmployeeTimeSheetsInfo.HREmployeeTimeSheetWorkingQty + objEmployeeTimeSheetsInfo.HREmployeeTimeSheetLeaveQty >= dateQty)
                        {
                            if (!item.HRAllowanceConfigIsTimeKeeping)
                            {
                                objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = item.HRAllowanceConfigAmount;
                            }
                            else
                            {
                                objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = item.HRAllowanceConfigAmount * objEmployeeTimeSheetsInfo.HREmployeeTimeSheetWorkingQty;
                            }
                        }
                    }
                    if (item.HRAllowanceConfigName == AllowanceConfigName.HeavyToxic.ToString() && objAllowancesInfo.HRAllowanceType == AllowanceType.HeavyToxic.ToString())
                    {
                        objEmployeeAllowancesInfo.HREmployeeAllowanceAmount = item.HRAllowanceConfigAmount;
                        if (item.HRAllowanceConfigIsTimeKeeping)
                        {
                            if (objEmployeeTimeSheetsInfo != null)
                            {
                                objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = objEmployeeTimeSheetsInfo.HREmployeeTimeSheetWorkingQty * item.HRAllowanceConfigAmount;
                            }
                        }
                        else
                        {
                            objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = item.HRAllowanceConfigAmount;
                        }
                    }
                    if (item.HRAllowanceConfigName == AllowanceConfigName.Perennial.ToString() && objAllowancesInfo.HRAllowanceType == AllowanceType.Perennial.ToString())
                    {
                        if (timeSpan >= item.HRAllowanceConfigFromDate && timeSpan < item.HRAllowanceConfigToDate)
                        {
                            objEmployeeAllowancesInfo.HREmployeeAllowanceAmount = item.HRAllowanceConfigAmount;
                            if (item.HRAllowanceConfigIsTimeKeeping)
                            {
                                if (objEmployeeTimeSheetsInfo != null)
                                {
                                    objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = objEmployeeTimeSheetsInfo.HREmployeeTimeSheetWorkingQty * item.HRAllowanceConfigAmount;
                                }
                            }
                            else
                            {
                                objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = item.HRAllowanceConfigAmount;
                            }
                        }
                    }
                    //TNDLoc [ADD][22/12/2015][Other allowance],START
                    if (item.HRAllowanceConfigName == AllowanceConfigName.Other.ToString() && objAllowancesInfo.HRAllowanceType == AllowanceType.Other.ToString())
                    {
                        objEmployeeAllowancesInfo.HREmployeeAllowanceAmount = item.HRAllowanceConfigAmount;
                        if (item.HRAllowanceConfigIsTimeKeeping)
                        {
                            if (objEmployeeTimeSheetsInfo != null)
                            {
                                objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = objEmployeeTimeSheetsInfo.HREmployeeTimeSheetWorkingQty * item.HRAllowanceConfigAmount;
                            }
                        }
                        else
                        {
                            objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = item.HRAllowanceConfigAmount;
                        }
                    }
                    //TNDLoc [ADD][22/12/2015][Other allowance],END
                }
            }

            float result;

            // Set Amount Bus
            if (objAllowancesInfo.HRAllowanceType == AllowanceType.Bus.ToString())
            {
                if (!objAllowancesInfo.HRAllowanceValue.Equals(String.Empty) && Single.TryParse(objAllowancesInfo.HRAllowanceValue, out result))
                {
                    objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = Convert.ToDecimal(Convert.ToSingle(objAllowancesInfo.HRAllowanceValue));
                }
                else
                {
                    objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = 0;
                }
            }

            if (objAllowancesInfo.HRAllowanceType.Contains("Amount"))
            {
                if (!objAllowancesInfo.HRAllowanceValue.Equals(String.Empty) && Single.TryParse(objAllowancesInfo.HRAllowanceValue, out result))
                {
                    objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = Convert.ToDecimal(Convert.ToSingle(objAllowancesInfo.HRAllowanceValue));
                }
                else
                {
                    objEmployeeAllowancesInfo.HREmployeeAllowanceValueAmount = 0;
                }
            }
        }
Пример #27
0
        public void SetDefaultValuesFromEmployee(HREmployeeDisciplinesInfo objEmployeeDisciplinesInfo, HREmployeesInfo objEmployeesInfo)
        {
            HRDisciplinesInfo objDisciplinesInfo = (HRDisciplinesInfo)MainObject;

            objEmployeeDisciplinesInfo.FK_HREmployeeID           = objEmployeesInfo.HREmployeeID;
            objEmployeeDisciplinesInfo.HREmployeeDisciplineValue = objDisciplinesInfo.HRDisciplineValue;
            objEmployeeDisciplinesInfo.HREmployeeNo             = objEmployeesInfo.HREmployeeNo;
            objEmployeeDisciplinesInfo.HREmployeeCardNumber     = objEmployeesInfo.HREmployeeCardNumber;
            objEmployeeDisciplinesInfo.HREmployeeDisciplineDate = objDisciplinesInfo.HRDisciplineFromDate;
        }
Пример #28
0
 public void SetDefaultValuesFromEmployee(HREmployeePayRollsInfo objEmployeePayRollsInfo, HREmployeesInfo objEmployeesInfo)
 {
 }