Changeset 468

Show
Ignore:
Timestamp:
01/23/07 14:14:27 (2 years ago)
Author:
timo
Message:

Renamed all files containing the word "work_order" to use the word "task" instead. Their contents were also updated.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/workorder_report_rename/app/controllers/task_controller.rb

    r464 r468  
    55require "odt_to_xhtml" 
    66 
    7 # Class: WorkOrderController 
     7# Class: TaskController 
    88# =============================== 
    99# 
     
    1212# <ApplicationController> 
    1313# 
    14 class WorkOrderController < ApplicationController 
     14class TaskController < ApplicationController 
    1515  prepend_before_filter :login_required 
    1616 
     
    1818 
    1919  def edit_protector 
    20     remove_work_order_lock 
    21     user_left_page_group(:work_order_edit) 
     20    remove_task_lock 
     21    user_left_page_group(:task_edit) 
    2222    redirect_to(params[:destination]) 
    2323  end 
     
    3232    @fields = [  
    3333                [_('ID'), :self], 
    34                 [_('Type'), :work_order_type_name], 
     34                [_('Type'), :task_type_name], 
    3535                [_('State'), {:name => :state}.merge(@state_to_text)], 
    3636                [_('Description'), :short_description], 
     
    5252    conditions = @selected_assets_condition 
    5353 
    54     @items = items_for_page(WorkOrder, :finder_method => :find_authorized_to_read, :conditions => conditions, :readonly => true) 
     54    @items = items_for_page(Task, :finder_method => :find_authorized_to_read, :conditions => conditions, :readonly => true) 
    5555    render(:partial => 'shared/list_items', :layout => 'mainlevel') 
    5656  end 
     
    5959    # Find objects 
    6060    begin 
    61       @work_order = WorkOrder.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
     61      @task = Task.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
    6262    rescue ActiveRecord::RecordNotFound 
    6363      if params[:cmms_link] 
    6464        redirect_with_error_message(msg_invalid_link_in_markup("{#{params[:id]}}"), :back) 
    6565      else 
    66         redirect_with_error_message(msg_non_existing_data(WorkOrder, params[:id]), :action => 'list') 
    67       end 
    68       return 
    69     end 
    70  
    71     unless @work_order.authorized_to_read? 
    72       redirect_with_error_message(msg_unauthorized_operation(_('read'), "{#{@work_order.id}}"), :action => 'list') 
    73       return 
    74     end 
    75     @users = @work_order.asset.users(@work_order.responsible_user_id) 
    76  
    77     @wo_title = _('Work order %s (%s)', @work_order.to_s, @work_order.work_order_type.name) 
     66        redirect_with_error_message(msg_non_existing_data(Task, params[:id]), :action => 'list') 
     67      end 
     68      return 
     69    end 
     70 
     71    unless @task.authorized_to_read? 
     72      redirect_with_error_message(msg_unauthorized_operation(_('read'), "{#{@task.id}}"), :action => 'list') 
     73      return 
     74    end 
     75    @users = @task.asset.users(@task.responsible_user_id) 
     76 
     77    @wo_title = _('Work order %s (%s)', @task.to_s, @task.task_type.name) 
    7878    define_priority_options 
    7979 
    8080    if request.post? 
    81       old_worker_ids = @work_order.workers.collect {|i| i.id} 
    82       new_worker_ids = (params[:work_order_workers] || []).collect { |i| i.to_i } 
    83       @work_order.worker_ids = new_worker_ids 
     81      old_worker_ids = @task.workers.collect {|i| i.id} 
     82      new_worker_ids = (params[:task_workers] || []).collect { |i| i.to_i } 
     83      @task.worker_ids = new_worker_ids 
    8484      added_worker_ids = new_worker_ids - old_worker_ids 
    8585      removed_worker_ids = old_worker_ids - new_worker_ids 
     
    9494        Message.create(:receiver_user_id => worker_id, 
    9595                    :subject => 'You have been removed from the list of workers in this work order', 
    96                     :body => "{#{@work_order.id}}") 
     96                    :body => "{#{@task.id}}") 
    9797      end 
    9898 
     
    101101        Message.create(:receiver_user_id => worker_id, 
    102102                    :subject => 'You have been added to the list of workers in this work order', 
    103                     :body => "{#{@work_order.id}}") 
    104       end 
    105  
    106       @work_order.add_comment(params[:work_order_comment]) if params[:work_order_comment] 
    107  
    108       case params[:work_order_action] 
     103                    :body => "{#{@task.id}}") 
     104      end 
     105 
     106      @task.add_comment(params[:task_comment]) if params[:task_comment] 
     107 
     108      case params[:task_action] 
    109109      when 'leave' 
    110110        # Do nothing 
    111111      when 'accept' 
    112         @work_order.accept 
     112        @task.accept 
    113113        flash[:notice] = _('Work order accepted') 
    114114      when 'close' 
    115         @work_order.close 
     115        @task.close 
    116116        flash[:notice] = _('Work order closed') 
    117117      when 'assign' 
    118         @work_order.assign_to(User.find(params[:responsible_user_id])) 
     118        @task.assign_to(User.find(params[:responsible_user_id])) 
    119119        flash[:notice] = _('Work order assigned') 
    120120      when 'reopen': 
    121         @work_order.open 
     121        @task.open 
    122122        flash[:notice] = _('Work order reopened') 
    123123      else 
     
    126126      end 
    127127 
    128       @work_order.working_time = params[:work_order][:working_time] if params[:work_order] and params[:work_order][:working_time] 
    129       @work_order.valid? 
    130  
    131       return unless @work_order.valid? 
    132  
    133       if @work_order.save(true) 
     128      @task.working_time = params[:task][:working_time] if params[:task] and params[:task][:working_time] 
     129      @task.valid? 
     130 
     131      return unless @task.valid? 
     132 
     133      if @task.save(true) 
    134134        flash[:notice] = msg_changes_saved 
    135135      else 
    136136        flash[:notice] = nil 
    137137        flash[:error] = msg_saving_failed 
    138         @work_order.reload 
    139       end 
    140     end 
    141     @events = @work_order.work_order_events 
     138        @task.reload 
     139      end 
     140    end 
     141    @events = @task.task_events 
    142142  end 
    143143 
    144144  def edit 
    145145    # Find objects 
    146     @work_order = WorkOrder.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
    147     unless @work_order.authorized_to_edit? 
    148       redirect_with_error_message(msg_unauthorized_operation(_('edit'), @work_order.to_s), 
    149                                   :action => 'view', :id => @work_order.id) 
     146    @task = Task.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
     147    unless @task.authorized_to_edit? 
     148      redirect_with_error_message(msg_unauthorized_operation(_('edit'), @task.to_s), 
     149                                  :action => 'view', :id => @task.id) 
    150150      return 
    151151    end 
    152152    define_priority_options 
    153     @events = @work_order.work_order_events 
     153    @events = @task.task_events 
    154154    @users = User.find :all # Data permissions will change 
    155155 
    156     @title = _('Editing work order #%i (%s)', @work_order.id, @work_order.work_order_type.name) 
     156    @title = _('Editing work order #%i (%s)', @task.id, @task.task_type.name) 
    157157 
    158158    if request.post? 
    159       params[:work_order][:long_description] = translate_urls_to_markup_links(params[:work_order][:long_description]) if params[:work_order] and params[:work_order][:long_description] 
    160       @work_order.attributes = params[:work_order
    161       @work_order.starting_time = nil if not params[:starting_time_enabled] 
    162       @work_order.deadline = nil if not params[:deadline_enabled] 
    163  
    164       if @work_order.save 
     159      params[:task][:long_description] = translate_urls_to_markup_links(params[:task][:long_description]) if params[:task] and params[:task][:long_description] 
     160      @task.attributes = params[:task
     161      @task.starting_time = nil if not params[:starting_time_enabled] 
     162      @task.deadline = nil if not params[:deadline_enabled] 
     163 
     164      if @task.save 
    165165        flash[:notice] = msg_changes_saved 
    166         redirect_to(:action => 'view', :id => @work_order.id) 
    167         user_left_page_group(:work_order_edit) 
     166        redirect_to(:action => 'view', :id => @task.id) 
     167        user_left_page_group(:task_edit) 
    168168        return 
    169169      end 
    170       flash[:error] = msg_saving_failed if @work_order.errors.empty? 
     170      flash[:error] = msg_saving_failed if @task.errors.empty? 
    171171    else 
    172       unless @work_order.lock_for_current_user(LOCK_DURATION) 
    173         flash[:error] = msg_resource_locked(@work_order
    174         return redirect_to(:action => 'view', :id => @work_order.id) 
    175       end 
    176  
    177       unless @work_order.save 
    178         flash[:error] = msg_locking_failed_for(@work_order
    179         return redirect_to(:action => 'view', :id => @work_order.id) 
    180       end 
    181  
    182       user_entered_page_group(:work_order_edit) 
     172      unless @task.lock_for_current_user(LOCK_DURATION) 
     173        flash[:error] = msg_resource_locked(@task
     174        return redirect_to(:action => 'view', :id => @task.id) 
     175      end 
     176 
     177      unless @task.save 
     178        flash[:error] = msg_locking_failed_for(@task
     179        return redirect_to(:action => 'view', :id => @task.id) 
     180      end 
     181 
     182      user_entered_page_group(:task_edit) 
    183183    end 
    184184  end 
    185185 
    186186  def create 
    187     unless @selected_asset.authorized_to_create_work_order
     187    unless @selected_asset.authorized_to_create_task
    188188      redirect_with_error_message(msg_unauthorized_operation(_('create work order'), @selected_asset.code_and_name), :action => 'list') 
    189189      return 
     
    195195    @hide_subaction_links = true 
    196196    @cause_form_id = params[:cause_form_id] if params[:cause_form_id] 
    197     @work_order_types = params[:tag_id].nil? ? WorkOrderType.find(:all, :order => 'name') : WorkOrderTag.find(params[:tag_id]).work_order_types 
    198  
    199     if @work_order_types.empty? 
     197    @task_types = params[:tag_id].nil? ? TaskType.find(:all, :order => 'name') : TaskTag.find(params[:tag_id]).task_types 
     198 
     199    if @task_types.empty? 
    200200      redirect_with_message(_('No work order types defined.'), :action=>'list') 
    201201      return 
     
    203203 
    204204    if request.post? 
    205       unless params[:work_order
     205      unless params[:task
    206206        redirect_to :action => 'list' 
    207207        return 
    208208      end 
    209209 
    210       params[:work_order][:long_description] = translate_urls_to_markup_links(params[:work_order][:long_description]) if params[:work_order][:long_description] 
    211       @work_order = WorkOrder.new params[:work_order
    212       @work_order.asset = @selected_asset 
    213       @work_order.cause_form_id = @cause_form_id if @cause_form_id 
    214       @work_order.starting_time = nil unless params[:starting_time_enabled] 
    215       @work_order.deadline = nil unless params[:deadline_enabled] 
    216  
    217       @work_order.ready = true 
    218       if @work_order.save(true) 
     210      params[:task][:long_description] = translate_urls_to_markup_links(params[:task][:long_description]) if params[:task][:long_description] 
     211      @task = Task.new params[:task
     212      @task.asset = @selected_asset 
     213      @task.cause_form_id = @cause_form_id if @cause_form_id 
     214      @task.starting_time = nil unless params[:starting_time_enabled] 
     215      @task.deadline = nil unless params[:deadline_enabled] 
     216 
     217      @task.ready = true 
     218      if @task.save(true) 
    219219        flash[:notice] = _('New work order created') 
    220220        info('New work order created') 
    221         redirect_to :action => 'view', :id => @work_order.id 
     221        redirect_to :action => 'view', :id => @task.id 
    222222      else 
    223223        render :action => 'create' 
    224224      end 
    225225    else 
    226       @work_order = WorkOrder.new 
     226      @task = Task.new 
    227227    end 
    228228  end 
     
    230230  def move 
    231231    begin 
    232       @work_order = WorkOrder.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
     232      @task = Task.find(params[:id], :include => [:data_permissions, :asset, :creator, :responsible_user]) 
    233233    rescue ActiveRecord::RecordNotFound 
    234         redirect_with_error_message(msg_non_existing_data(WorkOrder, params[:id]), :action => 'list') 
     234        redirect_with_error_message(msg_non_existing_data(Task, params[:id]), :action => 'list') 
    235235    end 
    236236     
    237     unless @work_order.authorized_to_edit? 
    238       redirect_with_error_message(msg_unauthorized_operation(_('edit'), "{#{@work_order.id}}"), :action => 'list') 
     237    unless @task.authorized_to_edit? 
     238      redirect_with_error_message(msg_unauthorized_operation(_('edit'), "{#{@task.id}}"), :action => 'list') 
    239239      return 
    240240    end 
    241241     
    242242    @replace_actions = [] 
    243     @title = _('Move the work order {%i} to a another asset', @work_order.id) 
    244     asset_options = (Asset.find_authorized_to(:create_work_order, [:all]) - [@work_order.asset]).collect { |a| 
     243    @title = _('Move the work order {%i} to a another asset', @task.id) 
     244    asset_options = (Asset.find_authorized_to(:create_task, [:all]) - [@task.asset]).collect { |a| 
    245245      [a.full_code, a.id] 
    246246    } 
    247     @fields = [ [_('Asset'), 'work_order', 'asset_id', asset_options ] ] 
    248     @hidden_fields = [ ['id', @work_order.id] ] 
     247    @fields = [ [_('Asset'), 'task', 'asset_id', asset_options ] ] 
     248    @hidden_fields = [ ['id', @task.id] ] 
    249249 
    250250    if request.post? 
    251       new_asset = Asset.find_authorized_to(:create_work_order, [params[:work_order][:asset_id]]) 
    252       if @work_order.move(new_asset.id) 
    253         flash[:notice] = _('The work order {%i} moved to the asset %s', @work_order.id, new_asset.full_code) 
     251      new_asset = Asset.find_authorized_to(:create_task, [params[:task][:asset_id]]) 
     252      if @task.move(new_asset.id) 
     253        flash[:notice] = _('The work order {%i} moved to the asset %s', @task.id, new_asset.full_code) 
    254254        redirect_to(:action => 'list') 
    255255        return 
    256256      end 
    257257 
    258       flash[:error] = _('Unable to move the work order {%i} to the asset %s', @work_order.id, new_asset.full_code) 
     258      flash[:error] = _('Unable to move the work order {%i} to the asset %s', @task.id, new_asset.full_code) 
    259259    end 
    260260 
     
    263263 
    264264  def remove 
    265     common_remove(WorkOrder, 'short_description', :action => 'list' ) { |instance| 
     265    common_remove(Task, 'short_description', :action => 'list' ) { |instance| 
    266266      unless instance.authorized_to_remove? 
    267267        msg_unauthorized_operation(_('remove'), "{#{instance.id}}") 
     
    271271 
    272272  def download 
    273     work_order = WorkOrder.find params[:id] 
    274     unless work_order.authorized_to_read? 
     273    task = Task.find params[:id] 
     274    unless task.authorized_to_read? 
    275275      redirect_with_error_message(msg_unauthorized_operation(_('download'), "{#{instance.id}}"), :action => 'list') 
    276276      return 
    277277    end 
    278     work_order_template = WorkOrderTemplate.find(:first) 
     278    task_template = TaskTemplate.find(:first) 
    279279 
    280280    # Check that we have a template 
    281     unless work_order_template 
     281    unless task_template 
    282282      flash[:error] = _('Template for work orders not found') 
    283283      redirect_to :back 
     
    286286 
    287287    # Get associated forms 
    288     form_ids = work_order.associated_form_ids 
     288    form_ids = task.associated_form_ids 
    289289    if form_ids 
    290290      forms = Form.find(form_ids, :readonly => true) 
     
    292292 
    293293    # Generate document for the work order 
    294     document = work_order_template.create_filled_version(work_order
     294    document = task_template.create_filled_version(task
    295295 
    296296    # Send the document if there are no associated forms 
    297297    if form_ids.empty? 
    298       send_data(document.data, :filename => "work_order_#{work_order.id}.odt", :disposition => 'inline') 
     298      send_data(document.data, :filename => "task_#{task.id}.odt", :disposition => 'inline') 
    299299      return 
    300300    end 
     
    312312    zout = Zip::ZipOutputStream.new(output) 
    313313 
    314     dir_name = "work_order_#{work_order.id}/" 
     314    dir_name = "task_#{task.id}/" 
    315315 
    316316    # Write work order 
    317     zout.put_next_entry(dir_name + "work_order_#{work_order.id}.odt") 
     317    zout.put_next_entry(dir_name + "task_#{task.id}.odt") 
    318318    zout.write(document.data) 
    319319 
     
    328328 
    329329    # Send the whole thing 
    330     send_data(output.string, :filename => "work_order_#{work_order.id}.zip", :disposition => 'inline') 
     330    send_data(output.string, :filename => "task_#{task.id}.zip", :disposition => 'inline') 
    331331  end 
    332332 
    333333protected 
    334334 
    335   def remove_work_order_lock 
     335  def remove_task_lock 
    336336    return unless session[:page_group_resource_id] 
    337337 
    338     work_order = WorkOrder.find(session[:page_group_resource_id]) 
    339     if work_order.remove_lock and work_order.save 
    340       info 'Removed lock for work_order %d' % params[:id] 
     338    task = Task.find(session[:page_group_resource_id]) 
     339    if task.remove_lock and task.save 
     340      info 'Removed lock for task %d' % params[:id] 
    341341    else 
    342       error 'Failed to remove lock for work_order %d' % params[:id] 
     342      error 'Failed to remove lock for task %d' % params[:id] 
    343343    end 
    344344  end 
  • branches/workorder_report_rename/app/controllers/task_type_controller.rb

    r464 r468  
    22# See license agreement for additional rights 
    33 
    4 # Class: WorkOrderTypeController 
     4# Class: TaskTypeController 
    55# =================================== 
    66# 
     
    99# <ApplicationController>  
    1010# 
    11 class WorkOrderTypeController < ApplicationController 
     11class TaskTypeController < ApplicationController 
    1212  prepend_before_filter :login_required 
    1313  layout 'mainlevel' 
     
    1515  # Fields for create and edit actions 
    1616 
    17   # Displays the work_order type listing 
     17  # Displays the task type listing 
    1818  def list 
    1919    @title = _('Work order types') 
    2020    @fields = [ [_('Name'), :name], 
    21                 [_('Tag'), :work_order_tag], 
     21                [_('Tag'), :task_tag], 
    2222                [_('Description'), :description], 
    23                 [_('Work order count'), :work_order_count] 
     23                [_('Work order count'), :task_count] 
    2424              ] 
    25     @items = items_for_page(WorkOrderType, :order => 'work_order_tag_id, name') 
     25    @items = items_for_page(TaskType, :order => 'task_tag_id, name') 
    2626    render(:partial => 'shared/list_items', :layout => 'mainlevel') 
    2727  end 
     
    3131    @fields = [ 
    3232                [_('Name'), :text_field, 'name', { :size => 40, :maxlength => 40 } ], 
    33                 [_('Tag'), :select, 'work_order_tag_id', WorkOrderTag.find(:all, :order => 'name').map {|tag| [tag.full_name, tag.id] }, { :include_blank => true } ], 
     33                [_('Tag'), :select, 'task_tag_id', TaskTag.find(:all, :order => 'name').map {|tag| [tag.full_name, tag.id] }, { :include_blank => true } ], 
    3434                [_('Description'), :text_field, 'description', { :size => 40, :maxlength => 80 } ] 
    3535              ] 
    36     common_create(WorkOrderType, 'name', {:action => 'list'}, {:action => 'list'}) 
     36    common_create(TaskType, 'name', {:action => 'list'}, {:action => 'list'}) 
    3737  end 
    3838 
    39   # Removes selected work_order types 
     39  # Removes selected task types 
    4040  def remove 
    41     common_remove(WorkOrderType, 'name', :action => 'list') { |instance| 
    42       unless instance.work_orders.empty? 
     41    common_remove(TaskType, 'name', :action => 'list') { |instance| 
     42      unless instance.tasks.empty? 
    4343        msg_could_not_remove_because_not_empty(instance) 
    4444      end 
     
    5050    @fields = [ 
    5151                [_('Name'), :text_field, 'name', { :size => 40, :maxlength => 40 } ], 
    52                 [_('Tag'), :select, 'work_order_tag_id', WorkOrderTag.find(:all, :order => 'name').map {|tag| [tag.full_name, tag.id] }, { :include_blank => true } ], 
     52                [_('Tag'), :select, 'task_tag_id', TaskTag.find(:all, :order => 'name').map {|tag| [tag.full_name, tag.id] }, { :include_blank => true } ], 
    5353                [_('Description'), :text_field, 'description', { :size => 40, :maxlength => 80 } ] 
    5454              ] 
    55     common_edit(WorkOrderType, 'name', {:action => 'list'}, {:action => 'list'}) 
     55    common_edit(TaskType, 'name', {:action => 'list'}, {:action => 'list'}) 
    5656  end 
    5757 
    5858  def view_template 
    59     @work_order_template = WorkOrderTemplate.find(:first) 
    60     if @work_order_template 
    61       image_base_url = url_for(:controller => 'form', :action => 'get_image', :id => @work_order_template.id) + '?filename=' 
    62       @template_style, @template_body = @work_order_template.convert_to_html(image_base_url) if @work_order_template 
     59    @task_template = TaskTemplate.find(:first) 
     60    if @task_template 
     61      image_base_url = url_for(:controller => 'form', :action => 'get_image', :id => @task_template.id) + '?filename=' 
     62      @template_style, @template_body = @task_template.convert_to_html(image_base_url) if @task_template 
    6363    end 
    6464  end 
     
    6666  def upload_template 
    6767    if request.post? 
    68       @work_order_template = WorkOrderTemplate.find(:first) || WorkOrderTemplate.new 
    69       @work_order_template.attributes = params[:work_order_template] 
    70       redirect_to :action => 'view_template' and return if @work_order_template.save 
     68      @task_template = TaskTemplate.find(:first) || TaskTemplate.new 
     69      @task_template.attributes = params[:task_template] 
     70      redirect_to :action => 'view_template' and return if @task_template.save 
    7171    else 
    72       @work_order_template = WorkOrderTemplate.new 
     72      @task_template = TaskTemplate.new 
    7373    end 
    7474  end 
    7575 
    7676  def download_template 
    77     template = WorkOrderTemplate.find(:first) 
     77    template = TaskTemplate.find(:first) 
    7878 
    7979    unless template 
     
    8383    end 
    8484 
    85     send_data(template.data, :filename => 'work_order.odt', :disposition => 'inline') 
     85    send_data(template.data, :filename => 'task.odt', :disposition => 'inline') 
    8686  end 
    8787end 
  • branches/workorder_report_rename/app/helpers/task_helper.rb

    r2 r468  
    22# See license agreement for additional rights 
    33 
    4 module WorkOrderHelper 
     4module TaskHelper 
    55end 
  • branches/workorder_report_rename/app/helpers/task_type_helper.rb

    r2 r468  
    22# See license agreement for additional rights 
    33 
    4 module WorkOrderTypeHelper 
     4module TaskTypeHelper 
    55end 
  • branches/workorder_report_rename/app/models/task.rb

    r464 r468  
    22# See license agreement for additional rights 
    33 
    4 class WorkOrder < ProtectedAssetData 
     4class Task < ProtectedAssetData 
    55  # Protection 
    66  attr_protected :id, :asset_id, :responsible_user_id, :created_by, :created_at, :ready, :cause_form_id 
     
    1111  after_find :save_original_state 
    1212  # Associations 
    13   belongs_to :work_order_type 
     13  belongs_to :task_type 
    1414  belongs_to :responsible_user, :class_name => 'User', :foreign_key => 'responsible_user_id' 
    1515  belongs_to :cause_form, :class_name => 'Form', :foreign_key => 'cause_form_id' # form which caused this work order 
    16   has_one :effect_form, :class_name => 'Form', :foreign_key => 'cause_work_order_id' # form which was caused by this work order 
    17   has_many :work_order_events, :dependent => :delete_all 
    18   has_many :data_permissions, :dependent => :delete_all, :class_name => 'WorkOrderPermission' 
     16  has_one :effect_form, :class_name => 'Form', :foreign_key => 'cause_task_id' # form which was caused by this work order 
     17  has_many :task_events, :dependent => :delete_all 
     18  has_many :data_permissions, :dependent => :delete_all, :class_name => 'TaskPermission' 
    1919  has_and_belongs_to_many :workers, :class_name => 'User' 
    2020#  has_many :user_groups, :through => :data_permissions 
    2121 
    2222  exports_automatic_fields_from :asset 
    23   exports_automatic_fields_from :work_order_type 
     23  exports_automatic_fields_from :task_type 
    2424  exports_automatic_fields_from :creator 
    25   exports_automatic_field 'cmms_work_order_id', :integer, :id 
     25  exports_automatic_field 'cmms_task_id', :integer, :id 
    2626  exports_automatic_field 'cmms_work_short_description', :string, :short_description 
    2727  exports_automatic_field 'cmms_work_long_description', :string, :long_description 
    28   exports_automatic_field 'cmms_work_order_creation_date', :datetime, :created_at 
    29   exports_automatic_field 'cmms_work_order_deadline', :datetime, :deadline 
    30   exports_automatic_field 'cmms_work_order_starting_time', :datetime, :starting_time 
    31   exports_automatic_field 'cmms_work_order_estimated_working_time', :float, :estimated_working_time 
    32   exports_automatic_field 'cmms_work_order_working_time', :float, :working_time 
    33   exports_automatic_field 'cmms_work_order_priority', :integer, :priority 
    34   exports_automatic_field 'cmms_work_order_comments', :string, :comments_as_string 
     28  exports_automatic_field 'cmms_task_creation_date', :datetime, :created_at 
     29  exports_automatic_field 'cmms_task_deadline', :datetime, :deadline 
     30  exports_automatic_field 'cmms_task_starting_time', :datetime, :starting_time 
     31  exports_automatic_field 'cmms_task_estimated_working_time', :float, :estimated_working_time 
     32  exports_automatic_field 'cmms_task_working_time', :float, :working_time 
     33  exports_automatic_field 'cmms_task_priority', :integer, :priority 
     34  exports_automatic_field 'cmms_task_comments', :string, :comments_as_string 
    3535 
    3636 
     
    4949  end 
    5050 
    51   # Possible work_order states 
     51  # Possible task states 
    5252  @@NEW = 0 
    5353  @@ASSIGNED = 1 
     
    5959  cattr_reader :CLOSED 
    6060 
    61   def work_order_type_name 
    62     return nil unless self.work_order_type 
    63     return self.work_order_type.name 
     61  def task_type_name 
     62    return nil unless self.task_type 
     63    return self.task_type.name 
    6464  end 
    6565 
    6666  # Calculates the average times from the open state to the assigned, accepted and closed states. 
    6767  # FIXME: Doesn't calculate times from reopen to assigned, accepted and closed states. 
    68   def WorkOrder.average_times_from_open_state(conditions) 
    69     return [WorkOrderEvent.TYPES[:ASSIGNED], WorkOrderEvent.TYPES[:ACCEPTED], WorkOrderEvent.TYPES[:CLOSED] ].collect { |event_type| 
    70       wos = WorkOrder.find_authorized_to_read(:all, conditions) 
     68  def Task.average_times_from_open_state(conditions) 
     69    return [TaskEvent.TYPES[:ASSIGNED], TaskEvent.TYPES[:ACCEPTED], TaskEvent.TYPES[:CLOSED] ].collect { |event_type| 
     70      wos = Task.find_authorized_to_read(:all, conditions) 
    7171 
    7272      times = wos.collect { |wo| 
    73         puts wo.work_order_events.find(:all).select {|e| e.event_type == event_type }.first 
    74         state = wo.work_order_events.find(:first, :conditions => ['event_type = ?', event_type]) 
     73        puts wo.task_events.find(:all).select {|e| e.event_type == event_type }.first 
     74        state = wo.task_events.find(:first, :conditions => ['event_type = ?', event_type]) 
    7575        if state 
    7676          state.created_at - wo.created_at 
     
    9090  end 
    9191 
    92   def WorkOrder.calculate_resource_usage(conditions, time_span, time_delta) 
     92  def Task.calculate_resource_usage(conditions, time_span, time_delta) 
    9393    conditions[0] = conditions[0] + " AND state in (?) AND (starting_time IS NOT NULL OR deadline IS NOT NULL) AND estimated_working_time != 0.0 " 
    94     conditions.push([WorkOrder.NEW, WorkOrder.ASSIGNED, WorkOrder.ACCEPTED]) 
    95     wos = WorkOrder.find_authorized_to_read(:all, :conditions => conditions) 
     94    conditions.push([Task.NEW, Task.ASSIGNED, Task.ACCEPTED]) 
     95    wos = Task.find_authorized_to_read(:all, :conditions => conditions) 
    9696 
    9797    # Generate a list of resource usage changes. Each entry is a [time, change] pair. 
     
    161161 
    162162  # Arguments: 
    163   #   +create_state_change_event+:: If +true+, a new WorkOrderEvent (representing the 
     163  #   +create_state_change_event+:: If +true+, a new TaskEvent (representing the 
    164164  #                                 change to the object's current state) is created. 
    165165  def save(create_state_change_event = false) 
     
    167167 
    168168    if new_record? 
    169       work_order_events << WorkOrderEvent.new(:event_type => WorkOrderEvent.TYPES[:CREATED], 
     169      task_events << TaskEvent.new(:event_type => TaskEvent.TYPES[:CREATED], 
    170170                                              :comment_text => self.short_description) 
    171171      return super() 
     
    176176    case new_state 
    177177      when @@ACCEPTED 
    178         @event = WorkOrderEvent.create(:event_type => WorkOrderEvent.TYPES[:ACCEPTED], 
    179                                     :work_order_id => self.id, 
     178        @event = TaskEvent.create(:event_type => TaskEvent.TYPES[:ACCEPTED], 
     179                                    :task_id => self.id, 
    180180                                    :comment_text => @comment) 
    181181      when @@CLOSED 
    182         @event = WorkOrderEvent.create(:event_type => WorkOrderEvent.TYPES[:CLOSED], 
    183                                     :work_order_id => self.id, 
     182        @event = TaskEvent.create(:event_type => TaskEvent.TYPES[:CLOSED], 
     183                                    :task_id => self.id, 
    184184                                    :comment_text => @comment) 
    185185      when @@ASSIGNED 
    186         @event = WorkOrderEvent.create(:event_type => WorkOrderEvent.TYPES[:ASSIGNED], 
    187                                     :work_order_id => self.id, 
     186        @event = TaskEvent.create(:event_type => TaskEvent.TYPES[:ASSIGNED], 
     187                                    :task_id => self.id, 
    188188                                    :comment_text => @comment, 
    189                                     :work_order_owner => self.responsible_user) 
     189                                    :task_owner => self.responsible_user) 
    190190        _('Work order was assigned to you') # This is to trigger the gettext 
    191191        @message = Message.create(:receiver => self.responsible_user, 
     
    193193                                  :body => "{#{self.id}}") 
    194194      when @@NEW 
    195         @event = WorkOrderEvent.create(:event_type => WorkOrderEvent.TYPES[:REOPENED], 
    196                                     :work_order_id => self.id, 
     195        @event = TaskEvent.create(:event_type => TaskEvent.TYPES[:REOPENED], 
     196                                    :task_id => self.id, 
    197197                                    :comment_text => @comment) 
    198198      when nil # State unchanged 
    199199        if @comment and @comment != '' 
    200           @event = WorkOrderEvent.create(:event_type => WorkOrderEvent.TYPES[:COMMENTED], 
    201                                       :work_order_id => self.id, 
     200          @event = TaskEvent.create(:event_type => TaskEvent.TYPES[:COMMENTED], 
     201                                      :task_id => self.id, 
    202202                                      :comment_text => @comment) 
    203203        end 
     
    231231  end 
    232232 
    233   # Assign work_order to user 
     233  # Assign task to user 
    234234  def assign_to(user) 
    235     _info "WorkOrder #{self.id} assigned to #{user.login}." 
     235    _info "Task #{self.id} assigned to #{user.login}." 
    236236    self.responsible_user = user 
    237237    self.state = @@ASSIGNED 
    238238  end 
    239239 
    240   # Accept work_order and assing it to the current user 
     240  # Accept task and assing it to the current user 
    241241  def accept 
    242     _info "WorkOrder #{self.id} accepted by #{User.current_user.login}." 
     242    _info "Task #{self.id} accepted by #{User.current_user.login}." 
    243243    self.responsible_user = User.current_user 
    244244    self.state = @@ACCEPTED 
    245245  end 
    246246 
    247   # Close work_order 
     247  # Close task 
    248248  def close 
    249     _info "WorkOrder #{self.id} closed by #{User.current_user.login}." 
     249    _info "Task #{self.id} closed by #{User.current_user.login}." 
    250250    self.state = @@CLOSED 
    251251  end 
    252252 
    253   # Open work_order 
     253  # Open task 
    254254  def open 
    255     _info "WorkOrder #{self.id} opened by #{User.current_user.login}." 
     255    _info "Task #{self.id} opened by #{User.current_user.login}." 
    256256    self.state = @@NEW 
    257257    self.responsible_user = nil 
    258258  end 
    259259 
    260   # Returns true if work_order has passed it's deadline 
     260  # Returns true if task has passed it's deadline 
    261261  def is_late? 
    262262    return false if self.state == @@CLOSED or self.deadline == nil 
     
    264264  end 
    265265 
    266   # Returns true if work_order is closed 
     266  # Returns true if task is closed 
    267267  def is_closed? 
    268268    self.state == @@CLOSED 
     
    276276  end 
    277277 
    278   def work_order_tag 
    279     self.work_order_type.work_order_tag if self.work_order_type 
     278  def task_tag 
     279    self.task_type.task_tag if self.task_type 
    280280  end 
    281281 
    282282  def comments_as_string 
    283     comments = self.work_order_events.find(:all, :readonly => true).collect { |event| [event.created_at, event.creator, event.comment_text] } 
     283    comments = self.task_events.find(:all, :readonly => true).collect { |event| [event.created_at, event.creator, event.comment_text] } 
    284284    result = [] 
    285285    for creation_date, creator, text in comments 
  • branches/workorder_report_rename/app/models/task_event.rb

    r370 r468  
    22# See license agreement for additional rights 
    33 
    4 class WorkOrderEvent < TimelineEvent 
     4class TaskEvent < TimelineEvent 
    55  # Protection 
    66  # Validation 
    77  # Callbacks 
    88  # Associations 
    9   belongs_to_data_model :work_order, :include => :asset 
    10   belongs_to :work_order_owner, :class_name => 'User', :foreign_key => 'responsible_user_id' 
     9  belongs_to_data_model :task, :include => :asset 
     10  belongs_to :task_owner, :class_name => 'User', :foreign_key => 'responsible_user_id' 
    1111 
    1212  @@TYPES = { 
  • branches/workorder_report_rename/app/models/task_permission_profile.rb

    r24 r468  
    22# See license agreement for additional rights 
    33 
    4 class WorkOrderPermissionProfile < DataPermissionProfile 
     4class TaskPermissionProfile < DataPermissionProfile 
    55  # Protection 
    66  parents_protector_and_protected_fields 
     
    1212 
    1313 
    14   # WorkOrder has state 
     14  # Task has state 
    1515  HAS_CHANGE_STATE = true 
    1616end 
  • branches/workorder_report_rename/app/models/task_permissions.rb

    r24 r468  
    22# See license agreement for additional rights 
    33 
    4 # Data permissions for work_orders to user_groups 
    5 class WorkOrderPermission < DataPermission 
     4# Data permissions for tasks to user_groups 
     5class TaskPermission < DataPermission 
    66  # Protection 
    7   protected_fields :user_group_id, :work_order_id 
     7  protected_fields :user_group_id, :task_id 
    88  # Validation 
    9   validates_uniqueness_of :user_group_id, :scope => :work_order_id 
    10   validates_uniqueness_of :work_order_id, :scope => :user_group_id 
     9  validates_uniqueness_of :user_group_id, :scope => :task_id 
     10  validates_uniqueness_of :task_id, :scope => :user_group_id 
    1111  # Callbacks 
    1212  # Associations 
    13   belongs_to_protector :work_order 
     13  belongs_to_protector :task 
    1414end 
  • branches/workorder_report_rename/app/models/task_tag.rb

    r454 r468  
    22# See license agreement for additional rights 
    33 
    4 class WorkOrderTag < DataTypeTag 
     4class TaskTag < DataTypeTag 
    55  # Protection 
    66  # Validation 
     
    99  belongs_to :cause_form_tag, :class_name => 'FormTag', :foreig