Browse Source

新增禁用、恢复小程序接口

JensionDzero 1 year ago
parent
commit
3a8c6ddd48

+ 10 - 0
ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java

@@ -55,4 +55,14 @@ public enum BusinessType {
      * 清空数据
      */
     CLEAN,
+
+    /**
+     * 禁用
+     */
+    STOP,
+
+    /**
+     * 恢复
+     */
+    RECOVER
 }

+ 29 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/controller/AppController.java

@@ -3,10 +3,12 @@ package com.ruoyi.demo.controller;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageInfo;
+import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.validate.AddGroup;
 import com.ruoyi.common.core.validate.EditGroup;
 import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.demo.entity.App;
 import com.ruoyi.demo.entity.Commercial;
 import com.ruoyi.demo.entity.vo.AppVo;
@@ -84,6 +86,7 @@ public class AppController {
      */
     @SaCheckPermission("szzs:app:update")
     @PutMapping("/updateApp")
+    @Log(title = "小程序", businessType = BusinessType.UPDATE)
     public R updateApp(@RequestBody @Validated(value={EditGroup.class})AppVo appVo){
         R r = appService.updateApp(appVo);
         return r;
@@ -122,4 +125,30 @@ public class AppController {
         List<Commercial> commercialList = appService.getCommercialList();
         return R.ok(commercialList);
     }
+
+    /**
+     * 禁用小程序
+     * @param appKey
+     * @return
+     */
+    @SaCheckPermission("szzs:app:update")
+    @PutMapping("/stopApp/{appkey}")
+    @Log(title = "小程序", businessType = BusinessType.STOP)
+    public R stopApp(@PathVariable("appkey") String appKey){
+        R r = appService.stopApp(appKey);
+        return r;
+    }
+
+    /**
+     * 恢复小程序
+     * @param appKey
+     * @return
+     */
+    @SaCheckPermission("szzs:app:update")
+    @PutMapping("/recoverApp/{appkey}")
+    @Log(title = "小程序", businessType = BusinessType.RECOVER)
+    public R recoverApp(@PathVariable("appkey") String appKey){
+        R r = appService.recoverApp(appKey);
+        return r;
+    }
 }

+ 4 - 0
ruoyi-demo/src/main/java/com/ruoyi/demo/service/AppService.java

@@ -25,4 +25,8 @@ public interface AppService {
     Page<App> getAppList(AppVo appVo);
 
     List<Commercial> getCommercialList();
+
+    R stopApp(String appKey);
+
+    R recoverApp(String appKey);
 }

+ 48 - 1
ruoyi-demo/src/main/java/com/ruoyi/demo/service/impl/AppServiceImpl.java

@@ -6,8 +6,10 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.demo.entity.*;
 import com.ruoyi.demo.entity.bo.CallBackBean;
 import com.ruoyi.demo.entity.vo.AppVo;
@@ -117,7 +119,7 @@ public class AppServiceImpl implements AppService {
      */
     @Override
     public R updateApp(AppVo appVo) {
-        //判断是否存在该商户
+        //判断是否存在该app
         QueryWrapper<App> queryWrapper = new QueryWrapper<>();
         queryWrapper.select("app_name","state");
         queryWrapper.eq("appkey",appVo.getAppkey());
@@ -213,4 +215,49 @@ public class AppServiceImpl implements AppService {
         List<Commercial> commercials = commercialMapper.selectList(queryWrapper);
         return commercials;
     }
+
+    @Override
+    public R stopApp(String appKey) {
+        //判断是否存在该app
+        QueryWrapper<App> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("app_name","state");
+        queryWrapper.eq("appkey",appKey);
+        App app = appMapper.selectOne(queryWrapper);
+        if (app != null){
+            //1.判断是否关闭小程序权限
+            if((1 != app.getState())){
+                //禁用,并下架所有的广告
+                UpdateWrapper<Plan> planUpdateWrapper = new UpdateWrapper<>();
+                planUpdateWrapper.eq("appkey",appKey);
+                planUpdateWrapper.set("on_state",0); //关闭
+                planMapper.update(null,planUpdateWrapper);
+            }
+
+            //2.修改信息
+            UpdateWrapper<App> updateWrapper = new UpdateWrapper<>();
+            updateWrapper.eq("appkey",appKey)
+                .set("state",0);
+            appMapper.update(null,updateWrapper);
+            return R.ok("修改成功");
+        }else
+            return R.fail("不存在该小程序");
+    }
+
+    @Override
+    public R recoverApp(String appKey) {
+        //判断是否存在该app
+        QueryWrapper<App> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("app_name","state");
+        queryWrapper.eq("appkey",appKey);
+        App app = appMapper.selectOne(queryWrapper);
+        if (app != null){
+            //2.修改信息
+            UpdateWrapper<App> updateWrapper = new UpdateWrapper<>();
+            updateWrapper.eq("appkey",appKey)
+                .set("state",1); //开启
+            appMapper.update(null,updateWrapper);
+            return R.ok("修改成功");
+        }else
+            return R.fail("不存在该小程序");
+    }
 }