package com.dderp.common.api.flycat;
import com.dderp.common.api.ScriptService;
import com.dderp.common.datas.ReadOrderOption;
import com.dderp.common.entity.order.BusinessOrder;
import com.dderp.common.entity.order.OrderRefundRequest;
import com.dderp.common.entity.site.ERPTokenUser;
import com.sweetfish.service.RetResult;
import com.sweetfish.source.PageFlipper;
import org.rex.RMap;
import java.util.List;
public interface OrderSearchService extends ScriptService {
/**
* 查询单个订单信息
*
在groovy里面使用可以按下面的方法调用
*
RetResult orderResult = orderSearchService.searchBusinessOrder(new RMap<>("${ERPUtils.PARAM_SEARCH_ID}": 100L), currentUser, dataSourceId, supplierCode)
*
或者在java里面封装一个
*
getBusinessOrder(long id)的方法,提供给其它服务调用,写法差不多,简化不了一行代码
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单信息
*/
@SuppressWarnings("rawtypes")
RetResult searchBusinessOrder(RMap searchData,
ERPTokenUser currentUser,
String dataSourceId,
long supplierCode,
ReadOrderOption... options);
/**
* 获取单个订单信息
* 对searchBusinessOrder的简单封装
*
* @param idOrder 订单id
* @param currentUser 操作人
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单信息
*/
RetResult getBusinessOrder(long idOrder,
ERPTokenUser currentUser,
String dataSourceId,
long supplierCode,
ReadOrderOption... options);
/**
* 多订单查询,无需分页参数,
*
在groovy里面使用可以按下面的方法调用,比如通过多id获取订单
*
RetResult
> orderResult = orderSearchService.searchBusinessOrderList(new RMap<>("${ERPUtils.PARAM_SEARCH_IDS}": "1,2,3"), currentUser, dataSourceId, supplierCode)
*
或者在java里面封装一个
*
getPrintOrder(long id)的方法,提供给其它服务调用,写法差不多,简化不了一行代码
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单列表
*/
@SuppressWarnings("rawtypes")
RetResult> searchBusinessOrderList(RMap searchData,
ERPTokenUser currentUser,
String dataSourceId,
long supplierCode,
ReadOrderOption... options);
/**
* 多订单分页查询
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param orderBy 排序
* @param pageFlipper 分页
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单列表
*/
@SuppressWarnings("rawtypes")
RetResult> searchBusinessOrderList(RMap searchData,
ERPTokenUser currentUser,
String orderBy,
PageFlipper pageFlipper,
String dataSourceId,
long supplierCode,
ReadOrderOption... options);
/**
* 查询单个订单退款申请
*
在groovy里面使用可以按下面的方法调用
*
RetResult orderResult = orderSearchService.searchBusinessOrder(new RMap<>("${ERPUtils.PARAM_SEARCH_ID}": 100L), currentUser, dataSourceId, supplierCode)
*
或者在java里面封装一个
*
getBusinessOrder(long id)的方法,提供给其它服务调用,写法差不多,简化不了一行代码
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单信息
*/
@SuppressWarnings("rawtypes")
RetResult searchOrderRefundRequest(RMap searchData,
ERPTokenUser currentUser,
String dataSourceId,
long supplierCode,
ReadOrderOption[] options);
/**
* 多订单退款申请查询,无需分页参数,
*
在groovy里面使用可以按下面的方法调用,比如通过多id获取订单
*
RetResult
> orderResult = orderSearchService.searchBusinessOrderList(new RMap<>("${ERPUtils.PARAM_SEARCH_IDS}": "1,2,3"), currentUser, dataSourceId, supplierCode)
*
或者在java里面封装一个
*
getPrintOrder(long id)的方法,提供给其它服务调用,写法差不多,简化不了一行代码
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单列表
*/
@SuppressWarnings("rawtypes")
RetResult> searchOrderRefundRequestList(RMap searchData,
ERPTokenUser currentUser,
String dataSourceId,
long supplierCode,
ReadOrderOption[] options);
/**
* 多订单退款申请分页查询
*
* @param searchData 查询条件
* @param currentUser 操作人
* @param orderBy 排序
* @param pageFlipper 分页
* @param dataSourceId 分库
* @param supplierCode 分表
* @param options 子表读取规则
* @return 订单列表
*/
@SuppressWarnings("rawtypes")
RetResult> searchOrderRefundRequestList(RMap searchData,
ERPTokenUser currentUser,
String orderBy,
PageFlipper pageFlipper,
String dataSourceId,
long supplierCode,
ReadOrderOption[] options);
}