101captain
2021-11-09 e7f03acfa5ee4ad4fd6d1ee9e9ae9a5655488f6d
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActDiscussService.java
@@ -1,31 +1,259 @@
package com.panzhihua.service_community.service;
import com.panzhihua.common.model.dtos.community.ComActDiscussDTO;
import com.panzhihua.common.model.dtos.community.*;
import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO;
import com.panzhihua.common.model.dtos.community.discuss.ComActDiscussDetailDTO;
import com.panzhihua.common.model.dtos.community.discuss.ComActDiscussPublishResultDTO;
import com.panzhihua.common.model.vos.R;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 一起议
 * @description: 议事投票
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2021-01-22 14:50
 **/
public interface ComActDiscussService {
    /**
     * 一起议-新增
     * @param comActDiscussDTO 新增参数
     * 议事投票-新增
     *
     * @param comActDiscussDTO
     *            新增参数
     * @return 新增结果
     */
    R addDiscuss(ComActDiscussDTO comActDiscussDTO);
    /**
     * 一起议-详情
     * @param id 主键
     * 议事投票-编辑
     * @param comActDiscussDTO  请求参数
     * @return  编辑结果
     */
    R editDiscuss(ComActDiscussDTO comActDiscussDTO);
    /**
     * 议事投票-详情
     *
     * @param discussDetailDTO
     *            请求参数
     * @return ComActDiscussVO
     */
    R detailDiscuss(Long id);
    R detailDiscuss(ComActDiscussDetailDTO discussDetailDTO);
    /**
     * 一起议-删除
     * @param id 主键
     * 议事投票-删除
     *
     * @param id
     *            主键
     * @return 删除结果
     */
    R deleteDiscuss(Long id);
    /**
     * 议事投票-回复
     *
     * @param comActDiscussCommentDTO
     *            评论内容
     * @return 回复结果
     */
    R addDiscussComment(ComActDiscussCommentDTO comActDiscussCommentDTO);
    /**
     * 议事投票-分页查询
     *
     * @param pageComActDiscussDTO
     *            查询参数
     * @return ComActDiscussVO
     */
    R pageDiscuss(PageComActDiscussDTO pageComActDiscussDTO);
    /**
     * 议事投票-后台分页查询
     * @param pageComActDiscussDTO  请求参数
     * @return  议事投票列表
     */
    R pageDiscussAdmin(PageComActDiscussDTO pageComActDiscussDTO);
    /**
     * 议事投票-评论-查看
     *
     * @param id
     *            主键
     * @return 详情
     */
    R detailDiscusscomment(Long id);
    /**
     * 议事投票评论详情
     * @param pageComActDiscussCommentDTO   请求参数
     * @return  议事投票详情
     */
    R detailDiscussCommentAdmin(PageComActDiscussCommentDTO pageComActDiscussCommentDTO);
    /**
     * 议事投票-评论-置顶
     *
     * @param id
     *            主键
     * @return 置顶结果
     */
    R putDiscussCommentTop(Long id);
    /**
     * 议事投票-评论-回复
     *
     * @param comActDiscussCommentDTO
     *            回复内容
     * @return 回复结果
     */
    R addDiscussCommentBack(ComActDiscussCommentDTO comActDiscussCommentDTO);
    /**
     * 议事投票-评论-分页查询
     *
     * @param pageComActDiscussCommentDTO
     *            分页查询参数
     * @return ComActDiscussCommentVO
     */
    R pageDiscussComment(PageComActDiscussCommentDTO pageComActDiscussCommentDTO);
    /**
     * 议事投票-评论-后台分页查询
     *
     * @param pageComActDiscussCommentDTO
     *            分页查询参数
     * @return ComActDiscussCommentVO
     */
    R pageDiscussCommentAdmin(PageComActDiscussCommentDTO pageComActDiscussCommentDTO);
    /**
     * 议事投票-分页查询 小程序
     *
     * @param pageComActDiscussDTO
     *            查询参数
     * @return ComActDiscussVO 分页
     */
    R pageDiscussApplets(PageComActDiscussDTO pageComActDiscussDTO);
    /**
     * 议事投票-点赞、取消点赞
     *
     * @param comActDiscussUserDTO
     *            操作类型
     * @return 操作结果
     */
    R putDiscussUser(ComActDiscussUserDTO comActDiscussUserDTO);
    /**
     * 议事投票-评论-分页查询 小程序
     *
     * @param pageComActDiscussCommentDTO
     *            分页参数
     * @return ComActDiscussCommentVO
     */
    R pageDiscussCommentApplets(PageComActDiscussCommentDTO pageComActDiscussCommentDTO);
    /**
     * 议事投票-详情 小程序
     *
     * @param id
     *            主键
     * @param userId
     *            用户主键
     * @return ComActDiscussVO
     */
    R detailDiscussApplets(Long id, Long userId);
    /**
     * 议事投票-投票
     *
     * @param comActDiscussOptionUserDTO
     *            投票信息
     * @return 投票结果
     */
    R addDiscussOptionUser(ComActDiscussOptionUserDTO comActDiscussOptionUserDTO);
    /**
     * 议事投票-评论-点赞、取消点赞
     *
     * @param comActDiscussUserDTO
     *            评论点赞
     * @return 点赞结果
     */
    R putDiscussCommentUser(ComActDiscussCommentUserDTO comActDiscussUserDTO);
    /**
     * 工作大屏-议事投票列表
     *
     * @param discussListDTO
     *            请求参数
     * @return 议事投票列表
     */
    R getScreenDiscussList(ScreenDiscussListDTO discussListDTO);
    /**
     * 议事投票后台公布结果
     * @param publishResultDTO  请求参数
     * @return  公布结果
     */
    R publishResultAdmin(ComActDiscussPublishResultDTO publishResultDTO);
    /**
     * 议事投票-评论/回复删除
     * @param id    评论/回复id
     * @return  删除结果
     */
    R deleteDiscussCommentAdmin(Long id);
    /**
     * 分页查询评论下回复列表
     * @param discussDetailDTO  请求参数
     * @return  回复列表
     */
    R discussCommentReplyAdmin(ComActDiscussDetailDTO discussDetailDTO);
    /**
     * 查询社区可发布议事投票权限配置
     * @param communityId   社区id
     * @return  社区可发布议事投票权限配置
     */
    R discussJurisdictionGet(Long communityId,Long userId);
    /**
     * 设置当前社区议事投票小程序身份验证参数(1.全部 2.党员 3.志愿者 4.社区工作人员)
     * @param communityId   社区id
     * @param value 需要设置的参数值
     * @return  设置结果
     */
    R discussJurisdictionSet(Long communityId,String value);
    /**
     * 议事投票检测状态定时任务
     * @return  执行结果
     */
    R timedTaskDiscussInspectStatus();
    /**
     * 一起议增加浏览量
     * @param discussId
     */
    void increaseViewNum(Long discussId);
    /**
     * 将redis中前一天浏览量写入表中
     * @return 执行结果
     */
    R writeDiscussViewNumToTable();
    /**
     * 公布/编辑一起议投票结果
     * @param comActDiscussDTO
     * @return
     */
    R editDiscussResult(ComActDiscussDTO comActDiscussDTO);
    /**
     * 一起议获取是否有发布权
     * @param comActDiscussDTO
     * @return
     */
    R getDiscussPermissions(ComActDiscussDTO comActDiscussDTO);
}