mirror of
https://github.com/casdoor/casdoor.git
synced 2025-07-02 03:00:18 +08:00
feat: Support uploading roles and permssions via xlsx files. (#1899)
* Support uploading roles and permissions via xlsx file. * Template xlsx file for uploading users and permissions. * reformat according to gofumpt. * fix typo.
This commit is contained in:
@ -15,6 +15,9 @@
|
||||
package object
|
||||
|
||||
import (
|
||||
"sort"
|
||||
"strings"
|
||||
|
||||
"github.com/casdoor/casdoor/util"
|
||||
"github.com/casdoor/casdoor/xlsx"
|
||||
)
|
||||
@ -47,6 +50,26 @@ func parseLineItemBool(line *[]string, i int) bool {
|
||||
return parseLineItemInt(line, i) != 0
|
||||
}
|
||||
|
||||
func parseListItem(lines *[]string, i int) []string {
|
||||
if i >= len(*lines) {
|
||||
return nil
|
||||
}
|
||||
line := (*lines)[i]
|
||||
items := strings.Split(line, ";")
|
||||
trimmedItems := make([]string, 0, len(items))
|
||||
|
||||
for _, item := range items {
|
||||
trimmedItem := strings.TrimSpace(item)
|
||||
if trimmedItem != "" {
|
||||
trimmedItems = append(trimmedItems, trimmedItem)
|
||||
}
|
||||
}
|
||||
|
||||
sort.Strings(trimmedItems)
|
||||
|
||||
return trimmedItems
|
||||
}
|
||||
|
||||
func UploadUsers(owner string, fileId string) bool {
|
||||
table := xlsx.ReadXlsxFile(fileId)
|
||||
|
||||
|
Reference in New Issue
Block a user