瀏覽代碼

+ 巡检任务轨迹查询

chen.cheng 6 月之前
父節點
當前提交
181659e745

+ 91 - 0
bd-park/park-backend/park-application/src/main/java/com/huashe/park/application/web/controller/park/ParkAttendGroupController.java

@@ -0,0 +1,91 @@
+package com.huashe.park.application.web.controller.park;
+
+import com.huashe.park.core.service.IParkAttendGroupService;
+import com.huashe.park.domain.entity.ParkAttendGroup;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 考勤组Controller
+ *
+ * @author ruoyi
+ * @date 2025-01-08
+ */
+@RestController
+@RequestMapping("/park/attendGroup")
+public class ParkAttendGroupController extends BaseController {
+    @Autowired
+    private IParkAttendGroupService parkAttendGroupService;
+
+    /**
+     * 查询考勤组列表
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ParkAttendGroup parkAttendGroup) {
+        startPage();
+        List<ParkAttendGroup> list = parkAttendGroupService.selectParkAttendGroupList(parkAttendGroup);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出考勤组列表
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:export')")
+    @Log(title = "考勤组", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ParkAttendGroup parkAttendGroup) {
+        List<ParkAttendGroup> list = parkAttendGroupService.selectParkAttendGroupList(parkAttendGroup);
+        ExcelUtil<ParkAttendGroup> util = new ExcelUtil<ParkAttendGroup>(ParkAttendGroup.class);
+        util.exportExcel(response, list, "考勤组数据");
+    }
+
+    /**
+     * 获取考勤组详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(parkAttendGroupService.selectParkAttendGroupById(id));
+    }
+
+    /**
+     * 新增考勤组
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:add')")
+    @Log(title = "考勤组", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ParkAttendGroup parkAttendGroup) {
+        return toAjax(parkAttendGroupService.insertParkAttendGroup(parkAttendGroup));
+    }
+
+    /**
+     * 修改考勤组
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:edit')")
+    @Log(title = "考勤组", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ParkAttendGroup parkAttendGroup) {
+        return toAjax(parkAttendGroupService.updateParkAttendGroup(parkAttendGroup));
+    }
+
+    /**
+     * 删除考勤组
+     */
+    @PreAuthorize("@ss.hasPermi('park:attendGroup:remove')")
+    @Log(title = "考勤组", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(parkAttendGroupService.deleteParkAttendGroupByIds(ids));
+    }
+}

+ 61 - 0
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/mapper/ParkAttendGroupMapper.java

