【问题标题】:JBilling creating custom fieldsJBilling 创建自定义字段
【发布时间】:2014-03-20 11:22:41
【问题描述】:
我对 jbilling 非常陌生,我正在尝试在 Add Customer 和 Add Product 页面下创建新的自定义字段。
我在添加客户中需要 Blood Group,在添加产品中需要 Expiry Date。
那么如何添加这些自定义字段?
我需要使用代码添加它还是有其他方法可以做到这一点。
另外,如果我创建这些字段,是否也会创建这些字段的 SOAP 接口?从 Jbilling Client API 访问它。
【问题讨论】:
标签:
java
tomcat
billing
jbilling
【解决方案1】:
您可以在 JBilling 中动态添加自定义字段。无需编程。
请确认您的 jBilling 版本。如果是 3.1 或更高版本,您将在 jBilling GUI 的“配置”主菜单下看到“元字段”链接。在元字段配置页面上,您可以先选择一个实体(在您的情况下为客户,产品)并添加/编辑元字段。您还可以配置数据类型、默认值、强制标志。
【解决方案2】:
U 也可以使用 api 来创建元字段。 jbilling 提供创建元字段的 api
api.createMetaField(MetaFieldWS metafieldWs)
您可以在 WebServicesSessionSpringBean.java 中找到上述方法
public Integer createMetaField(MetaFieldWS metafieldWs)
public static void main(String arg[]){
createMetaField()
}
public static void createMetaField() {
try {
JbillingAPI api = JbillingAPIFactory.getAPI();
MetaFieldWS metafield = new MetaFieldWS();
metafield.setEntityType(EntityType.CUSTOMER);
metafield.setName("BloodGroup");
metafield.setDataType(DataType.STRING);
metafield.setPrimary(true);
metafield.setMandatory(false);
metafield.setEntityId(api.getCompany().getId());
Integer result = api.createMetaField(metafield);
System.out.println("Metafield Created field ID:" + result);
} catch (JbillingAPIException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}