新手求大佬指导,图一程序执行到红线框内就报空指针异常,然后我帮图二int改为Integer后,程序能执行导线红线框,此时“num就变成”null了,需要怎么赋值或者写一个什么判断不为空时候
图二
public ModelAndView goApplyIndexPage(HttpServletRequest request) {
ModelAndView view = new ModelAndView();
try {
view.addObject("module_id", request.getParameter("module_id"));
OrgStation orgStation = orgStationService.getStationByOrgId(super.getCurUserInfo().getCurrDeptId());
if (orgStation != null) {
view.addObject("stationId", orgStation.getStationId());
}
HttpSession session = request.getSession();
String dispatchType = (String) session.getAttribute("dispatchType");
List<DiaStationVisiting> list = visitingService.selectWaitHandleByUserId(super.getCurUserInfo().getUserid());
String sumKey = "";
initMap(request);
if (visitingMap != null && visitingMap.size() > 0) {
if (list.size() > 0 && list != null) {
String applyTime = list.get(0).getApplyTime();
Integer num = 0;
System.out.println(super.getCurUserInfo().getUserid() + "_" + applyTime);
System.out.println(visitingMap.get("min"));
num = visitingMap.get(super.getCurUserInfo().getUserid() + "_" + applyTime);
sumKey = super.getCurUserInfo().getUserid() + "_" + applyTime;
view.addObject("sortNum", 0);
sumKey = super.getCurUserInfo().getUserid() + "_" + list.get(0).getApplyTime();
int currentNum = visitingMap.get(sumKey);
int min = visitingMap.get("min") == null ? currentNum : visitingMap.get("min");
System.out.println(min);
String subCount = num - min == 0 ? "0": String.valueOf(num - min);
view.addObject("subCount", subCount);
} else {
view.addObject("subCount", visitingMap.get("max"));
}
} else {
List<DiaStationVisiting> listVisiting = visitingService.selectWaitHandle(super.getCurUserInfo().getCurrOrgId(), dispatchType, null);
for (int i = 0; i < listVisiting.size(); i++) {
int hasExit = listVisiting.get(i).getHasExit();
String key = hasExit == 0 ? listVisiting.get(i).getApplyInId() : listVisiting.get(i).getApplyOutId();
if (listVisiting.get(i).getSortNum() != null) {
int sortNum = listVisiting.get(i).getSortNum();
key += "_" + listVisiting.get(i).getApplyTime();
sumKey = key;
if (visitingMap.get("min") == null) {
visitingMap.put("min", sortNum);
}
visitingMap.put("max", sortNum);
visitingMap.put(key, sortNum);
}
}
if (listVisiting.size() == 0) {
view.addObject("subCount", "");
} else {
view.addObject("sortNum", visitingMap.get(sumKey));
int min = visitingMap.get("min") == null ? 0 : visitingMap.get("min");
int currentNum = visitingMap.get(sumKey) == null ? 0 : visitingMap.get(sumKey);
view.addObject("subCount", currentNum - min);
}
}
view.addObject("userId", super.getCurUserInfo().getUserid());
//view.addObject("count", visitingService.selectWaitHandle(super.getCurUserInfo().getCurrOrgId(), dispatchType, null).size());
view.setViewName(BaseController.BACKGROUND_PATH + "/dispatchlog/station_visiting/applyVisiting");
} catch (Exception e) {
e.printStackTrace();
}
return view;
}