This commit is contained in:
daihh
2022-12-13 10:18:44 +08:00
10 changed files with 548 additions and 0 deletions

View File

@@ -0,0 +1,103 @@
package com.xboe.module.popup.api;
import com.xboe.common.utils.StringUtil;
import com.xboe.core.JsonResponse;
import com.xboe.core.api.ApiBaseController;
import com.xboe.module.popup.entity.Popup;
import com.xboe.module.popup.service.IPopupService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@RestController
@RequestMapping(value = "/xboe/m/popup")
public class PopupApi extends ApiBaseController {
@Resource
IPopupService service;
/**
* 后台弹窗管理列表
* */
@PostMapping("/list")
public JsonResponse<List<Popup>> list(Popup popup){
List<Popup> list = service.list(popup);
return success(list);
}
/**
* 添加弹窗
* */
@PostMapping("/save")
public JsonResponse<Popup> save(@RequestBody Popup popup){
if(StringUtil.isBlank(popup.getTitle())){
return badRequest("标题不能为空");
}
if(popup.getLoginEd()==null){
popup.setLoginEd(false);
}
if(popup.getDaily()==null){
popup.setDaily(false);
}
if (popup.getOnce()==null){
popup.setOnce(false);
}
if(popup.getCloseable()==null){
popup.setCloseable(false);
}
try {
service.save(popup);
return success(popup);
} catch (Exception e) {
return error("添加失败",e.getMessage());
}
}
/**
* 修改弹窗
* */
@PostMapping("/update")
public JsonResponse<Popup> update(@RequestBody Popup popup){
if(StringUtil.isBlank(popup.getTitle())){
return badRequest("标题不能为空");
}
try {
service.update(popup);
return success(popup);
} catch (Exception e) {
return error("编辑失败",e.getMessage());
}
}
/**
* 查看
* */
@GetMapping("/detail")
public JsonResponse<Popup> detail(String id){
if(StringUtil.isBlank(id)){
return badRequest("参数异常");
}
Popup popup = service.detail(id);
return success(popup);
}
/**
* 删除
* */
@GetMapping("/delete")
public JsonResponse<Boolean> delete(String id){
if(StringUtil.isBlank(id)){
return badRequest("参数异常");
}
try {
service.delete(id);
return success(true);
} catch (Exception e) {
return error("删除失败",e.getMessage());
}
}
}

View File

@@ -0,0 +1,9 @@
package com.xboe.module.popup.dao;
import com.xboe.core.orm.BaseDao;
import com.xboe.module.popup.entity.Popup;
import org.springframework.stereotype.Repository;
@Repository
public class PopupDao extends BaseDao<Popup> {
}

View File

@@ -0,0 +1,90 @@
package com.xboe.module.popup.entity;
import com.xboe.core.SysConstant;
import com.xboe.core.orm.IdEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.time.LocalDateTime;
@Data
@EqualsAndHashCode(callSuper = false)
@Entity
@Table(name = SysConstant.TABLE_PRE+"popup")
public class Popup extends IdEntity {
/**
* 开始时间
* */
@Column(name = "start_time")
private LocalDateTime startTime;
/**
* 结束时间
* */
@Column(name = "end_time")
private LocalDateTime endTime;
/**
* 是否每次登录后弹出一次
* */
@Column(name = "login_ed")
private Boolean loginEd;
/**
* 是否每天弹出一次
* */
@Column(name = "daily")
private Boolean daily;
/**
* 是否每个人弹出一次
* */
@Column(name = "once")
private Boolean once;
/**
* 是否显示关闭
* */
@Column(name = "closeable")
private Boolean closeable;
/**
* 弹窗标题
* */
@Column(name = "title",length = 50)
private String title;
/**
* 弹窗内容
* */
@Column(name = "content")
private String content;
/**
* 弹窗背景图
* */
@Column(name = "bg_image")
private String bgImage;
/**
* 跳转的url
* */
@Column(name = "url")
private String url;
}

View File

@@ -0,0 +1,39 @@
package com.xboe.module.popup.service;
import com.xboe.module.popup.entity.Popup;
import java.util.List;
public interface IPopupService {
/**
* 后台弹窗管理列表
* */
List<Popup> list(Popup popup);
/**
* 添加
* */
void save(Popup popup);
/**
* 修改
* */
void update(Popup popup);
/**
* 详情
* */
Popup detail(String id);
/**
* 删除
* */
void delete(String id);
}

View File

@@ -0,0 +1,73 @@
package com.xboe.module.popup.service.impl;
import com.xboe.common.OrderCondition;
import com.xboe.common.utils.StringUtil;
import com.xboe.core.orm.FieldFilters;
import com.xboe.core.orm.LikeMatchMode;
import com.xboe.core.orm.QueryBuilder;
import com.xboe.module.popup.dao.PopupDao;
import com.xboe.module.popup.entity.Popup;
import com.xboe.module.popup.service.IPopupService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Service
@Transactional
public class PopupServiceImpl implements IPopupService {
@Resource
PopupDao popupDao;
@Override
public List<Popup> list(Popup popup) {
QueryBuilder builder = QueryBuilder.from(Popup.class);
if(popup!=null){
if(popup.getStartTime()!=null){
builder.addFilter(FieldFilters.eq("startTime",popup.getStartTime()));
}
if(popup.getEndTime()!=null){
builder.addFilter(FieldFilters.eq("endTime",popup.getEndTime()));
}
if(popup.getLoginEd()!=null){
builder.addFilter(FieldFilters.eq("logined",popup.getLoginEd()));
}
if(popup.getDaily()!=null){
builder.addFilter(FieldFilters.eq("daily",popup.getDaily()));
}
if(popup.getCloseable()!=null){
builder.addFilter(FieldFilters.eq("closeable",popup.getCloseable()));
}
if(StringUtil.isNotBlank(popup.getTitle())){
builder.addFilter(FieldFilters.like("title", LikeMatchMode.ANYWHERE,popup.getTitle()));
}
}
builder.addOrder(OrderCondition.desc("id"));
List<Popup> list = popupDao.findList(builder.builder());
return list;
}
@Override
public void save(Popup popup) {
popupDao.save(popup);
}
@Override
public void update(Popup popup) {
popupDao.update(popup);
}
@Override
public Popup detail(String id) {
Popup popup = popupDao.get(id);
return popup;
}
@Override
public void delete(String id) {
popupDao.deleteById(id);
}
}

View File

@@ -0,0 +1,99 @@
package com.xboe.system.whiteuser.api;
import com.xboe.common.utils.StringUtil;
import com.xboe.core.JsonResponse;
import com.xboe.core.api.ApiBaseController;
import com.xboe.system.whiteuser.entity.WhiteUser;
import com.xboe.system.whiteuser.service.IWhiteUserService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@RestController
@RequestMapping("/xboe/sys/whiteuser")
public class WhiteUserApi extends ApiBaseController {
@Resource
IWhiteUserService service;
/**
* 白名单列表
* */
@PostMapping("/list")
public JsonResponse<List<WhiteUser>> list(WhiteUser whiteUser){
List<WhiteUser> list = service.list(whiteUser);
return success(list);
}
/**
* 添加白名单
* */
@PostMapping("/save")
public JsonResponse<WhiteUser> save(@RequestBody WhiteUser whiteUser){
if(StringUtil.isBlank(whiteUser.getUserNo())){
return badRequest("参数异常");
}
if(StringUtil.isBlank(whiteUser.getName())){
return badRequest("参数异常");
}
try {
service.save(whiteUser);
return success(whiteUser);
} catch (Exception e) {
return error("添加失败",e.getMessage());
}
}
/**
* 修改白名单
* */
@PostMapping("/update")
public JsonResponse<WhiteUser> update(@RequestBody WhiteUser whiteUser){
if(StringUtil.isBlank(whiteUser.getUserNo())){
return badRequest("参数异常");
}
if(StringUtil.isBlank(whiteUser.getName())){
return badRequest("参数异常");
}
try {
service.update(whiteUser);
return success(whiteUser);
} catch (Exception e) {
return error("修改失败",e.getMessage());
}
}
/**
* 详情
* */
@GetMapping("/detail")
public JsonResponse<WhiteUser> detail(String id){
if(StringUtil.isBlank(id)){
return badRequest("参数异常");
}
WhiteUser whiteUser = service.detail(id);
return success(whiteUser);
}
/**
* 删除
* */
@GetMapping("/delete")
public JsonResponse<Boolean> delete(String id){
if(StringUtil.isBlank(id)){
return badRequest("参数异常");
}
try {
service.delete(id);
return success(true);
} catch (Exception e) {
return error("删除失败",e.getMessage());
}
}
}

