diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/AdvertisementListVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/AdvertisementListVO.java index 4bcc0932..007b3408 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/AdvertisementListVO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/AdvertisementListVO.java @@ -52,6 +52,11 @@ public class AdvertisementListVO { */ private List items; + /** + * 版本号 + */ + private String version; + public List getItems(){ if (StrUtil.isBlank(content)){ return null; diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/Advertisement.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/Advertisement.java index 6f5a5caa..f96f4dd0 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/Advertisement.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/Advertisement.java @@ -51,6 +51,11 @@ public class Advertisement implements Serializable { */ private String content; + /** + * 版本号 + */ + private String version; + /** * 是否启用 */ diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/AdvertisementServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/AdvertisementServiceImpl.java index 1cf3926e..46b223be 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/AdvertisementServiceImpl.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/AdvertisementServiceImpl.java @@ -11,13 +11,14 @@ import com.nflg.wms.common.pojo.vo.AdvertisementItemVO; import com.nflg.wms.common.pojo.vo.AdvertisementListVO; import com.nflg.wms.common.pojo.vo.AdvertisementVO; import com.nflg.wms.common.util.UserUtil; -import com.nflg.wms.common.util.VUtil; import com.nflg.wms.repository.entity.Advertisement; import com.nflg.wms.repository.mapper.AdvertisementMapper; import com.nflg.wms.repository.service.IAdvertisementService; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; +import java.util.List; import java.util.Objects; /** @@ -43,33 +44,30 @@ public class AdvertisementServiceImpl extends ServiceImpl advertisements = lambdaQuery() + .select(Advertisement::getVersion) + .eq(Advertisement::getType, type) + .eq(Advertisement::getPosition, position) + .list(); + int maxVersion = advertisements.stream() + .map(Advertisement::getVersion) + .filter(Objects::nonNull) + .mapToInt(version -> Integer.parseInt(version.substring(1))) + .max() + .orElse(0); + return "v" + (maxVersion + 1); + } } diff --git a/nflg-wms-repository/src/main/resources/mapper/AdvertisementMapper.xml b/nflg-wms-repository/src/main/resources/mapper/AdvertisementMapper.xml index 8c544ab1..ebd7044d 100644 --- a/nflg-wms-repository/src/main/resources/mapper/AdvertisementMapper.xml +++ b/nflg-wms-repository/src/main/resources/mapper/AdvertisementMapper.xml @@ -8,6 +8,8 @@ INNER JOIN dictionary_item di1 ON ad.type = di1.id INNER JOIN dictionary_item di2 ON ad.position = di2.id where di1.code = #{type} AND di2.code=#{position} and ad.enable + ORDER BY CAST(SUBSTRING(ad.version, 2) AS UNSIGNED) DESC + LIMIT 1