1
|
declare @p_USER_LOGIN VARCHAR(250) = NULL,
|
2
|
@p_BRANCH_ID VARCHAR(15) = NULL,
|
3
|
@p_YEAR VARCHAR(15) = NULL
|
4
|
|
5
|
DECLARE @RESULT TABLE (
|
6
|
AMORT_STATUS VARCHAR(15),
|
7
|
TOTAL_COUNT FLOAT
|
8
|
)
|
9
|
DECLARE @BRANCH_LOGIN varchar(15) ='', @DEP_LOGIN varchar(15) =''
|
10
|
SELECT @DEP_LOGIN = SECUR_CODE, @BRANCH_LOGIN = TLSUBBRID FROM TL_USER WHERE TLNANME = @p_USER_LOGIN
|
11
|
|
12
|
IF(NOT EXISTS(SELECT * FROM CM_DEPARTMENT cd WHERE cd.BRANCH_ID = @BRANCH_LOGIN AND cd.DEP_ID = @DEP_LOGIN AND (cd.DEP_CODE = '0690604' OR cd.DEP_CODE = '0690802' OR cd.DEP_CODE = '0690803')))
|
13
|
BEGIN
|
14
|
IF(@BRANCH_LOGIN = 'DV0001') SET @p_BRANCH_ID = @DEP_LOGIN
|
15
|
ELSE SET @p_BRANCH_ID = @BRANCH_LOGIN
|
16
|
END
|
17
|
|
18
|
IF(EXISTS( SELECT A.AMORT_STATUS AS AMORT_STATUS, COUNT(A.AMORT_STATUS) AS TOTAL_COUNT
|
19
|
FROM ASS_MASTER A
|
20
|
WHERE 1=1
|
21
|
--AND (A.AMORT_STATUS = 'DKH' OR A.AMORT_STATUS = 'CKH' OR A.AMORT_STATUS = 'VNM'
|
22
|
--OR (A.AMORT_STATUS <> 'DKH' OR A.AMORT_STATUS <> 'CKH' OR A.AMORT_STATUS <> 'VNM'))
|
23
|
AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '' OR A.DEPT_ID = @p_BRANCH_ID)
|
24
|
--AND (YEAR(A.BUY_DATE_KT) <= CONVERT(INT,@p_YEAR) OR @p_YEAR IS NULL OR @p_YEAR = '' )
|
25
|
GROUP BY A.AMORT_STATUS)
|
26
|
)
|
27
|
BEGIN
|
28
|
|
29
|
|
30
|
INSERT INTO @RESULT
|
31
|
SELECT A.AMORT_STATUS AS AMORT_STATUS, COUNT(A.AMORT_STATUS) AS TOTAL_COUNT
|
32
|
FROM ASS_MASTER A
|
33
|
WHERE 1=1
|
34
|
--AND (A.AMORT_STATUS = 'DKH' OR A.AMORT_STATUS = 'CKH' OR A.AMORT_STATUS = 'VNM'
|
35
|
--OR (A.AMORT_STATUS <> 'DKH' OR A.AMORT_STATUS <> 'CKH' OR A.AMORT_STATUS <> 'VNM'))
|
36
|
AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '' OR A.DEPT_ID = @p_BRANCH_ID)
|
37
|
--AND (YEAR(A.BUY_DATE_KT) <= CONVERT(INT,@p_YEAR) OR @p_YEAR IS NULL OR @p_YEAR = '' )
|
38
|
GROUP BY A.AMORT_STATUS
|
39
|
|
40
|
------------- Tài sản chờ thu hồi-----------------------------
|
41
|
DECLARE @TOTAL_COUNT_CTH INT = 0
|
42
|
|
43
|
SELECT @TOTAL_COUNT_CTH = COUNT(*) FROM ASS_MASTER A
|
44
|
INNER JOIN ASS_COLLECT_MULTI_DT B ON A.ASSET_ID = B.ASSET_ID
|
45
|
INNER JOIN ASS_COLLECT_MULTI_MASTER C ON B.COL_MULTI_MASTER_ID = C.COL_MULTI_MASTER_ID
|
46
|
WHERE C.AUTH_STATUS_KT <> 'A' AND (C.AUTH_STATUS) ='A' -- LUCTV 05-03-23 BO SUNG THEM DIEU KIEN
|
47
|
AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '' OR A.DEPT_ID = @p_BRANCH_ID)
|
48
|
--AND (YEAR(A.BUY_DATE_KT) <= CONVERT(INT,@p_YEAR) OR @p_YEAR IS NULL OR @p_YEAR = '' )
|
49
|
------------- Tài sản chờ thu hồi-----------------------------
|
50
|
|
51
|
------------- Tài sản đang sử dụng-----------------------------
|
52
|
DECLARE @TOTAL_COUNT_DSD INT = 0
|
53
|
|
54
|
SELECT @TOTAL_COUNT_DSD = SUM(TOTAL_COUNT) FROM @RESULT WHERE AMORT_STATUS IN ('KHX','DKH','CKH','NKH','KKH','DPB')
|
55
|
------------- Tài sản đang sử dụng-----------------------------
|
56
|
|
57
|
------------- Tài sản tồn kho-----------------------------
|
58
|
DECLARE @TOTAL_COUNT_TK INT = 0
|
59
|
|
60
|
SELECT @TOTAL_COUNT_TK = SUM(TOTAL_COUNT) FROM @RESULT WHERE AMORT_STATUS IN ('VNM')
|
61
|
------------- Tài sản tồn kho-----------------------------
|
62
|
DELETE FROM @RESULT
|
63
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('CTH', @TOTAL_COUNT_CTH)
|
64
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('DSD', @TOTAL_COUNT_DSD)
|
65
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('TK', @TOTAL_COUNT_TK)
|
66
|
|
67
|
-------Chuyển từ số lượng sang % -------------
|
68
|
--DECLARE @SUM_TOTAL_COUNT INT = 0
|
69
|
--SELECT @SUM_TOTAL_COUNT = SUM(TOTAL_COUNT) FROM @RESULT
|
70
|
--UPDATE @RESULT SET TOTAL_COUNT = ROUND(TOTAL_COUNT * 100 / @SUM_TOTAL_COUNT, 2)
|
71
|
-------Chuyển từ số lượng sang % -------------
|
72
|
END
|
73
|
ELSE
|
74
|
BEGIN
|
75
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('CTH', 0)
|
76
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('DSD', 0)
|
77
|
INSERT INTO @RESULT( AMORT_STATUS, TOTAL_COUNT) VALUES('TK', 0)
|
78
|
END
|
79
|
SELECT * FROM @RESULT
|