diff --git a/internal/db/models/nameservers/ns_record_dao.go b/internal/db/models/nameservers/ns_record_dao.go index 8762bd5f..02661819 100644 --- a/internal/db/models/nameservers/ns_record_dao.go +++ b/internal/db/models/nameservers/ns_record_dao.go @@ -113,7 +113,7 @@ func (this *NSRecordDAO) CreateRecord(tx *dbs.Tx, domainId int64, description st } // UpdateRecord 修改记录 -func (this *NSRecordDAO) UpdateRecord(tx *dbs.Tx, recordId int64, description string, name string, dnsType dnsconfigs.RecordType, value string, ttl int32, routeIds []int64) error { +func (this *NSRecordDAO) UpdateRecord(tx *dbs.Tx, recordId int64, description string, name string, dnsType dnsconfigs.RecordType, value string, ttl int32, routeIds []int64, isOn bool) error { if recordId <= 0 { return errors.New("invalid recordId") } @@ -130,6 +130,7 @@ func (this *NSRecordDAO) UpdateRecord(tx *dbs.Tx, recordId int64, description st op.Type = dnsType op.Value = value op.Ttl = ttl + op.IsOn = isOn if len(routeIds) == 0 { op.RouteIds = "[]" diff --git a/internal/dnsclients/provider_local_edge_dns.go b/internal/dnsclients/provider_local_edge_dns.go index 87112315..ee27d72b 100644 --- a/internal/dnsclients/provider_local_edge_dns.go +++ b/internal/dnsclients/provider_local_edge_dns.go @@ -188,7 +188,7 @@ func (this *LocalEdgeDNSProvider) UpdateRecord(domain string, record *dnstypes.R } if len(record.Id) > 0 { - err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, types.Int64(record.Id), "", newRecord.Name, newRecord.Type, newRecord.Value, this.ttl, routeIds) + err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, types.Int64(record.Id), "", newRecord.Name, newRecord.Type, newRecord.Value, this.ttl, routeIds, true) if err != nil { return err } @@ -198,7 +198,7 @@ func (this *LocalEdgeDNSProvider) UpdateRecord(domain string, record *dnstypes.R return err } if realRecord != nil { - err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, types.Int64(realRecord.Id), "", newRecord.Name, newRecord.Type, newRecord.Value, this.ttl, routeIds) + err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, types.Int64(realRecord.Id), "", newRecord.Name, newRecord.Type, newRecord.Value, this.ttl, routeIds, true) if err != nil { return err } diff --git a/internal/rpc/services/nameservers/service_ns_record.go b/internal/rpc/services/nameservers/service_ns_record.go index 94b33851..d31448c7 100644 --- a/internal/rpc/services/nameservers/service_ns_record.go +++ b/internal/rpc/services/nameservers/service_ns_record.go @@ -39,7 +39,7 @@ func (this *NSRecordService) UpdateNSRecord(ctx context.Context, req *pb.UpdateN } var tx = this.NullTx() - err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, req.NsRecordId, req.Description, req.Name, req.Type, req.Value, req.Ttl, req.NsRouteIds) + err = nameservers.SharedNSRecordDAO.UpdateRecord(tx, req.NsRecordId, req.Description, req.Name, req.Type, req.Value, req.Ttl, req.NsRouteIds, req.IsOn) if err != nil { return nil, err }