根据时间窗滚动查询变动的Offer信息
POST
/TenantBaseExternal/api/v5/Offer/GetByTimeWindow
2.主要用于全量数据查询
2.每批次数据量必须小于等于300
3.滚动查询有过期时间限制。两次滚动查询接口调用间隔不能超出10秒,超出间隔后,查不到下批次数据。故必须通过while循环查出全部数据后再处理具体业务。
4.滚动查询不能跳页,拿了第一页后要拿第三页,滚动查询不支持
5.滚动查询不能回跳,拿了第三页之后要跳回第二页,滚动查询不支持
6.使用滚动查询而非分页查询,是为了防止大批量获取数据时,深分页导致超时
2.默认排序条件:若排序参数为空,则默认先按照创建时间升序
3.Offer的简历信息URL(ResumeUrl)、附件URL(Attachment)、面试评价(EvaluationUrl)为系统内部加密字段,外部无法访问,故不支持返回
错误码示例
"scrollId": null,
"isLastData": false,
"total": 0,
"data": null,
"code": "417",
"message": "StartTime需大于等于1900-01-01的时间"
}
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://openapi.italent.cn/TenantBaseExternal/api/v5/Offer/GetByTimeWindow' \
--header 'Content-Type: application/json' \
--data-raw '//示例请求参数
{
"offerStatus": [1], //查询待发状态
"timeWindowQueryType": 1, //时间窗查询类型
"startTime": "2021-06-01", //时间范围开始时间
"stopTime": "2021-07-21", //时间范围结束时间
"capacity": 100, //每批次数目
"columns": null, //查询列
"extQueries": [//自定义字段查询条件
{
"fieldName": "extExtQueryFloat_127666_832132060",
"queryType": 5,//等于
"values": [
"1"
]
},
{
"fieldName": "extExtQueryText_127666_1870946722",
"queryType": 6,//不等于
"values": [
"文本1"
]
},
{
"fieldName": "extExtQueryInt_127666_637453549",
"queryType": 7,//区间
"values": [
"1",
"1000"
],
"includeLowerValue": true,//包含最小值
"includeUpperValue": false//不包含最大值
}
],
"isWithDeleted": false,
"enableTranslate": true, //开启数据源自动翻译功能
"sort": {
"Name": 1
}, //排序
"scrollId": "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAVrsaUWdnVycEd3OEFRRm02aEpHRFZQZ2htdw=="//本批次的ScrollId
}
------------------------------------------------------
//do-while调用Scroll接口示例
var allData = new List<XXXQueryV5ResultDTO>();//用于保存全部数据
string scrollId = null;//下批次滚动ID
bool isOver;//是否完成
int totalCount = 0;//数据总数
do
{
//请求参数,注意:scrollId参数,第一次是空,后续为上次结果返回的ScrollId
XXXTimeWindowScrollQueryV5Args args = new XXXTimeWindowScrollQueryV5Args
(
DateTime.Now.AddMonths(-1).Date,//时间范围开始时间
DateTime.Now.Date,//时间范围结束时间
scrollId,//本批次的ScrollId,第一次查询为空,后续为上次结果返回的ScrollId
100 //每批次数目
);
//调用API,注意判断响应结果是否成功后再处理
var result = provider.GetByTimeWindow(args);
if(result!=“200”)
break;//调用接口失败,需要记录错误日志信息便于后续排查
isOver = result.IsLastData;//是否结束
scrollId = result.ScrollId;//注意:scrollId赋值后供下次循环使用
if (result.Data.Count>0)
allData.AddRange(result.Data);
if (totalCount == 0)
totalCount = result.Total;
}
while (isOver != true);'
响应示例响应示例
{
"scrollId": "string",
"isLastData": true,
"total": 0,
"data": [
{
"userID": 0,
"approvalStatus": "string",
"acceptTime": "2019-08-24T14:15:22Z",
"refuseTime": "2019-08-24T14:15:22Z",
"offerSender": 0,
"offerSendTime": "2019-08-24T14:15:22Z",
"offerSendDate": "2019-08-24T14:15:22Z",
"remarks": "string",
"hrDutyUserId": 0,
"offerStatus": "string",
"offerTemplate": "string",
"copyEmailTo": "string",
"offerSource": "string",
"syncStatus": 0,
"syncMsg": "string",
"permissionBy": "string",
"referrerUserID": 0,
"blindCarbonCopy": "string",
"reasonOfRefuseID": "string",
"batchSendOfferResult": "string",
"entryChangeType": "string",
"sendOfferEmailTemplateType": "string",
"name": "string",
"age": 0,
"backupMail": "string",
"emergencyContact": "string",
"emergencyContactPhone": "string",
"emergencyContactRelationship": "string",
"iDNumber": "string",
"iDType": 0,
"lastSchool": "string",
"lastSchoolCode": "string",
"major": "string",
"graduateDate": "2019-08-24T14:15:22Z",
"workYearCompanyTotal": 0,
"workYearTotal": 0,
"mobilePhone": "string",
"birthday": "2019-08-24T14:15:22Z",
"birthplace": "string",
"nationality": "string",
"nation": "string",
"registAddress": "string",
"educationLevel": "string",
"workDate": "2019-08-24T14:15:22Z",
"domicileType": 0,
"marryCategory": "string",
"gender": 0,
"oIdDepartment": 0,
"pOIdEmpAdmin": "string",
"pOIdEmpReserve2": "string",
"employType": "string",
"employmentSource": "string",
"employmentForm": "string",
"employmentType": "string",
"entryDate": "2019-08-24T14:15:22Z",
"oIdJobPosition": "string",
"oIdJobLevel": "string",
"oIdOrganization": 0,
"isCharge": "string",
"oIdJobSequence": "string",
"place": "string",
"oIdJobPost": "string",
"oidJobGrade": "string",
"oIdProfessionalLine": "string",
"probation": 0,
"probationStopDate": "2019-08-24T14:15:22Z",
"firstParty": "string",
"firstPartyCode": "string",
"contactLength": 0,
"terminateDate": "2019-08-24T14:15:22Z",
"signingDate": "2019-08-24T14:15:22Z",
"contractType": 0,
"contractDueTimeType": 0,
"effectiveDate": "2019-08-24T14:15:22Z",
"code": "string",
"businessModifiedBy": 0,
"businessModifiedTime": "2019-08-24T14:15:22Z",
"salaryAmount0": 0,
"salaryAmount2": 0,
"salaryAmount3": 0,
"salaryAmount4": 0,
"salaryAmount5": 0,
"salaryAmount6": 0,
"salaryAmount7": 0,
"salaryAmount8": 0,
"salaryAmount9": 0,
"salaryAmount10": 0,
"salaryAmount11": 0,
"salaryAmount12": 0,
"salaryAmount13": 0,
"salaryAmount14": 0,
"salaryAmount15": 0,
"salaryAmount16": 0,
"salaryAmount17": 0,
"salaryAmount18": 0,
"salaryAmount19": 0,
"salaryAmount20": 0,
"basicSalaryBeforeFullTime": "string",
"basicSalaryAfterFullTime": "string",
"housingFundRadices": 0,
"socialSecurityRadices": 0,
"salaryPackageID": "string",
"salaryLevels0": "string",
"salaryRanks0": "string",
"socialSecurityPlanCID": "string",
"housingFundPlanCID": "string",
"salaryAmount2BeforeFullTime": 0,
"salaryAmount2AfterFullTime": 0,
"salaryAmount3BeforeFullTime": 0,
"salaryAmount3AfterFullTime": 0,
"salaryAmount4BeforeFullTime": 0,
"salaryAmount4AfterFullTime": 0,
"salaryAmount5BeforeFullTime": 0,
"salaryAmount5AfterFullTime": 0,
"salaryAmount6BeforeFullTime": 0,
"salaryAmount6AfterFullTime": 0,
"salaryAmount7BeforeFullTime": 0,
"salaryAmount7AfterFullTime": 0,
"salaryAmount8BeforeFullTime": 0,
"salaryAmount8AfterFullTime": 0,
"salaryAmount9BeforeFullTime": 0,
"salaryAmount9AfterFullTime": 0,
"salaryAmount10BeforeFullTime": 0,
"salaryAmount10AfterFullTime": 0,
"salaryAmount11BeforeFullTime": 0,
"salaryAmount11AfterFullTime": 0,
"salaryAmount12BeforeFullTime": 0,
"salaryAmount12AfterFullTime": 0,
"salaryAmount13BeforeFullTime": 0,
"salaryAmount13AfterFullTime": 0,
"salaryAmount14BeforeFullTime": 0,
"salaryAmount14AfterFullTime": 0,
"salaryAmount15BeforeFullTime": 0,
"salaryAmount15AfterFullTime": 0,
"salaryAmount16BeforeFullTime": 0,
"salaryAmount16AfterFullTime": 0,
"salaryAmount17BeforeFullTime": 0,
"salaryAmount17AfterFullTime": 0,
"salaryAmount18BeforeFullTime": 0,
"salaryAmount18AfterFullTime": 0,
"salaryAmount19BeforeFullTime": 0,
"salaryAmount19AfterFullTime": 0,
"salaryAmount20BeforeFullTime": 0,
"salaryAmount20AfterFullTime": 0,
"applicantId": "string",
"applicantPosition": "string",
"applicantPositionId": "string",
"applyChannel": "string",
"applyTime": "2019-08-24T14:15:22Z",
"applicantIdV6": "string",
"applicantPositionIdV6": "string",
"applyIdV6": "string",
"recruitmentRequirement": "string",
"requireDepartment": "string",
"objectId": "string",
"customProperties": {
"property1": {},
"property2": {}
},
"translateProperties": {
"property1": "string",
"property2": "string"
},
"createdBy": 0,
"createdTime": "2019-08-24T14:15:22Z",
"modifiedBy": 0,
"modifiedTime": "2019-08-24T14:15:22Z",
"stdIsDeleted": true
}
],
"code": "string",
"message": "string"
}
请求参数
Body 参数application/json