THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#26 Re: petit defis perso

(21-04-2013 15:47:10)


lolo17600 wrote:

en effet si la déclinaison (dans mon cas un numéro de lot)  la personne qui resaisi le stock peut remettre du stock sur un lot déjà utilisé

hein?


Aide les autres, ils t'aideront en retour.

Offline

#27 Re: petit defis perso

(22-04-2013 18:31:55)


oups dsl tit tour à l'hosto wink

je disais que l'idéal est que le produit (voir la déclinaison) doit "disparaitre" (ou aller dans une page "lot utilisé" )

en effet le produit avec un numéro de lot ne doit pas être réutilsé.

Dans le cas d'une déclinaison , en bas d'une fiche produit elle peut être facilement réutilisée par étourderie

Suis je clair ?

Offline

#28 Re: petit defis perso

(22-04-2013 18:57:33)


Plugin -> si décli -> copie de la décli dans une table "decliutil" et suppression de la table originelle


Aide les autres, ils t'aideront en retour.

Offline

#29 Re: petit defis perso

(22-04-2013 19:22:33)


oui ok  je suis d'accords (ça peut aussi marcher avec ce que disait thibs : le produit archivé une fois utilisé) , le hic c'est la construction du plugi ...

Bon le départ c'est bien comme le dis thibs : aprescommande + la création (et ensuite la vérifiction ) d'une table de "stockage" des produits (ou déclinaisons) utilisées.

mais n'ayant jamais fait de plugin , j'en suis au décorticage de ceux déjà existant pour comprendre

Offline

#30 Re: petit defis perso

(22-04-2013 21:58:44)


Bon ben là je dis help ! je suis vraiment une buse en php , j'ai commencé un plugin avec un Archiprod.class.php mais je me retrouve très vite bloqué

Offline

#31 Re: petit defis perso

(23-04-2013 06:26:59)


function aprescommande($commande) {
			$venteprod = new Venteprod();
				
				$query = "select * from $venteprod->table where commande=" . $commande->id;
				$resul = mysql_query($query, $venteprod->link);
				
				while($row = mysql_fetch_object($resul)){
				 //Ta requete update ici, tu selectionne l'id de ton produit, tu update l'id rubrique dans la table produit	
				
				
				}
			
		}

a la va vite avant de prendre mon café, si ca peut te guider.

Offline

#32 Re: petit defis perso

(23-04-2013 11:37:55)


bon alors moi j'avais commencé ça (mais bon....)

 ?>
<?php

