yavsc/yavscModel/Skill/SkillProvider.cs

93 lines
2.8 KiB
C#

//
// SkillProvider.cs
//
// Author:
// Paul Schneider <paul@pschneider.fr>
//
// Copyright (c) 2015 GNU GPL
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
using System;
using System.Configuration.Provider;
Réorganisations. La page de reservation par défaut est maintenant la reservation dite simple. Fonctionnalités en cours de développement: 1) la reservation dite simple 2) la notification à la reservation 3) l'activité principale exercée 4) l'integration d'un premier thème clair * MEA.sql: définit la valeur MEA du profile (Main Exerted Activity) dans la base de donnée * Booking.aspx: Imlémente la vue du formulaire de reservation simple, c'etait avant la reservation classique, sur une période plutôt qu'un jour. La reservation classique est renomée `EavyBooking`. * SimpleBookingQuery.cs: Implémente une simple commande de rendez-vous, en tant que commande du workflow. * .gitignore: ignorer les configuration des pré et prod totem. * SkillEntity.cs: * SkillManager.cs: * Skills.aspx: * SkillProvider.cs: * SkillController.cs: * UserSkills.aspx: * NpgsqlSkillProvider.cs: refactorisation (-Skill+SkillEntity) * NpgsqlProfileProvider.cs: Fixe un bug introduit avec l'implementation des profiles anonymes. * FrontOfficeController.cs: definit l'interface de cotation des compétences attendues * UserCard.ascx: Imlémente une carte utilisateur. * Web.config: déclare le code activité principale exercée parmis les valeurs du profile authentifié. * Web.csproj: ajoute les nouveaux formulaire de reservation au projet. * PerformerProfile.cs: S'assure d'avoir une valeur pour le nom d'utilisateur à la création. * LocalizedText.resx: * LocalizedText.Designer.cs: "date préférée" en anglais * LocalizedText.fr.resx: * LocalizedText.fr.Designer.cs: "date préférée" en français * Profile.cs: à la creation d'un profile, on doit avoir un nom d'utilisateur, même dans le cas où le profile est anonyme (dans ce cas, on l'appelle identifiant anonyme). Sinon, on lève une exception. * YavscModel.csproj: * refactorisation: le nom `Skill` est celui de l'espace, celui de la classe devient `SkillEntity`. * Creation de la requête dite simple d'un rendez-vous (pour prestation) à une date donnée (sans heure), concernant simplement une activité. * EavyBooking.aspx: Implémente la reservation lourde
9 years ago
using Yavsc.Model.FrontOffice;
namespace Yavsc.Model.Skill
{
/// <summary>
/// Skill provider.
/// </summary>
public abstract class SkillProvider: ProviderBase
{
/// <summary>
/// Declare the specified skill.
/// </summary>
/// <param name="skill">Skill.</param>
Réorganisations. La page de reservation par défaut est maintenant la reservation dite simple. Fonctionnalités en cours de développement: 1) la reservation dite simple 2) la notification à la reservation 3) l'activité principale exercée 4) l'integration d'un premier thème clair * MEA.sql: définit la valeur MEA du profile (Main Exerted Activity) dans la base de donnée * Booking.aspx: Imlémente la vue du formulaire de reservation simple, c'etait avant la reservation classique, sur une période plutôt qu'un jour. La reservation classique est renomée `EavyBooking`. * SimpleBookingQuery.cs: Implémente une simple commande de rendez-vous, en tant que commande du workflow. * .gitignore: ignorer les configuration des pré et prod totem. * SkillEntity.cs: * SkillManager.cs: * Skills.aspx: * SkillProvider.cs: * SkillController.cs: * UserSkills.aspx: * NpgsqlSkillProvider.cs: refactorisation (-Skill+SkillEntity) * NpgsqlProfileProvider.cs: Fixe un bug introduit avec l'implementation des profiles anonymes. * FrontOfficeController.cs: definit l'interface de cotation des compétences attendues * UserCard.ascx: Imlémente une carte utilisateur. * Web.config: déclare le code activité principale exercée parmis les valeurs du profile authentifié. * Web.csproj: ajoute les nouveaux formulaire de reservation au projet. * PerformerProfile.cs: S'assure d'avoir une valeur pour le nom d'utilisateur à la création. * LocalizedText.resx: * LocalizedText.Designer.cs: "date préférée" en anglais * LocalizedText.fr.resx: * LocalizedText.fr.Designer.cs: "date préférée" en français * Profile.cs: à la creation d'un profile, on doit avoir un nom d'utilisateur, même dans le cas où le profile est anonyme (dans ce cas, on l'appelle identifiant anonyme). Sinon, on lève une exception. * YavscModel.csproj: * refactorisation: le nom `Skill` est celui de l'espace, celui de la classe devient `SkillEntity`. * Creation de la requête dite simple d'un rendez-vous (pour prestation) à une date donnée (sans heure), concernant simplement une activité. * EavyBooking.aspx: Implémente la reservation lourde
9 years ago
public abstract long Declare(SkillEntity skill) ;
/// <summary>
/// Declare the specified user skill.
/// </summary>
/// <param name="userskill">Userskill.</param>
public abstract long Declare(UserSkillDeclaration userskill) ;
/// <summary>
/// Rate the specified user skill.
/// </summary>
/// <param name="userskill">Userskill.</param>
public abstract long Rate(UserSkillRating userskill) ;
/// <summary>
/// Rate the specified skill.
/// </summary>
/// <param name="skill">Skill.</param>
public abstract void Rate(AuthentificatedSkillRating skill) ;
/// <summary>
/// Finds the skill identifier.
/// </summary>
/// <returns>The skill identifier.</returns>
/// <param name="pattern">Pattern.</param>
/// <param name="MEACode">MEA code.</param>
Implémente un formulaire simple de réservation d'un préstataire * p8-av4.xxs.jpg: * p8-av4.xxs.png: inutile * NoLogin.master: * Entity.cs: * OAuth2.cs: * ApiClient.cs: * PeopleApi.cs: * MapTracks.cs: * SkillManager.cs: * Skills.aspx: * EntityQuery.cs: * CalendarApi.cs: * SimpleJsonPostMethod.cs: * GoogleHelpers.cs: * EventPub.aspx: * GoogleController.cs: * Notification.cs: * UserSkills.aspx: * BackOfficeController.cs: * BackOfficeController.cs: * Notification.cs: * MessageWithPayLoad.cs: * MessageWithPayloadResponse.cs: refabrication * IContentProvider.cs: * NpgsqlBlogProvider.cs: xml doc * NpgsqlContentProvider.cs: implemente un listing des prestataire du code APE en base. * NpgsqlSkillProvider.cs: implemente un listing des domaines de compétence du préstataire en base. * XmlCatalogProvider.cs: Le catalogue de vente implémente mainenant l'interface d'un fournisseur de donnée comme les autres. Il pourrait par exemple vouloir définir des activité et des compétences. Pour l'instant, il n'est pas activé par la configuration, et reste le fournisseur du catalogue legacy (voir </FrontOffice/Catalog> ). * FrontOfficeController.cs: format du code * Global.asax.cs: Une route customisée pour le Front Office : /do (genre, ici, ça bouge.) * activity.sql: implémente en base de donnée le modèle des activités et compétences, ajoute aussi deux activités : l'edition logicielle et "Artiste" * style.css: changement de mes images de fond ... tombées du camion de Xavier et onlinehome.us * p8-av4.s.jpg: changement de taille * AccountController.cs: Met le code MEA à "none" quand il est spécifié non disponible. * BlogsController.cs: fixe un bug de l'edition d'un billet * FrontOfficeController.cs: implemente le contrôle booking simple * HomeController.cs: ajoute l'assemblage du catalog dans le listing dédié * YavscAjaxHelper.cs: Implemente un outil de representation JSon des objets côté serveur * parallax.js: deux fois plus de mouvement autout de x dans le parallax * yavsc.rate.js: imlemente un callback JS pour le rating * Activities.aspx: Des labels au formulaire de déclaration des activités * Activity.ascx: un panneau activité descent * Booking.aspx: implemente l'UI web du booking simple. * EavyBooking.aspx: refabrication du booking lourd * Index.aspx: supprime le panneau du tag Accueil, affiche les activités en cours du site (avec au moins un préstataire valide pour cette activité) * Web.config: Implemente une cote utilisateur, par une nouvelle valeur de son profile (Rate). * Yavsc.csproj: refabrique du code API Google, qui part dans le model. * MarkdownDeep.dll: le tag <p> ne convenait pas, le remplacer par le tag <span> non plus. Maintenant ça devrait être correct, c'est un div, mais que en cas de tag englobant non défini. * BookingQuery.cs: Le booking lourd devient une commande basée sur des activités concernée par l'intervention * ChangeLog: nettoyage * CatalogProvider.cs: implemente l'interface d'un fournissseur de contenu * PerformerProfile.cs: implemente le profile prestataire * SimpleBookingQuery.cs: Les besoin sont exprimé sous forme d'un tableau de valeur du parametrage de la commande * LocalizedText.resx: * LocalizedText.fr.resx: * LocalizedText.Designer.cs: * LocalizedText.fr.Designer.cs: internationalisation * Profile.cs: implemente un accès à l'id d'enregistrement Google GCM * SkillEntity.cs: La compétence appartient à un domaine d'activité, on lui associe un et un seul code APE * SkillProvider.cs: Fait chercher les compétences à partir d'un code activité * WorkFlowManager.cs: implemente l'accès à la liste des préstataires de telle activité * YavscModel.csproj: refabrications * Skills.sql: vient de passer dans activity.Sql * T.cs: la traduction est faite plus simple à appeler (sans cast vers `string`).
9 years ago
public abstract SkillEntity [] FindSkill(string pattern, string MEACode);
/// <summary>
/// Gets the user skills.
/// </summary>
/// <returns>The user skills.</returns>
/// <param name="username">Username.</param>
public abstract PerformerProfile GetUserSkills(string username) ;
/// <summary>
/// Finds the performer.
/// </summary>
/// <returns>The performer.</returns>
/// <param name="MEACode">MEA code.</param>
/// <param name="need">Need.</param>
public abstract string [] FindPerformer(string MEACode, SkillRating [] need);
/// <summary>
/// Deletes the skill.
/// </summary>
/// <param name="skillId">Skill identifier.</param>
public abstract void DeleteSkill(long skillId);
/// <summary>
/// Deletes the user skill.
/// </summary>
/// <param name="userSkillId">User skill identifier.</param>
public abstract void DeleteUserSkill(long userSkillId);
}
}