import {
|
LightningElement,
|
wire,
|
api
|
} from 'lwc';
|
import {
|
CurrentPageReference
|
} from "lightning/navigation";
|
import {
|
CloseActionScreenEvent
|
} from 'lightning/actions';
|
import init from '@salesforce/apex/otherButtonRepairController.init';
|
import updateRepair from '@salesforce/apex/otherButtonRepairController.updateRepair';
|
import {
|
ShowToastEvent
|
} from 'lightning/platformShowToastEvent';
|
import LightningConfirm from 'lightning/confirm';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader'
|
export default class LexOCSMNoToReportRepair extends LightningElement {
|
@api recordId;
|
str;
|
IsLoading = true;
|
Id;;
|
OCSMAdministrativeReportNumberC;
|
OCSMAdministrativeReportDateC;
|
AwareDateC;
|
url;
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if (currentPageReference) {
|
this.url = currentPageReference.state.backgroundContext;
|
const urlValue = currentPageReference.state.recordId;
|
if (urlValue) {
|
let str = `${urlValue}`;
|
this.recordId = str;
|
}
|
}
|
}
|
|
connectedCallback() {
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
console.log(this.recordId);
|
this.IsLoading = false;
|
init({
|
recordId: this.recordId
|
}).then(result => {
|
console.log(result);
|
if (result != null) {
|
this.Id = result.Id;
|
this.OCSMAdministrativeReportNumberC = result.OCSMAdministrativeReportNumberC;
|
this.OCSMAdministrativeReportDateC = result.OCSMAdministrativeReportDateC;
|
this.AwareDateC = result.AwareDateC;
|
|
this.OCSMNoToReport();
|
}
|
}).catch(error => {
|
console.log(error);
|
})
|
}
|
|
// OCSM不要报告
|
OCSMNoToReport() {
|
this.handleConfirmClick("不要报告后无法撤回,是否继续?");
|
}
|
|
// 弹窗
|
ShowToastEvent(msg, type) {
|
if(type == 'success'){
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type
|
});
|
this.dispatchEvent(event);
|
}else{
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type,
|
mode:'Sticky'
|
});
|
this.dispatchEvent(event);
|
}
|
}
|
|
async handleConfirmClick(msg) {
|
const result = await LightningConfirm.open({
|
message: msg,
|
variant: 'headerless',
|
label: '提示信息'
|
});
|
|
if (result) {
|
if (this.OCSMAdministrativeReportNumberC != undefined ||
|
this.OCSMAdministrativeReportDateC != undefined) {
|
this.ShowToastEvent("已经报告的QIS,不可以点击OCSM不要报告。", "error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
if (this.AwareDateC != undefined) {
|
updateRepair({
|
recordId: this.Id,
|
ocsm:'无需报告'
|
}).then(result => {
|
console.log(result);
|
if (result == null) {
|
window.open(this.url, "_self");
|
}
|
if (result.length > 0) {
|
var split = result.split(", ");
|
this.ShowToastEvent(split[1], "error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
window.location.href = ' /lightning/r/Repair__c/'+this.recordId+'/view';
|
})
|
} else {
|
this.ShowToastEvent("没有AwareDate或已经OCSM行政报告,请确认。", "error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
} else {
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
}
|
}
|