1、监控单过滤掉全派给自己的主单

2、子单的售后情况不在除售后单栏外的其他状态栏展示
This commit is contained in:
donqi 2022-11-01 23:57:21 +08:00
parent c8e744c0fc
commit c19dd62cd8
4 changed files with 66 additions and 12 deletions

View File

@ -462,9 +462,9 @@ public class OrderController extends BaseController {
response.setFinishedOrderNum(orderDetailService.countOrderDetailList(orderDetail)); response.setFinishedOrderNum(orderDetailService.countOrderDetailList(orderDetail));
// 统计监控单量 // 统计监控单量
orderMaster.setOrderStatus(null); orderMaster.setOrderStatus(null);
orderMaster.setOrderStatuses("2,3,4,5"); orderMaster.setFilterOnlyServOrder(true);
response.setMonitoredOrderNum(orderMasterService.countOrderMasterList(orderMaster)); response.setMonitoredOrderNum(orderMasterService.countOrderMasterList(orderMaster));
orderMaster.setOrderStatuses(null); orderMaster.setFilterOnlyServOrder(false);
// 统计搁置单量 // 统计搁置单量
orderDetail.setShelveStatus(1); orderDetail.setShelveStatus(1);
response.setShelvedOrderNum(orderDetailService.countOrderDetailList(orderDetail)); response.setShelvedOrderNum(orderDetailService.countOrderDetailList(orderDetail));
@ -1002,9 +1002,9 @@ public class OrderController extends BaseController {
if (Boolean.TRUE.equals(orderDetail.getIsOverTime()) && !isOverTime) continue; if (Boolean.TRUE.equals(orderDetail.getIsOverTime()) && !isOverTime) continue;
// 售后记录 // 售后记录
AfterServiceRecord afterServiceRecord = new AfterServiceRecord(); // AfterServiceRecord afterServiceRecord = new AfterServiceRecord();
afterServiceRecord.setOrderDetailId(detail.getId()); // afterServiceRecord.setOrderDetailId(detail.getId());
List<AfterServiceRecord> afterServiceRecordList =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord); // List<AfterServiceRecord> afterServiceRecordList =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord);
// 编辑返回属性 // 编辑返回属性
orderListResponse.setOrderDetailId(detail.getId()); orderListResponse.setOrderDetailId(detail.getId());
@ -1038,7 +1038,7 @@ public class OrderController extends BaseController {
orderListResponse.setOrderType(detail.getOrderType()); orderListResponse.setOrderType(detail.getOrderType());
orderListResponse.setIsOverTime(isOverTime); orderListResponse.setIsOverTime(isOverTime);
orderListResponse.setChangeMoney(changeMoney); orderListResponse.setChangeMoney(changeMoney);
orderListResponse.setAfterServiceRecordList(afterServiceRecordList); // orderListResponse.setAfterServiceRecordList(afterServiceRecordList);
orderListResponses.add(orderListResponse); orderListResponses.add(orderListResponse);
} }
return orderListResponses; return orderListResponses;

View File

@ -335,9 +335,9 @@ public class OrderDetailController extends BaseController {
} }
// 售后记录 // 售后记录
AfterServiceRecord afterServiceRecord = new AfterServiceRecord(); // AfterServiceRecord afterServiceRecord = new AfterServiceRecord();
afterServiceRecord.setOrderDetailId(detail.getId()); // afterServiceRecord.setOrderDetailId(detail.getId());
List<AfterServiceRecord> afterServiceRecordList =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord); // List<AfterServiceRecord> afterServiceRecordList =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord);
// 编辑返回属性 // 编辑返回属性
orderListResponse.setOrderDetailId(detail.getId()); orderListResponse.setOrderDetailId(detail.getId());
@ -370,7 +370,7 @@ public class OrderDetailController extends BaseController {
orderListResponse.setOrderType(detail.getOrderType()); orderListResponse.setOrderType(detail.getOrderType());
orderListResponse.setIsOverTime(isOverTime); orderListResponse.setIsOverTime(isOverTime);
orderListResponse.setChangeMoney(changeMoney); orderListResponse.setChangeMoney(changeMoney);
orderListResponse.setAfterServiceRecordList(afterServiceRecordList); // orderListResponse.setAfterServiceRecordList(afterServiceRecordList);
orderListResponses.add(orderListResponse); orderListResponses.add(orderListResponse);
}); });
return voDataTable(orderListResponses, list); return voDataTable(orderListResponses, list);

View File

@ -85,4 +85,6 @@ public class OrderMaster extends BaseEntity {
private String orderMasterIds; private String orderMasterIds;
private Boolean useTimeNotRange; private Boolean useTimeNotRange;
private Boolean filterOnlyServOrder;
} }

View File

@ -71,9 +71,53 @@
LEFT JOIN goods g ON g.goods_id = om.goods_id LEFT JOIN goods g ON g.goods_id = om.goods_id
</sql> </sql>
<sql id="selectNoOnlyServOrder">
select om.id,
om.dept_id,
om.code,
om.customer_id,
om.address_id,
om.order_type,
om.order_status,
om.pay_type,
om.pay_status,
om.worker_id,
om.pay_time,
om.rev_time,
om.expect_time_start,
om.expect_time_end,
om.create_by,
om.create_time,
om.remark,
om.goods_id
from order_master om
left join (
select om.id, count(om.id) as subOrderCount, max(od.worker_id) as odWorkerId from order_master om
left join order_detail od on od.order_master_id = om.id
group by om.id) odCount
on odCount.id = om.id
</sql>
<sql id="countNoOnlyServOrder">
select count(*) from order_master om
left join (
select om.id, count(om.id) as subOrderCount, max(od.worker_id) as odWorkerId from order_master om
left join order_detail od on od.order_master_id = om.id
group by om.id) odCount
on odCount.id = om.id
</sql>
<select id="selectOrderMasterList" parameterType="com.ghy.order.domain.OrderMaster" resultMap="OrderMasterResult"> <select id="selectOrderMasterList" parameterType="com.ghy.order.domain.OrderMaster" resultMap="OrderMasterResult">
<include refid="selectOrderMasterMoreInfo"/> <if test="!filterOnlyServOrder">
<include refid="selectOrderMasterMoreInfo"></include>
</if>
<if test="filterOnlyServOrder">
<include refid="selectNoOnlyServOrder"></include>
</if>
<where> <where>
<if test="filterOnlyServOrder">
AND subOrderCount = 1 AND om.worker_id = odWorkerId AND om.order_status in (2,3,4,5)
</if>
<if test="deptId != null and deptId != 0"> <if test="deptId != null and deptId != 0">
AND om.dept_id = #{deptId} AND om.dept_id = #{deptId}
</if> </if>
@ -143,8 +187,16 @@
</select> </select>
<select id="countOrderMasterList" parameterType="com.ghy.order.domain.OrderMaster" resultType="Long"> <select id="countOrderMasterList" parameterType="com.ghy.order.domain.OrderMaster" resultType="Long">
SELECT COUNT(*) FROM order_master om <if test="!filterOnlyServOrder">
SELECT COUNT(*) FROM order_master om
</if>
<if test="filterOnlyServOrder">
<include refid="countNoOnlyServOrder"></include>
</if>
<where> <where>
<if test="filterOnlyServOrder">
AND subOrderCount = 1 AND om.worker_id = odWorkerId AND om.order_status in (2,3,4,5)
</if>
<if test="deptId != null and deptId != 0"> <if test="deptId != null and deptId != 0">
AND om.dept_id = #{deptId} AND om.dept_id = #{deptId}
</if> </if>