1、mapper
public interface WmsSendOrderLinesMapper extends BaseMapperPlus<WmsSendOrderLinesMapper, WmsSendOrderLines, WmsSendOrderLinesVo> {
List<WmsSendOrderLines> getBindProductLines(@Param(Constants.WRAPPER) Wrapper<WmsSendOrderLinesBo> queryWrapper);
}
2、xml
<select id="getBindProductLines" resultType="com.smart.wms.send.bean.WmsSendOrderLines">
select wsol.*, wp.bind_id
from wms_send_order_lines wsol
left join wms_product wp on wp.id = wsol.product_id
${ew.getCustomSqlSegment}
</select>
3、service
List<WmsSendOrderLines> getBindProductLines(WmsSendOrderLinesBo bo);
4、serviceImpl
@Override
public List<WmsSendOrderLines> getBindProductLines(WmsSendOrderLinesBo bo) {
return baseMapper.getBindProductLines(buildBindQueryWrapper(bo));
}
private QueryWrapper<WmsSendOrderLinesBo> buildBindQueryWrapper(WmsSendOrderLinesBo bo) {
QueryWrapper<WmsSendOrderLinesBo> lqw = Wrappers.query();
lqw.eq(bo.getSendOrderId() != null, "wsol.send_order_id", bo.getSendOrderId());
lqw.in(CollUtil.isNotEmpty(bo.getReturnOrderIds()),"wsol.returnOrderIds", bo.getReturnOrderIds());
lqw.groupBy("wsol.return_order_id,wsol.item_bar_code");
return lqw;
}
5、 controller
@RequestMapping("/test")
public void test() {
List<WmsSendOrderLines> orderLinesList = iWmsSendOrderLinesService.getBindProductLines(wmsSendOrderLinesBo);
}