Projet numéro 10727 : "DEVELOPPEUR EXPERT CAKEPHP ET JQUERY - INTEGRATION DE 2 FONCTIONNALITES"


Initiateur du projet :
Description projet :
Description générale
Il s'agit d'intégrer deux fonctionalités (features) sur un projet CakePHP 1.3.x existant.
Il faut donc maîtriser CakePHP ainsi que jQuery pour l'aspect AJAX (jQuery est imposé, puisque c'est le framework Javascript déjà en place pour d'autres parties de l'application).
L'output (views, fichiers .ctp) doit être en pur HTML bien formatté (utilisez autant que possible l'Helper HTML de Cake), vous n'avez pas besoin de vous soucier de l'habillage et du design CSS. Ne perdez / utilisez pas de temps pour l'interface, le design, etc. Créez juste du code propre (PHP, JS et vues en simple HTML valide) à l'habillage / ergonomie visuelle on appliquera nos styles déjà étudiés.
Il ne faut réaliser aucun autre élément, tout est prêt et fonctionnel, il n'y à qu'à créer ces deux features, que nous allons intégrer nous-même à l'application déjà en production.


Feature 1
Recherche avec filtre sur le nom des produits.
Voir mockup 1, annexe
Il s'agit d'un textbox en mode autocomplete: sès que l'utilisateur saisit 2-3 caractère, des suggestions lui sont faites, suggestions qui s'affinent au fur et à mesure de la saisie. Les résultats de la recherche sont automatiquement rafraichis (AJAX) sans besoin de cliquer où que ce soit. Dans l'exemple (mockup) l'utilisateur a saisit "UBS SA" et donc les 3 résultats contenant (recherche %LIKE%) s'affichent tant dans les suggestions de recherche (autocomplete) dans dans la liste des résultats. Dans les faits, il s'agit d'imiter "Google Instant" (http://www.youtube.com/watch?v=I1Zg9TkYwTM). Note => les caractères accentuées sont ignorés. Par exemple é, ë, ê, è, etc. => correspondent (pour la recherche) à "e".


Feature 2
Association Produit <=> Sous-jacent(s)
Voir mockup 2, annexe
Un produit est associé un ou plusieurs sous-jacent(s).
Chaque association a une propre barrière (valeur décimale):
    la valeur barrière, n'est pas intrinsèque à un sous-jacent en tant qu'entité, mais à un sous-jacent associé à un produit.
    la valeur barrière est facultative, elle peut être vide
Chaque association a une valeur initiale (valeur décimale).
    la valeur initiale, n'est pas intrinsèque à un sous-jacent en tant qu'entité, mais à un sous-jacent associé à un produit.
Voir le schéma de la base de données, ci-dessous, pour mieux comprendre => raison pour laquelle "barriere" et "valeur_initiale" sot dans la table "produits_sousjacents".
Il s'agit de pouvoir ajouter / modifier / supprimer des associations Produit <=> Sous-jacent(s) sans recharger la page.
On doit pouvoir ajouter / associer autant de sous-jacents à un produits (voir mockup 3).
Il doit y avoir au minimum un sous-jacent pour que le produit soit validable.
Un sous-jacent ne peut figurer être associé qu'une seule et unique fois à un produit.
On doit pouvoir modifier n'importe quel sous-jacent associé sans recharger la page (voir mokup 4).


