package com.panzhihua.service_community.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.enums.OpsHouseStatus;
|
import com.panzhihua.common.model.dtos.community.ComOpsHouseDTO;
|
import com.panzhihua.common.model.dtos.community.PageComOpsHouseDTO;
|
import com.panzhihua.common.model.vos.LoginUserInfoVO;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.common.model.vos.community.ComOpsHouseUndercarriageVO;
|
import com.panzhihua.common.model.vos.community.ComOpsHouseVO;
|
import com.panzhihua.common.utlis.StringUtils;
|
import com.panzhihua.service_community.dao.ComOpsHouseDAO;
|
import com.panzhihua.service_community.model.dos.ComOpsHouseDO;
|
import com.panzhihua.service_community.service.ComOpsHouseService;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.util.ObjectUtils;
|
|
import javax.annotation.Resource;
|
|
/**
|
* @program: springcloud_k8s_panzhihuazhihuishequ
|
* @description: 房屋租售
|
* @author: huang.hongfa weixin hhf9596 qq 959656820
|
* @create: 2021-01-22 14:51
|
**/
|
@Service
|
public class ComOpsHouseServiceImpl implements ComOpsHouseService {
|
@Resource
|
private ComOpsHouseDAO comOpsHouseDAO;
|
|
/**
|
* 房屋租售-新增
|
*
|
* @param comOpsHouseDTO 新增参数
|
* @return 新增结果
|
*/
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public R addHouse(ComOpsHouseDTO comOpsHouseDTO) {
|
ComOpsHouseDO comOpsHouseDO=new ComOpsHouseDO();
|
BeanUtils.copyProperties(comOpsHouseDTO,comOpsHouseDO);
|
comOpsHouseDAO.insert(comOpsHouseDO);
|
return R.ok();
|
}
|
|
/**
|
* 房屋租售-详情
|
*
|
* @param id 主键
|
* @return ComOpsHouseVO
|
*/
|
@Override
|
public R detailHouse(Long id) {
|
ComOpsHouseDO comOpsHouseDO = comOpsHouseDAO.selectById(id);
|
if (ObjectUtils.isEmpty(comOpsHouseDO)) {
|
return R.fail("房屋租售不存在");
|
}
|
ComOpsHouseVO comOpsHouseVO=new ComOpsHouseVO();
|
BeanUtils.copyProperties(comOpsHouseDO,comOpsHouseVO);
|
Long userId = comOpsHouseDO.getUserId();
|
LoginUserInfoVO loginUserInfoVO=comOpsHouseDAO.selectUserByUserId(userId);
|
comOpsHouseVO.setUserName(loginUserInfoVO.getName());
|
|
return R.ok(comOpsHouseVO);
|
}
|
|
/**
|
* 房屋租售-修改
|
* @param comOpsHouseVO 修改参数
|
* @return 修改结果
|
*/
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public R putHouse(ComOpsHouseVO comOpsHouseVO) {
|
ComOpsHouseDO comOpsHouseDO=new ComOpsHouseDO();
|
BeanUtils.copyProperties(comOpsHouseVO,comOpsHouseDO);
|
comOpsHouseDAO.updateById(comOpsHouseDO);
|
return R.ok();
|
}
|
|
/**
|
* 房屋租售-删除
|
*
|
* @param id 主键
|
* @return 删除结果
|
*/
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public R deleteHouse(Long id) {
|
if(id == null){
|
return R.fail("参数错误");
|
}
|
ComOpsHouseDO oldComOpsHouseDO = comOpsHouseDAO.selectById(id);
|
if(oldComOpsHouseDO == null){
|
return R.fail("该房屋租售信息不存在");
|
}
|
if(oldComOpsHouseDO.getStatus().equals(OpsHouseStatus.AUDIT.getCode())){
|
return R.fail("该房屋租售信息不可删除,请刷新");
|
}
|
|
int delete = comOpsHouseDAO.deleteById(id);
|
if (delete>0) {
|
return R.ok();
|
}
|
return R.fail();
|
}
|
|
/**
|
* 房屋租售-分页查询
|
*
|
* @param pageComOpsHouseDTO 查询参数
|
* @return ComOpsHouseVO
|
*/
|
@Override
|
public R pageHouse(PageComOpsHouseDTO pageComOpsHouseDTO) {
|
Page page = new Page<>();
|
Long pageNum = pageComOpsHouseDTO.getPageNum();
|
Long pageSize = pageComOpsHouseDTO.getPageSize();
|
if (null==pageNum||0==pageNum) {
|
pageNum = 1l;
|
}
|
if (null==pageSize||0==pageSize) {
|
pageSize = 10l;
|
}
|
page.setSize(pageSize);
|
page.setCurrent(pageNum);
|
if(!StringUtils.isEmpty(pageComOpsHouseDTO.getUserName())){
|
Long userId = comOpsHouseDAO.selectUserIdByName(pageComOpsHouseDTO.getUserName());
|
if (userId==null){
|
userId = -1L;
|
}
|
pageComOpsHouseDTO.setUserId(userId);
|
}
|
IPage<ComOpsHouseVO> iPage = comOpsHouseDAO.pageHouse(page, pageComOpsHouseDTO);
|
return R.ok(iPage);
|
|
}
|
|
/**
|
* 房屋租售-上下架
|
* @param comOpsHouseVO 上下架参数
|
* @return 上下架结果
|
*/
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public R undercarriageHouse(ComOpsHouseUndercarriageVO comOpsHouseVO) {
|
|
//判断当前房屋租售信息状态
|
ComOpsHouseDO oldComOpsHouseDO = comOpsHouseDAO.selectById(comOpsHouseVO.getId());
|
if(oldComOpsHouseDO == null){
|
return R.fail("该房屋租售信息不存在");
|
}
|
if(oldComOpsHouseDO.getStatus().equals(OpsHouseStatus.AUDIT.getCode())){
|
return R.fail("该房屋租售信息不可修改,请刷新");
|
}
|
|
BeanUtils.copyProperties(comOpsHouseVO,oldComOpsHouseDO);
|
comOpsHouseDAO.updateById(oldComOpsHouseDO);
|
return R.ok();
|
}
|
|
/**
|
* 房屋租售-小程序修改
|
* @param comOpsHouseVO 修改参数
|
* @return 修改结果
|
*/
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public R putHouseByApplets(ComOpsHouseVO comOpsHouseVO) {
|
|
ComOpsHouseDO oldComOpsHouseDO = comOpsHouseDAO.selectById(comOpsHouseVO.getId());
|
if(oldComOpsHouseDO == null){
|
return R.fail("该房屋租售信息不存在");
|
}
|
if(oldComOpsHouseDO.getStatus().equals(OpsHouseStatus.AUDIT.getCode())){
|
return R.fail("该房屋租售信息不可修改,请刷新");
|
}
|
|
ComOpsHouseDO comOpsHouseDO=new ComOpsHouseDO();
|
BeanUtils.copyProperties(comOpsHouseVO,comOpsHouseDO);
|
//设置房屋租售信息为待审核
|
comOpsHouseDO.setStatus(OpsHouseStatus.AUDIT.getCode());
|
comOpsHouseDAO.updateById(comOpsHouseDO);
|
return R.ok();
|
}
|
|
}
|