From dc0ade6bfc59db3d133673952bd674ba7a63dc84 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期三, 22 五月 2024 18:12:51 +0800
Subject: [PATCH] 写拍卖师端接口

---
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java |  177 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 177 insertions(+), 0 deletions(-)

diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
index 21a995e..94d3be4 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
@@ -1,10 +1,34 @@
 package com.ruoyi.member.service.impl;
 
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.common.core.enums.GenderEnum;
+import com.ruoyi.common.core.exception.ServiceException;
+import org.apache.commons.io.IOUtils;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.member.DTO.MemberDTO;
 import com.ruoyi.member.domain.pojo.Member;
 import com.ruoyi.member.mapper.MemberMapper;
 import com.ruoyi.member.service.IMemberService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.http.HttpEntity;
+import org.apache.http.client.config.RequestConfig;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * <p>
@@ -17,4 +41,157 @@
 @Service
 public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> implements IMemberService {
 
+
+    public static RequestConfig config = RequestConfig.custom().setConnectTimeout(5000).setSocketTimeout(5000).build();
+    // 配置您申请的KEY,在个人中心->我的数据,接口名称上方查看
+    public static final String APPKEY = "";
+    //明文查询地址
+    public static String query_url = "http://op.juhe.cn/idcard/query?key=" + APPKEY;
+
+
+    @Resource
+    private  IMemberService iMemberService;
+    @Override
+    public Member loginThird(MemberDTO memberDTO) {
+        try {
+            if (memberDTO.getType() == 1) {
+                LambdaQueryWrapper<Member> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(Member::getZfbOpenid,memberDTO.getOpenid());
+                Member member=iMemberService.getOne(wrapper);
+                if (member==null){
+                    Member m=new Member();
+                    m.setZfbOpenid(memberDTO.getOpenid());
+                    m.setNickname("未知");
+                    m.setLevel(0);
+                    m.setAvatar("");
+                    iMemberService.save(m);
+                    return m;
+                }else {
+
+                    return member;
+                }
+
+            }
+            if (memberDTO.getType() == 2) {
+                LambdaQueryWrapper<Member> wrapper= Wrappers.lambdaQuery();
+                wrapper.eq(Member::getWxOpenid,memberDTO.getOpenid());
+                Member member=iMemberService.getOne(wrapper);
+                if (member==null){
+                    Member m=new Member();
+                    m.setZfbOpenid(memberDTO.getOpenid());
+                    m.setNickname("未知");
+                    m.setLevel(0);
+                    m.setAvatar("");
+                    iMemberService.save(m);
+                    return m;
+                }else {
+
+                    return member;
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+
+        }
+        return null;
+    }
+
+    @Override
+    public Member getMembeid(MemberDTO memberDTO) {
+        return  iMemberService.getById(memberDTO.getMemberid());
+    }
+
+    @Override
+    public void updateMembeid(MemberDTO memberDTO) {
+       Member member= iMemberService.getById(memberDTO.getMemberid());
+       if (memberDTO.getAvatar()!=null){
+           member.setAvatar(memberDTO.getAvatar());
+       }
+        if (memberDTO.getNickname()!=null){
+            member.setNickname(memberDTO.getNickname());
+        }
+       iMemberService.updateById(member);
+
+    }
+
+    @Override
+    public void authentificationMembe(MemberDTO memberDTO) {
+        Member member= iMemberService.getById(memberDTO.getMemberid());
+        member.setPhone(memberDTO.getPhone());
+        member.setIdNumber(memberDTO.getIdNumber());
+        member.setRealName(memberDTO.getRealName());
+
+        String realname = "";// 姓名
+         String idcard = "";// 身份证
+         int type = 1;// 普通版,不需要加密
+          Map<String, Object> params = new HashMap<>();
+          params.put("realname", realname);
+          params.put("idcard", idcard);
+
+        CloseableHttpClient httpClient = HttpClients.createDefault();
+        CloseableHttpResponse response = null;
+        String result = null;
+        String url = query_url;
+        try {
+            url = new StringBuffer(url).append("&").append(urlencode(params)).toString();
+            HttpGet httpget = new HttpGet(url);
+            httpget.setConfig(config);
+            response = httpClient.execute(httpget);
+            HttpEntity resEntity = response.getEntity();
+            if (resEntity != null) {
+                result = IOUtils.toString(resEntity.getContent(), "UTF-8");
+            }
+            EntityUtils.consume(resEntity);
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            try {
+                response.close();
+                httpClient.close();
+            } catch (IOException e) {
+                throw new RuntimeException(e);
+            }
+        }
+     JSONObject jsonObject= JSON.parseObject(result);
+      String object= jsonObject.get("result").toString();
+      JSONObject jsonObject1= JSON.parseObject(object);
+      if (Integer.valueOf(jsonObject1.get("res").toString())==2){
+          throw new ServiceException("实名认证失败");
+      }
+
+      String  sex=getGender(idcard);
+      if (sex.equals("女")){
+          member.setGender(GenderEnum.FEMALE);
+      }
+        if (sex.equals("男")){
+            member.setGender(GenderEnum.MALE);
+        }
+
+        iMemberService.updateById(member);
+    }
+
+    public static String getGender(String idNumber) {
+        int genderNum = Integer.parseInt(idNumber.substring(16, 17));
+        return genderNum % 2 == 0 ? "女" : "男";
+    }
+
+
+    public static String urlencode(Map<String, ?> data) {
+        StringBuilder sb = new StringBuilder();
+        for (Map.Entry<String, ?> i : data.entrySet()) {
+            try {
+                sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue() + "", "UTF-8")).append("&");
+            } catch (UnsupportedEncodingException e) {
+                e.printStackTrace();
+            }
+        }
+        String result = sb.toString();
+        result = result.substring(0, result.lastIndexOf("&"));
+        return result;
+    }
+
+
 }
+
+
+

--
Gitblit v1.7.1