XMLWAN 4 år sedan
förälder
incheckning
96c0b9fc81
2 ändrade filer med 116 tillägg och 86 borttagningar
  1. 4 4
      controllers/base_api_controller.go
  2. 112 82
      service/common_service.go

+ 4 - 4
controllers/base_api_controller.go Visa fil

@@ -81,7 +81,7 @@ func (this *BaseAuthAPIController) Prepare() {
81 81
 		userAdmin.ModifyTime = 1530786071
82 82
 		var subscibe models.ServeSubscibe
83 83
 		subscibe.ID = 1
84
-		subscibe.OrgId = 9841
84
+		subscibe.OrgId = 7957
85 85
 		subscibe.PeriodStart = 1538035409
86 86
 		subscibe.PeriodEnd = 1569571409
87 87
 		subscibe.State = 1
@@ -91,7 +91,7 @@ func (this *BaseAuthAPIController) Prepare() {
91 91
 		subscibes := make(map[int64]*models.ServeSubscibe, 0)
92 92
 		subscibes[4] = &subscibe
93 93
 		var adminUserInfo service.AdminUserInfo
94
-		adminUserInfo.CurrentOrgId = 9841
94
+		adminUserInfo.CurrentOrgId = 7957
95 95
 		adminUserInfo.CurrentAppId = 18
96 96
 		adminUserInfo.AdminUser = &userAdmin
97 97
 		adminUserInfo.Subscibes = subscibes
@@ -326,7 +326,7 @@ func (this *BaseServeAPIController) Prepare() {
326 326
 		userAdmin.ModifyTime = 1530786071
327 327
 		var subscibe models.ServeSubscibe
328 328
 		subscibe.ID = 1
329
-		subscibe.OrgId = 9841
329
+		subscibe.OrgId = 7957
330 330
 		subscibe.PeriodStart = 1538035409
331 331
 		subscibe.PeriodEnd = 1569571409
332 332
 		subscibe.State = 1
@@ -336,7 +336,7 @@ func (this *BaseServeAPIController) Prepare() {
336 336
 		subscibes := make(map[int64]*models.ServeSubscibe, 0)
337 337
 		subscibes[4] = &subscibe
338 338
 		var adminUserInfo service.AdminUserInfo
339
-		adminUserInfo.CurrentOrgId = 9841
339
+		adminUserInfo.CurrentOrgId = 7957
340 340
 		adminUserInfo.CurrentAppId = 18
341 341
 		adminUserInfo.AdminUser = &userAdmin
342 342
 		adminUserInfo.Subscibes = subscibes

+ 112 - 82
service/common_service.go Visa fil

@@ -1854,26 +1854,26 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
1854 1854
 	if lapseto == 0 {
1855 1855
 		d := XTReadDB().Table("xt_patients as s")
1856 1856
 		fmt.Println("d", d)
1857
-		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 2")
1857
+		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 1")
1858 1858
 		table := XTReadDB().Table("xt_quality_control_standard as r")
1859 1859
 		fmt.Println(table)
1860 1860
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
1861 1861
 			"SELECT " +
1862 1862
 			"CASE " +
1863
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
1864
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
1865
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
1866
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
1867
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
1868
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
1869
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
1870
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
1871
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
1872
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
1873
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
1874
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
1863
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '一月'" +
1864
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '二月'" +
1865
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '三月'" +
1866
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '四月'" +
1867
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '五月'" +
1868
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '六月'" +
1869
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '七月'" +
1870
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '八月'" +
1871
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '九月'" +
1872
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十月'" +
1873
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '十一月'" +
1874
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十二月'" +
1875 1875
 			" ELSE '其他'" +
1876
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1 or s.lapseto = 2) and (x.inspect_value <> r.range_value)"
1876
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1 or s.lapseto = 2) and (x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0 )"
1877 1877
 		countParams := make([]interface{}, 0)
1878 1878
 		countParams = append(countParams, januaryStartStrUnix)
1879 1879
 		countParams = append(countParams, januaryEndStrUnix)
@@ -1904,6 +1904,11 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
1904 1904
 			countSQL += " AND x.org_id=?"
1905 1905
 			countParams = append(countParams, orgid)
1906 1906
 		}
1907
+		if orgid > 0 {
1908
+			db = db.Where("r.user_org_id=?", orgid)
1909
+			countSQL += " AND r.user_org_id=?"
1910
+			countParams = append(countParams, orgid)
1911
+		}
1907 1912
 		if modetype > 0 {
1908 1913
 			db = db.Where("x.item_id = ?", modetype)
1909 1914
 			countSQL += " AND x.item_id=?"
@@ -1927,26 +1932,26 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
1927 1932
 
1928 1933
 		d := XTReadDB().Table("xt_patients as s")
1929 1934
 		fmt.Println("d", d)
1930
-		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 2")
1935
+		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 1")
1931 1936
 		table := XTReadDB().Table("xt_quality_control_standard as r")
1932 1937
 		fmt.Println(table)
1933 1938
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
1934 1939
 			"SELECT " +
1935 1940
 			"CASE " +
1936
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
1937
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
1938
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
1939
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
1940
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
1941
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
1942
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
1943
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
1944
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
1945
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
1946
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
1947
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
1941
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '一月'" +
1942
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '二月'" +
1943
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '三月'" +
1944
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '四月'" +
1945
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '五月'" +
1946
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '六月'" +
1947
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '七月'" +
1948
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '八月'" +
1949
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '九月'" +
1950
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十月'" +
1951
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '十一月'" +
1952
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十二月'" +
1948 1953
 			" ELSE '其他'" +
1949
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1) and (x.inspect_value <> r.range_value)"
1954
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1) and (x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0 )"
1950 1955
 		countParams := make([]interface{}, 0)
1951 1956
 		countParams = append(countParams, januaryStartStrUnix)
1952 1957
 		countParams = append(countParams, januaryEndStrUnix)
@@ -1977,6 +1982,11 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
1977 1982
 			countSQL += " AND x.org_id=?"
1978 1983
 			countParams = append(countParams, orgid)
1979 1984
 		}
