SyncOrderController.java 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package com.szwl.controller;
  2. import com.szwl.feign.bean.PayFeign;
  3. import com.szwl.feign.bean.SyncOldFeign;
  4. import com.szwl.model.bo.R;
  5. import com.szwl.model.bo.ResponseModel;
  6. import com.szwl.model.entity.TOrder;
  7. import com.szwl.service.TOrderService;
  8. import io.swagger.annotations.Api;
  9. import io.swagger.annotations.ApiOperation;
  10. import lombok.extern.slf4j.Slf4j;
  11. import org.apache.commons.lang.StringUtils;
  12. import org.springframework.web.bind.annotation.PostMapping;
  13. import org.springframework.web.bind.annotation.RequestMapping;
  14. import org.springframework.web.bind.annotation.RestController;
  15. import java.text.SimpleDateFormat;
  16. import java.util.Date;
  17. import java.util.List;
  18. @Slf4j
  19. @Api(value = "/syncOrder", tags = {"同步旧系统的order数据"})
  20. @RestController
  21. @RequestMapping("/syncOrder")
  22. public class SyncOrderController {
  23. PayFeign payFeign;
  24. TOrderService orderService;
  25. SyncOldFeign syncOldFeign;
  26. public SyncOrderController(PayFeign payFeign, TOrderService orderService, SyncOldFeign syncOldFeign) {
  27. this.payFeign = payFeign;
  28. this.orderService = orderService;
  29. this.syncOldFeign = syncOldFeign;
  30. }
  31. @ApiOperation(value = "同步国内某客户的某一设备某一时间段内的 order 订单")
  32. @PostMapping("/getOrderByCAT")
  33. public ResponseModel<?> getOrderByCAT(String adminId, String clientId, String startTime, String endTime) {
  34. if (StringUtils.isNotEmpty(adminId) && StringUtils.isNotEmpty(clientId) && StringUtils.isNotEmpty(startTime) && StringUtils.isNotEmpty(endTime)) {
  35. long l = Long.parseLong(adminId);
  36. // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  37. // Date start = sdf.parse(startTime);
  38. // Date end = sdf.parse(endTime);
  39. List<TOrder> orderList = R.getDataIfSuccess(syncOldFeign.getOrderByACT(l, clientId, startTime, endTime));
  40. if (orderList.size()>1000) {
  41. return R.fail("数据量过大,请缩短时间范围");
  42. }
  43. for (TOrder order : orderList) {
  44. // System.out.println("order》》" + order);
  45. payFeign.addOrder(order);
  46. }
  47. return R.ok(adminId + "同步设备" + clientId + "从" + startTime + "至" + endTime + "的 order 信息成功");
  48. } else {
  49. return R.fail("参数不能为空");
  50. }
  51. }
  52. }