Profile-list.ts 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. import { MatDialog } from '@angular/material/dialog';
  2. import { Router } from '@angular/router';
  3. import Parse from 'parse';
  4. import { ParseSchema } from './func-parse';
  5. export const Profile: ParseSchema = {
  6. title: '报送人',
  7. className: 'Profile',
  8. emptyImg: '/img/webhook-empty.png',
  9. include: ['user'],
  10. buttons: [
  11. {
  12. name: '编辑',
  13. place: 'item',
  14. show: (options: { object: Parse.Object }) => {
  15. if (location?.pathname == '/nav-admin/manage/user') {
  16. return true;
  17. }
  18. return false;
  19. },
  20. handle: (options: {
  21. dialog: MatDialog;
  22. object: Parse.Object;
  23. router?: Router;
  24. }) => {
  25. options.router?.navigate([
  26. '/nav-admin/manage/user/edit',
  27. { id: options.object?.get('user').id },
  28. ]);
  29. },
  30. },
  31. {
  32. name: '通过账号',
  33. place: 'item',
  34. show: (options: { object: Parse.Object }) => {
  35. if (
  36. location?.pathname == '/nav-admin/manage/user' &&
  37. options.object?.get('user')?.get('accountState') == '待认证'
  38. ) {
  39. return true;
  40. }
  41. return false;
  42. },
  43. handle: (options: {
  44. dialog: MatDialog;
  45. object: Parse.Object;
  46. router?: Router;
  47. modal: any;
  48. }) => {
  49. options.modal?.confirm({
  50. nzTitle: '确定通过认证吗?',
  51. nzContent: '',
  52. nzOkText: '确认',
  53. nzOkType: 'primary',
  54. nzOkDanger: true,
  55. nzOnOk: async () => {
  56. let query = new Parse.Query('_User');
  57. query.equalTo('objectId', options.object.get('user')?.id);
  58. let user = await query.first();
  59. user?.set('accountState', '已认证');
  60. await user?.save();
  61. history.go(0);
  62. },
  63. nzCancelText: '取消',
  64. nzOnCancel: () => console.log('Cancel'),
  65. });
  66. },
  67. },
  68. {
  69. name: '禁用账号',
  70. place: 'item',
  71. show: (options: { object: Parse.Object }) => {
  72. if (location?.pathname == '/nav-admin/manage/user') {
  73. return true;
  74. }
  75. return false;
  76. },
  77. handle: (options: {
  78. dialog: MatDialog;
  79. object: Parse.Object;
  80. router?: Router;
  81. modal: any;
  82. }) => {
  83. options.modal?.confirm({
  84. nzTitle: '确定禁用账号吗?',
  85. nzContent: '禁用后用户将不能登录',
  86. nzOkText: '确认',
  87. nzOkType: 'primary',
  88. nzOkDanger: true,
  89. nzOnOk: async () => {
  90. let query = new Parse.Query('_User');
  91. query.equalTo('objectId', options.object.get('user')?.id);
  92. let user = await query.first();
  93. console.log(user);
  94. user?.set('accountState', '已禁用');
  95. await user?.save();
  96. history.go(0);
  97. },
  98. nzCancelText: '取消',
  99. nzOnCancel: () => console.log('Cancel'),
  100. });
  101. },
  102. },
  103. {
  104. name: '删除账号',
  105. place: 'item',
  106. show: (options: { object: Parse.Object }) => {
  107. if (location?.pathname == '/nav-admin/manage/user') {
  108. return true;
  109. }
  110. return false;
  111. },
  112. handle: (options: {
  113. dialog: MatDialog;
  114. object: Parse.Object;
  115. router?: Router;
  116. modal:any
  117. }) => {
  118. options.modal?.confirm({
  119. nzTitle: '确定删除账号吗?',
  120. nzContent: '删除后不可恢复',
  121. nzOkText: '确认',
  122. nzOkType: 'primary',
  123. nzOkDanger: true,
  124. nzOnOk: async () => {
  125. let query = new Parse.Query('_User');
  126. query.equalTo('objectId', options.object.get('user')?.id);
  127. let user = await query.first();
  128. user?.set('isDeleted', true);
  129. await user?.save();
  130. history.go(0);
  131. },
  132. nzCancelText: '取消',
  133. nzOnCancel: () => console.log('Cancel'),
  134. });
  135. },
  136. },
  137. ],
  138. fieldsArray: [
  139. {
  140. key: 'user',
  141. name: '用户',
  142. type: 'Pointer',
  143. targetClass: '_User',
  144. isHeader: true,
  145. showName: '${name}',
  146. },
  147. {
  148. key: 'user',
  149. name: '手机号',
  150. type: 'Pointer',
  151. targetClass: '_User',
  152. isHeader: true,
  153. showName: '${phone}',
  154. },
  155. // {
  156. // key: 'user',
  157. // name: '邮箱',
  158. // type: 'Pointer',
  159. // targetClass: '_User',
  160. // isHeader: true,
  161. // showName: '${email}',
  162. // },
  163. { key: 'email', name: '邮箱', type: 'String', isHeader: true },
  164. { key: 'identity', name: '人员类型', type: 'String', isHeader: true },
  165. {
  166. key: 'user',
  167. name: '认证状态',
  168. type: 'Pointer',
  169. targetClass: '_User',
  170. isHeader: true,
  171. showName: '${accountState}',
  172. },
  173. { key: 'companyType', name: '单位类型', type: 'String', isHeader: true },
  174. // {key:"mobile",name:"手机号",type:"String",isHeader:true},
  175. // {key:"emal",name:"邮箱",type:"String",isHeader:true},
  176. // {key:"createdAt",name:"创建时间",type:"Date",isHeader:true,},
  177. ],
  178. };