Bladeren bron

fixed 卡券核销、店铺交易关闭设置功能bug修复

fushengqian 1 jaar geleden
bovenliggende
commit
ea3ee7b5d7

+ 11 - 0
fuint-application/src/main/java/com/fuint/common/service/SettingService.java

@@ -51,6 +51,17 @@ public interface SettingService extends IService<MtSetting> {
      */
     MtSetting querySettingByName(Integer merchantId, String type, String name) throws BusinessCheckException;
 
+    /**
+     * 根据配置名称获取配置信息
+     *
+     * @param  merchantId 商户ID
+     * @param storeId 店铺ID
+     * @param  type 类型
+     * @param  name 配置名称
+     * @throws BusinessCheckException
+     */
+    MtSetting querySettingByName(Integer merchantId, Integer storeId, String type, String name) throws BusinessCheckException;
+
     /**
      * 获取系统上传文件的根路径
      *

+ 2 - 2
fuint-application/src/main/java/com/fuint/common/service/impl/CouponServiceImpl.java

@@ -868,8 +868,8 @@ public class CouponServiceImpl extends ServiceImpl<MtCouponMapper, MtCoupon> imp
         }
 
         // 判断适用会员等级
-        if (userId != null && userId > 0 && StringUtil.isNotEmpty(couponInfo.getGradeIds())) {
-            MtUser mtUser = memberService.queryMemberById(userId);
+        if (userCoupon.getUserId() != null && userCoupon.getUserId() > 0 && StringUtil.isNotEmpty(couponInfo.getGradeIds())) {
+            MtUser mtUser = memberService.queryMemberById(userCoupon.getUserId());
             if (StringUtil.isEmpty(mtUser.getGradeId())) {
                 MtUserGrade defaultGrade = userGradeService.getInitUserGrade(mtUser.getMerchantId());
                 if (defaultGrade != null) {

+ 1 - 1
fuint-application/src/main/java/com/fuint/common/service/impl/OrderServiceImpl.java

@@ -691,7 +691,7 @@ public class OrderServiceImpl extends ServiceImpl<MtOrderMapper, MtOrder> implem
             }
         }
 
-        MtSetting config = settingService.querySettingByName(merchantId, SettingTypeEnum.ORDER.getKey(), OrderSettingEnum.IS_CLOSE.getKey());
+        MtSetting config = settingService.querySettingByName(merchantId, storeId, SettingTypeEnum.ORDER.getKey(), OrderSettingEnum.IS_CLOSE.getKey());
         if (config != null && config.getValue().equals(YesOrNoEnum.TRUE.getKey())) {
             throw new BusinessCheckException("系统已关闭交易功能,请稍后再试!");
         }

+ 16 - 1
fuint-application/src/main/java/com/fuint/common/service/impl/SettingServiceImpl.java

@@ -123,7 +123,22 @@ public class SettingServiceImpl extends ServiceImpl<MtSettingMapper, MtSetting>
      */
     @Override
     public MtSetting querySettingByName(Integer merchantId, String type, String name) {
-        return mtSettingMapper.querySettingByName(merchantId, type, name);
+        return mtSettingMapper.querySettingByName(merchantId, 0, type, name);
+    }
+
+    /**
+     * 根据ID获取配置信息
+     *
+     * @param  merchantId 商户ID
+     * @param  storeId 店铺ID
+     * @param  type 类型
+     * @param  name 配置名称
+     * @throws BusinessCheckException
+     * @return
+     */
+    @Override
+    public MtSetting querySettingByName(Integer merchantId, Integer storeId, String type, String name) {
+        return mtSettingMapper.querySettingByName(merchantId, storeId, type, name);
     }
 
     /**

+ 1 - 1
fuint-repository/src/main/java/com/fuint/repository/mapper/MtSettingMapper.java

@@ -15,6 +15,6 @@ public interface MtSettingMapper extends BaseMapper<MtSetting> {
 
     List<MtSetting> querySettingByType(@Param("merchantId") Integer merchantId, @Param("type") String type);
 
-    MtSetting querySettingByName(@Param("merchantId") Integer merchantId, @Param("type") String type, @Param("name") String name);
+    MtSetting querySettingByName(@Param("merchantId") Integer merchantId, @Param("storeId") Integer storeId, @Param("type") String type, @Param("name") String name);
 
 }

+ 5 - 1
fuint-repository/src/main/resources/mapper/MtSettingMapper.xml

@@ -6,6 +6,10 @@
     </select>
 
     <select id="querySettingByName" resultType="com.fuint.repository.model.MtSetting">
-        select * from mt_setting t where t.NAME = #{name} and t.TYPE = #{type} and t.MERCHANT_ID = #{merchantId} and t.status='A' limit 1
+        select * from mt_setting t where t.NAME = #{name} AND t.TYPE = #{type} AND t.MERCHANT_ID = #{merchantId}
+        <if test="storeId != null and storeId > 0">
+          AND (t.STORE_ID = #{storeId} OR t.STORE_ID = 0)
+        </if>
+          AND t.STATUS='A' LIMIT 1
     </select>
 </mapper>