Project

General

Profile

PYC_HONOTES.txt

Luc Tran Van, 04/07/2023 11:16 AM

 
1
ALTER PROC dbo.rpt_PYC_CAPPHAT
2
@REQ_ID VARCHAR(15) = NULL
3

    
4
AS
5
BEGIN
6

    
7
 DECLARE 
8
@SHOW_TABLE_DVCM_KHAC VARCHAR(1) = NULL,@SHOW_TABLE_DVCM_IT VARCHAR(1) = NULL
9

    
10
--TABLE 0
11
SELECT DISTINCT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS STT, AG.GROUP_NAME AS GR_NAME, AG.GROUP_CODE AS GR_CODE, 
12
cd.DEP_NAME, ce.EMP_NAME, trsdd.QTY_ETM, trsdd.REASON, TU.TLFullName AS MAKER, TU2.TLFullName AS TDV
13
FROM TR_REQUEST_SHOP_DOC_DT trsdd
14
LEFT JOIN TR_REQUEST_SHOP_DOC trsd ON trsdd.REQ_DOC_ID = trsd.REQ_ID
15
LEFT JOIN CM_DEPARTMENT cd ON trsd.DEP_ID = cd.DEP_ID
16
LEFT JOIN CM_EMPLOYEE ce ON trsdd.EMP_ID = ce.EMP_ID
17
LEFT JOIN ASS_GROUP AG ON trsdd.ASS_GROUP_ID = AG.GROUP_ID
18
LEFT JOIN TL_USER TU ON TU.TLNANME = trsd.MAKER_ID
19
LEFT JOIN TL_USER TU2 ON TU2.TLNANME = trsd.CHECKER_ID
20
WHERE trsdd.REQ_DOC_ID = @REQ_ID AND REQ_DT_TYPE = 'ORGINAL'
21
--GROUP BY AG.GROUP_NAME, AG.GROUP_CODE, 
22
--cd.DEP_NAME, ce.EMP_NAME, trsdd.QTY_ETM, trsdd.REASON, TU.TLFullName, TU2.TLNANME
23
ORDER BY STT
24
  
25
--TABLE 1 DVCM KHOI CNTT
26
IF(EXISTS(SELECT 1 
27
          FROM TR_REQUEST_SHOP_COSTCENTER A
28
          LEFT JOIN CM_DEPARTMENT B ON A.COST_ID = B.DEP_ID
29
          WHERE A.REQ_ID = @REQ_ID AND B.DEP_CODE = '05J00'))
