|
@@ -21,6 +21,7 @@ import cn.hutool.core.util.StrUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
@@ -33,6 +34,7 @@ import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
|
|
|
import vip.xiaonuo.coldchain.core.alarm.bean.SensorAlarmUser;
|
|
|
import vip.xiaonuo.coldchain.modular.alarmuser.dto.ExtendUserDTO;
|
|
|
import vip.xiaonuo.coldchain.modular.alarmuser.entity.AlarmUser;
|
|
|
+import vip.xiaonuo.coldchain.modular.alarmuser.enums.AlarmUserEnum;
|
|
|
import vip.xiaonuo.coldchain.modular.alarmuser.mapper.AlarmUserMapper;
|
|
|
import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserAddParam;
|
|
|
import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserEditParam;
|
|
@@ -57,7 +59,10 @@ import vip.xiaonuo.sys.modular.user.enums.SysUserStatusEnum;
|
|
|
import vip.xiaonuo.sys.modular.user.service.SysUserService;
|
|
|
import vip.xiaonuo.sys.modular.user.service.impl.SysUserServiceImpl;
|
|
|
|
|
|
-import java.util.*;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -254,6 +259,25 @@ public class AlarmUserServiceImpl extends ServiceImpl<AlarmUserMapper, AlarmUser
|
|
|
return "您已绑定过该组织,已为您更新个人信息";
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public AlarmUser subscribe(String openid) {
|
|
|
+ log.info("用户关注公众号 openid={}", openid);
|
|
|
+ AlarmUser alarmUser = new AlarmUser();
|
|
|
+ alarmUser.setSubscribed(AlarmUserEnum.SUBSCRIBE.getValue());
|
|
|
+ update(alarmUser, new LambdaUpdateWrapper<>(AlarmUser.class).eq(AlarmUser::getOpenId, openid));
|
|
|
+
|
|
|
+ List<AlarmUser> users = getByOpenId(openid);
|
|
|
+ return users.isEmpty() ? null : users.get(0);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void unsubscribe(String openid) {
|
|
|
+ log.info("用户取消关注公众号 openid={}", openid);
|
|
|
+ AlarmUser alarmUser = new AlarmUser();
|
|
|
+ alarmUser.setSubscribed(AlarmUserEnum.UNSUBSCRIBE.getValue());
|
|
|
+ update(alarmUser, new LambdaUpdateWrapper<>(AlarmUser.class).eq(AlarmUser::getOpenId, openid));
|
|
|
+ }
|
|
|
+
|
|
|
private List<AlarmUser> getByOpenId(String openId) {
|
|
|
LambdaQueryWrapper<AlarmUser> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(AlarmUser::getOpenId, openId)
|