UserServiceImpl.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. package com.kmall.admin.service.impl;
  2. import com.kmall.admin.dao.UserDao;
  3. import com.kmall.admin.entity.UserEntity;
  4. import com.kmall.admin.fromcomm.dao.SysConfigDao;
  5. import com.kmall.admin.service.UserService;
  6. import com.kmall.common.utils.DateUtils;
  7. import com.kmall.common.utils.RRException;
  8. import com.kmall.common.utils.StringUtils;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.stereotype.Service;
  11. import java.util.*;
  12. /**
  13. * Service实现类
  14. *
  15. * @author Scott
  16. * @email
  17. * @date 2017-08-16 15:02:28
  18. */
  19. @Service("userService")
  20. public class UserServiceImpl implements UserService {
  21. @Autowired
  22. private UserDao userDao;
  23. @Autowired
  24. private SysConfigDao sysConfigDao;
  25. @Override
  26. public UserEntity queryObject(Integer id) {
  27. return userDao.queryObject(id);
  28. }
  29. @Override
  30. public List<UserEntity> queryList(Map<String, Object> map) {
  31. return userDao.queryList(map);
  32. }
  33. @Override
  34. public int queryTotal(Map<String, Object> map) {
  35. return userDao.queryTotal(map);
  36. }
  37. @Override
  38. public int save(UserEntity user) {
  39. user.setRegisterTime(new Date());
  40. return userDao.save(user);
  41. }
  42. @Override
  43. public int update(UserEntity user) {
  44. return userDao.update(user);
  45. }
  46. @Override
  47. public int delete(Integer id) {
  48. return userDao.delete(id);
  49. }
  50. @Override
  51. public int deleteBatch(Integer[] ids) {
  52. return userDao.deleteBatch(ids);
  53. }
  54. /**
  55. * 根据用户id判断上次活体人脸核身时间是否在可调用范围内
  56. * @param userId
  57. * @return
  58. */
  59. public Map checkFaceTimeByUserId(Long userId){
  60. Map map = new HashMap();
  61. String value = sysConfigDao.queryByKey("FACE_COLLECT_FREQUENCY_TIME");
  62. if(value==null){
  63. throw new RRException("请联系管理员配系统参数置FACE_COLLECT_FREQUENCY_TIME信息!");
  64. }
  65. UserEntity userEntity = userDao.queryObject(userId);
  66. if(userEntity != null && StringUtils.isNotEmpty(value)){
  67. Integer frequencySecondTime = Integer.parseInt(value);
  68. String lastFaceTime = userEntity.getLastFaceTime();
  69. if(StringUtils.isNotEmpty(lastFaceTime)) {
  70. Date lastFaceDate = DateUtils.convertStringToDate(lastFaceTime, DateUtils.DATE_TIME_PATTERN);
  71. Calendar calendar = Calendar.getInstance();
  72. calendar.setTime(lastFaceDate);
  73. calendar.add(Calendar.SECOND, frequencySecondTime);
  74. Date addSecondTime = calendar.getTime();
  75. map.put("addSecondTime", addSecondTime);
  76. Date nowDate = new Date();
  77. if (addSecondTime.getTime() > nowDate.getTime()) {
  78. map.put("isCheck", false);
  79. return map;
  80. } else {
  81. //可调用身份验证范围内
  82. map.put("isCheck", true);
  83. return map;
  84. }
  85. }else{//可调用身份验证范围内
  86. map.put("isCheck", true);
  87. return map;
  88. }
  89. }
  90. return null;
  91. }
  92. @Override
  93. public UserEntity queryByMobile(String mobile) {
  94. return userDao.queryByMobile(mobile);
  95. }
  96. }