public static List <TaskAdd> AddNewTask(int elementid, int elementtype, int tasktype, int taskstatus, string tasktext, int tilltime, int?datecreate = null, int?lastmodified = null, int?responsibleuserid = null) { var provider = new AmoCRMProvider(); Task newTask = new Task(); newTask.request = new Request(); newTask.request.tasks = new Tasks(); newTask.request.tasks.add = new List <TaskAdd>(); TaskAdd newTaskItem = new TaskAdd(); newTaskItem.element_id = elementid; newTaskItem.element_type = elementtype; newTaskItem.task_type = tasktype; newTaskItem.status = taskstatus; newTaskItem.text = tasktext; newTaskItem.complete_till = tilltime; newTaskItem.date_create = datecreate; newTaskItem.last_modified = lastmodified; //newTaskItem.request_id = //этож output-параметр... зачем он тут? хз newTaskItem.responsible_user_id = responsibleuserid; newTask.request.tasks.add.Add(newTaskItem); Console.WriteLine("Start AddNewTask\n"); Console.WriteLine(JsonConvert.SerializeObject(newTask)); TaskResponse ids = provider.SendNewTask(SessionID, newTask); Environment.ExitCode = Convert.ToInt16(provider.HadErrors); return(ids.tasks.add); //todo вернуть текущее время и время сервера. Время сервера есть в ответе Auth. А вот текущее правильно ли будет брать сразу после? не совсем, наверное, все же.. }
/*private static readonly Dictionary<string, Action> _commands = new Dictionary<string, Action>() * { * //{"/a", GetAccessToken}, * {"/?", ListOfAttributes} * }; * * private static void ProcessKeys(string[] args) * { * var actions = (from x in args.AsEnumerable() * join y in _commands * on x.Trim() equals y.Key * select y.Value * ); * * foreach (var action in actions) * { * action(); * } * } * * public static void ListOfAttributes() * { * string cmds = ""; * foreach (var command in _commands) * { * if (command.Key != "/Debug") * cmds = cmds + command.Key + '\n'; * } * Console.WriteLine(cmds); * }*/ public static string GetAccessToken() { var provider = new AmoCRMProvider(); Console.WriteLine("Start GetAccessToken\n"); SessionID = provider.GetAccessToken(); Environment.ExitCode = Convert.ToInt16(provider.HadErrors); return(SessionID); }