| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.matrix.biz.bean.BizUser; |
| | | import com.matrix.biz.dao.BizUserDao; |
| | | import com.matrix.system.hive.bean.SysVipInfo; |
| | | import com.matrix.system.hive.dao.SysVipInfoDao; |
| | | import com.matrix.component.redis.RedisUserLoginUtils; |
| | | import com.matrix.component.tools.ImageUtil; |
| | | import com.matrix.component.tools.WxacodeUtil; |
| | |
| | | private RedisUserLoginUtils redisUserLoginUtils; |
| | | |
| | | @Autowired |
| | | private BizUserDao bizUserDao; |
| | | private SysVipInfoDao sysVipInfoDao; |
| | | @Autowired |
| | | WeChatApiTools weChatApiTools; |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @ApiOperation(value = "申请成为推广员", notes = "传入参数invitationId 邀请人openId ,非必填 例: {invitationId:openId}") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "ok", response = ShopSalesmanApply.class) |
| | |
| | | @PostMapping(value = "/applyToBeAnSalesman") |
| | | @Transactional |
| | | public AjaxResult applyToBeAnSalesman(@RequestBody Map<String,String> param) { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | String invitationId = param.get("invitationId"); |
| | | if(StringUtils.isNotBlank(invitationId)){ |
| | | BizUser invitationUser = bizUserDao.findByOpenId(invitationId); |
| | | if(invitationUser!=null && invitationUser.getOpenId().equals(loginUser.getOpenId())) { |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | Long invitationId=null; |
| | | if(StringUtils.isNotBlank(param.get("invitationId"))){ |
| | | invitationId = Long.parseLong(param.get("invitationId")); |
| | | |
| | | SysVipInfo invitationUser = sysVipInfoDao.selectById(invitationId); |
| | | if (invitationUser != null && invitationUser.getId().equals(loginUser.getId())) { |
| | | return AjaxResult.buildFailInstance("不能邀请自己成为推广员"); |
| | | } |
| | | } |
| | | |
| | | ShopSalesmanApply shopSalesmanApply= shopSalesmanApplyService.applyToBeAnSalesman(loginUser.getOpenId(),"",invitationId,ShopSalesmanApply.APPLY_WAY_SELF); |
| | | loginUser=bizUserDao.selectById(loginUser.getUserId()); |
| | | ShopSalesmanApply shopSalesmanApply = shopSalesmanApplyService.applyToBeAnSalesman(loginUser.getId(), null, invitationId, ShopSalesmanApply.APPLY_WAY_SELF); |
| | | loginUser = sysVipInfoDao.selectById(loginUser.getId()); |
| | | redisUserLoginUtils.updateUserInfo(loginUser); |
| | | return AjaxResult.buildSuccessInstance(shopSalesmanApply); |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | }) |
| | | @GetMapping(value = "/queryApplyProgress") |
| | | public AjaxResult queryApplyProgress() { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("user_id",loginUser.getOpenId()); |
| | | queryWrapper.eq("user_id", loginUser.getId()); |
| | | queryWrapper.eq("apply_status",ShopSalesmanApply.APPLY_STATUS_DSH); |
| | | ShopSalesmanApply shopSalesmanApply = salesmanApplyDao.selectOne(queryWrapper); |
| | | return AjaxResult.buildSuccessInstance(shopSalesmanApply); |
| | |
| | | @ApiResponse(code = 200, message = "ok", response = Map.class) |
| | | }) |
| | | @PostMapping(value = "/bindingParentSalesman") |
| | | public AjaxResult bindingParentSalesman(@RequestBody Map<String,String> param) { |
| | | String invitationId = param.get("invitationId"); |
| | | public AjaxResult bindingParentSalesman(@RequestBody Map<String, Long> param) { |
| | | Long invitationId = param.get("invitationId"); |
| | | |
| | | |
| | | if (StringUtils.isBlank(invitationId)) { |
| | | return AjaxResult.buildFailInstance("请求参数错误"); |
| | | } |
| | | BizUser invitationUser = bizUserDao.selectById(Long.parseLong(invitationId)); |
| | | |
| | | SysVipInfo invitationUser = sysVipInfoDao.selectById(invitationId); |
| | | if (invitationUser==null) { |
| | | return AjaxResult.buildFailInstance("请求参数错误"); |
| | | } |
| | | |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | if(invitationId.equals(loginUser.getUserId())){ |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | if (invitationId.equals(loginUser.getId())) { |
| | | return AjaxResult.buildSuccessInstance("不能绑定自己"); |
| | | } |
| | | |
| | | loginUser = bizUserDao.selectById(loginUser.getUserId()); |
| | | loginUser = sysVipInfoDao.selectById(loginUser.getId()); |
| | | if(loginUser.getIsSales()==1){ |
| | | return AjaxResult.buildSuccessInstance("只有非分销员才能被绑定成客户"); |
| | | }if (StringUtils.isNotBlank(loginUser.getParentOpenId())){ |
| | | } |
| | | if (loginUser.getRecommendId()!=null) { |
| | | return AjaxResult.buildSuccessInstance("已经被绑定"); |
| | | }else{ |
| | | if (StringUtils.isBlank(loginUser.getParentOpenId())) { |
| | | if (loginUser.getRecommendId()==null) { |
| | | Map<String, Object> updateParam = new HashMap<>(); |
| | | updateParam.put("userId", loginUser.getUserId()); |
| | | updateParam.put("parentOpenId", invitationUser.getOpenId()); |
| | | updateParam.put("bindingParentTime",new Date()); |
| | | bizUserDao.updateByMap(updateParam); |
| | | updateParam.put("id", loginUser.getId()); |
| | | loginUser.setRecommendId(invitationUser.getId()); |
| | | loginUser.setBindingParentTime(new Date()); |
| | | sysVipInfoDao.update(loginUser); |
| | | return AjaxResult.buildSuccessInstance("绑定成功"); |
| | | } else { |
| | | return AjaxResult.buildSuccessInstance("已经存在上级"); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | @PostMapping(value = "/getInvitationPoster") |
| | | AjaxResult getInvitationPoster() { |
| | | try { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | |
| | | String baseSavePath = PropertiesUtil.getString(AppConstance.FILES_TORAGE_PATH); |
| | | // 图片访问URL |
| | |
| | | |
| | | String urlPath = baseSaveUrl + "/" + "wxacode" + "/" + targetImg; |
| | | |
| | | String qrcodeSavePath = WxacodeUtil.getWxacode(loginUser.getUserId() + "", "pages/distributorCenter/applyFor/applyFor", MD5Util.strToMD5(loginUser.getOpenId())+"qrcode" |
| | | String qrcodeSavePath = WxacodeUtil.getWxacode(loginUser.getId() + "", "pages/distributorCenter/applyFor/applyFor", MD5Util.strToMD5(loginUser.getOpenId()) + "qrcode" |
| | | ,weChatApiTools.getAppid(loginUser.getCompanyId()),weChatApiTools.getSecret(loginUser.getCompanyId())); |
| | | |
| | | BufferedImage qrcordImgBuf = ImageIO.read(new File(qrcodeSavePath)); |
| | |
| | | @ApiResponse(code = 200, message = "ok", response = SalesmanVo.class) |
| | | }) |
| | | AjaxResult getInvitationuserList(@RequestBody BasePageQueryDto pageDto) { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | Page<SalesmanVo> page=new Page<>(pageDto.getPageNum(),pageDto.getPageSize()); |
| | | IPage<SalesmanVo> shopSalesmanApplyIPage = salesmanApplyDao.selectInvitationuserInPage(page, loginUser.getOpenId(),pageDto.getKeywords()); |
| | | IPage<SalesmanVo> shopSalesmanApplyIPage = salesmanApplyDao.selectInvitationuserInPage(page, loginUser.getId(), pageDto.getKeywords()); |
| | | AjaxResult result=AjaxResult.buildSuccessInstance(shopSalesmanApplyIPage.getRecords()); |
| | | return result; |
| | | } |
| | |
| | | @ApiResponse(code = 200, message = "ok", response = SalesmanCenterInfo.class) |
| | | }) |
| | | AjaxResult getSalesmanCenterInfo() { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | SalesmanCenterInfo salesmanCenterInfo= salesmanApplyDao.selectSalesmanCenterInfo(loginUser.getOpenId()); |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | SalesmanCenterInfo salesmanCenterInfo = salesmanApplyDao.selectSalesmanCenterInfo(loginUser.getId()); |
| | | return AjaxResult.buildSuccessInstance(salesmanCenterInfo); |
| | | } |
| | | |
| | |
| | | @ApiResponse(code = 200, message = "ok", response = SalesmanApplyCondition.class) |
| | | }) |
| | | AjaxResult getSalesmanApplyCondition() { |
| | | BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); |
| | | VerificationResult ableToBeAnSalesman = shopSalesmanApplyService.isAbleToBeAnSalesman(loginUser.getOpenId(),loginUser.getCompanyId()); |
| | | SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); |
| | | VerificationResult ableToBeAnSalesman = shopSalesmanApplyService.isAbleToBeAnSalesman(loginUser.getId(), loginUser.getCompanyId()); |
| | | SalesmanApplyCondition applyConditionInfo=new SalesmanApplyCondition(); |
| | | applyConditionInfo.setIsAbleApply(ableToBeAnSalesman.isJudgeResult()); |
| | | applyConditionInfo.setMsg(ableToBeAnSalesman.getMsg()); |
| | |
| | | |
| | | return AjaxResult.buildSuccessInstance(applyConditionInfo); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |