| | |
| | | package com.ruoyi.system.service.impl.config; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | | import com.ruoyi.common.core.utils.bean.BeanUtils; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; |
| | | import com.ruoyi.system.domain.dto.MgtPopEditDto; |
| | | import com.ruoyi.system.domain.pojo.config.Pop; |
| | | import com.ruoyi.system.domain.vo.AppPopVo; |
| | | import com.ruoyi.system.domain.vo.MgtPopGetVo; |
| | | import com.ruoyi.system.domain.vo.MgtPopPageVo; |
| | | import com.ruoyi.system.mapper.config.PopMapper; |
| | | import com.ruoyi.system.service.config.PopService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.text.ParseException; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @Service |
| | | public class PopServiceImpl extends ServiceImpl<PopMapper, Pop> implements PopService { |
| | | |
| | | @Resource |
| | | private PopMapper popMapper; |
| | | |
| | | /** |
| | | * @description 平台分页获取弹窗广告 |
| | | * @author jqs |
| | | * @date 2023/6/7 10:08 |
| | | * @param page |
| | | * @return List<MgtPopPageVo> |
| | | */ |
| | | @Override |
| | | public List<MgtPopPageVo> pageMgtPop(Page page){ |
| | | return popMapper.pageMgtPop(page); |
| | | } |
| | | |
| | | /** |
| | | * @description 平台修改弹窗广告 |
| | | * @author jqs |
| | | * @date 2023/6/7 10:20 |
| | | * @param mgtPopEditDto |
| | | * @return void |
| | | */ |
| | | @Override |
| | | public void editMgtPop(MgtPopEditDto mgtPopEditDto){ |
| | | Pop pop; |
| | | // 如果管理弹窗ID不为空,则获取该管理弹窗 |
| | | if (mgtPopEditDto.getPopId() != null) { |
| | | pop = this.getById(mgtPopEditDto.getPopId()); |
| | | } else { |
| | | // 否则,创建新的管理弹窗 |
| | | pop = new Pop(); |
| | | pop.setDelFlag(0); |
| | | } |
| | | // 将管理弹窗编辑DTO的属性复制到管理弹窗中 |
| | | BeanUtils.copyProperties(mgtPopEditDto, pop); |
| | | // 设置创建时间和创建者ID |
| | | pop.setCreateTime(new Date()); |
| | | pop.setCreateUserId(mgtPopEditDto.getPopId()); |
| | | try { |
| | | pop.setShowStartTime(DateUtils.parseDate(mgtPopEditDto.getShowStartTime(),"yyyy-MM-dd")); |
| | | pop.setShowEndTime(DateUtils.parseDate(mgtPopEditDto.getShowEndTime(),"yyyy-MM-dd")); |
| | | } catch (ParseException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | // 保存或更新管理弹窗 |
| | | this.saveOrUpdate(pop); |
| | | } |
| | | |
| | | /** |
| | | * @description 平台获取弹窗编辑信息 |
| | | * @author jqs |
| | | * @date 2023/6/7 10:30 |
| | | * @param popId |
| | | * @return MgtPopGetVo |
| | | */ |
| | | @Override |
| | | public MgtPopGetVo getMgtPop(Long popId){ |
| | | Pop pop = this.getById(popId); |
| | | if(pop.getTargetType()==1){ |
| | | pop.setJumpType(null); |
| | | pop.setJumpId(null); |
| | | pop.setLinkType(null); |
| | | }else if(pop.getTargetType()==2){ |
| | | if(pop.getLinkType()==1){ |
| | | pop.setJumpType(null); |
| | | pop.setJumpId(null); |
| | | }else{ |
| | | pop.setLinkUrl(null); |
| | | } |
| | | }else if(pop.getTargetType()==3){ |
| | | pop.setLinkUrl(null); |
| | | pop.setLinkType(null); |
| | | pop.setJumpType(null); |
| | | pop.setJumpId(null); |
| | | } |
| | | MgtPopGetVo mgtPopGetVo = new MgtPopGetVo(); |
| | | BeanUtils.copyProperties(pop, mgtPopGetVo); |
| | | return mgtPopGetVo; |
| | | } |
| | | |
| | | /** |
| | | * @description 平台删除弹窗 |
| | | * @author jqs |
| | | * @date 2023/6/7 10:35 |
| | | * @param mgtBaseGetDto |
| | | * @return void |
| | | */ |
| | | @Override |
| | | public void deleteMgtPop(MgtBaseGetDto mgtBaseGetDto){ |
| | | Pop pop = this.getById(Long.valueOf(mgtBaseGetDto.getId())); |
| | | pop.setDelFlag(1); |
| | | this.saveOrUpdate(pop); |
| | | } |
| | | |
| | | /** |
| | | * @description 获取首页弹窗 |
| | | * @author jqs |
| | | * @date 2023/7/20 17:19 |
| | | * @param |
| | | * @return AppPopVo |
| | | */ |
| | | @Override |
| | | public AppPopVo getAppPop(){ |
| | | return popMapper.getAppPop(); |
| | | } |
| | | } |