Commit 5f1fb88b authored by libin's avatar libin

会员订单列表

parent 7c6a4e8a
...@@ -14,10 +14,12 @@ import com.github.wxiaoqi.security.common.config.rabbit.RabbitConstant; ...@@ -14,10 +14,12 @@ import com.github.wxiaoqi.security.common.config.rabbit.RabbitConstant;
import com.github.wxiaoqi.security.common.constant.UserConstant; import com.github.wxiaoqi.security.common.constant.UserConstant;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.im.utils.StringUtil;
import com.xxfc.platform.universal.entity.IdInformation; import com.xxfc.platform.universal.entity.IdInformation;
import com.xxfc.platform.universal.feign.MQSenderFeign; import com.xxfc.platform.universal.feign.MQSenderFeign;
import com.xxfc.platform.universal.feign.ThirdFeign; import com.xxfc.platform.universal.feign.ThirdFeign;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -45,6 +47,7 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { ...@@ -45,6 +47,7 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
private static final String WX_TYPE = "wx"; private static final String WX_TYPE = "wx";
private static final String QQ_TYPE = "q"; private static final String QQ_TYPE = "q";
private static final String ALIPAY_TYPE = "aliPay";
@Autowired @Autowired
ThirdFeign thirdFeign; ThirdFeign thirdFeign;
...@@ -54,6 +57,12 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { ...@@ -54,6 +57,12 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
@Autowired @Autowired
AppUserDetailBiz appUserDetailBiz; AppUserDetailBiz appUserDetailBiz;
@Autowired
private AppUserAlipayBiz appUserAlipayBiz;
@Autowired
private AppUserRelationBiz appUserRelationBiz;
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
@Override @Override
public void insertSelective(AppUserLogin entity) { public void insertSelective(AppUserLogin entity) {
...@@ -398,16 +407,19 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { ...@@ -398,16 +407,19 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
public List<Integer> findAppuser(String phone, String leaderPhone, String name) { public List<Integer> findAppuser(String phone, String leaderPhone, String name) {
List<Integer> memberIds = null; List<Integer> memberIds = null;
//1.根据leader手机号查询userid //1.根据leader手机号查询userid
List<AppUserLogin> appUserLogins = mapper.selectbyPhones(Arrays.asList(leaderPhone)); boolean isNoNullLeaderPhone = StringUtils.isNotEmpty(leaderPhone) && leaderPhone.trim().length()>0;
Integer leaderId = null; if (isNoNullLeaderPhone) {
if (CollectionUtils.isNotEmpty(appUserLogins)) { List<AppUserLogin> appUserLogins = mapper.selectbyPhones(Arrays.asList(leaderPhone));
leaderId = appUserLogins.get(0).getId(); Integer leaderId = null;
} if (CollectionUtils.isNotEmpty(appUserLogins)) {
leaderId = appUserLogins.get(0).getId();
}
//2.根据leader userId查询下级 userid //2.根据leader userId查询下级 userid
if (Objects.nonNull(leaderId)) { if (Objects.nonNull(leaderId)) {
List<AppUserRelation> appUserRelationList = appUserRelationBiz.findMemberPageByLeaderId(leaderId); List<AppUserRelation> appUserRelationList = appUserRelationBiz.findMemberPageByLeaderId(leaderId);
memberIds = appUserRelationList.stream().map(AppUserRelation::getUserId).collect(Collectors.toList()); memberIds = appUserRelationList.stream().map(AppUserRelation::getUserId).collect(Collectors.toList());
} }
}
List<Integer> userIds = mapper.findAppUser(phone, name, memberIds); List<Integer> userIds = mapper.findAppUser(phone, name, memberIds);
return userIds==null?Collections.EMPTY_LIST:userIds; return userIds==null?Collections.EMPTY_LIST:userIds;
} }
......
...@@ -2,6 +2,7 @@ package com.github.wxiaoqi.security.admin.rest; ...@@ -2,6 +2,7 @@ package com.github.wxiaoqi.security.admin.rest;
import com.github.wxiaoqi.security.admin.biz.*; import com.github.wxiaoqi.security.admin.biz.*;
import com.github.wxiaoqi.security.admin.bo.UserBo; import com.github.wxiaoqi.security.admin.bo.UserBo;
import com.github.wxiaoqi.security.admin.dto.AccountBindDTO;
import com.github.wxiaoqi.security.admin.entity.*; import com.github.wxiaoqi.security.admin.entity.*;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.vo.AppUserGroups; import com.github.wxiaoqi.security.admin.vo.AppUserGroups;
...@@ -324,7 +325,7 @@ public class AppUserController extends CommonBaseController{ ...@@ -324,7 +325,7 @@ public class AppUserController extends CommonBaseController{
} }
@PostMapping("/bind") @PostMapping("/bind")
private ObjectRestResponse accountBinding(@RequestBody AccountBindDTO accountBindDTO,HttpServletRequest request){ private ObjectRestResponse accountBinding(@RequestBody AccountBindDTO accountBindDTO, HttpServletRequest request){
try { try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request)); IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
return appUserLoginBiz.bindAccount(accountBindDTO, Integer.valueOf(infoFromToken.getId()), request); return appUserLoginBiz.bindAccount(accountBindDTO, Integer.valueOf(infoFromToken.getId()), request);
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
</select> </select>
<select id="findAppUser" resultType="integer"> <select id="findAppUser" resultType="integer">
select `id` from (select `id` from `app_user_login` where aul.isdel=0 select aul.`id` from (select `id` from `app_user_login` where `isdel`=0
<if test="phone!=null and phone!=''"> <if test="phone!=null and phone!=''">
and `username`=#{phone} and `username`=#{phone}
</if> </if>
......
...@@ -4,6 +4,7 @@ import com.github.wxiaoqi.security.common.vo.PageParam; ...@@ -4,6 +4,7 @@ import com.github.wxiaoqi.security.common.vo.PageParam;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* @author libin * @author libin
...@@ -34,4 +35,5 @@ public class MemberOrderFindDTO extends PageParam { ...@@ -34,4 +35,5 @@ public class MemberOrderFindDTO extends PageParam {
*/ */
private String facilitatePhone; private String facilitatePhone;
private Boolean isExport; private Boolean isExport;
private List<Integer> userIds;
} }
...@@ -28,5 +28,5 @@ public class MemberOrderStatisticsBo { ...@@ -28,5 +28,5 @@ public class MemberOrderStatisticsBo {
* 普通 * 普通
*/ */
private Integer generalOrderNum; private Integer generalOrderNum;
private BigDecimal generalAmount; private BigDecimal totalGeneralAmount;
} }
...@@ -145,12 +145,12 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements ...@@ -145,12 +145,12 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> implements
} }
public PageDataVO<MemberOrderBo> findMemberOrderPage(List<Integer> userIds, MemberOrderFindDTO memberOrderFindDTO){ public PageDataVO<MemberOrderBo> findMemberOrderPage(MemberOrderFindDTO memberOrderFindDTO){
return PageDataVO.pageInfo(memberOrderFindDTO.getPage(),memberOrderFindDTO.getLimit(),()->mapper.findMemberOrders(userIds,memberOrderFindDTO)); return PageDataVO.pageInfo(memberOrderFindDTO.getPage(),memberOrderFindDTO.getLimit(),()->mapper.findMemberOrders(memberOrderFindDTO));
} }
public List<MemberOrderBo> findMemberOrders(List<Integer> userIds, MemberOrderFindDTO memberOrderFindDTO) { public List<MemberOrderBo> findMemberOrders(MemberOrderFindDTO memberOrderFindDTO) {
return mapper.findMemberOrders(userIds,memberOrderFindDTO); return mapper.findMemberOrders(memberOrderFindDTO);
} }
// public List<MemberOrderBo> // public List<MemberOrderBo>
......
...@@ -35,6 +35,6 @@ public interface BaseOrderMapper extends Mapper<BaseOrder> { ...@@ -35,6 +35,6 @@ public interface BaseOrderMapper extends Mapper<BaseOrder> {
public List<OrderPageVO> selectAllTourOrder(Map<String, Object> paramMap); public List<OrderPageVO> selectAllTourOrder(Map<String, Object> paramMap);
List<MemberOrderBo> findMemberOrders(@Param("userIds") List<Integer> userIds, @Param("memberOrder") MemberOrderFindDTO memberOrderFindDTO); List<MemberOrderBo> findMemberOrders(MemberOrderFindDTO memberOrderFindDTO);
} }
...@@ -206,10 +206,15 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -206,10 +206,15 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
boolean isNoNullLeaderPhone = StringUtils.isNotEmpty(memberOrderFindDTO.getPhone()) && memberOrderFindDTO.getPhone().trim().length() > 0; boolean isNoNullLeaderPhone = StringUtils.isNotEmpty(memberOrderFindDTO.getPhone()) && memberOrderFindDTO.getPhone().trim().length() > 0;
if (isNoNullLeaderPhone || isNoNullPhone || isNoNullUserName) { if (isNoNullLeaderPhone || isNoNullPhone || isNoNullUserName) {
userIds = userFeign.findAppUserIds(memberOrderFindDTO.getPhone(),memberOrderFindDTO.getLeaderPhone(),memberOrderFindDTO.getName()); userIds = userFeign.findAppUserIds(memberOrderFindDTO.getPhone(),memberOrderFindDTO.getLeaderPhone(),memberOrderFindDTO.getName());
if (CollectionUtils.isEmpty(userIds)){
memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo);
memberOrderPageVo.setMemberOrderPage(pageDataVO);
return memberOrderPageVo;
}
} }
if (memberOrderFindDTO.getPage() == 1){ if (memberOrderFindDTO.getPage() == 1){
List<MemberOrderBo> baseOrders = baseOrderBiz.findMemberOrders(userIds,memberOrderFindDTO); memberOrderFindDTO.setUserIds(userIds);
List<MemberOrderBo> baseOrders = baseOrderBiz.findMemberOrders(memberOrderFindDTO);
if (CollectionUtils.isEmpty(baseOrders)){ if (CollectionUtils.isEmpty(baseOrders)){
memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo); memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo);
return memberOrderPageVo; return memberOrderPageVo;
...@@ -217,16 +222,19 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -217,16 +222,19 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
memberOrderStatisticsBo = getMemberOrderStatisticsBo(baseOrders); memberOrderStatisticsBo = getMemberOrderStatisticsBo(baseOrders);
} }
memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo); memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo);
List<MemberOrderBo> memberOrderBoList; List<MemberOrderBo> memberOrderBoList;
if (!memberOrderFindDTO.getIsExport()){ if (!memberOrderFindDTO.getIsExport()){
pageDataVO = baseOrderBiz.findMemberOrderPage(userIds,memberOrderFindDTO); memberOrderFindDTO.setUserIds(userIds);
pageDataVO = baseOrderBiz.findMemberOrderPage(memberOrderFindDTO);
memberOrderBoList = pageDataVO.getData(); memberOrderBoList = pageDataVO.getData();
if (CollectionUtils.isEmpty(memberOrderBoList)){ if (CollectionUtils.isEmpty(memberOrderBoList)){
memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo); memberOrderPageVo.setMemberOrderStatisticsBo(memberOrderStatisticsBo);
return memberOrderPageVo; return memberOrderPageVo;
} }
}else { }else {
memberOrderBoList = baseOrderBiz.findMemberOrders(userIds,memberOrderFindDTO); memberOrderFindDTO.setUserIds(userIds);
memberOrderBoList = baseOrderBiz.findMemberOrders(memberOrderFindDTO);
} }
memberOrderBoList = getUserBos(memberOrderBoList); memberOrderBoList = getUserBos(memberOrderBoList);
pageDataVO.setData(memberOrderBoList); pageDataVO.setData(memberOrderBoList);
...@@ -282,7 +290,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -282,7 +290,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
generalOrders = generalOrders==null?Collections.EMPTY_LIST:generalOrders; generalOrders = generalOrders==null?Collections.EMPTY_LIST:generalOrders;
memberOrderStatisticsBo.setGeneralOrderNum(generalOrders.size()); memberOrderStatisticsBo.setGeneralOrderNum(generalOrders.size());
BigDecimal generalAmount = generalOrders.stream().map(MemberOrderBo::getOrderAmount).reduce(BigDecimal.ZERO, (x, y) -> x.add(y)); BigDecimal generalAmount = generalOrders.stream().map(MemberOrderBo::getOrderAmount).reduce(BigDecimal.ZERO, (x, y) -> x.add(y));
memberOrderStatisticsBo.setGeneralAmount(generalAmount); memberOrderStatisticsBo.setTotalGeneralAmount(generalAmount);
return memberOrderStatisticsBo; return memberOrderStatisticsBo;
} }
......
...@@ -304,34 +304,34 @@ ...@@ -304,34 +304,34 @@
`base_order` `base_order`
WHERE WHERE
type = 3 and <![CDATA[`member_level`<>0]]> type = 3 and <![CDATA[`member_level`<>0]]>
<if test="memberOrder.orderNo!=null and memberOrder.orderNo!=''"> <if test="orderNo!=null and orderNo!=''">
and `no`=#{orderNo} and `no`=#{orderNo}
</if> </if>
<if test="memberOrder.state!=null"> <if test="state!=null">
and `status`=#{state} and `status`=#{state}
</if> </if>
<if test="memberOrder.level !=null"> <if test="level !=null">
and `member_level`=#{level} and `member_level`=#{level}
</if> </if>
<if test="memberOrder.facilitatePhone!=null and memberOrder.facilitatePhone!=''"> <if test="facilitatePhone!=null and facilitatePhone!=''">
and `facilitate_phone`=#{facilitatePhone} and `facilitate_phone`=#{facilitatePhone}
</if> </if>
<if test="memberOrder.startOrderTime!=null and memberOrder.endOrderTime!=null"> <if test="startOrderTime!=null and endOrderTime!=null">
and `crt_time` between #{startOrderTime} and #{endOrderTime} and `crt_time` between #{startOrderTime} and #{endOrderTime}
</if> </if>
<if test="memberOrder.startOrderTime!=null and memberOrder.endOrderTime==null"> <if test="startOrderTime!=null and endOrderTime==null">
and `crt_time` <![CDATA[>=#{startOrderTime}]]> and `crt_time` <![CDATA[>=#{startOrderTime}]]>
</if> </if>
<if test="memberOrder.endOrderTime!=null and memberOrder.startOrderTime==null"> <if test="endOrderTime!=null and startOrderTime==null">
and `crt_time` <![CDATA[<=#{endOrderTime}]]> and `crt_time` <![CDATA[<=#{endOrderTime}]]>
</if> </if>
<if test="memberOrder.startPayTime!=null and memberOrder.endPayTime!=null"> <if test="startPayTime!=null and endPayTime!=null">
and `pay_time` between #{startPayTime} and #{startPayTime} and `pay_time` between #{startPayTime} and #{startPayTime}
</if> </if>
<if test="memberOrder.startPayTime!=null and memberOrder.endPayTime==null"> <if test="startPayTime!=null and endPayTime==null">
and `pay_time` <![CDATA[>=#{startPayTime}]]> and `pay_time` <![CDATA[>=#{startPayTime}]]>
</if> </if>
<if test="memberOrder.endPayTime!=null and memberOrder.startPayTime==null"> <if test="endPayTime!=null and startPayTime==null">
and `pay_time` <![CDATA[<=#{endPayTime}]]> and `pay_time` <![CDATA[<=#{endPayTime}]]>
</if> </if>
<if test="userIds!=null and userIds.size()>0"> <if test="userIds!=null and userIds.size()>0">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment