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

📄 contractmanageaction.java

📁 sso呵呵
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.mdcl.mocha.jlcmcc.contract.action;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.mdcl.mocha.bpm.portal.common.security.BPMUserInfo;
import com.mdcl.mocha.bpm.sdk.ServiceManager;
import com.mdcl.mocha.bpm.sdk.bo.BizObjectException;
import com.mdcl.mocha.bpm.sdk.bo.entity.IBizObjectDefinition;
import com.mdcl.mocha.bpm.sdk.bo.service.IBizObjectTypeDefinitionService;
import com.mdcl.mocha.bpm.sdk.boins.BoInsException;
import com.mdcl.mocha.bpm.sdk.boins.entity.IBoInstance;
import com.mdcl.mocha.bpm.sdk.boins.service.IBoInstanceService;
import com.mdcl.mocha.bpm.sdk.common.PagedList;
import com.mdcl.mocha.bpm.sdk.document.entity.IDocument;
import com.mdcl.mocha.bpm.sdk.document.service.IDocumentService;
import com.mdcl.mocha.bpm.sdk.license.ExpiryException;
import com.mdcl.mocha.bpm.sdk.license.LicenseException;
import com.mdcl.mocha.bpm.sdk.license.NotFoundModuleException;
import com.mdcl.mocha.bpm.sdk.osm.IAccountsMgmtService;
import com.mdcl.mocha.bpm.sdk.osm.OsmException;
import com.mdcl.mocha.bpm.sdk.osm.entity.AccountsBean;
import com.mdcl.mocha.bpm.sdk.view.IOAView;
import com.mdcl.mocha.bpm.sdk.view.ViewException;
import com.mdcl.mocha.bpm.sdk.view.bo.ExtendConditionSet;
import com.mdcl.mocha.bpm.webcommons.action.BPMBaseAction;
import com.mdcl.mocha.bpm.webcommons.constant.ISessionAttributeConstant;
import com.mdcl.mocha.jlcmcc.contract.bean.ContractManageBean;


/**
 * <strong>Title : JLCMCC_DocSaveAction<br></strong>
 * <strong>Description : </strong><br>
 * <strong>Create on : 2007-9-6<br></strong>
 * <p>
 * <strong>Copyright (C) Mocha Software Co.,Ltd.<br></strong>
 * <p>
 * @author duyb duyb@mochasoft.com.cn<br>
 * @version <strong>吉林移动BPM一期</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人		修改日期		修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */


public class ContractManageAction extends BPMBaseAction{
	/**
	 * Logger for this class
	 */
	private static final Logger S_LOGGER = Logger
			.getLogger(ContractManageAction.class);
	/**
	 * 常量
	 */
	//合同类型id-- Type_DEF_ID
	private static final String IBOS_PROVINCE_CONTRACTTYPE = "00-SNED5LK8-5MH5-O594-Y618-GMDTVHQEY9SG";//省公司合同管理
	private static final String IBOS_FILIALE_CONTRACTTYPE = "00-98M0OQB0-7419-RC59-72BM-S72H6YR1AFWC";//分公司合同管理
	private static final String IBOS_UNIT_CONTRACTTYPE = "00-F5EA0X9Z-YMHL-9KG4-ZB5S-IO2JWF106LZW";//直属单位合同管理
	private static final String IBOS_CENTER_CONTRACTTYPE = "00-MNYSV8E7-9V5I-UHYA-VA1Y-05TV7JH37894";//业务支撑中心合同管理
	private static final String IBOS_SP_CONTRACTTYPE = "00-D15F6ZU4-47O4-DALQ-IFM2-BN2CZE8GTWW7";//SP合同管理

	//特殊合同
	private static final String Contract_SP = "003002";//SP合同
	private static final String Contract_JSFW = "002010";//技术服务合同
	private static final String Contract_GG = "002002";//广告合同
	private static final String Contract_ZL = "002004";//租赁合同
	private static final String Contract_HZ = "003001";//合作合同
	private static final String Contract_HL = "003003";//互联合同
	private static final String Contract_ZSCQZR = "003004";//知识产权转让合同
	private static final String Contract_BM = "003005";//保密合同
	private static final String Contract_TDSYQ = "003006";//土地使用权卖出合同
	private static final String Contract_FCMC = "003007";//房产卖出合同
	private static final String Contract_QT = "003008";//其他合同
	//表单中的字段
	private static final String C_FKZE = "yifujine";//付款总额
	private static final String C_HTJE = "hetongjine";//合同金额
	private static final String C_HTJSSJ ="hetongjieshushijian";//合同结束时间
	private static final String C_HTXL ="hetongxiaolei";//合同小类
	//合同类型控制标志
	private static final String C_EXAMINE ="1";//审批中合同
	private static final String C_PERFORMED ="3";//已履行合同
	private static final String C_FINASH ="2";//正常合同
	private static final String C_DEFER ="4";//延期合同

