Skip to content

Commit 2dd2f51

Browse files
User management
1 parent 5112301 commit 2dd2f51

File tree

16 files changed

+326
-280
lines changed

16 files changed

+326
-280
lines changed

sm-core-model/src/main/java/com/salesmanager/core/model/merchant/MerchantStore.java

+7
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,13 @@ public class MerchantStore extends SalesManagerEntity<Integer, MerchantStore> im
4444

4545

4646
public final static String DEFAULT_STORE = "DEFAULT";
47+
48+
public MerchantStore(Integer id, String code, String name) {
49+
this.id = id;
50+
this.code = code;
51+
this.storename = name;
52+
53+
}
4754

4855
@Id
4956
@Column(name = "MERCHANT_ID", unique = true, nullable = false)
0 Bytes
Binary file not shown.

sm-core/src/main/java/com/salesmanager/core/business/repositories/merchant/MerchantRepository.java

+3
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,7 @@ public interface MerchantRepository extends JpaRepository<MerchantStore, Integer
2525

2626
@Query("SELECT COUNT(m) > 0 FROM MerchantStore m WHERE m.code = :code")
2727
boolean existsByCode(String code);
28+
29+
@Query("select new com.salesmanager.core.model.merchant.MerchantStore(m.id, m.code, m.storename) from MerchantStore m")
30+
List<MerchantStore> findAllStoreNames();
2831
}

sm-core/src/main/java/com/salesmanager/core/business/services/merchant/MerchantStoreService.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.salesmanager.core.business.services.merchant;
22

3+
import java.util.List;
34
import java.util.Optional;
45

56
import org.springframework.data.domain.Page;
@@ -17,7 +18,9 @@ public interface MerchantStoreService extends SalesManagerEntityService<Integer,
1718
MerchantStore getMerchantStore(String merchantStoreCode)
1819
throws ServiceException;
1920

20-
MerchantStore getByCode(String code) throws ServiceException ;
21+
MerchantStore getByCode(String code) throws ServiceException;
22+
23+
List<MerchantStore> findAllStoreNames() throws ServiceException;
2124

2225
Page<MerchantStore> listAll(Optional<String> storeName, int page, int count) throws ServiceException;
2326

sm-core/src/main/java/com/salesmanager/core/business/services/merchant/MerchantStoreServiceImpl.java

+8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.salesmanager.core.business.services.merchant;
22

3+
import java.util.List;
34
import java.util.Optional;
45

56
import javax.inject.Inject;
@@ -102,6 +103,13 @@ public Page<MerchantStore> listAllRetailers(Optional<String> storeName, int page
102103
return pageableMerchantRepository.listAllRetailers(store, pageRequest);
103104
}
104105

106+
107+
@Override
108+
public List<MerchantStore> findAllStoreNames() throws ServiceException {
109+
110+
return merchantRepository.findAllStoreNames();
111+
}
112+
105113

