16 changed files with 432 additions and 2 deletions
@ -0,0 +1,36 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.entity; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||||
|
import com.cloud.kicc.common.data.entity.CommonEntity; |
||||||
|
import java.io.Serializable; |
||||||
|
|
||||||
|
import com.cloud.kicc.common.data.entity.TreeEntity; |
||||||
|
import com.cloud.kicc.system.api.entity.Menu; |
||||||
|
import io.swagger.annotations.ApiModel; |
||||||
|
import io.swagger.annotations.ApiModelProperty; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
import lombok.experimental.Accessors; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 聊天室 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Accessors(chain = true) |
||||||
|
@TableName("common_push_chat_group") |
||||||
|
@ApiModel(value = "PushChatGroup对象", description = "聊天室") |
||||||
|
public class PushChatGroup extends TreeEntity<PushChatGroup> { |
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L; |
||||||
|
|
||||||
|
private Integer status; |
||||||
|
|
||||||
|
private String typeId; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,35 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.entity; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||||
|
import com.cloud.kicc.common.data.entity.CommonEntity; |
||||||
|
import java.io.Serializable; |
||||||
|
import io.swagger.annotations.ApiModel; |
||||||
|
import io.swagger.annotations.ApiModelProperty; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
import lombok.experimental.Accessors; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 聊天室类型 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Accessors(chain = true) |
||||||
|
@TableName("common_push_chat_group_type") |
||||||
|
@ApiModel(value = "PushChatGroupType对象", description = "聊天室类型") |
||||||
|
public class PushChatGroupType extends CommonEntity { |
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L; |
||||||
|
|
||||||
|
private String id; |
||||||
|
|
||||||
|
private String name; |
||||||
|
|
||||||
|
private String isReviewed; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,39 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.api.entity; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||||
|
import com.cloud.kicc.common.data.entity.CommonEntity; |
||||||
|
import java.io.Serializable; |
||||||
|
import io.swagger.annotations.ApiModel; |
||||||
|
import io.swagger.annotations.ApiModelProperty; |
||||||
|
import lombok.Getter; |
||||||
|
import lombok.Setter; |
||||||
|
import lombok.experimental.Accessors; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Getter |
||||||
|
@Setter |
||||||
|
@Accessors(chain = true) |
||||||
|
@TableName("common_push_chat_group_user") |
||||||
|
@ApiModel(value = "PushChatGroupUser对象", description = "推送类型") |
||||||
|
public class PushChatGroupUser extends CommonEntity { |
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L; |
||||||
|
|
||||||
|
private String id; |
||||||
|
|
||||||
|
private String userId; |
||||||
|
|
||||||
|
private String chatGroupId; |
||||||
|
|
||||||
|
private Integer status; |
||||||
|
|
||||||
|
private String adminStatus; |
||||||
|
|
||||||
|
} |
@ -0,0 +1,107 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.controller; |
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.util.BooleanUtil; |
||||||
|
import cn.hutool.core.util.ObjectUtil; |
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||||
|
import com.cloud.kicc.common.core.api.R; |
||||||
|
import com.cloud.kicc.common.core.constant.AppConstants; |
||||||
|
import com.cloud.kicc.common.security.util.SecurityUtils; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.*; |
||||||
|
import com.cloud.kicc.commonbiz.api.enums.PushAuditStatusEnum; |
||||||
|
import com.cloud.kicc.commonbiz.service.IPushChatGroupService; |
||||||
|
import com.cloud.kicc.commonbiz.service.IPushChatGroupTypeService; |
||||||
|
import io.swagger.annotations.Api; |
||||||
|
import io.swagger.annotations.ApiOperation; |
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import org.springframework.web.bind.annotation.*; |
||||||
|
|
||||||
|
import javax.validation.Valid; |
||||||
|
import java.util.Arrays; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 前端控制器 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@RestController |
||||||
|
@RequestMapping(AppConstants.APP_COMMON + "/pushChatGroup") |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Api(tags = "聊天室") |
||||||
|
public class PushChatGroupController { |
||||||
|
|
||||||
|
private final IPushChatGroupService iPushChatGroupService; |
||||||
|
|
||||||
|
private final IPushChatGroupTypeService iPushChatGroupTypeService; |
||||||
|
|
||||||
|
private LambdaQueryWrapper<PushChatGroup> getQueryWrapper(PushChatGroup pushChatGroup) { |
||||||
|
return new LambdaQueryWrapper<PushChatGroup>() |
||||||
|
.eq(StrUtil.isNotBlank(pushChatGroup.getTypeId()), PushChatGroup::getTypeId, pushChatGroup.getTypeId()) |
||||||
|
.eq(StrUtil.isNotBlank(pushChatGroup.getName()), PushChatGroup::getName, pushChatGroup.getName()) |
||||||
|
.eq(ObjectUtil.isNotEmpty(pushChatGroup.getStatus()), PushChatGroup::getStatus, pushChatGroup.getStatus()) |
||||||
|
.orderByAsc(PushChatGroup::getCreateTime); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("查询列表") |
||||||
|
@GetMapping("/list") |
||||||
|
public R list(PushChatGroup pushChatGroup) { |
||||||
|
List<PushChatGroup> list = iPushChatGroupService.list(getQueryWrapper(pushChatGroup)); |
||||||
|
return R.ok(list, list.size()); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("根据ID查询") |
||||||
|
@GetMapping("/{id:\\w+}") |
||||||
|
public R getById(@PathVariable("id") String id) { |
||||||
|
return R.ok(iPushChatGroupService.getById(id)); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("保存") |
||||||
|
@PostMapping("/save") |
||||||
|
public R save(@Valid @RequestBody PushChatGroup pushChatGroup) { |
||||||
|
PushChatGroupType pushChatGroupType = iPushChatGroupTypeService.getById(pushChatGroup.getTypeId()); |
||||||
|
if (ObjectUtil.isNotEmpty(pushChatGroupType) && BooleanUtil.toBoolean(pushChatGroupType.getIsReviewed())) { |
||||||
|
pushChatGroup.setStatus(PushAuditStatusEnum.UNDER_REVIEW.getValue()); |
||||||
|
} else pushChatGroup.setStatus(PushAuditStatusEnum.APPROVED.getValue()); |
||||||
|
iPushChatGroupService.save(pushChatGroup); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("修改") |
||||||
|
@PutMapping("/update") |
||||||
|
public R update(@Valid @RequestBody PushChatGroup pushChatGroup) { |
||||||
|
iPushChatGroupService.updateById(pushChatGroup); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("删除") |
||||||
|
@DeleteMapping("/remove/{ids:[\\w,]+}") |
||||||
|
public R<Boolean> removeById(@PathVariable String[] ids) { |
||||||
|
iPushChatGroupService.removeByIds(Arrays.asList(ids)); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
@PostMapping("/groupSend") |
||||||
|
@ApiOperation("聊天室推送消息") |
||||||
|
public R enterpriseMessageSend(@Valid @RequestBody PushChatMessage pushChatMessage) { |
||||||
|
// todo: 待实现
|
||||||
|
return R.ok(true); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("驳回聊天室审核") |
||||||
|
@PutMapping("/rejectAuth/{ids:[\\w,]+}") |
||||||
|
public R<Boolean> rejectAuth(@PathVariable String[] ids) { |
||||||
|
iPushChatGroupService.update(Wrappers.<PushChatGroup>lambdaUpdate() |
||||||
|
.set(PushChatGroup::getStatus, PushAuditStatusEnum.REJECTED.getValue()) |
||||||
|
.in(PushChatGroup::getId, ids)); |
||||||
|
return R.ok(true); |
||||||
|
} |
||||||
|
} |
||||||
|
|
@ -0,0 +1,77 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.controller; |
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil; |
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||||
|
import com.cloud.kicc.common.core.api.R; |
||||||
|
import com.cloud.kicc.common.core.constant.AppConstants; |
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroupType; |
||||||
|
import com.cloud.kicc.commonbiz.service.IPushChatGroupTypeService; |
||||||
|
import io.swagger.annotations.Api; |
||||||
|
import io.swagger.annotations.ApiOperation; |
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import org.springframework.web.bind.annotation.*; |
||||||
|
|
||||||
|
import javax.validation.Valid; |
||||||
|
import java.util.Arrays; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 前端控制器 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@RestController |
||||||
|
@RequestMapping(AppConstants.APP_COMMON + "/pushChatGroupType") |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Api(tags = "聊天室类型") |
||||||
|
public class PushChatGroupTypeController { |
||||||
|
|
||||||
|
private final IPushChatGroupTypeService iPushChatGroupTypeService; |
||||||
|
|
||||||
|
private LambdaQueryWrapper<PushChatGroupType> getQueryWrapper(PushChatGroupType pushChatGroupType) { |
||||||
|
return new LambdaQueryWrapper<PushChatGroupType>() |
||||||
|
.eq(StrUtil.isNotBlank(pushChatGroupType.getName()), PushChatGroupType::getName, pushChatGroupType.getName()) |
||||||
|
.orderByAsc(PushChatGroupType::getCreateTime); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("分页查询") |
||||||
|
@GetMapping("/list") |
||||||
|
public R list(Page page, PushChatGroupType pushChatGroupType) { |
||||||
|
IPage<PushChatGroupType> list = iPushChatGroupTypeService.page(page, getQueryWrapper(pushChatGroupType)); |
||||||
|
return R.ok(list.getRecords(), list.getTotal()); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("根据ID查询") |
||||||
|
@GetMapping("/{id:\\w+}") |
||||||
|
public R getById(@PathVariable("id") String id) { |
||||||
|
return R.ok(iPushChatGroupTypeService.getById(id)); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("保存") |
||||||
|
@PostMapping("/save") |
||||||
|
public R save(@Valid @RequestBody PushChatGroupType pushChatGroupType) { |
||||||
|
iPushChatGroupTypeService.save(pushChatGroupType); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("修改") |
||||||
|
@PutMapping("/update") |
||||||
|
public R update(@Valid @RequestBody PushChatGroupType pushChatGroupType) { |
||||||
|
iPushChatGroupTypeService.updateById(pushChatGroupType); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
@ApiOperation("删除") |
||||||
|
@DeleteMapping("/remove/{ids:[\\w,]+}") |
||||||
|
public R<Boolean> removeById(@PathVariable String[] ids) { |
||||||
|
iPushChatGroupTypeService.removeByIds(Arrays.asList(ids)); |
||||||
|
return R.ok(); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
@ -0,0 +1,21 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.controller; |
||||||
|
|
||||||
|
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||||
|
|
||||||
|
import org.springframework.stereotype.Controller; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 前端控制器 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Controller |
||||||
|
@RequestMapping("/pushChatGroupUser") |
||||||
|
public class PushChatGroupUserController { |
||||||
|
|
||||||
|
} |
||||||
|
|
@ -0,0 +1,16 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.mapper; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroup; |
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 Mapper 接口 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
public interface PushChatGroupMapper extends BaseMapper<PushChatGroup> { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.mapper; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroupType; |
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 Mapper 接口 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
public interface PushChatGroupTypeMapper extends BaseMapper<PushChatGroupType> { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroup; |
||||||
|
import com.baomidou.mybatisplus.extension.service.IService; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 服务类 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
public interface IPushChatGroupService extends IService<PushChatGroup> { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroupType; |
||||||
|
import com.baomidou.mybatisplus.extension.service.IService; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 服务类 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
public interface IPushChatGroupTypeService extends IService<PushChatGroupType> { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,20 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroup; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.PushChatGroupMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.IPushChatGroupService; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 服务实现类 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
public class PushChatGroupServiceImpl extends ServiceImpl<PushChatGroupMapper, PushChatGroup> implements IPushChatGroupService { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,20 @@ |
|||||||
|
package com.cloud.kicc.commonbiz.service.impl; |
||||||
|
|
||||||
|
import com.cloud.kicc.commonbiz.api.entity.PushChatGroupType; |
||||||
|
import com.cloud.kicc.commonbiz.mapper.PushChatGroupTypeMapper; |
||||||
|
import com.cloud.kicc.commonbiz.service.IPushChatGroupTypeService; |
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
/** |
||||||
|
* <p> |
||||||
|
* 推送类型 服务实现类 |
||||||
|
* </p> |
||||||
|
* |
||||||
|
* @author wangxiang4 |
||||||
|
* @since 2023-05-06 |
||||||
|
*/ |
||||||
|
@Service |
||||||
|
public class PushChatGroupTypeServiceImpl extends ServiceImpl<PushChatGroupTypeMapper, PushChatGroupType> implements IPushChatGroupTypeService { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,5 @@ |
|||||||
|
<?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.cloud.kicc.commonbiz.mapper.PushChatGroupMapper"> |
||||||
|
|
||||||
|
</mapper> |
@ -0,0 +1,5 @@ |
|||||||
|
<?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.cloud.kicc.commonbiz.mapper.PushChatGroupTypeMapper"> |
||||||
|
|
||||||
|
</mapper> |
Loading…
Reference in new issue