From d5c0d74f06a70a946f9c34c0ea922bf3b9b4dafe Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 21 Jul 2023 17:19:23 +0800
Subject: [PATCH] 订单支付后生成对应的课程单

---
 src/main/java/cc/mrbird/febs/mall/entity/MallGoods.java                         |    2 
 src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java                  |    8 +-
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |    1 
 src/main/resources/mapper/modules/MallMemberMapper.xml                          |   12 ++++
 src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsDto.java                      |    2 
 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java            |    4 +
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java    |   21 +++++++
 src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html          |    9 +++
 src/main/java/cc/mrbird/febs/mall/dto/ApiMemberClassDto.java                    |   16 +++++
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java       |   22 ++++++-
 src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java            |    8 +-
 src/main/java/cc/mrbird/febs/mall/dto/ApiMemberHouseDto.java                    |   20 ++++++
 src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html       |   10 +++
 src/main/java/cc/mrbird/febs/mall/dto/MallGoodsUpdateDto.java                   |    2 
 14 files changed, 127 insertions(+), 10 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
index 4da30b0..ac5e043 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -2,9 +2,7 @@
 
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.mall.dto.*;
-import cc.mrbird.febs.mall.entity.MallMember;
-import cc.mrbird.febs.mall.entity.MallMemberPayment;
-import cc.mrbird.febs.mall.entity.MallRollPerk;
+import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.service.*;
 import cc.mrbird.febs.mall.vo.*;
 import io.swagger.annotations.Api;
@@ -230,4 +228,22 @@
         return new FebsResponse().success().data(memberService.findMallRollPerkInPage(queryDto));
     }
 
+    @ApiOperation(value = "获取我的课程", notes = "获取我的课程")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = MallMemberClass.class)
+    })
+    @PostMapping(value = "/memberClass")
+    public FebsResponse memberClass(@RequestBody ApiMemberClassDto queryDto) {
+        return new FebsResponse().success().data(memberService.findMallMemberClassInPage(queryDto));
+    }
+
+    @ApiOperation(value = "获取我的民宿", notes = "获取我的民宿")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = MallMemberHouse.class)
+    })
+    @PostMapping(value = "/memberHouse")
+    public FebsResponse memberHouse(@RequestBody ApiMemberHouseDto queryDto) {
+        return new FebsResponse().success().data(memberService.findMallMemberHouseInPage(queryDto));
+    }
+
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsDto.java b/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsDto.java
index ccdeb00..e4443ca 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/AddMallGoodsDto.java
@@ -97,5 +97,7 @@
 
     private String houseName;
     private String houseAddress;
+    //1:虚拟产品 2:实物
+    private Integer isUnreal;
 
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberClassDto.java b/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberClassDto.java
new file mode 100644
index 0000000..76b0faf
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberClassDto.java
@@ -0,0 +1,16 @@
+package cc.mrbird.febs.mall.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ApiMemberClassDto", description = "参数接收类")
+public class ApiMemberClassDto {
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private Integer pageNow;
+
+    @ApiModelProperty(value = "每页数量", example = "10")
+    private Integer pageSize;
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberHouseDto.java b/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberHouseDto.java
new file mode 100644
index 0000000..24f2fe6
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/ApiMemberHouseDto.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 = "ApiMemberHouseDto", description = "参数接收类")
+public class ApiMemberHouseDto {
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private Integer pageNow;
+
+    @ApiModelProperty(value = "每页数量", example = "10")
+    private Integer pageSize;
+
+    @ApiModelProperty(value = "1:待使用 2:已使用3:已过期", example = "10")
+    private Integer state;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsUpdateDto.java b/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsUpdateDto.java
index d7e6028..fb2c0f8 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsUpdateDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsUpdateDto.java
@@ -102,4 +102,6 @@
 
     private String houseName;
     private String houseAddress;
+    //1:虚拟产品 2:实物
+    private Integer isUnreal;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallGoods.java b/src/main/java/cc/mrbird/febs/mall/entity/MallGoods.java
index ba25dab..88aca3f 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallGoods.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallGoods.java
@@ -132,4 +132,6 @@
 
     private String houseName;
     private String houseAddress;
+    //1:虚拟产品 2:实物
+    private Integer isUnreal;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
index 86db1ef..993ae13 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
@@ -4,9 +4,7 @@
 import cc.mrbird.febs.mall.dto.AgentLevelDto;
 import cc.mrbird.febs.mall.dto.RankAwardDto;
 import cc.mrbird.febs.mall.dto.RankListDto;
-import cc.mrbird.febs.mall.entity.AppVersion;
-import cc.mrbird.febs.mall.entity.MallMember;
-import cc.mrbird.febs.mall.entity.MallRollPerk;
+import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.vo.*;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -90,4 +88,8 @@
     MallMember selectMemberByOpenId(@Param("openId")String openId);
 
     IPage<MallRollPerk> findMallRollPerkInPage(Page<MallRollPerk> page, @Param("record")MallRollPerk mallRollPerk);
+
+    IPage<MallMemberClass> findMallMemberClassInPage(Page<MallMemberClass> page, @Param("record")MallMemberClass mallMemberClass);
+
+    IPage<MallMemberHouse> findMallMemberHouseInPage(Page<MallMemberHouse> page, @Param("record")MallMemberHouse mallMemberHouse);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
index ca0bf13..ee10ae5 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -85,4 +85,8 @@
     FebsResponse agentApplyInfo();
 
     FebsResponse findMallRollPerkInPage(ApiMallRollPerkDto queryDto);
+
+    FebsResponse findMallMemberClassInPage(ApiMemberClassDto queryDto);
+
+    FebsResponse findMallMemberHouseInPage(ApiMemberHouseDto queryDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
index d76f35a..c97917e 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -388,6 +388,10 @@
             if(ObjectUtil.isEmpty(mallGoods)){
                 break;
             }
+            if(1 == mallGoods.getIsUnreal()){
+                mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
+                mallOrderInfoMapper.updateById(mallOrderInfo);
+            }
             //是否送券 1:是 2:否
             BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice();
             if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){
@@ -396,8 +400,6 @@
                 mallRollPerk.setState(1);
                 mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue());
                 mallRollPerkMapper.insert(mallRollPerk);
-                mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
-                mallOrderInfoMapper.updateById(mallOrderInfo);
             }
             //赠送积分
             BigDecimal levelOnePrice = mallGoods.getLevelOnePrice();
