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: 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 {