Project

General

Profile

TR_REQUEST_JOB_FORM_Search.txt

Luc Tran Van, 06/06/2022 02:30 PM

 
1
ALTER PROC [dbo].[TR_REQUEST_JOB_FORM_Search]
2
@p_REF_ID varchar(15) = NULL,
3
@p_REQ_ID varchar(15) = NULL,
4
@p_REQ_CODE varchar(15) = NULL,
5
@p_MAKER_ID varchar(15) = NULL,
6
@p_AUTH_STATUS varchar(1) = NULL,
7
@p_REQ_REASON nvarchar(MAX) = NULL,
8
@p_REQ_DESC nvarchar(MAX) = NULL,
9
@p_NOTES nvarchar(MAX) = NULL,
10
@p_REQ_TYPE_TRANS varchar(15) = NULL,
11
@p_REQ_TYPE_GROUP varchar(15) = NULL,
12
@p_REQ_TYPE_BOOKING_HOTEL varchar(15) = NULL,
13
--@p_COST_AMOUNT decimal(18) = NULL,
14
@p_REQ_TYPE_BOOKING_AIR varchar(15) = NULL,
15
@p_REQ_TYPE_BOOKING_TRAIN varchar(15) = NULL,
16
@p_SENDER_ID varchar(15) = NULL,
17
@p_SEND_DT VARCHAR(20) = NULL,
18
@p_SIGN_USER varchar(15) = NULL,
19
@p_SIGN_DT VARCHAR(20) = NULL,
20
@p_PROCESS_ID varchar(15) = NULL,
21
@p_BRANCH_ID varchar(15) = NULL,
22
@p_DEP_ID varchar(15) = NULL,
23
@p_CREATE_DT VARCHAR(20) = NULL,
24
@p_CHECKER_ID varchar(15) = NULL,
25
@p_APPROVE_DT VARCHAR(20) = NULL,
26
@p_FRMDATE VARCHAR(20)= NULL,
27
@p_TODATE VARCHAR(20) = NULL,
28
@p_USER_LOGIN VARCHAR(50) =NULL,
29
@p_DEP_CREATE VARCHAR(15) = NULL,
30
@p_BRANCH_CREATE VARCHAR(15) = NULL,
31
@p_TOP INT = NULL
32
AS
33
BEGIN -- PAGING
34
DECLARE @LST_ROLE TABLE(ROLENAME VARCHAR(20))
35
INSERT INTO @LST_ROLE (ROLENAME) (SELECT C.DisplayName FROM TL_USER A JOIN AbpUserRoles B ON B.UserId = A.ID JOIN AbpRoles C ON C.Id=B.RoleId WHERE A.TLNANME =@p_USER_LOGIN) INSERT INTO @LST_ROLE (ROLENAME) (SELECT ROLE_NEW FROM dbo.TL_SYS_ROLE_MAPPING
36
WHERE CAST(EXP_DATE AS DATE) >= CAST(GETDATE() AS DATE) AND TLNAME=@p_USER_LOGIN)
37
IF(@p_TOP IS NULL OR @p_TOP = 0)
38
BEGIN
39
-- PAGING BEGIN
40
SELECT A.REQ_ID, A.REQ_CODE, A.REQ_DT, A.REF_ID, A.MAKER_ID, A.CREATE_DT, A.AUTH_STATUS, A.CHECKER_ID, A.APPROVE_DT, A.REQ_REASON, A.REQ_DESC, A.NOTES,
41
A.REQ_TYPE_TRANS, A.REQ_TYPE_GROUP, A.REQ_TYPE_BOOKING_HOTEL, A.REQ_TYPE_BOOKING_AIR, A.REQ_TYPE_BOOKING_TRAIN, A.SENDER_ID, A.SEND_DT,
42
A.SIGN_USER, A.SIGN_DT, A.PROCESS_ID, A.BRANCH_CREATE, A.DEP_CREATE, A.BRANCH_ID, A.DEP_ID,
43
BR_CR.BRANCH_NAME AS BRANCH_CREATE_NAME, DP_CR.DEP_NAME AS DEP_CREATE_NAME, A.FRMDATE, A.TODATE,B.BRANCH_NAME,C.AUTH_STATUS_NAME AS AUTH_STATUS_PROCESS_NAME,
44
(CASE
45
WHEN (A.PROCESS_ID IN ('SIGN') AND EXISTS(SELECT * FROM FN_GET_USER_BY_ROLE('GDDV',A.BRANCH_CREATE,A.DEP_CREATE)WHERE TLNANME=@p_USER_LOGIN)) THEN 'Y'
46
WHEN (A.PROCESS_ID IN ('SEND') AND A.SIGN_USER=@p_USER_LOGIN ) THEN 'Y'
47
ELSE 'N'
48
END) AS IS_APPROVE
49
-- SELECT END
50
FROM TR_REQUEST_JOB_FORM A
51
LEFT JOIN dbo.CM_BRANCH BR_CR ON A.BRANCH_CREATE=BR_CR.BRANCH_ID
52
LEFT JOIN dbo.CM_BRANCH B ON A.BRANCH_ID=B.BRANCH_ID
53
LEFT JOIN dbo.CM_DEPARTMENT DP_CR ON DP_CR.DEP_ID=A.DEP_CREATE
54
LEFT JOIN CM_AUTH_STATUS C ON C.AUTH_STATUS = A.AUTH_STATUS
55
WHERE 1 = 1
56
AND (A.REF_ID LIKE '%' + @p_REF_ID + '%' OR @p_REF_ID IS NULL OR @p_REF_ID = '')
57
AND (A.REQ_ID LIKE '%' + @p_REQ_ID + '%' OR @p_REQ_ID IS NULL OR @p_REQ_ID = '')
58
AND (A.REQ_CODE LIKE '%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')
59
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
60
AND (A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
61
AND (A.REQ_REASON LIKE '%' + @p_REQ_REASON + '%' OR @p_REQ_REASON IS NULL OR @p_REQ_REASON = '')
62
AND (A.REQ_DESC LIKE '%' + @p_REQ_DESC + '%' OR @p_REQ_DESC IS NULL OR @p_REQ_DESC = '')
63
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
64
AND (A.REQ_TYPE_TRANS LIKE '%' + @p_REQ_TYPE_TRANS + '%' OR @p_REQ_TYPE_TRANS IS NULL OR @p_REQ_TYPE_TRANS = '')
65
AND (A.REQ_TYPE_GROUP LIKE '%' + @p_REQ_TYPE_GROUP + '%' OR @p_REQ_TYPE_GROUP IS NULL OR @p_REQ_TYPE_GROUP = '')
66
AND (A.REQ_TYPE_BOOKING_HOTEL LIKE '%' + @p_REQ_TYPE_BOOKING_HOTEL + '%' OR @p_REQ_TYPE_BOOKING_HOTEL IS NULL OR @p_REQ_TYPE_BOOKING_HOTEL = '')
67
--AND (A.COST_AMOUNT = @p_COST_AMOUNT OR @p_COST_AMOUNT IS NULL)
68
AND (A.REQ_TYPE_BOOKING_AIR LIKE '%' + @p_REQ_TYPE_BOOKING_AIR + '%' OR @p_REQ_TYPE_BOOKING_AIR IS NULL OR @p_REQ_TYPE_BOOKING_AIR = '')
69
AND (A.REQ_TYPE_BOOKING_TRAIN LIKE '%' + @p_REQ_TYPE_BOOKING_TRAIN + '%' OR @p_REQ_TYPE_BOOKING_TRAIN IS NULL OR @p_REQ_TYPE_BOOKING_TRAIN = '')
70
AND (DATEDIFF(DAYOFYEAR,A.CREATE_DT,CONVERT(DATETIME, @p_CREATE_DT, 103)) = 0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')
71
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')
72
AND (DATEDIFF(DAYOFYEAR,A.APPROVE_DT,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
73
AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @p_FRMDATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
74
AND(CONVERT(DATE, A.CREATE_DT)<=CONVERT(DATE, @p_TODATE, 103)OR @p_TODATE IS NULL OR @p_TODATE='' OR A.CREATE_DT IS NULL)
75
AND (A.DEP_CREATE LIKE '%' + @p_DEP_CREATE + '%' OR @p_DEP_CREATE IS NULL OR @p_DEP_CREATE = '')
76
AND (A.BRANCH_CREATE LIKE '%' + @p_BRANCH_CREATE + '%' OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')
77
ORDER BY A.CREATE_DT DESC
78
-- PAGING END
79
END
80
ELSE
81
BEGIN
82
-- PAGING BEGIN
83
SELECT TOP(@p_TOP) A.REQ_ID, A.REQ_CODE, A.REQ_DT, A.REF_ID, A.MAKER_ID, A.CREATE_DT, A.AUTH_STATUS, A.CHECKER_ID, A.APPROVE_DT,
84
A.REQ_REASON, A.REQ_DESC, A.NOTES, A.REQ_TYPE_TRANS, A.REQ_TYPE_GROUP, A.REQ_TYPE_BOOKING_HOTEL, A.REQ_TYPE_BOOKING_AIR, A.REQ_TYPE_BOOKING_TRAIN,
85
A.SENDER_ID, A.SEND_DT, A.SIGN_USER, A.SIGN_DT, A.PROCESS_ID, A.BRANCH_CREATE, A.DEP_CREATE, A.BRANCH_ID, A.DEP_ID,
86
BR_CR.BRANCH_NAME AS BRANCH_CREATE_NAME, DP_CR.DEP_NAME AS DEP_CREATE_NAME, A.FRMDATE, A.TODATE,B.BRANCH_NAME,C.AUTH_STATUS_NAME AS AUTH_STATUS_PROCESS_NAME
87
-- SELECT END
88
FROM TR_REQUEST_JOB_FORM A
89
LEFT JOIN dbo.CM_BRANCH BR_CR ON A.BRANCH_CREATE=BR_CR.BRANCH_ID
90
LEFT JOIN dbo.CM_BRANCH B ON A.BRANCH_ID=B.BRANCH_ID
91
LEFT JOIN CM_AUTH_STATUS C ON C.AUTH_STATUS = A.AUTH_STATUS
92
LEFT JOIN dbo.CM_DEPARTMENT DP_CR ON DP_CR.DEP_ID=A.DEP_CREATE
93
WHERE 1 = 1
94
AND (A.REF_ID LIKE '%' + @p_REF_ID + '%' OR @p_REF_ID IS NULL OR @p_REF_ID = '')
95
AND (A.REQ_ID LIKE '%' + @p_REQ_ID + '%' OR @p_REQ_ID IS NULL OR @p_REQ_ID = '')
96
AND (A.REQ_CODE LIKE '%' + @p_REQ_CODE + '%' OR @p_REQ_CODE IS NULL OR @p_REQ_CODE = '')
97
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')
98
AND (A.AUTH_STATUS = @p_AUTH_STATUS OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')
99
AND (A.REQ_REASON LIKE '%' + @p_REQ_REASON + '%' OR @p_REQ_REASON IS NULL OR @p_REQ_REASON = '')
100
AND (A.REQ_DESC LIKE '%' + @p_REQ_DESC + '%' OR @p_REQ_DESC IS NULL OR @p_REQ_DESC = '')
101
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')
102
AND (A.REQ_TYPE_TRANS LIKE '%' + @p_REQ_TYPE_TRANS + '%' OR @p_REQ_TYPE_TRANS IS NULL OR @p_REQ_TYPE_TRANS = '')
103
AND (A.REQ_TYPE_GROUP LIKE '%' + @p_REQ_TYPE_GROUP + '%' OR @p_REQ_TYPE_GROUP IS NULL OR @p_REQ_TYPE_GROUP = '')
104
AND (A.REQ_TYPE_BOOKING_HOTEL LIKE '%' + @p_REQ_TYPE_BOOKING_HOTEL + '%' OR @p_REQ_TYPE_BOOKING_HOTEL IS NULL OR @p_REQ_TYPE_BOOKING_HOTEL = '')
105
--AND (A.COST_AMOUNT = @p_COST_AMOUNT OR @p_COST_AMOUNT IS NULL)
106
AND (A.REQ_TYPE_BOOKING_AIR LIKE '%' + @p_REQ_TYPE_BOOKING_AIR + '%' OR @p_REQ_TYPE_BOOKING_AIR IS NULL OR @p_REQ_TYPE_BOOKING_AIR = '')
107
AND (A.REQ_TYPE_BOOKING_TRAIN LIKE '%' + @p_REQ_TYPE_BOOKING_TRAIN + '%' OR @p_REQ_TYPE_BOOKING_TRAIN IS NULL OR @p_REQ_TYPE_BOOKING_TRAIN = '')
108
AND (DATEDIFF(DAYOFYEAR,A.CREATE_DT,CONVERT(DATETIME, @p_CREATE_DT, 103)) = 0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')
109
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')
110
AND (DATEDIFF(DAYOFYEAR,A.APPROVE_DT,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')
111
AND(CONVERT(DATE, A.CREATE_DT)>=CONVERT(DATE, @p_FRMDATE, 103)OR @p_FRMDATE IS NULL OR @p_FRMDATE='' OR A.CREATE_DT IS NULL)
112
AND(CONVERT(DATE, A.CREATE_DT)<=CONVERT(DATE, @p_TODATE, 103)OR @p_TODATE IS NULL OR @p_TODATE='' OR A.CREATE_DT IS NULL)
113
AND (A.DEP_CREATE LIKE '%' + @p_DEP_CREATE + '%' OR @p_DEP_CREATE IS NULL OR @p_DEP_CREATE = '')
114
AND (A.BRANCH_CREATE LIKE '%' + @p_BRANCH_CREATE + '%' OR @p_BRANCH_CREATE IS NULL OR @p_BRANCH_CREATE = '')
115
ORDER BY A.CREATE_DT DESC
116
-- PAGING END
117
END
118
END -- PAGING