From d305641870004e685e17a12f7779697ba966f01f Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期二, 08 八月 2023 17:25:27 +0800
Subject: [PATCH] 后台代码--积分远程调用

---
 cloud-server-account/src/main/java/com/dsh/account/mapper/UserIntegralChangesMapper.java            |    7 ++
 cloud-server-account/src/main/java/com/dsh/account/controller/UserIntegralChangesController.java    |   20 ++++++
 cloud-server-account/src/main/resources/mapper/UserIntegralChangesMapper.xml                        |   19 ++++++
 cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java |   22 +++++++
 cloud-server-account/src/main/java/com/dsh/account/entity/UserIntegral.java                         |   51 +++++++++++++++++
 cloud-server-account/src/main/java/com/dsh/account/model/IntegralListQuery.java                     |   21 +++++++
 cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java          |    6 ++
 7 files changed, 146 insertions(+), 0 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/UserIntegralChangesController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/UserIntegralChangesController.java
index 41f6691..6616844 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/UserIntegralChangesController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/UserIntegralChangesController.java
@@ -1,9 +1,16 @@
 package com.dsh.account.controller;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dsh.account.entity.UserIntegral;
+import com.dsh.account.entity.UserIntegralChanges;
+import com.dsh.account.model.IntegralListQuery;
 import com.dsh.account.model.SaveUserIntegralChangesVo;
 import com.dsh.account.service.UserIntegralChangesService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author zhibing.pu
@@ -30,4 +37,17 @@
             e.printStackTrace();
         }
     }
+
+    @PostMapping("/userIntegralChanges/list")
+    public List<UserIntegral> list(@RequestBody IntegralListQuery integralListQuery){
+        try {
+            Page<UserIntegral> userIntegralPage = new Page<>(integralListQuery.getOffset(), integralListQuery.getLimit());
+
+            List<UserIntegral> list = userIntegralChangesService.listAll(userIntegralPage,integralListQuery);
+            return list;
+        }catch (Exception e){
+            e.printStackTrace();
+            return new ArrayList<>();
+        }
+    }
 }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/entity/UserIntegral.java b/cloud-server-account/src/main/java/com/dsh/account/entity/UserIntegral.java
new file mode 100644
index 0000000..598adc3
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/entity/UserIntegral.java
@@ -0,0 +1,51 @@
+package com.dsh.account.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.baomidou.mybatisplus.extension.activerecord.Model;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 用户积分变动记录
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-07-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("t_user_integral_changes")
+public class UserIntegral extends Model<UserIntegral> {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+    private String city;
+    private String  province;
+    private String name;
+    private String phone;
+    private Integer type;
+    private Integer oldIntegral;
+    private Integer newIntegral;
+    private Integer integral;
+    private Integer category;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date insertTime;
+    private String remark;
+
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/mapper/UserIntegralChangesMapper.java b/cloud-server-account/src/main/java/com/dsh/account/mapper/UserIntegralChangesMapper.java
index 72bff09..a4046ad 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/mapper/UserIntegralChangesMapper.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/mapper/UserIntegralChangesMapper.java
@@ -1,7 +1,13 @@
 package com.dsh.account.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dsh.account.entity.UserIntegral;
 import com.dsh.account.entity.UserIntegralChanges;
+import com.dsh.account.model.IntegralListQuery;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +19,5 @@
  */
 public interface UserIntegralChangesMapper extends BaseMapper<UserIntegralChanges> {
 
+    List<UserIntegral> listAll(@Param("userIntegralPage") Page<UserIntegral> userIntegralPage, @Param("query") IntegralListQuery integralListQuery, @Param("sTime") String sTime, @Param("eTime") String eTime);
 }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/IntegralListQuery.java b/cloud-server-account/src/main/java/com/dsh/account/model/IntegralListQuery.java
new file mode 100644
index 0000000..09a3c8a
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/IntegralListQuery.java
@@ -0,0 +1,21 @@
+package com.dsh.account.model;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class IntegralListQuery {
+    private long offset;
+    private long limit;
+
+    private String name;
+
+    private String phone;
+
+    private Integer type;
+    private Integer category;
+    private String time;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java b/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
index c753574..3d4da18 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
@@ -1,7 +1,10 @@
 package com.dsh.account.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.dsh.account.entity.UserIntegral;
 import com.dsh.account.entity.UserIntegralChanges;
+import com.dsh.account.model.IntegralListQuery;
 import com.dsh.account.model.SaveUserIntegralChangesVo;
 import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsResponse;
 import com.dsh.account.model.vo.userBenefitDetail.IntegralsData;
@@ -34,4 +37,7 @@
 
     PointDetailsVo queryRedemptionDetails(Integer detailsId);
 
+    List<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery);
+
+
 }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
