expactivity.java

来自「OBPM是一个开源」· Java 代码 · 共 82 行

JAVA
82
字号
package cn.myapps.core.expimp.exp.ejb;

import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;

import cn.myapps.core.dynaform.activity.ejb.Activity;
import cn.myapps.core.dynaform.activity.ejb.ActivityProcess;
import cn.myapps.core.dynaform.form.ejb.Form;
import cn.myapps.core.dynaform.view.ejb.View;
import cn.myapps.core.expimp.exp.util.SQLPackage;
import cn.myapps.core.workflow.storage.definition.ejb.BillDefiVO;
import cn.myapps.util.ProcessFactory;

public class ExpActivity extends ExpElement {

	public ExpActivity(boolean expAll) {
		super(expAll);
	}

	public final static String NAME = "T_ACTIVITY";

	public Map exportSQLS(String[] ids, Collection ignoreIds) throws Exception {
		Map rtn = new LinkedHashMap();
		StringBuffer query = new StringBuffer();

		ActivityProcess process = (ActivityProcess) ProcessFactory
				.createProcess((ActivityProcess.class));

		for (int i = 0; i < ids.length; i++) {
			if (ignoreIds.contains(ids[i]))
				continue;

			ignoreIds.add(ids[i]);

			query.append("SELECT * FROM ");
			query.append(NAME + " ");
			query.append("WHERE id ='");

			query.append(ids[i] + "'");

			Activity act = (Activity) process.doView(ids[i]);

			// 获取相关联的 onaction form
			Form onactionform = act.getOnActionForm();
			if (onactionform != null) {
				Map oformSQLs = new ExpForm(isExpAll()).exportSQLS(
						new String[] { onactionform.getId() }, ignoreIds);
				rtn.putAll(oformSQLs);
			}

			// 获取相关联的 onaction view
			View onActionView = act.getOnActionView();
			if (onActionView != null) {
				Map oviewSQLs = new ExpView(isExpAll()).exportSQLS(
						new String[] { onActionView.getId() }, ignoreIds);
				rtn.putAll(oviewSQLs);
			}

			// 获取相关连的 onaction flow

			BillDefiVO onActionFlow = act.getOnActionFlow();
			if (onActionFlow != null) {
				Map flowSQLs = new ExpBillDefi(isExpAll()).exportSQLS(
						new String[] { onActionFlow.getId() }, ignoreIds);
				rtn.putAll(flowSQLs);
			}

			SQLPackage values = new SQLPackage(NAME, query.toString());
			rtn.put(ids[i], values);

			query = new StringBuffer();
		}
		return rtn;
	}

	public String getName() {
		return NAME;
	}

}

⌨️ 快捷键说明

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