From 517a089be40aebad647c316ee0d026d32807f87b Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期四, 08 二月 2024 17:12:47 +0800 Subject: [PATCH] 新增加接口 --- cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 123 +++++++++++++++++++++++++++++++---------- 1 files changed, 93 insertions(+), 30 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java index a025fe7..5b053b4 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java @@ -45,6 +45,7 @@ import com.dsh.account.model.vo.classDetails.RegisteredCourse; import com.dsh.account.model.vo.classDetails.classInsVo.ClassInfoVo; import com.dsh.account.model.vo.userBenefitDetail.*; +import com.dsh.account.service.IRefereeService; import com.dsh.account.service.TAppGiftService; import com.dsh.account.service.TAppUserService; import com.dsh.account.util.*; @@ -116,7 +117,6 @@ @Resource private ImgConfigClient icfgClient; - @Resource private VideoOfCourseListClient voclClient; @@ -177,6 +177,9 @@ @Resource private UserCouponPaymentClient userCouponPaymentClient; + + @Autowired + private IRefereeService refereeService; @@ -447,6 +450,10 @@ tAppUser.setIsVip(0); tAppUser.setState(1); tAppUser.setInsertTime(new Date()); + tAppUser.setProvince(""); + tAppUser.setProvinceCode(""); + tAppUser.setCity(""); + tAppUser.setCityCode(""); // 注册用户 int insert = this.baseMapper.insert(tAppUser); // 介绍有礼 @@ -546,6 +553,7 @@ tAppUser.setPassword(Md5Util.MD5Encode("111111", null)); tAppUser.setIsVip(0); tAppUser.setState(1); + tAppUser.setInsertTime(new Date()); this.baseMapper.insert(tAppUser); } if (tAppUser.getState() == 2) { @@ -579,6 +587,10 @@ tAppUser.setGender(loginWechatVo.getSex()); tAppUser.setState(1); tAppUser.setInsertTime(new Date()); + tAppUser.setProvince(""); + tAppUser.setProvinceCode(""); + tAppUser.setCity(""); + tAppUser.setCityCode(""); this.baseMapper.insert(tAppUser); } } @@ -632,6 +644,27 @@ */ @Override public ResultUtil updatePassword(String phone, String code, String password) throws Exception { + String value = redisUtil.getValue(phone); + if (!"123456".equals(code) && (ToolUtil.isEmpty(value) || !value.equals(code))) { + return ResultUtil.error("验证码无效"); + } + TAppUser tAppUser = this.baseMapper.selectOne(new QueryWrapper<TAppUser>().eq("phone", phone).ne("state", 3)); + if (tAppUser == null) { + return ResultUtil.error("该账号未注册", ""); + } + if (tAppUser.getState() == 2) { + return ResultUtil.error("您的账号已被冻结", ""); + } + if (tAppUser.getCode() == null) { + tAppUser.setCode(UUIDUtil.getNumberRandom(16)); + } + tAppUser.setPassword(password); + this.updateById(tAppUser); + return ResultUtil.success(); + } + + @Override + public ResultUtil updatePassword1(String phone, String code, String password) throws Exception { String value = redisUtil.getValue(phone); if (!"123456".equals(code) && (ToolUtil.isEmpty(value) || !value.equals(code))) { return ResultUtil.error("验证码无效"); @@ -723,7 +756,6 @@ @Override public IndexOfUserBenefirVo queryBenefitDetails(Integer appUserId, String lon, String lat) { IndexOfUserBenefirVo benefirVo = new IndexOfUserBenefirVo(); - TAppUser appUser = this.getById(appUserId); if (appUser.getHeadImg() != null) { benefirVo.setUserHeadImg(appUser.getHeadImg()); @@ -745,6 +777,8 @@ List<IntegralCommodity> convertibleGoods = mcClient.getConvertibleGoods(location); benefirVo.setCommodities(convertibleGoods); benefirVo.setImage(icfgClient.getImageConfig()); + Referee referee = refereeService.getOne(new QueryWrapper<Referee>().eq("phone", appUser.getPhone()).eq("state", 1)); + benefirVo.setReferee(null == referee ? 0 : 1); return benefirVo; } @@ -1025,6 +1059,7 @@ goods.add(commodity); } } + List<Coupon> allCoupons = ucponClient.getAllCoupons(commodityRequest); if (allCoupons.size() > 0) { for (Coupon allCoupon : allCoupons) { @@ -1312,7 +1347,7 @@ userCouponPayment.setCode(code); userCouponPayment.setPayType(coupon.getRedemptionMethod()); userCouponPayment.setIntegral(coupon.getIntegral().intValue()); - userCouponPayment.setCash(coupon.getCash().doubleValue()); + userCouponPayment.setCash(null == coupon.getCash() ? 0D : coupon.getCash().doubleValue()); userCouponPayment.setCashPayType(exchangeType.getPayType()); userCouponPayment.setInsertTime(new Date()); @@ -1338,7 +1373,7 @@ return ResultUtil.success(returnId); } //积分+现金 - if(coupon.getRedemptionMethod() == 1){ + if(coupon.getRedemptionMethod() == 2){ userCouponPaymentClient.addUserCouponPayment(userCouponPayment); try { if(exchangeType.getPayType() == 1){ @@ -1358,7 +1393,20 @@ try { SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5); - PointsMerchandise merchandise = mcClient.selectPointsMerchandiseById(exchangeType.getGoodId()); + PointsMerchandise merchandise = new PointsMerchandise(); + if(exchangeType.getGoodsType() != 4){ + merchandise = mcClient.selectPointsMerchandiseById(exchangeType.getGoodId()); + }else{ + Coupon coupon = ucponClient.queryCouponById(exchangeType.getGoodId()); + merchandise.setId(coupon.getId()); + merchandise.setUserPopulation(coupon.getUserPopulation()); + merchandise.setIntegral(coupon.getIntegral().intValue()); + merchandise.setQuantityIssued(coupon.getQuantityIssued()); + merchandise.setPickUpQuantity(coupon.getPickUpQuantity()); + merchandise.setUseScope(coupon.getUseScope()); + merchandise.setCash(coupon.getCash()); + merchandise.setType(4); + } if (ToolUtil.isEmpty(merchandise)) { @@ -1437,6 +1485,7 @@ } } pointsMerchandise.setCode(code); + pointsMerchandise.setInsertTime(new Date()); returnId = mcClient.saveDetailsUserPointMercase(pointsMerchandise); } @@ -1479,6 +1528,7 @@ packagePayment.setStatus(1); packagePayment.setState(1); packagePayment.setCode(code); + packagePayment.setInsertTime(new Date()); // paymentClient.savePaymentCoursePackage(packagePayment); OrderDto orderDto = new OrderDto(); @@ -1498,6 +1548,7 @@ coupon.setCouponId(exchangeType.getGoodId()); coupon.setUserId(userIdFormRedis); coupon.setStatus(1); + coupon.setInsertTime(new Date()); ucponClient.insertToAppuserCoupon(coupon); } break; @@ -1657,17 +1708,15 @@ /** * 优惠券支付宝支付 * - * @param uid - * @param paymentPrice - * @param paymentCourseVo * @return * @throws Exception */ + private String smid = "2088330203191220";//平台支付宝商户号 public ResultUtil aliPaymentCoupon(String body, UserCouponPayment userCouponPayment) throws Exception { String code = userCouponPayment.getCode(); Double cash = userCouponPayment.getCash(); - ResultUtil alipay = payMoneyUtil.alipay(body, body, "", code, cash.toString(), "/base/coupon/aliPaymentCouponCallback"); + ResultUtil alipay = payMoneyUtil.alipay(smid, body, "",String.valueOf(userCouponPayment.getId()), code, cash.toString(), "/base/coupon/aliPaymentCouponCallback"); if (alipay.getCode() == 200) { new Thread(new Runnable() { @Override @@ -1700,6 +1749,10 @@ //有待支付的订单,这里不处理 userCouponPayment1.setStatus(-1); userCouponPaymentClient.updateUserCouponPayment(userCouponPayment1); + if ("TRADE_FINISHED".equals(s)) { + // todo 资金结算 + + } break; } if ("TRADE_SUCCESS".equals(s)) { @@ -1707,22 +1760,23 @@ userCouponPayment1.setPaymentTime(new Date()); userCouponPayment1.setOrderNumber(tradeNo); userCouponPaymentClient.updateUserCouponPayment(userCouponPayment1); - UserCoupon userCoupon = new UserCoupon(); userCoupon.setCouponId(userCouponPayment1.getCouponId()); userCoupon.setUserId(userCouponPayment1.getUserId()); userCoupon.setStatus(1); userCoupon.setInsertTime(new Date()); userConponClient.insertToAppuserCoupon(userCoupon); - if(null != userCouponPayment1.getIntegral() && 0 != userCouponPayment1.getIntegral()){ //扣积分 TAppUser user = appUserService.getById(userCouponPayment1.getUserId()); user.setIntegral(user.getIntegral() - userCouponPayment1.getIntegral().intValue()); appUserService.updateById(user); } + payMoneyUtil.confirm(smid,code,tradeNo,cash.toString()); break; + } + if ("WAIT_BUYER_PAY".equals(s)) { num++; } @@ -1794,8 +1848,7 @@ } private ResultUtil AlipayPayment(BigDecimal cash, String code, Long returnId) { - System.out.println("金额:" + cash); - ResultUtil alipay = payMoneyUtil.alipay("优惠卷", "优惠卷", String.valueOf(returnId), code, cash.toString(), + ResultUtil alipay = payMoneyUtil.alipay(smid,"优惠卷", "优惠卷", String.valueOf(returnId), code, cash.toString(), "/base/pointMer/exchangeGoodPaymentAliCallback"); if (alipay.getCode() == 200) { new Thread(new Runnable() { @@ -1841,6 +1894,11 @@ mcClient.updateDetailsUserPointMercase(userPointsMerchandise); } moneyOut(tradeNo, tradeNo); + break; + } + if ("TRADE_FINISHED".equals(tradeStatus)) { + // todo 资金结算 + payMoneyUtil.confirm(smid,code,tradeNo,cash.toString()); break; } // if("REFUND".equals(tradeStatus) || "NOTPAY".equals(tradeStatus) || "CLOSED".equals(tradeStatus) || "REVOKED".equals(tradeStatus) || "PAYERROR".equals(tradeStatus) || num == 10){ @@ -1909,7 +1967,8 @@ List<UserPointsMerchandise> userPointsMerchandises = merChandiseClient.queryUserPointMerchaseByCode(outNum); // PaymentCompetition code = paymentCompetitionService.getOne(new QueryWrapper<PaymentCompetition>().eq("code", outNum)); - Integer storeId = userPointsMerchandises.get(0).getStoreId(); + if(userPointsMerchandises.size() > 0){ + Integer storeId = userPointsMerchandises.get(0).getStoreId(); // Competition byId1 = competitionService.getById(code.getCompetitionId()); @@ -1917,7 +1976,7 @@ // TCoursePackage byId = coursePackageService.getById(one.getCoursePackageId()); - OperatorUser operatorUser = storeClient.queryByStoreId(storeId); + OperatorUser operatorUser = storeClient.queryByStoreId(storeId); // Integer paymentCompetitions = competitionsClient.queryByCode(outTradeNo); @@ -1929,26 +1988,28 @@ // OperatorUser operatorUser = siteClient.queryOperator(stores); - OpenApiRoyaltyDetailInfoPojo op = new OpenApiRoyaltyDetailInfoPojo(); - op.setTransOutType("loginName"); - op.setTransOut("happysports@weparklife.com"); - op.setTransInType("userId"); - op.setTransIn(operatorUser.getAlipayNum()); - op.setAmountPercentage(Long.valueOf(operatorUser.getAlipayProportion())); + OpenApiRoyaltyDetailInfoPojo op = new OpenApiRoyaltyDetailInfoPojo(); + op.setTransOutType("loginName"); + op.setTransOut("happysports@weparklife.com"); + op.setTransInType("userId"); + op.setTransIn(operatorUser.getAlipayNum()); + op.setAmountPercentage(Long.valueOf(operatorUser.getAlipayProportion())); - List<OpenApiRoyaltyDetailInfoPojo> ops = new ArrayList<>(); - ops.add(op); - model.setRoyaltyParameters(ops); + List<OpenApiRoyaltyDetailInfoPojo> ops = new ArrayList<>(); + ops.add(op); + model.setRoyaltyParameters(ops); - request.setBizModel(model); + request.setBizModel(model); - AlipayTradeOrderSettleResponse response1 = alipayClient.execute(request); - if (response1.isSuccess()) { - System.out.println("调用成功"); - } else { - System.out.println("调用失败"); + AlipayTradeOrderSettleResponse response1 = alipayClient.execute(request); + if (response1.isSuccess()) { + System.out.println("调用成功"); + } else { + System.out.println("调用失败"); + } } + } @@ -2042,6 +2103,7 @@ coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId()); coupon.setUserId(userPointsMerchandises.get(0).getUserId()); coupon.setStatus(1); + coupon.setInsertTime(new Date()); ucponClient.insertToAppuserCoupon(coupon); break; default: @@ -2072,6 +2134,7 @@ coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId()); coupon.setUserId(userPointsMerchandises.get(0).getUserId()); coupon.setStatus(1); + coupon.setInsertTime(new Date()); ucponClient.insertToAppuserCoupon(coupon); break; default: -- Gitblit v1.7.1