shudonghui 1 rok pred
rodič
commit
f677356ee4

+ 14 - 0
sop-api/src/main/java/com/qmth/sop/server/api/CrmAnalyseController.java

@@ -181,5 +181,19 @@ public class CrmAnalyseController {
         return ResultUtil.ok(resultIPage);
     }
 
+    //派单累计 服务人员累计
+    @Aac(auth=false)
+    @ApiOperation(value = "派单累计 服务人员累计")
+    @RequestMapping(value = "/project/count", method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "项目派单完成率详细", response = CrmAnalyseResult.class)})
+    public Result projectCount(@ApiParam(value = "开始时间", required = true) @RequestParam Long startTime,
+                                @ApiParam(value = "结束时间", required = true) @RequestParam Long endTime) {
+        Map<String,Object> map = crmAnalyseService.projectCount(startTime, endTime);
+
+        return ResultUtil.ok(map);
+    }
+
+
+
 
 }

+ 2 - 0
sop-business/src/main/java/com/qmth/sop/business/mapper/CrmAnalyseMapper.java

@@ -52,4 +52,6 @@ public interface CrmAnalyseMapper extends BaseMapper<TBCrm> {
     }
 
     List<CrmAnalyseResult> project(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+
+    Map<String, Object> projectCount(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
 }

+ 1 - 0
sop-business/src/main/java/com/qmth/sop/business/service/CrmAnalyseService.java

@@ -37,4 +37,5 @@ public interface CrmAnalyseService extends IService<TBCrm> {
 
     IPage<TBCrmResult> projectDetail(Page<Object> objectPage, Long startTime, Long endTime, Long serviceId);
 
+    Map<String, Object> projectCount(Long startTime, Long endTime);
 }

+ 5 - 0
sop-business/src/main/java/com/qmth/sop/business/service/impl/CrmAnalyseServiceImpl.java

@@ -80,4 +80,9 @@ public class CrmAnalyseServiceImpl extends ServiceImpl<CrmAnalyseMapper, TBCrm>
     public IPage<TBCrmResult> projectDetail(Page<Object> iPage, Long startTime, Long endTime, Long serviceId) {
         return this.baseMapper.crmDetail(iPage,serviceId,startTime,endTime);
     }
+
+    @Override
+    public Map<String, Object> projectCount(Long startTime, Long endTime) {
+        return this.baseMapper.projectCount(startTime,endTime);
+    }
 }

+ 20 - 0
sop-business/src/main/resources/mapper/CrmAnalyseMapper.xml

@@ -239,4 +239,24 @@
         ORDER BY
         a.create_time DESC
     </select>
+
+    <select id="projectCount" resultType="java.util.Map">
+        SELECT
+        COUNT( c.id ) crm,
+        count( a.id ) person
+        FROM
+        t_b_service s
+        LEFT JOIN t_b_crm c ON c.service_id = s.id
+        LEFT JOIN t_b_user_archives_allocation a ON a.service_id = s.id
+        <where>
+            <if test="startTime != null">
+                AND s.start_time >= #{startTime}
+            </if>
+            <if test="endTime != null">
+                AND #{endTime} >= s.start_time
+            </if>
+
+        </where>
+    </select>
+
 </mapper>