From 169c14380f4d288534d1d1d33c4abcc858494885 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 13 Dec 2023 14:18:21 +0800
Subject: [PATCH] 微信小程序配置

---
 src/main/java/cc/mrbird/febs/mall/vo/ApiOrderRecordListVo.java                |   25 ++++++++
 src/main/resources/mapper/modules/MallProductBuyRecordMapper.xml              |   14 ++++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java |   37 ++++++++++++
 src/main/java/cc/mrbird/febs/mall/mapper/MallProductBuyRecordMapper.java      |    6 ++
 src/main/java/cc/mrbird/febs/mall/mapper/MallProductSellRecordMapper.java     |    5 +
 src/main/java/cc/mrbird/febs/mall/service/IApiMallProductService.java         |    2 
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallProductController.java    |   10 +++
 src/main/java/cc/mrbird/febs/mall/dto/ApiOrderRecordListDto.java              |   20 ++++++
 src/main/resources/mapper/modules/MallProductSellRecordMapper.xml             |   15 +++++
 9 files changed, 134 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallProductController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallProductController.java
index b265991..0b06769 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallProductController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallProductController.java
@@ -48,6 +48,16 @@
         return iApiMallProductService.orderList(apiOrderListDto);
     }
 
+
+    @ApiOperation(value = "FCM-订单管理-列表-新", notes = "FCM-订单管理-列表-新")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiOrderRecordListVo.class)
+    })
+    @PostMapping(value = "/orderRecordList")
+    public FebsResponse orderRecordList(@RequestBody @Valid ApiOrderRecordListDto apiOrderListDto) {
+        return iApiMallProductService.orderRecordList(apiOrderListDto);
+    }
+
     @ApiOperation(value = "FCM-订单管理-查看提现详情", notes = "FCM-订单管理-查看提现详情")
     @ApiResponses({
             @ApiResponse(code = 200, message = "success", response = ApiOrderSellInfoVo.class)
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/ApiOrderRecordListDto.java b/src/main/java/cc/mrbird/febs/mall/dto/ApiOrderRecordListDto.java
new file mode 100644
index 0000000..6156da3
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/ApiOrderRecordListDto.java
@@ -0,0 +1,20 @@
+package cc.mrbird.febs.mall.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ApiOrderRecordListDto", description = "参数接收类")
+public class ApiOrderRecordListDto {
+
+    @ApiModelProperty(value = "一页数量", example = "10")
+    private Integer pageSize;
+
+    @ApiModelProperty(value = "第几页", example = "1")
+    private Integer pageNum;
+
+    @ApiModelProperty(hidden = true)
+    private Long memberId;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallProductBuyRecordMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallProductBuyRecordMapper.java
index 7bd7059..123c7b1 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallProductBuyRecordMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallProductBuyRecordMapper.java
@@ -1,8 +1,12 @@
 package cc.mrbird.febs.mall.mapper;
 
+import cc.mrbird.febs.mall.dto.ApiOrderRecordListDto;
 import cc.mrbird.febs.mall.entity.MallProductBuyRecord;
 import cc.mrbird.febs.mall.vo.ApiOrderBuyRecordInfoVo;
+import cc.mrbird.febs.mall.vo.ApiOrderListVo;
+import cc.mrbird.febs.mall.vo.ApiOrderRecordListVo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -16,4 +20,6 @@
     List<MallProductBuyRecord> selectRecordListByBuyId(@Param("buyId")Long buyId);
 
     List<MallProductBuyRecord> selectByState(@Param("state")int value);
+
+    IPage<ApiOrderRecordListVo> selectListInPage(IPage<ApiOrderRecordListVo> pageBuy, @Param("record")ApiOrderRecordListDto apiOrderListDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallProductSellRecordMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallProductSellRecordMapper.java
index 5618b31..1ecc8d3 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallProductSellRecordMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallProductSellRecordMapper.java
@@ -1,8 +1,11 @@
 package cc.mrbird.febs.mall.mapper;
 
+import cc.mrbird.febs.mall.dto.ApiOrderRecordListDto;
 import cc.mrbird.febs.mall.entity.MallProductSellRecord;
+import cc.mrbird.febs.mall.vo.ApiOrderRecordListVo;
 import cc.mrbird.febs.mall.vo.ApiOrderSellRecordInfoVo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -14,4 +17,6 @@
     List<MallProductSellRecord> selectListBySellId(@Param("sellId")Long sellId,@Param("state")Integer state);
 
     List<MallProductSellRecord> selectListByState(@Param("state")int value);
+
+    IPage<ApiOrderRecordListVo> selectListInPage(IPage<ApiOrderRecordListVo> pageSell, @Param("record")ApiOrderRecordListDto apiOrderListDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallProductService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallProductService.java
index a2f3bcb..ba94424 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallProductService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallProductService.java
@@ -33,4 +33,6 @@
     Boolean operationPermissionMemberFrozen(Long memberId);
 
     FebsResponse orderSellComplain(ApiOrderSellComplainDto apiOrderSellComplainDto);
+
+    FebsResponse orderRecordList(ApiOrderRecordListDto apiOrderListDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java
index 979a4af..e2adb67 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java
@@ -619,4 +619,41 @@
         mallMemberSpeakMapper.insert(mallMemberSpeak);
         return new FebsResponse().success();
     }
+
+    @Override
+    public FebsResponse orderRecordList(ApiOrderRecordListDto apiOrderListDto) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        List<ApiOrderRecordListVo> objects = new ArrayList<>();
+        apiOrderListDto.setMemberId(memberId);
+        DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(DateUtil.date()));
+        DataDictionaryCustom startTimeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.YU_YUE_START_TIME.getType(),
+                DataDictionaryEnum.YU_YUE_START_TIME.getCode()
+        );
+        DateTime startTime = DateUtil.parseTime(startTimeDic.getValue());
+        DataDictionaryCustom endTimeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                DataDictionaryEnum.YU_YUE_END_TIME.getType(),
+                DataDictionaryEnum.YU_YUE_END_TIME.getCode()
+        );
+        DateTime endTime = DateUtil.parseTime(endTimeDic.getValue());
+        if(nowTime.compareTo(startTime) >= 0 && nowTime.compareTo(endTime) <= 0){
+            IPage<ApiOrderRecordListVo> pageBuy = new Page<>(apiOrderListDto.getPageNum(), apiOrderListDto.getPageSize());
+            IPage<ApiOrderRecordListVo> apiOrderListVoIPageBuy = mallProductBuyRecordMapper.selectListInPage(pageBuy, apiOrderListDto);
+            if(CollUtil.isNotEmpty(apiOrderListVoIPageBuy.getRecords())){
+                for(ApiOrderRecordListVo apiOrderListVo : apiOrderListVoIPageBuy.getRecords()){
+                    objects.add(apiOrderListVo);
+                }
+            }
+
+            IPage<ApiOrderRecordListVo> pageSell = new Page<>(apiOrderListDto.getPageNum(), apiOrderListDto.getPageSize());
+            IPage<ApiOrderRecordListVo> apiOrderListVoIPageSell = mallProductSellRecordMapper.selectListInPage(pageSell, apiOrderListDto);
+            if(CollUtil.isNotEmpty(apiOrderListVoIPageSell.getRecords())){
+                for(ApiOrderRecordListVo apiOrderListVo : apiOrderListVoIPageSell.getRecords()){
+                    objects.add(apiOrderListVo);
+                }
+            }
+        }
+
+        return new FebsResponse().success().data(objects);
+    }
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/ApiOrderRecordListVo.java b/src/main/java/cc/mrbird/febs/mall/vo/ApiOrderRecordListVo.java
new file mode 100644
index 0000000..45caa11
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/vo/ApiOrderRecordListVo.java
@@ -0,0 +1,25 @@
+package cc.mrbird.febs.mall.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@ApiModel(value = "ApiOrderRecordListVo", description = "信息返回类")
+public class ApiOrderRecordListVo {
+
+    private Long id;
+    @ApiModelProperty(value = "订单编号")
+    private String orderNo;
+    @ApiModelProperty(value = "时间")
+    private Date createdTime;
+    @ApiModelProperty(value = "数量")
+    private BigDecimal nftTotal;
+    @ApiModelProperty(value = "匹配状态0:失败 1:匹配中 2:待支付 3:已支付 4:对方已确认 5:已完成 6已投诉")
+    private Integer state;//匹配状态0:失败 1:匹配中 2:待支付 3:已支付 4:对方已确认 5:已完成
+    @ApiModelProperty(value = "类型:1:提现(卖单), 2:预约(买单)")
+    private String orderType;
+}
diff --git a/src/main/resources/mapper/modules/MallProductBuyRecordMapper.xml b/src/main/resources/mapper/modules/MallProductBuyRecordMapper.xml
index 11243dc..1922e32 100644
--- a/src/main/resources/mapper/modules/MallProductBuyRecordMapper.xml
+++ b/src/main/resources/mapper/modules/MallProductBuyRecordMapper.xml
@@ -41,4 +41,18 @@
         where a.state = #{state}
     </select>
 
+    <select id="selectListInPage" resultType="cc.mrbird.febs.mall.vo.ApiOrderRecordListVo">
+        select a.id,
+               b.order_no,
+               a.CREATED_TIME
+               a.pick_nft_cnt as nftTotal,
+               a.state,
+               2 as orderType
+        from mall_product_buy_record a
+        left join mall_product_buy b on b.id = a.buy_id
+        where b.state = 1
+          and a.member_id = #{record.memberId}
+        order by a.CREATED_TIME desc
+    </select>
+
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallProductSellRecordMapper.xml b/src/main/resources/mapper/modules/MallProductSellRecordMapper.xml
index f9ad184..cc1b8b2 100644
--- a/src/main/resources/mapper/modules/MallProductSellRecordMapper.xml
+++ b/src/main/resources/mapper/modules/MallProductSellRecordMapper.xml
@@ -33,4 +33,19 @@
         where a.state = #{state}
     </select>
 
+
+    <select id="selectListInPage" resultType="cc.mrbird.febs.mall.vo.ApiOrderRecordListVo">
+        select a.id,
+               b.order_no,
+               a.CREATED_TIME
+            a.nft_cnt as nftTotal,
+               a.state,
+               1 as orderType
+        from mall_product_sell_record a
+                 left join mall_product_buy b on b.id = a.buy_id
+        where b.state = 1
+          and a.member_id = #{record.memberId}
+        order by a.CREATED_TIME desc
+    </select>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1