Content_retail_store_management_MainRegion

Store Management

Welcome to Hays Store Management, where we match talented professionals to the right organisations.


Find jobs          Find Candidates

Hays Retail work with employers across the UK to bring you the widest variety of retail management jobs which include Store Manager, Assistant Store Manager, General Manager, Duty Manager, Deputy Manager, Business Development Manager, Operations Manager and Regional Manager.

We have substantial market knowledge, experience and have built strong relationships with major brand names from high street retailers and department stores to niche and luxury boutiques.

We have the local market knowledge and industry experience to help talented management experts find the right jobs for their careers so contact your nearest office today to find out how we can help you. We have offices in London, Manchester and Northern Ireland.

HaysSearchForm Portlet

Content_retail_featured_employers_PromoBox

An error occurred while processing the template.
The following has evaluated to null or missing:
==> assetEntryLocalService.getjobs("keyword", specialismId, subSpecialismId, countJobs, locale)  [in template "20115#20151#81915" at line 66, column 32]

----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign getResponse = assetEntryLocal...  [in template "20115#20151#81915" at line 66, column 9]
----
1<#assign FeaturedEmployerTitle = FeaturedEmployerTitle.getData()> 
2<#assign PopularSearchesTitle = PopularSearchesTitle.getData()> 
3<#assign LatestJobsTitle = LatestJobsTitle.getData()> 
4<#assign tabsLabels = ""> 
5<#assign featuredCount = 0> 
6<#assign latestJobsCount = 0> 
7<#assign assignedCategoriesIds = ""> 
8<#assign assignedCategoriesNames = ""> 
9<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
10<#assign plId = layout.getPlid()> 
11<#assign layoutEntry = assetEntryLocalService.fetchEntry("com.liferay.portal.kernel.model.Layout", plId)> 
12<#assign assetCategories = layoutEntry.getCategories()/> 
13 
14<#assign keyword = ""> 
15<#assign subSpecialismId = "">  
16<#assign specialismId = ""> 
17<#assign parentPlid = layout.getParentPlid()> 
18 
19<#if FeaturedEmployerTitle != ""> 
20    <#assign FeaturedEmployerTitle += ','>  
21	<#assign featuredEmployerService = serviceLocator.findService("com.hays.employer.service.HaysFeaturedEmployerLocalService")  /> 
22	<#assign totalCount = 6 > 
23	<#assign groupIdVal = groupId?c > 
24	<#assign targetAudience = "common,jobseeker" > 
25	<#list assetCategories as cat> 
26       <#assign catName = cat.getCategoryId()> 
27       <#assign catName += '|'> 
28       <#assign assignedCategoriesIds += catName> 
29	</#list> 
30	<#assign assignedCategoriesIds = assignedCategoriesIds?keep_before("|")/> 
31	<#assign response = featuredEmployerService.getFeaturedEmployers(assignedCategoriesIds, groupIdVal, targetAudience, totalCount)> 
32	<#if response.EmpResult??> 
33		<#assign EmpResultArray = response.getJSONArray("EmpResult")> 
34		<#assign featuredCount = EmpResultArray.length()>	 
35		<#if featuredCount !=0> 
36			<#assign tabsLabels += FeaturedEmployerTitle>  
37		</#if> 
38	</#if> 
39</#if> 
40 
41<#if LatestJobsTitle != ""> 
42	<#assign LatestJobsTitle += ','> 
43	<#assign LayoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")> 
44	<#assign nodeId = LayoutLocalService.getLayout(parentPlid).getExpandoBridge().getAttribute("NodeId")> 
45	<#list assetCategories as cat> 
46       <#assign catName = cat.getName()> 
47       <#assign catName += '|'> 
48       <#assign assignedCategoriesNames += catName> 
49	</#list> 
50	<#assign assignedCategoriesNames = assignedCategoriesNames?keep_before("|")/> 
51	<#if nodeId == "job-seeker"> 
52		<#assign specialismId = assignedCategoriesNames> 
53	<#else> 
54		<#assign subSpecialismId = assignedCategoriesNames>  
55	</#if> 
56	<#assign ucmLocaleKey = themeDisplay.getLocale()+"."+siteType+"."+"ucmLocale"> 
57	<#assign projectSURLKey = "Mobile_URL_" + locale.getCountry()> 
58	<#if (siteType != "Expert")> 
59		<#assign projectSURLKey = projectSURLKey + "_"+ siteType> 
60	</#if> 
61	<#assign locale = propsUtil.get(ucmLocaleKey)/> 
62	<#assign GCSLocales = propsUtil.get("GCSLocales")/> 
63	<#assign projectSURL = propsUtil.get(projectSURLKey)/> 
64	<#assign countJobs = "5"> 
65	<#assign assetEntryLocalService = serviceLocator.findService("com.hays.service.jobs.service.HaysJobsLocalService")/> 
66	<#assign getResponse = assetEntryLocalService.getjobs("keyword", specialismId, subSpecialismId, countJobs, locale)> 
67	<#if getResponse?? && getResponse.result??> 
68		<#assign getResponseResult = getResponse.result> 
69		<#if getResponseResult.resultCount gt 0> 
70			<#assign getResponseResultArray = getResponseResult.getJSONArray("jobs")> 
71			<#assign latestJobsCount = getResponseResultArray.length()> 
72			<#if getResponseResultArray.length() < 5> 
73				<#assign countJobs = getResponseResultArray.length()> 
74			</#if> 
75			<#if latestJobsCount != 0> 
76				<#assign tabsLabels += LatestJobsTitle> 
77			</#if> 
78		</#if> 
79	</#if> 
80</#if> 
81 
82<#if PopularSearchesTitle != ""> 
83	<#assign PopularSearchesTitle += ','> 
84	<#if Label.getSiblings()?has_content> 
85		<#assign tabsLabels += PopularSearchesTitle> 
86	</#if> 
87</#if> 
88	 
89<#if tabsLabels != ""> 
90	<div class="box"> 
91		<div class="hays-tabs"> 
92		<#assign tabsLabels = tabsLabels?keep_before_last(",")/> 
93		<@liferay_ui["tabs"] 
94		names=tabsLabels 
95		param=tabs2 
96		refresh=false 
97		type=tabs 
98
99		 
100		<#if FeaturedEmployerTitle != "" && featuredCount !=0> 
101			<@liferay_ui["section"] > 
102			<ul class="list emp-list"> 
103			<#list 0 ..< featuredCount as i> 
104				<#assign empTitle = EmpResultArray.get(i).title> 
105				<#assign empArticleId = EmpResultArray.get(i).articleId> 
106				<#assign empUrl = EmpResultArray.get(i).empUrl>  
107				<#assign empImage = EmpResultArray.get(i).image> 
108				<li class="${empArticleId}"><a href="${empUrl}" target="_blank"><img src="${empImage}" alt="${empTitle}"></a></li> 
109			</#list> 
110			</ul> 
111			<#assign privateLayout = false> 
112			<#assign LayoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")> 
113			<#assign layouts = LayoutLocalService.getLayouts(groupId, privateLayout)> 
114			<#assign featureEmployerPageUrl =  "/"> 
115			<#if (layouts?size > 0)> 
116				<#assign featuredEmpSectionFound = 0> 
117				<#list layouts as layout> 
118					<#if layout?? &&  featuredEmpSectionFound == 0> 
119						<#assign nodeIdFeatured = layout.getExpandoBridge().getAttribute("NodeId")> 
120						<#if (nodeIdFeatured??)> 
121							<#if (nodeIdFeatured == "featured-employer")> 
122								<#assign featuredEmpSectionFound = 1> 
123								<#assign featureEmployerPageUrl = layout.getFriendlyURL()> 
124								<#assign portalurl= themeDisplay.getURLPortal() > 
125								<#if portalurl?contains("expertcontrib")> 
126									<#assign featureEmployerPageUrl= "/web"+themeDisplay.getSiteGroup().getFriendlyURL()+ featureEmployerPageUrl > 
127								</#if> 
128							</#if> 
129						</#if> 
130					</#if> 
131				</#list> 
132			</#if> 
133			<a class="btn" href="${featureEmployerPageUrl}">${languageUtil.get(themeDisplay.getLocale(), "lr_featuredEmployersTitle")}</a> 
134			</@> 
135		</#if> 
136		 
137		<#if LatestJobsTitle != "" && latestJobsCount != 0 > 
138			<@liferay_ui["section"]> 
139			<ul class="list sponsored-list"> 
140			<#list 0 ..< countJobs?number as i> 
141				<#assign JobUrl = getResponseResultArray.get(i).jobRequisitionId> 
142				<#if GCSLocales?contains(locale)> 
143					<#assign JobUrl += "?jobSource=HaysGCJ"> 
144				</#if> 
145				<#assign jobtitle = getResponseResultArray.get(i).title> 
146				<#if getResponseResultArray.get(i).getJSONObject("nonFilterableCustomFields").has("xLocationDescription")> 
147					<#assign location = getResponseResultArray.get(i).getJSONObject("nonFilterableCustomFields").getJSONObject("xLocationDescription").getJSONArray("values").getString(0)> 
148				<#else> 
149					<#assign location = ""> 
150				</#if> 
151				<li><a href="${JobUrl}"><strong>${jobtitle}</strong><small><p>${location}</p></small></a></li> 
152			</#list> 
153			</ul> 
154			<a class="btn" href="${projectSURL}${propsUtil.get("SEARCH")}?q=hays&amp;specialismId=${specialismId}&amp;subSpecialismId=${subSpecialismId}"><span>${languageUtil.get(themeDisplay.getLocale(), "lr_latestAllJobs")}</span></a> 
155			</@> 
156		</#if> 
157		 
158		<#if PopularSearchesTitle != ""> 
159			<@liferay_ui["section"]> 
160			<#if Label.getSiblings()?has_content> 
161				<ul class="list arrow-list"> 
162				<#list Label.getSiblings() as cur_PopularSearchesContent> 
163					<li ><h3><a target="_blank" href="${cur_PopularSearchesContent.Link.getData()}">${cur_PopularSearchesContent.getData()}</a></h3></li> 
164				</#list> 
165				</ul> 
166			</#if> 
167			</@> 
168		</#if> 
169		</div> 
170	</div> 
171</@> 
172</#if> 

Content_multi_generic_specialism_PromoBox

Have a vacancy?

Have a vacancy? Send us some details about the job, and we can help you out. We have a huge database of professionals available to fill your vacancies.
 

Post your job

Find your local office

Hays have offices across the the UK. Contact your local recruitment expert to discuss any vacancies or job opportunities. 

 

Find your nearest office

Content_multi_office_locator_RHmodule

Contact us

Find your nearest Hays office

Hays has offices across the whole of the UK. Contact us to discuss your employment needs.

Content_multi_salary_checker_2019_RHModule

Salary Checker

Hays Salary Checker

Our salary checker helps you to understand what the standard salaries are and what your potential earnings could be.