Browse Source

获取手机号

master
dimengzhe 1 year ago
parent
commit
a974220288
  1. 2
      src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerMapper.java
  2. 4
      src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerMapper.xml
  3. 6
      src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerRest.java
  4. 48
      src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerService.java
  5. 1
      src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java

2
src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerMapper.java

@ -27,4 +27,6 @@ public interface LpkCustomerMapper extends BaseMapper<LpkCustomer> {
List<LpkCustomer> getCustomer(@Param("wxMpOpenid") String wxMpOpenid); List<LpkCustomer> getCustomer(@Param("wxMpOpenid") String wxMpOpenid);
CustomerInfoVo getCustomerInfos(String userSid); CustomerInfoVo getCustomerInfos(String userSid);
LpkCustomer selectOwn();
} }

4
src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerMapper.xml

@ -24,4 +24,8 @@
from lpk_customer from lpk_customer
where sid = #{userSid} where sid = #{userSid}
</select> </select>
<select id="selectOwn" resultType="com.yxt.yythmall.api.lpkcustomer.LpkCustomer">
select * from lpk_customer order by id desc limit 1
</select>
</mapper> </mapper>

6
src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerRest.java

@ -75,4 +75,10 @@ public class LpkCustomerRest {
return lpkCustomerService.getCustomerInfos(userSid); return lpkCustomerService.getCustomerInfos(userSid);
} }
@ApiOperation("获取客户个人信息")
@PostMapping("/getPhoneNumber")
ResultBean<String> getPhoneNumber(@RequestParam("code")String code,@RequestParam("userSid")String userSid){
return lpkCustomerService.getPhoneNumber(code,userSid);
}
} }

48
src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerService.java

@ -2,6 +2,8 @@ package com.yxt.yythmall.biz.lpkcustomer;
import cn.dev33.satoken.stp.SaTokenInfo; import cn.dev33.satoken.stp.SaTokenInfo;
import cn.dev33.satoken.stp.StpUtil; import cn.dev33.satoken.stp.StpUtil;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -14,6 +16,7 @@ import com.yxt.common.core.result.FileUploadResult;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.lpkcustomer.*; import com.yxt.yythmall.api.lpkcustomer.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
@ -30,6 +33,7 @@ import java.util.*;
* @date 2023/11/21 15:03 * @date 2023/11/21 15:03
*/ */
@Service @Service
@Slf4j
public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, LpkCustomer> { public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, LpkCustomer> {
@Autowired @Autowired
@ -98,7 +102,8 @@ public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, Lp
// newCustomer.setUnionId(unionid); // newCustomer.setUnionId(unionid);
newCustomer.setCreateTime(new Date()); newCustomer.setCreateTime(new Date());
newCustomer.setPhoto("headImage.jpg"); newCustomer.setPhoto("headImage.jpg");
newCustomer.setNick("小菜窖000"+newCustomer.getId()); LpkCustomer lpkCustomer1 = baseMapper.selectOwn();
newCustomer.setNick("小主000"+ Integer.valueOf(lpkCustomer1.getId()) +1);
baseMapper.insert(newCustomer); baseMapper.insert(newCustomer);
// return rb.setData(newCustomer).setCode("110"); // return rb.setData(newCustomer).setCode("110");
StpUtil.login(newCustomer.getId()); StpUtil.login(newCustomer.getId());
@ -117,7 +122,7 @@ public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, Lp
lpkCustomer = fetchBySid(lpkCustomer.getSid()); lpkCustomer = fetchBySid(lpkCustomer.getSid());
} }
if(StringUtils.isBlank(lpkCustomer.getNick())){ if(StringUtils.isBlank(lpkCustomer.getNick())){
lpkCustomer.setNick("小菜窖000"+lpkCustomer.getId()); lpkCustomer.setNick("小000"+lpkCustomer.getId());
baseMapper.updateById(lpkCustomer); baseMapper.updateById(lpkCustomer);
lpkCustomer = fetchBySid(lpkCustomer.getSid()); lpkCustomer = fetchBySid(lpkCustomer.getSid());
} }
@ -214,4 +219,43 @@ public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, Lp
customerInfoVo.setPhoto(photo); customerInfoVo.setPhoto(photo);
return rb.success().setData(customerInfoVo); return rb.success().setData(customerInfoVo);
} }
public ResultBean<String> getPhoneNumber(String code,String userSid) {
ResultBean<String> rb = ResultBean.fireFail();
try {
String objectStr = HttpUtil.post(String.format("https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token=%s",getAccessToken()), "{\"code\":\""+code+"\"}");
log.info(objectStr);
JSONObject jsonObject = JSON.parseObject(objectStr);
String errCode = jsonObject.getString("errcode");
if(StringUtils.isNotBlank(errCode)){
return rb.setMsg("微信code值失效");
}
jsonObject= jsonObject.getJSONObject("phone_info");
String phone = jsonObject.getString("phoneNumber");
LpkCustomer lpkCustomer = fetchBySid(userSid);
if(lpkCustomer == null){
return rb.setMsg("该客户不存在");
}
lpkCustomer.setMobile(phone);
baseMapper.updateById(lpkCustomer);
return rb.success().setData(phone);
}catch (Exception e){
e.printStackTrace();
log.error("微信code解析异常", e.getMessage());
}
return null;
}
public String getAccessToken() {
try {
String objectStr = HttpUtil.get(String.format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s", APP_ID,SECRET));
log.info(objectStr);
JSONObject jsonObject = JSON.parseObject(objectStr);
return jsonObject.getString("access_token");
} catch (Exception e) {
e.printStackTrace();
log.error("微信code解析异常", e.getMessage());
}
return null;
}
} }

1
src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java

@ -77,6 +77,7 @@ public class SaTokenConfigure implements WebMvcConfigurer {
.excludePathPatterns("/lpkcustomer/modifyUserNickName") .excludePathPatterns("/lpkcustomer/modifyUserNickName")
.excludePathPatterns("/lpkcustomer/modifyHeadImage") .excludePathPatterns("/lpkcustomer/modifyHeadImage")
.excludePathPatterns("/upload/**") .excludePathPatterns("/upload/**")
.excludePathPatterns("/lpkcustomer/getPhoneNumber")
; ;
} }
} }

Loading…
Cancel
Save