提交 91463886 authored 作者: 林业通's avatar 林业通

修改

上级 d0b8f6f4
package tech.glinfo.enbao.modules.sh.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import tech.glinfo.enbao.common.annotation.ApiLog;
import tech.glinfo.enbao.common.annotation.Login;
import tech.glinfo.enbao.common.annotation.LoginUser;
import tech.glinfo.enbao.common.utils.R;
import tech.glinfo.enbao.common.utils.StringUtils;
import tech.glinfo.enbao.modules.appuser.entity.AppUserEntity;
import tech.glinfo.enbao.modules.appuser.service.AppUserService;
import tech.glinfo.enbao.modules.sh.entity.ShFamilyInviteEntity;
import tech.glinfo.enbao.modules.sh.entity.ShFamilyMemberEntity;
import tech.glinfo.enbao.modules.sh.service.ShFamilyInviteService;
import tech.glinfo.enbao.modules.sh.service.ShFamilyMemberService;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/shFamilyInvite")
@Api(value = "邀请家庭成员")
public class ShFamilyInviteController {
@Autowired
private ShFamilyInviteService shFamilyInviteService;
@Autowired
private ShFamilyMemberService shFamilyMemberService;
@Autowired
private AppUserService appUserService;
@Login
@PostMapping("add")
@ApiOperation("新增")
@ApiLog("新增")
public R add(@RequestBody Map<String, Object> params, @LoginUser AppUserEntity user) {
String phone = (String) params.get("phone");
String name = (String) params.get("name");
Integer familyId = (Integer) params.get("familyId");
if (StringUtils.isBlank(familyId, name)) {
return R.error("缺少参数");
}
if (StringUtils.isBlank(phone)) {
return R.error("请输入邀请成员手机号码");
}
AppUserEntity appUser = appUserService.getOne(new QueryWrapper<AppUserEntity>().eq("phone", phone));
if (appUser == null) {
return R.error("成员还未注册");
}
int count = shFamilyMemberService.count(new QueryWrapper<ShFamilyMemberEntity>().eq("user_id", appUser.getId()).eq("family_id", familyId));
if (count > 0) {
return R.error("成员已经加入");
}
int count1 = shFamilyInviteService.count(new QueryWrapper<ShFamilyInviteEntity>().eq("status", 1).eq("family_id", familyId).eq("user_id", appUser.getId()));
//判断是否重复邀请
if (count1 == 0) {
ShFamilyInviteEntity invite = new ShFamilyInviteEntity();
invite.setFamilyId(familyId);
invite.setCreateId(user.getId());
invite.setUserId(appUser.getId());
invite.setName(name);
shFamilyInviteService.save(invite);
}
return R.ok();
}
@Login
@GetMapping("list")
@ApiOperation("邀请列表")
@ApiLog("邀请列表")
public R list(@LoginUser AppUserEntity user) {
List<ShFamilyInviteEntity> list = shFamilyInviteService.list(new QueryWrapper<ShFamilyInviteEntity>().eq("user_id", user.getId()));
return R.ok().put("list", list);
}
@Login
@PostMapping("updateStatus")
@ApiOperation("修改状态")
@ApiLog("修改状态")
public R updateStatus(@RequestBody Map<String, Object> params) {
Integer id = (Integer) params.get("id");
Integer status = (Integer) params.get("status");
if (StringUtils.isBlank(id, status)) {
return R.error("缺少参数");
}
ShFamilyInviteEntity invite = shFamilyInviteService.getById(id);
if (invite != null && invite.getStatus() == 1) {
invite.setStatus(status);
if (status == 2) {
ShFamilyMemberEntity member = new ShFamilyMemberEntity();
member.setFamilyId(invite.getFamilyId());
member.setUserId(invite.getUserId());
member.setIsAdmin(2);
shFamilyMemberService.save(member);
}
shFamilyInviteService.updateById(invite);
}
return R.ok();
}
}
\ No newline at end of file
......@@ -27,7 +27,7 @@ public class ShFamilyMemberController {
@Autowired
private ShFamilyMemberService shFamilyMemberService;
@Login
/*@Login
@PostMapping("add")
@ApiOperation("新增")
@ApiLog("新增")
......@@ -42,7 +42,7 @@ public class ShFamilyMemberController {
member.setIsAdmin(2);
shFamilyMemberService.save(member);
return R.ok();
}
}*/
@Login
......
......@@ -25,7 +25,7 @@ public interface OtherShFamilyRoomDao extends BaseMapper<ShFamilyRoomEntity> {
@Select("<script>" +
"SELECT a.id, a.name, COUNT(b.id) `device` FROM sh_family_room a, sh_device b WHERE a.id = b.room_id AND a.family_id = ${familyId}" +
"SELECT a.id, a.name, IF(COUNT(b.id) > 0, COUNT(b.id), NULL) `device` FROM sh_family_room a LEFT JOIN sh_device b ON a.id = b.room_id WHERE a.family_id = ${familyId}" +
" </script>")
List<Map<String, Object>> list(Integer familyId);
......
......@@ -34,7 +34,7 @@
SELECT a.id, a.name, COUNT(c.id) room,
b.id item_id,
d.nickname item_nickname,
b.is_admin item_isAdmin
b.is_admin item_is_admin
FROM
sh_family a left join sh_family_room c on a.id = c.family_id, sh_family_member b, app_user d
WHERE
......
package tech.glinfo.enbao.modules.sh.dao;
import tech.glinfo.enbao.modules.sh.entity.ShFamilyInviteEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 家庭邀请记录
*
* @author linyetong
* @email linyetong@glinfo.com
* @date 2022-02-16 16:50:09
*/
@Mapper
public interface ShFamilyInviteDao extends BaseMapper<ShFamilyInviteEntity> {
}
package tech.glinfo.enbao.modules.sh.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 家庭邀请记录
*
* @author linyetong
* @email linyetong@glinfo.com
* @date 2022-02-16 16:50:09
*/
@Data
@TableName("sh_family_invite")
public class ShFamilyInviteEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId
private Integer id;
/**
* 家庭ID
*/
private Integer familyId;
/**
* 家庭名称
*/
private String name;
/**
* 被邀请人
*/
private Integer userId;
/**
* 状态[1待确认,2已加入,2已拒绝]
*/
private Integer status;
/**
* 邀请人
*/
private Integer createId;
/**
* 创建时间
*/
private Date createTime;
}
package tech.glinfo.enbao.modules.sh.service;
import com.baomidou.mybatisplus.extension.service.IService;
import tech.glinfo.enbao.common.utils.PageUtils;
import tech.glinfo.enbao.modules.sh.entity.ShFamilyInviteEntity;
import java.util.Map;
/**
* 家庭邀请记录
*
* @author linyetong
* @email linyetong@glinfo.com
* @date 2022-02-16 16:50:09
*/
public interface ShFamilyInviteService extends IService<ShFamilyInviteEntity> {
PageUtils queryPage(Map<String, Object> params);
}
package tech.glinfo.enbao.modules.sh.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import tech.glinfo.enbao.common.utils.PageUtils;
import tech.glinfo.enbao.common.utils.Query;
import tech.glinfo.enbao.modules.sh.dao.ShFamilyInviteDao;
import tech.glinfo.enbao.modules.sh.entity.ShFamilyInviteEntity;
import tech.glinfo.enbao.modules.sh.service.ShFamilyInviteService;
@Service("shFamilyInviteService")
public class ShFamilyInviteServiceImpl extends ServiceImpl<ShFamilyInviteDao, ShFamilyInviteEntity> implements ShFamilyInviteService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<ShFamilyInviteEntity> page = this.page(
new Query<ShFamilyInviteEntity>().getPage(params),
new QueryWrapper<ShFamilyInviteEntity>()
);
return new PageUtils(page);
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="tech.glinfo.enbao.modules.sh.dao.ShFamilyInviteDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="tech.glinfo.enbao.modules.sh.entity.ShFamilyInviteEntity" id="shFamilyInviteMap">
<result property="id" column="id"/>
<result property="familyId" column="family_id"/>
<result property="name" column="name"/>
<result property="userId" column="user_id"/>
<result property="status" column="status"/>
<result property="createId" column="create_id"/>
<result property="createTime" column="create_time"/>
</resultMap>
</mapper>
\ No newline at end of file
......@@ -290,7 +290,6 @@ CREATE TABLE `feed_back` (
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='意见反馈';
CREATE TABLE `business_cooperation` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`name` varchar(50) DEFAULT NULL COMMENT '联系人',
......@@ -298,4 +297,16 @@ CREATE TABLE `business_cooperation` (
`content` varchar(255) DEFAULT NULL COMMENT '内容',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商务合作';
\ No newline at end of file
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商务合作';
CREATE TABLE `sh_family_invite` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`family_id` int(11) DEFAULT NULL COMMENT '家庭ID',
`name` varchar(64) DEFAULT NULL COMMENT '家庭名称',
`user_id` int(11) DEFAULT NULL COMMENT '被邀请人',
`status` tinyint(2) DEFAULT '1' COMMENT '状态[1待确认,2已加入,2已拒绝]',
`create_id` int(11) DEFAULT NULL COMMENT '邀请人',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE,
KEY `sh_family_invite_user_id` (`user_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='家庭邀请记录';
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论