1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- using ConsoleApp1.Controller.CY_API;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Linq;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApp1.Controller.DDing_API
- {
- public class InTheMiddle
- {
- private DingdingAPI Ding = new DingdingAPI();
- private CY_NC_Api _cy = new CY_NC_Api();
- private string employee = "";
- /// <summary>
- /// 更新智能人事花名册信息
- /// </summary>
- /// <returns></returns>
- public string smartworks(Dictionary<string, object> dic)
- {
- string token = Ding.dttoken();
- //string agentid = Ding.get_auth_info();
- string smartwork = Ding.smartwork(token);
- if (dic.LongCount() == 4)
- {
- employee = Ding.employee(dic);
- }
- else if (dic.LongCount() == 5)
- {
- employee = Ding.The_Contract(dic);
- }
- return employee;
- }
- /// <summary>
- /// 获取员工信息并更新至氚云
- /// </summary>
- /// <returns></returns>
- public string Update_smartwork()
- {
- try
- {
- string access_token = Ding.dttoken();
- //if (string.IsNullOrEmpty(access_token))
- //{
- access_token = Ding.dttoken();
- //}
- int offset = 0, size = 50; string userid_list; int next_cursor;
- //string field_filter_list = "sys00-name, sys00-mainDeptId, sys00-mainDept,sys05-nowContractStartTime, sys05-nowContractEndTime, sys00-position, sys00-confirmJoinTime, sys01-positionLevel,sys05-contractPeriodType, sys05-contractRenewCount, userid";
- do
- {
- string queryonjob = Ding.smartwork_smartwork(access_token, "2,3,5,-1", offset, size);
- JObject json = JsonConvert.DeserializeObject<JObject>(queryonjob.ToString());
- next_cursor = json["result"]["data_list"].Count();
- //next_cursor = json["result"]["next_cursor"].ToString()!= null || json["result"]["next_cursor"].ToString() != "" ? Convert.ToInt32(json["result"]["next_cursor"]) : 0;
- userid_list = json["result"]["data_list"].ToString().Replace("[", "").Replace("\"", "").Replace("]", "").Trim();
- //string value1 = Ding.listemployee(userid_list);
- string value = Ding.smartwork_list(access_token, userid_list, null);
- JObject json1 = JsonConvert.DeserializeObject<JObject>(value);
- foreach (var item in json1["result"])
- {
- JObject json2 = JsonConvert.DeserializeObject<JObject>(item.ToString());
- _cy.employee(json2);
- _cy.Basic(json2);
- }
- offset = offset + size;
- } while (next_cursor >= 50);
- return "OK";
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- }
- }
|