diff --git a/cve-vulner-manager/conf/app.conf b/cve-vulner-manager/conf/app.conf index f70de9a7cd394bd6846cd5b5c76d808cb9a069d6..44ffebb06df255f0a86790eeb601c8d0f1af4fa1 100644 --- a/cve-vulner-manager/conf/app.conf +++ b/cve-vulner-manager/conf/app.conf @@ -52,29 +52,17 @@ ParseMindsporeYamlTask = "30 3 * * 0-6" - - -; [mysql] -; dbhost = "${DB_URI||127.0.0.1}" -; dbport = 3310 -; dbuser = "${DB_USER||cve}" -; dbpwd = "${DB_PWD||***}" -; dbname = oneline_cvevulner -; dbprefix = cve_ -; maxidle = 30 -; maxconn = 3000 - - [mysql] -dbhost = "127.0.0.1" -dbport = 3306 -dbuser = "root" -dbpwd = "root" -dbname = cvevulner +dbhost = "${DB_URI||127.0.0.1}" +dbport = 3310 +dbuser = "${DB_USER||cve}" +dbpwd = "${DB_PWD||***}" +dbname = oneline_cvevulner dbprefix = cve_ maxidle = 30 maxconn = 3000 + [log] log_level = 7 log_dir = ./logs diff --git a/cve-vulner-manager/cve-timed-task/db_models/db_operations.go b/cve-vulner-manager/cve-timed-task/db_models/db_operations.go index 065dd56aca08961be64ebd35497fe0601e14aa4c..028d9f0afd08aa1de908257a8ffa8c8ab6199aac 100644 --- a/cve-vulner-manager/cve-timed-task/db_models/db_operations.go +++ b/cve-vulner-manager/cve-timed-task/db_models/db_operations.go @@ -7,14 +7,14 @@ import ( ) // UpdateYamlOriginMark Update origin data -func UpdateYamlOriginMark() error { +func UpdateYamlOriginMark(ORM orm.Ormer) error { sqlString := "update cve_open_guss_yaml set mark_bit = 2 where mark_bit = 1" _, err := ORM.Raw(sqlString).Exec() return err } // SelectYamlOriginData Query origin data -func SelectYamlOriginData(packageName, version string) (models.OpenGussYaml, error) { +func SelectYamlOriginData(packageName, version string, ORM orm.Ormer) (models.OpenGussYaml, error) { var openGussYaml models.OpenGussYaml sqlString := "SELECT id FROM cve_open_guss_yaml WHERE package_name = ? and version = ?" err := ORM.Raw(sqlString, packageName, version).QueryRow(&openGussYaml) @@ -22,20 +22,20 @@ func SelectYamlOriginData(packageName, version string) (models.OpenGussYaml, err } // InsertYamlOriginData insert origin data -func InsertYamlOriginData(openGussYaml *models.OpenGussYaml) error { +func InsertYamlOriginData(openGussYaml *models.OpenGussYaml, ORM orm.Ormer) error { sqlString := "insert into cve_open_guss_yaml(package_name,version,origin_url, status, cpe_name,create_time,update_time, mark_bit, repo_name) values(?,?,?,?,?,?,?,?,?)" _, err := ORM.Raw(sqlString, openGussYaml.PackageName, openGussYaml.Version, openGussYaml.OriginUrl, openGussYaml.Status, openGussYaml.CpeName, openGussYaml.CreateTime, openGussYaml.UpdateTime, openGussYaml.MarkBit, openGussYaml.Repo).Exec() return err } // UpdateYamlOriginData Update origin data -func UpdateYamlOriginData(openGussYaml *models.OpenGussYaml) (int64, error) { +func UpdateYamlOriginData(openGussYaml *models.OpenGussYaml, ORM orm.Ormer) (int64, error) { id, err := ORM.Update(openGussYaml, "OriginUrl", "Status", "CpeName", "UpdateTime", "Repo", "MarkBit") return id, err } // SelectYamlData Query data -func SelectYamlData(packageName, version string) ([]models.GitOpenEuler, int64, error) { +func SelectYamlData(packageName, version string, ORM orm.Ormer) ([]models.GitOpenEuler, int64, error) { var gitOpenEulerList []models.GitOpenEuler sqlString := "SELECT package_id, git_id FROM cve_git_open_euler WHERE package_name = ? and version = ? order by package_id desc" rowsAffected, err := ORM.Raw(sqlString, packageName, version).QueryRows(&gitOpenEulerList) @@ -43,7 +43,7 @@ func SelectYamlData(packageName, version string) ([]models.GitOpenEuler, int64, } // SelectYamlLastData Query the last data -func SelectYamlLastData() (models.GitOpenEuler, error) { +func SelectYamlLastData(ORM orm.Ormer) (models.GitOpenEuler, error) { var gitOpenEuler models.GitOpenEuler sqlString := "SELECT package_id FROM cve_git_open_euler order by git_id desc" err := ORM.Raw(sqlString).QueryRow(&gitOpenEuler) @@ -51,7 +51,7 @@ func SelectYamlLastData() (models.GitOpenEuler, error) { } // InsertYamlData insert data -func InsertYamlData(gitOpenEuler *models.GitOpenEuler) (int64, error) { +func InsertYamlData(gitOpenEuler *models.GitOpenEuler, ORM orm.Ormer) (int64, error) { sqlString := "insert into cve_git_open_euler(package_id,package_name,version,origin_url,create_time,update_time,cpe_packname,status) values(?,?,?,?,?,?,?,?)" result, err := ORM.Raw(sqlString, gitOpenEuler.PackageId, gitOpenEuler.PackageName, gitOpenEuler.Version, gitOpenEuler.OriginUrl, gitOpenEuler.CreateTime, gitOpenEuler.UpdateTime, gitOpenEuler.CpePackName, gitOpenEuler.Status).Exec() id, _ := result.LastInsertId() @@ -59,49 +59,49 @@ func InsertYamlData(gitOpenEuler *models.GitOpenEuler) (int64, error) { } // InsertYamlDetailData insert data details -func InsertYamlDetailData(gitPackageInfo *models.GitPackageInfo) error { +func InsertYamlDetailData(gitPackageInfo *models.GitPackageInfo, ORM orm.Ormer) error { sqlString := "insert into cve_git_package_info(git_id,package_name,version,origin_url,create_time,update_time,decription,status) values(?,?,?,?,?,?,?,?)" _, err := ORM.Raw(sqlString, gitPackageInfo.GitId, gitPackageInfo.PackageName, gitPackageInfo.Version, gitPackageInfo.OriginUrl, gitPackageInfo.CreateTime, gitPackageInfo.UpdateTime, gitPackageInfo.Decription, gitPackageInfo.Status).Exec() return err } // DeleteYamlOpenEulerDetailData delete origin data -func DeleteYamlOpenEulerDetailData(gitId int64) error { +func DeleteYamlOpenEulerDetailData(gitId int64, ORM orm.Ormer) error { sqlString := "delete from cve_git_package_info where git_id = ?" _, err := ORM.Raw(sqlString, gitId).Exec() return err } // DeleteYamlOpenEulerData delete origin data -func DeleteYamlOpenEulerData(gitId int64) error { +func DeleteYamlOpenEulerData(gitId int64, ORM orm.Ormer) error { sqlString := "delete from cve_git_open_euler where git_id = ?" _, err := ORM.Raw(sqlString, gitId).Exec() return err } // UpdateYamlData update data -func UpdateYamlData(gitOpenEuler *models.GitOpenEuler) error { +func UpdateYamlData(gitOpenEuler *models.GitOpenEuler, ORM orm.Ormer) error { sqlString := "update cve_git_open_euler set origin_url = ?,update_time = ?,cpe_packname = ?,status=? where package_id = ? and package_name = ? and version = ?" _, err := ORM.Raw(sqlString, gitOpenEuler.OriginUrl, gitOpenEuler.UpdateTime, gitOpenEuler.CpePackName, gitOpenEuler.Status, gitOpenEuler.PackageId, gitOpenEuler.PackageName, gitOpenEuler.Version).Exec() return err } // UpdateYamlDetailData Update data details -func UpdateYamlDetailData(gitPackageInfo *models.GitPackageInfo) error { +func UpdateYamlDetailData(gitPackageInfo *models.GitPackageInfo, ORM orm.Ormer) error { sqlString := "update cve_git_package_info set package_name = ?,version = ?,origin_url = ?, update_time = ?,status=? where git_id = ?" _, err := ORM.Raw(sqlString, gitPackageInfo.PackageName, gitPackageInfo.Version, gitPackageInfo.OriginUrl, gitPackageInfo.UpdateTime, gitPackageInfo.Status, gitPackageInfo.GitId).Exec() return err } // DeleteYamlOriginMark delete origin data -func DeleteYamlOriginMark() error { +func DeleteYamlOriginMark(ORM orm.Ormer) error { sqlString := "delete from cve_open_guss_yaml where mark_bit = 2" _, err := ORM.Raw(sqlString).Exec() return err } // SelectOpenEulerYamlData Query data -func SelectOpenEulerYamlData() ([]models.GitOpenEuler, int64, error) { +func SelectOpenEulerYamlData(ORM orm.Ormer) ([]models.GitOpenEuler, int64, error) { var gitOpenEulerList []models.GitOpenEuler sqlString := "SELECT package_id, git_id,package_name,version FROM cve_git_open_euler WHERE package_id >= ?" rowsAffected, err := ORM.Raw(sqlString, 10000000).QueryRows(&gitOpenEulerList) @@ -109,7 +109,7 @@ func SelectOpenEulerYamlData() ([]models.GitOpenEuler, int64, error) { } // SelectGaussYamlOriginData Query origin data -func SelectGaussYamlOriginData(packageName, version string) (models.OpenGussYaml, error) { +func SelectGaussYamlOriginData(packageName, version string, ORM orm.Ormer) (models.OpenGussYaml, error) { var openGussYaml models.OpenGussYaml sqlString := "SELECT id FROM cve_open_guss_yaml WHERE package_name = ? and version = ?" err := ORM.Raw(sqlString, packageName, version).QueryRow(&openGussYaml) @@ -117,7 +117,7 @@ func SelectGaussYamlOriginData(packageName, version string) (models.OpenGussYaml } // SelectMindSporeYamlOriginData Query origin data -func SelectMindSporeYamlOriginData(packageName, version string) (models.MindSporeYaml, error) { +func SelectMindSporeYamlOriginData(packageName, version string, ORM orm.Ormer) (models.MindSporeYaml, error) { var mindSporeYaml models.MindSporeYaml sqlString := "SELECT id FROM cve_mind_spore_yaml WHERE package_name = ? and version = ?" err := ORM.Raw(sqlString, packageName, version).QueryRow(&mindSporeYaml) @@ -125,144 +125,144 @@ func SelectMindSporeYamlOriginData(packageName, version string) (models.MindSpor } // SelectOpenLookengYamlOriginData Query origin data -func SelectOpenLookengYamlOriginData(packageName, version string) (models.OpenLookengYaml, error) { +func SelectOpenLookengYamlOriginData(packageName, version string, ORM orm.Ormer) (models.OpenLookengYaml, error) { var openLookengYaml models.OpenLookengYaml sqlString := "SELECT id FROM cve_open_lookeng_yaml WHERE package_name = ? and version = ?" err := ORM.Raw(sqlString, packageName, version).QueryRow(&openLookengYaml) return openLookengYaml, err } -func GetOneGitRepoGroups(sigName string) (models.GitRepoGroups, error) { +func GetOneGitRepoGroups(sigName string, ORM orm.Ormer) (models.GitRepoGroups, error) { var gitRepsGroups models.GitRepoGroups sqlString := "select * from cve_git_repo_groups where group_name = ?" err := ORM.Raw(sqlString, sigName).QueryRow(&gitRepsGroups) return gitRepsGroups, err } -func InsertOneGitRepoGroups(gitRepoGroups *models.GitRepoGroups) error { +func InsertOneGitRepoGroups(gitRepoGroups *models.GitRepoGroups, ORM orm.Ormer) error { sqlString := "insert into cve_git_repo_groups (group_name) values (?)" _, err := ORM.Raw(sqlString, gitRepoGroups.GroupName).Exec() return err } -func DeleteGitRepoMember(groupId int64) error { +func DeleteGitRepoMember(groupId int64, ORM orm.Ormer) error { sqlString := "delete from cve_gite_repo_member where group_id = ?" _, err := ORM.Raw(sqlString, groupId).Exec() return err } -func InsertOneGiteRepoMember(giteRepoMember *models.GiteRepoMember) error { +func InsertOneGiteRepoMember(giteRepoMember *models.GiteRepoMember, ORM orm.Ormer) error { sqlString := "insert into cve_gite_repo_member (group_id,member_name,member_type,create_time) values (?, ?, ?, ?)" _, err := ORM.Raw(sqlString, giteRepoMember.GroupId, giteRepoMember.MemberName, giteRepoMember.MemberType, giteRepoMember.CreateTime).Exec() return err } -func GetCveScoreListByBeforeDate(beforeDate string) ([]models.Score, int64, error) { +func GetCveScoreListByBeforeDate(beforeDate string, ORM orm.Ormer) ([]models.Score, int64, error) { var scoreList []models.Score sqlString := "select cve_id,cve_num from cve_score where nvd_score = 0 and update_time >= ? order by update_time desc" rowsAffected, err := ORM.Raw(sqlString, beforeDate).QueryRows(&scoreList) return scoreList, rowsAffected, err } -func GetCveVulnCenterList(cveDesc, repairTime, updateTime string) ([]models.VulnCenter, int64, error) { +func GetCveVulnCenterList(cveDesc, repairTime, updateTime string, ORM orm.Ormer) ([]models.VulnCenter, int64, error) { var vulnCenterList []models.VulnCenter sqlString := "select cve_id,cve_num from cve_vuln_center where (cve_desc = ? or repair_time = ?) and update_time >= ? order by cve_id desc" rowsAffected, err := ORM.Raw(sqlString, cveDesc, repairTime, updateTime).QueryRows(&vulnCenterList) return vulnCenterList, rowsAffected, err } -func GetCveIssueTemplate(nvdScore, nvdVector, cveBrief, updateTime string) ([]models.IssueTemplate, int64, error) { +func GetCveIssueTemplate(nvdScore, nvdVector, cveBrief, updateTime string, ORM orm.Ormer) ([]models.IssueTemplate, int64, error) { var issueTemplateList []models.IssueTemplate sqlString := "select cve_id,cve_num from cve_issue_template where (nvd_score = ? or nvd_vector = ? or cve_brief = ?) and update_time >= ? order by cve_id desc" rowsAffected, err := ORM.Raw(sqlString, nvdScore, nvdVector, cveBrief, updateTime).QueryRows(&issueTemplateList) return issueTemplateList, rowsAffected, err } -func GetOneVulnCenter(cveId, cveNum string) (models.VulnCenter, error) { +func GetOneVulnCenter(cveId, cveNum string, ORM orm.Ormer) (models.VulnCenter, error) { var VulnCenter models.VulnCenter sqlString := "select cve_num, pack_name, cve_version, cve_desc,repair_time,cve_status,cve_id from cve_vuln_center where cve_id = ? and cve_num = ? order by cve_id desc" err := ORM.Raw(sqlString, cveId, cveNum).QueryRow(&VulnCenter) return VulnCenter, err } -func UpdateVulnCenterTypeOne(vulnCenter models.VulnCenter) error { +func UpdateVulnCenterTypeOne(vulnCenter models.VulnCenter, ORM orm.Ormer) error { sqlString := "update cve_vuln_center set repair_time = ?,update_time=?, cve_status=? where cve_id=?" _, err := ORM.Raw(sqlString, vulnCenter.RepairTime, vulnCenter.UpdateTime, vulnCenter.Status, vulnCenter.CveId).Exec() return err } -func UpdateVulnCenterTypeTwo(vulnCenter models.VulnCenter) error { +func UpdateVulnCenterTypeTwo(vulnCenter models.VulnCenter, ORM orm.Ormer) error { sqlString := "update cve_vuln_center set cve_desc = ?,update_time=?, cve_status=? where cve_id=?" _, err := ORM.Raw(sqlString, vulnCenter.Description, vulnCenter.UpdateTime, vulnCenter.Status, vulnCenter.CveId).Exec() return err } -func GetCveScoreByCveIdAndCveNum(cveId int64, cveNum string) (models.Score, error) { +func GetCveScoreByCveIdAndCveNum(cveId int64, cveNum string, ORM orm.Ormer) (models.Score, error) { var score models.Score sqlString := "select id,nvd_score from cve_score where cve_id = ? and cve_num = ?" err := ORM.Raw(sqlString, cveId, cveNum).QueryRow(&score) return score, err } -func UpdateCveScore(score models.Score) error { +func UpdateCveScore(score models.Score, ORM orm.Ormer) error { sqlString := "update cve_score set nvd_score=?, n_vector_value=?, n_attack_vector=?, n_access_vector=?, n_attack_complexity=?, n_access_complexity=?, n_privilege_required=?, n_user_interaction=?, n_scope=?, n_confidentiality=?, n_integrity=?, n_availability=?, n_authentication=?, update_time=?,score_type=? where id = ?" _, err := ORM.Raw(sqlString, score.NVDScore, score.NvectorVule, score.NattackVector, score.NaccessVector, score.NattackComplexity, score.NaccessComplexity, score.NprivilegeRequired, score.NuserInteraction, score.Nscope, score.Nconfidentiality, score.Nintegrity, score.Navailability, score.Nauthentication, score.UpdateTime, score.ScoreType, score.Id).Exec() return err } -func GetIssueTemplateTypeOne(issueTemplate models.IssueTemplate) (models.IssueTemplate, error) { +func GetIssueTemplateTypeOne(issueTemplate models.IssueTemplate, ORM orm.Ormer) (models.IssueTemplate, error) { var issueTemplateResp models.IssueTemplate sqlString := "select template_id,nvd_score,nvd_vector,cve_brief from cve_issue_template where (nvd_score = ? or nvd_vector = ? or cve_brief = ?) and cve_id = ? and cve_num = ?" err := ORM.Raw(sqlString, issueTemplate.NVDScore, issueTemplate.NVDVector, issueTemplate.CveBrief, issueTemplate.CveId, issueTemplate.CveNum).QueryRow(&issueTemplateResp) return issueTemplateResp, err } -func UpdateCveIssueTemplateTypeOne(issueTemplate models.IssueTemplate) error { +func UpdateCveIssueTemplateTypeOne(issueTemplate models.IssueTemplate, ORM orm.Ormer) error { sqlString := "update cve_issue_template set nvd_score = ?, update_time=? where template_id = ?" _, err := ORM.Raw(sqlString, issueTemplate.NVDScore, issueTemplate.UpdateTime, issueTemplate.TemplateId).Exec() return err } -func UpdateCveIssueTemplateTypeTwo(issueTemplate models.IssueTemplate) error { +func UpdateCveIssueTemplateTypeTwo(issueTemplate models.IssueTemplate, ORM orm.Ormer) error { sqlString := "update cve_issue_template set nvd_vector = ?, update_time=? where template_id = ? " _, err := ORM.Raw(sqlString, issueTemplate.NVDVector, issueTemplate.UpdateTime, issueTemplate.TemplateId).Exec() return err } -func UpdateCveIssueTemplateTypeThree(issueTemplate models.IssueTemplate) error { +func UpdateCveIssueTemplateTypeThree(issueTemplate models.IssueTemplate, ORM orm.Ormer) error { sqlString := "update cve_issue_template set cve_brief = ?, update_time=? where template_id = ? " _, err := ORM.Raw(sqlString, issueTemplate.CveBrief, issueTemplate.UpdateTime, issueTemplate.TemplateId).Exec() return err } -func UpdateVulnCenter(vulnCenter models.VulnCenter) error { +func UpdateVulnCenter(vulnCenter models.VulnCenter, ORM orm.Ormer) error { sqlString := "update cve_vuln_center set update_time=?, cve_status=? where cve_id=?" _, err := ORM.Raw(sqlString, vulnCenter.UpdateTime, vulnCenter.Status, vulnCenter.CveId).Exec() return err } -func GetSpceError(cveNum, cveOwner, packName string) (models.SpecError, error) { +func GetSpceError(cveNum, cveOwner, packName string, ORM orm.Ormer) (models.SpecError, error) { var spceError models.SpecError sqlString := "select * from cve_spec_error where cve_num = ? and cve_owner = ? and pack_name = ?" err := ORM.Raw(sqlString, cveNum, cveOwner, packName).QueryRow(&spceError) return spceError, err } -func UpdateCveOriginExcel(originExcel models.OriginExcel) error { +func UpdateCveOriginExcel(originExcel models.OriginExcel, ORM orm.Ormer) error { sqlString := "update cve_origin_excel set cve_desc = ?, cve_status = ? where cve_num= ? and pack_name = ? and cve_version = ?" _, err := ORM.Raw(sqlString, originExcel.CveDesc, originExcel.CveStatus, originExcel.CveNum, originExcel.PackName, originExcel.CveVersion).Exec() return err } // UpdateMindYamlOriginMark UpdateYamlOriginMarkLookeng Update origin data -func UpdateMindYamlOriginMark() error { +func UpdateMindYamlOriginMark(ORM orm.Ormer) error { sqlString := "update cve_open_lookeng_yaml set mark_bit = 2 where mark_bit = 1" _, err := ORM.Raw(sqlString).Exec() return err } // SelectMindYamlOriginData Query origin data -func SelectMindYamlOriginData(packageName, version, repokey string) (models.OpenGussYaml, error) { +func SelectMindYamlOriginData(packageName, version, repokey string, ORM orm.Ormer) (models.OpenGussYaml, error) { var openGussYaml models.OpenGussYaml sqlString := "SELECT id FROM cve_mind_spore_yaml WHERE package_name = ? and version = ? and repo_name = ?" err := ORM.Raw(sqlString, packageName, version, repokey).QueryRow(&openGussYaml) @@ -270,64 +270,64 @@ func SelectMindYamlOriginData(packageName, version, repokey string) (models.Open } // InsertMindYamlOriginData insert origin data -func InsertMindYamlOriginData(mindSporeYaml *models.MindSporeYaml) error { +func InsertMindYamlOriginData(mindSporeYaml *models.MindSporeYaml, ORM orm.Ormer) error { sqlString := "insert into cve_mind_spore_yaml(package_name,version,origin_url, status, cpe_name,create_time,update_time, mark_bit, repo_name) values(?,?,?,?,?,?,?,?,?)" _, err := ORM.Raw(sqlString, mindSporeYaml.PackageName, mindSporeYaml.Version, mindSporeYaml.OriginUrl, mindSporeYaml.Status, mindSporeYaml.CpeName, mindSporeYaml.CreateTime, mindSporeYaml.UpdateTime, mindSporeYaml.MarkBit, mindSporeYaml.Repo).Exec() return err } // UpdateMindYamlOriginData Update origin data -func UpdateMindYamlOriginData(mindSporeYaml *models.MindSporeYaml) (int64, error) { +func UpdateMindYamlOriginData(mindSporeYaml *models.MindSporeYaml, ORM orm.Ormer) (int64, error) { id, err := ORM.Update(mindSporeYaml, "OriginUrl", "Status", "CpeName", "UpdateTime", "MarkBit") return id, err } // DeleteMindYamlOriginMark delete origin data -func DeleteMindYamlOriginMark() error { +func DeleteMindYamlOriginMark(ORM orm.Ormer) error { sqlString := "delete from cve_mind_spore_yaml where mark_bit = 2" _, err := ORM.Raw(sqlString).Exec() return err } -func SelectCveFileHashByFileName(fileName string) ([]interface{}, int64, error) { +func SelectCveFileHashByFileName(fileName string, ORM orm.Ormer) ([]interface{}, int64, error) { var list orm.ParamsList sqlString := "select file_hash from cve_file_hash where file_name = ?" num, err := ORM.Raw(sqlString, fileName).ValuesFlat(&list) return list, num, err } -func InsertCveFileHash(fileName, fileHash string) error { +func InsertCveFileHash(fileName, fileHash string, ORM orm.Ormer) error { sqlString := "insert into cve_file_hash (file_name, file_hash) values (?, ?)" _, err := ORM.Raw(sqlString, fileName, fileHash).Exec() return err } -func InsertSpecIssueAssigness(specIssueAssigness *models.SpecIssueAssigness) error { +func InsertSpecIssueAssigness(specIssueAssigness *models.SpecIssueAssigness, ORM orm.Ormer) error { sqlString := "insert ignore into cve_spec_issue_assigness (package_name, issue_assignee, status, create_time) values (?, ?, ?, ?)" _, err := ORM.Raw(sqlString, specIssueAssigness.PackageName, specIssueAssigness.Assignee, specIssueAssigness.Status, specIssueAssigness.CreateTime).Exec() return err } -func SelectIssueRepoWhiteListByPackageName(packageName string) (models.IssueRepoWhitelist, error) { +func SelectIssueRepoWhiteListByPackageName(packageName string, ORM orm.Ormer) (models.IssueRepoWhitelist, error) { var issueRepoWhiteList models.IssueRepoWhitelist sqlString := "select * from cve_issue_repo_whitelist where package_name = ?" err := ORM.Raw(sqlString, packageName).QueryRow(&issueRepoWhiteList) return issueRepoWhiteList, err } -func InsertIssueRepoWhiteList(issueRepoWhiteList *models.IssueRepoWhitelist) error { +func InsertIssueRepoWhiteList(issueRepoWhiteList *models.IssueRepoWhitelist, ORM orm.Ormer) error { sqlString := "insert into cve_issue_repo_whitelist (package_name, version, status, branchs, create_time, update_time, delete_time) values (?, ?, ?, ?, ?, ?, ?)" _, err := ORM.Raw(sqlString, issueRepoWhiteList.PackageName, issueRepoWhiteList.Version, issueRepoWhiteList.Status, issueRepoWhiteList.Branchs, issueRepoWhiteList.CreateTime, issueRepoWhiteList.UpdateTime, issueRepoWhiteList.DeleteTime).Exec() return err } -func UpdateIssueRepoWhiteList(issueRepoWhiteList models.IssueRepoWhitelist) error { +func UpdateIssueRepoWhiteList(issueRepoWhiteList models.IssueRepoWhitelist, ORM orm.Ormer) error { sqlString := "update cve_issue_repo_whitelist set status = ?, branchs = ?, update_time = ? where package_name = ? and version = ?" _, err := ORM.Raw(sqlString, issueRepoWhiteList.Status, issueRepoWhiteList.Branchs, issueRepoWhiteList.UpdateTime, issueRepoWhiteList.PackageName, issueRepoWhiteList.Version).Exec() return err } -func GetResults(status string) ([]models.IssueCreateRecord, int64, error) { +func GetResults(status string, ORM orm.Ormer) ([]models.IssueCreateRecord, int64, error) { lastMonthDate := time.Now().AddDate(0, -1, 0).Format("2006-01-02") var issueCreateRecordList []models.IssueCreateRecord sqlString := "select * from cve_issue_create_record where status = ? and create_time > ?" @@ -335,39 +335,39 @@ func GetResults(status string) ([]models.IssueCreateRecord, int64, error) { return issueCreateRecordList, rowsAffected, err } -func UpdateStatue(status string) error { +func UpdateStatue(status string, ORM orm.Ormer) error { sqlString := "update cve_issue_create_record set status = ?,update_time = ? where status = ?" _, err := ORM.Raw(sqlString, 4, time.Now().Format("2006-01-02 15:04:05"), status).Exec() return err } -func GetCveEmailListByEmailType(emailType string) ([]models.EmailList, int64, error) { +func GetCveEmailListByEmailType(emailType string, ORM orm.Ormer) ([]models.EmailList, int64, error) { var emailList []models.EmailList sqlString := "select email_name from cve_email_list where email_type=?" rowsAffected, err := ORM.Raw(sqlString, emailType).QueryRows(&emailList) return emailList, rowsAffected, err } -func SelectCvePackAgeCpeByPackName(packName string) (models.PackageCpe, error) { +func SelectCvePackAgeCpeByPackName(packName string, ORM orm.Ormer) (models.PackageCpe, error) { var packageCpe models.PackageCpe sqlString := "select * from cve_package_cpe where packname = ?" err := ORM.Raw(sqlString, packName).QueryRow(&packageCpe) return packageCpe, err } -func InsertCvePackAgeCpe(packageCpe *models.PackageCpe) error { +func InsertCvePackAgeCpe(packageCpe *models.PackageCpe, ORM orm.Ormer) error { sqlString := "insert into cve_package_cpe (packname,cpe_packname,create_time) values (?,?,?)" _, err := ORM.Raw(sqlString, packageCpe.PackName, packageCpe.CpePackName, packageCpe.CreateTime).Exec() return err } -func UpdateCvePackAgeCpe(packageCpe models.PackageCpe) error { +func UpdateCvePackAgeCpe(packageCpe models.PackageCpe, ORM orm.Ormer) error { sqlString := "update cve_package_cpe set cpe_packname=?, create_time=? where packname=?" _, err := ORM.Raw(sqlString, packageCpe.CpePackName, packageCpe.CreateTime, packageCpe.PackName).Exec() return err } -func GetCveOriginExcel() ([]models.OriginExcel, int64, error) { +func GetCveOriginExcel(ORM orm.Ormer) ([]models.OriginExcel, int64, error) { lastMonthDate := time.Now().AddDate(0, -1, 0).Format("2006-01-02") var originExcel []models.OriginExcel sqlString := "select * from cve_origin_excel where (cve_status = 3 or cve_status=4) and is_export = 1 and create_time > ?" @@ -375,81 +375,81 @@ func GetCveOriginExcel() ([]models.OriginExcel, int64, error) { return originExcel, rowsAffected, err } -func UpdateStatusTypeTwo() error { +func UpdateStatusTypeTwo(ORM orm.Ormer) error { sqlString := "update cve_origin_excel set is_export=2 where cve_status=3 or cve_status=4" _, err := ORM.Raw(sqlString).Exec() return err } -func GetCveSpecError(cveNum string) (models.SpecError, error) { +func GetCveSpecError(cveNum string, ORM orm.Ormer) (models.SpecError, error) { var specError models.SpecError sqlString := "SELECT * FROM cve_spec_error where cve_num = ?" err := ORM.Raw(sqlString, cveNum).QueryRow(&specError) return specError, err } -func InsertCveSpecError(specError *models.SpecError) (int64, error) { +func InsertCveSpecError(specError *models.SpecError, ORM orm.Ormer) (int64, error) { return ORM.Insert(specError) } -func UpdateCveSpecError(specError models.SpecError) error { +func UpdateCveSpecError(specError models.SpecError, ORM orm.Ormer) error { sqlString := "update cve_spec_error set cve_desc = ?, cve_owner = ?, cve_status = ?, pack_name = ?, update_time = ? where cve_num = ?" _, err := ORM.Raw(sqlString, specError.Description, specError.Owner, specError.Status, specError.PackName, specError.UpdateTime, specError.CveNum).Exec() return err } -func GetCveOriginExcelTypeTwo(cveNum, packName, cveVersion string) (models.OriginExcel, error) { +func GetCveOriginExcelTypeTwo(cveNum, packName, cveVersion string, ORM orm.Ormer) (models.OriginExcel, error) { var originExcel models.OriginExcel sqlString := "select * from cve_origin_excel where cve_num= ? and pack_name = ? and cve_version = ?" err := ORM.Raw(sqlString, cveNum, packName, cveVersion).QueryRow(&originExcel) return originExcel, err } -func UpdateCveOriginExcelTypeThree(originExcel models.OriginExcel) error { +func UpdateCveOriginExcelTypeThree(originExcel models.OriginExcel, ORM orm.Ormer) error { sqlString := "update cve_origin_excel set nvd_score=?, cve_level=?, cve_desc=?, repair_time=?, vector_value=?, attack_vector=?, access_vector=?, attack_complexity=?, access_complexity=?, privilege_required=?, user_interaction=?, scope=?, confidentiality=?, integrity=?, availability=?, authentication=?, cve_status=?, update_time=? where cve_num=? and pack_name = ? and cve_version = ?" _, err := ORM.Raw(sqlString, originExcel.NVDScore, originExcel.CveLevel, originExcel.CveDesc, originExcel.RepairTime, originExcel.NVDVector, originExcel.AttackVector, originExcel.AccessVector, originExcel.AttackComplexity, originExcel.AccessComplexity, originExcel.PrivilegeRequired, originExcel.UserInteraction, originExcel.Scope, originExcel.Confidentiality, originExcel.Integrity, originExcel.Availability, originExcel.Authentication, originExcel.CveStatus, originExcel.UpdateTime, originExcel.CveNum, originExcel.PackName, originExcel.CveVersion).Exec() return err } -func UpdateCveOriginExcelTypeFour(originExcel models.OriginExcel) error { +func UpdateCveOriginExcelTypeFour(originExcel models.OriginExcel, ORM orm.Ormer) error { sqlString := "update cve_origin_excel set nvd_score=?, cve_level=?, cve_desc=?, repair_time=?, vector_value=?, attack_vector=?, access_vector=?, attack_complexity=?, access_complexity=?, privilege_required=?, user_interaction=?, scope=?, confidentiality=?, integrity=?, availability=?, authentication=?, cve_status=?, update_time=?, score_type=? where cve_num=? and pack_name = ? and cve_version = ?" _, err := ORM.Raw(sqlString, originExcel.NVDScore, originExcel.CveLevel, originExcel.CveDesc, originExcel.RepairTime, originExcel.NVDVector, originExcel.AttackVector, originExcel.AccessVector, originExcel.AttackComplexity, originExcel.AccessComplexity, originExcel.PrivilegeRequired, originExcel.UserInteraction, originExcel.Scope, originExcel.Confidentiality, originExcel.Integrity, originExcel.Availability, originExcel.Authentication, originExcel.CveStatus, originExcel.UpdateTime, originExcel.ScoreType, originExcel.CveNum, originExcel.PackName, originExcel.CveVersion).Exec() return err } -func UpdateCveOriginExcelTypeFive(originExcel models.OriginExcel) error { +func UpdateCveOriginExcelTypeFive(originExcel models.OriginExcel, ORM orm.Ormer) error { sqlString := "update cve_origin_excel set cve_desc = ?, cve_status = ? where cve_num = ?" _, err := ORM.Raw(sqlString, originExcel.CveDesc, originExcel.CveStatus, originExcel.CveNum).Exec() return err } -func InsertCveOriginExcel(originExcel *models.OriginExcel) error { +func InsertCveOriginExcel(originExcel *models.OriginExcel, ORM orm.Ormer) error { sqlString := "INSERT INTO cve_origin_excel (cve_num, cve_url, cve_version, pack_name, score_type, nvd_score, cve_level, cve_desc, repair_time, vector_value, attack_vector, access_vector, attack_complexity, access_complexity, privilege_required, user_interaction, scope, confidentiality, integrity, availability, authentication, cve_status, create_time, update_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" _, err := ORM.Raw(sqlString, originExcel.CveNum, originExcel.CveUrl, originExcel.CveVersion, originExcel.PackName, originExcel.ScoreType, originExcel.NVDScore, originExcel.CveLevel, originExcel.CveDesc, originExcel.RepairTime, originExcel.NVDVector, originExcel.AttackVector, originExcel.AccessVector, originExcel.AttackComplexity, originExcel.AccessComplexity, originExcel.PrivilegeRequired, originExcel.UserInteraction, originExcel.Scope, originExcel.Confidentiality, originExcel.Integrity, originExcel.Availability, originExcel.Authentication, originExcel.CveStatus, originExcel.CreateTime, originExcel.UpdateTime).Exec() return err } -func SelectCveOriginExcel(scoreType string) ([]models.OriginExcel, int64, error) { +func SelectCveOriginExcel(scoreType string, ORM orm.Ormer) ([]models.OriginExcel, int64, error) { var originExcel []models.OriginExcel sqlString := "SELECT cve_num,pack_name,cve_version FROM cve_origin_excel WHERE score_type = ? OR score_type IS NULL OR cve_desc IS NULL OR nvd_score IS NULL" rowsAffected, err := ORM.Raw(sqlString, scoreType).QueryRows(&originExcel) return originExcel, rowsAffected, err } -func SelectCveVulnCenter() ([]models.VulnCenter, int64, error) { +func SelectCveVulnCenter(ORM orm.Ormer) ([]models.VulnCenter, int64, error) { var vulnCenter []models.VulnCenter sqlString := "SELECT cve_id, cve_num, repair_time FROM cve_vuln_center WHERE repair_time = '' OR repair_time IS NULL" rowsAffected, err := ORM.Raw(sqlString).QueryRows(&vulnCenter) return vulnCenter, rowsAffected, err } -func UpdateCveVulnCenter(repairTime, cveId string) error { +func UpdateCveVulnCenter(repairTime, cveId string, ORM orm.Ormer) error { sqlString := "update cve_vuln_center set repair_time = ? where cve_id = ?" _, err := ORM.Raw(sqlString, repairTime, cveId).Exec() return err } -func QueryCveByNumber(cveNum string) ([]models.VulnCenter, int64, error) { +func QueryCveByNumber(cveNum string, ORM orm.Ormer) ([]models.VulnCenter, int64, error) { var vulnCenter []models.VulnCenter sqlString := "select cve_num, pack_name, cve_version, cve_desc,repair_time,cve_status,cve_id from cve_vuln_center where cve_num = ? order by cve_id desc" rowsAffected, err := ORM.Raw(sqlString, cveNum).QueryRows(&vulnCenter) diff --git a/cve-vulner-manager/cve-timed-task/db_models/init_db.go b/cve-vulner-manager/cve-timed-task/db_models/init_db.go deleted file mode 100644 index 7692a99bcfc32b798f7d22c73285aab8af157cd1..0000000000000000000000000000000000000000 --- a/cve-vulner-manager/cve-timed-task/db_models/init_db.go +++ /dev/null @@ -1,13 +0,0 @@ -package db_models - -import ( - "github.com/astaxie/beego/orm" - _ "github.com/go-sql-driver/mysql" -) - -var ORM orm.Ormer - -func InitTimedTaskDB() { - myOrm := orm.NewOrm() - ORM = myOrm -} diff --git a/cve-vulner-manager/cve-timed-task/emailtask/issue_record_email.go b/cve-vulner-manager/cve-timed-task/emailtask/issue_record_email.go index beebeed56a401ce24f8738ae2ce3108c7b249f44..2b94aeda40f8ef8cd1b309258e079793fb4a7cd2 100644 --- a/cve-vulner-manager/cve-timed-task/emailtask/issue_record_email.go +++ b/cve-vulner-manager/cve-timed-task/emailtask/issue_record_email.go @@ -3,12 +3,14 @@ package emailtask import ( "cvevulner/cve-timed-task/db_models" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "io/ioutil" ) // Sending Query all recipients func Sending(filePath string) { - result, _, err := db_models.GetCveEmailListByEmailType("1") + ormModel := orm.NewOrm() + result, _, err := db_models.GetCveEmailListByEmailType("1", ormModel) if err != nil { logs.Error("db_models.GetCveEmailListByEmailType error:", err) return diff --git a/cve-vulner-manager/cve-timed-task/emailtask/sending_task.go b/cve-vulner-manager/cve-timed-task/emailtask/sending_task.go index 576852bd10e094dc11da2b6cd09bbd079fb0c7e7..f9e1cbe8dedf156f3e27f2465358cc9f77feb758 100644 --- a/cve-vulner-manager/cve-timed-task/emailtask/sending_task.go +++ b/cve-vulner-manager/cve-timed-task/emailtask/sending_task.go @@ -3,11 +3,13 @@ package emailtask import ( "cvevulner/cve-timed-task/db_models" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "io/ioutil" ) func SendingTypeTwo(filePath string) { - result, _, err := db_models.GetCveEmailListByEmailType("1") + ormModel := orm.NewOrm() + result, _, err := db_models.GetCveEmailListByEmailType("1", ormModel) if err != nil { logs.Error("db_models.GetCveEmailListByEmailType error:", err) return diff --git a/cve-vulner-manager/cve-timed-task/gitwebtask/gene_group.go b/cve-vulner-manager/cve-timed-task/gitwebtask/gene_group.go index e817f41e01015b33e19694b71d4939f3b6b1744f..12d4113f30bbe62a323c23f4d83ad7f5cf3caabc 100644 --- a/cve-vulner-manager/cve-timed-task/gitwebtask/gene_group.go +++ b/cve-vulner-manager/cve-timed-task/gitwebtask/gene_group.go @@ -14,6 +14,7 @@ import ( ) func Handle() { + ormModel := orm.NewOrm() url := "https://gitee.com/openeuler/community/tree/master/sig" doc, err := util.UrlToHTML(url) if err != nil { @@ -44,33 +45,33 @@ func Handle() { } logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - _, err = db_models.GetOneGitRepoGroups(sigName) + _, err = db_models.GetOneGitRepoGroups(sigName, ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { err = db_models.InsertOneGitRepoGroups(&models.GitRepoGroups{ GroupName: sigName, - }) + }, ormModel) if err != nil { logs.Error("db_models.InsertOneGitRepoGroups error:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } } } else { logs.Error("db_models.InsertOneGitRepoGroups error:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } } } else { - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) } @@ -93,12 +94,12 @@ func Handle() { sigsList = append(sigsList, s) } for _, s := range sigsList { - gitRepoGroup, err := db_models.GetOneGitRepoGroups(s.sigName) + gitRepoGroup, err := db_models.GetOneGitRepoGroups(s.sigName, ormModel) if err != nil { logs.Warn("db_models.GetOneGitRepoGroups error:", err.Error()) continue } - err = db_models.DeleteGitRepoMember(gitRepoGroup.GroupId) + err = db_models.DeleteGitRepoMember(gitRepoGroup.GroupId, ormModel) if err != nil { logs.Warn("db_models.DeleteGitRepoMember error:", err.Error()) continue @@ -126,7 +127,7 @@ func Handle() { MemberType: "Maintainer", CreateTime: time.Now().Format("2006-01-02 15:04:05"), } - err = db_models.InsertOneGiteRepoMember(giteRepoMember) + err = db_models.InsertOneGiteRepoMember(giteRepoMember, ormModel) if err != nil { logs.Error("db_models.InsertOneGiteRepoMember error:", err.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/start.go b/cve-vulner-manager/cve-timed-task/start.go index 39c24cb608c909682b116e5059ade1493a02bbff..22ddeab8b27bac7a660e253f4fe0c72c0d38eb8c 100644 --- a/cve-vulner-manager/cve-timed-task/start.go +++ b/cve-vulner-manager/cve-timed-task/start.go @@ -1,17 +1,7 @@ package cve_timed_task -import ( - "cvevulner/cve-timed-task/controller" - "cvevulner/cve-timed-task/db_models" -) +import "cvevulner/cve-timed-task/controller" func StartCveTimedTask() error { - - db_models.InitTimedTaskDB() - - err := controller.StartTimerTask() - if err != nil { - return err - } - return nil + return controller.StartTimerTask() } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/common.go b/cve-vulner-manager/cve-timed-task/tabletask/common.go index c8945cdf094d01c3afaf37aaefbffeb99daeec19..a4cd58c005c0bf4e83a53e317520a51235bb3415 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/common.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/common.go @@ -8,8 +8,8 @@ import ( ) // DeleteYamlData delete yaml data -func DeleteYamlData() { - packagesData, rowsAffected, err := db_models.SelectOpenEulerYamlData() +func DeleteYamlData(ormModel orm.Ormer) { + packagesData, rowsAffected, err := db_models.SelectOpenEulerYamlData(ormModel) if err != nil { logs.Error("db_models.SelectOpenEulerYamlData error:", err.Error()) return @@ -17,34 +17,34 @@ func DeleteYamlData() { if rowsAffected > 0 { for _, v := range packagesData { if v.PackageId >= 10000000 { - _, errg := db_models.SelectGaussYamlOriginData(v.PackageName, v.Version) - _, errm := db_models.SelectMindSporeYamlOriginData(v.PackageName, v.Version) - _, erro := db_models.SelectOpenLookengYamlOriginData(v.PackageName, v.Version) + _, errg := db_models.SelectGaussYamlOriginData(v.PackageName, v.Version, ormModel) + _, errm := db_models.SelectMindSporeYamlOriginData(v.PackageName, v.Version, ormModel) + _, erro := db_models.SelectOpenLookengYamlOriginData(v.PackageName, v.Version, ormModel) if errors.Is(orm.ErrNoRows, errg) && errors.Is(orm.ErrNoRows, errm) && errors.Is(orm.ErrNoRows, erro) { logs.Info("ID of the currently deleted data: ", v.GitId) //open transaction - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - err = db_models.DeleteYamlOpenEulerDetailData(v.GitId) + err = db_models.DeleteYamlOpenEulerDetailData(v.GitId, ormModel) if err != nil { - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - err = db_models.DeleteYamlOpenEulerData(v.GitId) + err = db_models.DeleteYamlOpenEulerData(v.GitId, ormModel) if err != nil { - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/crawltask.go b/cve-vulner-manager/cve-timed-task/tabletask/crawltask.go index da06e58fea0e8bca3e8686b49bfcbbda0cd113f2..92f9c8a0896e9ee49a160543dd2010d1c0f4ddc1 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/crawltask.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/crawltask.go @@ -1,12 +1,13 @@ package tabletask import ( + "strings" + "time" + "cvevulner/cve-timed-task/util" "github.com/antchfx/htmlquery" "github.com/astaxie/beego/logs" "github.com/pkg/errors" - "strings" - "time" ) type XpathList struct { @@ -34,13 +35,11 @@ func Crawling(url string) (XpathList, error) { xpathList := XpathList{} if url == "" || !strings.Contains(url, "http") { - logs.Error("url is not standardized:", url) return xpathList, errors.New("url is not standardized") } html, err := util.UrlToHTML(url) if err != nil { - logs.Error("util.UrlToHTML error:", err.Error(), url) return xpathList, err } //xpathList.CveDesc diff --git a/cve-vulner-manager/cve-timed-task/tabletask/export_excel_task.go b/cve-vulner-manager/cve-timed-task/tabletask/export_excel_task.go index 80cfbf946aedb3a2e1e84c88f018de9cf9960728..603f6de92601f9e2ef3a7c973aa0cac8af9deaaf 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/export_excel_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/export_excel_task.go @@ -4,11 +4,13 @@ import ( "cvevulner/cve-timed-task/db_models" "fmt" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "github.com/xuri/excelize/v2" ) func GenerateExcels(status, path string) { - results, rowsAffected, err := db_models.GetResults(status) + ormModel := orm.NewOrm() + results, rowsAffected, err := db_models.GetResults(status, ormModel) if err != nil { logs.Error("db_models.GetResults error:", err) return @@ -42,7 +44,7 @@ func GenerateExcels(status, path string) { logs.Error("f.SaveAs error: ", err, path) } - err = db_models.UpdateStatue(status) + err = db_models.UpdateStatue(status, ormModel) if err != nil { logs.Error("db_models.UpdateStatue error: ", err) } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/gauss_yaml.go b/cve-vulner-manager/cve-timed-task/tabletask/gauss_yaml.go index 9b095e2ba0663036550eabc067bbcc9efb9faff0..869daa99ae5a56d18260a6d553f2e9264b0ba2a3 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/gauss_yaml.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/gauss_yaml.go @@ -48,9 +48,9 @@ func DownloadGuessYaml() (string, error) { return yamlFileName, nil } -func StoreYamlData(yamlData map[string]map[string]string) { +func StoreYamlData(yamlData map[string]map[string]string, ormModel orm.Ormer) { if len(yamlData) > 0 { - err := db_models.UpdateYamlOriginMark() + err := db_models.UpdateYamlOriginMark(ormModel) if err != nil { logs.Error("db_models.UpdateYamlOriginMark error:", err.Error()) return @@ -61,12 +61,12 @@ func StoreYamlData(yamlData map[string]map[string]string) { } //open transaction logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - originData, err := db_models.SelectYamlOriginData(k, v["version"]) + originData, err := db_models.SelectYamlOriginData(k, v["version"], ormModel) now := time.Now() if err != nil { if errors.Is(orm.ErrNoRows, err) { @@ -82,10 +82,10 @@ func StoreYamlData(yamlData map[string]map[string]string) { MarkBit: 1, Repo: "security", } - err = db_models.InsertYamlOriginData(openGuessYaml) + err = db_models.InsertYamlOriginData(openGuessYaml, ormModel) if err != nil { logs.Error("db_models.InsertYamlOriginData error:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -94,7 +94,7 @@ func StoreYamlData(yamlData map[string]map[string]string) { logs.Info("insert OpenGussYaml success") } else { logs.Error("db_models.SelectYamlOriginData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -111,20 +111,20 @@ func StoreYamlData(yamlData map[string]map[string]string) { Repo: "security", MarkBit: 1, } - _, err = db_models.UpdateYamlOriginData(openGuessYaml) + _, err = db_models.UpdateYamlOriginData(openGuessYaml, ormModel) if err != nil { logs.Error("db_models.UpdateYamlOriginData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } } - packAgesData, rowsAffected, err := db_models.SelectYamlData(k, v["version"]) + packAgesData, rowsAffected, err := db_models.SelectYamlData(k, v["version"], ormModel) if err != nil { logs.Error("db_models.SelectYamlData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -133,13 +133,13 @@ func StoreYamlData(yamlData map[string]map[string]string) { if rowsAffected == 0 { logs.Warn("No record found, Create a record") var packId int64 - gitOpenEuler, err := db_models.SelectYamlLastData() + gitOpenEuler, err := db_models.SelectYamlLastData(ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { packId = 10000000 } else { logs.Error("db_models.SelectYamlLastData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -162,10 +162,10 @@ func StoreYamlData(yamlData map[string]map[string]string) { CpePackName: v["cpeName"], Status: 1, } - lastId, err := db_models.InsertYamlData(goe) + lastId, err := db_models.InsertYamlData(goe, ormModel) if err != nil { logs.Error("db_models.InsertYamlData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -181,10 +181,10 @@ func StoreYamlData(yamlData map[string]map[string]string) { Decription: "", Status: 0, } - err = db_models.InsertYamlDetailData(gpi) + err = db_models.InsertYamlDetailData(gpi, ormModel) if err != nil { logs.Error("db_models.InsertYamlDetailData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -193,19 +193,19 @@ func StoreYamlData(yamlData map[string]map[string]string) { } else { if rowsAffected > 1 { for _, pv := range packAgesData[1:] { - err = db_models.DeleteYamlOpenEulerDetailData(pv.GitId) + err = db_models.DeleteYamlOpenEulerDetailData(pv.GitId, ormModel) if err != nil { logs.Error("db_models.DeleteYamlOpenEulerDetailData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - err = db_models.DeleteYamlOpenEulerData(pv.GitId) + err = db_models.DeleteYamlOpenEulerData(pv.GitId, ormModel) if err != nil { logs.Error("db_models.DeleteYamlOpenEulerData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -222,10 +222,10 @@ func StoreYamlData(yamlData map[string]map[string]string) { PackageName: k, Version: v["version"], } - err = db_models.UpdateYamlData(goe) + err = db_models.UpdateYamlData(goe, ormModel) if err != nil { logs.Error("db_models.UpdateYamlData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -239,10 +239,10 @@ func StoreYamlData(yamlData map[string]map[string]string) { Status: 0, GitId: packAgesData[0].GitId, } - err = db_models.UpdateYamlDetailData(gpi) + err = db_models.UpdateYamlDetailData(gpi, ormModel) if err != nil { logs.Error("db_models.UpdateYamlDetailData", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -250,14 +250,14 @@ func StoreYamlData(yamlData map[string]map[string]string) { } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue } logs.Info("Transaction committed successfully", k) } - err = db_models.DeleteYamlOriginMark() + err = db_models.DeleteYamlOriginMark(ormModel) if err != nil { logs.Error("db_models.DeleteYamlOriginMark error:", err.Error()) } @@ -272,6 +272,7 @@ func StoreYamlData(yamlData map[string]map[string]string) { //3. Parse yaml //4. Save in mysql func ProcGaussYaml() { + ormModel := orm.NewOrm() yamlFileName, err := DownloadGuessYaml() if err != nil { logs.Error("DownloadGuessYaml error:", err.Error()) @@ -284,8 +285,8 @@ func ProcGaussYaml() { logs.Error("util.ParseYaml error:", yamlFileName, err) return } - StoreYamlData(yamlData) + StoreYamlData(yamlData, ormModel) - DeleteYamlData() + DeleteYamlData(ormModel) } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/import_excel_task.go b/cve-vulner-manager/cve-timed-task/tabletask/import_excel_task.go index ea56900817f51343b09dac318293c8a6ae9d51b1..3e20d4b760d9ff03655f7cbacb2d5f0c6a3fd37f 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/import_excel_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/import_excel_task.go @@ -18,6 +18,7 @@ import ( ) func ImportDataTypeTwo() { + ormModel := orm.NewOrm() filePath, err := downloadfiletask.HandleThree() if err != nil { logs.Error("downloadfiletask.HandleThree error:", err) @@ -52,15 +53,15 @@ func ImportDataTypeTwo() { sum := hash.Sum(nil) hashValue := hex.EncodeToString(sum) logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName) + list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName, ormModel) if err != nil { logs.Error("db_models.SelectCveFileHashByFileName :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -68,23 +69,23 @@ func ImportDataTypeTwo() { } if rowsAffected > 0 && util.InSlice(list, hashValue) { logs.Info("file has been parsed", fileName) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } _ = os.Remove(filePath + fileName) continue } - err = db_models.InsertCveFileHash(fileName, hashValue) + err = db_models.InsertCveFileHash(fileName, hashValue, ormModel) if err != nil { logs.Error("db_models.InsertCveFileHash :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue @@ -133,13 +134,13 @@ func ImportDataTypeTwo() { } else { version = "" } - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - _, err = db_models.SelectIssueRepoWhiteListByPackageName(row[0]) + _, err = db_models.SelectIssueRepoWhiteListByPackageName(row[0], ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { err = db_models.InsertIssueRepoWhiteList(&models.IssueRepoWhitelist{ @@ -148,10 +149,10 @@ func ImportDataTypeTwo() { Status: status, Branchs: branchs, CreateTime: now, - }) + }, ormModel) if err != nil { logs.Error("db_models.InsertIssueRepoWhiteList:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -159,7 +160,7 @@ func ImportDataTypeTwo() { } } else { logs.Error("db_models.SelectIssueRepoWhiteListByPackageName error", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -172,17 +173,17 @@ func ImportDataTypeTwo() { UpdateTime: now, PackageName: packName, Version: version, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateIssueRepoWhiteList error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/mapping_task.go b/cve-vulner-manager/cve-timed-task/tabletask/mapping_task.go index a3dd6a6af43cd41faf41aa9e01131ede1d146cf0..0c9fade5202bba4b5b5de59ad645e6e8d236742b 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/mapping_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/mapping_task.go @@ -19,6 +19,7 @@ import ( // ToMysql Data stored in the database func ToMysql() { + ormModel := orm.NewOrm() filePath, err := downloadfiletask.HandleTwo() if err != nil { logs.Error("downloadfiletask.HandleTwo error:", err) @@ -54,15 +55,15 @@ func ToMysql() { sum := hash.Sum(nil) hashValue := hex.EncodeToString(sum) - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName) + list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName, ormModel) if err != nil { logs.Error("db_models.SelectCveFileHashByFileName :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -71,7 +72,7 @@ func ToMysql() { if rowsAffected > 0 && util.InSlice(list, hashValue) { logs.Info("file has been parsed", fileName) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -95,16 +96,16 @@ func ToMysql() { continue } - err = db_models.InsertCveFileHash(fileName, hashValue) + err = db_models.InsertCveFileHash(fileName, hashValue, ormModel) if err != nil { logs.Error("db_models.InsertCveFileHash :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue @@ -138,22 +139,22 @@ func ToMysql() { cpePackName = "" } - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - packageCpe, err := db_models.SelectCvePackAgeCpeByPackName(packName) + packageCpe, err := db_models.SelectCvePackAgeCpeByPackName(packName, ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { err := db_models.InsertCvePackAgeCpe(&models.PackageCpe{ PackName: packName, CpePackName: cpePackName, CreateTime: now, - }) + }, ormModel) if err != nil { logs.Error("db_models.InsertCvePackAgeCpe error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -161,7 +162,7 @@ func ToMysql() { } } else { logs.Error("db_models.SelectCvePackAgeCpeByPackName error: ", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -173,10 +174,10 @@ func ToMysql() { CpePackName: cpePackName, CreateTime: now, PackName: packageCpe.PackName, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCvePackAgeCpe error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -184,7 +185,7 @@ func ToMysql() { } } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/mindspore_yaml.go b/cve-vulner-manager/cve-timed-task/tabletask/mindspore_yaml.go index 4bbe08bd30e0f1f7ffcf3de83b929c24c10e48ac..0e8efcd4a0700c0aca19cf7517c50e7c58903286 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/mindspore_yaml.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/mindspore_yaml.go @@ -50,9 +50,9 @@ func DownloadMindSporeYaml() (string, error) { // StoreOpenLookengYaml parse dict //Store yaml data to mysql -func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { +func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string, ormModel orm.Ormer) { if len(yamlData) > 0 { - err := db_models.UpdateMindYamlOriginMark() + err := db_models.UpdateMindYamlOriginMark(ormModel) if err != nil { logs.Error("db_models.UpdateYamlOriginMarkLookeng:", err.Error()) return @@ -64,12 +64,12 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { } //open transaction logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - originData, err := db_models.SelectMindYamlOriginData(k, v["version"], RepoKey) + originData, err := db_models.SelectMindYamlOriginData(k, v["version"], RepoKey, ormModel) now := time.Now() if err != nil { if errors.Is(orm.ErrNoRows, err) { @@ -85,10 +85,10 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { MarkBit: 1, Repo: RepoKey, } - err = db_models.InsertMindYamlOriginData(mindSporeYaml) + err = db_models.InsertMindYamlOriginData(mindSporeYaml, ormModel) if err != nil { logs.Error("db_models.InsertMindYamlOriginData error:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -97,7 +97,7 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { logs.Info("insert MindSporeYaml success") } else { logs.Error("db_models.SelectMindYamlOriginData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -113,20 +113,20 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { UpdateTime: now.Format("2006-01-02 15:04:05"), MarkBit: 1, } - _, err = db_models.UpdateMindYamlOriginData(mindSporeYaml) + _, err = db_models.UpdateMindYamlOriginData(mindSporeYaml, ormModel) if err != nil { logs.Error("db_models.UpdateMindYamlOriginData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } } - packAgesData, rowsAffected, err := db_models.SelectYamlData(k, v["version"]) + packAgesData, rowsAffected, err := db_models.SelectYamlData(k, v["version"], ormModel) if err != nil { logs.Error("db_models.SelectMindYamlData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -135,13 +135,13 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { if rowsAffected == 0 { logs.Warn("No record found, Create a record") var packId int64 - gitOpenEuler, err := db_models.SelectYamlLastData() + gitOpenEuler, err := db_models.SelectYamlLastData(ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { packId = 10000000 } else { logs.Error("db_models.SelectYamlLastData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -167,7 +167,7 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { lastId, err := models.InsertYamlData(goe) if err != nil { logs.Error("db_models.InsertYamlData error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -183,10 +183,10 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { Decription: "", Status: 0, } - err = db_models.InsertYamlDetailData(gpi) + err = db_models.InsertYamlDetailData(gpi, ormModel) if err != nil { logs.Error("db_models.InsertYamlDetailData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", err.Error()) } @@ -195,19 +195,19 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { } else { if rowsAffected > 1 { for _, pv := range packAgesData[1:] { - err = db_models.DeleteYamlOpenEulerDetailData(pv.GitId) + err = db_models.DeleteYamlOpenEulerDetailData(pv.GitId, ormModel) if err != nil { logs.Error("db_models.DeleteYamlOpenEulerDetailData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - err = db_models.DeleteYamlOpenEulerData(pv.GitId) + err = db_models.DeleteYamlOpenEulerData(pv.GitId, ormModel) if err != nil { logs.Error("db_models.DeleteYamlOpenEulerData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -227,7 +227,7 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { err = models.UpdateYamlData(goe) if err != nil { logs.Error("db_models.UpdateYamlData:", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -241,17 +241,17 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { Status: 0, GitId: packAgesData[0].GitId, } - err = db_models.UpdateYamlDetailData(gpi) + err = db_models.UpdateYamlDetailData(gpi, ormModel) if err != nil { logs.Error("db_models.UpdateYamlDetailData", err.Error()) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue @@ -259,7 +259,7 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { logs.Info("Transaction committed successfully", k) } } - err = db_models.DeleteMindYamlOriginMark() + err = db_models.DeleteMindYamlOriginMark(ormModel) if err != nil { logs.Error("db_models.DeleteMindYamlOriginMark error:", err.Error()) } @@ -275,6 +275,7 @@ func StoreMindSporeYaml(yamlData map[string]map[string]map[string]string) { //3. Parse yaml; //4. Save in mysql; func ProcMindSporeYaml() { + ormModel := orm.NewOrm() yamlFileName, err := DownloadMindSporeYaml() if err != nil { logs.Error("DownloadMindSporeYaml error:", err.Error()) @@ -285,8 +286,7 @@ func ProcMindSporeYaml() { logs.Error("util.ParseYamlTypeTwo error: ", yamlFileName, err) return } - StoreMindSporeYaml(yamlData) - - DeleteYamlData() + StoreMindSporeYaml(yamlData, ormModel) + DeleteYamlData(ormModel) } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/package_committer_task.go b/cve-vulner-manager/cve-timed-task/tabletask/package_committer_task.go index bc24825bbdb8d83d34cba05fb6e0a76b0bf3adef..7a3f215837b166e9c65290a57804a2449ccfc566 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/package_committer_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/package_committer_task.go @@ -8,6 +8,7 @@ import ( "cvevulner/models" "encoding/hex" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "github.com/xuri/excelize/v2" "io" "os" @@ -16,6 +17,7 @@ import ( // import excel func ImportData() { + ormModel := orm.NewOrm() filePath, err := downloadfiletask.HandleFour() if err != nil { logs.Error("downloadfiletask.HandleFour error:", err) @@ -50,15 +52,15 @@ func ImportData() { sum := hash.Sum(nil) hashValue := hex.EncodeToString(sum) logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName) + list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName, ormModel) if err != nil { logs.Error("db_models.SelectCveFileHashByFileName :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -66,23 +68,23 @@ func ImportData() { } if rowsAffected > 0 && util.InSlice(list, hashValue) { logs.Info("file has been parsed", fileName) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } _ = os.Remove(filePath + fileName) continue } - err = db_models.InsertCveFileHash(fileName, hashValue) + err = db_models.InsertCveFileHash(fileName, hashValue, ormModel) if err != nil { logs.Error("db_models.InsertCveFileHash :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue @@ -119,7 +121,7 @@ func ImportData() { Assignee: assignee, Status: 1, CreateTime: now, - }) + }, ormModel) if err != nil { logs.Error(err) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/repeat_task.go b/cve-vulner-manager/cve-timed-task/tabletask/repeat_task.go index 35ce2f21db33f88e4dc310cb5a81d4a26e43cc4c..d18cf0c35da141b08d59ae19ad25066dedda7d59 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/repeat_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/repeat_task.go @@ -5,6 +5,7 @@ import ( "cvevulner/models" "fmt" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "strconv" "time" ) @@ -12,9 +13,10 @@ import ( // RepeatTask Parse the artificial CVE table, crawl the CVE official // website data, and store it in the database func RepeatTask() { + ormModel := orm.NewOrm() logs.Info("CVE with empty CVE official website data is re-crawled ") - originExcel, rowsAffected, err := db_models.SelectCveOriginExcel("") + originExcel, rowsAffected, err := db_models.SelectCveOriginExcel("", ormModel) if err != nil { logs.Error("db_models.SelectCveOriginExcel error:", err) return @@ -57,7 +59,7 @@ func RepeatTask() { CveNum: v.CveNum, PackName: v.PackName, CveVersion: v.CveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcelTypeFour error:", err) } @@ -66,8 +68,9 @@ func RepeatTask() { // GetPublishedDateTask Get the release date of nvd func GetPublishedDateTask() { + ormModel := orm.NewOrm() logs.Info("Get the release date of nvd") - vulnCenter, rowsAffected, err := db_models.SelectCveVulnCenter() + vulnCenter, rowsAffected, err := db_models.SelectCveVulnCenter(ormModel) if err != nil { logs.Error("db_models.SelectCveVulnCenter error:", err) return @@ -83,7 +86,7 @@ func GetPublishedDateTask() { continue } if crawlList.RepairTime != "" { - err = db_models.UpdateCveVulnCenter(crawlList.RepairTime, strconv.FormatInt(v.CveId, 10)) + err = db_models.UpdateCveVulnCenter(crawlList.RepairTime, strconv.FormatInt(v.CveId, 10), ormModel) if err != nil { logs.Error("db_models.UpdateCveVulnCenter error:", err) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/run_task.go b/cve-vulner-manager/cve-timed-task/tabletask/run_task.go index 156b62c2662b4bddd0198a5ef3d193420ad2501a..a1acd9006804f15322714cfb2604f85a9a5c6423 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/run_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/run_task.go @@ -20,6 +20,7 @@ import ( // HandleDate CVSS official website data crawling data storage database func HandleDate() { + ormModel := orm.NewOrm() filePath, err := downloadfiletask.HandleOne() if err != nil { logs.Error("downloadfiletask.HandleOne error:", err) @@ -54,15 +55,15 @@ func HandleDate() { sum := hash.Sum(nil) hashValue := hex.EncodeToString(sum) logs.Info("open transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName) + list, rowsAffected, err := db_models.SelectCveFileHashByFileName(fileName, ormModel) if err != nil { logs.Error("db_models.SelectCveFileHashByFileName :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -71,23 +72,23 @@ func HandleDate() { fmt.Println(hashValue) if rowsAffected > 0 && util.InSlice(list, hashValue) { logs.Info("file has been parsed", fileName) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } _ = os.Remove(filePath + fileName) continue } - err = db_models.InsertCveFileHash(fileName, hashValue) + err = db_models.InsertCveFileHash(fileName, hashValue, ormModel) if err != nil { logs.Error("db_models.InsertCveFileHash :", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue @@ -126,20 +127,19 @@ func HandleDate() { cveVersion = "" } - logs.Info("begin transaction") - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - resultDict, err := db_models.GetCveOriginExcelTypeTwo(cveNum, packName, cveVersion) + resultDict, err := db_models.GetCveOriginExcelTypeTwo(cveNum, packName, cveVersion, ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { url := fmt.Sprintf("https://nvd.nist.gov/vuln/detail/%s", cveNum) crawlList, err := Crawling(url) if err != nil { logs.Error("Crawling error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -174,10 +174,10 @@ func HandleDate() { CveStatus: 0, CreateTime: now, UpdateTime: now, - }) + }, ormModel) if err != nil { logs.Error("db_models.InsertCveOriginExcel error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -186,7 +186,7 @@ func HandleDate() { } else { logs.Error("db_models.GetCveOriginExcelTypeTwo error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -197,7 +197,7 @@ func HandleDate() { crawlList, err := Crawling(url) if err != nil { logs.Error("Crawling error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -235,10 +235,10 @@ func HandleDate() { CveNum: cveNum, PackName: packName, CveVersion: cveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcelTypeThree error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -272,10 +272,10 @@ func HandleDate() { CveNum: cveNum, PackName: packName, CveVersion: cveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcelTypeFour error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } @@ -287,7 +287,7 @@ func HandleDate() { } } - specError, err := db_models.GetCveSpecError(cveNum) + specError, err := db_models.GetCveSpecError(cveNum, ormModel) if err != nil { if !errors.Is(orm.ErrNoRows, err) { logs.Error("db_models.GetCveSpecError error:", err) @@ -297,17 +297,17 @@ func HandleDate() { CveDesc: specError.Description, CveStatus: 6, CveNum: cveNum, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcelTypeFive error:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error("Rollback transaction error:", tranErr.Error()) } continue } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/spec_error_task.go b/cve-vulner-manager/cve-timed-task/tabletask/spec_error_task.go index 6f25f90a63c567995217c042354f86b5bff2a251..9bfea1b1d72d23cfa7f5b5d45602939798dbde9a 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/spec_error_task.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/spec_error_task.go @@ -14,6 +14,7 @@ import ( // AddErrorDetails Conditions for filtering incorrect data func AddErrorDetails() { + ormModel := orm.NewOrm() filePath, err := downloadfiletask.DownloadSpecErrorExcels() if err != nil { logs.Error("downloadfiletask.DownloadSpecErrorExcels error:", err) @@ -71,12 +72,12 @@ func AddErrorDetails() { } else { cveOwner = "" } - tranErr := db_models.ORM.Begin() + tranErr := ormModel.Begin() if tranErr != nil { logs.Error(" Open transaction error:", tranErr.Error()) continue } - specError, err := db_models.GetCveSpecError(cveNum) + specError, err := db_models.GetCveSpecError(cveNum, ormModel) if err != nil { if errors.Is(orm.ErrNoRows, err) { _, err = db_models.InsertCveSpecError(&models.SpecError{ @@ -86,10 +87,10 @@ func AddErrorDetails() { Status: 1, PackName: packName, CreateTime: now, - }) + }, ormModel) if err != nil { logs.Error("db_models.InsertCveSpecError:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -97,16 +98,14 @@ func AddErrorDetails() { } } else { logs.Error("db_models.GetCveSpecError:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } continue } } else { - logs.Info("CVE recorded", cveNum) if specError.Description != cveDesc || specError.Owner != cveOwner || specError.PackName != packName || specError.Status != 1 { - logs.Info("update cve_spec_error") err := db_models.UpdateCveSpecError(models.SpecError{ CveNum: specError.CveNum, Description: cveDesc, @@ -114,10 +113,10 @@ func AddErrorDetails() { PackName: packName, Status: 1, UpdateTime: now, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveSpecError:", err) - tranErr = db_models.ORM.Rollback() + tranErr = ormModel.Rollback() if tranErr != nil { logs.Error(" Rollback transaction error:", tranErr.Error()) } @@ -125,7 +124,7 @@ func AddErrorDetails() { } } } - tranErr = db_models.ORM.Commit() + tranErr = ormModel.Commit() if tranErr != nil { logs.Error(" Commit transaction error:", tranErr.Error()) continue diff --git a/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go b/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go index e436b0c0b428be7d0b9b804bfa91657a4f9cd8be..2c935757cc61c1f058b19aa266a8b8770308b8a1 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go @@ -1,16 +1,17 @@ package tabletask import ( + "fmt" + "strconv" + "strings" + "time" + "cvevulner/cve-timed-task/db_models" "cvevulner/cve-timed-task/util" "cvevulner/models" - "fmt" "github.com/astaxie/beego/logs" "github.com/astaxie/beego/orm" "github.com/pkg/errors" - "strconv" - "strings" - "time" ) //var cveListDate []db_models.VulnCenter @@ -21,12 +22,12 @@ type Compare struct { } // QueryCveALLData Find cve with missing necessary fields -func QueryCveALLData(days int) []models.VulnCenter { +func QueryCveALLData(days int, ormModel orm.Ormer) []models.VulnCenter { now := time.Now() beforeDate := time.Date(now.Year(), now.Month(), now.Day()-days, 0, 0, 0, 0, now.Location()).Format("2006-01-02 15:04:05") cveIdList := make([]Compare, 0, 100) - scoreList, rowsAffected, err := db_models.GetCveScoreListByBeforeDate(beforeDate) + scoreList, rowsAffected, err := db_models.GetCveScoreListByBeforeDate(beforeDate, ormModel) if err == nil { if rowsAffected > 0 { for _, v := range scoreList { @@ -35,13 +36,11 @@ func QueryCveALLData(days int) []models.VulnCenter { CveNum: v.CveNum, }) } - } else { - logs.Info("No query results") } } else { logs.Error("db_models.GetCveScoreList error:", err.Error()) } - vulnCenterList, rowsAffected, err := db_models.GetCveVulnCenterList("", "", beforeDate) + vulnCenterList, rowsAffected, err := db_models.GetCveVulnCenterList("", "", beforeDate, ormModel) if err == nil { if rowsAffected > 0 { for _, v := range vulnCenterList { @@ -50,14 +49,12 @@ func QueryCveALLData(days int) []models.VulnCenter { CveNum: v.CveNum, }) } - } else { - logs.Info("No query results") } } else { logs.Error("db_models.GetCveVulnCenter error:", err.Error()) } - issueTemplateList, rowsAffected, err := db_models.GetCveIssueTemplate("0", "", "", beforeDate) + issueTemplateList, rowsAffected, err := db_models.GetCveIssueTemplate("0", "", "", beforeDate, ormModel) if err == nil { if rowsAffected > 0 { for _, v := range issueTemplateList { @@ -66,10 +63,7 @@ func QueryCveALLData(days int) []models.VulnCenter { CveNum: v.CveNum, }) } - } else { - logs.Info("No query results") } - } else { logs.Error("db_models.GetCveIssueTemplate error:", err.Error()) } @@ -78,7 +72,7 @@ func QueryCveALLData(days int) []models.VulnCenter { cveList := make([]models.VulnCenter, 0, len(cveIdList)) if len(cveIdList) > 0 { for _, v := range cveIdList { - vulnCenter, err := db_models.GetOneVulnCenter(v.CveId, v.CveNum) + vulnCenter, err := db_models.GetOneVulnCenter(v.CveId, v.CveNum, ormModel) if err != nil { logs.Error("db_models.GetOneVulnCenter error:", err.Error()) continue @@ -108,7 +102,7 @@ func RemoveRepeatedElement(arr []Compare) (newArr []Compare) { } // UpdateCveVuln update data -func UpdateCveVuln(url string, cve models.VulnCenter) error { +func UpdateCveVuln(url string, cve models.VulnCenter, ormModel orm.Ormer) error { cveNum := strings.TrimSpace(cve.CveNum) cveId := cve.CveId cveStatus := cve.Status @@ -149,7 +143,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { UpdateTime: updateTime, Status: cveStatusx, CveId: cveId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateVulnCenterTypeOne error:", err) return err @@ -162,17 +156,14 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { UpdateTime: updateTime, Status: cveStatusx, CveId: cveId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateVulnCenterTypeTwo error:", err) return err } } - nvdScore, err := strconv.ParseFloat(listx.NvdScore, 64) - if err != nil { - logs.Error(err.Error()) - } + nvdScore, _ := strconv.ParseFloat(listx.NvdScore, 64) if nvdScore > 0 && listx.NvdScore != "" { var scoreType string if listx.ScoreType == "v3.0" { @@ -180,7 +171,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { } else { scoreType = "v2" } - score, err := db_models.GetCveScoreByCveIdAndCveNum(cveId, cveNum) + score, err := db_models.GetCveScoreByCveIdAndCveNum(cveId, cveNum, ormModel) if err != nil { if errors.Is(err, orm.ErrNoRows) { logs.Info(err) @@ -207,7 +198,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { UpdateTime: updateTime, ScoreType: scoreType, Id: score.Id, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveScore error:", err) return err @@ -222,7 +213,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { CveBrief: "", CveId: cveId, CveNum: cveNum, - }) + }, ormModel) if err != nil { logs.Error(" db_models.GetIssueTemplateTypeOne error:", err) return nil @@ -234,7 +225,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { NVDScore: nvdScore, UpdateTime: updateTime, TemplateId: templateResult.TemplateId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveIssueTemplateTypeOne error:", err) return err @@ -247,7 +238,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { NVDVector: listx.VectorValue, UpdateTime: updateTime, TemplateId: templateResult.TemplateId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveIssueTemplateTypeTwo error:", err) return err @@ -260,7 +251,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { CveBrief: listx.CveDesc, UpdateTime: updateTime, TemplateId: templateResult.TemplateId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveIssueTemplateTypeThree error:", err) return err @@ -273,7 +264,7 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { UpdateTime: updateTime, Status: cveStatusx, CveId: cveId, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateVulnCenter error:", err) return err @@ -287,8 +278,8 @@ func UpdateCveVuln(url string, cve models.VulnCenter) error { //2. Go to the CVE official website to find the CVE information; //3. Fill in the corresponding table again; func SupplementCve() { - - cveList := QueryCveALLData(30) + ormModel := orm.NewOrm() + cveList := QueryCveALLData(3, ormModel) if len(cveList) > 0 { for _, cve := range cveList { @@ -296,20 +287,19 @@ func SupplementCve() { cveVersion := strings.TrimSpace(cve.CveVersion) packName := strings.TrimSpace(cve.PackName) url := fmt.Sprintf("https://nvd.nist.gov/vuln/detail/%s", cveNum) - _ = UpdateCveVuln(url, cve) - resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName) - if err != nil { + _ = UpdateCveVuln(url, cve, ormModel) + resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName, ormModel) + if err != nil && !errors.Is(orm.ErrNoRows, err) { logs.Error("db_models.GetSpceError error:", err) continue } - logs.Info("Filter, modify the status to 6", cveNum) err = db_models.UpdateCveOriginExcel(models.OriginExcel{ CveDesc: resultSpecError.Description, CveStatus: 6, CveNum: cveNum, PackName: packName, CveVersion: cveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcel error:", err) } @@ -321,15 +311,16 @@ func SupplementCve() { //2. Go to the CVE official website to find the CVE information; //3. Fill in the corresponding table again; func LongSupplementCve() { - cveList := QueryCveALLData(1500) + ormModel := orm.NewOrm() + cveList := QueryCveALLData(1500, ormModel) if len(cveList) > 0 { for _, cve := range cveList { cveNum := strings.TrimSpace(cve.CveNum) cveVersion := strings.TrimSpace(cve.CveVersion) packName := strings.TrimSpace(cve.PackName) url := fmt.Sprintf("https://nvd.nist.gov/vuln/detail/%s", cveNum) - _ = UpdateCveVuln(url, cve) - resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName) + _ = UpdateCveVuln(url, cve, ormModel) + resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName, ormModel) if err != nil { logs.Error("db_models.GetSpceError error:", err) continue @@ -341,7 +332,7 @@ func LongSupplementCve() { CveNum: cveNum, PackName: packName, CveVersion: cveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcel error:", err) } @@ -350,8 +341,9 @@ func LongSupplementCve() { } func PullCve(cveNum string) (resp int) { + ormModel := orm.NewOrm() resp = 0 - cveList, rowsAffected, err := db_models.QueryCveByNumber(cveNum) + cveList, rowsAffected, err := db_models.QueryCveByNumber(cveNum, ormModel) if err != nil { return resp } @@ -366,11 +358,11 @@ func PullCve(cveNum string) (resp int) { cveVersion := strings.TrimSpace(cve.CveVersion) packName := strings.TrimSpace(cve.PackName) url := fmt.Sprintf("https://nvd.nist.gov/vuln/detail/%s", cveNum) - err = UpdateCveVuln(url, cve) + err = UpdateCveVuln(url, cve, ormModel) if err == nil { resp = 1 } - resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName) + resultSpecError, err := db_models.GetSpceError(cveNum, "src-openEuler", packName, ormModel) if err != nil { logs.Error("db_models.GetSpceError error:", err) } @@ -381,7 +373,7 @@ func PullCve(cveNum string) (resp int) { CveNum: cveNum, PackName: packName, CveVersion: cveVersion, - }) + }, ormModel) if err != nil { logs.Error("db_models.UpdateCveOriginExcel error:", err) } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/to_excel.go b/cve-vulner-manager/cve-timed-task/tabletask/to_excel.go index b3cc56e67d3d440f15c7f891c4cde77346a830be..7a0353bef33e54808ee6cba3703e829c0e1568ec 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/to_excel.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/to_excel.go @@ -4,11 +4,13 @@ import ( "cvevulner/cve-timed-task/db_models" "fmt" "github.com/astaxie/beego/logs" + "github.com/astaxie/beego/orm" "github.com/xuri/excelize/v2" ) func GenerateTable(path string) { - results, rowsAffected, err := db_models.GetCveOriginExcel() + ormModel := orm.NewOrm() + results, rowsAffected, err := db_models.GetCveOriginExcel(ormModel) if err != nil { logs.Error("db_models.GetCveOriginExcel error:", err) return @@ -44,7 +46,7 @@ func GenerateTable(path string) { logs.Error("f.SaveAs error: ", err, path) } - err = db_models.UpdateStatusTypeTwo() + err = db_models.UpdateStatusTypeTwo(ormModel) if err != nil { logs.Error("db_models.UpdateStatusTypeTwo error: ", err) }