package com.tenwa.orginfo; import jbo.sys.ORG_INFO; import jbo.sys.USER_INFO; import jbo.sys.USER_ROLE; import com.amarsoft.app.lc.util.DateAssistant; import com.amarsoft.are.jbo.BizObject; import com.amarsoft.are.jbo.BizObjectManager; import com.amarsoft.are.jbo.JBOFactory; import com.amarsoft.are.jbo.JBOTransaction; import com.amarsoft.context.ASUser; public class ChannelCRMAction { public String UserId; public String CurUserID; public String parentOrgId; public String cancelChannelManagerRole(JBOTransaction tx) throws Exception { String sql="delete from O WHERE USERID=:USERID AND ROLEID=400"; JBOFactory.createBizObjectQuery(USER_ROLE.CLASS_NAME,sql).setParameter("USERID",this.getUserId()).executeUpdate(); return "SUCCESS"; } public String setChannelManagerRole(JBOTransaction tx) throws Exception { ASUser curUser= new ASUser(this.getCurUserID()); //初始化渠道的用户角色 String sql="select v.count(*) v.cnumber from O where o.userid=:userid and o.roleid=400"; BizObjectManager userRoleManager = JBOFactory.getFactory().getManager("jbo.sys.USER_ROLE"); tx.join(userRoleManager); BizObject userRoleObject=userRoleManager.createQuery(sql).setParameter("userid",this.getUserId()).getSingleResult(false); if(userRoleObject.getAttribute("cnumber").getInt()>0){ return "该用户已是管理员不能再设置"; }else{ BizObject userRole=userRoleManager.newObject(); userRole.setAttributeValue("USERID",this.getUserId()); userRole.setAttributeValue("ROLEID","400"); //渠道下面的管理员 userRole.setAttributeValue("GRANTOR",curUser.getUserID()); userRole.setAttributeValue("BEGINTIME", DateAssistant.getTodayNow()); userRole.setAttributeValue("STATUS","1"); userRole.setAttributeValue("INPUTUSER",curUser.getUserID()); userRole.setAttributeValue("INPUTORG",curUser.getOrgID()); userRole.setAttributeValue("INPUTTIME", DateAssistant.getTodayNow()); userRoleManager.saveObject(userRole); return "SUCCESS"; } } public String getChildernSize(JBOTransaction tx) throws Exception { String sql="select v.count(*) v.cnumber from O where O.RELATIVEORGID like '"+this.getParentOrgId()+"%'"; BizObject orgNumber= JBOFactory.getBizObjectManager(ORG_INFO.CLASS_NAME).createQuery(sql) .getSingleResult(false); sql="select v.count(*) v.cnumber from O where O.BELONGORG like '"+this.getParentOrgId()+"%'"; BizObject userNumber= JBOFactory.getBizObjectManager(USER_INFO.CLASS_NAME).createQuery(sql) .getSingleResult(false); return (orgNumber.getAttribute("cnumber").getInt()+userNumber.getAttribute("cnumber").getInt())+""; } public String getUserId() { return UserId; } public void setUserId(String userId) { UserId = userId; } public String getCurUserID() { return CurUserID; } public void setCurUserID(String curUserID) { CurUserID = curUserID; } public String getParentOrgId() { return parentOrgId; } public void setParentOrgId(String parentOrgId) { this.parentOrgId = parentOrgId; } }