From 2bd9debe1829fdce93c62028aa97716a1cb2defe Mon Sep 17 00:00:00 2001
From: fengjin <1435304038@qq.com>
Date: 星期二, 19 九月 2023 10:34:22 +0800
Subject: [PATCH] 一帕拉功能(一边想四月里大哥一边写的)

---
 springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java |  100 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 97 insertions(+), 3 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java
index a0a095d..343f5e2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java
@@ -6,19 +6,24 @@
 import com.panzhihua.common.model.dtos.equipment.UnionUserDto;
 import com.panzhihua.common.model.vos.LoginUserInfoVO;
 import com.panzhihua.common.model.vos.R;
-import com.panzhihua.service_equipment.config.AccessUtil;
+import com.panzhihua.common.redis.TokenManager;
+import com.panzhihua.service_equipment.until.AccessUtil;
 import com.panzhihua.service_equipment.dao.UnionAccessMapper;
 import com.panzhihua.service_equipment.dao.UnionUserMapper;
+import com.panzhihua.service_equipment.dao.UsersMapper;
 import com.panzhihua.service_equipment.model.dos.UnionAccess;
-import com.panzhihua.service_equipment.model.dos.UnionOutdoorSite;
 import com.panzhihua.service_equipment.model.dos.UnionUser;
+import com.panzhihua.service_equipment.model.dos.Users;
 import com.panzhihua.service_equipment.service.UnionUserService;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 @Service
 @Slf4j
@@ -29,6 +34,12 @@
 
     @Resource
     private UnionAccessMapper unionAccessMapper;
+
+    @Resource
+    private UsersMapper usersMapper;
+
+    @Resource
+    private TokenManager tokenManager;
 
     /**
      * 总工会户外劳登录
@@ -64,6 +75,85 @@
     }
 
     /**
+     * 总工会户外劳登录(h5)
+     *
+     * @param phone
+     * @return 总工会户外劳共用户
+     */
+    @Override
+    public  R<Map<String, Object>> loginByUnion(String phone){
+        Map<String, Object> mapUser = new HashMap<>();
+        Users users = usersMapper.selectOne(new QueryWrapper<Users>()
+                .eq("phone", phone)
+                .eq("deleted", 0)
+                .eq("freezeFlag", 0)
+                .orderByDesc("updateTime")
+                .last("limit 1"));
+        if (users!=null){
+            UnionUser unionUser = baseMapper.selectOne(new QueryWrapper<UnionUser>().eq("union_h5_user_id", users.getUsersID()));
+            if (unionUser!=null){
+                String token = tokenManager.getTokenByUserId(unionUser.getId().toString());
+//                String token=null;
+                if (token == null) {
+                    //生成一个token,保存用户登录状态
+                    token = tokenManager.createToken(unionUser.getId().toString(), unionUser.getId().toString());
+                }
+                mapUser.put("token", token);
+                mapUser.put("unionUser",unionUser);
+                log.info("mapUser{}",mapUser);
+                return R.ok(mapUser);
+            }
+            else {
+                unionUser=new UnionUser();
+                unionUser.setPhone(users.getPhone());
+                unionUser.setDeleteFlag(false);
+                unionUser.setCreateAt(LocalDateTime.now());
+                unionUser.setUpdateAt(LocalDateTime.now());
+                unionUser.setStatus(1);
+                unionUser.setNickName(users.getUname());
+                unionUser.setUnionH5UserId(users.getUsersID());
+                int insert = baseMapper.insert(unionUser);
+                if (insert >0){
+                    unionUser = baseMapper.selectOne(new QueryWrapper<UnionUser>().eq("union_h5_user_id", users.getUsersID()));
+                    if (unionUser!=null){
+                        String token = tokenManager.getTokenByUserId(unionUser.getId().toString());
+                        if (token == null) {
+                            //生成一个token,保存用户登录状态
+                            token = tokenManager.createToken(unionUser.getId().toString(), unionUser.getId().toString());
+                        }
+                        mapUser.put("token", token);
+                        mapUser.put("unionUser",unionUser);
+                        log.info("mapUser{}",mapUser);
+                        return  R.ok(mapUser);
+                    }
+
+                }
+
+            }
+            return R.fail("新增用户失败请查看是否在川共之家登录");
+        }else {
+           log.info("总工会数据库没有人物");
+           return  R.fail("数据错误,请先在川共之家登录");
+        }
+
+    }
+
+    /**
+     * 使用id查找用户
+     *
+     * @param id
+     * @return 总工会户外劳共用户
+     */
+    @Override
+    public UnionUserDto  selectById(Long id){
+        UnionUserDto unionUserDto=new UnionUserDto();
+        UnionUser unionUser = baseMapper.selectById(id);
+        BeanUtils.copyProperties(unionUser, unionUserDto);
+        return  unionUserDto;
+    }
+
+
+    /**
      * 总工会户外劳工站用户认证
      *
      * @param unionUserDto
@@ -72,7 +162,11 @@
 
     @Override
     public R authentication(UnionUserDto unionUserDto){
-        UnionUser unionUser = baseMapper.selectOne(new QueryWrapper<UnionUser>().eq("user_id", unionUserDto.getUserId()));
+        UnionUser unionUser=null;
+        if (unionUserDto.getIsApplets().equals(1))
+            unionUser = baseMapper.selectOne(new QueryWrapper<UnionUser>().eq("user_id", unionUserDto.getUserId()));
+        else
+            unionUser = baseMapper.selectOne(new QueryWrapper<UnionUser>().eq("id", unionUserDto.getId()));
         if (unionUser != null){
             log.info("查询到用户开始认证操作{}",unionUser);
             //设备下发照片代码

--
Gitblit v1.7.1