Beispiel #1
0
        public void AnalyzeOvertime(List <ColumnInfo> _atdtParameters,
                                    List <ColumnInfo> _personalParameters, totaplctn _otApp, bool _isSaveDetail)
        {
            try
            {
                AnalStartDate = Convert.ToDateTime(_atdtParameters[0].ColumnValue);
                AnalEndDate   = Convert.ToDateTime(_atdtParameters[1].ColumnValue);

                analatBll.GetPersonals(_personalParameters, ref lstStaff, ref sSqlStaff, AnalStartDate);

                lstPriCalendar     = analatBll.GetPrivateCalendar(_personalParameters, sSqlStaff, AnalStartDate, AnalEndDate);
                lstCalendarDetails = analatBll.GetCalendar(AnalStartDate, AnalEndDate);
                lstRosterDetails   = analatBll.GetRosterDetails(AnalStartDate, AnalEndDate);
                lstRosterHistory   = analatBll.GetRosterHistory(sSqlStaff, AnalStartDate, AnalEndDate);
                lstOTType          = analatBll.GetOTType();
                lstOriAtData       = analatBll.GetOriginalData(sSqlStaff, AnalStartDate, AnalEndDate);

                DoAnalyze(_otApp, _isSaveDetail);
            }
            catch (UtilException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new UtilException(ex.Message, ex);
            }
        }
Beispiel #2
0
        public void AnalyzeLeave(List <ColumnInfo> _atdtParameters,
                                 List <ColumnInfo> _personalParameters, tlvleaapp _leaveApp, bool _isSaveDetail)
        {
            try
            {
                //analatBll.GetAnalyzeDateRange(_atdtParameters, ref AnalStartDate, ref AnalEndDate);
                AnalStartDate = Convert.ToDateTime(_atdtParameters[0].ColumnValue);
                AnalEndDate   = Convert.ToDateTime(_atdtParameters[1].ColumnValue);

                analatBll.GetPersonals(_personalParameters, ref lstStaff, ref sSqlStaff, AnalStartDate);

                lstPriCalendar     = analatBll.GetPrivateCalendar(_personalParameters, sSqlStaff, AnalStartDate, AnalEndDate);
                lstCalendarDetails = analatBll.GetCalendar(AnalStartDate, AnalEndDate);
                lstRosterDetails   = analatBll.GetRosterDetails(AnalStartDate, AnalEndDate);
                lstRosterHistory   = analatBll.GetRosterHistory(sSqlStaff, AnalStartDate, AnalEndDate);
                //lstLeaveApp = analatBll.GetLeaveApp(sSqlStaff, AnalStartDate, AnalEndDate);

                DoAnalyze(_leaveApp, _isSaveDetail);
            }
            catch (UtilException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new UtilException(ex.Message, ex);
            }
        }
Beispiel #3
0
        public void CarryForward(List <ColumnInfo> _carryforwardParameters,
                                 List <ColumnInfo> _personalParameters)
        {
            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    int CarryStartYear = Convert.ToDateTime(_carryforwardParameters[0].ColumnValue).Year;
                    int CarryEndYear   = Convert.ToDateTime(_carryforwardParameters[1].ColumnValue).Year;

                    List <vw_employment> lstStaff = null;
                    string sSqlStaff = string.Empty;


                    //期间内所有离职员工都不进行结转
                    atanaattBll bll = new atanaattBll();
                    bll.GetPersonals(_personalParameters, ref lstStaff, ref sSqlStaff, new DateTime(CarryEndYear, 12, 31).AddDays(1));

                    //得到休假类型
                    List <ColumnInfo> parameters = new List <ColumnInfo>()
                    {
                        new ColumnInfo()
                        {
                            ColumnName = "iscf", ColumnValue = "Y"
                        }
                    };
                    BaseBll          bBll         = new BaseBll();
                    List <tlvleatyp> lstLeaveType = bBll.GetSelectedRecords <tlvleatyp>(parameters);

                    for (int i = 0; i < (CarryEndYear - CarryStartYear) + 1; i++)
                    {
                        //结转前删除所有的结转年度数据

                        parameters = new List <ColumnInfo>()
                        {
                            new ColumnInfo()
                            {
                                ColumnName = "year", ColumnValue = (CarryStartYear + i).ToString()
                            }
                        };
                        dal.DoMultiDelete <tlvcryfwd>(parameters);


                        for (int n = 0; n < lstLeaveType.Count; n++)
                        {
                            string ltcd = lstLeaveType[n].ltcd;
                            for (int j = 0; j < lstStaff.Count; j++)
                            {
                                DoCarryforward(lstStaff[j], ltcd, CarryStartYear + i);
                            }
                        }
                    }

                    scope.Complete();
                }
            }
            catch (UtilException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new UtilException(ex.Message, ex);
            }
        }