package com.ruoyi.order.api.feignClient;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.common.core.constant.ServiceNameConstants;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.vo.PaperInVo;
|
import com.ruoyi.common.core.vo.Path;
|
import com.ruoyi.order.api.entity.*;
|
import com.ruoyi.order.api.factory.OrderFallbackFactory;
|
import com.ruoyi.order.api.request.OrderCountDataRequest;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import java.math.BigDecimal;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @author HJL
|
* @since 2024.05.29
|
*/
|
@FeignClient(contextId = "OrderClient", value = ServiceNameConstants.ORDER_SERVICE, fallbackFactory = OrderFallbackFactory.class)
|
public interface OrderClient {
|
|
/**
|
* 新增订单
|
* 后台订单为指定订单,默认为待上门状态
|
*
|
* @param orderRequest 站点信息
|
* @return 返回结果
|
*/
|
@PostMapping(value = "/order/save")
|
R<Boolean> save(@RequestBody OrderRequest orderRequest);
|
|
|
@PostMapping(value = "/order/edit")
|
R<Boolean> edit(@RequestBody OrderRequest orderRequest);
|
|
/**
|
* 根据改派申请id获取订单详情
|
*
|
* @param id 改派申请id
|
* @return 订单详情
|
*/
|
@ApiOperation(value = "订单列表-订单详情", tags = {"后台-订单管理"})
|
@GetMapping(value = "/order/detailByExchangeId")
|
R<Order> detailByExchangeId(@RequestParam("id") String id);
|
|
/**
|
* 订单详情
|
*
|
* @param id 订单id
|
* @return 订单信息
|
*/
|
@GetMapping(value = "/order/detail")
|
R<Order> detail(@RequestParam("id") String id);
|
@PostMapping(value = "/order/msgCount")
|
R msgCount(@RequestParam("orderId") String orderId);
|
|
/**
|
* 更改订单信息
|
*
|
* @param type 1:订单派单;2:订单改派
|
* @param orderId 订单id
|
* @param workerId 师傅id
|
* @param name 师傅名称
|
* @param phone 师傅电话
|
* @return 更改结果
|
*/
|
@GetMapping(value = "/order/exchangeOrder")
|
R<Order> exchangeOrder(@RequestParam("type") Integer type, @RequestParam("orderId") String orderId,
|
@RequestParam("workerId") Integer workerId, @RequestParam("name") String name,
|
@RequestParam("phone") String phone);
|
|
/**
|
* 根据id批量删除站点
|
*
|
* @param ids 站点多条id拼接
|
* @return 删除结果
|
*/
|
@GetMapping(value = "/order/batchDelete")
|
R<Boolean> batchDelete(@RequestParam("ids") String ids);
|
|
/**
|
* 订单统计
|
*
|
* @param request 查询参数
|
* @return 分页
|
*/
|
@PostMapping(value = "/order/orderCount")
|
R<Page<OrderCountVO>> orderCount(@RequestBody OrderCountDataRequest request);
|
|
/**
|
* 订单列表-excel导出
|
*
|
* @param orderQueryRequest 筛选参数
|
* @return 查询参数
|
*/
|
@PostMapping(value = "/order/excelExport")
|
R<List<Order>> excelExport(@RequestBody OrderQueryRequest orderQueryRequest);
|
|
/**
|
* 根据前台用户id查询所有订单信息
|
*
|
* @param phone 手机号
|
* @return 订单列表
|
*/
|
@GetMapping(value = "/order/queryList")
|
R<List<Order>> queryList(@RequestParam("phone") String phone);
|
|
/**
|
* 订单列表
|
*
|
* @param orderQueryRequest 订单列表查询参数
|
* @return 分页列表
|
*/
|
@PostMapping(value = "/order/queryPage")
|
R<Page<Order>> queryPage(@RequestBody OrderQueryRequest orderQueryRequest);
|
|
@PostMapping(value = "/order/queryPage1")
|
R<List<String>> queryPage1(@RequestBody OrderQueryRequest orderQueryRequest);
|
|
/**
|
* 订单列表
|
*
|
* @param orderQueryRequest 查询参数
|
* @return 统计
|
*/
|
@PostMapping(value = "/order/orderPageCount")
|
R<OrderPageCountVO> orderPageCount(@RequestBody OrderQueryRequest orderQueryRequest);
|
|
/**
|
* 更改订单状态
|
*
|
* @param orderId 订单id
|
* @param state 订单状态
|
* @return 更改结果
|
*/
|
@PostMapping(value = "/order/updateState")
|
R<Boolean> updateState(@RequestParam("orderId") String orderId, @RequestParam("state") Integer state);
|
|
@PostMapping(value = "/order/count")
|
R<Boolean> count(@RequestParam("orderId") String orderId);
|
|
@PostMapping(value = "/order/papercount")
|
R<List<PaperInVo>> papercount(@RequestParam("workId") String workId,@RequestParam("date") String date);
|
|
@PostMapping(value = "/order/queryIdsBycode")
|
R<List<Integer>> queryIdsBycode(@RequestBody List<String> cityList);
|
|
@PostMapping(value = "/order/queryIdsBycodeAndSite")
|
R<List<Integer>> queryIdsBycodeAndSite(@RequestParam("cityList") List<String> cityList,@RequestParam("siteIds")List<String> siteIds);
|
|
/**
|
* 更改订单状态且清空到达时间
|
*
|
* @param orderId 订单id
|
* @param state 订单状态
|
* @return 修改结果
|
*/
|
@ApiOperation(value = "订单列表-更改订单状态且清空到达时间", tags = {"后台-订单管理"})
|
@PostMapping(value = "/order/updateStateAndArrivalTime")
|
R<Boolean> updateStateAndArrivalTime(@RequestParam("orderId") String orderId,
|
@RequestParam("state") Integer state);
|
|
/**
|
* 申请改派审核通过后生成新订单
|
*
|
* @param order 订单信息
|
* @return 生成订单结果
|
*/
|
@GetMapping(value = "/order/generateNewOrder")
|
R<Boolean> generateNewOrder(@RequestBody Order order);
|
|
/**
|
* 回收订单统计
|
*
|
* @param orderCount 查询所需参数
|
* @return 统计结果
|
*/
|
@PostMapping(value = "/order/orderCountHome")
|
R<OrderResultVO> orderCountHome(@RequestBody OrderCountRequest orderCount);
|
|
@PostMapping(value = "/order/workday")
|
R<List<Order>> workday(@RequestBody Integer workId);
|
|
/**
|
* 用户所关联订单记录分页列表
|
*
|
* @param userId 手机号
|
* @param pageNum 页码
|
* @param pageSize 每页显示条数
|
* @return 分页列表
|
*/
|
@GetMapping(value = "/order/orderList")
|
R<Page<Order>> orderList(@RequestParam("userId") Integer userId,
|
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize);
|
|
@GetMapping(value = "/order/orderList1")
|
R<Page<Order>> orderList1(@RequestParam("userId") Integer userId, @RequestParam("cityList") List<String> cityList,
|
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
@RequestParam("siteIds") List<String> siteIds);
|
@GetMapping(value = "/order/workOrderList")
|
R<Page<Order>> workOrderList(@RequestParam("workId") Integer workId,
|
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
@RequestParam("siteIds") String [] siteIds);
|
|
/**
|
* 更改订单提现状态
|
*
|
* @param orderId 订单id
|
* @param state 提现状态
|
* @return 修改结果
|
*/
|
@PostMapping(value = "/order/updateWithdrawalState")
|
R<Boolean> updateWithdrawalState(@RequestParam("orderId") String orderId,
|
@RequestParam("state") Integer state);
|
|
/**
|
* 根据类型获取交易额
|
*
|
* @param cityList 城市列表
|
* @param type 查询类型
|
* @return 交易额
|
*/
|
@GetMapping(value = "/order/tradeMoney")
|
R<BigDecimal> tradeMoney(@RequestBody MoneyQueryRequest moneyQueryRequest);
|
|
/**
|
* 师傅端-订单列表
|
*
|
* @param userId 用户端
|
* @param state 订单状态
|
* @param pageNum 页码
|
* @param pageSize 条数
|
* @return 交易额
|
*/
|
@GetMapping(value = "/order/orderListWorker")
|
R<Page<Order>> orderListWorker(@RequestParam("userId") Integer userId, @RequestParam("state") Integer state,@RequestParam("searchValues") String searchValues,
|
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize);
|
|
/**
|
* 师傅端-根据师傅id获取订单数量
|
*
|
* @param workerIds 师傅id集合
|
* @return 接单列表
|
*/
|
@PostMapping(value = "/order/workerOrderRank")
|
R<List<WorkerOrderRankVO>> workerOrderRank(@RequestBody List<Integer> workerIds);
|
|
/**
|
* 师傅端-订单路线导航
|
*
|
* @param orderId 订单id
|
* @param workerId 师傅id
|
* @param longitude 经度
|
* @param latitude 纬度
|
* @return 订单导航
|
*/
|
@GetMapping(value = "/order/orderNavigation")
|
R<Path> orderNavigation(@RequestParam("orderId") String orderId, @RequestParam("workerId") Integer workerId,
|
@RequestParam("longitude") String longitude, @RequestParam("latitude") String latitude);
|
|
/**
|
* 师傅端-已到达预约地点
|
*
|
* @param orderId 订单id
|
* @param workerId 师傅id
|
* @return 修改订单状态
|
*/
|
@GetMapping(value = "/order/reachPosition")
|
R<Boolean> reachPosition(@RequestParam("orderId") String orderId, @RequestParam("workerId") Integer workerId);
|
|
/**
|
* 师傅端-订单详情
|
*
|
* @param orderId 订单id
|
* @return 订单详情
|
*/
|
@GetMapping(value = "/order/orderDetail")
|
R<OrderDetailVO> orderDetail(@RequestParam("orderId") String orderId);
|
|
/**
|
* 师傅端-提交订单
|
*
|
* @param orderSubmitRequest 提交订单信息
|
* @return 提交结果
|
*/
|
@PostMapping(value = "/order/orderSubmit")
|
R<Boolean> orderSubmit(@RequestBody OrderSubmitRequest orderSubmitRequest);
|
|
/**
|
* 师傅端-定时调度记录师傅所走路线经纬度
|
*
|
* @param orderId 订单id
|
* @param workerId 师傅id
|
* @param longitude 经度
|
* @param latitude 纬度
|
* @return 保存记录结果
|
*/
|
@ApiOperation(value = "订单进行-记录路线经纬度", tags = {"师傅端"})
|
@GetMapping(value = "/order/coordinate")
|
R<Boolean> coordinate(@RequestParam("orderId") String orderId, @RequestParam("workerId") Integer workerId,
|
@RequestParam("longitude") Double longitude, @RequestParam("latitude") Double latitude);
|
|
/**
|
* 师傅端-代办列表
|
*
|
* @param workerId 师傅id
|
* @return 订单列表
|
*/
|
@ApiOperation(value = "根据师傅id查询订单", tags = {"师傅端"})
|
@GetMapping(value = "/order/orderNotHandle")
|
R<List<Order>> orderNotHandle(@RequestParam("workerId") Integer workerId);
|
|
/**
|
* 师傅端-根据师傅id查询订单并按照置顶顺序排序
|
*
|
* @param workerId 师傅id
|
* @return 订单列表
|
*/
|
@ApiOperation(value = "根据师傅id查询订单并按照置顶顺序排序", tags = {"师傅端"})
|
@GetMapping(value = "/order/orderTopListByWorkerId")
|
R<List<Order>> orderTopListByWorkerId(@RequestParam("workerId") Integer workerId);
|
|
/**
|
* 师傅端-订单代办列表
|
*
|
* @param orderId 订单id
|
* @param workerId 师傅id
|
* @return 置顶结果
|
*/
|
@ApiOperation(value = "订单置顶", tags = {"师傅端-首页"})
|
@GetMapping(value = "/order/orderTop")
|
R<Boolean> orderTop(@RequestParam("orderId") String orderId, @RequestParam("workerId") Integer workerId);
|
|
/**
|
* 师傅端-订单状态统计数量
|
*
|
* @param workerId 师傅id
|
* @return 统计数量
|
*/
|
@ApiOperation(value = "订单状态统计数量", tags = {"师傅端-首页"})
|
@GetMapping(value = "/order/orderStateCount")
|
R<WorkerOrderCountVO> orderStateCount(@RequestParam("workerId") Integer workerId);
|
|
/**
|
* 更改订单状态
|
*
|
* @param orderId 订单id
|
* @param state 状态
|
* @return 更改结果
|
*/
|
@ApiOperation(value = "更改订单状态", tags = {"后台-订单管理"})
|
@GetMapping(value = "/order/changeOrderState")
|
R<Boolean> changeOrderState(@RequestParam("orderId") String orderId, @RequestParam("state") Integer state);
|
|
/********************************* 用户端 ******************************************/
|
|
/**
|
* 师傅端-订单状态统计数量
|
*
|
* @param userId 用户id
|
* @param state 订单状态
|
* @param pageNum 页码
|
* @param pageSize 条数
|
* @return 订单列表
|
*/
|
@ApiOperation(value = "订单状态统计数量", tags = {"用户端"})
|
@GetMapping(value = "/order/orderListByUser")
|
R<Page<Order>> orderListByUser(@RequestParam("userId") Integer userId,
|
@RequestParam("state") Integer state,
|
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize);
|
|
/**
|
* 用户端-生成预订单信息
|
*
|
* @param userOrderRequest 下单参数
|
* @return 下单结果
|
*/
|
@ApiOperation(value = "生成预订单信息", tags = {"用户端"})
|
@PostMapping(value = "/order/orderEstimate")
|
R<String> orderEstimate(@RequestBody UserOrderRequest userOrderRequest);
|
|
/**
|
* 用户端-用户下单
|
*
|
* @param userOrderRequest 下单参数
|
* @return 下单结果
|
*/
|
@ApiOperation(value = "下单", tags = {"用户端"})
|
@PostMapping(value = "/order/placeOrder")
|
R<Boolean> placeOrder(@RequestBody UserOrderRequest userOrderRequest);
|
|
/**
|
* 判断用户是否下单
|
*
|
* @param userId 用户id
|
*/
|
@GetMapping(value = "/order/orderByUserId")
|
R<Boolean> orderByUserId(@RequestParam("userId") Integer userId);
|
|
/**
|
* 站点详情
|
*
|
* @param orderId 订单id
|
* @param prizeName 奖品名称
|
* @return 操作结果
|
*/
|
@ApiOperation(value = "补充订单津贴金额", tags = {"后台-订单管理"})
|
@GetMapping(value = "/order/supplementAllowance")
|
R<Boolean> supplementAllowance(@RequestParam("orderId") String orderId,
|
@RequestParam("prizeName") String prizeName);
|
|
@GetMapping("/oldData/order")
|
R<String> oldData(@RequestParam("index") Integer index,
|
@RequestParam("pageNum") Integer pageNum,
|
@RequestParam("pageSize") Integer pageSize);
|
@GetMapping(value = "/order/updateArrivalTime")
|
R<Boolean> updateArrivalTime(@RequestParam("orderId")String orderId,@RequestParam("arriveTime")String arriveTime);
|
}
|