public ActionResult PreservationToClose() { return(ActionResultHelper.TryCatchWithLogger(() => { IpdaPreservationToCloseViewModel model = new IpdaPreservationToCloseViewModel(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; IList <Preservation> preservationsToClose = PreservationService.PreservationToClose(customerCompany.CompanyId); model.PreservationsCount = preservationsToClose.Count; IList <string> files = new List <string>(); foreach (Preservation preservation in preservationsToClose) { if (Directory.GetFiles(preservation.Path, "IPDA*.tsd").Any()) { continue; } string fileName = Directory.GetFiles(preservation.Path, "IPDA*.xml").FirstOrDefault(); if (!String.IsNullOrEmpty(fileName)) { files.Add(fileName); } } model.CloseFiles = files.ToArray(); ViewBag.messageId = Guid.NewGuid().ToString(); return View(model); }, _loggerService)); }
public ActionResult GetPreservationPendingTask([DataSourceRequest] DataSourceRequest request) { DataSourceResult result = new DataSourceResult(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; ICollection <PreservationTask> items = new List <PreservationTask>(); try { BindingList <DocumentArchive> archives = null; if (WCFUtility.GetSettingValue("DBAdminLoginConnection") == "false") { archives = new BindingList <DocumentArchive>(ArchiveService.GetLegalArchives("", customerCompany.CompanyId).Select(x => x.Archive).ToList()); } else { archives = CustomerService.GetCustomerArchivesByUsername(User.Identity.Name); } items = _preservationService.GetPreservationActiveTasks(archives.Select(s => s.IdArchive).ToList()); result.Total = items.Count; result.Data = items; } catch (Exception ex) { result.Errors = ex; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult CloseOpenPreservations() { CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; var preservations = PreservationService.PreservationToClose(customerCompany.CompanyId); var service = new PreservationService(); string res = ""; foreach (var preservation in preservations) { if (!preservation.CloseDate.HasValue) { if (service.VerifyExistingPreservation(preservation.IdPreservation)) { service.ClosePreservation(preservation.IdPreservation); string pattern = "Conservazione <b>{0}</b> del {1} <b>CHIUSA</b> in questa esecuzione.<br/>"; string filePath = Path.Combine(preservation.Path, preservation.Label); res += string.Format(pattern, preservation.IdPreservation, preservation.StartDate); //aggiunge informazioni sull'ipda res += GetIpdaInfo(service.verifiedIpda); } else { res += String.Join("<br/>", service.ErrorMessages); } } } return(Json(new { result = res })); }
public ActionResult GetPreservationVerifyTask([DataSourceRequest] DataSourceRequest request) { DataSourceResult result = new DataSourceResult(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; BindingList <DocumentArchive> archives = new BindingList <DocumentArchive>(); try { if (WCFUtility.GetSettingValue("DBAdminLoginConnection") == "false") { archives = CustomerService.GetCustomerArchivesByUsername(User.Identity.Name); } else { archives = new BindingList <DocumentArchive>(ArchiveService.GetLegalArchives("", customerCompany.CompanyId).Select(x => x.Archive).ToList()); } var tasks = new PreservationService().GetPreservationVerify(archives.Select(x => x.IdArchive).ToArray(), true); result.Total = tasks.Count; result.Data = tasks; } catch (Exception ex) { result.Errors = ex; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult Index() { return(ActionResultHelper.TryCatchWithLogger(() => { PreservationVerifyIndexModel model = new PreservationVerifyIndexModel(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; if (WCFUtility.GetSettingValue("DBAdminLoginConnection") == "false") { DocumentCondition conditions = new DocumentCondition(); List <DocumentSortCondition> sortConditions = new List <DocumentSortCondition>(); conditions.DocumentAttributeConditions = new System.ComponentModel.BindingList <DocumentCondition>(); conditions.DocumentAttributeConditions.Add(new DocumentCondition() { Name = "IsLegal", Value = 1, Operator = Library.Common.Enums.DocumentConditionFilterOperator.IsEqualTo, Condition = Library.Common.Enums.DocumentConditionFilterCondition.And }); sortConditions.Add(new DocumentSortCondition { Name = "Name", Dir = "ASC" }); model.archives = ArchiveService.GetArchives(0, int.MaxValue, conditions, sortConditions, out int total, customerCompany.CompanyId).ToList(); } else { model.archives = UserArchive.GetUserArchivesPaged(User.Identity.Name, 0, int.MaxValue, out int total, customerCompany.CompanyId); } return View(model); }, _loggerService)); }
public ActionResult SignPreservationFilesToClose() { return(ActionResultHelper.TryCatchWithLogger(() => { try { CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; List <Preservation> preservations = PreservationService.PreservationToClose(customerCompany.CompanyId); Models.ArubaSignModel arubaSignModel = ArubaSignConfigurationHelper.GetArubaSignConfiguration(customerCompany.CompanyId, User.Identity.Name); _logger.InfoFormat("Initializing signing with Aruba Automatic"); ISignService _signService = new SignService((info) => _logger.Info(info), (err) => _logger.Error(err)); if (arubaSignModel == null) { return Json(ArubaSignConfigurationHelper.NO_CREDENTIALS, JsonRequestBehavior.AllowGet); } foreach (Preservation preservation in preservations) { SignDocuments(preservation, _signService, arubaSignModel); } return Json(ArubaSignConfigurationHelper.SIGN_COMPLETE, JsonRequestBehavior.AllowGet); } catch (Exception ex) { _loggerService.Error($"Exception caught in process of signing: { ex.Message}", ex); return Json(ArubaSignConfigurationHelper.SIGN_ERROR, JsonRequestBehavior.AllowGet); } }, _loggerService)); }
public ActionResult GetPreservationArchivesConfigurable([DataSourceRequest] DataSourceRequest request) { return(ActionResultHelper.TryCatchWithLogger(() => { ICollection <ArchiveConfigurableViewModel> results = new List <ArchiveConfigurableViewModel>(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; string archiveFilterName = string.Empty; if (request.Filters.Count > 0) { archiveFilterName = (request.Filters.First() as FilterDescriptor).Value.ToString(); } ICollection <DocumentArchive> archives = ArchiveService.GetPreservationArchivesConfigurable(customerCompany.CompanyId, archiveFilterName, (request.Page - 1) * request.PageSize, request.PageSize, out int totalItems); foreach (DocumentArchive archive in archives) { results.Add(new ArchiveConfigurableViewModel() { IdArchive = archive.IdArchive, IsPreservationEnabled = archive.IsLegal, ArchiveName = archive.Name }); } DataSourceResult result = new DataSourceResult() { Total = totalItems, Data = results }; return Json(result, JsonRequestBehavior.AllowGet); }, _loggerService)); }
public ActionResult AddEditCustomerCompany(int Id) { CustomerCompanyViewModel model = new CustomerCompanyViewModel(); model.Id = Id; var curr = _db.Currencies.ToList(); //foreach (var item in _otherSettingMethod.getAllSystemValueListByKeyName("Company Setting Currencies")) //{ // model.CurrencyList.Add(new SelectListItem() { Text = item.Value, Value = item.Id.ToString() }); //} foreach (var item in curr) { model.CurrencyList.Add(new SelectListItem() { Text = item.Name, Value = item.Id.ToString() }); } if (model.Id > 0) { var details = _CompanyCustomerMethod.GetCustomerCompanyDetailsById(Id); model.Id = details.Id; model.CustomerNumber = details.Id; model.AccountName = details.AccountName; model.AccountNumber = details.AccountNumber; model.BankAddress = details.BankAddress; model.BankName = details.BankName; model.BankSortCode = details.BankSortCode; model.BusinessAddress = details.BusinessAddress; model.OriginalCompanyLogo = details.OriginalCompanyLogo; model.CompanyLogo = details.CompanyLogo; model.CompanyName = details.CompanyName; model.CreditLimit = details.CreditLimit; model.CreditStatus = details.CreditStatus; model.CurrencyID = (int)details.Currency; model.Email = details.Email; model.GeneralNotes = details.GeneralNotes; model.IBAN = details.IBAN; model.MailingAddress = details.MailingAddress; model.ParentCompany = details.ParentCompany; model.PaymentTerms = details.PaymentTerms; model.PhoneNumber = details.PhoneNumber; model.SalesRegions = details.SalesRegions; model.SecondaryPhoneNumber = details.SecondaryPhoneNumber; model.ShortName = details.ShortName; model.TaxGroup = details.TaxGroup; model.VAT_GST_Number = details.VAT_GST_Number; model.Website = details.Website; return(PartialView("_partialEditCustomerCompany", model)); } else { int count = (from row in _db.Company_Customer select row).Count(); model.CustomerNumber = count + 1; return(PartialView("_partialAddEditCustomerCompanyView", model)); } }
public ActionResult GetPreservationsToClose([DataSourceRequest] DataSourceRequest request) { return(ActionResultHelper.TryCatchWithLogger(() => { DataSourceResult result = new DataSourceResult(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; IList <Preservation> preservations = PreservationService.PreservationToClose(customerCompany.CompanyId); result.Total = preservations.Count; result.Data = preservations; return Json(result, JsonRequestBehavior.AllowGet); }, _loggerService)); }
public ActionResult CacheCompanyId(CustomerCompanyViewModel customerCompany) { return(ActionResultHelper.TryCatchWithLogger(() => { CustomerCompanyViewModel customerCompanyViewModel = new CustomerCompanyViewModel { SelectedIndex = customerCompany.SelectedIndex, CompanyId = customerCompany.CompanyId }; Session["idCompany"] = customerCompanyViewModel; return Json(customerCompanyViewModel, JsonRequestBehavior.AllowGet); }, _loggerService)); }
/// <summary> /// Gets company from EM002SS if company is not in session /// </summary> /// <param name="inputModel"></param> /// <returns></returns> public CustomerCompanyViewModel ReadCompanyOperations(CustomerCompanyInputModel inputModel) { ErrorModel err = new ErrorModel(); CustomerCompanyViewModel viewModel = new CustomerCompanyViewModel(true, inputModel.ControlCode); KeyValuePair <string, string> companyInSession = new KeyValuePair <string, string>(); // get company from session if (Data.Session.Get("Company") != null) { companyInSession = (KeyValuePair <string, string>)Data.Session.Get("Company"); } if (string.IsNullOrEmpty(inputModel.CompanyNumber)) { //error if no company number from input model err.HasError = true; err.ErrorMessage = "Missing company number."; viewModel.Error = err; } else if (inputModel.CompanyNumber == companyInSession.Key) { //is company id in session same as input company id viewModel.Company = new CompanyModel(); viewModel.Company.CRMCompanyName = companyInSession.Value; viewModel.Company.CompanyNumber = companyInSession.Key; } else { // get company if company is not found in session TalentCompany talentCompany = new TalentCompany(); Mapper.CreateMap <CustomerCompanyInputModel, DECompany>(); talentCompany.Company = Mapper.Map <DECompany>(inputModel); talentCompany.Settings = Environment.Settings.DESettings; talentCompany.Company.OwningAgent = talentCompany.Settings.AgentEntity.AgentUsername; ErrorObj errorOb = talentCompany.CompanyOperations(); viewModel.Error = Data.PopulateErrorObject(errorOb, talentCompany.ResultDataSet, talentCompany.Settings, null); if (!viewModel.Error.HasError) { viewModel.Company = Data.PopulateObjectListFromTable <CompanyModel>(talentCompany.ResultDataSet.Tables["CompanySearchResults"]).FirstOrDefault(); if (!string.IsNullOrEmpty(talentCompany.ResultDataSet.Tables["CompanyDetails"].Rows[0][0].ToString())) { viewModel.Company.CompanyNumber = talentCompany.ResultDataSet.Tables["CompanyDetails"].Rows[0][0].ToString(); } Data.Session.Add("Company", new KeyValuePair <string, string>(viewModel.Company.CompanyNumber, viewModel.Company.CRMCompanyName)); } } return(viewModel); }
public ActionResult SaveCustomerCompany(CustomerCompanyViewModel Model) { var data = _CompanyCustomerMethod.SaveCustomerCompanyData(Model, SessionProxy.UserId); if (!data) { return(Json("Error", JsonRequestBehavior.AllowGet)); } else { List <CustomerCompanyListViewModel> model = returnCustomerComapnayList(); return(PartialView("_partialCustomerCompanyList", model)); } }
public ActionResult GetArchives(string text) { return(ActionResultHelper.TryCatchWithLogger(() => { CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; ICollection <PreservationArchiveInfoResponse> archives = ArchiveService.GetLegalArchives(string.Empty, customerCompany.CompanyId); if (!string.IsNullOrEmpty(text)) { archives = archives.Where(x => x.Archive.Name.ToLower().Contains(text.ToLower())).ToList(); } return Json(archives.Select(s => s.Archive), JsonRequestBehavior.AllowGet); }, _loggerService)); }
public ActionResult ExecuteArchivePreservationMigrator(Guid id) { return(ActionResultHelper.TryCatchWithLogger(() => { DocumentArchive archive = ArchiveService.GetArchive(id); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; ExecuteArchivePreservationMigratorViewModel model = new ExecuteArchivePreservationMigratorViewModel() { IdArchive = id, ArchiveName = archive.Name, IdCompany = customerCompany.CompanyId }; return PartialView("_ExecuteArchivePreservationMigrator", model); }, _loggerService)); }
private void SetCustomerCompaniesToSession(string userName) { string idCustomer = CustomerService.GetCustomerIdByUsername(userName); UserCompaniesConfiguration displayCompanies = UserCompaniesConfiguration.GetUserAvailableCompanies(); BindingList <Company> getCompanies = displayCompanies.AvailableCompanies(idCustomer); CustomerCompanyViewModel customerCompanyViewModel = new CustomerCompanyViewModel() { SelectedIndex = 0, CompanyId = (getCompanies != null && getCompanies.Count > 0) ? getCompanies.First().IdCompany : Guid.Empty }; Session["idCompany"] = customerCompanyViewModel; }
public ActionResult DownloadPreservationFilesToClose() { return(ActionResultHelper.TryCatchWithLogger(() => { string zipFile = string.Empty; try { CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; List <Preservation> preservations = PreservationService.PreservationToClose(customerCompany.CompanyId); zipFile = CreatePreservationZipToDownload(preservations); return File(System.IO.File.ReadAllBytes(zipFile), System.Net.Mime.MediaTypeNames.Application.Zip); } finally { if (System.IO.File.Exists(zipFile)) { System.IO.File.Delete(zipFile); } } }, _loggerService)); }
public ActionResult GetPreservationAudits([DataSourceRequest] DataSourceRequest request, DateTime?fromDate, DateTime?toDate) { return(ActionResultHelper.TryCatchWithLogger(() => { DataSourceResult result = new DataSourceResult(); CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; bool sortingDescending = request.Sorts.Any(x => x.Member == "ActivityDate" && x.SortDirection == ListSortDirection.Descending); if (toDate.HasValue) { toDate = toDate.Value.AddDays(1).AddMinutes(-1); } Guid?idPreservationJournalActivity = null; if (request.Filters.Count > 0) { if (request.Filters.First() is FilterDescriptor descriptor && descriptor.Member == "ActivityName") { idPreservationJournalActivity = Guid.Parse(descriptor.Value.ToString()); } } ICollection <PreservationJournaling> audits = _preservationService.GetPreservationJournalings(null, null, fromDate, toDate, idPreservationJournalActivity, customerCompany.CompanyId, (request.Page - 1) * request.PageSize, request.PageSize, out int journalingsInArchive, false, sortingDescending); result.Total = journalingsInArchive; result.Data = audits.Select(s => new PreservationAuditGridViewModel() { ActivityDate = s.DateActivity, ActivityName = s.PreservationJournalingActivity?.Description, ActivityUser = string.Concat(s.User?.Name, " ", s.User.Surname), Description = string.IsNullOrEmpty(s.Notes) && s.Preservation != null ? s.Preservation.Label : s.Notes, IdPreservation = s.IdPreservation }); return Json(result, JsonRequestBehavior.AllowGet); }, _loggerService)); }
public ActionResult GridPreservationVerify([DataSourceRequest] DataSourceRequest request) { var result = new DataSourceResult(); try { int total = 0; int skip = (request.Page - 1) * request.PageSize; int take = request.PageSize; if (skip < 0) { skip = 0; } var service = new PreservationService(); const int ARCHIVES_TAKE = 5; int archiveSkip = 0, totalArchives; List <DocumentArchive> archivi = null; CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; if (WCFUtility.GetSettingValue("DBAdminLoginConnection") == "false") { DocumentCondition conditions = new DocumentCondition(); List <DocumentSortCondition> sortConditions = new List <DocumentSortCondition>(); conditions.DocumentAttributeConditions = new System.ComponentModel.BindingList <DocumentCondition>(); conditions.DocumentAttributeConditions.Add(new DocumentCondition() { Name = "IsLegal", Value = 1, Operator = Library.Common.Enums.DocumentConditionFilterOperator.IsEqualTo, Condition = Library.Common.Enums.DocumentConditionFilterCondition.And }); if (request.Filters != null) { foreach (var item in request.Filters) { //conditions.DocumentAttributeConditions.Add(new DocumentCondition { Name = item., Value = item.Value, Operator = Library.Common.Enums.DocumentConditionFilterOperator.Contains, Condition = Library.Common.Enums.DocumentConditionFilterCondition.And }); } } if (request.Sorts != null) { foreach (var item in request.Sorts) { sortConditions.Add(new DocumentSortCondition { Name = item.Member, Dir = item.SortDirection }); } } else { sortConditions.Add(new DocumentSortCondition { Name = "Name", Dir = "ASC" }); } archivi = ArchiveService.GetArchives(skip, take, conditions, sortConditions, out total, customerCompany.CompanyId).ToList(); } else { archivi = UserArchive.GetUserArchivesPaged(User.Identity.Name, archiveSkip, ARCHIVES_TAKE, out totalArchives, customerCompany.CompanyId); if (archivi.Count < totalArchives) { for (archiveSkip += ARCHIVES_TAKE; archiveSkip < totalArchives; archiveSkip += ARCHIVES_TAKE) { archivi.AddRange(UserArchive.GetUserArchivesPaged(User.Identity.Name, archiveSkip, ARCHIVES_TAKE, out totalArchives, customerCompany.CompanyId)); } } if (archivi.Any()) { result.Data = service.GetPreservationVerify(archivi.Select(x => x.IdArchive).ToArray <Guid>(), skip, take, out total, null); } else { result.Data = archivi; } } result.Total = total; } catch (Exception ex) { result.Errors = ex; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult GridArchives([DataSourceRequest] DataSourceRequest request) { var result = new DataSourceResult(); try { int total = 0; int skip = request.Page - 1; int take = request.PageSize; skip = (skip < 1) ? 0 : skip * take; CustomerCompanyViewModel customerCompany = Session["idCompany"] as CustomerCompanyViewModel; if (WCFUtility.GetSettingValue("DBAdminLoginConnection") == "false") { DocumentCondition conditions = new DocumentCondition(); List <DocumentSortCondition> sortConditions = new List <DocumentSortCondition>(); conditions.DocumentAttributeConditions = new System.ComponentModel.BindingList <DocumentCondition>(); conditions.DocumentAttributeConditions.Add(new DocumentCondition() { Name = "IsLegal", Value = 1, Operator = Library.Common.Enums.DocumentConditionFilterOperator.IsEqualTo, Condition = Library.Common.Enums.DocumentConditionFilterCondition.And }); if (request.Filters != null) { foreach (var item in request.Filters) { //conditions.DocumentAttributeConditions.Add(new DocumentCondition { Name = item., Value = item.Value, Operator = Library.Common.Enums.DocumentConditionFilterOperator.Contains, Condition = Library.Common.Enums.DocumentConditionFilterCondition.And }); } } if (request.Sorts != null) { foreach (var item in request.Sorts) { sortConditions.Add(new DocumentSortCondition { Name = item.Member, Dir = item.SortDirection }); } } else { sortConditions.Add(new DocumentSortCondition { Name = "Name", Dir = "ASC" }); } result.Data = ArchiveService.GetArchives(skip, take, conditions, sortConditions, out total, customerCompany.CompanyId).ToList(); } else { result.Data = UserArchive.GetUserArchivesPaged(User.Identity.Name, skip, take, out total, customerCompany.CompanyId); } result.Total = total; } catch (Exception ex) { result.Errors = ex; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public bool SaveCustomerCompanyData(CustomerCompanyViewModel model, int UserId) { if (model.Id == 0) { Company_Customer save = new Company_Customer(); save.AccountName = model.AccountName; save.AccountNumber = model.AccountNumber; save.BankAddress = model.BankAddress; save.BankName = model.BankName; save.BankSortCode = model.BankSortCode; save.BusinessAddress = model.BusinessAddress; save.OriginalCompanyLogo = model.OriginalCompanyLogo; save.CompanyLogo = model.CompanyLogo; save.CompanyName = model.CompanyName; save.CreditLimit = model.CreditLimit; save.CreditStatus = model.CreditStatus; save.Currency = model.CurrencyID; save.Email = model.Email; save.GeneralNotes = model.GeneralNotes; save.IBAN = model.IBAN; save.MailingAddress = model.MailingAddress; save.ParentCompany = model.ParentCompany; save.PaymentTerms = model.PaymentTerms; save.PhoneNumber = model.PhoneNumber; save.SalesRegions = model.SalesRegions; save.SecondaryPhoneNumber = model.SecondaryPhoneNumber; save.ShortName = model.ShortName; save.TaxGroup = model.TaxGroup; save.VAT_GST_Number = model.VAT_GST_Number; save.Website = model.Website; save.CreatedDate = DateTime.Now; save.Archived = false; save.UserIDCreatedBy = UserId; save.UserIDLastModifiedBy = UserId; save.LastModified = DateTime.Now; _db.Company_Customer.Add(save); _db.SaveChanges(); return(true); } else { var update = _db.Company_Customer.Where(x => x.Id == model.Id).FirstOrDefault(); update.AccountName = model.AccountName; update.AccountNumber = model.AccountNumber; update.BankAddress = model.BankAddress; update.BankName = model.BankName; update.BankSortCode = model.BankSortCode; update.BusinessAddress = model.BusinessAddress; update.CompanyLogo = model.CompanyLogo; update.OriginalCompanyLogo = model.OriginalCompanyLogo; update.CompanyName = model.CompanyName; update.CreditLimit = model.CreditLimit; update.CreditStatus = model.CreditStatus; update.Currency = model.CurrencyID; update.Email = model.Email; update.GeneralNotes = model.GeneralNotes; update.IBAN = model.IBAN; update.MailingAddress = model.MailingAddress; update.ParentCompany = model.ParentCompany; update.PaymentTerms = model.PaymentTerms; update.PhoneNumber = model.PhoneNumber; update.SalesRegions = model.SalesRegions; update.SecondaryPhoneNumber = model.SecondaryPhoneNumber; update.ShortName = model.ShortName; update.TaxGroup = model.TaxGroup; update.VAT_GST_Number = model.VAT_GST_Number; update.Website = model.Website; update.UserIDLastModifiedBy = UserId; update.LastModified = DateTime.Now; _db.SaveChanges(); return(true); } }