84 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Java
		
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Java
		
	
	
	
package tqq9.lc123.cloud.app.plugin.utils;
 | 
						|
 | 
						|
import kd.bos.dataentity.entity.DynamicObject;
 | 
						|
import kd.bos.orm.query.QFilter;
 | 
						|
import kd.bos.servicehelper.BusinessDataServiceHelper;
 | 
						|
import org.apache.poi.util.ArrayUtil;
 | 
						|
import scala.Dynamic;
 | 
						|
 | 
						|
import java.util.ArrayList;
 | 
						|
import java.util.List;
 | 
						|
 | 
						|
/**
 | 
						|
 * 基础数据匹配查询
 | 
						|
 */
 | 
						|
public class BaseDataMatchUtils {
 | 
						|
 | 
						|
    /**
 | 
						|
     * 根据商品编码查询物料信息
 | 
						|
     * @param goodsNumber   商品编码
 | 
						|
     * @return
 | 
						|
     */
 | 
						|
    public static DynamicObject goodsMatchMaterial(String goodsNumber){
 | 
						|
        QFilter f = new QFilter("number", "=", goodsNumber);
 | 
						|
        DynamicObject[] goodsArr = BusinessDataServiceHelper.load("tqq9_goodspackage", "id,number,name,tqq9_mater", new QFilter[]{f});
 | 
						|
        if(goodsArr != null && goodsArr.length > 0){
 | 
						|
            return goodsArr[0].getDynamicObject("tqq9_mater");
 | 
						|
        }
 | 
						|
        return null;
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /**
 | 
						|
     * 根据物料编码查找对应商品
 | 
						|
     * @param materialNumber    物料编码
 | 
						|
     * @param lotNumber         批号
 | 
						|
     * @param isauto            是否自动封装的商品
 | 
						|
     * @return
 | 
						|
     */
 | 
						|
    public static DynamicObject[] materialMatchGoods(String materialNumber, String lotNumber, boolean isauto){
 | 
						|
        QFilter f1 = new QFilter("tqq9_mater.number", "=", materialNumber);
 | 
						|
        QFilter f2 = new QFilter("tqq9_entry.tqq9_lot.number", "=", lotNumber);
 | 
						|
        QFilter f3 = new QFilter("tqq9_isauto", "=", isauto);
 | 
						|
        DynamicObject[] goodsA = BusinessDataServiceHelper.load("tqq9_goodspackage",
 | 
						|
                "id,number,name,tqq9_mater.baseunit,tqq9_mater.modelnum,tqq9_isauto",
 | 
						|
                new QFilter[]{f1, f2, f3});
 | 
						|
        if(goodsA != null && goodsA.length > 0){
 | 
						|
            List<DynamicObject> goodsList = new ArrayList<>();
 | 
						|
            for (DynamicObject goods : goodsA) {
 | 
						|
                goodsList.add(goods);
 | 
						|
            }
 | 
						|
            // 或预先分配大小(性能更优)
 | 
						|
            DynamicObject[] goodsArr = goodsList.toArray(new DynamicObject[goodsList.size()]);
 | 
						|
            return goodsArr;
 | 
						|
        }
 | 
						|
 | 
						|
        return null;
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /**
 | 
						|
     * 总仓匹配--外部仓库对应金蝶仓库
 | 
						|
     * @param wmsWhNumber   外部WMS系统仓库编码
 | 
						|
     * @return
 | 
						|
     */
 | 
						|
    public static DynamicObject getKDWarehouse(String wmsWhNumber){
 | 
						|
 | 
						|
 | 
						|
        return null;
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /**
 | 
						|
     * 总仓匹配--金蝶仓库查找对应的外部wms仓库编码
 | 
						|
     * @param kdWhNumber
 | 
						|
     * @return
 | 
						|
     */
 | 
						|
    public static String getOutWarehouse(String kdWhNumber){
 | 
						|
 | 
						|
 | 
						|
        return null;
 | 
						|
    }
 | 
						|
 | 
						|
}
 |