From b4c371a3049be8a53a5cad6b6ba499ebaf438232 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 13 八月 2025 15:25:14 +0800 Subject: [PATCH] 修改bug --- UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java | 139 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 122 insertions(+), 17 deletions(-) diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java index 26a8cfe..53a2295 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/UserInfoController.java @@ -3,18 +3,15 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.common.constant.JwtConstants; +import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.account.server.UserWithdrawalService; import com.stylefeng.guns.modular.account.util.OssUploadUtil; -import com.stylefeng.guns.modular.system.model.Driver; -import com.stylefeng.guns.modular.system.model.UserInfo; -import com.stylefeng.guns.modular.system.model.UserWithdrawal; -import com.stylefeng.guns.modular.system.service.IDriverService; -import com.stylefeng.guns.modular.system.service.ISmsrecordService; -import com.stylefeng.guns.modular.system.service.IUserInfoService; -import com.stylefeng.guns.modular.system.service.IVerifiedService; +import com.stylefeng.guns.modular.system.model.*; +import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.ResultUtil; import com.stylefeng.guns.modular.system.util.WeChatUtil; +import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil; import com.stylefeng.guns.modular.system.warpper.LoginWarpper; import com.stylefeng.guns.modular.system.warpper.UserInfoWarpper; import com.stylefeng.guns.modular.system.warpper.VerifiedWarpper; @@ -22,10 +19,12 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.io.InputStream; import java.util.Date; @@ -39,30 +38,34 @@ @RestController @RequestMapping("") public class UserInfoController { - + @Autowired private IUserInfoService userInfoService; - + @Autowired private IVerifiedService verifiedService; - + @Autowired private ISmsrecordService smsrecordService; - @Autowired - private RedisTemplate redisTemplate; - + @Resource + private RedisTemplate<String, Object> redisTemplate; + @Autowired private WeChatUtil weChatUtil; - + @Autowired private IDriverService driverService; - + @Autowired private HttpServletRequest request; + + private String salt = "&a.s"; - - + @Autowired + private TDriverPromotionActivityService driverPromotionActivityService; + + /** * 获取短信验证码 * @param phone @@ -329,6 +332,47 @@ return ResultUtil.runErr(); } } + /** + * 设置绑定司机 + * @param driverId + * @param request + * @return + */ + @ResponseBody + @PostMapping("/api/user/bindingDriver") + @ApiOperation(value = "绑定司机", tags = {"用户端-登录"}, notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(value = "司机id", name = "driverId", required = true, dataType = "int"), + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil<LoginWarpper> bindingDriver(Integer driverId,HttpServletRequest request){ + try { + Integer uid = userInfoService.getUserIdFormRedis(request); + if(null == uid){ + return ResultUtil.tokenErr(); + } + UserInfo userInfo = userInfoService.selectById(uid); + + // 是否需要绑定司机 + TDriverPromotionActivity tDriverPromotionActivity = driverPromotionActivityService.selectOne(new EntityWrapper<TDriverPromotionActivity>().eq("districtCode", userInfo.getRegistAreaCode()).ge("startTime", new Date()).lt("endTime", new Date()).last(" limit 1")); + if(tDriverPromotionActivity!=null){ + if(userInfo.getBindDriverId()==null || userInfo.getBindExpireDate().getTime()<=System.currentTimeMillis()){ + Integer bindingDays = tDriverPromotionActivity.getBindingDays(); + // 当前时间+绑定天数 + Date endTime = DateUtils.addDays(new Date(), bindingDays); + userInfo.setBindDriverId(driverId); + userInfo.setBindExpireDate(endTime); + userInfo.setBindDate(new Date()); + userInfoService.updateById(userInfo); + } + + } + return ResultUtil.success(); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } + } @Autowired @@ -349,6 +393,12 @@ Integer uid = userInfoService.getUserIdFormRedis(request); if(null == uid){ return ResultUtil.tokenErr(); + } + UserInfo userInfo = userInfoService.selectById(uid); + if(ToolUtil.isEmpty(userInfo.getOnconUUID())){ + String onconUUIDByMobile = UserUtil.getOnconUUIDByMobile("15828353127"); + userInfo.setOnconUUID(onconUUIDByMobile); + userInfoService.updateById(userInfo); } Map<String, Object> map = userInfoService.queryUserInfo(uid); UserWithdrawal userWithdrawal1 = userWithdrawalService.selectOne(new EntityWrapper<UserWithdrawal>() @@ -817,4 +867,59 @@ return ResultUtil.runErr(); } } + + + /** + * 代驾系统添加用户接口 + * @param phone + * @return + */ + @ResponseBody + @PostMapping("/base/user/addAppUser") + public String addAppUser(String phone, String code, String areaCode){ + try { + return userInfoService.addAppUser(phone, code, areaCode); + }catch (Exception e){ + e.printStackTrace(); + } + return null; + } + + /** + * 代驾系统验证短信验证码 + * @param phone + * @param code + * @param request + * @return + */ + @ResponseBody + @PostMapping("/base/user/checkCaptcha") + public Boolean checkCaptcha1(String phone, String code, HttpServletRequest request){ + try { + String device = request.getHeader("device"); + if(ToolUtil.isEmpty(device)){ + return false; + } + boolean b = userInfoService.checkCaptcha(phone, code); + return b; + }catch (Exception e){ + e.printStackTrace(); + return false; + } + } + + /** + * 代驾系统验根据用户id获取电话号码 + * @param id + * @return + */ + @ResponseBody + @GetMapping("/base/user/getUserPhone/{id}") + public String getUserPhone(@PathVariable("id") Integer id){ + UserInfo userInfo = userInfoService.selectById(id); + if(null != userInfo){ + return userInfo.getPhone(); + } + return null; + } } -- Gitblit v1.7.1