diff --git a/bweb/lib/pop-sdk-1.18.23-all.jar b/bweb/lib/pop-sdk-1.18.23-all.jar
new file mode 100644
index 0000000..ee4b58a
Binary files /dev/null and b/bweb/lib/pop-sdk-1.18.23-all.jar differ
diff --git a/bweb/lib/taobao-sdk-java-elm.jar b/bweb/lib/taobao-sdk-java-elm.jar
new file mode 100644
index 0000000..15bf43d
Binary files /dev/null and b/bweb/lib/taobao-sdk-java-elm.jar differ
diff --git a/bweb/lib/taobao-sdk.jar b/bweb/lib/taobao-sdk.jar
new file mode 100644
index 0000000..531b630
Binary files /dev/null and b/bweb/lib/taobao-sdk.jar differ
diff --git a/bweb/pom.xml b/bweb/pom.xml
index de755cd..bff4593 100644
--- a/bweb/pom.xml
+++ b/bweb/pom.xml
@@ -18,6 +18,27 @@
service
PACKT-SNAPSHOT
+
+ taobao.skd
+ taobao-open-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/taobao-sdk.jar
+
+
+ taobao-elm.skd
+ taobao-open-elm-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/taobao-sdk-java-elm.jar
+
+
+ pop.skd
+ pop-open-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/pop-sdk-1.18.23-all.jar
+
@@ -26,7 +47,15 @@
src/main/resources/${env}
false
+
+ ${basedir}/lib
+ BOOT-INF/lib/
+
+ **/*.jar
+
+
+
org.apache.maven.plugins
diff --git a/cweb/lib/taobao-sdk.jar b/cweb/lib/taobao-sdk.jar
index 28a9c92..531b630 100644
Binary files a/cweb/lib/taobao-sdk.jar and b/cweb/lib/taobao-sdk.jar differ
diff --git a/cweb/src/main/java/com/hfkj/controller/ClientController.java b/cweb/src/main/java/com/hfkj/controller/ClientController.java
index eb41c3a..52870a7 100644
--- a/cweb/src/main/java/com/hfkj/controller/ClientController.java
+++ b/cweb/src/main/java/com/hfkj/controller/ClientController.java
@@ -121,6 +121,28 @@ public class ClientController {
}
}
+
+
+ @RequestMapping(value = "/smsLogin", method = RequestMethod.GET)
+ @ResponseBody
+ @ApiOperation(value = "登录并注册")
+ public ResponseData smsLogin(@RequestParam(value = "phone" , required = true) String phone) {
+ try {
+
+
+ // 校验手机号格式
+ if (!MemberValidateUtil.validatePhone(phone)) {
+ throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "请输入正确的手机号");
+ }
+
+
+ return ResponseMsgUtil.success(userService.login(phone, UserLoginType.SMS, new HashMap<>(), null));
+
+ } catch (Exception e) {
+ return ResponseMsgUtil.exception(e);
+ }
+ }
+
@RequestMapping(value="/loginOut",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "退出登录")
diff --git a/cweb/src/main/java/com/hfkj/controller/GoodsController.java b/cweb/src/main/java/com/hfkj/controller/GoodsController.java
index e3f7f93..72ceb53 100644
--- a/cweb/src/main/java/com/hfkj/controller/GoodsController.java
+++ b/cweb/src/main/java/com/hfkj/controller/GoodsController.java
@@ -5,10 +5,12 @@ import com.hfkj.common.exception.ErrorCode;
import com.hfkj.common.exception.ErrorHelp;
import com.hfkj.common.exception.SysCode;
import com.hfkj.common.security.UserCenter;
+import com.hfkj.common.utils.DateUtil;
import com.hfkj.common.utils.ResponseMsgUtil;
import com.hfkj.entity.BsOrder;
import com.hfkj.entity.BsUser;
import com.hfkj.model.*;
+import com.hfkj.service.elm.ElmService;
import com.hfkj.service.goods.GoodsDataService;
import com.hfkj.service.order.BsOrderService;
import com.hfkj.service.pdd.PddService;
@@ -23,10 +25,10 @@ import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.time.Duration;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
@Controller
@RequestMapping(value="/goods")
@@ -42,8 +44,6 @@ public class GoodsController {
@Resource
private BsUserService bsUserService;
-
-
@RequestMapping(value="/goodsList",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询商品列表")
@@ -55,10 +55,13 @@ public class GoodsController {
try {
List goodsList;
+ // 用户session
+ UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class);
// 1:淘宝 2:拼多多
if (type == 1) {
- JSONObject jsonObject = TaoBaoService.material(title , pageNo , pageSize);
+
+ JSONObject jsonObject = TaoBaoService.material(title , pageNo , pageSize );
if (!jsonObject.getBoolean("success")) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "请求失败!");
@@ -66,8 +69,6 @@ public class GoodsController {
goodsList = goodsDataService.goodsModelTaoBaoList(jsonObject);
} else if (type == 2) {
- // 用户session
- UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class);
Map mapUser = new JSONObject();
mapUser.put("uid", userSession.getUser().getId());
JSONObject object = PddService.authority(mapUser.toString());
@@ -139,12 +140,19 @@ public class GoodsController {
JSONObject tokenResult = JSONObject.parseObject(token);
- JSONObject jsonObject = TaoBaoService.publisher(tokenResult.getString("access_token"));
+ // 用户备案
+ JSONObject jsonObject = TaoBaoService.publisher(tokenResult.getString("access_token") , "5FM9A9");
String body = jsonObject.getString("body");
JSONObject result = JSONObject.parseObject(body);
+ // 渠道备案
+ JSONObject relationObject = TaoBaoService.publisher(tokenResult.getString("access_token") , "JIIIVF");
+ String relation = relationObject.getString("body");
+ JSONObject relationBody = JSONObject.parseObject(relation);
+
BsUser user = bsUserService.getUser(userSession.getUser().getId());
- user.setSpecialId(result.getJSONObject("data").getString("relation_id"));
+ user.setSpecialId(result.getJSONObject("data").getString("special_id"));
+ user.setRelationId(relationBody.getJSONObject("data").getString("relation_id"));
bsUserService.updateInfo(user);
return ResponseMsgUtil.success("绑定成功");
@@ -155,17 +163,63 @@ public class GoodsController {
}
}
- @RequestMapping(value="/getToken",method = RequestMethod.GET)
+ @RequestMapping(value="/getPublisherInfo",method = RequestMethod.GET)
@ResponseBody
- @ApiOperation(value = "获取Access Token")
- public ResponseData getToken(@RequestParam(value = "code" , required = false) String code
+ @ApiOperation(value = "淘宝客-公用-私域用户备案信息查询")
+ public ResponseData getPublisherInfo(@RequestParam(value = "code" , required = false) String code
) {
try {
+ // 用户session
+ UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class);
- JSONObject jsonObject = TaoBaoService.getToken(code);
- String token = jsonObject.getString("token_result");
+ JSONObject tokenJson = TaoBaoService.getToken(code);
+ String token = tokenJson.getString("token_result");
JSONObject tokenResult = JSONObject.parseObject(token);
- return ResponseMsgUtil.success(tokenResult);
+
+
+ BsUser user = bsUserService.getUser(userSession.getUser().getId());
+ // 用户备案
+ JSONObject jsonObject = TaoBaoService.getPublisherInfo(tokenResult.getString("access_token") , Long.valueOf(user.getRelationId()), user.getSpecialId());
+
+ return ResponseMsgUtil.success(jsonObject);
+
+ } catch (Exception e) {
+ log.error("error!",e);
+ return ResponseMsgUtil.exception(e);
+ }
+ }
+
+
+ @RequestMapping(value="/getOrderList",method = RequestMethod.GET)
+ @ResponseBody
+ @ApiOperation(value = "查询订单")
+ public ResponseData getOrderList(@RequestParam(value = "code" , required = false) String code
+ ) {
+ try {
+
+ return ResponseMsgUtil.success(ElmService.elmOrderList("2024-10-20 09:34:00" , "2024-11-04 12:34:00").getJSONArray("result"));
+
+ } catch (Exception e) {
+ log.error("error!",e);
+ return ResponseMsgUtil.exception(e);
+ }
+ }
+
+ @RequestMapping(value="/generalLink",method = RequestMethod.GET)
+ @ResponseBody
+ @ApiOperation(value = "淘宝客-公用-私域用户备案信息查询")
+ public ResponseData generalLink(
+ @RequestParam(value = "itemId" , required = false) String itemId,
+ @RequestParam(value = "url" , required = false) String url
+ ) {
+ try {
+
+ // 用户session
+ UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class);
+ // 用户备案
+ JSONObject jsonObject = TaoBaoService.generalLink(itemId, url, userSession.getUser().getRelationId());
+
+ return ResponseMsgUtil.success(jsonObject);
} catch (Exception e) {
log.error("error!",e);
diff --git a/cweb/src/main/java/com/hfkj/controller/TakeOutController.java b/cweb/src/main/java/com/hfkj/controller/TakeOutController.java
index 28b7425..bafe4cf 100644
--- a/cweb/src/main/java/com/hfkj/controller/TakeOutController.java
+++ b/cweb/src/main/java/com/hfkj/controller/TakeOutController.java
@@ -2,10 +2,12 @@ package com.hfkj.controller;
import com.alibaba.fastjson.JSONObject;
import com.hfkj.common.security.UserCenter;
+import com.hfkj.common.utils.DateUtil;
import com.hfkj.common.utils.ResponseMsgUtil;
import com.hfkj.model.ResponseData;
import com.hfkj.model.UserSessionObject;
import com.hfkj.service.meituan.MeiTuanService;
+import com.hfkj.service.order.BsOrderService;
import com.hfkj.service.user.BsUserAccountRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -18,6 +20,10 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
+import javax.annotation.Resource;
+import java.time.format.DateTimeFormatter;
+import java.util.Date;
+
@Controller
@RequestMapping(value="/takeOut")
@Api(value="外卖")
@@ -28,6 +34,9 @@ public class TakeOutController {
@Autowired
private UserCenter userCenter;
+ @Resource
+ private BsOrderService orderService;
+
@RequestMapping(value="/generateLink",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "自助取链接口 ")
@@ -40,7 +49,7 @@ public class TakeOutController {
JSONObject jsonObject = new JSONObject();
jsonObject.put("actId" , actId);
- jsonObject.put("sid" , session.getUser().getId());
+ jsonObject.put("sid" , String.valueOf(session.getUser().getId()));
jsonObject.put("linkType" , linkType);
JSONObject object = MeiTuanService.generateLink(jsonObject);
@@ -53,24 +62,43 @@ public class TakeOutController {
}
}
+ @RequestMapping(value="/miniCode",method = RequestMethod.GET)
+ @ResponseBody
+ @ApiOperation(value = "小程序生成二维码 ")
+ public ResponseData miniCode() {
+ try {
+ // 用户session
+ UserSessionObject session = userCenter.getSessionModel(UserSessionObject.class);
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("actId" , 33);
+ jsonObject.put("sid" , String.valueOf(session.getUser().getId()));
+ jsonObject.put("linkType" , 4);
+
+ JSONObject object = MeiTuanService.miniCode(jsonObject);
+
+ return ResponseMsgUtil.success(object);
+
+ } catch (Exception e) {
+ log.error("error!",e);
+ return ResponseMsgUtil.exception(e);
+ }
+ }
+
+
+
@RequestMapping(value="/orderList",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "订单列表查询接口")
public ResponseData orderList(
- @RequestParam(value = "actId" , required = false) Long actId,
- @RequestParam(value = "startTime" , required = false) Long startTime,
- @RequestParam(value = "endTime" , required = false) Integer endTime
+ @RequestParam(value = "actId" , required = false) Long actId
) {
try {
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("startTime" , startTime);
- jsonObject.put("endTime" , endTime);
- jsonObject.put("actId" , actId);
- JSONObject object = MeiTuanService.orderList(jsonObject);
+ orderService.getOrderMeiTuanList(String.valueOf(new Date().getTime()/1000 - 86000) , String.valueOf(new Date().getTime()/1000));
- return ResponseMsgUtil.success(object);
+ return ResponseMsgUtil.success("object");
} catch (Exception e) {
log.error("error!",e);
diff --git a/cweb/src/main/java/com/hfkj/controller/TestController.java b/cweb/src/main/java/com/hfkj/controller/TestController.java
index f4277b8..2dcc4ef 100644
--- a/cweb/src/main/java/com/hfkj/controller/TestController.java
+++ b/cweb/src/main/java/com/hfkj/controller/TestController.java
@@ -5,10 +5,13 @@ import com.hfkj.common.exception.ErrorCode;
import com.hfkj.common.exception.ErrorHelp;
import com.hfkj.common.exception.SysCode;
+import com.hfkj.common.security.UserCenter;
import com.hfkj.common.utils.HttpsUtils;
import com.hfkj.common.utils.ResponseMsgUtil;
+import com.hfkj.entity.BsUser;
import com.hfkj.model.ResponseData;
+import com.hfkj.model.UserSessionObject;
import com.hfkj.service.elm.ElmService;
import com.hfkj.service.meituan.MeiTuanService;
import com.hfkj.service.pdd.PddService;
@@ -16,11 +19,13 @@ import com.hfkj.service.taobao.TaoBaoService;
import com.hfkj.service.user.BsUserContributeService;
import com.hfkj.service.user.BsUserGradeService;
import com.hfkj.service.user.BsUserParentRelService;
+import com.hfkj.service.user.BsUserService;
import com.hfkj.sysenum.user.UserGradeEnum;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -41,22 +46,31 @@ import java.util.Map;
public class TestController {
private static Logger log = LoggerFactory.getLogger(TestController.class);
- @RequestMapping(value="/material",method = RequestMethod.GET)
+ @Autowired
+ private UserCenter userCenter;
+
+ @Resource
+ private BsUserService bsUserService;
+
+ @RequestMapping(value="/getPublisherInfo",method = RequestMethod.GET)
@ResponseBody
- @ApiOperation(value = "淘宝客-推广者-物料id列表查询 ")
- public ResponseData material(@RequestParam(value = "title" , required = false) String title,
- @RequestParam(value = "pageNo" , required = false) Long pageNo,
- @RequestParam(value = "pageSize" , required = false) Long pageSize
+ @ApiOperation(value = "淘宝客-公用-私域用户备案")
+ public ResponseData getPublisherInfo(@RequestParam(value = "code" , required = false) String code
) {
try {
+ // 用户session
+ UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class);
+
+ JSONObject tokenJson = TaoBaoService.getToken(code);
+ String token = tokenJson.getString("token_result");
+ JSONObject tokenResult = JSONObject.parseObject(token);
- JSONObject jsonObject = TaoBaoService.material(title , pageNo , pageSize);
- if (jsonObject.getBoolean("success")) {
- return ResponseMsgUtil.success(jsonObject.getJSONArray("result_list"));
- } else {
- throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "请求失败!");
- }
+ BsUser user = bsUserService.getUser(userSession.getUser().getId());
+ // 用户备案
+ JSONObject jsonObject = TaoBaoService.getPublisherInfo(tokenResult.getString("access_token") , Long.valueOf(user.getRelationId()), user.getSpecialId());
+
+ return ResponseMsgUtil.success(jsonObject);
} catch (Exception e) {
log.error("error!",e);
@@ -67,5 +81,4 @@ public class TestController {
-
}
diff --git a/cweb/src/main/java/com/hfkj/controller/order/BsOrderController.java b/cweb/src/main/java/com/hfkj/controller/order/BsOrderController.java
index 367de94..070ea86 100644
--- a/cweb/src/main/java/com/hfkj/controller/order/BsOrderController.java
+++ b/cweb/src/main/java/com/hfkj/controller/order/BsOrderController.java
@@ -93,20 +93,6 @@ public class BsOrderController {
}
}
- @RequestMapping(value="/getPddOrderList",method = RequestMethod.GET)
- @ResponseBody
- @ApiOperation(value = "用时间段查询推广订单接口")
- public ResponseData getPddOrderList() {
- try {
-
- return ResponseMsgUtil.success(orderService.getOrderList("2024-10-01 00:00:00"));
-
- } catch (Exception e) {
- log.error("error!",e);
- return ResponseMsgUtil.exception(e);
- }
- }
-
@RequestMapping(value="/statisticsOrder",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "统计订单")
@@ -134,8 +120,9 @@ public class BsOrderController {
List list = orderService.getOrderList(new HashMap<>());
+
// 查询个人订单
- List orderUserList = list.stream().filter(s->s.getUserId().equals(session.getUser().getId())).collect(Collectors.toList());
+ List orderUserList = list.stream().filter(s-> s.getUserId() != null).filter(s->s.getUserId().equals(session.getUser().getId())).collect(Collectors.toList());
//查询团队
// 查询团队用户
Map param = new HashMap<>();
@@ -157,31 +144,31 @@ public class BsOrderController {
BigDecimal goldCoinExchangeRate = new BigDecimal(secDictionaryService.getDictionary("GOLD_COIN_EXCHANGE_RATE").get(0).getCodeValue());
map.put("cumulative" , userAccountRecordService.getUserTotalProfit(session.getUser().getId() , null , null));
- map.put("unliquidated" , allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ map.put("unliquidated" , allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) ).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
// 今日收益报表
Map todayReport = new HashMap<>();
JSONObject object;
// 获取今天新增订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) ).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
todayReport.put("todayAddOrder", object);
// 获取今天我的订单
object = new JSONObject();
- object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
todayReport.put("todayUserOrder", object);
// 团队订单
object = new JSONObject();
- object.put("orderTeamNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
- object.put("orderTeamMoney", teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderTeamNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
+ object.put("orderTeamMoney", teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
todayReport.put("teamOrderList", object);
// 获取今天失效订单
object = new JSONObject();
- object.put("orderFailureNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
- object.put("orderFailureMoney", allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderFailureNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).count());
+ object.put("orderFailureMoney", allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(todayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(todayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
todayReport.put("todayFailureOrder", object);
map.put("todayReport" ,todayReport);
@@ -189,24 +176,24 @@ public class BsOrderController {
Map yesterdayReport = new HashMap<>();
// 获取昨天新增订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
yesterdayReport.put("yesterdayAddOrder", object);
// 获取昨天我的订单
object = new JSONObject();
- object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
yesterdayReport.put("yesterdayUserOrder", object);
// 团队订单
object = new JSONObject();
- object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
yesterdayReport.put("yesterdayOrderList", object);
// 获取昨天失效订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(yesterdayTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(yesterdayTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
yesterdayReport.put("yesterdayFailureOrder", object);
map.put("yesterdayReport" ,yesterdayReport);
@@ -214,24 +201,24 @@ public class BsOrderController {
Map thisMonthReport = new HashMap<>();
// 获取本月新增订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
thisMonthReport.put("thisMonthAddOrder", object);
// 获取本月我的订单
object = new JSONObject();
- object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
thisMonthReport.put("thisMonthUserOrder", object);
// 团队订单
object = new JSONObject();
- object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
thisMonthReport.put("thisMonthOrderList", object);
// 获取本月失效订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(thisMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(thisMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
thisMonthReport.put("thisMonthFailureOrder", object);
map.put("thisMonthReport" ,thisMonthReport);
@@ -240,24 +227,24 @@ public class BsOrderController {
Map lastMonthReport = new HashMap<>();
// 获取本月新增订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
lastMonthReport.put("lastMonthAddOrder", object);
// 获取本月我的订单
object = new JSONObject();
- object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) || s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", orderUserList.stream().filter(s->s.getStatus().equals(1) || s.getStatus().equals(2) ).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
lastMonthReport.put("lastMonthUserOrder", object);
// 团队订单
object = new JSONObject();
- object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(5)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", teamOrderList.stream().filter(s->s.getStatus().equals(3)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
lastMonthReport.put("lastMonthOrderList", object);
// 获取本月失效订单
object = new JSONObject();
- object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
- object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(6)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
+ object.put("orderNum", (int) allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).count());
+ object.put("orderMoney", allOrderList.stream().filter(s -> s.getStatus().equals(4)).filter(s -> s.getCreateTime().toInstant().isAfter(lastMonthTime.get("timeS").toInstant()) && s.getCreateTime().toInstant().isBefore(lastMonthTime.get("timeE").toInstant())).map(BsOrder::getPromotionAmount).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(goldCoinExchangeRate));
lastMonthReport.put("lastMonthFailureOrder", object);
map.put("lastMonthReport" ,lastMonthReport);
return ResponseMsgUtil.success(map);
diff --git a/cweb/src/main/java/com/hfkj/controller/promotion/PromotionController.java b/cweb/src/main/java/com/hfkj/controller/promotion/PromotionController.java
index e979f0d..03c9a2a 100644
--- a/cweb/src/main/java/com/hfkj/controller/promotion/PromotionController.java
+++ b/cweb/src/main/java/com/hfkj/controller/promotion/PromotionController.java
@@ -48,6 +48,7 @@ public class PromotionController {
}
jsonObject.put("userId", userSession.getUser().getId());
+ jsonObject.put("relationId", userSession.getUser().getRelationId());
return ResponseMsgUtil.success(promotionService.createUrl(jsonObject));
diff --git a/schedule/lib/pop-sdk-1.18.23-all.jar b/schedule/lib/pop-sdk-1.18.23-all.jar
new file mode 100644
index 0000000..ee4b58a
Binary files /dev/null and b/schedule/lib/pop-sdk-1.18.23-all.jar differ
diff --git a/schedule/lib/taobao-sdk-java-elm.jar b/schedule/lib/taobao-sdk-java-elm.jar
new file mode 100644
index 0000000..15bf43d
Binary files /dev/null and b/schedule/lib/taobao-sdk-java-elm.jar differ
diff --git a/schedule/lib/taobao-sdk.jar b/schedule/lib/taobao-sdk.jar
new file mode 100644
index 0000000..531b630
Binary files /dev/null and b/schedule/lib/taobao-sdk.jar differ
diff --git a/schedule/pom.xml b/schedule/pom.xml
index 0e8d2bf..9d9e894 100644
--- a/schedule/pom.xml
+++ b/schedule/pom.xml
@@ -20,6 +20,27 @@
service
PACKT-SNAPSHOT
+
+ taobao.skd
+ taobao-open-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/taobao-sdk.jar
+
+
+ taobao-elm.skd
+ taobao-open-elm-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/taobao-sdk-java-elm.jar
+
+
+ pop.skd
+ pop-open-sdk
+ system
+ 1.0.1
+ ${basedir}/lib/pop-sdk-1.18.23-all.jar
+
@@ -28,6 +49,13 @@
src/main/resources/${env}
false
+
+ ${basedir}/lib
+ BOOT-INF/lib/
+
+ **/*.jar
+
+
diff --git a/schedule/src/main/java/com/hfkj/schedule/OrderSchedule.java b/schedule/src/main/java/com/hfkj/schedule/OrderSchedule.java
new file mode 100644
index 0000000..3999345
--- /dev/null
+++ b/schedule/src/main/java/com/hfkj/schedule/OrderSchedule.java
@@ -0,0 +1,70 @@
+package com.hfkj.schedule;
+
+import com.hfkj.common.utils.DateUtil;
+import com.hfkj.service.order.BsOrderService;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.time.Duration;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Date;
+
+
+/**
+ * @ClassName OrderSchedule
+ * @Author Sum1Dream
+ * @Description 订单定时任务
+ * @Date 2024/11/4 下午2:48
+ **/
+@Component
+public class OrderSchedule {
+
+ @Resource
+ private BsOrderService orderService;
+
+ @Scheduled(cron = "0 0/15 * * * ?") // 每日凌晨05:30:00 执行一次
+ public void pddOrder() {
+ try {
+ // create domain
+ LocalDateTime now = LocalDateTime.now();
+ LocalDateTime twentyMinutesBefore = now.minus(Duration.ofMinutes(59));
+ // 昨日时间
+ orderService.getOrderPddList(twentyMinutesBefore.format(DateTimeFormatter.ofPattern(DateUtil.Y_M_D_HMS)) , DateUtil.format(new Date(),DateUtil.Y_M_D_HMS));
+
+ } catch (Exception e) {
+ System.out.println("查询失败!!!");
+ }
+ }
+
+
+ @Scheduled(cron = "0 0/15 * * * ?") // 每十五分钟 执行一次
+ public void getOrderTaoBaoList() {
+ try {
+
+ // create domain
+ LocalDateTime now = LocalDateTime.now();
+ LocalDateTime twentyMinutesBefore = now.minus(Duration.ofMinutes(19));
+ // 昨日时间
+ orderService.getOrderTaoBaoList(twentyMinutesBefore.format(DateTimeFormatter.ofPattern(DateUtil.Y_M_D_HMS)) , DateUtil.format(new Date(),DateUtil.Y_M_D_HMS));
+
+ } catch (Exception e) {
+ System.out.println("查询失败!!!");
+ }
+ }
+
+ @Scheduled(cron = "0 0/15 * * * ?") // 每十五分钟 执行一次
+ public void getOrderMeiTuanList() {
+ try {
+
+ // 昨日时间
+ orderService.getOrderMeiTuanList(String.valueOf(new Date().getTime()/1000 - 86000) , String.valueOf(new Date().getTime()/1000));
+
+ } catch (Exception e) {
+ System.out.println("查询失败!!!");
+ }
+ }
+
+
+}
diff --git a/service/lib/taobao-sdk.jar b/service/lib/taobao-sdk.jar
index 28a9c92..531b630 100644
Binary files a/service/lib/taobao-sdk.jar and b/service/lib/taobao-sdk.jar differ
diff --git a/service/src/main/java/com/hfkj/entity/BsOrder.java b/service/src/main/java/com/hfkj/entity/BsOrder.java
index 5473cdf..f64eb24 100644
--- a/service/src/main/java/com/hfkj/entity/BsOrder.java
+++ b/service/src/main/java/com/hfkj/entity/BsOrder.java
@@ -75,7 +75,7 @@ public class BsOrder implements Serializable {
private BigDecimal gold;
/**
- * 状态 0-已支付;1-已成团;2-确认收货;3-审核成功;4-审核失败(不可提现);5-已经结算 6-已失效 ;10-已处罚
+ * 状态 1 已下单 2 已收货 3 已结算 4 已失效
*/
private Integer status;
diff --git a/service/src/main/java/com/hfkj/model/GoodsModel.java b/service/src/main/java/com/hfkj/model/GoodsModel.java
index e941d72..d434eb7 100644
--- a/service/src/main/java/com/hfkj/model/GoodsModel.java
+++ b/service/src/main/java/com/hfkj/model/GoodsModel.java
@@ -24,4 +24,8 @@ public class GoodsModel {
*/
JSONObject pddUrl;
+ /**
+ * 淘宝商品ID
+ */
+ String itemId;
}
diff --git a/service/src/main/java/com/hfkj/model/PublishInfoModel.java b/service/src/main/java/com/hfkj/model/PublishInfoModel.java
index 0f9c378..0bad392 100644
--- a/service/src/main/java/com/hfkj/model/PublishInfoModel.java
+++ b/service/src/main/java/com/hfkj/model/PublishInfoModel.java
@@ -18,6 +18,8 @@ public class PublishInfoModel {
*/
String couponShareUrl;
+
+
/**
* 搜索id,建议生成推广链接时候填写,提高收
*/
diff --git a/service/src/main/java/com/hfkj/service/elm/ElmService.java b/service/src/main/java/com/hfkj/service/elm/ElmService.java
index 84ad5df..0c8af39 100644
--- a/service/src/main/java/com/hfkj/service/elm/ElmService.java
+++ b/service/src/main/java/com/hfkj/service/elm/ElmService.java
@@ -2,28 +2,20 @@ package com.hfkj.service.elm;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
-import com.hfkj.common.utils.DateUtil;
-import com.hfkj.common.utils.HttpsUtils;
-import com.hfkj.common.utils.TaoBaoUtil;
+
import com.hfkj.service.taobao.TaoBaoService;
import com.taobao.api.DefaultTaobaoClient;
import com.taobao.api.TaobaoClient;
import com.taobao.api.request.AlibabaAlscUnionElemePromotionOfficialactivityGetRequest;
+import com.taobao.api.request.AlibabaAlscUnionKbcpxPositiveOrderGetRequest;
import com.taobao.api.request.AlibabaAlscUnionMediaZoneAddRequest;
import com.taobao.api.response.AlibabaAlscUnionElemePromotionOfficialactivityGetResponse;
+import com.taobao.api.response.AlibabaAlscUnionKbcpxPositiveOrderGetResponse;
import com.taobao.api.response.AlibabaAlscUnionMediaZoneAddResponse;
-import com.taobao.top.DefaultTopApiClient;
-import com.taobao.top.TopApiClient;
-import com.taobao.top.ability375.Ability375;
-import com.taobao.top.ability375.request.TaobaoTbkTpwdCreateRequest;
-import com.taobao.top.ability375.response.TaobaoTbkTpwdCreateResponse;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.net.URLEncoder;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
public class ElmService {
@@ -72,17 +64,23 @@ public class ElmService {
}
- public static JSONObject mediaZoneAdd(String sessionKey) throws Exception {
+ public static JSONObject elmOrderList(String startTime , String endTime) throws Exception {
// 打印日志, 本地生活媒体推广位创建
log.info("============ 本地生活媒体推广位创建-START =============");
// 创建淘宝客户端
TaobaoClient client = new DefaultTaobaoClient(url, appKey, appsecret);
- AlibabaAlscUnionMediaZoneAddRequest req = new AlibabaAlscUnionMediaZoneAddRequest();
- req.setZoneName("推广位");
- req.setMediaId("1");
- AlibabaAlscUnionMediaZoneAddResponse rsp = client.execute(req, sessionKey);
+ AlibabaAlscUnionKbcpxPositiveOrderGetRequest req = new AlibabaAlscUnionKbcpxPositiveOrderGetRequest();
+ req.setDateType(1L);
+ req.setEndDate(endTime);
+ req.setBizUnit(2L);
+ req.setPageSize(50L);
+ req.setPageNumber(1L);
+ req.setStartDate(startTime);
+ req.setPid(pid);
+ req.setIncludeUsedStoreId(false);
+ AlibabaAlscUnionKbcpxPositiveOrderGetResponse rsp = client.execute(req);
// 打印日志,请求接口
log.info("请求接口:" + "officialactivity");
diff --git a/service/src/main/java/com/hfkj/service/goods/impl/GoodsDataServiceImpl.java b/service/src/main/java/com/hfkj/service/goods/impl/GoodsDataServiceImpl.java
index ff19106..72a2edf 100644
--- a/service/src/main/java/com/hfkj/service/goods/impl/GoodsDataServiceImpl.java
+++ b/service/src/main/java/com/hfkj/service/goods/impl/GoodsDataServiceImpl.java
@@ -54,6 +54,8 @@ public class GoodsDataServiceImpl implements GoodsDataService {
JSONObject income_info = publish_info.getJSONObject("income_info");
JSONArray final_promotion_path_list = price_promotion_info.getJSONArray("final_promotion_path_list");
+ goodsModel.setItemId(object.getString("item_id"));
+
// 淘客推广信息
// 商品佣金信息
incomeInfoModel = new IncomeInfoModel();
diff --git a/service/src/main/java/com/hfkj/service/meituan/MeiTuanService.java b/service/src/main/java/com/hfkj/service/meituan/MeiTuanService.java
index 738b14a..217ef88 100644
--- a/service/src/main/java/com/hfkj/service/meituan/MeiTuanService.java
+++ b/service/src/main/java/com/hfkj/service/meituan/MeiTuanService.java
@@ -10,6 +10,8 @@ import com.hfkj.config.CommonSysConst;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.Date;
+
public class MeiTuanService {
private static Logger log = LoggerFactory.getLogger(MeiTuanService.class);
@@ -42,7 +44,16 @@ public class MeiTuanService {
* @Date: 2024/10/23 上午10:42
*/
public static JSONObject orderList(JSONObject param)throws Exception {
- JSONObject object = request("order" , param);
+ param.put("actId" , 33);
+ param.put("page" , "1");
+ param.put("limit" , "100");
+ param.put("ts" , String.valueOf( new Date().getTime()/1000));
+ return request("orderList" , param);
+ }
+
+
+ public static JSONObject miniCode(JSONObject param)throws Exception {
+ JSONObject object = request("miniCode" , param);
if (object.getInteger("status").equals(0)) {
return object;
diff --git a/service/src/main/java/com/hfkj/service/order/BsOrderService.java b/service/src/main/java/com/hfkj/service/order/BsOrderService.java
index e49bd0a..163fdfc 100644
--- a/service/src/main/java/com/hfkj/service/order/BsOrderService.java
+++ b/service/src/main/java/com/hfkj/service/order/BsOrderService.java
@@ -67,8 +67,14 @@ public interface BsOrderService {
* @Author: Sum1Dream
* @Date: 2024/10/23 上午10:27
*/
- JSONObject getOrderList(String startTime) throws Exception;
+ void getOrderPddList(String startTime , String endTime);
+
+ void getOrderTaoBaoList(String startTime , String endTime);
+
+ void getOrderMeiTuanList(String startTime , String endTime);
+
+ void getOrderElmList(String startTime , String endTime);
/**
* @MethodName getOrderListParent
* @Description: 获取订单
diff --git a/service/src/main/java/com/hfkj/service/order/Impl/BsOrderServiceImpl.java b/service/src/main/java/com/hfkj/service/order/Impl/BsOrderServiceImpl.java
index 252345e..53dc7c5 100644
--- a/service/src/main/java/com/hfkj/service/order/Impl/BsOrderServiceImpl.java
+++ b/service/src/main/java/com/hfkj/service/order/Impl/BsOrderServiceImpl.java
@@ -1,6 +1,7 @@
package com.hfkj.service.order.Impl;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.hfkj.common.exception.ErrorCode;
import com.hfkj.common.exception.ErrorHelp;
@@ -15,17 +16,21 @@ import com.hfkj.entity.BsOrderExample;
import com.hfkj.entity.BsUser;
import com.hfkj.model.BsOrderModel;
import com.hfkj.model.UserTeamModel;
+import com.hfkj.service.meituan.MeiTuanService;
import com.hfkj.service.order.BsOrderService;
import com.hfkj.service.order.OrderBusinessService;
import com.hfkj.service.pdd.PddService;
import com.hfkj.service.promotion.PromotionBusinessService;
import com.hfkj.service.sec.SecDictionaryService;
+import com.hfkj.service.taobao.TaoBaoService;
import com.hfkj.service.user.BsUserContributeService;
import com.hfkj.service.user.BsUserParentRelService;
import com.hfkj.service.user.BsUserService;
import com.hfkj.sysenum.partner.PartnerEnum;
import com.hfkj.sysenum.user.UserAccountRecordSourceTypeEnum;
import com.pdd.pop.sdk.http.api.pop.response.PddDdkOrderListRangeGetResponse;
+import com.taobao.top.ability414.domain.TaobaoTbkOrderDetailsGetPublisherOrderDto;
+import com.taobao.top.ability414.response.TaobaoTbkOrderDetailsGetResponse;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
@@ -35,6 +40,8 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
@@ -145,12 +152,43 @@ public class BsOrderServiceImpl implements BsOrderService {
}
@Override
- public JSONObject getOrderList(String startTime) throws Exception{
+ public void getOrderPddList(String startTime , String endTime) {
+ try {
+ pddOrder(startTime , endTime);
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
+
+
+ }
+
+ @Override
+ public void getOrderTaoBaoList(String startTime , String endTime) {
+ try {
+ taoBaoOrder(startTime , endTime);
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
- pddOrder(startTime);
- return null;
}
+ @Override
+ public void getOrderMeiTuanList(String startTime, String endTime) {
+ try {
+ meiTuanOrder(startTime , endTime);
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
+ }
+
+ @Override
+ public void getOrderElmList(String startTime, String endTime) {
+ try {
+ meiTuanOrder(startTime , endTime);
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
+ }
@Override
public List getOrderListParent(Map map) {
@@ -176,6 +214,18 @@ public class BsOrderServiceImpl implements BsOrderService {
orderModel.setGold(order.getPromotionAmount().multiply(goldCoinExchangeRate));
// 将订单模型添加到订单模型列表中
orderModels.add(orderModel);
+ if (order.getType() == 1) {
+ // 根据订单查询淘宝订单
+ getOrderTaoBaoList(DateUtil.format( new Date(new Date().getTime() - 300000) , DateUtil.Y_M_D_HMS) , DateUtil.format( new Date(new Date().getTime() + 300000) , DateUtil.Y_M_D_HMS));
+ }
+
+ if (order.getType() == 2) {
+ // 根据订单查询拼多多订单
+ getOrderPddList(DateUtil.format( new Date(new Date().getTime() - 300000) , DateUtil.Y_M_D_HMS) , DateUtil.format( new Date(new Date().getTime() + 300000) , DateUtil.Y_M_D_HMS));
+ }
+ if (order.getType() == 3) {
+ getOrderMeiTuanList( String.valueOf(new Date().getTime()/1000 - 300) , String.valueOf(new Date().getTime()/1000 + 300));
+ }
}
return orderModels;
}
@@ -203,38 +253,35 @@ public class BsOrderServiceImpl implements BsOrderService {
}
return orderModels;
}
-
-
return null;
}
@Override
- public void orderRebate(BsOrder bsOrder) throws Exception {
- // 判断订单状态是否为4或5
- if (bsOrder.getStatus().equals(4) || bsOrder.getStatus().equals(5)) {
- // 如果是,则抛出异常,提示订单状态不可返利
- throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "订单状态不可返利");
+ public void orderRebate(BsOrder bsOrder){
+
+ try {
+ Map otherParam = new HashMap<>();
+ otherParam.put("sourceId", bsOrder.getId());
+ otherParam.put("sourceOrderNo", bsOrder.getOrderNo());
+ userContributeService.purchase(bsOrder.getPromotionAmount(), bsOrder.getUserId(), otherParam);
+ bsOrder.setStatus(3);
+ bsOrder.setUpdateTime(new Date());
+ bsOrder.setFinishTime(new Date());
+ editData(bsOrder);
+ } catch (Exception e) {
+ System.out.println(e);
}
- Map otherParam = new HashMap<>();
- otherParam.put("sourceId", bsOrder.getId());
- otherParam.put("sourceOrderNo", bsOrder.getOrderNo());
- userContributeService.purchase(bsOrder.getPromotionAmount(), bsOrder.getUserId(), otherParam);
- bsOrder.setStatus(8);
- bsOrder.setUpdateTime(new Date());
- bsOrder.setFinishTime(new Date());
- editData(bsOrder);
-
- }
-
+ }
// 根据开始时间获取拼多多订单列表
- private void pddOrder(String startTime) throws Exception{
+ private void pddOrder(String startTime , String endTime) throws Exception{
// 调用PddService的getOrderList方法获取订单列表
- PddDdkOrderListRangeGetResponse rangeGetResponse = PddService.getOrderList(startTime);
+ PddDdkOrderListRangeGetResponse rangeGetResponse = PddService.getOrderList(startTime , endTime);
// 调用getOrderList方法获取本地订单列表
List list = getOrderList(new HashMap<>());
+ List userList = userService.getList(new HashMap<>());
// 判断rangeGetResponse是否为空
if (rangeGetResponse != null) {
// 获取订单列表
@@ -264,59 +311,345 @@ public class BsOrderServiceImpl implements BsOrderService {
// 根据订单号获取BsOrder对象
BsOrder bsOrder = list.stream().filter(s->s.getOrderNo().equals(orderListItem.getOrderSn())).findFirst().orElse(null);
// 根据uid获取BsUser对象
- BsUser user = userService.getUser(uid);
+ BsUser user = userList.stream().filter(s->s.getId().equals(Long.valueOf(uid))).findFirst().orElse(null);
if (bsOrder == null) {
// 如果BsOrder对象为空,则创建新的BsOrder对象
bsOrder = new BsOrder();
bsOrder.setOrderNo(orderListItem.getOrderSn());
bsOrder.setUserId(Long.valueOf(uid));
- bsOrder.setUserPhone(user.getPhone());
+ if (user != null) {
+ bsOrder.setUserPhone(user.getPhone() == null ? "" : user.getPhone());
+ }
bsOrder.setCreateTime(new Date());
bsOrder.setUpdateTime(new Date());
- bsOrder.setStatus(orderListItem.getOrderStatus());
+ bsOrder.setStatus(pddStatus(Long.valueOf(orderListItem.getOrderStatus())));
bsOrder.setImg(orderListItem.getGoodsThumbnailUrl());
bsOrder.setType(2);
bsOrder.setGoodsName(orderListItem.getGoodsName());
bsOrder.setGoodsCount(Math.toIntExact(orderListItem.getGoodsQuantity()));
bsOrder.setCustomparameters(orderListItem.getCustomParameters());
- bsOrder.setTotalPrice(BigDecimal.valueOf(orderListItem.getOrderAmount()));
- bsOrder.setPromotionAmount(BigDecimal.valueOf(orderListItem.getPromotionAmount()));
- bsOrder.setPayTime(DateUtil.long2Date(orderListItem.getOrderPayTime()));
- bsOrder.setCreateTime(DateUtil.long2Date(orderListItem.getOrderCreateTime()));
- bsOrder.setFinishTime(DateUtil.long2Date(orderListItem.getOrderSettleTime()));
- bsOrder.setRefundTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()));
- bsOrder.setCancelTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()));
+ bsOrder.setTotalPrice(BigDecimal.valueOf(orderListItem.getOrderAmount()).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));
+ bsOrder.setPromotionAmount(BigDecimal.valueOf(orderListItem.getPromotionAmount()).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));
+ if (orderListItem.getOrderPayTime() != null) {
+ bsOrder.setPayTime(DateUtil.long2Date(orderListItem.getOrderPayTime()*1000));
+ }
+
+ if (orderListItem.getOrderCreateTime() != null) {
+ bsOrder.setCreateTime(DateUtil.long2Date(orderListItem.getOrderCreateTime()*1000));
+ }
+ if (orderListItem.getOrderSettleTime() != null) {
+ bsOrder.setFinishTime(DateUtil.long2Date(orderListItem.getOrderSettleTime()*1000));
+ }
+
+ if (bsOrder.getStatus().equals(4)) {
+ if (orderListItem.getOrderModifyAt() != null) {
+ bsOrder.setCancelTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()*1000));
+ }
+ }
+
create(bsOrder);
}else {
- // 如果BsOrder对象不为空,则更新BsOrder对象
+ if (bsOrder.getStatus() == 2) {
+ // 如果BsOrder对象不为空,则更新BsOrder对象
+ bsOrder.setUpdateTime(new Date());
+ bsOrder.setStatus(orderListItem.getOrderStatus());
+ bsOrder.setImg(orderListItem.getGoodsThumbnailUrl());
+ bsOrder.setType(2);
+ bsOrder.setGoodsName(orderListItem.getGoodsName());
+ bsOrder.setGoodsCount(Math.toIntExact(orderListItem.getGoodsQuantity()));
+ bsOrder.setCustomparameters(orderListItem.getCustomParameters());
+ bsOrder.setTotalPrice(BigDecimal.valueOf(orderListItem.getOrderAmount()).divide(new BigDecimal(100), 6, RoundingMode.HALF_UP));
+ bsOrder.setPromotionAmount(BigDecimal.valueOf(orderListItem.getPromotionAmount()).divide(new BigDecimal(100), 6, RoundingMode.HALF_UP));
+ if (orderListItem.getOrderPayTime() != null) {
+ bsOrder.setPayTime(DateUtil.long2Date(orderListItem.getOrderPayTime()*1000));
+ }
+
+ if (orderListItem.getOrderCreateTime() != null) {
+ bsOrder.setCreateTime(DateUtil.long2Date(orderListItem.getOrderCreateTime()*1000));
+ }
+ if (orderListItem.getOrderSettleTime() != null) {
+ bsOrder.setFinishTime(DateUtil.long2Date(orderListItem.getOrderSettleTime()*1000));
+ }
+
+ if (orderListItem.getOrderModifyAt() != null) {
+ bsOrder.setRefundTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()*1000));
+ }
+
+ if (orderListItem.getOrderModifyAt() != null) {
+ bsOrder.setCancelTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()*1000));
+ }
+
+ // 如果订单状态为5,则调用orderRebate方法
+ if (bsOrder.getStatus() == 2 && orderListItem.getOrderStatus().equals(5)){
+ orderRebate(bsOrder);
+ } else {
+ editData(bsOrder);
+
+ }
+ }
+
+ }
+
+ }
+ }
+ }
+ }
+
+ // 淘宝
+ private void taoBaoOrder(String startTime , String endTime) throws Exception {
+ // 调用TaoBaoService的getOrderList方法,获取淘宝订单列表
+ TaobaoTbkOrderDetailsGetResponse response = TaoBaoService.getOrderList(startTime , endTime);
+ // 调用getOrderList方法,获取本地订单列表
+ List list = getOrderList(new HashMap<>());
+ // 创建一个Map,用于存储relationId
+ Map reMap = new HashMap<>();
+ reMap.put("relationId" , 1);
+ // 调用userService的getList方法,获取用户列表
+ List userList = userService.getList(reMap);
+
+ // 获取淘宝订单列表中的订单信息
+ List results = response.getData().getResults();
+ if (results != null && !results.isEmpty()) {
+ for (TaobaoTbkOrderDetailsGetPublisherOrderDto orderListItem : results) {
+
+ // 根据订单号,从本地订单列表中查找订单
+ BsOrder bsOrder = list.stream().filter(s->s.getOrderNo().equals(orderListItem.getTradeParentId())).findFirst().orElse(null);
+ // 根据relationId,从用户列表中查找用户
+ BsUser bsUser = userList.stream().filter(s->s.getRelationId().equals(orderListItem.getRelationId().toString())).findFirst().orElse(null);
+
+ // 如果本地订单列表中没有该订单,则创建一个新的订单
+ if (bsOrder == null) {
+ bsOrder = new BsOrder();
+ bsOrder.setOrderNo(orderListItem.getTradeParentId());
+ if (bsUser != null) {
+ bsOrder.setUserId(bsUser.getId());
+ bsOrder.setUserPhone(bsUser.getPhone() == null ? "" : bsUser.getPhone());
+ }
+
+
+ bsOrder.setCreateTime(new Date());
+ bsOrder.setUpdateTime(new Date());
+ bsOrder.setStatus(taoBaoStatus(orderListItem.getTkStatus()));
+ bsOrder.setImg("https://" + orderListItem.getItemImg());
+ bsOrder.setType(1);
+ bsOrder.setGoodsName(orderListItem.getItemTitle());
+ bsOrder.setGoodsCount(Math.toIntExact(orderListItem.getItemNum()));
+ bsOrder.setTotalPrice(new BigDecimal(orderListItem.getAlipayTotalPrice()));
+ if (bsOrder.getStatus().equals(5)) {
+ bsOrder.setPromotionAmount(new BigDecimal(orderListItem.getPubShareFeeForCommission()));
+ } else {
+ bsOrder.setPromotionAmount(new BigDecimal(orderListItem.getPubSharePreFeeForCommission()));
+ }
+
+ if (orderListItem.getTkPaidTime() != null) {
+ bsOrder.setPayTime(DateUtil.format(orderListItem.getTkPaidTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ if (orderListItem.getTkCreateTime() != null) {
+ bsOrder.setCreateTime(DateUtil.format(orderListItem.getTkCreateTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+ if (orderListItem.getTkEarningTime() != null) {
+ bsOrder.setFinishTime(DateUtil.format(orderListItem.getTkEarningTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ if (orderListItem.getModifiedTime() != null) {
+ bsOrder.setCancelTime(DateUtil.format(orderListItem.getModifiedTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+ // 调用create方法,将新订单保存到本地订单列表中
+ create(bsOrder);
+ } else {
+ // 如果本地订单列表中已有该订单,则更新订单信息
+ if (bsOrder.getStatus() == 2) {
+ bsOrder.setOrderNo(orderListItem.getTradeParentId());
bsOrder.setUpdateTime(new Date());
- bsOrder.setStatus(orderListItem.getOrderStatus());
- bsOrder.setImg(orderListItem.getGoodsThumbnailUrl());
- bsOrder.setType(2);
- bsOrder.setGoodsName(orderListItem.getGoodsName());
- bsOrder.setGoodsCount(Math.toIntExact(orderListItem.getGoodsQuantity()));
- bsOrder.setCustomparameters(orderListItem.getCustomParameters());
- bsOrder.setTotalPrice(BigDecimal.valueOf(orderListItem.getOrderAmount()));
- bsOrder.setPromotionAmount(BigDecimal.valueOf(orderListItem.getPromotionAmount()));
- bsOrder.setPayTime(DateUtil.long2Date(orderListItem.getOrderPayTime()));
- bsOrder.setCreateTime(DateUtil.long2Date(orderListItem.getOrderCreateTime()));
- bsOrder.setFinishTime(DateUtil.long2Date(orderListItem.getOrderSettleTime()));
- bsOrder.setRefundTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()));
- bsOrder.setCancelTime(DateUtil.long2Date(orderListItem.getOrderModifyAt()));
+ bsOrder.setStatus(taoBaoStatus(orderListItem.getTkStatus()));
+ bsOrder.setImg("https://" + orderListItem.getItemImg());
+ bsOrder.setType(1);
+ bsOrder.setGoodsName(orderListItem.getItemTitle());
+ bsOrder.setGoodsCount(Math.toIntExact(orderListItem.getItemNum()));
+ bsOrder.setTotalPrice(new BigDecimal(orderListItem.getAlipayTotalPrice()));
+ if (bsOrder.getStatus().equals(5)) {
+ bsOrder.setPromotionAmount(new BigDecimal(orderListItem.getPubShareFeeForCommission()));
+ } else {
+ bsOrder.setPromotionAmount(new BigDecimal(orderListItem.getPubSharePreFeeForCommission()));
+ }
+ if (orderListItem.getTkPaidTime() != null) {
+ bsOrder.setPayTime(DateUtil.format(orderListItem.getTkPaidTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ if (orderListItem.getTkCreateTime() != null) {
+ bsOrder.setCreateTime(DateUtil.format(orderListItem.getTkCreateTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+ if (orderListItem.getTkEarningTime() != null) {
+ bsOrder.setFinishTime(DateUtil.format(orderListItem.getTkEarningTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
+
+ if (orderListItem.getModifiedTime() != null) {
+ bsOrder.setCancelTime(DateUtil.format(orderListItem.getModifiedTime() , "yyyy-MM-dd HH:mm:ss"));
+ }
// 如果订单状态为5,则调用orderRebate方法
- if (bsOrder.getStatus() == 5){
+ if (bsOrder.getStatus() == 2 && orderListItem.getTkStatus() == 3){
orderRebate(bsOrder);
} else {
+ // 否则,调用editData方法,更新订单信息
editData(bsOrder);
}
}
}
+
}
}
+ }
+
+
+ private void meiTuanOrder(String startTime , String endTime) throws Exception {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("startTime" , startTime);
+ jsonObject.put("endTime" , endTime);
+ JSONObject object = MeiTuanService.orderList(jsonObject);
+ JSONArray meiTuanOrder = object.getJSONArray("dataList");
+ List list = getOrderList(new HashMap<>());
+ List userList = userService.getList(new HashMap<>());
+
+ if (meiTuanOrder != null && !meiTuanOrder.isEmpty()) {
+ for (int i = 0; i < meiTuanOrder.size(); i++) {
+ JSONObject meiTuan = meiTuanOrder.getJSONObject(i);
+
+ // 根据订单号,从本地订单列表中查找订单
+ BsOrder bsOrder = list.stream().filter(s->s.getOrderNo().equals(meiTuan.getString("orderid"))).findFirst().orElse(null);
+ // 根据relationId,从用户列表中查找用户
+ BsUser bsUser = userList.stream().filter(s->s.getId().equals(meiTuan.getLong("sid"))).findFirst().orElse(null);
+
+ // 如果本地订单列表中没有该订单,则创建一个新的订单
+ if (bsOrder == null) {
+ bsOrder = new BsOrder();
+ bsOrder.setOrderNo(meiTuan.getString("orderid"));
+ if (bsUser != null) {
+ bsOrder.setUserId(bsUser.getId());
+ bsOrder.setUserPhone(bsUser.getPhone() == null ? "" : bsUser.getPhone());
+ }
+
+
+ bsOrder.setCreateTime(new Date());
+ bsOrder.setUpdateTime(new Date());
+ bsOrder.setStatus(meiTuanStatus(meiTuan.getLong("status")));
+ bsOrder.setType(3);
+ bsOrder.setGoodsName(meiTuan.getString("smstitle"));
+ bsOrder.setGoodsCount(1);
+ bsOrder.setTotalPrice(meiTuan.getBigDecimal("payprice"));
+ bsOrder.setPromotionAmount(meiTuan.getBigDecimal("profit"));
+
+ if (meiTuan.getLong("paytime") != null) {
+ bsOrder.setPayTime(DateUtil.long2Date(meiTuan.getLong("paytime")*1000));
+ bsOrder.setCreateTime(DateUtil.long2Date(meiTuan.getLong("paytime")*1000));
+ }
+
+ if (meiTuan.getLong("modTime") != null) {
+ bsOrder.setFinishTime(DateUtil.long2Date(meiTuan.getLong("modTime")*1000));
+ }
+ if (meiTuan.getLong("refundtime") != null) {
+ bsOrder.setRefundTime(DateUtil.long2Date(meiTuan.getLong("refundtime")*1000));
+ bsOrder.setCancelTime(DateUtil.long2Date(meiTuan.getLong("refundtime")*1000));
+ }
+
+ // 调用create方法,将新订单保存到本地订单列表中
+ create(bsOrder);
+ } else {
+ // 如果本地订单列表中已有该订单,则更新订单信息
+ if (bsOrder.getStatus() == 2) {
+ bsOrder.setOrderNo(meiTuan.getString("orderid"));
+ if (bsUser != null) {
+ bsOrder.setUserId(bsUser.getId());
+ bsOrder.setUserPhone(bsUser.getPhone() == null ? "" : bsUser.getPhone());
+ }
+
+
+ bsOrder.setCreateTime(new Date());
+ bsOrder.setUpdateTime(new Date());
+ bsOrder.setStatus(meiTuanStatus(meiTuan.getLong("status")));
+ bsOrder.setType(3);
+ bsOrder.setGoodsName(meiTuan.getString("smstitle"));
+ bsOrder.setGoodsCount(1);
+ bsOrder.setTotalPrice(meiTuan.getBigDecimal("payprice"));
+ bsOrder.setPromotionAmount(meiTuan.getBigDecimal("profit"));
+
+ if (meiTuan.getLong("paytime") != null) {
+ bsOrder.setPayTime(DateUtil.long2Date(meiTuan.getLong("paytime")*1000));
+ bsOrder.setCreateTime(DateUtil.long2Date(meiTuan.getLong("paytime")*1000));
+ }
+
+ if (meiTuan.getLong("modTime") != null) {
+ bsOrder.setFinishTime(DateUtil.long2Date(meiTuan.getLong("modTime")*1000));
+ }
+ if (meiTuan.getLong("refundtime") != null) {
+ bsOrder.setRefundTime(DateUtil.long2Date(meiTuan.getLong("refundtime")*1000));
+ bsOrder.setCancelTime(DateUtil.long2Date(meiTuan.getLong("refundtime")*1000));
+ }
+ // 如果订单状态为5,则调用orderRebate方法
+ if (bsOrder.getStatus() == 2 && meiTuan.getInteger("status") == 8){
+ orderRebate(bsOrder);
+ } else {
+ // 否则,调用editData方法,更新订单信息
+ editData(bsOrder);
+
+ }
+ }
+
+ }
+ }
+ }
+
+
+ }
+
+
+ private Integer pddStatus(Long status) {
+ int result = 4;
+ if (status == 0) {
+ result = 1;
+ } else if (status == 1) {
+ result = 1;
+ } else if (status == 2) {
+ result = 2;
+ } else if (status == 3) {
+ result = 2;
+ } else if (status == 4) {
+ result = 4;
+ } else if (status == 5) {
+ result = 2;
+ }
+ return result;
}
+
+ // 1 已下单 2 已收货 3 已结算 4 已失效
+ private Integer taoBaoStatus(Long status) {
+ int result = 4;
+ if (status == 3) {
+ result = 2;
+ } else if (status == 12) {
+ result = 1;
+ } else if (status == 13) {
+ result = 4;
+ } else if (status == 14) {
+ result = 2;
+ }
+ return result;
+ }
+
+ private Integer meiTuanStatus(Long status) {
+ int result = 4;
+ if (status == 1) {
+ result = 1;
+ } else if (status == 8) {
+ result = 2;
+ } else if (status == 9) {
+ result = 4;
+ }
+ return result;
+ }
}
diff --git a/service/src/main/java/com/hfkj/service/pdd/PddService.java b/service/src/main/java/com/hfkj/service/pdd/PddService.java
index d86f293..4881885 100644
--- a/service/src/main/java/com/hfkj/service/pdd/PddService.java
+++ b/service/src/main/java/com/hfkj/service/pdd/PddService.java
@@ -168,7 +168,7 @@ public class PddService {
* @Author: Sum1Dream
* @Date: 2024/10/23 上午10:27
*/
- public static PddDdkOrderListRangeGetResponse getOrderList(String startTime) throws Exception {
+ public static PddDdkOrderListRangeGetResponse getOrderList(String startTime , String endTime) throws Exception {
log.info("============ 拼多多请求-START =============");
String clientId = "71a050c5d93d4169a237539af44c7c33";
@@ -179,7 +179,7 @@ public class PddService {
request.setStartTime(startTime);
request.setPageSize(300);
request.setQueryOrderType(1);
- request.setEndTime(DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"));
+ request.setEndTime(endTime);
PddDdkOrderListRangeGetResponse response = client.syncInvoke(request);
log.info("请求接口:" + "authority");
diff --git a/service/src/main/java/com/hfkj/service/promotion/PromotionBusinessService.java b/service/src/main/java/com/hfkj/service/promotion/PromotionBusinessService.java
index 40d88cd..1c8e468 100644
--- a/service/src/main/java/com/hfkj/service/promotion/PromotionBusinessService.java
+++ b/service/src/main/java/com/hfkj/service/promotion/PromotionBusinessService.java
@@ -27,7 +27,7 @@ public class PromotionBusinessService {
// 淘口令生成业务
public JSONObject taobaoUrl(JSONObject jsonObject) throws Exception{
- JSONObject object = TaoBaoService.createCommand(jsonObject.getString("url"));
+ JSONObject object = TaoBaoService.generalLink(jsonObject.getString("itemId"), jsonObject.getString("url"), jsonObject.getString("relationId"));
if (!object.getBoolean("success")) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "请求失败!");
}
diff --git a/service/src/main/java/com/hfkj/service/taobao/TaoBaoService.java b/service/src/main/java/com/hfkj/service/taobao/TaoBaoService.java
index cb4f99f..586e14e 100644
--- a/service/src/main/java/com/hfkj/service/taobao/TaoBaoService.java
+++ b/service/src/main/java/com/hfkj/service/taobao/TaoBaoService.java
@@ -5,6 +5,9 @@ import com.alibaba.fastjson.JSONObject;
import com.hfkj.common.exception.ErrorCode;
import com.hfkj.common.exception.ErrorHelp;
import com.hfkj.common.exception.SysCode;
+import com.hfkj.common.utils.DateUtil;
+import com.hfkj.entity.BsUser;
+import com.hfkj.service.user.BsUserService;
import com.taobao.top.DefaultTopApiClient;
import com.taobao.top.TopApiClient;
import com.taobao.top.ability304.Ability304;
@@ -13,19 +16,33 @@ import com.taobao.top.ability304.response.TaobaoTopAuthTokenCreateResponse;
import com.taobao.top.ability375.Ability375;
import com.taobao.top.ability375.request.TaobaoTbkTpwdCreateRequest;
import com.taobao.top.ability375.response.TaobaoTbkTpwdCreateResponse;
+import com.taobao.top.ability414.Ability414;
+import com.taobao.top.ability414.request.TaobaoTbkOrderDetailsGetRequest;
+import com.taobao.top.ability414.response.TaobaoTbkOrderDetailsGetResponse;
import com.taobao.top.ability425.Ability425;
+import com.taobao.top.ability425.request.TaobaoTbkScPublisherInfoGetRequest;
import com.taobao.top.ability425.request.TaobaoTbkScPublisherInfoSaveRequest;
+import com.taobao.top.ability425.response.TaobaoTbkScPublisherInfoGetResponse;
import com.taobao.top.ability425.response.TaobaoTbkScPublisherInfoSaveResponse;
import com.taobao.top.defaultability.Defaultability;
-import com.taobao.top.defaultability.domain.TaobaoTbkOptimusTouMaterialIdsGetMaterialQuery;
+import com.taobao.top.defaultability.domain.*;
+import com.taobao.top.defaultability.request.TaobaoTbkDgGeneralLinkConvertRequest;
import com.taobao.top.defaultability.request.TaobaoTbkDgMaterialOptionalUpgradeRequest;
+import com.taobao.top.defaultability.response.TaobaoTbkDgGeneralLinkConvertResponse;
import com.taobao.top.defaultability.response.TaobaoTbkDgMaterialOptionalUpgradeResponse;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import javax.annotation.Resource;
+import javax.xml.crypto.Data;
+import java.time.Duration;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
public class TaoBaoService {
@@ -37,6 +54,9 @@ public class TaoBaoService {
private static String appsecret = "f04baedca9cd794665dfa04a2fcbfd86";
private static String url = "https://eco.taobao.com/router/rest";
+ @Resource
+ private BsUserService userService;
+
/**
* @MethodName material
* @Description:淘宝客-推广者-物料id列表查询
@@ -47,10 +67,11 @@ public class TaoBaoService {
* @Author: Sum1Dream
* @Date: 2024/9/10 下午1:52
*/
- public static JSONObject material(String title , Long pageNo , Long pageSize) throws Exception {
+ public static JSONObject material(String title , Long pageNo , Long pageSize ) throws Exception {
if (StringUtils.isBlank(title)) {
title = "百货";
}
+
log.info("============ 淘宝客-推广者-物料id列表查询-START =============");
TopApiClient client = new DefaultTopApiClient(appKey,appsecret,url);
Defaultability apiPackage = new Defaultability(client);
@@ -120,7 +141,7 @@ public class TaoBaoService {
* @Author: Sum1Dream
* @Date: 2024/9/23 上午11:40
*/
- public static JSONObject publisher(String token) throws Exception {
+ public static JSONObject publisher(String token , String code) throws Exception {
log.info("============ 淘宝客-公用-私域用户备案-START =============");
TopApiClient client = new DefaultTopApiClient(appKey,appsecret,url);
@@ -129,7 +150,7 @@ public class TaoBaoService {
// create request
TaobaoTbkScPublisherInfoSaveRequest request = new TaobaoTbkScPublisherInfoSaveRequest();
- request.setInviterCode("JIIIVF");
+ request.setInviterCode(code);
request.setInfoType(1L);
request.setNote("元气");
@@ -145,6 +166,7 @@ public class TaoBaoService {
return JSONObject.parseObject(JSON.toJSONString(response));
}
+
/**
* @MethodName getToken
* @Description:获取Access Token
@@ -177,5 +199,106 @@ public class TaoBaoService {
}
+ public static JSONObject getPublisherInfo(String token , Long relationId , String specialId) throws Exception {
+
+ log.info("============ 淘宝客-公用-私域用户备案-START =============");
+ TopApiClient client = new DefaultTopApiClient(appKey,appsecret,url);
+ Ability425 apiPackage = new Ability425(client);
+ // create domain
+
+ // create request
+ TaobaoTbkScPublisherInfoGetRequest request = new TaobaoTbkScPublisherInfoGetRequest();
+ request.setInfoType(1L);
+ request.setRelationApp("common");
+ request.setRelationId(relationId);
+ request.setSpecialId(specialId);
+ request.setPageNo(0L);
+ request.setPageSize(10L);
+
+ TaobaoTbkScPublisherInfoGetResponse response = apiPackage.taobaoTbkScPublisherInfoGet(request,token);
+
+ log.info("请求接口:" + "taobaoTbkScPublisherInfoSave");
+ log.info("请求参数:" + JSONObject.toJSONString(request));
+ log.info("响应参数:" + response);
+ log.info("============ 淘宝客-公用-私域用户备案--END ==============");
+ if(!response.isSuccess()){
+ throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, response.getSubMsg());
+ }
+ return JSONObject.parseObject(JSON.toJSONString(response));
+ }
+
+
+ public static TaobaoTbkOrderDetailsGetResponse getOrderList(String startTime , String endTime) throws Exception {
+
+ log.info("============ 淘宝客-公用-私域用户备案-START =============");
+ TopApiClient client = new DefaultTopApiClient(appKey,appsecret,url);
+ Ability414 apiPackage = new Ability414(client);
+
+
+ // create request
+ TaobaoTbkOrderDetailsGetRequest request = new TaobaoTbkOrderDetailsGetRequest();
+ request.setQueryType(1L);
+ request.setPageSize(20L);
+ request.setStartTime(startTime);
+ request.setEndTime(endTime);
+ request.setJumpType(1L);
+ request.setPageNo(1L);
+ request.setOrderScene(2L);
+
+ TaobaoTbkOrderDetailsGetResponse response = apiPackage.taobaoTbkOrderDetailsGet(request);
+
+ log.info("请求接口:" + "taobaoTbkScPublisherInfoSave");
+ log.info("请求参数:" + JSONObject.toJSONString(request));
+ log.info("响应参数:" + response);
+ log.info("============ 淘宝客-公用-私域用户备案--END ==============");
+ if(!response.isSuccess()){
+ throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, response.getSubMsg());
+ }
+ return response;
+ }
+
+
+ public static JSONObject generalLink(String itemId , String clickUrl , String relationId) throws Exception {
+
+ log.info("============ 淘宝客-公用-私域用户备案-START =============");
+ TopApiClient client = new DefaultTopApiClient(appKey,appsecret,url);
+ Defaultability apiPackage = new Defaultability(client);
+ // create domain
+ TaobaoTbkDgGeneralLinkConvertTargetItemDTO taobaoTbkDgGeneralLinkConvertTargetItemDTO = new TaobaoTbkDgGeneralLinkConvertTargetItemDTO();
+ TaobaoTbkDgGeneralLinkConvertLkItemDTO taobaoTbkDgGeneralLinkConvertLkItemDTO = new TaobaoTbkDgGeneralLinkConvertLkItemDTO();
+ taobaoTbkDgGeneralLinkConvertLkItemDTO.setItemId(itemId);
+ TaobaoTbkDgGeneralLinkConvertLkMaterialDTO taobaoTbkDgGeneralLinkConvertLkMaterialDTO = new TaobaoTbkDgGeneralLinkConvertLkMaterialDTO();
+ taobaoTbkDgGeneralLinkConvertLkMaterialDTO.setMaterialUrl(clickUrl);
+
+ // create request
+ TaobaoTbkDgGeneralLinkConvertRequest request = new TaobaoTbkDgGeneralLinkConvertRequest();
+ request.setBizSceneId("1");
+ request.setPromotionType("2");
+ List materialList = new ArrayList<>();
+ materialList.add(clickUrl);
+ request.setMaterialList(materialList);
+ request.setAdzoneId(115764450446L);
+ List itemIdList = new ArrayList<>();
+ itemIdList.add(itemId);
+ request.setItemIdList(itemIdList);
+ taobaoTbkDgGeneralLinkConvertTargetItemDTO.setItemIdList(itemIdList); // xxx
+ request.setTargetItem(taobaoTbkDgGeneralLinkConvertTargetItemDTO);
+ List materialDto = new ArrayList<>();
+ materialDto.add(taobaoTbkDgGeneralLinkConvertLkMaterialDTO);
+ request.setMaterialDto(materialDto);
+ request.setRelationId(relationId);
+
+ TaobaoTbkDgGeneralLinkConvertResponse response = apiPackage.taobaoTbkDgGeneralLinkConvert(request);
+
+ log.info("请求接口:" + "taobaoTbkScPublisherInfoSave");
+ log.info("请求参数:" + JSONObject.toJSONString(request));
+ log.info("响应参数:" + response);
+ log.info("============ 淘宝客-公用-私域用户备案--END ==============");
+ if(!response.isSuccess()){
+ throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, response.getSubMsg());
+ }
+ return JSONObject.parseObject(JSON.toJSONString(response));
+ }
+
}
diff --git a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java
index eab4c6f..c761917 100644
--- a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java
+++ b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java
@@ -264,6 +264,9 @@ public class BsUserServiceImpl implements BsUserService {
criteria.andGradeEqualTo(MapUtils.getInteger(param, "grade"));
}
+ if (MapUtils.getInteger(param, "relationId") != null) {
+ criteria.andRelationIdIsNotNull();
+ }
if (MapUtils.getInteger(param, "status") != null) {
criteria.andStatusEqualTo(MapUtils.getInteger(param, "status"));
}