dbUtil.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /** auther: mmm desc: 缓存最近的消息记录 */
  2. function queryData(gid) {
  3. let list = uni.getStorageSync('msgItem_'+ gid);
  4. return new Promise((resolve,reject) =>{
  5. try{
  6. if(list==""){
  7. resolve([]);
  8. return;
  9. }
  10. list = JSON.parse(list);
  11. list.sort((a, b) => { return a.id - b.id });
  12. }catch(e){
  13. reject(e)
  14. }
  15. resolve(list);
  16. })
  17. }
  18. function initData(list, gid){
  19. uni.setStorageSync('msgItem_' + gid, JSON.stringify(list));
  20. }
  21. function upCanceData(id,gid,obj){
  22. let list = uni.getStorageSync('msgItem_'+ gid);
  23. if(list==""){
  24. let tempItem = [];
  25. tempItem.push(JSON.parse(JSON.stringify(obj)));
  26. uni.setStorageSync('msgItem_' + gid, JSON.stringify(tempItem));
  27. return;
  28. }
  29. list = JSON.parse(list);
  30. for(var i in list){
  31. if(list[i].id===id){
  32. list.splice(i,1);
  33. }
  34. }
  35. uni.setStorageSync('msgItem_' + gid, JSON.stringify(list));
  36. }
  37. function upRedData(id,gid,msgContext){
  38. let list = uni.getStorageSync('msgItem_'+ gid);
  39. if(list==""){
  40. let tempItem = [];
  41. tempItem.push(JSON.parse(JSON.stringify(obj)));
  42. uni.setStorageSync('msgItem_' + gid, JSON.stringify(tempItem));
  43. return;
  44. }
  45. list = JSON.parse(list);
  46. for(var i in list){
  47. if(list[i].id===id){
  48. list[i].msgContext = msgContext;
  49. }
  50. }
  51. uni.setStorageSync('msgItem_' + gid, JSON.stringify(list));
  52. }
  53. function upData(obj, gid){
  54. let list = uni.getStorageSync('msgItem_'+ gid);
  55. if(list==""){
  56. let tempItem = [];
  57. tempItem.push(JSON.parse(JSON.stringify(obj)));
  58. uni.setStorageSync('msgItem_' + gid, JSON.stringify(tempItem));
  59. return;
  60. }
  61. list = JSON.parse(list);
  62. if(list.length>=10){
  63. list.splice(0,1);
  64. }
  65. list.push(JSON.parse(JSON.stringify(obj)));
  66. uni.setStorageSync('msgItem_' + gid, JSON.stringify(list));
  67. }
  68. export {
  69. initData,
  70. queryData,
  71. upData,
  72. upRedData,
  73. upCanceData
  74. }