Case Studies
An error occurred while processing the template.
No compatible overloaded variation was found; declared parameter types and argument value types mismatch. The FTL type of the argument values were: extended_hash+string (com.liferay.portal.json.JSONObjectImpl wrapped into f.e.b.StringModel). The Java type of the argument values were: com.liferay.portal.json.JSONObjectImpl. The matching overload was searched among these members: com.liferay.portal.json.JSONFactoryImpl.createJSONObject(String), com.liferay.portal.json.JSONFactoryImpl.createJSONObject(Map), com.liferay.portal.json.JSONFactoryImpl.createJSONObject() ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign articleImageContent = jsonFac... [in template "20101#20128#3282403" at line 36, column 33] ----
1<#if entries?has_content>
2
3 <#assign cdn = (mlxUrlUtilService.getCdn(groupId))!"" />
4
5 <#assign globalGroupId = mlxConstants.getLongConstant("GroupIds","GLOBAL")/>
6 <div class="corporate--cases--carouselv4">
7 <div class="corporate--cases--carouselv4--top--container" data-gtm-block-name="Case-study" data-js="slider" data-js-type="tiny-slider" data-js-config='{"container": ".corporate--cases--carouselv4--top--container", "autoplay":true, "autoplayButtonOutput":false, "mouseDrag":true, "controls":false, "loop":false, "navContainer": ".corporate--cases--carouselv4--bottom--container"}'>
8 <#list entries as curEntrys>
9 <#assign asset = curEntrys.getAssetRenderer() />
10 <#assign fields = asset.getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues() />
11 <#assign articles = mlxAssetHelperService.getJournalArticleByEntry(curEntrys)/>
12
13 <#assign articleValues = mlxJournalHelperService.getStructureFieldValues(articles, "${locale}") />
14
15 <#assign articlesUrl = mlxUrlUtilService.getUrlByJournalArticle(articles, "${locale}", groupId)?string />
16 <#assign articleNames = (articleValues["description"]?string)!"" />
17 <#assign articleVideoContent = mlxJournalHelperService.getStructureFieldValue(articles, "video_gallery_file", "${locale}")![] />
18 <#assign articleDescription = (articleValues["html_description"]?string)!"" />
19 <#assign clientStrKey = "CLIENT-STR"/>
20 <#assign articleClient = (mlxAssetHelperService.getFirstRelatedArticle(groupId, articles.articleId, clientStrKey))!"" />
21 <#assign globalGroupId = mlxConstants.getLongConstant("GroupIds","GLOBAL")/>
22 <#assign articleUrl = mlxUrlUtilService.getUrlByJournalArticle(articles, "${locale}", groupId)?string />
23 <#if articleClient != "">
24 <#assign clientName = mlxJournalHelperService.getStructureFieldValue(articleClient, "name", "${locale}")?string />
25 <#else>
26 <#assign clientName = articleNames>
27 </#if>
28 <#if articleNames?has_content>
29 <article class="item corporate--cases--carouselv4--top--item">
30 <figure class="corporate--cases--carouselv4--top--figure">
31
32 <#list fields as field>
33 <#if field.getName()=="name">
34 <#assign articleImageContent = (articleValues["standout_image"])!"{}" />
35 <#if articleImageContent != "">
36 <#assign articleImageContent = jsonFactoryUtil.createJSONObject(articleImageContent) />
37 <#assign articleImage = mlxDocumentsHelperService.getDocumentUrlFromUUID(articleImageContent.uuid, "${locale}") />
38 ${corporate.img(cdn+articleImage, false, 'class="corporate--cases--carouselv4--top--image"')}
39 </#if>
40 </#if>
41 </#list>
42 </figure>
43 <div class='corporate--cases--carouselv4--top--content'>
44 <h3 class="corporate--cases--carouselv4--top--title">${clientName}</h3>
45 <p class="corporate--cases--carouselv4--top--description">
46 <#if articleNames?length < 263>
47 ${articleNames}
48 <#else>
49 ${articleNames?substring(0,263)}...
50 </#if>
51 </p>
52 <a href="${articleUrl}" title="" class="corporate--cases--carouselv4--top--cta"><@corporate.mlxlanguage key="mlx.client.see-practical-case" /></a>
53 </div>
54 </article>
55 </#if>
56 </#list>
57 </div>
58
59 <div class="corporate--cases--carouselv4--bottom--container" data-js="slider" data-js-type="tiny-slider" data-js-config='{"container": ".corporate--cases--carouselv4--bottom--container", "autoplay":false, "autoplayButtonOutput":false, "mouseDrag":true, "controls":false, "nav":false, "loop":false, "items":3}'>
60 <#list entries as curEntrys>
61 <#assign article = mlxAssetHelperService.getJournalArticleByEntry(curEntrys) />
62 <#assign WarticleClient = (mlxAssetHelperService.getFirstRelatedArticle(groupId, article.articleId, clientStrKey))!"" />
63 <div class="item corporate--cases--carouselv4--bottom--item">
64 <div class="content corporate--cases--carouselv4--bottom--content">
65 <#if WarticleClient != "">
66 <#assign WarticleClientValues = mlxJournalHelperService.getStructureFieldValues(WarticleClient, "${locale}") />
67 <#assign Wnames = (WarticleClientValues["name"]?string)!"" />
68 <div class="content corporate--cases--carouselv4--bottom--title">${Wnames}</div>
69
70 </#if>
71 </div>
72 <#if WarticleClient != "">
73 <#assign clientLogoContent = (WarticleClientValues["logo"])!"{}" />
74
75 <#if clientLogoContent?has_content>
76 <#assign clientLogoContent = clientLogoContent?replace('\\u','') />
77 <#assign clientLogo = clientLogoContent?eval />
78 </#if>
79
80 <#assign clientName = (WarticleClientValues["name"]?string)!"" />
81
82 <#if clientLogo?has_content>
83 <#assign fileEntry = mlxDLFileEntryHelperService.getDLFileEntry(clientLogo.uuid, globalGroupId) />
84 <#assign clientLogoUrl = mlxDocumentsHelperService.getDocumentUrlFromUUID(clientLogo.uuid, "${locale}") />
85 <#assign clientLogoAlt = mlxExpandoService.getExpandoValueForClass("com.liferay.document.library.kernel.model.DLFileEntry","mlxDocumentTitle",fileEntry.getFileVersion().getFileVersionId()).getString(locale)!""/>
86
87 <#if clientLogoAlt == "">
88 <#assign clientLogoAlt = clientName />
89 </#if>
90
91 <figure class="corporate--cases--carouselv4--bottom--figure">
92 ${corporate.img(cdn+clientLogoUrl, false, 'alt="' + clientLogoAlt + '"', 'title="' + clientLogoAlt + '"', 'class="corporate--cases--carouselv4--bottom--image"')}
93 </figure>
94 </#if>
95 </#if>
96 </div>
97 </#list>
98 </div>
99 </div>
100
101</#if>
Some of our case studies
Vitakraft
Vitakraft Italy overhauls its pet food warehouse
Pet careCafés El Magnífico
Cafés El Magnífico invests in product traceability with Easy WMS
Food & beverageGeneral Óptica
General Óptica installs an omnichannel warehouse with 4,000 daily orders
Textiles & fashion accessoriesGrupo Clazamar
Grupo Clazamar automates internal transport of frozen products
Food & beverageKonya Şeker
Konya Şeker installs an automated warehouse in a seismic region
Food & beverageModerna Products
Moderna Products automates the storage of plastic pet supplies
Pet careHaricaman
Haricaman modernizes flour storage at its plant in Toledo, Spain
Food & beverageEridania
Sugar and sweetener distributor Eridania boosts capacity by 180%
Food & beverageSinclair Pharma
Sinclair Pharma: Easy WMS manages warehouses in Spain and Bulgaria simultaneously
Machinery & componentsCovenant Logistics
Covenant Logistics installs a pallet rack system in Atlanta
Transportation & logistics providersAlpargatas
Footwear company Alpargatas equips 2 facilities in Brazil with Mecalux solutions
Textiles & fashion accessoriesClinical Nutrition
Clinical Nutrition, a nutrition and supplements leader, digitalizes logistics management
PharmaceuticalSumSol
SumSol manages 3,000 SKUs across 2 warehouses
Oil & gasWallbox
Wallbox equips its EV charger plant in Barcelona
Automotive & spare partsSteklarna Rogaška
Steklarna Rogaška transforms its 4 high-end crystalware facilities
Furniture & decorPatatas Meléndez
Patatas Meléndez modernizes its fresh potato warehouse in Medina del Campo
Food & beverageEnvases Group
Envases Group automates its facility for tinplate lids from production
PackagingMedline
Medline opens warehouse in Piacenza (Italy) for medical products
HealthcareDistrimotos e Integrando
Distrimotos and Integrando automate their shared warehouses with Easy WMS
Automotive & spare partsIRIS
IRIS optimizes the operations of its IT equipment warehouse with Easy WMS
Textiles & fashion accessoriesAbraxas
Abraxas maximizes storage capacity for efficient document management
Record & archive managementTB Group
TB Group optimizes its warehouse for protective gloves, safety shoes, and workwear
Textiles & fashion accessoriesFalk Toys
Falk Toys optimizes storage with automated internal transport solutions
PlasticsMvK Logistics
MvK Logistics (3PL): remote digitalization for real-time control
Transportation & logistics providersJim Sports
Jim Sports automates and digitalizes its sporting goods warehouse in Palas de Rei, Spain
SportsMegafin
Megafin (3PL) digitalizes one of Colombia’s largest warehouses with Easy WMS
Food & beverageInnoaesthetics
Innoaesthetics boosts its growth with a digitalized logistics strategy
Cosmetics & personal careLa Source
La Source digitalizes its warehouse for natural dietary products with Easy WMS
Cosmetics & personal careJolly Softair
Integrated logistics solution for airsoft e-tailer Jolly Softair
E-commerceSpare
Car-wash product specialist Spare optimizes its operations with Easy WMS
Machinery & componentsRabbit Hole Distillery
Rabbit Hole Distillery: high-density warehouse for whiskey barrels
Food & beverageUnipro Group
Two digital warehouses for DIY company Unipro Group
Electricity & ElectronicsRouje
Fashion brand Rouje boosts productivity in its Paris warehouse
Textiles & fashion accessoriesMEQUISA
MEQUISA automates the storage of small items
Furniture & decorNippon Paint
Automated warehouse with Nippon Paint’s automotive paint
ChemicalsZacaris
Zacaris optimizes its footwear warehouse with digitalization
E-commercePinturas Lepanto
Pinturas Lepanto digitalizes its logistics operations to manage over 2,500 SKUs
ChemicalsPanificadora de Alcalá
Panificadora de Alcalá automates logistics processes to make over 1 M product units a day
Food & beverageManitou Group
Manitou Group automates its spare parts warehouse
Automotive & spare partsMedis-M
Digital control for demanding healthcare logistics operations
HealthcareIKEA Components
IKEA Components automates its warehouse in Malacky without disrupting operations
Furniture & decorGioseppo
Gioseppo's shoe warehouse: 1.6 million shoes and 3,500 orders a day
Textiles & fashion accessoriesElectrolux
Electrolux manages household appliances with Mecalux’s Easy WMS software
Electricity & ElectronicsCapacity
Multiple solutions to expand Capacity's storage capacity
Transportation & logistics providersPedrosa
Pedrosa monitors its industrial hygiene products with Easy WMS
ChemicalsEsnelat
Esnelat automates its logistics operations with two AS/RS for milk products
Food & beverageICF
Screw and fastener distributor ICF revamps its logistics operations
Hardware & industrial suppliesETESA
ETESA digitizes its warehouse management with Mecalux's Easy WMS
Machinery & componentsVM Matériaux
Tile company VM Matériaux automates its warehouse to boost throughput and simplify processes
Ceramics & construction
— 50 Items per Page