Merge remote-tracking branch 'origin/egrule' into staging

This commit is contained in:
skeris 2024-07-19 16:04:39 +03:00
commit e54ae65ddb
6 changed files with 9 additions and 75 deletions

@ -59,9 +59,6 @@ paths:
rule:
type: string
format: base64
egrule:
type: string
format: base64
certificate:
type: string
description: только для status == nko
@ -120,9 +117,6 @@ paths:
rule:
type: string
format: base64
egrule:
type: string
format: base64
certificate:
type: string
description: только для status == nko

@ -81,13 +81,6 @@ func (r *VerifyUserController) CreateVerification(c *fiber.Ctx) error {
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
var certFH *multipart.FileHeader
if req.Status == "nko" {
@ -104,7 +97,7 @@ func (r *VerifyUserController) CreateVerification(c *fiber.Ctx) error {
Accepted: false,
Status: req.Status,
Comment: "",
}, innFH, ruleFH, egruleFH, certFH)
}, innFH, ruleFH, certFH)
if err != nil {
return fiber.NewError(fiber.StatusInternalServerError, err.Error())
}
@ -131,7 +124,7 @@ func (r *VerifyUserController) SetVerificationFile(c *fiber.Ctx) error {
return fiber.NewError(fiber.StatusUnauthorized)
}
availableFiles := []string{"inn", "rule", "egrule", "certificate"}
availableFiles := []string{"inn", "rule", "certificate"}
var err error
var fileHeader *multipart.FileHeader
var result *models.Verification

@ -43,7 +43,7 @@ func (r *VerificationRepository) Insert(
ctx context.Context,
userID string,
record *models.Verification,
innFH, ruleFH, egruleFH, certFH *multipart.FileHeader) (*models.Verification, error) {
innFH, ruleFH, certFH *multipart.FileHeader) (*models.Verification, error) {
now := time.Now()
record.ID = primitive.NewObjectIDFromTimestamp(now).Hex()
record.UpdatedAt = now
@ -70,17 +70,6 @@ func (r *VerificationRepository) Insert(
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
if certFH != nil {
cert, err := certFH.Open()
@ -105,15 +94,11 @@ func (r *VerificationRepository) Insert(
record.Files = append(record.Files, []models.VerificationFile{
{
Name: "inn",
Url: fmt.Sprintf("%s/%s/%s/%s", r.url,r.folder, userID, innFH.Filename),
Url: fmt.Sprintf("%s/%s/%s/%s", r.url, r.folder, userID, innFH.Filename),
},
{
Name: "rule",
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),
Url: fmt.Sprintf("%s/%s/%s/%s", r.url, r.folder, userID, ruleFH.Filename),
},
}...)
@ -210,38 +195,6 @@ func (r *VerificationRepository) UpdateFile(ctx context.Context, userID, fileNam
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})
if r.err(err) {
return nil, err

@ -61,10 +61,6 @@ paths:
type: file
contentMediaType: application/pdf
contentEncoding: base64
egrule:
type: file
contentMediaType: application/pdf
contentEncoding: base64
certificate:
type: file
description: только для status == nko

@ -33,7 +33,6 @@ func Test_SetVerify(t *testing.T) {
}{
{"inn", "files/inn"},
{"rule", "files/rule"},
{"egrule", "files/egrule"},
{"certificate", "files/certificate"},
}
for _, file := range files {

@ -32,7 +32,6 @@ func Test_PutFile(t *testing.T) {
}{
{"inn", "files/inn"},
{"rule", "files/rule"},
{"egrule", "files/egrule"},
{"certificate", "files/certificate"},
}
for _, file := range files {