1985
+		if orgid > 0 {
1986
+			db = db.Where("r.user_org_id=?", orgid)
1987
+			countSQL += " AND r.user_org_id=?"
1988
+			countParams = append(countParams, orgid)
1989
+		}
1980 1990
 		if modetype > 0 {
1981 1991
 			db = db.Where("x.item_id = ?", modetype)
1982 1992
 			countSQL += " AND x.item_id=?"
@@ -1999,26 +2009,26 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
1999 2009
 	if lapseto == 2 {
2000 2010
 		d := XTReadDB().Table("xt_patients as s")
2001 2011
 		fmt.Println("d", d)
2002
-		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 2")
2012
+		db := readDb.Table("xt_inspection as x ").Where("x.status=1 and x.inspect_type = 1")
2003 2013
 		table := XTReadDB().Table("xt_quality_control_standard as r")
2004 2014
 		fmt.Println(table)
2005 2015
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
2006 2016
 			"SELECT " +
2007 2017
 			"CASE " +
2008
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
2009
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
2010
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
2011
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
2012
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
2013
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
2014
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
2015
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
2016
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
2017
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
2018
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
2019
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
2018
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '一月'" +
2019
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '二月'" +
2020
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '三月'" +
2021
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '四月'" +
2022
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '五月'" +
2023
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '六月'" +
2024
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '七月'" +
2025
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '八月'" +
2026
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '九月'" +
2027
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十月'" +
2028
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0  THEN '十一月'" +
2029
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0   THEN '十二月'" +
2020 2030
 			" ELSE '其他'" +
2021
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 2) and (x.inspect_value <> r.range_value)"
2031
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 2) and (x.inspect_value +0 >= r.min_range +0 and x.inspect_value +0 <= r.large_range +0 )"
2022 2032
 		countParams := make([]interface{}, 0)
