Ver código fonte

星闪豹支付改动

wangming 1 semana atrás
pai
commit
bdba6bca8d

+ 31 - 0
yami-shop-bean/src/main/java/com/yami/shop/bean/po/PointsRecordPo.java

@@ -0,0 +1,31 @@
+
+package com.yami.shop.bean.po;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class PointsRecordPo {
+
+    @ApiModelProperty("手机号")
+    private String mobile;
+
+    @ApiModelProperty("业务类型 CZ-充值 XD-下单 TK-退款 GQ-过期")
+    private String businessType;
+
+    @ApiModelProperty("开始时间")
+    private String startTime;
+
+    @ApiModelProperty("结束时间")
+    private String endTime;
+
+    @ApiModelProperty("页码")
+    private int pageNum;
+
+    @ApiModelProperty("每页记录数")
+    private int pageSize;
+}

+ 41 - 0
yami-shop-bean/src/main/java/com/yami/shop/bean/vo/PointsRecordVo.java

@@ -0,0 +1,41 @@
+
+package com.yami.shop.bean.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDateTime;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class PointsRecordVo {
+
+    @ApiModelProperty("流水号")
+    private String code;
+
+    @ApiModelProperty("姓名")
+    private String realName;
+
+    @ApiModelProperty("手机号")
+    private String mobile;
+
+    @ApiModelProperty("变动积分")
+    private String variablePoints;
+
+    @ApiModelProperty("变动后积分")
+    private String currentlyAvailablePoints;
+
+    @ApiModelProperty("创建时间")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime creationDate;
+
+    @ApiModelProperty("业务类型 CZ-充值 XD-下单 TK-退款 GQ-过期")
+    private String businessType;
+
+}

+ 11 - 2
yami-shop-platform/src/main/java/com/yami/shop/platform/controller/PointsRecordController.java

@@ -3,11 +3,13 @@ package com.yami.shop.platform.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.yami.shop.bean.model.PointsRecharge;
 import com.yami.shop.bean.model.PointsRecord;
+import com.yami.shop.bean.po.PointsRecordPo;
+import com.yami.shop.bean.vo.PointsRecordVo;
 import com.yami.shop.common.util.PageParam;
 import com.yami.shop.common.util.R;
 import com.yami.shop.service.PointsRecordService;
+import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.bind.annotation.*;
@@ -34,7 +36,7 @@ public class PointsRecordController {
      */
     @GetMapping("/page")
     public R<IPage<PointsRecord>> page(PageParam<PointsRecord> pageParam) {
-        IPage<PointsRecord> page = pointsRecordService.page(pageParam,new QueryWrapper<PointsRecord>().orderByDesc("creationDate"));
+        IPage<PointsRecord> page = pointsRecordService.page(pageParam, new QueryWrapper<PointsRecord>().orderByDesc("creationDate"));
         return R.SUCCESS(page);
     }
 
@@ -73,4 +75,11 @@ public class PointsRecordController {
         pointsRecordService.removeByIds(Arrays.asList(ids));
         return R.SUCCESS();
     }
+
+    @GetMapping("/backendPointsRecordList")
+    @ApiOperation("后台-积分使用记录")
+    public R<IPage<PointsRecordVo>> backendOrderList(PointsRecordPo po) {
+        return R.SUCCESS(pointsRecordService.backendPointsRecordList(po));
+    }
+
 }

+ 4 - 0
yami-shop-service/src/main/java/com/yami/shop/dao/PointsRecordMapper.java

@@ -3,8 +3,11 @@ package com.yami.shop.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yami.shop.bean.dto.ScoreDataDto;
 import com.yami.shop.bean.model.PointsRecord;
+import com.yami.shop.bean.po.PointsRecordPo;
+import com.yami.shop.bean.vo.PointsRecordVo;
 import com.yami.shop.common.util.PageParam;
 import org.apache.ibatis.annotations.Param;
 
