zhongrj
2023-11-08 b26de01b922f2185feb62a69f20540b8693fb49b
场所详情任务新增审核和修改,查询修改
9 files modified
226 ■■■■ changed files
src/main/java/org/springblade/modules/place/controller/PlaceExtController.java 22 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/entity/PlaceExtEntity.java 30 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.java 3 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/IPlaceExtService.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/IPlaceService.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/impl/PlaceExtServiceImpl.java 52 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java 87 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/place/controller/PlaceExtController.java
@@ -103,6 +103,28 @@
    }
    /**
     * 场所详情表 自定义更新
     * @param placeExt
     * @return
     */
    @PostMapping("/updatePlaceExt")
    @ApiOperation(value = "自定义更新", notes = "传入placeExt")
    public R updatePlaceExt(@RequestBody PlaceExtEntity placeExt) {
        return R.status(placeExtService.updatePlaceExt(placeExt));
    }
    /**
     * 场所详情表 审核
     * @param placeExt
     * @return
     */
    @PostMapping("/checkPlaceExt")
    @ApiOperation(value = "审核", notes = "传入placeExt")
    public R checkPlaceExt(@RequestBody PlaceExtEntity placeExt) {
        return R.status(placeExtService.checkPlaceExt(placeExt));
    }
    /**
     * 场所详情表 新增或修改
     */
    @PostMapping("/submit")
src/main/java/org/springblade/modules/place/entity/PlaceExtEntity.java
@@ -54,6 +54,12 @@
    private Long id;
    /**
     * 任务id
     */
    @ApiModelProperty(value = "任务id")
    private Long taskId;
    /**
     * 场所ID
     */
    @ApiModelProperty(value = "场所ID")
