Rev 30426 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
package com.spice.profitmandi.web.controller;import com.spice.profitmandi.common.model.CustomRetailer;import com.spice.profitmandi.common.model.SendMessageModel;import com.spice.profitmandi.common.util.Utils;import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;import com.spice.profitmandi.service.user.RetailerService;import com.spice.profitmandi.web.util.MVCResponseSender;import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.transaction.annotation.Transactional;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import javax.servlet.http.HttpServletRequest;import java.util.List;import java.util.Map;import java.util.stream.Collectors;@Controller@Transactional(rollbackFor = Throwable.class)public class MessageController {@AutowiredFofoStoreRepository fofoStoreRepository;@Autowiredprivate RetailerService retailerService;@Autowiredprivate MVCResponseSender mvcResponseSender;private static final Logger Logger = LogManager.getLogger(NotificationController.class);@RequestMapping(value = "/sendMessagingPanel", method = RequestMethod.GET)public String sendMessagingPanel(HttpServletRequest request, Model model) {List<Integer> fofoIds = fofoStoreRepository.selectAll().stream().map(x -> x.getId()).collect(Collectors.toList());Map<Integer, CustomRetailer> customRetailerMap = retailerService.getAllFofoRetailers();Map<Integer, CustomRetailer> customRetailersMap = fofoIds.stream().map(x -> customRetailerMap.get(x)).filter(x -> x != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(x -> x.getPartnerId(), x -> x));model.addAttribute("customRetailersMap", customRetailersMap);return "send-message";}@RequestMapping(value = "/sendMessage", method = RequestMethod.POST)public String sendMessage(HttpServletRequest request, @RequestBody SendMessageModel sendMessageModel, Model model)throws Exception {List<Integer> retailerIds = sendMessageModel.getUserIds();Map<Integer, CustomRetailer> customRetailerMap = retailerService.getAllFofoRetailers();Map<Integer, CustomRetailer> customRetailersMap = retailerIds.stream().map(x -> customRetailerMap.get(x)).filter(x -> x != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(x -> x.getPartnerId(), x -> x));for (Integer retailerId : retailerIds) {CustomRetailer customRetailer = customRetailersMap.get(retailerId);String phone = customRetailer.getMobileNumber();String msg = java.text.MessageFormat.format("{0}", sendMessageModel.getMessageText());Utils.sendSms(msg, phone);}model.addAttribute("response1", mvcResponseSender.createResponseString(true));return "response";}}