Browse Source

bug优化

admin 2 years ago
parent
commit
87da9364b1

+ 0 - 1
src/main/java/com/yx/face/controller/api/ApiController.java

@@ -61,7 +61,6 @@ public class ApiController extends BaseController {
         return RestResponse.ok(userInfoService.doGetFacePass(userId, taskId));
     }
 
-
     @ApiOperation(value = "注册人脸认证回调接口")
     @PostMapping("doConfirmFaceNotify")
     public void doConfirmFaceNotify(HttpServletRequest request) {

+ 1 - 1
src/main/java/com/yx/face/dao/FaceDeviceDao.java

@@ -56,7 +56,7 @@ public interface FaceDeviceDao extends TKMapper<FaceDevice> {
 
     List<FaceDeviceVO> getBySnList(List<String> snList);
 
-    List<FaceDevice> getByAdminAndType(@Param("adminId")Integer adminId);
+    List<FaceDevice> getByAdminAndType(@Param("adminVO")AdminVO adminVO );
 
     List<String> getByAminVo(@Param("adminVo")AdminVO info);
 

+ 10 - 4
src/main/java/com/yx/face/service/impl/UserInfoServiceImpl.java

@@ -15,8 +15,10 @@ import com.yx.face.dao.*;
 import com.yx.face.model.dto.WxInfoDTO;
 import com.yx.face.model.entity.*;
 import com.yx.face.model.query.QueryUser;
+import com.yx.face.model.vo.AdminVO;
 import com.yx.face.model.vo.UserInfoVO;
 import com.yx.face.netty_client.NettyClient;
+import com.yx.face.service.AdminService;
 import com.yx.face.service.UserInfoService;
 import com.yx.face.service.feign.TBDeviceFaceService;
 import lombok.extern.slf4j.Slf4j;
@@ -70,6 +72,8 @@ public class UserInfoServiceImpl implements UserInfoService {
     private AsyncTriggerRetryImpl asyncTriggerRetryImpl;
     @Autowired
     private RedisUtil redisUtil;
+    @Autowired
+    private AdminService adminService;
 
     //    @Value("${wx.phone.url}")
     private static final String wxUrl = "http://192.168.99.11:9810/winxin-fyzd/weiXin/getPhone";
@@ -204,7 +208,7 @@ public class UserInfoServiceImpl implements UserInfoService {
     @Override
     public Map<String, Object> doGetFacePass(Integer userId, String taskId) {
         log.info("数据*************; " + userId + "*******************" + taskId);
-        String admin = taskId.split("-")[0];
+        String admin = taskId;
         //返回值
         Map<String, Object> map = new HashMap<>(2);
         // 人员类型
@@ -231,7 +235,7 @@ public class UserInfoServiceImpl implements UserInfoService {
         }
         //常客
         UserWhitelist byPhoneAndId = userWhitelistdao.getByPhoneAndId(userInfo.getPhone(), null, Integer.valueOf(admin));
-        // 访客
+        //访客
         UserVisitorList userVisitorList = userVisitorListDao.getByPhoneAndId(userInfo.getPhone(), Integer.valueOf(admin));
         //常客
         if (byPhoneAndId != null) {
@@ -267,11 +271,13 @@ public class UserInfoServiceImpl implements UserInfoService {
     @Transactional(rollbackFor = Exception.class)
     public void downFaceByTask(UserInfo userInfo, Date startTime, Date endTime, Integer type, String taskId, UserWhitelist byPhoneAndId, UserVisitorList userVisitorList) throws Exception {
         //获取adminId
-        String admin = taskId.split("-")[0];
+        //String admin = taskId.split("-")[0];
+        String admin = taskId;
         //获取 adminId下的所有设备
         //List<FaceDevice> snList = faceDeviceDao.getSnList(Integer.parseInt(admin));
         //查询员工通道设备(type=2)
-        List<FaceDevice> snList = faceDeviceDao.getByAdminAndType(Integer.parseInt(admin));
+        AdminVO adminVO = adminService.getInfo(Integer.valueOf(admin));
+        List<FaceDevice> snList = faceDeviceDao.getByAdminAndType(adminVO);
         Map<String, Object> result;
         //天波人脸服务请求日志表
         FaceRequestLog requestLog;

+ 8 - 1
src/main/java/com/yx/face/service/impl/UserWhitelistServiceImpl.java

@@ -30,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @description:
@@ -176,7 +177,13 @@ public class UserWhitelistServiceImpl implements UserWhitelistService {
 //            }
 //        }
         //获取 adminId所有设备
-        List<String> faceDeviceOne = faceDeviceDao.selectList(userWhitelist.getAdminId());
+        //List<String> faceDeviceOne = faceDeviceDao.selectList(userWhitelist.getAdminId());
+        //List<FaceDevice> snList = faceDeviceDao.getByAdminAndType(userWhitelist.getAdminId());
+        //List<String> faceDeviceOne = snList.stream().map(FaceDevice::getSn).collect(Collectors.toList());
+        //查询超管旗下所有设备
+        AdminVO info = adminService.getInfo();
+        List<String> faceDeviceOne = faceDeviceDao.getByAminVo(info);
+
         if (faceDeviceOne.isEmpty()) {
             throw new ServiceException("该设备不存在或离线,请刷新页面再试哦~");
         }

+ 12 - 9
src/main/resources/mapper/FaceDeviceDao.xml

@@ -248,14 +248,17 @@
     </select>
 
     <select id="getByAdminAndType" resultType="com.yx.face.model.entity.FaceDevice">
-        SELECT id,
-        sn
-        FROM face_device
-        WHERE enable = 1
-        AND auth = 1
-        AND type = 2
-        <if test="adminId != null">
-            AND admin_id = #{adminId}
-        </if>
+        SELECT fd.id,fd.sn
+        FROM face_device fd
+        LEFT JOIN admin a on a.id=fd.admin_id
+        left join admin b on b.id = fd.admin_id_of_staff_entrance
+        where
+        a.type in (3 ,4 ,5)
+        and a.province_id = #{adminVO.provinceId}
+        and enable = 1
+        AND fd.online = 1
+        AND fd.auth = 1
+        and fd.type = 2;
+
     </select>
 </mapper>