| | |
| | | package org.springblade.modules.place.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springblade.common.node.TreeNode; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.modules.place.entity.PlaceEntity; |
| | | import org.springblade.modules.place.entity.PlacePoiLabel; |
| | | import org.springblade.modules.place.service.IPlacePoiLabelService; |
| | | import org.springblade.modules.place.vo.PlaceVO; |
| | | import org.springblade.modules.place.mapper.PlaceMapper; |
| | | import org.springblade.modules.place.service.IPlaceService; |
| | | import org.springblade.core.mp.base.BaseServiceImpl; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springframework.stereotype.Service; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | * @since 2023-10-28 |
| | | */ |
| | | @Service |
| | | @AllArgsConstructor |
| | | public class PlaceServiceImpl extends ServiceImpl<PlaceMapper, PlaceEntity> implements IPlaceService { |
| | | private final IUserService userService; |
| | | private final IPlacePoiLabelService placePoiLabelService; |
| | | |
| | | @Override |
| | | public IPage<PlaceVO> selectPlacePage(IPage<PlaceVO> page, PlaceVO place) { |
| | |
| | | public List<TreeNode> selectPlaceNodeList(Long userId) { |
| | | return baseMapper.selectPlaceNodeList(userId.toString()); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Boolean addVO(PlaceVO placeVO) { |
| | | |
| | | placeVO.setCreateUser(AuthUtil.getUserId()); |
| | | placeVO.setCreateTime(new Date()); |
| | | placeVO.setUpdateUser(AuthUtil.getUserId()); |
| | | placeVO.setUpdateTime(new Date()); |
| | | |
| | | //根据手机号查询库里的数据 |
| | | User userParams = new User(); |
| | | userParams.setPhone(placeVO.getPhone()); |
| | | User user = userService.getOne(Condition.getQueryWrapper(userParams)); |
| | | |
| | | if (user != null){ |
| | | //如果用户存在,则该用户id绑定场所 |
| | | placeVO.setPrincipalUserId(user.getId()); |
| | | }else{ |
| | | //如果用户不存在,则新增一个用户 |
| | | User newUser = new User(); |
| | | newUser.setAccount(placeVO.getPhone()); |
| | | newUser.setPhone(placeVO.getPhone()); |
| | | |
| | | newUser.setName(placeVO.getUsername()); |
| | | newUser.setRealName(placeVO.getUsername()); |
| | | newUser.setRoleId("1717429193350434818"); |
| | | newUser.setPassword("123456"); |
| | | |
| | | userService.submit(newUser); |
| | | //绑定id |
| | | placeVO.setPrincipalUserId(newUser.getId()); |
| | | } |
| | | |
| | | boolean save = save(placeVO); |
| | | |
| | | |
| | | List<String> labelList = Arrays.asList(placeVO.getLabel().split(",")); |
| | | |
| | | labelList.forEach(labelId->{ |
| | | PlacePoiLabel placePoiLabel = new PlacePoiLabel(); |
| | | placePoiLabel.setPlaceId(placeVO.getId()); |
| | | placePoiLabel.setPoiCode(Integer.parseInt(labelId)); |
| | | placePoiLabelService.save(placePoiLabel); |
| | | }); |
| | | |
| | | |
| | | return save; |
| | | } |
| | | |
| | | |
| | | } |