1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- using Quartz;
- using System;
- using System.Collections.Generic;
- using System.Configuration;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using XYY.Tool.QuotaReduction;
- namespace XYY.Tool.TimingTask.jobs
- {
- public class QuotaReductionJob : IJob
- {
- public Task Execute(IJobExecutionContext context)
- {
- int count = 0; bool isSucess = false;string msg = string.Empty;
- DateTime startTime =Convert.ToDateTime(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"));
- DateTime endTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd"));
- do{
- try
- {
- RestSharp.RestClient client = new RestSharp.RestClient(JobConfig.QuotaReductionJobApi+ $"?startTime={startTime}&endTime={endTime}");
- RestSharp.RestRequest request = new RestSharp.RestRequest(RestSharp.Method.POST);
- request.AddHeader("Authorization", "token 57AEDE5487260443D6BF2182D31286B1");
- var response = client.Execute(request);
- if (response.StatusCode == System.Net.HttpStatusCode.OK)
- {
- isSucess = true;
- }
- else
- {
- count++;
- }
- }
- catch (Exception ex)
- {
- count++;
- }
- //重复赋值,取最后一次错误
- msg = $"授信数据还原:" + JobConfig.QuotaReductionJobApi + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + " "
- + $"{((count == 0 || count == 1) ? "首次请求" : "请求次数:" + count)},请求结果为{isSucess}";
- Console.WriteLine(msg);
- //睡眠再继续
- if (count <= JobConfig.QuotaReductionJobTryTime && !isSucess) { Thread.Sleep(JobConfig.QuotaReductionJobTryTimeInterval); }
- }
- while (count <= JobConfig.QuotaReductionJobTryTime&& !isSucess) ;
- //失败请求,发送钉钉消息
- if (!isSucess) { dingApiRequest.sendDingMessageToChat("QuotaReductionJob", msg); }
- return null;
- }
- }
- }
|