123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- package fcb.project.manager.base.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import fcb.project.manager.base.entity.TmEstate;
- import fcb.project.manager.base.entity.TmHouse;
- import fcb.project.manager.base.dao.TmHouseDao;
- import fcb.project.manager.base.enums.DeleteStatus;
- import fcb.project.manager.base.enums.UuidPreEnum;
- import fcb.project.manager.base.service.ITmHouseService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import fdage.back.sdk.base.uuid.SnowFlakeUUidUtils;
- import io.swagger.models.auth.In;
- import lombok.extern.log4j.Log4j2;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.time.LocalDateTime;
- /**
- * <p>
- * 服务实现类
- * </p>
- *
- * @author abner
- * @since 2021-01-07
- */
- @Service
- @Log4j2
- public class TmHouseServiceImpl extends ServiceImpl<TmHouseDao, TmHouse> implements ITmHouseService {
- public IPage<TmHouse> getListByNameOrBelong(String houseTitle , Integer status, int type,
- String estateId , Long pageNum , Long pageSize){
- LambdaQueryWrapper<TmHouse> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.eq(TmHouse::getEstateId , estateId);
- if(StringUtils.isNotBlank(houseTitle)){
- lambdaQueryWrapper.like(TmHouse::getHouseTitle , houseTitle);
- }
- if(null != status){
- lambdaQueryWrapper.eq(TmHouse::getStatus , status);
- }
- lambdaQueryWrapper.eq(TmHouse::getType , type);
- // lambdaQueryWrapper.eq(TmHouse::getIsDelete , DeleteStatus.NOT_DELETE.getCode());
- IPage<TmHouse> page = new Page<>(pageNum , pageSize);
- return getBaseMapper().selectPage(page , lambdaQueryWrapper);
- }
- public int deleteHouseById(String houseId){
- if(StringUtils.isBlank(houseId)){
- return -1;
- }
- return getBaseMapper().deleteById(houseId);
- }
- public TmHouse getOneByNameAndEstate(String houseTitle , String estateId , int type){
- LambdaQueryWrapper<TmHouse> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- if(StringUtils.isNotBlank(houseTitle)){
- lambdaQueryWrapper.eq(TmHouse::getHouseTitle , houseTitle);
- }
- if(StringUtils.isNotBlank(estateId)){
- lambdaQueryWrapper.eq(TmHouse::getEstateId , estateId);
- }
- lambdaQueryWrapper.eq(TmHouse::getType , type);
- lambdaQueryWrapper.eq(TmHouse::getIsDelete , DeleteStatus.NOT_DELETE.getCode());
- lambdaQueryWrapper.last("limit 1");
- return getBaseMapper().selectOne(lambdaQueryWrapper);
- }
- @Transactional(rollbackFor = Exception.class)
- public boolean updateHouse(TmHouse tmHouse){
- if(null == tmHouse){
- return false;
- }
- if(null == tmHouse.getId()){
- log.info("主键ID为空,无法更房源信息");
- return false;
- }
- tmHouse.setUpdateTime(LocalDateTime.now());
- return 1 == getBaseMapper().updateById(tmHouse);
- }
- public TmHouse selectForUpdate(String id){
- LambdaQueryWrapper<TmHouse> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.eq(TmHouse::getId , id);
- lambdaQueryWrapper.last("for update");
- return getBaseMapper().selectOne(lambdaQueryWrapper);
- }
- public boolean insertNew(TmHouse tmHouse){
- if(StringUtils.isBlank(tmHouse.getId())){
- tmHouse.setId(SnowFlakeUUidUtils.generaUUid(null , null , UuidPreEnum.HOUSE_ID_PRE.getPre()));
- }
- tmHouse.setCreateTime(LocalDateTime.now());
- tmHouse.setUpdateTime(LocalDateTime.now());
- tmHouse.setIsDelete(DeleteStatus.NOT_DELETE.getCode());
- return 1 == getBaseMapper().insert(tmHouse);
- }
- public TmHouse getBySceneNumAndHouseId(String sceneNum , String projectId , String houseId){
- if(!StringUtils.isNoneBlank(sceneNum , projectId , houseId)){
- return null;
- }
- LambdaQueryWrapper<TmHouse> lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.eq(TmHouse::getSceneNum , sceneNum);
- lambdaQueryWrapper.eq(TmHouse::getEstateId , projectId);
- lambdaQueryWrapper.eq(TmHouse::getHouseId , houseId);
- return getBaseMapper().selectOne(lambdaQueryWrapper);
- }
- }
|