restful接口ADF实现代码

import java.math.BigDecimal;


import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.QueryParam;


import oracle.jbo.RowIterator;
import oracle.jbo.client.Configuration;
import oracle.jbo.server.ApplicationModuleImpl;
import oracle.jbo.server.Entity;


import xc.af.ws.base.AFIListener;
import xc.af.ws.base.SrvUtils;
import xc.af.ws.bo.kc.RkdItem;
import xc.af.ws.bo.kc.xxx;


import xc.af.ws.bo.kc.RkdResponse;
import xc.af.ws.bo.kc.ScRkdInfo;
import xc.af.ws.bo.kc.eo.WfTmImpl;


import xc.bus.base.table.mm.MMUtils;
import xc.bus.base.table.mm.base.material.eo.MmBaseMatImpl;
import xc.bus.base.table.mm.essmanage.eo.MmEssmanageWhbillsDetailImpl;
import xc.bus.base.table.mm.essmanage.eo.MmEssmanageWhbillsImpl;
import java.math.BigDecimal;
import java.sql.PreparedStatement;
import java.sql.ResultSet;


import java.sql.Timestamp;


import java.text.DateFormat;


import java.text.SimpleDateFormat;


import java.util.Date;


import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Produces;


import xc.af.ws.base.RestServices;
import xc.af.ws.bo.kc.RkdLotno;
import xc.af.ws.bo.kc.xxx;


@Path("/wf")
@Produces(value = { "application/xml" })
@Consumes(value = { "application/xml" })
public class WfRkd extends RestServices{
    public WfRkd() {
        super();
    }


    @POST
    @Path("/createrkd")   //@QueryParam("token") String token, 
   // public RkdResponse createRKD(ScRkdInfo rkdinfo) {
    public RkdResponse createRKD(ScRkdInfo rkdinfo) {


        RkdResponse rsp = new RkdResponse();
       // if (AFIListener.isExistToken(token)) {
            if (rkdinfo != null) {
                System.out.println(rkdinfo);
                ApplicationModuleImpl am =
                    (ApplicationModuleImpl) Configuration.createRootApplicationModule(SrvUtils.amdef, SrvUtils.config);


                try {                                     
              /*    WfTmImpl wftm =
                      (WfTmImpl) WfTmImpl.getDefinitionObject().createInstance2(am.getDBTransaction(),
                                                                                                             null);  */
                    for (int i = 0; i < rkdinfo.getDetail().size(); i++) {
                  /*      
                        WfTmImpl wftm =
                                    (WfTmImpl) WfTmImpl.getDefinitionObject().createInstance2(am.getDBTransaction(),
                                                                        null);
                        wftm.setAgentid(rkdinfo.getAgentid ());
                        wftm.setOrgid(rkdinfo.getOrgid());                        
                      //wftm.setIodate(Date.toDate(rkdinfo.getIodate()));
                    //    wftm.setIodate(new Date(rkdinfo.getIodate()));    //设置入库日期即生产日期
                     //   wftm.setIodate( DateFormat.parse(rkdinfo.getIodate())); 
                           SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
                          Date date = sdf.parse(rkdinfo.getIodate());
                     //     wftm.setIodate(new oracle.jbo.domain.Date(new Timestamp(date.getTime())));
                         wftm.setIodate(new oracle.jbo.domain.Date(new Timestamp(date.getTime())));
                     //  wftm.setIodate(new SimpleDateFormat("yyyy-MM-dd").parse(rkdinfo.getIodate())); 
                     //   Date date=new Date(rkdinfo.getIodate());  
                     //   wftm.setIodate(date); 
                        wftm.setRkzt(new Integer(0));       //设置入库状态
                        RkdItem r = rkdinfo.getDetail().get(i);
                        wftm.setBiglotno(r.getLotno());//大袋号
                        wftm.setMatid(r.getMatid()); //物料ID
                        wftm.setQuantity(r.getQuantity());//数量
                       // wftm.setQuantity(MMUtils.unitchange(detail.getMatid(), r.getQuantityunit(), detail.getUnit(),
                       //                                                               r.getQuantity()).setScale(MmEssmanageWhbillsImpl.numPrecision,
                       //                                                                                         BigDecimal.ROUND_HALF_UP));
                   //     wftm.setLotno(r.getRemark());//小袋号            */
                         RkdItem r = rkdinfo.getDetail().get(i);


                        for(int j=0;  j<r.getXdetail().size(); j++){
                            WfTmImpl wftm =
                                        (WfTmImpl) WfTmImpl.getDefinitionObject().createInstance2(am.getDBTransaction(),
                                                                            null);
                            wftm.setAgentid(rkdinfo.getAgentid ());
                            wftm.setOrgid(rkdinfo.getOrgid());     
                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
                            Date date = sdf.parse(rkdinfo.getIodate());
                            wftm.setIodate(new oracle.jbo.domain.Date(new Timestamp(date.getTime())));
                            wftm.setRkzt(new Integer(0));       //设置入库状态
                         //   RkdItem r = rkdinfo.getDetail().get(i);
                            wftm.setBiglotno(r.getLotno());//大袋号
                            wftm.setMatid(r.getMatid()); //物料ID
                            wftm.setQuantity(r.getQuantity());//数量
                            RkdLotno x = r.getXdetail().get(j);
                            wftm.setLotno(x.getRemark());//小袋号            */
                          am.getDBTransaction().commit();
                   //       wftm.refresh(Entity.REFRESH_WITH_DB_FORGET_CHANGES); 
                          rsp.setLotno(wftm.getLotno());
                        }
                    }
                  /*  am.getDBTransaction().commit();
                    wftm.refresh(Entity.REFRESH_WITH_DB_FORGET_CHANGES); */
                   //rsp.setId(wftm.getId().toString());//BigDecimal转String
                   // rsp.setLotno(wftm.getLotno());
                   // rsp.setBillcode(ess.getBillcode());
                    //                ess.writeStock();
                } catch (Exception e) {
                    e.printStackTrace();
                    
                } finally {
                    releaseAm(am);
                }
            }
            return rsp;
        }  
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值