[後端] 修改水電表api
This commit is contained in:
		
							parent
							
								
									8e727303d4
								
							
						
					
					
						commit
						330b1964f2
					
				@ -75,9 +75,21 @@ namespace FrontendWebApi.ApiControllers
 | 
			
		||||
                string sqlGroup = "";
 | 
			
		||||
                string sqlAvgRawData = "";
 | 
			
		||||
                string dbDateName = startTime.Split("-")[0].ToString().PadLeft(4, '0') + startTime.Split("-")[1].ToString().PadLeft(2, '0');
 | 
			
		||||
                string buildingSql = "";
 | 
			
		||||
                string tag_quantity = await backendRepository.GetOneAsync<string>("select system_value from variable where system_type = 'obixConfig' and system_key = 'tag_quantity' and deleted = 0");
 | 
			
		||||
 | 
			
		||||
                if (tag_quantity == "5")
 | 
			
		||||
                    buildingSql = " and SUBSTRING_INDEX(device_number, '_', 1) = @building_tag ";
 | 
			
		||||
                else
 | 
			
		||||
                    buildingSql = " and SUBSTRING_INDEX(SUBSTRING_INDEX(device_number, '_', 2), '_', -1) = @building_tag ";
 | 
			
		||||
 | 
			
		||||
                if (input.floor_tag.Count > 0)
 | 
			
		||||
                {
 | 
			
		||||
                    if (tag_quantity == "5")
 | 
			
		||||
                        sqlWhere = $@" and substring_index(substring_index(device_number, '_', 3), '_', -1) in @floor_tag ";
 | 
			
		||||
                    else
 | 
			
		||||
                        sqlWhere = $@" and substring_index(substring_index(device_number, '_', 5), '_', -1) in @floor_tag ";
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (input.tableType == "year")
 | 
			
		||||
                {
 | 
			
		||||
@ -104,7 +116,7 @@ namespace FrontendWebApi.ApiControllers
 | 
			
		||||
		                            (   
 | 
			
		||||
                                        select device_number
 | 
			
		||||
                                        from {table}
 | 
			
		||||
                                        where start_timestamp >= @startTime and end_timestamp < @endTime and point = 'KWH' and SUBSTRING_INDEX(device_number, '_', 1) = @building_tag 
 | 
			
		||||
                                        where start_timestamp >= @startTime and end_timestamp < @endTime and point = 'KWH' {buildingSql}
 | 
			
		||||
                                        {sqlWhere} 
 | 
			
		||||
                                        group by device_number
 | 
			
		||||
                                    ) dn
 | 
			
		||||
@ -113,7 +125,7 @@ namespace FrontendWebApi.ApiControllers
 | 
			
		||||
                            left join (
 | 
			
		||||
	                            select device_number, {sqlAvgRawData}
 | 
			
		||||
		                            from {table}
 | 
			
		||||
 		                            where start_timestamp >= @startTime and end_timestamp < @endTime and point = 'KWH' and SUBSTRING_INDEX(device_number, '_', 1) = @building_tag
 | 
			
		||||
 		                            where start_timestamp >= @startTime and end_timestamp < @endTime and point = 'KWH' {buildingSql}
 | 
			
		||||
                                    {sqlWhere} {sqlGroup}
 | 
			
		||||
                            ) aemm on aemm.start_timestamp >= {aemmStaDate} and aemm.end_timestamp < {aemmEndDate} and aemm.device_number = fd.device_number
 | 
			
		||||
                            order by fd.device_number, fd.date";
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user