예제 #1
0
        private void chklPermisosOpciones_SelectedValueChanged(object sender, EventArgs e)
        {
            OperationResult objOperationResult = new OperationResult();

            var data = _protocolBL.GetProtocolSystemUserByExternalUserId(_systemUserId);

            var groupByProtocol = data.GroupBy(g => g.v_ProtocolId).Select(s => s.First()).ToList();

            var value = chklPermisosOpciones.GetItemChecked(chklPermisosOpciones.SelectedIndex);
            var applicationHierarchyId = (KeyValueDTO)chklPermisosOpciones.SelectedItem;

            if (value)
            {
                var list = new List <protocolsystemuserDto>();
                foreach (var protocol in groupByProtocol)
                {
                    var oProtocolsystemuserDto = new protocolsystemuserDto();
                    oProtocolsystemuserDto.i_SystemUserId           = _systemUserId.Value;
                    oProtocolsystemuserDto.v_ProtocolId             = protocol.v_ProtocolId;
                    oProtocolsystemuserDto.i_ApplicationHierarchyId = int.Parse(applicationHierarchyId.Id);
                    list.Add(oProtocolsystemuserDto);
                }

                _protocolBL.AddProtocolSystemUser(ref objOperationResult, list, _systemUserId, Globals.ClientSession.GetAsList(), false);
            }
            else
            {
                foreach (var protocol in groupByProtocol)
                {
                    _protocolBL.DeletePermissisoByExternalUser(_systemUserId.Value, int.Parse(applicationHierarchyId.Id), protocol.v_ProtocolId, Globals.ClientSession.GetAsList());
                }
            }
        }