BemsWebApplication.PurchaseOrderStatusByPurchaseRequest = function (params, viewInfo) {
    'use strict';

    var dataSourceOptions = BWA.Factory.PurchaseRequest.getDataSourceForDataGrid(),
        eq = BWA.DataUtil.constructEqualFilter,
        and = BWA.DataUtil.andFilter;

    var viewModel,
        gridView,
        options;

    dataSourceOptions.filter = [
        ['ProgressId', '>=', $Code.PurchaseProgress.PURCHASE_REQUEST_APPROVAL]
    ];

    dataSourceOptions.rowPrepared = function (rowElement, rowInfo) {
        if (rowInfo.rowType == 'data') {
            var data = rowInfo.data;
            if (data.bSameOrder() == false) {
                rowElement.css('background-color', 'rgba(255,0,0,0.1)');
            }
        }
    };

    options = {
        viewOptions: {

            popupWidth: 1400,
            isModifiable: false,
            dataSourceOptions: dataSourceOptions,

            rowPrepared: function (rowElement, rowInfo) {
                if (rowInfo.rowType == 'data') {
                    var data = rowInfo.data;
                    if (data.bSameOrder() == false) {
                        rowElement.css('background-color', 'rgba(255,0,0,0.1)');
                    }
                }
            },
        },

        popupOptions: {
            popupCreatorFunc: BWA.Popup.PurchaseOrderStatusByPurchaseRequest.create
        }
    }

    viewModel = BWA.PurchaseRequest(params, viewInfo, options);
    gridView = viewModel.gridView;

    return viewModel;
};