mybatis 返回对象部分属性是list集合
·
<resultMap id="BaseResultMap" type="com.lichen.springbootfirst.domain.NonOilOrder" >
<id column="noo_id" property="nooId" jdbcType="BIGINT" />
<result column="order_code" property="orderCode" jdbcType="VARCHAR" />
<result column="station_id" property="stationId" jdbcType="BIGINT" />
<result column="cm_id" property="cmId" jdbcType="BIGINT" />
<result column="payable_amount" property="payableAmount" jdbcType="DECIMAL" />
<result column="actually_amount" property="actuallyAmount" jdbcType="DECIMAL" />
<result column="discount_amount" property="discountAmount" jdbcType="DECIMAL" />
<result column="customer_id" property="customerId" jdbcType="BIGINT" />
<result column="customer_phone" property="customerPhone" jdbcType="VARCHAR" />
<result column="staff_id" property="staffId" jdbcType="BIGINT" />
<result column="pay_type" property="payType" jdbcType="VARCHAR" />
<result column="status" property="status" jdbcType="VARCHAR" />
<result column="device_id" property="deviceId" jdbcType="VARCHAR" />
<result column="pay_time" property="payTime" jdbcType="TIMESTAMP" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="enterprise_id" property="enterpriseId" jdbcType="BIGINT" />
<result column="enterprise_name" property="enterpriseName" jdbcType="VARCHAR" />
<result column="station_name" property="stationName" jdbcType="VARCHAR" />
<result column="is_deleted" property="isDeleted" jdbcType="CHAR" />
<result column="transaction_id" property="transactionId" jdbcType="VARCHAR" />
<result column="merchants_no" property="merchantsNo" jdbcType="VARCHAR" />
<result column="clear_no" property="clearNo" jdbcType="VARCHAR" />
<result column="service_charge" property="serviceCharge" jdbcType="DECIMAL" />
<result column="commission" property="commission" jdbcType="DECIMAL" />
<result column="channel_fee_payer" property="channelFeePayer" jdbcType="CHAR" />
<result column="discount_coupon_amount" property="discountCouponAmount" jdbcType="DECIMAL" />
<result column="discount_coupon" property="discountCoupon" jdbcType="VARCHAR" />
<collection property="orderDetailsList" ofType="com.lichen.springbootfirst.domain.OrderDetails">
<id column="id" property="id" jdbcType="BIGINT" />
<result column="order_code" property="orderCode" jdbcType="VARCHAR" />
<result column="commodity_id" property="commodityId" jdbcType="BIGINT" />
<result column="commodity_name" property="commodityName" jdbcType="VARCHAR" />
<result column="commodity_code" property="commodityCode" jdbcType="VARCHAR" />
<result column="bar_code" property="barCode" jdbcType="VARCHAR" />
<result column="category_id" property="categoryId" jdbcType="BIGINT" />
<result column="category_name" property="categoryName" jdbcType="VARCHAR" />
<result column="commodity_num" property="commodityNum" jdbcType="BIGINT" />
<result column="sale_price" property="salePrice" jdbcType="DECIMAL" />
<result column="total_price" property="totalPrice" jdbcType="DECIMAL" />
<result column="status" property="status" jdbcType="VARCHAR" />
<result column="is_deleted" property="isDeleted" jdbcType="CHAR" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="pay_time" property="payTime" jdbcType="TIMESTAMP" />
</collection>
</resultMap>
<select id="selectNonOilOrderList" resultMap="BaseResultMap">
select
noo.noo_id,noo.order_code, noo.station_id, noo.payable_amount, noo.actually_amount, noo.discount_amount,
noo.customer_id, noo.customer_phone, noo.staff_id, noo.pay_type, noo.status, noo.device_id,
noo.pay_time, noo.create_time, noo.enterprise_id, noo.enterprise_name, noo.station_name,
od.commodity_id, od.commodity_name, od.commodity_code, od.bar_code, od.category_id, od.category_name,
od.commodity_num, od.sale_price, od.total_price
from non_oil_order noo
left join order_details od
on noo.order_code = od.order_code
<where>
noo.is_deleted = 0 and noo.order_code = '1709844512147571075'
</where>
</select>
@Data
public class NonOilOrder {
private Long nooId;
private String orderCode;
private Long stationId;
private Long cmId;
private BigDecimal payableAmount;
private BigDecimal actuallyAmount;
private BigDecimal discountAmount;
private Long customerId;
private String customerPhone;
private Long staffId;
private String payType;
private String status;
private String deviceId;
private Date payTime;
private Date createTime;
private Long enterpriseId;
private String enterpriseName;
private String stationName;
private String isDeleted;
private String transactionId;
private String merchantsNo;
private String clearNo;
private BigDecimal serviceCharge;
private BigDecimal commission;
private String channelFeePayer;
private BigDecimal discountCouponAmount;
private String discountCoupon;
private List<OrderDetails> orderDetailsList ; // 对应collection
}
注意:不能缺少两个表的id ,尤其是外层表 如上是non_oil_order 的 noo_id 字段
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)