Changes between Version 5 and Version 6 of AdvancedTopic


Ignore:
Timestamp:
06/12/26 01:57:55 (9 days ago)
Author:
231049
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedTopic

    v5 v6  
    1313=== fn_suggest_posts_for_worker(p_worker_id, p_limit default 10)
    1414
    15 Оваа функција служи за предлагање на соодветни постови за одреден работник врз основа на неговите специјалност и локација. Најпрво се проверува дали работникот има означено дека е достапен за работа од далечина (works_remote), по што се пребаруваат сите активни огласи. Во резултатите се вклучуваат само оние огласи за кои работникот поседува барем една потребна специјалност. Доколку работникот не работи од далечина, дополнително се применува филтер со функцијата ST_DWithin, кој ги ограничува резултатите на огласи што се наоѓаат во зададен радиус од неговата локација. За секој пронајден оглас се пресметува растојанието со функцијата ST_Distance, а резултатите се подредуваат според најблиските огласи. На крај, функцијата враќа ограничен број резултати, со што се добива листа на најрелевантни постови за конкретниот мајстор.
     15Оваа функција служи за предлагање на соодветни постови за одреден работник врз основа на неговите специјалности и локација. Најпрво се проверува дали работникот е означен како достапен за работа на далечина (works_remote). Потоа се враќаат само активни постови за кои работникот поседува барем една од потребните специјалности. Доколку работникот не работи на далечина, дополнително се применува просторен филтер со ST_DWithin, кој ги ограничува резултатите на постови во радиус од 1500 метри. За секој резултат се пресметува растојание со ST_Distance и резултатите се подредуваат според најблиските огласи. Оваа функција би се користела во делот каде ќе се прикажува и мапата (QGis) за да се прикажат постовите како картички.
    1616
     17=== fn_application_workers_for_post(p_post_id, p_limit)
    1718
    18 === fn_suggest_workers_for_post(p_post_id, p_limit default 10)
     19Оваа функција враќа листа на работници кои аплицирале за одреден пост. За секој работник се враќаат основни информации и растојанието од локацијата на постот. Дополнително се применува филтер за специјалности и радиус од 1500 метри доколку работникот не работи од далечина. Резултатите се подредуваат според најблиските работници до локацијата на постот. Оваа функција би се користела во делот каде ќе се прикажува и мапата (QGis) за да се прикажат мајсторите како картички.
    1920
     21=== fn_draw_worker_location(p_worker_id)
     22
     23Оваа функција ја враќа точната географска локација на одреден работник. Се користи за визуелизација на работникот на мапа, при што се враќа неговиот worker_id и координатите (geom) од табелата location. Се користи во QGis.
    2024
    2125=== fn_draw_active_posts_in_worker_region(p_worker_id, p_limit)
    2226
    23 
    24 === fn_draw_worker_location(p_worker_id)
    25 
     27Оваа функција ги прикажува сите активни постови во регионот на одреден работник. Се филтрираат само постови за кои работникот ги исполнува потребните специјалности. Доколку работникот не работи од далечина, се применува просторен филтер со радиус од 1500 метри. Се користи во QGis.
    2628
    2729=== fn_draw_worker_to_post_lines(p_worker_id, p_limit)
    2830
     31Оваа функција креира линии помеѓу работникот и постовите на кои одговара. Се користат само активни постови и се применува филтер за специјалности. Ако работникот не работи од далечина, се применува ограничување на растојание од 1500 метри. За секој пост се враќа линија (ST_MakeLine) и растојание помеѓу работникот и постот. Се користи во QGis.
    2932
    30 === fn_draw_worker_polygons(p_worker_id)
     33=== fn_draw_worker_notRemote_region(p_worker_id)
     34
     35Оваа функција ја прикажува работната зона на работникот кој не работи на далечина. Ако работникот не е remote, се креира кружна зона околу неговата локација со радиус од 1500 метри користејќи ST_Buffer. Ако работникот е remote, функцијата не враќа резултат. Се користи во QGis.
    3136
    3237
    3338=== fn_draw_post_location(p_post_id)
    3439
     40Оваа функција ја враќа точната локација на одреден пост. Се користи за визуелизација на мапа и враќа post_id, наслов и геометрија на постот. Се користи во QGis.
     41
    3542
    3643=== fn_draw_workers_applied_to_post(p_post_id, p_limit)
    3744
     45Оваа функција ги прикажува сите работници кои аплицирале за одреден пост. За секој работник се враќа неговата локација и растојанието до постот. Резултатите се подредуваат според најблиските работници. Се користи во QGis.
    3846
    3947=== fn_draw_post_to_applicant_lines(p_post_id, p_limit)
    4048
     49Оваа функција креира линии помеѓу постот и сите работници кои аплицирале за него. Се користи за визуелизација на поврзаноста помеѓу огласите и кандидатите. За секоја врска се враќа линија и растојание помеѓу постот и работникот. Се користи во QGis.
     50
     51
     52== Пример
     53
     54На следната слика е прикажана мапа по извршување на функциите fn_draw_worker_location, fn_draw_active_posts_in_worker_region, fn_draw_worker_to_post_lines и fn_draw_worker_notRemote_region за работник кој не работи на далечина.
     55
     56[[Image()]]
    4157
    4258