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); }
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); }