InvoiceCancelSendApAction
package nc.ui.pu.m25.action; import java.awt.event.ActionEvent; import nc.bs.framework.common.NCLocator;
import nc.itf.arap.payablebill.IPayablebillItf;
import nc.itf.scmpub.reference.uap.group.SysInitGroupQuery;
import nc.ui.pubapp.pub.common.context.PFlowContext;
import nc.ui.pubapp.uif2app.actions.pflow.ScriptPFlowAction;
import nc.ui.scmpub.action.SCMActionInitializer;
import nc.ui.uif2.UIState;
import nc.vo.ml.NCLangRes4VoTransl;
import nc.vo.pu.m25.entity.InvoiceVO;
import nc.vo.pu.m25.enumeration.InvoiceBillAction;
import nc.vo.pu.m25.env.InvoiceUIToBSEnv;
import nc.vo.pub.AggregatedValueObject;
import nc.vo.pub.lang.UFBoolean;
import nc.vo.pubapp.pattern.exception.ExceptionUtils;
import nc.vo.pubapp.pflow.PfUserObject; import org.apache.commons.lang.ArrayUtils; public class InvoiceCancelSendApAction
extends ScriptPFlowAction
{
private static final long serialVersionUID = 4553662148501234750L; public InvoiceCancelSendApAction()
{
SCMActionInitializer.initializeAction(this, "CancelToAP");
} public void doAction(ActionEvent e)
throws Exception
{
if (!SysInitGroupQuery.isAPEnabled()) {
ExceptionUtils.wrappBusinessException(NCLangRes4VoTransl.getNCLangRes().getStrByID("4004050_0", "04004050-0001"));
}
super.doAction(e); //add by@陈志锋 2015-12-26 取消应付单时更新中间表状态字段 begin
InvoiceVO vo = (InvoiceVO)getModel().getSelectedData();
Object[] vos = getModel().getSelectedOperaDatas();
IPayablebillItf itf = NCLocator.getInstance().lookup(IPayablebillItf.class);
for (int i = 0; i < vos.length; i++) {
InvoiceVO objVO = (InvoiceVO) vos[i];
if(objVO != null){
String pk = objVO.getParent().getPrimaryKey();
itf.deteleInfoMiddle(pk);
}
}
//add by@陈志锋 2015-12-26 取消应付单时更新中间表状态字段 end } protected void beforeCheck(Object vo)
{
super.beforeCheck(vo);
} protected void fillUpContext(PFlowContext context)
{
super.fillUpContext(context);
AggregatedValueObject[] vos = context.getBillVos();
if (ArrayUtils.isEmpty(vos)) {
return;
}
PfUserObject[] usrObjs = new PfUserObject[vos.length];
PfUserObject usrObj = new PfUserObject();
InvoiceUIToBSEnv env = new InvoiceUIToBSEnv();
env.setTrigger(InvoiceBillAction.CANCELSENDAP);
env.setBManual(UFBoolean.TRUE);
usrObj.setUserObject(env);
for (int i = 0; i < usrObjs.length; i++) {
usrObjs[i] = usrObj;
}
context.setUserObjs(usrObjs);
} protected boolean isActionEnable()
{
boolean isEnable = true;
isEnable &= ((UIState.NOT_EDIT == getModel().getUiState()) && (null != getModel().getSelectedData()));
if (isEnable)
{
InvoiceVO vo = (InvoiceVO)getModel().getSelectedData();
Object[] vos = getModel().getSelectedOperaDatas(); isEnable &= ((vo.getParentVO().getBapflag().booleanValue()) || ((null != vos) && (1 < vos.length)));
}
return isEnable;
}
}
InvoiceCancelSendApAction的更多相关文章
随机推荐
- Spring MVC @ModelAttribute
1.@ModelAttribute注释void返回值的方法 @Controller public class HelloModelController { @ModelAttribute public ...
- Solution for Latex error: "Cannot determine size of graphic"
I'm trying to include graphics in my Latex-file, which I compiled with latex+dvipdf on OS X. Latex h ...
- weblogic11g 安装——linux 无图形界面
weblogic11g 安装——linux下无weblogic安装图形界面 注意:此次安装,没做server.ip .系统规划 目的:学习weblogic11g 在linux下 无图形安装的过程 j ...
- oracle 在表中有数据的情况下修改表字段类型或缩小长度
分享自己一些常用的sql语句给大家 偶尔我们需要在已有表,并且有数据的情况下,修改其某个字段的类型或缩短他的长度,但是因为表中有数据,所以不可以直接修改,需要换个思路. //建立测试表,可跳过(善于应 ...
- MYSQL- 存储过程示例
最近需要用到MYSQL,没耐心从头到尾,慢慢了解了,需要什么直接百度,直接了解,从实战中学习. 看一下MYSQL存储过程的示例: CREATE PROCEDURE plogin ( p_usernam ...
- nginx编译参数集合
http://www.ttlsa.com/nginx/nginx-configure-descriptions/ 标题是不是很欠揍,个人认为确实值得一看,如果你不了解nginx,或者你刚学nginx, ...
- NSArrary和NSString间的转换
将string字符串转换为array数组 NSArray *array = [Str componentsSeparatedByString:@","]; // 注意:NSArr ...
- 一个实际的sonar代码检查的配置文件
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- cc2530 timer 3 PWM <可调占空比>
前提: 开始用的是 cc2530 timer 1来做PWM的,已经可调占空比了,但是由于硬件的改动,需要用timer 3 和 timer 4 代替.由于调试过程中出了些小问题,于是自己把这个贴出来.关 ...
- Asp.net中使用资源文件实现网站多语言
首先需要新建一个ASP.NET Web Application.然后右键项目文件Add->Add ASP.NET Folder->App-GlobalResources. 新建好资源文件夹 ...