index.js 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import {defineStore} from 'pinia'
  2. import pinia from "../store/init"
  3. import config from '../config/index';
  4. import {getStorage, setStorage, clearStorage} from "@/utils/storage";
  5. export const useAppStore = defineStore('main', {
  6. state: () => ({
  7. //系统信息
  8. title: config.theme,
  9. //用户信息
  10. tenantId: config.tenantId,
  11. userInfo: getStorage('userInfo') ?? {},
  12. //项目合同段数据
  13. projectInfo: getStorage('projectInfo') ?? {},
  14. contractInfo: getStorage('contractInfo') ?? {},
  15. projectId: getStorage('projectId') ?? '',
  16. contractId: getStorage('contractId') ?? '',
  17. isAnimation: getStorage('isAnimation') ?? false
  18. }),
  19. actions: {
  20. //系统信息
  21. setTitle(value) {
  22. this.title = value
  23. },
  24. //用户信息
  25. setTenantId(value) {
  26. this.tenantId = value
  27. setStorage('tenantId', value)
  28. },
  29. setUserInfo(value) {
  30. this.userInfo = value
  31. setStorage('userInfo', value)
  32. },
  33. //项目合同段数据
  34. setProjectInfo(value) {
  35. this.projectInfo = value
  36. setStorage('projectInfo', value)
  37. },
  38. setContractInfo(value) {
  39. this.contractInfo = value
  40. setStorage('contractInfo', value)
  41. },
  42. setProjectId(value) {
  43. this.projectId = value
  44. setStorage('projectId', value)
  45. },
  46. setContractId(value) {
  47. this.contractId = value
  48. setStorage('contractId', value)
  49. },
  50. setAnimation(value) {
  51. this.isAnimation = value
  52. setStorage('isAnimation', value)
  53. },
  54. //清除缓存和token
  55. clearStoreData() {
  56. //清除状态
  57. this.title = config.theme
  58. //用户信息
  59. this.tenantId = config.tenantId
  60. this.userInfo = {}
  61. //项目合同段数据
  62. this.projectInfo = {}
  63. this.contractInfo = {}
  64. this.projectId = ''
  65. this.contractId = ''
  66. clearStorage()
  67. },
  68. }
  69. })
  70. export default function useUserStoreWidthOut() {
  71. return useAppStore(pinia);
  72. }