Просмотр исходного кода

feature: 卡务中心->卡务操作 完成了挂失与解挂的后台处理

autumnal_wind@yeah.net 1 год назад
Родитель
Сommit
22a6a25bd7

+ 22 - 0
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/cardCenter/controller/PtCardController.java

@@ -103,4 +103,26 @@ public class PtCardController extends BaseController {
                           @PathVariable Long[] cardIds) {
                           @PathVariable Long[] cardIds) {
         return toAjax(ptCardService.deleteWithValidByIds(List.of(cardIds), true));
         return toAjax(ptCardService.deleteWithValidByIds(List.of(cardIds), true));
     }
     }
+
+    /**
+     * 挂失账户卡片
+     */
+    @SaCheckPermission("cardOperation:ptCard:edit")
+    @Log(title = "账户卡片", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping("/lockCard/{cardId}")
+    public R<Void> lockPtCard( @PathVariable Long cardId) {
+        return toAjax(ptCardService.lockCard(cardId));
+    }
+
+    /**
+     * 解挂账户卡片
+     */
+    @SaCheckPermission("cardOperation:ptCard:edit")
+    @Log(title = "账户卡片", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping("/unlockCard/{cardId}")
+    public R<Void> unlockPtCard( @PathVariable Long cardId) {
+        return toAjax(ptCardService.unlockCard(cardId));
+    }
 }
 }

+ 17 - 1
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/cardCenter/service/IPtCardService.java

@@ -89,10 +89,26 @@ public interface IPtCardService {
     int resetCardType(Long[] userIds, String cardType);
     int resetCardType(Long[] userIds, String cardType);
 
 
     /**
     /**
-     * 根据Id获取账户发信息
+     * 根据Id获取账户发信息
      *
      *
      * @param userIds     id串,英文逗号隔开
      * @param userIds     id串,英文逗号隔开
      * @return 发卡信息串,英文逗号隔开
      * @return 发卡信息串,英文逗号隔开
      */
      */
     String selectAccountCardByIds(String userIds);
     String selectAccountCardByIds(String userIds);
+
+    /**
+     * 根据Id挂失卡片
+     *
+     * @param cardId     卡片Id
+     * @return 挂失是否成功
+     */
+    boolean lockCard(Long cardId);
+
+    /**
+     * 根据Id解挂卡片
+     *
+     * @param cardId     卡片Id
+     * @return 解挂是否成功
+     */
+    boolean unlockCard(Long cardId);
 }
 }

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

@@ -45,7 +45,7 @@ public class PtCardServiceImpl implements IPtCardService {
      * @return 账户卡片
      * @return 账户卡片
      */
      */
     @Override
     @Override
-    public PtCardVo queryById(Long cardId){
+    public PtCardVo queryById(Long cardId) {
         return baseMapper.selectVoById(cardId);
         return baseMapper.selectVoById(cardId);
     }
     }
 
 
@@ -129,7 +129,7 @@ public class PtCardServiceImpl implements IPtCardService {
     /**
     /**
      * 保存前的数据校验
      * 保存前的数据校验
      */
      */
-    private void validEntityBeforeSave(PtCard entity){
+    private void validEntityBeforeSave(PtCard entity) {
         //TODO 做一些数据校验,如唯一约束
         //TODO 做一些数据校验,如唯一约束
     }
     }
 
 
@@ -142,7 +142,7 @@ public class PtCardServiceImpl implements IPtCardService {
      */
      */
     @Override
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
+        if (isValid) {
             //TODO 做一些业务上的校验,判断是否需要校验
             //TODO 做一些业务上的校验,判断是否需要校验
         }
         }
         return baseMapper.deleteByIds(ids) > 0;
         return baseMapper.deleteByIds(ids) > 0;
@@ -168,6 +168,7 @@ public class PtCardServiceImpl implements IPtCardService {
         }
         }
         return userIds.length;
         return userIds.length;
     }
     }
+
     /*
     /*
      * 根据Id更新账户的卡类
      * 根据Id更新账户的卡类
      *
      *
@@ -192,7 +193,7 @@ public class PtCardServiceImpl implements IPtCardService {
     /**
     /**
      * 根据Id获取账户发卡信息
      * 根据Id获取账户发卡信息
      *
      *
-     * @param userIds     id串,英文逗号隔开
+     * @param userIds id串,英文逗号隔开
      * @return 发卡信息串,英文逗号隔开
      * @return 发卡信息串,英文逗号隔开
      */
      */
     @Override
     @Override
@@ -204,13 +205,43 @@ public class PtCardServiceImpl implements IPtCardService {
             bo.setUserId(id);
             bo.setUserId(id);
 
 
             List<PtCardVo> listVo = SpringUtils.getAopProxy(this).queryList(bo);
             List<PtCardVo> listVo = SpringUtils.getAopProxy(this).queryList(bo);
-            if(listVo.isEmpty()){
+            if (listVo.isEmpty()) {
                 list.add("未发卡");
                 list.add("未发卡");
             } else {
             } else {
-                 String cardInfo = listVo.stream().anyMatch(p -> p.getFactoryId() == 0) ? "虚拟卡" : "实体卡";
+                String cardInfo = listVo.stream().anyMatch(p -> p.getFactoryId() == 0) ? "虚拟卡" : "实体卡";
                 list.add(cardInfo);
                 list.add(cardInfo);
             }
             }
         }
         }
         return String.join(StringUtils.SEPARATOR, list);
         return String.join(StringUtils.SEPARATOR, list);
     }
     }
+
+    /**
+     * 根据Id挂失卡片
+     *
+     * @param cardId 卡片Id
+     * @return 挂失是否成功
+     */
+    @Override
+    public boolean lockCard(Long cardId) {
+        return baseMapper.update(null, new LambdaUpdateWrapper<PtCard>()
+            .set(PtCard::getStatus, '2')
+            .set(PtCard::getChangeTime, DateUtil.date())
+            .eq(PtCard::getStatus, '1')
+            .eq(PtCard::getCardId, cardId)) > 0;
+    }
+
+    /**
+     * 根据Id解挂卡片
+     *
+     * @param cardId 卡片Id
+     * @return 解挂是否成功
+     */
+    @Override
+    public boolean unlockCard(Long cardId) {
+        return baseMapper.update(null, new LambdaUpdateWrapper<PtCard>()
+            .set(PtCard::getStatus, '1')
+            .set(PtCard::getChangeTime, DateUtil.date())
+            .eq(PtCard::getStatus, '2')
+            .eq(PtCard::getCardId, cardId)) > 0;
+    }
 }
 }