Ejemplo n.º 1
0
 public otaplctnBll()
 {
     dal     = new otaplctnDal();
     baseDal = dal;
 }
Ejemplo n.º 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);
        }