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

📄 groupsmanagebean.java.svn-base

📁 利用sip协议
💻 SVN-BASE
字号:
package com.xunlei.callcenter.web.model;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ServiceLoader;

import javax.faces.model.SelectItem;

import com.xunlei.callcenter.plugin.UsertogroupPluginable;
import com.xunlei.callcenter.util.FileUtil;
import com.xunlei.callcenter.vo.Groups;
import com.xunlei.common.util.PagedFliper;
import com.xunlei.common.util.StringUtil;
import com.xunlei.common.util.XLRuntimeException;
import com.xunlei.common.vo.Users;

public class GroupsManageBean extends BaseManagedBean {
	public static final String FUNCTION_NO = "Groups";
	private int flag = 0;
	private String in2out_seqids;
	private String out2in_seqids;
	private String currentgroupid = this.findParameter("groupid");;

	public GroupsManageBean() {
		super();
	}

	public SelectItem[] getAllGroups() {
		List<Groups> list = facade.getAllGroups();
		if (list != null) {
			SelectItem[] items = new SelectItem[list.size()];
			int index = -1;
			for (Groups group : list) {
				items[++index] = new SelectItem(group.getGroupid(), group
						.getGroupidname());
			}
			return items;
		} else {
			SelectItem[] items = new SelectItem[1];
			items[0] = new SelectItem("-1", "");
			return items;
		}
	}

	public List<Users> getInUsers() {
		
		if (currentgroupid == null)
			return new ArrayList<Users>();
		else
			return facade.getAllUsersInGroups(currentgroupid);
	}


	public List<Users> getOutUsers() {
		
		if (currentgroupid == null)
			return new ArrayList<Users>();
		else
			return facade.getAllUsersNotInGroups(currentgroupid);
	}

	public String forin2out() {
		authenticateEdit();
		String strseqids[] = getIn2out_seqids().split("\\|");
		long seqids[] = new long[strseqids.length];
		for (int i = 0; i < strseqids.length; i++)
			seqids[i] = Long.valueOf(strseqids[i]).longValue();
	
		Groups groups = facade.getGroupsByGroupId(currentgroupid);
		try {
			ServiceLoader loader = ServiceLoader
					.load(UsertogroupPluginable.class);
			for (Iterator it = loader.iterator(); it.hasNext(); ((UsertogroupPluginable) it
					.next()).out(groups, seqids))
				;
		} catch (Exception ex) {
			alertJS(ex.getMessage());
			return "";
		}
		facade.removeUsersfromUsertogroups(groups, seqids);
		this.removeConfFile(groups, seqids);
		return "";
	}

	public String forout2in() {
		authenticateEdit();
		String strseqids[] = getOut2in_seqids().split("\\|");
		long seqids[] = new long[strseqids.length];
		for (int i = 0; i < strseqids.length; i++)
			seqids[i] = Long.valueOf(strseqids[i]).longValue();
		
		Groups groups = facade.getGroupsByGroupId(currentgroupid);
		try {
			ServiceLoader loader = ServiceLoader
					.load(UsertogroupPluginable.class);
			for (Iterator it = loader.iterator(); it.hasNext(); ((UsertogroupPluginable) it
					.next()).in(groups, seqids))
				;
		} catch (Exception ex) {
			alertJS(ex.getMessage());
			return "";
		}
		facade.addUsersInGroups(groups, seqids);
		this.addConfFile(groups, seqids);
		return "";

	}

	public void addConfFile(Groups groups, long... seqids) {
		if (FileUtil.isExistsConent(FileUtil.QUEUE_FILE_NAME, "["
				+ groups.getGroupidname())) {
			for (int k = 0; k < seqids.length; k++) {
				Users user = commfacade.getUsersById(seqids[k]);
				String account = user.getUserlogno();
				String passwd = user.getDecodePassword();
				FileUtil.generateAddQueueConfFile(groups.getGroupidname(),
						account);
				FileUtil.generateAddSipConfFile(account, passwd);
			}
		}

	}

	public void removeConfFile(Groups groups, long... seqids) {
		if (FileUtil.isExistsConent(FileUtil.QUEUE_FILE_NAME, "["
				+ groups.getGroupidname())) {
			for (int k = 0; k < seqids.length; k++) {
				Users user = commfacade.getUsersById(seqids[k]);
				String account = user.getUserlogno();
				FileUtil.generateDelQueueConfFile(groups.getGroupidname(),
						account);
				FileUtil.generateDelSipConfFile(account);
			}
		}
	}

	public String getIn2out_seqids() {
		return in2out_seqids;
	}

	public void setIn2out_seqids(String in2out) {
		in2out_seqids = in2out;
	}

	public String getOut2in_seqids() {
		return out2in_seqids;
	}

	public void setOut2in_seqids(String out2in) {
		out2in_seqids = out2in;
	}

	public String getCurrentgroupid() {
		return currentgroupid;
	}

	public void setCurrentgroupid(String currentgroupid) {
		if (currentgroupid != null)
			this.currentgroupid = currentgroupid;
	}

	/**
	 * 获取有权限的菜单树
	 */
	public String getMenusJsTree() {

		StringBuilder sb = new StringBuilder(1000);
		sb.append("d = new dTree('d');\n");
		for (Groups group : facade.getAllGroups()) {
			{
				if (StringUtil.isNotEmpty(group.getGroupid())) {
					sb.append("d.add(");
					sb.append(Integer.parseInt(group.getGroupid()));
					sb.append(",");
					sb.append(Integer.parseInt(group.getPgroupidid()));
					sb.append(",'");
					sb.append(group.getGroupidname());
					sb.append("','");
					sb.append("groupsedit.jsf?groupid=");
					sb.append(group.getGroupid());
					sb.append("');\n");
				}
			}
		}
		sb.append("d.config.target = 'browserrightFrame';\n");
		sb.append("d.icon.root = '../img/folder.gif';\n");
		sb.append("document.write(d);");
		return sb.toString();
	}

	public int getFlag() {
		return flag;
	}

	public void setFlag(int flag) {
		this.flag = flag;
	}

	public Groups getGroupsbyid() {
		Groups group = this.findBean(Groups.class);
		String groupid = findParameter("groupid");

		if (groupid != null) {
			group = facade.getGroupsByGroupId(groupid);
			mergeBean(facade.getGroupsByGroupId(groupid));
			return group;
		} else {

			mergeBean(group);
			return group;
		}

	}

	public String save() throws Exception {
		Groups group = this.findBean(Groups.class);
		group.setEditby(this.currentUserLogno());
		group.setEdittime(now());
		if (group.getSeqid() > 0L) { // 修改
			authenticateEdit();
			facade.updateGroups(group);
			this.flag = 1;
			return "";
		} else {
			authenticateAdd();
			facade.insertGroups(group);
			this.flag = 1;
			return "";
		}
	}

	public String delete() throws Exception {
		authenticateDel();
		Groups group = this.findBean(Groups.class);
		facade.removeGroups(group.getSeqid());
		group.setSeqid(0L);
		group.setPgroupidid("00");
		group.setGroupidname("");
		group.setRemark("");
		group.setEditby("");
		group.setEdittime("");
		mergeBean(group);
		this.flag = 1;
		return "";
	}

	public String add() {
		Groups group = this.findBean(Groups.class);
		group.setSeqid(0L);
		group.setPgroupidid(group.getGroupid());
		group.setGroupidname("");
		group.setRemark("");
		mergeBean(group);

		return "";
	}

	

}

⌨️ 快捷键说明

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