Отображение условного значения ячейки в сетке - AnguarJS - PullRequest
0 голосов
/ 29 октября 2019

У меня есть сетка с небольшим количеством полей, и одно из них Роли . Цель состоит в том, чтобы отобразить значение для этого поля в виде раскрывающегося списка на основе значения из полученного ответа (ответом является сетка с именем deoUsers , в которой содержится много полей, одно из полей из ответа будет depCode с возможными значениями 2,4,8,15,17 и 20) вместе с этими двумя условиями

  1. отображать это поле с этим значением - когда depCode равен 15, 8,4,2 , затем отобразите их как CRT, Deo, BM, KM соответственно и отключите раскрывающийся список

  2. отображать это поле с этим значением - когда depCode равен 17,20 , тогда заставить их отображать все значения в флажках CRT, Deo, BM, KM,HOIT, ROIT , чтобы пользователь мог выбрать любой из выпадающего списка ...

ниже мой наполовину испеченный код:

var checkBoxCell = '<input type="checkbox" class="includeCheckBox" ng-model="row.entity.checked" ng-true-value="true" ng-false-value="false" />';
$scope.checkAll = false;
$scope.label = 'select all';
var roleOptions = '';
$scope.roles = [{'depCode':'8','name':'Deo'},{'depCode':'4','name':'BM'},{'depCode':'2','name':'KM'},{'depCode':'15','name':'CRT'}];
roleOptions = "<select style='width:100%' ><option value='0'> - None -</option>";
$scope.roles.forEach(function (role) {
    opt = role ;
    roleOptions += "<option value='" + opt.depCode + "'selected'>" +opt.name+ "</option>";
    });
roleOptions += '</select>';
$scope.roleOptions = roleOptions;
$scope.gridDeo = {
data: 'deoUsers',
columnDefs: [
    {
    field: 'depCode',
    displayName: "Roles",
    cellTemplate: '<div>' + roleOptions + '</div>',
    },
    {
     other field 1
    },
    {
     other field 2
    }
    ]


...