include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsClassiques.class.php");
	
	class Archiprod extends PluginsClassiques{

		function aprescommande($commande)
		
		public $id;
		public $ref;
		public $titre;
		public $chapo;
		public $description;
		public $stock;
		
		
		const TABLE = 'Archiprod';

		public $table = self::TABLE;
		
		public $bddvars = array("id", "ref", "titre", "chapo", "description", "stock");

Offline

#33 Re: petit defis perso

(23-04-2013 14:56:27)


pourquoi tu veux crée une table, on le transfère juste de rubrique ?

Offline

#34 Re: petit defis perso

(23-04-2013 15:19:10)


Ok toi tu veux créé une rubrique archivage , moi j'étais partis sur une page archivage donc avec ça propre table

Offline

#35 Re: petit defis perso

(23-04-2013 16:30:07)


Tu peux faire les deux mais un est plus compliqué que l'autre.
Je pensais juste déplacer automatiquement le produit dans une rubrique archive une fois utilise.
Comme ça avec le moteur de recherche tu peux toujours retrouvé le produit (vu que ref égal numéro de lot).

Offline

#36 Re: petit defis perso

(23-04-2013 16:44:52)


oui oui tu as raison c'est beaucoup plus simple et logique !

Offline

#37 Re: petit defis perso

(23-04-2013 17:00:02)


Si tu pars sur 1 lot=1 produit :

var $rubrique_archive; //déterminer le nom de la rubrique ou faire dans l'admin un système pour déterminer la rubrique d'archive
function aprescommande($commande) {
	$venteprod = new Venteprod();
		
	$query = "select * from $venteprod->table where commande=" . $commande->id;
	$resul = mysql_query($query, $venteprod->link);
				
	while($row = mysql_fetch_object($resul)){
		$produit=new Produit();
		$produit->charger($row->ref);
		$produit->rubrique=$this->rubrique_archive;
		$produit->maj();
	}
}

Last edited by Elyos (23-04-2013 17:00:37)


Aide les autres, ils t'aideront en retour.

Offline

#38 Re: petit defis perso

(23-04-2013 17:19:24)


ok et donc après commande si stock = 0 archivage , si stock = 1 on conserve

Offline

#39 Re: petit defis perso

(23-04-2013 18:48:39)


Elyos wrote:

//déterminer le nom de la rubrique ou faire dans l'admin un système pour déterminer la


j'ai donc fait le choix d'appeler une nouvelle rubrique "archivage produits"

Ensuite ben je stagne

Offline

#40 Re: petit defis perso

(23-04-2013 20:05:07)


si je comprends bien le wiki il faut aussi utiliser la commande :

supprod(Produit $produit) pour suprimer le produit de sa rubrique d'origine

puis

ajoutprod(Produit $produit) pour le rajouter à sa nouvelle rubrique (archivage produits)

Offline

#41 Re: petit defis perso

(23-04-2013 23:54:46)


Elyos wrote:

var $rubrique_archive;

Tu mets l'id de la rubrique créée : $rubrique_archive=1 par exemple

Elyos wrote:

$produit=new Produit();
$produit->charger($row->ref);
$produit->rubrique=$this->rubrique_archive;
$produit->maj();

ça suffit pour le déplacer ça non ?

si tu veux vérifier le stock avant

$produit=new Produit();
$produit->charger($row->ref);
if($produit->stock<=0){
$produit->rubrique=$this->rubrique_archive;
$produit->maj();
}

Last edited by Elyos (23-04-2013 23:55:24)


Aide les autres, ils t'aideront en retour.

Offline

#42 Re: petit defis perso

(24-04-2013 13:30:47)


Bonjour en suivant les instructions d'Elyos je fais donc

?>
<?php

include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsClassiques.class.php");
	
		$var rubrique_archive=5;//déterminer le nom de la rubrique ou faire dans l'admin un système pour déterminer la rubrique d'archive
function aprescommande($commande) {
	$venteprod = new Venteprod();
		
	$query = "select * from $venteprod->table where commande=" . $commande->id;
	$resul = mysql_query($query, $venteprod->link);
				
	while($row = mysql_fetch_object($resul)){
		$produit=new Produit();
$produit->charger($row->ref);
if($produit->stock<=0){
$produit->rubrique=$this->rubrique_archive;
$produit->maj();
}



?>		

Mais quand je veux activer le plugin j'ai :

Parse error: syntax error, unexpected 'rubrique_archive' (T_STRING) in C:\xampp\htdocs\prog\client\plugins\Archiprod\Archiprod.class.php on line 30


je viens de chercher sur le net et il est dit que c'est soit un guillemet qui pose problème soit l'oublie d'un ; hors ligne 30 :

$var rubrique_archive=5;//déterminer le nom de la rubrique ou faire dans l'admin un système pour déterminer la rubrique d'archive

y a pas de guillemet et bien le ;

Last edited by lolo17600 (24-04-2013 13:42:16)

Offline

#43 Re: petit defis perso

(24-04-2013 13:51:25)


var $rubrique_archive=5;

et non

$var rubrique_archive=5;

Aide les autres, ils t'aideront en retour.

Offline

#44 Re: petit defis perso

(24-04-2013 13:54:06)


bonjour Elyos en modifiant là j'obtiens :

Parse error: syntax error, unexpected 'var' (T_VAR) in C:\xampp\htdocs\prog\client\plugins\Archiprod\Archiprod.class.php on line 30

Offline

#45 Re: petit defis perso

(24-04-2013 13:59:30)


Ah bah oui...

Je pensais que t'avais construit ton plugin moi ^^"

<?php
include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsClassiques.class.php");
	
	class Archiprod extends PluginsClassiques{

		var $rubrique_archive=5;
		
		function Archiprod(){
			$this->PluginsClassiques();
		}
		
		function aprescommande($commande) {
			$venteprod = new Venteprod();
				
			$query = "select * from $venteprod->table where commande=" . $commande->id;
			$resul = mysql_query($query, $venteprod->link);
						
			while($row = mysql_fetch_object($resul)){
				$produit=new Produit();
				$produit->charger($row->ref);
				if($produit->stock<=0){
					$produit->rubrique=$this->rubrique_archive;
					$produit->maj();
				}
			}
		}
	}
?>

Last edited by Elyos (24-04-2013 14:00:00)


Aide les autres, ils t'aideront en retour.

Offline

#46 Re: petit defis perso

(24-04-2013 14:07:17)


et bien j'avais construis mon plugin mais à force de très mal bidouiller dessus (voulant ne pas vous embéter encore plus) , j'ai finis par tous sal..per !
Merci Elyos pour se plugin qui fait exactement ce dont j'avais besoin ! et merci à Thybs pour m'avoir mis sur la voie

Offline

#47 Re: petit defis perso

(24-04-2013 14:28:30)


De rien wink


Aide les autres, ils t'aideront en retour.

Offline

#48 Re: petit defis perso

(24-04-2013 16:12:14)


Bah de rien smile

Hésite pas a le partagez en faisant un readme pour expliquer le plugins, si il peut reservir a quelqu'un

Elyos on fait une équipe pas trop mauvaise wink

Offline

#49 Re: petit defis perso

(24-04-2013 16:13:18)


thibs wrote:

Elyos on fait une équipe pas trop mauvaise wink

Ouep wink


Aide les autres, ils t'aideront en retour.

Offline

#50 Re: petit defis perso

(24-04-2013 16:19:51)


Vous croyez que ce plugin peut servir à d'autres et que celà vos le coup de le publier ?