فهرست منبع

feat:“添加数据查询接口供客户使用"

soobin 7 ماه پیش
والد
کامیت
da06f78fef
1فایلهای تغییر یافته به همراه107 افزوده شده و 41 حذف شده
  1. 107 41
      src/main/java/com/szwl/controller/ApiInterContriller.java

+ 107 - 41
src/main/java/com/szwl/controller/ApiInterContriller.java

@@ -12,8 +12,10 @@ import com.szwl.model.bean.good;
 import com.szwl.model.bo.R;
 import com.szwl.model.bo.R;
 import com.szwl.model.bo.ResponseModel;
 import com.szwl.model.bo.ResponseModel;
 import com.szwl.model.entity.TAdmin;
 import com.szwl.model.entity.TAdmin;
+import com.szwl.model.entity.TCoinOrder;
 import com.szwl.model.entity.TOrder;
 import com.szwl.model.entity.TOrder;
 import com.szwl.model.query.TOrderParam;
 import com.szwl.model.query.TOrderParam;
+import com.szwl.service.TCoinOrderService;
 import com.szwl.service.TOrderService;
 import com.szwl.service.TOrderService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
@@ -41,6 +43,9 @@ public class ApiInterContriller {
     @Autowired
     @Autowired
     private TOrderService orderService;
     private TOrderService orderService;
 
 
+    @Autowired
+    private TCoinOrderService coinOrderService;
+
     @ApiOperation("获取订单数据")
     @ApiOperation("获取订单数据")
     @PostMapping("/getOrder")
     @PostMapping("/getOrder")
     public ResponseModel<?> remoteProduction(@RequestHeader("x-api-key") String apiKey, @RequestBody TOrderParam orderParam) throws ParseException {
     public ResponseModel<?> remoteProduction(@RequestHeader("x-api-key") String apiKey, @RequestBody TOrderParam orderParam) throws ParseException {
@@ -77,56 +82,95 @@ public class ApiInterContriller {
         Date endDate = simpleDateFormat.parse(endTime);
         Date endDate = simpleDateFormat.parse(endTime);
         // 检验时间是否超过一个月
         // 检验时间是否超过一个月
         if (dayTime(startDate, endDate)) {
         if (dayTime(startDate, endDate)) {
-            return R.fail(ResponseCodesEnum.A0001, "时间跨度超过一个月");
+            return R.fail(ResponseCodesEnum.A0001, "The query time exceeds one month");
         }
         }
         // 单页大小不能超过2000
         // 单页大小不能超过2000
         if (size > 1000) {
         if (size > 1000) {
-            return R.fail(ResponseCodesEnum.A0001, "size大小不能超过1000");
+            return R.fail(ResponseCodesEnum.A0001, "The size cannot exceed 1000");
         }
         }
-        // 查询
-        LambdaQueryWrapper<TOrder> query = Wrappers.lambdaQuery();
-        query.eq(TOrder::getAdminId, adminId);
-        query.eq(TOrder::getStatus, status);
-        if (StringUtils.isNotEmpty(clientId)) {
-            query.eq(TOrder::getClientId, clientId);
-        }
-        query.between(TOrder::getCreateDate, startDate, endDate);
-        query.orderByDesc(TOrder::getCreateDate);
-        Page<TOrder> page = new Page<>(current, size, true);
-        IPage<TOrder> iPage = orderService.page(page, query);
-        List<TOrder> orderList = iPage.getRecords();
+        String ifForeign = admin.getIfForeign();
         // 封装数据
         // 封装数据
         EsOrderList esOrderList = new EsOrderList();
         EsOrderList esOrderList = new EsOrderList();
         long total = 0;
         long total = 0;
         List<EsOrder> orders = new ArrayList<>();
         List<EsOrder> orders = new ArrayList<>();
-        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        if (!orderList.isEmpty()) {
-            total = iPage.getTotal();
-            for (TOrder order : orderList) {
-                EsOrder esOrder = new EsOrder();
-                esOrder.setChannel(order.getFrpCode());
-                esOrder.setClientId(order.getClientId());
-                esOrder.setPrice(order.getPrice());
-                esOrder.setRefundAmount(order.getRefundAmount());
-                esOrder.setSn(order.getSn());
-                if(status == 3){
-                    esOrder.setTime(formatter.format(order.getRefundDate()));
-                    esOrder.setTime(formatter.format(order.getRefundDate()));
-                }else {
-                    //时间要转变
-                    esOrder.setTime(formatter.format(order.getCreateDate()));
-                    esOrder.setTime(formatter.format(order.getCreateDate()));
+        if (StringUtils.isNotEmpty(ifForeign) && ifForeign.equals("1")) {
+            // 查询线下订单
+            LambdaQueryWrapper<TCoinOrder> query = Wrappers.lambdaQuery();
+            query.eq(TCoinOrder::getAdminId, adminId);
+            if (StringUtils.isNotEmpty(clientId)) {
+                query.eq(TCoinOrder::getClientId, clientId);
+            }
+            query.between(TCoinOrder::getPayDate, startDate, endDate);
+            query.orderByDesc(TCoinOrder::getPayDate);
+            Page<TCoinOrder> page = new Page<>(current, size, true);
+            IPage<TCoinOrder> iPage = coinOrderService.page(page, query);
+            List<TCoinOrder> records = iPage.getRecords();
+            // 封装数据
+            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            if (!records.isEmpty()) {
+                total = iPage.getTotal();
+                for (TCoinOrder record : records) {
+                    EsOrder esOrder = new EsOrder();
+                    String payType = checkPayType(record.getPayType());
+                    esOrder.setChannel(payType);
+                    esOrder.setClientId(record.getClientId());
+                    esOrder.setPrice(record.getPrice());
+                    esOrder.setRefundAmount(record.getRefundAmount());
+                    esOrder.setSn(record.getSn());
+                    esOrder.setTime(formatter.format(record.getPayDate()));
+                    esOrder.setStatus(String.valueOf(record.getStatus()));
+                    List<good> goods = new ArrayList<>();
+                    good goo = new good();
+                    goo.setGoodsName(record.getProductName());
+                    goo.setPrice(record.getPrice());
+                    goo.setSuccess(true);
+                    goods.add(goo);
+                    esOrder.setGoods(goods);
+                    orders.add(esOrder);
+                }
+            }
+        } else {
+            // 查询
+            LambdaQueryWrapper<TOrder> query = Wrappers.lambdaQuery();
+            query.eq(TOrder::getAdminId, adminId);
+            query.eq(TOrder::getStatus, status);
+            if (StringUtils.isNotEmpty(clientId)) {
+                query.eq(TOrder::getClientId, clientId);
+            }
+            query.between(TOrder::getCreateDate, startDate, endDate);
+            query.orderByDesc(TOrder::getCreateDate);
+            Page<TOrder> page = new Page<>(current, size, true);
+            IPage<TOrder> iPage = orderService.page(page, query);
+            List<TOrder> orderList = iPage.getRecords();
+            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            if (!orderList.isEmpty()) {
+                total = iPage.getTotal();
+                for (TOrder order : orderList) {
+                    EsOrder esOrder = new EsOrder();
+                    esOrder.setChannel(order.getFrpCode());
+                    esOrder.setClientId(order.getClientId());
+                    esOrder.setPrice(order.getPrice());
+                    esOrder.setRefundAmount(order.getRefundAmount());
+                    esOrder.setSn(order.getSn());
+                    if(status == 3){
+                        esOrder.setTime(formatter.format(order.getRefundDate()));
+                        esOrder.setTime(formatter.format(order.getRefundDate()));
+                    }else {
+                        //时间要转变
+                        esOrder.setTime(formatter.format(order.getCreateDate()));
+                        esOrder.setTime(formatter.format(order.getCreateDate()));
+                    }
+                    esOrder.setStatus(String.valueOf(order.getStatus()));
+                    esOrder.setTrxNo(order.getTrxNo());
+                    List<good> goods = new ArrayList<>();
+                    good goo = new good();
+                    goo.setGoodsName(order.getProductName());
+                    goo.setPrice(order.getPrice());
+                    goo.setSuccess(true);
+                    goods.add(goo);
+                    esOrder.setGoods(goods);
+                    orders.add(esOrder);
                 }
                 }
-                esOrder.setStatus(String.valueOf(order.getStatus()));
-                esOrder.setTrxNo(order.getTrxNo());
-                List<good> goods = new ArrayList<>();
-                good goo = new good();
-                goo.setGoodsName(order.getProductName());
-                goo.setPrice(order.getPrice());
-                goo.setSuccess(true);
-                goods.add(goo);
-                esOrder.setGoods(goods);
-                orders.add(esOrder);
             }
             }
         }
         }
         esOrderList.setTotal(total);
         esOrderList.setTotal(total);
@@ -148,4 +192,26 @@ public class ApiInterContriller {
         long daysBetween = ChronoUnit.DAYS.between(startLocalDate, endLocalDate);
         long daysBetween = ChronoUnit.DAYS.between(startLocalDate, endLocalDate);
         return daysBetween > 31;
         return daysBetween > 31;
     }
     }
+
+    /**
+     * 判断支付方式
+     */
+    public String checkPayType(Integer payType) {
+        if (payType != null) {
+            if (payType == 0) {
+                return "No-Pay";
+            } else if (payType == 1) {
+                return "Coin";
+            } else if (payType == 2) {
+                return "Cash";
+            } else if (payType == 3) {
+                return "Coin + Cash";
+            } else if (payType == 4) {
+                return "Credit card";
+            } else if (payType == 5) {
+                return "E-PAYMENT";
+            }
+        }
+        return "Other";
+    }
 }
 }