19626
2023-05-24 e6a0a7f9ffb463c5ce78d6770b09eac739f88b15
force-app/main/default/lwc/lexStockApply/lexStockApply.js
@@ -4,7 +4,7 @@
 * @Author: chen jing wu
 * @Date: 2023-04-14 13:04:53
 * @LastEditors: chen jing wu
 * @LastEditTime: 2023-04-14 17:54:56
 * @LastEditTime: 2023-05-24 16:45:55
 */
import { api, wire,LightningElement } from 'lwc';
import { CurrentPageReference } from "lightning/navigation";
@@ -15,6 +15,8 @@
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import { loadScript } from "lightning/platformResourceLoader";
import connection from '@salesforce/resourceUrl/connection20';
import submitProcess  from '@salesforce/apex/OpportunityLightingButtonController.submitProcess';
import LightningConfirm from 'lightning/confirm';
export default class LexStockApply extends LightningElement {
    @api recordId;
    stockApplyStatus;
@@ -35,6 +37,69 @@
          }
        }
    }
    async handleConfirmClick(msg) {
        const result = await LightningConfirm.open({
            message: msg,
            variant: 'headerless',
            label: 'this is the aria-label value',
        });
        console.log(result);
        if(result){
            try {
                updateForStockApplyButton({
                    recordId: this.recordId,
                    flag: true
                }).then(result=>{
                    if(result){
                        this.showToast(result,"error");
                        this.dispatchEvent(new CloseActionScreenEvent);
                        return;
                    }
                    // var request = new window.sforce.ProcessSubmitRequest();
                    // request.objectId = this.recordId;
                    // console.log("s");
                    // console.log(request);
                    // console.log("e");
                    // var processResults = window.sforce.Connection.prototype.process([request]);
                    // console.log(processResults);
                    submitProcess({
                        opportunityId: this.recordId
                    }).then(result=>{
                        if(result){
                            this.showToast(result,"error");
                            updateForStockApplyButton({
                                recordId: this.recordId,
                                flag: false
                            }).then(result=>{
                                if(result){
                                    this.showToast(result,"error");
                                    this.dispatchEvent(new CloseActionScreenEvent);
                                    return;
                                }
                                this.IsLoading = false;
                                this.updateRecordView(this.recordId);
                                this.dispatchEvent(new CloseActionScreenEvent);
                            })
                        }else{
                            this.showToast("成功","success");
                            this.updateRecordView(this.recordId);
                            this.dispatchEvent(new CloseActionScreenEvent);
                        }
                    })
                }).catch(error=>{
                    console.log(error);
                })
                } catch(e) {
                   console.log(e);
                }
        }else{
            this.dispatchEvent(new CloseActionScreenEvent);
            return;
        }
    }
    connectedCallback(){
        init({
            recordId: this.recordId
@@ -49,55 +114,16 @@
        var status = this.stockApplyStatus;
        if (status != '草案中' && status != '填写完毕' && status != '不批准' && status != '' && status != undefined) {
            this.showToast("备货申请状态不正确,不能提交备货申请。","error");
            this.dispatchEvent(new CloseActionScreenEvent);
            return;
        }
        var oppfile = this.lastOpportunityFileId;
        if (oppfile == undefined || oppfile == '') {
            this.showToast("请上传询价文件。","error");
            return;
        }
        if (!confirm("一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?")) {
            this.dispatchEvent(new CloseActionScreenEvent);
            return;
        }
        updateForStockApplyButton({
            recordId: this.recordId,
            flag: true
        }).then(result=>{
            if(result){
                this.showToast(result,"error");
                return;
            }
            Promise.all([
               loadScript(this,connection)
            ]).then(() =>{
                var request = new window.sforce.ProcessSubmitRequest();
                request.objectId = this.recordId;
                console.log("s");
                console.log(request);
                console.log("e");
                var processResults = window.sforce.Connection.prototype.process([request]);
                console.log(processResults);
                if (processResults[0].errors != null) {
                    updateForStockApplyButton({
                        recordId: this.recordId,
                        flag: false
                    }).then(result=>{
                        if(result){
                            this.showToast(result,"error");
                            return;
                        }
                        this.IsLoading = false;
                        this.updateRecordView(this.recordId);
                        this.dispatchEvent(new CloseActionScreenEvent);
                    })
                }
            });
        }).catch(error=>{
            console.log(error);
        })
        this.handleConfirmClick("一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?");
    }
    showToast(msg,type) {
        const event = new ShowToastEvent({