尚硅谷大数据技术之电信客服
6) 新建类: CallLogHandler
package com.atguigu.controller;
import com.atguigu.bean.CallLog; import com.atguigu.bean.Contact; import com.atguigu.dao.CallLogDAO; import com.atguigu.dao.ContactDAO; import com.atguigu.entries.QueryInfo; import com.google.gson.Gson; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView;
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;
@Controller public class CallLogHandler { @RequestMapping("/queryContact") public ModelAndView query(Contact contact) { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); ContactDAO contactDAO = applicationContext.getBean(ContactDAO.class); HashMap<String, String> paramMap = new HashMap<>(); paramMap.put("id", String.valueOf(contact.getId())); List<Contact> contactList = contactDAO.getContactWithId(paramMap);
ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsp/queryContact"); modelAndView.addObject("contacts", contactList); return modelAndView; }
@RequestMapping("/queryContactList") public ModelAndView querylist() { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); ContactDAO contactDAO = applicationContext.getBean(ContactDAO.class); List<Contact> contactList = contactDAO.getContacts(); ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsp/queryContact"); modelAndView.addObject("contacts", contactList); return modelAndView; }
@RequestMapping("/queryCallLogList") public ModelAndView queryCallLog(QueryInfo queryInfo){ ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); CallLogDAO callLogDAO = applicationContext.getBean(CallLogDAO.class);
HashMap<String, String> paramMap = new HashMap<>(); paramMap.put("telephone", String.valueOf(queryInfo.getTelephone())); paramMap.put("year", String.valueOf(queryInfo.getYear())); paramMap.put("day", String.valueOf(queryInfo.getDay()));
List<CallLog> callLogList = callLogDAO.getCallLogList(paramMap);
Gson gson = new Gson(); String resultList = gson.toJson(callLogList);
ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsp/callLogList"); modelAndView.addObject("callLogList", resultList); return modelAndView; }
@RequestMapping("/queryCallLogList2") public String queryCallLog2(Model model, QueryInfo queryInfo){ ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); CallLogDAO callLogDAO = applicationContext.getBean(CallLogDAO.class);
HashMap<String, String> paramMap = new HashMap<>(); paramMap.put("telephone", String.valueOf(queryInfo.getTelephone())); paramMap.put("year", String.valueOf(queryInfo.getYear())); paramMap.put("day", String.valueOf(queryInfo.getDay()));
List<CallLog> callLogList = callLogDAO.getCallLogList(paramMap);
StringBuilder dateString = new StringBuilder(); StringBuilder countString = new StringBuilder(); StringBuilder durationString = new StringBuilder();
for(int i = 0; i < callLogList.size(); i++){ CallLog callLog = callLogList.get(i); if(Integer.valueOf(callLog.getMonth()) > 0){ dateString.append(callLog.getMonth()).append("月").append(","); countString.append(callLog.getCall_sum()).append(","); durationString.append(Float.valueOf(callLog.getCall_duration_sum()) / 60f).append(","); } } //1月,2月,3月,4月,5月,6月,7月,8月,9月,10月,11月,12月, model.addAttribute("telephone", callLogList.get(0).getTelephone()); model.addAttribute("name", callLogList.get(0).getName()); model.addAttribute("date", dateString.deleteCharAt(dateString.length() - 1)); model.addAttribute("count", countString.deleteCharAt(countString.length() - 1)); model.addAttribute("duration", durationString.deleteCharAt(durationString.length() - 1)); return "jsp/callLogListEchart"; }
} |