30
BEGIN
31
 SELECT TOP 1 A.ASS_STATUS, A.RE_CONTENT, A.NOTES, E.TLFullName AS SURVEY_STAFF, ISNULL(B.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(PP.APPROVE_DT, 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
32
    FROM TR_REQUEST_SHOP_COSTCENTER A
33
    LEFT JOIN CM_EMPLOYEE_LOG B ON A.MAKER_ID = B.USER_DOMAIN
34
    LEFT JOIN TL_USER E ON A.MAKER_ID = E.TLNANME
35
    LEFT JOIN CM_DEPARTMENT cd ON A.COST_ID = cd.DEP_ID
36
    LEFT JOIN PL_PROCESS PP ON A.REQ_ID = PP.REQ_ID AND A.MAKER_ID = PP.CHECKER_ID
37
    WHERE A.REQ_ID = @REQ_ID AND cd.DEP_CODE = '05J00'
38
ORDER BY PP.APPROVE_DT DESC
39

    
40
    SET @SHOW_TABLE_DVCM_IT = '1'
41
END
42
ELSE
43
BEGIN
44
    SELECT '' ASS_STATUS, '' RE_CONTENT,'' NOTES, ''SURVEY_STAFF, '' POS_NAME
45
END
46

    
47

    
48
--TABLE 2 DVCM KHAC
49
IF(EXISTS(SELECT 1 
50
          FROM TR_REQUEST_SHOP_COSTCENTER A
51
          LEFT JOIN CM_DEPARTMENT B ON A.COST_ID = B.DEP_ID
52
          WHERE A.REQ_ID = @REQ_ID AND B.DEP_CODE <> '05J00'))
53
BEGIN
54
    SELECT A.ASS_STATUS, A.RE_CONTENT, A.NOTES, E.TLFullName AS SURVEY_STAFF, ISNULL(B.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + 
55
    FORMAT(
56
    (SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = A.REQ_ID AND PP.CHECKER_ID = A.MAKER_ID ORDER BY PP.APPROVE_DT DESC)
57
    , 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
58
    FROM TR_REQUEST_SHOP_COSTCENTER A
59
    LEFT JOIN CM_EMPLOYEE_LOG B ON A.MAKER_ID = B.USER_DOMAIN
60
    LEFT JOIN TL_USER E ON A.MAKER_ID = E.TLNANME
61
    LEFT JOIN CM_DEPARTMENT cd ON A.COST_ID = cd.DEP_ID
62
    WHERE A.REQ_ID = @REQ_ID AND cd.DEP_CODE <> '05J00'
63
    ORDER BY A.COST_ID
64

    
65
    SET @SHOW_TABLE_DVCM_KHAC = '1'
66
END
67
ELSE
68
BEGIN
69
    SELECT '' ASS_STATUS, '' RE_CONTENT,'' NOTES, ''SURVEY_STAFF, '' POS_NAME
70
END
71

    
72
--TABLE 3 DANH GIA VA DE XUAT CUA P.QLTS 
73
IF(EXISTS(SELECT 1 FROM TR_REQUEST_SHOP_DOC trsd
74
LEFT JOIN CM_DEPARTMENT cd ON trsd.DEP_ID = cd.DEP_ID
75
LEFT JOIN PL_REQUEST_PROCESS PRP ON trsd.REQ_ID = PRP.REQ_ID AND PRP.PROCESS_ID = 'QLTS_NL'
76
LEFT JOIN TL_USER tu ON PRP.CHECKER_ID = tu.TLNANME
77
LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = PRP.CHECKER_ID
78
WHERE trsd.REQ_ID = @REQ_ID))
79
BEGIN
80
    SELECT DISTINCT trsd.HO_NOTES, tu.TLFullName, ISNULL(CE.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(
81
    (SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = trsd.REQ_ID AND PP.CHECKER_ID = PRP.CHECKER_ID ORDER BY PP.APPROVE_DT DESC)
82
    , 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
83
    FROM TR_REQUEST_SHOP_DOC trsd
84
    LEFT JOIN CM_DEPARTMENT cd ON trsd.DEP_ID = cd.DEP_ID
85
    LEFT JOIN PL_REQUEST_PROCESS PRP ON trsd.REQ_ID = PRP.REQ_ID AND PRP.PROCESS_ID = 'QLTS_NL'
86
    LEFT JOIN TL_USER tu ON PRP.CHECKER_ID = tu.TLNANME
87
    LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = PRP.CHECKER_ID
88
    WHERE trsd.REQ_ID = @REQ_ID
89
    END
90
ELSE BEGIN SELECT  N'' NOTES, N'' TLFullName, N'' POS_NAME END
91

    
92
--TABLE 4 PHE DUYET DVCM KHOI CNTT
93
IF(@SHOW_TABLE_DVCM_IT IS NOT NULL)
94
BEGIN
95
    IF (EXISTS(SELECT 1 FROM PL_REQUEST_PROCESS A
96
            LEFT JOIN CM_DEPARTMENT C ON A.DEP_ID = C.DEP_ID
97
            WHERE A.REQ_ID = @REQ_ID AND A.PROCESS_ID = 'DVCM_D' AND C.DEP_CODE = '05J00'))
98
    BEGIN  
99
    	    SELECT TOP 1 ISNULL(A.NOTES,'') AS NOTES, E.TLFullName, ISNULL(D.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(PP.APPROVE_DT, 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
100
          FROM PL_REQUEST_PROCESS A
101
          LEFT JOIN CM_DEPARTMENT C ON A.DEP_ID = C.DEP_ID
102
          LEFT JOIN CM_EMPLOYEE_LOG D ON A.CHECKER_ID = D.USER_DOMAIN
103
          LEFT JOIN TL_USER E ON D.USER_DOMAIN = E.TLNANME
104
          LEFT JOIN PL_PROCESS PP ON A.REQ_ID = PP.REQ_ID
105
          WHERE A.REQ_ID = @REQ_ID AND A.PROCESS_ID = 'DVCM_D' AND C.DEP_CODE = '05J00'
106
          ORDER BY PP.APPROVE_DT DESC
107
    END
108
    ELSE
109
    BEGIN
110
        SELECT '' AS NOTES        
111
    END
112
END
113
ELSE
114
BEGIN
115
SELECT N'' NOTES
116
END
117

    
118
--QTLS_D 5
119
IF(EXISTS(SELECT 1
120
    FROM PL_REQUEST_PROCESS PRP
121
    LEFT JOIN TL_USER tu ON PRP.CHECKER_ID = tu.TLNANME
122
    LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = PRP.CHECKER_ID
123
    WHERE PRP.REQ_ID = @REQ_ID AND PRP.PROCESS_ID = 'QLTS_D'))
124
    BEGIN
125
        SELECT DISTINCT PRP.NOTES AS HO_NOTES, tu.TLFullName, ISNULL(CE.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(
126
        (SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = PRP.REQ_ID AND PP.CHECKER_ID = PRP.CHECKER_ID ORDER BY PP.APPROVE_DT DESC)
127
        , 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
128
        FROM PL_REQUEST_PROCESS PRP
129
        LEFT JOIN TL_USER tu ON PRP.CHECKER_ID = tu.TLNANME
130
        LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = PRP.CHECKER_ID
131
        LEFT JOIN PL_PROCESS PP ON PRP.REQ_ID = PP.REQ_ID AND PRP.CHECKER_ID = PP.CHECKER_ID
132
        WHERE PRP.REQ_ID = @REQ_ID AND PRP.PROCESS_ID = 'QLTS_D'
133
    END
134
ELSE BEGIN SELECT  N'' HO_NOTES, N'' TLFullName, N'' POS_NAME END
135

    
136
--TTQTLS_D 6
137
SELECT DISTINCT ISNULL(PRP.NOTES, '') AS HO_NOTES, ISNULL(tu.TLFullName, '') AS TLFullName , ISNULL(CE.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(
138
(SELECT TOP 1 PP.APPROVE_DT FROM PL_PROCESS PP WHERE PP.REQ_ID = PRP.REQ_ID AND PP.CHECKER_ID = PRP.CHECKER_ID ORDER BY PP.APPROVE_DT DESC)
139
, 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
140
FROM PL_REQUEST_PROCESS PRP
141
LEFT JOIN TL_USER tu ON PRP.CHECKER_ID = tu.TLNANME
142
LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = PRP.CHECKER_ID
143
--LEFT JOIN PL_PROCESS PP ON PRP.REQ_ID = PP.REQ_ID AND PRP.CHECKER_ID = PP.CHECKER_ID
144
WHERE PRP.REQ_ID = @REQ_ID AND PRP.PROCESS_ID = 'TTQLTS_D'
145

    
146
--TABLE 7
147
SELECT TU.TLFullName AS MAKER, TU2.TLFullName AS TDV, ISNULL(CE.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(
148
A.CREATE_DT
149
, 'dd/MM/yyyy HH:mm:ss') AS POS_MAKER, 
150
ISNULL(CE2.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(
151
A.APPROVE_DT
152
, 'dd/MM/yyyy HH:mm:ss') AS POS_TDV
153
FROM TR_REQUEST_SHOP_DOC A
154
LEFT JOIN TL_USER TU ON TU.TLNANME = A.MAKER_ID
155
LEFT JOIN CM_EMPLOYEE_LOG CE ON CE.USER_DOMAIN = A.MAKER_ID
156
LEFT JOIN TL_USER TU2 ON TU2.TLNANME = A.CHECKER_ID
157
LEFT JOIN CM_EMPLOYEE_LOG CE2 ON CE2.USER_DOMAIN = A.CHECKER_ID
158
WHERE A.REQ_ID = @REQ_ID
159

    
160
--TABLE 8 SỐ PYC
161
SELECT trsd.REQ_CODE FROM TR_REQUEST_SHOP_DOC trsd WHERE trsd.REQ_ID = @REQ_ID
162

    
163
--PHUCVH TABLE 9 NGÀY TDV DUYỆT
164
SELECT TOP 1 N'Ngày ' +  CONVERT(VARCHAR(5),DAY(pp.APPROVE_DT)) + 
165
            N' tháng ' + CONVERT(VARCHAR(5),MONTH(pp.APPROVE_DT)) + 
166
            N' năm ' + CONVERT(VARCHAR(10),YEAR(pp.APPROVE_DT)) AS APPROVE_DT
167
FROM PL_PROCESS pp WHERE pp.REQ_ID = @REQ_ID AND pp.PROCESS_ID = 'APPNEW' ORDER BY pp.ID DESC
168

    
169
--TABLE 10 PHÊ DUYỆT DVCM KHÁC
170
IF(@SHOW_TABLE_DVCM_KHAC IS NOT NULL)
171
BEGIN  
172
    IF (EXISTS(SELECT 1 FROM PL_REQUEST_PROCESS A
173
            LEFT JOIN CM_DEPARTMENT C ON A.DEP_ID = C.DEP_ID
174
            WHERE A.REQ_ID = @REQ_ID AND A.PROCESS_ID = 'DVCM_D' AND C.DEP_CODE <> '05J00'))
175
    BEGIN  
176
    	    SELECT ISNULL(A.NOTES,'') AS NOTES, E.TLFullName, ISNULL(D.POS_NAME, '') + CHAR(13) + N'Đã ký ngày ' + FORMAT(A.APPROVE_DT, 'dd/MM/yyyy HH:mm:ss') AS POS_NAME
177
          FROM PL_REQUEST_PROCESS A
178
          LEFT JOIN CM_DEPARTMENT C ON A.DEP_ID = C.DEP_ID
179
          LEFT JOIN CM_EMPLOYEE_LOG D ON A.CHECKER_ID = D.USER_DOMAIN
180
          LEFT JOIN TL_USER E ON D.USER_DOMAIN = E.TLNANME
181
          WHERE A.REQ_ID = @REQ_ID AND A.PROCESS_ID = 'DVCM_D' AND C.DEP_CODE <> '05J00'
182
          ORDER BY C.DEP_ID
183
    END
184
    ELSE
185
    BEGIN
186
        SELECT '' AS NOTES
187
        FROM TR_REQUEST_SHOP_COSTCENTER A
188
        LEFT JOIN CM_DEPARTMENT C ON A.COST_ID = C.DEP_ID
189
        WHERE A.REQ_ID = @REQ_ID AND C.DEP_CODE <> '05J00'
190
    END   
191
END
192
ELSE
193
BEGIN
194
    SELECT N'' NOTES
195
END
196

    
197

    
198
--SHOW TABLE DVCM IT
199
IF(@SHOW_TABLE_DVCM_IT IS NOT NULL)
200
BEGIN
201
    SELECT N'DVCMIT' AS MERGE_REGION
202
END
203

    
204
--SHOW TABLE DVCM KHÁC
205
IF(@SHOW_TABLE_DVCM_KHAC IS NOT NULL)
206
BEGIN
207
    SELECT N'DVCMKHAC' AS MERGE_REGION
208
END
209

    
210
--SHOW TITLE ĐÁNH GIÁ CỦA ĐƠN VỊ CHUYÊN MÔN
211
IF(@SHOW_TABLE_DVCM_IT IS NOT NULL OR @SHOW_TABLE_DVCM_KHAC IS NOT NULL)
212
BEGIN
213
    SELECT N'TITLEDVCM' AS MERGE_REGION
214
END
215

    
216

    
217
END