DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; } // init columns if not set if (empty($_SESSION['USERS2_MARKETING_AKCJE'."_COLUMN"])) { SEF('USERS_COLUMN_INIT2'); USERS_COLUMN_INIT2('USERS2_MARKETING_AKCJE', '', 'RWXC'); } if (empty($_SESSION['USERS2_MARKETING_AKCJE_BUILDINGS'."_COLUMN"])) { SEF('USERS_COLUMN_INIT2'); USERS_COLUMN_INIT2('USERS2_MARKETING_AKCJE_BUILDINGS', '', 'RWXC'); } $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["DATA"] = "R"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["W_DATA_DOSTARCZONO"] = "RWX"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["W_DATA_WPROWADZONO"] = "RWX"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["K_DATA_DOSTARCZONO"] = "RWX"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["K_DATA_WPROWADZONO"] = "RWX"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //$_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT'][""] = ""; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["DO_ROZNIESIENIA"] = "R"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["A_STATUS"] = "R"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']["ROZNIESIONO"] = "R"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["ID_PROJECT"] = "ID projektu ulotki/plakatu"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["FILTR_BEZ_BN"] = "Czy pominac operatora BN?"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["FILTR_ANEKSY"] = "Czy brac pod uwage koniec aktualnej umowy (3-mc przed koncem)"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["FILTR_MIN_ULOTEK_NA_BUDYNEK"] = "Maksymalne nasycenie na budynku (procent 0-100)"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["FILTR_MIN_DATA_OSTATNIEJ_AKCJI"] = "Uwzględnij tylko budynki z datą akcji do:"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["W_USER"] = "Pracownik wykonujacy zadanie"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["W_DATA"] = "Termin wykonania zadania"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["K_USER"] = "Kontroler wykonania zadania"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG']["K_DATA"] = "Termin wykonania kontroli"; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPESPECIAL']['ID_PROJECT'] = 'USERS2_MARKETING_AKCJE_typespecial_ID_PROJECT'; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPESPECIAL']['FILTR_M_REWIR'] = 'USERS2_MARKETING_AKCJE_typespecial_FILTR_M_REWIR'; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPESPECIAL']['FILTR_S_ADDRESS_STREET'] = 'USERS2_MARKETING_AKCJE_typespecial_FILTR_S_ADDRESS_STREET'; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPESPECIAL']['W_USER'] = 'USERS2_MARKETING_AKCJE_typespecial_W_USER'; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPESPECIAL']['K_USER'] = 'USERS2_MARKETING_AKCJE_typespecial_K_USER'; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['HIDE'][ $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_KEY']["FILTR_M_REWIR"] ] = 'HIDE'; // router global $ARG1,$ARG1_VAL; switch ($ARG1) { case 'ADD': { if (isset($_POST)) { // update new record in session foreach ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'] as $field_name) { if (strstr($_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT'][$field_name], "C")) { if (isset($_POST[$field_name])) { $_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD'][$field_name] = $_POST[$field_name]; } } }//end foreach } if (isset($_POST['task'])) { if ($_POST['task'] == 'save') { $ret = USERS2_MARKETING_AKCJE_task_ADD_save(); if ($ret) { echo'
'."Dodano nowy rekord (ID = ".$ret.")".'
'; echo''."Cofnij ".''."Wrong ID".'
'; return; } // fetch object by ID if (empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'])) { $_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'] = $record_id; } else if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'] != $record_id) { // TODO: clean ses cache data $_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'] = $record_id; } $zapSQL = "SELECT * from `".$thiss->DETECT_TABLE_NAME."` where `ID`='" . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'] . "' "; if (isset($_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE']['A_ADM_COMPANY'])) { $zapSQL .= " and `A_ADM_COMPANY` like '".$_SESSION['ADM_COMPANY']."' "; } $result = DB::query($zapSQL) or die("Blad zapytania2!"); $num_rows = DB::num_rows($result); $_SESSION[$thiss->DETECT_TABLE_COLUMN]['MYSQL_NUM_ROWS'] = $num_rows; $record = DB::fetch_assoc($result); if (!$record) { echo''."Record not exists!".'
'; return; } $task = V::get('task', '', $_REQUEST); switch ($task) { case 'zlecenie': USERS2_MARKETING_AKCJE_task_EDIT_zlecenie($record_id, $record); break; case 'wprowadz_zlecenie_data': USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_data($record_id, $record); break; case 'wprowadz_zlecenie': USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie($record_id, $record); break; case 'zlecenie_kontroli': USERS2_MARKETING_AKCJE_task_EDIT_zlecenie_kontroli($record_id, $record); break; case 'wprowadz_zlecenie_kontroli_data': USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_kontroli_data($record_id, $record); break; case 'wprowadz_zlecenie_kontroli': USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_kontroli($record_id, $record); break; case 'delete': USERS2_MARKETING_AKCJE_task_EDIT_A_STATUS('delete', $record_id, $record); break; case 'undelete': USERS2_MARKETING_AKCJE_task_EDIT_A_STATUS('undelete', $record_id, $record); break; default: USERS2_MARKETING_AKCJE_task_EDIT($record_id, $record); } break; } case 'HIST': { USERS2_MARKETING_AKCJE_task_HIST(); return; break; } case 'PODSUMOWANIE': USERS2_MARKETING_AKCJE_podsumowanie(); break; case 'PODSUMOWANIE_USER': USERS2_MARKETING_AKCJE_podsumowanie_user(); break; default: { // update sql like RELATIVEDB $sql = "update `USERS2_MARKETING_AKCJE` as a set a.`DO_ROZNIESIENIA`=(select sum(ab.DO_ROZNIESIENIA) from USERS2_MARKETING_AKCJE_BUILDINGS as ab where ab.ID_AKCJA=a.ID) , a.`ROZNIESIONO`=(select sum(ab.ROZNIESIONO) from USERS2_MARKETING_AKCJE_BUILDINGS as ab where ab.ID_AKCJA=a.ID) where 1=1 "; DB::query($sql); USERS2_MARKETING_AKCJE_list(); } } } class USERS2_MARKETING_AKCJE { function &get_buildings($record_id, &$record) { global $thiss; // USERS2_MARKETING_AKCJE_BUILDINGS { $thiss->DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_BUILDINGS_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE_BUILDINGS'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; //echo'thiss: ';print_r($thiss);echo''; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //echo'
SES[thiss]: ';print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]);echo''; } $buildings = array(); $sql = "select a.* from `" . $thiss->DETECT_TABLE_NAME . "` as a where a.`ID_AKCJA`='" . $record_id . "' order by a.`S_ADDRESS_STREET` "; $res = DB::query($sql) or die("sql error: $sql"); while ($h = DB::fetch_assoc($res)) { $h['S_ADDRESS_STREET'] = strtoupper($h['S_ADDRESS_STREET']); $h['nr_domu'] = intval( preg_replace('/[^0-9]/', '', $h['S_ADDRESS_STREET']) ); $h['street_short'] = preg_replace('/[0-9]/', '', $h['S_ADDRESS_STREET']); $buildings[ $h['S_ADDRESS_STREET'] ] = $h; } if (empty($buildings)) { echo'
'."Brak przypisanych budynkow!".'
'; return; } function sort_marketing_akcje_buildings_callback($a, $b) { if ($a['street_short'] < $b['street_short']) { return -1; } else if ($a['street_short'] > $b['street_short']) { return 1; } else if ($a['nr_domu'] < $b['nr_domu']) { return -1; } else if ($a['nr_domu'] > $b['nr_domu']) { return 1; } else { return 0; } } uasort( $buildings, 'sort_marketing_akcje_buildings_callback' ); return $buildings; } function fetch_buildings_types(&$buildings) { if (empty($buildings)) { return; } $sql_buildings_streets = array(); foreach ($buildings as $k_street => $v_building) { $sql_buildings_streets []= "'" . $k_street . "'"; $buildings[$k_street]['T_BUILDING_TYPE'] = ''; } if (empty($sql_buildings_streets)) { return; } $sql = "select b.`S_ADDRESS_STREET`, b.`T_BUILDING_TYPE` from `BUILDINGS` as b where b.`S_ADDRESS_STREET` in(" . implode(", ", $sql_buildings_streets) . ") "; $res = DB::query($sql); while ($r = DB::fetch($res)) { if (isset($buildings[$r->S_ADDRESS_STREET])) { $buildings[$r->S_ADDRESS_STREET]['T_BUILDING_TYPE'] = $r->T_BUILDING_TYPE; } } } function &get_buildings_by_user_month($user, $month, $order_by = 'S_ADDRESS_STREET', $order_dir = 'ASC') { global $thiss; // USERS2_MARKETING_AKCJE_BUILDINGS { $thiss->DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_BUILDINGS_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE_BUILDINGS'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; //echo'thiss: ';print_r($thiss);echo''; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //echo'
SES[thiss]: ';print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]);echo''; } if (!$order_by) $order_by = 'S_ADDRESS_STREET'; $buildings = array(); $sql = "select ab.*, a.`ID_PROJECT` from `" . 'USERS2_MARKETING_AKCJE' . "` as a left join `" . $thiss->DETECT_TABLE_NAME . "` as ab on(ab.`ID_AKCJA`=a.`ID`) where a.`A_STATUS`!='DELETED' and a.`W_USER`='" . $user . "' and a.`W_DATA` like '" . $month . "-%' order by ab.`" . $order_by . "` " . $order_dir . " "; $res = DB::query($sql) or die("sql error: $sql"); while ($h = DB::fetch_assoc($res)) { $h['S_ADDRESS_STREET'] = strtoupper($h['S_ADDRESS_STREET']); $h['nr_domu'] = intval( preg_replace('/[^0-9]/', '', $h['S_ADDRESS_STREET']) ); $h['street_short'] = preg_replace('/[0-9]/', '', $h['S_ADDRESS_STREET']); $buildings[ $h['ID'] ] = $h; } if (empty($buildings)) { echo'
'."Brak przypisanych budynkow!".'
'; return; } if ($order_by == 'S_ADDRESS_STREET') { // TODO: sort_dir - DESC function sort_marketing_akcje_buildings_callback($a, $b) { if ($a['street_short'] < $b['street_short']) { return -1; } else if ($a['street_short'] > $b['street_short']) { return 1; } else if ($a['nr_domu'] < $b['nr_domu']) { return -1; } else if ($a['nr_domu'] > $b['nr_domu']) { return 1; } else { return 0; } } uasort( $buildings, 'sort_marketing_akcje_buildings_callback' ); } return $buildings; } function &get_mieszkania($record_id, &$record) { global $thiss; // USERS2_MARKETING_AKCJE_BUILDINGS { $thiss->DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_BUILDINGS_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE_BUILDINGS'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; //echo'thiss: ';print_r($thiss);echo''; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //echo'
SES[thiss]: ';print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]);echo''; } $mieszkania = array(); $sql_filter_bez_bn = ""; if ($record['FILTR_BEZ_BN'] == 'TAK') { $sql_filter_bez_bn = " and m.`I_OPER`!='BN' "; } $sql = "select m.`T_TELBOX_BUILDING_IN`, m.`S_ADDRESS_STREET`, m.`I_OPER` from `" . $thiss->DETECT_TABLE_NAME . "` as ab left join `USERS2_MARKETING` as m on(m.`T_TELBOX_BUILDING_IN`=ab.`S_ADDRESS_STREET`) where ab.`ID_AKCJA`='" . $record_id . "' $sql_filter_bez_bn order by ab.`S_ADDRESS_STREET` asc "; $res = DB::query($sql) or die("sql error: $sql"); while ($h = DB::fetch_assoc($res)) { $h['T_TELBOX_BUILDING_IN'] = strtoupper($h['T_TELBOX_BUILDING_IN']); $h['S_ADDRESS_STREET'] = strtoupper($h['S_ADDRESS_STREET']); $s_address_street = explode('/', $h['S_ADDRESS_STREET'], 2); $h['dom'] = intval( preg_replace('/[^0-9]/', '', reset($s_address_street)) );// reset($s_address_street); $h['nr_domu'] = end($s_address_street); $mieszkania[ $h['T_TELBOX_BUILDING_IN'] ] []= $h; } function sort_marketing_akcje_mieszkania_callback($a, $b) { if ($a['T_TELBOX_BUILDING_IN'] < $b['T_TELBOX_BUILDING_IN']) { return -1; } else if ($a['T_TELBOX_BUILDING_IN'] > $b['T_TELBOX_BUILDING_IN']) { return 1; } else if ($a['nr_domu'] < $b['nr_domu']) { return -1; } else if ($a['nr_domu'] > $b['nr_domu']) { return 1; } else { return 0; } } foreach ($mieszkania as $k_building => $v_arr) { uasort( $mieszkania[$k_building], 'sort_marketing_akcje_mieszkania_callback' ); //ksort( $mieszkania[$k_building]); } function sort_marketing_akcje_budynki_callback($a_arr, $b_arr) { $a = reset($a_arr); $b = reset($b_arr); if ($a['T_TELBOX_BUILDING_IN'] < $b['T_TELBOX_BUILDING_IN']) { return -1; } else if ($a['T_TELBOX_BUILDING_IN'] > $b['T_TELBOX_BUILDING_IN']) { return 1; } else if ($a['dom'] < $b['dom']) { return -1; } else if ($a['dom'] > $b['dom']) { return 1; } else { return 0; } } uasort( $mieszkania, 'sort_marketing_akcje_budynki_callback' ); return $mieszkania; } function print_rewir_tree_css() { echo''; } function print_rewir_tree_js() { echo''; echo''; } function print_rewir_tree(&$record_data) { global $thiss; $rewiry = array(); $buildings = array(); $rewiry_selected = explode(',', $record_data['FILTR_M_REWIR']); $buildings_selected = explode(',', $record_data['FILTR_S_ADDRESS_STREET']); // fetch old actions on buildings $old_actions = array(); $sql = "select mb.`S_ADDRESS_STREET` as street , max(ma.`DATA`) as last_date from `USERS2_MARKETING_AKCJE_BUILDINGS` as mb left join `USERS2_MARKETING_AKCJE` as ma on(ma.`ID`=mb.`ID_AKCJA`) where ma.`A_STATUS`!='DELETED' group by mb.`S_ADDRESS_STREET` "; $res = DB::query($sql); while ($r = DB::fetch($res)) { $r->street = strtoupper($r->street); $old_actions[$r->street] = $r->last_date; } // filtr bez BN $sql_ulotek = "ov.`MIESZKAN`"; if ($record_data['FILTR_BEZ_BN'] == 'TAK') { $sql_ulotek = "(ov.`MIESZKAN` - ov.`ABO_I`)"; } // filtr FILTR_MIN_ULOTEK_NA_BUDYNEK $sql_ulotek_enable = "1"; if ($filtr_min_ulotek_na_budynek = V::get('FILTR_MIN_ULOTEK_NA_BUDYNEK', 0, $record_data, 'int')) { if ($record_data['FILTR_BEZ_BN'] == 'TAK') { $sql_ulotek_enable = " ( (100 * ov.`ABO_I`) / ov.`MIESZKAN` ) <= ".$filtr_min_ulotek_na_budynek.""; } } // TODO: filtr aneksy $sql = "select b.`ID`, b.`M_REWIR`, b.`S_ADDRESS_STREET`, b.`P_ADDRESS_STREET` , ov.`ABO_I`, ov.`MIESZKAN` , $sql_ulotek as ile_ulotek , ( (100 * ".$sql_ulotek.") / ov.`MIESZKAN` ) as pr , $sql_ulotek_enable as ulotek_enable , 1 as data_enable from `BUILDINGS` as b left join `USERS2_MARKETING_OVERWIEV` as ov on(ov.`T_TELBOX_BUILDING_IN`=b.`S_ADDRESS_STREET`) where b.`A_STATUS` in('NORMAL','WARNING') group by b.`ID` order by b.`M_REWIR` "; echo''; $res = DB::query($sql); while ($r = DB::fetch($res)) { if ($filtr_data = V::get('FILTR_MIN_DATA_OSTATNIEJ_AKCJI', 0, $record_data)) { if (array_key_exists($r->S_ADDRESS_STREET, $old_actions)) { if ($old_actions[$r->S_ADDRESS_STREET] >= $filtr_data) { $r->data_enable = 0; $r->last_action_date = $old_actions[$r->S_ADDRESS_STREET]; } } } $r->rewir = explode('.', strtoupper($r->M_REWIR)); $r->dom = intval( preg_replace('/[^0-9]/', '', $r->S_ADDRESS_STREET) ); $rewir = $r->M_REWIR; $buildings [$r->ID] = $r; if ($r->dom > 0) { $rewiry [strtoupper($r->M_REWIR)] []= $r; } } function buildings_map_tree_add( &$tree, &$r, $filtr_last_data, $add_path, $cur_path = array() ) { if ($add_path == '') { $disable = false; $disable_reaseon = ''; if (!$r->ulotek_enable) { $disable = true; $disable_reaseon = ' - za duże nasycenie'; } if (!$r->data_enable) { $disable = true; $disable_reaseon = ' - data ostatniej akcji '.$r->last_action_date.' > '.$filtr_last_data; } // , ov.`ABO_I`, ov.`MIESZKAN` $procent = round(($r->ABO_I * 100) / $r->MIESZKAN); $st = ''; $cls = ''; if ($procent < 30) $cls = 'pr-highest'; else if ($procent < 60) $cls = 'pr-high'; else if ($procent < 80) $cls = 'pr-medium'; $out_title = $r->P_ADDRESS_STREET.": ".$r->ABO_I." abonentow /".$r->MIESZKAN." mieszkan"; if ($disable) { $cls = 'pr-disable'; $out_title .= $disable_reaseon; } $out = ''; $out .= ''; $out .= ''.$r->S_ADDRESS_STREET.''; $out .= ' ('.$procent."%".')'; $out .= ''; $tree['buildings'] [$r->S_ADDRESS_STREET] = $out; return; } $path = explode('.', strtoupper($add_path)); $cur_path []= array_shift($path);// 1st elem $cur_path_str = implode('.', $cur_path); if (!array_key_exists($cur_path_str, $tree)) { $tree [$cur_path_str] = array(); } buildings_map_tree_add( $tree[$cur_path_str], $r, $filtr_last_data, implode('.', $path), $cur_path ); } function buildings_map_show_tree( &$tree, &$rewiry_selected, &$buildings_selected ) { if (empty($tree)) { return; } echo'
';print_r($rewiry_tree);echo''; echo'
| '."Nazwa_POLA";
//CREATE_MENUFUNC_INIT_2($thiss->DETECT_HIST_FUNCTION,'HISTORY',$_SESSION[$thiss->DETECT_TABLE_COLUMN]['WIEVID'],' | '."WARTOSC".' | '; echo''; echo''; echo '
';
if (!empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG'][$field_name])) {
echo $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG'][$field_name];
echo ''.$field_name.'';
} else {
echo ''.$field_name.' ';
}
echo ' | ';
echo ''; if (in_array($field_name, array('FILTR_M_REWIR', 'FILTR_S_ADDRESS_STREET'))) { echo str_replace(',', ', ', $record[ $field_name ]); } else { echo $record[ $field_name ]; } echo ' | '; echo '
thiss: ';print_r($thiss);echo''; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //echo'
SES[thiss]: ';print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]);echo''; } $buildings = USERS2_MARKETING_AKCJE::get_buildings($record_id, $record); USERS2_MARKETING_AKCJE::fetch_buildings_types($buildings);// add T_BUILDING_TYPE $suma_do_rozniesienia = 0; $suma_rozniesiono = 0; foreach ($buildings as $k_street => $h) { $suma_do_rozniesienia += $h['DO_ROZNIESIENIA']; $suma_rozniesiono += $h['ROZNIESIONO']; } echo''; echo'
'."Do rozniesienia ".$suma_do_rozniesienia." - rozniesiono ".$suma_rozniesiono."."; echo ''." Skuteczność akcji: ".(($suma_rozniesiono > 0)? round((100 * $suma_rozniesiono/$suma_do_rozniesienia)) : 0)."%".''; echo '
'; echo'| ' . str_replace('_', ' ', $field_name) . ' | '; if ($field_name == 'S_ADDRESS_STREET') { echo '' . str_replace('_', ' ', 'T_BUILDING_TYPE') . ' | '; } } echo'
|---|---|
| ' . $h[$field_name] . ' | '; if ($field_name == 'S_ADDRESS_STREET') { echo '' . $h['T_BUILDING_TYPE'] . ' | '; } } echo'
' . "ZLECENIE KOLPORTAŻU z dnia ".$record['DATA'].", do procesu dystrybucji nr ".$record_id." z dnia ".$record['W_DATA']."" . '
'; // echo''."Imię i nazwisko: ".$worker_name;
// echo " Wprowadzono do SE? ............";
// echo'
';
// echo "Data kolportażu: ".$record['W_DATA'].".";
// echo " Kolportarz należy przeprowadzić od godz. ..... do godz. .....";
// echo'
';
// echo "Raport dostarczyć do: "."BOK Chełm do dnia ................. do godz. .....";
// echo'
| '; if (isset($v_page_arr[$col_nr][$line_nr])) { if ($v_page_arr[$col_nr][$line_nr]['nr'] == 'empty') { echo " "; } else if ($v_page_arr[$col_nr][$line_nr]['nr'] == 'podsumowanie') { echo " suma dla "; echo $v_page_arr[$col_nr][$line_nr]['street']; echo " "; echo ''; //echo''.$v_page_arr[$col_nr][$line_nr]['x'] . '/'.count($mieszkania[$v_page_arr[$col_nr][$line_nr]['street']]); } else if ($v_page_arr[$col_nr][$line_nr]['nr'] == 'godzina') { echo " godzina: "; echo ''; } else { echo $v_page_arr[$col_nr][$line_nr]['street']; echo " ("; echo $v_page_arr[$col_nr][$line_nr]['nr']; echo ") "; echo ''; } } else { echo " "; } echo' | '; } echo'
'."Dotyczy akcji ".$record['ID']." z dnia ".$record['DATA'].'
'; $post_saved = array(); $post = array(); foreach ($buildings as $k_street => $h) { $post[$k_street] = V::get($k_street, $h['ROZNIESIONO'], $_POST); }//end foreach if (1 == V::get('save', '', $_POST)) { if ("zakoncz" == V::get('sbmt', '', $_POST)) { $form_saved = false; $arr = array(); $arr['A_RECORD_UPDATE_DATE'] = date('Y-m-d-H:i'); $arr['A_RECORD_UPDATE_AUTHOR'] = $_SESSION['ADM_ACCOUNT']; $arr['W_DATA_WPROWADZONO'] = date('Y-m-d'); $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr []= "`".$k."`='".$v."'"; }//end foreach $sql = "update `USERS2_MARKETING_AKCJE` set ".implode(",", $sql_arr)." where `ID`='".$record_id."' limit 1 "; DB::query($sql); $ret_affected = DB::affected_rows(); if (!$ret_affected) { echo''."Error: nie udalo sie zapisac rekordu".'
'; } else { $form_saved = true; } // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = "USERS2_MARKETING_AKCJE_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } if ($form_saved) { echo''."Dane zapisano pomyslnie".'
'; return; } } else { foreach ($buildings as $k_street => $h) { if (empty($post[$k_street]) && $post[$k_street] !== '0') continue; if ($post[$k_street] == $h['ROZNIESIONO']) continue; $arr = array(); $arr['A_RECORD_UPDATE_DATE'] = date('Y-m-d-H:i'); $arr['A_RECORD_UPDATE_AUTHOR'] = $_SESSION['ADM_ACCOUNT']; $arr['ROZNIESIONO'] = $post[$k_street]; $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr []= "`".$k."`='".$v."'"; }//end foreach $sql = "update `".$thiss->DETECT_TABLE_NAME."` set ".implode(",", $sql_arr)." where `ID`='".$h['ID']."' limit 1 "; DB::query($sql); $ret_affected = DB::affected_rows(); $post_saved[$k_street] = $ret_affected; if (0) { // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = $thiss->DETECT_TABLE_NAME . "_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } } }//end foreach $all_ok = true; if (!empty($post_saved)) { foreach ($post_saved as $k_street => $val) { if (!$val) $all_ok = false; }//end foreach } if ($all_ok) { echo''."Dane zapisano pomyslnie".'
'; } } } if (date('Y-m-d') <= $record['W_DATA']) {// TODO: do akcji - wprowadz date dostarczenia raportu echo''."Raport dostarczono w terminie".'
'; } else { echo''."Raportu nie dostarczono w terminie!".'
'; } if (!empty($buildings)) { echo''; } } function USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_data($record_id, &$record) { global $thiss; echo''."Cofnij ".''."Error: nie udalo sie zapisac rekordu".'
'; } else { $form_saved = true; } // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = $thiss->DETECT_TABLE_NAME . "_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } if ($form_saved) { echo''."Dane zapisano pomyslnie".'
'; return; } } } echo''; } function USERS2_MARKETING_AKCJE_task_EDIT_zlecenie_kontroli($record_id, &$record) { global $thiss; { $thiss->DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_BUILDINGS_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE_BUILDINGS'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; } echo''; $buildings = USERS2_MARKETING_AKCJE::get_buildings($record_id, $record); $post_saved = array(); $post = array(); foreach ($buildings as $k_street => $h) { $post[$k_street] = V::get($k_street, $h['ROZNIESIONO'], $_POST); }//end foreach if (1 == V::get('print', '', $_POST)) { } if (!empty($buildings)) { echo '| '."ZLECENIE KONTROLI DYSTRYBUCJI (" . $record['ID'] . ")".' | ||||||||||||||
| '."lp".' | '; echo''."Data".' | '; echo''."Godzina".' | '; echo''."Ulica/Budynek".' | '; echo''."Klatka".' | '; echo''."Plakat klatka".' | '; echo''."Ulotka gumka klamka".' | '; echo''."Ulotka skrzynka".' | '; echo''."Materiał ostatnie pietro".' | '; echo''."Inne uwagi".' | '; echo'|||||
| '."JEST".' | '; echo''."BRAK".' | '; echo''."JEST".' | '; echo''."BRAK".' | '; echo''."JEST".' | '; echo''."BRAK".' | '; echo''."JEST".' | '; echo''."BRAK".' | '; for ($i = 1; $i <= 30; $i++) { echo '|||||||
| '.$i.' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo''.". . ".' | '; echo'|
| '."Imię i nazwisko sprawdzającego:".' | '; echo''.$record['K_USER'].' | '; echo''." Data procesu dystrybucji ".' | ';//Data i numer procesu dystrybucji echo''.$record['W_DATA'] . " (" . $record['ID'] . ")" . ' | '; echo'|||||||||||
| '."Obszar dla kontroli: "; echo str_replace(',', ', ', $record['FILTR_S_ADDRESS_STREET']); echo ' | '; echo''."Okres badania:".' | '; echo''."wyłącznie w dniu: ".$record['K_DATA']." , pomiędzy godzinami od ... do ...".' | ';
echo'||||||||||||
| '."Termin i miejsce dostarczenia raportu kontroli".' | '; echo''."raport należy dostarczyć w ........ do godziny ..... w miejsce:".' | '; echo'|||||||||||||
| '."Regulamin wypełnienia raportu: 1. Zleceniobiorca zobowiązuje się sprawdzić czy materiały reklamowe zostały rozmieszczone na wyznaczonym obszarze działania.";
echo' '."2.Wyniki kontroli rozmieszczenia materiałów reklamowych należy zapisywać w trakcie trwania kontroli w otrzymanym Raporcie kontroli ulotek. Musi on zawierać rzetelnie i czytelnie wypełnione pola."; echo' '."Sposób wypełnienia niniejszego raportu wygląda następująco: W kolumnie .Data. oraz .Godzina. należy wpisać każdorazowo datę oraz godzinę rozpoczęcia czynności na danym budynku, w kolumnie .Ulica budynek. wpisać stosownany skrót np. .CH7. to Całubińskiego 7 w kolumnie .klatka. wpisać A,B lub C(i tak dalej), w pozostałych kolumnach umiescić X w stosownym miejscu w zależności czy był materiał reklamowy, czy nie; w .Inne/Uwagi. wpisywać np. czy były problemy z wejściem do budynku, jeśli tak, to kto nie chciał wpuścicić."; echo' '."3. Zleceniobiorca zobowiązuje się przeprowadzić kontrolę w wyżej określonym przedziale czasu ."; echo' '."4. Raport kontroli ulotek należy dostarczyć zgodnie z zapisami w tabeli względnie czytelny skan na adres e-mail: marketing@biall.net.pl , z zaznaczeniem w temacie Daty i numeru procesu dystrybucji : $DATA_PROCESU_DYSTRYBUCJI / $NUMER_PROCESU_DYSTRYBUCJI ."; echo' '."5. Raporty kontroli ulotek winny być wypełnione wg schematu w raporcie (oznaczonego w pkt. x), czyli np. w polu .godzina/data. należy umieścić datę i godzinę rozpoczęcia kontroli rozmieszczenia materiałów na danym budynku. Niewypełnienie tych pól lub/i raportu jest równoznaczne z niewykonaniem zlecenia. Brane będą wyłącznie pod uwagę fragmenty raportu wypełnione w pełni, rzetelnie i czytelnie. Wszystkie inne pola (rzędy arkusza) wypełnione częściowo lub w ogóle, będą traktowane jakoby w danym adresie dystrybucja nie miała miejsca. Od momentu oddania raportu kontroli ulotek zakazane jest uzupełnianie raportu przez którąkolwiek ze stron. Wpisy w danym rzędzie w raporcie winny być wypełnione jednym i tym samym długopisem."; echo' '."6. Zlecenie realizowane jest tylko wyznaczonym obszarze (Obszar dla kontroli)."; echo' '."7. Nie wywiązanie się z wyżej wymienionych zadań równoznaczne jest z nie wykonaniem powierzonej pracy, co się wiąże brakiem wynagrodzenia a nawet pokryciem strat firmy wynikających z tego tytułu.".' | ';
echo'||||||||||||||
'."\n";
echo''."Cofnij ".'
';
}
function USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_kontroli_data($record_id, &$record) {
global $thiss;
echo''."Cofnij ".'
';
echo'
'."Error: nie udalo sie zapisac rekordu".'
'; } else { $form_saved = true; } // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = $thiss->DETECT_TABLE_NAME . "_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } if ($form_saved) { echo''."Dane zapisano pomyslnie".'
'; return; } } } echo''; } function USERS2_MARKETING_AKCJE_task_EDIT_wprowadz_zlecenie_kontroli($record_id, &$record) { global $thiss; // USERS2_MARKETING_AKCJE_BUILDINGS { $thiss->DETECT_TABLE_COLUMN = 'USERS2_MARKETING_AKCJE_BUILDINGS_COLUMN'; $thiss->DETECT_TABLE_NAME = 'USERS2_MARKETING_AKCJE_BUILDINGS'; $thiss->DETECT_HIST_FUNCTION = 'USERS2_MARKETING_AKCJE_HIST'; $thiss->DETECT_EDIT_FUNCTION = 'USERS2_MARKETING_AKCJE_EDIT'; } echo''."Cofnij ".''."Dotyczy akcji ".$record['ID']." z dnia ".$record['DATA'].'
'; $post_saved = array(); $post = array(); foreach ($buildings as $k_street => $h) { $post[$k_street] = V::get($k_street, $h['KONTROLA'], $_POST); $post['UWAGI_'.$k_street] = V::get('UWAGI_'.$k_street, $h['KONTROLA_UWAGI'], $_POST); }//end foreach if (1 == V::get('save', '', $_POST)) { if ("zakoncz" == V::get('sbmt', '', $_POST)) { $form_saved = false; $arr = array(); $arr['A_RECORD_UPDATE_DATE'] = date('Y-m-d-H:i'); $arr['A_RECORD_UPDATE_AUTHOR'] = $_SESSION['ADM_ACCOUNT']; $arr['K_DATA_WPROWADZONO'] = date('Y-m-d'); $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr []= "`".$k."`='".$v."'"; }//end foreach $sql = "update `USERS2_MARKETING_AKCJE` set ".implode(",", $sql_arr)." where `ID`='".$record_id."' limit 1 "; DB::query($sql); $ret_affected = DB::affected_rows(); if (!$ret_affected) { echo''."Error: nie udalo sie zapisac rekordu".'
'; } else { $form_saved = true; } // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = "USERS2_MARKETING_AKCJE_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } if ($form_saved) { echo''."Dane zapisano pomyslnie".'
'; return; } } else { foreach ($buildings as $k_street => $h) { if (!in_array($post[$k_street], array('TAK','NIE'))) continue; $arr = array(); $arr['A_RECORD_UPDATE_DATE'] = date('Y-m-d-H:i'); $arr['A_RECORD_UPDATE_AUTHOR'] = $_SESSION['ADM_ACCOUNT']; $arr['KONTROLA'] = $post[$k_street]; $arr['KONTROLA_UWAGI'] = $post['UWAGI_'.$k_street]; $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr []= "`".$k."`='".$v."'"; }//end foreach $sql = "update `".$thiss->DETECT_TABLE_NAME."` set ".implode(",", $sql_arr)." where `ID`='".$h['ID']."' limit 1 "; DB::query($sql); $ret_affected = DB::affected_rows(); $post_saved[$k_street] = $ret_affected; if (0) { // save HIST $sql_arr = array(); foreach ($arr as $k => $v) { $sql_arr["`".$k."`"] = "'".$v."'"; }//end foreach $sql_arr["`ID_USERS2`"] = "'".$record_id."'"; $hist_table = $thiss->DETECT_TABLE_NAME . "_HIST"; $sql = "insert into `".$hist_table."` (".implode(",", array_keys($sql_arr)).") values(".implode(",", $sql_arr)."); "; DB::query($sql); $ret_id = DB::insert_id(); if (!$ret_id) { echo''."Error: nie udalo sie zapisac danych do tabeli HIST".'
'; } } }//end foreach $all_ok = true; if (!empty($post_saved)) { foreach ($post_saved as $k_street => $val) { if (!$val) $all_ok = false; }//end foreach } if ($all_ok) { echo''."Dane zapisano pomyslnie".'
'; } } } if (!empty($buildings)) { echo''; } } function USERS2_MARKETING_AKCJE_list() { global $thiss, $GETZAPSQL,$SQL_USER,$USERS_FILTER_STATUS,$SQL_WIEV,$USERS_COLUMN,$USERS_COLUMN_DESC,$USERS_HIDECOLUMN; SEF("MENU"); MENU(); if (!$_SESSION[$thiss->DETECT_TABLE_COLUMN]['SQL_WIEV_CURR_SQL']) SQL_WIEV(); GETZAPSQL(); $zapSQL = "SELECT ".$GETZAPSQL['WHAT_SQL']." from ".$GETZAPSQL['FROM_SQL']." where ".$GETZAPSQL['WHERE']." ;"; if ($_SESSION['DEBUG']) { echo "zapSQL is $zapSQL| ";
CREATE_MENU_NOTD_INIT_3('FILTER_SEARCH','MENU_FIND','ENABLE',' | ";
foreach ($GETZAPSQL['ID'] as $value) {
if (true) {
echo "";
$ALT = $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC_TO_LANG'][ $GETZAPSQL['WHAT_DESC'][$value] ];
if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['SORTED'][ $GETZAPSQL['WHAT_DESC'][$value] ] == 'PRI') $border=1; else $border=0;
CREATE_MENU_NOTD_INIT_2('USERS_SORTER', 'USERS_SORTER', 'USERS_SORTER1', $GETZAPSQL['WHAT_DESC'][$value], ' " .str_replace('_',' ',$GETZAPSQL['WHAT_DESC'][$value]) . " | ";
//echo "
| '; echo ''; echo ' | '; foreach ($GETZAPSQL['ID'] as $value) { if (true) { echo ''; echo ''; GETFORMITEM($_SESSION[$thiss->DETECT_TABLE_COLUMN]['FIND'][$GETZAPSQL['WHAT_DESC'][$value]], $_SESSION[$thiss->DETECT_TABLE_COLUMN]['TYPE'][$GETZAPSQL['WHAT_DESC'][$value]], $GETZAPSQL['WHAT_DESC'][$value]); echo ''; echo ' | '; } //EOF if (!$thiss->DETECT_TABLE_COLUMN[HIDE][$value]==HIDE) } //EOF foreach ($thiss->DETECT_TABLE_COLUMN[ID] as $value) echo ''; echo '
| "; echo " | "; foreach ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['ID'] as $value) { if (!$_SESSION[$thiss->DETECT_TABLE_COLUMN]['HIDE'][$value] == 'HIDE') { echo "" ;
if ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['SORTED'][ $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value] ] == 'PRI') $border=1; else $border=0;
CREATE_MENU_NOTD_INIT_2('USERS_SORTER','USERS_SORTER','USERS_SORTER1',$_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value],' " . $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value] . " | ";
}
}
if( $num_rows == 0 ) {
echo "
| ";
foreach ($_SESSION[$thiss->DETECT_TABLE_COLUMN]['ID'] as $value) {
if ((!$_SESSION[$thiss->DETECT_TABLE_COLUMN]['HIDE'][$value]=='HIDE') && (!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value]=='ID')) && (!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value]=='ID_USERS2')) ) {
echo "DETECT_TABLE_COLUMN]['DESC'][$value],$h[$value],'color');
echo ">";
if((!( "$h[$value]" == 'N/S;')) && (!($_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value]=='P_SERVICE_QUOTA_PROFILE'))) {
echo $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'][$value] . "=" . "$h[$value]" . " "; } else { echo''; } } } echo " |
sql FILTR_ANEKSY: ';print_r($sql);echo''; $res = DB::query($sql); while ($r = DB::fetch($res)) { $r->SERVICES_S_ADDRESS_STREET = strtoupper($r->SERVICES_S_ADDRESS_STREET); $aneksy_arr [$r->SERVICES_S_ADDRESS_STREET] = $r->P_DEALDATE_TERM; } } $sql = "select b.`ID`, b.`M_REWIR`, b.`S_ADDRESS_STREET`, b.`P_ADDRESS_STREET` , ov.`ABO_I`, ov.`MIESZKAN` , $sql_ulotek as ile_ulotek , ( (100 * ".$sql_ulotek.") / ov.`MIESZKAN` ) as pr , $sql_ulotek_enable as ulotek_enable , 1 as data_enable from `BUILDINGS` as b left join `USERS2_MARKETING_OVERWIEV` as ov on(ov.`T_TELBOX_BUILDING_IN`=b.`S_ADDRESS_STREET`) where b.`A_STATUS` in ('NORMAL','WARNING') and b.`S_ADDRESS_STREET` in ('".implode("','", $buildings_street)."') group by b.`ID` order by b.`M_REWIR` "; echo''; $res = DB::query($sql); while ($r = DB::fetch($res)) { // $r->p_dealdate_term = null; // $r->S_ADDRESS_STREET = strtoupper($r->S_ADDRESS_STREET); // if ('TAK' == V::get('FILTR_ANEKSY', '', $record_data)) { // if (array_key_exists($r->S_ADDRESS_STREET, $aneksy_arr)) { // $r->p_dealdate_term = $aneksy_arr[$r->S_ADDRESS_STREET]; // } // } if ($filtr_data = V::get('FILTR_MIN_DATA_OSTATNIEJ_AKCJI', 0, $record_data)) { if (array_key_exists($r->S_ADDRESS_STREET, $old_actions)) { if ($old_actions[$r->S_ADDRESS_STREET] >= $filtr_data) { $r->data_enable = 0; $r->last_action_date = $old_actions[$r->S_ADDRESS_STREET]; } } } $buildings [$r->ID] = $r; } foreach ($buildings as $r) { if (!$r->ulotek_enable) continue; if (!$r->data_enable) continue; $buildings_rows []= $r->S_ADDRESS_STREET; } $buildings = $buildings_rows; }// filtr $sql = "select sum(".$sql_ulotek.") as cnt from `USERS2_MARKETING_OVERWIEV` as ov where ov.`T_TELBOX_BUILDING_IN` in('".implode("','", $buildings)."') "; $res = DB::query($sql); if ($r = DB::fetch($res)) { $ile_ulotek = $r->cnt; } } } if (empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD']['W_USER'])) { $validation_errors['W_USER'] []= "nie wybrano pracownika"; } if (empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD']['W_DATA'])) { $validation_errors['W_DATA'] []= "nie wybrano terminu wykonania zadania"; } if (!empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD']['K_USER'])) { if (empty($_SESSION[$thiss->DETECT_TABLE_COLUMN]['NEW_RECORD']['K_DATA'])) { $validation_errors['K_DATA'] []= "nie wybrano terminu wykonania kontroli"; } } echo''; } function USERS2_MARKETING_AKCJE_view_zlecenie_1_strona( $record_id, &$record, &$buildings, $worker_name ) { $DATA_ZLECENIA_KOLPORTAZU = $record['DATA']; $DATA_PROCESU_DYSTRYBUCJI = $record['W_DATA']; $NUMER_PROCESU_DYSTRYBUCJI = $record_id; $ZLECENIOBIORCA = $worker_name; $ILOSC_POWIERZONYCH_SZTUK_MATERIALOW = 1;// TODO: suma ulotek do rozniesienia $mieszkan = 0;// TODO: suma ulotek do rozniesienia {// get suma do rozniesienia foreach ($buildings as $building) { $mieszkan += $building['DO_ROZNIESIENIA']; }//end foreach // zaokroglenie w gore $ILOSC_POWIERZONYCH_SZTUK_MATERIALOW = ceil(($mieszkan + 1) / 100) * 100; } $streets = array(); {// get street names $sql_where_or_arr = array(); foreach ($buildings as $building) { $sql_where_or_arr []= "'" . $building['S_ADDRESS_STREET'] . "'"; }//end foreach $sql = "select `S_ADDRESS_STREET`, `P_ADDRESS_STREET` from `BUILDINGS` where `S_ADDRESS_STREET` in (".implode(",", $sql_where_or_arr).")"; $res = DB::query($sql); while ($r = DB::fetch($res)) { $streets [$r->P_ADDRESS_STREET] []= $r->S_ADDRESS_STREET; } } $JAKIE_POWIERZONO_MATERIALY_plakaty_ulotki_itp = 'ulotki'; $INNE_POWIERZONE_PRZEDMIOTY_np_nozyczki_tasma_itp = "................."; $MATERIALY_NALEZY_POJEDYNCZO_UMIESZCZAC_NA_np_klamka_drzwi_itp = "W skrzynce pocztowej"; $MATERIALY_NALEZY_ROZNIESC_W_DNIU = $record['W_DATA']; $MATERIALY_NALEZY_ROZNIESC_OD_GODZINY = "....."; $MATERIALY_NALEZY_ROZNIESC_TEGO_SAMEGO_DNIA_DO_GODZINY = "....."; $MIEJSCE_DOSTARCZENIA_RAPORTU = "biuro Chełm"; $TERMIN_DATA_DOSTARCZENIA_RAPORTU = ".........."; $GODZINA_DOSTARCZENIA_RAPORTU = "....."; $DODATKOWE_CZYNNOSCI_DO_ZROBIENIA_np_poskladac_ogumkowac_itp = ".........."; $LACZNA_WARTOSC_POWIERZONYCH_MAETRIALOW = ".....";// TODO: wartosc ulotek = koszt 1 ulotki z projektu * ilosc przekazanych ulotek $WARTOSC_ZLECENIA = "....."; $kara = (is_numeric($LACZNA_WARTOSC_POWIERZONYCH_MAETRIALOW) && is_numeric($WARTOSC_ZLECENIA))? ($LACZNA_WARTOSC_POWIERZONYCH_MAETRIALOW + $WARTOSC_ZLECENIA) * 2 : "....."; echo '
| ';
echo ' '."ZLECENIE KOLPORTAŻU z dnia ".$DATA_ZLECENIA_KOLPORTAZU.", do procesu dystrybucji nr ".$NUMER_PROCESU_DYSTRYBUCJI." z dnia ".$DATA_PROCESU_DYSTRYBUCJI.""; echo' '; echo "Zleceniodawca:".' '; echo "BIALL-NET sp. z o.o. 80-174 Gdańsk, Otomin ul. Słoneczna 43.".' '; echo "Zleceniobiorca:".' '; echo ''.$ZLECENIOBIORCA.' '; echo ''; echo "1) Zleceniobiorca zobowiązuje się rozprowadzić materiały reklamowe na obszarze (wg oznaczenia kodowego REWIRÓW i ULIC):"; echo ''; echo ' | ||||||||||||||||||
| ';
// TODO: add street names in ()
foreach ($streets as $k_street => $v_short_arr) {
echo " " . $k_street . ": " . implode(", ", $v_short_arr) . ' '; }//end foreach echo ' | ||||||||||||||||||
|
2) Zleceniodawca powierza $ILOSC_POWIERZONYCH_SZTUK_MATERIALOW sztuk $JAKIE_POWIERZONO_MATERIALY_plakaty_ulotki_itp oraz inne przedmioty ($INNE_POWIERZONE_PRZEDMIOTY_np_nozyczki_tasma_itp)*, wszystkie o łącznej wartości $LACZNA_WARTOSC_POWIERZONYCH_MAETRIALOW PLN. zł. 3) Powierzone materiały reklamowe, pod rygorem niewypłacenia wartości zlecenia Zleceniobiorcy lub/i dodatkowo powstania innych roszczeń Zleceniodawcy tytułem strat wobec Zleceniobiorcy, rozprowadzić należy na wyznaczonym terenie w dniu $MATERIALY_NALEZY_ROZNIESC_W_DNIU od godziny $MATERIALY_NALEZY_ROZNIESC_OD_GODZINY do godziny $MATERIALY_NALEZY_ROZNIESC_TEGO_SAMEGO_DNIA_DO_GODZINY 4) Powierzone materiały reklamowe należy umieszczać pojedynczo na $MATERIALY_NALEZY_POJEDYNCZO_UMIESZCZAC_NA_np_klamka_drzwi_itp 5) Niniejsze zlecenie z uzupelnionymi polami Raportu roznoszenia ulotek wraz z pozostałymi materiałami reklamowymi, należy dostarczyć do dnia: $TERMIN_DATA_DOSTARCZENIA_RAPORTU do godziny: $GODZINA_DOSTARCZENIA_RAPORTU w miejsce $MIEJSCE_DOSTARCZENIA_RAPORTU . 6) Dodatkowe czynności, które zobowiązuje się przeprowadzić Zleceniobiorca przed rozprowadzeniem materiałów reklamowych: $DODATKOWE_CZYNNOSCI_DO_ZROBIENIA_np_poskladac_ogumkowac_itp 7) Wartość zlecenia wynosi $WARTOSC_ZLECENIA złotych. 8) Materiały opisane w pkt. 2) winny trafić w 100% do ustalonych miejsc dystrybucji (wg pkt. 1) oraz pkt. 4)) . W przypadku jakichkolwiek odstępstw od powyższego zlecającemu zostanie potrącona wysokość wynagrodzenia do 20% wartości zlecenia opisanego w pkt.7). 9) W przypadku, kiedy materiały opisane wyżej, w ilości większej lub równej 10% sztuk określonych w pkt. 2), zostały umieszczone w innych miejscach niż określa 10) Raporty roznoszenia ulotek winny być wypełnione wg schematu w raporcie ( oznaczonego w pkt. 5), czyli np. w polu .godzina/data. należy umieścić datę i godzinę rozpoczęcia dystrybucji materiałów danym budynku. Niewypełnienie tych pól lub/i raportu jest równoznaczne ze niewykonaniem zlecenia. Brane będą wyłącznie pod uwagę fragmenty raportu wypełnione w pełni, rzetelnie i czytelnie. Wszystkie inne pola (rzędy arkusza) wypełnione częściowo lub w ogóle, będą traktowane jakoby w danym adresie dystrybucja nie miała miejsca. Od momentu oddania raportu dystrybucji zakazane jest uzupełnianie raportu przez którąkolwiek ze stron. Wpisy w danym rzędzie w raporcie winny być wypełnione jednym i tym samym długopisem. 11) Nie wywiązanie się z wyżej wymienionych zadań równoznaczne jest z nie wykonaniem powierzonej pracy, co się wiąże brakiem wynagrodzenia a nawet pokryciem strat firmy wynikających z tego tytułu. 12) Zlecenie realizowane jest na obszarze $mieszkan mieszkań, według danych z systemu BIALL-NET. Zakłąda się, że mogą być od tej liczby odstępstwa, które zostaną zweryfikowane na podstawie niniejszego zlecenia. "; ?>
| ||||||||||||||||||
| ' . "ID" . ' | '; echo '' . "ID_PROJECT" . ' | '; echo '' . "User" . ' | '; echo '' . "Rozniesiono" . ' | '; echo '
|---|---|---|---|
| ' . $r->ID . ' | '; echo '' . $r->ID_PROJECT . ' | '; echo '' . $r->W_USER . ' | '; echo '' . $r->sum_ROZNIESIONO . ' | '; echo '
| ' . "User" . ' | '; echo '' . "Rozniesiono" . ' | '; echo '
|---|---|
| '; $link = "index.php?MENU_INIT=USERS2_MARKETING_AKCJE&ARG1=PODSUMOWANIE_USER&ARG1_VAL="; $link .= "&f_DATA=" . $selected_data . "&f_USER=" . $k_user; echo '' . $k_user . ''; echo ' | '; echo '' . $v_rozniesiono . ' | '; echo '
thiss: ';print_r($thiss);echo''; $_SESSION[$thiss->DETECT_TABLE_COLUMN]['PERMEDIT']['A_ADM_COMPANY'] = ''; //echo'
SES[thiss]: ';print_r($_SESSION[$thiss->DETECT_TABLE_COLUMN]);echo''; } // validation if ($sort_dir) { $sort_dir = strtolower($sort_dir); if (!in_array($sort_dir, array('asc', 'desc'))) { $sort_dir = 'asc'; } } if ($sort_by) { $sort_by = strtoupper($sort_by); if (!in_array($sort_by, $_SESSION[$thiss->DETECT_TABLE_COLUMN]['DESC'])) { $sort_by = 'S_ADDRESS_STREET'; } } echo '
'."Do rozniesienia ".$suma_do_rozniesienia." - rozniesiono ".$suma_rozniesiono."."; echo ''." Skuteczność akcji: ".(($suma_rozniesiono > 0)? round((100 * $suma_rozniesiono/$suma_do_rozniesienia)) : 0)."%".''; echo '
'; echo'| ';
echo str_replace('_', ' ', $field_name);
$cur_order_dir = 'asc';
$cur_link = "index.php?MENU_INIT=USERS2_MARKETING_AKCJE&ARG1=PODSUMOWANIE_USER&ARG1_VAL=&f_DATA=" . $selected_data . "&f_USER=" . $selected_user . "&f_sort_by=" . $field_name;
if ($field_name == $sort_by) {
$cur_order_dir = strtolower($sort_dir);
if ($sort_dir == 'asc') {
$cur_link .= "&f_sort_dir=" . 'DESC';
}
}
echo '' . ' | ';
}
echo'
|---|
| '; echo $h[$field_name]; echo ' | '; } echo'
' . "Wrong Param record_id!" . '
'; return; } if (empty($record)) { echo '' . "Wrong Param record!" . '
'; return; } $allowed_task = array('delete', 'undelete'); if (!in_array($task, $allowed_task)) { echo '' . "Wrong Task!" . '
'; return; } $data_arr = array(); if ($task == 'delete') { if ($record['A_STATUS'] != 'DELETED') { $data_arr ['A_STATUS'] = 'DELETED'; } } else if ($task == 'undelete') { if ($record['A_STATUS'] == 'DELETED') { $data_arr ['A_STATUS'] = 'NORMAL'; } } if (empty($data_arr)) { $error_msg = "";// ?? echo '' . $error_msg . '
'; echo '' . "Wróć" . '';// TODO: back link return; } $sql_arr = array(); foreach ($data_arr as $k => $v) { $sql_arr []= "`" . $k . "`='" . $v . "'"; }//end foreach $sql_arr []= "`A_RECORD_UPDATE_AUTHOR`='" . $_SESSION['ADM_ACCOUNT'] . "'"; $sql_arr []= "`A_RECORD_UPDATE_DATE`='" . date('Y-m-d-H:i') . "'"; $sql = "update `USERS2_MARKETING_AKCJE` set " . implode(", ", $sql_arr) . " where `ID`='" . $record_id . "' limit 1 ; "; DB::query($sql); // add HIST $sql_arr = array(); foreach ($data_arr as $k => $v) { $sql_arr ["`" . $k . "`"] = "'" . $v . "'"; }//end foreach $sql_arr ["`A_RECORD_CREATE_AUTHOR`"] = "'" . $_SESSION['ADM_ACCOUNT'] . "'"; $sql_arr ["`A_RECORD_CREATE_DATE`"] = "'" . date('Y-m-d-H:i') . "'"; $sql_arr ["`ID_USERS2`"] = "'" . $record_id . "'"; $sql = "insert into `USERS2_MARKETING_AKCJE_HIST` (" . implode(", ", array_keys($sql_arr)) . ") values(" . implode(", ", array_values($sql_arr)) . ") ; "; DB::query($sql); $msg = ""; if ($task == 'delete') { $msg = "Rekord usunięto."; } else if ($task == 'undelete') { $msg = "Rekord przywrócono."; } echo '' . $msg . '
'; echo '' . "Wróć" . '';// TODO: back link }