106114
/* @Override
107115
public void delete(MerchantStore merchant) throws ServiceException {

sm-shop-model/src/main/java/com/salesmanager/shop/model/store/MerchantStoreEntity.java

+1-8
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public class MerchantStoreEntity implements Serializable {
3333
private boolean retailer;
3434
private MeasureUnit dimension;
3535
private MeasureUnit weight;
36-
private List<String> supportedLanguages;
36+
3737

3838
public int getId() {
3939
return id;
@@ -139,13 +139,6 @@ public void setWeight(MeasureUnit weight) {
139139
this.weight = weight;
140140
}
141141

142-
public List<String> getSupportedLanguages() {
143-
return supportedLanguages;
144-
}
145-
146-
public void setSupportedLanguages(List<String> supportedLanguages) {
147-
this.supportedLanguages = supportedLanguages;
148-
}
149142

150143
public boolean isRetailer() {
151144
return retailer;

sm-shop-model/src/main/java/com/salesmanager/shop/model/store/PersistableMerchantStore.java

+11
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.salesmanager.shop.model.store;
22

3+
import java.util.List;
4+
35
import com.salesmanager.shop.model.references.PersistableAddress;
46

57
public class PersistableMerchantStore extends MerchantStoreEntity {
@@ -11,6 +13,15 @@ public class PersistableMerchantStore extends MerchantStoreEntity {
1113
private PersistableAddress address;
1214
//code of parent store (can be null if retailer)
1315
private String retailerStore;
16+
private List<String> supportedLanguages;
17+
18+
public List<String> getSupportedLanguages() {
19+
return supportedLanguages;
20+
}
21+
22+
public void setSupportedLanguages(List<String> supportedLanguages) {
23+
this.supportedLanguages = supportedLanguages;
24+
}
1425

1526
public PersistableAddress getAddress() {
1627
return address;

sm-shop-model/src/main/java/com/salesmanager/shop/model/store/ReadableMerchantStore.java

+11
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.salesmanager.shop.model.store;
22

33
import java.io.Serializable;
4+
import java.util.List;
45

6+
import com.salesmanager.core.model.reference.language.Language;
57
import com.salesmanager.shop.model.content.ReadableImage;
68
import com.salesmanager.shop.model.entity.ReadableAudit;
79
import com.salesmanager.shop.model.entity.ReadableAuditable;
@@ -19,6 +21,7 @@ public class ReadableMerchantStore extends MerchantStoreEntity implements Readab
1921
private ReadableImage logo;
2022
private ReadableAudit audit;
2123
private ReadableMerchantStore parent;
24+
private List<Language> supportedLanguages;
2225

2326

2427

@@ -63,6 +66,14 @@ public void setParent(ReadableMerchantStore parent) {
6366
this.parent = parent;
6467
}
6568

69+
public List<Language> getSupportedLanguages() {
70+
return supportedLanguages;
71+
}
72+
73+
public void setSupportedLanguages(List<Language> supportedLanguages) {
74+
this.supportedLanguages = supportedLanguages;
75+
}
76+
6677

6778

6879
}

sm-shop/SALESMANAGER-TEST.h2.db

0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.

sm-shop/src/main/java/com/salesmanager/shop/populator/store/ReadableMerchantStorePopulator.java

+10-2
Original file line numberDiff line numberDiff line change
@@ -120,15 +120,23 @@ public ReadableMerchantStore populate(MerchantStore source,
120120
target.setUseCache(source.isUseCache());
121121

122122

123-
List<Language> languages = source.getLanguages();
123+
/* List<Language> languages = source.getLanguages();
124124
if(!CollectionUtils.isEmpty(languages)) {
125125
126126
List<String> langs = new ArrayList<String>();
127127
for(Language lang : languages) {
128128
langs.add(lang.getCode());
129129
}
130130
131-
target.setSupportedLanguages(langs);
131+
//target.setSupportedLanguages(langs);
132+
}*/
133+
134+
if(!CollectionUtils.isEmpty(source.getLanguages())) {
135+
List<Language> supported = new ArrayList<Language>();
136+
for(Language lang : source.getLanguages()) {
137+
supported.add(lang);
138+
}
139+
target.setSupportedLanguages(supported);
132140
}
133141

134142
if(source.getAuditSection()!=null) {

sm-shop/src/main/java/com/salesmanager/shop/store/api/v1/store/MerchantStoreApi.java

+10-4
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,13 @@
66
import java.security.Principal;
77
import java.util.List;
88
import java.util.Map;
9-
import java.util.Optional;
109
import java.util.stream.Collectors;
1110
import java.util.stream.Stream;
1211

1312
import javax.inject.Inject;
1413
import javax.servlet.http.HttpServletRequest;
1514
import javax.validation.Valid;
1615

17-
import org.apache.commons.lang3.StringUtils;
1816
import org.slf4j.Logger;
1917
import org.slf4j.LoggerFactory;
2018
import org.springframework.http.HttpStatus;
@@ -33,14 +31,12 @@
3331
import org.springframework.web.multipart.MultipartFile;
3432

3533
import com.google.common.collect.ImmutableMap;
36-
import com.salesmanager.core.business.services.reference.language.LanguageService;
3734
import com.salesmanager.core.model.common.Criteria;
3835
import com.salesmanager.core.model.content.FileContentType;
3936
import com.salesmanager.core.model.content.InputContentFile;
4037
import com.salesmanager.core.model.merchant.MerchantStoreCriteria;
4138
import com.salesmanager.core.model.reference.language.Language;
4239
import com.salesmanager.shop.model.entity.EntityExists;
43-
import com.salesmanager.shop.model.entity.ListCriteria;
4440
import com.salesmanager.shop.model.store.PersistableBrand;
4541
import com.salesmanager.shop.model.store.PersistableMerchantStore;
4642
import com.salesmanager.shop.model.store.ReadableBrand;
@@ -138,6 +134,16 @@ public ReadableMerchantStoreList get(
138134
return storeFacade.findAll(criteria, language, page, count);
139135
}
140136

137+
@ResponseStatus(HttpStatus.OK)
138+
@GetMapping(value = {"/stores"}, produces = MediaType.APPLICATION_JSON_VALUE)
139+
@ApiOperation(httpMethod = "GET", value = "Get list of store names. Returns all retailers and stores", notes = "",
140+
response = ReadableMerchantStore.class)
141+
public List<ReadableMerchantStore> get(
142+
HttpServletRequest request) {
143+
144+
return storeFacade.getMerchantStoreNames();
145+
}
146+
141147

142148

143149
@ResponseStatus(HttpStatus.OK)

0 commit comments

Comments
 (0)