⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 conferencemanageraction.java

📁 sso呵呵
💻 JAVA
📖 第 1 页 / 共 2 页
字号:

		if(meetinguseinfo == null || meetinguseinfo.getMeetinginfo() == null){
			MeetingInfo meetingInfo = new MeetingInfo();//会议室信息实体
			meetinguseinfo.setMeetinginfo(meetingInfo);
		}
		if(meetinguseinfo == null || meetinguseinfo.getUserInfo() == null){
			UserInfo userInfo = new UserInfo();//起草人实体
			meetinguseinfo.setUserInfo(userInfo);
		}
		if(meetinguseinfo == null || meetinguseinfo.getDept() == null){
			Dept dept = new Dept();//起草部门实体
			meetinguseinfo.setDept(dept);
		}
		meetinguseinfo.setMeetinginfoList(confManage.queryMeetingInfo());
		request.setAttribute("meetinguseinfo", meetinguseinfo);
		request.setAttribute("state", request.getParameter("state"));
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ConferenceManagerAction.editMeetingUseInfo()<<<<<<<<");
		}
		return mapping.findForward("MeetingUser");
	}
	/** 删除会议室预定信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward deleteMeetingUseInfo (ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ConferenceManagerAction.deleteMeetingUseInfo()>>>>>>");
		}
		//参数信息
		BaseActionForm baseForm =new BaseActionForm();
		baseForm.setId(request.getParameter("id"));
		baseForm.setUser_id(request.getParameter("user_id"));
		baseForm.setUser_name(request.getParameter("user_name"));
		baseForm.setDept_id(request.getParameter("dept_id"));
		baseForm.setDept_name(request.getParameter("dept_name"));
		baseForm.setDraft_time(request.getParameter("draft_time"));
		baseForm.setExigency(request.getParameter("exigency"));
		baseForm.setContact_phone(request.getParameter("contact_phone"));
		baseForm.setStart_time(request.getParameter("start_time"));
		baseForm.setEnd_time(request.getParameter("end_time"));
		baseForm.setPresent_num(request.getParameter("present_num"));
		baseForm.setMetting_id(request.getParameter("metting_id"));
		baseForm.setName(request.getParameter("name"));
		baseForm.setIs_medium(request.getParameter("is_medium"));
		baseForm.setHold_peoples(request.getParameter("hold_peoples"));
		baseForm.setMeeting_content(request.getParameter("meeting_content"));
		baseForm.setNote(request.getParameter("note"));
		//业务实体
		IConferenceManage confManage = new ConferenceManageImpl();
		//会议室使用信息实体
		MeetingUseInfoBean meetinguseinfo = new MeetingUseInfoBean();
		if(baseForm.getId() != null && !"".equals(baseForm.getId())){//删除信息
			confManage.deleteMeetingUseInfo(baseForm);
		}
		if(meetinguseinfo.getMeetinginfo() == null){
			MeetingInfo meetingInfo = new MeetingInfo();//会议室信息实体
			meetinguseinfo.setMeetinginfo(meetingInfo);
		}
		if(meetinguseinfo.getUserInfo() == null){
			UserInfo userInfo = new UserInfo();//起草人实体
			meetinguseinfo.setUserInfo(userInfo);
		}
		if(meetinguseinfo.getDept() == null){
			Dept dept = new Dept();//起草部门实体
			meetinguseinfo.setDept(dept);
		}
		meetinguseinfo.setMeetinginfoList(confManage.queryMeetingInfo());
		request.setAttribute("meetinguseinfo", meetinguseinfo);
		request.setAttribute("identity", request.getParameter("identity"));
		request.setAttribute("state", request.getParameter("state"));
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ConferenceManagerAction.deleteMeetingUseInfo()<<<<<<<<");
		}
		return mapping.findForward("MeetingUser");
	}
	/** Ajax操作
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward ajaxMeetingInfoQuery (ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ConferenceManagerAction.ajaxMeetingInfoQuery()>>>>>>");
		}
		//参数信息
		BaseActionForm baseForm =new BaseActionForm();
		baseForm.setState(request.getParameter("state"));
		baseForm.setName(request.getParameter("name"));
		baseForm.setStart_time(request.getParameter("start_time"));
		baseForm.setEnd_time(request.getParameter("end_time"));
		baseForm.setMetting_id(request.getParameter("metting_id"));
		//业务逻辑实体
		IConferenceManage confManage = new ConferenceManageImpl();
		//会议室预定实体bean
		MeetingUseInfoBean meetingUseInfo = new MeetingUseInfoBean();
		if(baseForm.getState() == null || "".equals(baseForm.getState())){//新增会议室信息时 判断是否该会议室已经存在
			meetingUseInfo.setMeetinginfo(confManage.queryMeetingInfoByNameExpId(baseForm));
		}else{
			if("1".equals(baseForm.getState())){//根据id查询会议室预定信息  ---选择会议室时 自动带出容纳人数和是否支持电视电话会议
				meetingUseInfo.setMeetinginfo(confManage.queryMeetingInfoById(baseForm));
			}else if("2".equals(baseForm.getState())){//判断在该时间段内是否已经预定了该会议室
				meetingUseInfo = confManage.queryMeetingUseInfoByParams(baseForm);
			}
		}
		if(meetingUseInfo.getMeetinginfo() == null){
			MeetingInfo meetingInfo = new MeetingInfo();//会议室实体
			meetingUseInfo.setMeetinginfo(meetingInfo);
		}

//		 设置返回内容的类型
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/xml;charset=UTF-8");
		response.setHeader("Cache-Control", "no-cache");
		PrintWriter out = response.getWriter();
		out.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
		out.println("<response>");
		out.println("<id>"+meetingUseInfo.getId()+"</id>");
		out.println("<metting_id>"+meetingUseInfo.getMeetinginfo().getId()+"</metting_id>");
		out.println("<name>"+meetingUseInfo.getMeetinginfo().getName()+"</name>");
		out.println("<is_medium>"+meetingUseInfo.getMeetinginfo().getIs_medium()+"</is_medium>");
		out.println("<hold_peoples>"+meetingUseInfo.getMeetinginfo().getHold_peoples()+"</hold_peoples>");
		out.println("<equipment>"+meetingUseInfo.getMeetinginfo().getEquipment()+"</equipment>");
		out.println("<metting_note>"+meetingUseInfo.getMeetinginfo().getNote()+"</metting_note>");
		out.println("</response>");
		out.flush();
		out.close();
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ConferenceManagerAction.ajaxMeetingInfoQuery()<<<<<<<<");
		}
		return null;
	}




/*********************************************************************************************************************/

	public ActionForward initpage(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
//		(">>>> ConferenceManagerAction.pageInit()");
		//得到会议时间的工具
		GregorianCalendar grca = new GregorianCalendar();
		Date baseDate = new Date();
		grca.setTime(baseDate);
		grca.add(5, +14);
		// 1 得到会议管理服务的接口
		IConferenceManage service = (IConferenceManage)new ConferenceManageImpl();
		// 2 得到所有会议室
		List meets = service.getMeetingAll();
//		(">><< meets:" + meets);
		// 3 得到未来15天会议室使用记录
		List meetInfos = buildMeetingUseInfos(baseDate ,grca.getTime());
//		(">><< meetInfos:" + meetInfos);
//		(">><< meeting size: " + meetInfos.size());
		request.setAttribute("Meetings", meets);
		request.setAttribute("Datas", meetInfos);
		request.setAttribute("DataSize", new Integer(meetInfos == null ? 0 : meetInfos.size()));
//		("<<<< ConferenceManagerAction.pageInit()");
		return mapping.findForward("TOVIEWPAGE");
	}


	public ActionForward searchMeetingUse(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
//		(">>>> ConferenceManagerAction.searchMeetingUse()");
		// 1 得到开始和结束时间的字符串
		String startDate = request.getParameter("startDate");
		String endDate = request.getParameter("endDate");

		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
		List meets = null;
		List meetInfos = null;
		try {
			//得到开始和结束时间
			Date start = dateFormat.parse(startDate);
			Date end = dateFormat.parse(endDate);
			// 2 得到会议管理服务的接口
			IConferenceManage service = (IConferenceManage)new ConferenceManageImpl();
			// 3 得到所有会议室
			meets = service.getMeetingAll();
			// 4 得到指定时间段内的会议室使用记录
			meetInfos = buildMeetingUseInfos(start , end);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

//		("<<<< ConferenceManagerAction.searchMeetingUse()");
		request.setAttribute("Meetings", meets);
		request.setAttribute("Datas", meetInfos);
		request.setAttribute("DataSize", new Integer(meetInfos == null ? 0 : meetInfos.size()));
		return mapping.findForward("TOVIEWPAGE");
	}

	public ActionForward meetingUse(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
//		(">>>> ConferenceManagerAction.meetingUse()");
		// 1 得到会议室ID 和 日期
		String meetID = request.getParameter("meetingID");
		String s_date = request.getParameter("date");
//		(">><< meetID:" + meetID);
//		(">><< s_date:" + s_date);
		MeetingInfo meeting = null;
		List meetingUseInfos = null;
		// 2 得到会议管理服务的接口
		IConferenceManage service = (IConferenceManage)new ConferenceManageImpl();
		// 3 根据 会议室ID 和 日期 得到详细列表
		meetingUseInfos = service.getMeetingUseInfo(meetID, s_date);
		// 4 根据 会议室ID 得到一个完整的会议室信息
		meeting = service.getMeetingByID(meetID);

		// 5 返回到显示某个会议室下会议预定的详细信息
		request.setAttribute("Meeting", meeting);
		request.setAttribute("MeetingUseInfos", meetingUseInfos);
//		("<<<< ConferenceManagerAction.meetingUse()");
		return mapping.findForward("TOSHOWUSEINFOPAGE");
	}

	/**
	 *
	 * @param statrDate 开始日期
	 * @param amount	个数  也就是开始时间到结束时间的间距
	 * @return
	 */
	private List buildMeetingUseInfos(Date statrDate, Date endDate){
//		(">>>> ConferenceManagerAction.buildMeetingUseInfos()");
		List result = null;		//结果集
		List meets = null;		//会议室集合
		String statrTime = null;		//会议时间
		String entTime = null;	//结束时间
		// 1 得到会议管理服务的接口
		IConferenceManage service = (IConferenceManage)new ConferenceManageImpl();
		// 2 得到所有会议室
		meets = service.getMeetingAll();
		// 3 以 yyyy-MM-dd 解析日期
		GregorianCalendar grca = new GregorianCalendar();					// 标准日历系统
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");	// 日期转化工具
/*		// 3.1 得到 结束时间的字符串
		grca.setTime(endDate);
		entTime = dateFormat.format(grca.getTime());
*/		// 3.2 设置到开始时间
		grca.setTime(statrDate);


		//一天的相对毫秒的时长
		long DAY = 24L * 60L * 60L * 1000L;
		//得到时间间隔
		int amount = (int) ((endDate.getTime() - statrDate.getTime())/DAY) + 1;

		if(meets != null){
			result = new ArrayList();
			// 4 封装信息
			for(int i=0; i<amount; i++){

				Map item = new HashMap();			// list 内的每一个元素
				List meetUses = new ArrayList(); 	// 会议室使用信息
				// 4.1 如果不是第一次就+1 :因为如果第一次+1就不是传进来的时间了,是后一天,这就少了天,
				if(i != 0){
					grca.add(5, +1); 			//天数+1
				}
				// 4.2 解析出查询的时间
				statrTime = dateFormat.format(grca.getTime());
				entTime = statrTime + " 23:59:59";
				// 4.3 以  |日期:会议室使用信息|  组织一条显示数据
				item.put(statrTime, meetUses);
				// 4.4 向会议室使用信息集合内添加数据
				for(int index=0; index<meets.size(); index++){
					MeetingInfo meeting = (MeetingInfo)meets.get(index);
					// 4.4.1 得到当前会议室 date 时间内是否被使用
					boolean use = service.isMeetingUse(meeting.getId(), statrTime, entTime);

//					(">><< ID="+meeting.getId() + "   是否使用:" + use +" statrTime:" + statrTime + " entTime:" + entTime);
					// 4.4.2 添加到会议室使用信息集合内
					meetUses.add(new Boolean(use));
				}
				// 4.5 添加一条记录到结果集中去
				result.add(item);
			}

		}
//		("<<<< ConferenceManagerAction.buildMeetingUseInfos()");
		return result;
	}
	/**
	 * 方法描述 删除一个会议室管理信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward delMeetingUse(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
//		(">>>> delMeetingUse:");
		String meetUseID = request.getParameter("meetUseID");
//		(">><< meetUseID:" + meetUseID);
		//参数
		BaseActionForm baseForm =new BaseActionForm();
		baseForm.setId(meetUseID);
		//业务逻辑实体
		IConferenceManage confManage = new ConferenceManageImpl();
		//删除信息
		confManage.deleteMeetingUseInfo(baseForm);
//		("<<<< delMeetingUse:");
		return mapping.findForward("VIEWMEETINGUSEINFO");
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -