提交脚本
This commit is contained in:
parent
63e6627037
commit
069002afbe
|
@ -14,4 +14,103 @@ GO
|
|||
insert into sys_menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
|
||||
values('F2133BD6-C786-407A-AD6F-3EEF613229A8','施工管理绩效数据','ZHGL/Performance/PerformanceAllData.aspx',150,
|
||||
'0','Menu_ZHGL','1','1','1')
|
||||
GO
|
||||
|
||||
|
||||
ALTER PROCEDURE [dbo].[Proc_CallWebApi]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@userId NVARCHAR(2000),--需要发送订阅者的userid(逗号分隔)
|
||||
@thing2 nvarchar(2000),--发送的消息内容
|
||||
@name1 nvarchar(50),--发起人
|
||||
@date3 datetime,--发送的日期
|
||||
@projectName nvarchar(200),
|
||||
@ResponseText NVARCHAR(4000) OUTPUT
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- Insert statements for procedure here
|
||||
DECLARE @data varchar(8000);
|
||||
DECLARE @ApiUrl VARCHAR(200);
|
||||
DECLARE @RequestType VARCHAR(5);--请求类型:POST,GET
|
||||
DECLARE @date2 varchar(100);
|
||||
set @date2 = CONVERT(varchar(100), @date3, 23)
|
||||
--API地址
|
||||
set @ApiUrl='http://localhost:7040/api/Common/postSubscribeMessage';
|
||||
--set @ApiUrl='https://zhgd.cwcec.com/sgglapi_wx/api/Common/postSubscribeMessage';
|
||||
set @RequestType='POST';
|
||||
|
||||
--发送数据
|
||||
set @data='{
|
||||
"touser":"'+@userId+'",
|
||||
"template_id":"1gT0FfTc2LwnnqUCU8h_nXDyv8VGtne1Iolo47gPA0c",
|
||||
"page":"pages/index/index",
|
||||
"data":{
|
||||
"thing3":{"value":"您今日的施工绩效尚未填写"},
|
||||
"thing13":{"value":"系统管理员"},
|
||||
"time5":{"value":"'+@date2+'"}
|
||||
}
|
||||
}'; --入参
|
||||
|
||||
Declare @Object as Int
|
||||
Exec sp_OACreate 'Msxml2.ServerXMLHTTP.3.0', @Object OUT
|
||||
Exec sp_OAMethod @Object, 'open', NULL, @RequestType,@ApiUrl,'false'
|
||||
IF @RequestType='POST'
|
||||
BEGIN
|
||||
Exec sp_OAMethod @Object, 'setRequestHeader', NULL, 'Content-Type','application/json'
|
||||
|
||||
END
|
||||
Exec sp_OAMethod @Object, 'setRequestHeader', NULL, 'token','C4A62EC0-E5D3-4EBF-A5FA-E56AA89633C0'
|
||||
Exec sp_OAMethod @Object, 'send', NULL, @data --发送数据
|
||||
Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
|
||||
--EXEC sp_OAGetErrorInfo @Object --异常输出
|
||||
--Select @ResponseText as ResponseText
|
||||
--Select * from [dbo].[ParseJSON](@ResponseText)
|
||||
Exec sp_OADestroy @Object
|
||||
|
||||
END
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
--每天下午4点定时执行,查询所有施工绩效表,当天没有填写数据的人,然后推送
|
||||
ALTER PROCEDURE [dbo].[Sp_APP_PerformanceByTime]
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
declare @ResponseText NVARCHAR(4000);
|
||||
DECLARE @PostUserid nvarchar(2000);
|
||||
declare @UserOpenid nvarchar(50);
|
||||
declare @Projectname nvarchar(200);
|
||||
--定义游标查询
|
||||
DECLARE @Userid nvarchar(50);--用户id
|
||||
DECLARE @ProjectId nvarchar(50);--
|
||||
DECLARE My_Cursor CURSOR --定义游标
|
||||
FOR ( select Top 1 Child3.CreateMan,Perfor.ProjectId from CQMS_Performance_Child3 Child3
|
||||
LEFT JOIN CQMS_Performance as Perfor ON Perfor.PerformanceGid=Child3.PerformanceGid
|
||||
|
||||
where Child3.WorkPlan=''
|
||||
and CONVERT(varchar(100), Child3.CurrentDate, 23)=CONVERT(varchar(100), GETDATE(), 23) )
|
||||
OPEN My_Cursor;--打开游标
|
||||
FETCH NEXT FROM My_Cursor INTO @Userid,@ProjectId;--读取第一行数据
|
||||
WHILE @@FETCH_STATUS=0
|
||||
--这里对游标的状态进行判断,如果为0,证明游标中有值
|
||||
BEGIN
|
||||
declare @dateNow datetime;
|
||||
set @dateNow=getdate();
|
||||
select @UserOpenid=openid from sys_user where userid=@Userid;
|
||||
select @Projectname=ShortName from Base_Project where projectid=@ProjectId;
|
||||
--执行推送api存储过程
|
||||
exec Proc_CallWebApi @UserOpenid,'您今日的施工绩效尚未填写','系统管理员',@dateNow,@Projectname,@ResponseText output;
|
||||
FETCH NEXT
|
||||
FROM
|
||||
My_Cursor INTO @Userid,@ProjectId;
|
||||
|
||||
END CLOSE My_Cursor;--关闭游标
|
||||
DEALLOCATE My_Cursor;--释放游标
|
||||
END
|
||||
GO
|
Loading…
Reference in New Issue