• NC源码阅读


    Collection 是有序的集合
    
    mapnum.put();
    mapprice.put();
    mapbillno.put();
    
    map.put();
    map.get();
    
    
    list转为数组:
    List<SaleInvoiceSubVO> vos;
    vos.toArray(new SaleInvoiceSubVO[vos.size()];
    方法二
    List<SaleOutVO> lunSignList
    SaleOutVO[] notSignVOs = (SaleOutVO[])CollectionUtils.listToArray(lunSignList);
    
    
    
    HashMap.containkey();
    
    div            除
    multiply    乘
    add           加
    sub            减
    
    map.containKey(vo.getCustomer){}
    map.put(vo.getCusomer,List<SaleInvoiceSubVO>) ;
    
    map集合中的value对应可以存放很多东西,类似string类型,int型,还要list集合都可以;
    取值的话是通过 map.get(key);存值是通过 map.put();
    
    
    按照客户对一个集合进行分组:(//根据客户分组存储,一个客户一张发票)
    
    
    Map和Set不可存在重复元素
    
    
    for(SaleInvoiceSubVO vos : vos){
        if(map.containKey(vo.getCustomer())){         
            List<SaleInvoiceSubVO> list = map.get(vo.getCustomer());
            list.add(vo);
            map.put(vo.getCustomer(),list);
         }else{
            List<SaleInvoiceSubVO> list = new ArrayList<SaleInvoiceSubVO>();
            list.add(vo);
             map.put(vo.getCustomer(),list);
         }
    }
    
    for(SaleInvoiceSubVO vo:vos) {
        if(map.containsKey(vo.getCustomer())) {
            List<SaleInvoiceSubVO> list=map.get(vo.getCustomer());
            list.add(vo);
            map.put(vo.getCustomer(), list);
        }else {
            List<SaleInvoiceSubVO> list=new ArrayList<SaleInvoiceSubVO>();
            list.add(vo);
            map.put(vo.getCustomer(), list);
        }
    }
    
    
    aggvo查询
    IMDPersistenceQueryService dao=NCLocator.getInstance().lookup(IMDPersistenceQueryService.class);
    Collection<SaleOrderVO> vos=dao.queryBillOfVOByCond(SaleOrderVO.class, sql.toString(), false);
    
    UFDouble result = new UFDouble(0);
    
    通过VO的方式去查询数据,SQL只需要写一半就可以了
    String sql=" state = 0 and customer = '1001A110000000000ABN'";
    Collection<SaleInvoiceSubVO> vos=new BaseDAO().retrieveByClause(SaleInvoiceSubVO.class, sql);
    
    
    环境变量:
    InvocationInfoProxy.getInstance().getGroupId();
    
    
    hashmap.entrySet();
    
    拉单功能:
    SaleInvoiceVO[] invoicebills = PfServiceScmUtil.executeVOChange("4C", "32", orders.toArray(new SaleOutVO[orders.size()]));
    
    
    --list.addAll();
    ---用于将指定 collection 中的所有元素添加到列表的尾部。如果 List 集合对象由于调用 addAll 方法而发生更改,则返回 true。
    
    Add方法是将传入的参数作为当前List中的一个item存储,即使你传入一个List也只会令当前的List增加1个元素
    
    AddAll是传入一个List,将此List中的所有元素加入到当前List中,也就是当前List会增加的元素个数为传入的List的大小
    
    
    HashMap<String,List<SaleInvoiceSubVO>> vomap = querySaleInvoiceSubVO();
    for(Entry<String,List<SaleInvoiceSubVO>> entry :vomap.entrySet()){
             entry.getValue().get(0);
             
    }
    
    
    private void calQuantity(SaleInvoiceVO ordervo,List<SaleInvoiceSubVO> list){
        
         HashMap<String,UFDouble> mapnum = new HashMap<String,UFDouble>();//主数量
         HashMap<String,UFDouble> mapprice = new  HashMap<String,UFDouble>();//单价
         HashMap<String,String> mapbillno = new HashMap<String,String>();//销售发票 辅助项的自定义项一 
         for(SaleInvoiceSubVO svo : list) {
                 mapnum.put(svo.getMaterial(),new UFDouble(svo. getSalenumber));
                 mapprice.put(svo.getMaterial(), new UFDouble(svo.getPrice()));
                 mapbillno.put(svo.getMaterial(), svo.getVdef1());
         }
          SaleInvoiceBVO[] bvos = ordervo.getChildrenVO();      
    }
    
    
    
    
    
    map.entrySet();
    entry.getValue();
    
    
    用hashmap存储一个key的值,然后get这个key,这个key可以是物料,也可以是客户,可以是vo的具体某个值;
    
    
    
    BigDecimal比较建议用compareTo
    
    
    a<b, 返回-1
    
    a=b,返回0
    
    a>b, 返回1
    
    
    ---
    new UFDouble().setScale(1, 4); //保留小数点后1位,并“四舍五入”
    
    
    static  静态修饰符
    ---- 动动手指关注我!或许下次你又能在我这里找到你需要的答案!ZZZZW与你一起学习,一起进步!
  • 相关阅读:
    二进制编译http
    http服务
    FTP服务
    DAY01
    直流电机调速作业
    机械大楼电梯控制项目
    仿真作业
    第六周作业
    第五周作业
    第四周仿真作业
  • 原文地址:https://www.cnblogs.com/zzzzw/p/14672941.html
Copyright © 2020-2023  润新知