`
z871994032
  • 浏览: 628 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多
1.在ftl中调用服务

<#assign result=dispatcher.runSync("服务名",Static["org.ofbiz.base.util.UtilMisc"].toMap(key,value))>


2.在ftl中查询实体
<#assign  statusItemGen=delegator.findByPrimaryKey("StatusItem",Static["org.ofbiz.base.util.UtilMisc"].toMap("statusId",facc.statusId?if_exists))>


3.在groovy中如何获取应用中的某个文件
fileUrl=new ComponentLocationResolver().resolveLocation("component://应用名/目录/");
file=new File(fileUrl.getPath()+文件名);


或者
String fileName="文件名";
String location="component:////应用名/目录/";
URL locationUrl=FlexibleLocation.resolveLocation(location+fileName);



4.jdbc查询
public BigDecimal getOrderReceivedPaymentTotal(String orderId) {
//    String helperName = delegator.getGroupHelperName("org.ofbiz");
//    Connection conn =null;
//    Statement statement = null;
//    ResultSet rs = null;
//    BigDecimal db = null;
//    try {
//     conn = ConnectionFactory.getConnection(helperName);
//     statement = conn.createStatement();
//     statement.execute("SELECT sum(MAX_AMOUNT) FROM ORDER_PAYMENT_PREF_AND_PAYMENT where order_id='"+
//     orderId+"' and status_Id='PAYMENT_RECEIVED' and paymentStatusId='PMNT_RECEIVED'");
//     rs = statement.getResultSet();
//     if(rs.next()) {
//     db = rs.getBigDecimal(1);
//     }
//    } catch(Exception e) {
//    System.out.println(e);
//    } finally {
//    try {
//     if(rs != null) {
//     rs.close();
//     }
//     if(statement != null) {
//     statement.close();
//     }
//     if(conn != null) {
//     conn.close();
//     }
//    } catch(Exception e) {
//    System.out.println(e);
//    }
//    }
//        return db;
//    }



5.条件查询
exprList = [EntityCondition.makeCondition("partyId", EntityOperator.EQUALS, userLogin.partyId),
        EntityCondition.makeCondition("shoppingListTypeId", EntityOperator.EQUALS, "SLT_WISH_LIST"),
EntityCondition.makeCondition("listName", EntityOperator.NOT_EQUAL, "Auto Suggestions")];
condition = EntityCondition.makeCondition(exprList, EntityOperator.AND);
allShoppingLists = delegator.findList("ShoppingList", condition, null, ["createdStamp DESC"], null, false);

例如查询一个时间段
exprList = [EntityCondition.makeCondition("createdByUserLogin", EntityOperator.EQUALS, userLogin.userLoginId),
EntityCondition.makeCondition("createdDate", EntityOperator.BETWEEN, [UtilDateTime.getDayStart(UtilDateTime.nowTimestamp()),UtilDateTime.getDayEnd(UtilDateTime.nowTimestamp())])];
condition = EntityCondition.makeCondition(exprList, EntityOperator.AND);
productPromoCodes=delegator.findByCondition("ProductPromoCode",condition,null,null);

多种条件的组合
exprList = [EntityCondition.makeCondition("statusId", EntityOperator.NOT_EQUAL, "PARTY_DISABLED")
            , EntityCondition.makeCondition("statusId", EntityOperator.NOT_EQUAL, null)];
CondList = EntityCondition.makeCondition(exprList, EntityOperator.AND);
CondList1 = EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, null);
statusPartyDisable = EntityCondition.makeCondition([CondList1, CondList], EntityOperator.OR);
entityConditionList = null;
if (prepareResult.entityConditionList != null) {
    ConditionList = [ prepareResult.entityConditionList, statusPartyDisable ];
    entityConditionList = EntityCondition.makeCondition(ConditionList);
} else if (context.noConditionFind == "Y") {
    entityConditionList = statusPartyDisable;
}

6.读取配置文件
currencyUom = UtilProperties.getPropertyValue("general.properties", "currency.uom.id.default", "CNY");

7.对查询的结果过滤
supProduct = EntityUtil.filterByDate(supProduct, UtilDateTime.nowTimestamp(), "availableFromDate", "availableThruDate", true);

8.更新记录
GenericValue pref = delegator.findByPrimaryKey("OrderPaymentPreference", UtilMisc.toMap("orderPaymentPreferenceId", prefId));
                pref.set("securityCode", securityCode);
                pref.store();

9.distinct语句的查询
List<EntityCondition> conditionList = UtilMisc.toList(
                        EntityCondition.makeCondition("contactListId", EntityOperator.EQUALS, contactList.get("contactListId")),
                        EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, "CLPT_ACCEPTED"),
                        EntityCondition.makeCondition("preferredContactMechId", EntityOperator.NOT_EQUAL, null),
                        EntityUtil.getFilterByDateExpr(), EntityUtil.getFilterByDateExpr("contactFromDate", "contactThruDate")
                        );
            List<String> fieldsToSelect = UtilMisc.toList("infoString");

            EntityCondition conditions = EntityCondition.makeCondition(conditionList, EntityOperator.AND);
            List<GenericValue> sendToEmails = delegator.findByCondition("ContactListPartyAndContactMech", conditions,  null, fieldsToSelect, null,
                    new EntityFindOptions(true, EntityFindOptions.TYPE_SCROLL_INSENSITIVE, EntityFindOptions.CONCUR_READ_ONLY, true));
分享到:
评论

相关推荐

    FTL_闪存转换层、flash、nand flash

    ### FTL_闪存转换层、flash、nand flash:深度解析 #### 一、FTL(Flash Translation Layer):闪存转换层概览 FTL,即Flash Translation Layer(闪存转换层),是位于闪存(特别是NAND Flash)与上层文件系统之间...

    ftl排版-xml格式化.zip

    FTL(FreeMarker)是一种基于Java的模板引擎,主要用于生成动态Web内容。它与XML(Extensible Markup Language)紧密关联,因为XML常被用来作为数据结构来存储和传输信息,而FTL则负责将这些数据渲染成用户友好的...

    带xml、ftl格式化工具的editplus

    提供的压缩包"EditPlus (带ftl格式化)"可能包含了预配置的EditPlus设置文件,或者是一些FTL相关的插件或模板,以增强EditPlus对FTL的支持。解压后,按照说明导入到EditPlus中,即可立即享受优化的FTL编辑体验。 ...

    Java根据ftl模板生成多表格复杂性word文档

    Java使用FTL(FreeMarker Template Language)模板生成多表格复杂性Word文档是一项常见的技术需求,尤其是在需要自动生成报告或批量处理文档的场景中。FreeMarker是一个强大的、基于模板的Java库,它允许开发者将...

    Freemarker代码生成器实体映射xml的ftl模板文件

    在这个场景下,"Freemarker代码生成器实体映射xml的ftl模板文件"是指利用Freemarker模板技术来创建一个用于生成XML实体映射文件的模板。这个`XML.ftl`文件就是核心,它是Freemarker模板的实例,其中定义了如何根据...

    FTL入门文档学习

    FTL入门文档学习 FTL(FreeMarker Template Language)是一种基于模板的文档生成技术,它允许设计者和程序员分工协作,设计者专注于页面的视觉设计,而程序员负责生成页面所需的数据。FTL通过在HTML或其它文本中...

    费思FTL系列可编程直流电源.pdf

    费思FTL系列可编程直流电源pdf,FTL 是一款高性能、多功能、中小功率的,系列可编程直流线性电源。产品稳定成熟,并具有过载、极性接反、过压、过流、过温度等全面的保护功能,可保持电源和负载在不稳定环境下的工作...

    4ftl数值计算和默认value以及value转换1

    FreeMarker (FTL) 是一个模板引擎,常用于前端与后端数据的渲染。它提供了丰富的功能,包括数值计算、默认值处理、类型转换以及字符串操作。以下是对这些知识点的详细说明: 1. **FTL 正则表达式计算**: 在 FTL ...

    可用的ftl文件压缩包

    FTL,全称为FreeMarker Template Language,是一种模板引擎,主要用于生成动态内容,尤其在Web开发中广泛应用。它是由Apache软件基金会的FreeMarker项目提供的一种Java库。在Java Web开发中,FTL通常与Spring框架、...

    Java生成word文档(仅一个文档模板原件和转换后缀为.ftl格式文件)

    本主题聚焦于如何利用一个文档模板原件和将其转换为.ftl(FreeMarker)格式来生成动态的Word文档。FreeMarker是Java的一个模板引擎,常用于生成HTML、XML等静态或动态文本,但也可扩展到生成Word文档。 首先,理解...

    嵌入式-nandflash-ftl层代码

    在实际应用中,FTL的设计有多种方式,如静态FTL、动态FTL、映射表在内存的FTL和映射表在闪存的FTL等,每种都有其优缺点,开发者需根据项目需求选择合适的实现方案。例如,对于资源有限的嵌入式系统,可能需要选择...

    FTL 编辑器

    FTL(FreeMarker Template Language)编辑器是一种专为处理FreeMarker模板语言设计的文本编辑工具。FreeMarker是一个开源的Java库,它用于生成动态Web内容,尤其是在Java应用程序中广泛使用,如Spring MVC框架。FTL...

    ftl详细帮助文档

    ftl的使用非常普及,但是,但是里面的语法却让人很难懂得,这里有详细的技术帮助文档

    关于eclipse的ftl模板的技巧设置方法

    ### 关于Eclipse中FTL模板的技巧设置方法 #### 概述 FreeMarker Template Language (FTL) 是一种用于生成文本输出的模板语言。它广泛应用于Java Web开发中,帮助开发者快速构建动态网页。然而,对于开发者而言,...

    E H液体音叉限位开关FTL50产品说明书.pdf

    由于提供的文件内容中重复出现了联系信息,并未提供E H液体音叉限位开关FTL50的详细产品信息,因此难以从这部分内容中生成具体的产品知识点。不过,根据标题“E H液体音叉限位开关FTL50产品说明书”我们可以推断一些...

    freemarker(FTL)常见语法大全

    ### Freemarker(FTL)常见语法详解 Freemarker是一种基于模板引擎技术的软件,用于生成文本输出。它被广泛应用于Web开发中,用来生成HTML页面或其他格式的文档。Freemarker使用简单直观的语法,使得开发者能够轻松...

    ftl转pdf的jar下载

    在Web开发中,尤其是在使用Spring框架时,FTL与MVC模式相结合,可以方便地将数据模型渲染成用户友好的视图。 PDF(Portable Document Format)是一种广泛使用的文件格式,用于存储和共享具有固定布局的文档。由于其...

    E H FTL31音叉开关技术资料.pdf

    ### E H FTL31音叉开关技术资料关键知识点总结 #### 一、产品概述 - **产品名称**:Liquiphant FTL31 音叉限位开关 - **应用领域**:广泛应用于罐体、容器和管道中进行液体限位检测,特别适用于清洗系统、过滤系统...

Global site tag (gtag.js) - Google Analytics