mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
订单管理、未排订单、分堆打包支持条件过滤作用到子单
This commit is contained in:
+34
-1
@@ -103,6 +103,23 @@ public interface OrderMapper extends BaseMapperX<OrderDO> {
|
|||||||
return selectPage(reqVO, query);
|
return selectPage(reqVO, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询主单(带子单过滤)
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<OrderDO> selectMainPage(@Param("page") IPage<OrderDO> page, @Param("reqVO") OrderPageReqVO reqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询子单列表
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @param parentIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<OrderDO> selectChildList(@Param("reqVO") OrderPageReqVO reqVO, @Param("parentIds") List<Long> parentIds);
|
||||||
|
|
||||||
IPage<OrderRespVOCopy> selectOrderPage(@Param("page") IPage<OrderRespVOCopy> page, @Param(Constants.WRAPPER) Wrapper<OrderDO> wrapper);
|
IPage<OrderRespVOCopy> selectOrderPage(@Param("page") IPage<OrderRespVOCopy> page, @Param(Constants.WRAPPER) Wrapper<OrderDO> wrapper);
|
||||||
|
|
||||||
@@ -322,8 +339,24 @@ public interface OrderMapper extends BaseMapperX<OrderDO> {
|
|||||||
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo, @Param("packageNo") Long packageNo, @Param("organId") Long organId);
|
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo, @Param("packageNo") Long packageNo, @Param("organId") Long organId);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询分堆打包订单分页
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param pageReqVO
|
||||||
|
* @param organId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<PackRespVO> selectPackOrderList(@Param("page") IPage<PackRespVO> page, @Param("pageReqVO") PackPageReqVO pageReqVO, @Param("organId") Long organId);
|
||||||
|
|
||||||
IPage<PackRespVO> selectOrderIdList(@Param("page") IPage<PackRespVO> page, @Param("pageReqVO") PackPageReqVO pageReqVO, @Param("organId") Long organId);
|
/**
|
||||||
|
* 查询分堆打包子单列表
|
||||||
|
*
|
||||||
|
* @param pageReqVO
|
||||||
|
* @param organId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<PackRespVO> selectPackOrderChildList(@Param("pageReqVO") PackPageReqVO pageReqVO, @Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
||||||
|
|
||||||
|
|
||||||
List<LabelOrderData> selectLabelOrderData(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
List<LabelOrderData> selectLabelOrderData(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
||||||
|
|||||||
+16
@@ -38,6 +38,22 @@ public interface PlanItemMapper extends BaseMapperX<PlanItemDO> {
|
|||||||
@Param("orderGoodsIds") List<Long> orderGoodsIds,
|
@Param("orderGoodsIds") List<Long> orderGoodsIds,
|
||||||
@Param("orderIds") Long... orderIds);
|
@Param("orderIds") Long... orderIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 未排单子单查询
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param wrapper
|
||||||
|
* @param type
|
||||||
|
* @param orderGoodsIds 商品id列表
|
||||||
|
* @param orderIds 父级订单数组
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<OrderRespVOCopy> selectOrderChildList(@Param("page") IPage<OrderRespVOCopy> page,
|
||||||
|
@Param(Constants.WRAPPER) Wrapper<OrderDO> wrapper,
|
||||||
|
@Param("type") int type,
|
||||||
|
@Param("orderGoodsIds") List<Long> orderGoodsIds,
|
||||||
|
@Param("orderIds") Long... orderIds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询排单小板
|
* 查询排单小板
|
||||||
*
|
*
|
||||||
|
|||||||
+4
-11
@@ -938,7 +938,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
|
|
||||||
// 查询主单分页
|
// 查询主单分页
|
||||||
IPage<PackRespVO> packRespVOS = ordersMapper.selectOrderIdList(page, pageReqVO, getUserOrganId());
|
IPage<PackRespVO> packRespVOS = ordersMapper.selectPackOrderList(page, pageReqVO, getUserOrganId());
|
||||||
|
|
||||||
if (CollUtil.isEmpty(packRespVOS.getRecords())) {
|
if (CollUtil.isEmpty(packRespVOS.getRecords())) {
|
||||||
return new PageResult<>();
|
return new PageResult<>();
|
||||||
@@ -947,17 +947,10 @@ public class PackServiceImpl implements PackService {
|
|||||||
orderIds.addAll(packRespVOS.getRecords().stream().map(PackRespVO::getId).toList());
|
orderIds.addAll(packRespVOS.getRecords().stream().map(PackRespVO::getId).toList());
|
||||||
|
|
||||||
// 查询分页下子级
|
// 查询分页下子级
|
||||||
List<OrderDO> childList = ordersMapper.selectList(
|
List<PackRespVO> childList = ordersMapper.selectPackOrderChildList(pageReqVO, orderIds, getUserOrganId());
|
||||||
new LambdaQueryWrapperX<OrderDO>()
|
|
||||||
.in(OrderDO::getParentId, orderIds)
|
|
||||||
.eqIfPresent(OrderDO::getDeleted, DeletedCodeEnum.NOT_DELETED.getStatus())
|
|
||||||
.ne(OrderDO::getStatus, OrderStatusEnum.EMPTY.getStatus())
|
|
||||||
.orderByDesc(OrderDO::getId)
|
|
||||||
);
|
|
||||||
if (CollUtil.isNotEmpty(childList)) {
|
if (CollUtil.isNotEmpty(childList)) {
|
||||||
for (OrderDO child : childList) {
|
for (PackRespVO childPackRespVO : childList) {
|
||||||
PackRespVO childPackRespVO = BeanUtil.copyProperties(child, PackRespVO.class);
|
|
||||||
childPackRespVO.setTotalPieceCount(child.getPlateNum());
|
|
||||||
packRespVOS.getRecords().add(childPackRespVO);
|
packRespVOS.getRecords().add(childPackRespVO);
|
||||||
orderIds.add(childPackRespVO.getId());
|
orderIds.add(childPackRespVO.getId());
|
||||||
}
|
}
|
||||||
|
|||||||
+7
-10
@@ -309,23 +309,20 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<OrderDO> getMainOrderPage(OrderPageReqVO pageReqVO) {
|
public PageResult<OrderDO> getMainOrderPage(OrderPageReqVO pageReqVO) {
|
||||||
PageResult<OrderDO> pageResult = orderMapper.selectPage(pageReqVO.setOrganId(getUserOrganId()));
|
IPage<OrderDO> page = new PageDTO<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||||
|
IPage<OrderDO> pageResult = orderMapper.selectMainPage(page, pageReqVO);
|
||||||
Long pageResultTotal = pageResult.getTotal();
|
Long pageResultTotal = pageResult.getTotal();
|
||||||
if (pageResultTotal > 0) {
|
if (pageResultTotal > 0) {
|
||||||
List<OrderDO> orderDOS = pageResult.getList();
|
List<OrderDO> orderDOS = pageResult.getRecords();
|
||||||
// 1、整理所有订单id
|
// 1、整理所有订单id
|
||||||
List<Long> orderIds = orderDOS.stream().map(OrderDO::getId).toList();
|
List<Long> orderIds = orderDOS.stream().map(OrderDO::getId).toList();
|
||||||
|
|
||||||
// 2、查询订单id列表对应的子单
|
// 2、查询订单id列表对应的子单
|
||||||
List<OrderDO> childList = orderMapper.selectList(
|
List<OrderDO> childList =
|
||||||
new LambdaQueryWrapperX<OrderDO>()
|
orderMapper.selectChildList(pageReqVO, orderIds);
|
||||||
.in(OrderDO::getParentId, orderIds)
|
|
||||||
.eqIfPresent(OrderDO::getDeleted, pageReqVO.getDeleted())
|
|
||||||
.orderByDesc(OrderDO::getId)
|
|
||||||
);
|
|
||||||
|
|
||||||
if (CollUtil.isEmpty(childList)) {
|
if (CollUtil.isEmpty(childList)) {
|
||||||
return pageResult;
|
return new PageResult<>(pageResult.getRecords(), pageResultTotal);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3、 按 parentId 分组
|
// 3、 按 parentId 分组
|
||||||
@@ -338,7 +335,7 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
}
|
}
|
||||||
return new PageResult<>(orderDOS, pageResultTotal);
|
return new PageResult<>(orderDOS, pageResultTotal);
|
||||||
}
|
}
|
||||||
return pageResult;
|
return new PageResult<>(pageResult.getRecords(), pageResultTotal);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+1
-1
@@ -574,7 +574,7 @@ public class PlanServiceImpl implements PlanService {
|
|||||||
// 主单id列表
|
// 主单id列表
|
||||||
Long[] mainOrderIds = mainOrderList.stream().map(OrderRespVOCopy::getOrderId).toArray(Long[]::new);
|
Long[] mainOrderIds = mainOrderList.stream().map(OrderRespVOCopy::getOrderId).toArray(Long[]::new);
|
||||||
PageDTO<OrderRespVOCopy> childPage = new PageDTO<>(pageReqVO.getPageNo(), PageParam.PAGE_SIZE_NONE);
|
PageDTO<OrderRespVOCopy> childPage = new PageDTO<>(pageReqVO.getPageNo(), PageParam.PAGE_SIZE_NONE);
|
||||||
IPage<OrderRespVOCopy> childOrderList = planItemMapper.selectOrderList(childPage, queryWrapperX, type, orderGoodsIds, mainOrderIds);
|
IPage<OrderRespVOCopy> childOrderList = planItemMapper.selectOrderChildList(childPage, queryWrapperX, type, orderGoodsIds, mainOrderIds);
|
||||||
|
|
||||||
List<OrderRespVOCopy> childList = childOrderList.getRecords();
|
List<OrderRespVOCopy> childList = childOrderList.getRecords();
|
||||||
|
|
||||||
|
|||||||
+403
-39
@@ -28,6 +28,277 @@
|
|||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="selectMainPage" resultType="com.cf.imes.module.executor.dal.dataobject.order.OrderDO">
|
||||||
|
SELECT *
|
||||||
|
FROM orders o
|
||||||
|
WHERE o.parent_id = 0
|
||||||
|
AND o.id IN (
|
||||||
|
|
||||||
|
SELECT DISTINCT
|
||||||
|
CASE
|
||||||
|
WHEN t.parent_id = 0 THEN t.id
|
||||||
|
ELSE t.parent_id
|
||||||
|
END AS root_id
|
||||||
|
FROM orders t
|
||||||
|
WHERE 1 = 1
|
||||||
|
|
||||||
|
<if test="reqVO.id != null and reqVO.id != ''">
|
||||||
|
AND CAST(t.id AS CHAR) LIKE CONCAT('%', #{reqVO.id}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.parentNo != null">
|
||||||
|
AND t.parent_id = #{reqVO.parentNo}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.apiOrderId != null and reqVO.apiOrderId != ''">
|
||||||
|
AND t.api_order_id = #{reqVO.apiOrderId}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderDate != null and reqVO.orderDate.length == 2">
|
||||||
|
AND t.order_date BETWEEN #{reqVO.orderDate[0]} AND #{reqVO.orderDate[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.deliveryDate != null and reqVO.deliveryDate.length == 2">
|
||||||
|
AND t.delivery_date BETWEEN #{reqVO.deliveryDate[0]} AND #{reqVO.deliveryDate[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderType != null">
|
||||||
|
AND t.order_type = #{reqVO.orderType}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderSort != null">
|
||||||
|
AND t.order_sort = #{reqVO.orderSort}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dataType != null">
|
||||||
|
AND t.data_type = #{reqVO.dataType}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.status != null">
|
||||||
|
AND t.status = #{reqVO.status}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.customOrderNo != null and reqVO.customOrderNo != ''">
|
||||||
|
AND t.custom_order_no LIKE CONCAT('%', #{reqVO.customOrderNo}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.customer != null and reqVO.customer != ''">
|
||||||
|
AND t.customer = #{reqVO.customer}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.address != null and reqVO.address != ''">
|
||||||
|
AND t.address LIKE CONCAT('%', #{reqVO.address}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.phoneNumber != null and reqVO.phoneNumber != ''">
|
||||||
|
AND t.phone_number = #{reqVO.phoneNumber}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dealer != null and reqVO.dealer != ''">
|
||||||
|
AND t.dealer LIKE CONCAT('%', #{reqVO.dealer}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dealerPhoneNumber != null and reqVO.dealerPhoneNumber != ''">
|
||||||
|
AND t.dealer_phone_number = #{reqVO.dealerPhoneNumber}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.salesman != null and reqVO.salesman != ''">
|
||||||
|
AND t.salesman = #{reqVO.salesman}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.splitter != null and reqVO.splitter != ''">
|
||||||
|
AND t.splitter = #{reqVO.splitter}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.remark != null and reqVO.remark != ''">
|
||||||
|
AND t.remark = #{reqVO.remark}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.organId != null">
|
||||||
|
AND t.organ_id = #{reqVO.organId}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.createTime != null and reqVO.createTime.length == 2">
|
||||||
|
AND t.create_time BETWEEN #{reqVO.createTime[0]} AND #{reqVO.createTime[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
AND t.deleted = #{reqVO.deleted}
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
<choose>
|
||||||
|
|
||||||
|
<when test="reqVO.order != null and reqVO.order == 'ascend'">
|
||||||
|
|
||||||
|
<choose>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'id'">
|
||||||
|
ORDER BY o.id ASC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'customOrderNo'">
|
||||||
|
ORDER BY o.custom_order_no ASC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'orderDate'">
|
||||||
|
ORDER BY o.order_date ASC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'deliveryDate'">
|
||||||
|
ORDER BY o.delivery_date ASC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'apiOrderId'">
|
||||||
|
ORDER BY o.api_order_id ASC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<otherwise>
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
</otherwise>
|
||||||
|
|
||||||
|
</choose>
|
||||||
|
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.order != null and reqVO.order == 'descend'">
|
||||||
|
|
||||||
|
<choose>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'id'">
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'customOrderNo'">
|
||||||
|
ORDER BY o.custom_order_no DESC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'orderDate'">
|
||||||
|
ORDER BY o.order_date DESC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'deliveryDate'">
|
||||||
|
ORDER BY o.delivery_date DESC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<when test="reqVO.field == 'apiOrderId'">
|
||||||
|
ORDER BY o.api_order_id DESC
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<otherwise>
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
</otherwise>
|
||||||
|
|
||||||
|
</choose>
|
||||||
|
|
||||||
|
</when>
|
||||||
|
|
||||||
|
<otherwise>
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
</otherwise>
|
||||||
|
|
||||||
|
</choose>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectChildList"
|
||||||
|
resultType="com.cf.imes.module.executor.dal.dataobject.order.OrderDO">
|
||||||
|
|
||||||
|
SELECT *
|
||||||
|
FROM orders t
|
||||||
|
WHERE t.parent_id IN
|
||||||
|
|
||||||
|
<foreach collection="parentIds"
|
||||||
|
item="parentId"
|
||||||
|
open="("
|
||||||
|
separator=","
|
||||||
|
close=")">
|
||||||
|
#{parentId}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
<if test="reqVO.id != null and reqVO.id != ''">
|
||||||
|
AND CAST(t.id AS CHAR) LIKE CONCAT('%', #{reqVO.id}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.parentNo != null">
|
||||||
|
AND t.parent_id = #{reqVO.parentNo}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.apiOrderId != null and reqVO.apiOrderId != ''">
|
||||||
|
AND t.api_order_id = #{reqVO.apiOrderId}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderDate != null and reqVO.orderDate.length == 2">
|
||||||
|
AND t.order_date BETWEEN #{reqVO.orderDate[0]} AND #{reqVO.orderDate[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.deliveryDate != null and reqVO.deliveryDate.length == 2">
|
||||||
|
AND t.delivery_date BETWEEN #{reqVO.deliveryDate[0]} AND #{reqVO.deliveryDate[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderType != null">
|
||||||
|
AND t.order_type = #{reqVO.orderType}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.orderSort != null">
|
||||||
|
AND t.order_sort = #{reqVO.orderSort}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dataType != null">
|
||||||
|
AND t.data_type = #{reqVO.dataType}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.status != null">
|
||||||
|
AND t.status = #{reqVO.status}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.customOrderNo != null and reqVO.customOrderNo != ''">
|
||||||
|
AND t.custom_order_no LIKE CONCAT('%', #{reqVO.customOrderNo}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.customer != null and reqVO.customer != ''">
|
||||||
|
AND t.customer = #{reqVO.customer}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.address != null and reqVO.address != ''">
|
||||||
|
AND t.address LIKE CONCAT('%', #{reqVO.address}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.phoneNumber != null and reqVO.phoneNumber != ''">
|
||||||
|
AND t.phone_number = #{reqVO.phoneNumber}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dealer != null and reqVO.dealer != ''">
|
||||||
|
AND t.dealer LIKE CONCAT('%', #{reqVO.dealer}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.dealerPhoneNumber != null and reqVO.dealerPhoneNumber != ''">
|
||||||
|
AND t.dealer_phone_number = #{reqVO.dealerPhoneNumber}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.salesman != null and reqVO.salesman != ''">
|
||||||
|
AND t.salesman = #{reqVO.salesman}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.splitter != null and reqVO.splitter != ''">
|
||||||
|
AND t.splitter = #{reqVO.splitter}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.remark != null and reqVO.remark != ''">
|
||||||
|
AND t.remark = #{reqVO.remark}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.organId != null">
|
||||||
|
AND t.organ_id = #{reqVO.organId}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="reqVO.createTime != null and reqVO.createTime.length == 2">
|
||||||
|
AND t.create_time BETWEEN #{reqVO.createTime[0]} AND #{reqVO.createTime[1]}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
AND t.deleted = #{reqVO.deleted}
|
||||||
|
|
||||||
|
ORDER BY t.id DESC
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectOrderPage" resultMap="OrderPageMap">
|
<select id="selectOrderPage" resultMap="OrderPageMap">
|
||||||
|
|
||||||
@@ -539,65 +810,158 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<select id="selectOrderIdList" resultMap="PackMap" parameterType="map">
|
<select id="selectPackOrderList" resultMap="PackMap" parameterType="map">
|
||||||
|
|
||||||
|
|
||||||
select
|
SELECT
|
||||||
id,
|
o.id,
|
||||||
order_type as orderType,
|
o.order_type AS orderType,
|
||||||
parent_id as parentId,
|
o.parent_id AS parentId,
|
||||||
custom_order_no as customOrderNo,
|
o.custom_order_no AS customOrderNo,
|
||||||
dealer as dealer,
|
o.dealer AS dealer,
|
||||||
dealer_phone_number as dealerPhoneNumber,
|
o.dealer_phone_number AS dealerPhoneNumber,
|
||||||
order_date as orderDate,
|
o.order_date AS orderDate,
|
||||||
create_time as createTime,
|
o.create_time AS createTime,
|
||||||
delivery_date as deliveryDate,
|
o.delivery_date AS deliveryDate,
|
||||||
customer as customer,
|
o.customer AS customer,
|
||||||
phone_number as phoneNumber,
|
o.phone_number AS phoneNumber,
|
||||||
address as address,
|
o.address AS address,
|
||||||
salesman as salesman,
|
o.salesman AS salesman,
|
||||||
splitter as splitter,
|
o.splitter AS splitter,
|
||||||
packaged as packaged,
|
o.packaged AS packaged,
|
||||||
remark as remark,
|
o.remark AS remark,
|
||||||
plate_num as totalPieceCount,
|
o.plate_num AS totalPieceCount,
|
||||||
packed_plates_count as packedPlatesCount,
|
o.packed_plates_count AS packedPlatesCount,
|
||||||
packed_parts_count as packedPartsCount
|
o.packed_parts_count AS packedPartsCount
|
||||||
|
|
||||||
|
FROM orders o
|
||||||
|
|
||||||
|
WHERE o.id IN (
|
||||||
|
|
||||||
|
SELECT DISTINCT
|
||||||
|
|
||||||
|
CASE
|
||||||
|
WHEN x.parent_id = 0 THEN x.id
|
||||||
|
ELSE x.parent_id
|
||||||
|
END
|
||||||
|
|
||||||
|
FROM orders x
|
||||||
|
|
||||||
from orders
|
|
||||||
<where>
|
<where>
|
||||||
|
|
||||||
organ_id =#{organId}
|
x.organ_id = #{organId}
|
||||||
and deleted = false
|
|
||||||
and status in (1,2,3,4)
|
|
||||||
and parent_id = 0
|
|
||||||
|
|
||||||
<if test="pageReqVO.orderId !=null">
|
AND x.deleted = false
|
||||||
and id like concat('%', #{pageReqVO.orderId},'%')
|
|
||||||
|
AND x.status IN (1,2,3,4)
|
||||||
|
|
||||||
|
<if test="pageReqVO.orderId != null and pageReqVO.orderId != ''">
|
||||||
|
AND CAST(x.id AS CHAR) LIKE CONCAT('%', #{pageReqVO.orderId}, '%')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="pageReqVO.status !=null ">
|
<if test="pageReqVO.status != null">
|
||||||
and packaged = #{pageReqVO.status}
|
AND x.packaged = #{pageReqVO.status}
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="pageReqVO.customOrderNo !=null">
|
<if test="pageReqVO.customOrderNo != null and pageReqVO.customOrderNo != ''">
|
||||||
and custom_order_no like concat('%',#{pageReqVO.customOrderNo},'%')
|
AND x.custom_order_no LIKE CONCAT('%', #{pageReqVO.customOrderNo}, '%')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="pageReqVO.customer !=null">
|
<if test="pageReqVO.customer != null and pageReqVO.customer != ''">
|
||||||
and customer like concat('%', #{pageReqVO.customer},'%')
|
AND x.customer LIKE CONCAT('%', #{pageReqVO.customer}, '%')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="pageReqVO.address !=null">
|
<if test="pageReqVO.address != null and pageReqVO.address != ''">
|
||||||
and address like concat('%', #{pageReqVO.address},'%')
|
AND x.address LIKE CONCAT('%', #{pageReqVO.address}, '%')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="pageReqVO.dealer !=null">
|
<if test="pageReqVO.dealer != null and pageReqVO.dealer != ''">
|
||||||
and dealer like concat('%', #{pageReqVO.dealer},'%')
|
AND x.dealer LIKE CONCAT('%', #{pageReqVO.dealer}, '%')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
</where>
|
</where>
|
||||||
|
|
||||||
order by create_time desc
|
)
|
||||||
|
|
||||||
|
AND o.parent_id = 0
|
||||||
|
|
||||||
|
ORDER BY o.create_time DESC
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectPackOrderChildList" resultMap="PackMap" parameterType="map">
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
o.id,
|
||||||
|
o.order_type AS orderType,
|
||||||
|
o.parent_id AS parentId,
|
||||||
|
o.custom_order_no AS customOrderNo,
|
||||||
|
o.dealer AS dealer,
|
||||||
|
o.dealer_phone_number AS dealerPhoneNumber,
|
||||||
|
o.order_date AS orderDate,
|
||||||
|
o.create_time AS createTime,
|
||||||
|
o.delivery_date AS deliveryDate,
|
||||||
|
o.customer AS customer,
|
||||||
|
o.phone_number AS phoneNumber,
|
||||||
|
o.address AS address,
|
||||||
|
o.salesman AS salesman,
|
||||||
|
o.splitter AS splitter,
|
||||||
|
o.packaged AS packaged,
|
||||||
|
o.remark AS remark,
|
||||||
|
o.plate_num AS totalPieceCount,
|
||||||
|
o.packed_plates_count AS packedPlatesCount,
|
||||||
|
o.packed_parts_count AS packedPartsCount
|
||||||
|
|
||||||
|
FROM orders o
|
||||||
|
|
||||||
|
<where>
|
||||||
|
|
||||||
|
o.parent_id IN
|
||||||
|
|
||||||
|
<foreach item="orderId"
|
||||||
|
collection="orderIds"
|
||||||
|
open="("
|
||||||
|
separator=","
|
||||||
|
close=")">
|
||||||
|
#{orderId}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
AND o.deleted = false
|
||||||
|
|
||||||
|
AND o.status != 0
|
||||||
|
|
||||||
|
<if test="pageReqVO.orderId != null and pageReqVO.orderId != ''">
|
||||||
|
AND CAST(o.id AS CHAR)
|
||||||
|
LIKE CONCAT('%', #{pageReqVO.orderId}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="pageReqVO.status != null">
|
||||||
|
AND o.packaged = #{pageReqVO.status}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="pageReqVO.customOrderNo != null and pageReqVO.customOrderNo != ''">
|
||||||
|
AND o.custom_order_no
|
||||||
|
LIKE CONCAT('%', #{pageReqVO.customOrderNo}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="pageReqVO.customer != null and pageReqVO.customer != ''">
|
||||||
|
AND o.customer
|
||||||
|
LIKE CONCAT('%', #{pageReqVO.customer}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="pageReqVO.address != null and pageReqVO.address != ''">
|
||||||
|
AND o.address
|
||||||
|
LIKE CONCAT('%', #{pageReqVO.address}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="pageReqVO.dealer != null and pageReqVO.dealer != ''">
|
||||||
|
AND o.dealer
|
||||||
|
LIKE CONCAT('%', #{pageReqVO.dealer}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
</where>
|
||||||
|
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|||||||
+118
-36
@@ -19,12 +19,12 @@
|
|||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<select id="selectOrderList" resultMap="OrderPageMap">
|
<select id="selectOrderList" resultMap="OrderPageMap">
|
||||||
select
|
SELECT
|
||||||
o.id as orderId,
|
o.id AS orderId,
|
||||||
|
|
||||||
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@ORDER_GROUP.getType()">
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@ORDER_GROUP.getType()">
|
||||||
o.plate_num - o.planned_plate_num as num,
|
o.plate_num - o.planned_plate_num AS num,
|
||||||
o.area - o.planned_plate_area as area,
|
o.area - o.planned_plate_area AS area,
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
||||||
@@ -32,51 +32,133 @@
|
|||||||
t.area,
|
t.area,
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
o.parent_id as parentId,
|
o.parent_id AS parentId,
|
||||||
o.order_type as orderType,
|
o.order_type AS orderType,
|
||||||
o.order_date as orderDate,
|
o.order_date AS orderDate,
|
||||||
o.delivery_date as deliveryDate,
|
o.delivery_date AS deliveryDate,
|
||||||
o.customer as customer,
|
o.customer AS customer,
|
||||||
o.address as address,
|
o.address AS address,
|
||||||
o.custom_order_no as defineId,
|
o.custom_order_no AS defineId,
|
||||||
o.status as status
|
o.status AS status
|
||||||
|
|
||||||
from orders o
|
FROM orders o
|
||||||
|
|
||||||
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
||||||
join (
|
|
||||||
select
|
JOIN (
|
||||||
|
SELECT
|
||||||
og.order_id,
|
og.order_id,
|
||||||
sum(og.plate_num - og.planned_plate_num) as num,
|
SUM(og.plate_num - og.planned_plate_num) AS num,
|
||||||
sum(og.area - og.planned_plate_area) as area
|
SUM(og.area - og.planned_plate_area) AS area
|
||||||
from order_goods og
|
FROM order_goods og
|
||||||
where og.plate_num - og.planned_plate_num > 0
|
WHERE og.plate_num - og.planned_plate_num > 0
|
||||||
|
|
||||||
<if test="orderGoodsIds != null and orderGoodsIds.size() > 0">
|
<if test="orderGoodsIds != null and orderGoodsIds.size() > 0">
|
||||||
AND og.id IN
|
AND og.id IN
|
||||||
<foreach item="orderGoodsId" collection="orderGoodsIds" open="(" separator="," close=")">
|
<foreach item="orderGoodsId"
|
||||||
|
collection="orderGoodsIds"
|
||||||
|
open="("
|
||||||
|
separator=","
|
||||||
|
close=")">
|
||||||
#{orderGoodsId}
|
#{orderGoodsId}
|
||||||
</foreach>
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
group by og.order_id
|
|
||||||
) t on t.order_id = o.id
|
GROUP BY og.order_id
|
||||||
|
|
||||||
|
) t ON t.order_id = o.id
|
||||||
|
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
${ew.customSqlSegment}
|
WHERE o.id IN (
|
||||||
and o.plate_num - o.planned_plate_num > 0
|
|
||||||
|
SELECT DISTINCT
|
||||||
|
|
||||||
|
CASE
|
||||||
|
WHEN x.parent_id = 0 THEN x.id
|
||||||
|
ELSE x.parent_id
|
||||||
|
END
|
||||||
|
|
||||||
|
FROM orders x
|
||||||
|
|
||||||
|
${ew.customSqlSegment.replace('o.', 'x.')}
|
||||||
|
and IFNULL(x.plate_num,0) - IFNULL(x.planned_plate_num,0) > 0
|
||||||
|
)
|
||||||
|
|
||||||
|
AND o.parent_id = 0
|
||||||
|
|
||||||
|
AND IFNULL(o.plate_num,0) - IFNULL(o.planned_plate_num,0) > 0
|
||||||
|
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectOrderChildList" resultMap="OrderPageMap">
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
o.id AS orderId,
|
||||||
|
|
||||||
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@ORDER_GROUP.getType()">
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@ORDER_GROUP.getType()">
|
||||||
<choose>
|
o.plate_num - o.planned_plate_num AS num,
|
||||||
<when test="orderIds != null and orderIds.length > 0">
|
o.area - o.planned_plate_area AS area,
|
||||||
AND o.parent_id IN
|
|
||||||
<foreach item="orderId" collection="orderIds" open="(" separator="," close=")">
|
|
||||||
#{orderId}
|
|
||||||
</foreach>
|
|
||||||
</when>
|
|
||||||
<otherwise>
|
|
||||||
AND o.parent_id = 0
|
|
||||||
</otherwise>
|
|
||||||
</choose>
|
|
||||||
</if>
|
</if>
|
||||||
order by o.id desc
|
|
||||||
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
||||||
|
t.num,
|
||||||
|
t.area,
|
||||||
|
</if>
|
||||||
|
|
||||||
|
o.parent_id AS parentId,
|
||||||
|
o.order_type AS orderType,
|
||||||
|
o.order_date AS orderDate,
|
||||||
|
o.delivery_date AS deliveryDate,
|
||||||
|
o.customer AS customer,
|
||||||
|
o.address AS address,
|
||||||
|
o.custom_order_no AS defineId,
|
||||||
|
o.status AS status
|
||||||
|
|
||||||
|
FROM orders o
|
||||||
|
|
||||||
|
<if test="type != null and type == @com.cf.imes.module.executor.enums.OrderPlanQueryTypeEnum@GOODS_GROUP.getType()">
|
||||||
|
|
||||||
|
JOIN (
|
||||||
|
SELECT
|
||||||
|
og.order_id,
|
||||||
|
SUM(og.plate_num - og.planned_plate_num) AS num,
|
||||||
|
SUM(og.area - og.planned_plate_area) AS area
|
||||||
|
FROM order_goods og
|
||||||
|
WHERE og.plate_num - og.planned_plate_num > 0
|
||||||
|
|
||||||
|
<if test="orderGoodsIds != null and orderGoodsIds.size() > 0">
|
||||||
|
AND og.id IN
|
||||||
|
<foreach item="orderGoodsId"
|
||||||
|
collection="orderGoodsIds"
|
||||||
|
open="("
|
||||||
|
separator=","
|
||||||
|
close=")">
|
||||||
|
#{orderGoodsId}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
GROUP BY og.order_id
|
||||||
|
|
||||||
|
) t ON t.order_id = o.id
|
||||||
|
|
||||||
|
</if>
|
||||||
|
|
||||||
|
${ew.customSqlSegment}
|
||||||
|
AND IFNULL(o.plate_num,0) - IFNULL(o.planned_plate_num,0) > 0
|
||||||
|
AND o.parent_id IN
|
||||||
|
<foreach item="orderId"
|
||||||
|
collection="orderIds"
|
||||||
|
open="("
|
||||||
|
separator=","
|
||||||
|
close=")">
|
||||||
|
#{orderId}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
ORDER BY o.id DESC
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user