lin
2024-04-03 81de59896ad0d5b5fb4f3c11e842ebdebe92188a
添加轨迹记录表
1 files modified
9 files added
511 ■■■■■ changed files
src/main/java/org/springblade/modules/discuss/mapper/UserTopicsMapper.xml 3 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/controller/PolicTrajectoryPointController.java 126 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/dto/PolicTrajectoryPointDTO.java 34 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/entity/PolicTrajectoryPointEntity.java 70 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/mapper/PolicTrajectoryPointMapper.java 58 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/mapper/PolicTrajectoryPointMapper.xml 49 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/service/IPolicTrajectoryPointService.java 43 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/service/impl/PolicTrajectoryPointServiceImpl.java 43 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/vo/PolicTrajectoryPointVO.java 35 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/policTrajectoryPoint/wrapper/PolicTrajectoryPointWrapper.java 50 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/discuss/mapper/UserTopicsMapper.xml
@@ -202,7 +202,8 @@
        LEFT JOIN blade_user bu ON jh.associated_user_id = bu.id AND bu.is_deleted = 0
        LEFT JOIN jczz_house jhs on jhs.house_code= jda.address_code
        <where>
            and jt.discuss_content = '业委会成员候选名单'
            and jt.discuss_content != '议事规则'
            and jt.discuss_content != '管理规约'
            <if test="id != null ">and jut.id = #{id}</if>
            <if test="name != null and name != ''">
                and bu.name like concat('%',#{name},'%')
src/main/java/org/springblade/modules/policTrajectoryPoint/controller/PolicTrajectoryPointController.java
New file
@@ -0,0 +1,126 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.modules.policTrajectoryPoint.vo.PolicTrajectoryPointVO;
import org.springblade.modules.policTrajectoryPoint.wrapper.PolicTrajectoryPointWrapper;
import org.springblade.modules.policTrajectoryPoint.service.IPolicTrajectoryPointService;
import org.springblade.core.boot.ctrl.BladeController;
/**
 * 用户轨迹记录 控制器
 *
 * @author BladeX
 * @since 2024-04-02
 */
@RestController
@AllArgsConstructor
@RequestMapping("blade-policTrajectoryPoint/policTrajectoryPoint")
@Api(value = "用户轨迹记录", tags = "用户轨迹记录接口")
public class PolicTrajectoryPointController extends BladeController {
    private final IPolicTrajectoryPointService policTrajectoryPointService;
    /**
     * 用户轨迹记录 详情
     */
    @GetMapping("/detail")
    @ApiOperationSupport(order = 1)
    @ApiOperation(value = "详情", notes = "传入policTrajectoryPoint")
    public R<PolicTrajectoryPointVO> detail(PolicTrajectoryPointEntity policTrajectoryPoint) {
        PolicTrajectoryPointEntity detail = policTrajectoryPointService.getOne(Condition.getQueryWrapper(policTrajectoryPoint));
        return R.data(PolicTrajectoryPointWrapper.build().entityVO(detail));
    }
    /**
     * 用户轨迹记录 分页
     */
    @GetMapping("/list")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页", notes = "传入policTrajectoryPoint")
    public R<IPage<PolicTrajectoryPointVO>> list(PolicTrajectoryPointEntity policTrajectoryPoint, Query query) {
        IPage<PolicTrajectoryPointEntity> pages = policTrajectoryPointService.page(Condition.getPage(query), Condition.getQueryWrapper(policTrajectoryPoint));
        return R.data(PolicTrajectoryPointWrapper.build().pageVO(pages));
    }
    /**
     * 用户轨迹记录 自定义分页
     */
    @GetMapping("/page")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入policTrajectoryPoint")
    public R<IPage<PolicTrajectoryPointVO>> page(PolicTrajectoryPointVO policTrajectoryPoint, Query query) {
        IPage<PolicTrajectoryPointVO> pages = policTrajectoryPointService.selectPolicTrajectoryPointPage(Condition.getPage(query), policTrajectoryPoint);
        return R.data(pages);
    }
    /**
     * 用户轨迹记录 新增
     */
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入policTrajectoryPoint")
    public R save(@Valid @RequestBody PolicTrajectoryPointEntity policTrajectoryPoint) {
        return R.status(policTrajectoryPointService.save(policTrajectoryPoint));
    }
    /**
     * 用户轨迹记录 修改
     */
    @PostMapping("/update")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入policTrajectoryPoint")
    public R update(@Valid @RequestBody PolicTrajectoryPointEntity policTrajectoryPoint) {
        return R.status(policTrajectoryPointService.updateById(policTrajectoryPoint));
    }
    /**
     * 用户轨迹记录 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperationSupport(order = 6)
    @ApiOperation(value = "新增或修改", notes = "传入policTrajectoryPoint")
    public R submit(@Valid @RequestBody PolicTrajectoryPointEntity policTrajectoryPoint) {
        return R.status(policTrajectoryPointService.saveOrUpdate(policTrajectoryPoint));
    }
    /**
     * 用户轨迹记录 删除
     */
    @PostMapping("/remove")
    @ApiOperationSupport(order = 7)
    @ApiOperation(value = "逻辑删除", notes = "传入ids")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(policTrajectoryPointService.removeBatchByIds(Func.toLongList(ids)));
    }
}
src/main/java/org/springblade/modules/policTrajectoryPoint/dto/PolicTrajectoryPointDTO.java
New file
@@ -0,0 +1,34 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.dto;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 用户轨迹记录 数据传输对象实体类
 *
 * @author BladeX
 * @since 2024-04-02
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class PolicTrajectoryPointDTO extends PolicTrajectoryPointEntity {
    private static final long serialVersionUID = 1L;
}
src/main/java/org/springblade/modules/policTrajectoryPoint/entity/PolicTrajectoryPointEntity.java
New file
@@ -0,0 +1,70 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import java.util.Date;
/**
 * 用户轨迹记录 实体类
 *
 * @author BladeX
 * @since 2024-04-02
 */
