id, controller_id, intake_id, rtu_addr, dt, dt_last, dt_rtu, loss_amount
  
  
  
  
  
    
    delete from rm_loss_day
    where id = #{id,jdbcType=BIGINT}
  
  
    
    insert into rm_loss_day (id, controller_id, intake_id,
    rtu_addr, dt, dt_last, dt_rtu, loss_amount
    )
    values (#{id,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT},
    #{rtuAddr,jdbcType=VARCHAR}, #{dt,jdbcType=DATE}, #{dtLast,jdbcType=TIMESTAMP}, #{dtRtu,jdbcType=TIMESTAMP}, #{lossAmount,jdbcType=DOUBLE}
    )
  
  
    
    insert into rm_loss_day
    
      
        id,
      
      
        controller_id,
      
      
        intake_id,
      
      
        rtu_addr,
      
      
        dt,
      
      
        dt_last,
      
      
        dt_rtu,
      
      
        loss_amount,
      
    
    
      
        #{id,jdbcType=BIGINT},
      
      
        #{controllerId,jdbcType=BIGINT},
      
      
        #{intakeId,jdbcType=BIGINT},
      
      
        #{rtuAddr,jdbcType=VARCHAR},
      
      
        #{dt,jdbcType=DATE},
      
      
        #{dtLast,jdbcType=TIMESTAMP},
      
      
        #{dtRtu,jdbcType=TIMESTAMP},
      
      
        #{lossAmount,jdbcType=DOUBLE},
      
    
  
  
    
    update rm_loss_day
    
      
        controller_id = #{controllerId,jdbcType=BIGINT},
      
      
        intake_id = #{intakeId,jdbcType=BIGINT},
      
      
        rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
      
      
        dt = #{dt,jdbcType=DATE},
      
      
        dt_last = #{dtLast,jdbcType=TIMESTAMP},
      
      
        dt_rtu = #{dtRtu,jdbcType=TIMESTAMP},
      
      
        loss_amount = #{lossAmount,jdbcType=DOUBLE},
      
    
    where id = #{id,jdbcType=BIGINT}
  
  
    
    update rm_loss_day
    set controller_id = #{controllerId,jdbcType=BIGINT},
    intake_id = #{intakeId,jdbcType=BIGINT},
    rtu_addr = #{rtuAddr,jdbcType=VARCHAR},
    dt = #{dt,jdbcType=DATE},
    dt_last = #{dtLast,jdbcType=TIMESTAMP},
    dt_rtu = #{dtRtu,jdbcType=TIMESTAMP},
    loss_amount = #{lossAmount,jdbcType=DOUBLE}
    where id = #{id,jdbcType=BIGINT}
  
  
  
  
  
  
  
  
  
  
  
  
  
      SELECT intaId.intakeId   AS intakeId,
             rld.dt            AS dt,
             rld.loss_amount   AS lossAmount
      FROM JSON_TABLE(
        #{intakesJson},
        '$[*]' COLUMNS (
          intakeId BIGINT PATH '$.intakeId'
        )
      ) intaId
      INNER JOIN rm_loss_day rld ON rld.intake_id = intaId.intakeId
      
        
          AND rld.dt =]]> #{startDt, javaType=DATE, jdbcType=DATE}
        
        
          AND rld.dt  #{endDt, javaType=DATE, jdbcType=DATE}