Structure de la base de données
CREATE TABLE IF NOT EXISTS `produits` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `sousjacents` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `symbole_boursier` varchar(30) DEFAULT NULL,
  `prix_cloture` decimal(16,2) DEFAULT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `symbole_boursier` (`symbole_boursier`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `produits_sousjacents` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `produit_id` int(11) NOT NULL,
  `sousjacent_id` int(11) NOT NULL,
  `barriere` decimal(16,2) DEFAULT NULL,
  `valeur_initiale` decimal(16,2) DEFAULT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
 
Conditions pour postuler
- vous êtes un excellent développeur PHP
- vous avez une bonne expérience en programmation orientée objet avec PHP et le modèle MVC
- vous avez une solide expérience avec CakePHP (idéalement, 1.3.x)
- vous connaissez (et appliquez!) les bonnes pratiques de développement (code clair et lisible, bien documenté, testé, etc.)
- vous connaissez (et respectez!) les convention de CakePHP 1.3.x, et n'utilisez pas des fonctions obsolètes
- vous savez respecter le modèle MVC, vous ne mélangez pas tout dans vos applications...
- vous savez utiliser SVN / Subversion
- vous avez de bonnes connaissances en JavaScript / jQuery (et êtes familier avec AJAX)
- quand vous dites "oui" cela signifie vraiment OUI, et quand vous dites "non", c'est vraiment NON
- vous ne dites jamais "oui" quand vous ne savez pas ou n'êtes pas sûr
- quand vous indiquez un délai, vous le respectez toujours
- dans les rares cas où vous avez un problème, vous le communiquez promptement (le plus vite possible) et sincèrement afin d'éviter de compliquer le problème
- quand vous donnez votre parole (par exemple, un délai, un prix, vous dites que vous pouvez faire une certaine chose dans certaines conditions) vous prenez toujours suffisamment de temps pour bien penser / évaluer où vous vous engagez et ainsi vous ête 100% sûr de respectez vos promesses
- vous pouvez travailler en tant que sous-traitant, dans la plus totale discrétion et transparence, en ne mentionnant jamais les travaux réalisés avec nous, ni le noms de notre société ou de nos clients dans votre portfolio

Si vous remplissez ces conditions et que nous apprécions la qualité de votre travail, nous pourrons établir une relation sur le long terme (nous avons de nombreux mandats en cours de développement spécifique avec CakePHP et jQuery).

En vue d'évaluer vos compétences pour de futurs projets, dans votre offre, prière de spécifier l'estimation en temps pour la feature 1 et la feature 2.

Dans tous les cas, ce "projet" (qui est peu de chose, par rapport à ce qu'il reste à développer) sera rémunéré au forfait, selon votre offre.

Merci pour votre attention.
 
Commentaire de l'administrateur :
  • Ce projet a fait l'objet d'une validation par téléphone par un administrateur ProgOnline. Il est sérieux, et a de grandes chances de se concrétiser, à condition de recevoir des offres pertinentes de la part des prestataires.
  • Le client est : Une société de développement informatique
  • Le client affirme souhaiter concrétiser son projet Asap
 

 
 



Les sujets suivants peuvent également vous intéresser

cherche prestataire facebook google app enginescherche freelance ctp
cherche prestataire portfoliocherche prestataire projets pedagogiques
independant c plus plus ccherche professionnel framework open source
cherche professionnel traduction fr espindependant livre art magazine
cherche developpeur comparateurs des prixcherche expert developpement d applications de gestions du personnel

Projets "en attente" similaires


PROJET de site internet e commerce produit puericulture
RECHERCHE PRESTATAIRE POUR CREATION SITE INTERNET
Je recherche un developpeur pour creation de soft
Creation complete d-un site d-annonces entre particuliers - REPUBLICATION
Robot recuperateur d-info de video par API-RSS-CURL

Projets "en cours" similaires


Modification d un Progiciel de gestion des besoins en formation
Intégration d-un CRM sur une site Internet pour une entreprise de télécommunications
Creation d-un Site de Presentation Anglais Francais
CREATION D-UN SITE MARCHAND MAGENTO-Republication
Site Web PHP avec SGBD sous MYSQL

Projets "en archive" similaires


Ingenieur electronique de puissance -H-F- Toulouse
Ingenieur developpement ANDROID - iOS - Toulouse
Site de petites annonces
Technicien-ne- support fonctionnel automate bancaire H-F
Outil statistique Excel

Projets "VIP" similaires


recherche un info graphiste_ un programmeur Php_mysql
Demande de devis pour le developpement_ l_edition et la maintenance d_applications et site web sous
Recrutement video
Developpement d__un site communautaire _ php_mysql_ajax
Migration dune base 4d vers le web

 

 

 

 

(g)