作者 唐旭辉

日常提交存储

@@ -3,7 +3,7 @@ module oppmg @@ -3,7 +3,7 @@ module oppmg
3 go 1.13 3 go 1.13
4 4
5 require ( 5 require (
6 - github.com/360EntSecGroup-Skylar/excelize v1.4.1 6 + github.com/360EntSecGroup-Skylar/excelize/v2 v2.0.2
7 github.com/astaxie/beego v1.11.1 7 github.com/astaxie/beego v1.11.1
8 github.com/dgrijalva/jwt-go v3.2.0+incompatible 8 github.com/dgrijalva/jwt-go v3.2.0+incompatible
9 github.com/go-redis/redis v6.15.6+incompatible 9 github.com/go-redis/redis v6.15.6+incompatible
1 -github.com/360EntSecGroup-Skylar/excelize v1.4.1 h1:l55mJb6rkkaUzOpSsgEeKYtS6/0gHwBYyfo5Jcjv/Ks=  
2 -github.com/360EntSecGroup-Skylar/excelize v1.4.1/go.mod h1:vnax29X2usfl7HHkBrX5EvSCJcmH3dT9luvxzu8iGAE= 1 +github.com/360EntSecGroup-Skylar/excelize/v2 v2.0.2 h1:StMrA6UQ5Cm6206DxXGuV/NMqSIOIDoMXMYt8JPe1lE=
  2 +github.com/360EntSecGroup-Skylar/excelize/v2 v2.0.2/go.mod h1:EfRHD2k+Kd7ijnqlwOrH1IifwgWB9yYJ0pdXtBZmlpU=
3 github.com/Knetic/govaluate v3.0.0+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= 3 github.com/Knetic/govaluate v3.0.0+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0=
4 github.com/astaxie/beego v1.11.1 h1:6DESefxW5oMcRLFRKi53/6exzup/IR6N4EzzS1n6CnQ= 4 github.com/astaxie/beego v1.11.1 h1:6DESefxW5oMcRLFRKi53/6exzup/IR6N4EzzS1n6CnQ=
5 github.com/astaxie/beego v1.11.1/go.mod h1:i69hVzgauOPSw5qeyF4GVZhn7Od0yG5bbCGzmhbWxgQ= 5 github.com/astaxie/beego v1.11.1/go.mod h1:i69hVzgauOPSw5qeyF4GVZhn7Od0yG5bbCGzmhbWxgQ=
@@ -13,6 +13,7 @@ github.com/couchbase/go-couchbase v0.0.0-20181122212707-3e9b6e1258bb/go.mod h1:T @@ -13,6 +13,7 @@ github.com/couchbase/go-couchbase v0.0.0-20181122212707-3e9b6e1258bb/go.mod h1:T
13 github.com/couchbase/gomemcached v0.0.0-20181122193126-5125a94a666c/go.mod h1:srVSlQLB8iXBVXHgnqemxUXqN6FCvClgCMPCsjBDR7c= 13 github.com/couchbase/gomemcached v0.0.0-20181122193126-5125a94a666c/go.mod h1:srVSlQLB8iXBVXHgnqemxUXqN6FCvClgCMPCsjBDR7c=
14 github.com/couchbase/goutils v0.0.0-20180530154633-e865a1461c8a/go.mod h1:BQwMFlJzDjFDG3DJUdU0KORxn88UlsOULuxLExMh3Hs= 14 github.com/couchbase/goutils v0.0.0-20180530154633-e865a1461c8a/go.mod h1:BQwMFlJzDjFDG3DJUdU0KORxn88UlsOULuxLExMh3Hs=
15 github.com/cupcake/rdb v0.0.0-20161107195141-43ba34106c76/go.mod h1:vYwsqCOLxGiisLwp9rITslkFNpZD5rz43tf41QFkTWY= 15 github.com/cupcake/rdb v0.0.0-20161107195141-43ba34106c76/go.mod h1:vYwsqCOLxGiisLwp9rITslkFNpZD5rz43tf41QFkTWY=
  16 +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
16 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= 17 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
17 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= 18 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
18 github.com/deckarep/golang-set v1.7.1 h1:SCQV0S6gTtp6itiFrTqI+pfmJ4LN85S1YzhDf9rTHJQ= 19 github.com/deckarep/golang-set v1.7.1 h1:SCQV0S6gTtp6itiFrTqI+pfmJ4LN85S1YzhDf9rTHJQ=
@@ -61,8 +62,9 @@ github.com/siddontang/rdb v0.0.0-20150307021120-fc89ed2e418d/go.mod h1:AMEsy7v5z @@ -61,8 +62,9 @@ github.com/siddontang/rdb v0.0.0-20150307021120-fc89ed2e418d/go.mod h1:AMEsy7v5z
61 github.com/sony/sonyflake v1.0.0 h1:MpU6Ro7tfXwgn2l5eluf9xQvQJDROTBImNCfRXn/YeM= 62 github.com/sony/sonyflake v1.0.0 h1:MpU6Ro7tfXwgn2l5eluf9xQvQJDROTBImNCfRXn/YeM=
62 github.com/sony/sonyflake v1.0.0/go.mod h1:Jv3cfhf/UFtolOTTRd3q4Nl6ENqM+KfyZ5PseKfZGF4= 63 github.com/sony/sonyflake v1.0.0/go.mod h1:Jv3cfhf/UFtolOTTRd3q4Nl6ENqM+KfyZ5PseKfZGF4=
63 github.com/ssdb/gossdb v0.0.0-20180723034631-88f6b59b84ec/go.mod h1:QBvMkMya+gXctz3kmljlUCu/yB3GZ6oee+dUozsezQE= 64 github.com/ssdb/gossdb v0.0.0-20180723034631-88f6b59b84ec/go.mod h1:QBvMkMya+gXctz3kmljlUCu/yB3GZ6oee+dUozsezQE=
64 -github.com/stretchr/testify v1.2.3-0.20181224173747-660f15d67dbb h1:cRItZejS4Ok67vfCdrbGIaqk86wmtQNOjVD7jSyS2aw=  
65 -github.com/stretchr/testify v1.2.3-0.20181224173747-660f15d67dbb/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= 65 +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
  66 +github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
  67 +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
66 github.com/syndtr/goleveldb v0.0.0-20181127023241-353a9fca669c/go.mod h1:Z4AUp2Km+PwemOoO/VB5AOx9XSsIItzFjoJlOSiYmn0= 68 github.com/syndtr/goleveldb v0.0.0-20181127023241-353a9fca669c/go.mod h1:Z4AUp2Km+PwemOoO/VB5AOx9XSsIItzFjoJlOSiYmn0=
67 github.com/wendal/errors v0.0.0-20130201093226-f66c77a7882b/go.mod h1:Q12BUT7DqIlHRmgv3RskH+UCM/4eqVMgI0EMmlSpAXc= 69 github.com/wendal/errors v0.0.0-20130201093226-f66c77a7882b/go.mod h1:Q12BUT7DqIlHRmgv3RskH+UCM/4eqVMgI0EMmlSpAXc=
68 golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85 h1:et7+NAX3lLIk5qUCTA9QelBjGE/NkhzYw/mhnr0s7nI= 70 golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85 h1:et7+NAX3lLIk5qUCTA9QelBjGE/NkhzYw/mhnr0s7nI=
@@ -70,6 +72,8 @@ golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85/go.mod h1:6SG95UA2DQfeDnf @@ -70,6 +72,8 @@ golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85/go.mod h1:6SG95UA2DQfeDnf
70 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= 72 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
71 golang.org/x/crypto v0.0.0-20191119213627-4f8c1d86b1ba h1:9bFeDpN3gTqNanMVqNcoR/pJQuP5uroC3t1D7eXozTE= 73 golang.org/x/crypto v0.0.0-20191119213627-4f8c1d86b1ba h1:9bFeDpN3gTqNanMVqNcoR/pJQuP5uroC3t1D7eXozTE=
72 golang.org/x/crypto v0.0.0-20191119213627-4f8c1d86b1ba/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= 74 golang.org/x/crypto v0.0.0-20191119213627-4f8c1d86b1ba/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
  75 +golang.org/x/image v0.0.0-20190910094157-69e4b8554b2a h1:gHevYm0pO4QUbwy8Dmdr01R5r1BuKtfYqRqF0h/Cbh0=
  76 +golang.org/x/image v0.0.0-20190910094157-69e4b8554b2a/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
73 golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 77 golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
74 golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= 78 golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
75 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 79 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
@@ -2,8 +2,8 @@ package protocol @@ -2,8 +2,8 @@ package protocol
2 2
3 //RequestPageInfo 分页获取数据 3 //RequestPageInfo 分页获取数据
4 type RequestPageInfo struct { 4 type RequestPageInfo struct {
5 - PageIndex int `json:"page"`  
6 - PageSize int `json:"pageSize"` 5 + PageIndex int `json:"page_index"`
  6 + PageSize int `json:"page_size"`
7 } 7 }
8 8
9 //ResponsePageInfo 分页信息 9 //ResponsePageInfo 分页信息
@@ -85,3 +85,24 @@ type RequestUserEdit struct { @@ -85,3 +85,24 @@ type RequestUserEdit struct {
85 ID int64 `json:"id"` 85 ID int64 `json:"id"`
86 RequestUserAdd 86 RequestUserAdd
87 } 87 }
  88 +
  89 +//RequestUserList 获取用户列表
  90 +type RequestUserList struct {
  91 + RequestPageInfo
  92 + NickName string `json:"nick_name"`
  93 +}
  94 +
  95 +//ResponseUserList 响应的用户列表
  96 +type ResponseUserList struct {
  97 + ResponsePageInfo
  98 + List []UserListItem `json:"list"`
  99 +}
  100 +
  101 +type UserListItem struct {
  102 + Id int64 `json:"id"`
  103 + NickName string `json:"nick_name"`
  104 + Position string `json:"position"`
  105 + Role string `json:"role"`
  106 + Department string `json:"department"`
  107 + Status int8 `json:"status"`
  108 +}
@@ -307,12 +307,12 @@ func UserEdit(param protocol.RequestUserEdit) error { @@ -307,12 +307,12 @@ func UserEdit(param protocol.RequestUserEdit) error {
307 } 307 }
308 o := orm.NewOrm() 308 o := orm.NewOrm()
309 o.Begin() 309 o.Begin()
310 - err = registUser(userm, param.CompanyId, o)  
311 - if err != nil {  
312 - o.Rollback()  
313 - log.Error("registUser err:%s", err)  
314 - return protocol.NewErrWithMessage("1")  
315 - } 310 + // err = registUser(userm, param.CompanyId, o)
  311 + // if err != nil {
  312 + // o.Rollback()
  313 + // log.Error("registUser err:%s", err)
  314 + // return protocol.NewErrWithMessage("1")
  315 + // }
316 //添加角色 316 //添加角色
317 err = editUserRole(userm.Id, param.CompanyId, param.Roles, o) 317 err = editUserRole(userm.Id, param.CompanyId, param.Roles, o)
318 if err != nil { 318 if err != nil {
@@ -341,3 +341,7 @@ func UserEdit(param protocol.RequestUserEdit) error { @@ -341,3 +341,7 @@ func UserEdit(param protocol.RequestUserEdit) error {
341 func UserDelete(param protocol.RequestUserAdd) error { 341 func UserDelete(param protocol.RequestUserAdd) error {
342 return nil 342 return nil
343 } 343 }
  344 +
  345 +func UserList() error {
  346 + return nil
  347 +}
@@ -6,7 +6,7 @@ import ( @@ -6,7 +6,7 @@ import (
6 "math/rand" 6 "math/rand"
7 "time" 7 "time"
8 8
9 - "github.com/360EntSecGroup-Skylar/excelize" 9 + excelize "github.com/360EntSecGroup-Skylar/excelize/v2"
10 "github.com/astaxie/beego/orm" 10 "github.com/astaxie/beego/orm"
11 ) 11 )
12 12
@@ -39,14 +39,16 @@ func (e *ExcelMaker) MakeListExcel(sourData []map[string]string, xlsxHeader [][] @@ -39,14 +39,16 @@ func (e *ExcelMaker) MakeListExcel(sourData []map[string]string, xlsxHeader [][]
39 } 39 }
40 headEn = append(headEn, xlsxHeader[key][0]) 40 headEn = append(headEn, xlsxHeader[key][0])
41 headCn = append(headCn, xlsxHeader[key][1]) 41 headCn = append(headCn, xlsxHeader[key][1])
42 - alpha := excelize.ToAlphaString(key) 42 + alpha, err := excelize.ColumnNumberToName(key)
  43 + if err != nil {
  44 + return err
  45 + }
43 alphaSlice = append(alphaSlice, alpha) 46 alphaSlice = append(alphaSlice, alpha)
44 } 47 }
45 48
46 //设置excel文档第一行的字段中文描述 49 //设置excel文档第一行的字段中文描述
47 for index, _ := range headCn { 50 for index, _ := range headCn {
48 //索引转列名,索引从0开始 51 //索引转列名,索引从0开始
49 -  
50 cellAlpha := fmt.Sprintf("%s%d", alphaSlice[index], 1) // 单元格行坐标从1开始,如:a1,指第一行a列。 52 cellAlpha := fmt.Sprintf("%s%d", alphaSlice[index], 1) // 单元格行坐标从1开始,如:a1,指第一行a列。
51 e.Xlsx.SetCellStr("Sheet1", cellAlpha, headCn[index]) 53 e.Xlsx.SetCellStr("Sheet1", cellAlpha, headCn[index])
52 54
@@ -78,7 +80,10 @@ func (e *ExcelMaker) MakeListExcelForBeego(sourData []orm.Params, xlsxHeader [][ @@ -78,7 +80,10 @@ func (e *ExcelMaker) MakeListExcelForBeego(sourData []orm.Params, xlsxHeader [][
78 } 80 }
79 headEn = append(headEn, xlsxHeader[key][0]) 81 headEn = append(headEn, xlsxHeader[key][0])
80 headCn = append(headCn, xlsxHeader[key][1]) 82 headCn = append(headCn, xlsxHeader[key][1])
81 - alpha := excelize.ToAlphaString(key) 83 + alpha, err := excelize.ColumnNumberToName(key)
  84 + if err != nil {
  85 + return err
  86 + }
82 alphaSlice = append(alphaSlice, alpha) 87 alphaSlice = append(alphaSlice, alpha)
83 } 88 }
84 89