From 1d2139950d2ef8867c39fa8c8e9af8db178eaa27 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期五, 19 五月 2023 16:21:14 +0800
Subject: [PATCH] demo补完

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java              |    7 +
 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml                                |    9 ++
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/AppMemberGoodsTypeDto.java      |   22 +++++
 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ConsumerGoodsMapper.xml                        |    2 
 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ShoppingCartMapper.xml                         |    4 +
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml                             |   18 ++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java                    |    2 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMemberService.java                   |    5 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberTagEditDto.java            |    4 
 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml                                   |   11 ++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java                |    2 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppHomeController.java        |    2 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/CodeFactoryUtil.java                        |    4 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java             |    2 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java                 |    3 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppGoodsController.java       |    3 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java   |    6 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/ShoppingCartService.java           |    6 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java                        |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java     |   40 +++++++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java |   13 ++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/ShoppingCartMapper.java             |    6 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java         |   30 +++++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ShoppingCartServiceImpl.java  |   10 ++
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java                |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java       |    8 ++
 26 files changed, 210 insertions(+), 17 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMemberService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMemberService.java
index 7311030..2c6f875 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMemberService.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMemberService.java
@@ -3,6 +3,7 @@
 import com.ruoyi.common.core.constant.ServiceNameConstants;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.vo.AppUserCouponVo;
 import com.ruoyi.system.api.factory.RemoteMemberFallbackFactory;
@@ -41,4 +42,8 @@
      */
     @PostMapping("/member/updateMemberBinding")
     public R updateMemberBinding(@RequestBody AppMemberBindingDto appMemberBindingDto);
+
+    @PostMapping("/member/updateMemberGoodsType")
+    public R updateMemberGoodsType(@RequestBody AppMemberGoodsTypeDto appMemberGoodsTypeDto);
+
 }
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/AppMemberGoodsTypeDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/AppMemberGoodsTypeDto.java
new file mode 100644
index 0000000..372a341
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/AppMemberGoodsTypeDto.java
@@ -0,0 +1,22 @@
+package com.ruoyi.system.api.domain.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.HashSet;
+
+/**
+ * @author jqs34
+ * @ClassName AppMemberGoodsTypeDto
+ * @description: TODO
+ * @date 2023年05月19日
+ * @version: 1.0
+ */
+@Data
+public class AppMemberGoodsTypeDto extends AppBaseDto{
+
+    @ApiModelProperty(value = "商品类型")
+    private HashSet<String> goodsTypeSet;
+
+
+}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
index 3b6b49f..889a0a6 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/member/Member.java
@@ -139,6 +139,8 @@
     @TableField("binding_flag")
     private Integer bindingFlag;
 
+    @TableField("goods_type")
+    private String goodsType;
 
     @Override
     protected Serializable pkVal() {
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
index fd73c1d..3dd9eea 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
@@ -4,6 +4,7 @@
 import com.ruoyi.system.api.RemoteMemberService;
 import com.ruoyi.system.api.RemoteUserService;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.poji.sys.SysFile;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
@@ -57,6 +58,11 @@
             public R updateMemberBinding(AppMemberBindingDto appMemberBindingDto) {
                 return R.fail("更新绑定失败:" + throwable.getMessage());
             }
+
+            @Override
+            public R updateMemberGoodsType(AppMemberGoodsTypeDto appMemberGoodsTypeDto) {
+                return R.fail("更新会员商品类型失败:" + throwable.getMessage());
+            }
         };
     }
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
index 77e818e..993c268 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
@@ -6,6 +6,7 @@
 import com.ruoyi.member.service.member.MemberService;
 import com.ruoyi.member.service.member.UserCouponService;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.vo.AppUserCouponVo;
 import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo;
@@ -82,4 +83,11 @@
         memberService.updateMemberBinding(appMemberBindingDto);
         return R.ok();
     }
+
+    @PostMapping("/updateMemberGoodsType")
+    public R updateMemberGoodsType(@RequestBody AppMemberGoodsTypeDto appMemberGoodsTypeDto)
+    {
+        memberService.updateMemberGoodsType(appMemberGoodsTypeDto);
+        return R.ok();
+    }
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberTagEditDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberTagEditDto.java
index f47b0f5..eabf48f 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberTagEditDto.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberTagEditDto.java
@@ -4,6 +4,8 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @author jqs34
  * @ClassName MerMemberTagEditDto
