select
      distinct  a.id,
      a.after_sale_flag "afterSaleFlag",
      a.complaint_plan "complaintPlan" ,
      a.complaint_reason "complaintReason",
      b.rela_name "relaName",
      b.rela_phone "relaPhone",
      b.order_id "orderId",
      b.create_time "createTime",
      b.address_area "addressArea",
      b.address,
      b.receiver,
      c.receiver_phone "receiverPhone",
      c.receiver_name "receiverName"
      from xzx_order_complaint a
      inner join xzx_order_info b on a.order_id=b.order_id
      left  join xzx_user_other_info d on b.receiver=d.user_id and d.del_flag=0 and d.is_prohibit=0
      inner join  xzx_order_detail_info c on b.order_id=c.order_id
      where  a.del_flag=0
      
        and b.town_id in
        
          #{id}
         
       
        
            and (b.rela_phone like concat('%',#{keyword},'%') or  d.name like concat('%',#{keyword},'%') or c.receiver_phone  like concat('%',#{keyword},'%')   or b.rela_name like concat('%',#{keyword},'%'))
         
        
          and a.after_sale_flag=#{status}
         
        order by a.after_sale_flag asc,b.create_time desc
     
  
    select  distinct  a.id,
    a.after_sale_flag "afterSaleFlag",
    a.complaint_plan "complaintPlan" ,
    a.complaint_reason "complaintReason",
    b.rela_name "relaName",
    b.rela_phone "relaPhone",
    b.order_id "orderId",
    a.create_time "createTime",
    b.address_area "addressArea",
    b.address,
    b.receiver,
    b.reserve_time "reserveTime",
    c.receiver_phone "receiverPhone",
    c.receiver_name "receiverName"
    from xzx_order_complaint a
    inner join xzx_order_info b on a.order_id=b.order_id
    left  join xzx_user_other_info d on b.receiver=d.user_id and d.del_flag=0 and d.is_prohibit=0
    inner join  xzx_order_detail_info c on b.order_id=c.order_id
    where  a.del_flag=0
    and a.order_id=#{orderId}
    order by a.create_time desc
   
  
    SELECT a.id as id, b.order_id as orderId,b.create_time as createTime,a.after_sale_flag as afterSaleFlag,
    xyz.nick_name as nickName,xyz.create_user_phone as userPhone,xyz.del_flag as delFlag,
    xyz.name as collectorName,xyz.mobile_phone as collectorPhone,a.complaint_reason as complaintReason,
    e.config_value_name as complaintValue,a.complaint_plan as complaintPlan ,b.town_id,xyz.town_id as xTownId,
      (select m.partner_name from xzx_city_partner m where m.id = xyz.partner_id) as partnerName
    FROM xzx_order_complaint a
    LEFT JOIN xzx_order_info b ON a.order_id = b.order_id
    LEFT JOIN xzx_order_detail_info d ON a.order_id=d.order_id
    LEFT JOIN xzx_sys_config_info e ON e.config_value=a.complaint_type AND e.config_type_code='COMPLAINT_TYPE'
    LEFT JOIN (
    SELECT z.mobile_phone AS create_user_phone, x.order_id,z.nick_name,c.name,c.mobile_phone,y.town_id,c.del_flag,c.partner_id FROM
    xzx_order_complaint x
    LEFT JOIN xzx_order_info y ON x.order_id=y.order_id
    LEFT JOIN xzx_user_info z ON z.user_id = y.create_user_id
    LEFT JOIN xzx_user_other_info c ON y.receiver=c.user_id
    GROUP BY x.order_id
    ) as xyz ON a.order_id = xyz.order_id
    WHERE a.del_flag=0
    
      AND after_sale_flag in
      
        #{id}
       
     
    
      AND a.create_time BETWEEN #{startTime} AND #{endTime}
     
    
      AND b.order_id like concat("%",#{orderId} ,"%")
     
    
      AND xyz.create_user_phone like concat("%",#{userPhone} ,"%")
     
    
      AND xyz.name like concat("%",#{collectorName} ,"%")
     
    
      AND xyz.mobile_phone like concat("%",#{collectorPhone} ,"%")
     
    
      AND b.town_id in (select p.fence_id from xzx_partner_fence p where p.del_flag=0 and p.partner_id in
      
        #{id}
       
      )
     
    order by b.create_time desc
   
  
    update xzx_order_complaint
    set
      after_sale_flag = #{afterSaleFlag},
      complaint_plan  = #{complaintPlan}
    where id = #{id}
   
    
        SELECT a.id as complain_id, a.complaint_reason, a.create_time as create_timex, a.del_flag as del_flagx,
        a.after_sale_flag, a.complain_img, a.complaint_plan, a.complaint_type, b.*, c.nick_name as nick_namex, c.mobile_phone as receiver_phone
        , d.money, xyz.create_user_phone, e.config_value_name FROM xzx_order_complaint a
        LEFT JOIN xzx_order_info b ON a.order_id = b.order_id
        LEFT JOIN xzx_user_other_info c ON b.receiver=c.user_id
        LEFT JOIN xzx_order_detail_info d ON a.order_id=d.order_id
        LEFT JOIN xzx_sys_config_info e ON e.config_value=a.complaint_type AND e.config_type_code='COMPLAINT_TYPE'
        LEFT JOIN (
        SELECT z.mobile_phone AS create_user_phone, x.order_id FROM xzx_order_complaint x
        LEFT JOIN xzx_order_info y ON x.order_id=y.order_id
        LEFT JOIN xzx_user_info z ON z.user_id = y.create_user_id
        GROUP BY x.order_id
        ) as xyz ON a.order_id  = xyz.order_id
        WHERE a.del_flag=0
        
            AND after_sale_flag in (
            
                #{id}
             
            )
         
        
            AND a.create_time BETWEEN  #{startTime} AND  #{endTime}
         
        limit  #{page},  #{limit}
     
    
        SELECT count(*) FROM xzx_order_complaint a
        LEFT JOIN xzx_order_info b ON a.order_id = b.order_id
        LEFT JOIN xzx_user_info c ON b.receiver=c.user_id
        LEFT JOIN xzx_order_detail_info d ON a.order_id=d.order_id
        LEFT JOIN xzx_sys_config_info e ON e.config_value=a.complaint_type AND e.config_type_code='COMPLAINT_TYPE'
        LEFT JOIN (
        SELECT z.mobile_phone AS create_user_phone, x.order_id FROM xzx_order_complaint x
        LEFT JOIN xzx_order_info y ON x.order_id=y.order_id
        LEFT JOIN xzx_user_info z ON z.user_id = y.create_user_id
        GROUP BY x.order_id
        ) as xyz ON a.order_id  = xyz.order_id
        WHERE a.del_flag=0
        
            AND after_sale_flag in
            
                #{id}
             
         
        
            AND a.create_time BETWEEN #{startTime} AND #{endTime}
         
     
    
        update xzx_order_complaint set
            after_sale_flag=#{afterSaleFlag},
            complaint_plan=#{complaintPlan} where id=#{id}
     
    
        SELECT
        a.after_sale_flag AS afterSaleFlag ,
        c.reserve_time AS reserveTime,
        c.complete_time AS completeTime,
        c.order_id AS orderId,
        c.money,
        c.weight,
        c.mobile_phone AS mobilePhone,
        d.partner_id AS partnerId
        FROM
        xzx_order_complaint a
        INNER JOIN xzx_order_info b ON a.order_id = b.order_id
        INNER JOIN xzx_user_other_info d on b.receiver=d.user_id
        INNER JOIN xzx_order_detail_info c ON b.order_id = c.order_id
        where b.order_status in('4','5','7')
        
            AND  b.town_id in
            
                #{id}
             
         
        
            AND  c.reserve_time= ]]> #{startTime}
         
        
            AND  c.reserve_time #{endTime}
         
        
            AND  c.order_id like concat('%',#{orderId} ,'%')
         
        
            AND  c.mobile_phone like concat('%',#{mobilePhone} ,'%')
         
        order by c.reserve_time desc
     
    
        select count(id) from xzx_order_complaint where order_id=#{orderId}