一个用数据库实现的工作流(3)
2008-02-23 09:55:08来源:互联网 阅读 ()
deleteTemplateNodesOfTemplate(id);
}
public void deleteTemplateNode(String id) {
////删除结点需要调整序号
WorkflowTemplateNode templateNode = this.getTemplateNodeById(id);
String template_id = templateNode.getWorkId();
int maxseq = getTemplateNodeMaxSequence(template_id);
int currentId = templateNode.getSequence();
if (currentId < maxseq) {
this.getJdbcTemplate().update("update workflow_template_flow set sequence=sequence-1 where template_id=? and sequence>?",
new Object[] {template_id,
new Integer(currentId)},
new int[] {Types.VARCHAR,
Types.INTEGER});
}
//
this.deleteMansOfNode(id);
this.getJdbcTemplate().update(
"delete from workflow_template_flow where id=?",
new Object[] {id},
new int[] {Types.VARCHAR});
}
public void deleteTemplateNodesOfTemplate(String template_id) {
WorkflowTemplateNode[] nodes = this.getTemplateNodesOfTemplate(
template_id);
if (nodes != null) {
for (int i = 0; i < nodes.length; i ) {
WorkflowTemplateNode node = nodes[i];
deleteMansOfNode(node.getId());
}
}
this.getJdbcTemplate().update(
"delete from workflow_template_flow where template_id=?",
new Object[] {template_id}, new int[] {Types.VARCHAR});
}
/**
* 删除工作流实例
* @param id String
*/
public void deleteWorkflow(String id) {
this.getJdbcTemplate().update("delete from workflow_work where id=?",
new Object[] {id},
new int[] {Types.VARCHAR});
//
WorkflowNode[] wfNodes = this.getWorkflowNodesOfWork(id);
if (wfNodes != null) {
for (int i = 0; i < wfNodes.length; i ) {
this.deleteWorkflowNode(wfNodes[i].getId());
}
}
}
public void finishWorkFlow(String id) {
}
public String[] getAccountIdsOfTempalteNode(String template_node_id) {
List mans = this.getTemplateNodeMans(template_node_id);
if (mans != null) {
return (String[]) mans.toArray(new String[mans.size()]);
}
return null;
}
public WorkflowNode[] getAllCurrentWorkflowNode() {
return null;
}
public WorkflowTemplate[] getAllTemplates(int flag) {
if ((flag != -1) && (flag != 0) && (flag != 1)) {
return null;
}
List list = null;
if (flag != -1) {
list = this.getJdbcTemplate().query(
"select * from workflow_template where status=? order by createDate",
new Object[] {new Integer(flag)},
new int[] {Types.INTEGER},
new RowMapper() {
public Object mapRow(ResultSet rs, int _int) throws
SQLException {
WorkflowTemplate temp = new WorkflowTemplate();
temp.setId(rs.getString("id"));
temp.setName(rs.getString("name"));
temp.setDescription(rs.getString("description"));
temp.setCreateMan(rs.getString("createMan"));
temp.setCreateDate(rs.getTimestamp("createDate"));
temp.setStatus(rs.getInt("status"));
return temp;
}
});
} else {
list = this.getJdbcTemplate().query(
"select * from workflow_template order by createDate",
new RowMapper() {
public Object mapRow(ResultSet rs, int _int) throws
SQLException {
WorkflowTemplate temp = new WorkflowTemplate();
temp.setId(rs.getString("id"));
temp.setName(rs.getString("name"));
temp.setDescription(rs.getString("description"));
temp.setCreateMan(rs.getString("createMan"));
temp.setCreateDate(rs.getTimestamp("createDate"));
temp.setStatus(rs.getInt("status"));
return temp;
}
});
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:[学习小记]Java的反射机制
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
