Guest User

Untitled

a guest
Jul 5th, 2016
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.95 KB | None | 0 0
  1. {
  2. "ID": "0",
  3. "Name": "Все",
  4. "Departments": [
  5. {
  6. "ID": "88",
  7. "Name": "IT офис",
  8. "Employees": [
  9. {
  10. "ID": "888",
  11. "Name": "Иванов Иван Иванович",
  12. "Title": "Менеджер по проектам",
  13. "Email": "test@yandex.ru",
  14. "Phone": "+79991112222"
  15. },
  16. {
  17. "ID": "79358",
  18. "Name": "Иванов Иван Иванович",
  19. "Title": "Менеджер по проектам",
  20. "Email": "test@yandex.ru",
  21. "Phone": "+79991112222"
  22. },
  23. {
  24. "ID": "46488",
  25. "Name": "Иванов Иван Иванович",
  26. "Title": "Руководитель проектов",
  27. "Email": "test@yandex.ru",
  28. "Phone": "+79991112222"
  29. }
  30. ]
  31. },
  32. {
  33. "ID": "989",
  34. "Name": "Авиа",
  35. "Departments": [
  36. {
  37. "ID": "3058",
  38. "Name": "Отдел 1",
  39. "Employees": [
  40. {
  41. "ID": "88388",
  42. "Name": "Иванов Иван Иванович",
  43. "Title": "Авиационный техник авиационного и радиоэлектронного оборудования",
  44. "Phone": "+79991112222"
  45. },
  46. {
  47. "ID": "39806",
  48. "Name": "Иванов Иван Иванович",
  49. "Title": "Авиационный техник ГСМ",
  50. "Phone": "+79991112222"
  51. },
  52. {
  53. "ID": "2553",
  54. "Name": "Иванов Иван Иванович",
  55. "Title": "Автомеханик",
  56. "Phone": "+79991112222"
  57. },
  58. {
  59. "ID": "8981",
  60. "Name": "Иванов Иван Иванович",
  61. "Title": "Инженер летательных аппаратов и двигателей",
  62. "Phone": "+79991112222"
  63. },
  64. {
  65. "ID": "4527",
  66. "Name": "Иванов Иван Иванович",
  67. "Title": "Инженер",
  68. "Email": "test@yandex.ru",
  69. "Phone": "+79991112222"
  70. },
  71. {
  72. "ID": "3460",
  73. "Name": "Иванов Иван Иванович",
  74. "Title": "Инженер по сертификации",
  75. "Phone": "+79991112222"
  76. },
  77. {
  78. "ID": "3992",
  79. "Name": "Иванов Иван Иванович",
  80. "Title": "Авиационный техник",
  81. "Phone": "+79991112222"
  82. },
  83. {
  84. "ID": "7635",
  85. "Name": "Иванов Иван Иванович",
  86. "Title": "Авиационный техник летательных аппаратов и двигателей",
  87. "Phone": "+79991112222"
  88. },
  89. {
  90. "ID": "3918",
  91. "Name": "Иванов Иван Иванович",
  92. "Title": "Главный инженер",
  93. "Phone": "+79991112222"
  94. },
  95. {
  96. "ID": "3991",
  97. "Name": "Иванов Иван Иванович",
  98. "Title": "Инженер авиационного и радиоэлектронного оборудования",
  99. "Phone": "+79991112222"
  100. },
  101. {
  102. "ID": "4013",
  103. "Name": "Иванов Иван Иванович",
  104. "Title": "Авиационный техник авиационного и радиоэлектронного оборудования",
  105. "Phone": "+79991112222"
  106. }
  107. ]
  108. },
  109. {
  110. "ID": "306",
  111. "Name": "Отдел 2",
  112. "Employees": [
  113. {
  114. "ID": "5101",
  115. "Name": "Иванов Иван Иванович",
  116. "Title": "Механик",
  117. "Email": "test@yandex.ru",
  118. "Phone": "+79991112222"
  119. },
  120. {
  121. "ID": "8063",
  122. "Name": "Иванов Иван Иванович",
  123. "Title": "Менеджер по работе с клиентами",
  124. "Email": "test@yandex.ru",
  125. "Phone": "+79991112222"
  126. },
  127. {
  128. "ID": "1944",
  129. "Name": "Иванов Иван Иванович",
  130. "Title": "Заместитель директора по летной работе",
  131. "Email": "test@yandex.ru",
  132. "Phone": "+79991112222"
  133. },
  134. {
  135. "ID": "2820",
  136. "Name": "Иванов Иван Иванович",
  137. "Title": "Экономист",
  138. "Email": "test@yandex.ru",
  139. "Phone": "+79991112222"
  140. },
  141. {
  142. "ID": "1910",
  143. "Name": "Иванов Иван Иванович",
  144. "Title": "Заместитель директора по общим вопросам",
  145. "Email": "test@yandex.ru",
  146. "Phone": "+79991112222"
  147. },
  148. {
  149. "ID": "2652",
  150. "Name": "Иванов Иван Иванович",
  151. "Title": "Командир парашютного звена",
  152. "Email": "test@yandex.ru",
  153. "Phone": "+79991112222"
  154. },
  155. {
  156. "ID": "4175",
  157. "Name": "Иванов Иван Иванович",
  158. "Title": "Директор",
  159. "Email": "test@yandex.ru",
  160. "Phone": "+79991112222"
  161. },
  162. {
  163. "ID": "2752",
  164. "Name": "Иванов Иван Иванович",
  165. "Title": "Начальник штаба",
  166. "Email": "test@yandex.ru",
  167. "Phone": "+79991112222"
  168. },
  169. {
  170. "ID": "2766",
  171. "Name": "Иванов Иван Иванович",
  172. "Title": "Бухгалтер",
  173. "Email": "test@yandex.ru",
  174. "Phone": "+79991112222"
  175. },
  176. {
  177. "ID": "2827",
  178. "Name": "Иванов Иван Иванович",
  179. "Title": "Директор",
  180. "Email": "test@yandex.ru",
  181. "Phone": "+79991112222"
  182. },
  183. {
  184. "ID": "7155",
  185. "Name": "Иванов Иван Иванович",
  186. "Title": "Начальник штаба",
  187. "Email": "test@yandex.ru",
  188. "Phone": "+79991112222"
  189. },
  190. {
  191. "ID": "3459",
  192. "Name": "Иванов Иван Иванович",
  193. "Title": "Начальник инженерно-авиационной службы",
  194. "Phone": "+79991112222"
  195. },
  196. {
  197. "ID": "2950",
  198. "Name": "Иванов Иван Иванович",
  199. "Title": "Комендант",
  200. "Email": "test@yandex.ru",
  201. "Phone": "+79991112222"
  202. },
  203. {
  204. "ID": "4645",
  205. "Name": "Иванов Иван Иванович",
  206. "Title": "Инженер ИАС",
  207. "Email": "test@yandex.ru",
  208. "Phone": "+79991112222"
  209. }
  210. ]
  211. },
  212. {
  213. "ID": "308",
  214. "Name": "Отдел 3",
  215. "Departments": [
  216. {
  217. "ID": "309",
  218. "Name": "Подотдел 1",
  219. "Employees": [
  220. {
  221. "ID": "8309",
  222. "Name": "Иванов Иван Иванович",
  223. "Title": "Водитель",
  224. "Phone": "+79991112222"
  225. }
  226. ]
  227. },
  228. {
  229. "ID": "310",
  230. "Name": "Подотдел 2",
  231. "Employees": [
  232. {
  233. "ID": "6137",
  234. "Name": "Иванов Иван Иванович",
  235. "Title": "Авиационный техник",
  236. "Phone": "+79991112222"
  237. },
  238. {
  239. "ID": "7225",
  240. "Name": "Иванов Иван Иванович",
  241. "Title": "Авиационный техник летательных аппаратов и двигателей",
  242. "Phone": "+79991112222"
  243. }
  244. ]
  245. },
  246. {
  247. "ID": "311",
  248. "Name": "Подотдел 3",
  249. "Employees": [
  250. {
  251. "ID": "3840",
  252. "Name": "Иванов Иван Иванович",
  253. "Title": "Пилот",
  254. "Email": "test@yandex.ru",
  255. "Phone": "+79991112222"
  256. },
  257. {
  258. "ID": "4091",
  259. "Name": "Иванов Иван Иванович",
  260. "Title": "Пилот",
  261. "Email": "test@yandex.ru",
  262. "Phone": "+79991112222"
  263. },
  264. {
  265. "ID": "2813",
  266. "Name": "Иванов Иван Иванович",
  267. "Title": "Врач",
  268. "Email": "test@yandex.ru",
  269. "Phone": "+79991112222"
  270. },
  271. {
  272. "ID": "2869",
  273. "Name": "Иванов Иван Иванович",
  274. "Title": "Пилот",
  275. "Email": "test@yandex.ru",
  276. "Phone": "+79991112222"
  277. },
  278. {
  279. "ID": "2654",
  280. "Name": "Иванов Иван Иванович",
  281. "Title": "Летчик-методист",
  282. "Email": "test@yandex.ru",
  283. "Phone": "+79991112222"
  284. },
  285. {
  286. "ID": "6999",
  287. "Name": "Иванов Иван Иванович",
  288. "Title": "Пилот",
  289. "Email": "test@yandex.ru",
  290. "Phone": "+79991112222"
  291. },
  292. {
  293. "ID": "4178",
  294. "Name": "Иванов Иван Иванович",
  295. "Title": "Пилот-инструктор",
  296. "Phone": "+79991112222"
  297. },
  298. {
  299. "ID": "2868",
  300. "Name": "Иванов Иван Иванович",
  301. "Title": "Пилот",
  302. "Email": "test@yandex.ru",
  303. "Phone": "+79991112222"
  304. },
  305. {
  306. "ID": "3915",
  307. "Name": "Иванов Иван Иванович",
  308. "Title": "Пилот",
  309. "Phone": "+79991112222"
  310. }
  311. ]
  312. },
  313. {
  314. "ID": "312",
  315. "Name": "Подотдел 4",
  316. "Employees": [
  317. {
  318. "ID": "8272",
  319. "Name": "Иванов Иван Иванович",
  320. "Title": "Водитель",
  321. "Phone": "+79991112222"
  322. },
  323. {
  324. "ID": "4047",
  325. "Name": "Иванов Иван Иванович",
  326. "Title": "Сторож",
  327. "Phone": "+79991112222"
  328. },
  329. {
  330. "ID": "2816",
  331. "Name": "Иванов Иван Иванович",
  332. "Title": "Сторож",
  333. "Phone": "+79991112222"
  334. },
  335. {
  336. "ID": "6037",
  337. "Name": "Иванов Иван Иванович",
  338. "Title": "Разнорабочий",
  339. "Phone": "+79991112222"
  340. },
  341. {
  342. "ID": "5805",
  343. "Name": "Иванов Иван Иванович",
  344. "Title": "Повар",
  345. "Phone": "+79991112222"
  346. },
  347. {
  348. "ID": "4048",
  349. "Name": "Иванов Иван Иванович",
  350. "Title": "Сторож",
  351. "Phone": "+79991112222"
  352. },
  353. {
  354. "ID": "8573",
  355. "Name": "Иванов Иван Иванович",
  356. "Title": "Сторож"
  357. },
  358. {
  359. "ID": "11172",
  360. "Name": "Иванов Иван Иванович",
  361. "Title": "Водитель",
  362. "Phone": "+79991112222"
  363. },
  364. {
  365. "ID": "3852",
  366. "Name": "Иванов Иван Иванович",
  367. "Title": "Разнорабочий",
  368. "Phone": "+79991112222"
  369. },
  370. {
  371. "ID": "7680",
  372. "Name": "Иванов Иван Иванович",
  373. "Title": "Повар"
  374. },
  375. {
  376. "ID": "5452",
  377. "Name": "Иванов Иван Иванович",
  378. "Title": "Сторож",
  379. "Phone": "+79991112222"
  380. },
  381. {
  382. "ID": "3019",
  383. "Name": "Иванов Иван Иванович",
  384. "Title": "Разнорабочий",
  385. "Phone": "+79991112222"
  386. },
  387. {
  388. "ID": "3483",
  389. "Name": "Иванов Иван Иванович",
  390. "Title": "Сторож",
  391. "Phone": "+79991112222"
  392. },
  393. {
  394. "ID": "7684",
  395. "Name": "Иванов Иван Иванович",
  396. "Title": "Кладовщик",
  397. "Phone": "+79991112222"
  398. }
  399. ]
  400. },
  401. {
  402. "ID": "313",
  403. "Name": "Подотдел 5",
  404. "Employees": [
  405. {
  406. "ID": "2655",
  407. "Name": "Иванов Иван Иванович",
  408. "Title": "Парашютист-инструктор",
  409. "Email": "test@yandex.ru",
  410. "Phone": "+79991112222"
  411. },
  412. {
  413. "ID": "6252",
  414. "Name": "Иванов Иван Иванович",
  415. "Title": "Парашютист-инструктор",
  416. "Phone": "+79991112222"
  417. },
  418. {
  419. "ID": "2817",
  420. "Name": "Иванов Иван Иванович",
  421. "Title": "Уборщица",
  422. "Phone": "+79991112222"
  423. },
  424. {
  425. "ID": "6253",
  426. "Name": "Иванов Иван Иванович",
  427. "Title": "Парашютист-инструктор",
  428. "Phone": "+79991112222"
  429. },
  430. {
  431. "ID": "2653",
  432. "Name": "Иванов Иван Иванович",
  433. "Title": "Парашютист-инструктор",
  434. "Email": "test@yandex.ru",
  435. "Phone": "+79991112222"
  436. },
  437. {
  438. "ID": "3672",
  439. "Name": "Иванов Иван Иванович",
  440. "Title": "мастер по ремонту парашютно-десантной техники",
  441. "Email": "test@yandex.ru",
  442. "Phone": "+79991112222"
  443. }
  444. ]
  445. }
  446. ]
  447. },
  448. {
  449. "ID": "314",
  450. "Name": "Отдел 4",
  451. "Employees": [
  452. {
  453. "ID": "8780",
  454. "Name": "Иванов Иван Иванович",
  455. "Title": "Старший инструктор парашютно-десантной подготовки"
  456. },
  457. {
  458. "ID": "8947",
  459. "Name": "Иванов Иван Иванович",
  460. "Title": "Заведующий складом"
  461. },
  462. {
  463. "ID": "8793",
  464. "Name": "Иванов Иван Иванович",
  465. "Title": "Инструктор парашютно-десантной подготовки"
  466. },
  467. {
  468. "ID": "8766",
  469. "Name": "Иванов Иван Иванович",
  470. "Title": "Начальник штаба"
  471. },
  472. {
  473. "ID": "9701",
  474. "Name": "Иванов Иван Иванович",
  475. "Title": "Бухгалтер",
  476. "Email": "test@yandex.ru",
  477. "Phone": "+79991112222"
  478. },
  479. {
  480. "ID": "8767",
  481. "Name": "Иванов Иван Иванович",
  482. "Title": "Инструктор парашютно-десантной подготовки"
  483. },
  484. {
  485. "ID": "8786",
  486. "Name": "Иванов Иван Иванович",
  487. "Title": "Комендант аэродрома"
  488. },
  489. {
  490. "ID": "8784",
  491. "Name": "Иванов Иван Иванович",
  492. "Title": "Инструктор парашютно-десантной подготовки"
  493. },
  494. {
  495. "ID": "9301",
  496. "Name": "Иванов Иван Иванович",
  497. "Title": "Уборщица"
  498. },
  499. {
  500. "ID": "8775",
  501. "Name": "Иванов Иван Иванович",
  502. "Title": "Инженер инженерно-авиационной службы"
  503. },
  504. {
  505. "ID": "8785",
  506. "Name": "Иванов Иван Иванович",
  507. "Title": "Техник по радионавигации, радиолокации, связи"
  508. },
  509. {
  510. "ID": "8774",
  511. "Name": "Иванов Иван Иванович",
  512. "Title": "Стрелок военизированной охраны"
  513. },
  514. {
  515. "ID": "8768",
  516. "Name": "Иванов Иван Иванович",
  517. "Title": "Старший стрелок военизированной охраны"
  518. },
  519. {
  520. "ID": "8948",
  521. "Name": "Иванов Иван Иванович",
  522. "Title": "Летчик-инструктор"
  523. },
  524. {
  525. "ID": "8773",
  526. "Name": "Иванов Иван Иванович",
  527. "Title": "Стрелок военизированной охраны"
  528. },
  529. {
  530. "ID": "8776",
  531. "Name": "Иванов Иван Иванович",
  532. "Title": "Командир отряда"
  533. }
  534. ]
  535. },
  536. {
  537. "ID": "315",
  538. "Name": "Отдел 5",
  539. "Employees": [
  540. {
  541. "ID": "3458",
  542. "Name": "Иванов Иван Иванович",
  543. "Title": "Инженер отдела технического контроля",
  544. "Phone": "+79991112222"
  545. },
  546. {
  547. "ID": "5901",
  548. "Name": "Иванов Иван Иванович",
  549. "Title": "Заместитель директора по авиационной безопасности",
  550. "Phone": "+79991112222"
  551. },
  552. {
  553. "ID": "5811",
  554. "Name": "Иванов Иван Иванович",
  555. "Title": "инженер-инспектор по безопасности полетов",
  556. "Email": "test@yandex.ru",
  557. "Phone": "+79991112222"
  558. }
  559. ]
  560. }
  561. ]
  562. },
  563. {
  564. "ID": "328",
  565. "Name": "Тест 1"
  566. },
  567. {
  568. "ID": "254",
  569. "Name": "გამოძახება"
  570. },
  571. {
  572. "ID": "35",
  573. "Name": "Тест 3",
  574. "Employees": [
  575. {
  576. "ID": "4650",
  577. "Name": "Иванов Иван Иванович",
  578. "Title": "Руководитель офиса",
  579. "Email": "test@yandex.ru",
  580. "Phone": "+79991112222"
  581. },
  582. {
  583. "ID": "4651",
  584. "Name": "Иванов Иван Иванович",
  585. "Title": "Менеджер по работе с клиентами",
  586. "Email": "test@yandex.ru",
  587. "Phone": "+79991112222"
  588. },
  589. {
  590. "ID": "9215",
  591. "Name": "Иванов Иван Иванович",
  592. "Title": "Менеджер по работе с клиентами",
  593. "Email": "test@yandex.ru",
  594. "Phone": "+79991112222"
  595. },
  596. {
  597. "ID": "7079",
  598. "Name": "Иванов Иван Иванович",
  599. "Title": "Менеджер по работе с клиентами",
  600. "Email": "test@yandex.ru",
  601. "Phone": "+79991112222"
  602. },
  603. {
  604. "ID": "10217",
  605. "Name": "Иванов Иван Иванович",
  606. "Title": "Менеджер по работе с клиентами",
  607. "Email": "test@yandex.ru",
  608. "Phone": "+79991112222"
  609. },
  610. {
  611. "ID": "4652",
  612. "Name": "Иванов Иван Иванович",
  613. "Title": "Менеджер по работе с клиентами",
  614. "Email": "test@yandex.ru",
  615. "Phone": "+79991112222"
  616. }
  617. ]
  618. },
  619. {
  620. "ID": "716",
  621. "Name": "გამოძახება"
  622. }
  623. ]
  624. }
  625.  
  626. NSDictionary *responseDic = [NSJSONSerialization JSONObjectWithData:receivedData options:NSJSONReadingMutableContainers error:nil];
  627. if ([NSJSONSerialization isValidJSONObject:responseDic])
  628. {
  629. NSArray *array = responseDic[@"Departments"];
  630. _tempDepart = [NSMutableArray new];
  631. [array enumerateObjectsUsingBlock:^(NSDictionary *obj, NSUInteger idx, BOOL *stop) {
  632. [_tempDepart addObject:obj];
  633. }];
  634. }
  635.  
  636. - (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath {
  637. // Нажатие по ячейки
  638. _levelIndex++; // как глубого прошли внутрь
  639. [_rememberStory addObject:[_tempDepart[indexPath.row] objectForKey:@"Name"]]; // создание истории, по которым шли вглубь
  640. NSDictionary *responseDic = [NSJSONSerialization JSONObjectWithData:receivedData options:NSJSONReadingMutableContainers error:nil];
  641. NSArray *departments = responseDic[@"Departments"]; // создание списка 2 уровня
  642. if ([NSJSONSerialization isValidJSONObject:responseDic])
  643. {
  644. NSArray *array = [departments objectAtIndex:indexPath.row]; // для NSDictionary нельзя обратится по индексу
  645. NSLog(@"array:%@", array);
  646. NSLog(@"array count:%lu", (unsigned long)array.count);
  647. _tempDepart = [NSMutableArray new];
  648. [_tempDepart removeAllObjects];
  649. [array enumerateObjectsUsingBlock:^(NSDictionary *obj, NSUInteger idx, BOOL *stop) { // падает программа
  650. [_tempDepart addObject:obj];
  651. }];
  652. }
  653.  
  654. ViewControllerTable *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewControllerTable"];
  655. detail.tempDepart = _tempDepart;
  656. detail.tableViewData = _tableViewData;
  657. detail.rememberStory = _rememberStory;
  658. [self presentViewController:detail animated:YES completion:nil];
  659. }
  660.  
  661. @property (strong, nonatomic) NSMutableArray *tempDepart;
  662.  
  663. NSArray *testArray = array[0]; // программа падает
  664.  
  665. NSDictionary *department = departments[ indexpath.row ];
Add Comment
Please, Sign In to add comment