示例#1
0
 internal ImportTime(string fileName, IEmployeeTimeService employeeTimeService, ImportTimeType importTimeType)
     : base(fileName, null)
 {
     _ImportTimeType      = importTimeType;
     _EmployeeTimeService = employeeTimeService;
     _ImportRunning       = true;
     _SaveDataResult      = new SaveDataResult();
 }
示例#2
0
 public void ImportTime(List <ImportTimeData> list, ImportTimeType importTimeType)
 {
     if (IsRunningEmployeeTimeImport)
     {
         throw new AnotherImportRunning();
     }
     IsRunningEmployeeTimeImport = true;
     InheritedContextAsyncStarter.Run(importTimePlanning, new ImportParam(list, importTimeType));
     //Thread thread = new Thread(new ParameterizedThreadStart(importTimePlanning));
     //thread.Start(new ImportParam(list, importTimeType));
 }
 public void ImportTime(List<ImportTimeData> list, ImportTimeType importTimeType)
 {
     RemoteService.ImportTime(list, importTimeType);
 }
示例#4
0
 public ImportParam(List <ImportTimeData> list, ImportTimeType importTimeType)
 {
     List           = list;
     ImportTimeType = importTimeType;
 }
示例#5
0
 public ImportParam(List<ImportTimeData> list, ImportTimeType importTimeType)
 {
     List = list;
     ImportTimeType = importTimeType;
 }
示例#6
0
 public void ImportTime(List<ImportTimeData> list, ImportTimeType importTimeType)
 {
     if (IsRunningEmployeeTimeImport)
         throw new AnotherImportRunning();
     IsRunningEmployeeTimeImport = true;
     InheritedContextAsyncStarter.Run(importTimePlanning, new ImportParam(list, importTimeType));
     //Thread thread = new Thread(new ParameterizedThreadStart(importTimePlanning));
     //thread.Start(new ImportParam(list, importTimeType));
 }
 public SaveDataResult ImportTime(List<ImportTimeData> list, ImportTimeType importTimeType)
 {
     SaveDataResult result = new SaveDataResult();
     result.Success = true;
     if (list.Count > 0)
     {
         string query =
     @" create table #tp4insert
     (
     [PersID] nvarchar (25),
     [Date] smalldatetime,
     [CharID] nvarchar (10),
     [Begin] smallint,
     [End] smallint
     )
     ";
         using (IDbCommand command = Session.Connection.CreateCommand())
         {
             Session.Transaction.Enlist(command);
             command.CommandText = query;
             command.CommandTimeout = 60 * 6;
             command.ExecuteNonQuery();
             string[] queries = createQueriesForInsert(list);
             for (int i = 0; i < queries.Length; i++)
             {
                 command.CommandText = queries[i];
                 command.ExecuteNonQuery();
             }
             if (importTimeType == ImportTimeType.Planning)
                 command.CommandText = "spEmployeeTimePlanning_ImportData";
             else
                 command.CommandText = "spEmployeeTimeRecording_ImportData";
             command.CommandType = CommandType.StoredProcedure;
             SqlParameter importResult = new SqlParameter("@result", SqlDbType.Int, 4);
             importResult.Direction = ParameterDirection.Output;
             command.Parameters.Add(importResult);
             using (IDataReader reader = command.ExecuteReader(CommandBehavior.SequentialAccess))
             {
                 //list = Map.ToList<ImportTimeData>(reader);
                 result.Data = GetResultFromTimeImport(reader);
                 reader.NextResult();
                 result.Success = ((int)importResult.Value > 0);
             }
         }
         if (importTimeType == ImportTimeType.Planning)
         {
             _AbsenceTimePlanningDao.OnDaoInvalidateWholeCache();
             _WorkingTimePlanningDao.OnDaoInvalidateWholeCache();
         }
         else
         {
             _AbsenceTimeRecordingDao.OnDaoInvalidateWholeCache();
             _WorkingTimeRecordingDao.OnDaoInvalidateWholeCache();
         }
     }
     return result;
 }
示例#8
0
 public void ImportTime(List <ImportTimeData> list, ImportTimeType importTimeType)
 {
     RemoteService.ImportTime(list, importTimeType);
 }
        public SaveDataResult ImportTime(List <ImportTimeData> list, ImportTimeType importTimeType)
        {
            SaveDataResult result = new SaveDataResult();

            result.Success = true;
            if (list.Count > 0)
            {
                string query =
                    @" create table #tp4insert
(
    [PersID] nvarchar (25), 
    [Date] smalldatetime,
    [CharID] nvarchar (10), 
    [Begin] smallint,
    [End] smallint
)
";
                using (IDbCommand command = Session.Connection.CreateCommand())
                {
                    Session.Transaction.Enlist(command);
                    command.CommandText    = query;
                    command.CommandTimeout = 60 * 6;
                    command.ExecuteNonQuery();
                    string[] queries = createQueriesForInsert(list);
                    for (int i = 0; i < queries.Length; i++)
                    {
                        command.CommandText = queries[i];
                        command.ExecuteNonQuery();
                    }
                    if (importTimeType == ImportTimeType.Planning)
                    {
                        command.CommandText = "spEmployeeTimePlanning_ImportData";
                    }
                    else
                    {
                        command.CommandText = "spEmployeeTimeRecording_ImportData";
                    }
                    command.CommandType = CommandType.StoredProcedure;
                    SqlParameter importResult = new SqlParameter("@result", SqlDbType.Int, 4);
                    importResult.Direction = ParameterDirection.Output;
                    command.Parameters.Add(importResult);
                    using (IDataReader reader = command.ExecuteReader(CommandBehavior.SequentialAccess))
                    {
                        //list = Map.ToList<ImportTimeData>(reader);
                        result.Data = GetResultFromTimeImport(reader);
                        reader.NextResult();
                        result.Success = ((int)importResult.Value > 0);
                    }
                }
                if (importTimeType == ImportTimeType.Planning)
                {
                    _AbsenceTimePlanningDao.OnDaoInvalidateWholeCache();
                    _WorkingTimePlanningDao.OnDaoInvalidateWholeCache();
                }
                else
                {
                    _AbsenceTimeRecordingDao.OnDaoInvalidateWholeCache();
                    _WorkingTimeRecordingDao.OnDaoInvalidateWholeCache();
                }
            }
            return(result);
        }