Bläddra i källkod

Merge remote-tracking branch 'origin/master'

qrs 2 månader sedan
förälder
incheckning
6ae24f96dc

+ 4 - 0
alien-entity/src/main/java/shop/alien/entity/store/StoreAppVersion.java

@@ -37,6 +37,10 @@ public class StoreAppVersion extends Model<StoreAppVersion> {
     @TableField("version_num")
     private Integer versionNum;
 
+    @ApiModelProperty(value = "版本信息")
+    @TableField("version_info")
+    private String versionInfo;
+
     @ApiModelProperty(value = "app类型: 1:用户端, 2:商家端")
     @TableField("app_type")
     private Integer appType;

+ 20 - 4
alien-store/src/main/java/shop/alien/store/controller/StoreAppVersionController.java

@@ -1,12 +1,10 @@
 package shop.alien.store.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.annotations.*;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.CrossOrigin;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import shop.alien.entity.result.R;
 import shop.alien.entity.store.StoreAppVersion;
 import shop.alien.store.service.StoreAppVersionService;
@@ -36,4 +34,22 @@ public class StoreAppVersionController {
         return R.data(storeAppVersionService.getLatestVersion(appType));
     }
 
+    @ApiOperation("保存或修改版本信息")
+    @ApiOperationSupport(order = 2)
+    @PostMapping("/saveVersionInfo")
+    public R<StoreAppVersion> saveVersionInfo(@RequestBody StoreAppVersion storeAppVersion) {
+        return storeAppVersionService.saveVersionInfo(storeAppVersion) ? R.success("成功") : R.fail("失败");
+    }
+
+    @ApiOperation("列表分页查询")
+    @ApiOperationSupport(order = 3)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "appType", value = "app类型: 1:用户端, 2:商家端", dataType = "Integer", paramType = "query"),
+            @ApiImplicitParam(name = "pageSize", value = "条数", dataType = "Integer", paramType = "query", required = true, defaultValue = "10"),
+            @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "Integer", paramType = "query", required = true, defaultValue = "1")
+    })
+    @GetMapping("/getList")
+    public R<IPage<StoreAppVersion>> getList(Integer appType, Integer pageSize, Integer pageNum) {
+        return R.data(storeAppVersionService.getList(appType, pageSize, pageNum));
+    }
 }

+ 19 - 0
alien-store/src/main/java/shop/alien/store/service/StoreAppVersionService.java

@@ -1,5 +1,6 @@
 package shop.alien.store.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import shop.alien.entity.store.StoreAppVersion;
 
@@ -18,4 +19,22 @@ public interface StoreAppVersionService extends IService<StoreAppVersion> {
      * @return StoreAppVersion
      */
     StoreAppVersion getLatestVersion(Integer appType);
+
+    /**
+     * 保存或修改版本信息
+     *
+     * @param storeAppVersion App版本类
+     * @return int
+     */
+    boolean saveVersionInfo(StoreAppVersion storeAppVersion);
+
+    /**
+     * 列表分页查询
+     *
+     * @param appType  app类型: 1:用户端, 2:商家端
+     * @param pageSize 条数
+     * @param pageNum  页数
+     * @return list
+     */
+    IPage<StoreAppVersion> getList(Integer appType, Integer pageSize, Integer pageNum);
 }

+ 38 - 3
alien-store/src/main/java/shop/alien/store/service/impl/StoreAppVersionServiceImpl.java

@@ -1,8 +1,11 @@
 package shop.alien.store.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import shop.alien.entity.store.StoreAppVersion;
 import shop.alien.mapper.StoreAppVersionMapper;
 import shop.alien.store.service.StoreAppVersionService;
@@ -25,9 +28,41 @@ public class StoreAppVersionServiceImpl extends ServiceImpl<StoreAppVersionMappe
     @Override
     public StoreAppVersion getLatestVersion(Integer appType) {
         LambdaQueryWrapper<StoreAppVersion> lambdaQueryWrapper = new LambdaQueryWrapper<>();
-        lambdaQueryWrapper.eq(StoreAppVersion::getAppType, appType)
-                .orderByDesc(StoreAppVersion::getVersionNum)
-                .last("limit 1");
+        lambdaQueryWrapper.eq(StoreAppVersion::getAppType, appType).orderByDesc(StoreAppVersion::getVersionNum).last("limit 1");
         return this.getOne(lambdaQueryWrapper);
     }
+
+    /**
+     * 保存或修改版本信息
+     *
+     * @param storeAppVersion App版本类
+     * @return int
+     */
+    @Transactional
+    @Override
+    public boolean saveVersionInfo(StoreAppVersion storeAppVersion) {
+        LambdaQueryWrapper<StoreAppVersion> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(StoreAppVersion::getAppType, storeAppVersion.getAppType()).orderByDesc(StoreAppVersion::getVersionNum).last("limit 1");
+        StoreAppVersion one = this.getOne(lambdaQueryWrapper);
+        storeAppVersion.setVersionNum(one.getVersionNum() + 1);
+        return this.saveOrUpdate(storeAppVersion);
+    }
+
+    /**
+     * 列表分页查询
+     *
+     * @param appType  app类型: 1:用户端, 2:商家端
+     * @param pageSize 条数
+     * @param pageNum  页数
+     * @return list
+     */
+    @Override
+    public IPage<StoreAppVersion> getList(Integer appType, Integer pageSize, Integer pageNum) {
+        IPage<StoreAppVersion> page = new Page<>(pageNum, pageSize);
+        LambdaQueryWrapper<StoreAppVersion> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(null != appType, StoreAppVersion::getAppType, appType);
+        lambdaQueryWrapper.orderByDesc(StoreAppVersion::getCreatedTime);
+        return this.page(page, lambdaQueryWrapper);
+    }
+
 }