热更新包维护接口
This commit is contained in:
parent
a4aa10f1bc
commit
39e52b54fd
@ -62,12 +62,11 @@ public interface AdminAppMarketUpdateService {
|
|||||||
CommonResult enableOrDisableInAdmin(Long id, Integer status);
|
CommonResult enableOrDisableInAdmin(Long id, Integer status);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取一条记录
|
* 获取最后一条记录
|
||||||
*
|
*
|
||||||
* @param marketId
|
* @param marketId
|
||||||
* @param packageName
|
* @param packageName
|
||||||
* @param versionKey
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
AdminAppMarketUpdate getAppMarketUpdate(Integer marketId, String packageName, Integer versionKey);
|
AdminAppMarketUpdate getLastAppMarketUpdate(Integer marketId, String packageName);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -22,12 +22,16 @@ import com.suisung.mall.common.modules.admin.AdminAppMarketUpdate;
|
|||||||
import com.suisung.mall.common.pojo.dto.FileInfoDTO;
|
import com.suisung.mall.common.pojo.dto.FileInfoDTO;
|
||||||
import com.suisung.mall.common.utils.StringUtils;
|
import com.suisung.mall.common.utils.StringUtils;
|
||||||
import com.suisung.mall.core.web.service.impl.BaseServiceImpl;
|
import com.suisung.mall.core.web.service.impl.BaseServiceImpl;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
|
import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMarketUpdateMapper, AdminAppMarketUpdate> implements AdminAppMarketUpdateService {
|
public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMarketUpdateMapper, AdminAppMarketUpdate> implements AdminAppMarketUpdateService {
|
||||||
|
@Value("${spring.profiles.active}")
|
||||||
|
private String profile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取某个市场的最新 APP 版本
|
* 获取某个市场的最新 APP 版本
|
||||||
*
|
*
|
||||||
@ -42,18 +46,32 @@ public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMar
|
|||||||
return CommonResult.failed("缺少必要参数");
|
return CommonResult.failed("缺少必要参数");
|
||||||
}
|
}
|
||||||
|
|
||||||
AdminAppMarketUpdate adminAppMarketUpdate = getAppMarketUpdate(marketId, packageName, currVersionKey);
|
AdminAppMarketUpdate adminAppMarketUpdate = getLastAppMarketUpdate(marketId, packageName);
|
||||||
if (adminAppMarketUpdate == null) {
|
if (adminAppMarketUpdate == null) {
|
||||||
return CommonResult.failed("当前已是最新版本");
|
return CommonResult.success(null, "当前已是最新版本");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ObjectUtil.isEmpty(currVersionKey) && adminAppMarketUpdate.getVersion_key() <= currVersionKey) {
|
if (ObjectUtil.isNotEmpty(currVersionKey) && adminAppMarketUpdate.getVersion_key() <= currVersionKey) {
|
||||||
return CommonResult.failed("当前已是最新版本");
|
return CommonResult.success(null, "当前已是最新版本");
|
||||||
}
|
}
|
||||||
|
|
||||||
// 更新包后缀处理
|
// 更新包后缀处理
|
||||||
if (StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_url()) && StrUtil.isBlank(adminAppMarketUpdate.getFile_ext())) {
|
if (StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_apk_url()) && StrUtil.isBlank(adminAppMarketUpdate.getFile_ext())) {
|
||||||
adminAppMarketUpdate.setFile_ext(StringUtils.getFileExt(adminAppMarketUpdate.getDownload_url()));
|
adminAppMarketUpdate.setFile_ext(StringUtils.getFileExt(adminAppMarketUpdate.getDownload_apk_url()));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 解决跨域问题,更换包的域名:https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/ 成 https://static.gpxscs.cn/
|
||||||
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_apk_url())) {
|
||||||
|
String downloadUrl = adminAppMarketUpdate.getDownload_apk_url();
|
||||||
|
downloadUrl = downloadUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_apk_url(downloadUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 解决跨域问题,更换包的域名:https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/ 成 https://static.gpxscs.cn/
|
||||||
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_wgt_url())) {
|
||||||
|
String downloadWgtUrl = adminAppMarketUpdate.getDownload_wgt_url();
|
||||||
|
downloadWgtUrl = downloadWgtUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_wgt_url(downloadWgtUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
return CommonResult.success(adminAppMarketUpdate);
|
return CommonResult.success(adminAppMarketUpdate);
|
||||||
@ -112,16 +130,29 @@ public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMar
|
|||||||
|
|
||||||
if (ObjectUtil.isEmpty(adminAppMarketUpdate.getMarket_id()) || ObjectUtil.isEmpty(adminAppMarketUpdate.getPackage_name())
|
if (ObjectUtil.isEmpty(adminAppMarketUpdate.getMarket_id()) || ObjectUtil.isEmpty(adminAppMarketUpdate.getPackage_name())
|
||||||
|| ObjectUtil.isEmpty(adminAppMarketUpdate.getVersion_key()) || ObjectUtil.isEmpty(adminAppMarketUpdate.getVersion_name())
|
|| ObjectUtil.isEmpty(adminAppMarketUpdate.getVersion_key()) || ObjectUtil.isEmpty(adminAppMarketUpdate.getVersion_name())
|
||||||
|| ObjectUtil.isEmpty(adminAppMarketUpdate.getDownload_url())) {
|
|| ObjectUtil.isEmpty(adminAppMarketUpdate.getDownload_apk_url())) {
|
||||||
return CommonResult.failed("缺少关键参数");
|
return CommonResult.failed("缺少关键参数");
|
||||||
}
|
}
|
||||||
|
|
||||||
AdminAppMarketUpdate record = getAppMarketUpdate(adminAppMarketUpdate.getMarket_id(), adminAppMarketUpdate.getPackage_name(), adminAppMarketUpdate.getVersion_key());
|
AdminAppMarketUpdate record = getLastAppMarketUpdate(adminAppMarketUpdate.getMarket_id(), adminAppMarketUpdate.getPackage_name());
|
||||||
if (record != null) {
|
if (record != null && ObjectUtil.isNotEmpty(adminAppMarketUpdate.getVersion_key()) && record.getVersion_key().equals(adminAppMarketUpdate.getVersion_key())) {
|
||||||
return CommonResult.failed("当前版本升级包已存在");
|
return CommonResult.failed("当前版本升级包已存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
FileInfoDTO fileInfoDTO = StringUtils.getFileInfoFromUrl(adminAppMarketUpdate.getDownload_url());
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_apk_url())) {
|
||||||
|
String downloadUrl = adminAppMarketUpdate.getDownload_apk_url();
|
||||||
|
downloadUrl = downloadUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_apk_url(downloadUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 解决跨域问题,更换包的域名:https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/ 成 https://static.gpxscs.cn/
|
||||||
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_wgt_url())) {
|
||||||
|
String downloadWgtUrl = adminAppMarketUpdate.getDownload_wgt_url();
|
||||||
|
downloadWgtUrl = downloadWgtUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_wgt_url(downloadWgtUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
FileInfoDTO fileInfoDTO = StringUtils.getFileInfoFromUrl(adminAppMarketUpdate.getDownload_apk_url());
|
||||||
if (fileInfoDTO != null) {
|
if (fileInfoDTO != null) {
|
||||||
adminAppMarketUpdate.setPackage_size(fileInfoDTO.getFileSize());
|
adminAppMarketUpdate.setPackage_size(fileInfoDTO.getFileSize());
|
||||||
adminAppMarketUpdate.setFile_ext(fileInfoDTO.getFileExtension());
|
adminAppMarketUpdate.setFile_ext(fileInfoDTO.getFileExtension());
|
||||||
@ -161,7 +192,20 @@ public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMar
|
|||||||
return CommonResult.failed("参数格式有误");
|
return CommonResult.failed("参数格式有误");
|
||||||
}
|
}
|
||||||
|
|
||||||
FileInfoDTO fileInfoDTO = StringUtils.getFileInfoFromUrl(adminAppMarketUpdate.getDownload_url());
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_apk_url())) {
|
||||||
|
String downloadUrl = adminAppMarketUpdate.getDownload_apk_url();
|
||||||
|
downloadUrl = downloadUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_apk_url(downloadUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 解决跨域问题,更换包的域名:https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/ 成 https://static.gpxscs.cn/
|
||||||
|
if ("prod".equals(profile) && StrUtil.isNotBlank(adminAppMarketUpdate.getDownload_wgt_url())) {
|
||||||
|
String downloadWgtUrl = adminAppMarketUpdate.getDownload_wgt_url();
|
||||||
|
downloadWgtUrl = downloadWgtUrl.replace("https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/", "https://static.gpxscs.cn/");
|
||||||
|
adminAppMarketUpdate.setDownload_wgt_url(downloadWgtUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
FileInfoDTO fileInfoDTO = StringUtils.getFileInfoFromUrl(adminAppMarketUpdate.getDownload_apk_url());
|
||||||
if (fileInfoDTO != null) {
|
if (fileInfoDTO != null) {
|
||||||
adminAppMarketUpdate.setPackage_size(fileInfoDTO.getFileSize());
|
adminAppMarketUpdate.setPackage_size(fileInfoDTO.getFileSize());
|
||||||
adminAppMarketUpdate.setFile_ext(fileInfoDTO.getFileExtension());
|
adminAppMarketUpdate.setFile_ext(fileInfoDTO.getFileExtension());
|
||||||
@ -204,18 +248,17 @@ public class AdminAppMarketUpdateServiceImpl extends BaseServiceImpl<AdminAppMar
|
|||||||
*
|
*
|
||||||
* @param marketId
|
* @param marketId
|
||||||
* @param packageName
|
* @param packageName
|
||||||
* @param versionKey
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public AdminAppMarketUpdate getAppMarketUpdate(Integer marketId, String packageName, Integer versionKey) {
|
public AdminAppMarketUpdate getLastAppMarketUpdate(Integer marketId, String packageName) {
|
||||||
if (ObjectUtil.isEmpty(marketId) || ObjectUtil.isEmpty(packageName) || ObjectUtil.isEmpty(versionKey)) {
|
if (ObjectUtil.isEmpty(marketId) || StrUtil.isBlank(packageName)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
QueryWrapper<AdminAppMarketUpdate> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<AdminAppMarketUpdate> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.eq("market_id", marketId).eq("package_name", packageName)
|
queryWrapper.eq("market_id", marketId)
|
||||||
.eq("version_key", versionKey);
|
.eq("package_name", packageName).orderByDesc("version_key");
|
||||||
|
|
||||||
return findOne(queryWrapper);
|
return findOne(queryWrapper);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -43,8 +43,11 @@ public class AdminAppMarketUpdate implements Serializable {
|
|||||||
@ApiModelProperty(value = "热更新包显示的版本号,用于标识不同的热更新版本,遵循一定命名规则,如 1.23.21")
|
@ApiModelProperty(value = "热更新包显示的版本号,用于标识不同的热更新版本,遵循一定命名规则,如 1.23.21")
|
||||||
private String version_name;
|
private String version_name;
|
||||||
|
|
||||||
@ApiModelProperty(value = "热更新包的下载链接,用户可通过此链接下载更新包完成应用更新")
|
@ApiModelProperty(value = "apk包的下载链接,用户可通过此链接下载更新包完成应用更新")
|
||||||
private String download_url;
|
private String download_apk_url;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "增量包的下载链接,用户可通过此链接下载更新包完成应用更新")
|
||||||
|
private String download_wgt_url;
|
||||||
|
|
||||||
@ApiModelProperty(value = "更新包后缀:apk, wgt")
|
@ApiModelProperty(value = "更新包后缀:apk, wgt")
|
||||||
private String file_ext;
|
private String file_ext;
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
package com.suisung.mall.shop.lakala.controller;
|
package com.suisung.mall.shop.lakala.controller;
|
||||||
|
|
||||||
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
import com.suisung.mall.common.service.impl.BaseControllerImpl;
|
||||||
import com.suisung.mall.shop.lakala.service.impl.CommonService;
|
import com.suisung.mall.shop.lakala.service.impl.LklTkService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
@ -24,18 +24,18 @@ import javax.annotation.Resource;
|
|||||||
public class LklTkController extends BaseControllerImpl {
|
public class LklTkController extends BaseControllerImpl {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private CommonService commonService;
|
private LklTkService lklTkService;
|
||||||
|
|
||||||
@ApiOperation(value = "请求获取token(商户进件)", notes = "请求获取token(商户进件)")
|
@ApiOperation(value = "请求获取token(商户进件)", notes = "请求获取token(商户进件)")
|
||||||
@RequestMapping(value = "/token", method = RequestMethod.POST)
|
@RequestMapping(value = "/token", method = RequestMethod.POST)
|
||||||
public String getLklTkAuthorization() {
|
public String getLklTkAuthorization() {
|
||||||
return commonService.getLklTkAuthorization();
|
return lklTkService.getLklTkAuthorization();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation(value = "请求获取token(商户进件)", notes = "请求获取token(商户进件)")
|
@ApiOperation(value = "请求获取token(商户进件)", notes = "请求获取token(商户进件)")
|
||||||
@RequestMapping(value = "/token1", method = RequestMethod.POST)
|
@RequestMapping(value = "/token1", method = RequestMethod.POST)
|
||||||
public String getLklTkAuthorization1() {
|
public String getLklTkAuthorization1() {
|
||||||
return commonService.getLklTkAuthorization();
|
return lklTkService.getLklTkAuthorization();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -36,9 +36,9 @@ import java.util.HashMap;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class CommonService {
|
public class LklTkService {
|
||||||
|
|
||||||
private static final Logger log = LoggerFactory.getLogger(CommonService.class);
|
private static final Logger log = LoggerFactory.getLogger(LklTkService.class);
|
||||||
@Value("${lakala.tk.server_url}")
|
@Value("${lakala.tk.server_url}")
|
||||||
private String serverUrl;
|
private String serverUrl;
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user