import { LightningElement,wire,track,api} from 'lwc'; import { CurrentPageReference, NavigationMixin} from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/LexConsumApply_FromQISCtl.init'; import rentalApp from '@salesforce/apex/LexConsumApply_FromQISCtl.rentalApp'; import fieldDefineApp from '@salesforce/apex/LexConsumApply_FromQISCtl.fieldDefineApp'; import UserInfo_Owner from '@salesforce/apex/LexConsumApply_FromQISCtl.UserInfo_Owner'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; // 新建耗材备品申请(QIS) export default class LexConsumApply_FromQIS extends NavigationMixin(LightningElement) { @api recordId; IsLoading = true; @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(this.recordId); rentalApp({ recordId: this.recordId }).then(result => { console.log('rentalApp============',result); if(result.lenth > 0){ const evt = new ShowToastEvent({ title : 'Error', message : '同一个QIS记录不能重复申请备品', variant : 'error' }); this.dispatchEvent(evt); return; } init({ recordId: this.recordId }).then(result => { console.log('init============',result); this.IsLoading = false; if (result != null) { if(result.nextAction=='送回'){ this.showToast('QIS对应方法为“送回”,不能申请','error'); return; } if(result.qISStatus=='草案中'){ this.showToast('QIS状态为草案中,不能申请','error'); return; } if(result.qISStatus=='FSE填写完毕'){ this.showToast('QIS状态为FSE填写完毕,不能申请','error'); return; } if(result.qISStatus=='取消'){ this.showToast('QIS状态为取消,不能申请','error'); return; } // if('{!$User.isFormal_Stuff__c}'=='true'){ // alert('试用期内,不能申请'); // }else{ // var url = "/a0t/e?retURL=%2F{!URLENCODE(QIS_Report__c.Id)}&CF00N10000003Mp1d={!URLENCODE(QIS_Report__c.Hospital__c)}&CF00N10000003Mp1d_lkid={!URLENCODE(QIS_Report__c.HospitalId__c)}&CF00N10000003O3V6={!URLENCODE(QIS_Report__c.Department_Class__c)}&CF00N10000003O3V6_lkid={!URLENCODE(QIS_Report__c.Department_ClassId__c)}&CF00N10000003Mp2R={!URLENCODE(QIS_Report__c.Hospital_Department__c)}&CF00N10000003Mp2R_lkid={!URLENCODE(QIS_Report__c.Hospital_DepartmentId__c)}&00N10000003Msk0={!URLENCODE('维修代用')}&00N10000003Msk5={!URLENCODE('索赔QIS')}&Name={!URLENCODE('*')}&CF00N10000005HzRr={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000005HzRr_lkid={!URLENCODE($User.Id)}&CF00N10000005HzRz={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000005HzRz_lkid={!URLENCODE($User.Id)}&00N10000003OJzc={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000004o2Mg={!URLENCODE(QIS_Report__c.Name)}&CF00N10000004o2Mg_lkid={!URLENCODE(QIS_Report__c.Id)}&CF00N10000008r73m={!URLENCODE( QIS_Report__c.Repair__c)}&CF00N10000008r73m_lkid={!URLENCODE( QIS_Report__c.RepairId__c )}&"; // window.top.location.href=url; // } UserInfo_Owner({}).then(res=>{ if(res.isFormalStuff == 'true'){ this.showToast('试用期内,不能申请','error'); return; }else{ // var query = "Select QualifiedApiName, EntityDefinition.KeyPrefix, DurableId From FieldDefinition WHERE EntityDefinition.QualifiedApiName = 'Consum_Apply__c'"; // var records = sforce.connection.query(query).getArray('records'); // var prefix = records[0].EntityDefinition.KeyPrefix.toString(); // var fieldmap = new Map(); // for (var i=0; i< records.length; i++) { // var record = records[i]; // fieldmap.set(record.QualifiedApiName,record.DurableId.toString().split('.')[1]); // } fieldDefineApp({}).then(resp=>{ var fieldmap = new Map(); for (var i=0; i< resp.length; i++) { var record = resp[i]; fieldmap.set(record.QualifiedApiName,record.DurableId.toString().split('.')[1]); } }) .catch(e=>{console.log(e)}) const defaultValues = encodeDefaultFieldValues({ Hospital__c: result.hospital, Strategic_dept__c: result.departmentClass, Account__c:result.hospitalDepartment, demo_purpose2__c:'索赔QIS', Name:'*', Person_In_Charge__c:res.id, applyUser__c:res.id, QIS_number__c:result.qisReportId }); console.log('init============',result); console.log('init============',defaultValues); this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'Consum_Apply__c', actionName: 'new' }, state:{ defaultFieldValues: defaultValues } }); } }) this.dispatchEvent(new CloseActionScreenEvent()); // window.location.reload(); } }).catch(error => { console.log("error"); console.log(error); }); }).catch(error => { console.log("error"); console.log(error); }); } showToast(message, type) { const evt = new ShowToastEvent({ title: '', message: message, variant: type }); this.dispatchEvent(evt); this.dispatchEvent(new CloseActionScreenEvent()); } }