From 7d713ee9213f4c4c88fbbea73a4e36c0b7801c92 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 25 Aug 2021 16:05:36 +0800
Subject: [PATCH] Merge branch 'score-shop' of http://120.27.238.55:7000/r/xzx into score-shop
---
gc-sys/src/main/resources/mapper/system/BannerMapper.xml | 10 ++++++++++
gc-sys/src/main/java/com/xzx/gc/system/controller/ApiBannerNewsController.java | 2 +-
gc-sys/src/main/java/com/xzx/gc/system/mapper/BannerMapper.java | 3 +++
gc-shop/src/main/resources/sql | 15 ++++++++++++++-
gc-sys/src/main/resources/mapper/system/SysPopupMapper.xml | 5 +++++
gc-sys/src/main/resources/mapper/system/SysNewsMapper.xml | 2 +-
gc-sys/src/main/java/com/xzx/gc/system/controller/AdminBannerController.java | 20 ++++++++++++++++++++
7 files changed, 54 insertions(+), 3 deletions(-)
diff --git a/gc-shop/src/main/resources/sql b/gc-shop/src/main/resources/sql
index 6d65312..0ae06e8 100644
--- a/gc-shop/src/main/resources/sql
+++ b/gc-shop/src/main/resources/sql
@@ -80,7 +80,20 @@
MODIFY COLUMN `rule_type` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '规则类型:1:红包规则,2:分享分利规则 3阶梯 4推广 5重量返利 7提成 8提佣 9积分规则 10邀请奖励规则' AFTER `share_ratio`;
-
+CREATE TABLE `xzx_sys_popup` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT,
+ `area` int(11) DEFAULT NULL COMMENT '广告区域 1:首页2:其他',
+ `name` varchar(100) DEFAULT NULL COMMENT '广告名称',
+ `aims` int(11) DEFAULT NULL COMMENT '弹窗人群:1:新用戶 2:老用戶',
+ `rules` int(11) DEFAULT NULL COMMENT '弹窗规则:1:每日首次登录 2:每次登录',
+ `is_out` int(11) DEFAULT NULL COMMENT '是否跳转 1:是 2:否',
+ `out_text` varchar(500) DEFAULT NULL COMMENT '内容链接',
+ `start_time` varchar(100) DEFAULT NULL COMMENT '开始日期',
+ `end_time` varchar(100) DEFAULT NULL COMMENT '结束日期',
+ `img` varchar(500) DEFAULT NULL COMMENT '上传图片',
+ `state` int(11) DEFAULT NULL COMMENT '是否上架 1:是2:否',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='首页弹窗表';
diff --git a/gc-sys/src/main/java/com/xzx/gc/system/controller/AdminBannerController.java b/gc-sys/src/main/java/com/xzx/gc/system/controller/AdminBannerController.java
index bf1d9a1..292bb97 100644
--- a/gc-sys/src/main/java/com/xzx/gc/system/controller/AdminBannerController.java
+++ b/gc-sys/src/main/java/com/xzx/gc/system/controller/AdminBannerController.java
@@ -1,11 +1,15 @@
package com.xzx.gc.system.controller;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.xzx.gc.common.constant.CommonEnum;
import com.xzx.gc.common.constant.Constants;
import com.xzx.gc.common.dto.log.OperationAppLog;
import com.xzx.gc.common.request.BaseController;
import com.xzx.gc.entity.BannerInfo;
+import com.xzx.gc.entity.SysPopup;
import com.xzx.gc.model.JsonResult;
import com.xzx.gc.system.dto.*;
import com.xzx.gc.system.mapper.BannerMapper;
@@ -25,7 +29,10 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Date;
+import java.util.List;
import java.util.Map;
@RestController
@@ -105,6 +112,19 @@
if(ObjectUtil.isEmpty(sysPopupListVo)){
return JsonResult.failMessage("当前记录不存在!");
}
+ Integer state = model.getStatus();
+ String startTime = sysPopupListVo.getStartTime();
+ String endTime = sysPopupListVo.getEndTime();
+
+ DateTime dateTime = DateUtil.parseDate(endTime);
+ int compare = DateUtil.compare(DateUtil.date(), dateTime);
+ if(1 == state && compare > 0){
+ return JsonResult.failMessage("首页弹窗已过期!");
+ }
+ List<SysPopup> sysPopups = bannerMapper.selectSysPopupBystate(1,startTime,endTime);
+ if(1 == state && CollUtil.isNotEmpty(sysPopups)){
+ return JsonResult.failMessage("当前时间段已有上架首页弹窗!");
+ }
bannerService.onOffSysPopup(model);
OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))
.methodName(Constants.SCORESHOP_MODUL_NAME).operateAction("首页弹窗--上下架-" + id).build();
diff --git a/gc-sys/src/main/java/com/xzx/gc/system/controller/ApiBannerNewsController.java b/gc-sys/src/main/java/com/xzx/gc/system/controller/ApiBannerNewsController.java
index 8dcb3a5..36bcd98 100644
--- a/gc-sys/src/main/java/com/xzx/gc/system/controller/ApiBannerNewsController.java
+++ b/gc-sys/src/main/java/com/xzx/gc/system/controller/ApiBannerNewsController.java
@@ -67,7 +67,7 @@
@ApiResponses({
@ApiResponse(code = 200, message = "success", response = ApiSysPopupVo.class)
})
- @PostMapping(value = "/news/newsInfo")
+ @PostMapping(value = "/news/sysPopupInfo")
public JsonResult<ApiSysPopupVo> sysPopupInfo(@RequestBody ApiSysPopupDto apiSysPopupDto, HttpServletRequest request) {
apiSysPopupDto.setUserId(getUserId(request));
return JsonResult.success(sysNewsService.sysPopupInfo(apiSysPopupDto));
diff --git a/gc-sys/src/main/java/com/xzx/gc/system/mapper/BannerMapper.java b/gc-sys/src/main/java/com/xzx/gc/system/mapper/BannerMapper.java
index 2b26886..0123661 100644
--- a/gc-sys/src/main/java/com/xzx/gc/system/mapper/BannerMapper.java
+++ b/gc-sys/src/main/java/com/xzx/gc/system/mapper/BannerMapper.java
@@ -1,6 +1,7 @@
package com.xzx.gc.system.mapper;
import com.xzx.gc.entity.BannerInfo;
+import com.xzx.gc.entity.SysPopup;
import com.xzx.gc.model.admin.BannerModel;
import com.xzx.gc.model.system.ConfigInfoVo;
import com.xzx.gc.system.dto.SysBannerListDto;
@@ -71,5 +72,7 @@
@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("img")String img);
void updateSysPopupStatusById(@Param("id")long id, @Param("state")Integer state);
+
+ List<SysPopup> selectSysPopupBystate(@Param("state")int i,@Param("startTime")String startTime,@Param("endTime")String endTime);
}
diff --git a/gc-sys/src/main/resources/mapper/system/BannerMapper.xml b/gc-sys/src/main/resources/mapper/system/BannerMapper.xml
index f28d982..c61f8ec 100644
--- a/gc-sys/src/main/resources/mapper/system/BannerMapper.xml
+++ b/gc-sys/src/main/resources/mapper/system/BannerMapper.xml
@@ -165,4 +165,14 @@
set state = #{state}
where id = #{id}
</update>
+
+
+
+
+ <select id="selectSysPopupBystate" resultType="com.xzx.gc.entity.SysPopup">
+ select * from xzx_sys_popup where state = #{state}
+ and ((#{startTime} >= start_time and #{startTime} <= end_time)
+ or (#{endTime} >= start_time and #{endTime} <= end_time)
+ or (#{startTime} <= start_time and #{endTime} >= end_time))
+ </select>
</mapper>
\ No newline at end of file
diff --git a/gc-sys/src/main/resources/mapper/system/SysNewsMapper.xml b/gc-sys/src/main/resources/mapper/system/SysNewsMapper.xml
index 7a5adff..f510ed9 100644
--- a/gc-sys/src/main/resources/mapper/system/SysNewsMapper.xml
+++ b/gc-sys/src/main/resources/mapper/system/SysNewsMapper.xml
@@ -52,7 +52,7 @@
<select id="selectSysPopupInfo" resultType="com.xzx.gc.system.vo.ApiSysPopupVo">
select * from xzx_sys_popup
where end_time >= #{format}
- and and start_time <= #{format}
+ and start_time <= #{format}
</select>
diff --git a/gc-sys/src/main/resources/mapper/system/SysPopupMapper.xml b/gc-sys/src/main/resources/mapper/system/SysPopupMapper.xml
new file mode 100644
index 0000000..684d41e
--- /dev/null
+++ b/gc-sys/src/main/resources/mapper/system/SysPopupMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xzx.gc.system.mapper.SysPopupMapper">
+
+</mapper>
--
Gitblit v1.9.1