NC注册开发函数

insert into pub_function
  (ARGUMENTS,
   CLASSNAME,
   CODE,
   DR,
   FUNCTIONNOTE,
   FUNCTIONNOTE_RESID,
   FUNCTYPE,
   HINTMESSAGE,
   ISCOMP,
   METHODNAME,
   PK_BILLTYPE,
   PK_BILLTYPEID,
   PK_FUNCTION,
   RETURNTYPE,
   TS)
values
  ('nc.vo.pub.AggregatedValueObject:01',
   'nc.pf.so.function.Send30ToBPM',
   'SO30-GH',
   0,
   '低价销售发送至bpm',
   '低价销售发送至bpm',
   0,
   '',
   '',
   'send30tobpm',
   '30',
   '30',
   '1001A81000000000CTF6',
   'BOOLEAN',
   '2021-08-05 22:38:39');
package nc.pf.so.function;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;

import nc.bs.framework.common.InvocationInfoProxy;
import nc.bs.framework.common.NCLocator;
import nc.itf.htjck.pub.IPublicToolsService;
import nc.vo.pub.AggregatedValueObject;
import nc.vo.pub.lang.UFBoolean;
import nc.vo.so.m30.entity.SaleOrderBVO;
import nc.vo.so.m30.entity.SaleOrderVO;
import nc.vo.pub.BusinessException;

public class SendSOToBPM {
	   public UFBoolean sendsotobpm(AggregatedValueObject billvo) throws BusinessException {
//		    boolean issend=false;
			IPublicToolsService service=NCLocator.getInstance().lookup(IPublicToolsService.class);
			//设置审批人
//			String pk_user=service.findpkBycode("cuserid", "sm_user", "user_code","bpm");
//		    if(pk_user.equals(InvocationInfoProxy.getInstance().getUserId())) {
//		    	return new UFBoolean(true);
//		    }
			SaleOrderVO bill = (SaleOrderVO)billvo;
//			SaleOrderBVO [] bvos=bill.getChildrenVO();
//			for(int i=0;i<bvos.length;i++) {
//				String pk_material=bvos[i].getCmaterialvid();
//				String marclasscode=service.getStrFsql("select code from bd_marbasclass where pk_marbasclass =(select pk_marbasclass from bd_material where pk_material='"+pk_material+"' and enablestate=2) and enablestate=2");
//				double norigtaxprice=bvos[i].getNorigtaxprice().getDouble();
//				if(marclasscode.substring(0, 2).equals("01")) {
//					//纸品:当订单含税单价小于修订限价时,需要传BPM审批
//					double vbdef9=Double.parseDouble(service.db(bvos[i].getVbdef9()));
//					if(norigtaxprice<vbdef9) {
//						issend=true;
//						break;
//					}
//				}else {
//					if(marclasscode.substring(0, 4).equals("0202")||marclasscode.substring(0, 4).equals("0402")) {
//						double naskqtorigtaxprc=bvos[i].getNaskqtorigtaxprc().getDouble();
//						if(norigtaxprice<naskqtorigtaxprc) {
//							issend=true;
//							break;
//						}
//					}
//				}
//			}
			String billid=service.getStrFsql("select billid from pub_workflownote where billno='"+bill.getParentVO().getVbillcode()+"' and approvestatus='0' and checkman='1001A11000000001OM7X'");
			if(billid!=null) {
				try {
//					if(issend) { 
						Map<String, String> m;	 				
						m = service.GetViewAndFlowid("30"); 	 	
						if(m!=null&&m.size()>0) {
							JSONObject json=service.GetSendJson(m.get("memo"), billvo.getParentVO().getPrimaryKey());
							json.put("bpmtable", "so_saleorder_m");
							json.put("bpmkeyname", "nccsaleorderid");
							String billtype=m.get("shortname");
							InvocationInfoProxy.getInstance().setProperty("billmaker",String.valueOf(billvo.getParentVO().getAttributeValue("billmaker")));
							service.SendToBPM(billtype, "销售订单", json);
//							throw new BusinessException("此单据为低价销售,已发送至BPM审批!");
						}
//					}
				} catch (Exception e) {
					// TODO Auto-generated catch block
					throw new BusinessException(e.getMessage());
				}
			}
			
			return new UFBoolean(true);
		}
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值