package cn.ksource.web.controller.wechat.uwyw; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.util.DateUtil; import cn.ksource.core.util.JsonUtil; import cn.ksource.core.util.ParamsMapUtil; import cn.ksource.core.web.WebUtil; import cn.ksource.web.facade.rcxj.RcxjFacade; import cn.ksource.web.facade.wechat.ewyw.EwWorkplanFacade; @Controller @RequestMapping("/uwyw/uworkplan") public class UworkplanController { @Resource private EwWorkplanFacade workplanFacade; @Resource private RcxjFacade rcxjFacade; @RequestMapping("uWorkplan.html") public ModelAndView uWorkplan(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/uWorkplan"); return modelAndView; } /** * 跳转到所有日常巡检日历页面 * @param request * @param response */ @RequestMapping("uDailyCheck.html") public ModelAndView uDailyCheck(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/udailyCheck/uDailyCheck"); //查询当前年前五年和后五年 int year = DateUtil.getYear(); List years = new ArrayList(); for(int i=5; i>=0; i--) { int preYear = year-i; years.add(preYear); } for(int i=1; i<5; i++) { int nextYear = year+i; years.add(nextYear); } modelAndView.addObject("years", years); modelAndView.addObject("year", DateUtil.getToday("yyyy")); modelAndView.addObject("month", DateUtil.getToday("MM")); List months = new ArrayList(); for(int i=1; i<=12; i++) { if(i<10) { months.add("0"+i); } else { months.add(i); } } modelAndView.addObject("months", months); return modelAndView; } /** * 查询所有日常巡检报告日历 */ @RequestMapping("uDailyCal.html") public ModelAndView uDailyCal(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/udailyCheck/uDailyCal"); Map params = ParamsMapUtil.getParameterMap(request); String year = request.getParameter("year"); String month = request.getParameter("month"); String cusId = WebUtil.getUserWywCusId(request); params.put("cusId",cusId); Map result = workplanFacade.queryDailyCalandar(params); List list = (List)result.get("monthDays"); List weekDays = (List)result.get("weekDays"); modelAndView.addObject("calandars", list); modelAndView.addObject("weeks", weekDays); Long[] dates = DateUtil.getDateFromMonth(ConvertUtil.obj2Int(year),ConvertUtil.obj2Int(month)); params.put("beginDate", ConvertUtil.obj2StrBlank(dates[0])); params.put("endDate", ConvertUtil.obj2StrBlank(dates[1])); List reports = workplanFacade.queryReportByDate(params); if(null!=reports && reports.size()>0) { for(Map report : reports) { String patrol_date = ConvertUtil.obj2StrBlank(report.get("PATROL_DATE")); String week = DateUtil.getDayOfWeek4Chinese(patrol_date); report.put("week", week); } } modelAndView.addObject("reports", reports); return modelAndView; } @RequestMapping("getMonth.html") public void getMonth(HttpServletRequest request,HttpServletResponse response) { String yearMonth = request.getParameter("yearMonth"); String type = request.getParameter("type"); int num = 0; if(type.equals("1")) { num = -1; } else { num = 1; } long time = DateUtil.getDateAdd6FromMonth(ConvertUtil.obj2Long(yearMonth.replaceAll("-", "")),num); String year = DateUtil.format("yyyy", time); String month = DateUtil.format("MM", time); Map map = new HashMap(); map.put("year", year); map.put("month", month); map.put("yearMonth", year+"-"+month); WebUtil.write(response, JsonUtil.map2Json(map)); } /** * 通过日期查询日期的日常巡检报告的详情 */ @RequestMapping("udailyReport.html") public ModelAndView udailyReport(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView(); String beginDate = request.getParameter("date"); Map params = ParamsMapUtil.getParameterMap(request); params.put("beginDate", beginDate); String cusId = WebUtil.getUserWywCusId(request); params.put("cusId",cusId); List reports = workplanFacade.queryReportByDate(params); if(reports.size()==1) { Map report = reports.get(0); String reportId = ConvertUtil.obj2StrBlank(report.get("ID")); modelAndView = new ModelAndView("redirect:/uwyw/uworkplan/ureport.html?orderId="+reportId); } else { modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/udailyCheck/uAllReports"); modelAndView.addObject("date", beginDate); } return modelAndView; } /** * 查询列表数据 */ @RequestMapping("uAllReportList.html") public ModelAndView uAllReportList(HttpServletRequest request) { String beginDate = request.getParameter("date"); Map params = ParamsMapUtil.getParameterMap(request); params.put("beginDate", beginDate); String cusId = WebUtil.getUserWywCusId(request); params.put("cusId",cusId); List reports = workplanFacade.queryReportByDate(params); ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/udailyCheck/ureportList"); modelAndView.addObject("reports", reports); return modelAndView; } /** * 查看巡检报告 */ @RequestMapping("ureport.html") public ModelAndView ereport(Model model,HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uworkplan/udailyCheck/ureport"); String orderId = request.getParameter("orderId"); Map info = rcxjFacade.getRcxjById(orderId); List commonList = rcxjFacade.getCommonPatrolItem(info.get("cus_id").toString(), orderId); model.addAttribute("info", info); model.addAttribute("commonList", commonList); Map params = new HashMap(); params.put("orderId", orderId); params.put("cusId", ConvertUtil.obj2StrBlank(info.get("CUS_ID"))); params.put("subCusId", ConvertUtil.obj2StrBlank(info.get("SUB_CUS_ID"))); params.put("errflag", "1"); List ciList = rcxjFacade.getCiItemList(params); model.addAttribute("ciList", ciList); Map shInfo = rcxjFacade.getShInfoById(orderId); model.addAttribute("shInfo",shInfo); List linkOrderList = rcxjFacade.getLinkOrderList(orderId); model.addAttribute("linkOrderList",linkOrderList); return modelAndView; } }