1、优化导出文件的效果

2、修复更新用户时邮箱重复的提示文案
3、优化部分显示效果
This commit is contained in:
Minho
2018-03-22 14:27:23 +08:00
parent 52f5a44691
commit 359c5dfb10
13 changed files with 336 additions and 120 deletions

View File

@@ -19,6 +19,7 @@ import (
"github.com/lifei6671/mindoc/utils"
"gopkg.in/russross/blackfriday.v2"
"github.com/lifei6671/mindoc/utils/ziptil"
"github.com/lifei6671/mindoc/utils/filetil"
)
type BookResult struct {
@@ -189,6 +190,7 @@ func (m *BookResult) ToBookResult(book Book) *BookResult {
return m
}
//导出PDF、word等格式
func (m *BookResult) Converter(sessionId string) (ConvertBookResult, error) {
convertBookResult := ConvertBookResult{}
@@ -202,7 +204,7 @@ func (m *BookResult) Converter(sessionId string) (ConvertBookResult, error) {
docxpath := filepath.Join(outputPath, "book.docx")
//先将转换的文件储存到临时目录
tempOutputPath := filepath.Join(os.TempDir(),sessionId) //filepath.Abs(filepath.Join("cache", sessionId))
tempOutputPath := filepath.Join(os.TempDir(),sessionId,m.Identify) //filepath.Abs(filepath.Join("cache", sessionId))
os.MkdirAll(outputPath, 0766)
os.MkdirAll(tempOutputPath, 0766)
@@ -332,18 +334,28 @@ func (m *BookResult) Converter(sessionId string) (ConvertBookResult, error) {
f.Close()
return convertBookResult, err
}
// html = strings.Replace(html, "<img src=\"/uploads", "<img src=\"" + c.BaseUrl() + "/uploads", -1)
f.WriteString(html)
f.Close()
}
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","css","kancloud.css"),filepath.Join(tempOutputPath,"styles","css","kancloud.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","css","export.css"),filepath.Join(tempOutputPath,"styles","css","export.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","editor.md","css","editormd.preview.css"),filepath.Join(tempOutputPath,"styles","editor.md","css","editormd.preview.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","prettify","themes","prettify.css"),filepath.Join(tempOutputPath,"styles","prettify","themes","prettify.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","css,","markdown.preview.css"),filepath.Join(tempOutputPath,"styles","css","markdown.preview.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","highlight","styles","vs.css"),filepath.Join(tempOutputPath,"styles","highlight","styles","vs.css"))
filetil.CopyFile(filepath.Join(conf.WorkingDirectory,"static","katex","katex.min.css"),filepath.Join(tempOutputPath,"styles","katex","katex.min.css"))
eBookConverter := &converter.Converter{
BasePath: tempOutputPath,
OutputPath: strings.TrimSuffix(tempOutputPath,"sources"),
Config: ebookConfig,
Debug: true,
}
if err := eBookConverter.Convert(); err != nil {
beego.Error("转换文件错误:" + m.BookName + " => " + err.Error())
return convertBookResult, err

View File

@@ -169,7 +169,8 @@ func (m *Member) Add() error {
hash, err := utils.PasswordHash(m.Password)
if err != nil {
return err
beego.Error("加密用户密码失败 =>",err)
return errors.New("加密用户密码失败")
}
m.Password = hash
@@ -179,7 +180,8 @@ func (m *Member) Add() error {
_, err = o.Insert(m)
if err != nil {
return err
beego.Error("保存用户数据到数据时失败 =>",err)
return errors.New("保存用户失败")
}
m.ResolveRoleName()
return nil
@@ -192,8 +194,12 @@ func (m *Member) Update(cols ...string) error {
if m.Email == "" {
return errors.New("邮箱不能为空")
}
if c, err := o.QueryTable(m.TableNameWithPrefix()).Filter("email", m.Email).Exclude("member_id",m.MemberId).Count(); err == nil && c > 0 {
return errors.New("邮箱已被使用")
}
if _, err := o.Update(m, cols...); err != nil {
return err
beego.Error("保存用户信息失败=>",err)
return errors.New("保存用户信息失败")
}
return nil
}