@@ -446,7 +448,7 @@
             mallMemberClassMapper.insert(mallMemberClass);
             return;
         }else if(5 == isNormal){
-            //课程卷
+            //民宿卷
             MallMemberHouse mallMemberHouse = new MallMemberHouse();
             mallMemberHouse.setOrderId(orderId);
             mallMemberHouse.setMemberId(memberId);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index c03ac96..1cef8c7 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -843,6 +843,27 @@
         return new FebsResponse().success().data(mallGoodsCommentVoIPage);
     }
 
+    @Override
+    public FebsResponse findMallMemberClassInPage(ApiMemberClassDto queryDto) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        MallMemberClass mallMemberClass = new MallMemberClass();
+        Page<MallMemberClass> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
+        mallMemberClass.setMemberId(memberId);
+        IPage<MallMemberClass> mallMemberClassList = this.baseMapper.findMallMemberClassInPage(page,mallMemberClass);
+        return new FebsResponse().success().data(mallMemberClassList);
+    }
+
+    @Override
+    public FebsResponse findMallMemberHouseInPage(ApiMemberHouseDto queryDto) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        MallMemberHouse mallMemberHouse = new MallMemberHouse();
+        Page<MallMemberHouse> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
+        mallMemberHouse.setMemberId(memberId);
+        mallMemberHouse.setState(queryDto.getState());
+        IPage<MallMemberHouse> mallMemberHouseList = this.baseMapper.findMallMemberHouseInPage(page,mallMemberHouse);
+        return new FebsResponse().success().data(mallMemberHouseList);
+    }
+
     private  String getXcxLoginUrl(String code) {
         String wechatLoginUrl =xcxProperties.getWecharLoginUrl();
         return String.format(wechatLoginUrl, xcxProperties.getXcxAppid(), xcxProperties.getXcxSecret(), code);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index fa38e24..197378f 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -394,7 +394,6 @@
 
                 orderInfo.setPayOrderNo(payOrderDto.getRollId().toString());
                 orderInfo.setPayMethod("兑换券支付");
-                orderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
 
diff --git a/src/main/resources/mapper/modules/MallMemberMapper.xml b/src/main/resources/mapper/modules/MallMemberMapper.xml
index 4ae63c4..44c4bdb 100644
--- a/src/main/resources/mapper/modules/MallMemberMapper.xml
+++ b/src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -416,4 +416,16 @@
         </if>
     </select>
 
+    <select id="findMallMemberClassInPage" resultType="cc.mrbird.febs.mall.entity.MallMemberClass">
+        select * from mall_member_class
+        where member_id = #{record.memberId}
+    </select>
+
+    <select id="findMallMemberHouseInPage" resultType="cc.mrbird.febs.mall.entity.MallMemberHouse">
+        select * from mall_member_house
+        where member_id = #{record.memberId}
+        <if test="record.state != null and record.state != ''">
+            and state = #{record.state}
+        </if>
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
index 5724f53..fc5d4ae 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
@@ -105,6 +105,15 @@
                                                 </select>
                                             </div>
                                         </div>
+                                        <div class="layui-form-item">
+                                            <label class="layui-form-label febs-form-item-require">商品品类</label>
+                                            <div class="layui-input-block">
+                                                <select name="isUnreal" class="goods-type">
+                                                    <option value="1">【虚拟产品】。即购买结束,订单自动完成。</option>
+                                                    <option value="2">【实物】。需要收到发货,客户确认。</option>
+                                                </select>
+                                            </div>
+                                        </div>
 
                                         <div class="layui-form-item febs-hide house-set">
                                             <label class="layui-form-label">酒店名称:</label>
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
index 1134308..748e7eb 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
@@ -114,6 +114,15 @@
                                                 </select>
                                             </div>
                                         </div>
+                                        <div class="layui-form-item">
+                                            <label class="layui-form-label febs-form-item-require">商品品类</label>
+                                            <div class="layui-input-block">
+                                                <select name="isUnreal" class="goods-type">
+                                                    <option value="1">【虚拟产品】。即购买结束,订单自动完成。</option>
+                                                    <option value="2">【实物】。需要收到发货,客户确认。</option>
+                                                </select>
+                                            </div>
+                                        </div>
 
                                         <div class="layui-form-item febs-hide house-set">
                                             <label class="layui-form-label">酒店名称:</label>
@@ -793,6 +802,7 @@
                 "levelThreePrice": goodsInfo.levelThreePrice,
                 "houseName": goodsInfo.houseName,
                 "houseAddress": goodsInfo.houseAddress,
+                "isUnreal": goodsInfo.isUnreal,
                 "costPrice": goodsInfo.costPrice,
                 "isSku": goodsInfo.isSku,
                 "thumb": goodsInfo.thumb,

--
Gitblit v1.9.1