superedit-ID_OFFERS_GROUP.php 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321
  1. <?php
  2. function ID_OFFERS_GROUP($COMMAND,$ARG1_VAL) {
  3. global $result,$thiss,$error,$conn;
  4. $field_name='ID_OFFERS_GROUP';
  5. //DEBUG_S(-3,'_POST',$_POST,__FILE__, __FUNCTION__, __LINE__);
  6. if($COMMAND=='POST_VERIFY') {
  7. echo $_REQUEST['ID_OFFERS_GROUP']."***";
  8. DEBUG_S(-3,'_REQUEST',$_REQUEST,__FILE__, __FUNCTION__, __LINE__);
  9. //mozliwosci modulu @2013-01-10
  10. //TYLKO NOWA UMOWA ==P_DEALNUMBER_OLD=''
  11. //
  12. //jezeli jest zaznaczona flaga dodawania uslug powiazanych, to :
  13. if(!empty($_REQUEST['DEALS_TABLE_COLUMN__USERS2_OFFERS_GROUPS_OPCJE__ADD_TO_DEALS'])) {
  14. if(!empty($_REQUEST['P_DEALNUMBER_OLD'])) {
  15. $error.= " MODUL NIE UMIE ROBIC ANEKSOW P_DEALNUMBER_OLD ";
  16. die($error);
  17. }
  18. settype($_REQUEST['ID_OFFERS_GROUP'], "integer");
  19. if($_REQUEST['ID_OFFERS_GROUP']>0) {
  20. if(!isset($_REQUEST['ID_OFFERS_GROUP_OPTIONS_WERE_SET'])) {
  21. //wstrzymamy dodawanie uslugi - wyswietlimy opcje, jakie klient zamowil
  22. $SQL="select t2.ID as `key`, concat_ws(' ', t2.P_SERVICE ,t2.P_SERVICE_PARENT , t2.P_NORMAL_PRICE ,'pln ; ', t2.S_ALIAS, t2.P_SERVICE_PARENT) as description ,t2.ID_PRODUKT as `group_key`
  23. from USERS2_OFFERS_GROUPS as t1 left join USERS2_OFFERS as t2 on ((t2.ID=t1.ID_NET or
  24. (t2.P_SERVICE='OPCJE' and t1.ID_NET>0 and t2.P_SERVICE_PARENT='NET') or
  25. t2.ID=t1.ID_TEL or
  26. (t2.P_SERVICE='OPCJE' and t1.ID_TEL>0 and t2.P_SERVICE_PARENT='TEL') or
  27. t2.ID=t1.ID_TV or
  28. (t2.P_SERVICE='OPCJE' and t1.ID_TV>0 and t2.P_SERVICE_PARENT='TV') or
  29. t2.ID=t1.ID_TVC or (t2.P_SERVICE='OPCJE' and t1.ID_TVC>0 and t2.P_SERVICE_PARENT='TVC') or
  30. t2.ID=t1.ID_TVCP or (t2.P_SERVICE='OPCJE' and t1.ID_TVCP>0 and t2.P_SERVICE_PARENT='TVCP') ))
  31. where t1.ID='".addslashes($_REQUEST['ID_OFFERS_GROUP'])."' order by t2.ID_PRODUKT";
  32. // echo $SQL;
  33. ZAP_SQL($SQL);
  34. echo "\n<form method='POST'>";
  35. // echo "<script>
  36. //
  37. // </script>";
  38. while($h=mysql_fetch_object($result)) {
  39. echo "\n<p class='GRUPA__".$h->group_key."'><input type=checkbox name='ID_OFFERS_GROUP_OPTIONS_WERE_SET_ID__".$h->key."'>(".$h->key.")<b> Grupa:".$h->group_key." </b>".$h->description."</p>";
  40. }
  41. //generujemy formularz z przekazanymi wczesniej zmiennymi
  42. //print_r($_REQUEST);
  43. foreach($_REQUEST as $req_fld=>$req_val) {
  44. echo "\n<input type=hidden name='".$req_fld."' value='".$req_val."'>";
  45. }
  46. die("!!!<input type='submit' value='USTAL_OPCJE' name='ID_OFFERS_GROUP_OPTIONS_WERE_SET'></form>");
  47. }
  48. //zapierdalamy po po strukturze produktu, jezeli jest - tam jest ID_TEL, ID_TV, ID_NET
  49. $sql="select ID_NET, ID_TEL, ID_TV, ID_TVC, ID_TVCP, ID_TVCP_1, ID_TVCP_2, ID_TVCP_3, ID_TVCP_4 from USERS2_OFFERS_GROUPS where ID='".addslashes($_REQUEST['ID_OFFERS_GROUP'])."'";
  50. ZAP_SQL($sql);
  51. while($h=mysql_fetch_object($result)) {
  52. foreach($h as $s) {
  53. if($s)
  54. $id_offer_to_create[]=$s;
  55. }
  56. }
  57. DEBUG_S(-3,'id_offer_to_create',$id_offer_to_create,__FILE__, __FUNCTION__, __LINE__);
  58. //teraz dla ka¿dej z ofert budujemy wpisy do DEALS
  59. } else { $error.=' ID_OFFERS_GROUP - brak komórki ';
  60. DEBUG_S(-3,'ID_OFFERS_GROUP',$_REQUEST['ID_OFFERS_GROUP'],__FILE__, __FUNCTION__, __LINE__);
  61. }
  62. //teraz lapiemy przekazane parametry z uslug dodatkowych, aby je dodac do ceny i wstawic odpowiednio w deals table
  63. foreach($_REQUEST as $look_for_pars=>$val) {
  64. $test=explode('__',$look_for_pars);
  65. if($test[0]=='ID_OFFERS_GROUP_OPTIONS_WERE_SET_ID')
  66. $id_opts_to_create[]=$test[1];
  67. }
  68. DEBUG_S(-3,'id_opts_to_create',$id_opts_to_create,__FILE__, __FUNCTION__, __LINE__);
  69. echo "<hr>";
  70. print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID']);
  71. //teraz pokolei jedziemy dodawanie do USERS2_DEALS na podstawie $id_offer_to_create
  72. foreach($id_offer_to_create as $USERS2_OFFERS_GROUPS) {
  73. $sql="insert into USERS2_DEALS ( A_STATUS , A_STATUS_INFO , DATA_DOK, S_ADDRESS_STREET, S_OTHER_INFO, ID_BILLING_USERS_NEW , P_SERVICE_COMPANY,
  74. P_OFFER_ID_NEW, P_DEAL_DATE_NEW, P_DEALNUMBER_NEW, P_DEALTERM_NEW, MONTH_COST_NEW, INICJALY_HANDLOWCA , A_RECORD_CREATE_DATE,A_RECORD_CREATE_AUTHOR ,
  75. P_SERVICE )
  76. select 'WAITING', 'wprowadzone automatycznie za pomoca kreatora sqix', dt.P_DEALDATE , dt.S_ADDRESS_STREET, dt.DEALDESC , dt.ID_BILLING_USERS , bu.BILLING_OWNER ,
  77. of.ID , dt.P_DEALDATE , concat_ws('/',dt.ID,dt.P_DEALNUMBER), dt.P_DEALDATE_TERM, of.P_PROMO_MONTH_PRICE_NETTO , dt.P_DEALPREFIX , now(), '".$_SESSION['ADM_ACCOUNT']."' ,
  78. of.P_SERVICE
  79. from DEALS_TABLE as dt
  80. left join BILLING_USERS as bu on bu.ID=dt.ID_BILLING_USERS
  81. left join BILLING_USERS_ADD as bua on bua.id_users=bu.ID
  82. left join USERS2_OFFERS as of on of.ID='".$USERS2_OFFERS_GROUPS."'
  83. where dt.ID='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID']."'
  84. limit 1
  85. ";
  86. mysql_query($sql);
  87. $last_insert_id=mysql_insert_id(); //ostatni ID bedzie potrzebny aby zrobic P_ID w umowach
  88. DEBUG_S(-2,'LIID1 : '.$last_insert_id,$sql,__FILE__, __FUNCTION__, __LINE__);
  89. //echo "\n<br> LID: ".$last_insert_id." for ".$sql;
  90. foreach($id_opts_to_create as $USERS2_OFFERS_GROUPS) {
  91. $sql="insert into USERS2_DEALS ( A_STATUS , A_STATUS_INFO , DATA_DOK, S_ADDRESS_STREET, S_OTHER_INFO, ID_BILLING_USERS_NEW , P_SERVICE_COMPANY,
  92. P_OFFER_ID_NEW, P_DEAL_DATE_NEW, P_DEALNUMBER_NEW, P_DEALTERM_NEW, MONTH_COST_NEW, INICJALY_HANDLOWCA , A_RECORD_CREATE_DATE,A_RECORD_CREATE_AUTHOR ,
  93. P_SERVICE ,P_ID)
  94. select 'WAITING', 'wprowadzone automatycznie za pomoca kreatora sqix', dt.P_DEALDATE , dt.S_ADDRESS_STREET, dt.DEALDESC , dt.ID_BILLING_USERS , bu.BILLING_OWNER ,
  95. of.ID , dt.P_DEALDATE , concat_ws('/',dt.ID,dt.P_DEALNUMBER), dt.P_DEALDATE_TERM, of.P_PROMO_MONTH_PRICE_NETTO , dt.P_DEALPREFIX , now(), '".$_SESSION['ADM_ACCOUNT']."' ,
  96. of.P_SERVICE , '".$last_insert_id."'
  97. from DEALS_TABLE as dt
  98. left join BILLING_USERS as bu on bu.ID=dt.ID_BILLING_USERS
  99. left join BILLING_USERS_ADD as bua on bua.id_users=bu.ID
  100. left join USERS2_OFFERS as of on of.ID='".$USERS2_OFFERS_GROUPS."'
  101. left join USERS2_DEALS as udp on udp.ID='".$last_insert_id."'
  102. where dt.ID='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID']."' and of.P_SERVICE_PARENT=udp.P_SERVICE
  103. limit 1
  104. ";
  105. mysql_query($sql);
  106. // echo "\n<hr> LIID: ".$last_insert_id." for ".$sql;
  107. DEBUG_S(-2,'LIID2: '.$last_insert_id,$sql,__FILE__, __FUNCTION__, __LINE__);
  108. }
  109. }
  110. }
  111. // foreach()
  112. // echo ($_SESSION['ADM_ACCOUNT']);
  113. // die();
  114. } else {
  115. if(($_SESSION['CURRENT_MENU']=="NEW_RECORD")||($_SESSION['CURRENT_MENU']==$thiss->DETECT_EDIT_FUNCTION)) {
  116. if(strstr($_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT'][$field_name],"W")) {
  117. ZAP_SQL("select 1+1;");
  118. //najpierw sprawdzamy czy umowy juz nie ma w DEALS
  119. if(($_SESSION['CURRENT_MENU']=="NEW_RECORD")) $SQL="select ID,P_DEALNUMBER_NEW,P_SERVICE from USERS2_DEALS where P_DEALNUMBER_NEW='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD']['ID']."' and P_DEALNUMBER_NEW>0";
  120. else $SQL="select ID,P_DEALNUMBER_NEW,P_SERVICE from USERS2_DEALS where P_DEALNUMBER_NEW='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID']."' and P_DEALDATE_NEW>'2013-01-01'"; //
  121. // echo $SQL;
  122. $res1=mysql_query($SQL);
  123. if(mysql_num_rows($res1)>0) echo "<h2>W systemie jest juz zarejestrowana powiazana struktura umow w tabeli USERS2_DEALS, pod numerami ";
  124. while($h=mysql_fetch_object($res1)) {
  125. echo " ".$h->ID." ".$h->P_SERVICE."(id deals:".$h->P_DEALNUMBER_NEW.") , ";
  126. }
  127. if(mysql_num_rows($res1)>0) echo "</h2>";
  128. if(mysql_num_rows($res1)>0) { //bedziemy szukac czy sie daja aktywowac
  129. if($_SESSION['CURRENT_MENU']==$thiss->DETECT_EDIT_FUNCTION) {
  130. $SQL="select ID,P_DEALNUMBER_NEW,P_SERVICE from USERS2_DEALS where P_DEALNUMBER_NEW='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID']."' and P_DEALNUMBER_NEW>0 and A_STATUS='WAITING' ";
  131. $res1=mysql_query($SQL);
  132. if(mysql_num_rows($res1)>0) echo "<h3>Strukture danych do uruchomienia mozna wprowadzic do URUCHOMIENIA oraz ROZLICZANIA w module @2013-01-10 TODO ";
  133. while($h=mysql_fetch_object($res1)) {
  134. echo " ".$h->ID." ".$h->P_SERVICE."(id deals:".$h->P_DEALNUMBER_NEW.") , ";
  135. }
  136. if(mysql_num_rows($res1)>0) echo "</h2>";
  137. }
  138. }
  139. if(mysql_num_rows($res1)==0) {
  140. if(!empty($_REQUEST['JAVA_VALUE'])) {
  141. //if($_REQUEST['JAVA_FIELD']=='P_DEALNUMBER_OLD__JAVA_FILTR_ID_BILLING_USERS') {
  142. // $where=" ID_BILLING_USERS='".$_REQUEST['JAVA_VALUE']."'";
  143. // $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD']['P_DEALNUMBER_OLD__JAVA_FILTR_ID_BILLING_USERS']=$_REQUEST['JAVA_VALUE'];
  144. //} else
  145. if($_REQUEST['JAVA_FIELD']==$field_name.'__JAVA') {
  146. $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD'][$field_name.'__JAVA']=addslashes($_REQUEST['JAVA_VALUE']);
  147. //dodatkowy warunek odpalany wyzwoleniem z javy
  148. } else if($_REQUEST['JAVA_FIELD']==$field_name.'_OPTIONS__JAVA') {
  149. $_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD'][$field_name.'_OPTIONS__JAVA']=addslashes($_REQUEST['JAVA_VALUE']);
  150. }
  151. }
  152. if(!empty($_REQUEST['JAVA_GET_SELECT_TABLE_SELECT'])) {
  153. if($_REQUEST['JAVA_FIELD']==$field_name.'__JAVA') {
  154. $where=" and ID like '%".addslashes($_REQUEST['JAVA_VALUE'])."%' or S_ALIAS like '%".$_REQUEST['JAVA_VALUE']."%' or P_PROMOTION_NAME like '%".$_REQUEST['JAVA_VALUE']."%' ";
  155. $SQL="select ID as `key`, concat_ws(' ',S_ALIAS,P_PROMOTION_NAME,P_OFFER_TERM_BEGIN,P_OFFER_TERM,P_SERVICE_COMPANY,M_REWIR) as description from USERS2_OFFERS_GROUPS where ( P_SERVICE_COMPANY='BN' or P_SERVICE_COMPANY='NETDAY' ) ".$where." order by ID DESC limit 25";
  156. } else if($_REQUEST['JAVA_FIELD']==$field_name.'_OPTIONS__JAVA') {
  157. //@2013-01 old sql : mialy sie dodawac opcje z javy, ale nie udalo sie
  158. // $SQL="select t2.ID as `key`, concat_ws(' ', t2.P_SERVICE ,t2.P_SERVICE_PARENT , t2.P_NORMAL_PRICE , t2.S_ALIAS, t2.P_SERVICE_PARENT) as description ,t2.ID_PRODUKT as `group_key` from USERS2_OFFERS_GROUPS as t1 left join USERS2_OFFERS as t2 on ((t2.ID=t1.ID_NET or (t2.P_SERVICE='OPCJE' and t1.ID_NET>0 and t2.P_SERVICE_PARENT='NET') or t2.ID=t1.ID_TEL or (t2.P_SERVICE='OPCJE' and t1.ID_TEL>0 and t2.P_SERVICE_PARENT='TEL') or t2.ID=t1.ID_TV or (t2.P_SERVICE='OPCJE' and t1.ID_TV>0 and t2.P_SERVICE_PARENT='TV') or t2.ID=t1.ID_TVC or (t2.P_SERVICE='OPCJE' and t1.ID_TVC>0 and t2.P_SERVICE_PARENT='TVC') or t2.ID=t1.ID_TVCP or (t2.P_SERVICE='OPCJE' and t1.ID_TVCP>0 and t2.P_SERVICE_PARENT='TVCP') ))
  159. // where t1.ID='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD'][$field_name.'_OPTIONS__JAVA']."'
  160. // ";
  161. $SQL="select t2.ID as `key`, concat_ws(' ', t2.P_SERVICE ,t2.P_SERVICE_PARENT , t2.P_NORMAL_PRICE , t2.S_ALIAS, t2.P_SERVICE_PARENT) as description ,t2.ID_PRODUKT as `group_key`
  162. from USERS2_OFFERS_GROUPS as t1
  163. where t1.ID='".$_SESSION[$thiss->DETECT_TABLE_COLUMN]['EDITRECORD'][$field_name.'_OPTIONS__JAVA']."'
  164. ";
  165. // $SQL="select '101' as `key` , 'test_desc' as description ";
  166. //echo $SQL;
  167. }
  168. ZAP_SQL($SQL);
  169. $i=0;
  170. while ($r = mysql_fetch_object( $result )) {
  171. $rows[$i]->key=$r->key;
  172. $rows[$i]->group_key=$r->group_key;
  173. $rows[$i]->description=addslashes(iconv("UTF-8", "ISO-8859-1//TRANSLIT", $r->description));
  174. $i++;
  175. }
  176. if(empty($rows)) {
  177. $rows[0]->key='';
  178. $rows[0]->description='';
  179. $rows[0]->description2='';
  180. $rows[0]->description3='';
  181. }
  182. print json_encode($rows);
  183. } else { //else java
  184. echo "\n a) wybierz pakiet (filtr) : <input type=text name=".$field_name."__JAVA id=\"".$field_name."__JAVA\" onkeyup=JAVA_GET_SELECT_TABLE_SELECT_FROM_FIELD('".$field_name."','".session_id()."','".$field_name."__JAVA','".$field_name."__JAVA_P');>";
  185. echo "<br>b) potwierdz wybor <select id=".$field_name."__JAVA_P name=".$field_name."__JAVA_P ";
  186. //5.2::@2012-12-20 sqix: przekazanie argumentu z selecta do zmiennej do zlapania w php
  187. echo " onchange=\"set_FORM_NAME('".$field_name."__JAVA_P','".$field_name."')\" ";
  188. echo ">";
  189. echo "</select>";
  190. //echo " <br>c) wybierz pakiety : ";
  191. echo "\n <input type=text name=".$field_name." id=\"".$field_name."\" value='".$ARG1_VAL."' >";
  192. // echo "<div id=".$field_name."_OPTIONS__JAVA></div>";
  193. // echo "<select id=".$field_name."_OPTIONS__JAVA name=".$field_name."_OPTIONS__JAVA ";
  194. //if($thiss->DETECT_TABLE_COLUMN=='DEALS_TABLE_COLUMN') //jezeli w deals table, to ustawiony platnik sugeruje umowy z tego klienta
  195. //5.1::@2012-12-20 sqix: mozliwosc przekazania zawartosci do innego pola formularza w JAVA -> //EOF:5.1::
  196. //echo "onchange=\"set_FORM_NAME('".$field_name."__JAVA_P',$field_name.'__JAVA_ID_OFFERS_GROUP')\" ";
  197. //5.2::@2012-12-20 sqix: przekazanie argumentu z selecta do zmiennej do zlapania w php
  198. // echo "onchange=\"JAVA_GET_SELECT_TABLE_SELECT_FROM_SELECT('".$field_name."','".session_id()."','".$field_name."_OPTIONS_JAVA')\" ";
  199. // echo "onchange=\"set_FORM_NAME('ID_BILLING_USERS_W_DEALS_TABLE','".$field_name."__JAVA_P\"')\" ";
  200. //EOF:5.1::
  201. // echo ">";
  202. //echo "</select>";
  203. if($_SESSION['CURRENT_MENU']==$thiss->DETECT_EDIT_FUNCTION)
  204. echo "\n<br><input type=\"checkbox\" name=".$thiss->DETECT_TABLE_COLUMN."__USERS2_OFFERS_GROUPS_OPCJE__ADD_TO_DEALS> <b>Zaznacz ten przycisk, jezeli chcesz aby po kliknieciu zapisz system wprowadzil informacje do tabeli DEALS, zgodnie z wybranymi opcjami</b>";
  205. else echo "<br>Nale¿y wejsc w edycje rekordu aby uzyc funkcji przetwarzania rekordu do USERS2_DEALS!!";
  206. // echo "\n<br><input id='checkbox' type='checkbox' name='ismemeber_xxx' /> test costam";
  207. // DEBUG_S(-2,'sql',$SQL,__FILE__, __FUNCTION__, __LINE__);
  208. /*
  209. while($h=mysql_fetch_object($res3)) {
  210. echo "\n<br> SKLADNIK OFERTY Numer:".$h->ID.", Opis:".$h->S_ALIAS.", Podrzedna do:".$h->P_SERVICE_PARENT." :";
  211. //petla, gdzie bedziemy zaznaczac opcje kupione przez klienta
  212. $SQL4="select t1.ID, t1.P_SERVICE , t1.P_NORMAL_PRICE , t1.S_ALIAS, t1.P_SERVICE_PARENT from USERS2_OFFERS as t1
  213. where t1.P_SERVICE='OPCJE' and t1.P_SERVICE_PARENT='".$h->P_SERVICE."'";
  214. $res4=mysql_query($SQL4);
  215. while($h4=mysql_fetch_object($res4)) {
  216. echo "\n<br><input type=\"checkbox\" name=".$thiss->DETECT_TABLE_COLUMN."__USERS2_OFFERS_GROUPS_OPCJE__".$h->ID."__".$h4->ID."> SKLADNIK OFERTY Numer:".$h4->ID.", Opis:".$h4->S_ALIAS.", Podrzedna do:".$h4->P_SERVICE_PARENT;
  217. }
  218. }
  219. */
  220. echo "\n";
  221. } //echo json
  222. } //eof mysql_numrows==0
  223. } else echo $ARG1_VAL."";
  224. }
  225. }
  226. }
  227. ?>