package com.bofeng.service; import com.baomidou.mybatisplus.toolkit.IdWorker; import com.bofeng.dao.*; import com.bofeng.entity.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service @Transactional(readOnly = true) public class UserOpenService { @Autowired private UserOpenMapper userOpenMapper; @Autowired private UserMapper userMapper; @Autowired private UserPlaceMapper userPlaceMapper; public UserOpen getUserByOpenId(String openId) { return userOpenMapper.selectById(openId); } public UserOpen getUserByUserId(Long userId) { return userOpenMapper.selectByUserId(userId); } @Transactional public int bindUserOpen(UserOpen userOpen, User user) { return userOpenMapper.insert(userOpen) + userMapper.insert(user); } @Transactional public int bindUser(UserOpen userOpen, User user, UserPlace userPlace) { if (userOpenMapper.selectById(userOpen.getOpenId())==null) { userOpenMapper.insert(userOpen); } if (userMapper.selectById(user.getUserId())==null) { userMapper.insert(user); } return userPlaceMapper.insert(userPlace); } @Autowired private UptownHomeMapper uptownHomeMapper; @Autowired private OwnerMapper ownerMapper; @Autowired private UserRoleMapper userRoleMapper; @Autowired private UptownHouseMapper uptownHouseMapper; @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public void saveUserInfo(Long userId, Integer userType, String linkman, String phone, Integer area, Long uptownId, Long unitId, String doorplate) { List list = userRoleMapper.getUserRoleByUserId(userId); if (list.size() == 0) { UserRole userRole = new UserRole(); userRole.setUrId(IdWorker.getId()); userRole.setUserId(userId); userRole.setRoleId(1); userRole.setUserCreate(userId); userRole.setUserUpdate(userId); userRole.setStatus(1); UptownHouse uptownHouse = new UptownHouse(); uptownHouse.setHouseId(IdWorker.getId()); uptownHouse.setUnitId(unitId); uptownHouse.setDoorplate(doorplate); uptownHouse.setStatus(1); uptownHouseMapper.insert(uptownHouse); UptownHome uptownHome = new UptownHome(); uptownHome.setHouseId(uptownHouse.getHouseId()); uptownHome.setLinkman(linkman); uptownHome.setPhone(phone); uptownHome.setYoung(0); uptownHome.setMiddle(0); uptownHome.setOld(0); uptownHome.setRemark(""); uptownHome.setStatus(1); uptownHomeMapper.insert(uptownHome); userRole.setPropertyId(uptownHome.getHouseId()); userRoleMapper.insert(userRole); } } @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public void changeUnitId(Long userId, Long unitId) { UptownHouse uptownHouse = uptownHouseMapper.getUptownHouseByUser(userId); uptownHouse.setUnitId(unitId); uptownHouseMapper.updateById(uptownHouse); } @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public void changeDoorplate(Long userId, String doorplate) { UptownHouse uptownHouse = uptownHouseMapper.getUptownHouseByUser(userId); uptownHouse.setDoorplate(doorplate); uptownHouseMapper.updateById(uptownHouse); } }