Merge remote-tracking branch 'origin/egrule' into staging
This commit is contained in:
commit
e54ae65ddb
@ -59,9 +59,6 @@ paths:
|
|||||||
rule:
|
rule:
|
||||||
type: string
|
type: string
|
||||||
format: base64
|
format: base64
|
||||||
egrule:
|
|
||||||
type: string
|
|
||||||
format: base64
|
|
||||||
certificate:
|
certificate:
|
||||||
type: string
|
type: string
|
||||||
description: только для status == nko
|
description: только для status == nko
|
||||||
@ -120,9 +117,6 @@ paths:
|
|||||||
rule:
|
rule:
|
||||||
type: string
|
type: string
|
||||||
format: base64
|
format: base64
|
||||||
egrule:
|
|
||||||
type: string
|
|
||||||
format: base64
|
|
||||||
certificate:
|
certificate:
|
||||||
type: string
|
type: string
|
||||||
description: только для status == nko
|
description: только для status == nko
|
||||||
|
@ -81,13 +81,6 @@ func (r *VerifyUserController) CreateVerification(c *fiber.Ctx) error {
|
|||||||
return fiber.NewError(fiber.StatusBadRequest, "rule file required")
|
return fiber.NewError(fiber.StatusBadRequest, "rule file required")
|
||||||
}
|
}
|
||||||
|
|
||||||
// EGRULE FILE
|
|
||||||
egruleFH, err := c.FormFile("egrule")
|
|
||||||
|
|
||||||
if err != nil || egruleFH.Size == 0 || egruleFH == nil {
|
|
||||||
return fiber.NewError(fiber.StatusBadRequest, "egrule file required")
|
|
||||||
}
|
|
||||||
|
|
||||||
// CERTIFICATE FILE
|
// CERTIFICATE FILE
|
||||||
var certFH *multipart.FileHeader
|
var certFH *multipart.FileHeader
|
||||||
if req.Status == "nko" {
|
if req.Status == "nko" {
|
||||||
@ -104,7 +97,7 @@ func (r *VerifyUserController) CreateVerification(c *fiber.Ctx) error {
|
|||||||
Accepted: false,
|
Accepted: false,
|
||||||
Status: req.Status,
|
Status: req.Status,
|
||||||
Comment: "",
|
Comment: "",
|
||||||
}, innFH, ruleFH, egruleFH, certFH)
|
}, innFH, ruleFH, certFH)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fiber.NewError(fiber.StatusInternalServerError, err.Error())
|
return fiber.NewError(fiber.StatusInternalServerError, err.Error())
|
||||||
}
|
}
|
||||||
@ -131,7 +124,7 @@ func (r *VerifyUserController) SetVerificationFile(c *fiber.Ctx) error {
|
|||||||
return fiber.NewError(fiber.StatusUnauthorized)
|
return fiber.NewError(fiber.StatusUnauthorized)
|
||||||
}
|
}
|
||||||
|
|
||||||
availableFiles := []string{"inn", "rule", "egrule", "certificate"}
|
availableFiles := []string{"inn", "rule", "certificate"}
|
||||||
var err error
|
var err error
|
||||||
var fileHeader *multipart.FileHeader
|
var fileHeader *multipart.FileHeader
|
||||||
var result *models.Verification
|
var result *models.Verification
|
||||||
|
@ -43,7 +43,7 @@ func (r *VerificationRepository) Insert(
|
|||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
userID string,
|
userID string,
|
||||||
record *models.Verification,
|
record *models.Verification,
|
||||||
innFH, ruleFH, egruleFH, certFH *multipart.FileHeader) (*models.Verification, error) {
|
innFH, ruleFH, certFH *multipart.FileHeader) (*models.Verification, error) {
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
record.ID = primitive.NewObjectIDFromTimestamp(now).Hex()
|
record.ID = primitive.NewObjectIDFromTimestamp(now).Hex()
|
||||||
record.UpdatedAt = now
|
record.UpdatedAt = now
|
||||||
@ -70,17 +70,6 @@ func (r *VerificationRepository) Insert(
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Put egrule file
|
|
||||||
egrule, err := egruleFH.Open()
|
|
||||||
if r.err(err) {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err = r.s3.PutObject(ctx, VerificationBucket, fmt.Sprintf("%s/%s/%s", r.folder, userID, egruleFH.Filename), egrule, egruleFH.Size, minio.PutObjectOptions{})
|
|
||||||
if r.err(err) {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Put certificate file
|
// Put certificate file
|
||||||
if certFH != nil {
|
if certFH != nil {
|
||||||
cert, err := certFH.Open()
|
cert, err := certFH.Open()
|
||||||
@ -111,10 +100,6 @@ func (r *VerificationRepository) Insert(
|
|||||||
Name: "rule",
|
Name: "rule",
|
||||||
Url: fmt.Sprintf("%s/%s/%s/%s", r.url, r.folder, userID, ruleFH.Filename),
|
Url: fmt.Sprintf("%s/%s/%s/%s", r.url, r.folder, userID, ruleFH.Filename),
|
||||||
},
|
},
|
||||||
{
|
|
||||||
Name: "egrule",
|
|
||||||
Url: fmt.Sprintf("%s/%s/%s/%s", r.url,r.folder, userID, egruleFH.Filename),
|
|
||||||
},
|
|
||||||
}...)
|
}...)
|
||||||
|
|
||||||
result, err := r.mongo.InsertOne(ctx, record)
|
result, err := r.mongo.InsertOne(ctx, record)
|
||||||
@ -210,38 +195,6 @@ func (r *VerificationRepository) UpdateFile(ctx context.Context, userID, fileNam
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
fileURL := fmt.Sprintf("%s/%s/%s/%s", r.url, r.folder, userID, fileHeader.Filename)
|
|
||||||
|
|
||||||
// remove old file
|
|
||||||
verification, err := r.GetByUserID(ctx, userID)
|
|
||||||
if r.err(err) {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
if verification == nil {
|
|
||||||
return nil, fmt.Errorf("no verification found")
|
|
||||||
}
|
|
||||||
|
|
||||||
found := false
|
|
||||||
for iterator, file := range verification.Files {
|
|
||||||
if file.Name != fileName {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
objectName := strings.ReplaceAll(file.Url, fmt.Sprintf("%v/%v/", r.url, VerificationBucket), "")
|
|
||||||
if err = r.s3.RemoveObject(ctx, VerificationBucket, objectName, minio.RemoveObjectOptions{}); r.err(err) {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
verification.Files[iterator] = models.VerificationFile{Name: file.Name, Url: fileURL}
|
|
||||||
found = true
|
|
||||||
}
|
|
||||||
|
|
||||||
if !found {
|
|
||||||
verification.Files = append(verification.Files, models.VerificationFile{Name: fileName, Url: fileURL})
|
|
||||||
}
|
|
||||||
|
|
||||||
// update in mongodb
|
|
||||||
result, err := r.Update(ctx, &models.Verification{ID: verification.ID, Files: verification.Files})
|
result, err := r.Update(ctx, &models.Verification{ID: verification.ID, Files: verification.Files})
|
||||||
if r.err(err) {
|
if r.err(err) {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -61,10 +61,6 @@ paths:
|
|||||||
type: file
|
type: file
|
||||||
contentMediaType: application/pdf
|
contentMediaType: application/pdf
|
||||||
contentEncoding: base64
|
contentEncoding: base64
|
||||||
egrule:
|
|
||||||
type: file
|
|
||||||
contentMediaType: application/pdf
|
|
||||||
contentEncoding: base64
|
|
||||||
certificate:
|
certificate:
|
||||||
type: file
|
type: file
|
||||||
description: только для status == nko
|
description: только для status == nko
|
||||||
|
@ -33,7 +33,6 @@ func Test_SetVerify(t *testing.T) {
|
|||||||
}{
|
}{
|
||||||
{"inn", "files/inn"},
|
{"inn", "files/inn"},
|
||||||
{"rule", "files/rule"},
|
{"rule", "files/rule"},
|
||||||
{"egrule", "files/egrule"},
|
|
||||||
{"certificate", "files/certificate"},
|
{"certificate", "files/certificate"},
|
||||||
}
|
}
|
||||||
for _, file := range files {
|
for _, file := range files {
|
||||||
|
@ -32,7 +32,6 @@ func Test_PutFile(t *testing.T) {
|
|||||||
}{
|
}{
|
||||||
{"inn", "files/inn"},
|
{"inn", "files/inn"},
|
||||||
{"rule", "files/rule"},
|
{"rule", "files/rule"},
|
||||||
{"egrule", "files/egrule"},
|
|
||||||
{"certificate", "files/certificate"},
|
{"certificate", "files/certificate"},
|
||||||
}
|
}
|
||||||
for _, file := range files {
|
for _, file := range files {
|
||||||
|
Loading…
Reference in New Issue
Block a user