@Data
@TableName("jczz_polic_trajectory_point")
@ApiModel(value = "PolicTrajectoryPoint对象", description = "用户轨迹记录")
public class PolicTrajectoryPointEntity   {
    /** id */
    @ApiModelProperty(value = "主键ID", example = "")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /** 用户id */
    @ApiModelProperty(value = "用户id", example = "")
    @TableField("user_id")
    private Long userId;
    /** 纬度 */
    @ApiModelProperty(value = "纬度", example = "")
    @TableField("latitude")
    private Double latitude;
    /** 经度 */
    @ApiModelProperty(value = "经度", example = "")
    @TableField("longitude")
    private Double longitude;
    /** 创建时间 */
    @ApiModelProperty(value = "创建时间", example = "")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField("create_time")
    private Date createTime;
}
src/main/java/org/springblade/modules/policTrajectoryPoint/mapper/PolicTrajectoryPointMapper.java
New file
@@ -0,0 +1,58 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.mapper;
import org.springblade.modules.policTrajectoryPoint.dto.PolicTrajectoryPointDTO;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.modules.policTrajectoryPoint.vo.PolicTrajectoryPointVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
 * 用户轨迹记录 Mapper 接口
 *
 * @author BladeX
 * @since 2024-04-02
 */
public interface PolicTrajectoryPointMapper extends BaseMapper<PolicTrajectoryPointEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param policTrajectoryPoint
     * @return
     */
    List<PolicTrajectoryPointVO> selectPolicTrajectoryPointPage(IPage page, PolicTrajectoryPointVO policTrajectoryPoint);
    /**
     * 查询用户轨迹记录
     *
     * @param id 用户轨迹记录ID
     * @return 用户轨迹记录
     */
    public PolicTrajectoryPointDTO selectPolicTrajectoryPointById(Long id);
    /**
     * 查询用户轨迹记录列表
     *
     * @param policTrajectoryPointDTO 用户轨迹记录
     * @return 用户轨迹记录集合
     */
    public List<PolicTrajectoryPointDTO> selectPolicTrajectoryPointList(PolicTrajectoryPointDTO policTrajectoryPointDTO);
}
src/main/java/org/springblade/modules/policTrajectoryPoint/mapper/PolicTrajectoryPointMapper.xml
New file
@@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.modules.policTrajectoryPoint.mapper.PolicTrajectoryPointMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="policTrajectoryPointResultMap" type="org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity">
    </resultMap>
    <select id="selectPolicTrajectoryPointPage" resultMap="policTrajectoryPointResultMap">
        select * from jczz_polic_trajectory_point where is_deleted = 0
    </select>
    <resultMap type="org.springblade.modules.policTrajectoryPoint.dto.PolicTrajectoryPointDTO" id="PolicTrajectoryPointDTOResult">
        <result property="id"    column="id"    />
        <result property="userId"    column="user_id"    />
        <result property="latitude"    column="latitude"    />
        <result property="longitude"    column="longitude"    />
        <result property="createTime"    column="create_time"    />
    </resultMap>
    <sql id="selectPolicTrajectoryPoint">
        select
            id,
            user_id,
            latitude,
            longitude,
            create_time
        from
            jczz_polic_trajectory_point
    </sql>
    <select id="selectPolicTrajectoryPointById" parameterType="long" resultMap="PolicTrajectoryPointDTOResult">
        <include refid="selectPolicTrajectoryPoint"/>
        where
        id = #{id}
    </select>
    <select id="selectPolicTrajectoryPointList" parameterType="org.springblade.modules.policTrajectoryPoint.dto.PolicTrajectoryPointDTO" resultMap="PolicTrajectoryPointDTOResult">
        <include refid="selectPolicTrajectoryPoint"/>
        <where>
            <if test="id != null "> and id = #{id}</if>
            <if test="userId != null "> and user_id = #{userId}</if>
            <if test="latitude != null "> and latitude = #{latitude}</if>
            <if test="longitude != null "> and longitude = #{longitude}</if>
            <if test="createTime != null "> and create_time = #{createTime}</if>
        </where>
    </select>
