28 changed files with 1126 additions and 30 deletions
@ -0,0 +1,97 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.resi.group.dto.member; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Data |
|||
public class ExitGroupRecordDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 小组id |
|||
*/ |
|||
private String groupId; |
|||
|
|||
/** |
|||
* 组成员用户id |
|||
*/ |
|||
private String memberUserId; |
|||
|
|||
/** |
|||
* 屏蔽他的话题及评论 yes:屏蔽 no:不屏蔽 |
|||
*/ |
|||
private String shieldFlag; |
|||
|
|||
/** |
|||
* 0:组长移除; |
|||
*/ |
|||
private String leaveType; |
|||
|
|||
/** |
|||
* 删除标识 |
|||
*/ |
|||
private String delFlag; |
|||
|
|||
/** |
|||
* 乐观锁 |
|||
*/ |
|||
private Integer revision; |
|||
|
|||
/** |
|||
* 当前操作人id |
|||
*/ |
|||
private String createdBy; |
|||
|
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
private Date createdTime; |
|||
|
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
private String updatedBy; |
|||
|
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
private Date updatedTime; |
|||
|
|||
} |
@ -0,0 +1,97 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.resi.group.dto.member; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
|
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Data |
|||
public class GroupLeaderTransferRecordDTO implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 主键 |
|||
*/ |
|||
private String id; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 小组id |
|||
*/ |
|||
private String groupId; |
|||
|
|||
/** |
|||
* 原组长userId |
|||
*/ |
|||
private String originalLeader; |
|||
|
|||
/** |
|||
* 新组长userId |
|||
*/ |
|||
private String newLeader; |
|||
|
|||
/** |
|||
* 组长自主转让resi,工作人员转让gov |
|||
*/ |
|||
private String type; |
|||
|
|||
/** |
|||
* 删除标识 |
|||
*/ |
|||
private String delFlag; |
|||
|
|||
/** |
|||
* 乐观锁 |
|||
*/ |
|||
private Integer revision; |
|||
|
|||
/** |
|||
* 当前操作人id即组长id |
|||
*/ |
|||
private String createdBy; |
|||
|
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
private Date createdTime; |
|||
|
|||
/** |
|||
* 更新人 |
|||
*/ |
|||
private String updatedBy; |
|||
|
|||
/** |
|||
* 更新时间 |
|||
*/ |
|||
private Date updatedTime; |
|||
|
|||
} |
@ -0,0 +1,32 @@ |
|||
package com.epmet.resi.group.dto.member.form; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
import java.io.Serializable; |
|||
|
|||
/** |
|||
* 确认转让组-(工作端通用)入参 |
|||
* |
|||
* @author yinzuomei@elink-cn.com |
|||
* @date 2021/3/30 10:06 |
|||
*/ |
|||
@Data |
|||
public class ConfirmTransferFormDTO implements Serializable { |
|||
private static final long serialVersionUID = -6087185953287544147L; |
|||
|
|||
@NotBlank(message = "小组id不能为空") |
|||
private String groupId; |
|||
|
|||
@NotBlank(message = "新组长用户id不能为空") |
|||
private String newLeaderUserId; |
|||
|
|||
@NotBlank(message = "type不能为空:自主转让resi,工作人员转让gov") |
|||
private String type; |
|||
|
|||
/**************************以上是需要前端传入的参数*******************************************************/ |
|||
@NotBlank(message = "tokenDto中获取customerId为空") |
|||
private String customerId; |
|||
@NotBlank(message = "tokenDto中获取userId为空") |
|||
private String currentUserId; |
|||
} |
@ -0,0 +1,40 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.controller; |
|||
|
|||
import com.epmet.modules.member.service.ExitGroupRecordService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("exitgroup") |
|||
public class ExitGroupRecordController { |
|||
|
|||
@Autowired |
|||
private ExitGroupRecordService exitGroupRecordService; |
|||
|
|||
|
|||
} |
@ -0,0 +1,61 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.controller; |
|||
|
|||
import com.epmet.commons.tools.annotation.LoginUser; |
|||
import com.epmet.commons.tools.security.dto.TokenDto; |
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.commons.tools.validator.ValidatorUtils; |
|||
import com.epmet.modules.member.service.GroupLeaderTransferRecordService; |
|||
import com.epmet.resi.group.dto.member.form.ConfirmTransferFormDTO; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PostMapping; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("leadertransfer") |
|||
public class GroupLeaderTransferRecordController { |
|||
|
|||
@Autowired |
|||
private GroupLeaderTransferRecordService groupLeaderTransferRecordService; |
|||
|
|||
/** |
|||
* @return com.epmet.commons.tools.utils.Result |
|||
* @param formDTO |
|||
* @author yinzuomei |
|||
* @description 确认转让组-(工作端通用) NEI:https://nei.netease.com/interface/detail/?pid=52286&id=355049
|
|||
* @Date 2021/3/30 10:08 |
|||
**/ |
|||
@PostMapping("confirmtransfer") |
|||
public Result confirmTransfer(@LoginUser TokenDto tokenDto, @RequestBody ConfirmTransferFormDTO formDTO){ |
|||
formDTO.setCustomerId(tokenDto.getCustomerId()); |
|||
formDTO.setCurrentUserId(tokenDto.getUserId()); |
|||
ValidatorUtils.validateEntity(formDTO); |
|||
groupLeaderTransferRecordService.confirmTransfer(formDTO); |
|||
return new Result(); |
|||
} |
|||
} |
@ -0,0 +1,33 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.dao; |
|||
|
|||
import com.epmet.commons.mybatis.dao.BaseDao; |
|||
import com.epmet.modules.member.entity.ExitGroupRecordEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Mapper |
|||
public interface ExitGroupRecordDao extends BaseDao<ExitGroupRecordEntity> { |
|||
|
|||
} |
@ -0,0 +1,33 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.dao; |
|||
|
|||
import com.epmet.commons.mybatis.dao.BaseDao; |
|||
import com.epmet.modules.member.entity.GroupLeaderTransferRecordEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Mapper |
|||
public interface GroupLeaderTransferRecordDao extends BaseDao<GroupLeaderTransferRecordEntity> { |
|||
|
|||
} |
@ -0,0 +1,63 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("exit_group_record") |
|||
public class ExitGroupRecordEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 小组id |
|||
*/ |
|||
private String groupId; |
|||
|
|||
/** |
|||
* 组成员用户id |
|||
*/ |
|||
private String memberUserId; |
|||
|
|||
/** |
|||
* 屏蔽他的话题及评论 yes:屏蔽 no:不屏蔽 |
|||
*/ |
|||
private String shieldFlag; |
|||
|
|||
/** |
|||
* 0:组长移除; |
|||
*/ |
|||
private String leaveType; |
|||
|
|||
} |
@ -0,0 +1,63 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper=false) |
|||
@TableName("group_leader_transfer_record") |
|||
public class GroupLeaderTransferRecordEntity extends BaseEpmetEntity { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private String customerId; |
|||
|
|||
/** |
|||
* 小组id |
|||
*/ |
|||
private String groupId; |
|||
|
|||
/** |
|||
* 原组长userId |
|||
*/ |
|||
private String originalLeader; |
|||
|
|||
/** |
|||
* 新组长userId |
|||
*/ |
|||
private String newLeader; |
|||
|
|||
/** |
|||
* 组长自主转让resi,工作人员转让gov |
|||
*/ |
|||
private String type; |
|||
|
|||
} |
@ -0,0 +1,95 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.service; |
|||
|
|||
import com.epmet.commons.mybatis.service.BaseService; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.modules.member.entity.ExitGroupRecordEntity; |
|||
import com.epmet.resi.group.dto.member.ExitGroupRecordDTO; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
public interface ExitGroupRecordService extends BaseService<ExitGroupRecordEntity> { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<ExitGroupRecordDTO> |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
PageData<ExitGroupRecordDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<ExitGroupRecordDTO> |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
List<ExitGroupRecordDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 单条查询 |
|||
* |
|||
* @param id |
|||
* @return ExitGroupRecordDTO |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
ExitGroupRecordDTO get(String id); |
|||
|
|||
/** |
|||
* 默认保存 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void save(ExitGroupRecordDTO dto); |
|||
|
|||
/** |
|||
* 默认更新 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void update(ExitGroupRecordDTO dto); |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void delete(String[] ids); |
|||
} |
@ -0,0 +1,105 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.service; |
|||
|
|||
import com.epmet.commons.mybatis.service.BaseService; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.modules.member.entity.GroupLeaderTransferRecordEntity; |
|||
import com.epmet.resi.group.dto.member.GroupLeaderTransferRecordDTO; |
|||
import com.epmet.resi.group.dto.member.form.ConfirmTransferFormDTO; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
public interface GroupLeaderTransferRecordService extends BaseService<GroupLeaderTransferRecordEntity> { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<GroupLeaderTransferRecordDTO> |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
PageData<GroupLeaderTransferRecordDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<GroupLeaderTransferRecordDTO> |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
List<GroupLeaderTransferRecordDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 单条查询 |
|||
* |
|||
* @param id |
|||
* @return GroupLeaderTransferRecordDTO |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
GroupLeaderTransferRecordDTO get(String id); |
|||
|
|||
/** |
|||
* 默认保存 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void save(GroupLeaderTransferRecordDTO dto); |
|||
|
|||
/** |
|||
* 默认更新 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void update(GroupLeaderTransferRecordDTO dto); |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return void |
|||
* @author generator |
|||
* @date 2021-03-29 |
|||
*/ |
|||
void delete(String[] ids); |
|||
|
|||
/** |
|||
* @return void |
|||
* @param formDTO |
|||
* @author yinzuomei |
|||
* @description 确认转让组-(工作端通用) |
|||
* @Date 2021/3/30 10:11 |
|||
**/ |
|||
void confirmTransfer(ConfirmTransferFormDTO formDTO); |
|||
} |
@ -0,0 +1,99 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.constant.FieldConstant; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.utils.ConvertUtils; |
|||
import com.epmet.modules.member.dao.ExitGroupRecordDao; |
|||
import com.epmet.modules.member.entity.ExitGroupRecordEntity; |
|||
import com.epmet.modules.member.service.ExitGroupRecordService; |
|||
import com.epmet.resi.group.dto.member.ExitGroupRecordDTO; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 退群记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Service |
|||
public class ExitGroupRecordServiceImpl extends BaseServiceImpl<ExitGroupRecordDao, ExitGroupRecordEntity> implements ExitGroupRecordService { |
|||
|
|||
@Override |
|||
public PageData<ExitGroupRecordDTO> page(Map<String, Object> params) { |
|||
IPage<ExitGroupRecordEntity> page = baseDao.selectPage( |
|||
getPage(params, FieldConstant.CREATED_TIME, false), |
|||
getWrapper(params) |
|||
); |
|||
return getPageData(page, ExitGroupRecordDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
public List<ExitGroupRecordDTO> list(Map<String, Object> params) { |
|||
List<ExitGroupRecordEntity> entityList = baseDao.selectList(getWrapper(params)); |
|||
|
|||
return ConvertUtils.sourceToTarget(entityList, ExitGroupRecordDTO.class); |
|||
} |
|||
|
|||
private QueryWrapper<ExitGroupRecordEntity> getWrapper(Map<String, Object> params){ |
|||
String id = (String)params.get(FieldConstant.ID_HUMP); |
|||
|
|||
QueryWrapper<ExitGroupRecordEntity> wrapper = new QueryWrapper<>(); |
|||
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|||
|
|||
return wrapper; |
|||
} |
|||
|
|||
@Override |
|||
public ExitGroupRecordDTO get(String id) { |
|||
ExitGroupRecordEntity entity = baseDao.selectById(id); |
|||
return ConvertUtils.sourceToTarget(entity, ExitGroupRecordDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void save(ExitGroupRecordDTO dto) { |
|||
ExitGroupRecordEntity entity = ConvertUtils.sourceToTarget(dto, ExitGroupRecordEntity.class); |
|||
insert(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void update(ExitGroupRecordDTO dto) { |
|||
ExitGroupRecordEntity entity = ConvertUtils.sourceToTarget(dto, ExitGroupRecordEntity.class); |
|||
updateById(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void delete(String[] ids) { |
|||
// 逻辑删除(@TableLogic 注解)
|
|||
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,205 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.epmet.modules.member.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|||
import com.epmet.commons.tools.constant.FieldConstant; |
|||
import com.epmet.commons.tools.exception.EpmetErrorCode; |
|||
import com.epmet.commons.tools.exception.RenException; |
|||
import com.epmet.commons.tools.page.PageData; |
|||
import com.epmet.commons.tools.utils.ConvertUtils; |
|||
import com.epmet.dto.form.UserMessageFormDTO; |
|||
import com.epmet.feign.EpmetMessageOpenFeignClient; |
|||
import com.epmet.modules.constant.UserMessageConstant; |
|||
import com.epmet.modules.group.service.ResiGroupService; |
|||
import com.epmet.modules.member.dao.GroupLeaderTransferRecordDao; |
|||
import com.epmet.modules.member.entity.GroupLeaderTransferRecordEntity; |
|||
import com.epmet.modules.member.service.GroupLeaderTransferRecordService; |
|||
import com.epmet.modules.member.service.ResiGroupMemberService; |
|||
import com.epmet.modules.utils.ModuleConstant; |
|||
import com.epmet.resi.group.constant.LeaderFlagConstant; |
|||
import com.epmet.resi.group.dto.group.ResiGroupDTO; |
|||
import com.epmet.resi.group.dto.member.GroupLeaderTransferRecordDTO; |
|||
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO; |
|||
import com.epmet.resi.group.dto.member.form.ConfirmTransferFormDTO; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 组长身份转让记录表 |
|||
* |
|||
* @author generator generator@elink-cn.com |
|||
* @since v1.0.0 2021-03-29 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
public class GroupLeaderTransferRecordServiceImpl extends BaseServiceImpl<GroupLeaderTransferRecordDao, GroupLeaderTransferRecordEntity> implements GroupLeaderTransferRecordService { |
|||
@Autowired |
|||
private ResiGroupMemberService resiGroupMemberService; |
|||
@Autowired |
|||
private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient; |
|||
@Autowired |
|||
private ResiGroupService resiGroupService; |
|||
|
|||
@Override |
|||
public PageData<GroupLeaderTransferRecordDTO> page(Map<String, Object> params) { |
|||
IPage<GroupLeaderTransferRecordEntity> page = baseDao.selectPage( |
|||
getPage(params, FieldConstant.CREATED_TIME, false), |
|||
getWrapper(params) |
|||
); |
|||
return getPageData(page, GroupLeaderTransferRecordDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
public List<GroupLeaderTransferRecordDTO> list(Map<String, Object> params) { |
|||
List<GroupLeaderTransferRecordEntity> entityList = baseDao.selectList(getWrapper(params)); |
|||
|
|||
return ConvertUtils.sourceToTarget(entityList, GroupLeaderTransferRecordDTO.class); |
|||
} |
|||
|
|||
private QueryWrapper<GroupLeaderTransferRecordEntity> getWrapper(Map<String, Object> params){ |
|||
String id = (String)params.get(FieldConstant.ID_HUMP); |
|||
|
|||
QueryWrapper<GroupLeaderTransferRecordEntity> wrapper = new QueryWrapper<>(); |
|||
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|||
|
|||
return wrapper; |
|||
} |
|||
|
|||
@Override |
|||
public GroupLeaderTransferRecordDTO get(String id) { |
|||
GroupLeaderTransferRecordEntity entity = baseDao.selectById(id); |
|||
return ConvertUtils.sourceToTarget(entity, GroupLeaderTransferRecordDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void save(GroupLeaderTransferRecordDTO dto) { |
|||
GroupLeaderTransferRecordEntity entity = ConvertUtils.sourceToTarget(dto, GroupLeaderTransferRecordEntity.class); |
|||
insert(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void update(GroupLeaderTransferRecordDTO dto) { |
|||
GroupLeaderTransferRecordEntity entity = ConvertUtils.sourceToTarget(dto, GroupLeaderTransferRecordEntity.class); |
|||
updateById(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void delete(String[] ids) { |
|||
// 逻辑删除(@TableLogic 注解)
|
|||
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|||
} |
|||
|
|||
/** |
|||
* @param formDTO |
|||
* @return void |
|||
* @author yinzuomei |
|||
* @description 确认转让组-(工作端通用) |
|||
* @Date 2021/3/30 10:11 |
|||
**/ |
|||
@Transactional(rollbackFor = Exception.class) |
|||
@Override |
|||
public void confirmTransfer(ConfirmTransferFormDTO formDTO) { |
|||
//原组长
|
|||
ResiGroupMemberDTO originalLeader = resiGroupMemberService.getGroupLeader(formDTO.getGroupId()); |
|||
if(formDTO.getNewLeaderUserId().equals(originalLeader.getCustomerUserId())){ |
|||
log.warn("候选人已经是组长"); |
|||
return; |
|||
} |
|||
//如果是居民端转让组,只能是当前组长操作
|
|||
if (ModuleConstant.APP_RESI.equals(formDTO.getType())) { |
|||
//当前用户如果不是组长,不允许提交
|
|||
if (!originalLeader.getCustomerUserId().equals(formDTO.getCurrentUserId())) { |
|||
//只有组长才可以操作
|
|||
throw new RenException(EpmetErrorCode.GROUP_LEADER_CAN_EDIT_GROUP_INFO.getCode(),EpmetErrorCode.GROUP_LEADER_CAN_EDIT_GROUP_INFO.getMsg()); |
|||
} |
|||
} |
|||
originalLeader.setGroupLeaderFlag(LeaderFlagConstant.GROUP_MEMBER); |
|||
resiGroupMemberService.update(originalLeader); |
|||
|
|||
//新组长赋值为组员
|
|||
ResiGroupMemberDTO newLeader=resiGroupMemberService.getResiGroupMember(formDTO.getGroupId(),formDTO.getNewLeaderUserId()); |
|||
newLeader.setGroupLeaderFlag(LeaderFlagConstant.GROUP_LEADER); |
|||
resiGroupMemberService.update(newLeader); |
|||
|
|||
//插入日志表
|
|||
GroupLeaderTransferRecordEntity entity = new GroupLeaderTransferRecordEntity(); |
|||
entity.setCustomerId(formDTO.getCustomerId()); |
|||
entity.setGroupId(formDTO.getGroupId()); |
|||
//原组长userId
|
|||
entity.setOriginalLeader(originalLeader.getCustomerUserId()); |
|||
entity.setNewLeader(formDTO.getNewLeaderUserId()); |
|||
entity.setType(formDTO.getType()); |
|||
insert(entity); |
|||
//发送站内信
|
|||
saveUserMessage(formDTO,originalLeader.getCustomerUserId()); |
|||
} |
|||
|
|||
private void saveUserMessage(ConfirmTransferFormDTO formDTO,String originalLeaderUserId) { |
|||
ResiGroupDTO resiGroupDTO=resiGroupService.get(formDTO.getGroupId()); |
|||
//组长自己操作:
|
|||
//组长将组转给组员后,成为组长的组员收到站内信“您有一条小组消息 您已成为【某某小组】的组长,请查看。
|
|||
//工作人员操作:
|
|||
//工作人员将组转给组员后,成为组长的组员收到站内信“您有一条小组消息 您已成为【某某小组】的组长,请查看。
|
|||
// 原组长收到站内信“您有一条小组消息 您已失去【某某小组】的组长身份,请查看。
|
|||
List<UserMessageFormDTO> msgList=new ArrayList<>(); |
|||
if(ModuleConstant.APP_GOV.equals(formDTO.getType())){ |
|||
//原组长
|
|||
UserMessageFormDTO originalLeader = new UserMessageFormDTO(); |
|||
originalLeader.setUserId(originalLeaderUserId); |
|||
originalLeader.setTitle(UserMessageConstant.GROUP_TITLE); |
|||
originalLeader.setReadFlag(ModuleConstant.UNREAD); |
|||
originalLeader.setApp(ModuleConstant.APP_RESI); |
|||
//小组所属的网格
|
|||
originalLeader.setGridId(resiGroupDTO.getGridId()); |
|||
originalLeader.setCustomerId(formDTO.getCustomerId()); |
|||
originalLeader.setMessageContent(String.format(UserMessageConstant.ORIGINAL_LEADER_DOWN,resiGroupDTO.getGroupName())); |
|||
|
|||
msgList.add(originalLeader); |
|||
} |
|||
//新组长
|
|||
UserMessageFormDTO newLeader = new UserMessageFormDTO(); |
|||
newLeader.setUserId(formDTO.getNewLeaderUserId()); |
|||
newLeader.setTitle(UserMessageConstant.GROUP_TITLE); |
|||
newLeader.setReadFlag(ModuleConstant.UNREAD); |
|||
newLeader.setApp(ModuleConstant.APP_RESI); |
|||
//小组所属的网格
|
|||
newLeader.setGridId(resiGroupDTO.getGridId()); |
|||
newLeader.setCustomerId(formDTO.getCustomerId()); |
|||
newLeader.setMessageContent(String.format(UserMessageConstant.NEW_LEADER_UP,resiGroupDTO.getGroupName())); |
|||
|
|||
msgList.add(newLeader); |
|||
if(!epmetMessageOpenFeignClient.saveUserMessageList(msgList).success()){ |
|||
log.warn("转让组发送站内信失败"); |
|||
} |
|||
} |
|||
|
|||
} |
@ -0,0 +1,15 @@ |
|||
DROP TABLE IF EXISTS `group_leader_transfer_record`; |
|||
CREATE TABLE `group_leader_transfer_record` ( |
|||
`ID` varchar(64) NOT NULL COMMENT '主键', |
|||
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户id', |
|||
`GROUP_ID` varchar(64) NOT NULL COMMENT '小组id', |
|||
`ORIGINAL_LEADER` varchar(64) NOT NULL COMMENT '原组长userId', |
|||
`NEW_LEADER` varchar(64) NOT NULL COMMENT '新组长userId', |
|||
`TYPE` varchar(32) NOT NULL COMMENT '组长自主转让resi,工作人员转让gov', |
|||
`DEL_FLAG` varchar(1) NOT NULL DEFAULT '0' COMMENT '删除标识', |
|||
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁', |
|||
`CREATED_BY` varchar(64) NOT NULL COMMENT '当前操作人id即组长id', |
|||
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间', |
|||
`UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人', |
|||
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间' |
|||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='组长身份转让记录表'; |
@ -0,0 +1,15 @@ |
|||
DROP TABLE IF EXISTS `exit_group_record`; |
|||
CREATE TABLE `exit_group_record` ( |
|||
`ID` varchar(64) NOT NULL COMMENT '主键', |
|||
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户id', |
|||
`GROUP_ID` varchar(64) NOT NULL COMMENT '小组id', |
|||
`MEMBER_USER_ID` varchar(64) NOT NULL COMMENT '组成员用户id', |
|||
`SHIELD_FLAG` varchar(3) NOT NULL COMMENT '屏蔽他的话题及评论 yes:屏蔽 no:不屏蔽', |
|||
`LEAVE_TYPE` varchar(2) NOT NULL COMMENT '0:组长移除;', |
|||
`DEL_FLAG` varchar(1) NOT NULL DEFAULT '0' COMMENT '删除标识', |
|||
`REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁', |
|||
`CREATED_BY` varchar(64) NOT NULL COMMENT '当前操作人id', |
|||
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间', |
|||
`UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人', |
|||
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间' |
|||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='退群记录表'; |
@ -0,0 +1,8 @@ |
|||
<?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="com.epmet.modules.member.dao.ExitGroupRecordDao"> |
|||
|
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,8 @@ |
|||
<?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="com.epmet.modules.member.dao.GroupLeaderTransferRecordDao"> |
|||
|
|||
|
|||
|
|||
</mapper> |
Loading…
Reference in new issue