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("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 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; } }