| | |
| | | @Autowired |
| | | private PayMoneyUtil payMoneyUtil; |
| | | |
| | | @Autowired |
| | | private IBankCardService bankCardService; |
| | | |
| | | @Value("${callbackPath}") |
| | | private String callbackPath; |
| | | |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | public ResultUtil<LoginWarpper> captchaLogin(String phone, String code, String registIp, Double lat, Double lng,Integer uid,Integer type, |
| | | public ResultUtil<LoginWarpper> captchaLogin(String phoneOperator, String phone, String code, String registIp, Double lat, Double lng,Integer uid,Integer type, |
| | | Integer userType, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | |
| | | UserInfo userInfo = userInfoMapper.queryByPhone(phone); |
| | | if(null == userInfo){ |
| | | userInfo = new UserInfo(); |
| | | userInfo.setPhoneOperator(phoneOperator); |
| | | userInfo.setPhone(phone); |
| | | userInfo.setPassWord(ShiroKit.md5("", salt)); |
| | | userInfo.setNickName(this.getDefaultName()); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public synchronized ResultUtil<LoginWarpper> captchaLogin(String phone, String code, Integer uid, Integer type, Integer userType, Integer language) throws Exception { |
| | | ResultUtil<LoginWarpper> resultUtil = this.captchaLogin(phone, code, null, null, null,uid,type,userType,language); |
| | | |
| | | public synchronized ResultUtil<LoginWarpper> captchaLogin(String phoneOperator, String phone, String code, Integer uid, Integer type, Integer userType, Integer language) throws Exception { |
| | | ResultUtil<LoginWarpper> resultUtil = this.captchaLogin(phoneOperator, phone, code, null, null, null,uid,type,userType,language); |
| | | return resultUtil; |
| | | } |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public ResultUtil bindingPhone(Integer uid, String phone, String code, Integer language) throws Exception { |
| | | public ResultUtil bindingPhone(Integer uid, String phoneOperator, String phone, String code, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | |
| | | return ResultUtil.success(loginWarpper); |
| | | } |
| | | |
| | | userInfo.setPhoneOperator(phoneOperator); |
| | | userInfo.setPhone(phone); |
| | | userInfo.setUpdateTime(new Date()); |
| | | userInfo.setUpdateUser(userInfo.getId()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public ResultUtil depositBalance(Integer payType, String accountNumber, Double money, Integer uid, Integer type, Integer language) throws Exception { |
| | | public ResultUtil depositBalance(Integer payType, String bankCardId, Double money, Integer uid, Integer type, Integer language) throws Exception { |
| | | UserInfo userInfo = userInfoMapper.selectById(uid); |
| | | if(money.compareTo(0D) <= 0){ |
| | | return ResultUtil.error("支付金额必须大于0元"); |
| | | } |
| | | if(payType == 1){//微信支付 |
| | | if(payType == 1){//手机支付 |
| | | Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 1, money, "", 1);//添加预支付数据 |
| | | // ResultUtil resultUtil = payMoneyUtil.weixinpay("余额充值",language.toString(),integer.toString(),money+"","/base/wxCancelUserBalance","JSAPI",userInfo.getAppletsOpenId()); |
| | | // if(resultUtil.getCode()==200){ |
| | | // PaymentRecord paymentRecord = paymentRecordService.selectById(integer); |
| | | // paymentRecordService.updateById(paymentRecord); |
| | | // return resultUtil; |
| | | // }else{ |
| | | // return ResultUtil.error("获取支付信息失败", ""); |
| | | // } |
| | | |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); |
| | | String merchantTransactionId = sdf.format(new Date()) + language + integer; |
| | | CheckoutRequest checkoutRequest = new CheckoutRequest(); |
| | | checkoutRequest.setMsisdn(Long.valueOf(userInfo.getPhone())); |
| | | checkoutRequest.setCustomerEmail(userInfo.getEmail()); |
| | | checkoutRequest.setAccountNumber(accountNumber); |
| | | checkoutRequest.setAccountNumber(userInfo.getPhone()); |
| | | checkoutRequest.setCustomerFirstName(userInfo.getFirstName()); |
| | | checkoutRequest.setCustomerLastName(userInfo.getLastName()); |
| | | checkoutRequest.setRequestAmount(money); |
| | |
| | | checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun"); |
| | | checkoutRequest.setFailRedirectUrl("https://www.baidu.com"); |
| | | return TinggPayUtil.checkoutRequest(checkoutRequest); |
| | | |
| | | |
| | | } |
| | | // if(payType == 2){//支付宝支付 |
| | | // Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 2, money, "", 1);//添加预支付数据 |
| | | // ResultUtil resultUtil = payMoneyUtil.alipay("余额充值","余额充值",integer + "_" + language,money+"","/base/aliCancelUserBalance"); |
| | | // if(resultUtil.getCode()==200){ |
| | | // PaymentRecord paymentRecord = paymentRecordService.selectById(integer); |
| | | // paymentRecordService.updateById(paymentRecord); |
| | | // return resultUtil; |
| | | // }else{ |
| | | // return ResultUtil.error("获取支付信息失败", ""); |
| | | // } |
| | | // } |
| | | |
| | | if(payType == 2){//银行卡支付 |
| | | Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 1, money, "", 1);//添加预支付数据 |
| | | BankCard bankCard = bankCardService.selectById(bankCardId); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS"); |
| | | String merchantTransactionId = sdf.format(new Date()) + language + integer; |
| | | CheckoutRequest checkoutRequest = new CheckoutRequest(); |
| | | checkoutRequest.setMsisdn(Long.valueOf(bankCard.getCode())); |
| | | checkoutRequest.setCustomerEmail(userInfo.getEmail()); |
| | | checkoutRequest.setAccountNumber(bankCard.getCode()); |
| | | checkoutRequest.setCustomerFirstName(bankCard.getFirstName()); |
| | | checkoutRequest.setCustomerLastName(bankCard.getLastName()); |
| | | checkoutRequest.setRequestAmount(money); |
| | | checkoutRequest.setMerchantTransactionId(merchantTransactionId); |
| | | checkoutRequest.setRequestDescription("Account top-up"); |
| | | checkoutRequest.setCallbackUrl(callbackPath + "/base/wxCancelUserBalance"); |
| | | checkoutRequest.setPendingRedirectUrl(""); |
| | | checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun"); |
| | | checkoutRequest.setFailRedirectUrl("https://www.baidu.com"); |
| | | return TinggPayUtil.checkoutRequest(checkoutRequest); |
| | | } |
| | | return ResultUtil.success(); |
| | | } |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public ResultUtil updatePhone(String code, String phone, Integer uid, Integer language) throws Exception { |
| | | public ResultUtil updatePhone(String code, String phoneOperator, String phone, Integer uid, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | |
| | | if(null != userInfo1){ |
| | | return ResultUtil.error(language == 1 ? "手机号已被注册" : language == 2 ? "The phone number has been registered" : "Le numéro de téléphone a été enregistré"); |
| | | } |
| | | userInfo.setPhoneOperator(phoneOperator); |
| | | userInfo.setPhone(phone); |
| | | this.updateById(userInfo); |
| | | |
| | | // smsrecordService.saveData(2, phone, code, "短信验证码【" + code + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!"); |
| | | return ResultUtil.success(); |
| | | } |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public void updateInfo(String avatar, String nickname, Integer sex, Date birthday, String email, String lastName, String firstName, Integer uid) throws Exception { |
| | | public ResultUtil updateInfo(String avatar, String nickname, Integer sex, Date birthday, String email, String code, String lastName, String firstName, Integer uid, Integer language) throws Exception { |
| | | UserInfo userInfo = this.selectById(uid); |
| | | if(ToolUtil.isNotEmpty(avatar)){ |
| | | userInfo.setAvatar(avatar); |
| | |
| | | userInfo.setBirthday(birthday); |
| | | } |
| | | if(null != email){ |
| | | String value = redisUtil.getValue(email); |
| | | if(ToolUtil.isEmpty(value) || code.equals(value)){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | } |
| | | userInfo.setEmail(email); |
| | | } |
| | | if(null != lastName){ |
| | |
| | | userInfo.setFirstName(firstName); |
| | | } |
| | | this.updateById(userInfo); |
| | | return ResultUtil.success(); |
| | | } |
| | | |
| | | |
| | |
| | | * 完成余额充值后的处理 |
| | | * @param id 用户id |
| | | * @param order_id 工行订单id |
| | | * @param type 支付类型(1=微信,2=支付宝) |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer type, Integer language) throws Exception { |
| | | public void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer language) throws Exception { |
| | | PaymentRecord query = paymentRecordService.selectById(paymentRecordId); |
| | | UserInfo userInfo = this.selectById(query.getUserId()); |
| | | if(null != query){ |
| | |
| | | this.addCoupon(userInfo.getId(), query.getAmount(), userInfo.getCompanyId(), query.getId(), language);//添加优惠券 |
| | | |
| | | }else{ |
| | | System.err.println("预支付数据异常(userId = " + id + ")"); |
| | | System.err.println("预支付数据异常(paymentRecordId = " + paymentRecordId + ")"); |
| | | } |
| | | |
| | | } |