@@ -27,4 +30,5 @@ public interface PointsRecordMapper extends BaseMapper<PointsRecord> {
 
     List<PointsRecord> findByExpiredPoints(@Param("today")Date today,@Param("yesterday") Date yesterday);
 
+    IPage<PointsRecordVo> backendPointsRecordList(@Param("page") Page<PointsRecordVo> page, @Param("po") PointsRecordPo po);
 }

+ 4 - 0
yami-shop-service/src/main/java/com/yami/shop/service/PointsRecordService.java

@@ -1,8 +1,11 @@
 // PointsRecordService.java
 package com.yami.shop.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.yami.shop.bean.model.PointsRecord;
+import com.yami.shop.bean.po.PointsRecordPo;
+import com.yami.shop.bean.vo.PointsRecordVo;
 
 /**
  * 积分记录详细 Service接口
@@ -14,4 +17,5 @@ public interface PointsRecordService extends IService<PointsRecord> {
 
     void expiredPoints(String todayStr,String yesterdayStr);
 
+    IPage<PointsRecordVo> backendPointsRecordList(PointsRecordPo po);
 }

+ 9 - 0
yami-shop-service/src/main/java/com/yami/shop/service/impl/PointsRecordServiceImpl.java

@@ -1,7 +1,11 @@
 package com.yami.shop.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yami.shop.bean.model.PointsRecord;
+import com.yami.shop.bean.po.PointsRecordPo;
+import com.yami.shop.bean.vo.PointsRecordVo;
 import com.yami.shop.dao.PointsRecordMapper;
 import com.yami.shop.service.PointsRecordService;
 import lombok.AllArgsConstructor;
@@ -60,6 +64,11 @@ public class PointsRecordServiceImpl extends ServiceImpl<PointsRecordMapper, Poi
         }
     }
 
+    @Override
+    public IPage<PointsRecordVo> backendPointsRecordList(PointsRecordPo po) {
+        return baseMapper.backendPointsRecordList(new Page<>(po.getPageNum(), po.getPageSize()), po);
+    }
+
     /**
      * @param dateStr string类型的时间
      * @param type    标识是否为当天

+ 37 - 0
yami-shop-service/src/main/resources/mapper/PointsRecordMapper.xml

@@ -111,5 +111,42 @@
                                         points,variable_points, 4 as points_type,points_audit,expiry_date,expiry_date as creation_date,currently_available_points from tz_points_record   where   expiry_date =#{today}  GROUP BY user_id ,channel_id
                          ) a where a.points>0
     </select>
+    <select id="backendPointsRecordList" resultType="com.yami.shop.bean.vo.PointsRecordVo">
+        SELECT a.`code`, b.real_name,b.user_mobile mobile ,IF(a.points_type in(1,3),CONCAT('+',a.variable_points),CONCAT('-',a.variable_points)) variable_points,a.currently_available_points,a.creation_date,
+               CASE
+                   WHEN a.points_type = 1 THEN '充值'
+                   WHEN a.points_type = 2 THEN '下单'
+                   WHEN a.points_type = 3 THEN '退款'
+                   WHEN a.points_type = 4 THEN '过期'
+                   ELSE '其他'
+                   END AS business_type
+        FROM `tz_points_record` a
+                 LEFT JOIN tz_user b on a.user_id=b.user_id
+        <where>
+            <if test="po.mobile != null and po.mobile != ''">
+                AND b.user_mobile LIKE CONCAT("%",#{po.mobile},"%")
+            </if>
+            <if test="po.startTime != null and po.startTime != ''">
+                and ort.create_time&gt;= #{po.startTime}
+            </if>
+            <if test="po.endTime != null and po.endTime != ''">
+                and ort.create_time&lt;= #{po.endTime}
+            </if>
+            <if test="po.businessType != null and po.businessType != ''">
+                <if test="po.businessType == 'CZ'">
+                    AND a.points_type = 1
+                </if>
+                <if test="po.businessType == 'XD'">
+                    AND a.points_type = 2
+                </if>
+                <if test="po.businessType == 'TK'">
+                    AND a.points_type = 3
+                </if>
+                <if test="po.businessType == 'GQ'">
+                    AND a.points_type = 4
+                </if>
+            </if>
+        </where>
+    </select>
 
 </mapper>