黄千龙
2023-05-26 7986d6aaf7e235f2f5a7dac7345f97a76ac00b97
force-app/main/default/lwc/lexRCSubmit/lexRCSubmit.js
@@ -1,12 +1,10 @@
import { LightningElement,wire,track,api} from 'lwc';
import { CurrentPageReference } from "lightning/navigation";
import { CloseActionScreenEvent } from 'lightning/actions';
import { NavigationMixin } from 'lightning/navigation';
import LightningConfirm from 'lightning/confirm';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import init  from '@salesforce/apex/QISReportController.initForRCSubmitButton';
import updateQis  from '@salesforce/apex/QISReportController.updateQisWithRC';
import UserInfo_Owner from '@salesforce/apex/TaskFeedbackController.UserInfo_Owner';
import { updateRecord } from 'lightning/uiRecordApi';
export default class lexRCSubmit extends LightningElement {
   @api recordId;
@@ -21,6 +19,7 @@
   QISReplyDay;
   RCproblemnotfound;
   type;
    err;
   @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
             console.log(111);
@@ -43,19 +42,14 @@
        }).then(result => {
            this.IsLoading = false;
            this.qisReportId = result.Id;
            this.qisStatus = result.QIStatus;
            this.OSHstaff = result.OSHstaff;
            this.OSHstaffEmail = result.OSHstaffEmail;
            this.CancelQISReason = result.CancelQISReason;
            this.Rcid = result.RCid;
            this.RCinspectionDate = result.RCinspectionDate;
            this.QISReplyDay = result.QISReplyDay;
            this.RCproblemnotfound = result.RCproblemnotfound;
            console.log('this.qisStatus='+this.qisStatus);
            console.log('this.CancelQISReason='+this.CancelQISReason);
            console.log('this.Rcid='+this.Rcid);
            console.log('this.RCproblemnotfound='+this.RCproblemnotfound);
            console.log('this.RCinspectionDate='+this.RCinspectionDate);
            this.qisStatus = result.qIStatus;
            this.OSHstaff = result.oSHstaff;
            this.OSHstaffEmail = result.oSHstaffEmail;
            this.CancelQISReason = result.cancelQISReason;
            this.Rcid = result.rCid;
            this.RCinspectionDate = result.rCinspectionDate;
            this.QISReplyDay = result.qISReplyDay;
            this.RCproblemnotfound = result.rCproblemnotfound;
            if (this.qisStatus!='RC检测中') {
                const evt = new ShowToastEvent({
                        title : '已经提交审批',
@@ -66,6 +60,7 @@
                this.dispatchEvent(new CloseActionScreenEvent());
               return;
            }
            console.log('this.RCproblemnotfound='+(this.QISReplyDay!=null  && this.RCproblemnotfound));
            if (this.CancelQISReason!=null) {
               if (this.qisStatus == 'RC检测申请') {
                    const evt = new ShowToastEvent({
@@ -97,7 +92,8 @@
                    this.dispatchEvent(new CloseActionScreenEvent());
               return;
               }
               if (this.QISReplyDay!=null  && this.RCproblemnotfound == 'true') {
               if (this.QISReplyDay!=null  && this.RCproblemnotfound) {
                    const evt = new ShowToastEvent({
                        title : '最终判定时,请取消[故障未发现留下继续观察]并选择[对应方法]',
                        message: '',
@@ -107,34 +103,47 @@
                    this.dispatchEvent(new CloseActionScreenEvent());
               return;
               }
               if (confirm("一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?")) {
                  this.type = '1';
            }else{
                    this.dispatchEvent(new CloseActionScreenEvent());
                    return;
                }
                LightningConfirm.open({
                message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?',
                variant: 'headerless',
                label: 'this is the aria-label value',
                }).then(res=>{
                    if(res) {
                        this.type = '1';
                        console.log('this.type='+this.type);
                        this.updateQisSubmit();
                    }else{
                        this.dispatchEvent(new CloseActionScreenEvent());
                        return;
                    }
                });
            }else{
               if (confirm("一旦提交关闭此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?")) {
               this.type = '2';
            }else{
                    this.dispatchEvent(new CloseActionScreenEvent());
                    return;
                }
                LightningConfirm.open({
                message: '一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?',
                variant: 'headerless',
                label: 'this is the aria-label value',
                }).then(res=>{
                    if(res) {
                        this.type = '2';
                        console.log('this.type='+this.type);
                        this.updateQisSubmit();
                    }else{
                        this.dispatchEvent(new CloseActionScreenEvent());
                        return;
                    }
                });
            }
            console.log('this.type='+this.type);
            // this.dispatchEvent(new CloseActionScreenEvent());
            this.updateQisSubmit();
        }).catch(error => {
            console.log('error='+error);
        }).finally(() => {
            
        }); 
    }
    updateRecordView(recordId) {
        updateRecord({fields: { Id: recordId }});
    }
    updateQisSubmit(){
           updateQis({
               recordId: this.recordId,
@@ -142,16 +151,16 @@
               oldQIStatus: this.qisStatus
              }).then(result =>{
                 console.log('result'+result);
                     this.err = result;
                 if (result!='成功') {
                        const evt = new ShowToastEvent({
                            title : '更新失败',
                            message: result,
                            message: this.err,
                            variant: 'error'
                        });
                        this.dispatchEvent(evt);
                    }
                this.dispatchEvent(new CloseActionScreenEvent());
                this.updateRecordView(this.recordId);
              }).catch(error => {
            console.log('error='+error);
        }).finally(() => {