index 68321ea..238dd4d 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
@@ -1,12 +1,15 @@
 package com.dsh.account.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.dsh.account.entity.TAppUser;
+import com.dsh.account.entity.UserIntegral;
 import com.dsh.account.entity.UserIntegralChanges;
 import com.dsh.account.feignclient.activity.MerChandiseClient;
 import com.dsh.account.mapper.TAppUserMapper;
 import com.dsh.account.mapper.UserIntegralChangesMapper;
+import com.dsh.account.model.IntegralListQuery;
 import com.dsh.account.model.SaveUserIntegralChangesVo;
 import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsResponse;
 import com.dsh.account.model.vo.userBenefitDetail.IntegralsData;
@@ -140,4 +143,23 @@
     public PointDetailsVo queryRedemptionDetails(Integer detailsId) {
         return mcClient.getSpecificsOfGoods(detailsId);
     }
+
+    @Override
+    public List<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery) {
+        String sTime =null;
+        String eTime =null;
+        if(ToolUtil.isNotEmpty(integralListQuery.getTime())){
+            sTime = integralListQuery.getTime().split(" - ")[0]+" 00:00:00";
+            eTime = integralListQuery.getTime().split(" - ")[1]+" 23:59:59";
+        }
+        List<UserIntegral> userIntegrals = this.baseMapper.listAll(userIntegralPage, integralListQuery, sTime, eTime);
+        for (UserIntegral userIntegral : userIntegrals) {
+            if(userIntegral.getCategory()==1){
+                userIntegral.setIntegral(userIntegral.getNewIntegral()-userIntegral.getOldIntegral());
+            }else {
+                userIntegral.setIntegral(userIntegral.getOldIntegral()-userIntegral.getNewIntegral());
+            }
+        }
+        return userIntegrals;
+    }
 }
diff --git a/cloud-server-account/src/main/resources/mapper/UserIntegralChangesMapper.xml b/cloud-server-account/src/main/resources/mapper/UserIntegralChangesMapper.xml
index 5f858ec..1485779 100644
--- a/cloud-server-account/src/main/resources/mapper/UserIntegralChangesMapper.xml
+++ b/cloud-server-account/src/main/resources/mapper/UserIntegralChangesMapper.xml
@@ -3,4 +3,23 @@
 <mapper namespace="com.dsh.account.mapper.UserIntegralChangesMapper">
 
 
+    <select id="listAll" resultType="com.dsh.account.entity.UserIntegral">
+        select t1.id,t2.province,t2.city,t2.name,t2.phone,t1.type,t1.oldIntegral,t1.newIntegral,t1.category ,t1.insertTime,t1.remark from t_user_integral_changes t1  left join t_app_user t2 on t1.appUserId = t2.id
+        where 1=1
+        <if test="query.name !=null and query.name !=''">
+            and t2.name like concat("%",#{query.name},"%")
+        </if>
+        <if test="query.phone !=null and query.phone !=''">
+            and t2.phone like concat("%",#{query.phone},"%")
+        </if>
+        <if test="query.type !=null ">
+            and t1.type like concat("%",#{query.type},"%")
+        </if>
+        <if test="query.category !=null ">
+            and t1.category like concat("%",#{query.category},"%")
+        </if>
+        <if test="sTime !=null ">
+            and t1.insertTime between #{sTime} and #{eTime}
+        </if>
+    </select>
 </mapper>

--
Gitblit v1.7.1