package com.panzhihua.sangeshenbian.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.sangeshenbian.model.dto.ComplaintCompletionDTO; import com.panzhihua.sangeshenbian.model.dto.ComplaintProcessDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; 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.query.BasePage; import com.panzhihua.sangeshenbian.model.query.ComplaintQuery; import com.panzhihua.sangeshenbian.model.vo.ComplaintTodoVO; import com.panzhihua.sangeshenbian.model.vo.ComplaintVO; import com.panzhihua.sangeshenbian.model.vo.DispatchVO; import java.util.List; /** *

* 问题报告表 服务类 *

* * @author * @since 2025-02-22 */ public interface IComplaintService extends IService { void saveComplaint(Complaint complaint,Long userId); /** * 诉求列表 * * @param query * @param loginUserInfoVO * @return */ Page complaintList(ComplaintQuery query, LoginUserInfoVO loginUserInfoVO); /** * 工单详情 * @param id * @return */ ComplaintVO detail(Long id); /** * 保存办理进度 * @param dto * @param userId */ void saveProcess(ComplaintProcessDTO dto, Long userId); /** * 办理结果录入 * * @param dto * @param loginUserInfoVO */ void saveResult(ComplaintCompletionDTO dto); /** * 诉求上报 */ void saveReport(ComplaintReportDTO 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 getDispatchList(LoginUserInfoVO loginUserInfoVO); void saveResult(ComplaintCompletionDTO dto, LoginUserInfoVO loginUserInfoVO); /** * 获取待办诉求 * @param page * @param loginUserInfo * @return */ Page getTodoList(BasePage page, LoginUserInfoVO loginUserInfo); }