助力工业物联网,工业大数据之客户回访事实指标需求分析【二十三】

news2024/11/24 20:45:15

文章目录

    • 1:客户回访事实指标需求分析
    • 2:客户回访事实指标

1:客户回访事实指标需求分析

  • 目标掌握DWB层客户回访事实指标表的需求分析

  • 路径

    • step1:目标需求
    • step2:数据来源
  • 实施

    • 目标需求:基于客户回访数据统计工单满意数量、不满意数量、返修数量等指标

      image-20211003174758208

    • 数据来源

      • ciss_service_return_visit:回访信息表

        select
            id,--回访id
            code,--回访编号
            workorder_id,--工单id
            create_userid, --回访人员id
            service_attitude,--服务态度
            response_speed,--响应速度
            repair_level,--服务维修水平
            is_repair --是否返修
        from ciss_service_return_visit;
        
        • 1:满意
        • 0:不满意
      • ciss_service_workorder:服务工单信息表

        select
            id,--工单id
            service_userid,--工程师id
            service_station_id,--服务站点id
            oil_station_id --油站id
        from ciss_service_workorder;
        
  • 小结

    • 掌握DWB层客户回访事实指标表的需求分析

2:客户回访事实指标

  • 目标实现DWB层客户回访事实指标表的构建

  • 实施

    • 建表

      -- 创建客户回访实时表
      drop table if exists one_make_dwb.fact_srv_rtn_visit;
      create table if not exists one_make_dwb.fact_srv_rtn_visit(
          vst_id string comment '回访id'
          , vst_code string comment '回访编号'
          , wrkodr_id string comment '工单id'
          , srv_user_id string comment '服务人员用户id'
          , os_id string comment '油站id'
          , ss_id string comment '服务网点id'
          , vst_user_id string comment '回访人员id'
          , satisfied_num int comment '满意数量'
          , unsatisfied_num int comment '不满意数量'
          , srv_atu_num int comment '服务态度满意数量'
          , srv_bad_atu_num int comment '服务态度不满意数量'
          , srv_rpr_prof_num int comment '服务维修水平满意数量'
          , srv_rpr_unprof_num int comment '服务维修水平不满意数量'
          , srv_high_res_num int comment '服务响应速度满意数量'
          , srv_low_res_num int comment '服务响应速度不满意数量'
          , rtn_rpr_num int comment '返修数量'
      ) comment '客户回访事实表'
      partitioned by (dt string)
      stored as orc
      location '/data/dw/dwb/one_make/fact_srv_rtn_visit';
      
    • 抽取

      insert overwrite table one_make_dwb.fact_srv_rtn_visit partition(dt = '20210101')
      select
          visit.id vst_id                         --回访id
      	, visit.code vst_code                   --回访编号
      	, visit.workorder_id wrkodr_id          --工单id
      	, swo.service_userid srv_user_id        --工程师id
      	, swo.oil_station_id os_id              --油站id
      	, swo.service_station_id ss_id          --服务网点id
      	, visit.create_userid vst_user_id       --回访人员id
      	, satisfied_num                         --满意数量
      	, unsatisfied_num                       --不满意数量
      	, srv_atu_num                           --服务态度满意数量
      	, srv_bad_atu_num                       --服务态度不满意数量
      	, srv_rpr_prof_num                      --服务水平满意数量
      	, srv_rpr_unprof_num                    --服务水平不满意数量
      	, srv_high_res_num                      --服务响应速度满意数量
      	, srv_low_res_num                       --服务响应速度不满意数量
      	, rtn_rpr_num                           --返修数量
      --回访信息表
      from one_make_dwd.ciss_service_return_visit visit
      --工单信息表
      left join one_make_dwd.ciss_service_workorder swo on visit.workorder_id = swo.id
      --获取满意与不满意个数
      left join (
          select visit.workorder_id,
      	    sum(case when visit.service_attitude = 1 and visit.response_speed = 1 and visit.repair_level = 1 then 1 else 0 end) satisfied_num,
      	    sum(case when visit.service_attitude = 0 then 1 when visit.response_speed = 0 then 1 when visit.repair_level = 0 then 1 when visit.yawp_problem_type = 0 then 1 else 0 end) unsatisfied_num,
      	    sum(case when visit.service_attitude = 1 then 1 else 0 end) srv_atu_num,
      	    sum(case when visit.service_attitude = 0 then 1 else 0 end) srv_bad_atu_num,
      	    sum(case when visit.repair_level = 1 then 1 else 0 end) srv_rpr_prof_num,
      	    sum(case when visit.repair_level = 0 then 1 else 0 end) srv_rpr_unprof_num,
      	    sum(case when visit.response_speed = 1 then 1 else 0 end) srv_high_res_num,
      	    sum(case when visit.response_speed = 0 then 1 else 0 end) srv_low_res_num,
      	    sum(case when visit.is_repair = 1 then 1 else 0 end) rtn_rpr_num
          from one_make_dwd.ciss_service_return_visit visit
      	left join one_make_dwd.ciss_service_workorder swo on visit.workorder_id = swo.id
      	where visit.dt = '20210101'
      	group by visit.workorder_id
      ) vstswo on visit.workorder_id = vstswo.workorder_id
      where visit.dt = '20210101'
      ;
      
  • 小结

    • 实现DWB层客户回访事实指标表的构建

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/825522.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis实战(4)——Redisson分布式锁

