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 >= #{param.startMemberDate} + </if> + <if test="param.endMemberDate!=null and param.endMemberDate!=''"> + AND tm.create_time <= #{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 >= #{param.startOrderDate} + </if> + <if test="param.endOrderDate != null and param.endOrderDate != '' "> + AND toc.create_time <= #{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 >= #{param.startCooperDate} + </if> + <if test="param.endCooperDate!=null and param.endCooperDate!=''"> + AND ts.cooperation_end_time <= #{param.endCooperDate} + </if> </select> <select id="getNearbyShop" resultType="com.ruoyi.shop.domain.vo.AppNearShopVo"> -- Gitblit v1.7.1