From eeae756a026236d71ee7514f27972de92542d830 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 22 Jan 2025 22:06:19 +0800 Subject: [PATCH] fix --- .../controller/callback/AliPayController.java | 18 ++++++++++++++---- .../java/com/iformall/domain/po/WxMall.java | 2 ++ .../java/com/iformall/mapper/WxMallMapper.java | 2 ++ .../com/iformall/service/WxMallService.java | 2 ++ .../service/impl/WxMallServiceImpl.java | 5 +++++ .../src/main/resources/mapper/WxMallMapper.xml | 15 +++++++++++++-- 6 files changed, 38 insertions(+), 6 deletions(-) diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/AliPayController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/AliPayController.java index ca5910a44..2c47d4e36 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/AliPayController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/AliPayController.java @@ -206,8 +206,8 @@ public class AliPayController extends BaseController { * https://opendocs.alipay.com/pre-apis/00fi1b * @throws Exception 可能产生的任何异常 */ - @RequestMapping(value = "/notify/{tenantId}") - public String __Notify(@PathVariable String tenantId,@RequestParam Map paramMap) throws Exception { + @RequestMapping(value = "/notify") + public String __Notify(@RequestParam Map paramMap) throws Exception { String msgMethod = (String) paramMap.get("msg_method"); String notifyId = (String) paramMap.get("notify_id"); @@ -256,9 +256,14 @@ public class AliPayController extends BaseController { String mallName = jo.getString("mall_name"); // WxMerchant merchant = wxMerchantService.getById(Long.parseLong(mallStoreId)); + WxMall mall = mallService.getByAliMallId(mallId); + if (null == mall) { + logger.error("支付宝mallId未找到wxMall:"+mallId); + return "fail"; + } WxMerchant merchant = null; if (StringUtils.isNotBlank(mallStoreId)) { - merchant = wxMerchantService.getMerchantByEncode(tenantId,mallStoreId); + merchant = wxMerchantService.getMerchantByEncode(mall.getTenantId(),mallStoreId); } // if(merchant == null){ @@ -306,7 +311,12 @@ public class AliPayController extends BaseController { String mallName = jo.getString("mall_name"); // WxMerchant merchant = wxMerchantService.getById(Long.parseLong(mallStoreId)); - WxMerchant merchant = wxMerchantService.getMerchantByEncode(tenantId,mallStoreId); + WxMall mall = mallService.getByAliMallId(mallId); + if (null == mall) { + logger.error("支付宝mallId未找到wxMall:"+mallId); + return "fail"; + } + WxMerchant merchant = wxMerchantService.getMerchantByEncode(mall.getTenantId(),mallStoreId); if(merchant == null){ logger.error("alipay notify . 找不到门店:"+paramMap); return "fail"; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMall.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMall.java index 680146694..daf886045 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMall.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMall.java @@ -95,6 +95,8 @@ public class WxMall extends TenantEntity { private String alipayAppAuthToken; @io.swagger.annotations.ApiModelProperty(value="支付宝app authToken,永久有效",name="alipayAppAuthToken") private String alipayMemberTemplateId; + @io.swagger.annotations.ApiModelProperty(value="支付宝商圈mallId",name="aliMallId") + private String aliMallId; @io.swagger.annotations.ApiModelProperty(value="是否支持商户根据手机号查询使用卡",name="useCardBySearchPhone") private Integer useCardBySearchPhone; diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxMallMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxMallMapper.java index 22d064a84..dcb6936cd 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxMallMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxMallMapper.java @@ -12,6 +12,8 @@ public interface WxMallMapper extends CommonMapper { List findList(WxMall wxMall); WxMall getByTenantId(String tenantId); + + WxMall getByAliMallId(String aliMallId); WxMall getByTenantInfo(TenantEntity tenantEntity); diff --git a/mallinkService/src/main/java/com/iformall/service/WxMallService.java b/mallinkService/src/main/java/com/iformall/service/WxMallService.java index fa7c874b9..b3c380c86 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxMallService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxMallService.java @@ -40,6 +40,8 @@ public interface WxMallService { * @return */ WxMall getById(Long id); + + WxMall getByAliMallId(String aliMallId); /** * 保存实体 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java index dbc0e0e32..cfd03b7d3 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java @@ -113,6 +113,11 @@ public class WxMallServiceImpl implements WxMallService { public WxMall getById(Long id) { return this.getByTenantId(String.valueOf(id)); } + + @Override + public WxMall getByAliMallId(String aliMallId) { + return this.getByAliMallId(aliMallId); + } @Override public int save(WxMall record) { diff --git a/mallinkService/src/main/resources/mapper/WxMallMapper.xml b/mallinkService/src/main/resources/mapper/WxMallMapper.xml index e72ec8cba..bd3e3232c 100644 --- a/mallinkService/src/main/resources/mapper/WxMallMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMallMapper.xml @@ -44,7 +44,7 @@ - + @@ -61,7 +61,7 @@ `weapp_share_title`,`weapp_share_cover_img`, `pos_qrcode_rule`, `sale_type`, `valid_start`, `valid_end`,`business_hours`,`introduction`,`img`, `latitude`,`longitude`,`default_sign`,`group_support`,`live_support`,`use_card_by_search_phone`, - `cash_out_support`,`cash_out_limit`,`alipay_app_auth_token`,`alipay_member_template_id` + `cash_out_support`,`cash_out_limit`,`alipay_app_auth_token`,`alipay_member_template_id`,`ali_mall_id` @@ -149,6 +149,10 @@ and `group_support` = #{groupSupport} + + + and `ali_mall_id` = #{aliMallId} + and tenant_id in @@ -196,6 +200,13 @@ from wx_mall where `tenant_id` = #{value} + +