package com.xzx.gc.system.service; import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xzx.gc.entity.BannerInfo; import com.xzx.gc.entity.CityPartner; import com.xzx.gc.entity.CoreUser; import com.xzx.gc.model.JsonResult; import com.xzx.gc.model.admin.BannerModel; import com.xzx.gc.system.dto.*; import com.xzx.gc.system.mapper.BannerMapper; import com.xzx.gc.system.vo.ApiBannerListVo; import com.xzx.gc.system.vo.SysBannerListVo; import com.xzx.gc.system.vo.SysNewsListVo; import com.xzx.gc.system.vo.ViewSysBannerVo; import com.xzx.gc.util.SessionUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.Banner; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; import java.util.List; import java.util.Map; @Slf4j @Transactional @Service public class BannerService { @Autowired private BannerMapper bannerMapper; @Autowired private SessionUtil sessionUtil; @Autowired private CityPartnerService cityPartnerService; /** * 查询 * * @param bannerModel * @return */ public Map queryBannerApiList(BannerModel bannerModel) { Map map = new HashMap<>(); PageHelper.startPage(bannerModel.getPage(), bannerModel.getLimit()); List bannerModels = bannerMapper.queryBannerList(bannerModel); PageInfo pageInfo = new PageInfo<>(bannerModels); map.put("data", bannerModels); map.put("count", pageInfo.getTotal()); map.put("code", 0); return map; } /** * 添加 * * @param bannerModel * @return */ public JsonResult insertBannerApi(BannerModel bannerModel) { CoreUser user = sessionUtil.getCurrentUser(); CityPartner partner = cityPartnerService.queryById(user.getId()); if (null != partner) { bannerModel.setPartnerId(user.getId() + ""); } else { if (null != bannerModel.getCityId() && !"".equals(bannerModel.getCityId())) { partner = cityPartnerService.queryCityPartnerByCityId(bannerModel.getCityId()); if (null != partner) { bannerModel.setPartnerId(partner.getId() + ""); } } } bannerModel.setCreateTime(DateUtil.now()); if (bannerMapper.insertBanner(bannerModel) > 0) { return JsonResult.success(); } else { return JsonResult.failMessage("保存失败"); } } /** * 更新 * * @param bannerModel * @return */ public int updateBannerApi(BannerModel bannerModel) { return bannerMapper.updateBanner(bannerModel); } /** * 删除 * * @param id * @return */ public int delBannerApi(String id) { return bannerMapper.delBanner(id); } public Map sysBannerList(SysBannerListDto sysBannerListDto) { PageHelper.startPage(sysBannerListDto.getPage(), sysBannerListDto.getLimit()); List sysBannerListVos = bannerMapper.selectSysBanner(sysBannerListDto); PageInfo pageInfo = new PageInfo<>(sysBannerListVos); Map data = new HashMap<>(); int count = Convert.toInt(pageInfo.getTotal()); data.put("data", sysBannerListVos); data.put("count", count); data.put("code", 0); return data; } public void addSysBanner(AddSysBannerDto model) { BannerInfo bannerInfo = new BannerInfo(); bannerInfo.setCreateTime(DateUtil.format(model.getCreateTime(),"yyyy-MM-dd HH:mm:ss")); bannerInfo.setStatus(model.getStatus()); bannerInfo.setDelFlag(0); bannerInfo.setPicName(model.getPicName()); bannerInfo.setPicUrl(model.getPicUrl()); bannerInfo.setSort(model.getSort()); bannerMapper.insertSelective(bannerInfo); } public ViewSysBannerVo viewSysBanner(Long id) { BannerInfo bannerInfo = bannerMapper.selectBannerById(id); ViewSysBannerVo viewSysBannerVo = new ViewSysBannerVo(); viewSysBannerVo.setSort(bannerInfo.getSort()); viewSysBannerVo.setStatus(bannerInfo.getStatus()); viewSysBannerVo.setCreateTime(bannerInfo.getCreateTime()); viewSysBannerVo.setId(bannerInfo.getId()); viewSysBannerVo.setPicName(bannerInfo.getPicName()); viewSysBannerVo.setPicUrl(bannerInfo.getPicUrl()); return viewSysBannerVo; } public void updateSysBanner(UpdateSysBannerDto model) { bannerMapper.updateBannerById(model.getSort(),model.getPicUrl(),model.getPicName(),model.getId()); } public void delSysBanner(DelSysBannerDto model) { bannerMapper.delSysBannerById(model.getId()); } public void onOffSysBanner(OnSysBannerDto model) { bannerMapper.updateStatusById(model.getId(),model.getStatus()); } public List bannerList(ApiBannerListDto apiBannerListDto) { return bannerMapper.selectBannerList(); } }