Primefaces 子表中的子表

问题描述 投票:0回答:2

我正在尝试构建一个具有多个子表的 primefaces 数据表。

关系如下。

供应商可以有多个采购订单。同一采购订单的采购订单可以有多个行。

我有以下VO。

  1. 供应商
  2. 采购订单标题
  3. 采购订单行

我有一份最终的 VO,其中包含所有上述 VO 的列表。

供应商PO查看

public List<Supplier> supplier;
public List<POHeader> poHeader;
public List<POLine>   poLine;

我有 myBatis 和相应的映射器,它将上述信息映射并存储在

的 List 对象中
public List<SupplierPOView> supplierPOViewList;

supplierPOViewList 有 getter 和 setter。

但不确定如何在 primefaces 数据表中表示这一点。

我在供应商位于顶层之后,它显示采购订单标题信息,然后是采购订单行。

你能帮忙吗?

谢谢

primefaces datatable
2个回答
0
投票

使用

<p:dataGrid />
代表供应商。

然后在

datagrid
中,使用
<p:dataTable>
获取订单头信息,然后使用订单行

使用

p:subTable
(在数据表内)。

数据网格

数据表

子表


0
投票

虽然是10多年前的事了。我正在尝试做类似的事情:@Chirag Jhaveri。

‘column’#1-4 显示 OK。但#5不会显示任何内容,没有错误。

 <p:dataTable var="beWhereWhenMobile" value="#{beWhereWhenController.beWhereWhenByMobile}"
                     lazy="true"
                     style="width:100%"
                     rowKey="#{beWhereWhenMobile.id}"
                     border="1"
                     headerText="beWhereWhenMobile"
                     scrollable="false">

            <p:subTable var="events" value="#{beWhereWhenMobile.events}">

                <!-- 1 of 9 -->
                <!-- mobile -->
                <p:column visible="true">
                    <f:facet name="header">
                        <h:outputText value="beWhereWhenMobile mobile"/>
                    </f:facet>

                    <h:outputText value="#{beWhereWhenMobile.mobile}">
                    </h:outputText>
                </p:column>

                <!-- 2 of 9 -->
                <!-- events.eventName -->
                <p:column visible="true">
                    <f:facet name="header">
                        <h:outputText value="subTableBeWhereWhenMobile events eventName"/>
                    </f:facet>

                    <h:outputText value="#{events.eventName}">
                    </h:outputText>
                </p:column>

                <!-- 3 of 9 -->
                <!-- events.fromDateStart -->
                <p:column visible="true">
                    <f:facet name="header">
                        <h:outputText value="beWhereWhenMobile events fromDateStart"/>
                    </f:facet>

                    <h:outputText value="#{events.fromDateStart}">
                    </h:outputText>
                </p:column>

                <!-- 4 of 9 -->
                <!-- events.toDateEnd -->
                <p:column visible="true">
                    <f:facet name="header">
                        <h:outputText value="beWhereWhenMobile events toDateEnd"/>
                    </f:facet>

                    <h:outputText value="#{events.toDateEnd}">
                    </h:outputText>
                </p:column>
            </p:subTable>

            <p:subTable var="people" value="#{events.people}">
                <!-- 5 of 9 -->
                <!-- events.people.userName -->
                <p:column visible="true">
                    <f:facet name="header">
                        <h:outputText value="beWhereWhenMobile events people userName"/>
                    </f:facet>

                    <h:outputText value="#{people.userName}">
                    </h:outputText>
                </p:column>
            </p:subTable>
...
</>

使用:

  • PrimeFaces:primefaces-14.0.7-jakart
  • 雅加达面孔4.1.1

蒂亚

© www.soinside.com 2019 - 2024. All rights reserved.