package com.zm.order.tool.server.service;

import com.zm.order.tool.server.dto.OrderSyncAmountEsDTO;
import com.zm.order.tool.server.request.OrderDataReviseRequest;
import com.zm.order.tool.server.request.OrderSyncEsRequest;
import com.zm.order.tool.server.request.RefundDataReviseRequest;
import com.zm.util.dto.Result;

/**
 * @Author 陈标
 * @Date 2020/3/25 16:00
 */

public interface TemporaryService {


    /**
     * 补偿
     * @return:
     * @Date: 2020/9/8 2:03 PM
     */
    Result compensate();

    /**
     * 同步统计索引
     * @return:
     * @Date: 2020/9/8 2:03 PM
     */
    Result syncAmountIndex(OrderSyncAmountEsDTO syncAmountEs);

    /**
     * 订单同步索引
     * @return:
     * @Date: 2020/9/21 2:29 PM
     */
    Result syncIndex(OrderSyncEsRequest request);

    /**
     * 订单补推事件
     * @return:
     * @Date: 2020/9/21 2:29 PM
     */
    Result sendEvent();

    /**
     * 订单补推事件
     * @return:
     * @Date: 2020/9/21 2:29 PM
     */
    Result refundDataRevise(RefundDataReviseRequest request);

    /**
     * 订单数据订正
     * @param request
     * @return:
     * @Date: 2020/10/22 10:02 AM
     */
    Result orderDataRevise(OrderDataReviseRequest request);

    /**
     * 订单优惠数据订正
     * @param request
     * @return:
     * @Date: 2020/11/2 11:25 AM
     */
    Result orderAdjustDataRevise(OrderDataReviseRequest request);
    Result erpErrorData(OrderDataReviseRequest request);

    /**
     * 删除ES多人点餐子订单
     * @return:
     * @Date: 2020/11/13 3:59 PM
     */
    Result deleteEsOrder();

    /**
     * 订单支付类型处理
     * @param request
     * @return:
     * @Date: 2020/12/9 2:03 PM
     */
    Result orderPayType(OrderDataReviseRequest request);

    /**
     * 订单支付类型处理
     * @param request
     * @return:
     * @Date: 2020/12/9 2:03 PM
     */
    Result orderRefundType(OrderDataReviseRequest request);

    /**
     * 数据订正-订单商品goods处理
     * @return:
     * @Date: 2020/12/9 3:16 PM
     */
    Result orderItemGoodsId();

    /**
     * 订单路由
     * @return:
     * @Date: 2020/12/10 2:27 PM
     */
    Result deleteOrder(OrderDataReviseRequest request);

    /**
     * 订单路由
     * @return:
     * @Date: 2020/12/10 2:27 PM
     */
    Result deleteRefund(OrderDataReviseRequest request);

    /**
     * 更新退款单支付方式
     * @return:
     * @Date: 2020/12/10 2:27 PM
     */
    Result updateRefundPayType(OrderDataReviseRequest request);

    /**
     * 更新退款单完成时间
     * @param request
     * @return:
     * @Date: 2021/2/25 9:55 上午
     */
    Result updateRefundDealAt(OrderDataReviseRequest request);

    /**
     * 更新payInfo信息
     * @param request
     * @return:
     * @Date: 2021/2/26 4:19 下午
     */
    Result updatePayInfo(OrderDataReviseRequest request);

    /**
     * 更新商品快照
     * @param request
     * @return:
     * @Date: 2021/3/5 1:38 下午
     */
    Result updateOrderStatus(OrderDataReviseRequest request);

    /**
     * 更新订单商品价格
     * @param request
     * @return:
     * @Date: 2021/3/30 11:45 上午
     */
    Result updateItemPrice(OrderDataReviseRequest request);

    /**
     * 更新商家ID
     * @param request
     * @return:
     * @Date: 2021/4/8 10:24 上午
     */
    Result updateSellerId(OrderDataReviseRequest request);

    /**
     * 更新退款商品sellerId
     * @param request
     * @return:
     * @Date: 2021/4/8 11:29 上午
     */
    Result updateRefundItemSellerId(OrderDataReviseRequest request);

    /**
     * 更新订单状态
     * @param
     * @return:
     * Date: 2021/4/27 10:24 上午
     */
    Result updateOrderStatus();

    /**
     * 刷PaymentInfo
     * @param request
     * @return
     * Date: 2021/5/11 5:57 下午
     */
    Result updatePaymentInfo(OrderDataReviseRequest request);

    Result routingIndex(OrderDataReviseRequest request);

    Result insertPay();

    Result deletePay();
    void deletePayA();

    Result insertBatching();

    Result updatePayType();

    /**
     * 餐饮订单迁移
     * @param request
     * @return
     * Date: 2021/5/18 10:01 上午
     */
    Result cateringTransfer(OrderDataReviseRequest request);

    Result cateringTransferManual();
    Result  findMergeDeleted();

    /**
     * 批量回滚
     * @param request
     * @return
     * Date: 2021/5/25 3:54 下午
     */
    Result cateringTransferRollback(OrderDataReviseRequest request);

    /**
     * 餐饮退款单迁移
     * @param request
     * @return
     * Date: 2021/5/21 4:11 下午
     */
    Result cateringRefundTransfer(OrderDataReviseRequest request);

    Result bakingOrderSync();

    Result updateItemDiscount();

}
