PageRenderTime 61ms CodeModel.GetById 15ms RepoModel.GetById 0ms app.codeStats 1ms

/module/Order/src/Order/Controller/OrderController.php

https://gitlab.com/jeann2015/nexus
PHP | 4134 lines | 2781 code | 1258 blank | 95 comment | 156 complexity | e821213728e7b5eac1dc22a6d2de7c8a MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. /**
  3. * Zend Framework (http://framework.zend.com/)
  4. *
  5. * @link http://github.com/zendframework/ZendSkeletonApplication for the canonical source repository
  6. * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
  7. * @license http://framework.zend.com/license/new-bsd New BSD License
  8. */
  9. namespace Order\Controller;
  10. use Zend\View\Model\ViewModel;
  11. use Zend\View\Model\JsonModel;
  12. use Qv\Language;
  13. use Provisioning\Model\Order;
  14. use Provisioning\Model\Group;
  15. use Provisioning\Model\Customer;
  16. use Provisioning\Model\Device;
  17. use Provisioning\Model\User;
  18. use Provisioning\Model\Xml;
  19. use Provisioning\Model\Dn;
  20. use Provisioning\Model\Message;
  21. use Provisioning\Model\Queue;
  22. use Provisioning\Model\GroupServiceProvider;
  23. use Provisioning\Model\DomainAdd;
  24. use Provisioning\Model\ProviderAdd;
  25. use Provisioning\Model\Provider;
  26. use Provisioning\Model\Domain;
  27. use Provisioning\Model\ServiceProviderEmpresaAdd;
  28. use Provisioning\Model\UserModifyAdd;
  29. use Provisioning\Model\AdditionLine;
  30. use Provisioning\Model\ChangeNumber;
  31. use Provisioning\Model\DeleteLine;
  32. use Provisioning\Model\CreationGroup;
  33. use Provisioning\Model\DeleteGroup;
  34. use Provisioning\Form\OrderForm;
  35. use Provisioning\Form\GroupForm;
  36. use Provisioning\Form\CustomerForm;
  37. use Provisioning\Form\DeviceForm;
  38. use Provisioning\Form\DomainAddForm;
  39. use Provisioning\Form\UserForm;
  40. use Provisioning\Form\GroupDnAssignForm;
  41. use Provisioning\Form\UserDnDeviceAssignForm;
  42. use Provisioning\Form\ServiceProviderAddForm;
  43. use Provisioning\Form\ServiceProviderOrderAddForm;
  44. use Provisioning\Form\UserModifyAddForm;
  45. use Provisioning\Form\GroupModifyForm;
  46. use Provisioning\Form\GroupdnAssignListalForm;
  47. use Provisioning\Form\ServiceProviderdnAddListalForm;
  48. use Provisioning\Form\UserAddalForm;
  49. use Provisioning\Form\UserModifyalForm;
  50. use Provisioning\Form\UserServiceAssignListalForm;
  51. use Provisioning\Form\UserAuthenticationModifyalForm;
  52. use Provisioning\Form\GroupSeriesCompletionModifyInstancealForm;
  53. use Provisioning\Form\UserModifycnForm;
  54. use Provisioning\Form\GroupdnunAssignListcnForm;
  55. use Provisioning\Form\ServiceProviderdnDeleteListcnForm;
  56. use Provisioning\Form\ServiceProviderdnAddListcnForm;
  57. use Provisioning\Form\GroupdnAssignListcnForm;
  58. use Provisioning\Form\UserModifycnaForm;
  59. use Provisioning\Form\GroupdnActivateListcnForm;
  60. use Provisioning\Form\UserDeleteelForm;
  61. use Provisioning\Form\GroupdnunAssignListelForm;
  62. use Provisioning\Form\ServiceProviderdnDeleteListelForm;
  63. use Provisioning\Form\GroupAddcgForm;
  64. use Provisioning\Form\GroupAccessDeviceAddcgActionForm;
  65. use Provisioning\Form\UserAddcgForm;
  66. use Provisioning\Form\ServiceProviderdnAddListcgForm;
  67. use Provisioning\Form\GroupdnAssignListcgForm;
  68. use Provisioning\Form\UserModifycgForm;
  69. use Provisioning\Form\UserAuthenticationModifycgForm;
  70. use Provisioning\Form\GroupdnActivateListcgForm;
  71. use Provisioning\Form\GroupDeleteegForm;
  72. use Provisioning\Form\ServiceProviderdnDeleteListegForm;
  73. use Preference\Dao\PreferenceDao;
  74. use Generic\Controller\GenericController;
  75. use Provisioning\Service\XmlService;
  76. use Provisioning\Service\OCISoapService;
  77. class OrderController extends GenericController
  78. {
  79. public $serviceDao;
  80. public function indexAction() {
  81. if (! $this->getServiceLocator()
  82. ->get('AuthService')->hasIdentity()){
  83. return $this->redirect()->toRoute('auth');
  84. }
  85. $_SESSION['current'] = "order";
  86. $_SESSION['activities'] = null;
  87. $_SESSION['current_priority'] = null;
  88. return;
  89. }
  90. public function filterAction(){
  91. $model = new JsonModel();
  92. $request = $this->getRequest();
  93. if($request->isPost()){
  94. $post = (array)$request->getPost();
  95. $limit = isset( $post['limit'] ) ? $post['limit'] : null;
  96. $offset = $post['offset'];
  97. $order = $post['order'];
  98. $sort = $post['sort'];
  99. $filters = array_key_exists('filters',$post) ? $post['filters'] : null;
  100. if($filters)
  101. foreach ($filters as $key => $value) {
  102. if (strpos($key,'QGDATE') !== false) {
  103. if(stripos($value,":") !== false){
  104. $filters[$key] = $this->convertToUTC($value);
  105. } else {
  106. $filters[$key] = $this->convertToUTC($value,array('date'=>true));
  107. }
  108. //print $filters[$key] . "\n";
  109. }
  110. }
  111. $result = $this->getDao()->fetchFilter($limit,$offset,$order,$sort,$filters);
  112. }
  113. $items = array();
  114. foreach ($result['resultSet'] as $item) {
  115. $item->nexusid = $item->id;
  116. foreach ($item as $key => $value) {
  117. //Aqui se hace alguna transformación que los valores del grid requieran
  118. //$value = $this->translator($value);
  119. //$item->$key = $value;
  120. if($this->isDate($value)){
  121. if(stripos($value,":") === false){
  122. $item->$key = $this->convertFromUTC($value,array('date'=>true));
  123. } else {
  124. $item->$key = $this->convertFromUTC($value);
  125. }
  126. }
  127. if($key == "nexusid" || $key == "cisid"){
  128. $url = $this->url()->fromRoute('order',array('action'=>'view','id'=>$item->id));
  129. $item->$key = "<a href='".$url."'>".$value."</a>";
  130. }
  131. }
  132. array_push($items, $item);
  133. }
  134. $model->setVariable("status","success");
  135. $model->setVariable("payload",array(
  136. "total" => $result['total'],
  137. "items" => $items,
  138. ));
  139. return $model;
  140. }
  141. public function listAction()
  142. {
  143. if (! $this->getServiceLocator()
  144. ->get('AuthService')->hasIdentity()){
  145. return $this->redirect()->toRoute('auth');
  146. }
  147. $cisid = $this->params()->fromRoute('id');
  148. return new ViewModel(array('cisid'=>$cisid));
  149. }
  150. public function viewAction()
  151. {
  152. $id = $this->params()->fromRoute('id');
  153. $order = $this->getDao("OrderDao")->get($id);
  154. $StatusId = $order->getStatusId();
  155. if($StatusId<>2){
  156. $order->setStatusId(2);
  157. $order->setId($this->getDao()->save($order));
  158. }
  159. $order = $this->getDao()->getOrder($id);
  160. $xmlFetch = $this->getDao("XmlDao")->fetchByOrderId($order->id);
  161. $group = $this->getDao("GroupDao")->get($order->groupId);
  162. $devices = $this->getDao("DeviceDao")->fetchByGroupId($group->id);
  163. $devicesArray = array();
  164. foreach ($devices as $device) {
  165. $devicesArray[] = $device;
  166. }
  167. $group->devices = $devicesArray;
  168. return new ViewModel(array(
  169. 'order' => $order,
  170. //'customer' => $customer,
  171. 'group' => $group,
  172. 'xmls' => $xmlFetch,
  173. ));
  174. }
  175. public function addAction()
  176. {
  177. if (! $this->getServiceLocator()
  178. ->get('AuthService')->hasIdentity()){
  179. return $this->redirect()->toRoute('auth');
  180. }
  181. $id = $this->params()->fromRoute('id');
  182. $order = $this->getDao("OrderDao")->get($id);
  183. if(!$order){
  184. $order = new Order();
  185. }
  186. $form = new OrderForm();
  187. $error = "";
  188. /**
  189. * Llenamos el select con los servicios
  190. */
  191. $caseSelect = $form->get('caseId');
  192. $caseFetch = $this->getDao("CaseDao")->fetchAll();
  193. $serviceArray = array();
  194. foreach ($caseFetch as $case) {
  195. $caseArray[$case->id] = $case->name;
  196. }
  197. $caseSelect->setAttribute('options',$caseArray);
  198. /**
  199. * Llenamos la plataformas
  200. */
  201. $currentUser = (object)$this->getServiceLocator()->get('AuthService')->getIdentity();
  202. $order->setPlatformId($currentUser->platform_id);
  203. $request = $this->getRequest();
  204. if ($request->isPost()) {
  205. $form->setInputFilter($order->getInputFilter());
  206. $form->setData($request->getPost());
  207. if ($form->isValid()) {
  208. $order->setDateCreated(\date("Y-m-d H:i:s"));
  209. $order->setStatusId(1); // Status nuevo
  210. $order->setCisid($form->get("cisid")->getValue());
  211. //$order->setProductId($form->get("productId")->getValue());
  212. $order->setCaseId($form->get("caseId")->getValue());
  213. $order->setPlatformId($form->get("platformId")->getValue());
  214. $order->setDescription($form->get("description")->getValue());
  215. $order->setIntervention("manual");
  216. $order->setUserId($currentUser->id);
  217. $order->setCurrentStep(1);
  218. $order->setCurrentStep(1);
  219. $caseXmlTemplateFetch = $this->getDao("CaseXmlTemplateDao")
  220. ->fetchByCaseId($order->getCaseId());
  221. $activities = array();
  222. foreach ($caseXmlTemplateFetch as $caseXmlTemplate) {
  223. $xmltemplate = $this->getDao("XmlTemplateDao")
  224. ->get($caseXmlTemplate->xmltemplate_id);
  225. $commandExploded = explode("Request",$xmltemplate->command);
  226. $action = strtolower($commandExploded[0]);
  227. $activities[ $caseXmlTemplate->priority ] = $action;
  228. }
  229. $_SESSION['activities'] = $activities;
  230. $order->setTotalStep(count($activities));
  231. $thisStep = 0;
  232. if($thisStep > $order->getCompleteStep() ){
  233. $order->setCompleteStep( $thisStep );
  234. }
  235. $order->setCurrentStep( $thisStep + 1 );
  236. $order->setId($this->getDao()->save($order));
  237. //$_SESSION['order_id'] = $order->getId();
  238. //$_SESSION['case_id'] = $order->getCaseId();
  239. $this->next($order);
  240. } else {
  241. $error = $form->getMessages();
  242. }
  243. }
  244. $form->setData($order->getArrayCopy());
  245. return new ViewModel(array(
  246. 'form' => $form,
  247. 'error' => $error,
  248. 'order' => $order,
  249. //'step' => $step,
  250. ));
  251. }
  252. public function fetchbyAction()
  253. {
  254. $id = $this->params()->fromRoute('id');
  255. $GroupFetch = $this->getDao('GroupDao')->fetchById($id);
  256. $groups = array();
  257. foreach ($GroupFetch as $grupos) {
  258. $groups[] = $grupos;
  259. }
  260. return new JsonModel($groups);
  261. }
  262. public function fetchbyProviderAction()
  263. {
  264. $id = $this->params()->fromRoute('id');
  265. $domainFetch = $this->getDao('ProviderDao')->fetchBy_Id($id);
  266. $domains = array();
  267. foreach ($domainFetch as $domain) {
  268. $domains[] = $domain;
  269. }
  270. return new JsonModel($domains);
  271. }
  272. public function fetchbyUserIDAction()
  273. {
  274. $id = $this->params()->fromRoute('id');
  275. $userFetch = $this->getDao('AdditionLineDao')->fetchByUserId($id);
  276. $users = array();
  277. foreach ($userFetch as $usuarios) {
  278. $users[] = $usuarios;
  279. }
  280. return new JsonModel($users);
  281. }
  282. public function fetchbyGroupAction()
  283. {
  284. $id = $this->params()->fromRoute('id');
  285. $groupFetch = $this->getDao('GroupDao')->fetchById($id);
  286. $groups = array();
  287. foreach ($groupFetch as $group) {
  288. $groups[] = $group;
  289. }
  290. return new JsonModel($groups);
  291. }
  292. public function serviceproviderdndeletelistegAction(){
  293. $deletegroup = new DeleteGroup();
  294. $form = new ServiceProviderdnDeleteListegForm();
  295. $id = $this->params()->fromRoute('id');
  296. $order = $this->getDao("OrderDao")->get($id);
  297. $error="";
  298. $request = $this->getRequest();
  299. if ($request->isPost()) {
  300. $form->setData($request->getPost());
  301. if ($form->isValid()) {
  302. $numero = $form->get("numero")->getValue();
  303. $fechaHora = date("Y-m-d H:i:s");
  304. $deletegroup->setid_service_provider('Business_Line');
  305. $deletegroup->setid_order($id);
  306. $deletegroup->setcommand('ServiceProviderDnDeleteListegRequest');
  307. $deletegroup->setcreatedate($fechaHora);
  308. $deletegroup->setnumber_empresa($numero);
  309. $deletegroup->setId( $this->getDao("DeleteGroupDao")->save($deletegroup) );
  310. $this->generateXml('list','ServiceProviderDnDeleteListegRequest',$deletegroup,$order);
  311. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  312. if($thisStep > $order->getCompleteStep() ){
  313. $order->setCompleteStep( $thisStep );
  314. }
  315. $order->setCurrentStep( $thisStep + 1 );
  316. $order->setId( $this->getDao("OrderDao")->save($order) );
  317. $this->next($order);
  318. }
  319. }
  320. $form->setData($order->getArrayCopy());
  321. return new ViewModel(array(
  322. 'form' => $form,
  323. 'error' => $error,
  324. 'order' => $order,
  325. ));
  326. }
  327. public function groupdeleteegAction(){
  328. $deletegroup = new DeleteGroup();
  329. $form = new GroupDeleteegForm();
  330. $id = $this->params()->fromRoute('id');
  331. $order = $this->getDao("OrderDao")->get($id);
  332. $error="";
  333. $groupidSelect = $form->get('groupid');
  334. $GroupFetch = $this->getDao("GroupDao")->fetchAll();
  335. $groupArray = array();
  336. foreach ($GroupFetch as $group) {
  337. $groupArray[$group->name]=$group->name;
  338. }
  339. $groupidSelect->setAttribute('options',$groupArray);
  340. $request = $this->getRequest();
  341. if ($request->isPost()) {
  342. $form->setData($request->getPost());
  343. if ($form->isValid()) {
  344. $groupid = $form->get("groupid")->getValue();
  345. $fechaHora = date("Y-m-d H:i:s");
  346. $deletegroup->setid_service_provider('Business_Line');
  347. $deletegroup->setid_order($id);
  348. $deletegroup->setcommand('GroupDeleteegRequest');
  349. $deletegroup->setcreatedate($fechaHora);
  350. $deletegroup->setid_group($groupid);
  351. $order->setGroupId($groupid);
  352. $deletegroup->setId( $this->getDao("DeleteGroupDao")->save($deletegroup) );
  353. $this->generateXml('delete','GroupDeleteegRequest',$deletegroup,$order);
  354. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  355. if($thisStep > $order->getCompleteStep() ){
  356. $order->setCompleteStep( $thisStep );
  357. }
  358. $order->setCurrentStep( $thisStep + 1 );
  359. $order->setId( $this->getDao("OrderDao")->save($order) );
  360. $this->next($order);
  361. }
  362. }
  363. $form->setData($order->getArrayCopy());
  364. return new ViewModel(array(
  365. 'form' => $form,
  366. 'error' => $error,
  367. 'order' => $order,
  368. ));
  369. }
  370. public function groupseriescompletionaddinstancecgAction(){
  371. $creationgroup = new CreationGroup();
  372. $id = $this->params()->fromRoute('id');
  373. $order = $this->getDao("OrderDao")->get($id);
  374. $error="";
  375. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderIdUserID($id);
  376. foreach ($creationgroupFetch as $creationgroupdatum) {
  377. $groupid = $creationgroupdatum->id_group;
  378. $userid = $creationgroupdatum->id_user;
  379. }
  380. $fechaHora = date("Y-m-d H:i:s");
  381. $creationgroup->settype('CreationGroup');
  382. $creationgroup->setid_order($id);
  383. $creationgroup->setcommand('GroupSeriesCompletionAddInstancecgRequest');
  384. $creationgroup->setcreatedate($fechaHora);
  385. $creationgroup->setid_group($groupid);
  386. $creationgroup->setname('Empresa_BL_B');
  387. $creationgroup->setid_user($userid);
  388. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  389. $this->generateXml('add','GroupSeriesCompletionAddInstancecgRequest',$creationgroup,$order);
  390. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  391. if($thisStep > $order->getCompleteStep() ){
  392. $order->setCompleteStep( $thisStep );
  393. }
  394. $order->setCurrentStep( $thisStep + 1 );
  395. $order->setId( $this->getDao("OrderDao")->save($order) );
  396. $this->next($order);
  397. }
  398. public function groupdnactivatelistcgAction(){
  399. $creationgroup = new CreationGroup();
  400. $form = new GroupdnActivateListcgForm();
  401. $id = $this->params()->fromRoute('id');
  402. $order = $this->getDao("OrderDao")->get($id);
  403. $error="";
  404. $request = $this->getRequest();
  405. if ($request->isPost()) {
  406. $form->setData($request->getPost());
  407. if ($form->isValid()) {
  408. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderIdUserID($id);
  409. foreach ($creationgroupFetch as $creationgroupdatum) {
  410. $groupid = $creationgroupdatum->id_group;
  411. }
  412. $username = $form->get("number")->getValue();
  413. $fechaHora = date("Y-m-d H:i:s");
  414. $creationgroup->settype('CreationGroup');
  415. $creationgroup->setid_order($id);
  416. $creationgroup->setcommand('GroupDnActivateListcgRequest');
  417. $creationgroup->setcreatedate($fechaHora);
  418. $creationgroup->setid_group($groupid);
  419. $creationgroup->setnumber_activar($username);
  420. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  421. $this->generateXml('list','GroupDnActivateListcgRequest',$creationgroup,$order);
  422. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  423. if($thisStep > $order->getCompleteStep() ){
  424. $order->setCompleteStep( $thisStep );
  425. }
  426. $order->setCurrentStep( $thisStep + 1 );
  427. $order->setId( $this->getDao("OrderDao")->save($order) );
  428. $this->next($order);
  429. }
  430. }
  431. $form->setData($order->getArrayCopy());
  432. return new ViewModel(array(
  433. 'form' => $form,
  434. 'error' => $error,
  435. 'order' => $order,
  436. ));
  437. }
  438. public function userauthenticationmodifycgAction(){
  439. $creationgroup = new CreationGroup();
  440. $form = new UserAuthenticationModifycgForm();
  441. $id = $this->params()->fromRoute('id');
  442. $order = $this->getDao("OrderDao")->get($id);
  443. $error="";
  444. $request = $this->getRequest();
  445. if ($request->isPost()) {
  446. $form->setData($request->getPost());
  447. if ($form->isValid()) {
  448. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderIdUserID($id);
  449. foreach ($creationgroupFetch as $creationgroupdatum) {
  450. $groupid = $creationgroupdatum->id_group;
  451. $userid = $creationgroupdatum->id_user;
  452. }
  453. $username = $form->get("username")->getValue();
  454. $fechaHora = date("Y-m-d H:i:s");
  455. $creationgroup->settype('CreationGroup');
  456. $creationgroup->setid_order($id);
  457. $creationgroup->setcommand('UserAuthenticationModifycgRequest');
  458. $creationgroup->setcreatedate($fechaHora);
  459. $creationgroup->setid_group($groupid);
  460. $creationgroup->setid_user($userid);
  461. $creationgroup->setusername($username);
  462. $creationgroup->setnewpassword('npswrdquantic');
  463. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  464. $this->generateXml('modify','UserAuthenticationModifycgRequest',$creationgroup,$order);
  465. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  466. if($thisStep > $order->getCompleteStep() ){
  467. $order->setCompleteStep( $thisStep );
  468. }
  469. $order->setCurrentStep( $thisStep + 1 );
  470. $order->setId( $this->getDao("OrderDao")->save($order) );
  471. $this->next($order);
  472. }
  473. }
  474. $form->setData($order->getArrayCopy());
  475. return new ViewModel(array(
  476. 'form' => $form,
  477. 'error' => $error,
  478. 'order' => $order,
  479. ));
  480. }
  481. public function groupcallprocessingmodifypolicycgAction(){
  482. $creationgroup = new CreationGroup();
  483. $id = $this->params()->fromRoute('id');
  484. $order = $this->getDao("OrderDao")->get($id);
  485. $error="";
  486. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  487. foreach ($creationgroupFetch as $creationgroupdatum) {
  488. $groupid = $creationgroupdatum->id_group;
  489. }
  490. $fechaHora = date("Y-m-d H:i:s");
  491. $creationgroup->settype('CreationGroup');
  492. $creationgroup->setid_order($id);
  493. $creationgroup->setcommand('GroupCallProcessingModifyPolicycgRequest15sp2');
  494. $creationgroup->setcreatedate($fechaHora);
  495. $creationgroup->setid_group($groupid);
  496. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  497. $this->generateXml('modify','GroupCallProcessingModifyPolicycgRequest15sp2',$creationgroup,$order);
  498. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  499. if($thisStep > $order->getCompleteStep() ){
  500. $order->setCompleteStep( $thisStep );
  501. }
  502. $order->setCurrentStep( $thisStep + 1 );
  503. $order->setId( $this->getDao("OrderDao")->save($order) );
  504. $this->next($order);
  505. }
  506. public function userserviceassignlistcgAction(){
  507. $creationgroup = new CreationGroup();
  508. $id = $this->params()->fromRoute('id');
  509. $order = $this->getDao("OrderDao")->get($id);
  510. $error="";
  511. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderIdUserID($id);
  512. foreach ($creationgroupFetch as $creationgroupdatum) {
  513. $groupid = $creationgroupdatum->id_group;
  514. $userid = $creationgroupdatum->id_user;
  515. }
  516. $fechaHora = date("Y-m-d H:i:s");
  517. $creationgroup->settype('CreationGroup');
  518. $creationgroup->setid_order($id);
  519. $creationgroup->setcommand('UserServiceAssignListcgRequest');
  520. $creationgroup->setcreatedate($fechaHora);
  521. $creationgroup->setid_group($groupid);
  522. $creationgroup->setid_user($userid);
  523. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  524. $this->generateXml('list','UserServiceAssignListcgRequest',$creationgroup,$order);
  525. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  526. if($thisStep > $order->getCompleteStep() ){
  527. $order->setCompleteStep( $thisStep );
  528. }
  529. $order->setCurrentStep( $thisStep + 1 );
  530. $order->setId( $this->getDao("OrderDao")->save($order) );
  531. $this->next($order);
  532. }
  533. public function groupserviceassignlistcgAction(){
  534. $creationgroup = new CreationGroup();
  535. $id = $this->params()->fromRoute('id');
  536. $order = $this->getDao("OrderDao")->get($id);
  537. $error="";
  538. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  539. foreach ($creationgroupFetch as $creationgroupdatum) {
  540. $groupid = $creationgroupdatum->id_group;
  541. }
  542. $fechaHora = date("Y-m-d H:i:s");
  543. $creationgroup->settype('CreationGroup');
  544. $creationgroup->setid_order($id);
  545. $creationgroup->setcommand('GroupServiceAssignListcgRequest');
  546. $creationgroup->setcreatedate($fechaHora);
  547. $creationgroup->setid_group($groupid);
  548. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  549. $this->generateXml('list','GroupServiceAssignListcgRequest',$creationgroup,$order);
  550. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  551. if($thisStep > $order->getCompleteStep() ){
  552. $order->setCompleteStep( $thisStep );
  553. }
  554. $order->setCurrentStep( $thisStep + 1 );
  555. $order->setId( $this->getDao("OrderDao")->save($order) );
  556. $this->next($order);
  557. }
  558. public function groupservicemodifyauthorizationlistcgAction(){
  559. $creationgroup = new CreationGroup();
  560. $id = $this->params()->fromRoute('id');
  561. $order = $this->getDao("OrderDao")->get($id);
  562. $error="";
  563. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  564. foreach ($creationgroupFetch as $creationgroupdatum) {
  565. $groupid = $creationgroupdatum->id_group;
  566. }
  567. $fechaHora = date("Y-m-d H:i:s");
  568. $creationgroup->settype('CreationGroup');
  569. $creationgroup->setid_order($id);
  570. $creationgroup->setcommand('GroupServiceModifyAuthorizationListcgRequest');
  571. $creationgroup->setcreatedate($fechaHora);
  572. $creationgroup->setid_group($groupid);
  573. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  574. $this->generateXml('modify','GroupServiceModifyAuthorizationListcgRequest',$creationgroup,$order);
  575. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  576. if($thisStep > $order->getCompleteStep() ){
  577. $order->setCompleteStep( $thisStep );
  578. }
  579. $order->setCurrentStep( $thisStep + 1 );
  580. $order->setId( $this->getDao("OrderDao")->save($order) );
  581. $this->next($order);
  582. }
  583. public function serviceproviderservicemodifyauthorizationlistcgAction(){
  584. $creationgroup = new CreationGroup();
  585. $id = $this->params()->fromRoute('id');
  586. $order = $this->getDao("OrderDao")->get($id);
  587. $error="";
  588. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  589. foreach ($creationgroupFetch as $creationgroupdatum) {
  590. $groupid = $creationgroupdatum->id_group;
  591. }
  592. $fechaHora = date("Y-m-d H:i:s");
  593. $creationgroup->settype('CreationGroup');
  594. $creationgroup->setid_order($id);
  595. $creationgroup->setcommand('ServiceProviderServiceModifyAuthorizationListcgRequest');
  596. $creationgroup->setcreatedate($fechaHora);
  597. $creationgroup->setid_group($groupid);
  598. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  599. $this->generateXml('modify','ServiceProviderServiceModifyAuthorizationListcgRequest',$creationgroup,$order);
  600. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  601. if($thisStep > $order->getCompleteStep() ){
  602. $order->setCompleteStep( $thisStep );
  603. }
  604. $order->setCurrentStep( $thisStep + 1 );
  605. $order->setId( $this->getDao("OrderDao")->save($order) );
  606. $this->next($order);
  607. }
  608. public function usermodifycgAction(){
  609. $creationgroup = new CreationGroup();
  610. $form = new UserModifycgForm();
  611. $id = $this->params()->fromRoute('id');
  612. $order = $this->getDao("OrderDao")->get($id);
  613. $error="";
  614. $request = $this->getRequest();
  615. if ($request->isPost()) {
  616. $form->setData($request->getPost());
  617. if ($form->isValid()) {
  618. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderIdUserID($id);
  619. foreach ($creationgroupFetch as $creationgroupdatum) {
  620. $groupid = $creationgroupdatum->id_group;
  621. $userid = $creationgroupdatum->id_user;
  622. }
  623. $numero = $form->get("numero")->getValue();
  624. $deviceLevel = $form->get("deviceLevel")->getValue();
  625. $deviceName = $form->get("deviceName")->getValue();
  626. $lineport = $form->get("lineport")->getValue();
  627. $fechaHora = date("Y-m-d H:i:s");
  628. $creationgroup->settype('CreationGroup');
  629. $creationgroup->setid_order($id);
  630. $creationgroup->setcommand('UserModifycgRequest17sp4');
  631. $creationgroup->setcreatedate($fechaHora);
  632. $creationgroup->setid_group($groupid);
  633. $creationgroup->setid_user($userid);
  634. $creationgroup->setnumber_usuario($numero);
  635. $creationgroup->setdevicename($deviceName);
  636. $creationgroup->setdevicelevel($deviceLevel);
  637. $creationgroup->setlineport($lineport);
  638. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  639. $this->generateXml('modify','UserModifycgRequest17sp4',$creationgroup,$order);
  640. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  641. if($thisStep > $order->getCompleteStep() ){
  642. $order->setCompleteStep( $thisStep );
  643. }
  644. $order->setCurrentStep( $thisStep + 1 );
  645. $order->setId( $this->getDao("OrderDao")->save($order) );
  646. $this->next($order);
  647. }
  648. }
  649. $form->setData($order->getArrayCopy());
  650. return new ViewModel(array(
  651. 'form' => $form,
  652. 'error' => $error,
  653. 'order' => $order,
  654. ));
  655. }
  656. public function groupdnassignlistcgAction(){
  657. $creationgroup = new CreationGroup();
  658. $form = new GroupdnAssignListcgForm();
  659. $id = $this->params()->fromRoute('id');
  660. $order = $this->getDao("OrderDao")->get($id);
  661. $error="";
  662. $request = $this->getRequest();
  663. if ($request->isPost()) {
  664. $form->setData($request->getPost());
  665. if ($form->isValid()) {
  666. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  667. foreach ($creationgroupFetch as $creationgroupdatum) {
  668. $groupid = $creationgroupdatum->id_group;
  669. }
  670. $numero = $form->get("numero")->getValue();
  671. $fechaHora = date("Y-m-d H:i:s");
  672. $creationgroup->settype('CreationGroup');
  673. $creationgroup->setid_order($id);
  674. $creationgroup->setcommand('GroupDnAssignListcgRequest');
  675. $creationgroup->setcreatedate($fechaHora);
  676. $creationgroup->setid_group($groupid);
  677. $creationgroup->setnumber_grupo($numero);
  678. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  679. $this->generateXml('list','GroupDnAssignListcgRequest',$creationgroup,$order);
  680. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  681. if($thisStep > $order->getCompleteStep() ){
  682. $order->setCompleteStep( $thisStep );
  683. }
  684. $order->setCurrentStep( $thisStep + 1 );
  685. $order->setId( $this->getDao("OrderDao")->save($order) );
  686. $this->next($order);
  687. }
  688. }
  689. $form->setData($order->getArrayCopy());
  690. return new ViewModel(array(
  691. 'form' => $form,
  692. 'error' => $error,
  693. 'order' => $order,
  694. ));
  695. }
  696. public function serviceproviderdnaddlistcgAction(){
  697. $creationgroup = new CreationGroup();
  698. $form = new ServiceProviderdnAddListcgForm();
  699. $id = $this->params()->fromRoute('id');
  700. $order = $this->getDao("OrderDao")->get($id);
  701. $error="";
  702. $request = $this->getRequest();
  703. if ($request->isPost()) {
  704. $form->setData($request->getPost());
  705. if ($form->isValid()) {
  706. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  707. foreach ($creationgroupFetch as $creationgroupdatum) {
  708. $groupid = $creationgroupdatum->id_group;
  709. }
  710. $numero = $form->get("numero")->getValue();
  711. $fechaHora = date("Y-m-d H:i:s");
  712. $creationgroup->settype('CreationGroup');
  713. $creationgroup->setid_order($id);
  714. $creationgroup->setcommand('ServiceProviderDnAddListcgRequest');
  715. $creationgroup->setcreatedate($fechaHora);
  716. $creationgroup->setid_group($groupid);
  717. $creationgroup->setnumber_empresa($numero);
  718. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  719. $this->generateXml('add','ServiceProviderDnAddListcgRequest',$creationgroup,$order);
  720. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  721. if($thisStep > $order->getCompleteStep() ){
  722. $order->setCompleteStep( $thisStep );
  723. }
  724. $order->setCurrentStep( $thisStep + 1 );
  725. $order->setId( $this->getDao("OrderDao")->save($order) );
  726. $this->next($order);
  727. }
  728. }
  729. $form->setData($order->getArrayCopy());
  730. return new ViewModel(array(
  731. 'form' => $form,
  732. 'error' => $error,
  733. 'order' => $order,
  734. ));
  735. }
  736. public function useraddcgAction(){
  737. $creationgroup = new CreationGroup();
  738. $form = new UserAddcgForm();
  739. $id = $this->params()->fromRoute('id');
  740. $order = $this->getDao("OrderDao")->get($id);
  741. $error="";
  742. $error = "";
  743. $request = $this->getRequest();
  744. if ($request->isPost()) {
  745. $form->setData($request->getPost());
  746. if ($form->isValid()) {
  747. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  748. foreach ($creationgroupFetch as $creationgroupdatum) {
  749. $groupid = $creationgroupdatum->id_group;
  750. }
  751. $userid = $form->get("userid")->getValue();
  752. $firstname = $form->get("firstname")->getValue();
  753. $lastname = $form->get("lastname")->getValue();
  754. $callingLineidfirstname = $form->get("callingLineidfirstname")->getValue();
  755. $callinglineidlastname = $form->get("callinglineidlastname")->getValue();
  756. $lenguague = $form->get("lenguague")->getValue();
  757. $timezone = $form->get("timezone")->getValue();
  758. $fechaHora = date("Y-m-d H:i:s");
  759. $creationgroup->settype('CreationGroup');
  760. $creationgroup->setid_order($id);
  761. $creationgroup->setcommand('UserAddcgRequest17sp4');
  762. $creationgroup->setcreatedate($fechaHora);
  763. $creationgroup->setid_group($groupid);
  764. $creationgroup->setid_user($userid);
  765. $creationgroup->setfirstname($firstname);
  766. $creationgroup->setlastname($lastname);
  767. $creationgroup->setpassword('npswrdquantic');
  768. $creationgroup->setcallinglineidfirstname($callingLineidfirstname);
  769. $creationgroup->setcallinglineidlastname($callinglineidlastname);
  770. $creationgroup->setlanguague($lenguague);
  771. $creationgroup->settimezone($timezone);
  772. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  773. $this->generateXml('add','UserAddcgRequest17sp4',$creationgroup,$order);
  774. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  775. if($thisStep > $order->getCompleteStep() ){
  776. $order->setCompleteStep( $thisStep );
  777. }
  778. $order->setCurrentStep( $thisStep + 1 );
  779. $order->setId( $this->getDao("OrderDao")->save($order) );
  780. $this->next($order);
  781. }
  782. }
  783. $form->setData($order->getArrayCopy());
  784. return new ViewModel(array(
  785. 'form' => $form,
  786. 'error' => $error,
  787. 'order' => $order,
  788. ));
  789. }
  790. public function groupaccessdeviceaddcgAction(){
  791. $creationgroup = new CreationGroup();
  792. $form = new GroupAccessDeviceAddcgActionForm();
  793. $id = $this->params()->fromRoute('id');
  794. $order = $this->getDao("OrderDao")->get($id);
  795. $error="";
  796. $devicetypeSelect = $form->get('devicetype');
  797. $devicetypeFetch = $this->getDao("DeviceTypeDao")->fetchAll();
  798. $devicetypeArray = array();
  799. foreach ($devicetypeFetch as $devicetype) {
  800. $devicetypeArray[$devicetype->type]=$devicetype->type;
  801. }
  802. $devicetypeSelect->setAttribute('options',$devicetypeArray);
  803. $error = "";
  804. $request = $this->getRequest();
  805. if ($request->isPost()) {
  806. $form->setData($request->getPost());
  807. if ($form->isValid()) {
  808. $creationgroupFetch = $this->getDao("CreationGroupDao")->fetchByOrderId($id);
  809. foreach ($creationgroupFetch as $creationgroupdatum) {
  810. $groupid = $creationgroupdatum->id_group;
  811. }
  812. $devicename = $form->get("devicename")->getValue();
  813. $devicetype = $form->get("devicetype")->getValue();
  814. $protocol = $form->get("protocol")->getValue();
  815. $fechaHora = date("Y-m-d H:i:s");
  816. $creationgroup->settype('CreationGroup');
  817. $creationgroup->setid_order($id);
  818. $creationgroup->setcommand('GroupAccessDeviceAddcgRequest14');
  819. $creationgroup->setcreatedate($fechaHora);
  820. $creationgroup->setid_group($groupid);
  821. $creationgroup->setdevicename($devicename);
  822. $creationgroup->setdevicetype($devicetype);
  823. $creationgroup->setprotocol($protocol);
  824. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  825. $this->generateXml('add','GroupAccessDeviceAddcgRequest14',$creationgroup,$order);
  826. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  827. if($thisStep > $order->getCompleteStep() ){
  828. $order->setCompleteStep( $thisStep );
  829. }
  830. $order->setCurrentStep( $thisStep + 1 );
  831. $order->setId( $this->getDao("OrderDao")->save($order) );
  832. $this->next($order);
  833. }
  834. }
  835. $form->setData($order->getArrayCopy());
  836. return new ViewModel(array(
  837. 'form' => $form,
  838. 'error' => $error,
  839. 'order' => $order,
  840. ));
  841. }
  842. public function groupaddcgAction(){
  843. $creationgroup = new CreationGroup();
  844. $form = new GroupAddcgForm();
  845. $id = $this->params()->fromRoute('id');
  846. $order = $this->getDao("OrderDao")->get($id);
  847. $error="";
  848. $groupidSelect = $form->get('groupid');
  849. $GroupFetch = $this->getDao("GroupDao")->fetchAll();
  850. $groupArray = array();
  851. foreach ($GroupFetch as $group) {
  852. $groupArray[$group->name]=$group->name;
  853. }
  854. $groupidSelect->setAttribute('options',$groupArray);
  855. $error = "";
  856. $request = $this->getRequest();
  857. if ($request->isPost()) {
  858. $form->setData($request->getPost());
  859. if ($form->isValid()) {
  860. $groupid = $form->get("groupid")->getValue();
  861. $domain = $form->get("domain")->getValue();
  862. $userlimit = $form->get("userlimit")->getValue();
  863. $groupname = $form->get("groupname")->getValue();
  864. $callingLineIdName = $form->get("callingLineIdName")->getValue();
  865. $timezone = $form->get("timezone")->getValue();
  866. $contactname = $form->get("contactname")->getValue();
  867. $contactnumber = $form->get("contactnumber")->getValue();
  868. $fechaHora = date("Y-m-d H:i:s");
  869. $creationgroup->settype('CreationGroup');
  870. $creationgroup->setid_order($id);
  871. $creationgroup->setcommand('GroupAddcgRequest');
  872. $creationgroup->setcreatedate($fechaHora);
  873. $creationgroup->setid_group($groupid);
  874. $creationgroup->setgroupname($groupname);
  875. $creationgroup->setdomain($domain);
  876. $creationgroup->setuserlimit($userlimit);
  877. $creationgroup->setcallinglineidname($callingLineIdName);
  878. $creationgroup->settimezone($timezone);
  879. $creationgroup->setcontactname($contactname);
  880. $creationgroup->setcontactnumber($contactnumber);
  881. $order->setGroupId($groupid);
  882. $creationgroup->setId( $this->getDao("CreationGroupDao")->save($creationgroup) );
  883. $this->generateXml('add','GroupAddcgRequest',$creationgroup,$order);
  884. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  885. if($thisStep > $order->getCompleteStep() ){
  886. $order->setCompleteStep( $thisStep );
  887. }
  888. $order->setCurrentStep( $thisStep + 1 );
  889. $order->setId( $this->getDao("OrderDao")->save($order) );
  890. $this->next($order);
  891. }
  892. }
  893. $form->setData($order->getArrayCopy());
  894. return new ViewModel(array(
  895. 'form' => $form,
  896. 'error' => $error,
  897. 'order' => $order,
  898. ));
  899. }
  900. public function serviceproviderdndeletelistelAction(){
  901. $deleteline = new DeleteLine();
  902. $form = new ServiceProviderdnDeleteListelForm();
  903. $id = $this->params()->fromRoute('id');
  904. $order = $this->getDao("OrderDao")->get($id);
  905. $error="";
  906. $error = "";
  907. $request = $this->getRequest();
  908. if ($request->isPost()) {
  909. $form->setData($request->getPost());
  910. if ($form->isValid()) {
  911. $number = $form->get("numero")->getValue();
  912. $DeleteLineFetch = $this->getDao("DeleteLineDao")->fetchByOrderId($id);
  913. foreach ($DeleteLineFetch as $deletelinedatum) {
  914. $id_group = $deletelinedatum->id_group;
  915. }
  916. $fechaHora = date("Y-m-d H:i:s");
  917. $deleteline->settype('Deleteline');
  918. $deleteline->setid_order($id);
  919. $deleteline->setcommand('ServiceProviderDnDeleteListelRequest');
  920. $deleteline->setcreatedate($fechaHora);
  921. $deleteline->setid_group($id_group);
  922. $deleteline->setnumber_empresa($number);
  923. $order->setGroupId($id_group);
  924. $deleteline->setId( $this->getDao("DeleteLineDao")->save($deleteline) );
  925. $this->generateXml('delete','ServiceProviderDnDeleteListelRequest',$deleteline,$order);
  926. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  927. if($thisStep > $order->getCompleteStep() ){
  928. $order->setCompleteStep( $thisStep );
  929. }
  930. $order->setCurrentStep( $thisStep + 1 );
  931. $order->setId( $this->getDao("OrderDao")->save($order) );
  932. $this->next($order);
  933. }
  934. }
  935. $form->setData($order->getArrayCopy());
  936. return new ViewModel(array(
  937. 'form' => $form,
  938. 'error' => $error,
  939. 'order' => $order,
  940. ));
  941. }
  942. public function groupdnunassignlistelAction(){
  943. $deleteline = new DeleteLine();
  944. $form = new GroupdnunAssignListelForm();
  945. $id = $this->params()->fromRoute('id');
  946. $order = $this->getDao("OrderDao")->get($id);
  947. $error="";
  948. $error = "";
  949. $request = $this->getRequest();
  950. if ($request->isPost()) {
  951. $form->setData($request->getPost());
  952. if ($form->isValid()) {
  953. $number = $form->get("numero")->getValue();
  954. $DeleteLineFetch = $this->getDao("DeleteLineDao")->fetchByOrderId($id);
  955. foreach ($DeleteLineFetch as $deletelinedatum) {
  956. $id_group = $deletelinedatum->id_group;
  957. }
  958. $fechaHora = date("Y-m-d H:i:s");
  959. $deleteline->settype('Deleteline');
  960. $deleteline->setid_order($id);
  961. $deleteline->setcommand('GroupDnUnassignListelRequest');
  962. $deleteline->setcreatedate($fechaHora);
  963. $deleteline->setid_group($id_group);
  964. $deleteline->setnumber_grupo($number);
  965. $order->setGroupId($id_group);
  966. $deleteline->setId( $this->getDao("DeleteLineDao")->save($deleteline) );
  967. $this->generateXml('list','GroupDnUnassignListelRequest',$deleteline,$order);
  968. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  969. if($thisStep > $order->getCompleteStep() ){
  970. $order->setCompleteStep( $thisStep );
  971. }
  972. $order->setCurrentStep( $thisStep + 1 );
  973. $order->setId( $this->getDao("OrderDao")->save($order) );
  974. $this->next($order);
  975. }
  976. }
  977. $form->setData($order->getArrayCopy());
  978. return new ViewModel(array(
  979. 'form' => $form,
  980. 'error' => $error,
  981. 'order' => $order,
  982. ));
  983. }
  984. public function groupcallprocessingmodifypolicyelAction(){
  985. $deleteline = new DeleteLine();
  986. $id = $this->params()->fromRoute('id');
  987. $order = $this->getDao("OrderDao")->get($id);
  988. $error="";
  989. $DeleteLineFetch = $this->getDao("DeleteLineDao")->fetchByOrderId($id);
  990. foreach ($DeleteLineFetch as $deletelinedatum) {
  991. $id_group = $deletelinedatum->id_group;
  992. }
  993. $fechaHora = date("Y-m-d H:i:s");
  994. $deleteline->settype('Deleteline');
  995. $deleteline->setcommand('GroupCallProcessingModifyPolicyelRequest15sp2');
  996. $deleteline->setid_order($id);
  997. $deleteline->setid_group($id_group);
  998. $deleteline->setcreatedate($fechaHora);
  999. $deleteline->setId( $this->getDao("DeleteLineDao")->save($deleteline) );
  1000. $this->generateXml('modify','GroupCallProcessingModifyPolicyelRequest15sp2',$deleteline,$order);
  1001. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1002. if($thisStep > $order->getCompleteStep() ){
  1003. $order->setCompleteStep( $thisStep );
  1004. }
  1005. $order->setCurrentStep( $thisStep + 1 );
  1006. $order->setId( $this->getDao("OrderDao")->save($order) );
  1007. $this->next($order);
  1008. }
  1009. public function groupmodifyelAction(){
  1010. $deleteline = new DeleteLine();
  1011. $id = $this->params()->fromRoute('id');
  1012. $order = $this->getDao("OrderDao")->get($id);
  1013. $error="";
  1014. $DeleteLineFetch = $this->getDao("DeleteLineDao")->fetchByOrderId($id);
  1015. foreach ($DeleteLineFetch as $deletelinedatum) {
  1016. $id_group = $deletelinedatum->id_group;
  1017. }
  1018. $GroupFetch = $this->getDao("GroupDao")->fetchById($id_group);
  1019. foreach ($GroupFetch as $groupdatum) {
  1020. $contact_name = $groupdatum->contact_name;
  1021. $contact_number = $groupdatum->contact_number;
  1022. $userlimit = $groupdatum->userlimit;
  1023. $provider_id = $groupdatum->provider_id;
  1024. $timezone = $groupdatum->timezone;
  1025. $userlimit = $groupdatum->userlimit;
  1026. }
  1027. $DomainFetch = $this->getDao("ProviderDao")->fetchBy_Id($provider_id);
  1028. foreach ($DomainFetch as $domaindatum) {
  1029. $domain = $domaindatum->domain;
  1030. }
  1031. $fechaHora = date("Y-m-d H:i:s");
  1032. $deleteline->settype('Deleteline');
  1033. $deleteline->setcommand('GroupModifyelRequest');
  1034. $deleteline->setid_order($id);
  1035. $deleteline->setid_group($id_group);
  1036. $deleteline->setcreatedate($fechaHora);
  1037. $deleteline->setcontactName($contact_name);
  1038. $deleteline->setcontactnumber($contact_number);
  1039. $deleteline->settimezone($timezone);
  1040. $deleteline->setgroupname('Empresa');
  1041. $deleteline->setsetcallinglineidname('Empresa');
  1042. $deleteline->setuserlimit($userlimit);
  1043. $deleteline->setid_service_provider($provider_id);
  1044. $deleteline->setdomain($domain);
  1045. $deleteline->setId( $this->getDao("DeleteLineDao")->save($deleteline) );
  1046. $this->generateXml('modify','GroupModifyelRequest',$deleteline,$order);
  1047. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1048. if($thisStep > $order->getCompleteStep() ){
  1049. $order->setCompleteStep( $thisStep );
  1050. }
  1051. $order->setCurrentStep( $thisStep + 1 );
  1052. $order->setId( $this->getDao("OrderDao")->save($order) );
  1053. $this->next($order);
  1054. }
  1055. public function userdeleteelAction(){
  1056. $deleteline = new DeleteLine();
  1057. $form = new UserDeleteelForm();
  1058. $id = $this->params()->fromRoute('id');
  1059. $order = $this->getDao("OrderDao")->get($id);
  1060. $error="";
  1061. $userIdSelect = $form->get('userId');
  1062. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchAllA();
  1063. $userIDArray = array();
  1064. foreach ($AdditionLineFetch as $AdditionLine) {
  1065. $userIDArray[$AdditionLine->id]=$AdditionLine->id_user;
  1066. }
  1067. $userIdSelect->setAttribute('options',$userIDArray);
  1068. $error = "";
  1069. $request = $this->getRequest();
  1070. if ($request->isPost()) {
  1071. $form->setData($request->getPost());
  1072. if ($form->isValid()) {
  1073. $id_user = $form->get("userId")->getValue();
  1074. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByUserId($id_user);
  1075. foreach ($AdditionLineFetch as $AdditionLn) {
  1076. $id_group = $AdditionLn->id_group;
  1077. }
  1078. $fechaHora = date("Y-m-d H:i:s");
  1079. $deleteline->settype('Deleteline');
  1080. $deleteline->setid_order($id);
  1081. $deleteline->setid_group($id_group);
  1082. $deleteline->setcommand('UserDeleteelRequest');
  1083. $deleteline->setcreatedate($fechaHora);
  1084. $deleteline->setid_user($id_user);
  1085. $order->setGroupId($id_group);
  1086. $deleteline->setId( $this->getDao("DeleteLineDao")->save($deleteline) );
  1087. $this->generateXml('delete','UserDeleteelRequest',$deleteline,$order);
  1088. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1089. if($thisStep > $order->getCompleteStep() ){
  1090. $order->setCompleteStep( $thisStep );
  1091. }
  1092. $order->setCurrentStep( $thisStep + 1 );
  1093. $order->setId( $this->getDao("OrderDao")->save($order) );
  1094. $this->next($order);
  1095. }
  1096. }
  1097. $form->setData($order->getArrayCopy());
  1098. return new ViewModel(array(
  1099. 'form' => $form,
  1100. 'error' => $error,
  1101. 'order' => $order,
  1102. ));
  1103. }
  1104. public function systemdomainaddAction(){
  1105. $form = new DomainAddForm();
  1106. $id = $this->params()->fromRoute('id');
  1107. $order = $this->getDao("OrderDao")->get($id);
  1108. $id_platform = $order->getPlatformId();
  1109. //Llena el dropdown de Domain
  1110. $id_domainSelect = $form->get('id_domain');
  1111. $id_domainFetch = $this->getDao("DomainDao")->fetchByPlatformId($id_platform);
  1112. $id_domainArray = array();
  1113. foreach ($id_domainFetch as $domain) {
  1114. $id_domainArray[$domain->id] = $domain->name;
  1115. }
  1116. $id_domainSelect->setAttribute('options',$id_domainArray);
  1117. //Llena el dropdown de Domain
  1118. $error = "";
  1119. $request = $this->getRequest();
  1120. if ($request->isPost()) {
  1121. $form->setData($request->getPost());
  1122. $domainadd = new DomainAdd();
  1123. if ($form->isValid()) {
  1124. $id_domain = $form->get("id_domain")->getValue();
  1125. $domain = $this->getDao("DomainDao")->fetchById($id_domain);
  1126. $domainadd->setName($domain->name);
  1127. $domainadd->setid_order($id);
  1128. $domainadd->setid_domain($id_domain);
  1129. $domainadd->setId( $this->getDao("DomainAddDao")->save($domainadd) );
  1130. $this->generateXml('add','SystemDomainAddRequest',$domainadd,$order);
  1131. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1132. if($thisStep > $order->getCompleteStep() ){
  1133. $order->setCompleteStep( $thisStep );
  1134. }
  1135. $order->setCurrentStep( $thisStep + 1 );
  1136. $order->setId( $this->getDao("OrderDao")->save($order) );
  1137. $this->next($order);
  1138. }
  1139. }
  1140. $form->setData($order->getArrayCopy());
  1141. return new ViewModel(array(
  1142. 'form' => $form,
  1143. //'error' => $error,
  1144. 'order' => $order,
  1145. ));
  1146. }
  1147. public function serviceprovideraddAction(){
  1148. $form = new ServiceProviderAddForm();
  1149. $id = $this->params()->fromRoute('id');
  1150. $order = $this->getDao("OrderDao")->get($id);
  1151. $id_platform = $order->getPlatformId();
  1152. //Llena el dropdaown de Proveedor de Servicios
  1153. $id_service_providerSelect = $form->get('id_service_provider');
  1154. $providerFetch = $this->getDao("ProviderDao")->fetchByPlatformId($id_platform);
  1155. $providerArray = array();
  1156. foreach ($providerFetch as $provider) {
  1157. $providerArray[$provider->id] = $provider->name;
  1158. }
  1159. $id_service_providerSelect->setAttribute('options',$providerArray);
  1160. //Llena el dropdaown de Proveedor de Servicios
  1161. //Coloca el Id de domain_order
  1162. //$id_order_domain_value = $domainadd_id->id;
  1163. //$form->get('id_order_domain')->setValue($id_order_domain_value);
  1164. //Coloca el Id de domain_order
  1165. $error = "";
  1166. $request = $this->getRequest();
  1167. if ($request->isPost()) {
  1168. $form->setData($request->getPost());
  1169. $provideradd = new ProviderAdd();
  1170. if ($form->isValid()) {
  1171. $id_service_provider = $form->get("id_service_provider")->getValue();
  1172. $provider = $this->getDao("ProviderDao")->fetchById($id_service_provider);
  1173. $id_domainFetch = $this->getDao("DomainAddDao")->fetchByOrderId($id);
  1174. $provideradd->setName($provider->name);
  1175. $provideradd->setid_order($id);
  1176. $provideradd->setid_provider($id_service_provider);
  1177. $provideradd->setname_domain($id_domainFetch->name);
  1178. $provideradd->setId( $this->getDao("ProviderAddDao")->save($provideradd) );
  1179. $this->generateXml('add','ServiceProviderAddRequest13mp2',$provideradd,$order);
  1180. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1181. if($thisStep > $order->getCompleteStep() ){
  1182. $order->setCompleteStep( $thisStep );
  1183. }
  1184. $order->setCurrentStep( $thisStep + 1 );
  1185. $order->setId( $this->getDao("OrderDao")->save($order) );
  1186. $this->next($order);
  1187. }
  1188. }
  1189. $form->setData($order->getArrayCopy());
  1190. return new ViewModel(array(
  1191. 'form' => $form,
  1192. //'error' => $error,
  1193. 'order' => $order,
  1194. ));
  1195. }
  1196. public function groupdnactivatelistcnAction(){
  1197. $changenumber = new ChangeNumber();
  1198. $form = new GroupdnActivateListcnForm();
  1199. $id = $this->params()->fromRoute('id');
  1200. $order = $this->getDao("OrderDao")->get($id);
  1201. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1202. $error="";
  1203. $request = $this->getRequest();
  1204. if ($request->isPost()) {
  1205. $form->setData($request->getPost());
  1206. if ($form->isValid()) {
  1207. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1208. foreach ($ChangeNumberFetch as $changenumber_data) {
  1209. $id_group = $changenumber_data->id_group;
  1210. $userId = $changenumber_data->id_user;
  1211. $devicename = $changenumber_data->devicename;
  1212. $devicelevel = $changenumber_data->devicelevel;
  1213. $lineport = $changenumber_data->lineport;
  1214. }
  1215. $number = $form->get("numero")->getValue();
  1216. $fechaHora = date("Y-m-d H:i:s");
  1217. $changenumber->settype('ChangeNumber');
  1218. $changenumber->setid_order($id);
  1219. $changenumber->setid_group($id_group);
  1220. $changenumber->setcommand('GroupDnActivateListcnRequest');
  1221. $changenumber->setnumber_activar($number);
  1222. $changenumber->setcreatedate($fechaHora);
  1223. $changenumber->setid_user($userId);
  1224. $changenumber->setdevicename($devicename);
  1225. $changenumber->setdevicelevel($devicelevel);
  1226. $changenumber->setlineport($lineport);
  1227. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1228. $this->generateXml('list','GroupDnActivateListcnRequest',$changenumber,$order);
  1229. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1230. if($thisStep > $order->getCompleteStep() ){
  1231. $order->setCompleteStep( $thisStep );
  1232. }
  1233. $order->setCurrentStep( $thisStep + 1 );
  1234. $order->setId( $this->getDao("OrderDao")->save($order) );
  1235. $this->next($order);
  1236. }
  1237. }
  1238. return new ViewModel(array(
  1239. 'form' => $form,
  1240. 'error' => $error,
  1241. 'order' => $order,));
  1242. }
  1243. public function usermodifycnaAction(){
  1244. $changenumber = new ChangeNumber();
  1245. $form = new UserModifycnaForm();
  1246. $id = $this->params()->fromRoute('id');
  1247. $order = $this->getDao("OrderDao")->get($id);
  1248. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1249. $error="";
  1250. $request = $this->getRequest();
  1251. if ($request->isPost()) {
  1252. $form->setData($request->getPost());
  1253. if ($form->isValid()) {
  1254. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1255. foreach ($ChangeNumberFetch as $changenumber_data) {
  1256. $id_group = $changenumber_data->id_group;
  1257. $userId = $changenumber_data->id_user;
  1258. $devicename = $changenumber_data->devicename;
  1259. $devicelevel = $changenumber_data->devicelevel;
  1260. $lineport = $changenumber_data->lineport;
  1261. }
  1262. $number = $form->get("numero")->getValue();
  1263. $fechaHora = date("Y-m-d H:i:s");
  1264. $changenumber->settype('ChangeNumber');
  1265. $changenumber->setid_order($id);
  1266. $changenumber->setid_group($id_group);
  1267. $changenumber->setcommand('UserModifycnaRequest17sp4');
  1268. $changenumber->setnumber_usuario($number);
  1269. $changenumber->setcreatedate($fechaHora);
  1270. $changenumber->setid_user($userId);
  1271. $changenumber->setdevicename($devicename);
  1272. $changenumber->setdevicelevel($devicelevel);
  1273. $changenumber->setlineport($lineport);
  1274. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1275. $this->generateXml('modify','UserModifycnaRequest17sp4',$changenumber,$order);
  1276. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1277. if($thisStep > $order->getCompleteStep() ){
  1278. $order->setCompleteStep( $thisStep );
  1279. }
  1280. $order->setCurrentStep( $thisStep + 1 );
  1281. $order->setId( $this->getDao("OrderDao")->save($order) );
  1282. $this->next($order);
  1283. }
  1284. }
  1285. return new ViewModel(array(
  1286. 'form' => $form,
  1287. 'error' => $error,
  1288. 'order' => $order,));
  1289. }
  1290. public function groupdnassignlistcnAction(){
  1291. $changenumber = new ChangeNumber();
  1292. $form = new GroupdnAssignListcnForm();
  1293. $id = $this->params()->fromRoute('id');
  1294. $order = $this->getDao("OrderDao")->get($id);
  1295. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1296. $error="";
  1297. $request = $this->getRequest();
  1298. if ($request->isPost()) {
  1299. $form->setData($request->getPost());
  1300. if ($form->isValid()) {
  1301. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1302. foreach ($ChangeNumberFetch as $changenumber_data) {
  1303. $id_group = $changenumber_data->id_group;
  1304. $userId = $changenumber_data->id_user;
  1305. $devicename = $changenumber_data->devicename;
  1306. $devicelevel = $changenumber_data->devicelevel;
  1307. $lineport = $changenumber_data->lineport;
  1308. }
  1309. $number = $form->get("numero")->getValue();
  1310. $fechaHora = date("Y-m-d H:i:s");
  1311. $changenumber->settype('ChangeNumber');
  1312. $changenumber->setid_order($id);
  1313. $changenumber->setid_group($id_group);
  1314. $changenumber->setcommand('GroupDnAssignListcnRequest');
  1315. $changenumber->setnumber_asignar($number);
  1316. $changenumber->setcreatedate($fechaHora);
  1317. $changenumber->setid_user($userId);
  1318. $changenumber->setdevicename($devicename);
  1319. $changenumber->setdevicelevel($devicelevel);
  1320. $changenumber->setlineport($lineport);
  1321. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1322. $this->generateXml('list','GroupDnAssignListcnRequest',$changenumber,$order);
  1323. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1324. if($thisStep > $order->getCompleteStep() ){
  1325. $order->setCompleteStep( $thisStep );
  1326. }
  1327. $order->setCurrentStep( $thisStep + 1 );
  1328. $order->setId( $this->getDao("OrderDao")->save($order) );
  1329. $this->next($order);
  1330. }
  1331. }
  1332. return new ViewModel(array(
  1333. 'form' => $form,
  1334. 'error' => $error,
  1335. 'order' => $order,));
  1336. }
  1337. public function serviceproviderdnaddlistcnAction(){
  1338. $changenumber = new ChangeNumber();
  1339. $form = new ServiceProviderdnAddListcnForm();
  1340. $id = $this->params()->fromRoute('id');
  1341. $order = $this->getDao("OrderDao")->get($id);
  1342. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1343. $error="";
  1344. $request = $this->getRequest();
  1345. if ($request->isPost()) {
  1346. $form->setData($request->getPost());
  1347. if ($form->isValid()) {
  1348. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1349. foreach ($ChangeNumberFetch as $changenumber_data) {
  1350. $id_group = $changenumber_data->id_group;
  1351. $userId = $changenumber_data->id_user;
  1352. $devicename = $changenumber_data->devicename;
  1353. $devicelevel = $changenumber_data->devicelevel;
  1354. $lineport = $changenumber_data->lineport;
  1355. }
  1356. $number = $form->get("numero")->getValue();
  1357. $fechaHora = date("Y-m-d H:i:s");
  1358. $changenumber->settype('ChangeNumber');
  1359. $changenumber->setid_order($id);
  1360. $changenumber->setid_group($id_group);
  1361. $changenumber->setcommand('ServiceProviderDnAddListcnRequest');
  1362. $changenumber->setnumber_agregar($number);
  1363. $changenumber->setcreatedate($fechaHora);
  1364. $changenumber->setid_user($userId);
  1365. $changenumber->setdevicename($devicename);
  1366. $changenumber->setdevicelevel($devicelevel);
  1367. $changenumber->setlineport($lineport);
  1368. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1369. $this->generateXml('add','ServiceProviderDnAddListcnRequest',$changenumber,$order);
  1370. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1371. if($thisStep > $order->getCompleteStep() ){
  1372. $order->setCompleteStep( $thisStep );
  1373. }
  1374. $order->setCurrentStep( $thisStep + 1 );
  1375. $order->setId( $this->getDao("OrderDao")->save($order) );
  1376. $this->next($order);
  1377. }
  1378. }
  1379. return new ViewModel(array(
  1380. 'form' => $form,
  1381. 'error' => $error,
  1382. 'order' => $order,));
  1383. }
  1384. public function serviceproviderdndeletelistcnAction(){
  1385. $changenumber = new ChangeNumber();
  1386. $form = new ServiceProviderdnDeleteListcnForm();
  1387. $id = $this->params()->fromRoute('id');
  1388. $order = $this->getDao("OrderDao")->get($id);
  1389. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1390. $error="";
  1391. $request = $this->getRequest();
  1392. if ($request->isPost()) {
  1393. $form->setData($request->getPost());
  1394. if ($form->isValid()) {
  1395. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1396. foreach ($ChangeNumberFetch as $changenumber_data) {
  1397. $id_group = $changenumber_data->id_group;
  1398. $userId = $changenumber_data->id_user;
  1399. $devicename = $changenumber_data->devicename;
  1400. $devicelevel = $changenumber_data->devicelevel;
  1401. $lineport = $changenumber_data->lineport;
  1402. }
  1403. $number = $form->get("numero")->getValue();
  1404. $fechaHora = date("Y-m-d H:i:s");
  1405. $changenumber->settype('ChangeNumber');
  1406. $changenumber->setid_order($id);
  1407. $changenumber->setid_group($id_group);
  1408. $changenumber->setcommand('ServiceProviderDnDeleteListcnRequest');
  1409. $changenumber->setnumber_empresa($number);
  1410. $changenumber->setcreatedate($fechaHora);
  1411. $changenumber->setid_user($userId);
  1412. $changenumber->setdevicename($devicename);
  1413. $changenumber->setdevicelevel($devicelevel);
  1414. $changenumber->setlineport($lineport);
  1415. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1416. $this->generateXml('delete','ServiceProviderDnDeleteListcnRequest',$changenumber,$order);
  1417. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1418. if($thisStep > $order->getCompleteStep() ){
  1419. $order->setCompleteStep( $thisStep );
  1420. }
  1421. $order->setCurrentStep( $thisStep + 1 );
  1422. $order->setId( $this->getDao("OrderDao")->save($order) );
  1423. $this->next($order);
  1424. }
  1425. }
  1426. return new ViewModel(array(
  1427. 'form' => $form,
  1428. 'error' => $error,
  1429. 'order' => $order,));
  1430. }
  1431. public function groupdnunassignlistcnAction(){
  1432. $changenumber = new ChangeNumber();
  1433. $form = new GroupdnunAssignListcnForm();
  1434. $id = $this->params()->fromRoute('id');
  1435. $order = $this->getDao("OrderDao")->get($id);
  1436. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1437. $error="";
  1438. $request = $this->getRequest();
  1439. if ($request->isPost()) {
  1440. $form->setData($request->getPost());
  1441. if ($form->isValid()) {
  1442. $ChangeNumberFetch = $this->getDao("ChangeNumberDao")->fetchByOrderId($id);
  1443. foreach ($ChangeNumberFetch as $changenumber_data) {
  1444. $id_group = $changenumber_data->id_group;
  1445. $userId = $changenumber_data->id_user;
  1446. $devicename = $changenumber_data->devicename;
  1447. $devicelevel = $changenumber_data->devicelevel;
  1448. $lineport = $changenumber_data->lineport;
  1449. }
  1450. $number = $form->get("numero")->getValue();
  1451. $fechaHora = date("Y-m-d H:i:s");
  1452. $changenumber->settype('ChangeNumber');
  1453. $changenumber->setid_order($id);
  1454. $changenumber->setid_group($id_group);
  1455. $changenumber->setcommand('GroupDnUnassignListcnRequest');
  1456. $changenumber->setnumber_grupo($number);
  1457. $changenumber->setcreatedate($fechaHora);
  1458. $changenumber->setid_user($userId);
  1459. $changenumber->setdevicename($devicename);
  1460. $changenumber->setdevicelevel($devicelevel);
  1461. $changenumber->setlineport($lineport);
  1462. $order->setGroupId($id_group);
  1463. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1464. $this->generateXml('list','GroupDnUnassignListcnRequest',$changenumber,$order);
  1465. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1466. if($thisStep > $order->getCompleteStep() ){
  1467. $order->setCompleteStep( $thisStep );
  1468. }
  1469. $order->setCurrentStep( $thisStep + 1 );
  1470. $order->setId( $this->getDao("OrderDao")->save($order) );
  1471. $this->next($order);
  1472. }
  1473. }
  1474. return new ViewModel(array(
  1475. 'form' => $form,
  1476. 'error' => $error,
  1477. 'order' => $order,));
  1478. }
  1479. public function usermodifycnAction(){
  1480. $changenumber = new ChangeNumber();
  1481. $form = new UserModifycnForm();
  1482. $id = $this->params()->fromRoute('id');
  1483. $order = $this->getDao("OrderDao")->get($id);
  1484. $userIdSelect = $form->get('userId');
  1485. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchAllA();
  1486. $userIDArray = array();
  1487. foreach ($AdditionLineFetch as $AdditionLine) {
  1488. $userIDArray[$AdditionLine->id]=$AdditionLine->id_user;
  1489. }
  1490. $userIdSelect->setAttribute('options',$userIDArray);
  1491. $error="";
  1492. $request = $this->getRequest();
  1493. if ($request->isPost()) {
  1494. $form->setData($request->getPost());
  1495. $fechaHora = date("Y-m-d H:i:s");
  1496. if ($form->isValid()) {
  1497. $userId = $form->get("userId")->getValue();
  1498. $devicelevel = $form->get("devicelevel")->getValue();
  1499. $devicename = $form->get("devicename")->getValue();
  1500. $lineport = $form->get("lineport")->getValue();
  1501. $id_group = $form->get("id_group")->getValue();
  1502. $changenumber->settype('ChangeNumber');
  1503. $changenumber->setid_user($userId);
  1504. $changenumber->setid_order($id);
  1505. $changenumber->setdevicename($devicename);
  1506. $changenumber->setdevicelevel($devicelevel);
  1507. $changenumber->setlineport($lineport);
  1508. $changenumber->setid_group($id_group);
  1509. $changenumber->setcommand('UserModifycnRequest17sp4');
  1510. $changenumber->setcreatedate($fechaHora);
  1511. $changenumber->setid_order($id);
  1512. $changenumber->setId( $this->getDao("ChangeNumberDao")->save($changenumber) );
  1513. $this->generateXml('modify','UserModifycnRequest17sp4',$changenumber,$order);
  1514. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1515. if($thisStep > $order->getCompleteStep() ){
  1516. $order->setCompleteStep( $thisStep );
  1517. }
  1518. $order->setCurrentStep( $thisStep + 1 );
  1519. $order->setId( $this->getDao("OrderDao")->save($order) );
  1520. $this->next($order);
  1521. }
  1522. }
  1523. return new ViewModel(array(
  1524. 'form' => $form,
  1525. 'error' => $error,
  1526. 'order' => $order,));
  1527. }
  1528. public function groupseriescompletionmodifyinstancealAction (){
  1529. $AdditionLine = new AdditionLine();
  1530. $form = new GroupSeriesCompletionModifyInstancealForm();
  1531. $id = $this->params()->fromRoute('id');
  1532. $order = $this->getDao("OrderDao")->get($id);
  1533. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1534. $error="";
  1535. $request = $this->getRequest();
  1536. if ($request->isPost()) {
  1537. $form->setData($request->getPost());
  1538. $fechaHora = date("Y-m-d H:i:s");
  1539. if ($form->isValid()) {
  1540. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1541. $contactname = "";
  1542. $group = "";
  1543. foreach ($AdditionLineFetch as $AdditionLine) {
  1544. $groupname = $AdditionLine->contactname;
  1545. }
  1546. $nuevonombre = $form->get("nuevonombre")->getValue();
  1547. $usera = $form->get("usera")->getValue();
  1548. $userb = $form->get("userb")->getValue();
  1549. $AdditionLine->settype('AditionLine');
  1550. $AdditionLine->setid_order($id);
  1551. $AdditionLine->setid_group( $order->getGroupId());
  1552. $AdditionLine->setgroupnamenew($nuevonombre);
  1553. $AdditionLine->setuserid1($usera);
  1554. $AdditionLine->setuserid2($userb);
  1555. $AdditionLine->setgroupname($groupname);
  1556. $AdditionLine->setcommand('GroupSeriesCompletionModifyInstancealRequest');
  1557. $AdditionLine->setcreatedate($fechaHora);
  1558. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1559. $this->generateXml('modify','GroupSeriesCompletionModifyInstancealRequest',$AdditionLine,$order);
  1560. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1561. if($thisStep > $order->getCompleteStep() ){
  1562. $order->setCompleteStep( $thisStep );
  1563. }
  1564. $order->setCurrentStep( $thisStep + 1 );
  1565. $order->setId( $this->getDao("OrderDao")->save($order) );
  1566. $this->next($order);
  1567. }
  1568. }
  1569. return new ViewModel(array(
  1570. 'form' => $form,
  1571. 'error' => $error,
  1572. 'order' => $order,
  1573. ));
  1574. }
  1575. public function groupdnactivatelistalAction (){
  1576. $AdditionLine = new AdditionLine();
  1577. $id = $this->params()->fromRoute('id');
  1578. $order = $this->getDao("OrderDao")->get($id);
  1579. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1580. $contactname = "";
  1581. $group = "";
  1582. foreach ($AdditionLineFetch as $AdditionLine) {
  1583. $id_user = $AdditionLine->id_user;
  1584. }
  1585. $fechaHora = date("Y-m-d H:i:s");
  1586. $AdditionLine->settype('AditionLine');
  1587. $AdditionLine->setid_order($id);
  1588. $AdditionLine->setcommand('GroupDnActivateListalRequest');
  1589. $AdditionLine->setcreatedate($fechaHora);
  1590. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1591. $this->generateXml('list','GroupDnActivateListalRequest',$AdditionLine,$order);
  1592. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1593. if($thisStep > $order->getCompleteStep() ){
  1594. $order->setCompleteStep( $thisStep );
  1595. }
  1596. $order->setCurrentStep( $thisStep + 1 );
  1597. $order->setId( $this->getDao("OrderDao")->save($order) );
  1598. return $this->next($order);
  1599. }
  1600. public function userauthenticationmodifyalAction(){
  1601. $AdditionLine = new AdditionLine();
  1602. $form = new UserAuthenticationModifyalForm();
  1603. $id = $this->params()->fromRoute('id');
  1604. $order = $this->getDao("OrderDao")->get($id);
  1605. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1606. $contactname = "";
  1607. $group = "";
  1608. foreach ($AdditionLineFetch as $AdditionLine) {
  1609. $id_user = $AdditionLine->id_user;
  1610. }
  1611. $error="";
  1612. $request = $this->getRequest();
  1613. if ($request->isPost()) {
  1614. $form->setData($request->getPost());
  1615. $fechaHora = date("Y-m-d H:i:s");
  1616. if ($form->isValid()) {
  1617. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1618. $contactname = "";
  1619. $group = "";
  1620. foreach ($AdditionLineFetch as $AdditionLine) {
  1621. $id_group = $AdditionLine->id_group;
  1622. }
  1623. $username = $form->get("username")->getValue();
  1624. $AdditionLine->settype('AditionLine');
  1625. $AdditionLine->setname($username);
  1626. //$AdditionLine->setlineport($linePort);
  1627. $AdditionLine->setclave('npswrdquantic');
  1628. $AdditionLine->setcommand('UserAuthenticationModifyalRequest');
  1629. $AdditionLine->setcreatedate($fechaHora);
  1630. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1631. $this->generateXml('modify','UserAuthenticationModifyalRequest',$AdditionLine,$order);
  1632. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1633. if($thisStep > $order->getCompleteStep() ){
  1634. $order->setCompleteStep( $thisStep );
  1635. }
  1636. $order->setCurrentStep( $thisStep + 1 );
  1637. $order->setId( $this->getDao("OrderDao")->save($order) );
  1638. $this->next($order);
  1639. }
  1640. }
  1641. return new ViewModel(array(
  1642. 'form' => $form,
  1643. 'error' => $error,
  1644. 'order' => $order,
  1645. ));
  1646. }
  1647. public function groupcallprocessingmodifypolicyalAction(){
  1648. $AdditionLine = new AdditionLine();
  1649. $id = $this->params()->fromRoute('id');
  1650. $order = $this->getDao("OrderDao")->get($id);
  1651. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1652. foreach ($AdditionLineFetch as $AdditionLine) {
  1653. $id_user = $AdditionLine->id_user;
  1654. }
  1655. $fechaHora = date("Y-m-d H:i:s");
  1656. $AdditionLine->settype('AditionLine');
  1657. $AdditionLine->setid_order($id);
  1658. $AdditionLine->setcommand('GroupCallProcessingModifyPolicyalRequest15sp2');
  1659. $AdditionLine->setcreatedate($fechaHora);
  1660. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1661. $this->generateXml('modify','GroupCallProcessingModifyPolicyalRequest15sp2',$AdditionLine,$order);
  1662. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1663. if($thisStep > $order->getCompleteStep() ){
  1664. $order->setCompleteStep( $thisStep );
  1665. }
  1666. $order->setCurrentStep( $thisStep + 1 );
  1667. $order->setId( $this->getDao("OrderDao")->save($order) );
  1668. return $this->next($order);
  1669. }
  1670. public function userserviceassignlistalAction(){
  1671. $AdditionLine = new AdditionLine();
  1672. $id = $this->params()->fromRoute('id');
  1673. $order = $this->getDao("OrderDao")->get($id);
  1674. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1675. $contactname = "";
  1676. $group = "";
  1677. foreach ($AdditionLineFetch as $AdditionLine) {
  1678. $id_user = $AdditionLine->id_user;
  1679. }
  1680. $error="";
  1681. $fechaHora = date("Y-m-d H:i:s");
  1682. $AdditionLine->settype('AditionLine');
  1683. $AdditionLine->setid_order($id);
  1684. $AdditionLine->setid_user($id_user);
  1685. $AdditionLine->setid_group($order->getGroupId());
  1686. $AdditionLine->setcommand('UserServiceAssignListalRequest');
  1687. $AdditionLine->setcreatedate($fechaHora);
  1688. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1689. $this->generateXml('list','UserServiceAssignListalRequest',$AdditionLine,$order);
  1690. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1691. if($thisStep > $order->getCompleteStep() ){
  1692. $order->setCompleteStep( $thisStep );
  1693. }
  1694. $order->setCurrentStep( $thisStep + 1 );
  1695. $order->setId( $this->getDao("OrderDao")->save($order) );
  1696. return $this->next($order);
  1697. }
  1698. public function usermodifyalAction(){
  1699. $AdditionLine = new AdditionLine();
  1700. $form = new UserModifyalForm();
  1701. $id = $this->params()->fromRoute('id');
  1702. $order = $this->getDao("OrderDao")->get($id);
  1703. $deviceFetch = $this->getDao("DeviceDao")->fetchByGroupId($order->getGroupId());
  1704. foreach ($deviceFetch as $device) {
  1705. $devicename = $device->name;
  1706. $deviceLevel = $device->type;
  1707. }
  1708. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1709. $contactname = "";
  1710. $group = "";
  1711. foreach ($AdditionLineFetch as $AdditionLine) {
  1712. $id_user = $AdditionLine->id_user;
  1713. }
  1714. $form->get('deviceLevel')->setValue($deviceLevel);
  1715. $form->get('deviceName')->setValue($devicename);
  1716. $form->get('userid')->setValue($id_user);
  1717. $error="";
  1718. $request = $this->getRequest();
  1719. if ($request->isPost()) {
  1720. $form->setData($request->getPost());
  1721. $fechaHora = date("Y-m-d H:i:s");
  1722. if ($form->isValid()) {
  1723. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1724. $contactname = "";
  1725. $group = "";
  1726. foreach ($AdditionLineFetch as $AdditionLine) {
  1727. $id_group = $AdditionLine->id_group;
  1728. }
  1729. $userid = $form->get("userid")->getValue();
  1730. $deviceLevel = $form->get("deviceLevel")->getValue();
  1731. $deviceName = $form->get("deviceName")->getValue();
  1732. $linePort = $form->get("linePort")->getValue();
  1733. $number = $form->get("number")->getValue();
  1734. $AdditionLine->settype('AditionLine');
  1735. $AdditionLine->setid_order($id);
  1736. $AdditionLine->setid_group( $order->getGroupId());
  1737. $AdditionLine->setdevicelevel($deviceLevel);
  1738. $AdditionLine->setdevicename($deviceName);
  1739. $AdditionLine->setlineport($linePort);
  1740. $AdditionLine->setclave('npswrdquantic');
  1741. $AdditionLine->setnumber($number);
  1742. $AdditionLine->setcommand('UserModifyalRequest17sp4');
  1743. $AdditionLine->setcreatedate($fechaHora);
  1744. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1745. $this->generateXml('modify','UserModifyalRequest17sp4',$AdditionLine,$order);
  1746. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1747. if($thisStep > $order->getCompleteStep() ){
  1748. $order->setCompleteStep( $thisStep );
  1749. }
  1750. $order->setCurrentStep( $thisStep + 1 );
  1751. $order->setId( $this->getDao("OrderDao")->save($order) );
  1752. $this->next($order);
  1753. }
  1754. }
  1755. return new ViewModel(array(
  1756. 'form' => $form,
  1757. 'error' => $error,
  1758. 'order' => $order,
  1759. ));
  1760. }
  1761. public function useraddalAction(){
  1762. $AdditionLine = new AdditionLine();
  1763. $form = new UserAddalForm();
  1764. $id = $this->params()->fromRoute('id');
  1765. $order = $this->getDao("OrderDao")->get($id);
  1766. $error="";
  1767. $request = $this->getRequest();
  1768. if ($request->isPost()) {
  1769. $form->setData($request->getPost());
  1770. $fechaHora = date("Y-m-d H:i:s");
  1771. if ($form->isValid()) {
  1772. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1773. $contactname = "";
  1774. $group = "";
  1775. foreach ($AdditionLineFetch as $AdditionLine) {
  1776. $id_group = $AdditionLine->id_group;
  1777. }
  1778. $userid = $form->get("userid")->getValue();
  1779. $firstName = $form->get("firstName")->getValue();
  1780. $lastname = $form->get("lastname")->getValue();
  1781. $callingLineIdLastName = $form->get("callingLineIdLastName")->getValue();
  1782. $callingLineIdFirstName = $form->get("callingLineIdFirstName")->getValue();
  1783. $language = $form->get("language")->getValue();
  1784. $timezone = $form->get("timezone")->getValue();
  1785. $AdditionLine->settype('AditionLine');
  1786. $AdditionLine->setid_order($id);
  1787. $AdditionLine->setid_group($order->getGroupId());
  1788. $AdditionLine->setid_user($userid);
  1789. $AdditionLine->setfirstname($firstName);
  1790. $AdditionLine->setlastname($lastname);
  1791. $AdditionLine->setclave('npswrdquantic');
  1792. $AdditionLine->setcallinglastname($callingLineIdLastName);
  1793. $AdditionLine->setcallingfirstname($callingLineIdFirstName);
  1794. $AdditionLine->settimezone($timezone);
  1795. $AdditionLine->setcommand('UserAddalRequest17sp4');
  1796. $AdditionLine->setcreatedate($fechaHora);
  1797. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1798. $this->generateXml('add','UserAddalRequest17sp4',$AdditionLine,$order);
  1799. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1800. if($thisStep > $order->getCompleteStep() ){
  1801. $order->setCompleteStep( $thisStep );
  1802. }
  1803. $order->setCurrentStep( $thisStep + 1 );
  1804. $order->setId( $this->getDao("OrderDao")->save($order) );
  1805. $this->next($order);
  1806. }
  1807. }
  1808. return new ViewModel(array(
  1809. 'form' => $form,
  1810. 'error' => $error,
  1811. 'order' => $order,
  1812. ));
  1813. }
  1814. public function groupdnassignlistalAction(){
  1815. $AdditionLine = new AdditionLine();
  1816. $form = new GroupdnAssignListalForm();
  1817. $id = $this->params()->fromRoute('id');
  1818. $order = $this->getDao("OrderDao")->get($id);
  1819. $error="";
  1820. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1821. $contactname = "";
  1822. $group = "";
  1823. foreach ($AdditionLineFetch as $AdditionLine) {
  1824. $contactname = $AdditionLine->contactname;
  1825. $group = $AdditionLine->id_group;
  1826. }
  1827. $form->get('contactName')->setValue($contactname);
  1828. $form->get('grupo')->setValue($group);
  1829. $request = $this->getRequest();
  1830. if ($request->isPost()) {
  1831. $form->setData($request->getPost());
  1832. $fechaHora = date("Y-m-d H:i:s");
  1833. if ($form->isValid()) {
  1834. $contactName = $form->get("contactName")->getValue();
  1835. $number = $form->get("number")->getValue();
  1836. $AdditionLine->settype('AditionLine');
  1837. // $AdditionLine->setid_order($id);
  1838. $AdditionLine->setcontactname($contactName);
  1839. $AdditionLine->setnumber($number);
  1840. $AdditionLine->setcommand('GroupDnAssignListalRequest');
  1841. $AdditionLine->setcreatedate($fechaHora);
  1842. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1843. $this->generateXml('list','GroupDnAssignListalRequest',$AdditionLine,$order);
  1844. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1845. if($thisStep > $order->getCompleteStep() ){
  1846. $order->setCompleteStep( $thisStep );
  1847. }
  1848. $order->setCurrentStep( $thisStep + 1 );
  1849. $order->setId( $this->getDao("OrderDao")->save($order) );
  1850. $this->next($order);
  1851. }
  1852. }
  1853. return new ViewModel(array(
  1854. 'form' => $form,
  1855. 'error' => $error,
  1856. 'order' => $order,
  1857. ));
  1858. }
  1859. public function serviceproviderdnaddlistalAction(){
  1860. $AdditionLine = new AdditionLine();
  1861. $form = new ServiceProviderdnAddListalForm();
  1862. $id = $this->params()->fromRoute('id');
  1863. $order = $this->getDao("OrderDao")->get($id);
  1864. $error="";
  1865. $AdditionLineFetch = $this->getDao("AdditionLineDao")->fetchByOrderId($id);
  1866. $contactname = "";
  1867. foreach ($AdditionLineFetch as $AdditionLine) {
  1868. $contactname = $AdditionLine->contactname;
  1869. }
  1870. $form->get('contactName')->setValue($contactname);
  1871. $request = $this->getRequest();
  1872. if ($request->isPost()) {
  1873. $form->setData($request->getPost());
  1874. $fechaHora = date("Y-m-d H:i:s");
  1875. if ($form->isValid()) {
  1876. $contactName = $form->get("contactName")->getValue();
  1877. $number = $form->get("number")->getValue();
  1878. $AdditionLine->settype('AditionLine');
  1879. //$AdditionLine->setid_order($id);
  1880. $AdditionLine->setcontactname($contactName);
  1881. $AdditionLine->setnumber($number);
  1882. $AdditionLine->setcommand('ServiceProviderDnAddListalRequest');
  1883. $AdditionLine->setcreatedate($fechaHora);
  1884. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1885. $this->generateXml('add','ServiceProviderDnAddListalRequest',$AdditionLine,$order);
  1886. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1887. if($thisStep > $order->getCompleteStep() ){
  1888. $order->setCompleteStep( $thisStep );
  1889. }
  1890. $order->setCurrentStep( $thisStep + 1 );
  1891. $order->setId( $this->getDao("OrderDao")->save($order) );
  1892. $this->next($order);
  1893. }
  1894. }
  1895. return new ViewModel(array(
  1896. 'form' => $form,
  1897. 'error' => $error,
  1898. 'order' => $order,
  1899. ));
  1900. }
  1901. public function groupmodifyalAction(){
  1902. $form = new GroupModifyForm();
  1903. $id = $this->params()->fromRoute('id');
  1904. $order = $this->getDao("OrderDao")->get($id);
  1905. $groupFetch = $this->getDao("GroupDao")->fetchAll();
  1906. $groupIdSelect = $form->get('groupId');
  1907. $error="";
  1908. $groupArray = array();
  1909. foreach ($groupFetch as $groups) {
  1910. $groupArray[$groups->name] = $groups->name;
  1911. }
  1912. $groupIdSelect->setAttribute('options',$groupArray);
  1913. $request = $this->getRequest();
  1914. if ($request->isPost()) {
  1915. $form->setData($request->getPost());
  1916. $AdditionLine = new AdditionLine();
  1917. $fechaHora = date("Y-m-d H:i:s");
  1918. if ($form->isValid()) {
  1919. $groupId = $form->get("groupId")->getValue();
  1920. $contactName = $form->get("contactName")->getValue();
  1921. $contactNumber = $form->get("contactNumber")->getValue();
  1922. $contactEmail = $form->get("contactEmail")->getValue();
  1923. $userlimit = $form->get("userlimit")->getValue();
  1924. $productId = $form->get("productId")->getValue();
  1925. $timezone = $form->get("timezone")->getValue();
  1926. $AdditionLine->setid_group($groupId);
  1927. $AdditionLine->settype('AditionLine');
  1928. $AdditionLine->setid_order($id);
  1929. $AdditionLine->setcommand('GroupModifyalRequest');
  1930. $AdditionLine->setcreatedate($fechaHora);
  1931. $AdditionLine->setcontactname($contactName);
  1932. $AdditionLine->setcontactnumber($contactNumber);
  1933. $AdditionLine->settimezone($timezone);
  1934. $AdditionLine->setlimituser($userlimit);
  1935. $AdditionLine->setid_product($productId);
  1936. $order->setGroupId($groupId);
  1937. $AdditionLine->setId( $this->getDao("AdditionLineDao")->save($AdditionLine) );
  1938. $this->generateXml('modify','GroupModifyalRequest',$AdditionLine,$order);
  1939. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1940. if($thisStep > $order->getCompleteStep() ){
  1941. $order->setCompleteStep( $thisStep );
  1942. }
  1943. $order->setCurrentStep( $thisStep + 1 );
  1944. $order->setId( $this->getDao("OrderDao")->save($order) );
  1945. $this->next($order);
  1946. }
  1947. }
  1948. return new ViewModel(array(
  1949. 'form' => $form,
  1950. 'error' => $error,
  1951. 'order' => $order,
  1952. ));
  1953. }
  1954. public function serviceproviderdnaddlistAction(){
  1955. $id = $this->params()->fromRoute('id');
  1956. $order = $this->getDao("OrderDao")->get($id);
  1957. $form = new ServiceProviderOrderAddForm();
  1958. $request = $this->getRequest();
  1959. if ($request->isPost()) {
  1960. $serviceproviderempresaadd = new ServiceProviderEmpresaAdd();
  1961. $form->setData($request->getPost());
  1962. if ($form->isValid()) {
  1963. $number = $form->get("number")->getValue();
  1964. $providerFetch = $this->getDao("ProviderAddDao")->fetchBy_OrderId($id);
  1965. foreach ($providerFetch as $provider) {
  1966. $nameProvider = $provider->name;
  1967. $nameIdServiceProvider = $provider->id_service_provider;
  1968. }
  1969. $serviceproviderempresaadd->setName($nameProvider);
  1970. $serviceproviderempresaadd->setNumber($number);
  1971. $serviceproviderempresaadd->setid_order($id);
  1972. $serviceproviderempresaadd->set_service_provider($nameIdServiceProvider);
  1973. $serviceproviderempresaadd->setId( $this->getDao("ServiceProviderEmpresaAddDao")->save($serviceproviderempresaadd) );
  1974. $this->generateXml('add','ServiceProviderDnAddListRequest',$serviceproviderempresaadd,$order);
  1975. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  1976. if($thisStep > $order->getCompleteStep() ){
  1977. $order->setCompleteStep( $thisStep );
  1978. }
  1979. $order->setCurrentStep( $thisStep + 1 );
  1980. $order->setId( $this->getDao("OrderDao")->save($order) );
  1981. $this->next($order);
  1982. }
  1983. }
  1984. return new ViewModel(array(
  1985. 'form' => $form,
  1986. 'error' => $error,
  1987. 'order' => $order,
  1988. ));
  1989. }
  1990. public function userserviceassignlistAction(){
  1991. $id = $this->params()->fromRoute('id');
  1992. $order = $this->getDao("OrderDao")->get($id);
  1993. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  1994. $ProviderId = $group->getProviderId();
  1995. $GroupId = $group->getName();
  1996. $groupserviceprovider = new GroupServiceProvider();
  1997. $ProviderId = $group->getProviderId();
  1998. $GroupId = $order->getGroupId();
  1999. $id_user = $order->getUserId();
  2000. $groupserviceprovider->setOrderId($id);
  2001. $groupserviceprovider->setcommand('userserviceassignlist');
  2002. $groupserviceprovider->setUserId($id_user);
  2003. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2004. $xmlGenerated = $this->generateXml('add','UserServiceAssignListRequest',$groupserviceprovider,$order);
  2005. $stepCurrentOrder = $order->getCurrentStep();
  2006. $order->setCurrentStep($stepCurrentOrder+1);
  2007. $stepCompleteStep = $order->getCompleteStep();
  2008. $order->setCompleteStep($stepCompleteStep+1);
  2009. $order->setId( $this->getDao("OrderDao")->save($order));
  2010. return $this->next($order);
  2011. }
  2012. public function usermodifyAction(){
  2013. $id = $this->params()->fromRoute('id');
  2014. $order = $this->getDao("OrderDao")->get($id);
  2015. $form = new UserModifyAddForm();
  2016. $error="";
  2017. //Datos a mostar
  2018. $providerFetch = $this->getDao("ProviderAddDao")->fetchBy_OrderId($id);
  2019. foreach ($providerFetch as $provider) {
  2020. $nameDomain = $provider->name_domain;
  2021. }
  2022. $numberFetch = $this->getDao("ServiceProviderEmpresaAddDao")->fetchBy_OrderId($id);
  2023. foreach ($numberFetch as $num) {
  2024. $numbervalue = $num->number;
  2025. }
  2026. $deviceFetch = $this->getDao("DeviceDao")->fetchUnassignedByGroupId($order->getGroupId());
  2027. foreach ($deviceFetch as $dev) {
  2028. $devicevalue = $dev->type;
  2029. }
  2030. //Datos a mostrar
  2031. $device = $numbervalue."@".$nameDomain;
  2032. $form->get('number')->setValue($numbervalue);
  2033. $form->get('name_device')->setValue($devicevalue);
  2034. $form->get('lineport')->setValue($device);
  2035. $request = $this->getRequest();
  2036. if ($request->isPost()) {
  2037. $UserModifyAdd = new UserModifyAdd();
  2038. $form->setData($request->getPost());
  2039. if ($form->isValid()) {
  2040. $number = $form->get("number")->getValue();
  2041. $name_device = $form->get("name_device")->getValue();
  2042. $lineport = $form->get("lineport")->getValue();
  2043. $id_user = $order->getUserId();
  2044. $deviceLevel = "Group";
  2045. $UserModifyAdd->setid_order($id);
  2046. $UserModifyAdd->setid_user($id_user);
  2047. $UserModifyAdd->setNumber($number);
  2048. $UserModifyAdd->setlineport($lineport);
  2049. $UserModifyAdd->setdevicegroup($deviceLevel);
  2050. $UserModifyAdd->setdevicename($name_device);
  2051. $UserModifyAdd->setId( $this->getDao("UserModifyAddDao")->save($UserModifyAdd) );
  2052. $this->generateXml('modify','UserModifyRequest17sp4',$UserModifyAdd,$order);
  2053. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  2054. if($thisStep > $order->getCompleteStep() ){
  2055. $order->setCompleteStep( $thisStep );
  2056. }
  2057. $order->setCurrentStep( $thisStep + 1 );
  2058. $order->setId( $this->getDao("OrderDao")->save($order) );
  2059. $this->next($order);
  2060. }
  2061. }
  2062. return new ViewModel(array(
  2063. 'form' => $form,
  2064. 'error' => $error,
  2065. 'order' => $order,
  2066. ));
  2067. }
  2068. public function groupaddAction()
  2069. {
  2070. $id = $this->params()->fromRoute('id');
  2071. $order = $this->getDao("OrderDao")->get($id);
  2072. $form = new GroupForm();
  2073. $error = "";
  2074. /**
  2075. * Llenamos el select con los productos
  2076. */
  2077. $productSelect = $form->get('productId');
  2078. $productFetch = $this->getDao("ProductDao")->fetchAll();
  2079. $productArray = array();
  2080. foreach ($productFetch as $product) {
  2081. $productArray[$product->id] = $product->name;
  2082. }
  2083. $productSelect->setAttribute('options',$productArray);
  2084. if(isset($order->groupId)){
  2085. $group = $this->getDao("GroupDao")->get($order->groupId);
  2086. $form->setData($group->getArrayCopy());
  2087. $timezones = \DateTimeZone::listIdentifiers();
  2088. $form->get('timezone')->setValue(array_search($group->timezone,$timezones));
  2089. } else {
  2090. $group = new Group();
  2091. $form->get('timezone')->setValue(159);
  2092. }
  2093. $request = $this->getRequest();
  2094. if ($request->isPost()) {
  2095. $form->setInputFilter($group->getInputFilter());
  2096. $form->setData($request->getPost());
  2097. if ($form->isValid()) {
  2098. $group->setName($form->get("name")->getValue());
  2099. $group->setContactName($form->get("contactName")->getValue());
  2100. $group->setContactNumber($form->get("contactNumber")->getValue());
  2101. $group->setContactEmail($form->get("contactEmail")->getValue());
  2102. $group->setProductId($form->get("productId")->getValue());
  2103. $group->setUserlimit($form->get("userlimit")->getValue());
  2104. $group->setCisid($form->get("cisid")->getValue());
  2105. $group->setProvisioned(0);
  2106. $group->setSyncStatus('warning');
  2107. $product = $this->getDao("ProductDao")->get($group->productId);
  2108. $group->setProviderId($product->providerId);
  2109. $timezones = \DateTimeZone::listIdentifiers();
  2110. $timezone = $timezones[(int)$form->get("timezone")->getValue()];
  2111. $group->setTimezone($timezone);
  2112. //$letter = $this->getDao("GroupDao")->getLastGroupLetterByCustomerId($_SESSION['customer_id']);
  2113. $nextLetter = "A";
  2114. /*if($letter){
  2115. $abc = range('A','Z');
  2116. $index = array_search($letter, $abc);
  2117. $nextLetter = $abc[$index+1];
  2118. } */
  2119. $group->setLetter($nextLetter);
  2120. $group->setId( $this->getDao("GroupDao")->save($group) );
  2121. $order->setGroupId($group->getId());
  2122. $this->generateXml('add','GroupAdd',$group,$order);
  2123. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  2124. if($thisStep > $order->getCompleteStep() ){
  2125. $order->setCompleteStep( $thisStep );
  2126. }
  2127. $order->setCurrentStep( $thisStep + 1 );
  2128. $order->setId( $this->getDao("OrderDao")->save($order) );
  2129. $this->next($order);
  2130. } else {
  2131. $error = $form->getMessages();
  2132. }
  2133. }
  2134. return new ViewModel(array(
  2135. 'form' => $form,
  2136. 'error' => $error,
  2137. 'order' => $order,
  2138. ));
  2139. }
  2140. public function groupaccessdeviceaddAction()
  2141. {
  2142. $id = $this->params()->fromRoute('id');
  2143. $order = $this->getDao("OrderDao")->get($id);
  2144. $form = new DeviceForm();
  2145. $error = "";
  2146. $request = $this->getRequest();
  2147. if ($request->isPost()) {
  2148. $device = new Device();
  2149. $form->setInputFilter($device->getInputFilter());
  2150. $form->setData($request->getPost());
  2151. if ($form->isValid()) {
  2152. $device->setName($form->get("name")->getValue());
  2153. $device->setType($form->get("type")->getValue());
  2154. $device->setProtocol($form->get("protocol")->getValue());
  2155. $device->setGroupId($order->getGroupId());
  2156. $device->setId( $this->getDao("DeviceDao")->save($device) );
  2157. $xmlGenerated = $this->generateXml('add','GroupAccessDeviceAdd',$device,$order);
  2158. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  2159. if($thisStep > $order->getCompleteStep() ){
  2160. $order->setCompleteStep( $thisStep );
  2161. }
  2162. $this->getDao("OrderDao")->save($order);
  2163. } else {
  2164. $error = $form->getMessages();
  2165. }
  2166. }
  2167. $order = $this->getDao("OrderDao")->get($id);
  2168. $devices = $this->getDao("DeviceDao")->fetchByGroupId($order->getGroupId());
  2169. $form = new DeviceForm();
  2170. return new ViewModel(array(
  2171. 'form' => $form,
  2172. 'error' => $error,
  2173. 'order' => $order,
  2174. 'devices'=> $devices,
  2175. ));
  2176. }
  2177. public function groupaccessdevicedeleteAction()
  2178. {
  2179. $id = $this->params()->fromRoute('id');
  2180. $this->getDao("DeviceDao")->delete($id);
  2181. $this->deleteXML($id);
  2182. return new JsonModel();
  2183. }
  2184. public function useraddAction()
  2185. {
  2186. $id = $this->params()->fromRoute('id');
  2187. $order = $this->getDao("OrderDao")->get($id);
  2188. $form = new UserForm();
  2189. $error = "";
  2190. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2191. $timezones = \DateTimeZone::listIdentifiers();
  2192. $key = array_search($group->timezone, $timezones);
  2193. $form->get('timezone')->setValue($key);
  2194. /**
  2195. * Llenamos el select con los idiomas
  2196. */
  2197. $languageSelect = $form->get('language');
  2198. $languageArray = array();
  2199. foreach (Language::getListNames() as $language) {
  2200. $languageArray[$language] = $language;
  2201. }
  2202. $languageSelect->setAttribute('options',$languageArray);
  2203. $request = $this->getRequest();
  2204. if ($request->isPost()) {
  2205. $user = new User();
  2206. $form->setInputFilter($user->getInputFilter());
  2207. $form->setData($request->getPost());
  2208. if ($form->isValid()) {
  2209. $user->setFirstname($form->get("firstname")->getValue());
  2210. $user->setLastname($form->get("lastname")->getValue());
  2211. $user->setUserid($form->get("userid")->getValue());
  2212. $user->setLanguage($form->get("language")->getValue());
  2213. $user->setPassword('123456789');
  2214. $timezones = \DateTimeZone::listIdentifiers();
  2215. $timezone = $timezones[(int)$form->get("timezone")->getValue()];
  2216. $user->setTimezone($timezone);
  2217. $user->setGroupId($order->getGroupId());
  2218. $user->setId ( $this->getDao("UserDao")->save($user) );
  2219. $xmlGenerated = $this->generateXml('add','User',$user,$order);
  2220. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  2221. if($thisStep > $order->getCompleteStep() ){
  2222. $order->setCompleteStep( $thisStep );
  2223. }
  2224. $this->getDao("OrderDao")->save($order);
  2225. } else {
  2226. $error = $form->getMessages();
  2227. }
  2228. }
  2229. //$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
  2230. //$code = Language::getListCodesNames();
  2231. $form->get('language')->setValue('Spanish');
  2232. $order = $this->getDao("OrderDao")->get($id);
  2233. $users = $this->getDao("UserDao")->fetchByGroupId($order->getGroupId());
  2234. return new ViewModel(array(
  2235. 'form' => $form,
  2236. 'error' => $error,
  2237. 'order' => $order,
  2238. 'users' => $users,
  2239. ));
  2240. }
  2241. public function userdeleteAction()
  2242. {
  2243. $id = $this->params()->fromRoute('id');
  2244. $this->getDao("UserDao")->delete($id);
  2245. $this->deleteXML($id);
  2246. return new JsonModel();
  2247. }
  2248. public function groupdnassignlistAction()
  2249. {
  2250. $id = $this->params()->fromRoute('id');
  2251. $order = $this->getDao("OrderDao")->get($id);
  2252. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2253. $request = $this->getRequest();
  2254. $availableDnArray = array();
  2255. if ($request->isPost()) {
  2256. //$form->setInputFilter($user->getInputFilter());
  2257. //$form->setData($request->getPost());
  2258. $dns = $this->getDao("DnDao")->fetchByGroupId($group->getId());
  2259. foreach ($dns as $dn) {
  2260. $savedDn = $this->getDao("DnDao")->getByNumber($dn->number);
  2261. $this->deleteXML($savedDn->id);
  2262. $this->getDao("DnDao")->delete($savedDn->id);
  2263. $groupDnArray[$dn->number] = $dn->number;
  2264. }
  2265. $form = new GroupDnAssignForm();
  2266. /**
  2267. * Llenamos el select con los numeros disponibles
  2268. */
  2269. $availableDnSelect = $form->get('availableDnRange');
  2270. $availableDnSelect->setAttribute('options',$availableDnArray);
  2271. $groupDnSelect = $form->get('groupDn');
  2272. $groupDnArray = array();
  2273. $groupDnSelect->setAttribute('options',$groupDnArray);
  2274. $numbers = $request->getPost("groupDn");
  2275. foreach ($numbers as $number) {
  2276. $dn = new Dn();
  2277. $dn->setNumber($number);
  2278. $dn->setGroupId($group->getId());
  2279. $dn->setId($this->getDao("DnDao")->save($dn));
  2280. $xmlGenerated = $this->generateXml('add','GroupDnAssignListRequest',$dn,$order);
  2281. $thisStep = (int)array_search(explode('Action',__FUNCTION__)[0],$_SESSION['activities']);
  2282. if($thisStep > $order->getCompleteStep() ){
  2283. $order->setCompleteStep( $thisStep );
  2284. }
  2285. $order->setCurrentStep( $thisStep + 1 );
  2286. $order->setId( $this->getDao("OrderDao")->save($order) );
  2287. }
  2288. $this->next($order);
  2289. } else {
  2290. try {
  2291. $xmltemplate = $this->getDao("XmlTemplateDao")->getByCategoryLikeCommand('list','ServiceProviderDnGetAvailableList');
  2292. if($xmltemplate) {
  2293. $xml = $xmltemplate->getXml();
  2294. $variableDao = $this->getDao("VariableDao");
  2295. $variables = $variableDao->fetchByXmlTemplateId($xmltemplate->getId());
  2296. //$array = $request->getPost();
  2297. $provider = $this->getDao("ProviderDao")->get($group->providerId);
  2298. $array = array("name" => $provider->name);
  2299. $xmlService = new XmlService($this->getServiceLocator());
  2300. $xmlGenerated = $xmlService->mergeArray($xml,$variables,$array);
  2301. $OCISoapService = new OCISoapService($this->getServiceLocator());
  2302. //$response = $OCISoapService->send($xmlGenerated);
  2303. $response = null;
  2304. $xmlresponse = $xmlService->getCommnadResponseFromXml($response);
  2305. $availableDnArray = array();
  2306. if($xmlresponse->result == "success"){
  2307. $availableDnArray = (array)$xmlresponse->command->availableDn;
  2308. }
  2309. }
  2310. } catch (\Exception $ex) {
  2311. }
  2312. $form = new GroupDnAssignForm();
  2313. /**
  2314. * Llenamos el select con los numeros disponibles
  2315. */
  2316. $availableDnSelect = $form->get('availableDnRange');
  2317. $availableDnSelect->setAttribute('options',$availableDnArray);
  2318. /**
  2319. * Llenamos el select con los numeros ya del grupo
  2320. */
  2321. $dns = $this->getDao("DnDao")->fetchByGroupId($group->getId());
  2322. $groupDnSelect = $form->get('groupDn');
  2323. $groupDnArray = array();
  2324. foreach ($dns as $groupDn) {
  2325. $groupDnArray[$groupDn->number] = $groupDn->number;
  2326. }
  2327. $groupDnSelect->setAttribute('options',$groupDnArray);
  2328. }
  2329. return new ViewModel(array(
  2330. 'form' => $form,
  2331. //'error' => $error,
  2332. 'order' => $order,
  2333. 'available' => $availableDnArray,
  2334. ));
  2335. }
  2336. public function userdndeviceassignAction()
  2337. {
  2338. $id = $this->params()->fromRoute('id');
  2339. if($id<>"") {
  2340. $order = $this->getDao("OrderDao")->get($id);
  2341. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2342. $unassignedUsers = $this->getDao("UserDao")->fetchUnassignedByGroupId($group->id);
  2343. $unassignedDns = $this->getDao("DnDao")->fetchUnassignedByGroupId($group->id);
  2344. //echo $group->id."Hola";
  2345. $unassignedDevices = $this->getDao("DeviceDao")->fetchUnassignedByGroupId($group->id);
  2346. $form = new UserDnDeviceAssignForm();
  2347. /* Id Order*/
  2348. $id_order_input = $form->get('id_order');
  2349. $id_order_input->setAttribute('value',$id);
  2350. /*Id Order*/
  2351. /* Asignamos usuarios a su select */
  2352. $unassignedUsersArray = array();
  2353. foreach ($unassignedUsers as $unassignedUser) {
  2354. $unassignedUsersArray[$unassignedUser->id] =
  2355. $unassignedUser->userid . " (" . $unassignedUser->firstname . " " . $unassignedUser->lastname . ")";
  2356. }
  2357. $unassignedUsersSelect = $form->get('id');
  2358. $unassignedUsersSelect->setAttribute('options',$unassignedUsersArray);
  2359. /* Asignamos dn a su select */
  2360. $unassignedDnsArray = array();
  2361. foreach ($unassignedDns as $unassignedDn) {
  2362. $unassignedDnsArray[$unassignedDn->id] = $unassignedDn->number;
  2363. }
  2364. $unassignedDnsSelect = $form->get('dnId');
  2365. $unassignedDnsSelect->setAttribute('options',$unassignedDnsArray);
  2366. /* Asignamos device a su select */
  2367. $unassignedDevicessArray = array();
  2368. foreach ($unassignedDevices as $unassignedDevice) {
  2369. $unassignedDevicesArray[$unassignedDevice->id] = $unassignedDevice->name;
  2370. }
  2371. $unassignedDevicesSelect = $form->get('deviceId');
  2372. $unassignedDevicesSelect->setAttribute('options',$unassignedDevicesArray);
  2373. }
  2374. $request = $this->getRequest();
  2375. if ($request->isPost()) {
  2376. $id_order = $request->getPost("id_order");
  2377. $order = $this->getDao("OrderDao")->get($id_order);
  2378. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2379. $id = $request->getPost("id");
  2380. $dnId = $request->getPost("dnId");
  2381. $deviceId= $request->getPost("deviceId");
  2382. $user = $this->getDao("UserDao")->get($id);
  2383. $user->setDnId($dnId);
  2384. $user->setDeviceId($deviceId);
  2385. $user->setId($this->getDao("UserDao")->save($user));
  2386. $xmlGenerated = $this->generateXml('modify','UserDnDeviceAssign',$user,$order);
  2387. $stepCurrentOrder = $order->getCurrentStep();
  2388. $order->setCurrentStep($stepCurrentOrder+1);
  2389. $stepCompleteStep = $order->getCompleteStep();
  2390. $order->setCompleteStep($stepCompleteStep+1);
  2391. $order->setId( $this->getDao("OrderDao")->save($order));
  2392. return $this->next($order);
  2393. }
  2394. return new ViewModel(array(
  2395. 'form' => $form,
  2396. //'error' => $error,
  2397. //'step' => $step,
  2398. ));
  2399. }
  2400. public function groupservicemodifyauthorizationlistAction(){
  2401. $id = $this->params()->fromRoute('id');
  2402. $order = $this->getDao("OrderDao")->get($id);
  2403. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2404. $ProviderId = $group->getProviderId();
  2405. $GroupId = $order->getGroupId();
  2406. $groupserviceprovider = new GroupServiceProvider();
  2407. $ProviderId = $group->getProviderId();
  2408. $GroupId = $group->getName();
  2409. $groupserviceprovider->setGroupId($GroupId);
  2410. $groupserviceprovider->setServiceproviderId($ProviderId);
  2411. $groupserviceprovider->setOrderId($id);
  2412. $groupserviceprovider->setcommand('groupservicemodifyauthorizationlist');
  2413. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2414. $xmlGenerated = $this->generateXml('modify','GroupServiceModifyAuthorizationListRequest',$groupserviceprovider,$order);
  2415. $stepCurrentOrder = $order->getCurrentStep();
  2416. $order->setCurrentStep($stepCurrentOrder+1);
  2417. $stepCompleteStep = $order->getCompleteStep();
  2418. $order->setCompleteStep($stepCompleteStep+1);
  2419. $order->setId( $this->getDao("OrderDao")->save($order));
  2420. return $this->next($order);
  2421. }
  2422. public function groupserviceassignlistAction(){
  2423. $id = $this->params()->fromRoute('id');
  2424. $order = $this->getDao("OrderDao")->get($id);
  2425. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2426. $ProviderId = $group->getProviderId();
  2427. $GroupId = $order->getGroupId();
  2428. $groupserviceprovider = new GroupServiceProvider();
  2429. $ProviderId = $group->getProviderId();
  2430. $GroupId = $group->getName();
  2431. $provider = $this->getDao("ProviderDao")->get($ProviderId);
  2432. $groupserviceprovider->setGroupId($GroupId);
  2433. $groupserviceprovider->setServiceproviderId($ProviderId);
  2434. $groupserviceprovider->setOrderId($id);
  2435. $groupserviceprovider->setname($provider->getName());
  2436. $groupserviceprovider->setcommand('GroupServiceAssignList');
  2437. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2438. $xmlGenerated = $this->generateXml('list','GroupServiceAssignListRequest',$groupserviceprovider,$order);
  2439. $stepCurrentOrder = $order->getCurrentStep();
  2440. $order->setCurrentStep($stepCurrentOrder+1);
  2441. $stepCompleteStep = $order->getCompleteStep();
  2442. $order->setCompleteStep($stepCompleteStep+1);
  2443. $order->setId( $this->getDao("OrderDao")->save($order));
  2444. return $this->next($order);
  2445. }
  2446. public function groupcallprocessingmodifypolicyAction(){
  2447. $id = $this->params()->fromRoute('id');
  2448. $order = $this->getDao("OrderDao")->get($id);
  2449. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2450. $ProviderId = $group->getProviderId();
  2451. $GroupId = $group->getName();
  2452. $groupserviceprovider = new GroupServiceProvider();
  2453. $ProviderId = $group->getProviderId();
  2454. $GroupId = $group->getName();
  2455. $UserId = $order->getUserId();
  2456. $groupserviceprovider->setGroupId($GroupId);
  2457. $groupserviceprovider->setUserId($UserId);
  2458. $groupserviceprovider->setServiceproviderId($ProviderId);
  2459. $groupserviceprovider->setcommand('groupcallprocessingmodifypolicyrequest');
  2460. $groupserviceprovider->setOrderId($id);
  2461. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2462. $xmlGenerated = $this->generateXml('modify','GroupCallProcessingModifyPolicyRequest15sp2',$groupserviceprovider,$order);
  2463. $stepCurrentOrder = $order->getCurrentStep();
  2464. $order->setCurrentStep($stepCurrentOrder+1);
  2465. $stepCompleteStep = $order->getCompleteStep();
  2466. $order->setCompleteStep($stepCompleteStep+1);
  2467. $order->setId( $this->getDao("OrderDao")->save($order));
  2468. return $this->next($order);
  2469. }
  2470. public function userauthenticationmodifyAction(){
  2471. $id = $this->params()->fromRoute('id');
  2472. $order = $this->getDao("OrderDao")->get($id);
  2473. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2474. $ProviderId = $group->getProviderId();
  2475. $GroupId = $order->getGroupId();
  2476. $groupserviceprovider = new GroupServiceProvider();
  2477. $ProviderId = $group->getProviderId();
  2478. $GroupId = $order->getGroupId();
  2479. $UserId = $order->getUserId();
  2480. $userFetch = $this->getDao("UserDao")->fetchByGroupId($GroupId);
  2481. foreach ($userFetch as $user) {
  2482. $password = $user->password;
  2483. }
  2484. $groupserviceprovider->setUserId($UserId);
  2485. $groupserviceprovider->setcommand('UserAuthenticationModifyRequest');
  2486. $groupserviceprovider->setOrderId($id);
  2487. $groupserviceprovider->setclave($password);
  2488. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2489. $xmlGenerated = $this->generateXml('modify','UserAuthenticationModifyRequest',$groupserviceprovider,$order);
  2490. $stepCurrentOrder = $order->getCurrentStep();
  2491. $order->setCurrentStep($stepCurrentOrder+1);
  2492. $stepCompleteStep = $order->getCompleteStep();
  2493. $order->setCompleteStep($stepCompleteStep+1);
  2494. $order->setId( $this->getDao("OrderDao")->save($order));
  2495. return $this->next($order);
  2496. }
  2497. public function groupdnactivatelistAction(){
  2498. $id = $this->params()->fromRoute('id');
  2499. $order = $this->getDao("OrderDao")->get($id);
  2500. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2501. $ProviderId = $group->getProviderId();
  2502. $GroupId = $group->getName();
  2503. $groupserviceprovider = new GroupServiceProvider();
  2504. $ProviderId = $group->getProviderId();
  2505. $GroupId = $group->getName();
  2506. $groupserviceprovider->setGroupId($GroupId);
  2507. $groupserviceprovider->setServiceproviderId($ProviderId);
  2508. $groupserviceprovider->setOrderId($id);
  2509. $groupserviceprovider->setcommand('GroupDnActivateListRequest');
  2510. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2511. $xmlGenerated = $this->generateXml('list','GroupDnActivateListRequest',$groupserviceprovider,$order);
  2512. $stepCurrentOrder = $order->getCurrentStep();
  2513. $order->setCurrentStep($stepCurrentOrder+1);
  2514. $stepCompleteStep = $order->getCompleteStep();
  2515. $order->setCompleteStep($stepCompleteStep+1);
  2516. $order->setId( $this->getDao("OrderDao")->save($order));
  2517. return $this->next($order);
  2518. }
  2519. public function ServiceProviderServiceModifyAuthorizationListAction(){
  2520. $id = $this->params()->fromRoute('id');
  2521. $order = $this->getDao("OrderDao")->get($id);
  2522. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2523. $ProviderId = $group->getProviderId();
  2524. $GroupId = $group->getName();
  2525. $groupserviceprovider = new GroupServiceProvider();
  2526. $ProviderId = $group->getProviderId();
  2527. $provider = $this->getDao("ProviderDao")->get($ProviderId);
  2528. $GroupId = $group->getName();
  2529. $UserId = $order->getUserId();
  2530. $groupserviceprovider->setGroupId($GroupId);
  2531. $groupserviceprovider->setServiceproviderId($ProviderId);
  2532. $groupserviceprovider->setOrderId($id);
  2533. $groupserviceprovider->setUserId($UserId);
  2534. $groupserviceprovider->setname($provider->getName());
  2535. $groupserviceprovider->setcommand('ServiceProviderServiceModifyAuthorizationListRequest');
  2536. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2537. $xmlGenerated = $this->generateXml('modify','ServiceProviderServiceModifyAuthorizationListRequest',$groupserviceprovider,$order);
  2538. $stepCurrentOrder = $order->getCurrentStep();
  2539. $order->setCurrentStep($stepCurrentOrder+1);
  2540. $stepCompleteStep = $order->getCompleteStep();
  2541. $order->setCompleteStep($stepCompleteStep+1);
  2542. $order->setId( $this->getDao("OrderDao")->save($order));
  2543. return $this->next($order);
  2544. }
  2545. public function groupseriescompletionaddinstanceAction(){
  2546. $id = $this->params()->fromRoute('id');
  2547. $order = $this->getDao("OrderDao")->get($id);
  2548. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2549. $ProviderId = $group->getProviderId();
  2550. $GroupId = $group->getName();
  2551. $groupserviceprovider = new GroupServiceProvider();
  2552. $ProviderId = $group->getProviderId();
  2553. $GroupId = $order->getGroupId();
  2554. $UserId = $order->getUserId();
  2555. $groupserviceprovider->setGroupId($GroupId);
  2556. $groupserviceprovider->setServiceproviderId($ProviderId);
  2557. $groupserviceprovider->setOrderId($id);
  2558. $groupserviceprovider->setUserId($UserId);
  2559. $groupserviceprovider->setname($group->getName());
  2560. $groupserviceprovider->setcommand('GroupSeriesCompletionAddInstanceRequest');
  2561. $groupserviceprovider->setId($this->getDao("GroupServiceProviderDao")->save($groupserviceprovider));
  2562. $xmlGenerated = $this->generateXml('add','GroupSeriesCompletionAddInstanceRequest',$groupserviceprovider,$order);
  2563. $stepCurrentOrder = $order->getCurrentStep();
  2564. $order->setCurrentStep($stepCurrentOrder+1);
  2565. $stepCompleteStep = $order->getCompleteStep();
  2566. $order->setCompleteStep($stepCompleteStep+1);
  2567. $order->setId( $this->getDao("OrderDao")->save($order));
  2568. return $this->next($order);
  2569. }
  2570. private function next($order){
  2571. $action = $_SESSION['activities'][$order->getCurrentStep()];
  2572. if($action){
  2573. $toRoute = array(
  2574. 'action' => $action,
  2575. 'id' => $order->getId(),
  2576. );
  2577. } else {
  2578. $toRoute = array(
  2579. 'action' => 'view',
  2580. 'id' => $order->getId(),
  2581. );
  2582. }
  2583. return $this->redirect()->toRoute('order',$toRoute);
  2584. }
  2585. public function nextAction(){
  2586. $id = $this->params()->fromRoute('id');
  2587. $order = $this->getDao("OrderDao")->get($id);
  2588. $order->setCurrentStep((int)$order->getCurrentStep()+1);
  2589. $this->getDao("OrderDao")->save($order);
  2590. $action = $_SESSION['activities'][$order->getCurrentStep()];
  2591. if($action){
  2592. $toRoute = array(
  2593. 'action' => $action,
  2594. 'id' => $id,
  2595. );
  2596. } else {
  2597. $toRoute = array(
  2598. 'action' => 'view',
  2599. 'id' => $id,
  2600. );
  2601. }
  2602. return $this->redirect()->toRoute('order',$toRoute);
  2603. }
  2604. public function completeAction()
  2605. {
  2606. $id = $this->params()->fromRoute('id');
  2607. $order = $this->getDao("OrderDao")->get($id);
  2608. $group = $this->getDao("GroupDao")->get($order->getGroupId());
  2609. $stepCurrentOrder = $order->getCurrentStep();
  2610. $activities = $_SESSION['activities'][$stepCurrentOrder];
  2611. }
  2612. public function previousAction(){
  2613. $id = $this->params()->fromRoute('id');
  2614. $order = $this->getDao("OrderDao")->get($id);
  2615. $order->setCurrentStep((int)$order->getCurrentStep()-1);
  2616. $this->getDao("OrderDao")->save($order);
  2617. $action = $_SESSION['activities'][$order->getCurrentStep()];
  2618. if($action){
  2619. $toRoute = array(
  2620. 'action' => $action,
  2621. 'id' => $id,
  2622. );
  2623. } else {
  2624. $toRoute = array(
  2625. 'action' => 'add',
  2626. 'id' => $id,
  2627. );
  2628. }
  2629. return $this->redirect()->toRoute('order',$toRoute);
  2630. }
  2631. public function informacionClienteNumero($step)
  2632. {
  2633. $form = new CustomerNumberForm();
  2634. $error = "";
  2635. $numbersInStock = $this->getDao("NumberStockDao")->fetchAvailable();
  2636. $numbersAvailableArray = array();
  2637. foreach ($numbersInStock as $numberStock) {
  2638. $numbersAvailableArray[$numberStock->number] = $numberStock->number;
  2639. }
  2640. $form->get('numberStock')->setAttribute('options',$numbersAvailableArray);
  2641. return new ViewModel(array(
  2642. 'form' => $form,
  2643. 'error' => $error,
  2644. 'step' => $step,
  2645. ));
  2646. }
  2647. private function provisioning($step) {
  2648. $orderDao = $this->getDao("OrderDao");
  2649. $order = $orderDao->get($_SESSION['order_id']);
  2650. $platform = $this->getDao("PreferenceDao","Preference")->getByName($order->platform);
  2651. return new ViewModel(array(
  2652. 'step' => $step,
  2653. 'host' => $platform->value,
  2654. 'orderId'=> $_SESSION['order_id'],
  2655. ));
  2656. }
  2657. public function merge($body, $vars)
  2658. {
  2659. if (count($vars) == 0) {
  2660. return $body;
  2661. }
  2662. $patterns = array();
  2663. $replacements = array();
  2664. foreach ($vars as $key => $value) {
  2665. $patterns[] = '/' . $key . '/i';
  2666. $replacements[] = $this->cleanUp($value);
  2667. }
  2668. if (null === ($body = preg_replace($patterns, $replacements, $body))) {
  2669. throw new \Exception('The message could not be merged');
  2670. }
  2671. return $body;
  2672. }
  2673. public function cleanUp($var)
  2674. {
  2675. $workingCopy = $var;
  2676. //Additional clean ups should be implemented here
  2677. //utf8 encoding
  2678. //replacing HTML entities via html_entity_decode/encode as
  2679. //the message should go with tildes inside it
  2680. $workingCopy = trim($var);
  2681. return $workingCopy;
  2682. }
  2683. /*public function deleteAction()
  2684. {
  2685. $model = new JsonModel();
  2686. try {
  2687. $id = $this->params()->fromRoute('id');
  2688. $this->getDao()->delete($id);
  2689. $model->setVariable('status', "success");
  2690. $model->setVariable('payload', $id);
  2691. } catch (\Exception $ex) {
  2692. $model->setVariable('status', 'error');
  2693. $model->setVariable('payload', $ex->getMessage());
  2694. }
  2695. return $model;
  2696. }*/
  2697. public function getDao($dao = "OrderDao",$namespace = "Provisioning")
  2698. {
  2699. //$serviceDao = lcfirst($dao);
  2700. //if (!$this->$serviceDao) {
  2701. $sm = $this->getServiceLocator();
  2702. $this->serviceDao = $sm->get($namespace.'\Dao\\'.$dao);
  2703. //}
  2704. return $this->serviceDao;
  2705. }
  2706. private function generateOneXml($orderId, $priority, $class = null) {
  2707. $relationship = array(
  2708. "Device" => array(
  2709. "relationField" => "groupId",
  2710. "daoFunction" => "getBy",
  2711. "parentClass" => "Group",
  2712. ),
  2713. "Group" => array(
  2714. "relationField" => "customerId",
  2715. "daoFunction" => "fetchByCustomerId",
  2716. ),
  2717. );
  2718. $classpath = get_class($class);
  2719. $classpathArray = explode("\\", $classpath);
  2720. $classname = trim($classpathArray[count($classpathArray)-1]);
  2721. $orderDao = $this->getDao("OrderDao");
  2722. $xmlDao = $this->getDao("XmlDao");
  2723. $scDao = $this->getDao("ServiceCommandDao");
  2724. $commandDao = $this->getDao("CommandDao");
  2725. //$deviceDao = $this->getDao("DeviceDao");
  2726. $order = $orderDao->get($orderId);
  2727. $scModel = $scDao->getByServiceIdAndPriority($order->getServiceId(),$priority);
  2728. //foreach ($scModels as $scModel) {
  2729. $command = $commandDao->get($scModel->commandId);
  2730. //print_r($command);
  2731. $xml = $command->getXml();
  2732. $variableDao = $this->getDao("VariableDao");
  2733. $variables = $variableDao->fetchByCommandId($command->id);
  2734. $variablesArray = array();
  2735. foreach ($variables as $variable) {
  2736. $key = $variable->name;
  2737. $object = $variable->mappingObject ? $variable->mappingObject : $variable->mapping_object;
  2738. $attribute = $variable->mappingAttribute ? $variable->mappingAttribute : $variable->mapping_attribute;
  2739. $treatment = $variable->treatment;
  2740. $daoName = $object . "Dao";
  2741. $objectDao = $this->getDao($daoName,$object=="Preference"?$object:"Provisioning");
  2742. $objectAttr = lcfirst($object) . "Id";
  2743. if($object == "Preference"){
  2744. $instance = $objectDao->getByName($attribute);
  2745. $value = isset($instance->value)?$instance->value:"";
  2746. } elseif($classname == $object) {
  2747. $instance = $class;
  2748. $value = isset($instance->$attribute)?$instance->$attribute:"";
  2749. } elseif(property_exists($order, $objectAttr)) {
  2750. $instance = $objectDao->get($order->$objectAttr);
  2751. $value = isset($instance->$attribute)?$instance->$attribute:"";
  2752. } else {
  2753. $instance = $objectDao->get($class->$objectAttr);
  2754. $value = isset($instance->$attribute)?$instance->$attribute:"";
  2755. }
  2756. switch ($treatment) {
  2757. case "concat":
  2758. $array = explode(" ", $value);
  2759. $value = implode("_", $array);
  2760. break;
  2761. case "initials":
  2762. $array = explode(" ", $value);
  2763. $initials = "";
  2764. foreach ($array as $v) {
  2765. $initials .= strtoupper($v[0]);
  2766. }
  2767. $value = $initials;
  2768. break;
  2769. default:
  2770. break;
  2771. }
  2772. $variablesArray[$key] = $value;
  2773. }
  2774. $xmlGenerated = $this->merge($xml, $variablesArray);
  2775. /*
  2776. * Nombre del archivo:
  2777. * orderid + commandid + timestamp
  2778. */
  2779. $filename = $order->id . $command->id . time();
  2780. file_put_contents("tmp/" . $filename,
  2781. $xmlGenerated, LOCK_EX);
  2782. $xml = new Xml();
  2783. $xml->setName($command->name);
  2784. $xml->setOrderId($order->id);
  2785. $xml->setStatus("pendiente");
  2786. $xml->setPriority($scModel->priority);
  2787. $xml->setFile($filename);
  2788. $xml->id = $xmlDao->save($xml);
  2789. }
  2790. /** Método para generar el xml para aprovisionar
  2791. *** a partir de la categoria, nombre de comando (like)
  2792. *** y la data proporcionada.
  2793. ***
  2794. *** $category puede ser add|get|delete|list|modify
  2795. *** $likeCommand puede ser un fragmento de la cadena del comando
  2796. *** $instance es mandatoriamente el objeto instanciado del que se creará el xml
  2797. **/
  2798. public function generateXml($category = 'add', $likeCommand = null, $instance = null, $order){
  2799. if(!isset($likeCommand)) { return false; }
  2800. if(!isset($instance)) { return false; }
  2801. try {
  2802. $xmltemplate = $this->getDao("XmlTemplateDao")->getByCategoryLikeCommand($category,$likeCommand);
  2803. if($xmltemplate) {
  2804. //$this->deleteXML($instance->id);
  2805. $xmltemplateBody = $xmltemplate->getXml();
  2806. $variableDao = $this->getDao("VariableDao");
  2807. $variables = $variableDao->fetchByXmlTemplateId($xmltemplate->getId());
  2808. $xmlService = new XmlService($this->getServiceLocator());
  2809. $xmlGenerated = $xmlService->mergeOrder($xmltemplateBody,$variables,$instance);
  2810. $xml = new Xml();
  2811. $xml->setOrderId($order->getId());
  2812. $xml->setName($xmltemplate->getCommand());
  2813. $xml->setStatusId(1);
  2814. $xml->setBody($xmlGenerated);
  2815. $xml->setPriority((int)$order->getCurrentStep());
  2816. $xml->setObjectId($instance->id);
  2817. $this->getDao("XmlDao")->save($xml);
  2818. return $xmlGenerated;
  2819. } else {
  2820. return false;
  2821. }
  2822. } catch (\Exception $ex) {
  2823. return false;
  2824. }
  2825. }
  2826. /*private function deleteXML($order,$likeCommand,$likeContent=null)
  2827. {
  2828. if($likeContent){
  2829. $this->getDao("XmlDao")->deleteByOrderIdLikeCommandLikeContent($order->getId(),$likeCommand,$likeContent);
  2830. } else {
  2831. $this->getDao("XmlDao")->deleteByOrderIdLikeCommand($order->getId(),$likeCommand);
  2832. }
  2833. }*/
  2834. private function deleteXML($id)
  2835. {
  2836. $this->getDao("XmlDao")->deleteByObjectId($id);
  2837. }
  2838. }