| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 |
- package com.ydtech.modules.partner.controller;
- import cn.hutool.extra.spring.SpringUtil;
- import com.alipay.api.AlipayApiException;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.admin.model.SysPartnerAccount;
- import com.ydtech.modules.admin.model.dto.*;
- import com.ydtech.modules.admin.model.vo.*;
- import com.ydtech.modules.admin.service.SysPartnerService;
- import com.ydtech.modules.base.controller.BaseController;
- import com.ydtech.modules.order.entity.BasePageResult;
- import com.ydtech.modules.partner.UpdateRatioUtils;
- import com.ydtech.modules.partner.model.param.AppHomeParams;
- import com.ydtech.modules.partner.service.PartnerUserService;
- import com.ydtech.modules.protocol.utils.AssertionUtils;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import io.swagger.annotations.ApiParam;
- import lombok.extern.slf4j.Slf4j;
- import me.chanjar.weixin.common.error.WxErrorException;
- import org.springframework.web.bind.annotation.*;
- import javax.annotation.Resource;
- import java.util.List;
- import java.util.Map;
- @Api(tags = "(新)合伙人app")
- @Slf4j
- @RestController
- @RequestMapping("/newAppPartner")
- public class NewAppPartnerController extends BaseController {
- @Resource
- private SysPartnerService sysPartnerService;
- @Resource
- private PartnerUserService partnerUserService;
- /**
- * (新)首页信息
- */
- @PostMapping("/getHomePage")
- @ApiOperation(value = "APP首页信息")
- public HttpResult<AppPartnerNumVo> getHomePage(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- //SpringUtil.getBean(UpdateRatioUtils.class).loginChange(getUserId());
- return partnerUserService.getHomePage(params);
- }
- /**
- * (新)人员查询
- */
- @PostMapping("/selectUser")
- @ApiOperation(value = "人员查询")
- public HttpResult selectUser(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- return partnerUserService.selectUser(params);
- }
- /**
- * (新)统计视图数据
- */
- @PostMapping("/userCountVo")
- @ApiOperation(value = "统计视图数据")
- public HttpResult userCountVo(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- return partnerUserService.userCountVo(params);
- }
- /**
- * (新)统计视图 汇总统计数据
- */
- @PostMapping("/userCountStatisticsVo")
- @ApiOperation(value = "统计视图数据")
- public HttpResult userCountStatisticsVo(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- return partnerUserService.userCountStatisticsVo(params);
- }
- /**
- * (新)统计视图 占比分析
- */
- @PostMapping("/userCountProportionVo")
- @ApiOperation(value = "统计视图数据")
- public HttpResult userCountProportionVo(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- return partnerUserService.userCountProportionVo(params);
- }
- /**
- * (新)统计视图 排名数据
- */
- @PostMapping("/userCountRankingVo")
- @ApiOperation(value = "统计视图数据")
- public HttpResult userCountRankingVo(@RequestBody AppHomeParams params){
- params.setUserId(getUserId());
- return partnerUserService.userCountRankingVo(params);
- }
- /**
- * (新)人员列表详情数据查询 通过管理等级查询
- */
- @GetMapping("/selectByGradeList")
- @ApiOperation(value = "人员列表详情数据查询")
- public HttpResult selectByGradeList(@RequestParam Map<String,String> map){
- return partnerUserService.selectByGradeList(map, this.getUserId());
- }
- /**
- * (新)人员列表详情数据查询 通过用户ID 查询
- */
- @GetMapping("/selectByIdList")
- @ApiOperation(value = "人员列表详情数据查询")
- public HttpResult selectByIdList(@RequestParam("id") String id){
- return partnerUserService.selectByIdList(id);
- }
- /**
- * (新)个人信息
- *
- * @return
- */
- @GetMapping("/getUserInfo")
- @ApiOperation(value = "APP个人信息")
- public HttpResult<AppUserInfoVo> getUserInfo(@RequestParam("type") Integer type) {
- return HttpResult.ok("success",partnerUserService.getUserInfo(type));
- }
- /**
- * (新)我的业绩
- * @param map
- * @return
- */
- @GetMapping("/myPerformance")
- public HttpResult myPerformance(@RequestParam Map<String,String> map) {
- map.put("userId",getUserId());
- return HttpResult.ok("success",partnerUserService.myPerformance(map));
- }
- /**
- * (新)我的业绩 详情
- * @param ordersNo
- * @return
- */
- @GetMapping("/myPerformanceDetails")
- public HttpResult myPerformance(@RequestParam String ordersNo) {
- return partnerUserService.myPerformanceDetails(ordersNo);
- }
- /**
- * (新APP)APP账户金额
- *
- * @return
- */
- @GetMapping("/newGetFee")
- @ApiOperation(value = "APP账户金额")
- public HttpResult newGetFee() {
- return HttpResult.ok("success",this.partnerUserService.newGetFee(getUserId()));
- }
- /**
- * APP账户金额
- *
- * @return
- */
- @GetMapping("/getFee")
- @ApiOperation(value = "APP账户金额")
- public HttpResult<SysPartnerAccount> getFee() {
- return HttpResult.ok("success",this.sysPartnerService.getFee());
- }
- /**
- * 登陆人下的每个等级合伙人统计信息
- */
- @PostMapping("/info")
- @ApiOperation(value = "APP登陆人下的每个等级合伙人统计信息")
- public HttpResult<List<AppSysPartnerVo>> partnerInfo(@RequestBody PartnerInfoDto partnerInfoDto) {
- return HttpResult.ok("success",this.sysPartnerService.partnerInfo(partnerInfoDto));
- }
- /**
- * 合伙人工作室详情 统计总费用
- */
- @PostMapping("/partnerLeaderInfo")
- @ApiOperation(value = "合伙人工作室详情")
- public HttpResult<PartnerLeaderInfoVo> partnerLeaderInfo(@RequestBody PartnerGradeInfo partnerGradeInfo) {
- return HttpResult.ok("success",this.sysPartnerService.partnerLeaderInfo(partnerGradeInfo));
- }
- /**
- * 筛选合伙人详情(未用)
- * @return
- */
- @PostMapping("/queryFilterPartnerInfo")
- @ApiOperation(value = "筛选合伙人详情")
- public HttpResult<FilterPartnerInfoVo> queryFilterPartnerInfo(@RequestBody FilterPartnerInfoDto filterPartnerInfoDto) {
- return HttpResult.ok("success",this.sysPartnerService.queryFilterPartnerInfo(filterPartnerInfoDto));
- }
- /**
- * 等级合伙人详情
- * @param partnerGradeInfo
- * @return
- */
- @PostMapping("/queryPartnerInfo")
- @ApiOperation(value = "等级合伙人详情")
- public HttpResult<PartnerInfoFreeVo> queryPartnerInfo(@RequestBody PartnerGradeInfo partnerGradeInfo) {
- return HttpResult.ok("success",this.sysPartnerService.queryPartnerInfo(partnerGradeInfo));
- }
- /**
- * 查看团队
- */
- @PostMapping("/getTeamInfo")
- @ApiOperation(value = "查看机构下团队信息")
- public HttpResult<APPPartnerInfoFreeVo> getTeamInfo(@RequestBody PartnerGradeInfo partnerGradeInfo) {
- return HttpResult.ok("success",this.sysPartnerService.getTeamInfo(partnerGradeInfo));
- }
- @PostMapping("/getTeamUserInfo")
- @ApiOperation(value = "查看团队下人员信息")
- public HttpResult<TeamUserInfosFreeVo> getTeamUserInfo(@RequestBody TeamUserInfosDto teamUserInfosDto) {
- return HttpResult.ok("success",this.sysPartnerService.getTeamUserInfo(teamUserInfosDto));
- }
- /**
- * 总佣金组成明细
- */
- @PostMapping("/getCommissionInfo")
- @ApiOperation(value = "总佣金组成明细")
- public HttpResult<BasePageResult<SysPremiumDetailsVo>> getCommissionInfo(@RequestBody CommissionInfoDto commissionInfoDto) {
- if (commissionInfoDto.getPageNum() == 0) {
- commissionInfoDto.setPageNum(1);
- }
- if (commissionInfoDto.getPageSize() == 0) {
- commissionInfoDto.setPageSize(10);
- }
- return HttpResult.ok("success",this.sysPartnerService.getCommissionInfo(commissionInfoDto));
- }
- /**
- * 改版后的总佣金组成明细
- *
- * @return
- */
- @PostMapping("/getCommissionInfos")
- @ApiOperation(value = "改版后的总佣金组成明细")
- public HttpResult<List<SysPremiumDetailsVo>> getCommissionInfos(@RequestBody CommissionInfoDto commissionInfoDto) {
- return HttpResult.ok("success",this.sysPartnerService.getCommissionInfos(commissionInfoDto));
- }
- /**
- * app工作室新增人员统计
- */
- @PostMapping("/getCountUser")
- @ApiOperation(value = "app工作室新增人员统计")
- public HttpResult<CountUserVo> getCountUser(@RequestBody CountUserDto countUserDto) {
- return HttpResult.ok("success",this.sysPartnerService.getCountUser(countUserDto));
- }
- /**
- * app合伙人新增人员统计
- */
- @PostMapping("/getPartnerCount")
- @ApiOperation(value = "app合伙人新增人员统计")
- public HttpResult<PartnerCountVo> getPartnerCount(@RequestBody PartnerCountDto partnerCountDto) {
- return HttpResult.ok("success",this.sysPartnerService.getPartnerCount(partnerCountDto));
- }
- /**
- * 五级合伙人新增人员统计
- */
- @PostMapping("/getFivePartnerCount")
- @ApiOperation(value = "五级合伙人新增人员统计")
- public HttpResult<PartnerCountVo> getFivePartnerCount(@RequestBody PartnerCountDto partnerCountDto) {
- return HttpResult.ok("success",this.sysPartnerService.getFivePartnerCount(partnerCountDto));
- }
- /**
- * 新增人员占比分析
- */
- @PostMapping("/getPartnerProportion")
- @ApiOperation(value = "新增人员占比分析")
- public HttpResult<PartnerProportionVo> getPartnerProportion(@RequestBody PartnerCountDto partnerCountDto) {
- return HttpResult.ok("success",this.sysPartnerService.getPartnerProportion(partnerCountDto));
- }
- /**
- * 排行榜
- */
- @GetMapping("/getLevelPartner")
- @ApiOperation(value = "排行榜")
- public HttpResult<List<LevelPartnerVo>> getLevelPartner(@RequestParam("type") @ApiParam("等级:1、2、3、4、5") Integer type) {
- return HttpResult.ok("success",this.sysPartnerService.getLevelPartner(type));
- }
- /**
- * 排行榜->查看详情
- * @return
- */
- @PostMapping("/getLevelPartnerInfo")
- @ApiOperation(value = "排行榜->查看详情")
- public HttpResult<List<LevelPartnerInfoVo>> getLevelPartnerInfo(@RequestBody List<String> partnerIds) {
- return HttpResult.ok("success",this.sysPartnerService.getLevelPartnerInfo(partnerIds));
- }
- /**
- * 支付宝登录
- * @param alipayBindVo
- * @return
- */
- @PostMapping("/loginAlipay")
- @ApiOperation(value = "支付宝登录")
- public HttpResult<AAPLoginVo> loginAlipay(@RequestBody AlipayBindVo alipayBindVo) {
- log.info("支付宝登录入参:{}",alipayBindVo);
- try {
- return sysPartnerService.loginAlipay(alipayBindVo);
- } catch (AlipayApiException e) {
- log.info(e.getMessage());
- throw new SystemException("支付宝登录失败");
- }
- }
- /**
- * 工号绑定支付宝
- * @param alipayBindVo
- * @return
- * @throws AlipayApiException
- */
- @PostMapping("/bindAlipay")
- @ApiOperation(value = "工号绑定支付宝")
- HttpResult<Object> bindAlipay(@RequestBody AlipayBindVo alipayBindVo){
- log.info("支付宝绑定入参:{}",alipayBindVo);
- try {
- String userId = getUserId();
- return sysPartnerService.bindAlipay(alipayBindVo, userId);
- } catch (AlipayApiException e) {
- throw new SystemException("支付宝绑定失败");
- }
- }
- /**
- * 是否绑定支付宝
- * @return
- */
- @ApiOperation(value = "是否绑定支付宝")
- @GetMapping(value = "/checkBindAlipay")
- public HttpResult checkBindAlipay() {
- String alipayId = sysPartnerService.checkBindAlipay();
- AssertionUtils.isStringEmpty(alipayId, "未绑定支付宝");
- return HttpResult.ok();
- }
- /**
- * 微信登录
- * @param wechatLoginVo
- * @return
- */
- @PostMapping("/loginWechat")
- @ApiOperation(value = "微信登录")
- public HttpResult<AAPLoginVo> loginWechat(@RequestBody WechatLoginVo wechatLoginVo) {
- log.info("微信登录入参:{}",wechatLoginVo);
- try {
- return sysPartnerService.loginWechat(wechatLoginVo);
- } catch (WxErrorException e) {
- log.info(e.getMessage());
- throw new SystemException("微信登录失败");
- }
- }
- /**
- * 工号绑定微信
- * @param wechatBindVo
- * @return
- * @throws WxErrorException
- */
- @PostMapping("/bindWechat")
- @ApiOperation(value = "工号绑定微信")
- HttpResult<Object> bindWechat(@RequestBody WechatBindVo wechatBindVo){
- log.info("微信绑定入参:{}",wechatBindVo);
- try {
- String userId = getUserId();
- return sysPartnerService.bindWechat(wechatBindVo, userId);
- } catch (WxErrorException e) {
- log.info(e.getMessage());
- throw new SystemException("微信绑定失败");
- }
- }
- /**
- * 是否绑定微信
- */
- @ApiOperation(value = "是否绑定微信")
- @GetMapping(value = "/checkBindWechat")
- public HttpResult checkBindWechat() {
- String openId = sysPartnerService.checkBindWechat();
- AssertionUtils.isStringEmpty(openId, "未绑定微信");
- return HttpResult.ok();
- }
- }
|