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

📄 meetingserviceimpl.java

📁 一段很有意义的源码,看了就知道,不信试一试啊!
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
package com.wondersgroup.businessmodule.meetingmanage.service.impl;

import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.StringTokenizer;

import org.apache.struts.action.DynaActionForm;

import com.wondersgroup.basemodule.holidaymanage.web.form.SelectCollectionBean;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeeting;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingInfo;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingInfoP;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingPermission;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingRoom;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingRoomInfo;
import com.wondersgroup.businessmodule.meetingmanage.bo.BusinessMeetingRoomP;
import com.wondersgroup.businessmodule.meetingmanage.bo.MeetingInfoPPK;
import com.wondersgroup.businessmodule.meetingmanage.bo.RoomPPK;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingDAO;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingInfoDAO;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingPermissionDAO;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingRoomDAO;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingRoomInfoDAO;
import com.wondersgroup.businessmodule.meetingmanage.dao.BusinessMeetingRoomPDAO;
import com.wondersgroup.businessmodule.meetingmanage.service.MeetingService;
import com.wondersgroup.businessmodule.meetingmanage.web.form.MeetingRequestListElement;
import com.wondersgroup.businessmodule.meetingmanage.web.form.PermissionListElement;
import com.wondersgroup.businessmodule.meetingmanage.web.form.RoomInfoListElement;
import com.wondersgroup.framework.core.bo.Page;

public class MeetingServiceImpl implements MeetingService {
	/*申明DAO*/
	private BusinessMeetingRoomDAO roomDAO;
	private BusinessMeetingRoomInfoDAO roomInfoDAO;
	private BusinessMeetingRoomPDAO roomPDAO;
	private BusinessMeetingDAO meetingDAO;
	private BusinessMeetingInfoDAO meetingInfoDAO;
	private BusinessMeetingPermissionDAO permissionDAO;	
	/*申明BO*/
	private BusinessMeetingRoom room;
	private BusinessMeetingRoomInfo roomInfo;
	private BusinessMeetingRoomP roomP;
	private BusinessMeeting meeting;
	private BusinessMeetingInfo meetingInfo;
	private BusinessMeetingInfoP meetingInfoP;
	private BusinessMeetingPermission permission;
	private RoomPPK roomPPK;
	private MeetingInfoPPK meetingInfoPPK;
	private Page page;
	private Timestamp timestamp;
	private StringTokenizer token;
	private PermissionListElement pElement;
	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#
	 * saveRoomInfo(java.lang.String, java.lang.String, int, java.lang.String, 
	 * java.lang.String, java.lang.String, java.lang.String, java.lang.String, 
	 * java.lang.String)
	 * 新建会议室操作
	 */
	public void saveRoomInfo(String name, String pos, int num, String person, 
			long personId, long status, String statusRes, String equ,
			String remark) {
		// TODO Auto-generated method stub
		roomInfo = new BusinessMeetingRoomInfo();
		roomP = new BusinessMeetingRoomP();
		roomPPK = new RoomPPK();
		room = new BusinessMeetingRoom();
		/*封装BusinessMeetingRoomInfo*/
		roomInfo.setName(name);
		roomInfo.setCapability(num);
		roomInfo.setEquipment(equ);
//		roomInfo.setOperateT();
//		roomInfo.setOperator(operator);
		roomInfo.setPerson(person);
		roomInfo.setPosition(pos);
		roomInfo.setRemark(remark);
		roomInfo.setStatus(status);
		roomInfo.setStatusR(statusRes);
		/*服务人员ID存在,封装并保存BusinessMeetingRoomP*/
		if(personId != 0){
			roomPPK.setPerson(personId);
			roomPPK.setRoomInfo(roomInfo);
			roomP.setPk(roomPPK);
			Set personRel = new HashSet();
			personRel.add(roomP);
			roomInfo.setPersonRel(personRel);
		}
		
//		room.setOperateT(operateT);
//		room.setOperator(operator)
		roomInfoDAO.save(roomInfo);
		room.setRemoved(0);
		room.setRoomInfo(roomInfo);
		roomDAO.save(room);
	}
	

	public List findAllFromRoom(){
		return roomDAO.findAll();
	}

	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#getRoomList(long, java.lang.String)
	 * 根据ID,会议室名字获取分页
	 */
	public Page getRoomList(long id, String name,int curPage,int pageSize) {
		// TODO Auto-generated method stub
		String hql  = "select room from BusinessMeetingRoom room left outer join room.roomInfo info " +
				"where room.removed=0";
		String hql2 = "select count(*) from BusinessMeetingRoom room left outer join room.roomInfo info " +
				"where room.removed=0";
		/*如果输入的查询条件不为空,添加名字查询条件*/
		if(!name.equals("")){
			System.out.println("---------------");
			hql += " and info.name like '%"+name+"%'";
			hql2 += " and info.name like '%"+name+"%'";
		}
		List list1;		//BO查询出来的List
		List<RoomInfoListElement>  list2 = new ArrayList<RoomInfoListElement>();		//封装VO后的List
		RoomInfoListElement vo;
		page = roomDAO.findByHQLWithPage(hql , curPage, pageSize, hql2);
		/*封装VO,解决延迟加载问题*/
		list1 = page.getResult();
		for(int i=0;i<list1.size();i++){
			room = (BusinessMeetingRoom)list1.get(i);
			vo = new RoomInfoListElement();
			vo.setRoomId(String.valueOf(room.getId()));
			vo.setName(room.getRoomInfo().getName());
			vo.setCap(String.valueOf(room.getRoomInfo().getCapability()));
			vo.setEq(room.getRoomInfo().getEquipment());
			vo.setPerson(room.getRoomInfo().getPerson());
			vo.setPos(room.getRoomInfo().getPosition());
			list2.add(vo);
		}
		if(list2 != null)
		page.setResult(list2);
		return page;
	}

	

	public void updateRoomInfo() {
		// TODO Auto-generated method stub
		
	}
	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#getRoomInfoById(long)
	 * 查看会议室
	 * 在getRoomInfoById方法中,直接封装DynaActionForm。
	 */
	public void getRoomInfoById(long id,DynaActionForm form) {
		// TODO Auto-generated method stub
		room = (BusinessMeetingRoom)roomDAO.load(id);
		form.set("roomId", String.valueOf(room.getId()));
		form.set("name", room.getRoomInfo().getName());
		form.set("position", room.getRoomInfo().getPosition());
		form.set("equ", room.getRoomInfo().getEquipment());
		form.set("person", room.getRoomInfo().getPerson());
		form.set("capability", String.valueOf(room.getRoomInfo().getCapability()));
		form.set("status", String.valueOf(room.getRoomInfo().getStatus()));
		form.set("status_r", room.getRoomInfo().getStatusR());
		form.set("remark", room.getRoomInfo().getRemark());
	}
	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#removeRoomInfo(long)
	 * 对会议室记录进行逻辑删除。
	 */
	public void removeRoomInfo(long id) {
		// TODO Auto-generated method stub
		room = (BusinessMeetingRoom)roomDAO.load(new Long(id));
		room.setRemoved(1);
		roomDAO.update(room);
	}
	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#
	 * updateRoomInfo(java.lang.String, java.lang.String, int, java.lang.String, 
	 * long, long, java.lang.String, java.lang.String, java.lang.String)
	 * 更新会议室记录
	 */
	public void updateRoomInfo(long roomId, String name, String pos, int num, String person, 
			long personId, long status, String statusRes, String equ, String remark) {
		// TODO Auto-generated method stub
		roomInfo = new BusinessMeetingRoomInfo();
		roomP = new BusinessMeetingRoomP();
		roomPPK = new RoomPPK();
		/*封装BusinessMeetingRoomInfo*/
		roomInfo.setName(name);
		roomInfo.setCapability(num);
		roomInfo.setEquipment(equ);
//		roomInfo.setOperateT();
//		roomInfo.setOperator(operator);
		roomInfo.setPerson(person);
		roomInfo.setPosition(pos);
		roomInfo.setRemark(remark);
		roomInfo.setStatus(status);
		roomInfo.setStatusR(statusRes);
		/*服务人员ID存在,封装并保存BusinessMeetingRoomP*/
		if(personId != 0){
			roomPPK.setPerson(personId);
			roomPPK.setRoomInfo(roomInfo);
			roomP.setPk(roomPPK);
			Set personRel = new HashSet();
			personRel.add(roomP);
			roomInfo.setPersonRel(personRel);
		}
		roomInfoDAO.save(roomInfo);
		room = (BusinessMeetingRoom)roomDAO.load(roomId);
		room.setRoomInfo(roomInfo);
		roomDAO.update(room);
	}
	
