func-parse.ts 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import { MatDialog } from "@angular/material/dialog";
  2. import { CompComfirmDialogComponent } from "../app/comp-comfirm-dialog/comp-comfirm-dialog.component";
  3. import { CompEditObjectComponent } from "../app/comp-table/comp-edit-object/comp-edit-object.component";
  4. export interface ParseSchema{
  5. title:string,
  6. subTitle?:string,
  7. className:string,
  8. fieldsArray:Array<ParseField>,
  9. include?:Array<string>,
  10. buttons?:Array<any>,
  11. emptyImg?:String,
  12. emptyDesc?:String,
  13. nzWidthConfig?:Array<string>
  14. }
  15. export interface ParseField{
  16. key:string
  17. name:string
  18. type:string
  19. isDisabled?:boolean
  20. targetClass?:string
  21. showName?:string
  22. isHeader?:boolean
  23. options?:Array<ParseFiledOption>
  24. }
  25. export interface ParseFiledOption{
  26. label:string
  27. value:string
  28. }
  29. /**
  30. * 创建集装箱
  31. * @param dialog
  32. * @param cluster
  33. * @param afterClosed
  34. */
  35. export function openObjectEditDialog(dialog: MatDialog,schema:ParseSchema, object?: Parse.Object, afterClosed?: Function): void {
  36. let dialogRef = dialog.open(CompEditObjectComponent, {
  37. data: {
  38. title: schema?.title,
  39. fieldsArray: schema?.fieldsArray,
  40. default: {
  41. // center: this.center?.toPointer(),
  42. // type: "cluster",
  43. // isOnline: true,
  44. },
  45. schema:schema,
  46. object: object,
  47. },
  48. });
  49. dialogRef.afterClosed().subscribe(result => {
  50. console.log('The dialog was closed', result);
  51. afterClosed && afterClosed(result)
  52. });
  53. }
  54. export function confirmDialog(dialog:MatDialog, options: {
  55. title: string,
  56. mode?: string,
  57. danger?: boolean,
  58. message?: string,
  59. handleOK?: Function
  60. }) {
  61. let dialogRef = dialog.open(CompComfirmDialogComponent, {
  62. data: {
  63. title: options?.title,
  64. message: options?.message,
  65. mode: options?.mode,
  66. danger: options?.danger,
  67. },
  68. });
  69. dialogRef.afterClosed().subscribe(isOK => {
  70. isOK && options?.handleOK && options?.handleOK()
  71. });
  72. }