/// <summary> /// جزیات یک روز را برمیگرداند /// </summary> /// <param name="date"></param> /// <returns></returns> public IList <MonthlyDetailReportProxy> GetPersonMonthlyRowDetail(DateTime date) { try { if (IsValidPeson()) { PrsMonthlyRptRepository prsMonthlyRep = new PrsMonthlyRptRepository(false); List <MonthlyDetailReportProxy> detailList = new List <MonthlyDetailReportProxy>(); IList <PersonalMonthlyReportRowDetail> list = prsMonthlyRep.LoadPairableScndcnpValue(this.workingPersonId, date.Date); foreach (PersonalMonthlyReportRowDetail detail in list) { for (int i = 0; i < detail.Pairs.Count; i++) { if (!detail.ScndCnpName.Contains("خالص") && !detail.ScndCnpName.Contains("چارت")) { MonthlyDetailReportProxy proxy = new MonthlyDetailReportProxy(); proxy.From = Utility.IntTimeToRealTime(detail.Pairs[i].From); proxy.To = Utility.IntTimeToRealTime(detail.Pairs[i].To); proxy.Name = detail.ScndCnpName; proxy.Color = detail.Color; if (detail.Pairs[i].From > 0 && detail.Pairs[i].To == 0) { if (sysLanguageResource == LanguagesName.Parsi) { proxy.Description = "عدم وجود زوج مرتب بعلت خطای احتمالی در تعریف قوانین"; } else { proxy.Description = "No pair is available maybe caused by rules definition"; } } detailList.Add(proxy); } } } return(detailList); } else { throw new IllegalServiceAccess(String.Format("این سرویس بعللت اعتبارسنجی قابل دسترسی نمیباشد. شناسه کاربری {0} میباشد", this.Username), ExceptionSrc); } } catch (Exception ex) { BaseBusiness <Entity> .LogException(ex, "BPersonMonthlyWorkedTime", "GetPersonMonthlyRowDetail"); throw ex; } }
//DNN NOTE /// <summary> /// جزئیات گزارش کارکرد یک روز را برمیگرداند /// </summary> /// <param name="date">تاریخ</param> /// <returns>لیست پروکسی جزئیات گزارش کارکد </returns> public IList <MonthlyDetailReportProxy> GetPersonMonthlyRowDetail(DateTime date) { //DNN Note IDashboardBRequest requestBusiness = new BRequest(this.workingPersonId); //End of DNN Note try { if (IsValidPeson()) { //DNN Note decimal rowId = date.Date.Day * 100; //End of DNN Note PrsMonthlyRptRepository prsMonthlyRep = new PrsMonthlyRptRepository(false); List <MonthlyDetailReportProxy> detailList = new List <MonthlyDetailReportProxy>(); IList <PersonalMonthlyReportRowDetail> list = prsMonthlyRep.LoadPairableScndcnpValue(this.workingPersonId, date.Date); foreach (PersonalMonthlyReportRowDetail detail in list) { for (int i = 0; i < detail.Pairs.Count; i++) { if (!detail.ScndCnpName.Contains("خالص") && !detail.ScndCnpName.Contains("چارت") && detail.ScndShowInDetail) { MonthlyDetailReportProxy proxy = new MonthlyDetailReportProxy(); //DNN Note rowId = rowId + 1; proxy.ID = rowId; //End of DNN Note proxy.From = Utility.IntTimeToRealTime(detail.Pairs[i].From); proxy.To = Utility.IntTimeToRealTime(detail.Pairs[i].To); proxy.Name = detail.ScndCnpName; proxy.Color = detail.Color; if (detail.Pairs[i].From > 0 && detail.Pairs[i].To == 0) { if (sysLanguageResource == LanguagesName.Parsi) { proxy.Description = "عدم وجود زوج مرتب بعلت خطای احتمالی در تعریف قوانین"; } else { proxy.Description = "No pair is available maybe caused by rules definition"; } } //DNN NOTE if (proxy.Name == "غیبت ساعتی" || proxy.Name == "غیبت روزانه") { int UnderReviewCount = requestBusiness.GetAllRequestCountInDay(this.workingPersonId, date, RequestState.UnderReview, detail.Pairs[i].From, detail.Pairs[i].To); int ConfirmedCount = requestBusiness.GetAllRequestCountInDay(this.workingPersonId, date, RequestState.Confirmed, detail.Pairs[i].From, detail.Pairs[i].To); if (UnderReviewCount > 0) { proxy.Description = proxy.Description + string.Format("تعداد {0} درخواست در حال بررسی می باشد. ", UnderReviewCount); } if (ConfirmedCount > 0) { proxy.Description = proxy.Description + string.Format("تعداد {0} درخواست تایید شده است. ", ConfirmedCount); } } //END OF DNN NOTE detailList.Add(proxy); } } } return(detailList); } else { throw new IllegalServiceAccess(String.Format("این سرویس بعللت اعتبارسنجی قابل دسترسی نمیباشد. شناسه کاربری {0} میباشد", this.Username), ExceptionSrc); } } catch (Exception ex) { BaseBusiness <Entity> .LogException(ex, "BPersonMonthlyWorkedTime", "GetPersonMonthlyRowDetail"); throw ex; } }