From 2ec5255615c0c57bab5fac0f1f952cbca3f6f26d Mon Sep 17 00:00:00 2001 From: dzq Date: Tue, 15 Apr 2025 16:54:23 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E4=BC=81=E4=B8=9A=E5=BE=AE=E4=BF=A1):=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96=E7=AE=A1=E7=90=86=E5=91=98?= =?UTF-8?q?=E7=94=A8=E6=88=B7ID=E7=9A=84=E5=8A=9F=E8=83=BD=E5=B9=B6?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B6=88=E6=81=AF=E5=8F=91=E9=80=81=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加`selectAdminUserIds`方法以获取管理员用户ID,并优化`sendNewsMessage`方法中的URL参数,移除调试参数。此外,调整订单商品状态验证逻辑,允许状态为5的商品进行操作。 --- .../com/agileboot/domain/qywx/api/QywxApiUtil.java | 2 +- .../agileboot/domain/qywx/user/db/QyUserMapper.java | 12 ++++++++++++ .../agileboot/domain/qywx/user/db/QyUserService.java | 2 ++ .../domain/qywx/user/db/QyUserServiceImpl.java | 5 +++++ .../approval/ReturnApprovalApplicationService.java | 7 +++++-- .../domain/shop/order/OrderApplicationService.java | 9 +-------- 6 files changed, 26 insertions(+), 11 deletions(-) diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/api/QywxApiUtil.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/api/QywxApiUtil.java index 339a307..47a2409 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/api/QywxApiUtil.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/api/QywxApiUtil.java @@ -29,7 +29,7 @@ public class QywxApiUtil { * @return 消息发送结果 */ public static NewsMessageResponse sendNewsMessage(String accessToken, Integer agentId, String toUser, String toparty, String totag, List articles) { - String url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + accessToken + "&debug=" + 1; + String url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + accessToken; Map params = new HashMap<>(); params.put("touser", toUser); diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserMapper.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserMapper.java index 450c358..382fea8 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserMapper.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserMapper.java @@ -31,4 +31,16 @@ public interface QyUserMapper extends BaseMapper { "AND deleted = 0") QyUserEntity selectByUserid(@Param("userid") String userid, @Param("corpid") String corpid); + @Select("SELECT DISTINCT qu.userid " + + "FROM qy_user qu " + + "LEFT JOIN sys_user_qy_user suqy ON qu.id = suqy.qy_user_id " + + "LEFT JOIN sys_user su ON suqy.sys_user_id = su.user_id " + + "LEFT JOIN sys_role sr ON su.role_id = sr.role_id " + + "WHERE qu.deleted = 0 " + + "AND suqy.deleted = 0 " + + "AND su.deleted = 0 " + + "AND sr.deleted = 0 " + + "AND sr.role_key = 'admin'") + List selectAdminUserIds(); + } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserService.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserService.java index 54398d7..5dbff87 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserService.java @@ -20,4 +20,6 @@ public interface QyUserService extends IService { List selectAll(); QyUserEntity getUserByUserId(String userid, String corpid); + + List selectAdminUserIds(); } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserServiceImpl.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserServiceImpl.java index 2b29820..3e2bb9b 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserServiceImpl.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/db/QyUserServiceImpl.java @@ -38,4 +38,9 @@ public class QyUserServiceImpl extends ServiceImpl i public QyUserEntity getUserByUserId(String userid, String corpid) { return baseMapper.selectByUserid(userid, corpid); } + + @Override + public List selectAdminUserIds() { + return baseMapper.selectAdminUserIds(); + } } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/approval/ReturnApprovalApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/approval/ReturnApprovalApplicationService.java index e91400b..46b16bd 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/approval/ReturnApprovalApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/approval/ReturnApprovalApplicationService.java @@ -9,6 +9,7 @@ import com.agileboot.domain.qywx.api.QywxApiUtil; import com.agileboot.domain.qywx.api.response.NewsArticle; import com.agileboot.domain.qywx.authCorpInfo.AuthCorpInfoApplicationService; import com.agileboot.domain.qywx.authCorpInfo.db.QyAuthCorpInfoEntity; +import com.agileboot.domain.qywx.user.db.QyUserService; import com.agileboot.domain.shop.approval.command.AddReturnApprovalCommand; import com.agileboot.domain.shop.approval.command.UpdateReturnApprovalCommand; import com.agileboot.domain.shop.approval.db.ReturnApprovalEntity; @@ -57,6 +58,7 @@ public class ReturnApprovalApplicationService { private final GoodsModelFactory goodsModelFactory; private final AuthCorpInfoApplicationService authCorpInfoApplicationService; private final AccessTokenApplicationService accessTokenApplicationService; + private final QyUserService qyUserService; /** * 获取退货审批列表 @@ -203,8 +205,9 @@ public class ReturnApprovalApplicationService { .filter(a -> "wpZ1ZrEgAA2QTxIRcB4cMtY7hQbTcPAw".equals(a.getCorpid())) .findFirst().orElse(null); QyAccessTokenEntity accessToken = accessTokenApplicationService.getByAppid(appid, authCorpInfo.getCorpid()); - // TODO 获取用户ID - String toUser = "woZ1ZrEgAAV9AEdRt1MGQxSg-KDJrDlA|woZ1ZrEgAAoFQl9vWHMj4PkFoSc8FR8w"; + // 获取用户ID + List adminUserIds = qyUserService.selectAdminUserIds(); + String toUser = String.join("|", adminUserIds); String toparty = ""; String totag = ""; List articles = new ArrayList<>(); diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java index 530cb2c..e23c003 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java @@ -72,19 +72,12 @@ public class OrderApplicationService { if (orderModel.getStatus() != 2) { throw new ApiException(ErrorCode.Client.COMMON_FORBIDDEN_TO_CALL, "订单状态不允许操作"); } - Date payTime = orderModel.getPayTime(); - if (payTime == null) - payTime = orderModel.getCreateTime(); - // 验证payTime是否在24小时内 - if (DateUtil.offsetHour(payTime, 24).before(new Date())) { - throw new ApiException(ErrorCode.Client.COMMON_FORBIDDEN_TO_CALL, "订单支付时间超过24小时,不允许操作"); - } ShopOrderGoodsEntity goodsEntity = orderGoodsService.getById(orderGoodsId); if (null == goodsEntity || !orderId.equals(goodsEntity.getOrderId())) { throw new ApiException(ErrorCode.Client.COMMON_FORBIDDEN_TO_CALL, "订单商品不存在"); } - if (goodsEntity.getStatus() != 1) { + if (goodsEntity.getStatus() != 1 && goodsEntity.getStatus()!= 5) { throw new ApiException(ErrorCode.Client.COMMON_FORBIDDEN_TO_CALL, "订单商品状态不允许操作"); }