读取excel文件

This commit is contained in:
苏尹岚
2019-11-13 08:15:37 +08:00
parent 290c3ac7b4
commit d40182a220
3 changed files with 29 additions and 9 deletions

View File

@@ -107,6 +107,7 @@ func LoadExcelByYongHui(ctx *jxcontext.Context, files []*multipart.FileHeader, i
if len(files) == 0 {
return "", errors.New("没有文件上传!")
}
//读取excel文件
xlsx, err := excelize.OpenFile(files[0].Filename)
// xlsx, err := excelize.OpenFile("111.xlsx")

View File

@@ -1,6 +1,9 @@
package controllers
import (
"fmt"
"io"
"git.rosy.net.cn/jx-callback/business/jxstore/yonghui"
"github.com/astaxie/beego"
)
@@ -12,16 +15,32 @@ type YongHuiController struct {
// @Title 读取永辉excel文件
// @Description 读取永辉excel文件
// @Param token header string true "认证token"
// @Param token header string false "认证token"
// @Param isAsync query bool false "是否异步,缺省是同步"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /LoadExcelByYongHui [post]
// @router /LoadExcelByYongHui [post,get]
func (c *YongHuiController) LoadExcelByYongHui() {
c.callLoadExcelByYongHui(func(params *tYonghuiLoadExcelByYongHuiParams) (retVal interface{}, errCode string, err error) {
r := c.Ctx.Request
files := r.MultipartForm.File["userfiles"]
retVal, err = yonghui.LoadExcelByYongHui(params.Ctx, files, params.IsAsync)
return retVal, "", err
})
if c.Ctx.Input.IsGet() {
w := c.Ctx.ResponseWriter
// 上传页面
w.Header().Add("Content-Type", "text/html")
w.WriteHeader(200)
html := `
<form enctype="multipart/form-data" action="/v2/yonghui/LoadExcelByYongHui" method="POST">
Send this file: <input name="userfiles" multiple accept="*" type="file" />
<input type="submit" value="Send File" />
</form>
`
io.WriteString(w, html)
} else if c.Ctx.Input.IsPost() {
c.callLoadExcelByYongHui(func(params *tYonghuiLoadExcelByYongHuiParams) (retVal interface{}, errCode string, err error) {
r := c.Ctx.Request
files := r.MultipartForm.File["userfiles"]
fmt.Println(r)
fmt.Println(r.MultipartForm)
retVal, err = yonghui.LoadExcelByYongHui(params.Ctx, files, params.IsAsync)
return retVal, "", err
})
}
}

View File

@@ -2002,7 +2002,7 @@ func init() {
beego.ControllerComments{
Method: "LoadExcelByYongHui",
Router: `/LoadExcelByYongHui`,
AllowHTTPMethods: []string{"post"},
AllowHTTPMethods: []string{"post","get"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})