思念食品API

sql_20180530_extcallout.sql 7.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. 
  2. /****** Object: Trigger [dbo].[Table_UpdateCallOutRecordList] Script Date: 05/30/2018 09:35:42 ******/
  3. SET ANSI_NULLS ON
  4. GO
  5. SET QUOTED_IDENTIFIER ON
  6. GO
  7. -- =============================================
  8. -- Author: <赵鹏举>
  9. -- Create date: <2016-04-07>
  10. -- Description: <外线呼出后,向数据库中插入记录>
  11. -- Author: <郑兵兵>
  12. -- Update date: <2018-05-30>
  13. -- Description: <通话记录表增加坐席组的记录,方便分组查询记录使用>
  14. -- =============================================
  15. ALTER TRIGGER[dbo].[Table_UpdateCallOutRecordList] ON [dbo].[rep_ext_call_out]
  16. AFTER INSERT
  17. AS
  18. BEGIN
  19. declare @telphone nvarchar(50) --读取被叫号码
  20. declare @userid int
  21. declare @username nvarchar(50)
  22. declare @usercode nvarchar(50)
  23. declare @seatcode nvarchar(50)
  24. --读取插入记录的类型和坐席
  25. SELECT @usercode=cast(INSERTED.CallerAgentID as varchar(50)),@telphone=CalleeNum FROM INSERTED
  26. --读取坐席对应信息
  27. select @userid=F_Userid,@username=F_UserName from T_Sys_UserAccount where F_UserCode=@usercode
  28. --读取坐席对应坐席组
  29. select @seatcode=dbo.GetSeatCodeByUserCode(@usercode)
  30. declare @tel1 nchar(1)--截取号码第一位
  31. declare @tel2 nchar(2)--截取号码第一位
  32. select @tel1=LEFT(@telphone,1),@tel2=LEFT(@telphone,2)
  33. if LEN(@telphone)>9 --and @tel1<>'1'
  34. begin --判断号码大于9位数的,即为带区号的固定电话
  35. if @tel1<>'1'
  36. begin--首位不是1
  37. set @telphone='0'+@telphone
  38. end
  39. else
  40. begin
  41. if @tel2='10'
  42. begin --针对北京区号010,增加前缀
  43. set @telphone='0'+@telphone
  44. end
  45. end
  46. end
  47. INSERT INTO dbo.T_Call_CallRecords
  48. ( CallId ,
  49. CallNumber ,
  50. CallType ,
  51. CallState ,
  52. DealType ,
  53. BeginTime ,
  54. RingStartTime,
  55. RingEndTime,
  56. TalkStartTime ,
  57. TalkEndTime,
  58. EndTime ,
  59. TalkLongTime ,
  60. UserId,
  61. UserName,
  62. UserCode ,
  63. ExtNumber,
  64. FilePath ,
  65. IsDeal ,
  66. OperateType ,
  67. TaskType,
  68. TaskPhoneID,
  69. TaskID,
  70. ActionID,
  71. ActionType,
  72. groupcode
  73. )
  74. SELECT CallID ,
  75. @telphone ,
  76. 1 ,
  77. IsCallOutSucceed ,
  78. 6 ,
  79. TimeRingBack ,
  80. DATEADD(s, 2, INSERTED.TimeRingBack),
  81. DATEADD(s, -1, INSERTED.TimeConnected),
  82. TimeConnected,
  83. DATEADD(s, INSERTED.PeriodTalking, INSERTED.TimeConnected),
  84. TimeHangUp,
  85. PeriodTalking ,
  86. @userid,
  87. @username,
  88. CallerAgentID ,
  89. CallerNum,
  90. RecFileName ,
  91. 1,
  92. 0,
  93. inserted.TaskType,
  94. inserted.TaskPhoneID,
  95. inserted.TaskID,
  96. inserted.ActionID,
  97. 1,
  98. @seatcode
  99. FROM INSERTED --where ActionID=1
  100. END