View File

@@ -0,0 +1,9 @@
package com.xboe.system.whiteuser.dao;
import com.xboe.core.orm.BaseDao;
import com.xboe.system.whiteuser.entity.WhiteUser;
import org.springframework.stereotype.Repository;
@Repository
public class WhiteUserDao extends BaseDao<WhiteUser> {
}

View File

@@ -0,0 +1,25 @@
package com.xboe.system.whiteuser.entity;
import com.xboe.core.SysConstant;
import com.xboe.core.orm.IdEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
@Data
@Entity
@EqualsAndHashCode(callSuper = false)
@Table(name = SysConstant.TABLE_PRE+"white_user")
public class WhiteUser extends IdEntity {
@Column(name = "user_no",length = 30)
private String userNo;
@Column(name = "name",length = 30)
private String name;
}

View File

@@ -0,0 +1,41 @@
package com.xboe.system.whiteuser.service;
import com.xboe.system.whiteuser.entity.WhiteUser;
import java.util.List;
public interface IWhiteUserService {
/**
* 查看现有白名单
* */
List<WhiteUser> list(WhiteUser whiteUser);
/**
* 添加
* */
void save(WhiteUser whiteUser);
/**
* 删除
* */
void delete(String id);
/**
* 修改
* */
void update(WhiteUser whiteUser);
/**
* 详情
* */
WhiteUser detail(String id);
}

View File

@@ -0,0 +1,60 @@
package com.xboe.system.whiteuser.service.impl;
import com.xboe.common.OrderCondition;
import com.xboe.common.utils.StringUtil;
import com.xboe.core.orm.FieldFilters;
import com.xboe.core.orm.LikeMatchMode;
import com.xboe.core.orm.QueryBuilder;
import com.xboe.system.whiteuser.dao.WhiteUserDao;
import com.xboe.system.whiteuser.entity.WhiteUser;
import com.xboe.system.whiteuser.service.IWhiteUserService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Service
@Transactional
public class WhiteUserServiceImpl implements IWhiteUserService {
@Resource
WhiteUserDao whiteUserDao;
@Override
public List<WhiteUser> list(WhiteUser whiteUser) {
QueryBuilder builder = QueryBuilder.from(WhiteUser.class);
if(whiteUser!=null){
if(StringUtil.isNotBlank(whiteUser.getUserNo())){
builder.addFilter(FieldFilters.eq("userNo",whiteUser.getUserNo()));
}
if(StringUtil.isNotBlank(whiteUser.getName())){
builder.addFilter(FieldFilters.like("name", LikeMatchMode.ANYWHERE,whiteUser.getName()));
}
}
builder.addOrder(OrderCondition.desc("id"));
List<WhiteUser> list = whiteUserDao.findList(builder.builder());
return list;
}
@Override
public void save(WhiteUser whiteUser) {
whiteUserDao.save(whiteUser);
}
@Override
public void delete(String id) {
whiteUserDao.deleteById(id);
}
@Override
public void update(WhiteUser whiteUser) {
whiteUserDao.update(whiteUser);
}
@Override
public WhiteUser detail(String id) {
WhiteUser whiteUser = whiteUserDao.get(id);
return whiteUser;
}
}