/// <summary> /// 获得已被选择的权限主键数组 /// <param name="dataRow">数据行</param> /// </summary> private void GetSelectedId(DataRow dataRow) { // 获得当前选中的行 BasePermissionItemEntity permissionItemEntity = new BasePermissionItemEntity(); permissionItemEntity.GetFrom(dataRow); // 获得具体选中的内容 if (permissionItemEntity.Id > 0) { this.SelectedId = permissionItemEntity.Id.ToString(); this.SelectedFullName = permissionItemEntity.FullName; } }
/// <summary> /// 批量保存 /// </summary> /// <param name="dataTable">数据表</param> /// <returns>影响行数</returns> public override int BatchSave(DataTable dataTable) { int returnValue = 0; BasePermissionItemEntity permissionItemEntity = new BasePermissionItemEntity(); foreach (DataRow dataRow in dataTable.Rows) { // 删除状态 if (dataRow.RowState == DataRowState.Deleted) { string id = dataRow[BasePermissionItemEntity.FieldId, DataRowVersion.Original].ToString(); if (id.Length > 0) { if (dataRow[BasePermissionItemEntity.FieldAllowDelete, DataRowVersion.Original].ToString().Equals("1")) { returnValue += this.DeleteEntity(id); } } } // 被修改过 if (dataRow.RowState == DataRowState.Modified) { string id = dataRow[BasePermissionItemEntity.FieldId, DataRowVersion.Original].ToString(); if (id.Length > 0) { permissionItemEntity.GetFrom(dataRow); // 判断是否允许编辑 if (permissionItemEntity.AllowEdit == 1) { returnValue += this.UpdateEntity(permissionItemEntity); } else { // 不允许编辑,但是排序还是允许的 returnValue += this.SetProperty(new KeyValuePair<string, object>(BasePermissionItemEntity.FieldId, id), new KeyValuePair<string, object>(BasePermissionItemEntity.FieldSortCode, permissionItemEntity.SortCode)); } } } // 添加状态 if (dataRow.RowState == DataRowState.Added) { permissionItemEntity.GetFrom(dataRow); returnValue += this.AddEntity(permissionItemEntity).Length > 0 ? 1 : 0; } if (dataRow.RowState == DataRowState.Unchanged) { continue; } if (dataRow.RowState == DataRowState.Detached) { continue; } } return returnValue; }