Les meilleurs intégrateurs JavaScript freelances sont sur Codeur.com
Fermé·Moins de 500 €·2 offres·662 vues·3 interactions
Bonjour,
J'ai un module installé sur mon prestashop pour importer des produits venants de différents sites web (avec consentement). Aujourd'hui nous devons importer certains produits venant d'un nouveau site source, nous avons déjà 4 scripts en modèle pour d'autres sites. Le but est de créer un script JAVA similaire à ceux déjà créé dans le module. Je recherche une personne compétente en JAVA.
Merci par avance.
Exemple de script :
prix_mini=20
uniquement_mise_a_jour=true
augmentation_prix=1
id_variante=39
id_cat_a_trier=1111
nb_en_stock=8014
def ajCaracteristique(feature,value)
{
if(!value || !feature) return false
if(value.length()>250) return false
value=standardizeText(stripTags(value)).replace('<','').replace('>','').replace(';','').replace('=','').replace('#','').replace('{','').replace('}','')
feature=standardizeText(stripTags(feature)).replace('<','').replace('>','').replace(';','').replace('=','').replace('#','').replace('{','').replace('}','')
id_feature=getFeature(feature,false,false)
if(!id_feature)
{
majFeatures=true
function('add_feature',[feature])
function('add_feature_value',[value])
function('associate_feature',[])
return true;
}
else
{
id_feature_value=getFeatureValue(id_feature,value,false,false)
if(!id_feature_value)
{
function('add_feature_value',[value,id_feature])
function('associate_feature',[id_feature])
majFeatures=true
return true;
}
else function('associate_feature',[id_feature,id_feature_value])
return false;
}
}
nom=stripTags(standardizeText(selectInCode("[itemprop=name]")))
nomCat=stripTags(standardizeText(selectInCode(".product-category[itemprop=category]")))
ref=stripTags(standardizeText(regex(/(?si)-([^\-]+)$/,nom)))
//ref=stripTags(standardizeText(regex(/(?si)product_sku\s*:\s*"([^"]+)"/)))
//ean=stripTags(standardizeText(regex(/(?si)product_ean\s*:\s*"([^"]+)"/)))
ean=null
prix=htmlToPrice(regex(/(?si)product_unitprice_ati\s*:\s*([^,]+),/))
majFeatures=false
if(nom && ref && prix && prix>=prix_mini)
{
description=stripTags(standardizeText(selectInCode(".wysiwyg")))
marque=stripTags(standardizeText(regex(/(?si)product_trademark\s*:\s*"([^"]+)"/)))
imageMarque=stripTags(standardizeText(selectInCode("article.product > h1:nth-child(1) > img:nth-child(1)",null,"src")))
id_marque=null
urlImageMarque=null
if(marque)
{
id_marque=getManufacturer(marque,false,false)
if(!id_marque)
{
id_marque=functionNow('add_manufacturer',[marque])
if(imageMarque) urlImageMarque=functionNow('add_image_manufacturer',[imageMarque,id_marque])
updateManufacturers('0')
}
if(!urlImageMarque) urlImageMarque=functionNow("get_image_manufacturer",[id_marque])
}
fraisLivraison=htmlToPrice(regex(/(?si)<a href="#delivery">domicile<\/a>[^<>]+ partir de([^<>]+)<\/li>/))
if(fraisLivraison) fraisLivraison=fraisLivraison+5
else fraisLivraison=0
dispo=selectInCode(".stock-state",null,"class")
//ref="V766"+ref
product_exist=functionNow('id_product_reference',[ref])
//cat
id_cat=id_cat_a_trier
/*if(!product_exist)
{
id_parent=id_cat_a_trier
majCategories=false
categor=selectAllInCode(".breadcrumbs li")
cat=nomCat
id_cat=getCategoryIn(cat,id_parent,false,false,false)
if(!id_cat)
{
id_cat=functionNow('add_category',[cat,id_parent]);
majCategories=true
}
if(majCategories) updateCategories('0')
} */
if(product_exist)
{
ean=functionNow("get_product_var",["ean13",product_exist])
}
importer=true
if(uniquement_mise_a_jour && !product_exist) importer=false
if(selectAllInCode(".carousel-inner [data-lightbox=product]",null,"href") && importer)
{
if(!ean)
{
ean12=global["ean13_depart"]+1
global["ean13_depart"]=ean12
function("set_configuration",["ean13_depart",ean12])
ean=ean12ToEan13(ean12)
}
function("update_or_add_product",[nomCat+" "+nom,prix*augmentation_prix,product_exist?null:id_cat,ref,null,urlImageMarque?("<img src=\""+urlImageMarque+"\">"):null,null,"Achetez votre "+nom+" au meilleur prix chez ***. Retrouvez toute notre gamme de "+nomCat+" à prix malins !",null,null,null,null,(prix/1.2)+fraisLivraison,null,null,null,id_marque,null,ean,null,null,null,null,null,null,null,null,null,null,null,fraisLivraison])
//img
if(!product_exist)
{
if(selectAllInCode(".carousel-inner [data-lightbox=product]",null,"href"))
{
selectAllInCode(".carousel-inner [data-lightbox=product]",null,"href").each{img->
function("add_image",[img,nom])
}
}
else
{
img=standardizeText(stripTags(selectInCode("article.product section.row img",null,"src")))
function("add_image",[img,nom])
}
//cara
selectAllInCode(".table-characs tr").each{ tr->
tr="<table><tr>"+tr+"</tr></table>"
label=standardizeText(stripTags(selectInCode("td:nth-child(1)",tr)))
valeur=standardizeText(stripTags(selectInCode("td:nth-child(2)",tr)))
if(label && valeur) ajCaracteristique(label,valeur)
}
}
if(majFeatures) updateFeatures(0)
function("update_stock",[dispo?(dispo.contains("stockAvailable")?nb_en_stock:0):8014,8013,true])
sendNowCommandsInStack() //envoyer la pile de commandes
}
}
Budget indicatif : Moins de 500 €
Publication : 29 décembre 2020 à 16h23
Profils recherchés : Intégrateur de script freelance, Développeur Java freelance, Développeur JavaScript freelance
2 freelances ont répondu à ce projet
2 propositions de devis en moins de 2h
Votre navigateur Web n’est plus à jour. Il ne permet pas d’afficher correctement le site Codeur.com.
Nous vous invitons à mettre à jour votre navigateur ou à utiliser un autre navigateur plus récent.