有一个报价的供应商集合,并有一个流口水的规则来找到最好的供应商(价格最低),但它似乎没有按预期工作......
以下是供应商POJO:
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@AllArgsConstructor
@Getter
@Setter
@ToString
public class Supplier {
private String supplier;
private String product;
private double price;
}
这是Drools DRL:
global org.slf4j.Logger log;
rule "Find_Best_Supplier"
when
$suppliers: Collection(size > 0)
$best: Supplier() from $suppliers
exists Supplier($best.price < price) from $suppliers
then
log.info("{}: Supplier {} is preferred for Product {}",
drools.getRule().getName(),
$best.getSupplier(),
$best.getProduct());
delete($suppliers);
insert($best);
end
以下是插入和触发规则的主代码段:
Supplier s1 = new Supplier("S1", "P1", 18.99);
Supplier s2 = new Supplier("S2", "P1", 18.59);
Supplier s3 = new Supplier("S3", "P1", 18.79);
KieSession ks = container.newKieSession();
ks.setGlobal("log", log);
ks.insert(Arrays.asList(s1, s2, s3));
ks.insert(in);
ks.insert(th);
ks.insert(pm);
ks.fireAllRules();
ks.dispose();
在日志中,它显示-Find\u Best\u Supplier:产品P1首选供应商S3。。。它应该选择S2。。。
有什么想法或建议吗?
只是为了其他人的利益...这是更正后的DRL:
rule "Find_Best_Supplier"
when
$suppliers: Collection(size > 0)
$best: Supplier($low: price) from $suppliers
not Supplier(price < $low) from $suppliers
then
log.info("{}: Supplier {} is preferred for Product {}",
drools.getRule().getName(),
$best.getSupplier(),
$best.getProduct());
delete($suppliers);
insert($best);
end
我在WooCommerce上创建了一个产品,并在产品详细信息页面上使用hook
我是一个node js编程,在amadeus网站上测试自助api调用。 我知道整个流程:航班提供搜索- PS.“创建订单”实际上是如何创建航班订单的?我没有看到预订机票的url链接,就像skyscanner的api一样。我得到的只是 客户如何根据此信息预订机票? PPS:是否可以在流程中跳过航班报价价格?如果没有,来自航班报价价格的响应作为创建订单的输入有效多长时间? 提前感谢。
提示 页面模板源码免费开源,在uni-app的插件市场uView的 示例项目 中,在右上角选择"使用 HBuilderX 导入示例项目" 或者 "下载示例项目ZIP", 在HX运行项目即可看到和使用模板。 提示 由于右侧的演示是通过iframe标签引入的,缺少了手机端运行的相关API,或者因为演示区域太小,或者电脑分别率不够高 ,导致演示可能会有问题,手机端有不会这些问题,请在右上角的"演示"中用
优惠券 功能介绍:店铺可定期发布优惠券,增加更多用户粘性。 步骤 从【营销中心】→【优惠券】→【添加优惠券】。 设置优惠券名称、面额、发行量、有效时间、以及使用条件。
我有一个网站正在使用Stripe来处理订阅付款。只有一种类型的订阅。我按照NetTuts上的教程进行了初始设置。有一个表单可以精细处理订阅,一切都正常。客户要求优惠券代码。Stripe支持这个,所以我开始尝试在现有表单中添加优惠券代码。 我在Stripe中设置优惠券代码,设置测试密钥,并在Stripe中切换到测试模式。我正在代码中执行几个检查: 检查是否输入了优惠券,如果没有,则创建一个没有优惠券
说明 作废一张优惠券,客人不会收到优惠券作废推送 请求地址 http://api.dc78.cn/Api/co_cancel 请求方式 GET 请求参数 参数 参数名称 必填 描述 范例 no 券号 id 券id取自协议4.1中返回的coid op 操作员 返回 { "status": "1", "info": "券作废成功:200426878349", "server_timestamp": 1