📄 contractmanageaction.java
字号:
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 + -