📄 wfworker.java
字号:
while (it.hasNext()) {
actVo = (WfInsActivityVo) it.next();
rcol.add(actVo);
}
col.clear();
}
}
closeDAO();
return rcol;
}
public WfInsActivityVo rtvInsActivity(long instanceId, String activityName){
WfInsActivityVo actVo = null;
getDAO();
if (instanceId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInsActivityVo.class);
m_params.setIsSingle(true);
m_params.setFilter("Instance_Id = :m_Instance_Id and Activity_Name = :m_Activity_Name");
//m_params.setFilter("Activity_Name = :m_Activity_Name");
m_params.setParameter("m_Instance_Id", new Long(instanceId));
m_params.setParameter("m_Activity_Name", activityName);
Object obj = DAO.findData(m_params);
if(obj != null){
actVo = (WfInsActivityVo)obj;
}
}
closeDAO();
return actVo;
}
//
private int completeActivity(int instanceId, String activity) {
int r = -1;
getDAO();
WfInsActivityVo actVo = null;
if (instanceId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInsActivityVo.class);
m_params.setFilter("Instance_Id = :m_Instance_Id and Activity_Name = :m_Activity_Name");
//m_params.setFilter("Activity_Name = :m_Activity_Name");
m_params.setParameter("m_Instance_Id", new Long(instanceId));
m_params.setParameter("m_Activity_Name", activity);
m_params.setIsSingle(true);
actVo = (WfInsActivityVo) DAO.findData(m_params);
actVo.setStatus("completed");
actVo.setAct_Count(actVo.getAct_Count() + 1);
if (DAO.updateData(actVo)) {
DAO.Commit();
Long L = new Long(actVo.getAct_Count());
L.intValue();
r = L.intValue();
} else {
DAO.Rollback();
}
}
closeDAO();
return r;
}
/*
* 2007-04-30
*/
public Collection rtvInsOperations(long instanceId) {
Collection rcol = null;
getDAO();
WfInsOperationVo oprVo = null;
if (instanceId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInsOperationVo.class);
m_params.setFilter("Instance_Id = :m_Instance_Id");
m_params.setParameter("m_Instance_Id", new Long(instanceId));
Collection col = (Collection) DAO.findData(m_params);
if (col != null) {
rcol = new ArrayList();
Iterator it = col.iterator();
while (it.hasNext()) {
oprVo = (WfInsOperationVo) it.next();
rcol.add(oprVo);
}
col.clear();
}
}
closeDAO();
return rcol;
}
public Collection rtvInsAttributes(long instanceId) {
Collection rcol = null;
getDAO();
WfInsAttributeVo attVo = null;
if (instanceId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInsAttributeVo.class);
m_params.setFilter("Instance_Id = :m_Instance_Id");
m_params.setParameter("m_Instance_Id", new Long(instanceId));
Collection col = (Collection) DAO.findData(m_params);
if (col != null) {
rcol = new ArrayList();
Iterator it = col.iterator();
while (it.hasNext()) {
attVo = (WfInsAttributeVo) it.next();
rcol.add(attVo);
}
col.clear();
}
}
closeDAO();
return rcol;
}
public WfInsAttributeVo rtvInsAttribute(long instanceId, String attName) {
getDAO();
WfInsAttributeVo attVo = null;
if (instanceId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setIsSingle(true);
m_params.setCandiateClass(WfInsAttributeVo.class);
m_params
.setFilter("Instance_Id = :m_Instance_Id and Attribute_Name = :m_Attribute_Name");
m_params.setParameter("m_Instance_Id", new Long(instanceId));
m_params.setParameter("m_Attribute_Name", attName);
Object obj = DAO.findData(m_params);
if (obj != null) {
attVo = (WfInsAttributeVo) obj;
}
}
closeDAO();
return attVo;
}
//
private int updateAttributes(int instanceId, Collection vaues) {
int r = 0;
return r;
}
/*
*/
public boolean exeOperation(WfInsOperationVo insOperation, boolean snFlag,
boolean syncFlag) {
//
boolean r = false;
getDAO();
if (insOperation == null)
return false;
WfInsOperationVo insOpVo = insOperation;
//
if (!snFlag) {
SequenceMgr seqMgr = new SequenceMgr();
long opSN = seqMgr.newInsOperId();
insOpVo.setSn(opSN);
}
long insId = insOpVo.getInstance_Id();
if (insId > 0) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInsOperationVo.class);
// if(DAO.updateData(insOpVo))
if (DAO.insertData(insOpVo)) // 2007-06-06 fix the big bug
{
DAO.Commit();
r = true;
} else {
DAO.Rollback();
r = false;
}
}
//
if (r && syncFlag)
syncInstanceStatus(insOpVo.getInstance_Id());
closeDAO();
return r;
}
//
public Collection rtvWorkListByUser(String userName) {
Collection col = null;
return col;
}
public Collection rtvWorkListByUser(String userName, Date beginDate, Date endDate) {
//modefied by hujun 2007-08!!!
Collection col = null;
ArrayList rcol = null;
getDAO();
WfWorkItemVo wfItemVo = null;
String cmdString = "by_date"
+ "$$$" + date2Str(beginDate)
+ "$$$" + date2Str(endDate)
+ "$$$" + userName
+ "$$$user";
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfWorkItemVo.class);
m_params.setParameter("cmdStr", cmdString);
m_params.setParameter("sepStr", "$$$");
col = (Collection) DAO.findData(m_params);
if (col != null) {
rcol = new ArrayList();
Iterator it = col.iterator();
while (it.hasNext()) {
wfItemVo = (WfWorkItemVo) it.next();
rcol.add(wfItemVo);
}
col.clear();
}
closeDAO();
return rcol;
}
public Collection rtvWorkListByRole(String roleName) {
Collection col = null;
return col;
}
public Collection rtvWorkListByRole(String roleName, Date beginDate, Date endDate) {
Collection col = null;
ArrayList rcol = null;
getDAO();
WfWorkItemVo wfItemVo = null;
String cmdString = "by_date"
+ "$$$" + date2Str(beginDate)
+ "$$$" + date2Str(endDate)
+ "$$$" + roleName
+ "$$$user";
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfWorkItemVo.class);
m_params.setParameter("cmdStr", cmdString);
m_params.setParameter("sepStr", "$$$");
col = (Collection) DAO.findData(m_params);
if (col != null) {
rcol = new ArrayList();
Iterator it = col.iterator();
while (it.hasNext()) {
wfItemVo = (WfWorkItemVo) it.next();
rcol.add(wfItemVo);
}
col.clear();
}
closeDAO();
return rcol;
}
public String getUserAccount() {
return userAccount;
}
public void setUserAccount(String userAccount) {
this.userAccount = userAccount;
}
public void setDsName(String dsName) {
this.dsName = dsName;
}
public PbosDAO getDAO() {
if (this.DAO == null) {
if (dsName != null) {
ConnectParameters.DataSource = dsName;
}
this.DAO = DAOFactory.getPbosDAO();
}
return this.DAO;
}
public void setDAO(PbosDAO dao) {
this.DAO = dao;
}
public void closeDAO() {
if (this.DAO != null) {
this.DAO.closeDAO();
this.DAO = null;
}
}
//2007-11-15 add by hujun
public WfInstanceVo rtvInstance(Long instance_id) {
getDAO();
WfInstanceVo insVo = null;
if (instance_id != null) {
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setCandiateClass(WfInstanceVo.class);
m_params.setFilter("Instance_Id = :m_Instance_Id");
m_params.setParameter("m_Instance_Id", instance_id);
Collection col = (Collection) DAO.findData(m_params);
if (col != null) {
Iterator it = col.iterator();
if (it.hasNext())
insVo = (WfInstanceVo) it.next();
col.clear();
}
}
closeDAO();
return insVo;
}
public Long chkUserActivity(String userName, String modelName, String actName){
//检查是否直接授权,如不是直接授权,检查是否通过, 在存储过程中完成
Long r = null;
getDAO();
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params
.setProcedure("{call pmoswf.ChkUserActPro(:m_userName, :m_modName, :m_actName, :m_result) }");
m_params.setParameter("m_userName", userName);
m_params.setParameter("m_modName", modelName);
m_params.setParameter("m_actName", actName);
m_params.setParameter("m_result", Long.class);
boolean cr = DAO.callStoredProcedure(m_params);
if (cr) {
r = (Long) m_params.getParameter("m_result");
}
closeDAO();
return r;
}
public Long chkUserActivityByInsId(String userName, Long InsId, String actName){
//检查是否直接授权,如不是直接授权,检查是否通过, 在存储过程中完成
Long r = null;
getDAO();
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params
.setProcedure("{call pmoswf.chkuseractbyinsidpro(:m_userName, :m_insId, :m_actName, :m_result) }");
m_params.setParameter("m_userName", userName);
m_params.setParameter("m_insId", new Long(InsId.longValue()));
m_params.setParameter("m_actName", actName);
m_params.setParameter("m_result", Long.class);
boolean cr = DAO.callStoredProcedure(m_params);
if (cr) {
r = (Long) m_params.getParameter("m_result");
}
closeDAO();
return r;
}
//
public Long deleteInstance(Long InsId)
{ //删除流程实例 2008-01-22 增加
Long r = null;
getDAO();
DAOParameter m_params = DAOFactory.getDAOParameter();
m_params.setProcedure("{call pmoswf.delete_instance(:m_insId, :m_result) }");
m_params.setParameter("m_insId", new Long(InsId.longValue()));
m_params.setParameter("m_result", Long.class);
boolean cr = DAO.callStoredProcedure(m_params);
if (cr) {
r = (Long) m_params.getParameter("m_result");
}
closeDAO();
return r;
}
public static void main(String[] args) {
WfWorker flowWorker = new WfWorker();
ConnectParameters.IP = "172.16.1.220";
//ConnectParameters.IP = "10.144.119.221";
ConnectParameters.Port = 1521;
//ConnectParameters.ServerName = "localpbs";
ConnectParameters.ServerName = "pbs";
ConnectParameters.UserName = "js";
ConnectParameters.Password = "pmos2000";
PbosDAO m_dao = DAOFactory.getPbosDAO();
flowWorker.setDAO(m_dao);
ArrayList al = new ArrayList();
//InsAttribute ia = new InsAttribute("year", new Integer(2007));
//al.add(ia);
//ia = new InsAttribute("month", new Integer(2));
//al.add(ia);
//WfInstanceVo insVo = flowWorker.rtvInstance("SGCBIDMON000", al);
//System.out.println(insVo);
//System.out.println(flowWorker.date2Str(new Date()));
//System.out.println(flowWorker.dateTime2Str(new Date()));
//System.out.println(flowWorker.rtvInsAttribute(20221, "exame_ok"));
//System.out.println(flowWorker.rtvWorkListByUser("li_dq",new Date(0), new Date()));
//System.out.println(flowWorker.chkUserActivityByInsId("gao_gn", new Long(20220), "bidMatch"));
//System.out.println(flowWorker.chkUserActivity("gao_gn", "SGCBIDMON000", "bidMatch"));
/*
select pmoswf.rtvworklistbycmd('by_date$$$2006-01-01$$$2008-12-31$$$yanhg$$$user','$$$')
from dual
*/
System.out.println(flowWorker.rtvInsActivity(20580, "bid_data_in"));
//System.out.println(flowWorker.rtvWorkListByUser("yanhg", new Date(0), new Date() ));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -