123
chenjingwu
2024-04-16 cc914d1a68f71cf0b8fe7f1c4bfac9fc1e54e3d8
force-app/main/default/lwc/lexCancelSubmit/lexCancelSubmit.js
@@ -1,3 +1,11 @@
/*
 * @Description:
 * @version:
 * @Author: chen jing wu
 * @Date: 2023-04-07 09:02:03
 * @LastEditors: chen jing wu
 * @LastEditTime: 2023-10-10 17:32:11
 */
import { LightningElement,wire,track,api} from 'lwc';
import { CurrentPageReference } from "lightning/navigation";
import { CloseActionScreenEvent } from 'lightning/actions';
@@ -7,57 +15,94 @@
import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
import { updateRecord } from 'lightning/uiRecordApi';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
import {loadStyle} from 'lightning/platformResourceLoader';
export default class LexCancelSubmit extends LightningElement {
    @api recordId;//OwnerId
    ownerId;
    monthlyReportId;
    userId;
    IsLoading = true;
    @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 != null) {
                this.IsLoading = false;
                this.ownerId = result.ownerId;
                this.userId = result.userId;
                this.monthlyReportId = result.Id;
                this.cancelSubmit();
                console.log("end");
                this.dispatchEvent(new CloseActionScreenEvent());
                this.showToast();
                this.updateRecordView(this.recordId);
                //window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Monthly_Report__c/" + this.monthlyReportId + "/view");
            }
        }).catch(error => {
            console.log("error");
            console.log(error);
        }).finally(() => {
        });   
    }
    showToast() {
        const event = new ShowToastEvent({
            title: '',
            message: '取消提交成功!',
            variant: 'success'
        });
        this.dispatchEvent(event);
    showToast(msg,type) {
        if(type == 'success'){
            const event = new ShowToastEvent({
                message: msg,
                variant: type,
            });
            this.dispatchEvent(event);
            this.dispatchEvent(new CloseActionScreenEvent());
        }else{
            const event = new ShowToastEvent({
                message: msg,
                variant: type,
                mode: 'sticky'
            });
            this.dispatchEvent(event);
            this.dispatchEvent(new CloseActionScreenEvent());
        }
    }
    updateRecordView(recordId) {
        updateRecord({fields: { Id: recordId }});
    }
    cancelSubmit () {
        //需要完善
        if(this.ownerId == UserInfo_Owner.Id) {
        if(this.ownerId == this.userId) {
            cancel({
                recordId: this.recordId
            }).then(result=>{
                if(result){
                    this.showToast(result,"error");
                }else{
                    this.showToast("成功","success");
                    this.updateRecordView(this.recordId);
                }
                this.IsLoading = false;
                this.dispatchEvent(new CloseActionScreenEvent());
            });
            console.log("321");
            } else {
            this.showToast("只有周报的所有人可以取消","error");
            this.dispatchEvent(new CloseActionScreenEvent());
            }
    }
}