KKbes
2023-04-13 87861ae5f1ed5456685f97f8a8e7625e47b9576d
force-app/main/default/lwc/lexUploadToSap/lexUploadToSap.js
New file
@@ -0,0 +1,155 @@
import {
    LightningElement,
    wire,
    api
} from 'lwc';
import {
    CurrentPageReference
} from "lightning/navigation";
import {
    CloseActionScreenEvent
} from 'lightning/actions';
import init from '@salesforce/apex/otherButtonMaintenanceContractCtl.init';
import updateColunm from '@salesforce/apex/MaintenanceContractSetColunmWebService.updateColunm';
import updateFirstContract from '@salesforce/apex/updateFirstServiceContractWebService.updateFirstContract';
import Check_plan from '@salesforce/apex/MaintenanceContractWebService.Check_plan';
import up2sap from '@salesforce/apex/MaintenanceContractWebService.up2sap';
import {
    ShowToastEvent
} from 'lightning/platformShowToastEvent';
export default class LexUploadToSap extends LightningElement {
    @api recordId;
    str;
    IsLoading = true;
    MCApprovalStatusC;
    MaintenanceContractNoC;
    uploadToSapTimeC;
    oldIsRecognitionModelC;
    uploadToRMTimeC;
    IsRecognitionModelTrueC;
    Id;
    URFContractFC;
    urfFlag;
    rtn1;
    rtn;
    @wire(CurrentPageReference)
    getStateParameters(currentPageReference) {
        if (currentPageReference) {
            const urlValue = currentPageReference.state.recordId;
            if (urlValue) {
                let str = `${urlValue}`;
                this.recordId = str;
            }
        }
    }
    connectedCallback() {
        console.log(this.recordId);
        init({
            recordId: this.recordId
        }).then(result => {
            console.log(result);
            if (result != null) {
                this.IsLoading = false;
                this.MCApprovalStatusC = result.MCApprovalStatusC;
                this.MaintenanceContractNoC = result.MaintenanceContractNoC;
                this.uploadToSapTimeC = result.uploadToSapTimeC;
                this.oldIsRecognitionModelC = result.oldIsRecognitionModelC;
                this.uploadToRMTimeC = result.uploadToRMTimeC;
                this.IsRecognitionModelTrueC = result.IsRecognitionModelTrueC;
                this.Id = result.Id;
                this.URFContractFC = result.URFContractFC;
                this.uploadToSap();
                this.dispatchEvent(new CloseActionScreenEvent());
            }
        }).catch(error => {
            console.log(error);
        }).finally(() => {
        });
    }
    // 上传SAP
    uploadToSap() {
        if (this.MCApprovalStatusC != 'Pass') {
            this.ShowToastEvent("合同复核批准后才可以上传SAP。", "error")
            // alert("合同复核批准后才可以上传SAP。");
        } else if (this.MaintenanceContractNoC == undefined) {
            this.ShowToastEvent('维修合同管理编码为空,不能上传SAP。', "error")
            // alert('维修合同管理编码为空,不能上传SAP。');
        } else if (this.uploadToSapTimeC != undefined) {
            this.ShowToastEvent('已经上传SAP,不能重复上传。', "error")
            // alert('已经上传SAP,不能重复上传。');
        } else {
            if (this.oldIsRecognitionModelC) {
                if (this.uploadToRMTimeC == undefined) {
                    this.ShowToastEvent('当前维修合同的经销商是先款对象,需要先【上传认款合同】,然后完成认款以后才能上传SAP。', "error")
                    // alert('当前维修合同的经销商是先款对象,需要先【上传认款合同】,然后完成认款以后才能上传SAP。');
                    return;
                } else {
                    if (!this.IsRecognitionModelTrueC) {
                        this.ShowToastEvent('当前维修合同没有完成认款,不能上传SAP。', "error")
                        // alert('当前维修合同没有完成认款,不能上传SAP。');
                        return;
                    }
                }
            }
            updateColunm({
                mcid: this.Id
            }).then(result => {
                if (result != '1') {
                    this.ShowToastEvent('上传SAP失败,因为 来年合同相关信息修改失败', "error")
                    // alert('上传SAP失败,因为 来年合同相关信息修改失败');
                }
            });
            updateFirstContract({
                mcid: this.Id
            }).then(result => {
                if (result != '1') {
                    this.ShowToastEvent(result, "error")
                    // alert(result);
                }
            });
            this.urfFlag = this.URFContractFC;
            this.rtn1 = '1';
            this.rtn = '1';
            if (this.urfFlag == 'false') {
                Check_plan({
                    mcidList: this.Id
                }).then(result => {
                    this.rtn1 = result;
                });
            }
            if (this.rtn1 == '1') {
                up2sap({
                    mcid: this.Id
                }).then(result => {
                    this.rtn = result;
                });
                if (this.rtn == '1') {
                    this.ShowToastEvent("上传SAP成功", "success")
                    // alert("上传SAP成功");
                    window.location.replace("https://ocsm--partial.sandbox.lightning.force.com/lightning/r/Maintenance_Contract__c/" + this.recordId + "/view");
                } else {
                    this.ShowToastEvent(this.rtn, "error")
                    // alert(this.rtn);
                }
            } else {
                this.ShowToastEvent(this.rtn1, "error")
                // alert(this.rtn1);
            }
        }
    }
    // 弹窗
    ShowToastEvent(msg, type) {
        const event = new ShowToastEvent({
            title: '',
            message: msg,
            variant: type
        });
        this.dispatchEvent(event);
    }
}