From 712ee793e5fa80859d0e420b37797e083652080f Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期四, 11 七月 2024 09:38:22 +0800 Subject: [PATCH] 提交代码 --- UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java | 106 +++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 87 insertions(+), 19 deletions(-) diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java index ff5a7f5..11c864b 100644 --- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java +++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java @@ -1,6 +1,7 @@ package com.stylefeng.guns.modular.system.service.impl; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; @@ -9,10 +10,7 @@ import com.stylefeng.guns.core.shiro.ShiroUser; import com.stylefeng.guns.core.util.JwtTokenUtil; import com.stylefeng.guns.core.util.ToolUtil; -import com.stylefeng.guns.modular.system.dao.DriverActivityRegisteredMapper; -import com.stylefeng.guns.modular.system.dao.DriverMapper; -import com.stylefeng.guns.modular.system.dao.UserActivityInviteMapper; -import com.stylefeng.guns.modular.system.dao.UserInfoMapper; +import com.stylefeng.guns.modular.system.dao.*; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.*; @@ -32,6 +30,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.*; @@ -46,12 +45,6 @@ @Autowired private RedisUtil redisUtil; - - @Autowired - private ALiSendSms aLiSendSms; - - @Autowired - private SMSUtil smsUtil; @Autowired private WeChatUtil weChatUtil; @@ -98,6 +91,9 @@ @Autowired private PayMoneyUtil payMoneyUtil; + @Resource + private DriverActivityHistoryMapper driverActivityHistoryMapper; + @Value("${callbackPath}") private String callbackPath; @@ -122,7 +118,6 @@ sb.append((int) (random.nextDouble() * 10)); } String authCode = sb.toString(); - authCode="1234"; String sms = "短信验证码【" + authCode + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!"; //发送验证码短信 @@ -142,9 +137,17 @@ templateCode = "SMS_207770039";//修改密码 break; } - Map<String, Object> map = new HashMap<>(); - map.put("code", authCode); - smsUtil.sendSmsTp(phone, 96596L, Arrays.asList(map)); + //发送记录集合 + JSONArray records = new JSONArray(); + JSONObject record = new JSONObject(); + //手机号 + record.put("mobile", phone); + //替换变量 + JSONObject param = new JSONObject(); + param.put("code", authCode); + record.put("tpContent", param); + records.add(record); + SMSUtil.sendSmsTp(96596L, records); System.out.println(sms); } @@ -232,6 +235,16 @@ if(Double.valueOf(String.valueOf(map.get("money"))).compareTo(0D) > 0){ bigDecimal = bigDecimal.add(new BigDecimal(String.valueOf(map.get("money")))); incomeService.saveData(2, driver.getId(), 1, Integer.valueOf(String.valueOf(map.get("id"))), null, Double.valueOf(String.valueOf(map.get("money")))); + + DriverActivityHistory driverActivityHistory = new DriverActivityHistory(); + driverActivityHistory.setActivityId(Integer.valueOf(String.valueOf(map.get("id")))); + driverActivityHistory.setCarryOut(2); + driverActivityHistory.setDay(new Date()); + driverActivityHistory.setDriverId(driver.getId()); + driverActivityHistory.setInsertTime(new Date()); + driverActivityHistory.setMoney(Double.valueOf(String.valueOf(map.get("money")))); + driverActivityHistory.setType(1); + driverActivityHistoryMapper.insert(driverActivityHistory); } } driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); @@ -310,7 +323,59 @@ @Override public synchronized ResultUtil<LoginWarpper> captchaLogin(String phone, String code, Integer uid, Integer type, Integer userType) throws Exception { ResultUtil<LoginWarpper> resultUtil = this.captchaLogin(phone, code, null, null,uid,type,userType); - + if(resultUtil.getCode() == 200 && null != uid){ + if(type == 2){//司机分享 + Driver driver = driverMapper.selectById(uid); + List<Map<String, Object>> query = driverActivityRegisteredMapper.query(userType, driver.getCompanyId()); + BigDecimal bigDecimal = new BigDecimal("0"); + for(Map<String, Object> map : query){ + if(Double.valueOf(String.valueOf(map.get("money"))).compareTo(0D) > 0){ + bigDecimal = bigDecimal.add(new BigDecimal(String.valueOf(map.get("money")))); + incomeService.saveData(2, driver.getId(), 1, Integer.valueOf(String.valueOf(map.get("id"))), null, Double.valueOf(String.valueOf(map.get("money")))); + } + } + driver.setActivityMoney(bigDecimal.add(new BigDecimal(driver.getActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); + driver.setLaveActivityMoney(bigDecimal.add(new BigDecimal(driver.getLaveActivityMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); + driver.setBalance(bigDecimal.add(new BigDecimal(driver.getBalance())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); + driverMapper.updateById(driver); + } + if(type == 1){//用户分享 + UserInfo userInfo1 = userInfoMapper.selectById(uid); + List<Map<String, Object>> query = userActivityInviteMapper.query(userInfo1.getCompanyId()); + Date date = new Date(); + for(Map<String, Object> map : query){ + Double lavePrice = Double.valueOf(map.get("lavePrice").toString()); + for(int i = Integer.valueOf(String.valueOf(map.get("totalNum"))); i > 0; i--){ + //判断当前优惠券金额是否大于可发放剩余总金额 + if(Double.valueOf(String.valueOf(map.get("money"))).compareTo(lavePrice) > 0){ + break; + } + UserCouponRecord userCouponRecord = new UserCouponRecord(); + userCouponRecord.setActivityType(3); + userCouponRecord.setCouponActivityId(Integer.valueOf(String.valueOf(map.get("id")))); + userCouponRecord.setCouponId(Integer.valueOf(String.valueOf(map.get("couponId")))); + userCouponRecord.setState(1); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) + Integer.valueOf(String.valueOf(map.get("effective")))); + userCouponRecord.setExpirationTime(calendar.getTime()); + userCouponRecord.setCouponType(Integer.valueOf(String.valueOf(map.get("couponType")))); + userCouponRecord.setCouponUseType(Integer.valueOf(String.valueOf(map.get("couponUseType")))); + userCouponRecord.setInsertTime(date); + userCouponRecord.setFullMoney(Double.valueOf(String.valueOf(map.get("fullMoney")))); + userCouponRecord.setMoney(Double.valueOf(String.valueOf(map.get("money")))); + userCouponRecord.setCompanyId(userInfo1.getCompanyId()); + userCouponRecord.setUserId(uid); + userCouponRecordService.insert(userCouponRecord); + //修改剩余可发放总金额 + lavePrice -= Double.valueOf(String.valueOf(map.get("money"))); + } + UserActivityInvite uai = userActivityInviteMapper.selectById(Integer.valueOf(map.get("id").toString())); + uai.setLavePrice(new BigDecimal(lavePrice).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); + userActivityInviteMapper.updateById(uai); + } + } + } return resultUtil; } @@ -718,8 +783,10 @@ return ResultUtil.error("支付金额必须大于0元"); } if(payType == 1){//微信支付 + if(ToolUtil.isEmpty(userInfo.getAppletsOpenId())){ + return ResultUtil.error("未授权微信,无法完成支付"); + } Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 1, money, "", 1);//添加预支付数据 - //Map<String, String> map = icbcPayUtil.placeAnOrder(integer.toString(), 9, 5, uid.toString(), "余额充值", money, callbackPath + "/base/wxCancelUserBalance", uid.toString(), type, userInfo.getAppletsOpenId()); ResultUtil resultUtil = payMoneyUtil.weixinpay("余额充值",integer.toString(),integer.toString(),money+"","/base/wxCancelUserBalance","JSAPI",userInfo.getAppletsOpenId()); if(resultUtil.getCode()==200){ PaymentRecord paymentRecord = paymentRecordService.selectById(integer); @@ -731,7 +798,7 @@ } if(payType == 2){//支付宝支付 Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 2, money, "", 1);//添加预支付数据 - ResultUtil resultUtil = payMoneyUtil.alipay("余额充值","余额充值",integer.toString(),money+"","/base/aliCancelUserBalance"); + ResultUtil resultUtil = payMoneyUtil.alipay("余额充值","余额充值", "",integer.toString(),money+"","/base/aliCancelUserBalance"); if(resultUtil.getCode()==200){ PaymentRecord paymentRecord = paymentRecordService.selectById(integer); paymentRecordService.updateById(paymentRecord); @@ -1007,8 +1074,9 @@ * @return */ public String getDefaultName(){ - int num = this.selectCount(new EntityWrapper<UserInfo>().ne("flag", 3)) + 1000001; - return "XW" + String.valueOf(num).substring(1); + SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd"); + String n = UUIDUtil.getNumberCode(3) + sdf.format(new Date()); + return "ZY" + n; } -- Gitblit v1.7.1