1
|
|
2
|
ALTER PROCEDURE dbo.ASS_COLLECT_CONFIRM_MASTER_Search
|
3
|
@p_COL_MULTI_MASTER_ID varchar(15) = NULL,
|
4
|
@p_BRANCH_ID varchar(15) = NULL,
|
5
|
@p_COLLECT_DT VARCHAR(20) = NULL,
|
6
|
@p_USER_COLLECT nvarchar(200) = NULL,
|
7
|
@p_USER_COLLECT_NAME nvarchar(200)=NULL,
|
8
|
@p_NOTES nvarchar(1000) = NULL,
|
9
|
@p_RECORD_STATUS varchar(1) = NULL,
|
10
|
@p_AUTH_STATUS varchar(1) = NULL,
|
11
|
@p_MAKER_ID varchar(15) = NULL,
|
12
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
13
|
@p_CHECKER_ID varchar(15) = NULL,
|
14
|
@p_APPROVE_DT VARCHAR(20) = NULL,
|
15
|
@p_AUTH_STATUS_KT varchar(15) = NULL,
|
16
|
@p_CREATE_DT_KT VARCHAR(20) = NULL,
|
17
|
@p_APPROVE_DT_KT VARCHAR(20) = NULL,
|
18
|
@p_MAKER_ID_KT varchar(50) = NULL,
|
19
|
@p_CHECKER_ID_KT varchar(50) = NULL,
|
20
|
@p_REPORT_STATUS varchar(15) = NULL,
|
21
|
@p_LEVEL VARCHAR(50) = 'UNIT',
|
22
|
@p_TOP INT = NULL,
|
23
|
@p_FROMDATE VARCHAR(20) = NULL,
|
24
|
@p_TODATE VARCHAR(20) = NULL,
|
25
|
@p_IS_UPDATE VARCHAR(1) = NULL,
|
26
|
@p_USER_LOGIN VARCHAR(15),
|
27
|
@p_TYPE_SEARCH VARCHAR(10)= NULL
|
28
|
AS
|
29
|
BEGIN -- PAGING
|
30
|
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
|
31
|
|
32
|
----
|
33
|
set @p_RECORD_STATUS = '1'
|
34
|
----
|
35
|
DECLARE @ASSIGN_ROLES TABLE (BRANCH_ID VARCHAR(20), DEPT_ID VARCHAR(15), ROLE_ID VARCHAR(20))
|
36
|
INSERT INTO @ASSIGN_ROLES SELECT * FROM [dbo].[TL_USER_GET_ASSIGNED_BRANCH](@p_USER_LOGIN)
|
37
|
|
38
|
-- GiaNT
|
39
|
DECLARE @BRANCH_LOGIN VARCHAR(15), @DEP_LOGIN VARCHAR(15)
|
40
|
SET @BRANCH_LOGIN = (SELECT TOP 1 TLSUBBRID FROM TL_USER WHERE TLNANME = @p_USER_LOGIN)
|
41
|
|
42
|
SET @DEP_LOGIN = (SELECT TOP 1 DEP_ID FROM TL_USER WHERE TLNANME = @p_USER_LOGIN)
|
43
|
|
44
|
-- GIANT 11/10/2021
|
45
|
DECLARE @BRANCH_TYPE VARCHAR(5)
|
46
|
SET @BRANCH_TYPE = (SELECT BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @BRANCH_LOGIN)
|
47
|
|
48
|
IF(@p_TOP IS NULL OR @P_TOP = '' OR @P_TOP = 0)
|
49
|
begin
|
50
|
-- PAGING BEGIN
|
51
|
SELECT A.*,C.BRANCH_CODE, C.BRANCH_NAME, F.AUTH_STATUS_NAME, T1.TLFullName AS MAKER_NAME,T2.TLFullName AS MAKER_NAME_KT,T3.TLFullName APPROVE_NAME, T4.TLFullName APPROVE_NAME_KT,
|
52
|
ATKT.AUTH_STATUS_NAME AS AUTH_STATUS_NAME_KT, C.BRANCH_CODE +' - '+ C.BRANCH_NAME AS FULL_BRANCH_NAME,
|
53
|
@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
|
54
|
CASE WHEN EXISTS (SELECT * FROM ASS_COLLECT_CONFIRM_MASTER M WHERE M.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID)
|
55
|
THEN 'Y'
|
56
|
ELSE 'N' END AS CONFIRM_STATUS
|
57
|
-- SELECT END
|
58
|
FROM ASS_COLLECT_MULTI_MASTER A
|
59
|
LEFT JOIN CM_BRANCH C ON A.BRANCH_ID = C.BRANCH_ID
|
60
|
LEFT JOIN CM_AUTH_STATUS F ON A.AUTH_STATUS = F.AUTH_STATUS
|
61
|
LEFT JOIN CM_AUTH_STATUS ATKT ON ATKT.AUTH_STATUS = A.AUTH_STATUS_KT
|
62
|
LEFT JOIN TL_USER T1 ON A.MAKER_ID = T1.TLNANME
|
63
|
LEFT JOIN TL_USER T2 ON A.MAKER_ID_KT = T2.TLNANME
|
64
|
LEFT JOIN TL_USER T3 ON A.CHECKER_ID = T3.TLNANME
|
65
|
LEFT JOIN TL_USER T4 ON A.CHECKER_ID_KT = T4.TLNANME
|
66
|
--INNER JOIN (SELECT BRANCH_ID,COL_MULTI_MASTER_ID,COUNT(*) AS SL FROM ASS_COLLECT_MULTI_DT WHERE DEPT_ID_USE = @BRANCH_LOGIN GROUP BY BRANCH_ID,COL_MULTI_MASTER_ID) DTT ON DTT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID
|
67
|
|
68
|
WHERE 1 = 1
|
69
|
AND (A.COL_MULTI_MASTER_ID LIKE '%' + @p_COL_MULTI_MASTER_ID + '%' OR @p_COL_MULTI_MASTER_ID IS NULL OR @p_COL_MULTI_MASTER_ID = '')
|
70
|
AND (CONVERT(DATE,ISNULL(A.CREATE_DT_KT, A.COLLECT_DT),103) >= CONVERT(DATE,@p_FROMDATE, 103) OR @p_FROMDATE IS NULL OR @p_FROMDATE ='')
|
71
|
AND (CONVERT(DATE,ISNULL(A.CREATE_DT_KT, A.COLLECT_DT),103) <= CONVERT(DATE,@p_TODATE, 103) OR @p_TODATE IS NULL OR @p_TODATE ='')
|
72
|
AND (A.USER_COLLECT LIKE '%' + @p_USER_COLLECT + '%' OR @p_USER_COLLECT IS NULL OR @p_USER_COLLECT = '')
|
73
|
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
|
74
|
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
|
75
|
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
|
76
|
AND (A.CREATE_DT =CONVERT(DATETIME, @p_CREATE_DT, 103) OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')
|
77
|
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')
|
78
|
AND (A.APPROVE_DT =CONVERT(DATETIME, @p_APPROVE_DT, 103) OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
|
79
|
AND (A.AUTH_STATUS_KT LIKE '%' + @p_AUTH_STATUS_KT + '%' OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')
|
80
|
AND (A.CREATE_DT_KT =CONVERT(DATETIME, @p_CREATE_DT_KT, 103) OR @p_CREATE_DT_KT IS NULL OR @p_CREATE_DT_KT = '')
|
81
|
AND (A.APPROVE_DT_KT =CONVERT(DATETIME, @p_APPROVE_DT_KT, 103) OR @p_APPROVE_DT_KT IS NULL OR @p_APPROVE_DT_KT = '')
|
82
|
AND (A.MAKER_ID_KT LIKE '%' + @p_MAKER_ID_KT + '%' OR @p_MAKER_ID_KT IS NULL OR @p_MAKER_ID_KT = '')
|
83
|
AND (A.CHECKER_ID_KT LIKE '%' + @p_CHECKER_ID_KT + '%' OR @p_CHECKER_ID_KT IS NULL OR @p_CHECKER_ID_KT = '')
|
84
|
AND (A.REPORT_STATUS LIKE '%' + @p_REPORT_STATUS + '%' OR @p_REPORT_STATUS IS NULL OR @p_REPORT_STATUS = '')
|
85
|
AND A.RECORD_STATUS='1'
|
86
|
AND (A.REPORT_STATUS LIKE '%' + @p_REPORT_STATUS + '%' OR @p_REPORT_STATUS IS NULL OR @p_REPORT_STATUS = '')
|
87
|
|
88
|
-- GiaNT 28/09/2021
|
89
|
AND ( (@p_AUTH_STATUS = 'Y' AND A.COL_MULTI_MASTER_ID IN (SELECT G.COL_MULTI_MASTER_ID FROM ASS_COLLECT_CONFIRM_MASTER G))
|
90
|
OR (@p_AUTH_STATUS = 'N' AND A.COL_MULTI_MASTER_ID NOT IN (SELECT G.COL_MULTI_MASTER_ID FROM ASS_COLLECT_CONFIRM_MASTER G)
|
91
|
OR (@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '' )))
|
92
|
AND A.AUTH_STATUS = 'A'
|
93
|
|
94
|
-- GiaNT 11/10/2021
|
95
|
--AND (
|
96
|
-- (@BRANCH_TYPE = 'HS' AND EXISTS (SELECT * FROM ASS_COLLECT_MULTI_DT WHERE A.COL_MULTI_MASTER_ID = ASS_COLLECT_MULTI_DT.COL_MULTI_MASTER_ID AND ASS_COLLECT_MULTI_DT.DEPT_ID_USE = @DEP_LOGIN))
|
97
|
-- OR (@BRANCH_TYPE <> 'HS' AND EXISTS (SELECT * FROM ASS_COLLECT_MULTI_DT WHERE A.COL_MULTI_MASTER_ID = ASS_COLLECT_MULTI_DT.COL_MULTI_MASTER_ID AND ASS_COLLECT_MULTI_DT.BRANCH_ID = @BRANCH_LOGIN))
|
98
|
--)
|
99
|
|
100
|
-- TIM KIEM THEO TRUONG DON VI GIAO TAI SAN
|
101
|
AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV',
|
102
|
(SELECT TOP 1 DT.BRANCH_ID FROM ASS_COLLECT_MULTI_DT DT WHERE DT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID ORDER BY COLLECT_MULTI_ID ASC),
|
103
|
(SELECT TOP 1 DT.DEPT_ID_USE FROM ASS_COLLECT_MULTI_DT DT WHERE DT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID ORDER BY COLLECT_MULTI_ID ASC)) US
|
104
|
WHERE US.TLNANME = @p_USER_LOGIN))
|
105
|
AND A.APPROVE_DT>CONVERT(DATETIME,'2022-17-10',103)
|
106
|
|
107
|
ORDER BY A.CREATE_DT DESC
|
108
|
-- PAGING END
|
109
|
end
|
110
|
ELSE
|
111
|
BEGIN
|
112
|
-- PAGING BEGIN
|
113
|
SELECT TOP(CONVERT(INT,@P_TOP))A.*,C.BRANCH_CODE, C.BRANCH_NAME, F.AUTH_STATUS_NAME,
|
114
|
ATKT.AUTH_STATUS_NAME AS AUTH_STATUS_NAME_KT,T1.TLFullName AS MAKER_NAME,T2.TLFullName AS MAKER_NAME_KT,T3.TLFullName APPROVE_NAME, T4.TLFullName APPROVE_NAME_KT,
|
115
|
C.BRANCH_CODE +' - '+ C.BRANCH_NAME AS FULL_BRANCH_NAME,
|
116
|
@p_USER_LOGIN AS USER_LOGIN,@p_TYPE_SEARCH AS TYPE_SEARCH,
|
117
|
CASE WHEN EXISTS (SELECT * FROM ASS_COLLECT_CONFIRM_MASTER M WHERE M.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID)
|
118
|
THEN 'Y'
|
119
|
ELSE 'N' END AS CONFIRM_STATUS
|
120
|
-- SELECT END
|
121
|
FROM ASS_COLLECT_MULTI_MASTER A
|
122
|
LEFT JOIN CM_BRANCH C ON A.BRANCH_ID = C.BRANCH_ID
|
123
|
LEFT JOIN CM_AUTH_STATUS F ON A.AUTH_STATUS = F.AUTH_STATUS
|
124
|
LEFT JOIN CM_AUTH_STATUS ATKT ON ATKT.AUTH_STATUS = A.AUTH_STATUS_KT
|
125
|
LEFT JOIN TL_USER T1 ON A.MAKER_ID = T1.TLNANME
|
126
|
LEFT JOIN TL_USER T2 ON A.MAKER_ID_KT = T2.TLNANME
|
127
|
LEFT JOIN TL_USER T3 ON A.CHECKER_ID = T3.TLNANME
|
128
|
LEFT JOIN TL_USER T4 ON A.CHECKER_ID_KT = T4.TLNANME
|
129
|
--INNER JOIN (SELECT BRANCH_ID,COL_MULTI_MASTER_ID,COUNT(*) AS SL FROM ASS_COLLECT_MULTI_DT WHERE BRANCH_ID = @BRANCH_LOGIN GROUP BY BRANCH_ID,COL_MULTI_MASTER_ID) DTT ON DTT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID
|
130
|
|
131
|
WHERE 1 = 1
|
132
|
AND (A.COL_MULTI_MASTER_ID LIKE '%' + @p_COL_MULTI_MASTER_ID + '%' OR @p_COL_MULTI_MASTER_ID IS NULL OR @p_COL_MULTI_MASTER_ID = '')
|
133
|
AND (CONVERT(DATE,ISNULL(A.CREATE_DT_KT, A.COLLECT_DT),103) >= CONVERT(DATE,@p_FROMDATE, 103) OR @p_FROMDATE IS NULL OR @p_FROMDATE ='')
|
134
|
AND (CONVERT(DATE,ISNULL(A.CREATE_DT_KT, A.COLLECT_DT),103) <= CONVERT(DATE,@p_TODATE, 103) OR @p_TODATE IS NULL OR @p_TODATE ='')
|
135
|
AND (A.USER_COLLECT LIKE '%' + @p_USER_COLLECT + '%' OR @p_USER_COLLECT IS NULL OR @p_USER_COLLECT = '')
|
136
|
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
|
137
|
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')
|
138
|
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
|
139
|
AND (A.CREATE_DT =CONVERT(DATETIME, @p_CREATE_DT, 103) OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')
|
140
|
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')
|
141
|
AND (A.APPROVE_DT =CONVERT(DATETIME, @p_APPROVE_DT, 103) OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
|
142
|
AND (A.AUTH_STATUS_KT LIKE '%' + @p_AUTH_STATUS_KT + '%' OR @p_AUTH_STATUS_KT IS NULL OR @p_AUTH_STATUS_KT = '')
|
143
|
AND (A.CREATE_DT_KT =CONVERT(DATETIME, @p_CREATE_DT_KT, 103) OR @p_CREATE_DT_KT IS NULL OR @p_CREATE_DT_KT = '')
|
144
|
AND (A.APPROVE_DT_KT =CONVERT(DATETIME, @p_APPROVE_DT_KT, 103) OR @p_APPROVE_DT_KT IS NULL OR @p_APPROVE_DT_KT = '')
|
145
|
AND (A.MAKER_ID_KT LIKE '%' + @p_MAKER_ID_KT + '%' OR @p_MAKER_ID_KT IS NULL OR @p_MAKER_ID_KT = '')
|
146
|
AND (A.CHECKER_ID_KT LIKE '%' + @p_CHECKER_ID_KT + '%' OR @p_CHECKER_ID_KT IS NULL OR @p_CHECKER_ID_KT = '')
|
147
|
AND (A.REPORT_STATUS LIKE '%' + @p_REPORT_STATUS + '%' OR @p_REPORT_STATUS IS NULL OR @p_REPORT_STATUS = '')
|
148
|
AND A.RECORD_STATUS='1'
|
149
|
AND (A.REPORT_STATUS LIKE '%' + @p_REPORT_STATUS + '%' OR @p_REPORT_STATUS IS NULL OR @p_REPORT_STATUS = '')
|
150
|
|
151
|
-- GiaNT 28/09/2021
|
152
|
AND ( (@p_AUTH_STATUS = 'Y' AND A.COL_MULTI_MASTER_ID IN (SELECT G.COL_MULTI_MASTER_ID FROM ASS_COLLECT_CONFIRM_MASTER G))
|
153
|
OR (@p_AUTH_STATUS = 'N' AND A.COL_MULTI_MASTER_ID NOT IN (SELECT G.COL_MULTI_MASTER_ID FROM ASS_COLLECT_CONFIRM_MASTER G)
|
154
|
OR (@p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '' )))
|
155
|
AND A.AUTH_STATUS = 'A'
|
156
|
-- GiaNT 11/10/2021
|
157
|
--AND (
|
158
|
-- (@BRANCH_TYPE = 'HS' AND EXISTS (SELECT * FROM ASS_COLLECT_MULTI_DT WHERE A.COL_MULTI_MASTER_ID = ASS_COLLECT_MULTI_DT.COL_MULTI_MASTER_ID AND ASS_COLLECT_MULTI_DT.DEPT_ID_USE = @DEP_LOGIN))
|
159
|
-- OR (@BRANCH_TYPE <> 'HS' AND EXISTS (SELECT * FROM ASS_COLLECT_MULTI_DT WHERE A.COL_MULTI_MASTER_ID = ASS_COLLECT_MULTI_DT.COL_MULTI_MASTER_ID AND ASS_COLLECT_MULTI_DT.BRANCH_ID = @BRANCH_LOGIN))
|
160
|
--)
|
161
|
|
162
|
-- TIM KIEM THEO TRUONG DON VI GIAO TAI SAN
|
163
|
AND (EXISTS(SELECT * FROM dbo.FN_GET_USER_BY_ROLE('GDDV',
|
164
|
(SELECT TOP 1 DT.BRANCH_ID FROM ASS_COLLECT_MULTI_DT DT WHERE DT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID ORDER BY COLLECT_MULTI_ID ASC),
|
165
|
(SELECT TOP 1 DT.DEPT_ID_USE FROM ASS_COLLECT_MULTI_DT DT WHERE DT.COL_MULTI_MASTER_ID = A.COL_MULTI_MASTER_ID ORDER BY COLLECT_MULTI_ID ASC)) US
|
166
|
WHERE US.TLNANME = @p_USER_LOGIN))
|
167
|
AND A.APPROVE_DT>CONVERT(DATETIME,'2022-17-10',103)
|
168
|
|
169
|
ORDER BY A.CREATE_DT DESC
|
170
|
|
171
|
-- PAGING END
|
172
|
END
|
173
|
END -- PAGING
|