Browse Source

新增个人呼叫统计

anderx 1 year ago
parent
commit
51ceaa0698

+ 7 - 2
src/main/java/com/goafanti/admin/service/impl/AdminStatisticsServiceImpl.java

@@ -63,8 +63,13 @@ public class AdminStatisticsServiceImpl implements AdminStatisticsService {
         adminStatisticsBo.setRangeReceivables(rangeReceivables);
         //添加外呼数据
         AdminStatisticsBo as=callLogMapper.selectAdminCallSum(aid,startTime,endTime);
-        if (as.getCallSum()!=null)adminStatisticsBo.setCallSum(as.getCallSum());
-        if (as.getCallDurationSum()!=null)adminStatisticsBo.setCallDurationSum(as.getCallDurationSum());
+        if (as !=null){
+            if (as.getCallSum()!=null)adminStatisticsBo.setCallSum(as.getCallSum());
+            if (as.getCallDurationSum()!=null)adminStatisticsBo.setCallDurationSum(as.getCallDurationSum());
+        }else {
+            adminStatisticsBo.setCallSum(0);
+            adminStatisticsBo.setCallDurationSum(BigDecimal.ZERO);
+        }
         return adminStatisticsBo;
     }
 

+ 3 - 3
src/main/java/com/goafanti/common/mapper/CallLogMapper.xml

@@ -194,17 +194,17 @@
         where uid = #{uid}
     </select>
     <select id="selectAdminCallSum" resultType="com.goafanti.admin.bo.AdminStatisticsBo">
-        SELECT x.id,sum(x.duration) callDurationSum,count(*)counts callSum
+        SELECT x.id,sum(x.duration) callDurationSum,count(*) callSum
         from (SELECT a.id,b.duration ,b.create_time
               from admin a  left join call_log b on a.id =b.aid
               where  b.duration >0
         <if test="aid ==null">
             and   a.call_no >0
         </if>
-        <if test="aid ==null">
+        <if test="aid !=null">
             and a.id= #{aid}
         </if>
-        <if test="startTime !=null">
+        <if test="startTime !=null and endTime !=null">
             and   b.create_time BETWEEN #{startTime} and #{endTime}
         </if>
                 )x group by x.id