package com.fzm.mall.server.front.order.service;

import com.alibaba.fastjson.JSONObject;
import com.fzm.mall.server.front.asset.model.po.qo.OrderQO;
import com.fzm.mall.server.front.base.PageVO;
import com.fzm.mall.server.front.order.model.Delivery;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fzm.mall.server.front.order.model.po.DeliveryPO;
import com.fzm.mall.server.front.order.model.vo.DeliveryVO;

import java.util.HashMap;

/**
 * <p>
 * 用户提货表 服务类
 * </p>
 *
 * @author fzm
 * @since 2021-04-14
 */
public interface IDeliveryService extends IService<Delivery> {
    void handle(DeliveryVO deliveryVO);

    int payPostfeeByCoin(HashMap<String, Object> map);

    void paymentsPostFee(String pid, String outBizNo, int type);

    JSONObject payDeliveryFee(HashMap<String, Object> map);

    DeliveryPO goodDelivery(final String oid);

    DeliveryVO delivery(String oid);

    PageVO<DeliveryVO> pageDelivery(final OrderQO deliveryQO);

    PageVO<DeliveryVO> pageAfterSaleDelivery(final OrderQO deliveryQO);

    void finish(String uid, String orderDeliveryId);

    String queryLogistics(String orderDeliveryId);

    String getLogisticsByExpNo(String orderDeliveryId, String expressType, String expressNo);

    int returnGoods(String uid, String orderDeliveryId);

    Integer getStatus(String orderDeliveryId);

    Delivery getByUidAndOrderDeliveryId(String uid, String orderDeliveryId);

    String getAddress(String orderDeliveryId);

    Integer getCountByUidAndOid(String uid, String orderId);
}
