浏览代码

水质安全和售水修改

yuejiaying 4 年之前
父节点
当前提交
61438cd0c1

+ 8 - 0
sms_water/src/main/java/com/huaxu/service/impl/HomePageReportServiceImpl.java

@@ -191,24 +191,32 @@ public class HomePageReportServiceImpl implements HomePageReportService {
             waterQualityRate.setPipeNetworkQuality(pipeNetworkQuality.getAverageQuality());
             waterQualityRate.setPipeNetworkAbnormal(pipeNetworkQuality.getAbnormal());
             waterQualityRate.setAverageQuality(pipeNetworkQuality.getAverageQuality());
+        }else{
+            waterQualityRate.setAverageQuality(new BigDecimal("100"));
         }
         if(waterSourceQuality != null){
             waterQualityRate.setAbnormal(waterQualityRate.getAbnormal()+waterSourceQuality.getAbnormal());
             waterQualityRate.setWaterSourceQuality(waterSourceQuality.getAverageQuality());
             waterQualityRate.setWaterSourceAbnormal(waterQualityRate.getAbnormal());
             waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(waterSourceQuality.getAverageQuality()));
+        }else{
+            waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(new BigDecimal("100")));
         }
         if(waterFactoryQuality != null){
             waterQualityRate.setAbnormal(waterQualityRate.getAbnormal()+waterFactoryQuality.getAbnormal());
             waterQualityRate.setWaterFactoryQuality(waterFactoryQuality.getAverageQuality());
             waterQualityRate.setWaterFactoryAbnormal(waterFactoryQuality.getAbnormal());
             waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(waterFactoryQuality.getAverageQuality()));
+        }else{
+            waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(new BigDecimal("100")));
         }
         if(pumpingStationQuality != null){
             waterQualityRate.setAbnormal(waterQualityRate.getAbnormal()+pumpingStationQuality.getAbnormal());
             waterQualityRate.setPumpingStationQuality(pumpingStationQuality.getAverageQuality());
             waterQualityRate.setPumpingStationAbnormal(pumpingStationQuality.getAbnormal());
             waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(pumpingStationQuality.getAverageQuality()));
+        }else{
+            waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().add(new BigDecimal("100")));
         }
         waterQualityRate.setAverageQuality(waterQualityRate.getAverageQuality().divide(new BigDecimal("4"),3,BigDecimal.ROUND_HALF_UP));
 

+ 14 - 4
sms_water/src/main/resources/mapper/RevenueMapper.xml

@@ -4,9 +4,8 @@
     <!--查询本月售水信息-->
     <select id="selectMonthSell" resultType="com.huaxu.dto.MonthSellwaterDto">
         select t2.property_name ,sum(t1.water_usage) water_usage
-        from sms_month_sellwater t1
-        inner join sms_water_property t2 on t1.property_id=t2.id
-        where t1.collect_date>=date_format(curdate(), '%Y-%m' )
+        from sms_water_property t2
+        left join sms_month_sellwater t1 on t1.property_id=t2.id and t1.collect_date>=date_format(curdate(), '%Y-%m' )
         <if test="tenantId != null and tenantId != ''">
             and t1.tenant_id=#{tenantId}
         </if>
@@ -21,8 +20,19 @@
                 </foreach>
             </if>
         </if>
+        inner join (
+            select distinct property_id
+            from sms_month_sellwater
+            where 1=1
+            <if test="tenantId != null and tenantId != ''">
+                and tenant_id=#{tenantId}
+            </if>
+            <if test="companyOrgId != null and companyOrgId !=''">
+                and company_org_id=#{companyOrgId}
+            </if>
+        )t3 on t2.id=t3.property_id
         group by t2.property_name
-        order by water_usage desc
+        order by water_usage desc,t2.property_name
     </select>
 
     <!--查询近6个月的售水量-->