1 基于互斥命令实现分布式锁的弊端 根据上篇文章基于redis互斥命令实现的分布式锁任然存在一定的弊端 1无法重入: 同一个线程无法重新获得同一把锁2超时删除 :会因为超时、任务阻塞而自动释放锁,出现其他线程抢占锁出现并行导致线程不安全的问题3 不可…

HTML基础介绍1

HTML是什么 1.HTML(HyperText Mark-up Language)即超文本标签语言(可以展示的内容类型很多) 2.HTML文本是由HTML标签组成的文本,可以包括文字、图形、动画、声音、表格、连接等 3.HTML的结构包括头部(He…

AI绘画:当艺术遇见智能

💂 个人网站:【工具大全】【游戏大全】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 前言 随着人工智能技术…

API接口给开发程序提供帮助,API接口应用价值

API可以用于开发使用相同数据的其他应用程序,比如公司,他们可以创建一个API ,允许其他开发人员使用他们的数据并用其做其他事情,可以是 业务相关的 网站也可以是移动应用程序。 公司作为 信息的所有者, 便可以免费或收…

一次有趣的Webshell分析经历

一次有趣的Webshell分析经历 1.拉取源代码2.解密后门代码3.分析webshell逻辑4.分析404的原因5.附:格式化后的php代码 1.拉取源代码 在对某目标做敏感目录收集时发现对方网站备份源代码在根目录下的 backup.tar.gz,遂下载,先使用D盾分析有没有…

JS逆向-小红薯X-S环境分析

目录 前言一、分析二、验证借鉴 前言 听说这是个抓的比较严格的网址,这里就不作太深的分析,仅是将一些环境点给分析出来。 详细的可以看这位大佬的(玩的就是一个风险转移) 小红书x-s新版分析(2023-05-30失效) 一、分析 看波封面…

Python高阶技巧 网络编程

Socket ocket (简称 套接字) 是进程之间通信一个工具,好比现实生活中的插座,所有的家用电器要想工作都是基于插座进行,进程之间想要进行网络通信需要socket。 Socket负责进程之间的网络数据传输,好比数据的搬运工。 客户端和服务…

Element快速入门

文章目录 Element简介快速入门常见组件表格组件Pagination分页Dialog对话框Form表单 案例基本页面布局页面组件实现axios异步加载数据 vue路由打包部署 本人主攻后端,前端的文章基本就用来记一下的 写的文章基本没什么内容,还望看的多包含 Element 简介…

如何在保健品行业运用IPD?

保健品是指能调节机体功能,不以治疗为目的,并且对人体不产生任何急性、亚急性或者慢性危害的产品。保健品是食品的一个种类,具有一般食品的共性,其含有一定量的功效成分,能调节人体的机能,具有特定的功效&a…

使用Goland导出UML类图

1.安装依赖:goplantuml go get github.com/jfeliu007/goplantuml/parser go install github.com/jfeliu007/goplantuml/cmd/goplantumllatest 验证是否安装成功: 在$GOPATH的bin目录下生成.exe可执行文件: 2.在Goland的External Tools中添…

Java课题笔记~ MyBatis的工作流程和核心对象

一、工作流程 MyBatis的工作流程是MyBatis中重要的知识点,整个MyBatis工作流程分为5个步骤。 编写配置文件与映射文件:配置文件设置数据库连接;映射文件设置与SQL文件相关的操作。 MyBatis通过配置文件和映射文件生成SqlSessionFactory对象…

【第四版】 信息系统项目管理高级(高项)--第五章 信息系统工程 知识点逻辑思维导图

第五章 信息系统工程 Part1 软件工程 一、架构设计 1.软件架构目的:解决好软件的复用、质量、维护问题2.软件架构风格 数据流风格:批处理序列、管道/过滤器调用/返回风格:主程序/子程序独立构建风格:通信工程、事件驱动虚拟机风格…

年龄大了转嵌入式有机会吗?

首先,说下结论:年龄并不是限制转行嵌入式软件开发的因素,只要具备一定的编程和电子基础知识,认真学习和实践,是可以成为优秀的嵌入式软件开发工程师的。 1、转行建议 在转行的初期阶段,需要耐心学习嵌入式…

测试|LoadRunner安装及介绍

测试|LoadRunner安装及介绍 文章目录 测试|LoadRunner安装及介绍1.什么是LoadRunner2.LoadRunner特点3.LoadRunner基本概念4.LoadRunner三大组件之间关系LoadRunner安装1.安装包2.安装loadrunner 1.什么是LoadRunner LoadRunner是用来模拟用户负载完成性能测试的工具。 它适用…

Ubuntu安装Anaconda并配置Python虚拟环境

目录 1、Anaconda 1.1、下载Anaconda安装包 1.2、安装Anaconda 2、Python虚拟环境 1、Anaconda 1.1、下载Anaconda安装包 这是清华的下载镜像列表: Index of /https://repo.anaconda.com/archive/我们下载的是Anaconda3-2023.07-1-Linux-x86_64.sh版本。 ht…

【深度学习】Transformer,Self-Attention,Multi-Head Attention

必读文章: https://blog.csdn.net/qq_37541097/article/details/117691873 论文名:Attention Is All You Need 文章目录 1、Self-Attention 自注意力机制2、Multi-Head Attention 1、Self-Attention 自注意力机制 Query(Q)表示当…

【秋招】算法岗的八股文之机器学习

目录 机器学习特征工程常见的计算模型总览线性回归模型与逻辑回归模型线性回归模型逻辑回归模型区别 朴素贝叶斯分类器模型 (Naive Bayes)决策树模型随机森林模型支持向量机模型 (Support Vector Machine)K近邻模型神经网络模型卷积神经网络(CNN)循环神经…

MPLS虚拟专用网跨域--OptionB方案

OptionB方案 跨域VPN-OptionB中,两个ASBR通过MP-EBGP交换它们从各自AS的PE设备接收的标签VPN-IPv4路由。图中,VPN LSP表示私网隧道,LSP表示公网隧道。 跨域VPN-OptionB方案中,ASBR接收本域内和域外传过来的所有跨域VPN-IPv4路由,再把VPN-IPv4路由发布出去。但MPLS VPN的…

item_get-小红薯-商品详情

一、接口参数说明: item_get-获得小红薯商品详情,点击更多API调试,请移步注册API账号点击获取测试key和secret 公共参数 名称类型必须描述keyString是调用key(http://o0b.cn/iimiya)secretString是调用密钥api_nameS…

JVM之内存结构

1.程序计数器 定义:程序计数器(Program Counter Register)是JVM中一块较小的内存空间。解释器在解释JVM指令为机器码以供CPU执行时,会去程序计数器当中找到jvm指令的执行地址。 作用:记住下一条jvm指令的执行地址 特…