添加quickcomman.userData接口 ,可以增、删、改、查用户数据

This commit is contained in:
fofolee
2024-04-03 20:14:48 +08:00
parent a905e4d981
commit fefdf9578c
3 changed files with 161 additions and 87 deletions

View File

@@ -4,91 +4,95 @@
*/
// 禁用危险函数
let whole = window.utools
let whole = window.utools;
// 数据库前缀
const DBPRE = {
QC: 'qc_', // 快捷命令
CFG: 'cfg_', // 配置
PAN: 'panel_', // 面板视图
STATUS: 'st_', // 状态变量
USR: 'usr_' // 用户数据
}
QC: "qc_", // 快捷命令
CFG: "cfg_", // 配置
PAN: "panel_", // 面板视图
STATUS: "st_", // 状态变量
USR: "usr_", // 用户数据
};
// 数据库函数封装
let getDB = id => {
let db = whole.db.get(id)
return db ? db.data : {}
}
let getDB = (id) => {
let db = whole.db.get(id);
return db ? db.data : {};
};
let putDB = (value, id) => {
let db = whole.db.get(id);
if (db) whole.db.put({
let db = whole.db.get(id);
return db
? whole.db.put({
_id: id,
data: value,
_rev: db._rev
})
else whole.db.put({
_rev: db._rev,
})
: whole.db.put({
_id: id,
data: value
});
}
data: value,
});
};
let delDB = id => {
return whole.db.remove(id)
}
let delDB = (id) => {
return whole.db.remove(id);
};
let getAll = key => {
return whole.db.allDocs(key)
}
let getAll = (key) => {
return whole.db.allDocs(key);
};
let delAll = key => {
return getAll(key).forEach(x => delDB(x._id))
}
let delAll = (key) => {
return getAll(key).forEach((x) => delDB(x._id));
};
let setStorage = whole.dbStorage.setItem
let getStorage = whole.dbStorage.getItem
let setStorage = whole.dbStorage.setItem;
let getStorage = whole.dbStorage.getItem;
const nativeId = utools.getNativeId()
const nativeId = utools.getNativeId();
let userData = {
put: function(value, id, isNative = true) {
let userData = getDB(DBPRE.USR + id)
if (isNative) {
userData[nativeId] = value;
} else {
userData.common = value;
delete userData[nativeId];
}
putDB(userData, DBPRE.USR + id);
},
get: function(id) {
let userData = getDB(DBPRE.USR + id)
return userData[nativeId] ? userData[nativeId] : userData.common
},
del: function(id) {
delDB(DBPRE.USR + id)
},
all: function() {
return getAll(DBPRE.USR).map((item) => {
let isNative = !!item.data[nativeId];
return {
id: item._id.replace(DBPRE.USR, ""),
value: isNative ? item.data[nativeId] : item.data.common,
isNative: isNative,
};
})
put: function (value, id, isNative = true) {
let userData = getDB(DBPRE.USR + id);
if (isNative) {
userData[nativeId] = value;
} else {
userData.common = value;
delete userData[nativeId];
}
}
let { ok } = putDB(userData, DBPRE.USR + id);
return ok;
},
get: function (id) {
let userData = getDB(DBPRE.USR + id);
let nativeData = userData[nativeId];
return nativeData ? nativeData : userData.common;
},
del: function (id) {
let { ok } = delDB(DBPRE.USR + id);
return ok;
},
all: function () {
return getAll(DBPRE.USR).map((item) => {
let isNative = !!item.data[nativeId];
return {
id: item._id.replace(DBPRE.USR, ""),
value: isNative ? item.data[nativeId] : item.data.common,
isNative: isNative,
};
});
},
};
export default {
whole,
getDB,
putDB,
delDB,
setStorage,
getStorage,
userData,
getAll,
delAll
}
whole,
getDB,
putDB,
delDB,
setStorage,
getStorage,
userData,
getAll,
delAll,
};