【泛微库存查询接口】--增加查询条件字段

This commit is contained in:
tanfengling@x-ri.com 2025-10-16 14:45:55 +08:00
parent ccecdcdfdd
commit de8566c152
2 changed files with 53 additions and 8 deletions

View File

@ -34,14 +34,25 @@ public class FWInvQueryController {
// List<FWInvQueryResult.ResultBean> resultBeans = new ArrayList<>();
String materialNumber = queryModel.getMaterialNumber();
String lot = queryModel.getLot();
String warehouseNumber = queryModel.getWarehouseNumber();
Date producedate = queryModel.getProducedate();
Date expirydate = queryModel.getExpirydate();
QFilter qf1 = new QFilter("material.number", QCP.equals, materialNumber);
QFilter qf2 = new QFilter("lotnum", QCP.in, lot);
DynamicObject[] realbalances = BusinessDataServiceHelper.load("im_inv_realbalance", "id,org,warehouse,lotnum,avbbaseqty,qty", new QFilter[]{qf1, qf2});
QFilter qf2 = new QFilter("lotnum", QCP.equals, lot);
QFilter qf3 = new QFilter("warehouse.number", QCP.equals, warehouseNumber);
QFilter qf4 = new QFilter("producedate", QCP.equals, producedate);
QFilter qf5 = new QFilter("expirydate", QCP.equals, expirydate);
DynamicObject[] realbalances = BusinessDataServiceHelper.load("im_inv_realbalance", "id,org,warehouse,lotnum,avbbaseqty,qty", new QFilter[]{qf1, qf2, qf3, qf4, qf5});
if(realbalances != null && realbalances.length > 0){
FWInvQueryResult.ResultBean resultBean = new FWInvQueryResult.ResultBean();
BigDecimal totalQty = BigDecimal.ZERO;
for (DynamicObject realbalance : realbalances) {
FWInvQueryResult.ResultBean resultBean = new FWInvQueryResult.ResultBean();
//获取数量
BigDecimal qty = realbalance.getBigDecimal("qty");
totalQty = totalQty.add(qty);
//获取组织数据
DynamicObject org = realbalance.getDynamicObject("org");
if (org!= null){
@ -56,13 +67,13 @@ public class FWInvQueryController {
OrmLocaleValue name = (OrmLocaleValue)warehouse.get("name");
resultBean.setWarehouseName(name.get("zh_CN"));
}
resultBean.setNumber(materialNumber);
resultBean.setLot(lot);
resultBean.setQty(qty);
resultBeanList.add(resultBean);
}
resultBean.setNumber(materialNumber);
resultBean.setLot(lot);
resultBean.setQty(totalQty);
resultBeanList.add(resultBean);
}
// resultBeanList.add(resultBeans);
}
resultExt.setFailCount(failCount);

View File

@ -5,6 +5,7 @@ import kd.bos.openapi.common.custom.annotation.ApiParam;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ApiModel
@ -30,6 +31,15 @@ public class FWInvQueryModel implements Serializable {
@ApiParam(value = "批次号", example = "20250101", required = true)
private String lot;
@ApiParam(value = "仓库编码", example = "01", required = true)
private String warehouseNumber;
@ApiParam(value = "生产日期", example = "2025-01-01", required = true)
private Date producedate;
@ApiParam(value = "到期日期", example = "2025-12-31", required = true)
private Date expirydate;
public String getMaterialNumber() {
return materialNumber;
}
@ -45,5 +55,29 @@ public class FWInvQueryModel implements Serializable {
public void setLot(String lot) {
this.lot = lot;
}
public String getWarehouseNumber() {
return warehouseNumber;
}
public void setWarehouseNumber(String warehouseNumber) {
this.warehouseNumber = warehouseNumber;
}
public Date getProducedate() {
return producedate;
}
public void setProducedate(Date producedate) {
this.producedate = producedate;
}
public Date getExpirydate() {
return expirydate;
}
public void setExpirydate(Date expirydate) {
this.expirydate = expirydate;
}
}
}