	/**
	 * action 方法
	 * @throws OsmException
	 * @throws LicenseException
	 */
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws LicenseException, OsmException {
		if (S_LOGGER.isDebugEnabled()) {
			S_LOGGER.debug("ContractManageAction.execute()<<<");
		}
		// 取得参数
		String unit = "1";
		if(request.getParameter("unit") != null && !"".equals(request.getParameter("unit"))){
			unit = request.getParameter("unit");//上面的三个标题
		}

		String state ="1";
		if(request.getParameter("state") != null && !"".equals(request.getParameter("state"))){
			state = request.getParameter("state");//合同状态
		}
		//业务流程办结标志
		boolean flag = true;
		if(!"1".equals(state)){
			flag = false;
		}
		//初始化
		int pageInit = 1;
		Integer t_totalSize = new Integer(0);
		//合同类型
		List t_datalist =new ArrayList();
		String contract_type[] ={"","审批中","履行中","已履行","正常履行的合同","延期履行的合同"};

		//服务接口初始化
		IBoInstanceService iboinstance =null;
		IOAView t_ioav = null;
		IBizObjectTypeDefinitionService ibizdefService=null;
		IDocumentService idocService = null;
		try {
			iboinstance = (IBoInstanceService) ServiceManager.getInstance()
			.getService(IBoInstanceService.class);
			t_ioav = (IOAView) getBusinessService(IOAView.class.getName());
			ibizdefService = (IBizObjectTypeDefinitionService) getBusinessService(IBizObjectTypeDefinitionService.class.getName());
			idocService = (IDocumentService) getBusinessService(IDocumentService.class.getName());
		} catch (Exception e) {
			request.getSession().setAttribute(
					ISessionAttributeConstant.LICENSE_EXCEPTION_KEY, e);
			return mapping.findForward("INVALIDLICENSE");
		}
		List type_def_id = new ArrayList();//业务流程类型列表
		type_def_id.add(IBOS_PROVINCE_CONTRACTTYPE);
		type_def_id.add(IBOS_FILIALE_CONTRACTTYPE);
		type_def_id.add(IBOS_UNIT_CONTRACTTYPE);
		type_def_id.add(IBOS_CENTER_CONTRACTTYPE);
		type_def_id.add(IBOS_SP_CONTRACTTYPE);
		try {
			//根据业务流程类型id获得业务流程实例id
			List ibos_unitList = new ArrayList();//业务流程实例id
			if(!type_def_id.isEmpty()){
				for (int i = 0; i < type_def_id.size(); i++) {

					List ibizdefList =new ArrayList();
					ibizdefList = ibizdefService.getBoDefs((String)type_def_id.get(i));
					if(!ibizdefList.isEmpty()){
						for (int j =0; j<ibizdefList.size(); j++) {
							IBizObjectDefinition iBizDefinition = (IBizObjectDefinition) ibizdefList.get(j);
							ibos_unitList.add(iBizDefinition.getboDefID());
						}
					}
				}
			}
			//获取人员信息
			BPMUserInfo t_userInfo = getUser(request);
			AccountsBean t_accountBean = t_userInfo.getAccount();
			Set t_set = t_accountBean.getPrincipal();
			String[] t_principalsIds = new String[t_set.size()];
			Iterator iter = t_set.iterator();
			int i = 0;
			while (iter.hasNext()) {
				String element = (String) iter.next();
				t_principalsIds[i] = element;
				i++;
			}
			//扩展条件
			ExtendConditionSet ecs = t_ioav.createExtendConditionSet();
			//根据业务流程实例id获取当前用户下的业务流程实例
			PagedList pageList =t_ioav.getBizunitInstance(t_principalsIds,(String[])ibos_unitList.toArray(new String[0]), flag, pageInit, 99999999, null, false, ecs);
			if(!pageList.isEmpty()){
				t_datalist = this.getFilertDocument(iboinstance, idocService, pageList, state,flag);
				t_totalSize = new Integer(t_datalist.size());
			}
		} catch (BizObjectException e) {
			e.printStackTrace();
		} catch (ViewException e) {
			e.printStackTrace();
		}
		request.setAttribute("contract_type", contract_type);
		request.setAttribute("unit", unit);
		request.setAttribute("state", state);
		request.setAttribute("t_datalist", t_datalist);
		request.setAttribute("t_allSize", t_totalSize);
		return mapping.findForward("SUCCESS");
	}

	/**通过 pageList 筛选 数据
	 * @param iboinstance

⌨️ 快捷键说明

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