From afb938275490f4fc14c979dbf6c3d39816e17abe Mon Sep 17 00:00:00 2001 From: truthhun <1272881215@qq.com> Date: Sat, 4 Mar 2023 20:20:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=AC=E6=8D=A2=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E5=8E=9F=E5=9B=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/v1/document.pb.go | 260 ++++++++++++++++++------------ api/v1/document.proto | 1 + biz/document.go | 5 + model/document.go | 3 + model/documentError.go | 68 ++++++++ model/init.go | 1 + web/assets/css/app.css | 83 ++++++++++ web/assets/css/app.min.css | 1 + web/assets/css/app.scss | 2 + web/components/TableList.vue | 1 + web/pages/admin/document/list.vue | 15 ++ 11 files changed, 337 insertions(+), 103 deletions(-) create mode 100644 model/documentError.go create mode 100644 web/assets/css/app.css create mode 100644 web/assets/css/app.min.css diff --git a/api/v1/document.pb.go b/api/v1/document.pb.go index 1195a23..14bfbcc 100644 --- a/api/v1/document.pb.go +++ b/api/v1/document.pb.go @@ -66,6 +66,7 @@ type Document struct { Attachment *Attachment `protobuf:"bytes,30,opt,name=attachment,proto3" json:"attachment,omitempty"` User *User `protobuf:"bytes,31,opt,name=user,proto3" json:"user,omitempty"` EnableGzip bool `protobuf:"varint,32,opt,name=enable_gzip,json=enableGzip,proto3" json:"enable_gzip,omitempty"` + ConvertError string `protobuf:"bytes,33,opt,name=convert_error,json=convertError,proto3" json:"convert_error,omitempty"` } func (m *Document) Reset() { *m = Document{} } @@ -325,6 +326,13 @@ func (m *Document) GetEnableGzip() bool { return false } +func (m *Document) GetConvertError() string { + if m != nil { + return m.ConvertError + } + return "" +} + type DeleteDocumentRequest struct { Id []int64 `protobuf:"varint,1,rep,packed,name=id,proto3" json:"id,omitempty"` } @@ -1255,109 +1263,110 @@ func init() { func init() { proto.RegisterFile("api/v1/document.proto", fileDescriptor_55a584ae3a7fc022) } var fileDescriptor_55a584ae3a7fc022 = []byte{ - // 1619 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0x41, 0x6f, 0x1b, 0x4f, - 0x15, 0xef, 0x7a, 0xed, 0xc4, 0x79, 0x76, 0x5c, 0x67, 0x12, 0x27, 0x9b, 0x75, 0x62, 0xfb, 0xbf, - 0x21, 0xe0, 0x7f, 0x84, 0x62, 0x35, 0x08, 0x0e, 0xf4, 0x80, 0xd2, 0xb4, 0x84, 0x48, 0x08, 0x55, - 0x5b, 0xaa, 0x4a, 0xbd, 0x84, 0xad, 0x77, 0x62, 0x2f, 0xac, 0xbd, 0xcb, 0xee, 0x38, 0x26, 0x11, - 0x5c, 0x10, 0x67, 0x54, 0x09, 0x89, 0x4f, 0xc2, 0x8d, 0x2f, 0xc0, 0xb1, 0x12, 0x17, 0x10, 0x07, - 0x50, 0xcb, 0x17, 0xe0, 0x1b, 0xa0, 0x79, 0x33, 0x63, 0xaf, 0xbd, 0xbb, 0x49, 0xda, 0xff, 0x6d, - 0xe7, 0xcd, 0x9b, 0xdf, 0x6f, 0xde, 0x9b, 0xf7, 0x7e, 0x33, 0x36, 0x34, 0x9c, 0xd0, 0xeb, 0x5d, - 0x3f, 0xe9, 0xb9, 0x41, 0x7f, 0x32, 0xa2, 0x63, 0x76, 0x1c, 0x46, 0x01, 0x0b, 0xc8, 0x8a, 0x13, - 0x7a, 0xc7, 0xd7, 0x4f, 0xcc, 0xf6, 0x20, 0x08, 0x06, 0x3e, 0xed, 0xa1, 0xf5, 0xdd, 0xe4, 0xaa, - 0xc7, 0xbc, 0x11, 0x8d, 0x99, 0x33, 0x0a, 0x85, 0xa3, 0xb9, 0x35, 0x08, 0x06, 0x01, 0x7e, 0xf6, - 0xf8, 0x97, 0xb4, 0xee, 0xc9, 0x65, 0x1c, 0xdc, 0x19, 0x8f, 0x03, 0xe6, 0x30, 0x2f, 0x18, 0xc7, - 0x72, 0xb6, 0xb9, 0x0c, 0x4a, 0x47, 0x21, 0xbb, 0x91, 0x93, 0x3b, 0x72, 0x43, 0x0e, 0x63, 0x4e, - 0x7f, 0x38, 0xdf, 0x92, 0xb9, 0x21, 0x27, 0x26, 0x31, 0x8d, 0x84, 0xc9, 0xfa, 0x6b, 0x19, 0xca, - 0xcf, 0xe5, 0xc6, 0x49, 0x0d, 0x0a, 0x9e, 0x6b, 0x68, 0x1d, 0xad, 0xab, 0xdb, 0x05, 0xcf, 0x25, - 0x5b, 0x50, 0x62, 0x1e, 0xf3, 0xa9, 0x51, 0xe8, 0x68, 0xdd, 0x35, 0x5b, 0x0c, 0x88, 0x09, 0xe5, - 0x5f, 0xd1, 0x9b, 0x69, 0x10, 0xb9, 0xb1, 0xa1, 0xe3, 0xc4, 0x6c, 0x4c, 0x3a, 0x50, 0x71, 0x69, - 0xdc, 0x8f, 0xbc, 0x90, 0xef, 0xd6, 0x28, 0xe2, 0x74, 0xd2, 0x44, 0x76, 0x60, 0x95, 0xd3, 0x5f, - 0x7a, 0xae, 0x51, 0x42, 0xa2, 0x15, 0x3e, 0xbc, 0x40, 0xb2, 0x7e, 0x70, 0x4d, 0x23, 0x63, 0x45, - 0x90, 0xe1, 0x80, 0x5b, 0xa7, 0x9e, 0xcb, 0x86, 0xc6, 0x6a, 0x47, 0xeb, 0x96, 0x6c, 0x31, 0x20, - 0xdb, 0xb0, 0x32, 0xa4, 0xde, 0x60, 0xc8, 0x8c, 0x32, 0x9a, 0xe5, 0x88, 0x18, 0xb0, 0x1a, 0x46, - 0xf4, 0xda, 0xa3, 0x53, 0x63, 0x0d, 0x27, 0xd4, 0x90, 0xe3, 0x84, 0xce, 0x80, 0xc6, 0x06, 0x08, - 0x1c, 0x1c, 0x10, 0x02, 0xc5, 0xc9, 0xc4, 0x73, 0x8d, 0x0a, 0x52, 0xe2, 0x37, 0x39, 0x84, 0x9a, - 0x1b, 0x4c, 0xc7, 0x7e, 0xe0, 0xb8, 0x97, 0xfd, 0x60, 0x32, 0x66, 0x46, 0x15, 0x97, 0xac, 0x2b, - 0xeb, 0x19, 0x37, 0x92, 0x7d, 0x00, 0x0e, 0x2c, 0x5d, 0xd6, 0xd1, 0x65, 0x8d, 0x5b, 0xc4, 0xf4, - 0x21, 0xd4, 0xae, 0x9c, 0xeb, 0x20, 0xf2, 0x18, 0x95, 0x2e, 0x35, 0x81, 0xa2, 0xac, 0xc2, 0xed, - 0x00, 0xd6, 0xfb, 0xc1, 0x88, 0x27, 0x5f, 0x7a, 0x3d, 0x46, 0xaf, 0xaa, 0x34, 0x0a, 0xa7, 0x2d, - 0x28, 0xc5, 0xfd, 0x20, 0xa2, 0x46, 0x5d, 0xec, 0x1d, 0x07, 0xa4, 0x0d, 0x15, 0xfc, 0x90, 0x0b, - 0x37, 0x70, 0x0e, 0xd0, 0x34, 0x5b, 0x16, 0x46, 0x5e, 0x9f, 0x1a, 0x44, 0x86, 0xcc, 0x07, 0x3c, - 0xe4, 0xd8, 0xbb, 0xa5, 0xc6, 0x26, 0x26, 0x1f, 0xbf, 0x79, 0x3a, 0x63, 0xe6, 0xb0, 0x49, 0x6c, - 0x6c, 0x89, 0x74, 0x8a, 0x11, 0xf9, 0x11, 0x40, 0x3f, 0xa2, 0x0e, 0xa3, 0xee, 0xa5, 0xc3, 0x8c, - 0x46, 0x47, 0xeb, 0x56, 0x4e, 0xcc, 0x63, 0x51, 0x7a, 0xc7, 0xaa, 0xf4, 0x8e, 0x7f, 0xae, 0xea, - 0xf9, 0x59, 0xf1, 0xfd, 0xbf, 0xdb, 0x9a, 0xbd, 0x26, 0xd7, 0x9c, 0x32, 0x0e, 0x30, 0x09, 0x5d, - 0x05, 0xb0, 0xfd, 0x50, 0x00, 0xb9, 0x46, 0x00, 0xb8, 0xd4, 0xa7, 0x12, 0x60, 0xe7, 0xa1, 0x00, - 0x72, 0xcd, 0x29, 0x23, 0x67, 0x50, 0x8d, 0xa8, 0xc8, 0x26, 0x42, 0xec, 0x3f, 0x10, 0xa2, 0x32, - 0x5b, 0x75, 0xca, 0xc8, 0xb7, 0xe1, 0xb1, 0xda, 0x85, 0xaa, 0x5d, 0x03, 0xd3, 0xb7, 0x2e, 0xcd, - 0xaf, 0x45, 0x09, 0x9b, 0x50, 0xe6, 0xf3, 0x63, 0x67, 0x44, 0x8d, 0x5d, 0xd1, 0x19, 0x6a, 0xcc, - 0x8f, 0xab, 0xef, 0x30, 0x3a, 0x08, 0xa2, 0x1b, 0xbe, 0xde, 0xec, 0xe8, 0x5d, 0xdd, 0x06, 0x65, - 0xba, 0x70, 0xc9, 0xd7, 0x50, 0x4f, 0x92, 0x20, 0x48, 0x13, 0x41, 0x1e, 0x27, 0x58, 0x10, 0xab, - 0x0e, 0x3a, 0xfd, 0x0d, 0x33, 0xf6, 0x70, 0x96, 0x7f, 0x92, 0x13, 0x80, 0x79, 0xb7, 0x1b, 0x2d, - 0x0c, 0x92, 0x1c, 0x0b, 0x05, 0x3a, 0x3e, 0x9d, 0xcd, 0xd8, 0x09, 0x2f, 0xd2, 0x81, 0x22, 0x27, - 0x32, 0xda, 0xe8, 0x5d, 0x55, 0xde, 0x9c, 0xc5, 0xc6, 0x19, 0xbe, 0x67, 0x3a, 0x76, 0xde, 0xf9, - 0xf4, 0x72, 0x70, 0xeb, 0x85, 0x46, 0xa7, 0xa3, 0x75, 0xcb, 0x36, 0x08, 0xd3, 0xf9, 0xad, 0x17, - 0x5a, 0xdf, 0x81, 0xc6, 0x73, 0xdc, 0x9b, 0x92, 0x10, 0x9b, 0xfe, 0x7a, 0x42, 0xe3, 0xb9, 0x92, - 0xe8, 0x42, 0x49, 0xac, 0x1e, 0xec, 0xdb, 0x14, 0x3b, 0xda, 0xa6, 0xfd, 0x9b, 0xbe, 0x7f, 0xef, - 0x82, 0x17, 0x40, 0xce, 0x29, 0xcb, 0xf3, 0x52, 0x02, 0xd5, 0x86, 0xca, 0xd4, 0x63, 0xc3, 0x4b, - 0x67, 0xc2, 0x86, 0x41, 0x84, 0x32, 0x55, 0xb6, 0x81, 0x9b, 0x4e, 0xd1, 0x62, 0xfd, 0xa1, 0x00, - 0x9b, 0x3f, 0xf5, 0xe2, 0x14, 0x10, 0x81, 0x22, 0x57, 0x00, 0x09, 0x85, 0xdf, 0xb3, 0xce, 0x28, - 0x24, 0x3a, 0xa3, 0x06, 0x85, 0xa9, 0x2b, 0x55, 0xae, 0x30, 0x45, 0x91, 0xba, 0xf2, 0xa8, 0xef, - 0x1a, 0xc5, 0x8e, 0xce, 0x45, 0x0a, 0x07, 0xdc, 0x1a, 0x44, 0x2e, 0x8d, 0x50, 0xd1, 0xd6, 0x6c, - 0x31, 0x58, 0x3e, 0xf1, 0x95, 0xd4, 0x89, 0x27, 0xa4, 0x70, 0x15, 0x27, 0x95, 0x14, 0xce, 0xfb, - 0xb1, 0xdc, 0xd1, 0x13, 0xfd, 0xf8, 0x15, 0x54, 0xbd, 0xf8, 0x72, 0x56, 0x99, 0xc6, 0x5a, 0x47, - 0xef, 0x96, 0xed, 0x8a, 0x17, 0xdb, 0xca, 0xc4, 0xb7, 0xe2, 0x7b, 0x23, 0x8f, 0xa1, 0xce, 0xe9, - 0xb6, 0x18, 0x58, 0x6f, 0x60, 0x63, 0x31, 0x0b, 0xa1, 0x7f, 0x83, 0xea, 0x1e, 0x30, 0xc7, 0x97, - 0x49, 0x10, 0x03, 0xf2, 0x5d, 0x28, 0xab, 0x8b, 0xcc, 0x28, 0x74, 0xf4, 0x6e, 0xe5, 0xa4, 0xae, - 0x2a, 0x63, 0xb6, 0x7c, 0xe6, 0x61, 0x51, 0x20, 0x67, 0xd8, 0xed, 0x6a, 0xee, 0x82, 0xd1, 0xd1, - 0xfc, 0xde, 0xd0, 0x92, 0xf7, 0xc6, 0x01, 0xac, 0xcf, 0xab, 0x8f, 0x07, 0x2d, 0x12, 0x5d, 0x9d, - 0x1b, 0xc5, 0x2d, 0x20, 0x44, 0x4b, 0x4f, 0x88, 0x96, 0xf5, 0x47, 0x0d, 0x1a, 0x8b, 0x3c, 0xea, - 0x20, 0xf7, 0x60, 0x8d, 0x57, 0xd5, 0x94, 0x4b, 0x2a, 0xd2, 0x95, 0xed, 0xb9, 0x61, 0xf9, 0x08, - 0x0a, 0xa9, 0x23, 0xf8, 0x41, 0x22, 0x5a, 0x1d, 0xa3, 0x35, 0x55, 0xb4, 0xe9, 0xb8, 0x12, 0x71, - 0x9f, 0x42, 0xf3, 0x55, 0xb2, 0x3c, 0x65, 0xfa, 0x73, 0xaa, 0x99, 0x97, 0x16, 0xbb, 0x09, 0x45, - 0x69, 0x95, 0x6c, 0xfc, 0xb6, 0x4e, 0xc0, 0x4c, 0x9e, 0xc9, 0x8f, 0x83, 0xe8, 0x27, 0xc1, 0x88, - 0x2a, 0x84, 0xd9, 0x39, 0x6a, 0xc9, 0x73, 0xfc, 0x8b, 0x06, 0x3b, 0x19, 0x8b, 0x30, 0xe9, 0x4b, - 0xb1, 0x8a, 0x75, 0xc9, 0x58, 0x0f, 0xa1, 0x36, 0x73, 0x10, 0x37, 0xad, 0xb8, 0xd6, 0xd7, 0x95, - 0xf5, 0x0c, 0x6f, 0x5c, 0x7e, 0x25, 0x29, 0x37, 0x14, 0x21, 0x51, 0xfd, 0x55, 0x65, 0xfc, 0x19, - 0x57, 0xa0, 0x64, 0x95, 0x14, 0xef, 0xad, 0x92, 0xb7, 0xd0, 0xcc, 0x0c, 0x35, 0x0e, 0x83, 0x71, - 0x4c, 0xc9, 0xd3, 0x04, 0x98, 0x86, 0x60, 0x6d, 0x05, 0x96, 0x13, 0x6c, 0x02, 0xfb, 0xcf, 0x1a, - 0x34, 0x5e, 0x51, 0x27, 0xea, 0x0f, 0xef, 0xea, 0xf1, 0x52, 0x46, 0x8f, 0x97, 0x72, 0x7a, 0x7c, - 0x29, 0x91, 0xc5, 0x54, 0xd1, 0x70, 0x90, 0x20, 0x62, 0xb2, 0xdb, 0xf1, 0x5b, 0x49, 0xf2, 0xea, - 0x4c, 0x92, 0xad, 0xff, 0x69, 0xb0, 0xae, 0xb6, 0xf4, 0x0a, 0x6f, 0xec, 0x0c, 0xf5, 0x52, 0x61, - 0xcc, 0xdb, 0x01, 0x94, 0x69, 0x51, 0x20, 0xf4, 0xe5, 0xb7, 0x92, 0x78, 0x11, 0x14, 0x93, 0x2f, - 0x82, 0xc5, 0xeb, 0xba, 0xf4, 0x4d, 0xaf, 0xeb, 0x95, 0xcf, 0xbe, 0xae, 0xad, 0x00, 0x36, 0x97, - 0xcf, 0x22, 0x5f, 0x69, 0x78, 0x10, 0x21, 0x97, 0x31, 0xf9, 0xba, 0xc4, 0xc1, 0x42, 0x65, 0xe9, - 0xf7, 0x56, 0xd6, 0xd7, 0xd0, 0x78, 0x2e, 0x9f, 0x65, 0x8b, 0x94, 0x75, 0xd0, 0x27, 0x91, 0x2f, - 0x05, 0x88, 0x7f, 0x9e, 0xfc, 0x13, 0xa0, 0xa2, 0x7c, 0x4e, 0x5f, 0x5e, 0x90, 0xdf, 0x2d, 0xde, - 0x0c, 0xb2, 0xba, 0x88, 0x75, 0x47, 0xe9, 0xc9, 0xca, 0x32, 0x0f, 0xee, 0xf4, 0x11, 0x55, 0x6d, - 0xed, 0xff, 0xfe, 0xef, 0xff, 0xfd, 0x53, 0x61, 0x87, 0x34, 0x7a, 0x4b, 0xbf, 0x0f, 0x7a, 0x43, - 0xce, 0x73, 0x0b, 0x5b, 0x59, 0x0a, 0x42, 0x66, 0xd8, 0x77, 0xe8, 0x8b, 0xb9, 0x9d, 0x3a, 0x94, - 0x17, 0xfc, 0xfd, 0x6f, 0x1d, 0x22, 0x67, 0xdb, 0x34, 0x53, 0x9c, 0xb3, 0x4b, 0xe3, 0x87, 0xda, - 0x11, 0x71, 0xa1, 0xb6, 0xa8, 0x6e, 0x64, 0x3f, 0x5b, 0xf5, 0xee, 0xe3, 0x6b, 0x22, 0x5f, 0xc3, - 0xaa, 0x2f, 0xf3, 0x71, 0x96, 0x37, 0x50, 0x7b, 0x8d, 0x95, 0x31, 0x63, 0x49, 0x9d, 0xe4, 0x7d, - 0xc0, 0x66, 0x26, 0xb0, 0x03, 0xb5, 0xc5, 0x57, 0xc7, 0x7c, 0xfb, 0x99, 0xaf, 0x91, 0x5c, 0x16, - 0x03, 0x59, 0xc8, 0x51, 0x8a, 0x85, 0xbc, 0x86, 0x4a, 0xe2, 0xf9, 0x41, 0x66, 0x97, 0x42, 0xfa, - 0x4d, 0x62, 0xa6, 0x82, 0x52, 0xb0, 0x24, 0x0d, 0xeb, 0xc2, 0xe6, 0x39, 0x65, 0x36, 0xf5, 0x79, - 0xbf, 0x28, 0xff, 0x38, 0x23, 0x2f, 0xbb, 0x59, 0x15, 0x86, 0x95, 0x6d, 0x75, 0x10, 0xdd, 0x24, - 0x46, 0xc6, 0x19, 0x23, 0x2e, 0xb9, 0x82, 0xfa, 0x72, 0x53, 0x64, 0x50, 0xcc, 0x73, 0x96, 0xd5, - 0x40, 0xd6, 0x57, 0x48, 0xd3, 0x24, 0xbb, 0x29, 0x1a, 0xf5, 0x3b, 0x88, 0x50, 0xa8, 0x26, 0xb7, - 0x47, 0x9a, 0xd9, 0x9b, 0x16, 0x69, 0xba, 0x23, 0xa2, 0xfc, 0x4e, 0xf1, 0xbd, 0x98, 0x91, 0x11, - 0xd4, 0x16, 0x45, 0x65, 0x7e, 0xdc, 0x99, 0xc2, 0x6f, 0x36, 0xf3, 0xa6, 0x39, 0x59, 0x1b, 0xc9, - 0x76, 0xc9, 0x4e, 0x8a, 0x2c, 0x46, 0x6f, 0xe2, 0x42, 0x3d, 0xd1, 0x7a, 0x42, 0xb9, 0x1b, 0xcb, - 0xd9, 0x43, 0x73, 0x6e, 0x5d, 0xc9, 0xdc, 0x59, 0xdb, 0x69, 0x0e, 0xbe, 0x8e, 0xd7, 0xf0, 0x2f, - 0xa0, 0x7e, 0xfe, 0x40, 0x96, 0x6c, 0xb3, 0xd5, 0x42, 0x12, 0x83, 0xe4, 0x90, 0x90, 0x5f, 0xa6, - 0x04, 0x66, 0x7c, 0x4d, 0x23, 0x46, 0x72, 0x36, 0x9d, 0x1b, 0x8c, 0x85, 0x3c, 0x7b, 0x39, 0x9a, - 0x82, 0x98, 0x27, 0xff, 0xd2, 0x01, 0xe4, 0xc3, 0x9e, 0x4b, 0x6b, 0x20, 0xa4, 0x75, 0xe9, 0xa9, - 0xff, 0xc5, 0xf5, 0x71, 0x57, 0xc5, 0x23, 0x03, 0xf9, 0x2d, 0x6c, 0x67, 0xff, 0xbc, 0x20, 0x87, - 0x0a, 0xf6, 0xce, 0x9f, 0x1f, 0xb9, 0xc1, 0x1f, 0x20, 0xf5, 0xbe, 0x99, 0x4b, 0xcd, 0xcf, 0x32, - 0x54, 0xbf, 0x82, 0x96, 0xc9, 0xbf, 0x50, 0x96, 0x64, 0xbc, 0x47, 0xf9, 0xf1, 0xfa, 0xb0, 0x75, - 0xe6, 0x53, 0x27, 0x15, 0xed, 0xe7, 0x9e, 0xed, 0xb7, 0x90, 0xa9, 0x75, 0xb4, 0x97, 0xc7, 0xd4, - 0x73, 0x7c, 0xff, 0xd9, 0xf7, 0xff, 0xf6, 0xb1, 0xa5, 0x7d, 0xf8, 0xd8, 0xd2, 0xfe, 0xf3, 0xb1, - 0xa5, 0xbd, 0xff, 0xd4, 0x7a, 0xf4, 0xe1, 0x53, 0xeb, 0xd1, 0x3f, 0x3e, 0xb5, 0x1e, 0x81, 0xfc, - 0x8f, 0xeb, 0xa5, 0xf6, 0x76, 0x63, 0x14, 0x44, 0xd4, 0x0d, 0xfa, 0x12, 0xe8, 0xe9, 0xf5, 0x93, - 0x77, 0x2b, 0x48, 0xf6, 0xbd, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x15, 0xe4, 0xcf, 0xff, 0x20, - 0x13, 0x00, 0x00, + // 1636 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x58, 0xd1, 0x6e, 0x1b, 0x4d, + 0x15, 0xee, 0x7a, 0xed, 0xc4, 0x39, 0x76, 0x5c, 0x67, 0x12, 0x27, 0x9b, 0x75, 0x62, 0xbb, 0x1b, + 0x02, 0xfe, 0x23, 0x14, 0xab, 0x41, 0x70, 0xc1, 0x7f, 0x81, 0xf2, 0xa7, 0x25, 0x44, 0x42, 0xa8, + 0xda, 0x52, 0x55, 0xea, 0x4d, 0xd8, 0x7a, 0x27, 0xf6, 0xc2, 0xda, 0xbb, 0xec, 0x8e, 0x63, 0x12, + 0xc1, 0x0d, 0xe2, 0x1a, 0x55, 0x42, 0xe2, 0x49, 0x78, 0x08, 0x2e, 0x2b, 0x71, 0x03, 0xe2, 0x82, + 0xaa, 0xe5, 0x05, 0x78, 0x03, 0x34, 0x67, 0x66, 0xec, 0xb5, 0x77, 0x37, 0x49, 0xfb, 0xdf, 0xed, + 0x9c, 0x39, 0xf3, 0x7d, 0x73, 0xce, 0x9c, 0xf3, 0xcd, 0xd8, 0xd0, 0x70, 0x42, 0xaf, 0x77, 0xfd, + 0xb4, 0xe7, 0x06, 0xfd, 0xc9, 0x88, 0x8e, 0xd9, 0x71, 0x18, 0x05, 0x2c, 0x20, 0x2b, 0x4e, 0xe8, + 0x1d, 0x5f, 0x3f, 0x35, 0xdb, 0x83, 0x20, 0x18, 0xf8, 0xb4, 0x87, 0xd6, 0xb7, 0x93, 0xab, 0x1e, + 0xf3, 0x46, 0x34, 0x66, 0xce, 0x28, 0x14, 0x8e, 0xe6, 0xd6, 0x20, 0x18, 0x04, 0xf8, 0xd9, 0xe3, + 0x5f, 0xd2, 0xba, 0x27, 0x97, 0x71, 0x70, 0x67, 0x3c, 0x0e, 0x98, 0xc3, 0xbc, 0x60, 0x1c, 0xcb, + 0xd9, 0xe6, 0x32, 0x28, 0x1d, 0x85, 0xec, 0x46, 0x4e, 0xee, 0xc8, 0x0d, 0x39, 0x8c, 0x39, 0xfd, + 0xe1, 0x7c, 0x4b, 0xe6, 0x86, 0x9c, 0x98, 0xc4, 0x34, 0x12, 0x26, 0xeb, 0x43, 0x19, 0xca, 0xcf, + 0xe4, 0xc6, 0x49, 0x0d, 0x0a, 0x9e, 0x6b, 0x68, 0x1d, 0xad, 0xab, 0xdb, 0x05, 0xcf, 0x25, 0x5b, + 0x50, 0x62, 0x1e, 0xf3, 0xa9, 0x51, 0xe8, 0x68, 0xdd, 0x35, 0x5b, 0x0c, 0x88, 0x09, 0xe5, 0xdf, + 0xd0, 0x9b, 0x69, 0x10, 0xb9, 0xb1, 0xa1, 0xe3, 0xc4, 0x6c, 0x4c, 0x3a, 0x50, 0x71, 0x69, 0xdc, + 0x8f, 0xbc, 0x90, 0xef, 0xd6, 0x28, 0xe2, 0x74, 0xd2, 0x44, 0x76, 0x60, 0x95, 0xd3, 0x5f, 0x7a, + 0xae, 0x51, 0x42, 0xa2, 0x15, 0x3e, 0xbc, 0x40, 0xb2, 0x7e, 0x70, 0x4d, 0x23, 0x63, 0x45, 0x90, + 0xe1, 0x80, 0x5b, 0xa7, 0x9e, 0xcb, 0x86, 0xc6, 0x6a, 0x47, 0xeb, 0x96, 0x6c, 0x31, 0x20, 0xdb, + 0xb0, 0x32, 0xa4, 0xde, 0x60, 0xc8, 0x8c, 0x32, 0x9a, 0xe5, 0x88, 0x18, 0xb0, 0x1a, 0x46, 0xf4, + 0xda, 0xa3, 0x53, 0x63, 0x0d, 0x27, 0xd4, 0x90, 0xe3, 0x84, 0xce, 0x80, 0xc6, 0x06, 0x08, 0x1c, + 0x1c, 0x10, 0x02, 0xc5, 0xc9, 0xc4, 0x73, 0x8d, 0x0a, 0x52, 0xe2, 0x37, 0x39, 0x84, 0x9a, 0x1b, + 0x4c, 0xc7, 0x7e, 0xe0, 0xb8, 0x97, 0xfd, 0x60, 0x32, 0x66, 0x46, 0x15, 0x97, 0xac, 0x2b, 0xeb, + 0x19, 0x37, 0x92, 0x7d, 0x00, 0x0e, 0x2c, 0x5d, 0xd6, 0xd1, 0x65, 0x8d, 0x5b, 0xc4, 0xf4, 0x21, + 0xd4, 0xae, 0x9c, 0xeb, 0x20, 0xf2, 0x18, 0x95, 0x2e, 0x35, 0x81, 0xa2, 0xac, 0xc2, 0xed, 0x00, + 0xd6, 0xfb, 0xc1, 0x88, 0x27, 0x5f, 0x7a, 0x3d, 0x46, 0xaf, 0xaa, 0x34, 0x0a, 0xa7, 0x2d, 0x28, + 0xc5, 0xfd, 0x20, 0xa2, 0x46, 0x5d, 0xec, 0x1d, 0x07, 0xa4, 0x0d, 0x15, 0xfc, 0x90, 0x0b, 0x37, + 0x70, 0x0e, 0xd0, 0x34, 0x5b, 0x16, 0x46, 0x5e, 0x9f, 0x1a, 0x44, 0x86, 0xcc, 0x07, 0x3c, 0xe4, + 0xd8, 0xbb, 0xa5, 0xc6, 0x26, 0x26, 0x1f, 0xbf, 0x79, 0x3a, 0x63, 0xe6, 0xb0, 0x49, 0x6c, 0x6c, + 0x89, 0x74, 0x8a, 0x11, 0xf9, 0x09, 0x40, 0x3f, 0xa2, 0x0e, 0xa3, 0xee, 0xa5, 0xc3, 0x8c, 0x46, + 0x47, 0xeb, 0x56, 0x4e, 0xcc, 0x63, 0x51, 0x7a, 0xc7, 0xaa, 0xf4, 0x8e, 0x7f, 0xa9, 0xea, 0xf9, + 0x9b, 0xe2, 0xbb, 0xff, 0xb4, 0x35, 0x7b, 0x4d, 0xae, 0x39, 0x65, 0x1c, 0x60, 0x12, 0xba, 0x0a, + 0x60, 0xfb, 0xa1, 0x00, 0x72, 0x8d, 0x00, 0x70, 0xa9, 0x4f, 0x25, 0xc0, 0xce, 0x43, 0x01, 0xe4, + 0x9a, 0x53, 0x46, 0xce, 0xa0, 0x1a, 0x51, 0x91, 0x4d, 0x84, 0xd8, 0x7f, 0x20, 0x44, 0x65, 0xb6, + 0xea, 0x94, 0x91, 0xef, 0xc2, 0x63, 0xb5, 0x0b, 0x55, 0xbb, 0x06, 0xa6, 0x6f, 0x5d, 0x9a, 0x5f, + 0x89, 0x12, 0x36, 0xa1, 0xcc, 0xe7, 0xc7, 0xce, 0x88, 0x1a, 0xbb, 0xa2, 0x33, 0xd4, 0x98, 0x1f, + 0x57, 0xdf, 0x61, 0x74, 0x10, 0x44, 0x37, 0x7c, 0xbd, 0xd9, 0xd1, 0xbb, 0xba, 0x0d, 0xca, 0x74, + 0xe1, 0x92, 0xaf, 0xa0, 0x9e, 0x24, 0x41, 0x90, 0x26, 0x82, 0x3c, 0x4e, 0xb0, 0x20, 0x56, 0x1d, + 0x74, 0xfa, 0x3b, 0x66, 0xec, 0xe1, 0x2c, 0xff, 0x24, 0x27, 0x00, 0xf3, 0x6e, 0x37, 0x5a, 0x18, + 0x24, 0x39, 0x16, 0x0a, 0x74, 0x7c, 0x3a, 0x9b, 0xb1, 0x13, 0x5e, 0xa4, 0x03, 0x45, 0x4e, 0x64, + 0xb4, 0xd1, 0xbb, 0xaa, 0xbc, 0x39, 0x8b, 0x8d, 0x33, 0x7c, 0xcf, 0x74, 0xec, 0xbc, 0xf5, 0xe9, + 0xe5, 0xe0, 0xd6, 0x0b, 0x8d, 0x4e, 0x47, 0xeb, 0x96, 0x6d, 0x10, 0xa6, 0xf3, 0x5b, 0x2f, 0x14, + 0xe5, 0x3b, 0xbe, 0xa6, 0x11, 0xbb, 0xa4, 0x51, 0x14, 0x44, 0xc6, 0x13, 0xdc, 0x52, 0x55, 0x1a, + 0x9f, 0x73, 0x9b, 0xf5, 0x3d, 0x68, 0x3c, 0xc3, 0x00, 0x94, 0xce, 0xd8, 0xf4, 0xb7, 0x13, 0x1a, + 0xcf, 0xe5, 0x46, 0x17, 0x72, 0x63, 0xf5, 0x60, 0xdf, 0xa6, 0xd8, 0xf6, 0x36, 0xed, 0xdf, 0xf4, + 0xfd, 0x7b, 0x17, 0x3c, 0x07, 0x72, 0x4e, 0x59, 0x9e, 0x97, 0x52, 0xb1, 0x36, 0x54, 0xa6, 0x1e, + 0x1b, 0x5e, 0x3a, 0x13, 0x36, 0x0c, 0x22, 0xd4, 0xb2, 0xb2, 0x0d, 0xdc, 0x74, 0x8a, 0x16, 0xeb, + 0x4f, 0x05, 0xd8, 0xfc, 0xb9, 0x17, 0xa7, 0x80, 0x08, 0x14, 0xb9, 0x4c, 0x48, 0x28, 0xfc, 0x9e, + 0xb5, 0x4f, 0x21, 0xd1, 0x3e, 0x35, 0x28, 0x4c, 0x5d, 0x29, 0x85, 0x85, 0x29, 0x2a, 0xd9, 0x95, + 0x47, 0x7d, 0xd7, 0x28, 0x76, 0x74, 0xae, 0x64, 0x38, 0xe0, 0xd6, 0x20, 0x72, 0x69, 0x84, 0xb2, + 0xb7, 0x66, 0x8b, 0xc1, 0x72, 0x59, 0xac, 0xa4, 0xca, 0x22, 0xa1, 0x97, 0xab, 0x38, 0xa9, 0xf4, + 0x72, 0xde, 0xb4, 0xe5, 0x8e, 0x9e, 0x68, 0xda, 0x27, 0x50, 0xf5, 0xe2, 0xcb, 0x59, 0xf9, 0x1a, + 0x6b, 0x1d, 0xbd, 0x5b, 0xb6, 0x2b, 0x5e, 0x6c, 0x2b, 0x13, 0xdf, 0x8a, 0xef, 0x8d, 0x3c, 0x86, + 0x62, 0xa8, 0xdb, 0x62, 0x60, 0xbd, 0x86, 0x8d, 0xc5, 0x2c, 0x84, 0xfe, 0x0d, 0x5e, 0x01, 0x01, + 0x73, 0x7c, 0x99, 0x04, 0x31, 0x20, 0xdf, 0x87, 0xb2, 0xba, 0xed, 0x8c, 0x42, 0x47, 0xef, 0x56, + 0x4e, 0xea, 0xaa, 0x7c, 0x66, 0xcb, 0x67, 0x1e, 0x16, 0x05, 0x72, 0x86, 0x92, 0xa0, 0xe6, 0x2e, + 0x18, 0x1d, 0xcd, 0x2f, 0x17, 0x2d, 0x79, 0xb9, 0x1c, 0xc0, 0xfa, 0xbc, 0x44, 0x79, 0xd0, 0x22, + 0xd1, 0xd5, 0xb9, 0x51, 0x5c, 0x15, 0x42, 0xd9, 0xf4, 0x84, 0xb2, 0x59, 0x7f, 0xd6, 0xa0, 0xb1, + 0xc8, 0xa3, 0x0e, 0x72, 0x0f, 0xd6, 0x78, 0x55, 0x4d, 0xb9, 0xee, 0x22, 0x5d, 0xd9, 0x9e, 0x1b, + 0x96, 0x8f, 0xa0, 0x90, 0x3a, 0x82, 0x1f, 0x25, 0xa2, 0xd5, 0x31, 0x5a, 0x53, 0x45, 0x9b, 0x8e, + 0x2b, 0x11, 0xf7, 0x29, 0x34, 0x5f, 0x26, 0xcb, 0x53, 0xa6, 0x3f, 0xa7, 0x9a, 0x79, 0x69, 0xb1, + 0x9b, 0x50, 0x94, 0x56, 0xc9, 0xc6, 0x6f, 0xeb, 0x04, 0xcc, 0xe4, 0x99, 0xfc, 0x34, 0x88, 0x7e, + 0x16, 0x8c, 0xa8, 0x42, 0x98, 0x9d, 0xa3, 0x96, 0x3c, 0xc7, 0xbf, 0x69, 0xb0, 0x93, 0xb1, 0x08, + 0x93, 0xbe, 0x14, 0xab, 0x58, 0x97, 0x8c, 0xf5, 0x10, 0x6a, 0x33, 0x07, 0x71, 0x1d, 0x8b, 0xbb, + 0x7f, 0x5d, 0x59, 0xcf, 0xf0, 0x5a, 0xe6, 0x8d, 0xaf, 0xdc, 0x50, 0xa9, 0x74, 0xd9, 0xf8, 0xd2, + 0xf8, 0x0b, 0x2e, 0x53, 0xc9, 0x2a, 0x29, 0xde, 0x5b, 0x25, 0x6f, 0xa0, 0x99, 0x19, 0x6a, 0x1c, + 0x06, 0xe3, 0x98, 0x92, 0xaf, 0x13, 0x60, 0x1a, 0x82, 0xb5, 0x15, 0x58, 0x4e, 0xb0, 0x09, 0xec, + 0xbf, 0x6a, 0xd0, 0x78, 0x49, 0x9d, 0xa8, 0x3f, 0xbc, 0xab, 0xc7, 0x4b, 0x19, 0x3d, 0x5e, 0xca, + 0xe9, 0xf1, 0xa5, 0x44, 0x16, 0x53, 0x45, 0xc3, 0x41, 0x82, 0x88, 0xc9, 0x6e, 0xc7, 0x6f, 0xa5, + 0xdb, 0xab, 0x33, 0xdd, 0xb6, 0xfe, 0xa7, 0xc1, 0xba, 0xda, 0xd2, 0x4b, 0xbc, 0xd6, 0x33, 0xd4, + 0x4b, 0x85, 0x31, 0x6f, 0x07, 0x50, 0xa6, 0x45, 0x81, 0xd0, 0x97, 0x1f, 0x54, 0xe2, 0xd9, 0x50, + 0x4c, 0x3e, 0x1b, 0x16, 0xef, 0xf4, 0xd2, 0xb7, 0xbd, 0xd3, 0x57, 0x3e, 0xfb, 0x4e, 0xb7, 0x02, + 0xd8, 0x5c, 0x3e, 0x8b, 0x7c, 0xa5, 0xe1, 0x41, 0x84, 0x5c, 0xc6, 0xe4, 0x13, 0x14, 0x07, 0x0b, + 0x95, 0xa5, 0xdf, 0x5b, 0x59, 0x5f, 0x41, 0xe3, 0x99, 0x7c, 0xbb, 0x2d, 0x52, 0xd6, 0x41, 0x9f, + 0x44, 0xbe, 0x14, 0x20, 0xfe, 0x79, 0xf2, 0x2f, 0x80, 0x8a, 0xf2, 0x39, 0x7d, 0x71, 0x41, 0xfe, + 0xb0, 0x78, 0x33, 0xc8, 0xea, 0x22, 0xd6, 0x1d, 0xa5, 0x27, 0x2b, 0xcb, 0x3c, 0xb8, 0xd3, 0x47, + 0x54, 0xb5, 0xb5, 0xff, 0xc7, 0x7f, 0xfc, 0xf7, 0x2f, 0x85, 0x1d, 0xd2, 0xe8, 0x2d, 0xfd, 0x88, + 0xe8, 0x0d, 0x39, 0xcf, 0x2d, 0x6c, 0x65, 0x29, 0x08, 0x99, 0x61, 0xdf, 0xa1, 0x2f, 0xe6, 0x76, + 0xea, 0x50, 0x9e, 0xf3, 0x1f, 0x09, 0xd6, 0x21, 0x72, 0xb6, 0x4d, 0x33, 0xc5, 0x39, 0xbb, 0x34, + 0x7e, 0xac, 0x1d, 0x11, 0x17, 0x6a, 0x8b, 0xea, 0x46, 0xf6, 0xb3, 0x55, 0xef, 0x3e, 0xbe, 0x26, + 0xf2, 0x35, 0xac, 0xfa, 0x32, 0x1f, 0x67, 0x79, 0x0d, 0xb5, 0x57, 0x58, 0x19, 0x33, 0x96, 0xd4, + 0x49, 0xde, 0x07, 0x6c, 0x66, 0x02, 0x3b, 0x50, 0x5b, 0x7c, 0x75, 0xcc, 0xb7, 0x9f, 0xf9, 0x1a, + 0xc9, 0x65, 0x31, 0x90, 0x85, 0x1c, 0xa5, 0x58, 0xc8, 0x2b, 0xa8, 0x24, 0x9e, 0x1f, 0x64, 0x76, + 0x29, 0xa4, 0xdf, 0x24, 0x66, 0x2a, 0x28, 0x05, 0x4b, 0xd2, 0xb0, 0x2e, 0x6c, 0x9e, 0x53, 0x66, + 0x53, 0x9f, 0xf7, 0x8b, 0xf2, 0x8f, 0x33, 0xf2, 0xb2, 0x9b, 0x55, 0x61, 0x58, 0xd9, 0x56, 0x07, + 0xd1, 0x4d, 0x62, 0x64, 0x9c, 0x31, 0xe2, 0x92, 0x2b, 0xa8, 0x2f, 0x37, 0x45, 0x06, 0xc5, 0x3c, + 0x67, 0x59, 0x0d, 0x64, 0x3d, 0x41, 0x9a, 0x26, 0xd9, 0x4d, 0xd1, 0xa8, 0x1f, 0x4b, 0x84, 0x42, + 0x35, 0xb9, 0x3d, 0xd2, 0xcc, 0xde, 0xb4, 0x48, 0xd3, 0x1d, 0x11, 0xe5, 0x77, 0x8a, 0xef, 0xc5, + 0x8c, 0x8c, 0xa0, 0xb6, 0x28, 0x2a, 0xf3, 0xe3, 0xce, 0x14, 0x7e, 0xb3, 0x99, 0x37, 0xcd, 0xc9, + 0xda, 0x48, 0xb6, 0x4b, 0x76, 0x52, 0x64, 0x31, 0x7a, 0x13, 0x17, 0xea, 0x89, 0xd6, 0x13, 0xca, + 0xdd, 0x58, 0xce, 0x1e, 0x9a, 0x73, 0xeb, 0x4a, 0xe6, 0xce, 0xda, 0x4e, 0x73, 0xf0, 0x75, 0xbc, + 0x86, 0x7f, 0x05, 0xf5, 0xf3, 0x07, 0xb2, 0x64, 0x9b, 0xad, 0x16, 0x92, 0x18, 0x24, 0x87, 0x84, + 0xfc, 0x3a, 0x25, 0x30, 0xf8, 0x70, 0x27, 0x39, 0x9b, 0xce, 0x0d, 0xc6, 0x42, 0x9e, 0xbd, 0x1c, + 0x4d, 0x41, 0xcc, 0x93, 0x7f, 0xeb, 0x00, 0xf2, 0x61, 0xcf, 0xa5, 0x35, 0x10, 0xd2, 0xba, 0xf4, + 0xd4, 0xff, 0xe2, 0xfa, 0xb8, 0xab, 0xe2, 0x91, 0x81, 0xfc, 0x1e, 0xb6, 0xb3, 0x7f, 0x5e, 0x90, + 0x43, 0x05, 0x7b, 0xe7, 0xcf, 0x8f, 0xdc, 0xe0, 0x0f, 0x90, 0x7a, 0xdf, 0xcc, 0xa5, 0xe6, 0x67, + 0x19, 0xaa, 0x5f, 0x41, 0xcb, 0xe4, 0x5f, 0x28, 0x4b, 0x32, 0xde, 0xa3, 0xfc, 0x78, 0x7d, 0xd8, + 0x3a, 0xf3, 0xa9, 0x93, 0x8a, 0xf6, 0x73, 0xcf, 0xf6, 0x3b, 0xc8, 0xd4, 0x3a, 0xda, 0xcb, 0x63, + 0xea, 0x39, 0xbe, 0xff, 0xcd, 0x0f, 0xff, 0xfe, 0xb1, 0xa5, 0xbd, 0xff, 0xd8, 0xd2, 0x3e, 0x7c, + 0x6c, 0x69, 0xef, 0x3e, 0xb5, 0x1e, 0xbd, 0xff, 0xd4, 0x7a, 0xf4, 0xcf, 0x4f, 0xad, 0x47, 0x20, + 0xff, 0x08, 0x7b, 0xa1, 0xbd, 0xd9, 0x18, 0x05, 0x11, 0x75, 0x83, 0xbe, 0x04, 0xfa, 0xfa, 0xfa, + 0xe9, 0xdb, 0x15, 0x24, 0xfb, 0xc1, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0x39, 0x06, 0x7f, 0xa6, + 0x45, 0x13, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2086,6 +2095,15 @@ func (m *Document) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.ConvertError) > 0 { + i -= len(m.ConvertError) + copy(dAtA[i:], m.ConvertError) + i = encodeVarintDocument(dAtA, i, uint64(len(m.ConvertError))) + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0x8a + } if m.EnableGzip { i-- if m.EnableGzip { @@ -3267,6 +3285,10 @@ func (m *Document) Size() (n int) { if m.EnableGzip { n += 3 } + l = len(m.ConvertError) + if l > 0 { + n += 2 + l + sovDocument(uint64(l)) + } return n } @@ -4512,6 +4534,38 @@ func (m *Document) Unmarshal(dAtA []byte) error { } } m.EnableGzip = bool(v != 0) + case 33: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConvertError", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowDocument + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthDocument + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthDocument + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ConvertError = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipDocument(dAtA[iNdEx:]) diff --git a/api/v1/document.proto b/api/v1/document.proto index 4ed9f05..3b59fd2 100644 --- a/api/v1/document.proto +++ b/api/v1/document.proto @@ -47,6 +47,7 @@ message Document { Attachment attachment = 30; User user = 31; bool enable_gzip = 32; + string convert_error = 33; } message DeleteDocumentRequest { repeated int64 id = 1; } diff --git a/biz/document.go b/biz/document.go index 9937264..c575c60 100644 --- a/biz/document.go +++ b/biz/document.go @@ -474,6 +474,11 @@ func (s *DocumentAPIService) listDocument(opt *model.OptionGetDocumentList) (*pb } } + for docId, errStr := range s.dbModel.GetConvertError(docIds...) { + index := docIndexMap[docId] + pbDocs[index].ConvertError = errStr + } + for _, docUser := range docUsers { indexes := userIndexesMap[docUser.Id] for _, index := range indexes { diff --git a/model/document.go b/model/document.go index 8b6a27f..be54c26 100644 --- a/model/document.go +++ b/model/document.go @@ -608,6 +608,9 @@ func (m *DBModel) ConvertDocument() (err error) { } return } + defer func() { + m.SetDocumentConvertError(document.Id, err) + }() // 文档转为PDF cfg := m.GetConfigOfConverter() m.SetDocumentStatus(document.Id, DocumentStatusConverting) diff --git a/model/documentError.go b/model/documentError.go new file mode 100644 index 0000000..c86eeb7 --- /dev/null +++ b/model/documentError.go @@ -0,0 +1,68 @@ +package model + +import ( + "time" + + "go.uber.org/zap" + "gorm.io/gorm" +) + +type DocumentError struct { + Id int64 `form:"id" json:"id,omitempty" gorm:"primaryKey;autoIncrement;column:id;comment:;"` + Message string `form:"message" json:"message,omitempty" gorm:"column:message;type:text;comment:文档转换失败原因;"` + CreatedAt *time.Time `form:"created_at" json:"created_at,omitempty" gorm:"column:created_at;type:datetime;comment:创建时间;"` + UpdatedAt *time.Time `form:"updated_at" json:"updated_at,omitempty" gorm:"column:updated_at;type:datetime;comment:更新时间;"` +} + +func (DocumentError) TableName() string { + return tablePrefix + "document_error" +} + +// SetDocumentConvertError 设置文档转换失败的错误信息 +// 如果 err 为 nil,则删除转换失败的记录 +// 如果 err 不为 nil,则创建或更新转换失败的记录 +func (m *DBModel) SetDocumentConvertError(documentId int64, err error) error { + de := &DocumentError{ + Id: documentId, + } + if err == nil { + // 如果没有错误,则删除转换失败的记录 + err = m.db.Delete(de).Error + if err != nil { + m.logger.Error("SetConvertError", zap.Error(err)) + return err + } + return nil + } + de.Message = err.Error() + var exist DocumentError + if err = m.db.First(&exist, documentId).Error; err != nil { + // 如果不存在,则创建 + err = m.db.Create(de).Error + if err != nil { + m.logger.Error("SetConvertError", zap.Error(err)) + } + return err + } + // 如果存在,则更新 + return m.db.Model(&exist).Updates(de).Error +} + +func (m *DBModel) GetConvertError(documentIds ...int64) (errors map[int64]string) { + errors = make(map[int64]string) + if len(documentIds) == 0 { + return + } + + var des []DocumentError + err := m.db.Model(&DocumentError{}).Where("id IN (?)", documentIds).Find(&des).Error + if err != nil && err != gorm.ErrRecordNotFound { + m.logger.Error("GetConvertError", zap.Error(err)) + return + } + + for _, de := range des { + errors[de.Id] = de.Message + } + return +} diff --git a/model/init.go b/model/init.go index d148d07..26f48b1 100644 --- a/model/init.go +++ b/model/init.go @@ -144,6 +144,7 @@ func (m *DBModel) SyncDB() (err error) { &Config{}, &Document{}, &DocumentCategory{}, + &DocumentError{}, &DocumentScore{}, &DocumentRelate{}, &Download{}, diff --git a/web/assets/css/app.css b/web/assets/css/app.css new file mode 100644 index 0000000..b5bfa77 --- /dev/null +++ b/web/assets/css/app.css @@ -0,0 +1,83 @@ +body { + margin: 0; + padding: 0; + background-color: #fff; +} + +.pointer { + cursor: pointer; +} + +.btn-block { + width: 100%; +} + +.mgt-20px { + margin-top: 20px; +} + +.mgr-5px { + margin-right: 5px; +} + +.text-right { + text-align: right; +} + +.text-center { + text-align: center; +} + +.text-warning { + color: #f39c12; +} + +.text-danger { + color: #e74c3c; +} + +.float-right { + float: right; +} + +.float-left { + float: left; +} + +.no-border { + border: 0; +} + +.el-card__header { + font-weight: bold; +} + +.help-block { + color: #888; + font-size: 15px; +} + +.text-muted { + color: #bdc3c7; +} + +.el-image-viewer__canvas img { + background-color: #fff; +} + +.el-image__error, .el-image__inner, .el-image__placeholder { + background-color: #eee; +} + +.block { + display: block; +} + +@media screen and (max-width: 768px) { + .mgt-20px { + margin-top: 15px; + } + .el-main { + padding: 15px; + } +} diff --git a/web/assets/css/app.min.css b/web/assets/css/app.min.css new file mode 100644 index 0000000..05f132b --- /dev/null +++ b/web/assets/css/app.min.css @@ -0,0 +1 @@ +body{margin:0;padding:0;background-color:#fff}.pointer{cursor:pointer}.btn-block{width:100%}.mgt-20px{margin-top:20px}.mgr-5px{margin-right:5px}.text-right{text-align:right}.text-center{text-align:center}.text-warning{color:#f39c12}.text-danger{color:#e74c3c}.float-right{float:right}.float-left{float:left}.no-border{border:0}.el-card__header{font-weight:bold}.help-block{color:#888;font-size:15px}.text-muted{color:#bdc3c7}.el-image-viewer__canvas img{background-color:#fff}.el-image__error,.el-image__inner,.el-image__placeholder{background-color:#eee}.block{display:block}@media screen and (max-width: 768px){.mgt-20px{margin-top:15px}.el-main{padding:15px}} diff --git a/web/assets/css/app.scss b/web/assets/css/app.scss index 5cbc3d5..d4c999b 100644 --- a/web/assets/css/app.scss +++ b/web/assets/css/app.scss @@ -12,6 +12,8 @@ body{ .mgr-5px{margin-right: 5px;} .text-right{text-align: right;} .text-center{text-align: center;} +.text-warning{color: #f39c12;} +.text-danger{color: #e74c3c;} .float-right{float: right;} .float-left{float: left;} .no-border{border: 0;} diff --git a/web/components/TableList.vue b/web/components/TableList.vue index 6d0e1ab..c0a30d5 100644 --- a/web/components/TableList.vue +++ b/web/components/TableList.vue @@ -142,6 +142,7 @@ icon="el-icon-delete" :disabled="scope.row.disable_delete" @click="deleteRow(scope.row)" + class="text-danger" >删除 diff --git a/web/pages/admin/document/list.vue b/web/pages/admin/document/list.vue index 2ea3aee..b7bd3e5 100644 --- a/web/pages/admin/document/list.vue +++ b/web/pages/admin/document/list.vue @@ -47,6 +47,21 @@ @deleteRow="deleteRow" >