V 3.2.5(2025.02.26)
1. 修复新用户合并MJ设置初始化问题 2. 修复原创MJ设置数据缺失
This commit is contained in:
@@ -1,16 +1,15 @@
|
||||
import Realm, { UpdateMode } from 'realm'
|
||||
import path from 'path'
|
||||
import { BaseService } from '../baseService'
|
||||
import { define } from '../../../define'
|
||||
import { SoftwareModel } from '../../model/SoftWare/software'
|
||||
import { ComponentSize, SoftwareThemeType } from '../../../enum/softwareEnum.js'
|
||||
import { errorMessage, successMessage } from '../../../../main/Public/generalTools'
|
||||
import { successMessage } from '../../../../main/Public/generalTools'
|
||||
import { BaseSoftWareService } from './softwareBasic.js'
|
||||
import { isEmpty, isNumber } from 'lodash'
|
||||
import { cloneDeep, isEmpty } from 'lodash'
|
||||
const { v4: uuidv4 } = require('uuid')
|
||||
import { version } from '../../../../../package.json'
|
||||
import { GeneralResponse } from '../../../../model/generalResponse'
|
||||
import { MJCategroy } from '../../../enum/bookEnum'
|
||||
import { OptionRealmService } from './optionRealmService'
|
||||
import { OptionKeyName } from '@/define/enum/option'
|
||||
import { OptionModel } from '@/model/option/option'
|
||||
import { ValidateJson } from '@/define/Tools/validate'
|
||||
|
||||
export class MJSettingService extends BaseSoftWareService {
|
||||
static instance: MJSettingService | null = null
|
||||
@@ -462,21 +461,29 @@ export class MJSettingService extends BaseSoftWareService {
|
||||
* @param mjSettingQuery 查询的条件 Id ,null 返回全部
|
||||
* @returns
|
||||
*/
|
||||
GetMjSetting(mjSettingQuery) {
|
||||
GetMjSetting() {
|
||||
try {
|
||||
let mjSettings = this.realm.objects('MjSetting')
|
||||
|
||||
if (mjSettingQuery?.id) {
|
||||
mjSettings = this.realm.objects('MjSetting').filtered('id = $0', mjSettingQuery.id)
|
||||
}
|
||||
let res = this.realm.objects('Options').filtered(`key = "${OptionKeyName.MJ_GlobalSetting}"`);
|
||||
|
||||
let resMjSetting = Array.from(mjSettings).map((mjSetting) => {
|
||||
return {
|
||||
...mjSetting
|
||||
let mjSetting: OptionModel.OptionItem | null = null;
|
||||
if (res.length > 0) {
|
||||
let resData = Array.from(res).map((item) => {
|
||||
let resObj = {
|
||||
...item
|
||||
}
|
||||
return cloneDeep(resObj)
|
||||
})
|
||||
mjSetting = resData[0] as OptionModel.OptionItem
|
||||
|
||||
if (!ValidateJson(mjSetting.value)) {
|
||||
throw new Error('MJ设置的数据格式不正确,请检查数据格式')
|
||||
}
|
||||
})
|
||||
return JSON.parse(mjSetting.value)?.mj_simpleSetting
|
||||
|
||||
return successMessage(resMjSetting, '获取MJ基础设置成功', 'MJSettingService_getMjSetting')
|
||||
} else {
|
||||
throw new Error('没有找到MJ的设置信息,请检查')
|
||||
}
|
||||
} catch (error) {
|
||||
throw error
|
||||
}
|
||||
@@ -582,11 +589,14 @@ export class MJSettingService extends BaseSoftWareService {
|
||||
GetMJSettingTreeData() {
|
||||
try {
|
||||
// 获取MJ的基础配置信息
|
||||
let mjSettings = this.GetMjSetting(null)
|
||||
if (mjSettings.data.length <= 0) {
|
||||
this.InitData();
|
||||
mjSettings = this.GetMjSetting(null)
|
||||
let mjSettings = this.GetMjSetting()
|
||||
// if (mjSettings.data.length <= 0) {
|
||||
// this.InitData();
|
||||
// mjSettings = this.GetMjSetting(null)
|
||||
|
||||
// }
|
||||
if (mjSettings == null) {
|
||||
throw new Error('未找到MJ的设置信息,请检查');
|
||||
}
|
||||
// 获取API的配置信息
|
||||
let apiSettings = this.GetAPIMjSetting(null)
|
||||
@@ -594,7 +604,7 @@ export class MJSettingService extends BaseSoftWareService {
|
||||
let remoteSettings = this.GetRemoteMJSettings(null)
|
||||
// 获取浏览器模式的配置信息
|
||||
let browserSettings = this.GetBrowserMJSetting(null)
|
||||
let mjSetting = mjSettings.data[0]
|
||||
let mjSetting = mjSettings
|
||||
mjSetting.apiSetting = apiSettings.data.length > 0 ? apiSettings.data[0] : null
|
||||
mjSetting.remoteSetting = remoteSettings.data.length > 0 ? remoteSettings.data[0] : null
|
||||
mjSetting.browserSetting = browserSettings.data.length > 0 ? browserSettings.data[0] : null
|
||||
|
||||
Reference in New Issue
Block a user