1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
/*
 * @Description: 
 * @version: 
 * @Author: chen jing wu
 * @Date: 2023-05-08 14:36:32
 * @LastEditors: chen jing wu
 * @LastEditTime: 2023-09-14 16:10:05
 */
import { LightningElement,wire,track,api} from 'lwc';
import { CurrentPageReference } from "lightning/navigation";
import { CloseActionScreenEvent } from 'lightning/actions';
import init  from '@salesforce/apex/ReportController.initForASACEditorButton';
import { NavigationMixin } from 'lightning/navigation';
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
import {loadStyle} from 'lightning/platformResourceLoader';
export default class LexASACEditor extends NavigationMixin(LightningElement) {
    @api recordId;
    lastModifiedDate
    id
    name
    lastModifiedById
    developerName
    IsLoading = true;
    url;
    @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
             console.log(111);
             console.log(currentPageReference);
 
         if (currentPageReference) {
           const urlValue = currentPageReference.state.recordId;
           if (urlValue) {
             let str = `${urlValue}`;
             console.log("str");
             console.log(str);
             this.recordId = str;
           }
         }
     }
    
    connectedCallback () {
        Promise.all([
            loadStyle(this, lwcCSS)
           ]);
           
        console.log(this.recordId);
        init({
            recordId: this.recordId
        }).then(result => {
            console.log(result);
            if (result != undefined) {
                console.log("if");
                this.lastModifiedById = result.lastModifiedById;
                this.lastModifiedDate = result.lastModifiedDate;
                this.id = result.id;
                this.name = result.name;
                this.developerName = result.developerName;
                this.editor();
                this.dispatchEvent(new CloseActionScreenEvent());
            }else{
                console.log("else");
                this.IsLoading = false;
                this.editor();
                this.dispatchEvent(new CloseActionScreenEvent());
            }
        }).catch(error => {
            console.log("error");
            console.log(error);
        }).finally(() => {
            
        });   
        //this.updateRecordView(this.recordId);
 
    }
 
    editor(){
        if (this.id != undefined){
            this.url = "/apex/RepPAEDecisionRecord?Id="+this.id+"&ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision"; 
        } else {
            this.url = "/apex/RepPAEDecisionRecord?ReportId="+this.recordId+"&RecordTypeIds="+"ASACDecision";
        }
        this[NavigationMixin.Navigate]({
            type: 'standard__webPage',
            attributes: {
                url: this.url
            }
        });
        // window.open(this.url,"_self");
    }
}