app.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. import Vue from 'vue'
  2. import { employeeQueryList } from '@/api/expenseManagement'
  3. import { getLookUpData, listLookUp } from '@/api/data'
  4. import {
  5. SIDEBAR_TYPE,
  6. DEFAULT_THEME,
  7. DEFAULT_LAYOUT_MODE,
  8. DEFAULT_COLOR,
  9. DEFAULT_COLOR_WEAK,
  10. DEFAULT_FIXED_HEADER,
  11. DEFAULT_FIXED_SIDEMENU,
  12. DEFAULT_FIXED_HEADER_HIDDEN,
  13. DEFAULT_CONTENT_WIDTH_TYPE,
  14. DEFAULT_MULTI_TAB
  15. } from '@/store/mutation-types'
  16. const app = {
  17. state: {
  18. sidebar: true,
  19. device: 'desktop',
  20. theme: '',
  21. layout: '',
  22. contentWidth: '',
  23. fixedHeader: false,
  24. fixSiderbar: false,
  25. autoHideHeader: false,
  26. color: null,
  27. weak: false,
  28. multiTab: true,
  29. isNewTab: false,
  30. isNewSubTab: false,
  31. updateList: false,
  32. winHeight: 0 ,// 窗口高度
  33. loadingStatus: false,
  34. closeTabPages: [], // 已关闭的页面
  35. employeeList: [], // 申请人列表
  36. returnReason: [], // 申请退货列表
  37. },
  38. mutations: {
  39. SET_SIDEBAR_TYPE: (state, type) => {
  40. state.sidebar = type
  41. Vue.ls.set(SIDEBAR_TYPE, type)
  42. },
  43. CLOSE_SIDEBAR: (state) => {
  44. Vue.ls.set(SIDEBAR_TYPE, true)
  45. state.sidebar = false
  46. },
  47. TOGGLE_DEVICE: (state, device) => {
  48. state.device = device
  49. },
  50. TOGGLE_THEME: (state, theme) => {
  51. // setStore('_DEFAULT_THEME', theme)
  52. Vue.ls.set(DEFAULT_THEME, theme)
  53. state.theme = theme
  54. },
  55. TOGGLE_LAYOUT_MODE: (state, layout) => {
  56. Vue.ls.set(DEFAULT_LAYOUT_MODE, layout)
  57. state.layout = layout
  58. },
  59. TOGGLE_FIXED_HEADER: (state, fixed) => {
  60. Vue.ls.set(DEFAULT_FIXED_HEADER, fixed)
  61. state.fixedHeader = fixed
  62. },
  63. TOGGLE_FIXED_SIDERBAR: (state, fixed) => {
  64. Vue.ls.set(DEFAULT_FIXED_SIDEMENU, fixed)
  65. state.fixSiderbar = fixed
  66. },
  67. TOGGLE_FIXED_HEADER_HIDDEN: (state, show) => {
  68. Vue.ls.set(DEFAULT_FIXED_HEADER_HIDDEN, show)
  69. state.autoHideHeader = show
  70. },
  71. TOGGLE_CONTENT_WIDTH: (state, type) => {
  72. Vue.ls.set(DEFAULT_CONTENT_WIDTH_TYPE, type)
  73. state.contentWidth = type
  74. },
  75. TOGGLE_COLOR: (state, color) => {
  76. Vue.ls.set(DEFAULT_COLOR, color)
  77. state.color = color
  78. },
  79. TOGGLE_WEAK: (state, flag) => {
  80. Vue.ls.set(DEFAULT_COLOR_WEAK, flag)
  81. state.weak = flag
  82. },
  83. TOGGLE_MULTI_TAB: (state, bool) => {
  84. Vue.ls.set(DEFAULT_MULTI_TAB, bool)
  85. state.multiTab = bool
  86. },
  87. SET_WIN_HEIGHT: (state, val) => {
  88. state.winHeight = val
  89. },
  90. SET_loadingStatus: (state, val) => {
  91. state.loadingStatus = val
  92. },
  93. SET_employeeList:(state, val) => {
  94. state.employeeList = val
  95. },
  96. SET_returnReason:(state, val) => {
  97. state.returnReason = val
  98. },
  99. },
  100. actions: {
  101. setSidebar ({ commit }, type) {
  102. commit('SET_SIDEBAR_TYPE', type)
  103. },
  104. CloseSidebar ({ commit }) {
  105. commit('CLOSE_SIDEBAR')
  106. },
  107. ToggleDevice ({ commit }, device) {
  108. commit('TOGGLE_DEVICE', device)
  109. },
  110. ToggleTheme ({ commit }, theme) {
  111. commit('TOGGLE_THEME', theme)
  112. },
  113. ToggleLayoutMode ({ commit }, mode) {
  114. commit('TOGGLE_LAYOUT_MODE', mode)
  115. },
  116. ToggleFixedHeader ({ commit }, fixedHeader) {
  117. if (!fixedHeader) {
  118. commit('TOGGLE_FIXED_HEADER_HIDDEN', false)
  119. }
  120. commit('TOGGLE_FIXED_HEADER', fixedHeader)
  121. },
  122. ToggleFixSiderbar ({ commit }, fixSiderbar) {
  123. commit('TOGGLE_FIXED_SIDERBAR', fixSiderbar)
  124. },
  125. ToggleFixedHeaderHidden ({ commit }, show) {
  126. commit('TOGGLE_FIXED_HEADER_HIDDEN', show)
  127. },
  128. ToggleContentWidth ({ commit }, type) {
  129. commit('TOGGLE_CONTENT_WIDTH', type)
  130. },
  131. ToggleColor ({ commit }, color) {
  132. commit('TOGGLE_COLOR', color)
  133. },
  134. ToggleWeak ({ commit }, weakFlag) {
  135. commit('TOGGLE_WEAK', weakFlag)
  136. },
  137. ToggleMultiTab ({ commit }, bool) {
  138. commit('TOGGLE_MULTI_TAB', bool)
  139. },
  140. SetWinHeight ({ commit }, val) {
  141. commit('SET_WIN_HEIGHT', val)
  142. },
  143. GetEmployeeList({ commit }, val) {
  144. employeeQueryList({}).then(res => {
  145. if (res.status == 200) {
  146. commit('SET_employeeList', res.data)
  147. } else {
  148. commit('SET_employeeList', [])
  149. }
  150. })
  151. },
  152. getLookUpData({ commit }, code, isEnable) {
  153. getLookUpData({
  154. pageNo: 1,
  155. pageSize: 1000,
  156. lookupCode: code,
  157. isEnable: isEnable ? 1 : undefined
  158. }).then(res => {
  159. if (res.status == 200) {
  160. commit('SET_returnReason', res.data.list)
  161. }else{
  162. commit('SET_returnReason', [])
  163. }
  164. })
  165. },
  166. }
  167. }
  168. export default app