Advertisement
Guest User

Untitled

a guest
Feb 8th, 2016
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.25 KB | None | 0 0
  1. <?php
  2.  
  3. include_once("transfer_call_datatypes.php");
  4.  
  5. use Ws\Adis\TransferCallDataTypes as DataTypes;
  6.  
  7.  
  8. class Webservice
  9. {
  10. /**
  11. * @param DataTypes\TransferCallType $request
  12. * @return DataTypes\TransferCallResult
  13. */
  14. public function SendDataTransferCall($request)
  15. {
  16. try
  17. {
  18. \ChainQuery::get("
  19. begin
  20. null;
  21. end;
  22. ")
  23. ->bind("ext_system_code", $request->ext_system_code)
  24. ->bind("federation_subject_code", $request->federation_subject_code)
  25. ->bind("destination_arm", $request->destination_arm)
  26. ->bind("info", $request->info)
  27. ->Execute(OCI_NO_AUTO_COMMIT);
  28.  
  29. if(isset($request->call))
  30. {
  31. \ChainQuery::get("
  32. begin
  33. D_PKG_SMP_CALL_EX_SYSTEM.ADD(pnCALL_NUMBER => :call_number, pnGLOBAL_CALL_NUMBER => :global_call_number, pnADIS_ID => :adis_id);
  34. end;
  35. ")
  36. ->bind("call_number", $request->call->call_number)
  37. ->bind("global_call_number", $request->call->global_call_number)
  38. ->bind("adis_id", $request->call->adis_id)
  39. //...
  40. ->bind("state", $request->call->state)
  41. ->Execute(OCI_NO_AUTO_COMMIT);
  42.  
  43. if(isset($request->call_address))
  44. {
  45. //...
  46. }
  47.  
  48. //...
  49.  
  50. if(isset($request->call->notice))
  51. {
  52. $request->call->notice = !is_array($request->call->notice)
  53. ? array($request->call->notice) : $request->call->notice;
  54.  
  55. foreach ($request->call->notice as $notice)
  56. {
  57. error_log(var_export($notice, true));
  58. \ChainQuery::get("
  59. begin
  60. null;
  61. end;
  62. ")
  63. ->bind("call_number", $request->call->call_number)
  64. ->bind("global_call_number", $request->call->global_call_number)
  65. ->bind("adis_id", $request->call->adis_id)
  66. //...
  67. ->bind("state", $request->call->state)
  68. ->Execute(OCI_NO_AUTO_COMMIT);
  69. }
  70. }
  71. }
  72.  
  73. if(isset($request->brigade))
  74. {
  75. //...
  76. }
  77.  
  78. if(isset($request->medical_supplies))
  79. {
  80.  
  81. $request->medical_supplies = !is_array($request->medical_supplies)
  82. ? array($request->medical_supplies) : $request->medical_supplies;
  83. //foreach ($request->medical_supplies as $medical_supplies)
  84. //{
  85. error_log(var_export($medical_supplies, true));
  86. \ChainQuery::get("
  87. begin
  88. D_PKG_SMP_CALL_EX_SYSTEM.ADD(pnCODE => :code, pnNAME => :name);
  89. end;
  90. ")
  91. ->bind("code", $request->call->call_number)
  92. ->bind("name", $request->call->global_call_number)
  93. ->Execute(OCI_NO_AUTO_COMMIT);
  94. //}
  95. }
  96.  
  97. if(isset($request->senior_doctor))
  98. {
  99. //...
  100. }
  101.  
  102. //...
  103.  
  104. oci_commit(GetDBConnect());
  105.  
  106. $result = new DataTypes\TransferCallResult();
  107. $result->send_info = new DataTypes\OperationInfo();
  108. $result->send_info->info_state = "ВЫЗОВ ПРИНЯТ";
  109. $result->send_info->info_time = time();
  110.  
  111. return $result;
  112. }
  113. catch (\Exception $e)
  114. {
  115. oci_rollback(GetDBConnect());
  116.  
  117. $result = new DataTypes\TransferCallResult();
  118. $result->send_info = new DataTypes\OperationInfo();
  119. $result->send_info->info_time = time();
  120. $result->error = $e->getMessage();
  121.  
  122. return $result;
  123. }
  124. }
  125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement