Commit f399dda8 authored by libin's avatar libin

旅游标签

parent b12b237d
package com.xxfc.platform.tour.biz; package com.xxfc.platform.tour.biz;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.common.util.EntityUtils;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.tour.dto.TourTagBannerDTO; import com.xxfc.platform.tour.dto.TourTagBannerDTO;
import com.xxfc.platform.tour.mapper.TourTagBannerMapper; import com.xxfc.platform.tour.mapper.TourTagBannerMapper;
...@@ -16,6 +15,7 @@ import java.time.Instant; ...@@ -16,6 +15,7 @@ import java.time.Instant;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* 标签轮播图 * 标签轮播图
...@@ -27,11 +27,7 @@ import java.util.Objects; ...@@ -27,11 +27,7 @@ import java.util.Objects;
@Service @Service
public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner> { public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner> {
private List<TourTagBannerDTO> tourTagBannerDTOS;
public List<TourTagBanner> findById(long tid) { public List<TourTagBanner> findById(long tid) {
TourTagBanner tourTagBanner = new TourTagBanner(); TourTagBanner tourTagBanner = new TourTagBanner();
tourTagBanner.setId(tid); tourTagBanner.setId(tid);
tourTagBanner.setIsDel(0); tourTagBanner.setIsDel(0);
...@@ -84,7 +80,7 @@ public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner> ...@@ -84,7 +80,7 @@ public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner>
* @return * @return
*/ */
public List<TourTagBannerDTO> findTourTagBannersByTagId(Integer tagId) { public List<TourTagBannerDTO> findTourTagBannersByTagId(Integer tagId) {
List<TourTagBanner> tourTagBanners = mapper.findByTagId(tagId); List<TourTagBanner> tourTagBanners = mapper.findByTagId(tagId,0);
List<TourTagBannerDTO> tourTagBannerDTOS = new ArrayList<>(tourTagBanners.size()); List<TourTagBannerDTO> tourTagBannerDTOS = new ArrayList<>(tourTagBanners.size());
for (TourTagBanner tourTagBanner : tourTagBanners) { for (TourTagBanner tourTagBanner : tourTagBanners) {
TourTagBannerDTO tourTagBannerDTO = new TourTagBannerDTO(); TourTagBannerDTO tourTagBannerDTO = new TourTagBannerDTO();
...@@ -111,9 +107,8 @@ public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner> ...@@ -111,9 +107,8 @@ public class TourTagBannerBiz extends BaseBiz<TourTagBannerMapper,TourTagBanner>
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateTourBannerByBatch(List<TourTagBannerDTO> tourTagBannerDTOS,UserDTO userDTO) { public void updateTourBannerByBatch(List<TourTagBannerDTO> tourTagBannerDTOS,UserDTO userDTO) {
tourTagBannerDTOS.stream().filter(tourTagBannerDTO -> Objects.nonNull(tourTagBannerDTO.getId())).peek(tourTagBannerDTO -> EntityUtils.setUpdatedInfo(tourTagBannerDTO)).forEach(tourTagBannerDTO -> { List<Long> tourTagBannerIds = tourTagBannerDTOS.stream().filter(tourTagBannerDTO -> Objects.nonNull(tourTagBannerDTO.getId())).map(TourTagBannerDTO::getId).collect(Collectors.toList());
updateTourBanner(tourTagBannerDTO,userDTO); mapper.updateTourBannerStatusByTagannerIdsAndTagId(tourTagBannerIds,tourTagBannerDTOS.get(0).getTagId(),1);
});
tourTagBannerDTOS.stream().filter(tourTagBannerDTO -> Objects.isNull(tourTagBannerDTO.getId())).peek(tourTagBannerDTO -> { tourTagBannerDTOS.stream().filter(tourTagBannerDTO -> Objects.isNull(tourTagBannerDTO.getId())).peek(tourTagBannerDTO -> {
save(tourTagBannerDTO,userDTO); save(tourTagBannerDTO,userDTO);
}).count(); }).count();
......
...@@ -8,6 +8,7 @@ import com.xxfc.platform.tour.dto.TourTagAndBannerDTO; ...@@ -8,6 +8,7 @@ import com.xxfc.platform.tour.dto.TourTagAndBannerDTO;
import com.xxfc.platform.tour.dto.TourTagBannerDTO; import com.xxfc.platform.tour.dto.TourTagBannerDTO;
import com.xxfc.platform.tour.dto.TourTagDTO; import com.xxfc.platform.tour.dto.TourTagDTO;
import com.xxfc.platform.tour.mapper.TourTagMapper; import com.xxfc.platform.tour.mapper.TourTagMapper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -131,8 +132,6 @@ public class TourTagBiz extends BaseBiz<TourTagMapper,TourTag> { ...@@ -131,8 +132,6 @@ public class TourTagBiz extends BaseBiz<TourTagMapper,TourTag> {
tourTagDTO.setRank(tourTagDTO.getRank()==null?0:tourTagDTO.getRank()); tourTagDTO.setRank(tourTagDTO.getRank()==null?0:tourTagDTO.getRank());
tourTagDTO.setIsHot(0); tourTagDTO.setIsHot(0);
//保存标签 //保存标签
/* TourTag tourTag = new TourTag();
BeanUtils.copyProperties(tourTagDTO,tourTag);*/
int effectRows = mapper.save(tourTagDTO); int effectRows = mapper.save(tourTagDTO);
if (effectRows==0){ if (effectRows==0){
return effectRows; return effectRows;
...@@ -193,4 +192,23 @@ public class TourTagBiz extends BaseBiz<TourTagMapper,TourTag> { ...@@ -193,4 +192,23 @@ public class TourTagBiz extends BaseBiz<TourTagMapper,TourTag> {
public int updateTourTagHotSate(Integer id, Integer state) { public int updateTourTagHotSate(Integer id, Integer state) {
return mapper.updateTourTagHotSate(id,state); return mapper.updateTourTagHotSate(id,state);
} }
/**
* 根据标签名查询是否存在
* @param name
* @return
*/
public boolean checkTagNameExist(String name) {
List<TourTag> tourTags = mapper.findByTagName(name);
return CollectionUtils.isNotEmpty(tourTags);
}
/**
* 根据旅游标签状态查询
* @param status
* @return
*/
public List<TourTag> findTourTagNameAndIdsByStatus(Integer status){
return mapper.selectByStuatus(status);
}
} }
\ No newline at end of file
...@@ -2,6 +2,7 @@ package com.xxfc.platform.tour.mapper; ...@@ -2,6 +2,7 @@ package com.xxfc.platform.tour.mapper;
import com.xxfc.platform.tour.dto.TourTagBannerDTO; import com.xxfc.platform.tour.dto.TourTagBannerDTO;
import com.xxfc.platform.tour.entity.TourTagBanner; import com.xxfc.platform.tour.entity.TourTagBanner;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update; import org.apache.ibatis.annotations.Update;
...@@ -39,8 +40,8 @@ public interface TourTagBannerMapper extends Mapper<TourTagBanner> { ...@@ -39,8 +40,8 @@ public interface TourTagBannerMapper extends Mapper<TourTagBanner> {
* @param tagId * @param tagId
* @return * @return
*/ */
@Select("select * from tour_tag_banner where `tag_id`=#{tagId}") @Select("select * from tour_tag_banner where `tag_id`=#{tagId} and `is_del`=#{status}")
List<TourTagBanner> findByTagId(@Param("tagId") Integer tagId); List<TourTagBanner> findByTagId(@Param("tagId") Integer tagId,@Param("status") Integer status);
/** /**
* 根据标签id更新banner状态 * 根据标签id更新banner状态
...@@ -56,6 +57,15 @@ public interface TourTagBannerMapper extends Mapper<TourTagBanner> { ...@@ -56,6 +57,15 @@ public interface TourTagBannerMapper extends Mapper<TourTagBanner> {
* @param tourTagBannerDTO * @param tourTagBannerDTO
* @return * @return
*/ */
@Update("update tour_tag_banner set `title`=#{title},`cover`=#{cover},`upd_time`=#{updTime},`upd_name`=#{updName},`url`=#{url},`is_del`=#{isDel} where `id`=#{id}") @Update("update tour_tag_banner set `title`=#{title},`cover`=#{cover},`upd_time`=#{updTime},`upd_name`=#{updName},`url`=#{url} where `id`=#{id}")
int updateTourTagBanner(TourTagBannerDTO tourTagBannerDTO); int updateTourTagBanner(TourTagBannerDTO tourTagBannerDTO);
/**
* 根据标签id 设置除了tourTagBannerIds集合中的id 的tagbanner状态
* @param tourTagBannerIds
* @param tagId
* @param status
*/
void updateTourBannerStatusByTagannerIdsAndTagId(@Param("tourTagBannerIds") List<Long> tourTagBannerIds, @Param("tagId") Integer tagId,@Param("status") Integer status);
} }
...@@ -55,4 +55,10 @@ public interface TourTagMapper extends Mapper<TourTag> { ...@@ -55,4 +55,10 @@ public interface TourTagMapper extends Mapper<TourTag> {
@Update("update tour_tag set `is_hot`=#{state} where `id`=#{id}") @Update("update tour_tag set `is_hot`=#{state} where `id`=#{id}")
int updateTourTagHotSate(@Param("id") Integer id, @Param("state") Integer state); int updateTourTagHotSate(@Param("id") Integer id, @Param("state") Integer state);
@Select("select * from tour_tag where name=#{name}")
List<TourTag> findByTagName(String name);
@Select("select `id`,`name` from tour_tag where `is_del`=#{status}")
List<TourTag> selectByStuatus(Integer status);
} }
package com.xxfc.platform.tour.rest.admin; package com.xxfc.platform.tour.rest.admin;
import com.github.wxiaoqi.security.common.annotation.BeanValid;
import com.github.wxiaoqi.security.common.annotation.SimpleValid;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.tour.biz.TourTagBiz; import com.xxfc.platform.tour.biz.TourTagBiz;
...@@ -7,8 +10,12 @@ import com.xxfc.platform.tour.common.TourBaseController; ...@@ -7,8 +10,12 @@ import com.xxfc.platform.tour.common.TourBaseController;
import com.xxfc.platform.tour.dto.TourTagAndBannerDTO; import com.xxfc.platform.tour.dto.TourTagAndBannerDTO;
import com.xxfc.platform.tour.entity.TourTag; import com.xxfc.platform.tour.entity.TourTag;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import lombok.SneakyThrows;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/** /**
* @author libin * @author libin
...@@ -113,4 +120,27 @@ public class TourTagAdminController extends TourBaseController<TourTagBiz> { ...@@ -113,4 +120,27 @@ public class TourTagAdminController extends TourBaseController<TourTagBiz> {
} }
return ObjectRestResponse.createDefaultFail(); return ObjectRestResponse.createDefaultFail();
} }
/**
*校验标签名是否存在
* @param name
* @return
*/
@GetMapping("/exist")
@ApiOperation("校验标签名是否存在")
public ObjectRestResponse checkTagNameExists(@RequestParam("name") String name){
boolean exist = getBaseBiz().checkTagNameExist(name);
return ObjectRestResponse.succ(exist);
}
/**
* 获取标签名和id
* @return
*/
@GetMapping("/tags")
@ApiOperation("获取标签名和id")
public ObjectRestResponse getTourTageNameAndIds(){
List<TourTag> tourTags = getBaseBiz().findTourTagNameAndIdsByStatus(0);
return ObjectRestResponse.succ(tourTags);
}
} }
\ No newline at end of file
...@@ -16,4 +16,11 @@ ...@@ -16,4 +16,11 @@
<result property="isDel" column="is_del"/> <result property="isDel" column="is_del"/>
</resultMap> </resultMap>
<delete id="updateTourBannerStatusByTagannerIdsAndTagId">
update tour_tag_banner set `is_del`=#{status} where tag_id=#{tagId} and id not in
<foreach collection="tourTagBannerIds" item="id" index="index" open="(" close=")" separator=",">
#{id}
</foreach>
</delete>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment