// Exécution batch connexion public void Executer() { // Construction du calendrier var service = new ProvisionServices(uow, groupeId); List<DateTime> calendrier = service.GetCalendrier(svcDate); // Pour chaque date dans calendrier, exécuter le processus // puis tracer foreach (var date in calendrier) { // Exécuter process Boolean exec = ExecuterProcessus(date); if (!exec) { break; } } }
// GetAutorisation public ProvisionsDtoJSon GetAutorisation() { // Calcul de la prochaine provisions IQueryable<Provision> provisions = uow.Provision.GetAllByGroupeId(groupeId); // Init calendrier var service = new ProvisionServices(uow, groupeId); var calendrier = service.GetCalendrier(svcDate); // Prochain mois DateTime _prochaineDate = svcDate.ProchaineDateInCalendrierDanslemois(calendrier, 02); int iProchainMois = _prochaineDate.Month; // Calcul du asOf var _asOf = "2"; // Calcul du libellé var _libInFrench = svcDate.LibelleMoisInFrench(iProchainMois); var _lib = _libInFrench + " " + DateTime.Now.Year; // Init message var _message = "x"; // Vérification des pré-requis: si non vérifié, on retourne le résultat if (!service.VerifierPrerequis()) { _message = "Les recettes provisionnées ne sont pas égales aux dépenses. Votre provision ne pourra être validée. Revoir le modèle provisions. La somme des provisions n'est pas nulle. "; // retour return new ProvisionsDtoJSon { autorisation = false, message = _message, asOfProvision = _asOf, libelleProvision = _lib }; } // Si prérequis, vérifié, on continue // Init autorisation var _autorisation = false; if (calendrier.Count > 0) { _autorisation = true; _message = "Ajouter les provisions " + _libInFrench + " " + DateTime.Now.Year ; } else { _message = "La saisie des provisions du mois " + _libInFrench + " n'est pas encore possible." ; } // Resultat var jsonProvision = new ProvisionsDtoJSon { autorisation = _autorisation, message = _message, asOfProvision = _asOf, libelleProvision = _lib }; return jsonProvision; }