package nc.bs.pub.action;

import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List; import nc.bs.framework.common.NCLocator;
import nc.bs.pub.compiler.AbstractCompiler2;
import nc.itf.arap.payablebill.IPayablebillItf;
import nc.vo.arap.BusiStatus;
import nc.vo.fipub.exception.ExceptionHandler;
import nc.vo.pub.AggregatedValueObject;
import nc.vo.pub.BusinessException;
import nc.vo.pub.CircularlyAccessibleValueObject;
import nc.vo.pub.compiler.PfParameterVO; public class N_F1_APPROVE
extends AbstractCompiler2
{
private Hashtable<String, Object> m_keyHas = null; public Object runComClass(PfParameterVO paraVo)
throws BusinessException
{
try
{
if (paraVo.m_preValueVos == null) {
return null;
}
Object obj = null;
this.m_tmpVo = paraVo; procFlowBacth(paraVo); List<AggregatedValueObject> list = new ArrayList();
for (AggregatedValueObject aggvo : paraVo.m_preValueVos)
{
Integer bill_status = (Integer)aggvo.getParentVO().getAttributeValue("billstatus");
if (bill_status.intValue() == BusiStatus.Audit.getBillStatusSubKind()) {
list.add(aggvo);
}
}
if (list.size() > 0)
{
setParameter("context", list.toArray(new AggregatedValueObject[0]));
Object obj2 = runClass("nc.bs.arap.actions.PayablebillApproveBatchBSAction", "approveVOs", "&context:nc.vo.pub.AggregatedValueObject[]", paraVo, this.m_keyHas);
//add by 陈志锋 2015-12-25 应付单审批通过后 start
if(obj2 != null){
IPayablebillItf iPayablebillItf = NCLocator.getInstance().lookup(IPayablebillItf.class);
AggregatedValueObject[] vos = (AggregatedValueObject[]) obj2;
for (int i = 0; i < vos.length; i++) {
AggregatedValueObject vo = vos[i];
String billclass = (String) vo.getParentVO().getAttributeValue("billclass");
String billstatus = vo.getParentVO().getAttributeValue("approvestatus") + "";
if("yf".equals(billclass) && "1".equals(billstatus)){
iPayablebillItf.insertInfoMiddle(vo);
}
} }
//add by 陈志锋 2015-12-25 应付单审批通过后 end
return obj2;
}
return paraVo.m_preValueVos;
}
catch (Exception ex)
{
throw ExceptionHandler.handleException(getClass(), ex);
}
} public String getCodeRemark()
{
return " arap action script not allowed to modify ,all rights reserved!";
} protected void setParameter(String key, Object val)
{
if (this.m_keyHas == null) {
this.m_keyHas = new Hashtable();
}
if (val != null) {
this.m_keyHas.put(key, val);
}
}
}

  

N_F1_APPROVE的更多相关文章

随机推荐

  1. android学习之activity

    Activity 的生命周期 和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理.与 MIDlet 不同的是安装在 android 中的所有的 ...

  2. c++ 观察者模式

    观察者模式之比喻: 有家公司,老板经常不按时上班,于是员工就可以在老板来之前的那段时间娱乐一下,但是又过的是心惊胆战,怕 老板随时出现:这是观察者模式就起作用了:公司有个前台,她总是第一个看到老板进门 ...

  3. English Morphology

    最近参与一个小project,需要编写一个针对英文单词的stem 算法. 1. 最为常见的stem 算法 就是The English (Porter2) stemming algorithm http ...

  4. [解决]ASP.NET MVC 4/5 源码调试(source code debug)

    ========================ASP.NET MVC 4============================ ASP.NET MVC 4 source code download ...

  5. HDU-4705 Y 树形DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4705 题意:给一颗树,从树上任意选择3个点{A,B,C},要求他们不在一条链上,求总共的数目. 容易想 ...

  6. SOD-80 LL34 DL-35 (2.7~75V)贴片稳压二极管【worldsing 笔记

    ¨ Silicon Planar Zener Diodes ¨ In Mini-MELF case especially for automatic insertion. ¨ The Zener vo ...

  7. Windbg分析DMP文件

    1.提取Dump格式文件 有两种方式: 第一种,程序崩溃时,启动任务管理器,选择崩溃的*.exe进程,右键选择创建转储文件,通过 开始—运行—输入 %temp% --确定--在打开Temp窗口中即可找 ...

  8. Theme使用的几点注意事项

    Theme.Holo主题在android4.0 及其以上不需要任何支持包,继承Activity即使用,但google不推荐该用法 Theme.Material主题在android5.0及其以上不需要依 ...

  9. 没有指针的java语言

    一.java中引用(reference)实质就是指针 与C语言的指针比较: 1.引用是受控的安全的 2.空引用会被检查 java中不能够访问没有引用到的内存,这也是java的自动垃圾回收机制的基础之一 ...

  10. MSSQLSERVER数据库- 数据类型Timestamp

    Timestamp:亦称时间戳数据类型,它提供数据库范围内的惟一值,反应数据库中数据修改的相对顺序,相当于一个单调上升的计数器.当它所定义的列在更新或者插入数据行时,此列的值会被自动更新,一个计数值将 ...