index.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. const _Http = getApp().globalData.http;
  2. Component({
  3. properties: {
  4. isdep: {
  5. type: Boolean,
  6. value: true
  7. },
  8. isusers: {
  9. type: Boolean,
  10. value: true
  11. },
  12. defaultMy: {
  13. type: Boolean,
  14. value: true
  15. },
  16. exclution: {
  17. type: Boolean,
  18. value: true
  19. },
  20. dimissionF: {
  21. type: Boolean
  22. }
  23. },
  24. lifetimes: {
  25. attached: function () {
  26. getApp().globalData.Language.getLanguagePackage(this)
  27. }
  28. },
  29. data: {
  30. takeEffect: "", //生效筛选项
  31. result: {},
  32. isleave: 0,
  33. tabs: [{
  34. value: 0,
  35. name: "全部"
  36. }, {
  37. value: 1,
  38. name: "在职"
  39. }, {
  40. value: 2,
  41. name: "离职"
  42. }],
  43. searchValue: ""
  44. },
  45. methods: {
  46. searchChange({
  47. detail
  48. }) {
  49. if (detail.length == 0) return this.searchClear()
  50. let list = JSON.parse(JSON.stringify(this.data.users.copyList));
  51. this.setData({
  52. 'users.list': list.filter(v => v.name.includes(detail) || v.accountno.includes(detail))
  53. })
  54. },
  55. searchClear() {
  56. this.setData({
  57. 'users.list': JSON.parse(JSON.stringify(this.data.users.copyList))
  58. })
  59. },
  60. changLeave(e) {
  61. this.setData({
  62. isleave: e.currentTarget.dataset.value,
  63. 'result.isleave': e.currentTarget.dataset.value
  64. })
  65. },
  66. initDepAndUser() {
  67. this.setData({
  68. result: {},
  69. takeEffect: ""
  70. })
  71. return new Promise((resolve) => {
  72. _Http.basic({
  73. "id": 20230620102004,
  74. "content": {}
  75. }).then(res => {
  76. console.log("获取部门", res)
  77. if (this.data.isdep) this.setData({
  78. depGroud: [{
  79. label: "部门",
  80. list: res.data.dep,
  81. active: ""
  82. }]
  83. })
  84. if (this.data.isusers) {
  85. let active = ''
  86. if (this.data.defaultMy) {
  87. let user = res.data.hr.find(v => v.userid == wx.getStorageSync('userMsg').userid)
  88. if (user) {
  89. active = user.userid;
  90. resolve(user)
  91. this.setData({
  92. takeEffect: "user",
  93. result: user
  94. })
  95. }
  96. }
  97. this.setData({
  98. users: {
  99. label: "业务员",
  100. list: res.data.hr,
  101. copyList: res.data.hr,
  102. active
  103. }
  104. })
  105. }
  106. resolve({})
  107. })
  108. })
  109. },
  110. selectDep(e) {
  111. const {
  112. item,
  113. index
  114. } = e.currentTarget.dataset;
  115. let depGroud = this.data.depGroud.slice(0, index + 1);
  116. depGroud[index].active = item.departmentid;
  117. if (item.subdep.length) {
  118. item.subdep.unshift(JSON.parse(JSON.stringify(item)))
  119. item.subdep[0].depname = getApp().globalData.Language.getMapText('全部');
  120. item.subdep[0].subdep = [];
  121. depGroud.push({
  122. label: item.depname + getApp().globalData.Language.getMapText('下级部门'),
  123. list: item.subdep,
  124. active: item.departmentid
  125. })
  126. }
  127. item.name = item.depname
  128. item.isleave = this.data.isleave;
  129. this.setData({
  130. depGroud,
  131. takeEffect: "dep",
  132. result: item
  133. })
  134. },
  135. selectUser(e) {
  136. const {
  137. item
  138. } = e.currentTarget.dataset;
  139. this.setData({
  140. 'users.active': item.userid,
  141. takeEffect: "user",
  142. result: item
  143. })
  144. },
  145. }
  146. })