Gestão de Operações
A histórica interação unidirecional entre as empresas de serviços públicos e os clientes está a transformar-se rapidamente numa interação bidirecional e dinâmica - afectando as suas operações com novos desafios. As soluções da Itron para a gestão de operações ajudam-no a obter uma melhor visibilidade das suas operações do que nunca, e com tecnologia inteligentemente ligada em todo o sistema de distribuição, as nossas soluções também lhe dão mais controlo do que nunca.
Filter Products |
Clear |
Ocorreu um erro ao processar o template.
Java method "com.liferay.commerce.product.content.web.internal.helper.CPContentHelperImpl.getFriendlyURL(com.liferay.commerce.product.catalog.CPCatalogEntry, com.liferay.portal.kernel.theme.ThemeDisplay)" threw an exception when invoked on com.liferay.commerce.product.content.web.internal.helper.CPContentHelperImpl object "com.liferay.commerce.product.content.web.internal.helper.CPContentHelperImpl@1b23454"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: friendlyURL = cpContentHelper.getFrie... [in template "44616#44647#3220178" at line 33, column 25]
----
1<div class="grid-list-view-wrap">
2 <ul class="grid-list-view-list">
3 <li>
4 <button class="grid-view on" aria-current="true" type="button">
5 <svg aria-hidden="true" class="grid-view-icon" focusable="false">
6 <use href="/documents/d/global/sprite#gridViewIcon"></use>
7 </svg>
8 <span class="visually-hidden">
9 Grid view
10 </span>
11 </button>
12 </li>
13 <li>
14 <button class="list-view" aria-current="false" type="button">
15 <span class="list-view-icon">
16 <span class="visually-hidden">
17 List view
18 </span>
19 </span>
20 </button>
21 </li>
22 </ul>
23</div>
24<ul class="product-catalog-list grid-view">
25 <#if entries?has_content>
26 <#list entries ?sort_by("name") as curCPCatalogEntry>
27
28 <#assign
29 cpDefinitionId = curCPCatalogEntry.getCPDefinitionId()
30 productName = curCPCatalogEntry.getName()
31 productShortDescription = curCPCatalogEntry.getShortDescription()
32 productDescription = curCPCatalogEntry.getDescription()
33 friendlyURL = cpContentHelper.getFriendlyURL(curCPCatalogEntry, themeDisplay)
34 commerceContext = renderRequest.getAttribute("COMMERCE_CONTEXT")
35 />
36 <#attempt>
37 <#if curCPCatalogEntry.getDefaultImageFileUrl()?has_content>
38 <#assign defaultImageURL = curCPCatalogEntry.getDefaultImageFileUrl() />
39 </#if>
40
41 <#recover>
42 <#assign
43 images = cpContentHelper.getImages(cpDefinitionId, false, themeDisplay)
44 />
45 <#list images as image>
46 <#assign
47 defaultImageURL = image.getURL()
48 />
49 </#list>
50 </#attempt>
51
52 <li class="product-catalog-list-item">
53 <a href="${friendlyURL}" class="product-catalog-list-item-link">
54 <div class="product-catalog-list-item-img-wrap">
55 <img src="${defaultImageURL}" class="product-catalog-list-item-img" alt="${productName}" />
56 </div>
57 <div class="product-catalog-list-desc">
58 <h2 class="product-catalog-list-item-title" title="${productName}">
59 ${productName}
60 </h2>
61 <p class="product-catalog-list-item-desc">${productShortDescription}</p>
62 </div>
63 </a>
64 </li>
65 </#list>
66 </#if>
67</ul>
Region Selector
Select a region and country for the best experience.