diff --git a/pluss-api-page/src/main/java/cn/pluss/platform/controller/MainPageController.java b/pluss-api-page/src/main/java/cn/pluss/platform/controller/MainPageController.java index 70e0c16..373fef8 100644 --- a/pluss-api-page/src/main/java/cn/pluss/platform/controller/MainPageController.java +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/MainPageController.java @@ -65,12 +65,12 @@ public class MainPageController { */ @GetMapping("/userApp/teamControl") public Result teamControl(String name, - @RequestParam(defaultValue = "1") Integer page, + @RequestParam(defaultValue = "1") Integer current, @RequestParam(defaultValue = "10") Integer size, @RequestParam("typeCode") String typeCode){ UserApp result = userAppService.queryUserBaseInfoByToken(); Map merchantProfitVOS = merchantProfitService.teamList(typeCode, result.getUserId(), - page,size,name); + current,size,name); return ResultGenerator.genSuccessResult(merchantProfitVOS); } diff --git a/pluss-api-page/src/main/java/cn/pluss/platform/controller/MerchantProfitController.java b/pluss-api-page/src/main/java/cn/pluss/platform/controller/MerchantProfitController.java index efdcf0a..f07acc1 100644 --- a/pluss-api-page/src/main/java/cn/pluss/platform/controller/MerchantProfitController.java +++ b/pluss-api-page/src/main/java/cn/pluss/platform/controller/MerchantProfitController.java @@ -14,6 +14,8 @@ import cn.pluss.platform.merchantOrder.MerchantOrderService; import cn.pluss.platform.merchantProfit.MerchantProfitService; import cn.pluss.platform.userApp.UserAppService; import cn.pluss.platform.util.StringUtil; +import cn.pluss.platform.vo.MerchantProfitVO; +import cn.pluss.platform.vo.ProfitOrderVO; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -124,7 +126,7 @@ public class MerchantProfitController { map.put("endTime", sdf.parse(endTime)); } } - + //直属 List merchantProfitList = merchantProfitService.queryMerchantProfitPage(map); if (merchantProfitList != null && merchantProfitList.size() > 0) { @@ -253,5 +255,17 @@ public class MerchantProfitController { merchantProfit = merchantProfitService.queryMerchantProfit(merchantProfit); return ResultGenerator.genSuccessResult(merchantProfit); } + + @GetMapping("/profitOrderList") + public Result> ProfitOrderList(@RequestParam Integer type, @RequestParam Integer page, + @RequestParam Integer size){ + UserApp userApp = userAppService.queryUserAppByToken(); + Integer pageSize = size; + Integer offset = (page-1) * size; + if (type == 1) { + return ResultGenerator.genSuccessResult(merchantProfitMapper.directlyOrder(userApp.getUserId(), pageSize, offset)); + } + return ResultGenerator.genSuccessResult(merchantProfitMapper.teamOrder(userApp.getUserId(), pageSize, offset)); + } } diff --git a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/MerchantProfitMapper.java b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/MerchantProfitMapper.java index b132cc6..781d829 100644 --- a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/MerchantProfitMapper.java +++ b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/MerchantProfitMapper.java @@ -1,9 +1,12 @@ package cn.pluss.platform.mapper; +import cn.pluss.platform.api.PageInfo; import cn.pluss.platform.dto.MerchantFeeDTO; import cn.pluss.platform.entity.MerchantChannelStatus; import cn.pluss.platform.entity.MerchantProfit; +import cn.pluss.platform.vo.DeviceGoodsVO; import cn.pluss.platform.vo.MerchantProfitVO; +import cn.pluss.platform.vo.ProfitOrderVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -115,7 +118,7 @@ public interface MerchantProfitMapper extends BaseMapper { BigDecimal getConsumeFeeTeamToday(@Param("userId") String userId); List getTeamList(@Param("typeCode") String typeCode, @Param("userId") Long userId, - @Param("page") Integer page, @Param("size") Integer size, @Param("userName") String userName); + @Param("userName") String userName); @Select("SELECT\n" + "\tcount(*) \n" + @@ -128,5 +131,17 @@ public interface MerchantProfitMapper extends BaseMapper { List getChannelStatus(@Param("merchantCode") String merchantCode); + /** + * 直属交易 + * @param userId + * @param pageSize + * @param offset + * @return + */ + List directlyOrder(@Param("userId") Long userId,@Param("pageSize") Integer pageSize,@Param("offset") Integer offset); + /** + * 团队交易 + */ + List teamOrder(@Param("userId") Long userId,@Param("pageSize") Integer pageSize,@Param("offset") Integer offset); } diff --git a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserAppMapper.java b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserAppMapper.java index a3fcd5b..be580a4 100644 --- a/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserAppMapper.java +++ b/pluss-dao-bundle/src/main/java/cn/pluss/platform/mapper/UserAppMapper.java @@ -2,6 +2,7 @@ package cn.pluss.platform.mapper; import java.io.Serializable; import java.math.BigDecimal; +import java.util.Date; import java.util.List; import java.util.Map; @@ -16,6 +17,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.Data; import lombok.val; import org.apache.ibatis.annotations.Mapper; import cn.pluss.platform.entity.UserApp; @@ -145,6 +147,7 @@ public interface UserAppMapper extends BaseMapper { * 获取指定进件状态的商户 */ Integer selectUserAppWithChannelStatusCount(@Param(Constants.WRAPPER) Wrapper updateWrapper); + Integer selectUserAppWithChannelStatusCountV2(@Param("userId") String userId, @Param("startTime") Date startTime, @Param("endTime") Date endTime); /** * 获取指定进件状态的商户 diff --git a/pluss-dao-bundle/src/main/resources/mapper/MerchantProfit-sqlmap.xml b/pluss-dao-bundle/src/main/resources/mapper/MerchantProfit-sqlmap.xml index a362487..a42cce8 100644 --- a/pluss-dao-bundle/src/main/resources/mapper/MerchantProfit-sqlmap.xml +++ b/pluss-dao-bundle/src/main/resources/mapper/MerchantProfit-sqlmap.xml @@ -248,17 +248,14 @@ @@ -923,7 +921,10 @@ WHERE up.parent_user_id = #{userId} AND up.type_code = #{typeCode} - order by ua.userId ASC limit #{page}, #{size} + + AND ua.userName = #{userName} + + order by ua.userId DESC + + diff --git a/pluss-dao-bundle/src/main/resources/mapper/UserApp-sqlmap.xml b/pluss-dao-bundle/src/main/resources/mapper/UserApp-sqlmap.xml index 1e4698a..6e1cba4 100644 --- a/pluss-dao-bundle/src/main/resources/mapper/UserApp-sqlmap.xml +++ b/pluss-dao-bundle/src/main/resources/mapper/UserApp-sqlmap.xml @@ -1666,4 +1666,15 @@ left join tb_pluss_user_info ui on ua.userId = ui.id where ui.phone = #{phone} and userType not in ('agent_staff','staff') AND LENGTH(ui.phone) = 11 + diff --git a/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/ProfitOrderVO.java b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/ProfitOrderVO.java new file mode 100644 index 0000000..d41906b --- /dev/null +++ b/pluss-model-bundle/src/main/java/cn/pluss/platform/vo/ProfitOrderVO.java @@ -0,0 +1,20 @@ +package cn.pluss.platform.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 直推间推商户收款 + * @author lyf + */ +@Data +public class ProfitOrderVO { + + private String merchantName; + + private BigDecimal consumeFee; + private String transDt; + + private String orderNumber; +} diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/app/impl/PromoterMainPageServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/app/impl/PromoterMainPageServiceImpl.java index 5cc4552..f7d6175 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/app/impl/PromoterMainPageServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/app/impl/PromoterMainPageServiceImpl.java @@ -8,6 +8,7 @@ import cn.pluss.platform.entity.UserApp; import cn.pluss.platform.entity.UserPromotion; import cn.pluss.platform.exception.MsgException; import cn.pluss.platform.mapper.MerchantProfitMapper; +import cn.pluss.platform.mapper.UserAppMapper; import cn.pluss.platform.mapper.UserPromotionMapper; import cn.pluss.platform.merchantOrder.MerchantOrderStatisticsService; import cn.pluss.platform.merchantProfit.MerchantProfitService; @@ -49,6 +50,8 @@ public class PromoterMainPageServiceImpl implements MainPageService { private MerchantProfitMapper merchantProfitMapper; @Resource private UserPromotionMapper userPromotionMapper; + @Resource + private UserAppMapper userAppMapper; @Override public Map getSpreadData(String userId) { @@ -91,11 +94,7 @@ public class PromoterMainPageServiceImpl implements MainPageService { BigDecimal todaySum = merchantProfitMapper.getTodaySum(userId); //今日新增商户数 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("parentId", queryUserApp.getUserId()); - queryWrapper.in("merchantAuditStatus", 3, 4); - queryWrapper.between("createDt", DateUtils.getDayBegin(), DateUtils.getDayEnd()); - Integer newMerchantCount = userAppService.getUserAppWithChannelStatus(queryWrapper); + Integer newMerchantCount = userAppMapper.selectUserAppWithChannelStatusCountV2(userId, DateUtils.getDayBegin(), DateUtils.getDayEnd()); //直属商户交易 BigDecimal consumeFee = merchantProfitMapper.getConsumeFee(userId); //团队商户交易 diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantProfit/impl/MerchantProfitServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantProfit/impl/MerchantProfitServiceImpl.java index da4fc7c..c4fac28 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantProfit/impl/MerchantProfitServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/merchantProfit/impl/MerchantProfitServiceImpl.java @@ -1,6 +1,7 @@ package cn.pluss.platform.merchantProfit.impl; import cn.hutool.core.util.ObjectUtil; +import cn.pluss.platform.api.PageInfo; import cn.pluss.platform.constants.Constant; import cn.pluss.platform.entity.*; import cn.pluss.platform.enums.BstLevelCode; @@ -30,6 +31,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; @Service @@ -124,12 +126,13 @@ public class MerchantProfitServiceImpl extends ServiceImpl teamList = merchantProfitMapper.getTeamList(typeCode, userId, page,size,name); + // PageInfo teamList= merchantProfitMapper.getTeamList(typeCode, userId, page,size,name); Integer countChild = merchantProfitMapper.getCountChild(userId, typeCode); //商户列表 if ("MC".equals(typeCode)) { + List teamList = merchantProfitMapper.getTeamList(typeCode, userId,name); for (MerchantProfitVO values : teamList) { if (values.getMerchantCode() != null) { String merchantCode = values.getMerchantCode(); @@ -156,17 +159,21 @@ public class MerchantProfitServiceImpl extends ServiceImpl hashMap = new HashMap<>(); hashMap.put("total", countChild); hashMap.put("teamList", teamList); return hashMap; } //团队管理 + List teamList = merchantProfitMapper.getTeamList(typeCode, userId,name); for (MerchantProfitVO values : teamList) { - values.setYestedayConsumeFee(mapperOrderMapper.getPlatformAmtYestday(values.getMerchantCode(), + values.setCurrentMonth(mapperOrderMapper.getPlatformAmtYestday(values.getMerchantCode(), DateUtils.getBeginDayOfMonth(), DateUtils.getEndDayOfMonth())); values.setConsumeFee(mapperOrderMapper.getAmountData(values.getMerchantCode())); } + teamList = teamList.stream().skip(page * size).limit(size).collect(Collectors.toList()); HashMap hashMap = new HashMap<>(); hashMap.put("total", countChild); hashMap.put("teamList", teamList);