@ -96,9 +96,6 @@
GROUP_CONCAT(DISTINCT lapr.compensation_method) AS compensationMethods
GROUP_CONCAT(DISTINCT lapr.compensation_method) AS compensationMethods
FROM
FROM
logpm_aftersales_work_order lawo
logpm_aftersales_work_order lawo
LEFT JOIN logpm_aftersales_processor lap ON lawo.id = lap.work_order_id
AND lap.types_of = '2'
AND lap.conditions IN ( 1, 2 )
LEFT JOIN logpm_aftersales_completion_record lacr ON lacr.work_order_id = lawo.id
LEFT JOIN logpm_aftersales_completion_record lacr ON lacr.work_order_id = lawo.id
AND lacr.is_deleted = '0'
AND lacr.is_deleted = '0'
LEFT JOIN (SELECT
LEFT JOIN (SELECT
@ -117,8 +114,24 @@
GROUP BY
GROUP BY
a.id) AS t ON t.id = lawo.id
a.id) AS t ON t.id = lawo.id
LEFT JOIN logpm_aftersales_processing_results AS lapr ON lapr.work_order_id = lawo.id AND lapr.is_deleted = 0
LEFT JOIN logpm_aftersales_processing_results AS lapr ON lapr.work_order_id = lawo.id AND lapr.is_deleted = 0
LEFT JOIN logpm_aftersales_processor AS lap ON lawo.id = lap.work_order_id AND lap.is_deleted = 0
<where >
<where >
lawo.is_deleted = 0
lawo.is_deleted = 0
<if test= "param.workOrderNumbers != null and param.workOrderNumbers != '' " >
and lawo.work_order_number in
<foreach collection= "param.workOrderNumbers.split(',')" item= "workOrderNumber" separator= "," open= "(" close= ")" >
#{workOrderNumber}
</foreach>
</if>
<if test= "param.orderCodes != null and param.orderCodes != '' " >
and lawo.order_code in
<foreach collection= "param.orderCodes.split(',')" item= "orderCode" separator= "," open= "(" close= ")" >
#{orderCode}
</foreach>
</if>
<if test= "param.startCreateTime != null and param.endCreateTime != null " >
and lawo.create_time between #{param.startCreateTime} and #{param.endCreateTime}
</if>
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and lawo.work_order_status = #{param.workOrderStatusNameS } </if>
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and lawo.work_order_status = #{param.workOrderStatusNameS } </if>
<if test= "param.id != null and param.id != '' " > and lawo.id = #{param.id } </if>
<if test= "param.id != null and param.id != '' " > and lawo.id = #{param.id } </if>
<if test= "param.workOrderType != null and param.workOrderType != '' " > and lawo.work_order_type = #{param.workOrderType } </if>
<if test= "param.workOrderType != null and param.workOrderType != '' " > and lawo.work_order_type = #{param.workOrderType } </if>
@ -147,7 +160,6 @@
<if test= "param.customerServiceName != null and param.customerServiceName != '' " > and lawo.customer_service_name like concat('%', #{param.customerServiceName },'%') </if>
<if test= "param.customerServiceName != null and param.customerServiceName != '' " > and lawo.customer_service_name like concat('%', #{param.customerServiceName },'%') </if>
<if test= "param.waybillMallId != null and param.waybillMallId != '' " > and lawo.waybill_mall_id = #{param.waybillMallId } </if>
<if test= "param.waybillMallId != null and param.waybillMallId != '' " > and lawo.waybill_mall_id = #{param.waybillMallId } </if>
<if test= "param.problemDescription != null and param.problemDescription != '' " > and lawo.problem_description = #{param.problemDescription} </if>
<if test= "param.problemDescription != null and param.problemDescription != '' " > and lawo.problem_description = #{param.problemDescription} </if>
<if test= "param.warehouseId != null and param.warehouseId != '' and param.handleStatus != null " > and (lap.warehouse_id = #{param.warehouseId} OR lap.business_id = #{param.warehouseId}) </if>
<if test= "param.personResponsible != null and param.personResponsible != '' " > and lawo.person_responsible = #{param.personResponsible } </if>
<if test= "param.personResponsible != null and param.personResponsible != '' " > and lawo.person_responsible = #{param.personResponsible } </if>
<if test= "param.processNumber != null and param.processNumber != '' " > and lawo.process_number = #{param.processNumber } </if>
<if test= "param.processNumber != null and param.processNumber != '' " > and lawo.process_number = #{param.processNumber } </if>
<if test= "param.reviewedBy != null and param.reviewedBy != '' " > and lawo.reviewed_by = #{param.reviewedBy } </if>
<if test= "param.reviewedBy != null and param.reviewedBy != '' " > and lawo.reviewed_by = #{param.reviewedBy } </if>
@ -160,10 +172,9 @@
<if test= "param.customerIdentification != null and param.customerIdentification == 1 " >
<if test= "param.customerIdentification != null and param.customerIdentification == 1 " >
and lawo.work_order_status IN ( '10', '20', '21', '30', '40', '50', '60', '70', '80', '90' ,'100','110')
and lawo.work_order_status IN ( '10', '20', '21', '30', '40', '50', '60', '70', '80', '90' ,'100','110')
</if>
</if>
<if test= "param.handleStatus != null and param.handleStatus == 40 " > and lawo.work_order_status in ('10') and lap.types_of = '2' and lap.processing_status in ('1') </if>
<if test= "param.handleStatus != null and param.handleStatus == 40 " > and lawo.work_order_status in ('10') </if>
<if test= "param.handleStatus != null and param.handleStatus == 50 " > and lawo.work_order_status in ('20') and lap.types_of = '2' </if>
<if test= "param.handleStatus != null and param.handleStatus == 50 " > and lawo.work_order_status in ('20') </if>
<if test= "param.handleStatus!= null and param.handleStatus == 30" > and lawo.work_order_status in (21,30) and lap.processing_status = '4' </if>
<if test= "param.handleStatus!= null and param.handleStatus == 30" > and lawo.work_order_status in (21,30) </if>
<if test= "param.handleStatus!= null and param.handleStatus == 10 " > and lap.types_of = '2' </if>
<if test= "param.handleStatus!= null and param.handleStatus == 20 " > and lawo.work_order_status in (80,100,70) </if>
<if test= "param.handleStatus!= null and param.handleStatus == 20 " > and lawo.work_order_status in (80,100,70) </if>
<if test= "param.workOrderType != null and param.workOrderType != '' " > and lawo.work_order_type = #{param.workOrderType } </if>
<if test= "param.workOrderType != null and param.workOrderType != '' " > and lawo.work_order_type = #{param.workOrderType } </if>
<if test= "param.discoveryNode != null and param.discoveryNode != '' " > and lawo.discovery_node = #{param.discoveryNode } </if>
<if test= "param.discoveryNode != null and param.discoveryNode != '' " > and lawo.discovery_node = #{param.discoveryNode } </if>
@ -177,6 +188,12 @@
<if test= "param.brandName != null and param.brandName != '' " > and t.brand_name like concat('%',#{param.brandName},'%') </if>
<if test= "param.brandName != null and param.brandName != '' " > and t.brand_name like concat('%',#{param.brandName},'%') </if>
<if test= "param.waybillNumber != null and param.waybillNumber != ''" > and t.waybill_number like concat('%',#{param.waybillNumber},'%') </if>
<if test= "param.waybillNumber != null and param.waybillNumber != ''" > and t.waybill_number like concat('%',#{param.waybillNumber},'%') </if>
<if test= "param.packageCode != null and param.packageCode != ''" > and t.package_code like concat('%',#{param.packageCode},'%') </if>
<if test= "param.packageCode != null and param.packageCode != ''" > and t.package_code like concat('%',#{param.packageCode},'%') </if>
<if test= "param.warehouseId != null " >
and lap.business_id IN
<foreach collection= "warehouseIds" item= "warehouseId" open= "(" separator= "," close= ")" >
#{warehouseId}
</foreach>
</if>
</where>
</where>
group by lawo.id
group by lawo.id
ORDER BY lawo.create_time DESC
ORDER BY lawo.create_time DESC
@ -291,6 +308,8 @@
GROUP BY
GROUP BY
a.id) AS t ON t.id = lawo.id
a.id) AS t ON t.id = lawo.id
LEFT JOIN logpm_aftersales_processing_results AS lapr ON lapr.work_order_id = lawo.id AND lapr.is_deleted = 0
LEFT JOIN logpm_aftersales_processing_results AS lapr ON lapr.work_order_id = lawo.id AND lapr.is_deleted = 0
LEFT JOIN logpm_aftersales_processor AS lap ON lawo.id = lap.work_order_id AND lap.is_deleted = 0
<where >
<where >
lawo.is_deleted = 0
lawo.is_deleted = 0
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and lawo.work_order_status = #{param.workOrderStatusNameS } </if>
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and lawo.work_order_status = #{param.workOrderStatusNameS } </if>
@ -559,6 +578,21 @@
<where >
<where >
lap.conditions != '3' and lap.is_deleted = 0 and law.id is not null and lap.processing_status in ('1','3') and lap.types_of = '2' and law.work_order_status in ('10','20','30')
lap.conditions != '3' and lap.is_deleted = 0 and law.id is not null and lap.processing_status in ('1','3') and lap.types_of = '2' and law.work_order_status in ('10','20','30')
<if test= "param.workOrderNumbers != null and param.workOrderNumbers != '' " >
and law.work_order_number in
<foreach collection= "param.workOrderNumbers.split(',')" item= "workOrderNumber" separator= "," open= "(" close= ")" >
#{workOrderNumber}
</foreach>
</if>
<if test= "param.orderCodes != null and param.orderCodes != '' " >
and law.order_code in
<foreach collection= "param.orderCodes.split(',')" item= "orderCode" separator= "," open= "(" close= ")" >
#{orderCode}
</foreach>
</if>
<if test= "param.startCreateTime != null and param.endCreateTime != null " >
and law.create_time between #{param.startCreateTime} and #{param.endCreateTime}
</if>
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and law.work_order_status = #{param.workOrderStatusNameS } </if>
<if test= "param.workOrderStatusNameS != null and param.workOrderStatusNameS != '' " > and law.work_order_status = #{param.workOrderStatusNameS } </if>
<if test= "param.operator != null and param.operator != '' " > and law.operator = #{param.operator } </if>
<if test= "param.operator != null and param.operator != '' " > and law.operator = #{param.operator } </if>
<if test= "param.workOrderStatus != null and param.workOrderStatus != ''" > and law.work_order_status = #{param.workOrderStatus}</if>
<if test= "param.workOrderStatus != null and param.workOrderStatus != ''" > and law.work_order_status = #{param.workOrderStatus}</if>
@ -655,38 +689,52 @@
<select id= "getListSettlementNew" resultType= "com.logpm.aftersales.entity.AftersalesSettlementEntity" >
<select id= "getListSettlementNew" resultType= "com.logpm.aftersales.entity.AftersalesSettlementEntity" >
SELECT
SELECT
` lawo` .` work_order_number` AS workOrderNumber,
lawo.work_order_number AS workOrderNumber,
` lap` .` business_name` AS businessName,
lap.business_name AS businessName,
`ldpl`.`brand_name` AS brandName,
laap.brand_name AS brandName,
` ldsa` .` mall_name` AS mallName,
ldsa.mall_name AS mallName,
` laap` .` waybill_number` AS waybillNumber,
laap.waybill_number AS waybillNumber,
` lawo` .` work_order_type` AS workOrderType,
lawo.work_order_type AS workOrderType,
` lapr` .` result_type` AS resultType,
lapr.result_type AS resultType,
` lapr` .` id` AS ` laprId` ,
lapr.id AS laprId,
` lawo` .` discovery_node` AS discoveryNode,
lawo.discovery_node AS discoveryNode,
` lapr` .` result_description` AS resultDescription,
lapr.result_description AS resultDescription,
` lawo` .` vehicle_route` AS vehicleRoute,
lawo.vehicle_route AS vehicleRoute,
` lacr` .` indemnitor` AS ` indemnitor` ,
lacr.indemnitor AS indemnitor,
` lacr` .` reason` AS ` reason` ,
lacr.reason AS reason,
IFNUll(sum(` lapr` .` money` ),0 ) AS ` money` ,
IFNUll(sum(lapr.money),0 ) AS money,
` lawo` .` id` AS ` lawoId` ,
lawo.id AS lawoId,
` lawo` .` create_time` AS createTime,
lawo.create_time AS createTime,
` lawo` .` process_number` AS processNumber,
lawo.process_number AS processNumber,
` lawo` .` work_order_status` AS workOrderStatus,
lawo.work_order_status AS workOrderStatus,
` lawo` .` over_time` AS ` over_time` ,
lawo.over_time AS over_time,
` lap` .` business_id` AS ` business_id` ,
lap.business_id AS business_id,
` lap` .` processing_status` AS ` processing_status` ,
lap.processing_status AS processing_status,
` lap` .` is_deleted` AS ` is_deleted`
lap.is_deleted AS is_deleted
from logpm_aftersales_work_order lawo left JOIN
from logpm_aftersales_work_order lawo left JOIN
logpm_aftersales_processor lap on lap.work_order_id= lawo.id
logpm_aftersales_processor lap on lap.work_order_id= lawo.id
left join logpm_aftersales_abnormal_package laap on laap.work_order_id=lawo.id
left join logpm_aftersales_abnormal_package laap on laap.work_order_id=lawo.id AND laap.is_deleted = 0
LEFT JOIN `logpm_distribution_parcel_list` `ldpl` ON `ldpl`.`order_package_code` = `laap`.`package_code`
LEFT JOIN logpm_distribution_stock_article ldsa ON ldsa.id = laap.order_id
LEFT JOIN `logpm_distribution_stock_article` `ldsa` ON `ldsa`.`id` = `ldpl`.`stock_article_id`
LEFT JOIN logpm_aftersales_processing_results lapr ON lapr.work_order_id = lap.work_order_id AND lapr.is_deleted = 0
LEFT JOIN `logpm_aftersales_processing_results` `lapr` ON `lapr`.`work_order_id` = `lap`.`work_order_id`
LEFT JOIN logpm_aftersales_completion_record lacr ON lacr.work_order_id = lapr.work_order_id
LEFT JOIN `logpm_aftersales_completion_record` `lacr` ON `lacr`.`work_order_id` = `lapr`.`work_order_id`
<where >
<where >
`lawo`.`work_order_status` = 90 and lap.is_deleted = 0
lawo.work_order_status = 90 and lap.is_deleted = 0
<if test= "param.workOrderNumbers != null and param.workOrderNumbers != '' " >
and lawo.work_order_number in
<foreach collection= "param.workOrderNumbers.split(',')" item= "workOrderNumber" separator= "," open= "(" close= ")" >
#{workOrderNumber}
</foreach>
</if>
<if test= "param.orderCodes != null and param.orderCodes != '' " >
and lawo.order_code in
<foreach collection= "param.orderCodes.split(',')" item= "orderCode" separator= "," open= "(" close= ")" >
#{orderCode}
</foreach>
</if>
<if test= "param.startCreateTime != null and param.endCreateTime != null " >
and lawo.create_time between #{param.startCreateTime} and #{param.endCreateTime}
</if>
<if test= "param.businessId != null" > and lap.business_id =#{param.businessId}</if>
<if test= "param.businessId != null" > and lap.business_id =#{param.businessId}</if>
<if test= "param.businessName != null and param.businessName != ''" > and lap.business_name LIKE CONCAT( #{param.businessName}, '%')</if>
<if test= "param.businessName != null and param.businessName != ''" > and lap.business_name LIKE CONCAT( #{param.businessName}, '%')</if>
<if test= "param.workOrderNumber != null and param.workOrderNumber != ''" > and lawo.work_order_number LIKE CONCAT( #{param.workOrderNumber}, '%')</if>
<if test= "param.workOrderNumber != null and param.workOrderNumber != ''" > and lawo.work_order_number LIKE CONCAT( #{param.workOrderNumber}, '%')</if>