@@ -20,7 +22,7 @@
 
 
     @ApiModelProperty(value = "用户标签多个用,号隔开")
-    private String userTags;
+    private List<String> userTags;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
index 236ed14..c97bc15 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberPageVo.java
@@ -43,5 +43,6 @@
     @ApiModelProperty(value = "用户标签")
     private String userTags;
 
-
+    @ApiModelProperty(value = "商品类型")
+    private String goodsType;
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java
index 828da62..e6c60c2 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java
@@ -29,14 +29,14 @@
      */
     Member selectMemberByUserId(Long userId);
     /**
-     *
+     * 通过openid获取会员
      * @param miniOpenid
      * @return
      */
     Member getOneByMiniOpenid(@Param("miniOpenid")String miniOpenid);
 
     /**
-     *
+     * 商户获取绑定会员
      * @param page
      * @return
      */
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
index e704f1e..d2a6216 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -27,6 +27,7 @@
 import com.ruoyi.system.api.constant.SecurityConstant;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.poji.shop.Shop;
@@ -364,6 +365,7 @@
         merMemberInfoVo.setPhonenumber(member.getMobile());
         merMemberInfoVo.setAvatar(member.getAvatar());
         merMemberInfoVo.setBirthday(member.getBirthday());
+        merMemberInfoVo.setUserTags(member.getUserTags());
         //未完成
 
         return merMemberInfoVo;
@@ -453,7 +455,14 @@
     @Override
     public void editMerMemberTags(MerMemberTagEditDto merMemberTagEditDto){
         Member member = this.getByUserId(merMemberTagEditDto.getMemberUserId());
-        member.setUserTags(merMemberTagEditDto.getUserTags());
+        List<String> userTags = merMemberTagEditDto.getUserTags();
+        StringJoiner sj = new StringJoiner(",");
+        if(userTags!=null&&!userTags.isEmpty()){
+            for(String str : userTags){
+                sj.add(str);
+            }
+        }
+        member.setUserTags(sj.toString());
         this.saveOrUpdate(member);
     }
 
@@ -546,4 +555,33 @@
         Member member = this.getOne(queryWrapper);
         return member;
     }
+
+    /**
+     * 更新用户商品类型
+     * @param appMemberGoodsTypeDto
+     */
+    @Override
+    public void updateMemberGoodsType(AppMemberGoodsTypeDto appMemberGoodsTypeDto){
+        Member member = this.getByUserId(appMemberGoodsTypeDto.getUserId());
+        HashSet<String> goodsTypeSet = appMemberGoodsTypeDto.getGoodsTypeSet();
+        if(member!=null){
+            String goodsType = member.getGoodsType();
+            Boolean change = false;
+            for(String str : goodsTypeSet){
+                if(goodsType != null){
+                    if(!goodsType.contains(str)){
+                        goodsType = goodsType + "," + str;
+                        change = true;
+                    }
+                }else{
+                    goodsType = str;
+                    change = true;
+                }
+            }
+            if(change){
+                member.setGoodsType(goodsType);
+                this.saveOrUpdate(member);
+            }
+        }
+    }
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java
index e2b24cc..4ebed12 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java
@@ -5,6 +5,7 @@
 import com.ruoyi.member.domain.vo.*;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo;
 import com.ruoyi.system.api.model.AppMiniLoginDto;
@@ -125,4 +126,10 @@
      * @return
      */
     Member getByMobile(String mobile);
+
+    /**
+     * 更新用户商品类型
+     * @param appMemberGoodsTypeDto
+     */
+    void updateMemberGoodsType(AppMemberGoodsTypeDto appMemberGoodsTypeDto);
 }
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
index c8b5668..52f9512 100644
--- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
@@ -25,10 +25,11 @@
         <result property="userTags"    column="user_tags"    />
         <result property="avatar"    column="avatar"    />
         <result property="bindingFlag"    column="binding_flag"    />
