Browse Source

banner图完成

dev
qushutong 6 years ago
parent
commit
95e83bbf00
  1. 2
      esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java
  2. 12
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java
  3. 9
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/BannerDepartmentDao.java
  4. 2
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java
  5. 19
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerDepartmentService.java
  6. 11
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java
  7. 26
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerDepartmentServiceImpl.java
  8. 63
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java
  9. 4
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/BannerDepartmentDao.xml

2
esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java

@ -76,7 +76,7 @@ public class BannerDTO implements Serializable {
/**
* 部门ID
*/
private String gridId;
private Long gridId;
/**
* 创建人

12
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java

@ -61,12 +61,18 @@ public class BannerController {
BannerDTO data = bannerService.get(id);
return new Result<BannerDTO>().ok(data);
}
/***
* 新增banner
* @param dto
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author qushutong
* @date 2019/9/10 19:54
*/
@PostMapping
public Result save(@RequestBody BannerDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
bannerService.save(dto);
bannerService.saveOrUpdate(dto);
return new Result();
}
@ -74,7 +80,7 @@ public class BannerController {
public Result update(@RequestBody BannerDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
bannerService.update(dto);
bannerService.saveOrUpdate(dto);
return new Result();
}

9
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/BannerDepartmentDao.java

@ -29,5 +29,12 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface BannerDepartmentDao extends BaseDao<BannerDepartmentEntity> {
/***
* 修改banner的时候得先删除关系表相关
* @param bannerId
* @return void
* @author qushutong
* @date 2019/9/10 20:04
*/
void deleteByBannerId(String bannerId);
}

2
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java

@ -71,7 +71,7 @@ public class BannerEntity extends BaseEpdcEntity {
/**
* 部门ID
*/
private String gridId;
private Long gridId;
/**
* 发布人的部门

19
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerDepartmentService.java

@ -92,4 +92,23 @@ public interface BannerDepartmentService extends BaseService<BannerDepartmentEnt
* @date 2019-09-10
*/
void delete(String[] ids);
/***
* 根据bannerId 删除
* @param bannerId
* @return void
* @author qushutong
* @date 2019/9/10 20:02
*/
void deleteByBannerId(String bannerId);
/***
* 新增新闻的时候 批量插入
* @param id
* @param noticeGridList
* @return void
* @author qushutong
* @date 2019/9/10 20:07
*/
void save(String id, List<Long> noticeGridList);
}

11
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java

@ -63,15 +63,14 @@ public interface BannerService extends BaseService<BannerEntity> {
*/
BannerDTO get(String id);
/**
* 默认保存
*
/***
* 新增 或者更新
* @param dto
* @return void
* @author generator
* @date 2019-09-10
* @author qushutong
* @date 2019/9/10 20:13
*/
void save(BannerDTO dto);
void saveOrUpdate(BannerDTO dto);
/**
* 默认更新

26
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerDepartmentServiceImpl.java

@ -17,17 +17,22 @@
package com.elink.esua.epdc.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.dao.BannerDepartmentDao;
import com.elink.esua.epdc.dto.BannerDepartmentDTO;
import com.elink.esua.epdc.entity.BannerDepartmentEntity;
import com.elink.esua.epdc.entity.NoticeDepartmentEntity;
import com.elink.esua.epdc.redis.BannerDepartmentRedis;
import com.elink.esua.epdc.service.BannerDepartmentService;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -101,4 +106,25 @@ public class BannerDepartmentServiceImpl extends BaseServiceImpl<BannerDepartmen
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public void deleteByBannerId(String bannerId) {
baseDao.deleteByBannerId(bannerId);
}
@Override
public void save(String id, List<Long> noticeGridList) {
if (StringUtils.isBlank(id) || CollUtil.isEmpty(noticeGridList)) {
throw new RenException("保存通知网格信息失败");
}
List<BannerDepartmentEntity> list = Lists.newArrayList();
BannerDepartmentEntity entity;
for (Long gridId : noticeGridList) {
entity = new BannerDepartmentEntity();
entity.setBannerId(id);
entity.setGridId(gridId);
list.add(entity);
}
this.insertBatch(list, NumConstant.TWENTY);
}
}

63
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java

@ -17,17 +17,27 @@
package com.elink.esua.epdc.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dao.BannerDao;
import com.elink.esua.epdc.dto.BannerDTO;
import com.elink.esua.epdc.entity.BannerEntity;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.redis.BannerRedis;
import com.elink.esua.epdc.service.BannerDepartmentService;
import com.elink.esua.epdc.service.BannerService;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -47,7 +57,9 @@ import java.util.Map;
public class BannerServiceImpl extends BaseServiceImpl<BannerDao, BannerEntity> implements BannerService {
@Autowired
private BannerRedis bannerRedis;
private BannerDepartmentService bannerDepartmentService;
@Autowired
private AdminFeignClient adminFeignClient;
@Override
public PageData<BannerDTO> page(Map<String, Object> params) {
@ -65,8 +77,8 @@ public class BannerServiceImpl extends BaseServiceImpl<BannerDao, BannerEntity>
return ConvertUtils.sourceToTarget(entityList, BannerDTO.class);
}
private QueryWrapper<BannerEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
private QueryWrapper<BannerEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<BannerEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
@ -82,9 +94,52 @@ public class BannerServiceImpl extends BaseServiceImpl<BannerDao, BannerEntity>
@Override
@Transactional(rollbackFor = Exception.class)
public void save(BannerDTO dto) {
public void saveOrUpdate(BannerDTO dto) {
UserDetail user = SecurityUser.getUser();
dto.setCreatorName(user.getRealName());
dto.setDeptId(user.getDeptId());
dto.setDeptName(user.getDeptName());
BannerEntity entity = ConvertUtils.sourceToTarget(dto, BannerEntity.class);
entity.setState(YesOrNoEnum.NO.value());
// 通知所属部门id
Long noticeDeptId = entity.getStreetId();
// 能接收通知的所有网格的ID
List<Long> noticeGridList = Lists.newArrayList();
if (null != entity.getCommunityId()) {
noticeDeptId = entity.getCommunityId();
}
if (null != entity.getGridId()) {
noticeDeptId = entity.getGridId();
noticeGridList.add(noticeDeptId);
}
if (!user.getDeptIdList().contains(noticeDeptId)) {
throw new RenException("您没有操作此部门的数据权限");
}
if (CollUtil.isEmpty(noticeGridList)) {
Result<List<Long>> adminResult = adminFeignClient.listGridIdByDeptPid(noticeDeptId);
if (!adminResult.success() || CollUtil.isEmpty(adminResult.getData())) {
throw new RenException("获取部门信息失败");
}
noticeGridList = adminResult.getData();
}
boolean isSave = true;
if (StringUtils.isNotBlank(dto.getId())) {
isSave = false;
}
if (isSave) {
insert(entity);
} else {
updateById(entity);
bannerDepartmentService.deleteByBannerId(entity.getId());
}
this.bannerDepartmentService.save(entity.getId(), noticeGridList);
}
@Override

4
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/BannerDepartmentDao.xml

@ -14,6 +14,8 @@
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="delFlag" column="DEL_FLAG"/>
</resultMap>
<delete id="deleteByBannerId">
DELETE FROM epdc_banner_department WHERE BANNER_ID = #{bannerId}
</delete>
</mapper>
Loading…
Cancel
Save