choose-org.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*******************************************************************************
  2. * Copyright(c) 2022 dongke All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:
  5. * 2.组织机构列表
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 王英杰 2024-2-12 1.00
  9. *******************************************************************************/
  10. const Constants = require('@/utils/Constants.js');
  11. const mixins = require('@/mixins/index.js')
  12. const util = require('@/utils/util.js')
  13. const app = getApp()
  14. Page({
  15. mixins: [mixins],
  16. /**
  17. * 页面的初始数据
  18. */
  19. data: {
  20. addForm: {},
  21. // 路由
  22. routeObjName: 'org',
  23. // 不分页
  24. pageFlag: false,
  25. // 一级部门
  26. tableTopData: [],
  27. },
  28. /**
  29. * @desc : 设置查询参数
  30. * @date : 2024/2/1 15:49
  31. * @author : 王英杰
  32. */
  33. setSearchParams(params) {
  34. params.pageSize = null
  35. params.currentPage = null
  36. let item = this.data.item;
  37. if(item){
  38. params.orgId = item.editFlag ? (item.orgId_social || null) : null
  39. params.parentId = item.editFlag ? (item.parentId_social || null) : null
  40. }
  41. return params
  42. },
  43. /**
  44. * @desc : 查询
  45. * @date : 2024/2/1 15:49
  46. * @author : 王英杰
  47. */
  48. getData(params) {
  49. return this.excute(this.data.service, this.data.service.selectChooseOrg, params);
  50. },
  51. /**
  52. * @desc : 查询 后续处理
  53. * @date : 2024/2/1 15:49
  54. * @author : 王英杰
  55. */
  56. handleSearchData(data) {
  57. let tableData = []
  58. // 先获取二级
  59. let filters = data.filter(it => it.levelNo == 2);
  60. let childs = []
  61. if (filters && filters.length > 0) {
  62. filters.forEach(it => {
  63. // 再获取二级的子级,根据levelCode过滤
  64. childs = data.filter(t => t.levelCode.startsWith(it.levelCode) && t.levelNo > 2);
  65. it.children = childs
  66. tableData.push(it);
  67. })
  68. }
  69. let tableTopData = data.filter(it => it.levelNo == 1);
  70. this.setData({
  71. tableData: tableData,
  72. tableTopData: tableTopData
  73. })
  74. },
  75. /**
  76. * @desc : 选择数据
  77. * @date : 2024/4/29 15:49
  78. * @author : 周兴
  79. */
  80. chooseData(e) {
  81. let item = e.currentTarget.dataset.item
  82. const eventChannel = this.getOpenerEventChannel();
  83. eventChannel.emit('bindData', {
  84. data: {
  85. id: item.orgId,
  86. name: item.orgName
  87. }
  88. })
  89. wx.navigateBack({
  90. delta: 1
  91. })
  92. },
  93. })