+        <result property="goodsType"    column="goods_type"    />
     </resultMap>
 
     <sql id="selectMemberVo">
-        select user_id, del_flag, member_id, member_no, wx_openid, mini_openid, wx_unionid, relation_shop_id, nick_name, real_name, mobile, gender, referrer, customer_source, level, birthday, create_time, update_time, update_user_id, user_tags, avatar, binding_flag from t_member
+        select user_id, del_flag, member_id, member_no, wx_openid, mini_openid, wx_unionid, relation_shop_id, nick_name, real_name, mobile, gender, referrer, customer_source, level, birthday, create_time, update_time, update_user_id, user_tags, avatar, binding_flag, goods_type from t_member
     </sql>
 
     <select id="selectMemberList" parameterType="com.ruoyi.system.api.domain.poji.member.Member" resultMap="MemberResult">
@@ -151,9 +152,22 @@
         0 recommendNum,
         0 surpNum,
         tm.birthday birthday,
-        tm.user_tags userTags
+        tm.user_tags userTags,
+        tm.goods_type goodsType
         FROM t_member tm
         WHERE tm.relation_shop_id = #{param.shopId}
+        <if test="param.memberGender != null and param.memberGender != ''">
+            AND tm.gender = #{param.memberGender}
+        </if>
+        <if test="param.memberTag != null and param.memberTag != ''">
+            AND FIND_IN_SET(tm.user_tags, #{param.memberTag})
+        </if>
+        <if test="param.startMemberDate!=null and param.startMemberDate!=''">
+            AND tm.create_time &gt;= #{param.startMemberDate}
+        </if>
+        <if test="param.endMemberDate!=null and param.endMemberDate!=''">
+            AND tm.create_time &lt;= #{param.endMemberDate}
+        </if>
         <if test="param.keyword != null and param.keyword != ''">
             AND (tm.real_name LIKE CONCAT('%',#{param.keyword},'%') OR tm.mobile LIKE CONCAT('%',#{param.keyword},'%') OR tm.referrer LIKE CONCAT('%',#{param.keyword},'%'))
         </if>
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppGoodsController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppGoodsController.java
index 676834d..36637bb 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppGoodsController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppGoodsController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.order.controller.miniapp;
 
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.web.controller.BaseController;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.order.domain.vo.AppShoppingCartVo;
@@ -54,7 +55,7 @@
             if(member!=null&&member.getRelationShopId()!=null){
                 appGoodsInfoGetDto.setShopId(member.getRelationShopId());
             }else{
-                appGoodsInfoGetDto.setShopId(1L);
+                throw new ServiceException("请先获取附近商户定位");
             }
         }
         AppGoodsInfoVo appGoodsInfoVo = goodsService.getGoodsInfo(appGoodsInfoGetDto);
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppHomeController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppHomeController.java
index a764811..b54b1a3 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppHomeController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppHomeController.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.web.controller.BaseController;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.AppPageDto;
@@ -47,6 +48,7 @@
     @ApiOperation(value = "推荐商品")
     public R<Page<AppSimpleGoodsVo>> pageRecommendGoods(@RequestBody AppPageDto appPageDto) {
         Long userId = SecurityUtils.getUserId();
+        logger.info("userId-----"+userId.toString());
         Long shopId = null;
         if(userId!=null){
             Member member = memberService.getMember(userId).getData();
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java
index b8f4384..f4ac294 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/AppUserOrderPageVo.java
@@ -26,7 +26,7 @@
     @ApiModelProperty(value = "订单状态0.已取消1.待支付2.待核销3.已完成")
     private Integer orderStatus;
 
-    @ApiModelProperty("订单来源1.商城2.秒杀活动3.线下创建")
+    @ApiModelProperty("订单来源1.商城订单2.秒杀活动3.线下创建")
     private Integer orderFrom;
 
     @ApiModelProperty("订单商品列表")
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
index 6a80a15..ead9be7 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
@@ -42,7 +42,7 @@
 
 
     /**
-     *
+     * 分页获取商户订单
      * @param merOrderPageDto
      * @return
      */
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/ShoppingCartMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/ShoppingCartMapper.java
index 9c703b6..940dd1a 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/ShoppingCartMapper.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/ShoppingCartMapper.java
@@ -32,4 +32,10 @@
      * @return
      */
     List<AppShoppingCartVo> listShoppingCartVo(@Param("userId") Long userId, @Param("shopId")Long shopId);
+
+    /**
+     * 删除购物车
+     * @param
+     */
+    void deleteByUserIdAndGoodsId(@Param("userId")Long userId,@Param("goodsId")String goodsId);
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
index 2200084..b9de969 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.order.domain.dto.*;
 import com.ruoyi.order.domain.pojo.order.ConsumerGoods;
 import com.ruoyi.order.domain.pojo.order.UserServiceRecord;
@@ -119,8 +120,16 @@
                 shopId = consumerGoods.getShopId();
                 userId= consumerGoods.getUserId();
                 serviceType = consumerGoods.getGoodsType();
-                consumerGoodsIds = consumerGoodsIds + consumerGoods.getConsumerGoodsId();
-                consumerGoodsNames = consumerGoodsNames + consumerGoods.getGoodsName();
+                if(StringUtils.isBlank(consumerGoodsIds)){
+                    consumerGoodsIds = consumerGoods.getConsumerGoodsId();
+                }else{
+                    consumerGoodsIds = consumerGoodsIds + "," + consumerGoods.getConsumerGoodsId();
+                }
+                if(StringUtils.isBlank(consumerGoodsNames)){
+                    consumerGoodsNames = consumerGoods.getGoodsName();
+                }else{
+                    consumerGoodsNames = consumerGoodsNames + "、" + consumerGoods.getGoodsName();
+                }
             }
             UserServiceRecord userServiceRecord = new UserServiceRecord();
             userServiceRecord.setCreateTime(new Date());
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index 7b8da7d..f3863f9 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -16,11 +16,13 @@
 import com.ruoyi.order.domain.pojo.order.ConsumerGoods;
 import com.ruoyi.order.domain.pojo.order.Order;
 import com.ruoyi.order.domain.pojo.order.OrderGoods;
+import com.ruoyi.order.domain.pojo.order.ShoppingCart;
 import com.ruoyi.order.domain.vo.*;
 import com.ruoyi.order.service.goods.GoodsFileService;
 import com.ruoyi.order.service.goods.ShopGoodsService;
 import com.ruoyi.order.service.order.ConsumerGoodsService;
 import com.ruoyi.order.service.order.OrderGoodsService;
+import com.ruoyi.order.service.order.ShoppingCartService;
 import com.ruoyi.order.util.CodeFactoryUtil;
 import com.ruoyi.system.api.RemoteMemberService;
 import com.ruoyi.system.api.RemoteShopService;
@@ -28,6 +30,7 @@
 import com.ruoyi.system.api.constant.AppErrorConstant;
 import com.ruoyi.system.api.domain.dto.AppBaseGetDto;
 import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
+import com.ruoyi.system.api.domain.dto.AppMemberGoodsTypeDto;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.poji.shop.Shop;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
@@ -82,6 +85,9 @@
 
     @Resource
     private ConsumerGoodsService consumerGoodsService;
+
+    @Resource
+    private ShoppingCartService shoppingCartService;
 
     /**
      * @description: buyGoods
@@ -244,6 +250,8 @@
         String orderNo = CodeFactoryUtil.getShopOrderNo();
         OrderGoods orderGoods;
         String orderGoodsId;
+        ShoppingCart shoppingCart;
+        HashSet<String> goodsTypeSet = new HashSet<>();
         for(AppBuyGoodsDto appBuyGoodsDto : appBuyGoodsDtoList){
             appSureOrderGoodsVo = new AppSureOrderGoodsVo();
             useCoupon = 0;
@@ -326,6 +334,17 @@
             orderGoods.setServiceNum(serviceNum);
             orderGoods.setGoodsType(goods.getGoodsType());
             orderGoodsService.save(orderGoods);
+            //清空购物车
+            shoppingCartService.deleteByUserIdAndGoodsId(userId,goodsId);
+            if(goods.getGoodsType()==1){
+                goodsTypeSet.add("周期");
+            }else if(goods.getGoodsType()==2){
+                goodsTypeSet.add("服务");
+            }else if(goods.getGoodsType()==3){
+                goodsTypeSet.add("体验");
+            }else if(goods.getGoodsType()==4){
+                goodsTypeSet.add("单品");
+            }
         }
         Order order = new Order();
         order.setOrderId(orderId);
@@ -358,10 +377,18 @@
         order.setGoodsNum(goodsNum);
         order.setCreateTime(new Date());
         this.save(order);
+        //更新用户商品类型
+        if(goodsTypeSet!=null&&goodsTypeSet.size()>0){
+            AppMemberGoodsTypeDto appMemberGoodsTypeDto = new AppMemberGoodsTypeDto();
+            appMemberGoodsTypeDto.setUserId(userId);
+            appMemberGoodsTypeDto.setGoodsTypeSet(goodsTypeSet);
+            remoteMemberService.updateMemberGoodsType(appMemberGoodsTypeDto);
+        }
         appPlaceOrderVo.setOrderId(orderId);
         appPlaceOrderVo.setOrderNo(orderNo);
 
         //调用支付
+
 
         return appPlaceOrderVo;
     }
@@ -577,6 +604,9 @@
         merVerifyOrderVo.setPayMoney(order.getPayMoney());
         merVerifyOrderVo.setOrderRemark(order.getOrderRemark());
         merVerifyOrderVo.setAppUserOrderGoodsPageVoList(appUserOrderGoodsPageVoList);
+        merVerifyOrderVo.setCreateTime(order.getCreateTime());
+        merVerifyOrderVo.setPayTime(order.getPayTime());
+        merVerifyOrderVo.setUseTime(order.getUseTime());
         SysUser sysUser = remoteUserService.getSysUser(order.getUserId()).getData();
         merVerifyOrderVo.setUserName(sysUser.getNickName());
         merVerifyOrderVo.setUserMobile(sysUser.getPhonenumber());
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ShoppingCartServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ShoppingCartServiceImpl.java
index 7d79531..8bd1025 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ShoppingCartServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ShoppingCartServiceImpl.java
@@ -114,4 +114,14 @@
     public List<AppShoppingCartVo> listShoppingCartVo(Long userId, Long shopId){
         return shoppingCartMapper.listShoppingCartVo(userId, shopId);
     }
+
+    /**
+     * 删除购物车
+     * @param
+     */
+    @Override
+    public void deleteByUserIdAndGoodsId(Long userId,String goodsId){
+        shoppingCartMapper.deleteByUserIdAndGoodsId(userId,goodsId);
+    }
+
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/ShoppingCartService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/ShoppingCartService.java
index 1fab16a..9053ae9 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/ShoppingCartService.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/ShoppingCartService.java
@@ -38,6 +38,12 @@
     void deleteShoppingCart(AppBaseBathDto appBaseBathDto);
 
     /**
+     * 删除购物车
+     * @param
+     */
+    void deleteByUserIdAndGoodsId(Long userId,String goodsId);
+
+    /**
      *
      * @param userId
      * @param shopId
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/CodeFactoryUtil.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/CodeFactoryUtil.java
index c060fc6..5d64ef4 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/CodeFactoryUtil.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/util/CodeFactoryUtil.java
@@ -7,6 +7,7 @@
 import org.apache.commons.lang3.time.DateUtils;
 import org.apache.poi.ss.usermodel.DateUtil;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
 
 import java.security.SecureRandom;
 import java.util.Date;
@@ -20,6 +21,7 @@
  * @date 2023年02月13日
  * @version: 1.0
  */
+@Component
 public class CodeFactoryUtil {
 
 
@@ -28,7 +30,7 @@
 
     //将静态属性以入参(形参)的方式传入一个方法中,然后将此方法通过 @Autowired 注入到Spring容器中
     @Autowired
-    public  void setService(RedisService redisService) {
+    public void setService(RedisService redisService) {
         CodeFactoryUtil.redisService = redisService;
     }
 
diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ConsumerGoodsMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ConsumerGoodsMapper.xml
index 0fc407a..6ed6f5c 100644
--- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ConsumerGoodsMapper.xml
+++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ConsumerGoodsMapper.xml
@@ -134,7 +134,7 @@
         INNER JOIN t_goods_file tgf ON tgf.goods_id = tg.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1
         WHERE tcg.del_flag = 0 AND tcg.user_id = #{param.userId} AND tcg.shop_id = #{param.shopId}
         <if test="param.goodsType != null">
-            AND tg.goods_type = #{param.goodsType}
+            AND tcg.goods_type = #{param.goodsType}
         </if>
         ORDER BY tcg.cycle_num_flag ASC, tcg.create_time DESC
     </select>
diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
index dac81a6..f142769 100644
--- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
+++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -276,6 +276,15 @@
         <if test="param.type != null and param.type ==3 ">
             AND toc.order_status = 3
         </if>
+        <if test="param.orderFrom != null and param.orderFrom != '' ">
+            AND toc.order_from = #{param.orderFrom}
+        </if>
+        <if test="param.startOrderDate != null and param.startOrderDate != '' ">
+            AND toc.create_time &gt;= #{param.startOrderDate}
+        </if>
+        <if test="param.endOrderDate != null and param.endOrderDate != '' ">
+            AND toc.create_time &lt;= #{param.endOrderDate}
+        </if>
         <if test="param.keyword != null and param.keyword != ''">
             AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR tg.goods_name LIKE CONCAT('%',#{param.keyword},'%'))
         </if>
diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ShoppingCartMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ShoppingCartMapper.xml
index 8279101..3c4f30f 100644
--- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ShoppingCartMapper.xml
+++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/ShoppingCartMapper.xml
@@ -103,4 +103,8 @@
         WHERE tsc.del_flag = 0 AND tg.del_flag = 0 AND tsc.shop_id = #{shopId} AND tsc.user_id = #{userId} AND tg.del_flag = 0 AND tg.goods_status = 1 AND tg.recommend_flag = 1
         ORDER BY tg.create_time DESC
     </select>
+
+    <update id="deleteByUserIdAndGoodsId">
+        UPDATE t_shopping_cart SET del_flag = 1 WHERE user_id = #{userId} AND goods_id = #{goodsId}
+    </update>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java
index e22248c..61e4582 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java
@@ -32,7 +32,7 @@
 
 
     /**
-     *
+     * 分页获取代理商
      * @param page
      * @param merAgencyPageDto
      * @return
@@ -40,7 +40,7 @@
     List<MerAgencyPageVo> pageMerAgencyVo (Page page,  @Param("param")MerAgencyPageDto merAgencyPageDto);
 
     /**
-     *
+     * 获取最近商户
      * @param appNearbyShopDto
      * @return
      */
diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
index 9d24942..2bbd79e 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
+++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -318,11 +318,20 @@
         ts.shopowner_phone shopownerPhone,
         ts.cooperation_end_time cooperationEndTime
         FROM t_shop ts
-        WHERE ts.del_flag = 0 AND ts.shop_id = #{param.shopId}
+        WHERE ts.del_flag = 0 AND ts.belong_shop_id = #{param.shopId}
+        <if test="param.shopStatus!=null and param.shopStatus!=''">
+            AND ts.shop_status = #{param.shopStatus}
+        </if>
         <if test="param.keyword!=null and param.keyword!=''">
             AND (ts.shop_name LIKE CONCAT('%',#{param.keyword},'%') OR ts.shopowner_name LIKE CONCAT('%',#{param.keyword},'%')
             OR ts.shopowner_phone LIKE CONCAT('%',#{param.keyword},'%'))
         </if>
+        <if test="param.startCooperDate!=null and param.startCooperDate!=''">
+            AND ts.cooperation_start_time &gt;= #{param.startCooperDate}
+        </if>
+        <if test="param.endCooperDate!=null and param.endCooperDate!=''">
+            AND ts.cooperation_end_time &lt;= #{param.endCooperDate}
+        </if>
     </select>
 
     <select id="getNearbyShop"  resultType="com.ruoyi.shop.domain.vo.AppNearShopVo">

--
Gitblit v1.7.1