2023 2033
 		countParams = append(countParams, januaryStartStrUnix)
2024 2034
 		countParams = append(countParams, januaryEndStrUnix)
@@ -2049,6 +2059,11 @@ func GetMonthProjectListTwo(orgid int64, lapseto int64, modetype int64, januaryS
2049 2059
 			countSQL += " AND x.org_id=?"
2050 2060
 			countParams = append(countParams, orgid)
2051 2061
 		}
2062
+		if orgid > 0 {
2063
+			db = db.Where("r.user_org_id=?", orgid)
2064
+			countSQL += " AND r.user_org_id=?"
2065
+			countParams = append(countParams, orgid)
2066
+		}
2052 2067
 		if modetype > 0 {
2053 2068
 			db = db.Where("x.item_id = ?", modetype)
2054 2069
 			countSQL += " AND x.item_id=?"
@@ -2080,20 +2095,20 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2080 2095
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
2081 2096
 			"SELECT " +
2082 2097
 			"CASE " +
2083
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
2084
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
2085
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
2086
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
2087
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
2088
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
2089
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
2090
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
2091
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
2092
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
2093
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
2094
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
2098
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '一月'" +
2099
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '二月'" +
2100
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '三月'" +
2101
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '四月'" +
2102
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '五月'" +
2103
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '六月'" +
2104
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '七月'" +
2105
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '八月'" +
2106
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '九月'" +
2107
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十月'" +
2108
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十一月'" +
2109
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十二月'" +
2095 2110
 			" ELSE '其他'" +
2096
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1 or s.lapseto = 2) and (x.inspect_value <> r.range_value)"
2111
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1 or s.lapseto = 2) and (x.inspect_value = r.range_value)"
2097 2112
 		countParams := make([]interface{}, 0)
2098 2113
 		countParams = append(countParams, januaryStartStrUnix)
2099 2114
 		countParams = append(countParams, januaryEndStrUnix)
@@ -2124,6 +2139,11 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2124 2139
 			countSQL += " AND x.org_id=?"
2125 2140
 			countParams = append(countParams, orgid)
2126 2141
 		}
2142
+		if orgid > 0 {
2143
+			db = db.Where("r.user_org_id=?", orgid)
2144
+			countSQL += " AND r.user_org_id=?"
2145
+			countParams = append(countParams, orgid)
2146
+		}
2127 2147
 		if modetype > 0 {
2128 2148
 			db = db.Where("x.item_id = ?", modetype)
2129 2149
 			countSQL += " AND x.item_id=?"
@@ -2153,20 +2173,20 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2153 2173
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
2154 2174
 			"SELECT " +
2155 2175
 			"CASE " +
2156
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
2157
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
2158
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
2159
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
2160
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
2161
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
2162
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
2163
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
2164
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
2165
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
2166
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
2167
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
2176
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '一月'" +
2177
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '二月'" +
2178
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '三月'" +
2179
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '四月'" +
2180
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '五月'" +
2181
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '六月'" +
2182
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '七月'" +
2183
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '八月'" +
2184
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '九月'" +
2185
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十月'" +
2186
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十一月'" +
2187
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十二月'" +
2168 2188
 			" ELSE '其他'" +
2169
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1) and (x.inspect_value <> r.range_value)"
2189
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 1) and (x.inspect_value = r.range_value)"
2170 2190
 		countParams := make([]interface{}, 0)
2171 2191
 		countParams = append(countParams, januaryStartStrUnix)
2172 2192
 		countParams = append(countParams, januaryEndStrUnix)
@@ -2197,6 +2217,11 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2197 2217
 			countSQL += " AND x.org_id=?"
2198 2218
 			countParams = append(countParams, orgid)
2199 2219
 		}
