package com.panzhihua.sangeshenbian.service;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.model.vos.LoginUserInfoVO;
|
import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo;
|
import com.panzhihua.sangeshenbian.model.dto.ComplaintCompletionDTO;
|
import com.panzhihua.sangeshenbian.model.dto.ComplaintProcessDTO;
|
import com.panzhihua.sangeshenbian.model.dto.*;
|
import com.panzhihua.sangeshenbian.model.entity.Complaint;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.panzhihua.sangeshenbian.model.entity.ComplaintAuditRecord;
|
import com.panzhihua.sangeshenbian.model.entity.ComplaintProgress;
|
import com.panzhihua.sangeshenbian.model.query.AnalyticStatisticsQuery;
|
import com.panzhihua.sangeshenbian.model.query.AppStaticsQuery;
|
import com.panzhihua.sangeshenbian.model.query.BasePage;
|
import com.panzhihua.sangeshenbian.model.query.ComplaintQuery;
|
import com.panzhihua.sangeshenbian.model.vo.*;
|
import com.panzhihua.sangeshenbian.warpper.MgtComplaintQuery;
|
|
import javax.validation.Valid;
|
import java.io.IOException;
|
import java.text.SimpleDateFormat;
|
import java.util.List;
|
|
/**
|
* <p>
|
* 问题报告表 服务类
|
* </p>
|
*
|
* @author
|
* @since 2025-02-22
|
*/
|
public interface IComplaintService extends IService<Complaint> {
|
void saveComplaint(Complaint complaint,LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 诉求列表
|
*
|
* @param query
|
* @param loginUserInfoVO
|
* @return
|
*/
|
Page<ComplaintVO> complaintList(ComplaintQuery query, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 工单详情
|
* @param id
|
* @return
|
*/
|
ComplaintVO detail(Long id, LoginUserInfoVO loginUserInfoVO);
|
/**
|
* 保存办理进度
|
*
|
* @param dto
|
* @param loginUserInfoVO
|
*/
|
void saveProcess(ComplaintProcessDTO dto, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 办理结果录入
|
*
|
* @param dto
|
* @param loginUserInfoVO
|
*/
|
void saveResult(ComplaintCompletionDTO dto, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 办理进度列表
|
* @param complaintId
|
* @return
|
*/
|
List<ComplaintProgress> progress(Long complaintId);
|
|
void saveAndReport(ComplaintVO complaintVO, LoginUserInfoVO loginUserInfo);
|
|
/**
|
* 诉求上报
|
*/
|
void saveReport(ComplaintReportDTO dto, LoginUserInfoVO loginUserInfoVO);
|
|
void saveAndComplete(@Valid ComplaintSaveAndCompleteDTO complaintVO, LoginUserInfoVO loginUserInfo);
|
|
/**
|
* 诉求上报撤回
|
*/
|
void reportWithdraw(ComplaintReportWithdrawDTO dto, LoginUserInfoVO loginUserInfoVO);
|
|
|
|
/**
|
* 诉求下派
|
*/
|
void saveDispatch(ComplaintDispatch dto, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 上报审核
|
* @param complaintReporAuditDTO
|
* @param loginUserInfoVO
|
*/
|
void reportAudit(ComplaintReporAuditDTO complaintReporAuditDTO, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 延期申请
|
*/
|
void saveDelay(ComplaintDelayDTO dto, LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 延期审核
|
*/
|
void delayAudit(ComplaintDelayAuditDTO complaintDelayAuditDTO, LoginUserInfoVO loginUserInfoVO);
|
|
List<DispatchVO> getDispatchList(LoginUserInfoVO loginUserInfoVO);
|
|
/**
|
* 获取待办诉求
|
* @param page
|
* @param loginUserInfo
|
* @return
|
*/
|
Page<ComplaintTodoVO> getTodoList(BasePage page, LoginUserInfoVO loginUserInfo);
|
|
/**
|
* 延期情况说明
|
* @param complaintId
|
* @return
|
*/
|
ComplaintAuditRecord delayDetail(Long complaintId);
|
|
/**
|
* 管理后台-诉求列表
|
*
|
* @param query
|
* @param loginUserInfo
|
* @return
|
*/
|
Page<ComplaintVO> pageList(MgtComplaintQuery query, SystemUserVo loginUserInfo);
|
|
/**
|
* 管理后台-诉求详情
|
* @param id
|
* @return
|
*/
|
ComplaintVO getDetailMgt(Long id);
|
|
/**
|
* 诉求列表导出
|
* @param query
|
* @param loginUserInfo
|
*/
|
void export(MgtComplaintQuery query, SystemUserVo loginUserInfo) throws IOException;
|
|
/**
|
* 社区问题单、问题处理单、协调通知单 下载
|
*
|
* @param id
|
* @param loginUserInfo
|
*/
|
String downloadFile(Long id, Integer type, SystemUserVo loginUserInfo) throws IOException;
|
|
/**
|
* 获取超时未评价的数据
|
* @return
|
*/
|
List<Complaint> getTimeoutAndNotComment();
|
|
|
/**
|
* 修改办理进度
|
* @param dto
|
*/
|
void updateProgress(ComplaintProcessUpdateDto dto);
|
|
|
/**
|
* 删除办理进度
|
* @param id
|
*/
|
void delProgress(Long id);
|
|
/**
|
* 数据统计第一部分
|
* @param query
|
* @return
|
*/
|
AnalyticStatisticsOneVo analyticStatisticsOne(AnalyticStatisticsQuery query,List<Complaint> complaints, SimpleDateFormat simpleDateFormat);
|
|
|
/**
|
* 数据统计第二部分
|
* @param query
|
* @param complaints
|
* @param simpleDateFormat
|
* @return
|
*/
|
List<AnalyticStatisticsTwoVo> analyticStatisticsTwo(AnalyticStatisticsQuery query, List<Complaint> complaints, SimpleDateFormat simpleDateFormat);
|
|
|
/**+
|
* 数据统计第三部分
|
* @param query
|
* @param complaints
|
* @return
|
*/
|
List<AnalyticStatisticsThreeVo> analyticStatisticsThree(AnalyticStatisticsQuery query, List<Complaint> complaints);
|
|
/**
|
* 数据统计第四部分
|
* @param complaints
|
* @return
|
*/
|
AnalyticStatisticsFourVo analyticStatisticsFour(List<Complaint> complaints);
|
|
/**
|
* 查询党员或上级对应的诉求列表
|
* @param targetId
|
* @param accountLevel
|
* @param loginUserInfo
|
* @return
|
*/
|
List<Complaint> queryCompliantList(AppStaticsQuery query, LoginUserInfoVO loginUserInfo);
|
}
|