using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using CommonDAL.Interfaces;
using ServerSettingsManager;
using ServicesDto.DocumentUploader;
using Sms.Hpp.Common.Controllers;
using Sms.KamHpp.BaseDocument;
using Sms.KamHpp.DocumentProvider;
using Sms.KamHpp.Domain.Documents;
using Sms.KamHPP.Logger;namespace DatabaseScripter
private readonly IUnitOfWorkProvider _uowProvider;
private readonly IDocumentProvider _documentProvider;
private readonly IServerSettingsManager _serverSettings;
public Worker(IUnitOfWorkProvider uowProvider, IDocumentProvider documentProvider, IServerSettingsManager serverSettings, ILogger Logger)
_uowProvider = uowProvider;
_documentProvider = documentProvider;
_serverSettings = serverSettings;
public bool IsYearlierThenNow(DateTime docDate, bool isDailyDoc)
return docDate.DayOfYear <= DateTime.Now.DayOfYear;
return docDate.Month < DateTime.Now.Month;
public void DoWork(string docIdent, bool isDailyDoc)
var document = _documentProvider.Get(docIdent);
var docDate = new DateTime(2015, 5, 1);
while (IsYearlierThenNow(docDate, isDailyDoc))
if (!document.TryGetDocument(docDate, out doc))
doc = document.CreateDocument(docDate);
DocumentWinccOaManualUploader.DoUploadDataFromWinCcOa(docDate, document, _serverSettings, _logger);
_logger.Error("Ошибка в методе UploadDataFromWinccOa " + ex);
docDate = isDailyDoc ? docDate.AddDays(1) : docDate.AddMonths(1);