郑永安
2023-06-19 7a6abd05683528032687c75e80e0bd2030a3e46c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package com.gkhy.safePlatform.specialWork.service;
 
import com.gkhy.safePlatform.commons.co.ContextCacheUser;
import com.gkhy.safePlatform.commons.query.PageQuery;
import com.gkhy.safePlatform.commons.vo.ResultVO;
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
import com.gkhy.safePlatform.specialWork.model.dto.req.ApprovalItemAbordDataReqDTO;
import com.gkhy.safePlatform.specialWork.model.dto.req.ApprovalItemDataReqDTO;
import com.gkhy.safePlatform.specialWork.model.dto.req.WorkApplyEight;
import com.gkhy.safePlatform.specialWork.model.dto.req.WorkApplyReqDTO;
import com.gkhy.safePlatform.specialWork.model.dto.resp.*;
import com.gkhy.safePlatform.specialWork.model.dto.resp.applicant.ApplicantWorkApprovedApplyDetailRespDTO;
import com.gkhy.safePlatform.specialWork.model.dto.resp.approver.ApproverWorkApprovedApplyDetailRespDTO;
import com.gkhy.safePlatform.specialWork.model.dto.resp.approver.ApproverWorkPendingApprovalDataRespDTO;
import com.gkhy.safePlatform.specialWork.model.dto.resp.others.OthersWorkApprovedApplyDetailRespDTO;
import com.gkhy.safePlatform.specialWork.model.query.AllWorkApplyPageQuery;
import com.gkhy.safePlatform.specialWork.model.query.WorkApplyApplyingPageQuery;
import com.gkhy.safePlatform.specialWork.model.query.WorkApplyPendingPageQuery;
 
import javax.servlet.http.HttpServletResponse;
import java.util.List;
 
public interface WorkApplyService {
 
    /**
    * @Description: 作业申请
    */
 
    void workApply(ContextCacheUser currentUser, WorkApplyReqDTO<? extends WorkApplyEight> applyReqDTO);
 
    /**
    * @Description: 取消申请
    */
    void cancelWorkApply(ContextCacheUser currentUser, Long workApplyId);
 
    /**
    * @Description: 申请中作业分页
    */
    ResultVO<List<WorkApplyPageRespDTO>> listApplyingWorkApplyByPage(ContextCacheUser currentUser, PageQuery<WorkApplyApplyingPageQuery> pageQuery);
 
    /**
    * @Description: 待审批的作业分页
    */
    ResultVO<List<WorkApplyPendingPageRespDTO>> listPendingWorkApplyByPage(ContextCacheUser currentUser, PageQuery<WorkApplyPendingPageQuery> pageQuery);
 
    /**
    * @Description: 获取已经审批的进度(申请人)
    */
    ApplicantWorkApprovedApplyDetailRespDTO getApprovedApplyDetailForApplicant(ContextCacheUser currentUser, Long workApplyId);
 
    /**
    * @Description: 获取已经审批的进度(审批人)
    */
    ApproverWorkApprovedApplyDetailRespDTO getApprovedApplyDetailForApprover(ContextCacheUser currentUser, Long workApplyId);
 
    /**
    * @Description: 获取作业当前待审批的内容(审批人)
    */
    ApproverWorkPendingApprovalDataRespDTO getPendingApprovalData(ContextCacheUser currentUser, Long workApplyId);
 
    /**
    * @Description: 审批接口
    */
    void approveItem(ContextCacheUser currentUser, ApprovalItemDataReqDTO approvalItemData);
 
    /**
    * @Description: 终止
    */
    void abordItem(ContextCacheUser currentUser, ApprovalItemAbordDataReqDTO abordDataReqDTO);
 
    /**
     * 打印
     * @param currentUser
     */
    void printing(ContextCacheUser currentUser, Long applyWorkId, HttpServletResponse response);
 
    /**
    * @Description: 所有作业申请查询
    */
    SearchResultVO<List<AllWorkApplyPageRespDTO>> listAllWorkApply(ContextCacheUser currentUser, PageQuery<AllWorkApplyPageQuery> pageQuery);
 
 
    /**
     * @Description: 给其他人查看的作业情况
     */
    OthersWorkApprovedApplyDetailRespDTO getWorkApplyDetailForOthers(ContextCacheUser currentUser, Long workApplyId);
 
    void printingPdf(ContextCacheUser currentUser, Long applyWorkId, HttpServletResponse response);
}