16 changed files with 432 additions and 2 deletions
@ -0,0 +1,36 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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 @@
@@ -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