|
@@ -123,6 +123,15 @@ func DistributeOALicenseServices(OperatorUniqueID, OaRequestId string, UserUniqu
|
|
|
}
|
|
|
|
|
|
func DistributeLicenseToUserServices(OperatorUniqueID string, OaRequestId int64, UserUniqueIDs, UserAccounts, UserNames []string) (error, []string) {
|
|
|
+ //检测支撑库数据与oa是否一致
|
|
|
+ err, checkInfo := CheckOaLicInfoRequest(OaRequestId)
|
|
|
+ if err != nil {
|
|
|
+ return err, nil
|
|
|
+ }
|
|
|
+ if checkInfo {
|
|
|
+ return errors.Errorf("本地数据与oa数据不一致,请刷新页面"), nil
|
|
|
+ }
|
|
|
+
|
|
|
//检测OARequest是否以及分发过给用户
|
|
|
existUsers, err := checkDistributeToUser(OaRequestId, UserUniqueIDs, UserNames)
|
|
|
if err != nil {
|
|
@@ -167,6 +176,14 @@ func DistributeLicenseToEmailServices(OperatorUniqueID string, OaRequestId int64
|
|
|
//邮箱不空则发送
|
|
|
//将一个申请单的多个license信息用邮箱发送
|
|
|
|
|
|
+ //检测支撑库数据与oa是否一致
|
|
|
+ err, checkInfo := CheckOaLicInfoRequest(OaRequestId)
|
|
|
+ if err != nil {
|
|
|
+ return err, nil
|
|
|
+ }
|
|
|
+ if checkInfo {
|
|
|
+ return errors.Errorf("本地数据与oa数据不一致,请刷新页面"), nil
|
|
|
+ }
|
|
|
if len(EmailArray) == 0 {
|
|
|
return nil, nil
|
|
|
}
|
|
@@ -328,7 +345,7 @@ func GenerateOALicenseStrServices(request api.GenerateLicenseStrRequest) (error,
|
|
|
|
|
|
//生成license,已生成的不管
|
|
|
for _, v := range *OALics {
|
|
|
- if v.GenrateInfo.LicenseFlage.String == "未生成" {
|
|
|
+ if v.GenrateInfo.LicenseFlage.String == "未生成" || v.GenrateInfo.LicenseFlage.String == "已失效" {
|
|
|
err := generateLicenseStrSub(utils.ToString(v.LicInfo.UniqueID))
|
|
|
if err != nil {
|
|
|
global.Logger.Errorf("请联系管理员, LicenseInfo%v生成失败: %v\n", v.LicInfo.UniqueID, err.Error())
|
|
@@ -353,7 +370,7 @@ func generateLicenseStrSub(UniqueID string) error {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- fmt.Printf("applications%#v\n", applications)
|
|
|
+ //fmt.Printf("applications%#v\n", applications)
|
|
|
|
|
|
//生成副主节点license
|
|
|
if applications == nil {
|
|
@@ -361,6 +378,11 @@ func generateLicenseStrSub(UniqueID string) error {
|
|
|
//c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("LicenseInfo数据生成失败 ,数据查询为空: ", err.Error())})
|
|
|
return errors.Errorf("LicenseInfo数据生成失败 ,数据查询为空 ")
|
|
|
}
|
|
|
+ for _, lic := range *applications {
|
|
|
+ if !lic.LicInfo.OAMainMAC.Valid {
|
|
|
+ return errors.Errorf("LicenseInfo数据生成失败 , %s 有集群 主mac地址缺失 ", lic.LicInfo.OAProductName.String)
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
pj := license.ProjectInfo{
|
|
|
ProjectName: utils.ToString((*applications)[0].LicInfo.OAProductName),
|
|
@@ -385,52 +407,55 @@ func generateLicenseStrSub(UniqueID string) error {
|
|
|
}
|
|
|
|
|
|
//这里调用的是license模块中的生成license的方法
|
|
|
- res := false
|
|
|
- if res {
|
|
|
+ //res := false
|
|
|
+ fmt.Println("res是 : ", global.Cfg.App.IsGenerate)
|
|
|
+ if global.Cfg.App.IsGenerate {
|
|
|
+
|
|
|
+ licStr := license.GenerateLicense(pj, ei, lI)
|
|
|
+
|
|
|
+ //生成副主节点license
|
|
|
if (*applications)[0].LicInfo.OASecondMAC.String != "" {
|
|
|
- // var licStr2 []byte
|
|
|
- // ei.MacAddr = applications[0].SecondaryMasterMacAddress
|
|
|
- // licStr2 = license.GenerateLicense(pj, ei, lI)
|
|
|
- err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"))
|
|
|
+ var licStr2 []byte
|
|
|
+ ei.MacAddr = (*applications)[0].LicInfo.OASecondMAC.String
|
|
|
+ licStr2 = license.GenerateLicense(pj, ei, lI)
|
|
|
+ err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), licStr, licStr2)
|
|
|
if err != nil {
|
|
|
- global.Logger.Errorln("LicenseInfo生成插入失败: ", err.Error())
|
|
|
+ global.Logger.Errorln("LicenseInfo2生成插入失败: ", err.Error())
|
|
|
// c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("数据查询失败: ", err.Error())})
|
|
|
- return errors.Errorf("LicenseInfo生成插入失败:: ", err.Error())
|
|
|
+ return errors.Errorf("LicenseInfo2生成插入失败:%s", err.Error())
|
|
|
}
|
|
|
} else {
|
|
|
- //fmt.Println("licStr licStr2", licStr, licStr2)
|
|
|
//插入到数据库
|
|
|
- err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"), nil)
|
|
|
+ err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), licStr, nil)
|
|
|
if err != nil {
|
|
|
- global.Logger.Errorln("LicenseInfo2生成插入失败: ", err.Error())
|
|
|
+ global.Logger.Errorln("LicenseInfo生成插入失败: ", err.Error())
|
|
|
// c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("数据查询失败: ", err.Error())})
|
|
|
- return errors.Errorf("LicenseInfo2生成插入失败:: ", err.Error())
|
|
|
+ return errors.Errorf("LicenseInfo生成插入失败: %s", err.Error())
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
} else {
|
|
|
- licStr := license.GenerateLicense(pj, ei, lI)
|
|
|
|
|
|
- //生成副主节点license
|
|
|
if (*applications)[0].LicInfo.OASecondMAC.String != "" {
|
|
|
- var licStr2 []byte
|
|
|
- ei.MacAddr = (*applications)[0].LicInfo.OASecondMAC.String
|
|
|
- licStr2 = license.GenerateLicense(pj, ei, lI)
|
|
|
- err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), licStr, licStr2)
|
|
|
+ // var licStr2 []byte
|
|
|
+ // ei.MacAddr = applications[0].SecondaryMasterMacAddress
|
|
|
+ // licStr2 = license.GenerateLicense(pj, ei, lI)
|
|
|
+ err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"))
|
|
|
if err != nil {
|
|
|
- global.Logger.Errorln("LicenseInfo2生成插入失败: ", err.Error())
|
|
|
+ global.Logger.Errorln("LicenseInfo生成插入失败: ", err.Error())
|
|
|
// c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("数据查询失败: ", err.Error())})
|
|
|
- return errors.Errorf("LicenseInfo2生成插入失败:: ", err.Error())
|
|
|
+ return errors.Errorf("LicenseInfo生成插入失败:: ", err.Error())
|
|
|
}
|
|
|
} else {
|
|
|
+ //fmt.Println("licStr licStr2", licStr, licStr2)
|
|
|
//插入到数据库
|
|
|
- err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), licStr, nil)
|
|
|
+ err = models.UpdateOALicenseStr(utils.ToString((*applications)[0].LicInfo.UniqueID), []byte("b4j6z4rE2IfG1av0wIPT7YnvyGZFHxwIBikMGjgCLQILR0xsT1NHiuzoi+Dqq+bmiNDEiuPyitDVgdvlRmYbFAk+MAAGASlPTkdMbE9"), nil)
|
|
|
if err != nil {
|
|
|
- global.Logger.Errorln("LicenseInfo生成插入失败: ", err.Error())
|
|
|
+ global.Logger.Errorln("LicenseInfo2生成插入失败: ", err.Error())
|
|
|
// c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("数据查询失败: ", err.Error())})
|
|
|
- return errors.Errorf("LicenseInfo生成插入失败:: ", err.Error())
|
|
|
+ return errors.Errorf("LicenseInfo2生成插入失败:: ", err.Error())
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
|
|
|
//---------------------
|