Subversion Repositories SmartDukaan

Rev

Rev 23784 | Rev 23798 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 23784 Rev 23786
Line 50... Line 50...
50
import com.spice.profitmandi.web.model.LoginDetails;
50
import com.spice.profitmandi.web.model.LoginDetails;
51
import com.spice.profitmandi.web.util.CookiesProcessor;
51
import com.spice.profitmandi.web.util.CookiesProcessor;
52
import com.spice.profitmandi.web.util.MVCResponseSender;
52
import com.spice.profitmandi.web.util.MVCResponseSender;
53
 
53
 
54
@Controller
54
@Controller
55
@Transactional(rollbackFor=Throwable.class)
55
@Transactional(rollbackFor = Throwable.class)
56
public class SchemeController {
56
public class SchemeController {
57
 
57
 
58
	private static final Logger LOGGER = LogManager.getLogger(SchemeController.class);
58
	private static final Logger LOGGER = LogManager.getLogger(SchemeController.class);
59
 
59
 
60
	@Autowired
60
	@Autowired
61
	private SchemeService schemeService;
61
	private SchemeService schemeService;
62
	
62
 
63
	@Autowired
63
	@Autowired
64
	private SchemeRepository schemeRepository;
64
	private SchemeRepository schemeRepository;
65
 
65
 
66
	@Autowired
66
	@Autowired
67
	private SchemeItemRepository schemeItemRepository;
67
	private SchemeItemRepository schemeItemRepository;
68
	
68
 
69
	@Autowired
69
	@Autowired
70
	private MVCResponseSender mvcResponseSender;
70
	private MVCResponseSender mvcResponseSender;
71
	
71
 
72
	@Autowired
72
	@Autowired
73
	private CookiesProcessor cookiesProcessor;
73
	private CookiesProcessor cookiesProcessor;
74
	
74
 
75
	@Autowired
75
	@Autowired
76
	@Qualifier("fofoInventoryService")
76
	@Qualifier("fofoInventoryService")
77
	private InventoryService inventoryService;
77
	private InventoryService inventoryService;
78
 
78
 
79
	@Autowired
79
	@Autowired
80
	private TagListingRepository tagListingRepository;
80
	private TagListingRepository tagListingRepository;
81
	
81
 
82
	@Autowired
82
	@Autowired
83
	PurchaseRepository purchaseRepository;
83
	PurchaseRepository purchaseRepository;
84
	
84
 
85
	@Autowired
85
	@Autowired
86
	private RoleRepository roleRepository;
86
	private RoleRepository roleRepository;
87
	
87
 
88
	@Autowired
88
	@Autowired
89
	private ResponseSender<?> responseSender;
89
	private ResponseSender<?> responseSender;
90
 
90
 
91
	@RequestMapping(value = "/createScheme", method = RequestMethod.GET)
91
	@RequestMapping(value = "/createScheme", method = RequestMethod.GET)
92
	public String createScheme(HttpServletRequest request, Model model){
92
	public String createScheme(HttpServletRequest request, Model model) {
-
 
93
		// Map<Integer, String> itemIdItemDescriptionMap =
93
		//Map<Integer, String> itemIdItemDescriptionMap = inventoryService.getAllItemIdItemDescriptionMap();
94
		// inventoryService.getAllItemIdItemDescriptionMap();
94
		//model.addAttribute("itemIdItemDescriptionMap", itemIdItemDescriptionMap);
95
		// model.addAttribute("itemIdItemDescriptionMap", itemIdItemDescriptionMap);
95
		model.addAttribute("brands", inventoryService.getAllTagListingBrands());
96
		model.addAttribute("brands", inventoryService.getAllTagListingBrands());
96
		return "create-scheme";
97
		return "create-scheme";
97
	}
98
	}
98
	
99
 
99
	@RequestMapping(value = "/getTagListingItemsByBrand", method = RequestMethod.GET)
100
	@RequestMapping(value = "/getTagListingItemsByBrand", method = RequestMethod.GET)
-
 
101
	public String getTagListingItemsByBrand(HttpServletRequest request,
100
	public String getTagListingItemsByBrand(HttpServletRequest request, @RequestParam(name = ProfitMandiConstants.BRAND) String brand, Model model){
102
			@RequestParam(name = ProfitMandiConstants.BRAND) String brand, Model model) {
101
		Map<Integer, String> itemIdItemDescriptionMap = inventoryService.getAllTagListingItemIdItemDescriptionMap(brand);
103
		Map<Integer, String> itemIdItemDescriptionMap = inventoryService
-
 
104
				.getAllTagListingItemIdItemDescriptionMap(brand);
102
		model.addAttribute("itemIdItemDescriptionMap", itemIdItemDescriptionMap);
105
		model.addAttribute("itemIdItemDescriptionMap", itemIdItemDescriptionMap);
103
		//model.addAttribute("brands", inventoryService.getAllBrands());
106
		// model.addAttribute("brands", inventoryService.getAllBrands());
104
		return "tag-listing-items-description";
107
		return "tag-listing-items-description";
105
	}
108
	}
106
 
109
 
107
	@RequestMapping(value = "/schemes/update-schemes-page", method = RequestMethod.GET)
110
	@RequestMapping(value = "/schemes/update-schemes-page", method = RequestMethod.GET)
108
	public String updateShcemes(HttpServletRequest request) throws ProfitMandiBusinessException {
111
	public String updateShcemes(HttpServletRequest request) throws ProfitMandiBusinessException {
109
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
112
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
110
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
113
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
111
		if(loginDetails.getRoleIds().contains(role.getId())) {
114
		if (loginDetails.getRoleIds().contains(role.getId())) {
112
			throw new ProfitMandiBusinessException("User", loginDetails.getEmailId(), "Unauthorised access");
115
			throw new ProfitMandiBusinessException("User", loginDetails.getEmailId(), "Unauthorised access");
113
		}
116
		}
114
		return "update-schemes-page";
117
		return "update-schemes-page";
115
	}
118
	}
116
	
119
 
117
	@RequestMapping(value = "/schemes/update", method = RequestMethod.POST)
120
	@RequestMapping(value = "/schemes/update", method = RequestMethod.POST)
118
	public String updateShcemes(HttpServletRequest request, @RequestBody SchemeItems schemeItems, Model model) throws Exception {
121
	public String updateShcemes(HttpServletRequest request, @RequestBody SchemeItems schemeItems, Model model)
-
 
122
			throws Exception {
119
		for(int schemeId : schemeItems.getSchemeIds()) {
123
		for (int schemeId : schemeItems.getSchemeIds()) {
120
			if(schemeRepository.selectById(schemeId) != null)
124
			if (schemeRepository.selectById(schemeId) != null)
121
			for(int itemId : schemeItems.getItemIds()) {
125
				for (int itemId : schemeItems.getItemIds()) {
122
				if(tagListingRepository.selectByItemIdsAndTagIds(new HashSet<>(Arrays.asList(itemId)), new HashSet<>(Arrays.asList(4,7))).size() > 0) {
126
					if (tagListingRepository.selectByItemIdsAndTagIds(new HashSet<>(Arrays.asList(itemId)),
-
 
127
							new HashSet<>(Arrays.asList(4, 7))).size() > 0) {
123
					SchemeItem si = new SchemeItem();
128
						SchemeItem si = new SchemeItem();
124
					si.setItemId(itemId);
129
						si.setItemId(itemId);
125
					si.setSchemeId(schemeId);
130
						si.setSchemeId(schemeId);
126
					try {
131
						try {
127
						schemeItemRepository.persist(si);
132
							schemeItemRepository.persist(si);
128
					} catch (Exception e) {
133
						} catch (Exception e) {
129
						LOGGER.info("Scheme aleady exist");
134
							LOGGER.info("Scheme aleady exist");
-
 
135
						}
-
 
136
						model.addAttribute("response", mvcResponseSender.createResponseString(true));
-
 
137
					} else {
-
 
138
						model.addAttribute("response", mvcResponseSender.createResponseString(false));
-
 
139
						throw new ProfitMandiBusinessException("ItemId", itemId, "Invalid Item Id");
130
					}
140
					}
131
					model.addAttribute("response", mvcResponseSender.createResponseString(true));
-
 
132
				} else {
-
 
133
					model.addAttribute("response", mvcResponseSender.createResponseString(false));
-
 
134
					throw new ProfitMandiBusinessException("ItemId", itemId,"Invalid Item Id");
-
 
135
				}
141
				}
136
			}
-
 
137
		}
142
		}
138
		return "response";
143
		return "response";
139
	}
144
	}
140
	
-
 
141
	
145
 
142
	@RequestMapping(value = "/createScheme", method = RequestMethod.POST)
146
	@RequestMapping(value = "/createScheme", method = RequestMethod.POST)
143
	public String createScheme(HttpServletRequest request, @RequestBody CreateSchemeRequest createSchemeRequest,
147
	public String createScheme(HttpServletRequest request, @RequestBody CreateSchemeRequest createSchemeRequest,
144
			@RequestParam(name = "offset", defaultValue = "0") int offset,
148
			@RequestParam(name = "offset", defaultValue = "0") int offset,
145
			@RequestParam(name = "limit", defaultValue = "10") int limit,
149
			@RequestParam(name = "limit", defaultValue = "10") int limit,
146
			@RequestParam(name = "searchItem", required = false, defaultValue = "") String searchItem,
150
			@RequestParam(name = "searchItem", required = false, defaultValue = "") String searchItem,
Line 157... Line 161...
157
		model.addAttribute("size", size);
161
		model.addAttribute("size", size);
158
		model.addAttribute("searchItem", searchItem);
162
		model.addAttribute("searchItem", searchItem);
159
		model.addAttribute("searchTerm", searchTerm);
163
		model.addAttribute("searchTerm", searchTerm);
160
		if (schemes.size() < limit) {
164
		if (schemes.size() < limit) {
161
			model.addAttribute("end", offset + schemes.size());
165
			model.addAttribute("end", offset + schemes.size());
162
		}else{
166
		} else {
163
			model.addAttribute("end", offset + limit);
167
			model.addAttribute("end", offset + limit);
164
		}
168
		}
165
		return "schemes";
169
		return "schemes";
166
		
170
 
167
	}
171
	}
168
	
172
 
169
	@RequestMapping(value = "/getSchemes", method = RequestMethod.GET)
173
	@RequestMapping(value = "/getSchemes", method = RequestMethod.GET)
170
	public String getSchemes(HttpServletRequest request, @RequestParam(name = "offset", defaultValue = "0") int offset,
174
	public String getSchemes(HttpServletRequest request, @RequestParam(name = "offset", defaultValue = "0") int offset,
171
			@RequestParam(name = "limit", defaultValue = "10") int limit,
175
			@RequestParam(name = "limit", defaultValue = "10") int limit,
172
			@RequestParam(name = "searchItem", required = false, defaultValue = "") String searchItem,
176
			@RequestParam(name = "searchItem", required = false, defaultValue = "") String searchItem,
173
			@RequestParam(name = "searchTerm", required = false, defaultValue = "") String searchTerm, Model model)
177
			@RequestParam(name = "searchTerm", required = false, defaultValue = "") String searchTerm, Model model)
174
			throws ProfitMandiBusinessException {
178
			throws ProfitMandiBusinessException {
175
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
179
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
176
		List<Scheme> schemes = null;
180
		List<Scheme> schemes = null;
177
		long size = 0;
181
		long size = 0;
178
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
182
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
179
		if(loginDetails.getRoleIds().contains(role.getId())){
183
		if (loginDetails.getRoleIds().contains(role.getId())) {
180
			schemes = schemeRepository.selectAll(offset, limit);
184
			schemes = schemeRepository.selectAll(offset, limit);
181
			size = schemeRepository.selectAllCount();
185
			size = schemeRepository.selectAllCount();
182
		}else{
186
		} else {
183
			schemes = schemeRepository.selectActiveAll(offset, limit);
187
			schemes = schemeRepository.selectActiveAll(offset, limit);
184
			size = schemeRepository.selectAllActiveCount();
188
			size = schemeRepository.selectAllActiveCount();
185
		}
189
		}
186
		model.addAttribute("schemes", schemes);
190
		model.addAttribute("schemes", schemes);
187
		model.addAttribute("start", offset + 1);
191
		model.addAttribute("start", offset + 1);
188
		model.addAttribute("size", size);
192
		model.addAttribute("size", size);
189
		model.addAttribute("searchItem", searchItem);
193
		model.addAttribute("searchItem", searchItem);
190
		model.addAttribute("searchTerm", searchTerm);
194
		model.addAttribute("searchTerm", searchTerm);
191
		if (schemes.size() < limit) {
195
		if (schemes.size() < limit) {
192
			model.addAttribute("end", offset + schemes.size());
196
			model.addAttribute("end", offset + schemes.size());
193
		}else{
197
		} else {
194
			model.addAttribute("end", offset + limit);
198
			model.addAttribute("end", offset + limit);
195
		}
199
		}
196
		//model.addAttribute("roleTypes", loginDetails.getRoleTypes());
200
		// model.addAttribute("roleTypes", loginDetails.getRoleTypes());
197
		return "schemes";
201
		return "schemes";
198
	}
202
	}
199
	
203
 
200
	@RequestMapping(value = "/getPaginatedSchemes", method = RequestMethod.GET)
204
	@RequestMapping(value = "/getPaginatedSchemes", method = RequestMethod.GET)
-
 
205
	public String getPaginatedSchemes(HttpServletRequest request,
-
 
206
			@RequestParam(name = "offset", defaultValue = "0") int offset,
201
	public String getPaginatedSchemes(HttpServletRequest request, @RequestParam(name = "offset", defaultValue = "0") int offset, @RequestParam(name = "limit", defaultValue = "10") int limit, Model model) throws ProfitMandiBusinessException{
207
			@RequestParam(name = "limit", defaultValue = "10") int limit, Model model)
-
 
208
			throws ProfitMandiBusinessException {
202
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
209
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
203
		LOGGER.info("requested offset=[{}], limit = [{}]", offset, limit);
210
		LOGGER.info("requested offset=[{}], limit = [{}]", offset, limit);
204
		List<Scheme> schemes = null;
211
		List<Scheme> schemes = null;
205
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
212
		Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
206
		if(loginDetails.getRoleIds().contains(role.getId())){
213
		if (loginDetails.getRoleIds().contains(role.getId())) {
207
			schemes = schemeRepository.selectAll(offset, limit);
214
			schemes = schemeRepository.selectAll(offset, limit);
208
		}else{
215
		} else {
209
			schemes = schemeRepository.selectActiveAll(offset, limit);
216
			schemes = schemeRepository.selectActiveAll(offset, limit);
210
		}
217
		}
211
		model.addAttribute("schemes", schemes);
218
		model.addAttribute("schemes", schemes);
212
		model.addAttribute("roleIds", loginDetails.getRoleIds());
219
		model.addAttribute("roleIds", loginDetails.getRoleIds());
213
		return "schemes-paginated";
220
		return "schemes-paginated";
214
	}
221
	}
215
	
222
 
216
	@RequestMapping(value = "/schemes/downloadPage", method = RequestMethod.GET)
223
	@RequestMapping(value = "/schemes/downloadPage", method = RequestMethod.GET)
217
	public String downloadPage(HttpServletRequest request, Model model){
224
	public String downloadPage(HttpServletRequest request, Model model) {
218
		return "schemes-download";
225
		return "schemes-download";
219
	}
226
	}
220
	
227
 
221
	@RequestMapping(value = "/schemes/download", method = RequestMethod.GET)
228
	@RequestMapping(value = "/schemes/download", method = RequestMethod.GET)
-
 
229
	public ResponseEntity<?> downloadInventoryItemAgingByInterval(HttpServletRequest request,
-
 
230
			@RequestParam(name = ProfitMandiConstants.START_DATE_TIME) String startDateTimeString,
222
	public ResponseEntity<?> downloadInventoryItemAgingByInterval(HttpServletRequest request, @RequestParam(name = ProfitMandiConstants.START_DATE_TIME) String startDateTimeString, @RequestParam(name = ProfitMandiConstants.END_DATE_TIME) String endDateTimeString, Model model) throws ProfitMandiBusinessException{
231
			@RequestParam(name = ProfitMandiConstants.END_DATE_TIME) String endDateTimeString, Model model)
-
 
232
			throws ProfitMandiBusinessException {
223
		LocalDateTime startDateTime = StringUtils.toDateTime(startDateTimeString, DateTimePattern.DD_MM_YYYY_T_HH_MM_SS);
233
		LocalDateTime startDateTime = StringUtils.toDateTime(startDateTimeString,
-
 
234
				DateTimePattern.DD_MM_YYYY_T_HH_MM_SS);
224
		LocalDateTime endDateTime = StringUtils.toDateTime(endDateTimeString, DateTimePattern.DD_MM_YYYY_T_HH_MM_SS);
235
		LocalDateTime endDateTime = StringUtils.toDateTime(endDateTimeString, DateTimePattern.DD_MM_YYYY_T_HH_MM_SS);
225
		
236
 
226
		List<SchemeModel> schemeModels = schemeService.getAllSchemeModels(startDateTime, endDateTime);
237
		List<SchemeModel> schemeModels = schemeService.getAllSchemeModels(startDateTime, endDateTime);
227
		
238
 
228
		ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
239
		ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
229
		ExcelUtils.writeSchemeModels(schemeModels, byteArrayOutputStream);
240
		ExcelUtils.writeSchemeModels(schemeModels, byteArrayOutputStream);
230
		
241
 
231
		final HttpHeaders headers=new HttpHeaders();
242
		final HttpHeaders headers = new HttpHeaders();
232
        headers.set("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
243
		headers.set("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
233
		headers.set("Content-disposition", "inline; filename=SchemesReport.xlsx");
244
		headers.set("Content-disposition", "inline; filename=SchemesReport.xlsx");
234
        headers.setContentLength(byteArrayOutputStream.toByteArray().length);
245
		headers.setContentLength(byteArrayOutputStream.toByteArray().length);
235
        final InputStream inputStream=new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
246
		final InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
236
        final InputStreamResource inputStreamResource=new InputStreamResource(inputStream);
247
		final InputStreamResource inputStreamResource = new InputStreamResource(inputStream);
237
        return new ResponseEntity<InputStreamResource>(inputStreamResource, headers, HttpStatus.OK);
248
		return new ResponseEntity<InputStreamResource>(inputStreamResource, headers, HttpStatus.OK);
238
		
249
 
239
		//return responseSender.ok(ResponseCodeHolder.getMessage("ITM_AGNG_OK_1000"));
250
		// return responseSender.ok(ResponseCodeHolder.getMessage("ITM_AGNG_OK_1000"));
240
	}
251
	}
241
	
252
 
242
	@RequestMapping(value = "/getSchemeById", method = RequestMethod.GET)
253
	@RequestMapping(value = "/getSchemeById", method = RequestMethod.GET)
-
 
254
	public String getSchemeById(HttpServletRequest request,
243
	public String getSchemeById(HttpServletRequest request, @RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId, Model model)  throws ProfitMandiBusinessException{
255
			@RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId, Model model)
-
 
256
			throws ProfitMandiBusinessException {
244
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
257
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
245
		Scheme scheme = schemeService.getSchemeById(schemeId);
258
		Scheme scheme = schemeService.getSchemeById(schemeId);
246
		model.addAttribute("scheme", scheme);
259
		model.addAttribute("scheme", scheme);
247
		model.addAttribute("roleIds", loginDetails.getRoleIds());
260
		model.addAttribute("roleIds", loginDetails.getRoleIds());
248
		return "scheme-details";
261
		return "scheme-details";
249
	}
262
	}
250
	
263
 
251
	@RequestMapping(value = "/activeSchemeById", method = RequestMethod.PUT)
264
	@RequestMapping(value = "/activeSchemeById", method = RequestMethod.PUT)
-
 
265
	public String activeSchemeById(HttpServletRequest request,
-
 
266
			@RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId,
-
 
267
			@RequestParam(name = "offset", defaultValue = "0") int offset,
252
	public String activeSchemeById(HttpServletRequest request, @RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId, @RequestParam(name = "offset", defaultValue = "0") int offset, @RequestParam(name = "limit", defaultValue = "10") int limit, Model model)  throws ProfitMandiBusinessException{
268
			@RequestParam(name = "limit", defaultValue = "10") int limit, Model model)
-
 
269
			throws ProfitMandiBusinessException {
253
		schemeService.activeSchemeById(schemeId);
270
		schemeService.activeSchemeById(schemeId);
254
		List<Scheme> schemes = schemeRepository.selectAll(offset, limit);
271
		List<Scheme> schemes = schemeRepository.selectAll(offset, limit);
255
		model.addAttribute("schemes", schemes);
272
		model.addAttribute("schemes", schemes);
256
		return "schemes-paginated";
273
		return "schemes-paginated";
257
	}
274
	}
258
	
-
 
259
	
275
 
260
	@RequestMapping(value = "/expireSchemeById", method = RequestMethod.PUT)
276
	@RequestMapping(value = "/expireSchemeById", method = RequestMethod.PUT)
-
 
277
	public String expireSchemeById(HttpServletRequest request,
-
 
278
			@RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId,
-
 
279
			@RequestParam(name = "offset", defaultValue = "0") int offset,
261
	public String expireSchemeById(HttpServletRequest request, @RequestParam(name = ProfitMandiConstants.SCHEME_ID) int schemeId, @RequestParam(name = "offset", defaultValue = "0") int offset, @RequestParam(name = "limit", defaultValue = "10") int limit, Model model)  throws ProfitMandiBusinessException{
280
			@RequestParam(name = "limit", defaultValue = "10") int limit, Model model)
-
 
281
			throws ProfitMandiBusinessException {
262
		schemeService.expireSchemeById(schemeId);
282
		schemeService.expireSchemeById(schemeId);
263
		List<Scheme> schemes = schemeRepository.selectAll(offset, limit);
283
		List<Scheme> schemes = schemeRepository.selectAll(offset, limit);
264
		model.addAttribute("schemes", schemes);
284
		model.addAttribute("schemes", schemes);
265
		return "schemes-paginated";
285
		return "schemes-paginated";
266
	}
286
	}
267
	
287
 
268
	@RequestMapping(value = "/getSchemesJson", method = RequestMethod.GET)
288
	@RequestMapping(value = "/getSchemesJson", method = RequestMethod.GET)
-
 
289
	public ResponseEntity<?> getSchemesJson(HttpServletRequest request,
-
 
290
			@RequestParam(name = "offset", defaultValue = "0") int offset,
269
	public ResponseEntity<?> getSchemesJson(HttpServletRequest request, @RequestParam(name = "offset", defaultValue = "0") int offset, @RequestParam(name = "limit", defaultValue = "10") int limit, Model model) throws ProfitMandiBusinessException{
291
			@RequestParam(name = "limit", defaultValue = "10") int limit, Model model)
-
 
292
			throws ProfitMandiBusinessException {
270
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
293
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
271
		return responseSender.ok(schemeService.getSchemes(loginDetails.getRoleIds(), offset, limit));
294
		return responseSender.ok(schemeService.getSchemes(loginDetails.getRoleIds(), offset, limit));
272
	}
295
	}
273
 
296
 
274
	@RequestMapping(value = "/searchScheme")
297
	@RequestMapping(value = "/searchScheme")
Line 281... Line 304...
281
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
304
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
282
		List<Scheme> schemes = null;
305
		List<Scheme> schemes = null;
283
		long size = 0;
306
		long size = 0;
284
		if (!(searchTerm.equals("")) && searchItem.equals("")) {
307
		if (!(searchTerm.equals("")) && searchItem.equals("")) {
285
			schemes = schemeRepository.selectBySearchTerm(searchTerm, offset, limit);
308
			schemes = schemeRepository.selectBySearchTerm(searchTerm, offset, limit);
286
			if(!(schemes.size()==0))
309
			if (!(schemes.size() == 0)) {
287
			{
-
 
288
			size = schemeRepository.selectAllCount();
310
				size = schemeRepository.selectAllCount();
289
			LOGGER.info("schemes" + schemes);
311
				LOGGER.info("schemes" + schemes);
290
			model.addAttribute("schemes", schemes);
312
				model.addAttribute("schemes", schemes);
291
			model.addAttribute("start", offset + 1);
313
				model.addAttribute("start", offset + 1);
292
			model.addAttribute("size", size);
314
				model.addAttribute("size", size);
293
			model.addAttribute("searchTerm", searchTerm);
315
				model.addAttribute("searchTerm", searchTerm);
294
			model.addAttribute("searchItem", searchItem);
316
				model.addAttribute("searchItem", searchItem);
295
			if (schemes.size() < limit) {
317
				if (schemes.size() < limit) {
296
				model.addAttribute("end", offset + schemes.size());
318
					model.addAttribute("end", offset + schemes.size());
-
 
319
				} else {
-
 
320
					model.addAttribute("end", offset + limit);
-
 
321
				}
297
			} else {
322
			} else {
298
				model.addAttribute("end", offset + limit);
-
 
299
			}
-
 
300
			}
-
 
301
			else
-
 
302
			{
-
 
303
				throw new ProfitMandiBusinessException("SchemeId",searchTerm,"SchemeId Not Found");
323
				throw new ProfitMandiBusinessException("SchemeId", searchTerm, "SchemeId Not Found");
304
			}
324
			}
305
		} else if (!(searchItem.equals("")) && searchTerm.equals("")) {
325
		} else if (!(searchItem.equals("")) && searchTerm.equals("")) {
306
			List<Integer> schemeIds = schemeItemRepository.selectSchemeIdByItemId(Integer.parseInt(searchItem));
326
			List<Integer> schemeIds = schemeItemRepository.selectSchemeIdByItemId(Integer.parseInt(searchItem));
307
			if (!(schemeIds.size()==0)) {
327
			if (!(schemeIds.size() == 0)) {
308
				LOGGER.info("schemeIds in searchItemScheme" + schemeIds);
328
				LOGGER.info("schemeIds in searchItemScheme" + schemeIds);
309
				schemes = schemeRepository.selectBySchemeIds(schemeIds, offset, limit);
329
				schemes = schemeRepository.selectBySchemeIds(schemeIds, offset, limit);
310
				size = schemeIds.size();
330
				size = schemeIds.size();
311
				LOGGER.info("Size" + size);
331
				LOGGER.info("Size" + size);
312
				model.addAttribute("schemes", schemes);
332
				model.addAttribute("schemes", schemes);
Line 323... Line 343...
323
			} else {
343
			} else {
324
				throw new ProfitMandiBusinessException("SchemeIds", searchItem, "SchemeId Not Found");
344
				throw new ProfitMandiBusinessException("SchemeIds", searchItem, "SchemeId Not Found");
325
			}
345
			}
326
		} else {
346
		} else {
327
			Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
347
			Role role = roleRepository.selectByName(RoleType.FOFO_ADMIN.toString());
328
		    if (loginDetails.getRoleIds().contains(role.getId())) {
348
			if (loginDetails.getRoleIds().contains(role.getId())) {
329
				schemes = schemeRepository.selectAll(offset, limit);
349
				schemes = schemeRepository.selectAll(offset, limit);
330
				size = schemeRepository.selectAllCount();
350
				size = schemeRepository.selectAllCount();
331
			} else {
351
			} else {
332
				schemes = schemeRepository.selectActiveAll(offset, limit);
352
				schemes = schemeRepository.selectActiveAll(offset, limit);
333
				size = schemeRepository.selectAllActiveCount();
353
				size = schemeRepository.selectAllActiveCount();