From 5e3829ee63f5bf4909d7c4b57ea048b2fd87a99b Mon Sep 17 00:00:00 2001
From: zepengdev <lzpsmith@outlook.com>
Date: Fri, 29 Aug 2025 09:58:20 +0800
Subject: [PATCH] feat: 店铺与商品审核查询增加筛选条件

---
 oying-system/src/main/java/com/oying/modules/pc/store/view/StoreAuditView.java                    |   54 ++++++++++
 oying-system/src/main/resources/mapper/pc/store/StoreAuditMapper.xml                              |   44 +++++++-
 oying-system/src/main/java/com/oying/modules/pc/product/service/impl/ProductAuditServiceImpl.java |    5 
 oying-system/src/main/java/com/oying/modules/pc/product/service/ProductAuditService.java          |    5 
 oying-system/src/main/java/com/oying/modules/pc/store/service/impl/StoreAuditServiceImpl.java     |   17 +-
 oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductAuditController.java          |    2 
 oying-system/src/main/java/com/oying/modules/pc/store/mapper/StoreAuditMapper.java                |    6 
 oying-system/src/main/java/com/oying/modules/pc/product/domain/dto/ProductAuditQueryCriteria.java |   11 ++
 oying-system/src/main/java/com/oying/modules/pc/store/domain/dto/StoreAuditQueryCriteria.java     |    8 +
 oying-system/src/main/java/com/oying/modules/pc/store/service/StoreAuditService.java              |    5 
 oying-system/src/main/java/com/oying/modules/pc/product/mapper/ProductAuditMapper.java            |    5 
 oying-system/src/main/resources/mapper/pc/product/ProductAuditMapper.xml                          |   51 ++++++++-
 oying-system/src/main/java/com/oying/modules/pc/product/view/ProductAuditView.java                |   50 ++++++++++
 13 files changed, 226 insertions(+), 37 deletions(-)

diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/domain/dto/ProductAuditQueryCriteria.java b/oying-system/src/main/java/com/oying/modules/pc/product/domain/dto/ProductAuditQueryCriteria.java
index d91c32d..32f5e4b 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/domain/dto/ProductAuditQueryCriteria.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/domain/dto/ProductAuditQueryCriteria.java
@@ -13,10 +13,19 @@
 @Data
 public class ProductAuditQueryCriteria {
 
-    @NotNull
+    private String blurry;
+
     @ApiModelProperty(value = "商品ID")
     private Long productId;
 
+    @ApiModelProperty(value = "商品名称")
+    private String productName;
+
+    @ApiModelProperty(value = "商品标题")
+    private String productTitle;
+
+    private String createBy;
+
     @NotBlank
     @ApiModelProperty(value = "类型")
     private String type;
diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/mapper/ProductAuditMapper.java b/oying-system/src/main/java/com/oying/modules/pc/product/mapper/ProductAuditMapper.java
index dad7e69..33c69e1 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/mapper/ProductAuditMapper.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/mapper/ProductAuditMapper.java
@@ -5,6 +5,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.oying.modules.pc.product.domain.ProductAudit;
 import com.oying.modules.pc.product.domain.dto.ProductAuditQueryCriteria;
+import com.oying.modules.pc.product.view.ProductAuditView;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -17,7 +18,7 @@
 @Mapper
 public interface ProductAuditMapper extends BaseMapper<ProductAudit> {
 
-    IPage<ProductAudit> findAll(@Param("criteria") ProductAuditQueryCriteria criteria, Page<Object> page);
+    IPage<ProductAuditView> findAll(@Param("criteria") ProductAuditQueryCriteria criteria, Page<Object> page);
 
-    List<ProductAudit> findAll(@Param("criteria") ProductAuditQueryCriteria criteria);
+    List<ProductAuditView> findAll(@Param("criteria") ProductAuditQueryCriteria criteria);
 }
diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductAuditController.java b/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductAuditController.java
index 8530d0c..04d0bc8 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductAuditController.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/rest/ProductAuditController.java
@@ -54,7 +54,7 @@
         return ResponseEntity.noContent().build();
     }
 
-    @PutMapping(value = "/verdict")
+    @PostMapping(value = "/verdict")
     @ApiOperation("处理审核")
     public ResponseEntity<?> submitAuditVerdict(@RequestBody ProductAudit resources) {
         auditService.processVerdict(resources);
diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/service/ProductAuditService.java b/oying-system/src/main/java/com/oying/modules/pc/product/service/ProductAuditService.java
index 909c8f3..7929629 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/service/ProductAuditService.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/service/ProductAuditService.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.oying.modules.pc.product.domain.ProductAudit;
 import com.oying.modules.pc.product.domain.dto.ProductAuditQueryCriteria;
+import com.oying.modules.pc.product.view.ProductAuditView;
 import com.oying.utils.PageResult;
 
 import javax.servlet.http.HttpServletResponse;
@@ -24,7 +25,7 @@
      * @param page     分页参数
      * @return PageResult
      */
-    PageResult<ProductAudit> queryAll(ProductAuditQueryCriteria criteria, Page<Object> page);
+    PageResult<ProductAuditView> queryAll(ProductAuditQueryCriteria criteria, Page<Object> page);
 
     /**
      * 查询所有数据不分页
@@ -32,7 +33,7 @@
      * @param criteria 条件参数
      * @return List<StoreRevisionDto>
      */
-    List<ProductAudit> queryAll(ProductAuditQueryCriteria criteria);
+    List<ProductAuditView> queryAll(ProductAuditQueryCriteria criteria);
 
     /**
      * 商品ID查询修订数据,
diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/service/impl/ProductAuditServiceImpl.java b/oying-system/src/main/java/com/oying/modules/pc/product/service/impl/ProductAuditServiceImpl.java
index e21362b..d55c18b 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/product/service/impl/ProductAuditServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/service/impl/ProductAuditServiceImpl.java
@@ -10,6 +10,7 @@
 import com.oying.modules.pc.product.events.ProductAuditVerdictEvent;
 import com.oying.modules.pc.product.mapper.ProductAuditMapper;
 import com.oying.modules.pc.product.service.ProductAuditService;
+import com.oying.modules.pc.product.view.ProductAuditView;
 import com.oying.modules.pc.store.domain.StoreAudit;
 import com.oying.utils.FileUtil;
 import com.oying.utils.PageResult;
@@ -40,12 +41,12 @@
     private final ProductAuditMapper productAuditMapper;
 
     @Override
-    public PageResult<ProductAudit> queryAll(ProductAuditQueryCriteria criteria, Page<Object> page) {
+    public PageResult<ProductAuditView> queryAll(ProductAuditQueryCriteria criteria, Page<Object> page) {
         return PageUtil.toPage(productAuditMapper.findAll(criteria, page));
     }
 
     @Override
-    public List<ProductAudit> queryAll(ProductAuditQueryCriteria criteria) {
+    public List<ProductAuditView> queryAll(ProductAuditQueryCriteria criteria) {
         return productAuditMapper.findAll(criteria);
     }
 
diff --git a/oying-system/src/main/java/com/oying/modules/pc/product/view/ProductAuditView.java b/oying-system/src/main/java/com/oying/modules/pc/product/view/ProductAuditView.java
new file mode 100644
index 0000000..2521747
--- /dev/null
+++ b/oying-system/src/main/java/com/oying/modules/pc/product/view/ProductAuditView.java
@@ -0,0 +1,50 @@
+package com.oying.modules.pc.product.view;
+
+import com.oying.base.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+* @description /
+* @author lzp
+* @date 2025-07-01
+**/
+@Getter
+@Setter
+public class ProductAuditView extends BaseEntity implements Serializable {
+
+    @ApiModelProperty(value = "商品ID")
+    private Long productId;
+
+    @ApiModelProperty(value = "商品名称")
+    private String productName;
+
+    @ApiModelProperty(value = "商品标题")
+    private String productTitle;
+
+    @ApiModelProperty(value = "审核ID")
+    private Long auditId;
+
+    @ApiModelProperty(value = "类型")
+    private String type;
+
+    @ApiModelProperty(value = "审核状态")
+    private Integer status;
+
+    @ApiModelProperty(value = "审核原因")
+    private String reason;
+
+    @ApiModelProperty(value = "审核人")
+    private String auditor;
+
+    @ApiModelProperty(value = "审核时间")
+    private Date auditTime;
+
+    @ApiModelProperty(value = "审核内容")
+    private String data;
+
+}
diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/domain/dto/StoreAuditQueryCriteria.java b/oying-system/src/main/java/com/oying/modules/pc/store/domain/dto/StoreAuditQueryCriteria.java
index a9216ad..dd4607c 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/store/domain/dto/StoreAuditQueryCriteria.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/domain/dto/StoreAuditQueryCriteria.java
@@ -13,10 +13,14 @@
 @Data
 public class StoreAuditQueryCriteria {
 
-    @NotNull
-    @ApiModelProperty(value = "店铺ID")
+    private String blurry;
+
     private Long storeId;
 
+    private String storeName;
+
+    private String createBy;
+
     @NotBlank
     @ApiModelProperty(value = "类型")
     private String type;
diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/mapper/StoreAuditMapper.java b/oying-system/src/main/java/com/oying/modules/pc/store/mapper/StoreAuditMapper.java
index 8280a8e..1b37d45 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/store/mapper/StoreAuditMapper.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/mapper/StoreAuditMapper.java
@@ -3,6 +3,8 @@
 import com.oying.modules.pc.store.domain.StoreAudit;
 import com.oying.modules.pc.store.domain.dto.StoreAuditQueryCriteria;
 import java.util.List;
+
+import com.oying.modules.pc.store.view.StoreAuditView;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -16,7 +18,7 @@
 @Mapper
 public interface StoreAuditMapper extends BaseMapper<StoreAudit> {
 
-    IPage<StoreAudit> findAll(@Param("criteria") StoreAuditQueryCriteria criteria, Page<Object> page);
+    IPage<StoreAuditView> findAll(@Param("criteria") StoreAuditQueryCriteria criteria, Page<Object> page);
 
-    List<StoreAudit> findAll(@Param("criteria") StoreAuditQueryCriteria criteria);
+    List<StoreAuditView> findAll(@Param("criteria") StoreAuditQueryCriteria criteria);
 }
diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/service/StoreAuditService.java b/oying-system/src/main/java/com/oying/modules/pc/store/service/StoreAuditService.java
index 180c43a..929adbe 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/store/service/StoreAuditService.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/service/StoreAuditService.java
@@ -8,6 +8,7 @@
 import javax.servlet.http.HttpServletResponse;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.oying.modules.pc.store.view.StoreAuditView;
 import com.oying.utils.PageResult;
 
 /**
@@ -23,14 +24,14 @@
     * @param page 分页参数
     * @return PageResult
     */
-    PageResult<StoreAudit> queryAll(StoreAuditQueryCriteria criteria, Page<Object> page);
+    PageResult<StoreAuditView> queryAll(StoreAuditQueryCriteria criteria, Page<Object> page);
 
     /**
     * 查询所有数据不分页
     * @param criteria 条件参数
     * @return List<StoreRevisionDto>
     */
-    List<StoreAudit> queryAll(StoreAuditQueryCriteria criteria);
+    List<StoreAuditView> queryAll(StoreAuditQueryCriteria criteria);
 
     /**
      * 店铺ID查询修订数据,
diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/service/impl/StoreAuditServiceImpl.java b/oying-system/src/main/java/com/oying/modules/pc/store/service/impl/StoreAuditServiceImpl.java
index 3411955..a4cc8c5 100644
--- a/oying-system/src/main/java/com/oying/modules/pc/store/service/impl/StoreAuditServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/service/impl/StoreAuditServiceImpl.java
@@ -1,5 +1,6 @@
 package com.oying.modules.pc.store.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -10,9 +11,8 @@
 import com.oying.modules.pc.store.events.StoreAuditVerdictEvent;
 import com.oying.modules.pc.store.mapper.StoreAuditMapper;
 import com.oying.modules.pc.store.service.StoreAuditService;
-import com.oying.utils.FileUtil;
-import com.oying.utils.PageResult;
-import com.oying.utils.PageUtil;
+import com.oying.modules.pc.store.view.StoreAuditView;
+import com.oying.utils.*;
 import lombok.RequiredArgsConstructor;
 import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.stereotype.Service;
@@ -20,10 +20,7 @@
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author lzp
@@ -39,12 +36,12 @@
     private final StoreAuditMapper storeAuditMapper;
 
     @Override
-    public PageResult<StoreAudit> queryAll(StoreAuditQueryCriteria criteria, Page<Object> page) {
+    public PageResult<StoreAuditView> queryAll(StoreAuditQueryCriteria criteria, Page<Object> page) {
         return PageUtil.toPage(storeAuditMapper.findAll(criteria, page));
     }
 
     @Override
-    public List<StoreAudit> queryAll(StoreAuditQueryCriteria criteria) {
+    public List<StoreAuditView> queryAll(StoreAuditQueryCriteria criteria) {
         return storeAuditMapper.findAll(criteria);
     }
 
@@ -91,6 +88,8 @@
             throw new BadRequestException("审核状态错误");
         }
         existingAudit.copy(resources);
+        existingAudit.setAuditor(SecurityUtils.getCurrentUsername());
+        existingAudit.setAuditTime(new Date());
         storeAuditMapper.updateById(existingAudit);
         eventPublisher.publishEvent(new StoreAuditVerdictEvent(existingAudit.getAuditId()));
     }
diff --git a/oying-system/src/main/java/com/oying/modules/pc/store/view/StoreAuditView.java b/oying-system/src/main/java/com/oying/modules/pc/store/view/StoreAuditView.java
new file mode 100644
index 0000000..81baf53
--- /dev/null
+++ b/oying-system/src/main/java/com/oying/modules/pc/store/view/StoreAuditView.java
@@ -0,0 +1,54 @@
+package com.oying.modules.pc.store.view;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.copier.CopyOptions;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.oying.base.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+* @description /
+* @author lzp
+* @date 2025-07-01
+**/
+@Getter
+@Setter
+public class StoreAuditView extends BaseEntity implements Serializable {
+
+    @ApiModelProperty(value = "店铺ID")
+    private Long storeId;
+
+    @ApiModelProperty(value = "店铺名称")
+    private String storeName;
+
+    @ApiModelProperty(value = "审核ID")
+    private Long auditId;
+
+    @ApiModelProperty(value = "类型")
+    private String type;
+
+    @ApiModelProperty(value = "审核状态")
+    private Integer status;
+
+    @ApiModelProperty(value = "审核原因")
+    private String reason;
+
+    @ApiModelProperty(value = "审核人")
+    private String auditor;
+
+    @ApiModelProperty(value = "审核时间")
+    private Date auditTime;
+
+    @ApiModelProperty(value = "审核内容")
+    private String data;
+
+}
diff --git a/oying-system/src/main/resources/mapper/pc/product/ProductAuditMapper.xml b/oying-system/src/main/resources/mapper/pc/product/ProductAuditMapper.xml
index a7f5155..3cad00d 100644
--- a/oying-system/src/main/resources/mapper/pc/product/ProductAuditMapper.xml
+++ b/oying-system/src/main/resources/mapper/pc/product/ProductAuditMapper.xml
@@ -16,25 +16,62 @@
         <result column="update_time" property="updateTime"/>
     </resultMap>
 
+    <resultMap id="JoinResultMap" type="com.oying.modules.pc.product.view.ProductAuditView">
+        <result column="product_id" property="productId"/>
+        <result column="product_name" property="productName"/>
+        <result column="product_title" property="productTitle"/>
+        <result column="audit_id" property="auditId"/>
+        <result column="type" property="type"/>
+        <result column="status" property="status"/>
+        <result column="data" property="data"/>
+        <result column="reason" property="reason"/>
+        <result column="auditor" property="auditor"/>
+        <result column="audit_time" property="auditTime"/>
+        <result column="create_by" property="createBy"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_by" property="updateBy"/>
+        <result column="update_time" property="updateTime"/>
+    </resultMap>
+
     <sql id="Base_Column_List">
         audit_id, product_id, type, status, reason, auditor, audit_time, data, create_by, create_time, update_by, update_time
     </sql>
 
-    <select id="findAll" resultMap="BaseResultMap">
+    <sql id="Join_Column_List">
+        p.name as product_name, p.title as product_title,
+        pa.audit_id, pa.product_id, pa.type, pa.status, pa.reason, pa.auditor, pa.audit_time, pa.data, pa.create_by, pa.create_time, pa.update_by, pa.update_time
+    </sql>
+
+    <select id="findAll" resultMap="JoinResultMap">
         select
-        <include refid="Base_Column_List"/>
-        from pc_product_audit
+        <include refid="Join_Column_List"/>
+        from pc_product_audit as pa left join pc_product as p on pa.product_id = p.product_id
         <where>
+            <if test="criteria.blurry != null and criteria.blurry != ''">
+                and p.name like concat('%', #{criteria.blurry}, '%')
+            </if>
+            <if test="criteria.productName != null and criteria.productName != ''">
+                and p.name like concat('%', #{criteria.productName}, '%')
+            </if>
+            <if test="criteria.blurry != null and criteria.blurry != ''">
+                and p.title like concat('%', #{criteria.blurry}, '%')
+            </if>
+            <if test="criteria.productTitle != null and criteria.productTitle != ''">
+                and p.title like concat('%', #{criteria.productTitle}, '%')
+            </if>
             <if test="criteria.productId != null">
-                and product_id = #{criteria.productId}
+                and pa.product_id = #{criteria.productId}
             </if>
             <if test="criteria.type != null and criteria.type != ''">
-                and type = #{criteria.type}
+                and pa.type = #{criteria.type}
             </if>
             <if test="criteria.status != null">
-                and status = #{criteria.status}
+                and pa.status = #{criteria.status}
+            </if>
+            <if test="criteria.createBy != null and criteria.createBy != ''">
+                and pa.create_by = #{criteria.createBy}
             </if>
         </where>
-        order by audit_id desc
+        order by pa.audit_id desc
     </select>
 </mapper>
\ No newline at end of file
diff --git a/oying-system/src/main/resources/mapper/pc/store/StoreAuditMapper.xml b/oying-system/src/main/resources/mapper/pc/store/StoreAuditMapper.xml
index 45844e3..658d0fc 100644
--- a/oying-system/src/main/resources/mapper/pc/store/StoreAuditMapper.xml
+++ b/oying-system/src/main/resources/mapper/pc/store/StoreAuditMapper.xml
@@ -16,25 +16,55 @@
         <result column="update_time" property="updateTime"/>
     </resultMap>
 
+    <resultMap id="JoinResultMap" type="com.oying.modules.pc.store.view.StoreAuditView">
+        <result column="store_name" property="storeName"/>
+        <result column="audit_id" property="auditId"/>
+        <result column="store_id" property="storeId"/>
+        <result column="type" property="type"/>
+        <result column="status" property="status"/>
+        <result column="data" property="data"/>
+        <result column="reason" property="reason"/>
+        <result column="auditor" property="auditor"/>
+        <result column="audit_time" property="auditTime"/>
+        <result column="create_by" property="createBy"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_by" property="updateBy"/>
+        <result column="update_time" property="updateTime"/>
+    </resultMap>
+
     <sql id="Base_Column_List">
         audit_id, store_id, type, status, reason, auditor, audit_time, data, create_by, create_time, update_by, update_time
     </sql>
 
-    <select id="findAll" resultMap="BaseResultMap">
+    <sql id="Join_Column_List">
+        s.store_name,
+        sa.audit_id, sa.store_id, sa.type, sa.status, sa.reason, sa.auditor, sa.audit_time, sa.data, sa.create_by, sa.create_time, sa.update_by, sa.update_time
+    </sql>
+
+    <select id="findAll" resultMap="JoinResultMap">
         select
-        <include refid="Base_Column_List"/>
-        from pc_store_audit
+        <include refid="Join_Column_List"/>
+        from pc_store_audit as sa left join pc_store s on sa.store_id = s.store_id
         <where>
+            <if test="criteria.blurry != null and criteria.blurry != ''">
+                and s.store_name like concat('%', #{criteria.blurry}, '%')
+            </if>
+            <if test="criteria.storeName != null and criteria.storeName != ''">
+                and s.store_name like concat('%', #{criteria.storeName}, '%')
+            </if>
             <if test="criteria.storeId != null">
-                and store_id = #{criteria.storeId}
+                and sa.store_id = #{criteria.storeId}
             </if>
             <if test="criteria.type != null and criteria.type != ''">
-                and type = #{criteria.type}
+                and sa.type = #{criteria.type}
             </if>
             <if test="criteria.status != null">
-                and status = #{criteria.status}
+                and sa.status = #{criteria.status}
+            </if>
+            <if test="criteria.createBy != null and criteria.createBy != ''">
+                and sa.create_by = #{criteria.createBy}
             </if>
         </where>
-        order by audit_id desc
+        order by sa.audit_id desc
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3