</mapper>
src/main/java/org/springblade/modules/policTrajectoryPoint/service/IPolicTrajectoryPointService.java
New file
@@ -0,0 +1,43 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.modules.policTrajectoryPoint.vo.PolicTrajectoryPointVO;
import org.springblade.core.mp.base.BaseService;
import com.baomidou.mybatisplus.core.metadata.IPage;
/**
 * 用户轨迹记录 服务类
 *
 * @author BladeX
 * @since 2024-04-02
 */
public interface IPolicTrajectoryPointService extends IService<PolicTrajectoryPointEntity> {
    /**
     * 自定义分页
     *
     * @param page
     * @param policTrajectoryPoint
     * @return
     */
    IPage<PolicTrajectoryPointVO> selectPolicTrajectoryPointPage(IPage<PolicTrajectoryPointVO> page, PolicTrajectoryPointVO policTrajectoryPoint);
}
src/main/java/org/springblade/modules/policTrajectoryPoint/service/impl/PolicTrajectoryPointServiceImpl.java
New file
@@ -0,0 +1,43 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.modules.policTrajectoryPoint.vo.PolicTrajectoryPointVO;
import org.springblade.modules.policTrajectoryPoint.mapper.PolicTrajectoryPointMapper;
import org.springblade.modules.policTrajectoryPoint.service.IPolicTrajectoryPointService;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
/**
 * 用户轨迹记录 服务实现类
 *
 * @author BladeX
 * @since 2024-04-02
 */
@Service
public class PolicTrajectoryPointServiceImpl extends ServiceImpl<PolicTrajectoryPointMapper, PolicTrajectoryPointEntity> implements IPolicTrajectoryPointService {
    @Override
    public IPage<PolicTrajectoryPointVO> selectPolicTrajectoryPointPage(IPage<PolicTrajectoryPointVO> page, PolicTrajectoryPointVO policTrajectoryPoint) {
        return page.setRecords(baseMapper.selectPolicTrajectoryPointPage(page, policTrajectoryPoint));
    }
}
src/main/java/org/springblade/modules/policTrajectoryPoint/vo/PolicTrajectoryPointVO.java
New file
@@ -0,0 +1,35 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.vo;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * 用户轨迹记录 视图实体类
 *
 * @author BladeX
 * @since 2024-04-02
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class PolicTrajectoryPointVO extends PolicTrajectoryPointEntity {
    private static final long serialVersionUID = 1L;
}
src/main/java/org/springblade/modules/policTrajectoryPoint/wrapper/PolicTrajectoryPointWrapper.java
New file
@@ -0,0 +1,50 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.policTrajectoryPoint.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.modules.policTrajectoryPoint.entity.PolicTrajectoryPointEntity;
import org.springblade.modules.policTrajectoryPoint.vo.PolicTrajectoryPointVO;
import java.util.Objects;
/**
 * 用户轨迹记录 包装类,返回视图层所需的字段
 *
 * @author BladeX
 * @since 2024-04-02
 */
public class PolicTrajectoryPointWrapper extends BaseEntityWrapper<PolicTrajectoryPointEntity, PolicTrajectoryPointVO>  {
    public static PolicTrajectoryPointWrapper build() {
        return new PolicTrajectoryPointWrapper();
     }
    @Override
    public PolicTrajectoryPointVO entityVO(PolicTrajectoryPointEntity policTrajectoryPoint) {
        PolicTrajectoryPointVO policTrajectoryPointVO = Objects.requireNonNull(BeanUtil.copy(policTrajectoryPoint, PolicTrajectoryPointVO.class));
        //User createUser = UserCache.getUser(policTrajectoryPoint.getCreateUser());
        //User updateUser = UserCache.getUser(policTrajectoryPoint.getUpdateUser());
        //policTrajectoryPointVO.setCreateUserName(createUser.getName());
        //policTrajectoryPointVO.setUpdateUserName(updateUser.getName());
        return policTrajectoryPointVO;
    }
}