import { LightningElement,api, track, wire } from 'lwc';
|
import {CurrentPageReference} from 'lightning/navigation';
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import { NavigationMixin } from 'lightning/navigation';
|
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
const event1 = new ShowToastEvent({
|
message:
|
"科室状态为无效,不允许新建OPD计划",
|
variant : "error" ,
|
mode : 'sticky'
|
});
|
import init from '@salesforce/apex/LexOPDSupplementaryController.initNewOPDButton';
|
export default class lexNewOPDButtonAccount extends NavigationMixin(LightningElement) {
|
|
@api recordId;
|
IsLoading=true;
|
Account;
|
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if (currentPageReference) {
|
const urlValue = currentPageReference.state.recordId;
|
if (urlValue) {
|
let str = `${urlValue}`;
|
this.recordId = str;
|
}
|
}
|
}
|
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
init({recordId:this.recordId}).then(res=>{
|
if (res!=null) {
|
this.Account=res;
|
console.log(res);
|
this.newOPDButtonAccount().then(res=>{
|
this.IsLoading=false;
|
this.dispatchEvent(new CloseActionScreenEvent());
|
});
|
}
|
else{
|
const eventInItError = new dispatchEvent({
|
message : '页面初始化错误,请联系管理员',
|
variant : 'error',
|
mode : 'sticky'
|
});
|
this.dispatchEvent(eventInItError);
|
return;
|
}
|
|
});
|
}
|
|
|
async newOPDButtonAccount(){
|
var AccLab_active=this.Account.Is_Active__c;
|
if(AccLab_active =="無効"){
|
this.dispatchEvent(event1);
|
return;
|
}
|
const defaultValues = encodeDefaultFieldValues({
|
Account_Laboratory__c: this.recordId,
|
OPDType__c: '科室',
|
Name : '*'
|
});
|
this.IsLoading=false;
|
this.dispatchEvent(new CloseActionScreenEvent());
|
this[NavigationMixin.Navigate]({
|
type: 'standard__objectPage',
|
attributes: {
|
objectApiName: 'OPDPlan__c',
|
actionName: 'new'
|
},
|
state: {
|
// nooverride: '1',
|
defaultFieldValues: defaultValues,
|
}
|
});
|
|
}
|
|
}
|