2220
+		if orgid > 0 {
2221
+			db = db.Where("r.user_org_id=?", orgid)
2222
+			countSQL += " AND r.user_org_id=?"
2223
+			countParams = append(countParams, orgid)
2224
+		}
2200 2225
 		if modetype > 0 {
2201 2226
 			db = db.Where("x.item_id = ?", modetype)
2202 2227
 			countSQL += " AND x.item_id=?"
@@ -2225,20 +2250,20 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2225 2250
 		countSQL := "SELECT nnd AS 'total',COUNT(*) AS 'count' FROM(" +
2226 2251
 			"SELECT " +
2227 2252
 			"CASE " +
2228
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '一月'" +
2229
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '二月'" +
2230
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '三月'" +
2231
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '四月'" +
2232
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '五月'" +
2233
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '六月'" +
2234
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '七月'" +
2235
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '八月'" +
2236
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '九月'" +
2237
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十月'" +
2238
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十一月'" +
2239
-			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value <> r.range_value  THEN '十二月'" +
2253
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '一月'" +
2254
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '二月'" +
2255
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '三月'" +
2256
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '四月'" +
2257
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '五月'" +
2258
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '六月'" +
2259
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '七月'" +
2260
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '八月'" +
2261
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '九月'" +
2262
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十月'" +
2263
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十一月'" +
2264
+			" WHEN x.inspect_date>=? AND  x.inspect_date<=? and x.inspect_value = r.range_value  THEN '十二月'" +
2240 2265
 			" ELSE '其他'" +
2241
-			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 2) and (x.inspect_value <> r.range_value)"
2266
+			"END AS nnd FROM xt_inspection as x LEFT JOIN xt_quality_control_standard AS r ON r.inspection_minor = x.item_id left join xt_patients as s on s.id = x.patient_id  WHERE x.status=1 and (s.lapseto = 2) and (x.inspect_value = r.range_value)"
2242 2267
 		countParams := make([]interface{}, 0)
2243 2268
 		countParams = append(countParams, januaryStartStrUnix)
2244 2269
 		countParams = append(countParams, januaryEndStrUnix)
@@ -2269,6 +2294,11 @@ func GetMonthProjectListThree(orgid int64, lapseto int64, modetype int64, januar
2269 2294
 			countSQL += " AND x.org_id=?"
2270 2295
 			countParams = append(countParams, orgid)
2271 2296
 		}
2297
+		if orgid > 0 {
2298
+			db = db.Where("r.user_org_id=?", orgid)
2299
+			countSQL += " AND r.user_org_id=?"
2300
+			countParams = append(countParams, orgid)
2301
+		}
2272 2302
 		if modetype > 0 {
2273 2303
 			db = db.Where("x.item_id = ?", modetype)
2274 2304
 			countSQL += " AND x.item_id=?"
@@ -2492,7 +2522,7 @@ func GetQualityControlById(orgid int64, patientid int64, startime int64, endtime
2492 2522
 	if inspectdate > 0 {
2493 2523
 		db = db.Where("x.inspect_date = ?", inspectdate)
2494 2524
 	}
2495
-	err = db.Group("x.id").Select("x.id,x.patient_id,x.item_id,x.item_name,x.inspect_value,x.inspect_date,s.name,s.dialysis_no,r.range_max,r.range_min,d.sort,r.unit").Joins("left join xt_patients as s on s.id = x.patient_id").Joins("left join xt_inspection_reference as r on r.id = x.item_id").Joins("left join xt_quality_control_standard as d on d.inspection_minor = x.item_id").Order("x.inspect_date desc").Scan(&inspection).Error
2525
+	err = db.Group("x.id").Select("x.id,x.patient_id,x.item_id,x.item_name,x.inspect_value,x.inspect_date,s.name,s.dialysis_no,r.range_max,r.range_min,d.sort,r.unit,d.range_type").Joins("left join xt_patients as s on s.id = x.patient_id").Joins("left join xt_inspection_reference as r on r.id = x.item_id").Joins("left join xt_quality_control_standard as d on d.inspection_minor = x.item_id").Order("x.inspect_date desc").Scan(&inspection).Error
2496 2526
 
2497 2527
 	return inspection, err
2498 2528
 }