예제 #1
0
    /// <summary>
    /// بادریافت شماره پرسنلی ، کارکرد را برمیگرداند
    /// </summary>
    /// <param name="personCode">شماره پرسنلی</param>
    /// <param name="fromDate">تاریخ شروع</param>
    /// <param name="toDate">تاریخ پایان</param>
    /// <returns></returns>
    private TAProxy Fill(string personCode, DateTime fromDate, DateTime toDate)
    {
        BPerson personBusiness = new BPerson();
        var     person         = personBusiness.GetByBarcode(personCode);

        if (person == null)
        {
            return(new TAProxy());
        }

        IList <PersonalMonthlyReportRow> PersonnelMonthlyOperationList    = null;
        PersonalMonthlyReportRow         PersonnelSummaryMonthlyOperation = null;
        BPersonMonthlyWorkedTime         MonthlyOperationBusiness         = new BPersonMonthlyWorkedTime(person.ID);

        var personDateRangeReportProxy = MonthlyOperationBusiness.GetPersonDateRangeReport(fromDate, toDate).FirstOrDefault();

        TAProxy proxy = new TAProxy();

        proxy.PersonCode   = personCode;
        proxy.HozourTime   = personDateRangeReportProxy.PresenceDuration;         //35 * 60;//"35:00"
        proxy.KasreKarTime = personDateRangeReportProxy.HourlyUnallowableAbsence; //2 * 60 + 50;//"02:50"
        proxy.MamuriatTime = personDateRangeReportProxy.HourlyMission;            //12 * 60;//"12:00"
        proxy.KarkerdSum   = personDateRangeReportProxy.ImpureOperation;          //47 * 60;//12:00 + 35:00
        return(proxy);
    }