@@ -85,6 +91,30 @@
    private String planImageUrls;
    /**
     * 确认用户ID
     */
    @ApiModelProperty(value = "确认用户ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long confirmUserId;
    /**
     * 确认时间
     */
    @ApiModelProperty(value = "确认时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date confirmTime;
    /**
     * 确认标记 1:待审核  2:审核通过  3:审核不通过
     */
    @ApiModelProperty(value = "确认标记 1:待审核  2:审核通过  3:审核不通过")
    private Integer confirmFlag;
    /**
     * 确认意见
     */
    @ApiModelProperty(value = "确认意见")
    private String confirmNotion;
    /**
     * 创建人
     */
    @JsonSerialize(using = ToStringSerializer.class)
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.java
@@ -16,6 +16,7 @@
 */
package org.springblade.modules.place.mapper;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.place.entity.PlaceExtEntity;
import org.springblade.modules.place.vo.PlaceExtVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -37,7 +38,7 @@
     * @param placeExt
     * @return
     */
    List<PlaceExtVO> selectPlaceExtPage(IPage page, PlaceExtVO placeExt);
    List<PlaceExtVO> selectPlaceExtPage(IPage page,@Param("placeExt") PlaceExtVO placeExt);
}
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
@@ -4,7 +4,15 @@
    <!--自定义分页查询-->
    <select id="selectPlaceExtPage" resultType="org.springblade.modules.place.vo.PlaceExtVO">
        select * from jczz_place_ext where is_deleted = 0
        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
        <if test="placeExt.placeName != null and placeExt.placeName != ''">
            and jp.place_name like concat('%',#{placeExt.placeName},'%')
        </if>
        <if test="placeExt.confirmFlag != null">
            and jpe.confirm_flag = #{placeExt.confirmFlag}
        </if>
    </select>
src/main/java/org/springblade/modules/place/service/IPlaceExtService.java
@@ -39,5 +39,17 @@
     */
    IPage<PlaceExtVO> selectPlaceExtPage(IPage<PlaceExtVO> page, PlaceExtVO placeExt);
    /**
     * 场所详情表 自定义更新
     * @param placeExt
     * @return
     */
    boolean updatePlaceExt(PlaceExtEntity placeExt);
    /**
     * 场所详情表 审核
     * @param placeExt
     * @return
     */
    boolean checkPlaceExt(PlaceExtEntity placeExt);
}
src/main/java/org/springblade/modules/place/service/IPlaceService.java
@@ -49,5 +49,10 @@
     */
    List<TreeNode> selectPlaceNodeList(Long userId);
    /**
     * 场所信息自定义新增
     * @param placeVO
     * @return
     */
    Boolean addVO(PlaceVO placeVO);
}
src/main/java/org/springblade/modules/place/service/impl/PlaceExtServiceImpl.java
@@ -17,13 +17,20 @@
package org.springblade.modules.place.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.place.entity.PlaceExtEntity;
import org.springblade.modules.place.vo.PlaceExtVO;
import org.springblade.modules.place.mapper.PlaceExtMapper;
import org.springblade.modules.place.service.IPlaceExtService;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.task.entity.TaskEntity;
import org.springblade.modules.task.service.ITaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
/**
 * 场所详情表 服务实现类
@@ -34,10 +41,55 @@
@Service
public class PlaceExtServiceImpl extends ServiceImpl<PlaceExtMapper, PlaceExtEntity> implements IPlaceExtService {
    @Autowired
    private ITaskService taskService;
    /**
     * 自定义查询
     * @param page
     * @param placeExt
     * @return
     */
    @Override
    public IPage<PlaceExtVO> selectPlaceExtPage(IPage<PlaceExtVO> page, PlaceExtVO placeExt) {
        return page.setRecords(baseMapper.selectPlaceExtPage(page, placeExt));
    }
    /**
     * 场所详情表 自定义更新
     * @param placeExt
     * @return
     */
    @Override
    public boolean updatePlaceExt(PlaceExtEntity placeExt) {
        // 设置参数
        placeExt.setUpdateTime(new Date());
        placeExt.setUpdateUser(AuthUtil.getUserId());
        // 更新
        return updateById(placeExt);
    }
    /**
     * 场所详情表 审核
     * @param placeExt
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean checkPlaceExt(PlaceExtEntity placeExt) {
        boolean flag = false;
        // 设置更新时间
        placeExt.setConfirmTime(new Date());
        // 更新数据
        boolean b = updateById(placeExt);
        if (b) {
            // 更新任务表状态
            TaskEntity taskEntity = new TaskEntity();
            taskEntity.setId(placeExt.getTaskId());
            taskEntity.setStatus(placeExt.getConfirmFlag());
            flag = taskService.updateById(taskEntity);
        }
        // 返回
        return flag;
    }
}
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -64,53 +64,82 @@
        return baseMapper.selectPlaceNodeList(userId.toString());
    }
    /**
     * 场所信息自定义新增
     * @param placeVO
     * @return
     */
    @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());
        }
        // 绑定用户信息
        bindUserHandle(placeVO);
        // 新增场所信息
        boolean save = save(placeVO);
        // 场所标签信息绑定
        placeLabelBind(placeVO);
        // 返回结果
        return save;
    }
    /**
     * 场所标签信息绑定入库
     * @param placeVO
     */
    @Transactional(rollbackFor = Exception.class)
    public void placeLabelBind(PlaceVO 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);
        });
    }
    /**
     * 场所负责人和用户绑定
     * @param placeVO
     */
    @Transactional(rollbackFor = Exception.class)
    public void bindUserHandle(PlaceVO placeVO) {
        if (null!=placeVO.getPhone() && !placeVO.getPhone().equals("")) {
            //根据手机号查询库里的数据
            User userParams = new User();
            userParams.setPhone(placeVO.getPhone());
            User user = userService.getOne(Condition.getQueryWrapper(userParams));
        return save;
            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());
                // 目前暂定居民角色,默认密码为 123456
                newUser.setRoleId("1717429059648606209");
                newUser.setPassword("123456");
                // 用户新增
                boolean submit = userService.submit(newUser);
                //绑定id
                placeVO.setPrincipalUserId(newUser.getId());
                //给人员打上场所负责人的标签
                // 用户插入后同时给场所详情表插入一条该场所信息
                if (submit){
                }
            }
        }
    }
src/main/java/org/springblade/modules/place/vo/PlaceExtVO.java
@@ -32,4 +32,9 @@
public class PlaceExtVO extends PlaceExtEntity {
    private static final long serialVersionUID = 1L;
    /**
     * 场所名称
     */
    private String placeName;
}