Пример #1
0
        public double GetLimit(PrCalculationStore store, string _otcd)
        {
            otlimitDal limitDal   = new otlimitDal();
            double     monthLimit = limitDal.GetMonthlmbyEmp(store.CurrentEmployment, _otcd, HRMS_Limit_Type.OvertimeHours);

            if (monthLimit == null)
            {
                monthLimit = 1000;
            }
            if ((monthLimit == -1) || (monthLimit < 0))
            {
                monthLimit = 10000;
            }

            return(monthLimit);
        }
Пример #2
0
        public LvSettingInfo GetEmpTTLVSettings(string _emno, string _otcd, DateTime _otdt)
        {
            LvSettingInfo settingInfo = new LvSettingInfo();

            settingInfo.emp = GetSelectedObject <vw_employment>(new List <ColumnInfo>()
            {
                new ColumnInfo()
                {
                    ColumnName = "emno", ColumnValue = _emno
                }
            });

            //取得最大限制
            otlimitDal limitDal = new otlimitDal();

            settingInfo.WeekLimit  = limitDal.GetWeeklmbyEmp(settingInfo.emp, _otcd, HRMS_Limit_Type.OvertimeTTLVHours);
            settingInfo.MonthLimit = limitDal.GetMonthlmbyEmp(settingInfo.emp, _otcd, HRMS_Limit_Type.OvertimeTTLVHours);
            settingInfo.YearLimit  = limitDal.GetYearlmbyEmp(settingInfo.emp, _otcd, HRMS_Limit_Type.OvertimeTTLVHours);

            //if (settingInfo.WeekLimit != -1)
            //    settingInfo.SummaryText.Add("Limit in Week: " + settingInfo.WeekLimit.ToString());
            //if (settingInfo.MonthLimit != -1)
            //    settingInfo.SummaryText.Add("Limit in Month: " + settingInfo.MonthLimit.ToString());
            //if (settingInfo.YearLimit != -1)
            //    settingInfo.SummaryText.Add("Limit in Year: " + settingInfo.YearLimit.ToString());


            //取得已经加班小时数
            otaplctnDal appDal = new otaplctnDal();

            settingInfo.WeekConsume  = appDal.getWeekTTLVHoursByEmp(settingInfo.emp, _otcd, _otdt);
            settingInfo.MonthConsume = appDal.getMonthTTLVHoursByEmp(settingInfo.emp, _otcd, _otdt);
            settingInfo.YearConsume  = appDal.getYearTTLVHoursByEmp(settingInfo.emp, _otcd, _otdt);

            //if (settingInfo.WeekLimit != -1)
            //    settingInfo.SummaryText.Add("Consume in Week: " + (Math.Round(settingInfo.WeekConsume, 2)).ToString());
            //if (settingInfo.MonthLimit != -1)
            //    settingInfo.SummaryText.Add("Consume in Month: " + (Math.Round(settingInfo.MonthConsume, 2)).ToString());
            //if (settingInfo.YearLimit != -1)
            //    settingInfo.SummaryText.Add("Consume in Year: " + (Math.Round(settingInfo.YearConsume, 2)).ToString());


            if (settingInfo.WeekLimit != -1)
            {
                settingInfo.WeekBalance = Math.Round(settingInfo.WeekLimit - settingInfo.WeekConsume, 2);
                //settingInfo.SummaryText.Add("Balance in Week: " + settingInfo.WeekBalance.ToString());
            }
            if (settingInfo.MonthLimit != -1)
            {
                settingInfo.MonthBalance = Math.Round(settingInfo.MonthLimit - settingInfo.MonthConsume, 2);
                //settingInfo.SummaryText.Add("Balance in Month: " + settingInfo.MonthBalance.ToString());
            }
            if (settingInfo.YearLimit != -1)
            {
                settingInfo.YearBalance = Math.Round(settingInfo.YearLimit - settingInfo.YearConsume, 2);
                //settingInfo.SummaryText.Add("Balance in Year: " + settingInfo.YearBalance.ToString());
            }

            settingInfo.MinBalance = Math.Min((settingInfo.WeekBalance == -1 ? 10000 : settingInfo.WeekBalance), (settingInfo.MonthBalance == -1 ? 10000 : settingInfo.MonthBalance));
            settingInfo.MinBalance = Math.Min(settingInfo.MinBalance, (settingInfo.YearBalance == -1 ? 10000 : settingInfo.YearBalance));

            return(settingInfo);
        }
Пример #3
0
 public otlimitBll()
 {
     dal     = new otlimitDal();
     baseDal = dal;
 }