|
@@ -411,45 +411,39 @@ func replaceEdbInRelation(oldEdbInfo, newEdbInfo *data_manage.EdbInfo, list []*d
|
|
|
refreshIds := make([]int, 0)
|
|
|
nowTime := time.Now()
|
|
|
for _, v := range list {
|
|
|
- if v.RelationType == 0 && (v.ReferObjectType == utils.EDB_RELATION_CALENDAR ||
|
|
|
- (v.ReferObjectType == utils.EDB_RELATION_TABLE && v.ReferObjectSubType == utils.BALANCE_TABLE)) {
|
|
|
- //平衡表和事件日历中的直接引用无需替换,
|
|
|
- } else {
|
|
|
- replaceEdbIds = append(replaceEdbIds, v.EdbInfoRelationId)
|
|
|
- if newEdbInfo.EdbType == 2 {
|
|
|
- for _, childEdbMappingId := range childEdbMappingIds {
|
|
|
- childEdbMapping, ok2 := calculateEdbMappingListMap[childEdbMappingId]
|
|
|
- if !ok2 {
|
|
|
- continue
|
|
|
- }
|
|
|
+ replaceEdbIds = append(replaceEdbIds, v.EdbInfoRelationId)
|
|
|
+ if newEdbInfo.EdbType == 2 {
|
|
|
+ for _, childEdbMappingId := range childEdbMappingIds {
|
|
|
+ childEdbMapping, ok2 := calculateEdbMappingListMap[childEdbMappingId]
|
|
|
+ if !ok2 {
|
|
|
+ continue
|
|
|
+ }
|
|
|
|
|
|
- if childEdbMapping.FromSource == utils.DATA_SOURCE_MYSTEEL_CHEMICAL {
|
|
|
- indexCodeList = append(indexCodeList, childEdbMapping.FromEdbCode)
|
|
|
- }
|
|
|
- tmp1 := &data_manage.EdbInfoRelation{
|
|
|
- ReferObjectId: v.ReferObjectId,
|
|
|
- ReferObjectType: v.ReferObjectType,
|
|
|
- ReferObjectSubType: v.ReferObjectSubType,
|
|
|
- EdbInfoId: childEdbMapping.FromEdbInfoId,
|
|
|
- EdbName: childEdbMapping.FromEdbName,
|
|
|
- Source: childEdbMapping.FromSource,
|
|
|
- EdbCode: childEdbMapping.FromEdbCode,
|
|
|
- CreateTime: nowTime,
|
|
|
- ModifyTime: nowTime,
|
|
|
- RelationTime: nowTime,
|
|
|
- RelationType: 1,
|
|
|
- RootEdbInfoId: newEdbInfo.EdbInfoId,
|
|
|
- ChildEdbInfoId: childEdbMapping.EdbInfoId,
|
|
|
- }
|
|
|
- tmp1.RelationCode = fmt.Sprintf("%d_%d_%d_%d", tmp1.RootEdbInfoId, tmp1.ReferObjectId, tmp1.ReferObjectType, tmp1.ReferObjectSubType)
|
|
|
- addList = append(addList, tmp1)
|
|
|
- refreshIds = append(refreshIds, childEdbMapping.FromEdbInfoId)
|
|
|
- // todo 防止重复
|
|
|
+ if childEdbMapping.FromSource == utils.DATA_SOURCE_MYSTEEL_CHEMICAL {
|
|
|
+ indexCodeList = append(indexCodeList, childEdbMapping.FromEdbCode)
|
|
|
+ }
|
|
|
+ tmp1 := &data_manage.EdbInfoRelation{
|
|
|
+ ReferObjectId: v.ReferObjectId,
|
|
|
+ ReferObjectType: v.ReferObjectType,
|
|
|
+ ReferObjectSubType: v.ReferObjectSubType,
|
|
|
+ EdbInfoId: childEdbMapping.FromEdbInfoId,
|
|
|
+ EdbName: childEdbMapping.FromEdbName,
|
|
|
+ Source: childEdbMapping.FromSource,
|
|
|
+ EdbCode: childEdbMapping.FromEdbCode,
|
|
|
+ CreateTime: nowTime,
|
|
|
+ ModifyTime: nowTime,
|
|
|
+ RelationTime: nowTime,
|
|
|
+ RelationType: 1,
|
|
|
+ RootEdbInfoId: newEdbInfo.EdbInfoId,
|
|
|
+ ChildEdbInfoId: childEdbMapping.EdbInfoId,
|
|
|
}
|
|
|
+ tmp1.RelationCode = fmt.Sprintf("%d_%d_%d_%d", tmp1.RootEdbInfoId, tmp1.ReferObjectId, tmp1.ReferObjectType, tmp1.ReferObjectSubType)
|
|
|
+ addList = append(addList, tmp1)
|
|
|
+ refreshIds = append(refreshIds, childEdbMapping.FromEdbInfoId)
|
|
|
+ // todo 防止重复
|
|
|
}
|
|
|
- logMsg += strconv.Itoa(v.EdbInfoRelationId) + ";"
|
|
|
}
|
|
|
-
|
|
|
+ logMsg += strconv.Itoa(v.EdbInfoRelationId) + ";"
|
|
|
}
|
|
|
if len(replaceEdbIds) > 0 {
|
|
|
err = data_manage.ReplaceRelationEdbInfoId(oldEdbInfo, newEdbInfo, replaceEdbIds, addList, refreshIds, indexCodeList)
|