Ver código fonte

1.app版本接口查询支持编号、版本号、描述搜索
2.添加开放接口获取最近的版本

yuanliang 1 ano atrás
pai
commit
269eab36ec

+ 2 - 1
mec-application/src/main/java/com/ym/mec/web/controller/AppVersionInfoController.java

@@ -3,6 +3,7 @@ package com.ym.mec.web.controller;
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.biz.dal.entity.AppVersionInfo;
 import com.ym.mec.biz.dal.entity.AppVersionInfoBak;
+import com.ym.mec.biz.dal.wrapper.AppVersionInfoWrapper;
 import com.ym.mec.biz.service.AppVersionInfoService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.page.QueryInfo;
@@ -30,7 +31,7 @@ public class AppVersionInfoController extends BaseController {
 	@ApiOperation("分页查询")
 	@GetMapping(value = "/list")
 	@PreAuthorize("@pcs.hasPermissions('appVersionInfo/list')")
-	public Object getList(QueryInfo queryInfo) {
+	public Object getList(AppVersionInfoWrapper.AppVersionInfoQuery queryInfo) {
 		return succeed(appVersionInfoService.queryPage(queryInfo));
 	}
 

+ 69 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/AppVersionInfoWrapper.java

@@ -0,0 +1,69 @@
+package com.ym.mec.biz.dal.wrapper;
+
+import com.alibaba.fastjson.JSON;
+import com.microsvc.toolkit.common.response.paging.QueryInfo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.util.Optional;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+
+/**
+ * app版本信息管理
+ * 2023-11-03 13:55:54
+ */
+@ApiModel(value = "AppVersionInfoWrapper对象", description = "app版本信息管理查询对象")
+public class AppVersionInfoWrapper {
+
+    @Data
+	@Builder
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ApiModel(" AppVersionInfoQuery-app版本信息管理")
+    public static class AppVersionInfoQuery implements QueryInfo {
+    
+    	@ApiModelProperty("当前页")
+        private Integer page;
+        
+        @ApiModelProperty("分页行数")
+        private Integer rows;
+        
+        @ApiModelProperty("关键字匹配")
+		private String search;
+
+        @ApiModelProperty("平台")
+        private String platform;
+
+        @ApiModelProperty("状态")
+        private String status;
+
+        public String getKeyword() {
+            return Optional.ofNullable(search).filter(StringUtils::isNotBlank).orElse(null);
+        }
+        
+        public String jsonString() {
+            return JSON.toJSONString(this);
+        }
+
+        public static AppVersionInfoQuery from(String json) {
+            return JSON.parseObject(json, AppVersionInfoQuery.class);
+        }
+    }  
+
+	@ApiModel(" AppVersionInfo-app版本信息管理")
+    public static class AppVersionInfo {
+        
+        public String jsonString() {
+            return JSON.toJSONString(this);
+        }
+
+        public static AppVersionInfo from(String json) {
+            return JSON.parseObject(json, AppVersionInfo.class);
+        }
+	}
+
+}

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/AppVersionInfoService.java

@@ -3,6 +3,8 @@ package com.ym.mec.biz.service;
 import java.util.List;
 
 import com.ym.mec.biz.dal.entity.AppVersionInfo;
+import com.ym.mec.biz.dal.wrapper.AppVersionInfoWrapper;
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 
 public interface AppVersionInfoService extends BaseService<Integer, AppVersionInfo> {
@@ -14,4 +16,6 @@ public interface AppVersionInfoService extends BaseService<Integer, AppVersionIn
 	void updateVersion(AppVersionInfo appVersionInfo);
 
     List<AppVersionInfo> queryLatestByPlatform(String platform, String appStatus);
+
+	PageInfo<AppVersionInfo> queryPage(AppVersionInfoWrapper.AppVersionInfoQuery queryInfo);
 }

+ 23 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/AppVersionInfoServiceImpl.java

@@ -1,10 +1,17 @@
 package com.ym.mec.biz.service.impl;
 
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
+import com.ym.mec.biz.dal.wrapper.AppVersionInfoWrapper;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.collection.MapUtil;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.ss.formula.functions.T;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -62,4 +69,20 @@ public class AppVersionInfoServiceImpl extends BaseServiceImpl<Integer, AppVersi
 
 	}
 
+    @Override
+	public PageInfo<AppVersionInfo> queryPage(AppVersionInfoWrapper.AppVersionInfoQuery queryInfo) {
+		Map<String, Object> params = new HashMap<>();
+		MapUtil.populateMap(params, queryInfo);
+		PageInfo<AppVersionInfo> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+		List<AppVersionInfo> dataList = new ArrayList<>();
+		int count = this.findCount(params);
+		if (count > 0) {
+			pageInfo.setTotal(count);
+			params.put("offset", pageInfo.getOffset());
+			dataList = appVersionInfoDao.queryPage(params);
+		}
+		pageInfo.setRows(dataList);
+		return pageInfo;
+	}
+
 }

+ 27 - 6
mec-biz/src/main/resources/config/mybatis/AppVersionInfoMapper.xml

@@ -91,12 +91,21 @@
 	<select id="queryPage" resultMap="AppVersionInfo" parameterType="map">
 		SELECT * FROM app_version_info
 		<where>
-			<if test="search != null and search != ''">
-				and (id_ like concat('%',#{search},'%') or
-				version_ like concat('%',#{search},'%') or
-				description_ like concat('%',#{search},'%')
+			<if test="keyword != null and keyword.trim() != ''">
+				and (id_ like concat('%',#{keyword},'%') or
+				version_ like concat('%',#{keyword},'%') or
+				description_ like concat('%',#{keyword},'%')
 				)
 			</if>
+			<if test="version != null and version != ''">
+				and version_ = #{version}
+			</if>
+			<if test="platform != null and platform != ''">
+				and platform_ = #{platform}
+			</if>
+			<if test="status != null and status != ''">
+				and status_ = #{status}
+			</if>
 		</where>
 		order by version_ desc ,status_='newest' desc , id_ desc
 		<include refid="global.limit" />
@@ -106,8 +115,20 @@
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM app_version_info
 		<where>
-			<if test="search != null and search != ''">
-				platform_ LIKE CONCAT('%',#{search},'%')
+			<if test="keyword != null and keyword.trim() != ''">
+				and (id_ like concat('%',#{keyword},'%') or
+				version_ like concat('%',#{keyword},'%') or
+				description_ like concat('%',#{keyword},'%')
+				)
+			</if>
+			<if test="version != null and version != ''">
+				and version_ = #{version}
+			</if>
+			<if test="platform != null and platform != ''">
+				and platform_ = #{platform}
+			</if>
+			<if test="status != null and status != ''">
+				and status_ = #{status}
 			</if>
 		</where>
 	</select>