liusuyi
2024-06-22 59dd637267a99eadd2c5cf0b8d59e8dc4fbb6b26
增加:地形标定管理
已添加6个文件
已修改1个文件
645 ■■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/device/terrain/controller/ArdTerrainMarkController.java 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/terrain/domain/ArdTerrainMark.java 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/terrain/mapper/ArdTerrainMarkMapper.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/terrain/service/IArdTerrainMarkService.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/terrain/service/impl/ArdTerrainMarkServiceImpl.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/device/ArdTerrainMarkMapper.xml 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-generator/src/main/resources/vm/java/controller.java.vm 69 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/device/terrain/controller/ArdTerrainMarkController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,113 @@
package com.ruoyi.device.terrain.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.device.terrain.domain.ArdTerrainMark;
import com.ruoyi.device.terrain.service.IArdTerrainMarkService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
 * åœ°å½¢æ ‡å®šç®¡ç†Controller
 *
 * @author liusuyi
 * @date 2024-06-22
 */
@Api(tags = "地形标定管理")
@RestController
@RequestMapping("/terrain/mark")
public class ArdTerrainMarkController extends BaseController
{
    @Autowired
    private IArdTerrainMarkService ardTerrainMarkService;
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†åˆ—表
     */
    @ApiOperation("查询地形标定管理列表")
    @PreAuthorize("@ss.hasPermi('terrain:mark:list')")
    @GetMapping("/list")
    public TableDataInfo list(ArdTerrainMark ardTerrainMark)
    {
        startPage();
        List<ArdTerrainMark> list = ardTerrainMarkService.selectArdTerrainMarkList(ardTerrainMark);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºåœ°å½¢æ ‡å®šç®¡ç†åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('terrain:mark:export')")
    @Log(title = "地形标定管理", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ArdTerrainMark ardTerrainMark)
    {
        List<ArdTerrainMark> list = ardTerrainMarkService.selectArdTerrainMarkList(ardTerrainMark);
        ExcelUtil<ArdTerrainMark> util = new ExcelUtil<ArdTerrainMark>(ArdTerrainMark.class);
        util.exportExcel(response, list, "地形标定管理数据");
    }
    /**
     * èŽ·å–åœ°å½¢æ ‡å®šç®¡ç†è¯¦ç»†ä¿¡æ¯
     */
    @ApiOperation("获取地形标定管理详细信息")
    @PreAuthorize("@ss.hasPermi('terrain:mark:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
        return success(ardTerrainMarkService.selectArdTerrainMarkById(id));
    }
    /**
     * æ–°å¢žåœ°å½¢æ ‡å®šç®¡ç†
     */
    @ApiOperation("新增地形标定管理")
    @PreAuthorize("@ss.hasPermi('terrain:mark:add')")
    @Log(title = "地形标定管理", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdTerrainMark ardTerrainMark)
    {
        return toAjax(ardTerrainMarkService.insertArdTerrainMark(ardTerrainMark));
    }
    /**
     * ä¿®æ”¹åœ°å½¢æ ‡å®šç®¡ç†
     */
    @ApiOperation("修改地形标定管理")
    @PreAuthorize("@ss.hasPermi('terrain:mark:edit')")
    @Log(title = "地形标定管理", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdTerrainMark ardTerrainMark)
    {
        return toAjax(ardTerrainMarkService.updateArdTerrainMark(ardTerrainMark));
    }
    /**
     * åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†
     */
    @ApiOperation("删除地形标定管理")
    @PreAuthorize("@ss.hasPermi('terrain:mark:remove')")
    @Log(title = "地形标定管理", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids)
    {
        return toAjax(ardTerrainMarkService.deleteArdTerrainMarkByIds(ids));
    }
}
ard-work/src/main/java/com/ruoyi/device/terrain/domain/ArdTerrainMark.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,139 @@
package com.ruoyi.device.terrain.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
 * åœ°å½¢æ ‡å®šç®¡ç†å¯¹è±¡ ard_terrain_mark
 *
 * @author liusuyi
 * @date 2024-06-22
 */
public class ArdTerrainMark extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** ID主键 */
    private String id;
    /** ç›¸æœºID */
    @Excel(name = "相机ID")
    private String cameraId;
    /** ç»åº¦ */
    @Excel(name = "经度")
    private Double longitude;
    /** çº¬åº¦ */
    @Excel(name = "纬度")
    private Double latitude;
    /** ä¿¯ä»° */
    @Excel(name = "俯仰")
    private Double t;
    /** é«˜å±‚ */
    @Excel(name = "高层")
    private Double altitude;
    /** æ‰€å±žéƒ¨é—¨ */
    @Excel(name = "所属部门")
    private String deptId;
    /** æ‰€å±žç”¨æˆ· */
    @Excel(name = "所属用户")
    private String userId;
    public void setId(String id)
    {
        this.id = id;
    }
    public String getId()
    {
        return id;
    }
    public void setCameraId(String cameraId)
    {
        this.cameraId = cameraId;
    }
    public String getCameraId()
    {
        return cameraId;
    }
    public void setLongitude(Double longitude)
    {
        this.longitude = longitude;
    }
    public Double getLongitude()
    {
        return longitude;
    }
    public void setLatitude(Double latitude)
    {
        this.latitude = latitude;
    }
    public Double getLatitude()
    {
        return latitude;
    }
    public void setT(Double t)
    {
        this.t = t;
    }
    public Double getT()
    {
        return t;
    }
    public void setAltitude(Double altitude)
    {
        this.altitude = altitude;
    }
    public Double getAltitude()
    {
        return altitude;
    }
    public void setDeptId(String deptId)
    {
        this.deptId = deptId;
    }
    public String getDeptId()
    {
        return deptId;
    }
    public void setUserId(String userId)
    {
        this.userId = userId;
    }
    public String getUserId()
    {
        return userId;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("cameraId", getCameraId())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("t", getT())
            .append("altitude", getAltitude())
            .append("deptId", getDeptId())
            .append("userId", getUserId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
ard-work/src/main/java/com/ruoyi/device/terrain/mapper/ArdTerrainMarkMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
package com.ruoyi.device.terrain.mapper;
import java.util.List;
import com.ruoyi.device.terrain.domain.ArdTerrainMark;
/**
 * åœ°å½¢æ ‡å®šç®¡ç†Mapper接口
 *
 * @author liusuyi
 * @date 2024-06-22
 */
public interface ArdTerrainMarkMapper
{
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return åœ°å½¢æ ‡å®šç®¡ç†
     */
    public ArdTerrainMark selectArdTerrainMarkById(String id);
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†åˆ—表
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return åœ°å½¢æ ‡å®šç®¡ç†é›†åˆ
     */
    public List<ArdTerrainMark> selectArdTerrainMarkList(ArdTerrainMark ardTerrainMark);
    /**
     * æ–°å¢žåœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    public int insertArdTerrainMark(ArdTerrainMark ardTerrainMark);
    /**
     * ä¿®æ”¹åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    public int updateArdTerrainMark(ArdTerrainMark ardTerrainMark);
    /**
     * åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdTerrainMarkById(String id);
    /**
     * æ‰¹é‡åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteArdTerrainMarkByIds(String[] ids);
}
ard-work/src/main/java/com/ruoyi/device/terrain/service/IArdTerrainMarkService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
package com.ruoyi.device.terrain.service;
import java.util.List;
import com.ruoyi.device.terrain.domain.ArdTerrainMark;
/**
 * åœ°å½¢æ ‡å®šç®¡ç†Service接口
 *
 * @author liusuyi
 * @date 2024-06-22
 */
public interface IArdTerrainMarkService
{
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return åœ°å½¢æ ‡å®šç®¡ç†
     */
    public ArdTerrainMark selectArdTerrainMarkById(String id);
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†åˆ—表
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return åœ°å½¢æ ‡å®šç®¡ç†é›†åˆ
     */
    public List<ArdTerrainMark> selectArdTerrainMarkList(ArdTerrainMark ardTerrainMark);
    /**
     * æ–°å¢žåœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    public int insertArdTerrainMark(ArdTerrainMark ardTerrainMark);
    /**
     * ä¿®æ”¹åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    public int updateArdTerrainMark(ArdTerrainMark ardTerrainMark);
    /**
     * æ‰¹é‡åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ids éœ€è¦åˆ é™¤çš„地形标定管理主键集合
     * @return ç»“æžœ
     */
    public int deleteArdTerrainMarkByIds(String[] ids);
    /**
     * åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†ä¿¡æ¯
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteArdTerrainMarkById(String id);
}
ard-work/src/main/java/com/ruoyi/device/terrain/service/impl/ArdTerrainMarkServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,98 @@
package com.ruoyi.device.terrain.service.impl;
import java.util.List;
        import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.device.terrain.mapper.ArdTerrainMarkMapper;
import com.ruoyi.device.terrain.domain.ArdTerrainMark;
import com.ruoyi.device.terrain.service.IArdTerrainMarkService;
/**
 * åœ°å½¢æ ‡å®šç®¡ç†Service业务层处理
 *
 * @author liusuyi
 * @date 2024-06-22
 */
@Service
public class ArdTerrainMarkServiceImpl implements IArdTerrainMarkService {
    @Autowired
    private ArdTerrainMarkMapper ardTerrainMarkMapper;
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return åœ°å½¢æ ‡å®šç®¡ç†
     */
    @Override
    public ArdTerrainMark selectArdTerrainMarkById(String id) {
        return ardTerrainMarkMapper.selectArdTerrainMarkById(id);
    }
    /**
     * æŸ¥è¯¢åœ°å½¢æ ‡å®šç®¡ç†åˆ—表
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return åœ°å½¢æ ‡å®šç®¡ç†
     */
    @Override
    public List<ArdTerrainMark> selectArdTerrainMarkList(ArdTerrainMark ardTerrainMark) {
        return ardTerrainMarkMapper.selectArdTerrainMarkList(ardTerrainMark);
    }
    /**
     * æ–°å¢žåœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    @Override
    public int insertArdTerrainMark(ArdTerrainMark ardTerrainMark) {
                ardTerrainMark.setId(IdUtils.simpleUUID());
                ardTerrainMark.setUserId(SecurityUtils.getUserId());
                ardTerrainMark.setCreateBy(SecurityUtils.getUsername());
                ardTerrainMark.setCreateTime(DateUtils.getNowDate());
            return ardTerrainMarkMapper.insertArdTerrainMark(ardTerrainMark);
    }
    /**
     * ä¿®æ”¹åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ardTerrainMark åœ°å½¢æ ‡å®šç®¡ç†
     * @return ç»“æžœ
     */
    @Override
    public int updateArdTerrainMark(ArdTerrainMark ardTerrainMark) {
                ardTerrainMark.setUpdateBy(SecurityUtils.getUsername());
                ardTerrainMark.setUpdateTime(DateUtils.getNowDate());
        return ardTerrainMarkMapper.updateArdTerrainMark(ardTerrainMark);
    }
    /**
     * æ‰¹é‡åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†
     *
     * @param ids éœ€è¦åˆ é™¤çš„地形标定管理主键
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdTerrainMarkByIds(String[] ids) {
        return ardTerrainMarkMapper.deleteArdTerrainMarkByIds(ids);
    }
    /**
     * åˆ é™¤åœ°å½¢æ ‡å®šç®¡ç†ä¿¡æ¯
     *
     * @param id åœ°å½¢æ ‡å®šç®¡ç†ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteArdTerrainMarkById(String id) {
        return ardTerrainMarkMapper.deleteArdTerrainMarkById(id);
    }
}
ard-work/src/main/resources/mapper/device/ArdTerrainMarkMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
<?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="com.ruoyi.device.terrain.mapper.ArdTerrainMarkMapper">
    <resultMap type="ArdTerrainMark" id="ArdTerrainMarkResult">
        <result property="id"    column="id"    />
        <result property="cameraId"    column="camera_id"    />
        <result property="longitude"    column="longitude"    />
        <result property="latitude"    column="latitude"    />
        <result property="t"    column="t"    />
        <result property="altitude"    column="altitude"    />
        <result property="deptId"    column="dept_id"    />
        <result property="userId"    column="user_id"    />
        <result property="createBy"    column="create_by"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="updateTime"    column="update_time"    />
    </resultMap>
    <sql id="selectArdTerrainMarkVo">
        select id, camera_id, longitude, latitude, t, altitude, dept_id, user_id, create_by, create_time, update_by, update_time from ard_terrain_mark
    </sql>
    <select id="selectArdTerrainMarkList" parameterType="ArdTerrainMark" resultMap="ArdTerrainMarkResult">
        <include refid="selectArdTerrainMarkVo"/>
        <where>
            <if test="cameraId != null  and cameraId != ''"> and camera_id = #{cameraId}</if>
            <if test="longitude != null "> and longitude = #{longitude}</if>
            <if test="latitude != null "> and latitude = #{latitude}</if>
            <if test="t != null "> and t = #{t}</if>
            <if test="altitude != null "> and altitude = #{altitude}</if>
            <if test="deptId != null  and deptId != ''"> and dept_id = #{deptId}</if>
            <if test="userId != null  and userId != ''"> and user_id = #{userId}</if>
        </where>
    </select>
    <select id="selectArdTerrainMarkById" parameterType="String" resultMap="ArdTerrainMarkResult">
        <include refid="selectArdTerrainMarkVo"/>
        where id = #{id}
    </select>
    <insert id="insertArdTerrainMark" parameterType="ArdTerrainMark">
        insert into ard_terrain_mark
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="cameraId != null">camera_id,</if>
            <if test="longitude != null">longitude,</if>
            <if test="latitude != null">latitude,</if>
            <if test="t != null">t,</if>
            <if test="altitude != null">altitude,</if>
            <if test="deptId != null">dept_id,</if>
            <if test="userId != null">user_id,</if>
            <if test="createBy != null">create_by,</if>
            <if test="createTime != null">create_time,</if>
            <if test="updateBy != null">update_by,</if>
            <if test="updateTime != null">update_time,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="cameraId != null">#{cameraId},</if>
            <if test="longitude != null">#{longitude},</if>
            <if test="latitude != null">#{latitude},</if>
            <if test="t != null">#{t},</if>
            <if test="altitude != null">#{altitude},</if>
            <if test="deptId != null">#{deptId},</if>
            <if test="userId != null">#{userId},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="updateBy != null">#{updateBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
         </trim>
    </insert>
    <update id="updateArdTerrainMark" parameterType="ArdTerrainMark">
        update ard_terrain_mark
        <trim prefix="SET" suffixOverrides=",">
            <if test="cameraId != null">camera_id = #{cameraId},</if>
            <if test="longitude != null">longitude = #{longitude},</if>
            <if test="latitude != null">latitude = #{latitude},</if>
            <if test="t != null">t = #{t},</if>
            <if test="altitude != null">altitude = #{altitude},</if>
            <if test="deptId != null">dept_id = #{deptId},</if>
            <if test="userId != null">user_id = #{userId},</if>
            <if test="createBy != null">create_by = #{createBy},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="updateBy != null">update_by = #{updateBy},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
        </trim>
        where id = #{id}
    </update>
    <delete id="deleteArdTerrainMarkById" parameterType="String">
        delete from ard_terrain_mark where id = #{id}
    </delete>
    <delete id="deleteArdTerrainMarkByIds" parameterType="String">
        delete from ard_terrain_mark where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>
ruoyi-generator/src/main/resources/vm/java/controller.java.vm
@@ -2,6 +2,9 @@
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -26,90 +29,88 @@
/**
 * ${functionName}Controller
 *
 *
 * @author ${author}
 * @date ${datetime}
 */
@Api(tags = "${functionName}")
@RestController
@RequestMapping("/${moduleName}/${businessName}")
public class ${ClassName}Controller extends BaseController
{
public class ${ClassName}Controller extends BaseController {
    @Autowired
    private I${ClassName}Service ${className}Service;
    /**
     * æŸ¥è¯¢${functionName}列表
     */
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
    @GetMapping("/list")
#if($table.crud || $table.sub)
    public TableDataInfo list(${ClassName} ${className})
    {
/**
 * æŸ¥è¯¢${functionName}列表
 */
@ApiOperation("查询${functionName}列表")
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
@GetMapping("/list")
    #if($table.crud || $table.sub)
    public TableDataInfo list(${ClassName} ${className}) {
        startPage();
        List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
        return getDataTable(list);
    }
#elseif($table.tree)
    public AjaxResult list(${ClassName} ${className})
    {
        List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
        return success(list);
    }
#end
    #elseif($table.tree)
        public AjaxResult list(${ClassName} ${className}) {
            List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
            return success(list);
        }
    #end
    /**
     * å¯¼å‡º${functionName}列表
     */
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')")
    @Log(title = "${functionName}", businessType = BusinessType.EXPORT)
    @Log(title = "${functionName}" , businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ${ClassName} ${className})
    {
    public void export(HttpServletResponse response, ${ClassName} ${className}) {
        List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
        ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
        ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}. class);
        util.exportExcel(response, list, "${functionName}数据");
    }
    /**
     * èŽ·å–${functionName}详细信息
     */
    @ApiOperation("获取${functionName}详细信息")
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')")
    @GetMapping(value = "/{${pkColumn.javaField}}")
    public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField})
    {
    public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) {
        return success(${className}Service.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}));
    }
    /**
     * æ–°å¢ž${functionName}
     */
    @ApiOperation("新增${functionName}")
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')")
    @Log(title = "${functionName}", businessType = BusinessType.INSERT)
    @Log(title = "${functionName}" , businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ${ClassName} ${className})
    {
    public AjaxResult add(@RequestBody ${ClassName} ${className}) {
        return toAjax(${className}Service.insert${ClassName}(${className}));
    }
    /**
     * ä¿®æ”¹${functionName}
     */
    @ApiOperation("修改${functionName}")
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')")
    @Log(title = "${functionName}", businessType = BusinessType.UPDATE)
    @Log(title = "${functionName}" , businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ${ClassName} ${className})
    {
    public AjaxResult edit(@RequestBody ${ClassName} ${className}) {
        return toAjax(${className}Service.update${ClassName}(${className}));
    }
    /**
     * åˆ é™¤${functionName}
     */
    @ApiOperation("删除${functionName}")
    @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')")
    @Log(title = "${functionName}", businessType = BusinessType.DELETE)
    @DeleteMapping("/{${pkColumn.javaField}s}")
    public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s)
    {
    @Log(title = "${functionName}" , businessType = BusinessType.DELETE)
    @DeleteMapping("/{${pkColumn.javaField}s}")
    public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) {
        return toAjax(${className}Service.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s));
    }
}