add.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. /*******************************************************************************
  2. * Copyright(c) 2022 dongke All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:
  5. * 2.员工资料-新组建
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * admin 2024-2-12 1.00
  9. *******************************************************************************/
  10. const mixins = require('@/mixins/index.js')
  11. const Constants = require('@/utils/Constants')
  12. Page({
  13. mixins: [mixins],
  14. /**
  15. * 页面的初始数据
  16. */
  17. data: {
  18. cardList: ['main'],
  19. // 底部保存按钮
  20. buttonFootList: [{
  21. name: 'save',
  22. title: mixins.$t('save')
  23. }],
  24. contentObj: {
  25. main: [
  26. { code: 'staffCode', type: 'str', required: true, title: mixins.$t('staffCode') },
  27. { code: 'staffName', type: 'str', required: true, title: mixins.$t('staffName') },
  28. { code: 'staffPhone', type: 'phone', title: mixins.$t('staffPhone'), required: true },
  29. { code: 'orgId', name: 'orgName', type: 'choose', required: true, urlKey: 'chooseOrg' },
  30. { code: 'roleId', name: 'roleName', type: 'choose', required: false, urlKey: 'chooseRole' },
  31. // { code: 'flgCanLogin', type: 'checkbox', title: mixins.$t('flgCanLogin') },
  32. { code: 'remarks', type: 'textarea', title: mixins.$t('remarks') }
  33. ]
  34. },
  35. // 路由
  36. routeObjName: 'staff',
  37. },
  38. /**
  39. * @desc : 选择数据源
  40. * @date : 2024/2/1 15:49
  41. * @author : 姜永辉
  42. */
  43. chooseData(e) {
  44. console.log("chooseData", e);
  45. let formData = JSON.parse(this.data.formData)
  46. let code = e.detail.code
  47. let data = e.detail.data.data
  48. if (code == "staffId") { //员工
  49. formData.staffId = data.id
  50. formData.staffName = data.name
  51. }
  52. if (code == "orgId") { //部门
  53. formData.orgId = data.id
  54. formData.orgName = data.name
  55. }
  56. if (code == "roleId") { //角色
  57. let ids = []
  58. let names = []
  59. if (data && data.list) {
  60. data.list.forEach(element => {
  61. ids.push(element.roleId)
  62. names.push(element.roleName)
  63. });
  64. }
  65. formData.roleIds = ids.join(',')
  66. formData.roleName = names.join(',')
  67. }
  68. this.setData({
  69. formData: JSON.stringify(formData)
  70. })
  71. },
  72. /**
  73. * @desc : 保存的參數設置
  74. * @date : 2024/2/1 15:49
  75. * @author : 姜永辉
  76. */
  77. setParams(params) {
  78. params.roleIds = (params.roleIds && params.roleIds.length > 0) ? params.roleIds.split(',') : []
  79. return params
  80. },
  81. /**
  82. * @desc : 保存数据服务
  83. * @date : 2024/2/1 15:49
  84. * @author : 姜永辉
  85. */
  86. saveData() {
  87. if (this.data.formMode == Constants.formMode.edit) {
  88. return this.excute(this.data.service, this.data.service.update, this.data.params)
  89. } else {
  90. return this.excute(this.data.service, this.data.service.insert, this.data.params)
  91. }
  92. },
  93. /**
  94. * @desc : 给表单赋值
  95. * @date : 2024/2/1 15:49
  96. * @author : 姜永辉
  97. */
  98. setValuesByEdit(data) {
  99. data.roleIds = (data.roleIds && data.roleIds.length > 0) ? data.roleIds.join(',') : undefined
  100. this.setData({
  101. formData: JSON.stringify(data)
  102. })
  103. },
  104. /**
  105. * @desc : 页面加载数据方法
  106. * @date : 2024/2/1 15:49
  107. * @author : 姜永辉
  108. */
  109. loadInit() {
  110. if (this.data.formMode == Constants.formMode.edit) {
  111. wx.setNavigationBarTitle({
  112. title: mixins.$t('staffEdit'),
  113. })
  114. let contentObj_ = this.data.contentObj
  115. contentObj_['main'].forEach(it => {
  116. if (it.code === 'staffCode') {
  117. it.readonly = true
  118. }
  119. })
  120. this.setData({
  121. contentObj: contentObj_
  122. })
  123. } else {
  124. wx.setNavigationBarTitle({
  125. title: mixins.$t('staffAdd'),
  126. })
  127. }
  128. },
  129. })