فهرست منبع

修改自助挂失同步修改发卡记录

baiyun 1 سال پیش
والد
کامیت
7f398328ae

+ 3 - 0
ruoyi-api/ruoyi-api-hotel/src/main/java/org/dromara/hotel/api/service/RemoteCardDataService.java

@@ -23,5 +23,8 @@ public interface RemoteCardDataService {
     R<ErrorInfo> insertCardDataByBo(RemoteCardDataBo remoteBo);
 
     RemoteCardDataVo getCardDataByBo(RemoteCardDataBo remoteBo);
+
+    /** 挂失卡片,同步修改发卡记录*/
+    Boolean lockCard(String factoryId);
 }
 

+ 6 - 0
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/cardCenter/service/impl/PtCardServiceImpl.java

@@ -3,6 +3,7 @@ package org.dromara.backstage.cardCenter.service.impl;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.convert.Convert;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.HexUtil;
 import cn.hutool.core.util.ObjUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -10,6 +11,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.RequiredArgsConstructor;
+import org.apache.dubbo.config.annotation.DubboReference;
 import org.dromara.backstage.basics.domain.vo.PtCardtypeVo;
 import org.dromara.backstage.basics.service.IPtCardtypeService;
 import org.dromara.backstage.basics.service.IPtParameterService;
@@ -32,6 +34,7 @@ import org.dromara.common.message.kafka.enums.EventSenderEnum;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.common.tenant.helper.TenantHelper;
+import org.dromara.hotel.api.service.RemoteCardDataService;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -51,6 +54,8 @@ public class PtCardServiceImpl implements IPtCardService {
     private final IPtParameterService parameterService;
     private final IPtCardtypeService cardTypeService;
     private final PushKafkaData kafkaNormalProducer;
+    @DubboReference
+    private final RemoteCardDataService remoteCardDataService;
 
     /**
      * 查询账户卡片
@@ -430,6 +435,7 @@ public class PtCardServiceImpl implements IPtCardService {
         lpw.eq(bo.getCardNo() != null, PtCard::getCardNo, bo.getCardNo());
         if (baseMapper.update(null, lpw) > 0) {
             List<PtCardVo> list = this.queryList(bo);
+            remoteCardDataService.lockCard(HexUtil.toHex(bo.getFactoryId()));
             if (CollectionUtil.isNotEmpty(list)) {
                 return list.get(0);
             }

+ 5 - 0
ruoyi-modules/ruoyi-hotel/src/main/java/org/dromara/hotel/dubbo/RemoteCardDataServiceImpl.java

@@ -62,4 +62,9 @@ public class RemoteCardDataServiceImpl implements RemoteCardDataService {
             return null;
         }
     }
+
+    @Override
+    public Boolean lockCard(String factoryId) {
+        return cardHisService.lockCard(factoryId);
+    }
 }

+ 3 - 0
ruoyi-modules/ruoyi-hotel/src/main/java/org/dromara/hotel/service/IKfProvideCardHisService.java

@@ -70,4 +70,7 @@ public interface IKfProvideCardHisService {
     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
 
     KfProvideCardHisVo queryByBo(KfProvideCardHisBo bo);
+
+    /** 挂失卡片,同步修改发卡记录的备注*/
+    Boolean lockCard(String factoryId);
 }

+ 12 - 0
ruoyi-modules/ruoyi-hotel/src/main/java/org/dromara/hotel/service/impl/KfProvideCardHisServiceImpl.java

@@ -182,4 +182,16 @@ public class KfProvideCardHisServiceImpl implements IKfProvideCardHisService {
         }
         return null;
     }
+
+    @Override
+    public Boolean lockCard(String factoryId) {
+        //根据物理卡号修改卡片状态
+        int count = baseMapper.update(null,
+            new LambdaUpdateWrapper<KfProvideCardHis>()
+                .set(KfProvideCardHis::getRemark, "挂失卡")
+                .set(KfProvideCardHis::getUpdateTime, new Date())
+                .likeRight(KfProvideCardHis::getFactoryId , factoryId)
+        );
+        return count > 0;
+    }
 }