From cf2da3b2a63840888815c6a81cbd7948faf93533 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 08 六月 2026 17:41:15 +0800
Subject: [PATCH] aaa
---
server/service/src/main/java/com/doumee/service/business/impl/WebParamServiceImpl.java | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 152 insertions(+), 0 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/WebParamServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/WebParamServiceImpl.java
index 2d9043e..44e0e3e 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/WebParamServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/WebParamServiceImpl.java
@@ -1,6 +1,8 @@
package com.doumee.service.business.impl;
import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
@@ -14,6 +16,7 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -48,6 +51,30 @@
if(!Objects.isNull(webParam)){
webParam.setResourcePath(systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() +
systemDictDataBiz.queryByCode(Constants.OSS,Constants.WEB_PARAM).getCode());
+ webParam.setAnchorPageVersion(normalizeAnchorPageVersion(webParam.getAnchorPageVersion()));
+ }else{
+ webParam = new WebParam();
+ webParam.setResourcePath(systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() +
+ systemDictDataBiz.queryByCode(Constants.OSS,Constants.WEB_PARAM).getCode());
+ webParam.setBgImg(systemDictDataBiz.queryByCode(Constants.WEB_PARAM,Constants.BG_IMG).getCode());
+ webParam.setTopImg(systemDictDataBiz.queryByCode(Constants.WEB_PARAM,Constants.TOP_IMG).getCode());
+ webParam.setPkImg(systemDictDataBiz.queryByCode(Constants.WEB_PARAM,Constants.PK_IMG).getCode());
+ webParam.setMainColor(systemDictDataBiz.queryByCode(Constants.WEB_PARAM,Constants.MAIN_COLOR).getCode());
+ webParam.setRangeSize(systemDictDataBiz.queryByCode(Constants.WEB_PARAM,Constants.RANGE_SIZE).getCode());
+ webParam.setAnchorPageVersion(ANCHOR_PAGE_V2);
+ }
+ return webParam;
+ }
+
+ @Override
+ public WebParam findOneNew() {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ QueryWrapper<WebParam> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(WebParam::getCompanyId,user.getCompanyId());
+ wrapper.last(" limit 1 ");
+ WebParam webParam = webParamMapper.selectOne(wrapper);
+ if (webParam != null) {
+ webParam.setAnchorPageVersion(normalizeAnchorPageVersion(webParam.getAnchorPageVersion()));
}
return webParam;
}
@@ -70,11 +97,136 @@
webParamMapper.insert(webParam);
}else{
BeanUtils.copyProperties(updateWebParamDTO,webParam);
+ applyAnchorPageVersion(webParam, updateWebParamDTO.getAnchorPageVersion());
+ webParam.setUpdateUser(user.getId());
+ webParam.setUpdateTime(new Date());
+ webParamMapper.updateById(webParam);
+ }
+ }
+ @Override
+ public void renewUpdate(UpdateWebParamDTO updateWebParamDTO){
+ if(StringUtils.isBlank(updateWebParamDTO.getNewParam())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ QueryWrapper<WebParam> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(WebParam::getCompanyId,user.getCompanyId());
+ wrapper.last(" limit 1 ");
+ WebParam webParam = webParamMapper.selectOne(wrapper);
+ if(Objects.isNull(webParam)){
+ webParam = new WebParam();
+ BeanUtils.copyProperties(updateWebParamDTO,webParam);
+ webParam.setCreateTime(new Date());
+ webParam.setDeleted(Constants.ZERO);
+ webParam.setCompanyId(user.getCompanyId());
+ webParam.setCreateUser(user.getId());
+ webParamMapper.insert(webParam);
+ }else{
+ BeanUtils.copyProperties(updateWebParamDTO,webParam);
+ applyAnchorPageVersion(webParam, updateWebParamDTO.getAnchorPageVersion());
webParam.setUpdateUser(user.getId());
webParam.setUpdateTime(new Date());
webParamMapper.updateById(webParam);
}
}
+ @Override
+ public WebParam findOneAnchor() {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ QueryWrapper<WebParam> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(WebParam::getCompanyId, user.getCompanyId());
+ wrapper.last(" limit 1 ");
+ WebParam webParam = webParamMapper.selectOne(wrapper);
+ String resourcePath = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.OSS, Constants.WEB_PARAM).getCode();
+ if (webParam == null) {
+ webParam = new WebParam();
+ webParam.setAnchorParam(getDefaultAnchorParam());
+ webParam.setAnchorPageVersion(ANCHOR_PAGE_V2);
+ } else if (StringUtils.isBlank(webParam.getAnchorParam())) {
+ webParam.setAnchorParam(getDefaultAnchorParam());
+ }
+ webParam.setAnchorPageVersion(normalizeAnchorPageVersion(webParam.getAnchorPageVersion()));
+ webParam.setResourcePath(resourcePath);
+ return webParam;
+ }
+
+ @Override
+ public void renewAnchorUpdate(UpdateWebParamDTO updateWebParamDTO) {
+ if (StringUtils.isBlank(updateWebParamDTO.getAnchorParam())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ QueryWrapper<WebParam> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(WebParam::getCompanyId, user.getCompanyId());
+ wrapper.last(" limit 1 ");
+ WebParam webParam = webParamMapper.selectOne(wrapper);
+ if (Objects.isNull(webParam)) {
+ webParam = new WebParam();
+ webParam.setAnchorParam(updateWebParamDTO.getAnchorParam());
+ applyAnchorPageVersion(webParam, updateWebParamDTO.getAnchorPageVersion());
+ webParam.setCreateTime(new Date());
+ webParam.setDeleted(Constants.ZERO);
+ webParam.setCompanyId(user.getCompanyId());
+ webParam.setCreateUser(user.getId());
+ webParamMapper.insert(webParam);
+ } else {
+ webParam.setAnchorParam(updateWebParamDTO.getAnchorParam());
+ applyAnchorPageVersion(webParam, updateWebParamDTO.getAnchorPageVersion());
+ webParam.setUpdateUser(user.getId());
+ webParam.setUpdateTime(new Date());
+ webParamMapper.updateById(webParam);
+ }
+ }
+
+ @Override
+ public void updateAnchorPageVersion(String anchorPageVersion) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ String version = normalizeAnchorPageVersion(anchorPageVersion);
+ QueryWrapper<WebParam> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(WebParam::getCompanyId, user.getCompanyId());
+ wrapper.last(" limit 1 ");
+ WebParam webParam = webParamMapper.selectOne(wrapper);
+ if (Objects.isNull(webParam)) {
+ webParam = new WebParam();
+ webParam.setAnchorPageVersion(version);
+ webParam.setCreateTime(new Date());
+ webParam.setDeleted(Constants.ZERO);
+ webParam.setCompanyId(user.getCompanyId());
+ webParam.setCreateUser(user.getId());
+ webParamMapper.insert(webParam);
+ } else {
+ webParam.setAnchorPageVersion(version);
+ webParam.setUpdateUser(user.getId());
+ webParam.setUpdateTime(new Date());
+ webParamMapper.updateById(webParam);
+ }
+ }
+
+ private static final String ANCHOR_PAGE_V2 = "v2";
+ private static final String ANCHOR_PAGE_V3 = "v3";
+
+ private String normalizeAnchorPageVersion(String version) {
+ return ANCHOR_PAGE_V3.equalsIgnoreCase(StringUtils.trimToEmpty(version)) ? ANCHOR_PAGE_V3 : ANCHOR_PAGE_V2;
+ }
+
+ private void applyAnchorPageVersion(WebParam webParam, String anchorPageVersion) {
+ if (StringUtils.isNotBlank(anchorPageVersion)) {
+ webParam.setAnchorPageVersion(normalizeAnchorPageVersion(anchorPageVersion));
+ }
+ }
+
+ private String getDefaultAnchorParam() {
+ return "{\"rangeSize\":\"750\",\"main\":{\"bgType\":1,\"bgColor\":\"#E8DCC8\",\"alpha\":\"100\",\"bgImg\":{\"isShow\":1,\"type\":0}},"
+ + "\"topImg\":{\"type\":0,\"img\":\"\",\"imgurl\":\"\"},"
+ + "\"adImg\":{\"type\":0,\"img\":\"\",\"imgurl\":\"\"},"
+ + "\"pkImg\":{\"type\":0,\"img\":\"\",\"imgurl\":\"\"},"
+ + "\"header\":{\"backgroundType\":1,\"bgColor\":\"#4A3728\",\"bgAlpha\":\"100\",\"type\":1,\"color\":\"#FFFFFF\",\"alpha\":\"100\"},"
+ + "\"table\":{\"headerBg\":\"#4A3728\",\"headerColor\":\"#FFFFFF\",\"rowBg\":\"#F5EFE6\",\"hoverScale\":1.05},"
+ + "\"featured\":[{\"goodsId\":\"\",\"prefixUrl\":\"\",\"imgurl\":\"\",\"title\":\"\",\"tags\":[\"\",\"\"]},{\"goodsId\":\"\",\"prefixUrl\":\"\",\"imgurl\":\"\",\"title\":\"\",\"tags\":[\"\",\"\"]}],"
+ + "\"search\":{\"bgType\":1,\"bgColor\":\"#FFFFFF\",\"bgAlpha\":\"100\"},"
+ + "\"productList\":{\"bgType\":1,\"bgColor\":\"#F5EFE6\",\"bgAlpha\":\"100\"},"
+ + "\"pk\":{\"vsColor\":\"#FF8C42\"}}";
+ }
}
--
Gitblit v1.9.3