KKbes
2023-04-13 87861ae5f1ed5456685f97f8a8e7625e47b9576d
force-app/main/default/lwc/lexOCSMNoToReportForReport/lexOCSMNoToReportForReport.js
New file
@@ -0,0 +1,96 @@
/*
 * @Description:
 * @version:
 * @Author: chen jing wu
 * @Date: 2023-03-28 15:59:44
 * @LastEditors: chen jing wu
 * @LastEditTime: 2023-04-11 09:08:30
 */
import { api, wire,LightningElement } from 'lwc';
import { CurrentPageReference } from "lightning/navigation";
import { CloseActionScreenEvent } from 'lightning/actions';
import init  from '@salesforce/apex/ReportController.initForOCSMNoToReportButton';
import updateForOCSMNoToReportButton  from '@salesforce/apex/ReportController.updateForOCSMNoToReportButton';
import { updateRecord } from 'lightning/uiRecordApi';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
export default class LexOCSMNoToReportForReport extends LightningElement {
    @api recordId;
    IsLoading = true;
    OCSMAdministrativeReportNumber;
    OCSMAdministrativeReportDate;
    AwareDate;
    @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(){
        console.log("123");
        init({
            recordId: this.recordId
        }).then(result=>{
            console.log(result);
            this.OCSMAdministrativeReportDate = result.OCSMAdministrativeReportDate;
            this.OCSMAdministrativeReportNumber = result.OCSMAdministrativeReportNumber;
            this.AwareDate = result.awareDate;
            this.noToReport();
        }).catch(error=>{
            console.log(error);
        });
    }
    updateRecordView(recordId) {
        updateRecord({fields: { Id: recordId }});
    }
    showToast(msg,type) {
        const event = new ShowToastEvent({
            title: '',
            message: msg,
            variant: type
        });
        this.dispatchEvent(event);
    }
    noToReport(){
        if (!confirm("不要报告后无法撤回,是否继续?")) {
            this.dispatchEvent(new CloseActionScreenEvent());
            return;
        }
        if(this.OCSMAdministrativeReportNumber != undefined || this.OCSMAdministrativeReportDate != undefined ){
            this.showToast("已经报告的QIS,不可以点击OCSM不要报告。","error");
            this.dispatchEvent(new CloseActionScreenEvent());
            return;
        }
        if(this.AwareDate != undefined ){
           updateForOCSMNoToReportButton({
                recordId: this.recordId
           }).then(result=>{
                this.showToast("OCSM不要报告成功","success");
                this.updateRecordView(this.recordId);
                this.IsLoading = false;
                this.dispatchEvent(new CloseActionScreenEvent());
           });
        }else{
            this.showToast("没有AwareDate或已经OCSM行政报告,请确认。","error");
            this.dispatchEvent(new CloseActionScreenEvent());
            return;
        }
    }
}