| 787 | } |
| 788 | |
| 789 | func (channel *Channel) GetSetting() dto.ChannelSettings { |
| 790 | setting := dto.ChannelSettings{} |
| 791 | if channel.Setting != nil && *channel.Setting != "" { |
| 792 | err := json.Unmarshal([]byte(*channel.Setting), &setting) |
| 793 | if err != nil { |
| 794 | common.SysError("failed to unmarshal setting: " + err.Error()) |
| 795 | channel.Setting = nil // 清空设置以避免后续错误 |
| 796 | _ = channel.Save() // 保存修改 |
| 797 | } |
| 798 | } |
| 799 | return setting |
| 800 | } |
| 801 | |
| 802 | func (channel *Channel) SetSetting(setting dto.ChannelSettings) { |
| 803 | settingBytes, err := json.Marshal(setting) |