src/main/java/org/springblade/modules/place/controller/PlaceController.java
@@ -127,5 +127,24 @@ return R.status(placeService.removeByIds(Func.toLongList(ids))); } /** * 历史场所挂接处理-临时 * @param place * @return */ @GetMapping("/historyPlaceHandle") public R historyPlaceHandle(PlaceVO place) { return R.data(placeService.historyPlaceHandle(place)); } /** * 历史场所标签挂接处理-场所标签-临时 * @param place * @return */ @GetMapping("/historyPlaceLabelHandle") public R historyPlaceLabelHandle(PlaceVO place) { return R.data(placeService.historyPlaceLabelHandle(place)); } } src/main/java/org/springblade/modules/place/controller/PlaceExtController.java
@@ -60,6 +60,19 @@ PlaceExtEntity detail = placeExtService.getOne(Condition.getQueryWrapper(placeExt)); return R.data(PlaceExtWrapper.build().entityVO(detail)); } /** * 场所详情表 自定义详情 * @param placeExt * @return */ @GetMapping("/getDetail") @ApiOperation(value = "自定义详情", notes = "传入placeExt") public R<PlaceExtVO> getDetail(PlaceExtVO placeExt) { return R.data(placeExtService.getDetail(placeExt)); } /** * 场所详情表 分页 */ src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.java
@@ -40,5 +40,10 @@ */ List<PlaceExtVO> selectPlaceExtPage(IPage page,@Param("placeExt") PlaceExtVO placeExt); /** * 场所详情表 自定义详情 * @param placeExt * @return */ PlaceExtVO getDetail(@Param("placeExt") PlaceExtVO placeExt); } src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
@@ -2,6 +2,14 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.springblade.modules.place.mapper.PlaceExtMapper"> <resultMap id="detailMap" type="org.springblade.modules.place.vo.PlaceExtVO" autoMapping="true"> <id property="id" column="id"/> <collection property="placePractitioner" javaType="java.util.List" ofType="org.springblade.modules.place.vo.PlacePractitionerVO" autoMapping="true"> <id property="id" column="cid"/> </collection> </resultMap> <!--自定义分页查询--> <select id="selectPlaceExtPage" resultType="org.springblade.modules.place.vo.PlaceExtVO"> select jpe.*,jp.place_name as placeName from jczz_place_ext jpe @@ -18,5 +26,13 @@ </if> </select> <!--自定义详情查询--> <select id="getDetail" resultType="org.springblade.modules.place.vo.PlaceExtVO"> select jpe.*,jp.place_name as placeName from jczz_place_ext jpe left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0 where jpe.is_deleted = 0 and jpe.place_id = #{placeExt.placeId} </select> </mapper> src/main/java/org/springblade/modules/place/mapper/PlaceMapper.java
@@ -47,4 +47,29 @@ * @return */ List<TreeNode> selectPlaceNodeList(@Param("userId") String userId); /** * 插入用户标签 * @param userId * @param labelId */ int saveUserLabel(@Param("userId") Long userId,@Param("labelId") int labelId); /** * 查询所有的场所(手机号不为空) * @return */ List<PlaceVO> getPlaceNotNullPhone(); /** * 查询所有的场所 * @return */ List<PlaceVO> getAllHistoryPlace(); /** * 更新场所信息 * @param place */ int updatePlaceEntity(@Param("place") PlaceVO place); } src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -37,4 +37,27 @@ and principal_user_id = #{userId} </select> <!--插入用户标签--> <insert id="saveUserLabel"> insert into jczz_user_label(user_id,label_id,create_time,update_time) values(#{userId},#{labelId},now(),now()) </insert> <!--查询所有的场所(手机号不为空)--> <select id="getPlaceNotNullPhone" resultType="org.springblade.modules.place.vo.PlaceVO"> select link_person as username,link_tel as phone,std_id as houseCode from wgccp_place WHERE link_person !='' and link_tel!='' </select> <!--查询所有的场所--> <select id="getAllHistoryPlace" resultType="org.springblade.modules.place.vo.PlaceVO"> select place_id as id,third_level_id as label,std_id as houseCode from wgccp_place </select> <!--更新场所信息--> <update id="updatePlaceEntity"> update jczz_place set principal_user_id = #{place.principalUserId} WHERE house_code = #{place.houseCode} </update> </mapper> src/main/java/org/springblade/modules/place/service/IPlaceExtService.java
@@ -59,4 +59,11 @@ * @return */ boolean savePlaceExt(PlaceExtEntity placeExt); /** * 场所详情表 自定义详情 * @param placeExt * @return */ PlaceExtVO getDetail(PlaceExtVO placeExt); } src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -55,4 +55,19 @@ * @return */ Boolean addVO(PlaceVO placeVO); /** * 历史场所挂接处理-临时 * @param place * @return */ Object historyPlaceHandle(PlaceVO place); /** * 历史场所标签挂接处理-临时 * @param place * @return */ Object historyPlaceLabelHandle(PlaceVO place); } src/main/java/org/springblade/modules/place/service/impl/PlaceExtServiceImpl.java
@@ -16,10 +16,13 @@ */ package org.springblade.modules.place.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.modules.place.entity.PlaceEntity; import org.springblade.modules.place.entity.PlaceExtEntity; import org.springblade.modules.place.entity.PlacePractitionerEntity; import org.springblade.modules.place.service.IPlacePractitionerService; import org.springblade.modules.place.service.IPlaceService; import org.springblade.modules.place.vo.PlaceExtVO; import org.springblade.modules.place.mapper.PlaceExtMapper; @@ -33,6 +36,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; /** * 场所详情表 服务实现类 @@ -48,6 +52,9 @@ @Autowired private IPlaceService placeService; @Autowired private IPlacePractitionerService placePractitionerService; /** * 自定义查询 @@ -128,4 +135,20 @@ } return false; } /** * 场所详情表 自定义详情 * @param placeExt * @return */ @Override public PlaceExtVO getDetail(PlaceExtVO placeExt) { PlaceExtVO detail = baseMapper.getDetail(placeExt); // 查询从业人员信息 QueryWrapper<PlacePractitionerEntity> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("place_id",placeExt.getPlaceId()); detail.setPlacePractitioner(placePractitionerService.list(queryWrapper)); // 返回 return detail; } } src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -16,6 +16,7 @@ */ package org.springblade.modules.place.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.AllArgsConstructor; import org.springblade.common.node.TreeNode; @@ -116,7 +117,8 @@ * @param placeVO */ @Transactional(rollbackFor = Exception.class) public void bindUserHandle(PlaceVO placeVO) { public User bindUserHandle(PlaceVO placeVO) { User newUser = new User(); if (null!=placeVO.getPhone() && !placeVO.getPhone().equals("")) { //根据手机号查询库里的数据 User userParams = new User(); @@ -126,9 +128,9 @@ if (user != null) { //如果用户存在,则该用户id绑定场所 placeVO.setPrincipalUserId(user.getId()); return user; } else { //如果用户不存在,则新增一个用户 User newUser = new User(); newUser.setAccount(placeVO.getPhone()); newUser.setPhone(placeVO.getPhone()); newUser.setName(placeVO.getUsername()); @@ -141,17 +143,69 @@ //绑定id placeVO.setPrincipalUserId(newUser.getId()); //给人员打上场所负责人的标签 baseMapper.saveUserLabel(newUser.getId(),1002); // 用户插入后同时给场所详情表插入一条该场所信息 if (submit){ PlaceExtEntity placeExtEntity = new PlaceExtEntity(); placeExtEntity.setPlaceId(placeVO.getId()); //新增 placeExtService.savePlaceExt(placeExtEntity); // 判断是否已存在,已存在则不新增 QueryWrapper<PlaceExtEntity> wrapper = new QueryWrapper<>(); wrapper.eq("is_deleted",0) .eq("place_id",placeVO.getId()); PlaceExtEntity one = placeExtService.getOne(wrapper); if (null == one) { //新增 placeExtService.savePlaceExt(placeExtEntity); } } } } return newUser; } /** * 历史场所挂接处理-临时 * @param place * @return */ @Override public Object historyPlaceHandle(PlaceVO place) { // 查询所有的场所(手机号不为空) List<PlaceVO> list = baseMapper.getPlaceNotNullPhone(); // 遍历 for (PlaceVO placeVO : list) { User user = bindUserHandle(placeVO); if (null!=user){ placeVO.setPrincipalUserId(user.getId()); //更新场所用户id绑定 baseMapper.updatePlaceEntity(placeVO); } } return null; } /** * 历史场所标签挂接处理-临时 * @param place * @return */ @Override @Transactional public Object historyPlaceLabelHandle(PlaceVO place) { // 查询所有的场所 List<PlaceVO> list = baseMapper.getAllHistoryPlace(); // 遍历 for (PlaceVO placeVO : list) { if (null!=placeVO.getLabel()){ String[] split = placeVO.getLabel().split(","); for (String s : split) { PlacePoiLabel placePoiLabel = new PlacePoiLabel(); placePoiLabel.setPlaceId(placeVO.getId()); placePoiLabel.setPoiCode(Integer.parseInt(s)); placePoiLabelService.save(placePoiLabel); } } } return null; } } src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
@@ -20,6 +20,10 @@ import org.springblade.core.tool.node.INode; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.modules.place.entity.PlacePractitionerEntity; import java.util.ArrayList; import java.util.List; /** * 场所详情表 视图实体类 @@ -42,4 +46,9 @@ */ private String houseCode; /** * 从业人员 */ private List<PlacePractitionerEntity> placePractitioner = new ArrayList<>(); }