满意度调查相关表.sql 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. /************************************************************************/
  2. /*
  3. 程序编写: Jeff
  4. 版 本: V 1.0
  5. 建立日期: 2015-05-23
  6. 功能说明: 满意度调查相关表;
  7. 备 注:
  8. 修改日期:
  9. 修改说明:
  10. */
  11. /************************************************************************/
  12. use [db]
  13. go
  14. set ansi_nulls on
  15. go
  16. set quoted_identifier on
  17. go
  18. set ansi_padding on
  19. go
  20. /************************************************************************/
  21. /*
  22. 表 名:SatisfactionObj 暂时没用到
  23. 表描述:调查对象表(物理表);
  24. 表架构:
  25. 此表,属于第一表;
  26. 满意度调查,首先要有调查的对象;
  27. 而影楼满意度调查的对象是在订单流水线上的任何员工,商品,服务项等等;
  28. 调查对象的名称[sfnobjname]字段:
  29. 1.当[sfnobjkind]字段==0,表示的是员工部门职位(如化妆师,门市,摄影师,数据师等职位),而非具体某个员工;
  30. 2.当[sfnobjkind]字段==1,表示的是某分类的商品集合(如相框,相册,摆台等分类),而非具体某件商品(若为某个具体商品,表记录会非常多);
  31. 3.当[sfnobjkind]字段==2,当服务项没有分类时,可以为某个具体的服务项名称;
  32. [sfnobjid]字段总结: 是职位表,商品分类表,服务项(服务项若归类到商品表,可忽略)表的主键ID;
  33. [sfnobjname]字段总结: 是职位表,商品分类表,服务项(服务项若归类到商品表,可忽略)表的主键ID对应的描述字段;
  34. Remark A:
  35. 第一版数据库(V1.0)并没有[员工职位表],同时服务项也不归类到商品表中,
  36. 所以没办法使用[员工职位表]和[商品类别表]创建一个调查对象视图,否则完全可以使用这两个表创建的视图来代替;
  37. */
  38. /************************************************************************/
  39. if not exists(select * from dbo.sysobjects where id = object_id(N'SurveyObject') and objectproperty(id,'IsTable') = 1)
  40. begin
  41. create table [dbo].[SurveyObject](
  42. [ObjID] [int] identity(1,1) not null, -- 调查对象ID;
  43. [SvrKind] [tinyint] not null, -- 服务类型的类别(订单中所有可能的事物):0,员工类型; 1,物品类别; 2,服务内容类别; 3,待定类别;
  44. -- 设置主键;
  45. constraint [PK_SurveyObject] primary key clustered
  46. (
  47. [ObjID] asc
  48. ) with (pad_index = off, statistics_norecompute = off, ignore_dup_key = off,allow_row_locks = on,allow_page_locks = on) on [primary],
  49. -- 设置UNIQUE约束键;
  50. constraint [UK_SurveyObject] unique nonclustered
  51. (
  52. [SvrKind] asc
  53. ) with (pad_index = off, statistics_norecompute = off, ignore_dup_key = off,allow_row_locks = on,allow_page_locks = on) on [primary]
  54. ) on [primary]
  55. end
  56. go
  57. /************************************************************************/
  58. /*
  59. 表 名:SatisfactionSvrKind
  60. 表描述:满意项配置表(物理表);
  61. 表架构:
  62. 针对[SatisfactionObj]表每个调查对象定义的满意项内容;
  63. */
  64. /************************************************************************/
  65. if not exists(select * from dbo.sysobjects where id = object_id(N'SatisfactionSvrKind') and objectproperty(id,'IsTable') = 1)
  66. begin
  67. create table [dbo].[SatisfactionSvrKind](
  68. [SvrKind] [tinyint] identity(1,1) not null, -- 服务的类别(订单中所有可能的事物):0,员工类型; 1,物品类别; 2,服务内容类别; 3,待定类别;
  69. -- 1,门市 2,接待 3,化妆 4,摄影 5,数码 6,选片 7,产品 8,物品类别 9,服务内容类别
  70. [KindName] [nvarchar](24) not null, -- 类型名,如:门市, 接待, 化妆, 摄影...
  71. [KindDesc] [nvarchar](512) null, -- 类型描述;
  72. -- 设置主键;
  73. constraint [PK_SatisfactionSvrKind] primary key clustered
  74. (
  75. [SvrKind] asc
  76. ) with (pad_index = off, statistics_norecompute = off, ignore_dup_key = off,allow_row_locks = on,allow_page_locks = on) on [primary]
  77. ) on [primary]
  78. end
  79. go
  80. /************************************************************************/
  81. /*
  82. 表 名:SatisfactionCfg
  83. 表描述:满意项配置表(物理表);
  84. 表架构:
  85. 针对[SatisfactionObj]表每个调查对象定义的满意项内容;
  86. */
  87. /************************************************************************/
  88. if not exists(select * from dbo.sysobjects where id = object_id(N'SatisfactionCfg') and objectproperty(id,'IsTable') = 1)
  89. begin
  90. CREATE TABLE [dbo].[SatisfactionCfg](
  91. [cfgID] [int] IDENTITY(1,1) NOT NULL, -- 配置项ID
  92. [SvrKind] [tinyint] NOT NULL, -- 服务的类别(订单中所有可能的事物):0,员工类型; 1,物品类别; 2,服务内容类别; 3,待定类别;
  93. -- 1,门市 2,接待 3,化妆 4,摄影 5,数码 6,选片 7,产品 8,物品类别 9,服务内容类别
  94. [KindName] [nvarchar](24) NOT NULL, -- 类型名,如:门市, 接待, 化妆, 摄影...
  95. [MaxScore] [tinyint] NOT NULL DEFAULT ((1)), -- 自定义满意项指数值(最高分数值);
  96. [TypeID] [tinyint] NOT NULL DEFAULT ((1)), -- 评分类型
  97. [IsEnable] [tinyint] NOT NULL DEFAULT ((1)), -- 自定义满意项是否启用;(1可用,0不可用)
  98. [sfncfgDesc] [nvarchar](512) NULL, -- 自定义满意项描述;
  99. CONSTRAINT [PK_SatisfactionCfg] PRIMARY KEY CLUSTERED
  100. (
  101. [cfgID] ASC
  102. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  103. ) ON [PRIMARY]
  104. end
  105. go
  106. /************************************************************************/
  107. /*
  108. 表 名:SatisfactionScoreType
  109. 表描述:评分类型(物理表);如:按分数(1),中文(2),图形(3)
  110. 表架构:
  111. 对[SatisfactionObj]的每条评分的分数表现类型
  112. */
  113. /************************************************************************/
  114. if not exists(select * from dbo.sysobjects where id = object_id(N'SatisfactionScoreType') and objectproperty(id,'IsTable') = 1)
  115. begin
  116. CREATE TABLE [dbo].[SatisfactionScoreType](
  117. [TypeID] [tinyint] IDENTITY(1,1) NOT NULL, -- ID
  118. [TypeName] [nvarchar](16) NOT NULL, -- 类型名
  119. [Section1] [tinyint] NOT NULL DEFAULT ((0)), -- 得分段<60, 60~89, 90~100
  120. [Section2] [tinyint] NOT NULL DEFAULT ((0)), -- 得分段<60, 60~89, 90~100
  121. [Section3] [tinyint] NOT NULL DEFAULT ((0)), -- 得分段<60, 60~89, 90~100
  122. [Section4] [tinyint] NOT NULL DEFAULT ((0)), -- 得分段<60, 60~89, 90~100
  123. [Section5] [tinyint] NOT NULL DEFAULT ((0)), -- 得分段<60, 60~89, 90~100
  124. -- 设置主键;
  125. CONSTRAINT [PK_SatisfactionScoreType] PRIMARY KEY CLUSTERED
  126. (
  127. [TypeID] ASC
  128. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  129. ) ON [PRIMARY]
  130. end
  131. go
  132. /************************************************************************/
  133. /*
  134. 表 名:SatisfactionSurvey
  135. 表描述:满意度调查记录表 (员工+商品+服务满意度记录表);
  136. 表架构:
  137. 实际的调查对象,不仅员工,也有物品,服务内容;
  138. Remark A:
  139. V1.0版本数据库或者后来版本的,于该表都是通过触发器来自动生成满意度记录表;
  140. */
  141. /************************************************************************/
  142. if not exists(select * from dbo.sysobjects where id = object_id(N'SatisfactionSurvey') and objectproperty(id,'IsTable') = 1)
  143. begin
  144. CREATE TABLE [dbo].[SatisfactionSurvey](
  145. [SurveyLogID] [int] IDENTITY(1,1) NOT NULL, -- 调查记录ID
  146. [cfgID] [int] NOT NULL, -- 配置项ID
  147. [ObjID] [nvarchar](50) NOT NULL, -- 调查对象ID;
  148. [ObjName] [nvarchar](50) NOT NULL, -- 调查对象
  149. [OrderID] [nvarchar](50) NOT NULL, -- 订单号
  150. [Score] [int] NOT NULL, -- 得分
  151. [State] [nvarchar](24) NOT NULL, -- 状态
  152. [SurveyTime] [nvarchar](24) NULL, -- 调查日期;
  153. [SurveyCS] [nvarchar](24) NULL, -- 执行调查的客服;
  154. CONSTRAINT [PK_SatisfactionSurvey] PRIMARY KEY CLUSTERED
  155. (
  156. [SurveyLogID] ASC
  157. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
  158. CONSTRAINT [UK_SatisfactionSurvey] UNIQUE NONCLUSTERED
  159. (
  160. [SurveyLogID] ASC
  161. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  162. ) ON [PRIMARY]
  163. end
  164. go
  165. set ansi_padding off