	/* (non-Javadoc)
	 * @see com.wondersgroup.businessmodule.meetingmanage.service.MeetingService#
	 * getMyRequestMeetingList(java.lang.String, java.lang.String, 
	 * java.lang.String, long, java.lang.String)
	 * 我的会议申请列表
	 */
	public Page getMyRequestMeetingList(String userId, String startTime, String endTime, 
			long roomId, String title, int curPage,int pageSize) {
		String hql  = "select meeting from BusinessMeeting meeting left outer join meeting.meetingInfo info " +
				"where (meeting.removed=0 or meeting.removed=3) and meeting.userId="+userId+" ";
		String hql2 = "select count(*) from BusinessMeeting meeting left outer join meeting.meetingInfo info " +
				"where (meeting.removed=0 or meeting.removed=3) and meeting.userId="+userId+" ";
		List list1;		//BO查询出来的List
		List<MeetingRequestListElement>  list2 = new ArrayList<MeetingRequestListElement>();		//封装VO后的List
		MeetingRequestListElement element;
		/*判断开始时间*/
		if(!startTime.equals("")){
			hql += "and days(info.startTime)>days('"+startTime+"') ";
			hql2 += "and days(info.startTime)>days('"+startTime+"') ";
		}
		/*判断结束时间*/
		if(!endTime.equals("")){
			hql += "and days(info.endTime)<days('"+endTime+"') ";
			hql2 += "and days(info.endTime)<days('"+endTime+"') ";
		}
		/*判断会议室查询条件*/
		if(roomId != 0){
			hql += "and info.room.id="+roomId+" ";
			hql2 += "and info.room.id="+roomId+" ";
		}
		/*会议标题*/
		if(!title.equals("")){
			hql += "and info.title like '%"+title+"%' ";
			hql2 += "and info.title like '%"+title+"%' ";
		}
		
		page = meetingDAO.findByHQLWithPage(hql, curPage, pageSize, hql2);
		list1 = page.getResult();
		/*如果查询出来的结果存在,进行封装为VO*/
		for(int i=0;i<list1.size();i++){
			meeting = (BusinessMeeting)list1.get(i);
			element = new MeetingRequestListElement();
			element.setTitle(meeting.getMeetingInfo().getTitle());
			if(meeting.getMeetingInfo().getEndTime()!=null)
				element.setEndTime(meeting.getMeetingInfo().getEndTime().toLocaleString());
			else
				element.setEndTime("--/--");
			element.setId(String.valueOf(meeting.getId()));
			element.setPerson(meeting.getMeetingInfo().getModerator());
			element.setPosition(meeting.getMeetingInfo().getRoom().getRoomInfo().getPosition());
			if(meeting.getMeetingInfo().getStartTime()!=null)
				element.setStartTime(meeting.getMeetingInfo().getStartTime().toLocaleString());
			else
				element.setStartTime("--/--");
			/*判断申请状态
			 * 标示符 
			 * 表示当前请求所处的状态:
			 * 				0 待发送、1 待审批、2审批未通过 3、审批通过 4、发布状态
			 */
			System.out.println(meeting.getStatus());
			if(meeting.getStatus()== 0) element.setStatus("待发送");
			else if(meeting.getStatus()== 1)	element.setStatus("待审批");
			else if(meeting.getStatus()== 2) element.setStatus("审批未通过");
			else if(meeting.getStatus()== 3) element.setStatus("审批通过");
			else element.setStatus("发布状态");
			

			list2.add(element);
		}
		/*重新将VO的List封装到Page里*/
		page.setResult(list2);

⌨️ 快捷键说明

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