@@ -0,0 +1,61 @@
+package com.huashe.park.core.mapper;
+
+import com.huashe.park.domain.entity.ParkAttendGroup;
+
+import java.util.List;
+
+/**
+ * 考勤组Mapper接口
+ *
+ * @author ruoyi
+ * @date 2025-01-08
+ */
+public interface ParkAttendGroupMapper {
+    /**
+     * 查询考勤组
+     *
+     * @param id 考勤组主键
+     * @return 考勤组
+     */
+    ParkAttendGroup selectParkAttendGroupById(Long id);
+
+    /**
+     * 查询考勤组列表
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 考勤组集合
+     */
+    List<ParkAttendGroup> selectParkAttendGroupList(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 新增考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    int insertParkAttendGroup(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 修改考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    int updateParkAttendGroup(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 删除考勤组
+     *
+     * @param id 考勤组主键
+     * @return 结果
+     */
+    int deleteParkAttendGroupById(Long id);
+
+    /**
+     * 批量删除考勤组
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteParkAttendGroupByIds(Long[] ids);
+}

+ 61 - 0
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/service/IParkAttendGroupService.java

@@ -0,0 +1,61 @@
+package com.huashe.park.core.service;
+
+import com.huashe.park.domain.entity.ParkAttendGroup;
+
+import java.util.List;
+
+/**
+ * 考勤组Service接口
+ *
+ * @author ruoyi
+ * @date 2025-01-08
+ */
+public interface IParkAttendGroupService {
+    /**
+     * 查询考勤组
+     *
+     * @param id 考勤组主键
+     * @return 考勤组
+     */
+    ParkAttendGroup selectParkAttendGroupById(Long id);
+
+    /**
+     * 查询考勤组列表
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 考勤组集合
+     */
+    List<ParkAttendGroup> selectParkAttendGroupList(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 新增考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    int insertParkAttendGroup(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 修改考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    int updateParkAttendGroup(ParkAttendGroup parkAttendGroup);
+
+    /**
+     * 批量删除考勤组
+     *
+     * @param ids 需要删除的考勤组主键集合
+     * @return 结果
+     */
+    int deleteParkAttendGroupByIds(Long[] ids);
+
+    /**
+     * 删除考勤组信息
+     *
+     * @param id 考勤组主键
+     * @return 结果
+     */
+    int deleteParkAttendGroupById(Long id);
+}

+ 15 - 16
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/service/IParkInspectTaskUsrTrailService.java

@@ -1,4 +1,4 @@
-package com.huashe.park.service;
+package com.huashe.park.core.service;
 
 import com.huashe.park.domain.entity.ParkInspectTaskUsrTrail;
 
@@ -6,57 +6,56 @@ import java.util.List;
 
 /**
  * 巡检轨迹Service接口
- * 
+ *
  * @author ruoyi
  * @date 2025-01-07
  */
-public interface IParkInspectTaskUsrTrailService 
-{
+public interface IParkInspectTaskUsrTrailService {
     /**
      * 查询巡检轨迹
-     * 
+     *
      * @param id 巡检轨迹主键
      * @return 巡检轨迹
      */
-    public ParkInspectTaskUsrTrail selectParkInspectTaskUsrTrailById(Long id);
+    ParkInspectTaskUsrTrail selectParkInspectTaskUsrTrailById(Long id);
 
     /**
      * 查询巡检轨迹列表
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 巡检轨迹集合
      */
-    public List<ParkInspectTaskUsrTrail> selectParkInspectTaskUsrTrailList(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
+    List<ParkInspectTaskUsrTrail> selectParkInspectTaskUsrTrailList(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
 
     /**
      * 新增巡检轨迹
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 结果
      */
-    public int insertParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
+    int insertParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
 
     /**
      * 修改巡检轨迹
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 结果
      */
-    public int updateParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
+    int updateParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail);
 
     /**
      * 批量删除巡检轨迹
-     * 
+     *
      * @param ids 需要删除的巡检轨迹主键集合
      * @return 结果
      */
-    public int deleteParkInspectTaskUsrTrailByIds(Long[] ids);
+    int deleteParkInspectTaskUsrTrailByIds(Long[] ids);
 
     /**
      * 删除巡检轨迹信息
-     * 
+     *
      * @param id 巡检轨迹主键
      * @return 结果
      */
-    public int deleteParkInspectTaskUsrTrailById(Long id);
+    int deleteParkInspectTaskUsrTrailById(Long id);
 }

+ 87 - 0
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/service/impl/ParkAttendGroupServiceImpl.java

@@ -0,0 +1,87 @@
+package com.huashe.park.core.service.impl;
+
+import com.huashe.park.core.mapper.ParkAttendGroupMapper;
+import com.huashe.park.core.service.IParkAttendGroupService;
+import com.huashe.park.domain.entity.ParkAttendGroup;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 考勤组Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2025-01-08
+ */
+@Service
+public class ParkAttendGroupServiceImpl implements IParkAttendGroupService {
+    @Autowired
+    private ParkAttendGroupMapper parkAttendGroupMapper;
+
+    /**
+     * 查询考勤组
+     *
+     * @param id 考勤组主键
+     * @return 考勤组
+     */
+    @Override
+    public ParkAttendGroup selectParkAttendGroupById(Long id) {
+        return parkAttendGroupMapper.selectParkAttendGroupById(id);
+    }
+
+    /**
+     * 查询考勤组列表
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 考勤组
+     */
+    @Override
+    public List<ParkAttendGroup> selectParkAttendGroupList(ParkAttendGroup parkAttendGroup) {
+        return parkAttendGroupMapper.selectParkAttendGroupList(parkAttendGroup);
+    }
+
+    /**
+     * 新增考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    @Override
+    public int insertParkAttendGroup(ParkAttendGroup parkAttendGroup) {
+        return parkAttendGroupMapper.insertParkAttendGroup(parkAttendGroup);
+    }
+
+    /**
+     * 修改考勤组
+     *
+     * @param parkAttendGroup 考勤组
+     * @return 结果
+     */
+    @Override
+    public int updateParkAttendGroup(ParkAttendGroup parkAttendGroup) {
+        return parkAttendGroupMapper.updateParkAttendGroup(parkAttendGroup);
+    }
+
+    /**
+     * 批量删除考勤组
+     *
+     * @param ids 需要删除的考勤组主键
+     * @return 结果
+     */
+    @Override
+    public int deleteParkAttendGroupByIds(Long[] ids) {
+        return parkAttendGroupMapper.deleteParkAttendGroupByIds(ids);
+    }
+
+    /**
+     * 删除考勤组信息
+     *
+     * @param id 考勤组主键
+     * @return 结果
+     */
+    @Override
+    public int deleteParkAttendGroupById(Long id) {
+        return parkAttendGroupMapper.deleteParkAttendGroupById(id);
+    }
+}

+ 17 - 24
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/service/impl/ParkInspectTaskUsrTrailServiceImpl.java

@@ -1,97 +1,90 @@
 package com.huashe.park.core.service.impl;
 
-import java.util.List;
-
 import com.huashe.park.core.mapper.ParkInspectTaskUsrTrailMapper;
+import com.huashe.park.core.service.IParkInspectTaskUsrTrailService;
 import com.huashe.park.domain.entity.ParkInspectTaskUsrTrail;
 import com.ruoyi.common.utils.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.huashe.park.service.IParkInspectTaskUsrTrailService;
+
+import java.util.List;
 
 /**
  * 巡检轨迹Service业务层处理
- * 
+ *
  * @author ruoyi
  * @date 2025-01-07
  */
 @Service
-public class ParkInspectTaskUsrTrailServiceImpl implements IParkInspectTaskUsrTrailService 
-{
+public class ParkInspectTaskUsrTrailServiceImpl implements IParkInspectTaskUsrTrailService {
     @Autowired
     private ParkInspectTaskUsrTrailMapper parkInspectTaskUsrTrailMapper;
 
     /**
      * 查询巡检轨迹
-     * 
+     *
      * @param id 巡检轨迹主键
      * @return 巡检轨迹
      */
     @Override
-    public ParkInspectTaskUsrTrail selectParkInspectTaskUsrTrailById(Long id)
-    {
+    public ParkInspectTaskUsrTrail selectParkInspectTaskUsrTrailById(Long id) {
         return parkInspectTaskUsrTrailMapper.selectParkInspectTaskUsrTrailById(id);
     }
 
     /**
      * 查询巡检轨迹列表
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 巡检轨迹
      */
     @Override
-    public List<ParkInspectTaskUsrTrail> selectParkInspectTaskUsrTrailList(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail)
-    {
+    public List<ParkInspectTaskUsrTrail> selectParkInspectTaskUsrTrailList(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail) {
         return parkInspectTaskUsrTrailMapper.selectParkInspectTaskUsrTrailList(parkInspectTaskUsrTrail);
     }
 
     /**
      * 新增巡检轨迹
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 结果
      */
     @Override
-    public int insertParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail)
-    {
+    public int insertParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail) {
         parkInspectTaskUsrTrail.setCreateTime(DateUtils.getNowDate());
         return parkInspectTaskUsrTrailMapper.insertParkInspectTaskUsrTrail(parkInspectTaskUsrTrail);
     }
 
     /**
      * 修改巡检轨迹
-     * 
+     *
      * @param parkInspectTaskUsrTrail 巡检轨迹
      * @return 结果
      */
     @Override
-    public int updateParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail)
-    {
+    public int updateParkInspectTaskUsrTrail(ParkInspectTaskUsrTrail parkInspectTaskUsrTrail) {
         parkInspectTaskUsrTrail.setUpdateTime(DateUtils.getNowDate());
         return parkInspectTaskUsrTrailMapper.updateParkInspectTaskUsrTrail(parkInspectTaskUsrTrail);
     }
 
     /**
      * 批量删除巡检轨迹
-     * 
+     *
      * @param ids 需要删除的巡检轨迹主键
      * @return 结果
      */
     @Override
-    public int deleteParkInspectTaskUsrTrailByIds(Long[] ids)
-    {
+    public int deleteParkInspectTaskUsrTrailByIds(Long[] ids) {
         return parkInspectTaskUsrTrailMapper.deleteParkInspectTaskUsrTrailByIds(ids);
     }
 
     /**
      * 删除巡检轨迹信息
-     * 
+     *
      * @param id 巡检轨迹主键
      * @return 结果
      */
     @Override
-    public int deleteParkInspectTaskUsrTrailById(Long id)
-    {
+    public int deleteParkInspectTaskUsrTrailById(Long id) {
         return parkInspectTaskUsrTrailMapper.deleteParkInspectTaskUsrTrailById(id);
     }
 }

+ 101 - 0
bd-park/park-backend/park-core/src/main/resources/mapper/park/ParkAttendGroupMapper.xml

@@ -0,0 +1,101 @@
+<?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.huashe.park.core.mapper.ParkAttendGroupMapper">
+
+    <resultMap type="ParkAttendGroup" id="ParkAttendGroupResult">
+        <result property="id" column="id"/>
+        <result property="name" column="name"/>
+        <result property="remark" column="remark"/>
+        <result property="poly" column="poly"/>
+        <result property="timeRange" column="time_range"
+                typeHandler="com.huashe.park.core.typehandle.MySqlJsonHandler"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="createTime" column="create_time"/>
+        <result property="createBy" column="create_by"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="tenantId" column="tenant_id"/>
+    </resultMap>
+
+    <sql id="selectParkAttendGroupVo">
+        select id,
+               name,
+               remark,
+               ST_AsText(poly) poly,
+               time_range,
+               update_time,
+               create_time,
+               create_by,
+               update_by,
+               tenant_id
+        from park_attend_group
+    </sql>
+
+    <select id="selectParkAttendGroupList" parameterType="ParkAttendGroup" resultMap="ParkAttendGroupResult">
+        <include refid="selectParkAttendGroupVo"/>
+        <where>
+            <if test="name != null  and name != ''">and name like concat('%', #{name}, '%')</if>
+        </where>
+    </select>
+
+    <select id="selectParkAttendGroupById" parameterType="Long" resultMap="ParkAttendGroupResult">
+        <include refid="selectParkAttendGroupVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertParkAttendGroup" parameterType="ParkAttendGroup" useGeneratedKeys="true" keyProperty="id">
+        insert into park_attend_group
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="name != null">name,</if>
+            <if test="remark != null">remark,</if>
+            <if test="poly != null">poly,</if>
+            <if test="timeRange != null">time_range,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="tenantId != null">tenant_id,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="name != null">#{name},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="poly != null">ST_GeomFromText(#{poly}),</if>
+            <if test="timeRange != null">#{timeRange,typeHandler=com.huashe.park.core.typehandle.MySqlJsonHandler},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="tenantId != null">#{tenantId},</if>
+        </trim>
+    </insert>
+
+    <update id="updateParkAttendGroup" parameterType="ParkAttendGroup">
+        update park_attend_group
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="name != null">name = #{name},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="poly != null">poly = ST_GeomFromText(#{poly}),</if>
+            <if test="timeRange != null">time_range = #{timeRange,typeHandler=com.huashe.park.core.typehandle.MySqlJsonHandler},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="tenantId != null">tenant_id = #{tenantId},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteParkAttendGroupById" parameterType="Long">
+        delete
+        from park_attend_group
+        where id = #{id}
+    </delete>
+
+    <delete id="deleteParkAttendGroupByIds" parameterType="String">
+        delete from park_attend_group where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 101 - 0
bd-park/park-backend/park-domain/src/main/java/com/huashe/park/domain/entity/ParkAttendGroup.java

@@ -0,0 +1,101 @@
+package com.huashe.park.domain.entity;
+
+import com.alibaba.fastjson2.JSONArray;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 考勤组对象 park_attend_group
+ *
+ * @author ruoyi
+ * @date 2025-01-08
+ */
+public class ParkAttendGroup extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 编号
+     */
+    private Long id;
+
+    /**
+     * 考勤组名称
+     */
+    @Excel(name = "考勤组名称")
+    private String name;
+
+    /**
+     * 考勤范围
+     */
+    @Excel(name = "考勤范围")
+    private String poly;
+
+    /**
+     * 考勤时间
+     */
+    @Excel(name = "考勤时间")
+    private JSONArray timeRange;
+
+    /**
+     * 租户id
+     */
+    private String tenantId;
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setPoly(String poly) {
+        this.poly = poly;
+    }
+
+    public String getPoly() {
+        return poly;
+    }
+
+    public JSONArray getTimeRange() {
+        return timeRange;
+    }
+
+    public void setTimeRange(JSONArray timeRange) {
+        this.timeRange = timeRange;
+    }
+
+    public void setTenantId(String tenantId) {
+        this.tenantId = tenantId;
+    }
+
+    public String getTenantId() {
+        return tenantId;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("name", getName())
+                .append("remark", getRemark())
+                .append("poly", getPoly())
+                .append("timeRange", getTimeRange())
+                .append("updateTime", getUpdateTime())
+                .append("createTime", getCreateTime())
+                .append("createBy", getCreateBy())
+                .append("updateBy", getUpdateBy())
+                .append("tenantId", getTenantId())
+                .toString();
+    }
+}